diff --git a/.github/workflows/jobs.yaml b/.github/workflows/jobs.yaml index 68b5c6169..ef0c417c6 100644 --- a/.github/workflows/jobs.yaml +++ b/.github/workflows/jobs.yaml @@ -241,7 +241,7 @@ jobs: - name: Run TestCafe Tests uses: DevExpress/testcafe-action@latest with: - args: '"chrome --headless --no-sandbox" portal-ui/tests/permissions-1/ --skip-js-errors -c 3' + args: '"firefox --headless --no-sandbox" portal-ui/tests/permissions-1/ --skip-js-errors -c 3' - name: Clean up users & policies run: | @@ -287,7 +287,7 @@ jobs: - name: Run TestCafe Tests uses: DevExpress/testcafe-action@latest with: - args: '"chrome --headless --no-sandbox" portal-ui/tests/permissions-2/ --skip-js-errors -c 3' + args: '"firefox --headless --no-sandbox" portal-ui/tests/permissions-2/ --skip-js-errors -c 3' - name: Clean up users & policies run: | @@ -333,7 +333,7 @@ jobs: - name: Run TestCafe Tests uses: DevExpress/testcafe-action@latest with: - args: '"chrome --headless --no-sandbox" portal-ui/tests/permissions-3/ --skip-js-errors -c 3' + args: '"firefox --headless --no-sandbox" portal-ui/tests/permissions-3/ --skip-js-errors -c 3' - name: Clean up users & policies run: | @@ -379,7 +379,7 @@ jobs: timeout-minutes: 10 uses: DevExpress/testcafe-action@latest with: - args: '"chrome --headless --no-sandbox" portal-ui/tests/permissions-4/ --skip-js-errors' + args: '"firefox --headless --no-sandbox" portal-ui/tests/permissions-4/ --skip-js-errors' all-permissions-5: name: Permissions Tests Part 5 needs: @@ -419,7 +419,7 @@ jobs: timeout-minutes: 5 uses: DevExpress/testcafe-action@latest with: - args: '"chrome --headless --no-sandbox" portal-ui/tests/permissions-5/ --skip-js-errors' + args: '"firefox --headless --no-sandbox" portal-ui/tests/permissions-5/ --skip-js-errors' all-permissions-6: name: Permissions Tests Part 6 needs: @@ -459,7 +459,7 @@ jobs: timeout-minutes: 5 uses: DevExpress/testcafe-action@latest with: - args: '"chrome --headless --no-sandbox" portal-ui/tests/permissions-6/ --skip-js-errors' + args: '"firefox --headless --no-sandbox" portal-ui/tests/permissions-6/ --skip-js-errors' all-permissions-7: name: Permissions Tests Part 7 needs: @@ -499,7 +499,7 @@ jobs: timeout-minutes: 5 uses: DevExpress/testcafe-action@latest with: - args: '"chrome --headless --no-sandbox" portal-ui/tests/permissions-7/ --skip-js-errors' + args: '"firefox --headless --no-sandbox" portal-ui/tests/permissions-7/ --skip-js-errors' all-permissions-8: name: Permissions Tests Part 8 needs: @@ -579,7 +579,7 @@ jobs: - name: Run TestCafe Tests uses: DevExpress/testcafe-action@latest with: - args: '"chrome --headless --no-sandbox" portal-ui/tests/permissions-9/ --skip-js-errors -c 3' + args: '"firefox --headless --no-sandbox" portal-ui/tests/permissions-9/ --skip-js-errors -c 3' - name: Clean up users & policies run: | @@ -624,7 +624,7 @@ jobs: - name: Run TestCafe Tests uses: DevExpress/testcafe-action@latest with: - args: '"chrome --headless --no-sandbox" portal-ui/tests/permissions-A/ --skip-js-errors -c 3' + args: '"firefox --headless --no-sandbox" portal-ui/tests/permissions-A/ --skip-js-errors -c 3' - name: Clean up users & policies run: | @@ -669,7 +669,7 @@ jobs: - name: Run TestCafe Tests uses: DevExpress/testcafe-action@latest with: - args: '"chrome --headless --no-sandbox" portal-ui/tests/permissions-B/ --skip-js-errors -c 3' + args: '"firefox --headless --no-sandbox" portal-ui/tests/permissions-B/ --skip-js-errors -c 3' - name: Clean up users & policies run: | diff --git a/CHANGELOG.md b/CHANGELOG.md index 701fd8bf9..524f43ad8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,17 @@ # Changelog +## Release v0.34.0 +Features: +- Updated Buckets components + +Bug Fix: + +- Fixed SUBNET Health report upload +- Updated Download Handler +- Fixes issue with rewind +- Avoid 1 hour expiration for IDP credentials +--- ## Release v0.33.0 Features: - Updated OpenID, LDAP components diff --git a/portal-ui/build/asset-manifest.json b/portal-ui/build/asset-manifest.json index c02a0bfe4..0ac187122 100644 --- a/portal-ui/build/asset-manifest.json +++ b/portal-ui/build/asset-manifest.json @@ -1,26 +1,26 @@ { "files": { "main.css": "./static/css/main.7f39beab.css", - "main.js": "./static/js/main.90ab1516.js", + "main.js": "./static/js/main.6166ac41.js", "static/js/1260.a025e586.chunk.js": "./static/js/1260.a025e586.chunk.js", "static/js/6914.9ab32297.chunk.js": "./static/js/6914.9ab32297.chunk.js", "static/js/9121.0c08c03c.chunk.js": "./static/js/9121.0c08c03c.chunk.js", "static/js/1829.11d4b426.chunk.js": "./static/js/1829.11d4b426.chunk.js", "static/js/6272.074b2c08.chunk.js": "./static/js/6272.074b2c08.chunk.js", - "static/js/5088.bae6da67.chunk.js": "./static/js/5088.bae6da67.chunk.js", + "static/js/5088.a07c0273.chunk.js": "./static/js/5088.a07c0273.chunk.js", "static/js/6122.8195a695.chunk.js": "./static/js/6122.8195a695.chunk.js", - "static/js/808.1a63a909.chunk.js": "./static/js/808.1a63a909.chunk.js", + "static/js/808.045ec154.chunk.js": "./static/js/808.045ec154.chunk.js", "static/js/8060.060ad94e.chunk.js": "./static/js/8060.060ad94e.chunk.js", - "static/js/9635.fa7788f9.chunk.js": "./static/js/9635.fa7788f9.chunk.js", + "static/js/9635.de2db92c.chunk.js": "./static/js/9635.de2db92c.chunk.js", "static/js/2338.f2a282fa.chunk.js": "./static/js/2338.f2a282fa.chunk.js", "static/js/4335.16fc17e3.chunk.js": "./static/js/4335.16fc17e3.chunk.js", - "static/js/6389.f2af2345.chunk.js": "./static/js/6389.f2af2345.chunk.js", + "static/js/9390.564ed238.chunk.js": "./static/js/9390.564ed238.chunk.js", "static/js/3543.be1d6ea8.chunk.js": "./static/js/3543.be1d6ea8.chunk.js", - "static/js/2074.307a0b66.chunk.js": "./static/js/2074.307a0b66.chunk.js", - "static/js/3067.1b1cbcb7.chunk.js": "./static/js/3067.1b1cbcb7.chunk.js", + "static/js/2074.7e79443f.chunk.js": "./static/js/2074.7e79443f.chunk.js", + "static/js/3067.10ab217f.chunk.js": "./static/js/3067.10ab217f.chunk.js", "static/js/2637.be6faba9.chunk.js": "./static/js/2637.be6faba9.chunk.js", "static/js/5962.812f802a.chunk.js": "./static/js/5962.812f802a.chunk.js", - "static/js/701.72514abe.chunk.js": "./static/js/701.72514abe.chunk.js", + "static/js/701.13e798d1.chunk.js": "./static/js/701.13e798d1.chunk.js", "static/js/7821.12244c04.chunk.js": "./static/js/7821.12244c04.chunk.js", "static/js/2545.ffac2fbb.chunk.js": "./static/js/2545.ffac2fbb.chunk.js", "static/js/4131.8f58d53d.chunk.js": "./static/js/4131.8f58d53d.chunk.js", @@ -30,94 +30,92 @@ "static/js/191.fd21cdcc.chunk.js": "./static/js/191.fd21cdcc.chunk.js", "static/js/1329.79996c21.chunk.js": "./static/js/1329.79996c21.chunk.js", "static/js/7614.ec6383d7.chunk.js": "./static/js/7614.ec6383d7.chunk.js", - "static/js/1690.416d7e98.chunk.js": "./static/js/1690.416d7e98.chunk.js", + "static/js/1690.f30e8f7f.chunk.js": "./static/js/1690.f30e8f7f.chunk.js", "static/js/6491.cb4af026.chunk.js": "./static/js/6491.cb4af026.chunk.js", "static/js/4902.ded1f1f5.chunk.js": "./static/js/4902.ded1f1f5.chunk.js", - "static/js/1432.30248eac.chunk.js": "./static/js/1432.30248eac.chunk.js", + "static/js/841.e190e240.chunk.js": "./static/js/841.e190e240.chunk.js", "static/js/3171.5a1ef12c.chunk.js": "./static/js/3171.5a1ef12c.chunk.js", "static/js/8360.965868c4.chunk.js": "./static/js/8360.965868c4.chunk.js", "static/js/6577.a8d6a01c.chunk.js": "./static/js/6577.a8d6a01c.chunk.js", "static/js/3875.b530d1e3.chunk.js": "./static/js/3875.b530d1e3.chunk.js", - "static/js/3115.eecd6da1.chunk.js": "./static/js/3115.eecd6da1.chunk.js", - "static/js/2603.c555d98d.chunk.js": "./static/js/2603.c555d98d.chunk.js", - "static/js/977.fa8b33fa.chunk.js": "./static/js/977.fa8b33fa.chunk.js", + "static/js/3115.3b6b6959.chunk.js": "./static/js/3115.3b6b6959.chunk.js", + "static/js/2603.500676d6.chunk.js": "./static/js/2603.500676d6.chunk.js", + "static/js/977.90d83636.chunk.js": "./static/js/977.90d83636.chunk.js", "static/js/6686.0c756aaf.chunk.js": "./static/js/6686.0c756aaf.chunk.js", - "static/js/2486.1ecaac74.chunk.js": "./static/js/2486.1ecaac74.chunk.js", - "static/js/91.e520a97c.chunk.js": "./static/js/91.e520a97c.chunk.js", - "static/js/7586.17376d83.chunk.js": "./static/js/7586.17376d83.chunk.js", + "static/js/6158.62f2536c.chunk.js": "./static/js/6158.62f2536c.chunk.js", + "static/js/4882.9c5a4b90.chunk.js": "./static/js/4882.9c5a4b90.chunk.js", + "static/js/8305.b35690ca.chunk.js": "./static/js/8305.b35690ca.chunk.js", "static/js/4414.930d89fc.chunk.js": "./static/js/4414.930d89fc.chunk.js", - "static/js/8833.91a69c65.chunk.js": "./static/js/8833.91a69c65.chunk.js", - "static/js/1516.216550a5.chunk.js": "./static/js/1516.216550a5.chunk.js", + "static/js/8833.9ede4350.chunk.js": "./static/js/8833.9ede4350.chunk.js", + "static/js/1516.b3513b8c.chunk.js": "./static/js/1516.b3513b8c.chunk.js", "static/js/483.31c46d8b.chunk.js": "./static/js/483.31c46d8b.chunk.js", - "static/js/8045.312c59ab.chunk.js": "./static/js/8045.312c59ab.chunk.js", - "static/js/6895.868de568.chunk.js": "./static/js/6895.868de568.chunk.js", - "static/js/4874.1901748a.chunk.js": "./static/js/4874.1901748a.chunk.js", + "static/js/8045.40b15543.chunk.js": "./static/js/8045.40b15543.chunk.js", + "static/js/6895.66971403.chunk.js": "./static/js/6895.66971403.chunk.js", + "static/js/4874.157a2b95.chunk.js": "./static/js/4874.157a2b95.chunk.js", "static/js/1191.6a8f1e3d.chunk.js": "./static/js/1191.6a8f1e3d.chunk.js", "static/js/3956.27299d66.chunk.js": "./static/js/3956.27299d66.chunk.js", "static/js/9221.ef026a1e.chunk.js": "./static/js/9221.ef026a1e.chunk.js", "static/js/8896.ef691d94.chunk.js": "./static/js/8896.ef691d94.chunk.js", "static/js/9134.a8ccdcdb.chunk.js": "./static/js/9134.a8ccdcdb.chunk.js", "static/js/5223.d053b523.chunk.js": "./static/js/5223.d053b523.chunk.js", - "static/js/5661.e6b097aa.chunk.js": "./static/js/5661.e6b097aa.chunk.js", - "static/js/7134.a6c4a49e.chunk.js": "./static/js/7134.a6c4a49e.chunk.js", - "static/js/3034.ce980176.chunk.js": "./static/js/3034.ce980176.chunk.js", - "static/js/3138.314a2ab9.chunk.js": "./static/js/3138.314a2ab9.chunk.js", + "static/js/5661.8e7899d0.chunk.js": "./static/js/5661.8e7899d0.chunk.js", + "static/js/7134.5516568a.chunk.js": "./static/js/7134.5516568a.chunk.js", + "static/js/3034.18978581.chunk.js": "./static/js/3034.18978581.chunk.js", + "static/js/3138.36694643.chunk.js": "./static/js/3138.36694643.chunk.js", "static/js/711.aec34a54.chunk.js": "./static/js/711.aec34a54.chunk.js", "static/js/6901.ec452642.chunk.js": "./static/js/6901.ec452642.chunk.js", "static/js/2185.1940263e.chunk.js": "./static/js/2185.1940263e.chunk.js", - "static/js/9968.392f895d.chunk.js": "./static/js/9968.392f895d.chunk.js", - "static/js/7494.72e35f55.chunk.js": "./static/js/7494.72e35f55.chunk.js", - "static/js/4738.079312e2.chunk.js": "./static/js/4738.079312e2.chunk.js", - "static/js/9918.d7fc90b7.chunk.js": "./static/js/9918.d7fc90b7.chunk.js", - "static/js/5702.681d36db.chunk.js": "./static/js/5702.681d36db.chunk.js", - "static/js/2512.3225c7da.chunk.js": "./static/js/2512.3225c7da.chunk.js", - "static/js/51.2c941d38.chunk.js": "./static/js/51.2c941d38.chunk.js", + "static/js/9968.741ebf65.chunk.js": "./static/js/9968.741ebf65.chunk.js", + "static/js/7494.bad4da61.chunk.js": "./static/js/7494.bad4da61.chunk.js", + "static/js/4738.0bbac05c.chunk.js": "./static/js/4738.0bbac05c.chunk.js", + "static/js/5707.f0758fd6.chunk.js": "./static/js/5707.f0758fd6.chunk.js", + "static/js/5702.084d8254.chunk.js": "./static/js/5702.084d8254.chunk.js", + "static/js/5759.47541c57.chunk.js": "./static/js/5759.47541c57.chunk.js", + "static/js/51.8430c021.chunk.js": "./static/js/51.8430c021.chunk.js", "static/js/312.04cab7e8.chunk.js": "./static/js/312.04cab7e8.chunk.js", "static/js/2032.54dedb37.chunk.js": "./static/js/2032.54dedb37.chunk.js", - "static/js/4619.56a4fe9f.chunk.js": "./static/js/4619.56a4fe9f.chunk.js", - "static/js/8990.a79c2757.chunk.js": "./static/js/8990.a79c2757.chunk.js", - "static/js/8455.c65159aa.chunk.js": "./static/js/8455.c65159aa.chunk.js", - "static/js/9816.9d5974a5.chunk.js": "./static/js/9816.9d5974a5.chunk.js", - "static/js/7584.045f27dc.chunk.js": "./static/js/7584.045f27dc.chunk.js", - "static/js/9952.df7cc0cb.chunk.js": "./static/js/9952.df7cc0cb.chunk.js", - "static/js/402.b4ce85d2.chunk.js": "./static/js/402.b4ce85d2.chunk.js", - "static/js/1705.8a627131.chunk.js": "./static/js/1705.8a627131.chunk.js", - "static/js/1581.bec44ff2.chunk.js": "./static/js/1581.bec44ff2.chunk.js", + "static/js/4619.1535ff32.chunk.js": "./static/js/4619.1535ff32.chunk.js", + "static/js/8990.17dc8411.chunk.js": "./static/js/8990.17dc8411.chunk.js", + "static/js/8455.97773e2f.chunk.js": "./static/js/8455.97773e2f.chunk.js", + "static/js/3690.b6d7d3b6.chunk.js": "./static/js/3690.b6d7d3b6.chunk.js", + "static/js/1604.2dfa540d.chunk.js": "./static/js/1604.2dfa540d.chunk.js", + "static/js/9952.e9660829.chunk.js": "./static/js/9952.e9660829.chunk.js", + "static/js/402.75cd5b25.chunk.js": "./static/js/402.75cd5b25.chunk.js", + "static/js/1705.a54c5659.chunk.js": "./static/js/1705.a54c5659.chunk.js", + "static/js/1581.a911ee27.chunk.js": "./static/js/1581.a911ee27.chunk.js", "static/js/455.3198900d.chunk.js": "./static/js/455.3198900d.chunk.js", "static/js/2661.f8e2dfa6.chunk.js": "./static/js/2661.f8e2dfa6.chunk.js", - "static/js/889.5dfe989a.chunk.js": "./static/js/889.5dfe989a.chunk.js", - "static/js/9088.81c5bdf9.chunk.js": "./static/js/9088.81c5bdf9.chunk.js", - "static/js/247.3ae1405a.chunk.js": "./static/js/247.3ae1405a.chunk.js", - "static/js/2763.94aac2f6.chunk.js": "./static/js/2763.94aac2f6.chunk.js", - "static/js/5994.42cc3b8c.chunk.js": "./static/js/5994.42cc3b8c.chunk.js", - "static/js/5473.e6936445.chunk.js": "./static/js/5473.e6936445.chunk.js", + "static/js/3509.f3bae3cd.chunk.js": "./static/js/3509.f3bae3cd.chunk.js", + "static/js/889.c7eff573.chunk.js": "./static/js/889.c7eff573.chunk.js", + "static/js/9088.9dd285c2.chunk.js": "./static/js/9088.9dd285c2.chunk.js", + "static/js/247.2a7f8e21.chunk.js": "./static/js/247.2a7f8e21.chunk.js", + "static/js/2763.8a8f4e01.chunk.js": "./static/js/2763.8a8f4e01.chunk.js", + "static/js/5473.bbfe723a.chunk.js": "./static/js/5473.bbfe723a.chunk.js", + "static/js/1715.b85c256f.chunk.js": "./static/js/1715.b85c256f.chunk.js", + "static/js/5994.f7b13106.chunk.js": "./static/js/5994.f7b13106.chunk.js", "static/js/7391.c53687b2.chunk.js": "./static/js/7391.c53687b2.chunk.js", - "static/js/5004.72346a14.chunk.js": "./static/js/5004.72346a14.chunk.js", - "static/js/1520.af5d5afd.chunk.js": "./static/js/1520.af5d5afd.chunk.js", "static/js/9518.2593e387.chunk.js": "./static/js/9518.2593e387.chunk.js", - "static/js/6993.cff4fa3c.chunk.js": "./static/js/6993.cff4fa3c.chunk.js", - "static/js/7847.d7a7fbd9.chunk.js": "./static/js/7847.d7a7fbd9.chunk.js", - "static/js/2909.e78ef785.chunk.js": "./static/js/2909.e78ef785.chunk.js", - "static/js/4882.6b280860.chunk.js": "./static/js/4882.6b280860.chunk.js", - "static/js/2260.71dd3e05.chunk.js": "./static/js/2260.71dd3e05.chunk.js", - "static/js/6459.b16c70ac.chunk.js": "./static/js/6459.b16c70ac.chunk.js", - "static/js/2432.e69c0c1d.chunk.js": "./static/js/2432.e69c0c1d.chunk.js", - "static/js/7981.8a6db645.chunk.js": "./static/js/7981.8a6db645.chunk.js", - "static/js/134.117c7fbe.chunk.js": "./static/js/134.117c7fbe.chunk.js", - "static/js/1353.4c769f84.chunk.js": "./static/js/1353.4c769f84.chunk.js", - "static/js/852.51235900.chunk.js": "./static/js/852.51235900.chunk.js", - "static/js/9444.da7eb5e5.chunk.js": "./static/js/9444.da7eb5e5.chunk.js", - "static/js/1569.eb3c10a7.chunk.js": "./static/js/1569.eb3c10a7.chunk.js", - "static/js/2791.35d976a5.chunk.js": "./static/js/2791.35d976a5.chunk.js", - "static/js/9581.11fc652e.chunk.js": "./static/js/9581.11fc652e.chunk.js", - "static/js/6662.f9187fb2.chunk.js": "./static/js/6662.f9187fb2.chunk.js", - "static/js/9817.97fe9a05.chunk.js": "./static/js/9817.97fe9a05.chunk.js", - "static/js/4670.9cad71d4.chunk.js": "./static/js/4670.9cad71d4.chunk.js", - "static/js/9135.9f49ec5b.chunk.js": "./static/js/9135.9f49ec5b.chunk.js", - "static/js/3019.15fe418e.chunk.js": "./static/js/3019.15fe418e.chunk.js", - "static/js/6503.36360b86.chunk.js": "./static/js/6503.36360b86.chunk.js", + "static/js/5004.594e3211.chunk.js": "./static/js/5004.594e3211.chunk.js", "static/js/222.7f3906bd.chunk.js": "./static/js/222.7f3906bd.chunk.js", + "static/js/7847.d7a7fbd9.chunk.js": "./static/js/7847.d7a7fbd9.chunk.js", + "static/js/6363.b2794ff5.chunk.js": "./static/js/6363.b2794ff5.chunk.js", + "static/js/8941.a8683f5c.chunk.js": "./static/js/8941.a8683f5c.chunk.js", + "static/js/2260.c0246fc5.chunk.js": "./static/js/2260.c0246fc5.chunk.js", + "static/js/6459.b16c70ac.chunk.js": "./static/js/6459.b16c70ac.chunk.js", + "static/js/3801.e125737d.chunk.js": "./static/js/3801.e125737d.chunk.js", + "static/js/134.117c7fbe.chunk.js": "./static/js/134.117c7fbe.chunk.js", + "static/js/5980.5142636f.chunk.js": "./static/js/5980.5142636f.chunk.js", + "static/js/6975.18f2c3f9.chunk.js": "./static/js/6975.18f2c3f9.chunk.js", + "static/js/9444.da7eb5e5.chunk.js": "./static/js/9444.da7eb5e5.chunk.js", + "static/js/6624.695e9bbd.chunk.js": "./static/js/6624.695e9bbd.chunk.js", + "static/js/2791.a64fa77e.chunk.js": "./static/js/2791.a64fa77e.chunk.js", + "static/js/7981.b08cd322.chunk.js": "./static/js/7981.b08cd322.chunk.js", + "static/js/9581.35e0c780.chunk.js": "./static/js/9581.35e0c780.chunk.js", + "static/js/9817.d6ea67be.chunk.js": "./static/js/9817.d6ea67be.chunk.js", + "static/js/8831.c7482be4.chunk.js": "./static/js/8831.c7482be4.chunk.js", + "static/js/5904.c1d4d6b7.chunk.js": "./static/js/5904.c1d4d6b7.chunk.js", "static/js/2983.3ffd4ad8.chunk.js": "./static/js/2983.3ffd4ad8.chunk.js", + "static/js/91.e520a97c.chunk.js": "./static/js/91.e520a97c.chunk.js", "static/js/8308.24f46a88.chunk.js": "./static/js/8308.24f46a88.chunk.js", "static/media/videoBG.mp4": "./static/media/videoBG.17363418b3c2246a0e27.mp4", "static/media/loginAnimationPoster.png": "./static/media/loginAnimationPoster.9aa924bfe619e71d5d29.png", @@ -142,26 +140,26 @@ "static/media/placeholderimage.png": "./static/media/placeholderimage.077ea48bd1ef1f4a883f.png", "index.html": "./index.html", "main.7f39beab.css.map": "./static/css/main.7f39beab.css.map", - "main.90ab1516.js.map": "./static/js/main.90ab1516.js.map", + "main.6166ac41.js.map": "./static/js/main.6166ac41.js.map", "1260.a025e586.chunk.js.map": "./static/js/1260.a025e586.chunk.js.map", "6914.9ab32297.chunk.js.map": "./static/js/6914.9ab32297.chunk.js.map", "9121.0c08c03c.chunk.js.map": "./static/js/9121.0c08c03c.chunk.js.map", "1829.11d4b426.chunk.js.map": "./static/js/1829.11d4b426.chunk.js.map", "6272.074b2c08.chunk.js.map": "./static/js/6272.074b2c08.chunk.js.map", - "5088.bae6da67.chunk.js.map": "./static/js/5088.bae6da67.chunk.js.map", + "5088.a07c0273.chunk.js.map": "./static/js/5088.a07c0273.chunk.js.map", "6122.8195a695.chunk.js.map": "./static/js/6122.8195a695.chunk.js.map", - "808.1a63a909.chunk.js.map": "./static/js/808.1a63a909.chunk.js.map", + "808.045ec154.chunk.js.map": "./static/js/808.045ec154.chunk.js.map", "8060.060ad94e.chunk.js.map": "./static/js/8060.060ad94e.chunk.js.map", - "9635.fa7788f9.chunk.js.map": "./static/js/9635.fa7788f9.chunk.js.map", + "9635.de2db92c.chunk.js.map": "./static/js/9635.de2db92c.chunk.js.map", "2338.f2a282fa.chunk.js.map": "./static/js/2338.f2a282fa.chunk.js.map", "4335.16fc17e3.chunk.js.map": "./static/js/4335.16fc17e3.chunk.js.map", - "6389.f2af2345.chunk.js.map": "./static/js/6389.f2af2345.chunk.js.map", + "9390.564ed238.chunk.js.map": "./static/js/9390.564ed238.chunk.js.map", "3543.be1d6ea8.chunk.js.map": "./static/js/3543.be1d6ea8.chunk.js.map", - "2074.307a0b66.chunk.js.map": "./static/js/2074.307a0b66.chunk.js.map", - "3067.1b1cbcb7.chunk.js.map": "./static/js/3067.1b1cbcb7.chunk.js.map", + "2074.7e79443f.chunk.js.map": "./static/js/2074.7e79443f.chunk.js.map", + "3067.10ab217f.chunk.js.map": "./static/js/3067.10ab217f.chunk.js.map", "2637.be6faba9.chunk.js.map": "./static/js/2637.be6faba9.chunk.js.map", "5962.812f802a.chunk.js.map": "./static/js/5962.812f802a.chunk.js.map", - "701.72514abe.chunk.js.map": "./static/js/701.72514abe.chunk.js.map", + "701.13e798d1.chunk.js.map": "./static/js/701.13e798d1.chunk.js.map", "7821.12244c04.chunk.js.map": "./static/js/7821.12244c04.chunk.js.map", "2545.ffac2fbb.chunk.js.map": "./static/js/2545.ffac2fbb.chunk.js.map", "4131.8f58d53d.chunk.js.map": "./static/js/4131.8f58d53d.chunk.js.map", @@ -171,98 +169,96 @@ "191.fd21cdcc.chunk.js.map": "./static/js/191.fd21cdcc.chunk.js.map", "1329.79996c21.chunk.js.map": "./static/js/1329.79996c21.chunk.js.map", "7614.ec6383d7.chunk.js.map": "./static/js/7614.ec6383d7.chunk.js.map", - "1690.416d7e98.chunk.js.map": "./static/js/1690.416d7e98.chunk.js.map", + "1690.f30e8f7f.chunk.js.map": "./static/js/1690.f30e8f7f.chunk.js.map", "6491.cb4af026.chunk.js.map": "./static/js/6491.cb4af026.chunk.js.map", "4902.ded1f1f5.chunk.js.map": "./static/js/4902.ded1f1f5.chunk.js.map", - "1432.30248eac.chunk.js.map": "./static/js/1432.30248eac.chunk.js.map", + "841.e190e240.chunk.js.map": "./static/js/841.e190e240.chunk.js.map", "3171.5a1ef12c.chunk.js.map": "./static/js/3171.5a1ef12c.chunk.js.map", "8360.965868c4.chunk.js.map": "./static/js/8360.965868c4.chunk.js.map", "6577.a8d6a01c.chunk.js.map": "./static/js/6577.a8d6a01c.chunk.js.map", "3875.b530d1e3.chunk.js.map": "./static/js/3875.b530d1e3.chunk.js.map", - "3115.eecd6da1.chunk.js.map": "./static/js/3115.eecd6da1.chunk.js.map", - "2603.c555d98d.chunk.js.map": "./static/js/2603.c555d98d.chunk.js.map", - "977.fa8b33fa.chunk.js.map": "./static/js/977.fa8b33fa.chunk.js.map", + "3115.3b6b6959.chunk.js.map": "./static/js/3115.3b6b6959.chunk.js.map", + "2603.500676d6.chunk.js.map": "./static/js/2603.500676d6.chunk.js.map", + "977.90d83636.chunk.js.map": "./static/js/977.90d83636.chunk.js.map", "6686.0c756aaf.chunk.js.map": "./static/js/6686.0c756aaf.chunk.js.map", - "2486.1ecaac74.chunk.js.map": "./static/js/2486.1ecaac74.chunk.js.map", - "91.e520a97c.chunk.js.map": "./static/js/91.e520a97c.chunk.js.map", - "7586.17376d83.chunk.js.map": "./static/js/7586.17376d83.chunk.js.map", + "6158.62f2536c.chunk.js.map": "./static/js/6158.62f2536c.chunk.js.map", + "4882.9c5a4b90.chunk.js.map": "./static/js/4882.9c5a4b90.chunk.js.map", + "8305.b35690ca.chunk.js.map": "./static/js/8305.b35690ca.chunk.js.map", "4414.930d89fc.chunk.js.map": "./static/js/4414.930d89fc.chunk.js.map", - "8833.91a69c65.chunk.js.map": "./static/js/8833.91a69c65.chunk.js.map", - "1516.216550a5.chunk.js.map": "./static/js/1516.216550a5.chunk.js.map", + "8833.9ede4350.chunk.js.map": "./static/js/8833.9ede4350.chunk.js.map", + "1516.b3513b8c.chunk.js.map": "./static/js/1516.b3513b8c.chunk.js.map", "483.31c46d8b.chunk.js.map": "./static/js/483.31c46d8b.chunk.js.map", - "8045.312c59ab.chunk.js.map": "./static/js/8045.312c59ab.chunk.js.map", - "6895.868de568.chunk.js.map": "./static/js/6895.868de568.chunk.js.map", - "4874.1901748a.chunk.js.map": "./static/js/4874.1901748a.chunk.js.map", + "8045.40b15543.chunk.js.map": "./static/js/8045.40b15543.chunk.js.map", + "6895.66971403.chunk.js.map": "./static/js/6895.66971403.chunk.js.map", + "4874.157a2b95.chunk.js.map": "./static/js/4874.157a2b95.chunk.js.map", "1191.6a8f1e3d.chunk.js.map": "./static/js/1191.6a8f1e3d.chunk.js.map", "3956.27299d66.chunk.js.map": "./static/js/3956.27299d66.chunk.js.map", "9221.ef026a1e.chunk.js.map": "./static/js/9221.ef026a1e.chunk.js.map", "8896.ef691d94.chunk.js.map": "./static/js/8896.ef691d94.chunk.js.map", "9134.a8ccdcdb.chunk.js.map": "./static/js/9134.a8ccdcdb.chunk.js.map", "5223.d053b523.chunk.js.map": "./static/js/5223.d053b523.chunk.js.map", - "5661.e6b097aa.chunk.js.map": "./static/js/5661.e6b097aa.chunk.js.map", - "7134.a6c4a49e.chunk.js.map": "./static/js/7134.a6c4a49e.chunk.js.map", - "3034.ce980176.chunk.js.map": "./static/js/3034.ce980176.chunk.js.map", - "3138.314a2ab9.chunk.js.map": "./static/js/3138.314a2ab9.chunk.js.map", + "5661.8e7899d0.chunk.js.map": "./static/js/5661.8e7899d0.chunk.js.map", + "7134.5516568a.chunk.js.map": "./static/js/7134.5516568a.chunk.js.map", + "3034.18978581.chunk.js.map": "./static/js/3034.18978581.chunk.js.map", + "3138.36694643.chunk.js.map": "./static/js/3138.36694643.chunk.js.map", "711.aec34a54.chunk.js.map": "./static/js/711.aec34a54.chunk.js.map", "6901.ec452642.chunk.js.map": "./static/js/6901.ec452642.chunk.js.map", "2185.1940263e.chunk.js.map": "./static/js/2185.1940263e.chunk.js.map", - "9968.392f895d.chunk.js.map": "./static/js/9968.392f895d.chunk.js.map", - "7494.72e35f55.chunk.js.map": "./static/js/7494.72e35f55.chunk.js.map", - "4738.079312e2.chunk.js.map": "./static/js/4738.079312e2.chunk.js.map", - "9918.d7fc90b7.chunk.js.map": "./static/js/9918.d7fc90b7.chunk.js.map", - "5702.681d36db.chunk.js.map": "./static/js/5702.681d36db.chunk.js.map", - "2512.3225c7da.chunk.js.map": "./static/js/2512.3225c7da.chunk.js.map", - "51.2c941d38.chunk.js.map": "./static/js/51.2c941d38.chunk.js.map", + "9968.741ebf65.chunk.js.map": "./static/js/9968.741ebf65.chunk.js.map", + "7494.bad4da61.chunk.js.map": "./static/js/7494.bad4da61.chunk.js.map", + "4738.0bbac05c.chunk.js.map": "./static/js/4738.0bbac05c.chunk.js.map", + "5707.f0758fd6.chunk.js.map": "./static/js/5707.f0758fd6.chunk.js.map", + "5702.084d8254.chunk.js.map": "./static/js/5702.084d8254.chunk.js.map", + "5759.47541c57.chunk.js.map": "./static/js/5759.47541c57.chunk.js.map", + "51.8430c021.chunk.js.map": "./static/js/51.8430c021.chunk.js.map", "312.04cab7e8.chunk.js.map": "./static/js/312.04cab7e8.chunk.js.map", "2032.54dedb37.chunk.js.map": "./static/js/2032.54dedb37.chunk.js.map", - "4619.56a4fe9f.chunk.js.map": "./static/js/4619.56a4fe9f.chunk.js.map", - "8990.a79c2757.chunk.js.map": "./static/js/8990.a79c2757.chunk.js.map", - "8455.c65159aa.chunk.js.map": "./static/js/8455.c65159aa.chunk.js.map", - "9816.9d5974a5.chunk.js.map": "./static/js/9816.9d5974a5.chunk.js.map", - "7584.045f27dc.chunk.js.map": "./static/js/7584.045f27dc.chunk.js.map", - "9952.df7cc0cb.chunk.js.map": "./static/js/9952.df7cc0cb.chunk.js.map", - "402.b4ce85d2.chunk.js.map": "./static/js/402.b4ce85d2.chunk.js.map", - "1705.8a627131.chunk.js.map": "./static/js/1705.8a627131.chunk.js.map", - "1581.bec44ff2.chunk.js.map": "./static/js/1581.bec44ff2.chunk.js.map", + "4619.1535ff32.chunk.js.map": "./static/js/4619.1535ff32.chunk.js.map", + "8990.17dc8411.chunk.js.map": "./static/js/8990.17dc8411.chunk.js.map", + "8455.97773e2f.chunk.js.map": "./static/js/8455.97773e2f.chunk.js.map", + "3690.b6d7d3b6.chunk.js.map": "./static/js/3690.b6d7d3b6.chunk.js.map", + "1604.2dfa540d.chunk.js.map": "./static/js/1604.2dfa540d.chunk.js.map", + "9952.e9660829.chunk.js.map": "./static/js/9952.e9660829.chunk.js.map", + "402.75cd5b25.chunk.js.map": "./static/js/402.75cd5b25.chunk.js.map", + "1705.a54c5659.chunk.js.map": "./static/js/1705.a54c5659.chunk.js.map", + "1581.a911ee27.chunk.js.map": "./static/js/1581.a911ee27.chunk.js.map", "455.3198900d.chunk.js.map": "./static/js/455.3198900d.chunk.js.map", "2661.f8e2dfa6.chunk.js.map": "./static/js/2661.f8e2dfa6.chunk.js.map", - "889.5dfe989a.chunk.js.map": "./static/js/889.5dfe989a.chunk.js.map", - "9088.81c5bdf9.chunk.js.map": "./static/js/9088.81c5bdf9.chunk.js.map", - "247.3ae1405a.chunk.js.map": "./static/js/247.3ae1405a.chunk.js.map", - "2763.94aac2f6.chunk.js.map": "./static/js/2763.94aac2f6.chunk.js.map", - "5994.42cc3b8c.chunk.js.map": "./static/js/5994.42cc3b8c.chunk.js.map", - "5473.e6936445.chunk.js.map": "./static/js/5473.e6936445.chunk.js.map", + "3509.f3bae3cd.chunk.js.map": "./static/js/3509.f3bae3cd.chunk.js.map", + "889.c7eff573.chunk.js.map": "./static/js/889.c7eff573.chunk.js.map", + "9088.9dd285c2.chunk.js.map": "./static/js/9088.9dd285c2.chunk.js.map", + "247.2a7f8e21.chunk.js.map": "./static/js/247.2a7f8e21.chunk.js.map", + "2763.8a8f4e01.chunk.js.map": "./static/js/2763.8a8f4e01.chunk.js.map", + "5473.bbfe723a.chunk.js.map": "./static/js/5473.bbfe723a.chunk.js.map", + "1715.b85c256f.chunk.js.map": "./static/js/1715.b85c256f.chunk.js.map", + "5994.f7b13106.chunk.js.map": "./static/js/5994.f7b13106.chunk.js.map", "7391.c53687b2.chunk.js.map": "./static/js/7391.c53687b2.chunk.js.map", - "5004.72346a14.chunk.js.map": "./static/js/5004.72346a14.chunk.js.map", - "1520.af5d5afd.chunk.js.map": "./static/js/1520.af5d5afd.chunk.js.map", "9518.2593e387.chunk.js.map": "./static/js/9518.2593e387.chunk.js.map", - "6993.cff4fa3c.chunk.js.map": "./static/js/6993.cff4fa3c.chunk.js.map", - "7847.d7a7fbd9.chunk.js.map": "./static/js/7847.d7a7fbd9.chunk.js.map", - "2909.e78ef785.chunk.js.map": "./static/js/2909.e78ef785.chunk.js.map", - "4882.6b280860.chunk.js.map": "./static/js/4882.6b280860.chunk.js.map", - "2260.71dd3e05.chunk.js.map": "./static/js/2260.71dd3e05.chunk.js.map", - "6459.b16c70ac.chunk.js.map": "./static/js/6459.b16c70ac.chunk.js.map", - "2432.e69c0c1d.chunk.js.map": "./static/js/2432.e69c0c1d.chunk.js.map", - "7981.8a6db645.chunk.js.map": "./static/js/7981.8a6db645.chunk.js.map", - "134.117c7fbe.chunk.js.map": "./static/js/134.117c7fbe.chunk.js.map", - "1353.4c769f84.chunk.js.map": "./static/js/1353.4c769f84.chunk.js.map", - "852.51235900.chunk.js.map": "./static/js/852.51235900.chunk.js.map", - "9444.da7eb5e5.chunk.js.map": "./static/js/9444.da7eb5e5.chunk.js.map", - "1569.eb3c10a7.chunk.js.map": "./static/js/1569.eb3c10a7.chunk.js.map", - "2791.35d976a5.chunk.js.map": "./static/js/2791.35d976a5.chunk.js.map", - "9581.11fc652e.chunk.js.map": "./static/js/9581.11fc652e.chunk.js.map", - "6662.f9187fb2.chunk.js.map": "./static/js/6662.f9187fb2.chunk.js.map", - "9817.97fe9a05.chunk.js.map": "./static/js/9817.97fe9a05.chunk.js.map", - "4670.9cad71d4.chunk.js.map": "./static/js/4670.9cad71d4.chunk.js.map", - "9135.9f49ec5b.chunk.js.map": "./static/js/9135.9f49ec5b.chunk.js.map", - "3019.15fe418e.chunk.js.map": "./static/js/3019.15fe418e.chunk.js.map", - "6503.36360b86.chunk.js.map": "./static/js/6503.36360b86.chunk.js.map", + "5004.594e3211.chunk.js.map": "./static/js/5004.594e3211.chunk.js.map", "222.7f3906bd.chunk.js.map": "./static/js/222.7f3906bd.chunk.js.map", + "7847.d7a7fbd9.chunk.js.map": "./static/js/7847.d7a7fbd9.chunk.js.map", + "6363.b2794ff5.chunk.js.map": "./static/js/6363.b2794ff5.chunk.js.map", + "8941.a8683f5c.chunk.js.map": "./static/js/8941.a8683f5c.chunk.js.map", + "2260.c0246fc5.chunk.js.map": "./static/js/2260.c0246fc5.chunk.js.map", + "6459.b16c70ac.chunk.js.map": "./static/js/6459.b16c70ac.chunk.js.map", + "3801.e125737d.chunk.js.map": "./static/js/3801.e125737d.chunk.js.map", + "134.117c7fbe.chunk.js.map": "./static/js/134.117c7fbe.chunk.js.map", + "5980.5142636f.chunk.js.map": "./static/js/5980.5142636f.chunk.js.map", + "6975.18f2c3f9.chunk.js.map": "./static/js/6975.18f2c3f9.chunk.js.map", + "9444.da7eb5e5.chunk.js.map": "./static/js/9444.da7eb5e5.chunk.js.map", + "6624.695e9bbd.chunk.js.map": "./static/js/6624.695e9bbd.chunk.js.map", + "2791.a64fa77e.chunk.js.map": "./static/js/2791.a64fa77e.chunk.js.map", + "7981.b08cd322.chunk.js.map": "./static/js/7981.b08cd322.chunk.js.map", + "9581.35e0c780.chunk.js.map": "./static/js/9581.35e0c780.chunk.js.map", + "9817.d6ea67be.chunk.js.map": "./static/js/9817.d6ea67be.chunk.js.map", + "8831.c7482be4.chunk.js.map": "./static/js/8831.c7482be4.chunk.js.map", + "5904.c1d4d6b7.chunk.js.map": "./static/js/5904.c1d4d6b7.chunk.js.map", "2983.3ffd4ad8.chunk.js.map": "./static/js/2983.3ffd4ad8.chunk.js.map", + "91.e520a97c.chunk.js.map": "./static/js/91.e520a97c.chunk.js.map", "8308.24f46a88.chunk.js.map": "./static/js/8308.24f46a88.chunk.js.map" }, "entrypoints": [ "static/css/main.7f39beab.css", - "static/js/main.90ab1516.js" + "static/js/main.6166ac41.js" ] } \ No newline at end of file diff --git a/portal-ui/build/index.html b/portal-ui/build/index.html index 7a60fde3a..ceb71dcc7 100644 --- a/portal-ui/build/index.html +++ b/portal-ui/build/index.html @@ -1 +1 @@ -MinIO Console
\ No newline at end of file +MinIO Console
\ No newline at end of file diff --git a/portal-ui/build/static/js/1353.4c769f84.chunk.js b/portal-ui/build/static/js/1353.4c769f84.chunk.js deleted file mode 100644 index 8eec40056..000000000 --- a/portal-ui/build/static/js/1353.4c769f84.chunk.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see 1353.4c769f84.chunk.js.LICENSE.txt */ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1353],{29823:function(e,t,r){"use strict";var n=r(64836);t.Z=void 0;var o=n(r(45649)),a=r(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close");t.Z=i},3579:function(e,t,r){"use strict";var n=r(64836);t.Z=void 0;var o=n(r(45649)),a=r(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=i},20165:function(e,t,r){"use strict";var n=r(64836);t.Z=void 0;var o=n(r(45649)),a=r(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=i},45649:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=r(28610)},63021:function(e,t,r){"use strict";r.d(t,{Z:function(){return Z}});var n=r(4942),o=r(63366),a=r(87462),i=r(72791),c=r(28182),l=r(36229),s=r(94419);var u=r(21607),p=r(66934),f=r(31402),d=r(14036),m=r(75878),v=r(21217);function h(e){return(0,v.Z)("MuiBadge",e)}var g=(0,m.Z)("MuiBadge",["root","badge","dot","standard","anchorOriginTopRight","anchorOriginBottomRight","anchorOriginTopLeft","anchorOriginBottomLeft","invisible","colorError","colorInfo","colorPrimary","colorSecondary","colorSuccess","colorWarning","overlapRectangular","overlapCircular","anchorOriginTopLeftCircular","anchorOriginTopLeftRectangular","anchorOriginTopRightCircular","anchorOriginTopRightRectangular","anchorOriginBottomLeftCircular","anchorOriginBottomLeftRectangular","anchorOriginBottomRightCircular","anchorOriginBottomRightRectangular"]),b=r(80184),y=["anchorOrigin","className","classes","component","components","componentsProps","children","overlap","color","invisible","max","badgeContent","slots","slotProps","showZero","variant"],w=(0,p.ZP)("span",{name:"MuiBadge",slot:"Root",overridesResolver:function(e,t){return t.root}})({position:"relative",display:"inline-flex",verticalAlign:"middle",flexShrink:0}),x=(0,p.ZP)("span",{name:"MuiBadge",slot:"Badge",overridesResolver:function(e,t){var r=e.ownerState;return[t.badge,t[r.variant],t["anchorOrigin".concat((0,d.Z)(r.anchorOrigin.vertical)).concat((0,d.Z)(r.anchorOrigin.horizontal)).concat((0,d.Z)(r.overlap))],"default"!==r.color&&t["color".concat((0,d.Z)(r.color))],r.invisible&&t.invisible]}})((function(e){var t=e.theme,r=e.ownerState;return(0,a.Z)({display:"flex",flexDirection:"row",flexWrap:"wrap",justifyContent:"center",alignContent:"center",alignItems:"center",position:"absolute",boxSizing:"border-box",fontFamily:t.typography.fontFamily,fontWeight:t.typography.fontWeightMedium,fontSize:t.typography.pxToRem(12),minWidth:20,lineHeight:1,padding:"0 6px",height:20,borderRadius:10,zIndex:1,transition:t.transitions.create("transform",{easing:t.transitions.easing.easeInOut,duration:t.transitions.duration.enteringScreen})},"default"!==r.color&&{backgroundColor:(t.vars||t).palette[r.color].main,color:(t.vars||t).palette[r.color].contrastText},"dot"===r.variant&&{borderRadius:4,height:8,minWidth:8,padding:0},"top"===r.anchorOrigin.vertical&&"right"===r.anchorOrigin.horizontal&&"rectangular"===r.overlap&&(0,n.Z)({top:0,right:0,transform:"scale(1) translate(50%, -50%)",transformOrigin:"100% 0%"},"&.".concat(g.invisible),{transform:"scale(0) translate(50%, -50%)"}),"bottom"===r.anchorOrigin.vertical&&"right"===r.anchorOrigin.horizontal&&"rectangular"===r.overlap&&(0,n.Z)({bottom:0,right:0,transform:"scale(1) translate(50%, 50%)",transformOrigin:"100% 100%"},"&.".concat(g.invisible),{transform:"scale(0) translate(50%, 50%)"}),"top"===r.anchorOrigin.vertical&&"left"===r.anchorOrigin.horizontal&&"rectangular"===r.overlap&&(0,n.Z)({top:0,left:0,transform:"scale(1) translate(-50%, -50%)",transformOrigin:"0% 0%"},"&.".concat(g.invisible),{transform:"scale(0) translate(-50%, -50%)"}),"bottom"===r.anchorOrigin.vertical&&"left"===r.anchorOrigin.horizontal&&"rectangular"===r.overlap&&(0,n.Z)({bottom:0,left:0,transform:"scale(1) translate(-50%, 50%)",transformOrigin:"0% 100%"},"&.".concat(g.invisible),{transform:"scale(0) translate(-50%, 50%)"}),"top"===r.anchorOrigin.vertical&&"right"===r.anchorOrigin.horizontal&&"circular"===r.overlap&&(0,n.Z)({top:"14%",right:"14%",transform:"scale(1) translate(50%, -50%)",transformOrigin:"100% 0%"},"&.".concat(g.invisible),{transform:"scale(0) translate(50%, -50%)"}),"bottom"===r.anchorOrigin.vertical&&"right"===r.anchorOrigin.horizontal&&"circular"===r.overlap&&(0,n.Z)({bottom:"14%",right:"14%",transform:"scale(1) translate(50%, 50%)",transformOrigin:"100% 100%"},"&.".concat(g.invisible),{transform:"scale(0) translate(50%, 50%)"}),"top"===r.anchorOrigin.vertical&&"left"===r.anchorOrigin.horizontal&&"circular"===r.overlap&&(0,n.Z)({top:"14%",left:"14%",transform:"scale(1) translate(-50%, -50%)",transformOrigin:"0% 0%"},"&.".concat(g.invisible),{transform:"scale(0) translate(-50%, -50%)"}),"bottom"===r.anchorOrigin.vertical&&"left"===r.anchorOrigin.horizontal&&"circular"===r.overlap&&(0,n.Z)({bottom:"14%",left:"14%",transform:"scale(1) translate(-50%, 50%)",transformOrigin:"0% 100%"},"&.".concat(g.invisible),{transform:"scale(0) translate(-50%, 50%)"}),r.invisible&&{transition:t.transitions.create("transform",{easing:t.transitions.easing.easeInOut,duration:t.transitions.duration.leavingScreen})})})),Z=i.forwardRef((function(e,t){var r,n,i,p,m,v,g=(0,f.Z)({props:e,name:"MuiBadge"}),Z=g.anchorOrigin,O=void 0===Z?{vertical:"top",horizontal:"right"}:Z,S=g.className,k=g.component,C=g.components,j=void 0===C?{}:C,D=g.componentsProps,P=void 0===D?{}:D,E=g.children,R=g.overlap,z=void 0===R?"rectangular":R,F=g.color,A=void 0===F?"default":F,M=g.invisible,I=void 0!==M&&M,T=g.max,L=void 0===T?99:T,B=g.badgeContent,N=g.slots,_=g.slotProps,W=g.showZero,q=void 0!==W&&W,U=g.variant,H=void 0===U?"standard":U,K=(0,o.Z)(g,y),V=function(e){var t=e.badgeContent,r=e.invisible,n=void 0!==r&&r,o=e.max,a=void 0===o?99:o,i=e.showZero,c=void 0!==i&&i,s=(0,l.Z)({badgeContent:t,max:a}),u=n;!1!==n||0!==t||c||(u=!0);var p=u?s:e,f=p.badgeContent,d=p.max,m=void 0===d?a:d;return{badgeContent:f,invisible:u,max:m,displayValue:f&&Number(f)>m?"".concat(m,"+"):f}}({max:L,invisible:I,badgeContent:B,showZero:q}),$=V.badgeContent,G=V.invisible,X=V.max,Y=V.displayValue,J=(0,l.Z)({anchorOrigin:O,color:A,overlap:z,variant:H,badgeContent:B}),Q=G||null==$&&"dot"!==H,ee=Q?J:g,te=ee.color,re=void 0===te?A:te,ne=ee.overlap,oe=void 0===ne?z:ne,ae=ee.anchorOrigin,ie=void 0===ae?O:ae,ce=ee.variant,le=void 0===ce?H:ce,se="dot"!==le?Y:void 0,ue=(0,a.Z)({},g,{badgeContent:$,invisible:Q,max:X,displayValue:se,showZero:q,anchorOrigin:ie,color:re,overlap:oe,variant:le}),pe=function(e){var t=e.color,r=e.anchorOrigin,n=e.invisible,o=e.overlap,a=e.variant,i=e.classes,c=void 0===i?{}:i,l={root:["root"],badge:["badge",a,n&&"invisible","anchorOrigin".concat((0,d.Z)(r.vertical)).concat((0,d.Z)(r.horizontal)),"anchorOrigin".concat((0,d.Z)(r.vertical)).concat((0,d.Z)(r.horizontal)).concat((0,d.Z)(o)),"overlap".concat((0,d.Z)(o)),"default"!==t&&"color".concat((0,d.Z)(t))]};return(0,s.Z)(l,h,c)}(ue),fe=null!=(r=null!=(n=null==N?void 0:N.root)?n:j.Root)?r:w,de=null!=(i=null!=(p=null==N?void 0:N.badge)?p:j.Badge)?i:x,me=null!=(m=null==_?void 0:_.root)?m:P.root,ve=null!=(v=null==_?void 0:_.badge)?v:P.badge,he=(0,u.Z)({elementType:fe,externalSlotProps:me,externalForwardedProps:K,additionalProps:{ref:t,as:k},ownerState:ue,className:(0,c.Z)(null==me?void 0:me.className,pe.root,S)}),ge=(0,u.Z)({elementType:de,externalSlotProps:ve,ownerState:ue,className:(0,c.Z)(pe.badge,null==ve?void 0:ve.className)});return(0,b.jsxs)(fe,(0,a.Z)({},he,{children:[E,(0,b.jsx)(de,(0,a.Z)({},ge,{children:se}))]}))}))},94454:function(e,t,r){"use strict";r.d(t,{Z:function(){return D}});var n=r(4942),o=r(63366),a=r(87462),i=r(72791),c=r(28182),l=r(94419),s=r(12065),u=r(97278),p=r(76189),f=r(80184),d=(0,p.Z)((0,f.jsx)("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}),"CheckBoxOutlineBlank"),m=(0,p.Z)((0,f.jsx)("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"}),"CheckBox"),v=(0,p.Z)((0,f.jsx)("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z"}),"IndeterminateCheckBox"),h=r(14036),g=r(31402),b=r(66934),y=r(75878),w=r(21217);function x(e){return(0,w.Z)("MuiCheckbox",e)}var Z=(0,y.Z)("MuiCheckbox",["root","checked","disabled","indeterminate","colorPrimary","colorSecondary"]),O=["checkedIcon","color","icon","indeterminate","indeterminateIcon","inputProps","size","className"],S=(0,b.ZP)(u.Z,{shouldForwardProp:function(e){return(0,b.FO)(e)||"classes"===e},name:"MuiCheckbox",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[t.root,r.indeterminate&&t.indeterminate,"default"!==r.color&&t["color".concat((0,h.Z)(r.color))]]}})((function(e){var t,r=e.theme,o=e.ownerState;return(0,a.Z)({color:(r.vars||r).palette.text.secondary},!o.disableRipple&&{"&:hover":{backgroundColor:r.vars?"rgba(".concat("default"===o.color?r.vars.palette.action.activeChannel:r.vars.palette.primary.mainChannel," / ").concat(r.vars.palette.action.hoverOpacity,")"):(0,s.Fq)("default"===o.color?r.palette.action.active:r.palette[o.color].main,r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==o.color&&(t={},(0,n.Z)(t,"&.".concat(Z.checked,", &.").concat(Z.indeterminate),{color:(r.vars||r).palette[o.color].main}),(0,n.Z)(t,"&.".concat(Z.disabled),{color:(r.vars||r).palette.action.disabled}),t))})),k=(0,f.jsx)(m,{}),C=(0,f.jsx)(d,{}),j=(0,f.jsx)(v,{}),D=i.forwardRef((function(e,t){var r,n,s=(0,g.Z)({props:e,name:"MuiCheckbox"}),u=s.checkedIcon,p=void 0===u?k:u,d=s.color,m=void 0===d?"primary":d,v=s.icon,b=void 0===v?C:v,y=s.indeterminate,w=void 0!==y&&y,Z=s.indeterminateIcon,D=void 0===Z?j:Z,P=s.inputProps,E=s.size,R=void 0===E?"medium":E,z=s.className,F=(0,o.Z)(s,O),A=w?D:b,M=w?D:p,I=(0,a.Z)({},s,{color:m,indeterminate:w,size:R}),T=function(e){var t=e.classes,r=e.indeterminate,n=e.color,o={root:["root",r&&"indeterminate","color".concat((0,h.Z)(n))]},i=(0,l.Z)(o,x,t);return(0,a.Z)({},t,i)}(I);return(0,f.jsx)(S,(0,a.Z)({type:"checkbox",inputProps:(0,a.Z)({"data-indeterminate":w},P),icon:i.cloneElement(A,{fontSize:null!=(r=A.props.fontSize)?r:R}),checkedIcon:i.cloneElement(M,{fontSize:null!=(n=M.props.fontSize)?n:R}),ownerState:I,ref:t,className:(0,c.Z)(T.root,z)},F,{classes:T}))}))},17133:function(e,t,r){"use strict";var n=r(4942),o=r(63366),a=r(87462),i=r(72791),c=r(28182),l=r(94419),s=r(76147),u=r(52930),p=r(14036),f=r(31402),d=r(66934),m=r(10843),v=r(80184),h=["children","className","color","component","disabled","error","filled","focused","required"],g=(0,d.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return(0,a.Z)({},t.root,"secondary"===r.color&&t.colorSecondary,r.filled&&t.filled)}})((function(e){var t,r=e.theme,o=e.ownerState;return(0,a.Z)({color:(r.vars||r).palette.text.secondary},r.typography.body1,(t={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(t,"&.".concat(m.Z.focused),{color:(r.vars||r).palette[o.color].main}),(0,n.Z)(t,"&.".concat(m.Z.disabled),{color:(r.vars||r).palette.text.disabled}),(0,n.Z)(t,"&.".concat(m.Z.error),{color:(r.vars||r).palette.error.main}),t))})),b=(0,d.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,t){return t.asterisk}})((function(e){var t=e.theme;return(0,n.Z)({},"&.".concat(m.Z.error),{color:(t.vars||t).palette.error.main})})),y=i.forwardRef((function(e,t){var r=(0,f.Z)({props:e,name:"MuiFormLabel"}),n=r.children,i=r.className,d=r.component,y=void 0===d?"label":d,w=(0,o.Z)(r,h),x=(0,u.Z)(),Z=(0,s.Z)({props:r,muiFormControl:x,states:["color","required","focused","disabled","error","filled"]}),O=(0,a.Z)({},r,{color:Z.color||"primary",component:y,disabled:Z.disabled,error:Z.error,filled:Z.filled,focused:Z.focused,required:Z.required}),S=function(e){var t=e.classes,r=e.color,n=e.focused,o=e.disabled,a=e.error,i=e.filled,c=e.required,s={root:["root","color".concat((0,p.Z)(r)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",c&&"required"],asterisk:["asterisk",a&&"error"]};return(0,l.Z)(s,m.M,t)}(O);return(0,v.jsxs)(g,(0,a.Z)({as:y,ownerState:O,className:(0,c.Z)(S.root,i),ref:t},w,{children:[n,Z.required&&(0,v.jsxs)(b,{ownerState:O,"aria-hidden":!0,className:S.asterisk,children:["\u2009","*"]})]}))}));t.Z=y},10843:function(e,t,r){"use strict";r.d(t,{M:function(){return a}});var n=r(75878),o=r(21217);function a(e){return(0,o.Z)("MuiFormLabel",e)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);t.Z=i},30829:function(e,t,r){"use strict";r.d(t,{Z:function(){return x}});var n=r(4942),o=r(63366),a=r(87462),i=r(72791),c=r(94419),l=r(28182),s=r(76147),u=r(52930),p=r(17133),f=r(10843),d=r(31402),m=r(66934),v=r(75878),h=r(21217);function g(e){return(0,h.Z)("MuiInputLabel",e)}(0,v.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var b=r(80184),y=["disableAnimation","margin","shrink","variant","className"],w=(0,m.ZP)(p.Z,{shouldForwardProp:function(e){return(0,m.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),t.asterisk),t.root,r.formControl&&t.formControl,"small"===r.size&&t.sizeSmall,r.shrink&&t.shrink,!r.disableAnimation&&t.animated,t[r.variant]]}})((function(e){var t=e.theme,r=e.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},r.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===r.size&&{transform:"translate(0, 17px) scale(1)"},r.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!r.disableAnimation&&{transition:t.transitions.create(["color","transform","max-width"],{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut})},"filled"===r.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(12px, 13px) scale(1)"},r.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===r.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===r.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(14px, 9px) scale(1)"},r.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),x=i.forwardRef((function(e,t){var r=(0,d.Z)({name:"MuiInputLabel",props:e}),n=r.disableAnimation,i=void 0!==n&&n,p=r.shrink,f=r.className,m=(0,o.Z)(r,y),v=(0,u.Z)(),h=p;"undefined"===typeof h&&v&&(h=v.filled||v.focused||v.adornedStart);var x=(0,s.Z)({props:r,muiFormControl:v,states:["size","variant","required"]}),Z=(0,a.Z)({},r,{disableAnimation:i,formControl:v,shrink:h,size:x.size,variant:x.variant,required:x.required}),O=function(e){var t=e.classes,r=e.formControl,n=e.size,o=e.shrink,i={root:["root",r&&"formControl",!e.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},l=(0,c.Z)(i,g,t);return(0,a.Z)({},t,l)}(Z);return(0,b.jsx)(w,(0,a.Z)({"data-shrink":h,ownerState:Z,ref:t,className:(0,l.Z)(O.root,f)},m,{classes:O}))}))},57064:function(e,t,r){"use strict";var n=r(63366),o=r(87462),a=r(72791),i=r(28182),c=r(94419),l=r(66934),s=r(31402),u=r(96014),p=r(66199),f=r(80184),d=["className"],m=(0,l.ZP)("div",{name:"MuiListItemIcon",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[t.root,"flex-start"===r.alignItems&&t.alignItemsFlexStart]}})((function(e){var t=e.theme,r=e.ownerState;return(0,o.Z)({minWidth:56,color:(t.vars||t).palette.action.active,flexShrink:0,display:"inline-flex"},"flex-start"===r.alignItems&&{marginTop:8})})),v=a.forwardRef((function(e,t){var r=(0,s.Z)({props:e,name:"MuiListItemIcon"}),l=r.className,v=(0,n.Z)(r,d),h=a.useContext(p.Z),g=(0,o.Z)({},r,{alignItems:h.alignItems}),b=function(e){var t=e.alignItems,r=e.classes,n={root:["root","flex-start"===t&&"alignItemsFlexStart"]};return(0,c.Z)(n,u.f,r)}(g);return(0,f.jsx)(m,(0,o.Z)({className:(0,i.Z)(b.root,l),ownerState:g,ref:t},v))}));t.Z=v},49900:function(e,t,r){"use strict";var n=r(4942),o=r(63366),a=r(87462),i=r(72791),c=r(28182),l=r(94419),s=r(20890),u=r(66199),p=r(31402),f=r(66934),d=r(29849),m=r(80184),v=["children","className","disableTypography","inset","primary","primaryTypographyProps","secondary","secondaryTypographyProps"],h=(0,f.ZP)("div",{name:"MuiListItemText",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[(0,n.Z)({},"& .".concat(d.Z.primary),t.primary),(0,n.Z)({},"& .".concat(d.Z.secondary),t.secondary),t.root,r.inset&&t.inset,r.primary&&r.secondary&&t.multiline,r.dense&&t.dense]}})((function(e){var t=e.ownerState;return(0,a.Z)({flex:"1 1 auto",minWidth:0,marginTop:4,marginBottom:4},t.primary&&t.secondary&&{marginTop:6,marginBottom:6},t.inset&&{paddingLeft:56})})),g=i.forwardRef((function(e,t){var r=(0,p.Z)({props:e,name:"MuiListItemText"}),n=r.children,f=r.className,g=r.disableTypography,b=void 0!==g&&g,y=r.inset,w=void 0!==y&&y,x=r.primary,Z=r.primaryTypographyProps,O=r.secondary,S=r.secondaryTypographyProps,k=(0,o.Z)(r,v),C=i.useContext(u.Z).dense,j=null!=x?x:n,D=O,P=(0,a.Z)({},r,{disableTypography:b,inset:w,primary:!!j,secondary:!!D,dense:C}),E=function(e){var t=e.classes,r=e.inset,n=e.primary,o=e.secondary,a={root:["root",r&&"inset",e.dense&&"dense",n&&o&&"multiline"],primary:["primary"],secondary:["secondary"]};return(0,l.Z)(a,d.L,t)}(P);return null==j||j.type===s.Z||b||(j=(0,m.jsx)(s.Z,(0,a.Z)({variant:C?"body2":"body1",className:E.primary,component:null!=Z&&Z.variant?void 0:"span",display:"block"},Z,{children:j}))),null==D||D.type===s.Z||b||(D=(0,m.jsx)(s.Z,(0,a.Z)({variant:"body2",className:E.secondary,color:"text.secondary",display:"block"},S,{children:D}))),(0,m.jsxs)(h,(0,a.Z)({className:(0,c.Z)(E.root,f),ownerState:P,ref:t},k,{children:[j,D]}))}));t.Z=g},9955:function(e,t,r){"use strict";r.d(t,{Z:function(){return S}});var n=r(4942),o=r(63366),a=r(87462),i=r(72791),c=r(28182),l=r(94419),s=r(12065),u=r(14036),p=r(97278),f=r(31402),d=r(66934),m=r(75878),v=r(21217);function h(e){return(0,v.Z)("MuiSwitch",e)}var g=(0,m.Z)("MuiSwitch",["root","edgeStart","edgeEnd","switchBase","colorPrimary","colorSecondary","sizeSmall","sizeMedium","checked","disabled","input","thumb","track"]),b=r(80184),y=["className","color","edge","size","sx"],w=(0,d.ZP)("span",{name:"MuiSwitch",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[t.root,r.edge&&t["edge".concat((0,u.Z)(r.edge))],t["size".concat((0,u.Z)(r.size))]]}})((function(e){var t,r=e.ownerState;return(0,a.Z)({display:"inline-flex",width:58,height:38,overflow:"hidden",padding:12,boxSizing:"border-box",position:"relative",flexShrink:0,zIndex:0,verticalAlign:"middle","@media print":{colorAdjust:"exact"}},"start"===r.edge&&{marginLeft:-8},"end"===r.edge&&{marginRight:-8},"small"===r.size&&(t={width:40,height:24,padding:7},(0,n.Z)(t,"& .".concat(g.thumb),{width:16,height:16}),(0,n.Z)(t,"& .".concat(g.switchBase),(0,n.Z)({padding:4},"&.".concat(g.checked),{transform:"translateX(16px)"})),t))})),x=(0,d.ZP)(p.Z,{name:"MuiSwitch",slot:"SwitchBase",overridesResolver:function(e,t){var r=e.ownerState;return[t.switchBase,(0,n.Z)({},"& .".concat(g.input),t.input),"default"!==r.color&&t["color".concat((0,u.Z)(r.color))]]}})((function(e){var t,r=e.theme;return t={position:"absolute",top:0,left:0,zIndex:1,color:r.vars?r.vars.palette.Switch.defaultColor:"".concat("light"===r.palette.mode?r.palette.common.white:r.palette.grey[300]),transition:r.transitions.create(["left","transform"],{duration:r.transitions.duration.shortest})},(0,n.Z)(t,"&.".concat(g.checked),{transform:"translateX(20px)"}),(0,n.Z)(t,"&.".concat(g.disabled),{color:r.vars?r.vars.palette.Switch.defaultDisabledColor:"".concat("light"===r.palette.mode?r.palette.grey[100]:r.palette.grey[600])}),(0,n.Z)(t,"&.".concat(g.checked," + .").concat(g.track),{opacity:.5}),(0,n.Z)(t,"&.".concat(g.disabled," + .").concat(g.track),{opacity:r.vars?r.vars.opacity.switchTrackDisabled:"".concat("light"===r.palette.mode?.12:.2)}),(0,n.Z)(t,"& .".concat(g.input),{left:"-100%",width:"300%"}),t}),(function(e){var t,r=e.theme,o=e.ownerState;return(0,a.Z)({"&:hover":{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.action.activeChannel," / ").concat(r.vars.palette.action.hoverOpacity,")"):(0,s.Fq)(r.palette.action.active,r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==o.color&&(t={},(0,n.Z)(t,"&.".concat(g.checked),(0,n.Z)({color:(r.vars||r).palette[o.color].main,"&:hover":{backgroundColor:r.vars?"rgba(".concat(r.vars.palette[o.color].mainChannel," / ").concat(r.vars.palette.action.hoverOpacity,")"):(0,s.Fq)(r.palette[o.color].main,r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"&.".concat(g.disabled),{color:r.vars?r.vars.palette.Switch["".concat(o.color,"DisabledColor")]:"".concat("light"===r.palette.mode?(0,s.$n)(r.palette[o.color].main,.62):(0,s._j)(r.palette[o.color].main,.55))})),(0,n.Z)(t,"&.".concat(g.checked," + .").concat(g.track),{backgroundColor:(r.vars||r).palette[o.color].main}),t))})),Z=(0,d.ZP)("span",{name:"MuiSwitch",slot:"Track",overridesResolver:function(e,t){return t.track}})((function(e){var t=e.theme;return{height:"100%",width:"100%",borderRadius:7,zIndex:-1,transition:t.transitions.create(["opacity","background-color"],{duration:t.transitions.duration.shortest}),backgroundColor:t.vars?t.vars.palette.common.onBackground:"".concat("light"===t.palette.mode?t.palette.common.black:t.palette.common.white),opacity:t.vars?t.vars.opacity.switchTrack:"".concat("light"===t.palette.mode?.38:.3)}})),O=(0,d.ZP)("span",{name:"MuiSwitch",slot:"Thumb",overridesResolver:function(e,t){return t.thumb}})((function(e){var t=e.theme;return{boxShadow:(t.vars||t).shadows[1],backgroundColor:"currentColor",width:20,height:20,borderRadius:"50%"}})),S=i.forwardRef((function(e,t){var r=(0,f.Z)({props:e,name:"MuiSwitch"}),n=r.className,i=r.color,s=void 0===i?"primary":i,p=r.edge,d=void 0!==p&&p,m=r.size,v=void 0===m?"medium":m,g=r.sx,S=(0,o.Z)(r,y),k=(0,a.Z)({},r,{color:s,edge:d,size:v}),C=function(e){var t=e.classes,r=e.edge,n=e.size,o=e.color,i=e.checked,c=e.disabled,s={root:["root",r&&"edge".concat((0,u.Z)(r)),"size".concat((0,u.Z)(n))],switchBase:["switchBase","color".concat((0,u.Z)(o)),i&&"checked",c&&"disabled"],thumb:["thumb"],track:["track"],input:["input"]},p=(0,l.Z)(s,h,t);return(0,a.Z)({},t,p)}(k),j=(0,b.jsx)(O,{className:C.thumb,ownerState:k});return(0,b.jsxs)(w,{className:(0,c.Z)(C.root,n),sx:g,ownerState:k,children:[(0,b.jsx)(x,(0,a.Z)({type:"checkbox",icon:j,checkedIcon:j,ref:t,ownerState:k},S,{classes:(0,a.Z)({},C,{root:C.switchBase})})),(0,b.jsx)(Z,{className:C.track,ownerState:k})]})}))},97278:function(e,t,r){"use strict";r.d(t,{Z:function(){return x}});var n=r(29439),o=r(63366),a=r(87462),i=r(72791),c=r(28182),l=r(94419),s=r(14036),u=r(66934),p=r(98278),f=r(52930),d=r(95080),m=r(75878),v=r(21217);function h(e){return(0,v.Z)("PrivateSwitchBase",e)}(0,m.Z)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var g=r(80184),b=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],y=(0,u.ZP)(d.Z)((function(e){var t=e.ownerState;return(0,a.Z)({padding:9,borderRadius:"50%"},"start"===t.edge&&{marginLeft:"small"===t.size?-3:-12},"end"===t.edge&&{marginRight:"small"===t.size?-3:-12})})),w=(0,u.ZP)("input")({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),x=i.forwardRef((function(e,t){var r=e.autoFocus,i=e.checked,u=e.checkedIcon,d=e.className,m=e.defaultChecked,v=e.disabled,x=e.disableFocusRipple,Z=void 0!==x&&x,O=e.edge,S=void 0!==O&&O,k=e.icon,C=e.id,j=e.inputProps,D=e.inputRef,P=e.name,E=e.onBlur,R=e.onChange,z=e.onFocus,F=e.readOnly,A=e.required,M=void 0!==A&&A,I=e.tabIndex,T=e.type,L=e.value,B=(0,o.Z)(e,b),N=(0,p.Z)({controlled:i,default:Boolean(m),name:"SwitchBase",state:"checked"}),_=(0,n.Z)(N,2),W=_[0],q=_[1],U=(0,f.Z)(),H=v;U&&"undefined"===typeof H&&(H=U.disabled);var K="checkbox"===T||"radio"===T,V=(0,a.Z)({},e,{checked:W,disabled:H,disableFocusRipple:Z,edge:S}),$=function(e){var t=e.classes,r=e.checked,n=e.disabled,o=e.edge,a={root:["root",r&&"checked",n&&"disabled",o&&"edge".concat((0,s.Z)(o))],input:["input"]};return(0,l.Z)(a,h,t)}(V);return(0,g.jsxs)(y,(0,a.Z)({component:"span",className:(0,c.Z)($.root,d),centerRipple:!0,focusRipple:!Z,disabled:H,tabIndex:null,role:void 0,onFocus:function(e){z&&z(e),U&&U.onFocus&&U.onFocus(e)},onBlur:function(e){E&&E(e),U&&U.onBlur&&U.onBlur(e)},ownerState:V,ref:t},B,{children:[(0,g.jsx)(w,(0,a.Z)({autoFocus:r,checked:i,defaultChecked:m,className:$.input,disabled:H,id:K?C:void 0,name:P,onChange:function(e){if(!e.nativeEvent.defaultPrevented){var t=e.target.checked;q(t),R&&R(e,t)}},readOnly:F,ref:D,required:M,ownerState:V,tabIndex:I,type:T},"checkbox"===T&&void 0===L?{}:{value:L},j)),W?u:k]}))}))},31260:function(e,t,r){"use strict";var n=r(78949);t.Z=n.Z},28610:function(e,t,r){"use strict";r.r(t),r.d(t,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return c.Z},deprecatedPropType:function(){return l},isMuiElement:function(){return s.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return p.Z},requirePropFactory:function(){return f},setRef:function(){return d},unstable_ClassNameGenerator:function(){return x},unstable_useEnhancedEffect:function(){return m.Z},unstable_useId:function(){return v.Z},unsupportedProp:function(){return h},useControlled:function(){return g.Z},useEventCallback:function(){return b.Z},useForkRef:function(){return y.Z},useIsFocusVisible:function(){return w.Z}});var n=r(55902),o=r(14036),a=r(31260),i=r(76189),c=r(83199);var l=function(e,t){return function(){return null}},s=r(19103),u=r(98301),p=r(17602);r(87462);var f=function(e,t){return function(){return null}},d=r(62971).Z,m=r(40162),v=r(67384);var h=function(e,t,r,n,o){return null},g=r(98278),b=r(89683),y=r(42071),w=r(23031),x={configure:function(e){n.Z.configure(e)}}},36229:function(e,t,r){"use strict";var n=r(72791);t.Z=function(e){var t=n.useRef({});return n.useEffect((function(){t.current=e})),t.current}},69998:function(e,t){"use strict";t.Z=function(e,t){if(e&&t){var r=Array.isArray(t)?t:t.split(","),n=e.name||"",o=(e.type||"").toLowerCase(),a=o.replace(/\/.*$/,"");return r.some((function(e){var t=e.trim().toLowerCase();return"."===t.charAt(0)?n.toLowerCase().endsWith(t):t.endsWith("/*")?a===t.replace(/\/.*$/,""):o===t}))}return!0}},76998:function(e,t,r){"use strict";var n=r(42458),o={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var r,a,i,c,l,s,u=!1;t||(t={}),r=t.debug||!1;try{if(i=n(),c=document.createRange(),l=document.getSelection(),(s=document.createElement("span")).textContent=e,s.ariaHidden="true",s.style.all="unset",s.style.position="fixed",s.style.top=0,s.style.clip="rect(0, 0, 0, 0)",s.style.whiteSpace="pre",s.style.webkitUserSelect="text",s.style.MozUserSelect="text",s.style.msUserSelect="text",s.style.userSelect="text",s.addEventListener("copy",(function(n){if(n.stopPropagation(),t.format)if(n.preventDefault(),"undefined"===typeof n.clipboardData){r&&console.warn("unable to use e.clipboardData"),r&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var a=o[t.format]||o.default;window.clipboardData.setData(a,e)}else n.clipboardData.clearData(),n.clipboardData.setData(t.format,e);t.onCopy&&(n.preventDefault(),t.onCopy(n.clipboardData))})),document.body.appendChild(s),c.selectNodeContents(s),l.addRange(c),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");u=!0}catch(p){r&&console.error("unable to copy using execCommand: ",p),r&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),u=!0}catch(p){r&&console.error("unable to copy using clipboardData: ",p),r&&console.error("falling back to prompt"),a=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(a,e)}}finally{l&&("function"==typeof l.removeRange?l.removeRange(c):l.removeAllRanges()),s&&document.body.removeChild(s),i()}return u}},568:function(e,t,r){"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var o=c(r(72791)),a=c(r(76998)),i=["text","onCopy","options","children"];function c(e){return e&&e.__esModule?e:{default:e}}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function s(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function p(e,t){for(var r=0;r0&&o[o.length-1])&&(6===c[0]||2===c[0])){i=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]0)&&!(n=a.next()).done;)i.push(n.value)}catch(c){o={error:c}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i}function s(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0?n:e.name,writable:!1,configurable:!1,enumerable:!0})}return r}var f=[".DS_Store","Thumbs.db"];function d(e){return"object"===typeof e&&null!==e}function m(e){return b(e.target.files).map((function(e){return p(e)}))}function v(e){return i(this,void 0,void 0,(function(){return c(this,(function(t){switch(t.label){case 0:return[4,Promise.all(e.map((function(e){return e.getFile()})))];case 1:return[2,t.sent().map((function(e){return p(e)}))]}}))}))}function h(e,t){return i(this,void 0,void 0,(function(){var r;return c(this,(function(n){switch(n.label){case 0:return e.items?(r=b(e.items).filter((function(e){return"file"===e.kind})),"drop"!==t?[2,r]:[4,Promise.all(r.map(y))]):[3,2];case 1:return[2,g(w(n.sent()))];case 2:return[2,g(b(e.files).map((function(e){return p(e)})))]}}))}))}function g(e){return e.filter((function(e){return-1===f.indexOf(e.name)}))}function b(e){if(null===e)return[];for(var t=[],r=0;re.length)&&(t=e.length);for(var r=0,n=new Array(t);rr)return[!1,L(r)];if(e.sizer)return[!1,L(r)]}return[!0,null]}function q(e){return void 0!==e&&null!==e}function U(e){return"function"===typeof e.isPropagationStopped?e.isPropagationStopped():"undefined"!==typeof e.cancelBubble&&e.cancelBubble}function H(e){return e.dataTransfer?Array.prototype.some.call(e.dataTransfer.types,(function(e){return"Files"===e||"application/x-moz-file"===e})):!!e.target&&!!e.target.files}function K(e){e.preventDefault()}function V(){for(var e=arguments.length,t=new Array(e),r=0;r1?r-1:0),o=1;oe.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var le=(0,n.forwardRef)((function(e,t){var r=e.children,o=pe(ce(e,X)),a=o.open,i=ce(o,Y);return(0,n.useImperativeHandle)(t,(function(){return{open:a}}),[a]),n.createElement(n.Fragment,null,r(ae(ae({},i),{},{open:a})))}));le.displayName="Dropzone";var se={disabled:!1,getFilesFromEvent:function(e){return i(this,void 0,void 0,(function(){return c(this,(function(t){return d(e)&&d(e.dataTransfer)?[2,h(e.dataTransfer,e.type)]:function(e){return d(e)&&d(e.target)}(e)?[2,m(e)]:Array.isArray(e)&&e.every((function(e){return"getFile"in e&&"function"===typeof e.getFile}))?[2,v(e)]:[2,[]]}))}))},maxSize:1/0,minSize:0,multiple:!0,maxFiles:0,preventDropOnDocument:!0,noClick:!1,noKeyboard:!1,noDrag:!1,noDragEventsBubbling:!1,validator:null,useFsAccessApi:!0,autoFocus:!1};le.defaultProps=se,le.propTypes={children:a().func,accept:a().objectOf(a().arrayOf(a().string)),multiple:a().bool,preventDropOnDocument:a().bool,noClick:a().bool,noKeyboard:a().bool,noDrag:a().bool,noDragEventsBubbling:a().bool,minSize:a().number,maxSize:a().number,maxFiles:a().number,disabled:a().bool,getFilesFromEvent:a().func,onFileDialogCancel:a().func,onFileDialogOpen:a().func,useFsAccessApi:a().bool,autoFocus:a().bool,onDragEnter:a().func,onDragLeave:a().func,onDragOver:a().func,onDrop:a().func,onDropAccepted:a().func,onDropRejected:a().func,onError:a().func,validator:a().func};var ue={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,acceptedFiles:[],fileRejections:[]};function pe(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=ae(ae({},se),e),r=t.accept,o=t.disabled,a=t.getFilesFromEvent,i=t.maxSize,c=t.minSize,l=t.multiple,s=t.maxFiles,u=t.onDragEnter,p=t.onDragLeave,f=t.onDragOver,d=t.onDrop,m=t.onDropAccepted,v=t.onDropRejected,h=t.onFileDialogCancel,g=t.onFileDialogOpen,b=t.useFsAccessApi,y=t.autoFocus,w=t.preventDropOnDocument,x=t.noClick,Z=t.noKeyboard,O=t.noDrag,S=t.noDragEventsBubbling,k=t.onError,j=t.validator,R=(0,n.useMemo)((function(){return function(e){if(q(e))return Object.entries(e).reduce((function(e,t){var r=E(t,2),n=r[0],o=r[1];return[].concat(C(e),[n],C(o))}),[]).filter((function(e){return $(e)||G(e)})).join(",")}(r)}),[r]),z=(0,n.useMemo)((function(){return function(e){return q(e)?[{description:"Files",accept:Object.entries(e).filter((function(e){var t=E(e,2),r=t[0],n=t[1],o=!0;return $(r)||(console.warn('Skipped "'.concat(r,'" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.')),o=!1),Array.isArray(n)&&n.every(G)||(console.warn('Skipped "'.concat(r,'" because an invalid file extension was provided.')),o=!1),o})).reduce((function(e,t){var r=E(t,2),n=r[0],o=r[1];return D(D({},e),{},P({},n,o))}),{})}]:e}(r)}),[r]),F=(0,n.useMemo)((function(){return"function"===typeof g?g:de}),[g]),A=(0,n.useMemo)((function(){return"function"===typeof h?h:de}),[h]),M=(0,n.useRef)(null),I=(0,n.useRef)(null),T=te((0,n.useReducer)(fe,ue),2),L=T[0],B=T[1],X=L.isFocused,Y=L.isFileDialogActive,re=(0,n.useRef)("undefined"!==typeof window&&window.isSecureContext&&b&&"showOpenFilePicker"in window),ne=function(){!re.current&&Y&&setTimeout((function(){I.current&&(I.current.files.length||(B({type:"closeDialog"}),A()))}),300)};(0,n.useEffect)((function(){return window.addEventListener("focus",ne,!1),function(){window.removeEventListener("focus",ne,!1)}}),[I,Y,A,re]);var oe=(0,n.useRef)([]),le=function(e){M.current&&M.current.contains(e.target)||(e.preventDefault(),oe.current=[])};(0,n.useEffect)((function(){return w&&(document.addEventListener("dragover",K,!1),document.addEventListener("drop",le,!1)),function(){w&&(document.removeEventListener("dragover",K),document.removeEventListener("drop",le))}}),[M,w]),(0,n.useEffect)((function(){return!o&&y&&M.current&&M.current.focus(),function(){}}),[M,y,o]);var pe=(0,n.useCallback)((function(e){k?k(e):console.error(e)}),[k]),me=(0,n.useCallback)((function(e){e.preventDefault(),e.persist(),je(e),oe.current=[].concat(ee(oe.current),[e.target]),H(e)&&Promise.resolve(a(e)).then((function(t){if(!U(e)||S){var r=t.length,n=r>0&&function(e){var t=e.files,r=e.accept,n=e.minSize,o=e.maxSize,a=e.multiple,i=e.maxFiles,c=e.validator;return!(!a&&t.length>1||a&&i>=1&&t.length>i)&&t.every((function(e){var t=E(_(e,r),1)[0],a=E(W(e,n,o),1)[0],i=c?c(e):null;return t&&a&&!i}))}({files:t,accept:R,minSize:c,maxSize:i,multiple:l,maxFiles:s,validator:j});B({isDragAccept:n,isDragReject:r>0&&!n,isDragActive:!0,type:"setDraggedFiles"}),u&&u(e)}})).catch((function(e){return pe(e)}))}),[a,u,pe,S,R,c,i,l,s,j]),ve=(0,n.useCallback)((function(e){e.preventDefault(),e.persist(),je(e);var t=H(e);if(t&&e.dataTransfer)try{e.dataTransfer.dropEffect="copy"}catch(r){}return t&&f&&f(e),!1}),[f,S]),he=(0,n.useCallback)((function(e){e.preventDefault(),e.persist(),je(e);var t=oe.current.filter((function(e){return M.current&&M.current.contains(e)})),r=t.indexOf(e.target);-1!==r&&t.splice(r,1),oe.current=t,t.length>0||(B({type:"setDraggedFiles",isDragActive:!1,isDragAccept:!1,isDragReject:!1}),H(e)&&p&&p(e))}),[M,p,S]),ge=(0,n.useCallback)((function(e,t){var r=[],n=[];e.forEach((function(e){var t=te(_(e,R),2),o=t[0],a=t[1],l=te(W(e,c,i),2),s=l[0],u=l[1],p=j?j(e):null;if(o&&s&&!p)r.push(e);else{var f=[a,u];p&&(f=f.concat(p)),n.push({file:e,errors:f.filter((function(e){return e}))})}})),(!l&&r.length>1||l&&s>=1&&r.length>s)&&(r.forEach((function(e){n.push({file:e,errors:[N]})})),r.splice(0)),B({acceptedFiles:r,fileRejections:n,type:"setFiles"}),d&&d(r,n,t),n.length>0&&v&&v(n,t),r.length>0&&m&&m(r,t)}),[B,l,R,c,i,s,d,m,v,j]),be=(0,n.useCallback)((function(e){e.preventDefault(),e.persist(),je(e),oe.current=[],H(e)&&Promise.resolve(a(e)).then((function(t){U(e)&&!S||ge(t,e)})).catch((function(e){return pe(e)})),B({type:"reset"})}),[a,ge,pe,S]),ye=(0,n.useCallback)((function(){if(re.current){B({type:"openDialog"}),F();var e={multiple:l,types:z};window.showOpenFilePicker(e).then((function(e){return a(e)})).then((function(e){ge(e,null),B({type:"closeDialog"})})).catch((function(e){var t;(t=e)instanceof DOMException&&("AbortError"===t.name||t.code===t.ABORT_ERR)?(A(e),B({type:"closeDialog"})):!function(e){return e instanceof DOMException&&("SecurityError"===e.name||e.code===e.SECURITY_ERR)}(e)?pe(e):(re.current=!1,I.current?(I.current.value=null,I.current.click()):pe(new Error("Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no was provided.")))}))}else I.current&&(B({type:"openDialog"}),F(),I.current.value=null,I.current.click())}),[B,F,A,b,ge,pe,z,l]),we=(0,n.useCallback)((function(e){M.current&&M.current.isEqualNode(e.target)&&(" "!==e.key&&"Enter"!==e.key&&32!==e.keyCode&&13!==e.keyCode||(e.preventDefault(),ye()))}),[M,ye]),xe=(0,n.useCallback)((function(){B({type:"focus"})}),[]),Ze=(0,n.useCallback)((function(){B({type:"blur"})}),[]),Oe=(0,n.useCallback)((function(){x||(!function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator.userAgent;return function(e){return-1!==e.indexOf("MSIE")||-1!==e.indexOf("Trident/")}(e)||function(e){return-1!==e.indexOf("Edge/")}(e)}()?ye():setTimeout(ye,0))}),[x,ye]),Se=function(e){return o?null:e},ke=function(e){return Z?null:Se(e)},Ce=function(e){return O?null:Se(e)},je=function(e){S&&e.stopPropagation()},De=(0,n.useMemo)((function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.refKey,r=void 0===t?"ref":t,n=e.role,a=e.onKeyDown,i=e.onFocus,c=e.onBlur,l=e.onClick,s=e.onDragEnter,u=e.onDragOver,p=e.onDragLeave,f=e.onDrop,d=ce(e,J);return ae(ae(ie({onKeyDown:ke(V(a,we)),onFocus:ke(V(i,xe)),onBlur:ke(V(c,Ze)),onClick:Se(V(l,Oe)),onDragEnter:Ce(V(s,me)),onDragOver:Ce(V(u,ve)),onDragLeave:Ce(V(p,he)),onDrop:Ce(V(f,be)),role:"string"===typeof n&&""!==n?n:"presentation"},r,M),o||Z?{}:{tabIndex:0}),d)}}),[M,we,xe,Ze,Oe,me,ve,he,be,Z,O,o]),Pe=(0,n.useCallback)((function(e){e.stopPropagation()}),[]),Ee=(0,n.useMemo)((function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.refKey,r=void 0===t?"ref":t,n=e.onChange,o=e.onClick,a=ce(e,Q);return ae(ae({},ie({accept:R,multiple:l,type:"file",style:{display:"none"},onChange:Se(V(n,be)),onClick:Se(V(o,Pe)),tabIndex:-1},r,I)),a)}}),[I,r,l,be,o]);return ae(ae({},L),{},{isFocused:X&&!o,getRootProps:De,getInputProps:Ee,rootRef:M,inputRef:I,open:Se(ye)})}function fe(e,t){switch(t.type){case"focus":return ae(ae({},e),{},{isFocused:!0});case"blur":return ae(ae({},e),{},{isFocused:!1});case"openDialog":return ae(ae({},ue),{},{isFileDialogActive:!0});case"closeDialog":return ae(ae({},e),{},{isFileDialogActive:!1});case"setDraggedFiles":return ae(ae({},e),{},{isDragActive:t.isDragActive,isDragAccept:t.isDragAccept,isDragReject:t.isDragReject});case"setFiles":return ae(ae({},e),{},{acceptedFiles:t.acceptedFiles,fileRejections:t.fileRejections});case"reset":return ae({},ue);default:return e}}function de(){}},90344:function(e){var t=this;e.exports=function(){"use strict";var e="object"===typeof window?window:t;e.HTMLElement||console.warn("streamsaver is meant to run on browsers main thread");var r=null,n=!1,o=function(e){try{e()}catch(t){}},a=e.WebStreamsPolyfill||{},i=e.isSecureContext,c=/constructor/i.test(e.HTMLElement)||!!e.safari||!!e.WebKitPoint,l=i||"MozAppearance"in document.documentElement.style?"iframe":"navigate",s={createWriteStream:d,WritableStream:e.WritableStream||a.WritableStream,supported:!0,version:{full:"2.0.5",major:2,minor:0,dot:5},mitm:"https://jimmywarting.github.io/StreamSaver.js/mitm.html?version=2.0.0"};function u(e){if(!e)throw new Error("meh");var t=document.createElement("iframe");return t.hidden=!0,t.src=e,t.loaded=!1,t.name="iframe",t.isIframe=!0,t.postMessage=function(){var e;return(e=t.contentWindow).postMessage.apply(e,arguments)},t.addEventListener("load",(function(){t.loaded=!0}),{once:!0}),document.body.appendChild(t),t}function p(t){var r="width=200,height=100",n=document.createDocumentFragment(),o={frame:e.open(t,"popup",r),loaded:!1,isIframe:!1,isPopup:!0,remove:function(){o.frame.close()},addEventListener:function(){n.addEventListener.apply(n,arguments)},dispatchEvent:function(){n.dispatchEvent.apply(n,arguments)},removeEventListener:function(){n.removeEventListener.apply(n,arguments)},postMessage:function(){var e;(e=o.frame).postMessage.apply(e,arguments)}},a=function t(r){r.source===o.frame&&(o.loaded=!0,e.removeEventListener("message",t),o.dispatchEvent(new Event("load")))};return e.addEventListener("message",a),o}try{new Response(new ReadableStream),i&&!("serviceWorker"in navigator)&&(c=!0)}catch(m){c=!0}function f(){r||(r=i?u(s.mitm):p(s.mitm))}function d(e,t,o){var a={size:null,pathname:null,writableStrategy:void 0,readableStrategy:void 0},i=0,p=null,d=null,m=null;if(Number.isFinite(t)){var v=[t,o];o=v[0],t=v[1],console.warn("[StreamSaver] Deprecated pass an object as 2nd argument when creating a write stream"),a.size=o,a.writableStrategy=t}else t&&t.highWaterMark?(console.warn("[StreamSaver] Deprecated pass an object as 2nd argument when creating a write stream"),a.size=o,a.writableStrategy=t):a=t||{};if(!c){f(),d=new MessageChannel,e=encodeURIComponent(e.replace(/\//g,":")).replace(/['()]/g,escape).replace(/\*/g,"%2A");var h={transferringReadable:n,pathname:a.pathname||Math.random().toString().slice(-6)+"/"+e,headers:{"Content-Type":"application/octet-stream; charset=utf-8","Content-Disposition":"attachment; filename*=UTF-8''"+e}};a.size&&(h.headers["Content-Length"]=a.size);var g,b=[h,"*",[d.port2]];if(n){var y="iframe"===l?void 0:{transform:function(e,t){if(!(e instanceof Uint8Array))throw new TypeError("Can only write Uint8Arrays");i+=e.length,t.enqueue(e),p&&(location.href=p,p=null)},flush:function(){p&&(location.href=p)}},w=(m=new s.TransformStream(y,a.writableStrategy,a.readableStrategy)).readable;d.port1.postMessage({readableStream:w},[w])}d.port1.onmessage=function(e){e.data.download?"navigate"===l?(r.remove(),r=null,i?location.href=e.data.download:p=e.data.download):(r.isPopup&&(r.remove(),r=null,"iframe"===l&&u(s.mitm)),u(e.data.download)):e.data.abort&&(x=[],d.port1.postMessage("abort"),d.port1.onmessage=null,d.port1.close(),d.port2.close(),d=null)},r.loaded?(g=r).postMessage.apply(g,b):r.addEventListener("load",(function(){var e;(e=r).postMessage.apply(e,b)}),{once:!0})}var x=[];return!c&&m&&m.writable||new s.WritableStream({write:function(e){if(!(e instanceof Uint8Array))throw new TypeError("Can only write Uint8Arrays");c?x.push(e):(d.port1.postMessage(e),i+=e.length,p&&(location.href=p,p=null))},close:function(){if(c){var t=new Blob(x,{type:"application/octet-stream; charset=utf-8"}),r=document.createElement("a");r.href=URL.createObjectURL(t),r.download=e,r.click()}else d.port1.postMessage("end")},abort:function(){x=[],d.port1.postMessage("abort"),d.port1.onmessage=null,d.port1.close(),d.port2.close(),d=null}},a.writableStrategy)}return o((function(){var e=(new TransformStream).readable,t=new MessageChannel;t.port1.postMessage(e,[e]),t.port1.close(),t.port2.close(),n=!0,Object.defineProperty(s,"TransformStream",{configurable:!1,writable:!1,value:TransformStream})})),s}()},42458:function(e){e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,r=[],n=0;n */ diff --git a/portal-ui/build/static/js/1353.4c769f84.chunk.js.map b/portal-ui/build/static/js/1353.4c769f84.chunk.js.map deleted file mode 100644 index 5148a8b96..000000000 --- a/portal-ui/build/static/js/1353.4c769f84.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/1353.4c769f84.chunk.js","mappings":"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","sources":["../node_modules/@mui/icons-material/Close.js","../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/Badge/badgeClasses.js","../node_modules/@mui/material/Badge/Badge.js","../node_modules/@mui/material/node_modules/@mui/base/useBadge/useBadge.js","../node_modules/@mui/material/internal/svg-icons/CheckBoxOutlineBlank.js","../node_modules/@mui/material/internal/svg-icons/CheckBox.js","../node_modules/@mui/material/internal/svg-icons/IndeterminateCheckBox.js","../node_modules/@mui/material/Checkbox/checkboxClasses.js","../node_modules/@mui/material/Checkbox/Checkbox.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/ListItemIcon/ListItemIcon.js","../node_modules/@mui/material/ListItemText/ListItemText.js","../node_modules/@mui/material/Switch/switchClasses.js","../node_modules/@mui/material/Switch/Switch.js","../node_modules/@mui/material/internal/switchBaseClasses.js","../node_modules/@mui/material/internal/SwitchBase.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/utils/esm/usePreviousProps.js","../node_modules/attr-accept/dist/es/index.js","../node_modules/copy-to-clipboard/index.js","../node_modules/react-copy-to-clipboard/lib/Component.js","../node_modules/react-copy-to-clipboard/lib/index.js","../node_modules/tslib/tslib.es6.mjs","../node_modules/file-selector/src/file.ts","../node_modules/file-selector/src/file-selector.ts","../node_modules/react-dropzone/dist/es/utils/index.js","../node_modules/react-dropzone/dist/es/index.js","../node_modules/streamsaver/StreamSaver.js","../node_modules/toggle-selection/index.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\n}), 'Close');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getBadgeUtilityClass(slot) {\n return generateUtilityClass('MuiBadge', slot);\n}\nconst badgeClasses = generateUtilityClasses('MuiBadge', ['root', 'badge', 'dot', 'standard', 'anchorOriginTopRight', 'anchorOriginBottomRight', 'anchorOriginTopLeft', 'anchorOriginBottomLeft', 'invisible', 'colorError', 'colorInfo', 'colorPrimary', 'colorSecondary', 'colorSuccess', 'colorWarning', 'overlapRectangular', 'overlapCircular',\n// TODO: v6 remove the overlap value from these class keys\n'anchorOriginTopLeftCircular', 'anchorOriginTopLeftRectangular', 'anchorOriginTopRightCircular', 'anchorOriginTopRightRectangular', 'anchorOriginBottomLeftCircular', 'anchorOriginBottomLeftRectangular', 'anchorOriginBottomRightCircular', 'anchorOriginBottomRightRectangular']);\nexport default badgeClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"anchorOrigin\", \"className\", \"classes\", \"component\", \"components\", \"componentsProps\", \"children\", \"overlap\", \"color\", \"invisible\", \"max\", \"badgeContent\", \"slots\", \"slotProps\", \"showZero\", \"variant\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { usePreviousProps } from '@mui/utils';\nimport composeClasses from '@mui/base/composeClasses';\nimport useBadge from '@mui/base/useBadge';\nimport { useSlotProps } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport capitalize from '../utils/capitalize';\nimport badgeClasses, { getBadgeUtilityClass } from './badgeClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst RADIUS_STANDARD = 10;\nconst RADIUS_DOT = 4;\nconst useUtilityClasses = ownerState => {\n const {\n color,\n anchorOrigin,\n invisible,\n overlap,\n variant,\n classes = {}\n } = ownerState;\n const slots = {\n root: ['root'],\n badge: ['badge', variant, invisible && 'invisible', `anchorOrigin${capitalize(anchorOrigin.vertical)}${capitalize(anchorOrigin.horizontal)}`, `anchorOrigin${capitalize(anchorOrigin.vertical)}${capitalize(anchorOrigin.horizontal)}${capitalize(overlap)}`, `overlap${capitalize(overlap)}`, color !== 'default' && `color${capitalize(color)}`]\n };\n return composeClasses(slots, getBadgeUtilityClass, classes);\n};\nconst BadgeRoot = styled('span', {\n name: 'MuiBadge',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n position: 'relative',\n display: 'inline-flex',\n // For correct alignment with the text.\n verticalAlign: 'middle',\n flexShrink: 0\n});\nconst BadgeBadge = styled('span', {\n name: 'MuiBadge',\n slot: 'Badge',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.badge, styles[ownerState.variant], styles[`anchorOrigin${capitalize(ownerState.anchorOrigin.vertical)}${capitalize(ownerState.anchorOrigin.horizontal)}${capitalize(ownerState.overlap)}`], ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`], ownerState.invisible && styles.invisible];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'flex',\n flexDirection: 'row',\n flexWrap: 'wrap',\n justifyContent: 'center',\n alignContent: 'center',\n alignItems: 'center',\n position: 'absolute',\n boxSizing: 'border-box',\n fontFamily: theme.typography.fontFamily,\n fontWeight: theme.typography.fontWeightMedium,\n fontSize: theme.typography.pxToRem(12),\n minWidth: RADIUS_STANDARD * 2,\n lineHeight: 1,\n padding: '0 6px',\n height: RADIUS_STANDARD * 2,\n borderRadius: RADIUS_STANDARD,\n zIndex: 1,\n // Render the badge on top of potential ripples.\n transition: theme.transitions.create('transform', {\n easing: theme.transitions.easing.easeInOut,\n duration: theme.transitions.duration.enteringScreen\n })\n}, ownerState.color !== 'default' && {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].main,\n color: (theme.vars || theme).palette[ownerState.color].contrastText\n}, ownerState.variant === 'dot' && {\n borderRadius: RADIUS_DOT,\n height: RADIUS_DOT * 2,\n minWidth: RADIUS_DOT * 2,\n padding: 0\n}, ownerState.anchorOrigin.vertical === 'top' && ownerState.anchorOrigin.horizontal === 'right' && ownerState.overlap === 'rectangular' && {\n top: 0,\n right: 0,\n transform: 'scale(1) translate(50%, -50%)',\n transformOrigin: '100% 0%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(50%, -50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'bottom' && ownerState.anchorOrigin.horizontal === 'right' && ownerState.overlap === 'rectangular' && {\n bottom: 0,\n right: 0,\n transform: 'scale(1) translate(50%, 50%)',\n transformOrigin: '100% 100%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(50%, 50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'top' && ownerState.anchorOrigin.horizontal === 'left' && ownerState.overlap === 'rectangular' && {\n top: 0,\n left: 0,\n transform: 'scale(1) translate(-50%, -50%)',\n transformOrigin: '0% 0%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(-50%, -50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'bottom' && ownerState.anchorOrigin.horizontal === 'left' && ownerState.overlap === 'rectangular' && {\n bottom: 0,\n left: 0,\n transform: 'scale(1) translate(-50%, 50%)',\n transformOrigin: '0% 100%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(-50%, 50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'top' && ownerState.anchorOrigin.horizontal === 'right' && ownerState.overlap === 'circular' && {\n top: '14%',\n right: '14%',\n transform: 'scale(1) translate(50%, -50%)',\n transformOrigin: '100% 0%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(50%, -50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'bottom' && ownerState.anchorOrigin.horizontal === 'right' && ownerState.overlap === 'circular' && {\n bottom: '14%',\n right: '14%',\n transform: 'scale(1) translate(50%, 50%)',\n transformOrigin: '100% 100%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(50%, 50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'top' && ownerState.anchorOrigin.horizontal === 'left' && ownerState.overlap === 'circular' && {\n top: '14%',\n left: '14%',\n transform: 'scale(1) translate(-50%, -50%)',\n transformOrigin: '0% 0%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(-50%, -50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'bottom' && ownerState.anchorOrigin.horizontal === 'left' && ownerState.overlap === 'circular' && {\n bottom: '14%',\n left: '14%',\n transform: 'scale(1) translate(-50%, 50%)',\n transformOrigin: '0% 100%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(-50%, 50%)'\n }\n}, ownerState.invisible && {\n transition: theme.transitions.create('transform', {\n easing: theme.transitions.easing.easeInOut,\n duration: theme.transitions.duration.leavingScreen\n })\n}));\nconst Badge = /*#__PURE__*/React.forwardRef(function Badge(inProps, ref) {\n var _ref, _slots$root, _ref2, _slots$badge, _slotProps$root, _slotProps$badge;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiBadge'\n });\n const {\n anchorOrigin: anchorOriginProp = {\n vertical: 'top',\n horizontal: 'right'\n },\n className,\n component,\n components = {},\n componentsProps = {},\n children,\n overlap: overlapProp = 'rectangular',\n color: colorProp = 'default',\n invisible: invisibleProp = false,\n max: maxProp = 99,\n badgeContent: badgeContentProp,\n slots,\n slotProps,\n showZero = false,\n variant: variantProp = 'standard'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const {\n badgeContent,\n invisible: invisibleFromHook,\n max,\n displayValue: displayValueFromHook\n } = useBadge({\n max: maxProp,\n invisible: invisibleProp,\n badgeContent: badgeContentProp,\n showZero\n });\n const prevProps = usePreviousProps({\n anchorOrigin: anchorOriginProp,\n color: colorProp,\n overlap: overlapProp,\n variant: variantProp,\n badgeContent: badgeContentProp\n });\n const invisible = invisibleFromHook || badgeContent == null && variantProp !== 'dot';\n const {\n color = colorProp,\n overlap = overlapProp,\n anchorOrigin = anchorOriginProp,\n variant = variantProp\n } = invisible ? prevProps : props;\n const displayValue = variant !== 'dot' ? displayValueFromHook : undefined;\n const ownerState = _extends({}, props, {\n badgeContent,\n invisible,\n max,\n displayValue,\n showZero,\n anchorOrigin,\n color,\n overlap,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n\n // support both `slots` and `components` for backward compatibility\n const RootSlot = (_ref = (_slots$root = slots == null ? void 0 : slots.root) != null ? _slots$root : components.Root) != null ? _ref : BadgeRoot;\n const BadgeSlot = (_ref2 = (_slots$badge = slots == null ? void 0 : slots.badge) != null ? _slots$badge : components.Badge) != null ? _ref2 : BadgeBadge;\n const rootSlotProps = (_slotProps$root = slotProps == null ? void 0 : slotProps.root) != null ? _slotProps$root : componentsProps.root;\n const badgeSlotProps = (_slotProps$badge = slotProps == null ? void 0 : slotProps.badge) != null ? _slotProps$badge : componentsProps.badge;\n const rootProps = useSlotProps({\n elementType: RootSlot,\n externalSlotProps: rootSlotProps,\n externalForwardedProps: other,\n additionalProps: {\n ref,\n as: component\n },\n ownerState,\n className: clsx(rootSlotProps == null ? void 0 : rootSlotProps.className, classes.root, className)\n });\n const badgeProps = useSlotProps({\n elementType: BadgeSlot,\n externalSlotProps: badgeSlotProps,\n ownerState,\n className: clsx(classes.badge, badgeSlotProps == null ? void 0 : badgeSlotProps.className)\n });\n return /*#__PURE__*/_jsxs(RootSlot, _extends({}, rootProps, {\n children: [children, /*#__PURE__*/_jsx(BadgeSlot, _extends({}, badgeProps, {\n children: displayValue\n }))]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Badge.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The anchor of the badge.\n * @default {\n * vertical: 'top',\n * horizontal: 'right',\n * }\n */\n anchorOrigin: PropTypes.shape({\n horizontal: PropTypes.oneOf(['left', 'right']).isRequired,\n vertical: PropTypes.oneOf(['bottom', 'top']).isRequired\n }),\n /**\n * The content rendered within the badge.\n */\n badgeContent: PropTypes.node,\n /**\n * The badge will be added relative to this node.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'default'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `slots` prop.\n * It's recommended to use the `slots` prop instead.\n *\n * @default {}\n */\n components: PropTypes.shape({\n Badge: PropTypes.elementType,\n Root: PropTypes.elementType\n }),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `slotProps` prop.\n * It's recommended to use the `slotProps` prop instead, as `componentsProps` will be deprecated in the future.\n *\n * @default {}\n */\n componentsProps: PropTypes.shape({\n badge: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n root: PropTypes.oneOfType([PropTypes.func, PropTypes.object])\n }),\n /**\n * If `true`, the badge is invisible.\n * @default false\n */\n invisible: PropTypes.bool,\n /**\n * Max count to show.\n * @default 99\n */\n max: PropTypes.number,\n /**\n * Wrapped shape the badge should overlap.\n * @default 'rectangular'\n */\n overlap: PropTypes.oneOf(['circular', 'rectangular']),\n /**\n * Controls whether the badge is hidden when `badgeContent` is zero.\n * @default false\n */\n showZero: PropTypes.bool,\n /**\n * The props used for each slot inside the Badge.\n * @default {}\n */\n slotProps: PropTypes.shape({\n badge: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n root: PropTypes.oneOfType([PropTypes.func, PropTypes.object])\n }),\n /**\n * The components used for each slot inside the Badge.\n * Either a string to use a HTML element or a component.\n * @default {}\n */\n slots: PropTypes.shape({\n badge: PropTypes.elementType,\n root: PropTypes.elementType\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n * @default 'standard'\n */\n variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['dot', 'standard']), PropTypes.string])\n} : void 0;\nexport default Badge;","import { usePreviousProps } from '@mui/utils';\n/**\n *\n * Demos:\n *\n * - [Badge](https://mui.com/base-ui/react-badge/#hook)\n *\n * API:\n *\n * - [useBadge API](https://mui.com/base-ui/react-badge/hooks-api/#use-badge)\n */\nexport default function useBadge(parameters) {\n const {\n badgeContent: badgeContentProp,\n invisible: invisibleProp = false,\n max: maxProp = 99,\n showZero = false\n } = parameters;\n const prevProps = usePreviousProps({\n badgeContent: badgeContentProp,\n max: maxProp\n });\n let invisible = invisibleProp;\n if (invisibleProp === false && badgeContentProp === 0 && !showZero) {\n invisible = true;\n }\n const {\n badgeContent,\n max = maxProp\n } = invisible ? prevProps : parameters;\n const displayValue = badgeContent && Number(badgeContent) > max ? `${max}+` : badgeContent;\n return {\n badgeContent,\n invisible,\n max,\n displayValue\n };\n}","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z\"\n}), 'CheckBoxOutlineBlank');","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z\"\n}), 'CheckBox');","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z\"\n}), 'IndeterminateCheckBox');","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getCheckboxUtilityClass(slot) {\n return generateUtilityClass('MuiCheckbox', slot);\n}\nconst checkboxClasses = generateUtilityClasses('MuiCheckbox', ['root', 'checked', 'disabled', 'indeterminate', 'colorPrimary', 'colorSecondary']);\nexport default checkboxClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"checkedIcon\", \"color\", \"icon\", \"indeterminate\", \"indeterminateIcon\", \"inputProps\", \"size\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport SwitchBase from '../internal/SwitchBase';\nimport CheckBoxOutlineBlankIcon from '../internal/svg-icons/CheckBoxOutlineBlank';\nimport CheckBoxIcon from '../internal/svg-icons/CheckBox';\nimport IndeterminateCheckBoxIcon from '../internal/svg-icons/IndeterminateCheckBox';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport checkboxClasses, { getCheckboxUtilityClass } from './checkboxClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n indeterminate,\n color\n } = ownerState;\n const slots = {\n root: ['root', indeterminate && 'indeterminate', `color${capitalize(color)}`]\n };\n const composedClasses = composeClasses(slots, getCheckboxUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst CheckboxRoot = styled(SwitchBase, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiCheckbox',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.indeterminate && styles.indeterminate, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, !ownerState.disableRipple && {\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${ownerState.color === 'default' ? theme.vars.palette.action.activeChannel : theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(ownerState.color === 'default' ? theme.palette.action.active : theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${checkboxClasses.checked}, &.${checkboxClasses.indeterminate}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${checkboxClasses.disabled}`]: {\n color: (theme.vars || theme).palette.action.disabled\n }\n}));\nconst defaultCheckedIcon = /*#__PURE__*/_jsx(CheckBoxIcon, {});\nconst defaultIcon = /*#__PURE__*/_jsx(CheckBoxOutlineBlankIcon, {});\nconst defaultIndeterminateIcon = /*#__PURE__*/_jsx(IndeterminateCheckBoxIcon, {});\nconst Checkbox = /*#__PURE__*/React.forwardRef(function Checkbox(inProps, ref) {\n var _icon$props$fontSize, _indeterminateIcon$pr;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiCheckbox'\n });\n const {\n checkedIcon = defaultCheckedIcon,\n color = 'primary',\n icon: iconProp = defaultIcon,\n indeterminate = false,\n indeterminateIcon: indeterminateIconProp = defaultIndeterminateIcon,\n inputProps,\n size = 'medium',\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const icon = indeterminate ? indeterminateIconProp : iconProp;\n const indeterminateIcon = indeterminate ? indeterminateIconProp : checkedIcon;\n const ownerState = _extends({}, props, {\n color,\n indeterminate,\n size\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(CheckboxRoot, _extends({\n type: \"checkbox\",\n inputProps: _extends({\n 'data-indeterminate': indeterminate\n }, inputProps),\n icon: /*#__PURE__*/React.cloneElement(icon, {\n fontSize: (_icon$props$fontSize = icon.props.fontSize) != null ? _icon$props$fontSize : size\n }),\n checkedIcon: /*#__PURE__*/React.cloneElement(indeterminateIcon, {\n fontSize: (_indeterminateIcon$pr = indeterminateIcon.props.fontSize) != null ? _indeterminateIcon$pr : size\n }),\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Checkbox.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n * @default \n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The default checked state. Use when the component is not controlled.\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * The icon to display when the component is unchecked.\n * @default \n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * If `true`, the component appears indeterminate.\n * This does not set the native input element to indeterminate due\n * to inconsistent behavior across browsers.\n * However, we set a `data-indeterminate` attribute on the `input`.\n * @default false\n */\n indeterminate: PropTypes.bool,\n /**\n * The icon to display when the component is indeterminate.\n * @default \n */\n indeterminateIcon: PropTypes.node,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense checkbox styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n */\n value: PropTypes.any\n} : void 0;\nexport default Checkbox;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { getListItemIconUtilityClass } from './listItemIconClasses';\nimport ListContext from '../List/ListContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n alignItems,\n classes\n } = ownerState;\n const slots = {\n root: ['root', alignItems === 'flex-start' && 'alignItemsFlexStart']\n };\n return composeClasses(slots, getListItemIconUtilityClass, classes);\n};\nconst ListItemIconRoot = styled('div', {\n name: 'MuiListItemIcon',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.alignItems === 'flex-start' && styles.alignItemsFlexStart];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n minWidth: 56,\n color: (theme.vars || theme).palette.action.active,\n flexShrink: 0,\n display: 'inline-flex'\n}, ownerState.alignItems === 'flex-start' && {\n marginTop: 8\n}));\n\n/**\n * A simple wrapper to apply `List` styles to an `Icon` or `SvgIcon`.\n */\nconst ListItemIcon = /*#__PURE__*/React.forwardRef(function ListItemIcon(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItemIcon'\n });\n const {\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const context = React.useContext(ListContext);\n const ownerState = _extends({}, props, {\n alignItems: context.alignItems\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(ListItemIconRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemIcon.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component, normally `Icon`, `SvgIcon`,\n * or a `@mui/icons-material` SVG icon element.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListItemIcon;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"disableTypography\", \"inset\", \"primary\", \"primaryTypographyProps\", \"secondary\", \"secondaryTypographyProps\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport Typography from '../Typography';\nimport ListContext from '../List/ListContext';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport listItemTextClasses, { getListItemTextUtilityClass } from './listItemTextClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n inset,\n primary,\n secondary,\n dense\n } = ownerState;\n const slots = {\n root: ['root', inset && 'inset', dense && 'dense', primary && secondary && 'multiline'],\n primary: ['primary'],\n secondary: ['secondary']\n };\n return composeClasses(slots, getListItemTextUtilityClass, classes);\n};\nconst ListItemTextRoot = styled('div', {\n name: 'MuiListItemText',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${listItemTextClasses.primary}`]: styles.primary\n }, {\n [`& .${listItemTextClasses.secondary}`]: styles.secondary\n }, styles.root, ownerState.inset && styles.inset, ownerState.primary && ownerState.secondary && styles.multiline, ownerState.dense && styles.dense];\n }\n})(({\n ownerState\n}) => _extends({\n flex: '1 1 auto',\n minWidth: 0,\n marginTop: 4,\n marginBottom: 4\n}, ownerState.primary && ownerState.secondary && {\n marginTop: 6,\n marginBottom: 6\n}, ownerState.inset && {\n paddingLeft: 56\n}));\nconst ListItemText = /*#__PURE__*/React.forwardRef(function ListItemText(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItemText'\n });\n const {\n children,\n className,\n disableTypography = false,\n inset = false,\n primary: primaryProp,\n primaryTypographyProps,\n secondary: secondaryProp,\n secondaryTypographyProps\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const {\n dense\n } = React.useContext(ListContext);\n let primary = primaryProp != null ? primaryProp : children;\n let secondary = secondaryProp;\n const ownerState = _extends({}, props, {\n disableTypography,\n inset,\n primary: !!primary,\n secondary: !!secondary,\n dense\n });\n const classes = useUtilityClasses(ownerState);\n if (primary != null && primary.type !== Typography && !disableTypography) {\n primary = /*#__PURE__*/_jsx(Typography, _extends({\n variant: dense ? 'body2' : 'body1',\n className: classes.primary,\n component: primaryTypographyProps != null && primaryTypographyProps.variant ? undefined : 'span',\n display: \"block\"\n }, primaryTypographyProps, {\n children: primary\n }));\n }\n if (secondary != null && secondary.type !== Typography && !disableTypography) {\n secondary = /*#__PURE__*/_jsx(Typography, _extends({\n variant: \"body2\",\n className: classes.secondary,\n color: \"text.secondary\",\n display: \"block\"\n }, secondaryTypographyProps, {\n children: secondary\n }));\n }\n return /*#__PURE__*/_jsxs(ListItemTextRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [primary, secondary]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemText.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Alias for the `primary` prop.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * If `true`, the children won't be wrapped by a Typography component.\n * This can be useful to render an alternative Typography variant by wrapping\n * the `children` (or `primary`) text, and optional `secondary` text\n * with the Typography component.\n * @default false\n */\n disableTypography: PropTypes.bool,\n /**\n * If `true`, the children are indented.\n * This should be used if there is no left avatar or left icon.\n * @default false\n */\n inset: PropTypes.bool,\n /**\n * The main content element.\n */\n primary: PropTypes.node,\n /**\n * These props will be forwarded to the primary typography component\n * (as long as disableTypography is not `true`).\n */\n primaryTypographyProps: PropTypes.object,\n /**\n * The secondary content element.\n */\n secondary: PropTypes.node,\n /**\n * These props will be forwarded to the secondary typography component\n * (as long as disableTypography is not `true`).\n */\n secondaryTypographyProps: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListItemText;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchUtilityClass(slot) {\n return generateUtilityClass('MuiSwitch', slot);\n}\nconst switchClasses = generateUtilityClasses('MuiSwitch', ['root', 'edgeStart', 'edgeEnd', 'switchBase', 'colorPrimary', 'colorSecondary', 'sizeSmall', 'sizeMedium', 'checked', 'disabled', 'input', 'thumb', 'track']);\nexport default switchClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"color\", \"edge\", \"size\", \"sx\"];\n// @inheritedComponent IconButton\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha, darken, lighten } from '@mui/system';\nimport capitalize from '../utils/capitalize';\nimport SwitchBase from '../internal/SwitchBase';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport switchClasses, { getSwitchUtilityClass } from './switchClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n edge,\n size,\n color,\n checked,\n disabled\n } = ownerState;\n const slots = {\n root: ['root', edge && `edge${capitalize(edge)}`, `size${capitalize(size)}`],\n switchBase: ['switchBase', `color${capitalize(color)}`, checked && 'checked', disabled && 'disabled'],\n thumb: ['thumb'],\n track: ['track'],\n input: ['input']\n };\n const composedClasses = composeClasses(slots, getSwitchUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst SwitchRoot = styled('span', {\n name: 'MuiSwitch',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.edge && styles[`edge${capitalize(ownerState.edge)}`], styles[`size${capitalize(ownerState.size)}`]];\n }\n})(({\n ownerState\n}) => _extends({\n display: 'inline-flex',\n width: 34 + 12 * 2,\n height: 14 + 12 * 2,\n overflow: 'hidden',\n padding: 12,\n boxSizing: 'border-box',\n position: 'relative',\n flexShrink: 0,\n zIndex: 0,\n // Reset the stacking context.\n verticalAlign: 'middle',\n // For correct alignment with the text.\n '@media print': {\n colorAdjust: 'exact'\n }\n}, ownerState.edge === 'start' && {\n marginLeft: -8\n}, ownerState.edge === 'end' && {\n marginRight: -8\n}, ownerState.size === 'small' && {\n width: 40,\n height: 24,\n padding: 7,\n [`& .${switchClasses.thumb}`]: {\n width: 16,\n height: 16\n },\n [`& .${switchClasses.switchBase}`]: {\n padding: 4,\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(16px)'\n }\n }\n}));\nconst SwitchSwitchBase = styled(SwitchBase, {\n name: 'MuiSwitch',\n slot: 'SwitchBase',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.switchBase, {\n [`& .${switchClasses.input}`]: styles.input\n }, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme\n}) => ({\n position: 'absolute',\n top: 0,\n left: 0,\n zIndex: 1,\n // Render above the focus ripple.\n color: theme.vars ? theme.vars.palette.Switch.defaultColor : `${theme.palette.mode === 'light' ? theme.palette.common.white : theme.palette.grey[300]}`,\n transition: theme.transitions.create(['left', 'transform'], {\n duration: theme.transitions.duration.shortest\n }),\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(20px)'\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch.defaultDisabledColor : `${theme.palette.mode === 'light' ? theme.palette.grey[100] : theme.palette.grey[600]}`\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n opacity: 0.5\n },\n [`&.${switchClasses.disabled} + .${switchClasses.track}`]: {\n opacity: theme.vars ? theme.vars.opacity.switchTrackDisabled : `${theme.palette.mode === 'light' ? 0.12 : 0.2}`\n },\n [`& .${switchClasses.input}`]: {\n left: '-100%',\n width: '300%'\n }\n}), ({\n theme,\n ownerState\n}) => _extends({\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${switchClasses.checked}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main,\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch[`${ownerState.color}DisabledColor`] : `${theme.palette.mode === 'light' ? lighten(theme.palette[ownerState.color].main, 0.62) : darken(theme.palette[ownerState.color].main, 0.55)}`\n }\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].main\n }\n}));\nconst SwitchTrack = styled('span', {\n name: 'MuiSwitch',\n slot: 'Track',\n overridesResolver: (props, styles) => styles.track\n})(({\n theme\n}) => ({\n height: '100%',\n width: '100%',\n borderRadius: 14 / 2,\n zIndex: -1,\n transition: theme.transitions.create(['opacity', 'background-color'], {\n duration: theme.transitions.duration.shortest\n }),\n backgroundColor: theme.vars ? theme.vars.palette.common.onBackground : `${theme.palette.mode === 'light' ? theme.palette.common.black : theme.palette.common.white}`,\n opacity: theme.vars ? theme.vars.opacity.switchTrack : `${theme.palette.mode === 'light' ? 0.38 : 0.3}`\n}));\nconst SwitchThumb = styled('span', {\n name: 'MuiSwitch',\n slot: 'Thumb',\n overridesResolver: (props, styles) => styles.thumb\n})(({\n theme\n}) => ({\n boxShadow: (theme.vars || theme).shadows[1],\n backgroundColor: 'currentColor',\n width: 20,\n height: 20,\n borderRadius: '50%'\n}));\nconst Switch = /*#__PURE__*/React.forwardRef(function Switch(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiSwitch'\n });\n const {\n className,\n color = 'primary',\n edge = false,\n size = 'medium',\n sx\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n edge,\n size\n });\n const classes = useUtilityClasses(ownerState);\n const icon = /*#__PURE__*/_jsx(SwitchThumb, {\n className: classes.thumb,\n ownerState: ownerState\n });\n return /*#__PURE__*/_jsxs(SwitchRoot, {\n className: clsx(classes.root, className),\n sx: sx,\n ownerState: ownerState,\n children: [/*#__PURE__*/_jsx(SwitchSwitchBase, _extends({\n type: \"checkbox\",\n icon: icon,\n checkedIcon: icon,\n ref: ref,\n ownerState: ownerState\n }, other, {\n classes: _extends({}, classes, {\n root: classes.switchBase\n })\n })), /*#__PURE__*/_jsx(SwitchTrack, {\n className: classes.track,\n ownerState: ownerState\n })]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Switch.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The default checked state. Use when the component is not controlled.\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense switch styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n */\n value: PropTypes.any\n} : void 0;\nexport default Switch;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchBaseUtilityClass(slot) {\n return generateUtilityClass('PrivateSwitchBase', slot);\n}\nconst switchBaseClasses = generateUtilityClasses('PrivateSwitchBase', ['root', 'checked', 'disabled', 'input', 'edgeStart', 'edgeEnd']);\nexport default switchBaseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"checked\", \"checkedIcon\", \"className\", \"defaultChecked\", \"disabled\", \"disableFocusRipple\", \"edge\", \"icon\", \"id\", \"inputProps\", \"inputRef\", \"name\", \"onBlur\", \"onChange\", \"onFocus\", \"readOnly\", \"required\", \"tabIndex\", \"type\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useControlled from '../utils/useControlled';\nimport useFormControl from '../FormControl/useFormControl';\nimport ButtonBase from '../ButtonBase';\nimport { getSwitchBaseUtilityClass } from './switchBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n checked,\n disabled,\n edge\n } = ownerState;\n const slots = {\n root: ['root', checked && 'checked', disabled && 'disabled', edge && `edge${capitalize(edge)}`],\n input: ['input']\n };\n return composeClasses(slots, getSwitchBaseUtilityClass, classes);\n};\nconst SwitchBaseRoot = styled(ButtonBase)(({\n ownerState\n}) => _extends({\n padding: 9,\n borderRadius: '50%'\n}, ownerState.edge === 'start' && {\n marginLeft: ownerState.size === 'small' ? -3 : -12\n}, ownerState.edge === 'end' && {\n marginRight: ownerState.size === 'small' ? -3 : -12\n}));\nconst SwitchBaseInput = styled('input')({\n cursor: 'inherit',\n position: 'absolute',\n opacity: 0,\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n zIndex: 1\n});\n\n/**\n * @ignore - internal component.\n */\nconst SwitchBase = /*#__PURE__*/React.forwardRef(function SwitchBase(props, ref) {\n const {\n autoFocus,\n checked: checkedProp,\n checkedIcon,\n className,\n defaultChecked,\n disabled: disabledProp,\n disableFocusRipple = false,\n edge = false,\n icon,\n id,\n inputProps,\n inputRef,\n name,\n onBlur,\n onChange,\n onFocus,\n readOnly,\n required = false,\n tabIndex,\n type,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [checked, setCheckedState] = useControlled({\n controlled: checkedProp,\n default: Boolean(defaultChecked),\n name: 'SwitchBase',\n state: 'checked'\n });\n const muiFormControl = useFormControl();\n const handleFocus = event => {\n if (onFocus) {\n onFocus(event);\n }\n if (muiFormControl && muiFormControl.onFocus) {\n muiFormControl.onFocus(event);\n }\n };\n const handleBlur = event => {\n if (onBlur) {\n onBlur(event);\n }\n if (muiFormControl && muiFormControl.onBlur) {\n muiFormControl.onBlur(event);\n }\n };\n const handleInputChange = event => {\n // Workaround for https://github.com/facebook/react/issues/9023\n if (event.nativeEvent.defaultPrevented) {\n return;\n }\n const newChecked = event.target.checked;\n setCheckedState(newChecked);\n if (onChange) {\n // TODO v6: remove the second argument.\n onChange(event, newChecked);\n }\n };\n let disabled = disabledProp;\n if (muiFormControl) {\n if (typeof disabled === 'undefined') {\n disabled = muiFormControl.disabled;\n }\n }\n const hasLabelFor = type === 'checkbox' || type === 'radio';\n const ownerState = _extends({}, props, {\n checked,\n disabled,\n disableFocusRipple,\n edge\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(SwitchBaseRoot, _extends({\n component: \"span\",\n className: clsx(classes.root, className),\n centerRipple: true,\n focusRipple: !disableFocusRipple,\n disabled: disabled,\n tabIndex: null,\n role: undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/_jsx(SwitchBaseInput, _extends({\n autoFocus: autoFocus,\n checked: checkedProp,\n defaultChecked: defaultChecked,\n className: classes.input,\n disabled: disabled,\n id: hasLabelFor ? id : undefined,\n name: name,\n onChange: handleInputChange,\n readOnly: readOnly,\n ref: inputRef,\n required: required,\n ownerState: ownerState,\n tabIndex: tabIndex,\n type: type\n }, type === 'checkbox' && value === undefined ? {} : {\n value\n }, inputProps)), checked ? checkedIcon : icon]\n }));\n});\n\n// NB: If changed, please update Checkbox, Switch and Radio\n// so that the API documentation is updated.\nprocess.env.NODE_ENV !== \"production\" ? SwitchBase.propTypes = {\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node.isRequired,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * @ignore\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the keyboard focus ripple is disabled.\n * @default false\n */\n disableFocusRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node.isRequired,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /*\n * @ignore\n */\n name: PropTypes.string,\n /**\n * @ignore\n */\n onBlur: PropTypes.func,\n /**\n * Callback fired when the state is changed.\n *\n * @param {object} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.object,\n /**\n * @ignore\n */\n tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The input component prop `type`.\n */\n type: PropTypes.string.isRequired,\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default SwitchBase;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import * as React from 'react';\nconst usePreviousProps = value => {\n const ref = React.useRef({});\n React.useEffect(() => {\n ref.current = value;\n });\n return ref.current;\n};\nexport default usePreviousProps;","\"use strict\";\n\nexports.__esModule = true;\n\nexports.default = function (file, acceptedFiles) {\n if (file && acceptedFiles) {\n var acceptedFilesArray = Array.isArray(acceptedFiles) ? acceptedFiles : acceptedFiles.split(',');\n var fileName = file.name || '';\n var mimeType = (file.type || '').toLowerCase();\n var baseMimeType = mimeType.replace(/\\/.*$/, '');\n return acceptedFilesArray.some(function (type) {\n var validType = type.trim().toLowerCase();\n\n if (validType.charAt(0) === '.') {\n return fileName.toLowerCase().endsWith(validType);\n } else if (validType.endsWith('/*')) {\n // This is something like a image/* mime type\n return baseMimeType === validType.replace(/\\/.*$/, '');\n }\n\n return mimeType === validType;\n });\n }\n\n return true;\n};","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\") throw new TypeError(\"Object expected.\");\n var dispose;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n","export const COMMON_MIME_TYPES = new Map([\n // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types\n ['aac', 'audio/aac'],\n ['abw', 'application/x-abiword'],\n ['arc', 'application/x-freearc'],\n ['avif', 'image/avif'],\n ['avi', 'video/x-msvideo'],\n ['azw', 'application/vnd.amazon.ebook'],\n ['bin', 'application/octet-stream'],\n ['bmp', 'image/bmp'],\n ['bz', 'application/x-bzip'],\n ['bz2', 'application/x-bzip2'],\n ['cda', 'application/x-cdf'],\n ['csh', 'application/x-csh'],\n ['css', 'text/css'],\n ['csv', 'text/csv'],\n ['doc', 'application/msword'],\n ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'],\n ['eot', 'application/vnd.ms-fontobject'],\n ['epub', 'application/epub+zip'],\n ['gz', 'application/gzip'],\n ['gif', 'image/gif'],\n ['heic', 'image/heic'],\n ['heif', 'image/heif'],\n ['htm', 'text/html'],\n ['html', 'text/html'],\n ['ico', 'image/vnd.microsoft.icon'],\n ['ics', 'text/calendar'],\n ['jar', 'application/java-archive'],\n ['jpeg', 'image/jpeg'],\n ['jpg', 'image/jpeg'],\n ['js', 'text/javascript'],\n ['json', 'application/json'],\n ['jsonld', 'application/ld+json'],\n ['mid', 'audio/midi'],\n ['midi', 'audio/midi'],\n ['mjs', 'text/javascript'],\n ['mp3', 'audio/mpeg'],\n ['mp4', 'video/mp4'],\n ['mpeg', 'video/mpeg'],\n ['mpkg', 'application/vnd.apple.installer+xml'],\n ['odp', 'application/vnd.oasis.opendocument.presentation'],\n ['ods', 'application/vnd.oasis.opendocument.spreadsheet'],\n ['odt', 'application/vnd.oasis.opendocument.text'],\n ['oga', 'audio/ogg'],\n ['ogv', 'video/ogg'],\n ['ogx', 'application/ogg'],\n ['opus', 'audio/opus'],\n ['otf', 'font/otf'],\n ['png', 'image/png'],\n ['pdf', 'application/pdf'],\n ['php', 'application/x-httpd-php'],\n ['ppt', 'application/vnd.ms-powerpoint'],\n ['pptx', 'application/vnd.openxmlformats-officedocument.presentationml.presentation'],\n ['rar', 'application/vnd.rar'],\n ['rtf', 'application/rtf'],\n ['sh', 'application/x-sh'],\n ['svg', 'image/svg+xml'],\n ['swf', 'application/x-shockwave-flash'],\n ['tar', 'application/x-tar'],\n ['tif', 'image/tiff'],\n ['tiff', 'image/tiff'],\n ['ts', 'video/mp2t'],\n ['ttf', 'font/ttf'],\n ['txt', 'text/plain'],\n ['vsd', 'application/vnd.visio'],\n ['wav', 'audio/wav'],\n ['weba', 'audio/webm'],\n ['webm', 'video/webm'],\n ['webp', 'image/webp'],\n ['woff', 'font/woff'],\n ['woff2', 'font/woff2'],\n ['xhtml', 'application/xhtml+xml'],\n ['xls', 'application/vnd.ms-excel'],\n ['xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'],\n ['xml', 'application/xml'],\n ['xul', 'application/vnd.mozilla.xul+xml'],\n ['zip', 'application/zip'],\n ['7z', 'application/x-7z-compressed'],\n\n // Others\n ['mkv', 'video/x-matroska'],\n ['mov', 'video/quicktime'],\n ['msg', 'application/vnd.ms-outlook']\n]);\n\n\nexport function toFileWithPath(file: FileWithPath, path?: string): FileWithPath {\n const f = withMimeType(file);\n if (typeof f.path !== 'string') { // on electron, path is already set to the absolute path\n const {webkitRelativePath} = file;\n Object.defineProperty(f, 'path', {\n value: typeof path === 'string'\n ? path\n // If is set,\n // the File will have a {webkitRelativePath} property\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitdirectory\n : typeof webkitRelativePath === 'string' && webkitRelativePath.length > 0\n ? webkitRelativePath\n : file.name,\n writable: false,\n configurable: false,\n enumerable: true\n });\n }\n\n return f;\n}\n\nexport interface FileWithPath extends File {\n readonly path?: string;\n}\n\nfunction withMimeType(file: FileWithPath) {\n const {name} = file;\n const hasExtension = name && name.lastIndexOf('.') !== -1;\n\n if (hasExtension && !file.type) {\n const ext = name.split('.')\n .pop()!.toLowerCase();\n const type = COMMON_MIME_TYPES.get(ext);\n if (type) {\n Object.defineProperty(file, 'type', {\n value: type,\n writable: false,\n configurable: false,\n enumerable: true\n });\n }\n }\n\n return file;\n}\n","import {FileWithPath, toFileWithPath} from './file';\n\n\nconst FILES_TO_IGNORE = [\n // Thumbnail cache files for macOS and Windows\n '.DS_Store', // macOs\n 'Thumbs.db' // Windows\n];\n\n\n/**\n * Convert a DragEvent's DataTrasfer object to a list of File objects\n * NOTE: If some of the items are folders,\n * everything will be flattened and placed in the same list but the paths will be kept as a {path} property.\n *\n * EXPERIMENTAL: A list of https://developer.mozilla.org/en-US/docs/Web/API/FileSystemHandle objects can also be passed as an arg\n * and a list of File objects will be returned.\n *\n * @param evt\n */\nexport async function fromEvent(evt: Event | any): Promise<(FileWithPath | DataTransferItem)[]> {\n if (isObject(evt) && isDataTransfer(evt.dataTransfer)) {\n return getDataTransferFiles(evt.dataTransfer, evt.type);\n } else if (isChangeEvt(evt)) {\n return getInputFiles(evt);\n } else if (Array.isArray(evt) && evt.every(item => 'getFile' in item && typeof item.getFile === 'function')) {\n return getFsHandleFiles(evt)\n }\n return [];\n}\n\nfunction isDataTransfer(value: any): value is DataTransfer {\n return isObject(value);\n}\n\nfunction isChangeEvt(value: any): value is Event {\n return isObject(value) && isObject(value.target);\n}\n\nfunction isObject(v: any): v is T {\n return typeof v === 'object' && v !== null\n}\n\nfunction getInputFiles(evt: Event) {\n return fromList((evt.target as HTMLInputElement).files).map(file => toFileWithPath(file));\n}\n\n// Ee expect each handle to be https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileHandle\nasync function getFsHandleFiles(handles: any[]) {\n const files = await Promise.all(handles.map(h => h.getFile()));\n return files.map(file => toFileWithPath(file));\n}\n\n\nasync function getDataTransferFiles(dt: DataTransfer, type: string) {\n // IE11 does not support dataTransfer.items\n // See https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer/items#Browser_compatibility\n if (dt.items) {\n const items = fromList(dt.items)\n .filter(item => item.kind === 'file');\n // According to https://html.spec.whatwg.org/multipage/dnd.html#dndevents,\n // only 'dragstart' and 'drop' has access to the data (source node)\n if (type !== 'drop') {\n return items;\n }\n const files = await Promise.all(items.map(toFilePromises));\n return noIgnoredFiles(flatten(files));\n }\n\n return noIgnoredFiles(fromList(dt.files)\n .map(file => toFileWithPath(file)));\n}\n\nfunction noIgnoredFiles(files: FileWithPath[]) {\n return files.filter(file => FILES_TO_IGNORE.indexOf(file.name) === -1);\n}\n\n// IE11 does not support Array.from()\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from#Browser_compatibility\n// https://developer.mozilla.org/en-US/docs/Web/API/FileList\n// https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItemList\nfunction fromList(items: DataTransferItemList | FileList | null): T[] {\n if (items === null) {\n return [];\n }\n\n const files = [];\n\n // tslint:disable: prefer-for-of\n for (let i = 0; i < items.length; i++) {\n const file = items[i];\n files.push(file);\n }\n\n return files as any;\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItem\nfunction toFilePromises(item: DataTransferItem) {\n if (typeof item.webkitGetAsEntry !== 'function') {\n return fromDataTransferItem(item);\n }\n\n const entry = item.webkitGetAsEntry();\n\n // Safari supports dropping an image node from a different window and can be retrieved using\n // the DataTransferItem.getAsFile() API\n // NOTE: FileSystemEntry.file() throws if trying to get the file\n if (entry && entry.isDirectory) {\n return fromDirEntry(entry) as any;\n }\n\n return fromDataTransferItem(item);\n}\n\nfunction flatten(items: any[]): T[] {\n return items.reduce((acc, files) => [\n ...acc,\n ...(Array.isArray(files) ? flatten(files) : [files])\n ], []);\n}\n\nfunction fromDataTransferItem(item: DataTransferItem) {\n const file = item.getAsFile();\n if (!file) {\n return Promise.reject(`${item} is not a File`);\n }\n const fwp = toFileWithPath(file);\n return Promise.resolve(fwp);\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemEntry\nasync function fromEntry(entry: any) {\n return entry.isDirectory ? fromDirEntry(entry) : fromFileEntry(entry);\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryEntry\nfunction fromDirEntry(entry: any) {\n const reader = entry.createReader();\n\n return new Promise((resolve, reject) => {\n const entries: Promise[] = [];\n\n function readEntries() {\n // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryEntry/createReader\n // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryReader/readEntries\n reader.readEntries(async (batch: any[]) => {\n if (!batch.length) {\n // Done reading directory\n try {\n const files = await Promise.all(entries);\n resolve(files);\n } catch (err) {\n reject(err);\n }\n } else {\n const items = Promise.all(batch.map(fromEntry));\n entries.push(items);\n\n // Continue reading\n readEntries();\n }\n }, (err: any) => {\n reject(err);\n });\n }\n\n readEntries();\n });\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileEntry\nasync function fromFileEntry(entry: any) {\n return new Promise((resolve, reject) => {\n entry.file((file: FileWithPath) => {\n const fwp = toFileWithPath(file, entry.fullPath);\n resolve(fwp);\n }, (err: any) => {\n reject(err);\n });\n });\n}\n\n// Infinite type recursion\n// https://github.com/Microsoft/TypeScript/issues/3496#issuecomment-128553540\ninterface FileArray extends Array {}\ntype FileValue = FileWithPath\n | FileArray[];\n","function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nimport accepts from \"attr-accept\"; // Error codes\n\nexport var FILE_INVALID_TYPE = \"file-invalid-type\";\nexport var FILE_TOO_LARGE = \"file-too-large\";\nexport var FILE_TOO_SMALL = \"file-too-small\";\nexport var TOO_MANY_FILES = \"too-many-files\";\nexport var ErrorCode = {\n FileInvalidType: FILE_INVALID_TYPE,\n FileTooLarge: FILE_TOO_LARGE,\n FileTooSmall: FILE_TOO_SMALL,\n TooManyFiles: TOO_MANY_FILES\n}; // File Errors\n\nexport var getInvalidTypeRejectionErr = function getInvalidTypeRejectionErr(accept) {\n accept = Array.isArray(accept) && accept.length === 1 ? accept[0] : accept;\n var messageSuffix = Array.isArray(accept) ? \"one of \".concat(accept.join(\", \")) : accept;\n return {\n code: FILE_INVALID_TYPE,\n message: \"File type must be \".concat(messageSuffix)\n };\n};\nexport var getTooLargeRejectionErr = function getTooLargeRejectionErr(maxSize) {\n return {\n code: FILE_TOO_LARGE,\n message: \"File is larger than \".concat(maxSize, \" \").concat(maxSize === 1 ? \"byte\" : \"bytes\")\n };\n};\nexport var getTooSmallRejectionErr = function getTooSmallRejectionErr(minSize) {\n return {\n code: FILE_TOO_SMALL,\n message: \"File is smaller than \".concat(minSize, \" \").concat(minSize === 1 ? \"byte\" : \"bytes\")\n };\n};\nexport var TOO_MANY_FILES_REJECTION = {\n code: TOO_MANY_FILES,\n message: \"Too many files\"\n}; // Firefox versions prior to 53 return a bogus MIME type for every file drag, so dragovers with\n// that MIME type will always be accepted\n\nexport function fileAccepted(file, accept) {\n var isAcceptable = file.type === \"application/x-moz-file\" || accepts(file, accept);\n return [isAcceptable, isAcceptable ? null : getInvalidTypeRejectionErr(accept)];\n}\nexport function fileMatchSize(file, minSize, maxSize) {\n if (isDefined(file.size)) {\n if (isDefined(minSize) && isDefined(maxSize)) {\n if (file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)];\n if (file.size < minSize) return [false, getTooSmallRejectionErr(minSize)];\n } else if (isDefined(minSize) && file.size < minSize) return [false, getTooSmallRejectionErr(minSize)];else if (isDefined(maxSize) && file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)];\n }\n\n return [true, null];\n}\n\nfunction isDefined(value) {\n return value !== undefined && value !== null;\n}\n/**\n *\n * @param {object} options\n * @param {File[]} options.files\n * @param {string|string[]} [options.accept]\n * @param {number} [options.minSize]\n * @param {number} [options.maxSize]\n * @param {boolean} [options.multiple]\n * @param {number} [options.maxFiles]\n * @param {(f: File) => FileError|FileError[]|null} [options.validator]\n * @returns\n */\n\n\nexport function allFilesAccepted(_ref) {\n var files = _ref.files,\n accept = _ref.accept,\n minSize = _ref.minSize,\n maxSize = _ref.maxSize,\n multiple = _ref.multiple,\n maxFiles = _ref.maxFiles,\n validator = _ref.validator;\n\n if (!multiple && files.length > 1 || multiple && maxFiles >= 1 && files.length > maxFiles) {\n return false;\n }\n\n return files.every(function (file) {\n var _fileAccepted = fileAccepted(file, accept),\n _fileAccepted2 = _slicedToArray(_fileAccepted, 1),\n accepted = _fileAccepted2[0];\n\n var _fileMatchSize = fileMatchSize(file, minSize, maxSize),\n _fileMatchSize2 = _slicedToArray(_fileMatchSize, 1),\n sizeMatch = _fileMatchSize2[0];\n\n var customErrors = validator ? validator(file) : null;\n return accepted && sizeMatch && !customErrors;\n });\n} // React's synthetic events has event.isPropagationStopped,\n// but to remain compatibility with other libs (Preact) fall back\n// to check event.cancelBubble\n\nexport function isPropagationStopped(event) {\n if (typeof event.isPropagationStopped === \"function\") {\n return event.isPropagationStopped();\n } else if (typeof event.cancelBubble !== \"undefined\") {\n return event.cancelBubble;\n }\n\n return false;\n}\nexport function isEvtWithFiles(event) {\n if (!event.dataTransfer) {\n return !!event.target && !!event.target.files;\n } // https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer/types\n // https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API/Recommended_drag_types#file\n\n\n return Array.prototype.some.call(event.dataTransfer.types, function (type) {\n return type === \"Files\" || type === \"application/x-moz-file\";\n });\n}\nexport function isKindFile(item) {\n return _typeof(item) === \"object\" && item !== null && item.kind === \"file\";\n} // allow the entire document to be a drag target\n\nexport function onDocumentDragOver(event) {\n event.preventDefault();\n}\n\nfunction isIe(userAgent) {\n return userAgent.indexOf(\"MSIE\") !== -1 || userAgent.indexOf(\"Trident/\") !== -1;\n}\n\nfunction isEdge(userAgent) {\n return userAgent.indexOf(\"Edge/\") !== -1;\n}\n\nexport function isIeOrEdge() {\n var userAgent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.navigator.userAgent;\n return isIe(userAgent) || isEdge(userAgent);\n}\n/**\n * This is intended to be used to compose event handlers\n * They are executed in order until one of them calls `event.isPropagationStopped()`.\n * Note that the check is done on the first invoke too,\n * meaning that if propagation was stopped before invoking the fns,\n * no handlers will be executed.\n *\n * @param {Function} fns the event hanlder functions\n * @return {Function} the event handler to add to an element\n */\n\nexport function composeEventHandlers() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n return fns.some(function (fn) {\n if (!isPropagationStopped(event) && fn) {\n fn.apply(void 0, [event].concat(args));\n }\n\n return isPropagationStopped(event);\n });\n };\n}\n/**\n * canUseFileSystemAccessAPI checks if the [File System Access API](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API)\n * is supported by the browser.\n * @returns {boolean}\n */\n\nexport function canUseFileSystemAccessAPI() {\n return \"showOpenFilePicker\" in window;\n}\n/**\n * Convert the `{accept}` dropzone prop to the\n * `{types}` option for https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker\n *\n * @param {AcceptProp} accept\n * @returns {{accept: string[]}[]}\n */\n\nexport function pickerOptionsFromAccept(accept) {\n if (isDefined(accept)) {\n var acceptForPicker = Object.entries(accept).filter(function (_ref2) {\n var _ref3 = _slicedToArray(_ref2, 2),\n mimeType = _ref3[0],\n ext = _ref3[1];\n\n var ok = true;\n\n if (!isMIMEType(mimeType)) {\n console.warn(\"Skipped \\\"\".concat(mimeType, \"\\\" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.\"));\n ok = false;\n }\n\n if (!Array.isArray(ext) || !ext.every(isExt)) {\n console.warn(\"Skipped \\\"\".concat(mimeType, \"\\\" because an invalid file extension was provided.\"));\n ok = false;\n }\n\n return ok;\n }).reduce(function (agg, _ref4) {\n var _ref5 = _slicedToArray(_ref4, 2),\n mimeType = _ref5[0],\n ext = _ref5[1];\n\n return _objectSpread(_objectSpread({}, agg), {}, _defineProperty({}, mimeType, ext));\n }, {});\n return [{\n // description is required due to https://crbug.com/1264708\n description: \"Files\",\n accept: acceptForPicker\n }];\n }\n\n return accept;\n}\n/**\n * Convert the `{accept}` dropzone prop to an array of MIME types/extensions.\n * @param {AcceptProp} accept\n * @returns {string}\n */\n\nexport function acceptPropAsAcceptAttr(accept) {\n if (isDefined(accept)) {\n return Object.entries(accept).reduce(function (a, _ref6) {\n var _ref7 = _slicedToArray(_ref6, 2),\n mimeType = _ref7[0],\n ext = _ref7[1];\n\n return [].concat(_toConsumableArray(a), [mimeType], _toConsumableArray(ext));\n }, []) // Silently discard invalid entries as pickerOptionsFromAccept warns about these\n .filter(function (v) {\n return isMIMEType(v) || isExt(v);\n }).join(\",\");\n }\n\n return undefined;\n}\n/**\n * Check if v is an exception caused by aborting a request (e.g window.showOpenFilePicker()).\n *\n * See https://developer.mozilla.org/en-US/docs/Web/API/DOMException.\n * @param {any} v\n * @returns {boolean} True if v is an abort exception.\n */\n\nexport function isAbort(v) {\n return v instanceof DOMException && (v.name === \"AbortError\" || v.code === v.ABORT_ERR);\n}\n/**\n * Check if v is a security error.\n *\n * See https://developer.mozilla.org/en-US/docs/Web/API/DOMException.\n * @param {any} v\n * @returns {boolean} True if v is a security error.\n */\n\nexport function isSecurityError(v) {\n return v instanceof DOMException && (v.name === \"SecurityError\" || v.code === v.SECURITY_ERR);\n}\n/**\n * Check if v is a MIME type string.\n *\n * See accepted format: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#unique_file_type_specifiers.\n *\n * @param {string} v\n */\n\nexport function isMIMEType(v) {\n return v === \"audio/*\" || v === \"video/*\" || v === \"image/*\" || v === \"text/*\" || /\\w+\\/[-+.\\w]+/g.test(v);\n}\n/**\n * Check if v is a file extension.\n * @param {string} v\n */\n\nexport function isExt(v) {\n return /^.*\\.[\\w]+$/.test(v);\n}\n/**\n * @typedef {Object.} AcceptProp\n */\n\n/**\n * @typedef {object} FileError\n * @property {string} message\n * @property {ErrorCode|string} code\n */\n\n/**\n * @typedef {\"file-invalid-type\"|\"file-too-large\"|\"file-too-small\"|\"too-many-files\"} ErrorCode\n */","var _excluded = [\"children\"],\n _excluded2 = [\"open\"],\n _excluded3 = [\"refKey\", \"role\", \"onKeyDown\", \"onFocus\", \"onBlur\", \"onClick\", \"onDragEnter\", \"onDragOver\", \"onDragLeave\", \"onDrop\"],\n _excluded4 = [\"refKey\", \"onChange\", \"onClick\"];\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* eslint prefer-template: 0 */\nimport React, { forwardRef, Fragment, useCallback, useEffect, useImperativeHandle, useMemo, useReducer, useRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { fromEvent } from \"file-selector\";\nimport { acceptPropAsAcceptAttr, allFilesAccepted, composeEventHandlers, fileAccepted, fileMatchSize, canUseFileSystemAccessAPI, isAbort, isEvtWithFiles, isIeOrEdge, isPropagationStopped, isSecurityError, onDocumentDragOver, pickerOptionsFromAccept, TOO_MANY_FILES_REJECTION } from \"./utils/index\";\n/**\n * Convenience wrapper component for the `useDropzone` hook\n *\n * ```jsx\n * \n * {({getRootProps, getInputProps}) => (\n *
\n * \n *

Drag 'n' drop some files here, or click to select files

\n *
\n * )}\n *
\n * ```\n */\n\nvar Dropzone = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var children = _ref.children,\n params = _objectWithoutProperties(_ref, _excluded);\n\n var _useDropzone = useDropzone(params),\n open = _useDropzone.open,\n props = _objectWithoutProperties(_useDropzone, _excluded2);\n\n useImperativeHandle(ref, function () {\n return {\n open: open\n };\n }, [open]); // TODO: Figure out why react-styleguidist cannot create docs if we don't return a jsx element\n\n return /*#__PURE__*/React.createElement(Fragment, null, children(_objectSpread(_objectSpread({}, props), {}, {\n open: open\n })));\n});\nDropzone.displayName = \"Dropzone\"; // Add default props for react-docgen\n\nvar defaultProps = {\n disabled: false,\n getFilesFromEvent: fromEvent,\n maxSize: Infinity,\n minSize: 0,\n multiple: true,\n maxFiles: 0,\n preventDropOnDocument: true,\n noClick: false,\n noKeyboard: false,\n noDrag: false,\n noDragEventsBubbling: false,\n validator: null,\n useFsAccessApi: true,\n autoFocus: false\n};\nDropzone.defaultProps = defaultProps;\nDropzone.propTypes = {\n /**\n * Render function that exposes the dropzone state and prop getter fns\n *\n * @param {object} params\n * @param {Function} params.getRootProps Returns the props you should apply to the root drop container you render\n * @param {Function} params.getInputProps Returns the props you should apply to hidden file input you render\n * @param {Function} params.open Open the native file selection dialog\n * @param {boolean} params.isFocused Dropzone area is in focus\n * @param {boolean} params.isFileDialogActive File dialog is opened\n * @param {boolean} params.isDragActive Active drag is in progress\n * @param {boolean} params.isDragAccept Dragged files are accepted\n * @param {boolean} params.isDragReject Some dragged files are rejected\n * @param {File[]} params.acceptedFiles Accepted files\n * @param {FileRejection[]} params.fileRejections Rejected files and why they were rejected\n */\n children: PropTypes.func,\n\n /**\n * Set accepted file types.\n * Checkout https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker types option for more information.\n * Keep in mind that mime type determination is not reliable across platforms. CSV files,\n * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under\n * Windows. In some cases there might not be a mime type set at all (https://github.com/react-dropzone/react-dropzone/issues/276).\n */\n accept: PropTypes.objectOf(PropTypes.arrayOf(PropTypes.string)),\n\n /**\n * Allow drag 'n' drop (or selection from the file dialog) of multiple files\n */\n multiple: PropTypes.bool,\n\n /**\n * If false, allow dropped items to take over the current browser window\n */\n preventDropOnDocument: PropTypes.bool,\n\n /**\n * If true, disables click to open the native file selection dialog\n */\n noClick: PropTypes.bool,\n\n /**\n * If true, disables SPACE/ENTER to open the native file selection dialog.\n * Note that it also stops tracking the focus state.\n */\n noKeyboard: PropTypes.bool,\n\n /**\n * If true, disables drag 'n' drop\n */\n noDrag: PropTypes.bool,\n\n /**\n * If true, stops drag event propagation to parents\n */\n noDragEventsBubbling: PropTypes.bool,\n\n /**\n * Minimum file size (in bytes)\n */\n minSize: PropTypes.number,\n\n /**\n * Maximum file size (in bytes)\n */\n maxSize: PropTypes.number,\n\n /**\n * Maximum accepted number of files\n * The default value is 0 which means there is no limitation to how many files are accepted.\n */\n maxFiles: PropTypes.number,\n\n /**\n * Enable/disable the dropzone\n */\n disabled: PropTypes.bool,\n\n /**\n * Use this to provide a custom file aggregator\n *\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n getFilesFromEvent: PropTypes.func,\n\n /**\n * Cb for when closing the file dialog with no selection\n */\n onFileDialogCancel: PropTypes.func,\n\n /**\n * Cb for when opening the file dialog\n */\n onFileDialogOpen: PropTypes.func,\n\n /**\n * Set to true to use the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API\n * to open the file picker instead of using an `` click event.\n */\n useFsAccessApi: PropTypes.bool,\n\n /**\n * Set to true to focus the root element on render\n */\n autoFocus: PropTypes.bool,\n\n /**\n * Cb for when the `dragenter` event occurs.\n *\n * @param {DragEvent} event\n */\n onDragEnter: PropTypes.func,\n\n /**\n * Cb for when the `dragleave` event occurs\n *\n * @param {DragEvent} event\n */\n onDragLeave: PropTypes.func,\n\n /**\n * Cb for when the `dragover` event occurs\n *\n * @param {DragEvent} event\n */\n onDragOver: PropTypes.func,\n\n /**\n * Cb for when the `drop` event occurs.\n * Note that this callback is invoked after the `getFilesFromEvent` callback is done.\n *\n * Files are accepted or rejected based on the `accept`, `multiple`, `minSize` and `maxSize` props.\n * `accept` must be a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file) or a valid file extension.\n * If `multiple` is set to false and additional files are dropped,\n * all files besides the first will be rejected.\n * Any file which does not have a size in the [`minSize`, `maxSize`] range, will be rejected as well.\n *\n * Note that the `onDrop` callback will always be invoked regardless if the dropped files were accepted or rejected.\n * If you'd like to react to a specific scenario, use the `onDropAccepted`/`onDropRejected` props.\n *\n * `onDrop` will provide you with an array of [File](https://developer.mozilla.org/en-US/docs/Web/API/File) objects which you can then process and send to a server.\n * For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:\n *\n * ```js\n * function onDrop(acceptedFiles) {\n * const req = request.post('/upload')\n * acceptedFiles.forEach(file => {\n * req.attach(file.name, file)\n * })\n * req.end(callback)\n * }\n * ```\n *\n * @param {File[]} acceptedFiles\n * @param {FileRejection[]} fileRejections\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n onDrop: PropTypes.func,\n\n /**\n * Cb for when the `drop` event occurs.\n * Note that if no files are accepted, this callback is not invoked.\n *\n * @param {File[]} files\n * @param {(DragEvent|Event)} event\n */\n onDropAccepted: PropTypes.func,\n\n /**\n * Cb for when the `drop` event occurs.\n * Note that if no files are rejected, this callback is not invoked.\n *\n * @param {FileRejection[]} fileRejections\n * @param {(DragEvent|Event)} event\n */\n onDropRejected: PropTypes.func,\n\n /**\n * Cb for when there's some error from any of the promises.\n *\n * @param {Error} error\n */\n onError: PropTypes.func,\n\n /**\n * Custom validation function. It must return null if there's no errors.\n * @param {File} file\n * @returns {FileError|FileError[]|null}\n */\n validator: PropTypes.func\n};\nexport default Dropzone;\n/**\n * A function that is invoked for the `dragenter`,\n * `dragover` and `dragleave` events.\n * It is not invoked if the items are not files (such as link, text, etc.).\n *\n * @callback dragCb\n * @param {DragEvent} event\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n * It is not invoked if the items are not files (such as link, text, etc.).\n *\n * @callback dropCb\n * @param {File[]} acceptedFiles List of accepted files\n * @param {FileRejection[]} fileRejections List of rejected files and why they were rejected\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n * It is not invoked if the items are files (such as link, text, etc.).\n *\n * @callback dropAcceptedCb\n * @param {File[]} files List of accepted files that meet the given criteria\n * (`accept`, `multiple`, `minSize`, `maxSize`)\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n *\n * @callback dropRejectedCb\n * @param {File[]} files List of rejected files that do not meet the given criteria\n * (`accept`, `multiple`, `minSize`, `maxSize`)\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is used aggregate files,\n * in a asynchronous fashion, from drag or input change events.\n *\n * @callback getFilesFromEvent\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n * @returns {(File[]|Promise)}\n */\n\n/**\n * An object with the current dropzone state.\n *\n * @typedef {object} DropzoneState\n * @property {boolean} isFocused Dropzone area is in focus\n * @property {boolean} isFileDialogActive File dialog is opened\n * @property {boolean} isDragActive Active drag is in progress\n * @property {boolean} isDragAccept Dragged files are accepted\n * @property {boolean} isDragReject Some dragged files are rejected\n * @property {File[]} acceptedFiles Accepted files\n * @property {FileRejection[]} fileRejections Rejected files and why they were rejected\n */\n\n/**\n * An object with the dropzone methods.\n *\n * @typedef {object} DropzoneMethods\n * @property {Function} getRootProps Returns the props you should apply to the root drop container you render\n * @property {Function} getInputProps Returns the props you should apply to hidden file input you render\n * @property {Function} open Open the native file selection dialog\n */\n\nvar initialState = {\n isFocused: false,\n isFileDialogActive: false,\n isDragActive: false,\n isDragAccept: false,\n isDragReject: false,\n acceptedFiles: [],\n fileRejections: []\n};\n/**\n * A React hook that creates a drag 'n' drop area.\n *\n * ```jsx\n * function MyDropzone(props) {\n * const {getRootProps, getInputProps} = useDropzone({\n * onDrop: acceptedFiles => {\n * // do something with the File objects, e.g. upload to some server\n * }\n * });\n * return (\n *
\n * \n *

Drag and drop some files here, or click to select files

\n *
\n * )\n * }\n * ```\n *\n * @function useDropzone\n *\n * @param {object} props\n * @param {import(\"./utils\").AcceptProp} [props.accept] Set accepted file types.\n * Checkout https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker types option for more information.\n * Keep in mind that mime type determination is not reliable across platforms. CSV files,\n * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under\n * Windows. In some cases there might not be a mime type set at all (https://github.com/react-dropzone/react-dropzone/issues/276).\n * @param {boolean} [props.multiple=true] Allow drag 'n' drop (or selection from the file dialog) of multiple files\n * @param {boolean} [props.preventDropOnDocument=true] If false, allow dropped items to take over the current browser window\n * @param {boolean} [props.noClick=false] If true, disables click to open the native file selection dialog\n * @param {boolean} [props.noKeyboard=false] If true, disables SPACE/ENTER to open the native file selection dialog.\n * Note that it also stops tracking the focus state.\n * @param {boolean} [props.noDrag=false] If true, disables drag 'n' drop\n * @param {boolean} [props.noDragEventsBubbling=false] If true, stops drag event propagation to parents\n * @param {number} [props.minSize=0] Minimum file size (in bytes)\n * @param {number} [props.maxSize=Infinity] Maximum file size (in bytes)\n * @param {boolean} [props.disabled=false] Enable/disable the dropzone\n * @param {getFilesFromEvent} [props.getFilesFromEvent] Use this to provide a custom file aggregator\n * @param {Function} [props.onFileDialogCancel] Cb for when closing the file dialog with no selection\n * @param {boolean} [props.useFsAccessApi] Set to true to use the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API\n * to open the file picker instead of using an `` click event.\n * @param {boolean} autoFocus Set to true to auto focus the root element.\n * @param {Function} [props.onFileDialogOpen] Cb for when opening the file dialog\n * @param {dragCb} [props.onDragEnter] Cb for when the `dragenter` event occurs.\n * @param {dragCb} [props.onDragLeave] Cb for when the `dragleave` event occurs\n * @param {dragCb} [props.onDragOver] Cb for when the `dragover` event occurs\n * @param {dropCb} [props.onDrop] Cb for when the `drop` event occurs.\n * Note that this callback is invoked after the `getFilesFromEvent` callback is done.\n *\n * Files are accepted or rejected based on the `accept`, `multiple`, `minSize` and `maxSize` props.\n * `accept` must be an object with keys as a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file) and the value an array of file extensions (optional).\n * If `multiple` is set to false and additional files are dropped,\n * all files besides the first will be rejected.\n * Any file which does not have a size in the [`minSize`, `maxSize`] range, will be rejected as well.\n *\n * Note that the `onDrop` callback will always be invoked regardless if the dropped files were accepted or rejected.\n * If you'd like to react to a specific scenario, use the `onDropAccepted`/`onDropRejected` props.\n *\n * `onDrop` will provide you with an array of [File](https://developer.mozilla.org/en-US/docs/Web/API/File) objects which you can then process and send to a server.\n * For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:\n *\n * ```js\n * function onDrop(acceptedFiles) {\n * const req = request.post('/upload')\n * acceptedFiles.forEach(file => {\n * req.attach(file.name, file)\n * })\n * req.end(callback)\n * }\n * ```\n * @param {dropAcceptedCb} [props.onDropAccepted]\n * @param {dropRejectedCb} [props.onDropRejected]\n * @param {(error: Error) => void} [props.onError]\n *\n * @returns {DropzoneState & DropzoneMethods}\n */\n\nexport function useDropzone() {\n var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),\n accept = _defaultProps$props.accept,\n disabled = _defaultProps$props.disabled,\n getFilesFromEvent = _defaultProps$props.getFilesFromEvent,\n maxSize = _defaultProps$props.maxSize,\n minSize = _defaultProps$props.minSize,\n multiple = _defaultProps$props.multiple,\n maxFiles = _defaultProps$props.maxFiles,\n onDragEnter = _defaultProps$props.onDragEnter,\n onDragLeave = _defaultProps$props.onDragLeave,\n onDragOver = _defaultProps$props.onDragOver,\n onDrop = _defaultProps$props.onDrop,\n onDropAccepted = _defaultProps$props.onDropAccepted,\n onDropRejected = _defaultProps$props.onDropRejected,\n onFileDialogCancel = _defaultProps$props.onFileDialogCancel,\n onFileDialogOpen = _defaultProps$props.onFileDialogOpen,\n useFsAccessApi = _defaultProps$props.useFsAccessApi,\n autoFocus = _defaultProps$props.autoFocus,\n preventDropOnDocument = _defaultProps$props.preventDropOnDocument,\n noClick = _defaultProps$props.noClick,\n noKeyboard = _defaultProps$props.noKeyboard,\n noDrag = _defaultProps$props.noDrag,\n noDragEventsBubbling = _defaultProps$props.noDragEventsBubbling,\n onError = _defaultProps$props.onError,\n validator = _defaultProps$props.validator;\n\n var acceptAttr = useMemo(function () {\n return acceptPropAsAcceptAttr(accept);\n }, [accept]);\n var pickerTypes = useMemo(function () {\n return pickerOptionsFromAccept(accept);\n }, [accept]);\n var onFileDialogOpenCb = useMemo(function () {\n return typeof onFileDialogOpen === \"function\" ? onFileDialogOpen : noop;\n }, [onFileDialogOpen]);\n var onFileDialogCancelCb = useMemo(function () {\n return typeof onFileDialogCancel === \"function\" ? onFileDialogCancel : noop;\n }, [onFileDialogCancel]);\n /**\n * @constant\n * @type {React.MutableRefObject}\n */\n\n var rootRef = useRef(null);\n var inputRef = useRef(null);\n\n var _useReducer = useReducer(reducer, initialState),\n _useReducer2 = _slicedToArray(_useReducer, 2),\n state = _useReducer2[0],\n dispatch = _useReducer2[1];\n\n var isFocused = state.isFocused,\n isFileDialogActive = state.isFileDialogActive;\n var fsAccessApiWorksRef = useRef(typeof window !== \"undefined\" && window.isSecureContext && useFsAccessApi && canUseFileSystemAccessAPI()); // Update file dialog active state when the window is focused on\n\n var onWindowFocus = function onWindowFocus() {\n // Execute the timeout only if the file dialog is opened in the browser\n if (!fsAccessApiWorksRef.current && isFileDialogActive) {\n setTimeout(function () {\n if (inputRef.current) {\n var files = inputRef.current.files;\n\n if (!files.length) {\n dispatch({\n type: \"closeDialog\"\n });\n onFileDialogCancelCb();\n }\n }\n }, 300);\n }\n };\n\n useEffect(function () {\n window.addEventListener(\"focus\", onWindowFocus, false);\n return function () {\n window.removeEventListener(\"focus\", onWindowFocus, false);\n };\n }, [inputRef, isFileDialogActive, onFileDialogCancelCb, fsAccessApiWorksRef]);\n var dragTargetsRef = useRef([]);\n\n var onDocumentDrop = function onDocumentDrop(event) {\n if (rootRef.current && rootRef.current.contains(event.target)) {\n // If we intercepted an event for our instance, let it propagate down to the instance's onDrop handler\n return;\n }\n\n event.preventDefault();\n dragTargetsRef.current = [];\n };\n\n useEffect(function () {\n if (preventDropOnDocument) {\n document.addEventListener(\"dragover\", onDocumentDragOver, false);\n document.addEventListener(\"drop\", onDocumentDrop, false);\n }\n\n return function () {\n if (preventDropOnDocument) {\n document.removeEventListener(\"dragover\", onDocumentDragOver);\n document.removeEventListener(\"drop\", onDocumentDrop);\n }\n };\n }, [rootRef, preventDropOnDocument]); // Auto focus the root when autoFocus is true\n\n useEffect(function () {\n if (!disabled && autoFocus && rootRef.current) {\n rootRef.current.focus();\n }\n\n return function () {};\n }, [rootRef, autoFocus, disabled]);\n var onErrCb = useCallback(function (e) {\n if (onError) {\n onError(e);\n } else {\n // Let the user know something's gone wrong if they haven't provided the onError cb.\n console.error(e);\n }\n }, [onError]);\n var onDragEnterCb = useCallback(function (event) {\n event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done\n\n event.persist();\n stopPropagation(event);\n dragTargetsRef.current = [].concat(_toConsumableArray(dragTargetsRef.current), [event.target]);\n\n if (isEvtWithFiles(event)) {\n Promise.resolve(getFilesFromEvent(event)).then(function (files) {\n if (isPropagationStopped(event) && !noDragEventsBubbling) {\n return;\n }\n\n var fileCount = files.length;\n var isDragAccept = fileCount > 0 && allFilesAccepted({\n files: files,\n accept: acceptAttr,\n minSize: minSize,\n maxSize: maxSize,\n multiple: multiple,\n maxFiles: maxFiles,\n validator: validator\n });\n var isDragReject = fileCount > 0 && !isDragAccept;\n dispatch({\n isDragAccept: isDragAccept,\n isDragReject: isDragReject,\n isDragActive: true,\n type: \"setDraggedFiles\"\n });\n\n if (onDragEnter) {\n onDragEnter(event);\n }\n }).catch(function (e) {\n return onErrCb(e);\n });\n }\n }, [getFilesFromEvent, onDragEnter, onErrCb, noDragEventsBubbling, acceptAttr, minSize, maxSize, multiple, maxFiles, validator]);\n var onDragOverCb = useCallback(function (event) {\n event.preventDefault();\n event.persist();\n stopPropagation(event);\n var hasFiles = isEvtWithFiles(event);\n\n if (hasFiles && event.dataTransfer) {\n try {\n event.dataTransfer.dropEffect = \"copy\";\n } catch (_unused) {}\n /* eslint-disable-line no-empty */\n\n }\n\n if (hasFiles && onDragOver) {\n onDragOver(event);\n }\n\n return false;\n }, [onDragOver, noDragEventsBubbling]);\n var onDragLeaveCb = useCallback(function (event) {\n event.preventDefault();\n event.persist();\n stopPropagation(event); // Only deactivate once the dropzone and all children have been left\n\n var targets = dragTargetsRef.current.filter(function (target) {\n return rootRef.current && rootRef.current.contains(target);\n }); // Make sure to remove a target present multiple times only once\n // (Firefox may fire dragenter/dragleave multiple times on the same element)\n\n var targetIdx = targets.indexOf(event.target);\n\n if (targetIdx !== -1) {\n targets.splice(targetIdx, 1);\n }\n\n dragTargetsRef.current = targets;\n\n if (targets.length > 0) {\n return;\n }\n\n dispatch({\n type: \"setDraggedFiles\",\n isDragActive: false,\n isDragAccept: false,\n isDragReject: false\n });\n\n if (isEvtWithFiles(event) && onDragLeave) {\n onDragLeave(event);\n }\n }, [rootRef, onDragLeave, noDragEventsBubbling]);\n var setFiles = useCallback(function (files, event) {\n var acceptedFiles = [];\n var fileRejections = [];\n files.forEach(function (file) {\n var _fileAccepted = fileAccepted(file, acceptAttr),\n _fileAccepted2 = _slicedToArray(_fileAccepted, 2),\n accepted = _fileAccepted2[0],\n acceptError = _fileAccepted2[1];\n\n var _fileMatchSize = fileMatchSize(file, minSize, maxSize),\n _fileMatchSize2 = _slicedToArray(_fileMatchSize, 2),\n sizeMatch = _fileMatchSize2[0],\n sizeError = _fileMatchSize2[1];\n\n var customErrors = validator ? validator(file) : null;\n\n if (accepted && sizeMatch && !customErrors) {\n acceptedFiles.push(file);\n } else {\n var errors = [acceptError, sizeError];\n\n if (customErrors) {\n errors = errors.concat(customErrors);\n }\n\n fileRejections.push({\n file: file,\n errors: errors.filter(function (e) {\n return e;\n })\n });\n }\n });\n\n if (!multiple && acceptedFiles.length > 1 || multiple && maxFiles >= 1 && acceptedFiles.length > maxFiles) {\n // Reject everything and empty accepted files\n acceptedFiles.forEach(function (file) {\n fileRejections.push({\n file: file,\n errors: [TOO_MANY_FILES_REJECTION]\n });\n });\n acceptedFiles.splice(0);\n }\n\n dispatch({\n acceptedFiles: acceptedFiles,\n fileRejections: fileRejections,\n type: \"setFiles\"\n });\n\n if (onDrop) {\n onDrop(acceptedFiles, fileRejections, event);\n }\n\n if (fileRejections.length > 0 && onDropRejected) {\n onDropRejected(fileRejections, event);\n }\n\n if (acceptedFiles.length > 0 && onDropAccepted) {\n onDropAccepted(acceptedFiles, event);\n }\n }, [dispatch, multiple, acceptAttr, minSize, maxSize, maxFiles, onDrop, onDropAccepted, onDropRejected, validator]);\n var onDropCb = useCallback(function (event) {\n event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done\n\n event.persist();\n stopPropagation(event);\n dragTargetsRef.current = [];\n\n if (isEvtWithFiles(event)) {\n Promise.resolve(getFilesFromEvent(event)).then(function (files) {\n if (isPropagationStopped(event) && !noDragEventsBubbling) {\n return;\n }\n\n setFiles(files, event);\n }).catch(function (e) {\n return onErrCb(e);\n });\n }\n\n dispatch({\n type: \"reset\"\n });\n }, [getFilesFromEvent, setFiles, onErrCb, noDragEventsBubbling]); // Fn for opening the file dialog programmatically\n\n var openFileDialog = useCallback(function () {\n // No point to use FS access APIs if context is not secure\n // https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts#feature_detection\n if (fsAccessApiWorksRef.current) {\n dispatch({\n type: \"openDialog\"\n });\n onFileDialogOpenCb(); // https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker\n\n var opts = {\n multiple: multiple,\n types: pickerTypes\n };\n window.showOpenFilePicker(opts).then(function (handles) {\n return getFilesFromEvent(handles);\n }).then(function (files) {\n setFiles(files, null);\n dispatch({\n type: \"closeDialog\"\n });\n }).catch(function (e) {\n // AbortError means the user canceled\n if (isAbort(e)) {\n onFileDialogCancelCb(e);\n dispatch({\n type: \"closeDialog\"\n });\n } else if (isSecurityError(e)) {\n fsAccessApiWorksRef.current = false; // CORS, so cannot use this API\n // Try using the input\n\n if (inputRef.current) {\n inputRef.current.value = null;\n inputRef.current.click();\n } else {\n onErrCb(new Error(\"Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no was provided.\"));\n }\n } else {\n onErrCb(e);\n }\n });\n return;\n }\n\n if (inputRef.current) {\n dispatch({\n type: \"openDialog\"\n });\n onFileDialogOpenCb();\n inputRef.current.value = null;\n inputRef.current.click();\n }\n }, [dispatch, onFileDialogOpenCb, onFileDialogCancelCb, useFsAccessApi, setFiles, onErrCb, pickerTypes, multiple]); // Cb to open the file dialog when SPACE/ENTER occurs on the dropzone\n\n var onKeyDownCb = useCallback(function (event) {\n // Ignore keyboard events bubbling up the DOM tree\n if (!rootRef.current || !rootRef.current.isEqualNode(event.target)) {\n return;\n }\n\n if (event.key === \" \" || event.key === \"Enter\" || event.keyCode === 32 || event.keyCode === 13) {\n event.preventDefault();\n openFileDialog();\n }\n }, [rootRef, openFileDialog]); // Update focus state for the dropzone\n\n var onFocusCb = useCallback(function () {\n dispatch({\n type: \"focus\"\n });\n }, []);\n var onBlurCb = useCallback(function () {\n dispatch({\n type: \"blur\"\n });\n }, []); // Cb to open the file dialog when click occurs on the dropzone\n\n var onClickCb = useCallback(function () {\n if (noClick) {\n return;\n } // In IE11/Edge the file-browser dialog is blocking, therefore, use setTimeout()\n // to ensure React can handle state changes\n // See: https://github.com/react-dropzone/react-dropzone/issues/450\n\n\n if (isIeOrEdge()) {\n setTimeout(openFileDialog, 0);\n } else {\n openFileDialog();\n }\n }, [noClick, openFileDialog]);\n\n var composeHandler = function composeHandler(fn) {\n return disabled ? null : fn;\n };\n\n var composeKeyboardHandler = function composeKeyboardHandler(fn) {\n return noKeyboard ? null : composeHandler(fn);\n };\n\n var composeDragHandler = function composeDragHandler(fn) {\n return noDrag ? null : composeHandler(fn);\n };\n\n var stopPropagation = function stopPropagation(event) {\n if (noDragEventsBubbling) {\n event.stopPropagation();\n }\n };\n\n var getRootProps = useMemo(function () {\n return function () {\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref2$refKey = _ref2.refKey,\n refKey = _ref2$refKey === void 0 ? \"ref\" : _ref2$refKey,\n role = _ref2.role,\n onKeyDown = _ref2.onKeyDown,\n onFocus = _ref2.onFocus,\n onBlur = _ref2.onBlur,\n onClick = _ref2.onClick,\n onDragEnter = _ref2.onDragEnter,\n onDragOver = _ref2.onDragOver,\n onDragLeave = _ref2.onDragLeave,\n onDrop = _ref2.onDrop,\n rest = _objectWithoutProperties(_ref2, _excluded3);\n\n return _objectSpread(_objectSpread(_defineProperty({\n onKeyDown: composeKeyboardHandler(composeEventHandlers(onKeyDown, onKeyDownCb)),\n onFocus: composeKeyboardHandler(composeEventHandlers(onFocus, onFocusCb)),\n onBlur: composeKeyboardHandler(composeEventHandlers(onBlur, onBlurCb)),\n onClick: composeHandler(composeEventHandlers(onClick, onClickCb)),\n onDragEnter: composeDragHandler(composeEventHandlers(onDragEnter, onDragEnterCb)),\n onDragOver: composeDragHandler(composeEventHandlers(onDragOver, onDragOverCb)),\n onDragLeave: composeDragHandler(composeEventHandlers(onDragLeave, onDragLeaveCb)),\n onDrop: composeDragHandler(composeEventHandlers(onDrop, onDropCb)),\n role: typeof role === \"string\" && role !== \"\" ? role : \"presentation\"\n }, refKey, rootRef), !disabled && !noKeyboard ? {\n tabIndex: 0\n } : {}), rest);\n };\n }, [rootRef, onKeyDownCb, onFocusCb, onBlurCb, onClickCb, onDragEnterCb, onDragOverCb, onDragLeaveCb, onDropCb, noKeyboard, noDrag, disabled]);\n var onInputElementClick = useCallback(function (event) {\n event.stopPropagation();\n }, []);\n var getInputProps = useMemo(function () {\n return function () {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref3$refKey = _ref3.refKey,\n refKey = _ref3$refKey === void 0 ? \"ref\" : _ref3$refKey,\n onChange = _ref3.onChange,\n onClick = _ref3.onClick,\n rest = _objectWithoutProperties(_ref3, _excluded4);\n\n var inputProps = _defineProperty({\n accept: acceptAttr,\n multiple: multiple,\n type: \"file\",\n style: {\n display: \"none\"\n },\n onChange: composeHandler(composeEventHandlers(onChange, onDropCb)),\n onClick: composeHandler(composeEventHandlers(onClick, onInputElementClick)),\n tabIndex: -1\n }, refKey, inputRef);\n\n return _objectSpread(_objectSpread({}, inputProps), rest);\n };\n }, [inputRef, accept, multiple, onDropCb, disabled]);\n return _objectSpread(_objectSpread({}, state), {}, {\n isFocused: isFocused && !disabled,\n getRootProps: getRootProps,\n getInputProps: getInputProps,\n rootRef: rootRef,\n inputRef: inputRef,\n open: composeHandler(openFileDialog)\n });\n}\n/**\n * @param {DropzoneState} state\n * @param {{type: string} & DropzoneState} action\n * @returns {DropzoneState}\n */\n\nfunction reducer(state, action) {\n /* istanbul ignore next */\n switch (action.type) {\n case \"focus\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isFocused: true\n });\n\n case \"blur\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isFocused: false\n });\n\n case \"openDialog\":\n return _objectSpread(_objectSpread({}, initialState), {}, {\n isFileDialogActive: true\n });\n\n case \"closeDialog\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isFileDialogActive: false\n });\n\n case \"setDraggedFiles\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isDragActive: action.isDragActive,\n isDragAccept: action.isDragAccept,\n isDragReject: action.isDragReject\n });\n\n case \"setFiles\":\n return _objectSpread(_objectSpread({}, state), {}, {\n acceptedFiles: action.acceptedFiles,\n fileRejections: action.fileRejections\n });\n\n case \"reset\":\n return _objectSpread({}, initialState);\n\n default:\n return state;\n }\n}\n\nfunction noop() {}\n\nexport { ErrorCode } from \"./utils\";","/*! streamsaver. MIT License. Jimmy Wärting */\n\n/* global chrome location ReadableStream define MessageChannel TransformStream */\n\n;((name, definition) => {\n typeof module !== 'undefined'\n ? module.exports = definition()\n : typeof define === 'function' && typeof define.amd === 'object'\n ? define(definition)\n : this[name] = definition()\n})('streamSaver', () => {\n 'use strict'\n\n const global = typeof window === 'object' ? window : this\n if (!global.HTMLElement) console.warn('streamsaver is meant to run on browsers main thread')\n\n let mitmTransporter = null\n let supportsTransferable = false\n const test = fn => { try { fn() } catch (e) {} }\n const ponyfill = global.WebStreamsPolyfill || {}\n const isSecureContext = global.isSecureContext\n // TODO: Must come up with a real detection test (#69)\n let useBlobFallback = /constructor/i.test(global.HTMLElement) || !!global.safari || !!global.WebKitPoint\n const downloadStrategy = isSecureContext || 'MozAppearance' in document.documentElement.style\n ? 'iframe'\n : 'navigate'\n\n const streamSaver = {\n createWriteStream,\n WritableStream: global.WritableStream || ponyfill.WritableStream,\n supported: true,\n version: { full: '2.0.5', major: 2, minor: 0, dot: 5 },\n mitm: 'https://jimmywarting.github.io/StreamSaver.js/mitm.html?version=2.0.0'\n }\n\n /**\n * create a hidden iframe and append it to the DOM (body)\n *\n * @param {string} src page to load\n * @return {HTMLIFrameElement} page to load\n */\n function makeIframe (src) {\n if (!src) throw new Error('meh')\n const iframe = document.createElement('iframe')\n iframe.hidden = true\n iframe.src = src\n iframe.loaded = false\n iframe.name = 'iframe'\n iframe.isIframe = true\n iframe.postMessage = (...args) => iframe.contentWindow.postMessage(...args)\n iframe.addEventListener('load', () => {\n iframe.loaded = true\n }, { once: true })\n document.body.appendChild(iframe)\n return iframe\n }\n\n /**\n * create a popup that simulates the basic things\n * of what a iframe can do\n *\n * @param {string} src page to load\n * @return {object} iframe like object\n */\n function makePopup (src) {\n const options = 'width=200,height=100'\n const delegate = document.createDocumentFragment()\n const popup = {\n frame: global.open(src, 'popup', options),\n loaded: false,\n isIframe: false,\n isPopup: true,\n remove () { popup.frame.close() },\n addEventListener (...args) { delegate.addEventListener(...args) },\n dispatchEvent (...args) { delegate.dispatchEvent(...args) },\n removeEventListener (...args) { delegate.removeEventListener(...args) },\n postMessage (...args) { popup.frame.postMessage(...args) }\n }\n\n const onReady = evt => {\n if (evt.source === popup.frame) {\n popup.loaded = true\n global.removeEventListener('message', onReady)\n popup.dispatchEvent(new Event('load'))\n }\n }\n\n global.addEventListener('message', onReady)\n\n return popup\n }\n\n try {\n // We can't look for service worker since it may still work on http\n new Response(new ReadableStream())\n if (isSecureContext && !('serviceWorker' in navigator)) {\n useBlobFallback = true\n }\n } catch (err) {\n useBlobFallback = true\n }\n\n test(() => {\n // Transferable stream was first enabled in chrome v73 behind a flag\n const { readable } = new TransformStream()\n const mc = new MessageChannel()\n mc.port1.postMessage(readable, [readable])\n mc.port1.close()\n mc.port2.close()\n supportsTransferable = true\n // Freeze TransformStream object (can only work with native)\n Object.defineProperty(streamSaver, 'TransformStream', {\n configurable: false,\n writable: false,\n value: TransformStream\n })\n })\n\n function loadTransporter () {\n if (!mitmTransporter) {\n mitmTransporter = isSecureContext\n ? makeIframe(streamSaver.mitm)\n : makePopup(streamSaver.mitm)\n }\n }\n\n /**\n * @param {string} filename filename that should be used\n * @param {object} options [description]\n * @param {number} size deprecated\n * @return {WritableStream}\n */\n function createWriteStream (filename, options, size) {\n let opts = {\n size: null,\n pathname: null,\n writableStrategy: undefined,\n readableStrategy: undefined\n }\n\n let bytesWritten = 0 // by StreamSaver.js (not the service worker)\n let downloadUrl = null\n let channel = null\n let ts = null\n\n // normalize arguments\n if (Number.isFinite(options)) {\n [ size, options ] = [ options, size ]\n console.warn('[StreamSaver] Deprecated pass an object as 2nd argument when creating a write stream')\n opts.size = size\n opts.writableStrategy = options\n } else if (options && options.highWaterMark) {\n console.warn('[StreamSaver] Deprecated pass an object as 2nd argument when creating a write stream')\n opts.size = size\n opts.writableStrategy = options\n } else {\n opts = options || {}\n }\n if (!useBlobFallback) {\n loadTransporter()\n\n channel = new MessageChannel()\n\n // Make filename RFC5987 compatible\n filename = encodeURIComponent(filename.replace(/\\//g, ':'))\n .replace(/['()]/g, escape)\n .replace(/\\*/g, '%2A')\n\n const response = {\n transferringReadable: supportsTransferable,\n pathname: opts.pathname || Math.random().toString().slice(-6) + '/' + filename,\n headers: {\n 'Content-Type': 'application/octet-stream; charset=utf-8',\n 'Content-Disposition': \"attachment; filename*=UTF-8''\" + filename\n }\n }\n\n if (opts.size) {\n response.headers['Content-Length'] = opts.size\n }\n\n const args = [ response, '*', [ channel.port2 ] ]\n\n if (supportsTransferable) {\n const transformer = downloadStrategy === 'iframe' ? undefined : {\n // This transformer & flush method is only used by insecure context.\n transform (chunk, controller) {\n if (!(chunk instanceof Uint8Array)) {\n throw new TypeError('Can only write Uint8Arrays')\n }\n bytesWritten += chunk.length\n controller.enqueue(chunk)\n\n if (downloadUrl) {\n location.href = downloadUrl\n downloadUrl = null\n }\n },\n flush () {\n if (downloadUrl) {\n location.href = downloadUrl\n }\n }\n }\n ts = new streamSaver.TransformStream(\n transformer,\n opts.writableStrategy,\n opts.readableStrategy\n )\n const readableStream = ts.readable\n\n channel.port1.postMessage({ readableStream }, [ readableStream ])\n }\n\n channel.port1.onmessage = evt => {\n // Service worker sent us a link that we should open.\n if (evt.data.download) {\n // Special treatment for popup...\n if (downloadStrategy === 'navigate') {\n mitmTransporter.remove()\n mitmTransporter = null\n if (bytesWritten) {\n location.href = evt.data.download\n } else {\n downloadUrl = evt.data.download\n }\n } else {\n if (mitmTransporter.isPopup) {\n mitmTransporter.remove()\n mitmTransporter = null\n // Special case for firefox, they can keep sw alive with fetch\n if (downloadStrategy === 'iframe') {\n makeIframe(streamSaver.mitm)\n }\n }\n\n // We never remove this iframes b/c it can interrupt saving\n makeIframe(evt.data.download)\n }\n } else if (evt.data.abort) {\n chunks = []\n channel.port1.postMessage('abort') //send back so controller is aborted\n channel.port1.onmessage = null\n channel.port1.close()\n channel.port2.close()\n channel = null\n }\n }\n\n if (mitmTransporter.loaded) {\n mitmTransporter.postMessage(...args)\n } else {\n mitmTransporter.addEventListener('load', () => {\n mitmTransporter.postMessage(...args)\n }, { once: true })\n }\n }\n\n let chunks = []\n\n return (!useBlobFallback && ts && ts.writable) || new streamSaver.WritableStream({\n write (chunk) {\n if (!(chunk instanceof Uint8Array)) {\n throw new TypeError('Can only write Uint8Arrays')\n }\n if (useBlobFallback) {\n // Safari... The new IE6\n // https://github.com/jimmywarting/StreamSaver.js/issues/69\n //\n // even though it has everything it fails to download anything\n // that comes from the service worker..!\n chunks.push(chunk)\n return\n }\n\n // is called when a new chunk of data is ready to be written\n // to the underlying sink. It can return a promise to signal\n // success or failure of the write operation. The stream\n // implementation guarantees that this method will be called\n // only after previous writes have succeeded, and never after\n // close or abort is called.\n\n // TODO: Kind of important that service worker respond back when\n // it has been written. Otherwise we can't handle backpressure\n // EDIT: Transferable streams solves this...\n channel.port1.postMessage(chunk)\n bytesWritten += chunk.length\n\n if (downloadUrl) {\n location.href = downloadUrl\n downloadUrl = null\n }\n },\n close () {\n if (useBlobFallback) {\n const blob = new Blob(chunks, { type: 'application/octet-stream; charset=utf-8' })\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.download = filename\n link.click()\n } else {\n channel.port1.postMessage('end')\n }\n },\n abort () {\n chunks = []\n channel.port1.postMessage('abort')\n channel.port1.onmessage = null\n channel.port1.close()\n channel.port2.close()\n channel = null\n }\n }, opts.writableStrategy)\n }\n\n return streamSaver\n})\n","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","getBadgeUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","BadgeRoot","styled","name","overridesResolver","props","styles","root","position","display","verticalAlign","flexShrink","BadgeBadge","ownerState","badge","variant","concat","capitalize","anchorOrigin","vertical","horizontal","overlap","color","invisible","_ref3","theme","_extends","flexDirection","flexWrap","justifyContent","alignContent","alignItems","boxSizing","fontFamily","typography","fontWeight","fontWeightMedium","fontSize","pxToRem","minWidth","RADIUS_STANDARD","lineHeight","padding","height","borderRadius","zIndex","transition","transitions","create","easing","easeInOut","duration","enteringScreen","backgroundColor","vars","palette","main","contrastText","RADIUS_DOT","_defineProperty","top","right","transform","transformOrigin","badgeClasses","bottom","left","leavingScreen","React","inProps","ref","_ref","_slots$root","_ref2","_slots$badge","_slotProps$root","_slotProps$badge","useThemeProps","_props$anchorOrigin","anchorOriginProp","className","component","_props$components","components","_props$componentsProp","componentsProps","children","_props$overlap","overlapProp","_props$color","colorProp","_props$invisible","invisibleProp","_props$max","max","maxProp","badgeContentProp","badgeContent","slots","slotProps","_props$showZero","showZero","_props$variant","variantProp","other","_objectWithoutPropertiesLoose","_useBadge","parameters","_parameters$invisible","_parameters$max","_parameters$showZero","prevProps","usePreviousProps","_ref$max","displayValue","Number","useBadge","invisibleFromHook","displayValueFromHook","_ref12","_ref12$color","_ref12$overlap","_ref12$anchorOrigin","_ref12$variant","undefined","classes","_ownerState$classes","composeClasses","useUtilityClasses","RootSlot","Root","BadgeSlot","Badge","rootSlotProps","badgeSlotProps","rootProps","useSlotProps","elementType","externalSlotProps","externalForwardedProps","additionalProps","as","clsx","badgeProps","_jsxs","_jsx","getCheckboxUtilityClass","CheckboxRoot","SwitchBase","shouldForwardProp","prop","rootShouldForwardProp","indeterminate","text","secondary","disableRipple","action","activeChannel","primary","mainChannel","hoverOpacity","alpha","active","checkboxClasses","checked","disabled","defaultCheckedIcon","CheckBoxIcon","defaultIcon","CheckBoxOutlineBlankIcon","defaultIndeterminateIcon","IndeterminateCheckBoxIcon","_icon$props$fontSize","_indeterminateIcon$pr","_props$checkedIcon","checkedIcon","_props$icon","icon","iconProp","_props$indeterminate","_props$indeterminateI","indeterminateIcon","indeterminateIconProp","inputProps","_props$size","size","composedClasses","type","FormLabelRoot","colorSecondary","filled","_extends2","body1","formLabelClasses","focused","error","AsteriskComponent","asterisk","FormLabel","_props$component","muiFormControl","useFormControl","fcs","formControlState","states","required","getFormLabelUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","formControl","sizeSmall","shrink","disableAnimation","animated","whiteSpace","overflow","textOverflow","maxWidth","shorter","easeOut","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","ListItemIconRoot","alignItemsFlexStart","marginTop","ListItemIcon","context","ListContext","getListItemIconUtilityClass","ListItemTextRoot","listItemTextClasses","inset","multiline","dense","flex","marginBottom","paddingLeft","ListItemText","_props$disableTypogra","disableTypography","_props$inset","primaryProp","primaryTypographyProps","secondaryProp","secondaryTypographyProps","getListItemTextUtilityClass","Typography","getSwitchUtilityClass","SwitchRoot","edge","width","colorAdjust","marginLeft","marginRight","switchClasses","thumb","switchBase","SwitchSwitchBase","input","_ref4","_ref5","Switch","defaultColor","mode","common","white","grey","shortest","defaultDisabledColor","track","opacity","switchTrackDisabled","_ref6","_ref7","lighten","darken","SwitchTrack","_ref8","onBackground","black","switchTrack","SwitchThumb","_ref9","boxShadow","shadows","_props$edge","sx","getSwitchBaseUtilityClass","SwitchBaseRoot","ButtonBase","SwitchBaseInput","cursor","margin","autoFocus","checkedProp","defaultChecked","disabledProp","_props$disableFocusRi","disableFocusRipple","id","inputRef","onBlur","onChange","onFocus","readOnly","_props$required","tabIndex","_useControlled","useControlled","controlled","Boolean","state","_useControlled2","_slicedToArray","setCheckedState","hasLabelFor","centerRipple","focusRipple","role","event","nativeEvent","defaultPrevented","newChecked","target","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","current","file","acceptedFiles","acceptedFilesArray","Array","isArray","split","fileName","mimeType","toLowerCase","baseMimeType","replace","some","validType","trim","charAt","endsWith","deselectCurrent","clipboardToIE11Formatting","module","options","debug","message","reselectPrevious","range","selection","mark","success","document","createRange","getSelection","createElement","textContent","ariaHidden","style","all","clip","webkitUserSelect","MozUserSelect","msUserSelect","addEventListener","e","stopPropagation","format","preventDefault","clipboardData","console","warn","window","clearData","setData","onCopy","body","appendChild","selectNodeContents","addRange","execCommand","Error","err","copyKey","test","navigator","userAgent","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","CopyToClipboard","_react","_copyToClipboard","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","apply","_objectSpread","i","arguments","length","source","forEach","key","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","sourceKeys","indexOf","sourceSymbolKeys","propertyIsEnumerable","call","_defineProperties","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","valueOf","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","this","self","TypeError","_assertThisInitialized","_possibleConstructorReturn","ReferenceError","getPrototypeOf","_React$PureComponent","subClass","superClass","_inherits","Constructor","protoProps","staticProps","_super","_this","instance","_classCallCheck","_len","args","_key","_this$props","elem","Children","only","onClick","_this$props2","cloneElement","PureComponent","__awaiter","thisArg","_arguments","P","Promise","resolve","reject","fulfilled","step","next","rejected","done","then","__generator","f","y","t","g","_","label","sent","trys","ops","verb","n","v","op","pop","__read","m","r","ar","__spreadArray","to","from","pack","l","slice","SuppressedError","COMMON_MIME_TYPES","Map","toFileWithPath","path","lastIndexOf","ext","withMimeType","webkitRelativePath","FILES_TO_IGNORE","isObject","getInputFiles","evt","fromList","files","map","getFsHandleFiles","handles","h","getFile","_a","getDataTransferFiles","dt","items","item","kind","toFilePromises","noIgnoredFiles","flatten","webkitGetAsEntry","fromDataTransferItem","entry","isDirectory","fromDirEntry","reduce","acc","getAsFile","fwp","fromEntry","fromFileEntry","reader","createReader","entries","readEntries","batch","err_1","fullPath","_toConsumableArray","arr","_arrayLikeToArray","_arrayWithoutHoles","iter","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","_arrayWithHoles","_i","_s","_e","_arr","_n","_d","_iterableToArrayLimit","_nonIterableRest","minLen","toString","len","arr2","FILE_INVALID_TYPE","FILE_TOO_LARGE","FILE_TOO_SMALL","TOO_MANY_FILES","getInvalidTypeRejectionErr","accept","messageSuffix","join","code","getTooLargeRejectionErr","maxSize","getTooSmallRejectionErr","minSize","TOO_MANY_FILES_REJECTION","fileAccepted","isAcceptable","accepts","fileMatchSize","isDefined","isPropagationStopped","cancelBubble","isEvtWithFiles","dataTransfer","types","onDocumentDragOver","composeEventHandlers","fns","_len2","_key2","fn","isMIMEType","isExt","_excluded2","_excluded3","_excluded4","Dropzone","forwardRef","_useDropzone","useDropzone","open","useImperativeHandle","Fragment","displayName","defaultProps","getFilesFromEvent","isChangeEvt","every","Infinity","multiple","maxFiles","preventDropOnDocument","noClick","noKeyboard","noDrag","noDragEventsBubbling","useFsAccessApi","propTypes","PropTypes","onFileDialogCancel","onFileDialogOpen","onDragEnter","onDragLeave","onDragOver","onDrop","onDropAccepted","onDropRejected","onError","initialState","isFocused","isFileDialogActive","isDragActive","isDragAccept","isDragReject","fileRejections","_defaultProps$props","acceptAttr","useMemo","a","acceptPropAsAcceptAttr","pickerTypes","description","ok","agg","pickerOptionsFromAccept","onFileDialogOpenCb","noop","onFileDialogCancelCb","rootRef","useRef","_useReducer2","useReducer","reducer","dispatch","fsAccessApiWorksRef","isSecureContext","onWindowFocus","setTimeout","useEffect","removeEventListener","dragTargetsRef","onDocumentDrop","contains","focus","onErrCb","useCallback","onDragEnterCb","persist","fileCount","accepted","sizeMatch","customErrors","allFilesAccepted","catch","onDragOverCb","hasFiles","dropEffect","_unused","onDragLeaveCb","targets","targetIdx","splice","setFiles","_fileAccepted2","acceptError","_fileMatchSize2","sizeError","errors","onDropCb","openFileDialog","opts","showOpenFilePicker","DOMException","ABORT_ERR","SECURITY_ERR","isSecurityError","click","onKeyDownCb","isEqualNode","keyCode","onFocusCb","onBlurCb","onClickCb","isIe","isEdge","isIeOrEdge","composeHandler","composeKeyboardHandler","composeDragHandler","getRootProps","_ref2$refKey","refKey","onKeyDown","rest","onInputElementClick","getInputProps","_ref3$refKey","global","HTMLElement","mitmTransporter","supportsTransferable","ponyfill","WebStreamsPolyfill","useBlobFallback","safari","WebKitPoint","downloadStrategy","documentElement","streamSaver","createWriteStream","WritableStream","supported","version","full","major","minor","dot","mitm","makeIframe","src","iframe","hidden","loaded","isIframe","postMessage","_iframe$contentWindow","contentWindow","once","makePopup","delegate","createDocumentFragment","popup","frame","isPopup","remove","close","dispatchEvent","_popup$frame","onReady","Event","Response","ReadableStream","loadTransporter","filename","pathname","writableStrategy","readableStrategy","bytesWritten","downloadUrl","channel","ts","isFinite","highWaterMark","MessageChannel","encodeURIComponent","escape","response","transferringReadable","Math","random","headers","_mitmTransporter","port2","transformer","chunk","controller","Uint8Array","enqueue","href","flush","readableStream","TransformStream","readable","port1","onmessage","data","download","abort","chunks","_mitmTransporter2","write","blob","Blob","link","URL","createObjectURL","mc","definition","rangeCount","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1432.30248eac.chunk.js b/portal-ui/build/static/js/1432.30248eac.chunk.js deleted file mode 100644 index 8eb120ff9..000000000 --- a/portal-ui/build/static/js/1432.30248eac.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1432],{81159:function(e,n,t){var i=t(4942),o=t(1413),a=t(72791),r=t(11135),l=t(25787),s=t(9955),c=t(30829),d=t(20068),u=t(20890),f=t(61889),p=t(23814),h=t(29945),m=t(28182),x=t(80184),g=(0,l.Z)((function(e){return{root:{width:50,height:24,padding:0,margin:0},switchBase:{padding:1,"&$checked":{transform:"translateX(24px)",color:e.palette.common.white,"& + $track":{backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,border:"none"}},"&$focusVisible $thumb":{color:"#4CCB92",border:"6px solid #fff"}},thumb:{width:22,height:22,backgroundColor:"#FAFAFA",border:"2px solid #FFFFFF",marginLeft:1},track:{borderRadius:12,backgroundColor:"#E2E2E2",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,transition:e.transitions.create(["background-color","border"])},checked:{},focusVisible:{},switchContainer:{display:"flex",alignItems:"center",justifyContent:"flex-end"}}}))(s.Z);n.Z=(0,l.Z)((function(e){return(0,r.Z)((0,o.Z)((0,o.Z)({indicatorLabelOn:{fontWeight:"bold",color:"#081C42 !important"},indicatorLabel:{fontSize:12,color:"#E2E2E2",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"},tooltip:{fontSize:16}},p.OR),p.YI))}))((function(e){var n=e.label,t=void 0===n?"":n,r=e.onChange,l=e.value,s=e.id,p=e.name,b=e.checked,v=void 0!==b&&b,y=e.disabled,j=void 0!==y&&y,Z=e.switchOnly,k=void 0!==Z&&Z,C=e.tooltip,w=void 0===C?"":C,_=e.description,S=void 0===_?"":_,E=e.classes,A=e.indicatorLabels,I=e.extraInputProps,T=void 0===I?{}:I,F=(0,x.jsxs)(a.Fragment,{children:[!k&&(0,x.jsx)("span",{className:(0,m.Z)(E.indicatorLabel,(0,i.Z)({},E.indicatorLabelOn,!v)),children:A&&A.length>1?A[1]:"OFF"}),(0,x.jsx)(g,{checked:v,onChange:r,color:"primary",name:p,inputProps:(0,o.Z)({"aria-label":"primary checkbox"},T),disabled:j,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:l,id:s}),!k&&(0,x.jsx)("span",{className:(0,m.Z)(E.indicatorLabel,(0,i.Z)({},E.indicatorLabelOn,v)),children:A?A[0]:"ON"})]});return k?F:(0,x.jsx)("div",{children:(0,x.jsxs)(f.ZP,{container:!0,alignItems:"center",children:[(0,x.jsx)(f.ZP,{item:!0,xs:12,sm:8,md:8,children:""!==t&&(0,x.jsxs)(c.Z,{htmlFor:s,className:E.inputLabel,children:[(0,x.jsx)("span",{children:t}),""!==w&&(0,x.jsx)("div",{className:E.tooltipContainer,children:(0,x.jsx)(d.Z,{title:w,placement:"top-start",children:(0,x.jsx)("div",{className:E.tooltip,children:(0,x.jsx)(h.byK,{})})})})]})}),(0,x.jsx)(f.ZP,{item:!0,xs:12,sm:""!==t?4:12,md:""!==t?4:12,textAlign:"right",justifyContent:"end",className:E.switchContainer,children:F}),""!==S&&(0,x.jsx)(f.ZP,{item:!0,xs:12,textAlign:"left",children:(0,x.jsx)(u.Z,{component:"p",className:E.fieldDescription,children:S})})]})})}))},14917:function(e,n,t){t(72791);var i=t(61889),o=t(72455),a=t(80184),r=(0,o.Z)((function(e){return{headerBarIcon:{marginRight:".7rem",color:e.palette.primary.main,"& .min-icon":{width:44,height:44},"@media (max-width: 600px)":{display:"none"}},headerBarSubheader:{color:"grey","@media (max-width: 900px)":{maxWidth:200}},stContainer:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:8,borderBottom:"1px solid #EAEAEA","@media (max-width: 600px)":{flexFlow:"column"}},titleColumn:{height:"auto",justifyContent:"center",display:"flex",flexFlow:"column",alignItems:"flex-start","& h1":{fontSize:19}},leftItems:{display:"flex",alignItems:"center","@media (max-width: 600px)":{flexFlow:"column",width:"100%"}},rightItems:{display:"flex",alignItems:"center","& button":{marginLeft:8},"@media (max-width: 600px)":{width:"100%"}}}}));n.Z=function(e){var n=e.icon,t=e.title,o=e.subTitle,l=e.actions,s=e.className,c=r();return(0,a.jsx)(i.ZP,{container:!0,children:(0,a.jsxs)(i.ZP,{item:!0,xs:12,className:"".concat(c.stContainer," ").concat(s||""),children:[(0,a.jsxs)("div",{className:c.leftItems,children:[n?(0,a.jsx)("div",{className:c.headerBarIcon,children:n}):null,(0,a.jsxs)("div",{className:c.titleColumn,children:[(0,a.jsx)("h1",{style:{margin:0},children:t}),(0,a.jsx)("span",{className:c.headerBarSubheader,children:o})]})]}),(0,a.jsx)("div",{className:c.rightItems,children:l})]})})}},50276:function(e,n,t){var i=t(1413),o=t(29439),a=t(72791),r=t(64554),l=t(43896),s=t(83449),c=t(47283),d=t(82851),u=t(25787),f=t(13967),p=t(11135),h=t(95193),m=t(57689),x=t(80184),g={minHeight:60};n.Z=(0,u.Z)((function(e){return(0,p.Z)({tabsContainer:{display:"flex",height:"100%",width:"100%"},tabsHeaderContainer:{width:"300px",background:"#F8F8F8",borderRight:"1px solid #EAEAEA","& .MuiTabs-root":{"& .MuiTabs-indicator":{display:"none"},"& .MuiTab-root":{display:"flex",flexFlow:"row",alignItems:"center",justifyContent:"flex-start",borderBottom:"1px solid #EAEAEA","& .MuiSvgIcon-root":{marginRight:8,marginBottom:0},"&.Mui-selected":{background:"#E5E5E5",fontWeight:600}},"&. MuiTabs-scroller":{display:"none"}}},tabContentContainer:{width:"100%","& .MuiTabPanel-root":{height:"100%"}},tabPanel:{height:"100%"},"@media (max-width: 900px)":{tabsContainer:{flexFlow:"column",flexDirection:"column"},tabsHeaderContainer:{width:"100%",borderBottom:" 1px solid #EAEAEA","& .MuiTabs-root .MuiTabs-scroller .MuiButtonBase-root":{borderBottom:" 0px"}}}})}))((function(e){var n=e.children,t=e.classes,u=e.selectedTab,p=void 0===u?"0":u,b=e.routes,v=e.isRouteTabs,y=(0,f.Z)(),j=(0,m.TH)().pathname,Z=void 0===j?"":j,k=(0,h.Z)(y.breakpoints.down("md")),C=(0,a.useState)(p),w=(0,o.Z)(C,2),_=w[0],S=w[1],E=[],A=[];if((0,a.useEffect)((function(){if(v){var e=n.find((function(e){return e.tabConfig.to===Z}));e&&S(e.tabConfig.value)}}),[v,n,Z]),!n)return null;n.forEach((function(e){E.push(e.tabConfig),A.push(e.content)}));return(0,x.jsx)(s.ZP,{value:"".concat(_),children:(0,x.jsxs)(r.Z,{className:t.tabsContainer,children:[(0,x.jsx)(r.Z,{className:t.tabsHeaderContainer,children:(0,x.jsx)(c.Z,{onChange:function(e,n){S(n)},orientation:k?"horizontal":"vertical",variant:k?"scrollable":"standard",scrollButtons:"auto",className:t.tabList,children:E.map((function(e,n){return e?(0,x.jsx)(l.Z,(0,i.Z)((0,i.Z)({className:t.tabHeader,value:"".concat(n),style:g},e),{},{disableRipple:!0,disableTouchRipple:!0,focusRipple:!0}),"v-tab-".concat(n)):null}))})}),(0,x.jsxs)(r.Z,{className:t.tabContentContainer,children:[v?null:A.map((function(e,n){return(0,x.jsx)(d.Z,{classes:(0,i.Z)({},t.tabPanel),value:"".concat(n),children:e||null},"v-tab-p-".concat(n))})),v?(0,x.jsx)("div",{className:t.tabPanel,children:b}):null]})]})})}))},11432:function(e,n,t){t.r(n),t.d(n,{default:function(){return ie}});var i=t(74165),o=t(15861),a=t(29439),r=t(1413),l=t(72791),s=t(11135),c=t(25787),d=t(61889),u=t(58493),f=t(23814),p=t(29945),h=t(57689),m=t(11087),x=t(50276),g=t(14917),b=t(26181),v=t.n(b),y=t(64554),j=t(10091),Z=t(90767),k=t(87995),C=t(81551),w=t(93433),_=t(21435),S=t(56028),E=t(244),A=t(13901),I=t(36909),T=t(40986),F=t(31776),N=t(82342),L=t(80184),R=function(e){var n=e.open,t=e.type,i=e.onCloseEndpoint,o=(0,l.useState)(""),s=(0,a.Z)(o,2),c=s[0],d=s[1],u=(0,l.useState)(""),h=(0,a.Z)(u,2),m=h[0],x=h[1],g=(0,l.useState)(""),b=(0,a.Z)(g,2),v=b[0],y=b[1],j=(0,l.useState)(!1),Z=(0,a.Z)(j,2),R=Z[0],q=Z[1],D=(0,l.useState)(["name","endpoint"]),M=(0,a.Z)(D,2),P=M[0],B=M[1],O=(0,l.useState)(["name","endpoint","auth-token"]),W=(0,a.Z)(O,2),z=W[0],K=W[1],H=(0,C.TL)(),V=function(e){K(z.filter((function(n){return n!==e})))},$=function(e,n){P.includes(e)&&n?B(P.filter((function(n){return n!==e}))):n||P.includes(e)||B([].concat((0,w.Z)(P),[e]))},U="Add new Webhook",Y=(0,L.jsx)(E.Z,{});switch(t){case"logger_webhook":U="New Logger Webhook",Y=(0,L.jsx)(A.Z,{});break;case"audit_webhook":U="New Audit Webhook",Y=(0,L.jsx)(I.Z,{})}return(0,L.jsx)(l.Fragment,{children:(0,L.jsxs)(S.Z,{modalOpen:n,title:U,onClose:i,titleIcon:Y,children:[(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,L.jsx)(_.Z,{id:"name",name:"name",onChange:function(e){V("name"),d(e.target.value),$("name",e.target.validity.valid)},error:P.includes("name")&&!z.includes("name")?"Invalid Name":"",label:"Name",value:c,pattern:"^(?=.*[a-zA-Z0-9]).{1,}$",required:!0})}),(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,L.jsx)(_.Z,{id:"endpoint",name:"endpoint",onChange:function(e){V("endpoint"),x(e.target.value),$("endpoint",e.target.validity.valid)},error:P.includes("endpoint")&&!z.includes("endpoint")?"Invalid Endpoint set":"",label:"Endpoint",value:m,pattern:"^(https?):\\/\\/([a-zA-Z0-9\\-.]+)(:[0-9]+)?(\\/[a-zA-Z0-9\\-.\\/]*)?$",required:!0})}),(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,L.jsx)(_.Z,{id:"auth-token",name:"auth-token",onChange:function(e){V("auth-token"),y(e.target.value)},label:"Auth Token",value:v})}),R&&(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:{marginBottom:10},children:(0,L.jsx)(T.Z,{})}),(0,L.jsxs)(p.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end"},children:[(0,L.jsx)(p.zxk,{id:"reset",type:"button",variant:"regular",disabled:R,onClick:i,label:"Cancel",sx:{marginRight:10}}),(0,L.jsx)(p.zxk,{id:"save-lifecycle",type:"submit",variant:"callAction",color:"primary",disabled:R||0!==P.length,label:"Save",onClick:function(){if(!R&&0===P.length)if(""!==c.trim())if(""!==m.trim()){q(!0);var e={key_values:[{key:"endpoint",value:m},{key:"auth_token",value:v}],arn_resource_id:c};F.h.configs.setConfig(t,e).then((function(e){q(!1),H((0,k.cN)(e.data.restart||!1)),e.data.restart||H((0,k.y1)("Configuration saved successfully")),i(),H((0,k.Ie)(!0))})).catch((function(e){q(!1),H((0,k.Ih)((0,N.g)(e.error)))}))}else B([].concat((0,w.Z)(P),["endpoint"]));else B([].concat((0,w.Z)(P),["name"]))}})]})]})})},q=t(51691),D=t(23508),M=function(e){var n=e.modalOpen,t=e.onClose,i=e.selectedARN,o=(e.type,(0,l.useState)(!1)),r=(0,a.Z)(o,2),s=r[0],c=r[1],d=(0,C.TL)();(0,l.useEffect)((function(){s&&F.h.configs.resetConfig(i).then((function(){c(!1),d((0,k.cN)(!0)),d((0,k.Ie)(!0)),t()})).catch((function(e){c(!1),d((0,k.Ih)((0,N.g)(e.error)))}))}),[s,d,t,i]);var u=!i.includes(":"),f="Are you sure you want to delete the Configured Endpoint";return u&&(f="Are you sure you want to reset the Default"),(0,L.jsx)(D.Z,{title:u?"Reset Default Webhook":"Delete Webhook",confirmText:u?"Reset":"Delete",isOpen:n,isLoading:s,onConfirm:function(){c(!0)},titleIcon:(0,L.jsx)(p.NvT,{}),onClose:t,confirmationContent:(0,L.jsxs)(q.Z,{children:["".concat(f," "),(0,L.jsx)("strong",{children:i}),"?"]})})},P=t(81159),B=t(64163),O=function(e){var n,t,i,o=e.open,s=e.type,c=e.endpointInfo,d=e.onCloseEndpoint,h=(0,l.useState)(""),m=(0,a.Z)(h,2),x=m[0],g=m[1],b=(0,l.useState)(""),v=(0,a.Z)(b,2),y=v[0],j=v[1],Z=(0,l.useState)(""),R=(0,a.Z)(Z,2),q=R[0],D=R[1],M=(0,l.useState)("on"),O=(0,a.Z)(M,2),W=O[0],z=O[1],K=(0,l.useState)(!1),H=(0,a.Z)(K,2),V=H[0],$=H[1],U=(0,l.useState)([]),Y=(0,a.Z)(U,2),G=Y[0],X=Y[1],Q=(0,C.TL)();(0,l.useEffect)((function(){if(c){var e=c.key_values.find((function(e){return"endpoint"===e.key})),n=c.key_values.find((function(e){return"auth_token"===e.key})),t=c.key_values.find((function(e){return"enable"===e.key})),i=[];if(e){var o=e.value;""===o?i.push("endpoint"):j(o)}if(n){var a=n.value;""===a?i.push("auth-token"):D(a)}t&&"off"===t.value&&z(t.value),g(c.name||""),X(i)}}),[c]);var J=!x.includes(":"),ee=c.key_values.filter((function(e){return!!e.env_override})),ne=(0,u.F_)(ee),te="Edit Webhook",ie=(0,L.jsx)(E.Z,{});switch(s){case"logger_webhook":te="Edit ".concat(J?" the Default ":"","Logger Webhook"),ie=(0,L.jsx)(A.Z,{});break;case"audit_webhook":te="Edit ".concat(J?" the Default ":"","Audit Webhook"),ie=(0,L.jsx)(I.Z,{})}return ee.length>0&&(te="View env variable Webhook"),(0,L.jsx)(l.Fragment,{children:(0,L.jsx)(S.Z,{modalOpen:o,title:"".concat(te).concat(J?"":" - ".concat(x)),onClose:d,titleIcon:ie,children:ee.length>0?(0,L.jsxs)(l.Fragment,{children:[(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,L.jsx)(B.Z,{label:"Enabled",content:(null===(n=ne.enable)||void 0===n?void 0:n.value)||"-",actionButton:(0,L.jsx)(p.rjZ,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,L.jsx)(p.ua7,{tooltip:ne.enable?"This value is set from the ".concat(ne.enable.overrideEnv," environment variable"):"",placement:"left",children:(0,L.jsx)(p.zD0,{style:{width:20}})})})})}),(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,L.jsx)(B.Z,{label:"Endpoint",content:(null===(t=ne.endpoint)||void 0===t?void 0:t.value)||"-",actionButton:(0,L.jsx)(p.rjZ,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,L.jsx)(p.ua7,{tooltip:ne.enable?"This value is set from the ".concat(ne.endpoint.overrideEnv," environment variable"):"",placement:"left",children:(0,L.jsx)(p.zD0,{style:{width:20}})})})})}),(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,L.jsx)(B.Z,{label:"Auth Token",content:(null===(i=ne.auth_token)||void 0===i?void 0:i.value)||"-",actionButton:(0,L.jsx)(p.rjZ,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,L.jsx)(p.ua7,{tooltip:ne.enable?"This value is set from the ".concat(ne.auth_token.overrideEnv," environment variable"):"",placement:"left",children:(0,L.jsx)(p.zD0,{style:{width:20}})})})})})]}):(0,L.jsxs)(l.Fragment,{children:[(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,L.jsx)(P.Z,{onChange:function(e){var n=e.target.checked?"on":"off";z(n)},id:"endpoint_enabled",name:"endpoint_enabled",label:"Enabled",value:"switch_on",checked:"on"===W})}),(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,L.jsx)(_.Z,{id:"endpoint",name:"endpoint",onChange:function(e){j(e.target.value),function(e,n){G.includes(e)&&n?X(G.filter((function(n){return n!==e}))):n||G.includes(e)||X([].concat((0,w.Z)(G),[e]))}("endpoint",e.target.validity.valid)},error:G.includes("endpoint")?"Invalid Endpoint set":"",label:"Endpoint",value:y,pattern:"^(https?):\\/\\/([a-zA-Z0-9\\-.]+)(:[0-9]+)?(\\/[a-zA-Z0-9\\-.\\/]*)?$",required:!0})}),(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,L.jsx)(_.Z,{id:"auth-token",name:"auth-token",onChange:function(e){D(e.target.value)},label:"Auth Token",value:q})}),V&&(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:{marginBottom:10},children:(0,L.jsx)(T.Z,{})}),(0,L.jsxs)(p.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end"},children:[(0,L.jsx)(p.zxk,{id:"reset",type:"button",variant:"regular",disabled:V,onClick:d,label:"Cancel",sx:{marginRight:10}}),(0,L.jsx)(p.zxk,{id:"save-lifecycle",type:"submit",variant:"callAction",color:"primary",disabled:V||0!==G.length,label:"Update",onClick:function(){if(!V&&0===G.length)if(y&&""!==y.trim()){$(!0);var e={key_values:[{key:"endpoint",value:y},{key:"auth_token",value:q},{key:"enable",value:W}]};F.h.configs.setConfig(x,e).then((function(e){$(!1),Q((0,k.cN)(e.data.restart||!1)),e.data.restart||Q((0,k.y1)("Configuration saved successfully")),d(),Q((0,k.Ie)(!0))})).catch((function(e){$(!1),Q((0,k.Ih)((0,N.g)(e.error)))}))}else X([].concat((0,w.Z)(G),["endpoint"]))}})]})]})})})},W=function(e){e.setResetConfigurationOpen;var n=e.WebhookSettingslist,t=e.type,i=(0,l.useState)(!1),o=(0,a.Z)(i,2),r=o[0],s=o[1],c=(0,l.useState)(!1),d=(0,a.Z)(c,2),u=d[0],f=d[1],h=(0,l.useState)(!1),m=(0,a.Z)(h,2),x=m[0],g=m[1],b=(0,l.useState)(""),v=(0,a.Z)(b,2),y=v[0],j=v[1],Z=(0,l.useState)(null),k=(0,a.Z)(Z,2),C=k[0],w=k[1],_=[{type:"view",onClick:function(e){e.name&&(g(!0),w(e))}},{type:"delete",onClick:function(e){e.name&&(f(!0),j(e.name))},disableButtonFunction:function(e){var t=n.find((function(n){return n.name===e}));if(t){var i,o=null===(i=t.key_values)||void 0===i?void 0:i.filter((function(e){return!!e.env_override}));return!!(o&&o.length>0)}return!1}}];return(0,L.jsxs)(p.rjZ,{container:!0,children:[r&&(0,L.jsx)(R,{open:r,type:t,onCloseEndpoint:function(){s(!1)}}),u&&(0,L.jsx)(M,{modalOpen:u,onClose:function(){f(!1),j("")},selectedARN:y,type:t}),x&&C&&(0,L.jsx)(O,{open:x,type:t,endpointInfo:C,onCloseEndpoint:function(){g(!1),w(null)}}),(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end"},children:(0,L.jsx)(p.zxk,{id:"newWebhook",variant:"callAction",onClick:function(){s(!0)},children:"New Endpoint"})}),(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:{padding:"0 10px 10px"},children:(0,L.jsxs)(l.Fragment,{children:[(0,L.jsx)("h3",{children:"Currently Configured Endpoints"}),(0,L.jsx)(p.wQF,{columns:[{label:"Status",elementKey:"key_values",renderFunction:function(e){var n=e.find((function(e){return"enable"===e.key}));if(null!==n&&void 0!==n&&n.env_override){var t=null!==n&&void 0!==n&&n.env_override.value&&"on"!==(null===n||void 0===n?void 0:n.env_override.value)&&null!==n&&void 0!==n&&n.env_override.value?"Disabled":"Enabled";return(0,L.jsxs)(p.rjZ,{container:!0,sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyItems:"start",fontSize:"8px"},children:[(0,L.jsx)(p.zD0,{style:{fill:"#052F51",width:"14px"}}),t?"Enabled":"Disabled"]})}return n&&"on"!==n.value&&n.value?(0,L.jsxs)(p.rjZ,{container:!0,sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyItems:"start",fontSize:"8px"},children:[(0,L.jsx)(p.qwj,{style:{fill:"#C83B51",width:14,height:14}}),"Disabled"]}):(0,L.jsxs)(p.rjZ,{container:!0,sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyItems:"start",fontSize:"8px"},children:[(0,L.jsx)(p.Yp9,{style:{fill:"#4CCB92",width:14,height:14}}),"Enabled"]})},width:50},{label:"Name",elementKey:"name"},{label:"Endpoint",elementKey:"key_values",renderFunction:function(e){var n=e.find((function(e){return"endpoint"===e.key}));return n?n.env_override?n.env_override.value:n.value:""}}],itemActions:_,idField:"name",isLoading:!1,records:n,entityName:"endpoints",customPaperHeight:"calc(100vh - 750px)"})]})})]})},z=t(78687),K=(0,c.Z)((function(e){return(0,s.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},f.YI),f.Je),{},{settingsFormContainer:{display:"grid",gridTemplateColumns:"1fr",gridGap:"10px"}}))}))((function(e){var n=e.selectedConfiguration,t=e.classes,i=e.className,o=void 0===i?"":i,r=(0,C.TL)(),s=(0,h.s0)(),c=(0,h.TH)().pathname,f=void 0===c?"":c,m=f.substring(f.lastIndexOf("/")+1);m="settings"===m?"region":m;var x=(0,l.useState)([]),g=(0,a.Z)(x,2),b=g[0],w=g[1],_=(0,l.useState)(!1),S=(0,a.Z)(_,2),E=S[0],A=S[1],I=(0,l.useState)([]),T=(0,a.Z)(I,2),R=T[0],q=T[1],D=(0,l.useState)([]),M=(0,a.Z)(D,2),P=M[0],B=M[1],O=(0,l.useState)(!1),K=(0,a.Z)(O,2),H=K[0],V=K[1],$=(0,l.useState)({}),U=(0,a.Z)($,2),Y=U[0],G=U[1],X=(0,z.v9)((function(e){return e.system.loadingConfigurations}));(0,l.useEffect)((function(){r((0,k.Ie)(!0))}),[m,r]),(0,l.useEffect)((function(){if(X){var e=v()(n,"configuration_id",!1);if(e)return void F.h.configs.configInfo(e).then((function(n){B(n.data);var t=v()(n.data[0],"key_values",[]),i=u.DP[e].map((function(e){var n=t.find((function(n){return n.key===e.name})),i=(null===n||void 0===n?void 0:n.value)||"";return{key:e.name,value:e.customValueProcess?e.customValueProcess(i):i}}));q(i),G((0,u.F_)(i)),r((0,k.Ie)(!1))})).catch((function(e){r((0,k.Ie)(!1)),r((0,k.Ih)((0,N.g)(e.error)))}));r((0,k.Ie)(!1))}}),[X,n,r]),(0,l.useEffect)((function(){if(E){var e={key_values:(0,u.DD)(b)};F.h.configs.setConfig(n.configuration_id,e).then((function(e){A(!1),r((0,k.cN)(e.data.restart||!1)),r((0,k.Ie)(!0)),e.data.restart||r((0,k.y1)("Configuration saved successfully"))})).catch((function(e){A(!1),r((0,k.Ih)((0,N.g)(e.error)))}))}}),[E,r,n,b,s]);var Q=(0,l.useCallback)((function(e){w(e)}),[w]),J=function(){V(!0)};return(0,L.jsx)(l.Fragment,{children:(0,L.jsxs)("div",{onMouseMove:function(){r((0,k.Sc)("settings_".concat(n.configuration_label)))},children:[H&&(0,L.jsx)(Z.Z,{configurationName:n.configuration_id,closeResetModalAndRefresh:function(e){V(!1),r((0,k.cN)(e)),e&&r((0,k.Ie)(!0))},resetOpen:H}),X?(0,L.jsx)(d.ZP,{item:!0,xs:12,sx:{textAlign:"center",paddingTop:"15px"},children:(0,L.jsx)(p.aNw,{})}):(0,L.jsx)(y.Z,{sx:{padding:"15px",height:"100%"},children:"logger_webhook"===n.configuration_id||"audit_webhook"===n.configuration_id?(0,L.jsx)(W,{WebhookSettingslist:P,setResetConfigurationOpen:J,type:n.configuration_id}):(0,L.jsx)(l.Fragment,{children:(0,L.jsxs)("form",{noValidate:!0,onSubmit:function(e){e.preventDefault(),A(!0)},className:o,style:{height:"100%",display:"flex",flexFlow:"column"},children:[(0,L.jsx)(d.ZP,{item:!0,xs:12,className:t.settingsFormContainer,children:(0,L.jsx)(j.default,{fields:u.DP[n.configuration_id],onChange:Q,defaultVals:R,overrideEnv:Y})}),(0,L.jsxs)(d.ZP,{item:!0,xs:12,sx:{paddingTop:"15px ",textAlign:"right",maxHeight:"60px",display:"flex",alignItems:"center",justifyContent:"flex-end"},children:[(0,L.jsx)(p.zxk,{id:"restore-defaults",variant:"secondary",onClick:J,label:"Restore Defaults"}),"\xa0 \xa0",(0,L.jsx)(p.zxk,{id:"save",type:"submit",variant:"callAction",disabled:E,label:"Save"})]})]})})})]})})})),H=function(){var e=(0,h.TH)().pathname,n=void 0===e?"":e,t=n.substring(n.lastIndexOf("/")+1),i=u.bx.find((function(e){return e.configuration_id===t})),o="".concat(t);return(0,L.jsx)(p.rjZ,{item:!0,xs:12,sx:{height:"100%","& .identity_ldap, .api":{"& label":{minWidth:220,marginRight:0}}},children:i&&(0,L.jsx)(K,{className:"".concat(o),selectedConfiguration:i})})},V=t(56087),$=t(47974),U=t(9505),Y=t(45248),G=t(99779),X=t(27454),Q=function(){var e=(0,z.I0)(),n=(0,U.Z)((function(e){(0,Y.zZ)(new Blob([window.atob(e.value)]),"minio-server-config-".concat(G.ou.now().toFormat("LL-dd-yyyy-HH-mm-ss"),".conf"))}),(function(n){e((0,k.Ih)(n))})),t=(0,a.Z)(n,2),i=t[0],o=t[1];return(0,L.jsx)(X.Z,{tooltip:"Warning! The resulting file will contain server configuration information in plain text",children:(0,L.jsx)(p.zxk,{id:"export-config",onClick:function(){o("GET","api/v1/configs/export")},icon:(0,L.jsx)(p.rG2,{}),label:"Export",variant:"regular",disabled:i})})},J=function(){var e=(0,h.s0)(),n=(0,z.I0)(),t=(0,z.v9)((function(e){return e.system.serverNeedsRestart})),i=(0,l.useState)(void 0),o=(0,a.Z)(i,2),r=o[0],s=o[1],c=(0,l.useRef)(null),d=(0,U.Z)((function(e){n((0,k.cN)(!0)),s(!0)}),(function(e){n((0,k.Ih)(e))})),u=(0,a.Z)(d,2),f=u[0],m=u[1];(0,l.useEffect)((function(){!t&&r&&e(0)}),[t,r,e]);return(0,L.jsxs)(l.Fragment,{children:[(0,L.jsx)("input",{type:"file",onChange:function(e){if(null!==e&&void 0!==e&&null!==e.target.files&&void 0!==e.target.files){e.preventDefault();var n=(0,a.Z)(e.target.files,1)[0],t=new FormData,i=new Blob([n],{type:n.type});t.append("file",i,n.name),m("POST","api/v1/configs/import",t),e.target.value=""}},style:{display:"none"},ref:c}),(0,L.jsx)(X.Z,{tooltip:"The file must be valid and should have valid config values",children:(0,L.jsx)(p.zxk,{id:"import-config",onClick:function(){c&&c.current&&c.current.click()},icon:(0,L.jsx)(p._8t,{}),label:"Import",variant:"regular",disabled:f})})]})},ee=t(99670),ne=["region"],te=["cache"],ie=(0,c.Z)((function(e){return(0,s.Z)((0,r.Z)((0,r.Z)((0,r.Z)({settingsOptionsContainer:{display:"flex",flexDirection:"row",justifyContent:"flex-start",flexWrap:"wrap",border:"#E5E5E5 1px solid",borderRadius:2,backgroundColor:"#fff"}},f.qg),f.OR),f.Bz))}))((function(e){var n=e.classes,t=(0,h.TH)().pathname,r=void 0===t?"":t,s=(0,C.TL)(),c=(0,l.useState)([]),f=(0,a.Z)(c,2),b=f[0],v=f[1],j=(0,l.useCallback)((0,o.Z)((0,i.Z)().mark((function e(){return(0,i.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:F.h.configs.listConfig().then((function(e){var n;if(e&&null!==e&&void 0!==e&&e.data&&null!==e&&void 0!==e&&null!==(n=e.data)&&void 0!==n&&n.configurations){var t,i=((null===e||void 0===e||null===(t=e.data)||void 0===t?void 0:t.configurations)||[]).reduce((function(e,n){var t=n.key,i=void 0===t?"":t;return te.includes(i)||e.push(i),e}),[]);v(i)}})).catch((function(e){s((0,k.Ih)((0,N.g)(e)))}));case 1:case"end":return e.stop()}}),e)}))),[s]),Z=r.substring(r.lastIndexOf("/")+1);Z="settings"===Z?"region":Z,(0,l.useEffect)((function(){j(),s((0,k.Sc)("settings_Region"))}),[]);var w=u.bx.filter((function(e){var n=e.configuration_id;return ne.includes(n)||b.includes(n)||!b.length}));return(0,L.jsxs)(l.Fragment,{children:[(0,L.jsx)($.Z,{label:"Settings",actions:(0,L.jsx)(ee.Z,{})}),(0,L.jsxs)(p.Xgh,{children:[(0,L.jsx)(d.ZP,{item:!0,xs:12,children:(0,L.jsxs)("div",{id:"settings-container",className:n.settingsOptionsContainer,children:[(0,L.jsx)(g.Z,{icon:(0,L.jsx)(p.ewm,{}),title:"MinIO Configuration:",actions:(0,L.jsxs)(y.Z,{sx:{display:"flex",gap:2},children:[(0,L.jsx)(J,{}),(0,L.jsx)(Q,{})]})}),(0,L.jsx)(x.Z,{selectedTab:Z,isRouteTabs:!0,routes:(0,L.jsxs)(h.Z5,{children:[w.map((function(e){return(0,L.jsx)(h.AW,{path:"".concat(e.configuration_id),element:(0,L.jsx)(H,{})},"configItem-".concat(e.configuration_label))})),(0,L.jsx)(h.AW,{path:"/",element:(0,L.jsx)(h.Fg,{to:"".concat(V.gA.SETTINGS,"/region")})})]}),children:w.map((function(e){var n,t=e.configuration_id;return{tabConfig:{label:e.configuration_label,value:t,icon:e.icon,component:m.rU,to:(n=t,"".concat(V.gA.SETTINGS,"/").concat(n))}}}))})]})}),(0,L.jsx)(d.ZP,{item:!0,xs:12,sx:{paddingTop:"15px"},children:(0,L.jsx)(p.KfX,{title:"Learn more about Configurations",iconComponent:(0,L.jsx)(p.ewm,{}),help:(0,L.jsxs)(l.Fragment,{children:["MinIO supports a variety of configurations ranging from encryption, compression, region, notifications, etc.",(0,L.jsx)("br",{}),(0,L.jsx)("br",{}),"You can learn more at our"," ",(0,L.jsx)("a",{href:"https://min.io/docs/minio/linux/reference/minio-mc-admin/mc-admin-config.html?ref=con#id4",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})})]})]})}))},58493:function(e,n,t){t.d(n,{DD:function(){return b},DP:function(){return g},F_:function(){return y},_0:function(){return v},bx:function(){return x}});var i=t(4942),o=t(1413),a=t(93433),r=(t(72791),t(87569)),l=t(61809),s=t(31292),c=t(98095),d=t(67055),u=t(21141),f=t(36909),p=t(13901),h=t(29945),m=t(80184),x=[{icon:(0,m.jsx)(r.Z,{}),configuration_id:"region",configuration_label:"Region"},{icon:(0,m.jsx)(l.Z,{}),configuration_id:"compression",configuration_label:"Compression"},{icon:(0,m.jsx)(s.Z,{}),configuration_id:"api",configuration_label:"API"},{icon:(0,m.jsx)(c.Z,{}),configuration_id:"heal",configuration_label:"Heal"},{icon:(0,m.jsx)(d.Z,{}),configuration_id:"scanner",configuration_label:"Scanner"},{icon:(0,m.jsx)(u.Z,{}),configuration_id:"etcd",configuration_label:"Etcd"},{icon:(0,m.jsx)(p.Z,{}),configuration_id:"logger_webhook",configuration_label:"Logger Webhook"},{icon:(0,m.jsx)(f.Z,{}),configuration_id:"audit_webhook",configuration_label:"Audit Webhook"},{icon:(0,m.jsx)(h.I$E,{className:"MuiSvgIcon-root MuiSvgIcon-fontSizeMedium MuiTab-iconWrapper css-i4bv87-MuiSvgIcon-root",style:{width:24,height:24}}),configuration_id:"audit_kafka",configuration_label:"Audit Kafka"}],g={region:[{name:"name",required:!0,label:"Server Location",tooltip:'Name of the location of the server e.g. "us-west-rack2"',type:"string",placeholder:"e.g. us-west-rack-2"},{name:"comment",required:!1,label:"Comment",tooltip:"You can add a comment to this setting",type:"comment",placeholder:"Enter custom notes if any"}],compression:[{name:"extensions",required:!1,label:"Extensions",tooltip:'Extensions to compress e.g. ".txt", ".log" or ".csv" - you can write one per field',type:"csv",placeholder:"Enter an Extension",withBorder:!0},{name:"mime_types",required:!1,label:"Mime Types",tooltip:'Mime types e.g. "text/*", "application/json" or "application/xml" - you can write one per field',type:"csv",placeholder:"Enter a Mime Type",withBorder:!0}],api:[{name:"requests_max",required:!1,label:"Requests Max",tooltip:"Maximum number of concurrent requests, e.g. '1600'",type:"number",placeholder:"Enter Requests Max"},{name:"cors_allow_origin",required:!1,label:"Cors Allow Origin",tooltip:"List of origins allowed for CORS requests",type:"csv",placeholder:"Enter allowed origin e.g. https://example.com"},{name:"replication_workers",required:!1,label:"Replication Workers",tooltip:"Number of replication workers, defaults to 100",type:"number",placeholder:"Enter Replication Workers"},{name:"replication_failed_workers",required:!1,label:"Replication Failed Workers",tooltip:"Number of replication workers for recently failed replicas, defaults to 4",type:"number",placeholder:"Enter Replication Failed Workers"}],heal:[{name:"bitrotscan",required:!1,label:"Bitrot Scan",tooltip:"Perform bitrot scan on disks when checking objects during scanner",type:"on|off"},{name:"max_sleep",required:!1,label:"Max Sleep",tooltip:"Maximum sleep duration between objects to slow down heal operation, e.g. 2s",type:"duration",placeholder:"Enter Max Sleep Duration"},{name:"max_io",required:!1,label:"Max IO",tooltip:"Maximum IO requests allowed between objects to slow down heal operation, e.g. 3",type:"number",placeholder:"Enter Max IO"}],scanner:[{name:"delay",required:!1,label:"Delay Multiplier",tooltip:"Scanner delay multiplier, defaults to '10.0'",type:"number",placeholder:"Enter Delay"},{name:"max_wait",required:!1,label:"Max Wait",tooltip:"Maximum wait time between operations, defaults to '15s'",type:"duration",placeholder:"Enter Max Wait"},{name:"cycle",required:!1,label:"Cycle",tooltip:"Time duration between scanner cycles, defaults to '1m'",type:"duration",placeholder:"Enter Cycle"}],etcd:[{name:"endpoints",required:!0,label:"Endpoints",tooltip:'List of etcd endpoints e.g. "http://localhost:2379" - you can write one per field',type:"csv",placeholder:"Enter Endpoint"},{name:"path_prefix",required:!1,label:"Path Prefix",tooltip:'Namespace prefix to isolate tenants e.g. "customer1/"',type:"string",placeholder:"Enter Path Prefix"},{name:"coredns_path",required:!1,label:"Coredns Path",tooltip:'Shared bucket DNS records, default is "/skydns"',type:"string",placeholder:"Enter Coredns Path"},{name:"client_cert",required:!1,label:"Client Cert",tooltip:"Client cert for mTLS authentication",type:"string",placeholder:"Enter Client Cert"},{name:"client_cert_key",required:!1,label:"Client Cert Key",tooltip:"Client cert key for mTLS authentication",type:"string",placeholder:"Enter Client Cert Key"},{name:"comment",required:!1,label:"Comment",tooltip:"You can add a comment to this setting",type:"comment",multiline:!0,placeholder:"Enter custom notes if any"}],logger_webhook:[{name:"endpoint",required:!0,label:"Endpoint",type:"string",placeholder:"Enter Endpoint"},{name:"auth_token",required:!0,label:"Auth Token",type:"string",placeholder:"Enter Auth Token"}],audit_webhook:[{name:"endpoint",required:!0,label:"Endpoint",type:"string",placeholder:"Enter Endpoint"},{name:"auth_token",required:!0,label:"Auth Token",type:"string",placeholder:"Enter Auth Token"}],audit_kafka:[{name:"enable",required:!1,label:"Enable",tooltip:"Enable audit_kafka target",type:"on|off",customValueProcess:function(e){return""===e||"on"===e?"on":"off"}},{name:"brokers",required:!0,label:"Brokers",type:"csv",placeholder:"Enter Kafka Broker"},{name:"topic",required:!1,label:"Topic",type:"string",placeholder:"Enter Kafka Topic",tooltip:"Kafka topic used for bucket notifications"},{name:"sasl",required:!1,label:"Use SASL",tooltip:"Enable SASL (Simple Authentication and Security Layer) authentication",type:"on|off"},{name:"sasl_username",required:!1,label:"SASL Username",type:"string",placeholder:"Enter SASL Username",tooltip:"Username for SASL/PLAIN or SASL/SCRAM authentication"},{name:"sasl_password",required:!1,label:"SASL Password",type:"password",placeholder:"Enter SASL Password",tooltip:"Password for SASL/PLAIN or SASL/SCRAM authentication"},{name:"sasl_mechanism",required:!1,label:"SASL Mechanism",type:"string",placeholder:"Enter SASL Mechanism",tooltip:"SASL authentication mechanism"},{name:"tls",required:!1,label:"Use TLS",tooltip:"Enable TLS (Transport Layer Security)",type:"on|off"},{name:"tls_skip_verify",required:!1,label:"Skip TLS Verification",tooltip:"Trust server TLS without verification",type:"on|off"},{name:"client_tls_cert",required:!1,label:"Client Cert",tooltip:"Client cert for mTLS authentication",type:"string",placeholder:"Enter Client Cert"},{name:"client_tls_key",required:!1,label:"Client Cert Key",tooltip:"Client cert key for mTLS authentication",type:"string",placeholder:"Enter Client Cert Key"},{name:"tls_client_auth",required:!1,label:"TLS Client Auth",tooltip:"ClientAuth determines the Kafka server's policy for TLS client authorization",type:"string"},{name:"version",required:!1,label:"Version",tooltip:"Specify the version of the Kafka cluster",type:"string"}]},b=function(e){return e.filter((function(e){return""!==e.value}))},v=function(e,n,t){var i=e.target,o=i.value,r=i.checked,l=(0,a.Z)(t);return r?l.push(o):l=l.filter((function(e){return e!==o})),n(l),l},y=function(e){var n={};return e.forEach((function(e){if(e.env_override){var t={value:e.env_override.value,overrideEnv:e.env_override.name};n=(0,o.Z)((0,o.Z)({},n),{},(0,i.Z)({},e.key,t))}})),n}},90767:function(e,n,t){var i=t(29439),o=t(1413),a=t(72791),r=t(40986),l=t(51691),s=t(11135),c=t(25787),d=t(23814),u=t(23508),f=t(29945),p=t(87995),h=t(81551),m=t(31776),x=t(82342),g=t(80184);n.Z=(0,c.Z)((function(e){return(0,s.Z)((0,o.Z)({wrapText:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"}},d.Qw))}))((function(e){var n=e.classes,t=e.configurationName,o=e.closeResetModalAndRefresh,s=e.resetOpen,c=(0,h.TL)(),d=(0,a.useState)(!1),b=(0,i.Z)(d,2),v=b[0],y=b[1];(0,a.useEffect)((function(){v&&m.h.configs.resetConfig(t).then((function(){y(!1),o(!0)})).catch((function(e){y(!1),c((0,p.Ih)((0,x.g)(e.error)))}))}),[o,t,v,c]);return(0,g.jsx)(u.Z,{title:"Restore Defaults",confirmText:"Yes, Reset Configuration",isOpen:s,titleIcon:(0,g.jsx)(f.NvT,{}),isLoading:v,onConfirm:function(){y(!0)},onClose:function(){o(!1)},confirmationContent:(0,g.jsxs)(a.Fragment,{children:[v&&(0,g.jsx)(r.Z,{}),(0,g.jsxs)(l.Z,{children:["Are you sure you want to restore these configurations to default values?",(0,g.jsx)("br",{}),(0,g.jsx)("b",{className:n.wrapText,children:"Please note that this may cause your system to not be accessible"})]})]})})}))}}]); -//# sourceMappingURL=1432.30248eac.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/1432.30248eac.chunk.js.map b/portal-ui/build/static/js/1432.30248eac.chunk.js.map deleted file mode 100644 index b50704973..000000000 --- a/portal-ui/build/static/js/1432.30248eac.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/1432.30248eac.chunk.js","mappings":"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","sources":["screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Common/ScreenTitle/ScreenTitle.tsx","screens/Console/Common/VerticalTabs/VerticalTabs.tsx","screens/Console/EventDestinations/WebhookSettings/AddEndpointModal.tsx","screens/Console/EventDestinations/WebhookSettings/DeleteWebhookEndpoint.tsx","screens/Console/EventDestinations/WebhookSettings/EditWebhookEndpoint.tsx","screens/Console/EventDestinations/WebhookSettings/WebhookSettings.tsx","screens/Console/EventDestinations/CustomForms/EditConfiguration.tsx","screens/Console/Configurations/ConfigurationPanels/ConfigurationForm.tsx","screens/Console/Configurations/ConfigurationPanels/ExportConfigButton.tsx","screens/Console/Configurations/ConfigurationPanels/ImportConfigButton.tsx","screens/Console/Configurations/ConfigurationPanels/ConfigurationOptions.tsx","screens/Console/Configurations/utils.tsx","screens/Console/EventDestinations/CustomForms/ResetConfigurationModal.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input/Input\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n checked: boolean;\n switchOnly?: boolean;\n indicatorLabels?: string[];\n extraInputProps?: StandardInputProps[\"inputProps\"];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n indicatorLabelOn: {\n fontWeight: \"bold\",\n color: \"#081C42 !important\",\n },\n indicatorLabel: {\n fontSize: 12,\n color: \"#E2E2E2\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n tooltip: {\n fontSize: 16,\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles((theme) => ({\n root: {\n width: 50,\n height: 24,\n padding: 0,\n margin: 0,\n },\n switchBase: {\n padding: 1,\n \"&$checked\": {\n transform: \"translateX(24px)\",\n color: theme.palette.common.white,\n \"& + $track\": {\n backgroundColor: \"#4CCB92\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n border: \"none\",\n },\n },\n \"&$focusVisible $thumb\": {\n color: \"#4CCB92\",\n border: \"6px solid #fff\",\n },\n },\n thumb: {\n width: 22,\n height: 22,\n backgroundColor: \"#FAFAFA\",\n border: \"2px solid #FFFFFF\",\n marginLeft: 1,\n },\n track: {\n borderRadius: 24 / 2,\n backgroundColor: \"#E2E2E2\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n transition: theme.transitions.create([\"background-color\", \"border\"]),\n },\n checked: {},\n focusVisible: {},\n switchContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n}))(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n classes,\n indicatorLabels,\n extraInputProps = {},\n}: IFormSwitch) => {\n const switchComponent = (\n \n {!switchOnly && (\n \n {indicatorLabels && indicatorLabels.length > 1\n ? indicatorLabels[1]\n : \"OFF\"}\n \n )}\n \n {!switchOnly && (\n \n {indicatorLabels ? indicatorLabels[0] : \"ON\"}\n \n )}\n \n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n
\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n \n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { Theme } from \"@mui/material/styles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\n\ninterface IScreenTitle {\n icon?: any;\n title?: any;\n subTitle?: any;\n actions?: any;\n className?: any;\n}\n\nconst useStyles = makeStyles((theme: Theme) => ({\n headerBarIcon: {\n marginRight: \".7rem\",\n color: theme.palette.primary.main,\n \"& .min-icon\": {\n width: 44,\n height: 44,\n },\n \"@media (max-width: 600px)\": {\n display: \"none\",\n },\n },\n headerBarSubheader: {\n color: \"grey\",\n \"@media (max-width: 900px)\": {\n maxWidth: 200,\n },\n },\n stContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n padding: 8,\n\n borderBottom: \"1px solid #EAEAEA\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n titleColumn: {\n height: \"auto\",\n justifyContent: \"center\",\n display: \"flex\",\n flexFlow: \"column\",\n alignItems: \"flex-start\",\n \"& h1\": {\n fontSize: 19,\n },\n },\n leftItems: {\n display: \"flex\",\n alignItems: \"center\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n width: \"100%\",\n },\n },\n rightItems: {\n display: \"flex\",\n alignItems: \"center\",\n \"& button\": {\n marginLeft: 8,\n },\n \"@media (max-width: 600px)\": {\n width: \"100%\",\n },\n },\n}));\n\nconst ScreenTitle = ({\n icon,\n title,\n subTitle,\n actions,\n className,\n}: IScreenTitle) => {\n const classes = useStyles();\n return (\n \n \n
\n {icon ?
{icon}
: null}\n
\n

{title}

\n {subTitle}\n
\n
\n\n
{actions}
\n
\n \n );\n};\n\nexport default ScreenTitle;\n","import React, { useEffect, useState } from \"react\";\nimport { Box, Tab, TabProps } from \"@mui/material\";\nimport { TabContext, TabList, TabPanel } from \"@mui/lab\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Theme, useTheme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\nimport { useLocation } from \"react-router-dom\";\n\nexport type TabItemProps = {\n tabConfig: TabProps | any;\n content?: JSX.Element | JSX.Element[];\n};\n\ntype VerticalTabsProps = {\n classes: any;\n children: TabItemProps[];\n selectedTab?: string;\n routes?: any;\n isRouteTabs?: boolean;\n};\n\nconst styles = (theme: Theme) =>\n createStyles({\n tabsContainer: {\n display: \"flex\",\n height: \"100%\",\n width: \"100%\",\n },\n tabsHeaderContainer: {\n width: \"300px\",\n background: \"#F8F8F8\",\n borderRight: \"1px solid #EAEAEA\",\n \"& .MuiTabs-root\": {\n \"& .MuiTabs-indicator\": {\n display: \"none\",\n },\n \"& .MuiTab-root\": {\n display: \"flex\",\n flexFlow: \"row\",\n alignItems: \"center\",\n justifyContent: \"flex-start\",\n borderBottom: \"1px solid #EAEAEA\",\n \"& .MuiSvgIcon-root\": {\n marginRight: 8,\n marginBottom: 0,\n },\n \"&.Mui-selected\": {\n background: \"#E5E5E5\",\n fontWeight: 600,\n },\n },\n\n \"&. MuiTabs-scroller\": {\n display: \"none\",\n },\n },\n },\n tabContentContainer: {\n width: \"100%\",\n \"& .MuiTabPanel-root\": {\n height: \"100%\",\n },\n },\n tabPanel: {\n height: \"100%\",\n },\n /*Below md breakpoint make it horizontal and style it for scrolling tabs*/\n \"@media (max-width: 900px)\": {\n tabsContainer: {\n flexFlow: \"column\",\n flexDirection: \"column\",\n },\n tabsHeaderContainer: {\n width: \"100%\",\n borderBottom: \" 1px solid #EAEAEA\",\n \"& .MuiTabs-root .MuiTabs-scroller .MuiButtonBase-root\": {\n borderBottom: \" 0px\",\n },\n },\n },\n });\n\nconst tabStripStyle = {\n minHeight: 60,\n};\n\nconst VerticalTabs = ({\n children,\n classes,\n selectedTab = \"0\",\n routes,\n isRouteTabs,\n}: VerticalTabsProps) => {\n const theme = useTheme();\n const { pathname = \"\" } = useLocation();\n\n const isSmallScreen = useMediaQuery(theme.breakpoints.down(\"md\"));\n\n const [value, setValue] = useState(selectedTab);\n\n const headerList: TabProps[] = [];\n const contentList: React.ReactNode[] = [];\n useEffect(() => {\n if (isRouteTabs) {\n const tabConfigElement = children.find(\n (item) => item.tabConfig.to === pathname,\n );\n\n if (tabConfigElement) {\n setValue(tabConfigElement.tabConfig.value);\n }\n }\n }, [isRouteTabs, children, pathname]);\n\n if (!children) return null;\n\n children.forEach((child) => {\n headerList.push(child.tabConfig);\n contentList.push(child.content);\n });\n\n const handleChange = (event: React.SyntheticEvent, newValue: string) => {\n setValue(newValue);\n };\n\n return (\n \n \n \n \n {headerList.map((item, index) => {\n if (item) {\n return (\n \n );\n }\n return null;\n })}\n \n \n\n \n {!isRouteTabs\n ? contentList.map((item, index) => {\n return (\n \n {item ? item : null}\n \n );\n })\n : null}\n {isRouteTabs ? (\n
{routes}
\n ) : null}\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(VerticalTabs);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Button, Grid } from \"mds\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { Webhook } from \"@mui/icons-material\";\nimport { formFieldStyles } from \"../../Common/FormComponents/common/styleLibrary\";\nimport CallToActionIcon from \"@mui/icons-material/CallToAction\";\nimport PendingActionsIcon from \"@mui/icons-material/PendingActions\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { LinearProgress } from \"@mui/material\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IEndpointModal {\n open: boolean;\n type: string;\n onCloseEndpoint: () => void;\n}\n\nconst AddEndpointModal = ({ open, type, onCloseEndpoint }: IEndpointModal) => {\n const [name, setName] = useState(\"\");\n const [endpoint, setEndpoint] = useState(\"\");\n const [authToken, setAuthToken] = useState(\"\");\n const [saving, setSaving] = useState(false);\n const [invalidInputs, setInvalidInput] = useState([\n \"name\",\n \"endpoint\",\n ]);\n const [initialInputs, setInitialInputs] = useState([\n \"name\",\n \"endpoint\",\n \"auth-token\",\n ]);\n\n const dispatch = useAppDispatch();\n\n const saveWebhook = () => {\n if (saving) {\n return;\n }\n\n if (invalidInputs.length !== 0) {\n return;\n }\n\n if (name.trim() === \"\") {\n setInvalidInput([...invalidInputs, \"name\"]);\n\n return;\n }\n\n if (endpoint.trim() === \"\") {\n setInvalidInput([...invalidInputs, \"endpoint\"]);\n\n return;\n }\n\n setSaving(true);\n\n const payload = {\n key_values: [\n {\n key: \"endpoint\",\n value: endpoint,\n },\n {\n key: \"auth_token\",\n value: authToken,\n },\n ],\n arn_resource_id: name,\n };\n\n api.configs\n .setConfig(type, payload)\n .then((res) => {\n setSaving(false);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n\n onCloseEndpoint();\n dispatch(configurationIsLoading(true));\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const initializeInput = (name: string) => {\n setInitialInputs(initialInputs.filter((item) => item !== name));\n };\n\n const validateInput = (name: string, valid: boolean) => {\n if (invalidInputs.includes(name) && valid) {\n setInvalidInput(invalidInputs.filter((item) => item !== name));\n return;\n }\n\n if (!valid && !invalidInputs.includes(name)) {\n setInvalidInput([...invalidInputs, name]);\n }\n };\n\n let title = \"Add new Webhook\";\n let icon = ;\n\n switch (type) {\n case \"logger_webhook\":\n title = \"New Logger Webhook\";\n icon = ;\n break;\n case \"audit_webhook\":\n title = \"New Audit Webhook\";\n icon = ;\n break;\n }\n\n return (\n \n \n \n ) => {\n initializeInput(\"name\");\n setName(event.target.value);\n validateInput(\"name\", event.target.validity.valid);\n }}\n error={\n invalidInputs.includes(\"name\") && !initialInputs.includes(\"name\")\n ? \"Invalid Name\"\n : \"\"\n }\n label=\"Name\"\n value={name}\n pattern={\"^(?=.*[a-zA-Z0-9]).{1,}$\"}\n required\n />\n \n \n ) => {\n initializeInput(\"endpoint\");\n setEndpoint(event.target.value);\n validateInput(\"endpoint\", event.target.validity.valid);\n }}\n error={\n invalidInputs.includes(\"endpoint\") &&\n !initialInputs.includes(\"endpoint\")\n ? \"Invalid Endpoint set\"\n : \"\"\n }\n label=\"Endpoint\"\n value={endpoint}\n pattern={\n \"^(https?):\\\\/\\\\/([a-zA-Z0-9\\\\-.]+)(:[0-9]+)?(\\\\/[a-zA-Z0-9\\\\-.\\\\/]*)?$\"\n }\n required\n />\n \n \n ) => {\n initializeInput(\"auth-token\");\n setAuthToken(event.target.value);\n }}\n label=\"Auth Token\"\n value={authToken}\n />\n \n {saving && (\n \n \n \n )}\n \n \n \n \n \n \n );\n};\n\nexport default AddEndpointModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { DialogContentText } from \"@mui/material\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IDeleteWebhookEndpoint {\n modalOpen: boolean;\n onClose: () => void;\n selectedARN: string;\n type: string;\n}\n\nconst DeleteWebhookEndpoint = ({\n modalOpen,\n onClose,\n selectedARN,\n type,\n}: IDeleteWebhookEndpoint) => {\n const [deleteLoading, setDeleteLoading] = useState(false);\n\n const dispatch = useAppDispatch();\n\n useEffect(() => {\n if (deleteLoading) {\n api.configs\n .resetConfig(selectedARN)\n .then(() => {\n setDeleteLoading(false);\n dispatch(setServerNeedsRestart(true));\n dispatch(configurationIsLoading(true));\n onClose();\n })\n .catch((err) => {\n setDeleteLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [deleteLoading, dispatch, onClose, selectedARN]);\n\n const onConfirmDelete = () => {\n setDeleteLoading(true);\n };\n\n const defaultWH = !selectedARN.includes(\":\");\n\n let message = \"Are you sure you want to delete the Configured Endpoint\";\n\n // Main webhook, we just reset\n if (defaultWH) {\n message = \"Are you sure you want to reset the Default\";\n }\n\n return (\n }\n onClose={onClose}\n confirmationContent={\n \n {`${message} `}\n {selectedARN}?\n \n }\n />\n );\n};\n\nexport default DeleteWebhookEndpoint;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Button, ConsoleIcon, Grid, Tooltip } from \"mds\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { Webhook } from \"@mui/icons-material\";\nimport { formFieldStyles } from \"../../Common/FormComponents/common/styleLibrary\";\nimport CallToActionIcon from \"@mui/icons-material/CallToAction\";\nimport PendingActionsIcon from \"@mui/icons-material/PendingActions\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { LinearProgress } from \"@mui/material\";\nimport { IConfigurationSys } from \"../../Configurations/types\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport PredefinedList from \"../../Common/FormComponents/PredefinedList/PredefinedList\";\nimport { overrideFields } from \"../../Configurations/utils\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IEndpointModal {\n open: boolean;\n type: string;\n endpointInfo: IConfigurationSys;\n onCloseEndpoint: () => void;\n}\n\nconst EditEndpointModal = ({\n open,\n type,\n endpointInfo,\n onCloseEndpoint,\n}: IEndpointModal) => {\n const [name, setName] = useState(\"\");\n const [endpoint, setEndpoint] = useState(\"\");\n const [authToken, setAuthToken] = useState(\"\");\n const [endpointState, setEndpointState] = useState(\"on\");\n const [saving, setSaving] = useState(false);\n const [invalidInputs, setInvalidInput] = useState([]);\n\n const dispatch = useAppDispatch();\n\n useEffect(() => {\n if (endpointInfo) {\n const endpointLocate = endpointInfo.key_values.find(\n (key) => key.key === \"endpoint\",\n );\n const tokenLocate = endpointInfo.key_values.find(\n (key) => key.key === \"auth_token\",\n );\n const enable = endpointInfo.key_values.find(\n (key) => key.key === \"enable\",\n );\n\n let invalidInputs: string[] = [];\n\n if (endpointLocate) {\n const endpointValue = endpointLocate.value;\n\n if (endpointValue === \"\") {\n invalidInputs.push(\"endpoint\");\n } else {\n setEndpoint(endpointValue);\n }\n }\n\n if (tokenLocate) {\n const tokenValue = tokenLocate.value;\n\n if (tokenValue === \"\") {\n invalidInputs.push(\"auth-token\");\n } else {\n setAuthToken(tokenValue);\n }\n }\n\n if (enable) {\n if (enable.value === \"off\") {\n setEndpointState(enable.value);\n }\n }\n\n setName(endpointInfo.name || \"\");\n setInvalidInput(invalidInputs);\n }\n }, [endpointInfo]);\n\n const updateWebhook = () => {\n if (saving) {\n return;\n }\n\n if (invalidInputs.length !== 0) {\n return;\n }\n\n if (!endpoint || endpoint.trim() === \"\") {\n setInvalidInput([...invalidInputs, \"endpoint\"]);\n\n return;\n }\n\n setSaving(true);\n\n const payload = {\n key_values: [\n {\n key: \"endpoint\",\n value: endpoint,\n },\n {\n key: \"auth_token\",\n value: authToken,\n },\n {\n key: \"enable\",\n value: endpointState,\n },\n ],\n };\n\n api.configs\n .setConfig(name, payload)\n .then((res) => {\n setSaving(false);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n\n onCloseEndpoint();\n dispatch(configurationIsLoading(true));\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const validateInput = (name: string, valid: boolean) => {\n if (invalidInputs.includes(name) && valid) {\n setInvalidInput(invalidInputs.filter((item) => item !== name));\n return;\n }\n\n if (!valid && !invalidInputs.includes(name)) {\n setInvalidInput([...invalidInputs, name]);\n }\n };\n\n const defaultWH = !name.includes(\":\");\n const hasOverride = endpointInfo.key_values.filter(\n (itm) => !!itm.env_override,\n );\n\n const overrideValues = overrideFields(hasOverride);\n\n let title = \"Edit Webhook\";\n let icon = ;\n\n switch (type) {\n case \"logger_webhook\":\n title = `Edit ${defaultWH ? \" the Default \" : \"\"}Logger Webhook`;\n icon = ;\n break;\n case \"audit_webhook\":\n title = `Edit ${defaultWH ? \" the Default \" : \"\"}Audit Webhook`;\n icon = ;\n break;\n }\n\n if (hasOverride.length > 0) {\n title = \"View env variable Webhook\";\n }\n\n return (\n \n \n {hasOverride.length > 0 ? (\n \n \n \n \n \n \n \n }\n />\n \n \n \n \n \n \n \n }\n />\n \n \n \n \n \n \n \n }\n />\n \n \n ) : (\n \n \n ) => {\n const value = e.target.checked ? \"on\" : \"off\";\n setEndpointState(value);\n }}\n id={\"endpoint_enabled\"}\n name={\"endpoint_enabled\"}\n label={\"Enabled\"}\n value={\"switch_on\"}\n checked={endpointState === \"on\"}\n />\n \n \n ) => {\n setEndpoint(event.target.value);\n validateInput(\"endpoint\", event.target.validity.valid);\n }}\n error={\n invalidInputs.includes(\"endpoint\")\n ? \"Invalid Endpoint set\"\n : \"\"\n }\n label=\"Endpoint\"\n value={endpoint}\n pattern={\n \"^(https?):\\\\/\\\\/([a-zA-Z0-9\\\\-.]+)(:[0-9]+)?(\\\\/[a-zA-Z0-9\\\\-.\\\\/]*)?$\"\n }\n required\n />\n \n \n ) => {\n setAuthToken(event.target.value);\n }}\n label=\"Auth Token\"\n value={authToken}\n />\n \n {saving && (\n \n \n \n )}\n \n \n \n \n \n )}\n \n \n );\n};\n\nexport default EditEndpointModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { IConfigurationSys, IElementValue } from \"../../Configurations/types\";\nimport {\n Button,\n ConsoleIcon,\n DataTable,\n Grid,\n TierOfflineIcon,\n TierOnlineIcon,\n} from \"mds\";\nimport AddEndpointModal from \"./AddEndpointModal\";\nimport DeleteWebhookEndpoint from \"./DeleteWebhookEndpoint\";\nimport EditWebhookEndpoint from \"./EditWebhookEndpoint\";\nimport { Configuration } from \"api/consoleApi\";\n\ninterface WebhookSettingsProps {\n WebhookSettingslist: Configuration[];\n setResetConfigurationOpen: () => void;\n type: string;\n}\n\nconst WebhookSettings = ({\n setResetConfigurationOpen,\n WebhookSettingslist,\n type,\n}: WebhookSettingsProps) => {\n const [newEndpointOpen, setNewEndpointOpen] = useState(false);\n const [deleteWebhookOpen, setDeleteWebhookOpen] = useState(false);\n const [editWebhookOpen, setEditWebhookOpen] = useState(false);\n const [selectedARN, setSelectedARN] = useState(\"\");\n const [selectedEndpoint, setSelectedEndpoint] =\n useState(null);\n\n const renderEndpoint = (item: IElementValue[]) => {\n const endpointFilter = item.find((itm) => itm.key === \"endpoint\");\n\n if (endpointFilter) {\n if (endpointFilter.env_override) {\n return endpointFilter.env_override.value;\n }\n\n return endpointFilter.value;\n }\n\n return \"\";\n };\n\n const renderWebhookStatus = (item: IElementValue[]) => {\n const EnableFilter = item.find((itm) => itm.key === \"enable\");\n\n if (EnableFilter?.env_override) {\n const overrideEnabled =\n !EnableFilter?.env_override.value ||\n EnableFilter?.env_override.value === \"on\" ||\n !EnableFilter?.env_override.value\n ? \"Enabled\"\n : \"Disabled\";\n return (\n \n \n {overrideEnabled ? \"Enabled\" : \"Disabled\"}\n \n );\n }\n\n // If enable is not set, then enabled by default\n if (!EnableFilter || EnableFilter.value === \"on\" || !EnableFilter.value) {\n return (\n \n \n Enabled\n \n );\n }\n\n return (\n \n \n Disabled\n \n );\n };\n\n const onCloseDelete = () => {\n setDeleteWebhookOpen(false);\n setSelectedARN(\"\");\n };\n\n const onCloseEditWebhook = () => {\n setEditWebhookOpen(false);\n setSelectedEndpoint(null);\n };\n\n const actions = [\n {\n type: \"view\",\n onClick: (item: IConfigurationSys) => {\n if (item.name) {\n setEditWebhookOpen(true);\n setSelectedEndpoint(item);\n }\n },\n },\n {\n type: \"delete\",\n onClick: (item: IConfigurationSys) => {\n if (item.name) {\n setDeleteWebhookOpen(true);\n setSelectedARN(item.name);\n }\n },\n disableButtonFunction: (item: string) => {\n const wHook = WebhookSettingslist.find(\n (element) => element.name === item,\n );\n\n if (wHook) {\n const hasOverride = wHook.key_values?.filter(\n (itm) => !!itm.env_override,\n );\n\n // Has override values, we cannot delete.\n if (hasOverride && hasOverride.length > 0) {\n return true;\n }\n\n return false;\n }\n return false;\n },\n },\n ];\n return (\n \n {newEndpointOpen && (\n {\n setNewEndpointOpen(false);\n }}\n />\n )}\n {deleteWebhookOpen && (\n \n )}\n {editWebhookOpen && selectedEndpoint && (\n \n )}\n \n {\n setNewEndpointOpen(true);\n }}\n >\n New Endpoint\n \n \n \n \n

Currently Configured Endpoints

\n \n
\n
\n
\n );\n};\nexport default WebhookSettings;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { Button, Loader } from \"mds\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Box } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport ConfTargetGeneric from \"../ConfTargetGeneric\";\n\nimport {\n fieldBasic,\n settingsCommon,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport {\n fieldsConfigurations,\n overrideFields,\n removeEmptyFields,\n} from \"../../Configurations/utils\";\nimport {\n IConfigurationElement,\n IElementValue,\n IOverrideEnv,\n KVField,\n} from \"../../Configurations/types\";\nimport ResetConfigurationModal from \"./ResetConfigurationModal\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setHelpName,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport WebhookSettings from \"../WebhookSettings/WebhookSettings\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { Configuration, ConfigurationKV } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...settingsCommon,\n settingsFormContainer: {\n display: \"grid\",\n gridTemplateColumns: \"1fr\",\n gridGap: \"10px\",\n },\n });\n\ninterface IAddNotificationEndpointProps {\n selectedConfiguration: IConfigurationElement;\n classes: any;\n className?: string;\n}\n\nconst EditConfiguration = ({\n selectedConfiguration,\n classes,\n className = \"\",\n}: IAddNotificationEndpointProps) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const { pathname = \"\" } = useLocation();\n\n let selConfigTab = pathname.substring(pathname.lastIndexOf(\"/\") + 1);\n selConfigTab = selConfigTab === \"settings\" ? \"region\" : selConfigTab;\n\n //Local States\n const [valuesObj, setValueObj] = useState([]);\n const [saving, setSaving] = useState(false);\n const [configValues, setConfigValues] = useState([]);\n const [configSubsysList, setConfigSubsysList] = useState([]);\n const [resetConfigurationOpen, setResetConfigurationOpen] =\n useState(false);\n const [overrideEnvs, setOverrideEnvs] = useState({});\n\n const loadingConfig = useSelector(\n (state: AppState) => state.system.loadingConfigurations,\n );\n\n useEffect(() => {\n dispatch(configurationIsLoading(true));\n }, [selConfigTab, dispatch]);\n\n useEffect(() => {\n if (loadingConfig) {\n const configId = get(selectedConfiguration, \"configuration_id\", false);\n\n if (configId) {\n api.configs\n .configInfo(configId)\n .then((res) => {\n setConfigSubsysList(res.data);\n let values: ConfigurationKV[] = get(res.data[0], \"key_values\", []);\n\n const fieldsConfig: KVField[] = fieldsConfigurations[configId];\n\n const keyVals = fieldsConfig.map((field) => {\n const includedValue = values.find(\n (element: ConfigurationKV) => element.key === field.name,\n );\n const customValue = includedValue?.value || \"\";\n\n return {\n key: field.name,\n value: field.customValueProcess\n ? field.customValueProcess(customValue)\n : customValue,\n };\n });\n\n setConfigValues(keyVals);\n setOverrideEnvs(overrideFields(keyVals));\n dispatch(configurationIsLoading(false));\n })\n .catch((err) => {\n dispatch(configurationIsLoading(false));\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n\n return;\n }\n dispatch(configurationIsLoading(false));\n }\n }, [loadingConfig, selectedConfiguration, dispatch]);\n\n useEffect(() => {\n if (saving) {\n const payload = {\n key_values: removeEmptyFields(valuesObj),\n };\n api.configs\n .setConfig(selectedConfiguration.configuration_id, payload)\n .then((res) => {\n setSaving(false);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n dispatch(configurationIsLoading(true));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [saving, dispatch, selectedConfiguration, valuesObj, navigate]);\n\n //Fetch Actions\n const submitForm = (event: React.FormEvent) => {\n event.preventDefault();\n setSaving(true);\n };\n\n const onValueChange = useCallback(\n (newValue: IElementValue[]) => {\n setValueObj(newValue);\n },\n [setValueObj],\n );\n\n const continueReset = (restart: boolean) => {\n setResetConfigurationOpen(false);\n dispatch(setServerNeedsRestart(restart));\n if (restart) {\n dispatch(configurationIsLoading(true));\n }\n };\n\n const resetConfigurationMOpen = () => {\n setResetConfigurationOpen(true);\n };\n\n return (\n \n {\n dispatch(\n setHelpName(\n `settings_${selectedConfiguration.configuration_label}`,\n ),\n );\n }}\n >\n {resetConfigurationOpen && (\n \n )}\n {loadingConfig ? (\n \n \n \n ) : (\n \n {selectedConfiguration.configuration_id === \"logger_webhook\" ||\n selectedConfiguration.configuration_id === \"audit_webhook\" ? (\n \n ) : (\n \n \n \n \n \n \n \n    \n \n \n \n \n )}\n \n )}\n \n \n );\n};\n\nexport default withStyles(styles)(EditConfiguration);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport { Grid } from \"mds\";\nimport { configurationElements } from \"../utils\";\nimport EditConfiguration from \"../../EventDestinations/CustomForms/EditConfiguration\";\n\nconst ConfigurationsList = () => {\n const { pathname = \"\" } = useLocation();\n\n const configName = pathname.substring(pathname.lastIndexOf(\"/\") + 1);\n\n const validActiveConfig = configurationElements.find(\n (element) => element.configuration_id === configName,\n );\n const containerClassName = `${configName}`;\n return (\n \n {validActiveConfig && (\n \n )}\n \n );\n};\n\nexport default ConfigurationsList;\n","import React from \"react\";\nimport { Button, UploadIcon } from \"mds\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport { performDownload } from \"../../../../common/utils\";\nimport { DateTime } from \"luxon\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useDispatch } from \"react-redux\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst ExportConfigButton = () => {\n const dispatch = useDispatch();\n const [isReqLoading, invokeApi] = useApi(\n (res: any) => {\n //base64 encoded information so decode before downloading.\n performDownload(\n new Blob([window.atob(res.value)]),\n `minio-server-config-${DateTime.now().toFormat(\n \"LL-dd-yyyy-HH-mm-ss\",\n )}.conf`,\n );\n },\n (err) => {\n dispatch(setErrorSnackMessage(err));\n },\n );\n\n return (\n \n {\n invokeApi(\"GET\", `api/v1/configs/export`);\n }}\n icon={}\n label={\"Export\"}\n variant={\"regular\"}\n disabled={isReqLoading}\n />\n \n );\n};\n\nexport default ExportConfigButton;\n","import React, { Fragment, useEffect, useRef, useState } from \"react\";\nimport { Button, DownloadIcon } from \"mds\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../../systemSlice\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport { AppState } from \"../../../../store\";\n\nconst ImportConfigButton = () => {\n const navigate = useNavigate();\n const dispatch = useDispatch();\n\n const needsRestart = useSelector(\n (state: AppState) => state.system.serverNeedsRestart,\n );\n\n const [refreshPage, setRefreshPage] = useState(\n undefined,\n );\n const fileUpload = useRef(null);\n\n const [isReqLoading, invokeApi] = useApi(\n (res: any) => {\n //base64 encoded information so decode before downloading.\n dispatch(setServerNeedsRestart(true)); //import should refreshPage as per mc.\n setRefreshPage(true);\n },\n (err) => {\n dispatch(setErrorSnackMessage(err));\n },\n );\n\n useEffect(() => {\n if (!needsRestart && refreshPage) {\n navigate(0); // refresh the page.\n }\n }, [needsRestart, refreshPage, navigate]);\n\n const handleUploadButton = (e: any) => {\n if (\n e === null ||\n e === undefined ||\n e.target.files === null ||\n e.target.files === undefined\n ) {\n return;\n }\n e.preventDefault();\n const [fileToUpload] = e.target.files;\n\n const formData = new FormData();\n const blobFile = new Blob([fileToUpload], { type: fileToUpload.type });\n\n formData.append(\"file\", blobFile, fileToUpload.name);\n // @ts-ignore\n invokeApi(\"POST\", `api/v1/configs/import`, formData);\n\n e.target.value = \"\";\n };\n\n return (\n \n \n \n {\n if (fileUpload && fileUpload.current) {\n fileUpload.current.click();\n }\n }}\n icon={}\n label={\"Import\"}\n variant={\"regular\"}\n disabled={isReqLoading}\n />\n \n \n );\n};\n\nexport default ImportConfigButton;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport Grid from \"@mui/material/Grid\";\n\nimport { configurationElements } from \"../utils\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport { HelpBox, PageLayout, SettingsIcon } from \"mds\";\nimport { Link, Navigate, Route, Routes, useLocation } from \"react-router-dom\";\nimport VerticalTabs from \"../../Common/VerticalTabs/VerticalTabs\";\nimport ScreenTitle from \"../../Common/ScreenTitle/ScreenTitle\";\nimport ConfigurationForm from \"./ConfigurationForm\";\nimport { IAM_PAGES } from \"../../../../common/SecureComponent/permissions\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport ExportConfigButton from \"./ExportConfigButton\";\nimport ImportConfigButton from \"./ImportConfigButton\";\nimport { Box } from \"@mui/material\";\nimport HelpMenu from \"../../HelpMenu\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"../../../../api\";\nimport { IElement } from \"../types\";\nimport { errorToHandler } from \"../../../../api/errors\";\n\ninterface IConfigurationOptions {\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n settingsOptionsContainer: {\n display: \"flex\" as const,\n flexDirection: \"row\" as const,\n justifyContent: \"flex-start\" as const,\n flexWrap: \"wrap\" as const,\n border: \"#E5E5E5 1px solid\",\n borderRadius: 2,\n backgroundColor: \"#fff\",\n },\n ...searchField,\n ...actionsTray,\n ...containerForHeader,\n });\n\nconst getRoutePath = (path: string) => {\n return `${IAM_PAGES.SETTINGS}/${path}`;\n};\n\n// region is not part of config subsystem list.\nconst NON_SUB_SYS_CONFIG_ITEMS = [\"region\"];\nconst IGNORED_CONFIG_SUB_SYS = [\"cache\"]; // cache config is not supported.\n\nconst ConfigurationOptions = ({ classes }: IConfigurationOptions) => {\n const { pathname = \"\" } = useLocation();\n const dispatch = useAppDispatch();\n\n const [configSubSysList, setConfigSubSysList] = useState([]);\n const fetchConfigSubSysList = useCallback(async () => {\n api.configs\n .listConfig() // get a list of available config subsystems.\n .then((res) => {\n if (res && res?.data && res?.data?.configurations) {\n const confSubSysList = (res?.data?.configurations || []).reduce(\n (acc: string[], { key = \"\" }) => {\n if (!IGNORED_CONFIG_SUB_SYS.includes(key)) {\n acc.push(key);\n }\n return acc;\n },\n [],\n );\n\n setConfigSubSysList(confSubSysList);\n }\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n });\n }, [dispatch]);\n\n let selConfigTab = pathname.substring(pathname.lastIndexOf(\"/\") + 1);\n selConfigTab = selConfigTab === \"settings\" ? \"region\" : selConfigTab;\n useEffect(() => {\n fetchConfigSubSysList();\n dispatch(setHelpName(\"settings_Region\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const availableConfigSubSys = configurationElements.filter(\n ({ configuration_id }: IElement) => {\n return (\n NON_SUB_SYS_CONFIG_ITEMS.includes(configuration_id) ||\n configSubSysList.includes(configuration_id) ||\n !configSubSysList.length\n );\n },\n );\n\n return (\n \n } />\n \n \n \n }\n title={\"MinIO Configuration:\"}\n actions={\n \n \n \n \n }\n />\n \n {availableConfigSubSys.map((element) => (\n }\n />\n ))}\n }\n />\n \n }\n >\n {availableConfigSubSys.map((element) => {\n const { configuration_id, configuration_label, icon } = element;\n return {\n tabConfig: {\n label: configuration_label,\n value: configuration_id,\n icon: icon,\n component: Link,\n to: getRoutePath(configuration_id),\n },\n };\n })}\n \n \n \n \n }\n help={\n \n MinIO supports a variety of configurations ranging from\n encryption, compression, region, notifications, etc.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(ConfigurationOptions);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport PublicIcon from \"@mui/icons-material/Public\";\nimport CompressIcon from \"@mui/icons-material/Compress\";\nimport CodeIcon from \"@mui/icons-material/Code\";\nimport LocalHospitalIcon from \"@mui/icons-material/LocalHospital\";\nimport FindReplaceIcon from \"@mui/icons-material/FindReplace\";\nimport VpnKeyIcon from \"@mui/icons-material/VpnKey\";\nimport PendingActionsIcon from \"@mui/icons-material/PendingActions\";\nimport CallToActionIcon from \"@mui/icons-material/CallToAction\";\nimport { IElement, IElementValue, IOverrideEnv, OverrideValue } from \"./types\";\nimport { LogsIcon } from \"mds\";\n\nexport const configurationElements: IElement[] = [\n {\n icon: ,\n configuration_id: \"region\",\n configuration_label: \"Region\",\n },\n {\n icon: ,\n configuration_id: \"compression\",\n configuration_label: \"Compression\",\n },\n {\n icon: ,\n configuration_id: \"api\",\n configuration_label: \"API\",\n },\n {\n icon: ,\n configuration_id: \"heal\",\n configuration_label: \"Heal\",\n },\n {\n icon: ,\n configuration_id: \"scanner\",\n configuration_label: \"Scanner\",\n },\n {\n icon: ,\n configuration_id: \"etcd\",\n configuration_label: \"Etcd\",\n },\n {\n icon: ,\n configuration_id: \"logger_webhook\",\n configuration_label: \"Logger Webhook\",\n },\n {\n icon: ,\n configuration_id: \"audit_webhook\",\n configuration_label: \"Audit Webhook\",\n },\n {\n icon: (\n \n ),\n configuration_id: \"audit_kafka\",\n configuration_label: \"Audit Kafka\",\n },\n];\n\nexport const fieldsConfigurations: any = {\n region: [\n {\n name: \"name\",\n required: true,\n label: \"Server Location\",\n tooltip: 'Name of the location of the server e.g. \"us-west-rack2\"',\n type: \"string\",\n placeholder: \"e.g. us-west-rack-2\",\n },\n {\n name: \"comment\",\n required: false,\n label: \"Comment\",\n tooltip: \"You can add a comment to this setting\",\n type: \"comment\",\n placeholder: \"Enter custom notes if any\",\n },\n ],\n compression: [\n {\n name: \"extensions\",\n required: false,\n label: \"Extensions\",\n tooltip:\n 'Extensions to compress e.g. \".txt\", \".log\" or \".csv\" - you can write one per field',\n type: \"csv\",\n placeholder: \"Enter an Extension\",\n withBorder: true,\n },\n {\n name: \"mime_types\",\n required: false,\n label: \"Mime Types\",\n tooltip:\n 'Mime types e.g. \"text/*\", \"application/json\" or \"application/xml\" - you can write one per field',\n type: \"csv\",\n placeholder: \"Enter a Mime Type\",\n withBorder: true,\n },\n ],\n api: [\n {\n name: \"requests_max\",\n required: false,\n label: \"Requests Max\",\n tooltip: \"Maximum number of concurrent requests, e.g. '1600'\",\n type: \"number\",\n placeholder: \"Enter Requests Max\",\n },\n {\n name: \"cors_allow_origin\",\n required: false,\n label: \"Cors Allow Origin\",\n tooltip: \"List of origins allowed for CORS requests\",\n type: \"csv\",\n placeholder: \"Enter allowed origin e.g. https://example.com\",\n },\n {\n name: \"replication_workers\",\n required: false,\n label: \"Replication Workers\",\n tooltip: \"Number of replication workers, defaults to 100\",\n type: \"number\",\n placeholder: \"Enter Replication Workers\",\n },\n {\n name: \"replication_failed_workers\",\n required: false,\n label: \"Replication Failed Workers\",\n tooltip:\n \"Number of replication workers for recently failed replicas, defaults to 4\",\n type: \"number\",\n placeholder: \"Enter Replication Failed Workers\",\n },\n ],\n heal: [\n {\n name: \"bitrotscan\",\n required: false,\n label: \"Bitrot Scan\",\n tooltip:\n \"Perform bitrot scan on disks when checking objects during scanner\",\n type: \"on|off\",\n },\n {\n name: \"max_sleep\",\n required: false,\n label: \"Max Sleep\",\n tooltip:\n \"Maximum sleep duration between objects to slow down heal operation, e.g. 2s\",\n type: \"duration\",\n placeholder: \"Enter Max Sleep Duration\",\n },\n {\n name: \"max_io\",\n required: false,\n label: \"Max IO\",\n tooltip:\n \"Maximum IO requests allowed between objects to slow down heal operation, e.g. 3\",\n type: \"number\",\n placeholder: \"Enter Max IO\",\n },\n ],\n scanner: [\n {\n name: \"delay\",\n required: false,\n label: \"Delay Multiplier\",\n tooltip: \"Scanner delay multiplier, defaults to '10.0'\",\n type: \"number\",\n placeholder: \"Enter Delay\",\n },\n {\n name: \"max_wait\",\n required: false,\n label: \"Max Wait\",\n tooltip: \"Maximum wait time between operations, defaults to '15s'\",\n type: \"duration\",\n placeholder: \"Enter Max Wait\",\n },\n {\n name: \"cycle\",\n required: false,\n label: \"Cycle\",\n tooltip: \"Time duration between scanner cycles, defaults to '1m'\",\n type: \"duration\",\n placeholder: \"Enter Cycle\",\n },\n ],\n etcd: [\n {\n name: \"endpoints\",\n required: true,\n label: \"Endpoints\",\n tooltip:\n 'List of etcd endpoints e.g. \"http://localhost:2379\" - you can write one per field',\n type: \"csv\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"path_prefix\",\n required: false,\n label: \"Path Prefix\",\n tooltip: 'Namespace prefix to isolate tenants e.g. \"customer1/\"',\n type: \"string\",\n placeholder: \"Enter Path Prefix\",\n },\n {\n name: \"coredns_path\",\n required: false,\n label: \"Coredns Path\",\n tooltip: 'Shared bucket DNS records, default is \"/skydns\"',\n type: \"string\",\n placeholder: \"Enter Coredns Path\",\n },\n {\n name: \"client_cert\",\n required: false,\n label: \"Client Cert\",\n tooltip: \"Client cert for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_cert_key\",\n required: false,\n label: \"Client Cert Key\",\n tooltip: \"Client cert key for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert Key\",\n },\n {\n name: \"comment\",\n required: false,\n label: \"Comment\",\n tooltip: \"You can add a comment to this setting\",\n type: \"comment\",\n multiline: true,\n placeholder: \"Enter custom notes if any\",\n },\n ],\n logger_webhook: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n type: \"string\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n required: true,\n label: \"Auth Token\",\n type: \"string\",\n placeholder: \"Enter Auth Token\",\n },\n ],\n audit_webhook: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n type: \"string\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n required: true,\n label: \"Auth Token\",\n type: \"string\",\n placeholder: \"Enter Auth Token\",\n },\n ],\n audit_kafka: [\n {\n name: \"enable\",\n required: false,\n label: \"Enable\",\n tooltip: \"Enable audit_kafka target\",\n type: \"on|off\",\n customValueProcess: (origValue: string) => {\n return origValue === \"\" || origValue === \"on\" ? \"on\" : \"off\";\n },\n },\n {\n name: \"brokers\",\n required: true,\n label: \"Brokers\",\n type: \"csv\",\n placeholder: \"Enter Kafka Broker\",\n },\n {\n name: \"topic\",\n required: false,\n label: \"Topic\",\n type: \"string\",\n placeholder: \"Enter Kafka Topic\",\n tooltip: \"Kafka topic used for bucket notifications\",\n },\n {\n name: \"sasl\",\n required: false,\n label: \"Use SASL\",\n tooltip:\n \"Enable SASL (Simple Authentication and Security Layer) authentication\",\n type: \"on|off\",\n },\n {\n name: \"sasl_username\",\n required: false,\n label: \"SASL Username\",\n type: \"string\",\n placeholder: \"Enter SASL Username\",\n tooltip: \"Username for SASL/PLAIN or SASL/SCRAM authentication\",\n },\n {\n name: \"sasl_password\",\n required: false,\n label: \"SASL Password\",\n type: \"password\",\n placeholder: \"Enter SASL Password\",\n tooltip: \"Password for SASL/PLAIN or SASL/SCRAM authentication\",\n },\n {\n name: \"sasl_mechanism\",\n required: false,\n label: \"SASL Mechanism\",\n type: \"string\",\n placeholder: \"Enter SASL Mechanism\",\n tooltip: \"SASL authentication mechanism\",\n },\n {\n name: \"tls\",\n required: false,\n label: \"Use TLS\",\n tooltip: \"Enable TLS (Transport Layer Security)\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n required: false,\n label: \"Skip TLS Verification\",\n tooltip: \"Trust server TLS without verification\",\n type: \"on|off\",\n },\n {\n name: \"client_tls_cert\",\n required: false,\n label: \"Client Cert\",\n tooltip: \"Client cert for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_tls_key\",\n required: false,\n label: \"Client Cert Key\",\n tooltip: \"Client cert key for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert Key\",\n },\n {\n name: \"tls_client_auth\",\n required: false,\n label: \"TLS Client Auth\",\n tooltip:\n \"ClientAuth determines the Kafka server's policy for TLS client authorization\",\n type: \"string\",\n },\n {\n name: \"version\",\n required: false,\n label: \"Version\",\n tooltip: \"Specify the version of the Kafka cluster\",\n type: \"string\",\n },\n ],\n};\n\nexport const removeEmptyFields = (formFields: IElementValue[]) => {\n const nonEmptyFields = formFields.filter((field) => field.value !== \"\");\n\n return nonEmptyFields;\n};\n\nexport const selectSAs = (\n e: React.ChangeEvent,\n setSelectedSAs: Function,\n selectedSAs: string[],\n) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedSAs]; // We clone the selectedSAs array\n if (checked) {\n // If the user has checked this field we need to push this to selectedSAs\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n setSelectedSAs(elements);\n return elements;\n};\n\nexport const overrideFields = (formFields: IElementValue[]): IOverrideEnv => {\n let overrideReturn: IOverrideEnv = {};\n\n formFields.forEach((envItem) => {\n // it has override values, we construct the value\n if (envItem.env_override) {\n const value: OverrideValue = {\n value: envItem.env_override.value,\n overrideEnv: envItem.env_override.name,\n };\n\n overrideReturn = { ...overrideReturn, [envItem.key]: value };\n }\n });\n\n return overrideReturn;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\n\nimport { DialogContentText, LinearProgress } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { deleteDialogStyles } from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n wrapText: {\n maxWidth: \"200px\",\n whiteSpace: \"normal\",\n wordWrap: \"break-word\",\n },\n ...deleteDialogStyles,\n });\n\ninterface IResetConfiguration {\n classes: any;\n configurationName: string;\n closeResetModalAndRefresh: (reloadConfiguration: boolean) => void;\n\n resetOpen: boolean;\n}\n\nconst ResetConfigurationModal = ({\n classes,\n configurationName,\n closeResetModalAndRefresh,\n resetOpen,\n}: IResetConfiguration) => {\n const dispatch = useAppDispatch();\n const [resetLoading, setResetLoading] = useState(false);\n\n useEffect(() => {\n if (resetLoading) {\n api.configs\n .resetConfig(configurationName)\n .then(() => {\n setResetLoading(false);\n closeResetModalAndRefresh(true);\n })\n .catch((err) => {\n setResetLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [closeResetModalAndRefresh, configurationName, resetLoading, dispatch]);\n\n const resetConfiguration = () => {\n setResetLoading(true);\n };\n\n return (\n }\n isLoading={resetLoading}\n onConfirm={resetConfiguration}\n onClose={() => {\n closeResetModalAndRefresh(false);\n }}\n confirmationContent={\n \n {resetLoading && }\n \n Are you sure you want to restore these configurations to default\n values?\n
\n \n Please note that this may cause your system to not be accessible\n \n
\n
\n }\n />\n );\n};\n\nexport default withStyles(styles)(ResetConfigurationModal);\n"],"names":["StyledSwitch","withStyles","theme","root","width","height","padding","margin","switchBase","transform","color","palette","common","white","backgroundColor","boxShadow","opacity","border","thumb","marginLeft","track","borderRadius","transition","transitions","create","checked","focusVisible","switchContainer","display","alignItems","justifyContent","Switch","createStyles","_objectSpread","indicatorLabelOn","fontWeight","indicatorLabel","fontSize","fieldDescription","marginTop","tooltip","actionsTray","fieldBasic","_ref","_ref$label","label","onChange","value","id","name","_ref$checked","_ref$disabled","disabled","_ref$switchOnly","switchOnly","_ref$tooltip","_ref$description","description","classes","indicatorLabels","_ref$extraInputProps","extraInputProps","switchComponent","_jsxs","React","children","_jsx","className","clsx","_defineProperty","length","inputProps","disableRipple","disableFocusRipple","disableTouchRipple","Grid","container","item","xs","sm","md","InputLabel","htmlFor","inputLabel","tooltipContainer","Tooltip","title","placement","HelpIcon","textAlign","Typography","component","useStyles","makeStyles","headerBarIcon","marginRight","primary","main","headerBarSubheader","maxWidth","stContainer","borderBottom","flexFlow","titleColumn","leftItems","rightItems","icon","subTitle","actions","concat","style","tabStripStyle","minHeight","tabsContainer","tabsHeaderContainer","background","borderRight","marginBottom","tabContentContainer","tabPanel","flexDirection","_ref$selectedTab","selectedTab","routes","isRouteTabs","useTheme","_useLocation$pathname","useLocation","pathname","isSmallScreen","useMediaQuery","breakpoints","down","_useState","useState","_useState2","_slicedToArray","setValue","headerList","contentList","useEffect","tabConfigElement","find","tabConfig","to","forEach","child","push","content","TabContext","Box","TabList","event","newValue","orientation","variant","scrollButtons","tabList","map","index","Tab","tabHeader","focusRipple","TabPanel","open","type","onCloseEndpoint","setName","_useState3","_useState4","endpoint","setEndpoint","_useState5","_useState6","authToken","setAuthToken","_useState7","_useState8","saving","setSaving","_useState9","_useState10","invalidInputs","setInvalidInput","_useState11","_useState12","initialInputs","setInitialInputs","dispatch","useAppDispatch","initializeInput","filter","validateInput","valid","includes","_toConsumableArray","Webhook","CallToActionIcon","PendingActionsIcon","Fragment","ModalWrapper","modalOpen","onClose","titleIcon","sx","formFieldStyles","formFieldRow","InputBoxWrapper","target","validity","error","pattern","required","LinearProgress","Button","onClick","trim","payload","key_values","key","arn_resource_id","api","configs","setConfig","then","res","setServerNeedsRestart","data","restart","setSnackBarMessage","configurationIsLoading","catch","err","setErrorSnackMessage","errorToHandler","selectedARN","deleteLoading","setDeleteLoading","resetConfig","defaultWH","message","ConfirmDialog","confirmText","isOpen","isLoading","onConfirm","ConfirmDeleteIcon","confirmationContent","DialogContentText","_overrideValues$enabl","_overrideValues$endpo","_overrideValues$auth_","endpointInfo","endpointState","setEndpointState","endpointLocate","tokenLocate","enable","endpointValue","tokenValue","hasOverride","itm","env_override","overrideValues","overrideFields","PredefinedList","actionButton","paddingRight","overrideEnv","ConsoleIcon","auth_token","FormSwitchWrapper","e","setResetConfigurationOpen","WebhookSettingslist","newEndpointOpen","setNewEndpointOpen","deleteWebhookOpen","setDeleteWebhookOpen","editWebhookOpen","setEditWebhookOpen","setSelectedARN","selectedEndpoint","setSelectedEndpoint","disableButtonFunction","wHook","element","_wHook$key_values","AddEndpointModal","DeleteWebhookEndpoint","EditWebhookEndpoint","DataTable","columns","elementKey","renderFunction","EnableFilter","overrideEnabled","justifyItems","fill","TierOfflineIcon","TierOnlineIcon","endpointFilter","itemActions","idField","records","entityName","customPaperHeight","settingsCommon","settingsFormContainer","gridTemplateColumns","gridGap","selectedConfiguration","_ref$className","navigate","useNavigate","selConfigTab","substring","lastIndexOf","valuesObj","setValueObj","configValues","setConfigValues","configSubsysList","setConfigSubsysList","resetConfigurationOpen","overrideEnvs","setOverrideEnvs","loadingConfig","useSelector","state","system","loadingConfigurations","configId","get","configInfo","values","keyVals","fieldsConfigurations","field","includedValue","customValue","customValueProcess","removeEmptyFields","configuration_id","onValueChange","useCallback","resetConfigurationMOpen","onMouseMove","setHelpName","configuration_label","ResetConfigurationModal","configurationName","closeResetModalAndRefresh","resetOpen","paddingTop","Loader","WebhookSettings","noValidate","onSubmit","preventDefault","ConfTargetGeneric","fields","defaultVals","maxHeight","configName","validActiveConfig","configurationElements","containerClassName","minWidth","EditConfiguration","useDispatch","_useApi","useApi","performDownload","Blob","window","atob","DateTime","now","toFormat","_useApi2","isReqLoading","invokeApi","TooltipWrapper","UploadIcon","needsRestart","serverNeedsRestart","undefined","refreshPage","setRefreshPage","fileUpload","useRef","files","fileToUpload","formData","FormData","blobFile","append","ref","current","click","DownloadIcon","NON_SUB_SYS_CONFIG_ITEMS","IGNORED_CONFIG_SUB_SYS","settingsOptionsContainer","flexWrap","searchField","containerForHeader","configSubSysList","setConfigSubSysList","fetchConfigSubSysList","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","listConfig","_res$data","configurations","_res$data2","confSubSysList","reduce","acc","_ref3","_ref3$key","stop","availableConfigSubSys","_ref4","PageHeaderWrapper","HelpMenu","PageLayout","ScreenTitle","SettingsIcon","gap","ImportConfigButton","ExportConfigButton","VerticalTabs","Routes","Route","path","ConfigurationForm","Navigate","IAM_PAGES","SETTINGS","Link","HelpBox","iconComponent","help","href","rel","PublicIcon","CompressIcon","CodeIcon","LocalHospitalIcon","FindReplaceIcon","VpnKeyIcon","LogsIcon","region","placeholder","compression","withBorder","heal","scanner","etcd","multiline","logger_webhook","audit_webhook","audit_kafka","origValue","formFields","selectSAs","setSelectedSAs","selectedSAs","targetD","elements","overrideReturn","envItem","wrapText","whiteSpace","wordWrap","deleteDialogStyles","resetLoading","setResetLoading"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1516.216550a5.chunk.js b/portal-ui/build/static/js/1516.216550a5.chunk.js deleted file mode 100644 index 45c4eeb4b..000000000 --- a/portal-ui/build/static/js/1516.216550a5.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1516],{57314:function(e,n,t){var i=t(1413),r=t(72791),s=t(61889),o=t(30829),a=t(20068),l=t(27391),c=t(11135),x=t(25787),u=t(23814),d=t(29945),p=t(80184);n.Z=(0,x.Z)((function(e){return(0,c.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},u.YI),u.Hr),{},{inputLabel:(0,i.Z)((0,i.Z)({},u.YI.inputLabel),{},{fontSize:14,margin:0,alignItems:"flex-start",paddingTop:"20px",flexWrap:"wrap",display:"flex"}),textBoxContainer:{flexGrow:1,position:"relative"},cssOutlinedInput:{borderColor:"#EAEAEA",padding:16},rootContainer:{"& .MuiOutlinedInput-inputMultiline":(0,i.Z)((0,i.Z)({},u.YI.inputLabel),{},{fontSize:13,minHeight:150}),"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:"#07193E",borderWidth:1},"& textarea":{color:"#07193E",fontSize:13,fontWeight:600,"&:placeholder":{color:"#858585",opacity:1,fontWeight:400}}}}))}))((function(e){var n=e.label,t=e.onChange,i=e.value,c=e.id,x=e.name,u=e.disabled,f=void 0!==u&&u,h=e.tooltip,g=void 0===h?"":h,m=e.index,j=void 0===m?0:m,b=e.error,v=void 0===b?"":b,Z=e.required,y=void 0!==Z&&Z,w=e.placeholder,k=void 0===w?"":w,C=e.classes,I={"data-index":j};return(0,p.jsx)(r.Fragment,{children:(0,p.jsxs)(s.ZP,{item:!0,xs:12,className:"".concat(C.fieldContainer," ").concat(""!==v?C.errorInField:""),children:[""!==n&&(0,p.jsxs)(o.Z,{htmlFor:c,className:C.inputLabel,children:[(0,p.jsxs)("span",{children:[n,y?"*":""]}),""!==g&&(0,p.jsx)("div",{className:C.tooltipContainer,children:(0,p.jsx)(a.Z,{title:g,placement:"top-start",children:(0,p.jsx)("div",{className:C.tooltip,children:(0,p.jsx)(d.byK,{})})})})]}),(0,p.jsx)("div",{className:C.textBoxContainer,children:(0,p.jsx)(l.Z,{id:c,name:x,fullWidth:!0,value:i,disabled:f,onChange:t,multiline:!0,rows:5,inputProps:I,error:""!==v,helperText:v,placeholder:k,InputLabelProps:{shrink:!0},InputProps:{classes:{notchedOutline:C.cssOutlinedInput,root:C.rootContainer}},variant:"outlined"})})]})})}))},21435:function(e,n,t){var i=t(29439),r=t(1413),s=t(72791),o=t(27391),a=t(61889),l=t(30829),c=t(20068),x=t(13400),u=t(20165),d=t(3579),p=t(11135),f=t(72455),h=t(25787),g=t(23814),m=t(29945),j=t(28182),b=t(80184),v=(0,f.Z)((function(e){return(0,p.Z)((0,r.Z)({},g.gM))}));function Z(e){var n=v();return(0,b.jsx)(o.Z,(0,r.Z)({InputProps:{classes:n}},e))}n.Z=(0,h.Z)((function(e){return(0,p.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},g.YI),g.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var n=e.label,t=e.onChange,o=e.value,p=e.id,f=e.name,h=e.type,g=void 0===h?"text":h,v=e.autoComplete,y=void 0===v?"off":v,w=e.disabled,k=void 0!==w&&w,C=e.multiline,I=void 0!==C&&C,S=e.tooltip,L=void 0===S?"":S,T=e.index,z=void 0===T?0:T,F=e.error,N=void 0===F?"":F,P=e.required,A=void 0!==P&&P,E=e.placeholder,B=void 0===E?"":E,K=e.min,R=e.max,W=e.overlayId,O=e.overlayIcon,_=void 0===O?null:O,M=e.overlayObject,U=void 0===M?null:M,G=e.extraInputProps,H=void 0===G?{}:G,Y=e.overlayAction,D=e.noLabelMinWidth,q=void 0!==D&&D,V=e.pattern,Q=void 0===V?"":V,X=e.autoFocus,J=void 0!==X&&X,$=e.classes,ee=e.className,ne=void 0===ee?"":ee,te=e.onKeyPress,ie=e.onFocus,re=e.onPaste,se=(0,r.Z)({"data-index":z},H),oe=(0,s.useState)(!1),ae=(0,i.Z)(oe,2),le=ae[0],ce=ae[1];"number"===g&&K&&(se.min=K),"number"===g&&R&&(se.max=R),""!==Q&&(se.pattern=Q);var xe=_,ue=g;return"password"===g&&null===_&&(xe=le?(0,b.jsx)(u.Z,{}):(0,b.jsx)(d.Z,{}),ue=le?"text":"password"),(0,b.jsx)(s.Fragment,{children:(0,b.jsxs)(a.ZP,{container:!0,className:(0,j.Z)(""!==ne?ne:"",""!==N?$.errorInField:$.inputBoxContainer),children:[""!==n&&(0,b.jsxs)(l.Z,{htmlFor:p,className:q?$.noMinWidthLabel:$.inputLabel,children:[(0,b.jsxs)("span",{children:[n,A?"*":""]}),""!==L&&(0,b.jsx)("div",{className:$.tooltipContainer,children:(0,b.jsx)(c.Z,{title:L,placement:"top-start",children:(0,b.jsx)("div",{className:$.tooltip,children:(0,b.jsx)(m.byK,{})})})})]}),(0,b.jsxs)("div",{className:$.textBoxContainer,children:[(0,b.jsx)(Z,{id:p,name:f,fullWidth:!0,value:o,autoFocus:J,disabled:k,onChange:t,type:ue,multiline:I,autoComplete:y,inputProps:se,error:""!==N,helperText:N,placeholder:B,className:$.inputRebase,onKeyPress:te,onFocus:ie,onPaste:re}),xe&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==n?"withLabel":""),children:(0,b.jsx)(x.Z,{onClick:Y?function(){Y()}:function(){return ce(!le)},id:W,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:xe})}),U&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==n?"withLabel":""),children:U})]})]})})}))},90673:function(e,n,t){var i=t(1413),r=t(72791),s=t(61889),o=t(886),a=t(30829),l=t(20068),c=t(68096),x=t(58406),u=t(77865),d=t(11135),p=t(25787),f=t(23814),h=t(29945),g=t(80184),m=(0,p.Z)((function(e){return(0,d.Z)({root:{height:38,lineHeight:1,"label + &":{marginTop:e.spacing(3)}},input:{height:38,position:"relative",color:"#07193E",fontSize:13,fontWeight:600,padding:"8px 20px 10px 10px",border:"#e5e5e5 1px solid",borderRadius:4,display:"flex",alignItems:"center","&:hover":{borderColor:"#393939"},"&:focus":{backgroundColor:"#fff"}}})}))(o.ZP);n.Z=(0,p.Z)((function(e){return(0,d.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},f.YI),f.Hr),{},{fieldContainer:{display:"flex","@media (max-width: 600px)":{flexFlow:"column"}}}))}))((function(e){var n=e.classes,t=e.id,i=e.name,o=e.onChange,d=e.options,p=e.label,f=e.tooltip,j=void 0===f?"":f,b=e.value,v=e.disabled,Z=void 0!==v&&v;return(0,g.jsx)(r.Fragment,{children:(0,g.jsxs)(s.ZP,{item:!0,xs:12,className:n.fieldContainer,children:[""!==p&&(0,g.jsxs)(a.Z,{htmlFor:t,className:n.inputLabel,children:[(0,g.jsx)("span",{children:p}),""!==j&&(0,g.jsx)("div",{className:n.tooltipContainer,children:(0,g.jsx)(l.Z,{title:j,placement:"top-start",children:(0,g.jsx)("div",{className:n.tooltip,children:(0,g.jsx)(h.byK,{})})})})]}),(0,g.jsx)(c.Z,{fullWidth:!0,children:(0,g.jsx)(x.Z,{id:t,name:i,value:b,onChange:o,input:(0,g.jsx)(m,{}),disabled:Z,children:d.map((function(e){return(0,g.jsx)(u.Z,{value:e.value,children:e.label},"select-".concat(i,"-").concat(e.label))}))})})]})})}))},51516:function(e,n,t){t.r(n),t.d(n,{default:function(){return se}});var i=t(29439),r=t(1413),s=t(72791),o=t(11135),a=t(23814),l=t(25787),c=t(64554),x=t(81207),u=t(78687),d=t(87995),p=t(81551),f=t(18073),h=t(43896),g=t(19847),m=t(61889),j=t(50533),b=t(29945),v=t(81159),Z=t(21435),y=t(74440),w=t(80184),k=function(e){var n=e.icon,t=void 0===n?null:n,i=e.title;return(0,w.jsxs)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-start"},children:[t,(0,w.jsx)("div",{className:"title-text",children:i})]})},C=function(e){var n=e.email;return(0,w.jsxs)(s.Fragment,{children:[(0,w.jsx)(y.Z,{email:n}),(0,w.jsx)(m.ZP,{item:!0,xs:12,marginTop:"25px",children:(0,w.jsxs)(c.Z,{sx:{padding:"20px","& a":{color:"#2781B0",cursor:"pointer"}},children:["Login to"," ",(0,w.jsx)(j.Z,{href:"https://subnet.min.io",target:"_blank",style:{color:"#2781B0",cursor:"pointer"},children:"SUBNET"})," ","to avail support for this MinIO cluster"]})})]})},I=function(){var e="mc admin config set {alias} subnet proxy={proxy}",n=(0,s.useState)(!1),t=(0,i.Z)(n,2),r=t[0],o=t[1];return(0,w.jsx)(s.Fragment,{children:(0,w.jsxs)(c.Z,{sx:{border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",padding:"23px",marginTop:"40px",alignItems:"start",justifyContent:"space-between"},children:[(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column"},children:[(0,w.jsxs)(c.Z,{sx:{display:"flex","& .min-icon":{height:"22px",width:"22px"}},children:[(0,w.jsx)(b.ewm,{}),(0,w.jsx)("div",{style:{marginLeft:"10px",fontWeight:600},children:"Proxy Configuration"})]}),(0,w.jsxs)(c.Z,{sx:{marginTop:"10px",marginBottom:"10px",fontSize:"14px"},children:["For airgap/firewalled environments it is possible to"," ",(0,w.jsx)(j.Z,{style:{color:"#2781B0",cursor:"pointer"},href:"https://min.io/docs/minio/linux/reference/minio-mc-admin/mc-admin-config.html?ref=con",target:"_blank",children:"configure a proxy"})," ","to connect to SUBNET ."]}),(0,w.jsx)(c.Z,{children:r&&(0,w.jsx)(Z.Z,{disabled:!0,id:"subnetProxy",name:"subnetProxy",placeholder:"",onChange:function(){},label:"",value:e,overlayIcon:(0,w.jsx)(b.TIy,{}),extraInputProps:{readOnly:!0},overlayAction:function(){return navigator.clipboard.writeText(e)}})})]}),(0,w.jsx)(c.Z,{sx:{display:"flex"},children:(0,w.jsx)(v.Z,{value:"enableProxy",id:"enableProxy",name:"enableProxy",checked:r,onChange:function(e){o(e.target.checked)}})})]})})},S=t(3579),L=t(20165),T=t(30403),z=t(23508),F=t(9505),N=(0,l.Z)((function(e){return(0,o.Z)((0,r.Z)((0,r.Z)({sizedLabel:{minWidth:"75px"}},a.Bz),a.bK))}))((function(e){var n=e.open,t=e.closeModal,r=e.classes,o=e.onSet,a=(0,p.TL)(),l=(0,s.useState)(""),x=(0,i.Z)(l,2),u=x[0],f=x[1],h=(0,s.useState)(""),g=(0,i.Z)(h,2),m=g[0],j=g[1],v=(0,s.useState)(!1),y=(0,i.Z)(v,2),k=y[0],C=y[1],I=(0,s.useState)(""),N=(0,i.Z)(I,2),P=N[0],A=N[1],E=(0,s.useState)(""),B=(0,i.Z)(E,2),K=B[0],R=B[1],W=(0,F.Z)((function(e){e.mfa_token?A(e.mfa_token):e.access_token?M("GET","/api/v1/subnet/apikey?token=".concat(e.access_token)):(o(e.apiKey),t())}),(function(e){a((0,d.Ih)(e)),t(),f(""),j(""),C(!1),A(""),R("")})),O=(0,i.Z)(W,2),_=O[0],M=O[1],U=function(){return(0,w.jsxs)(c.Z,{sx:{width:500},children:[(0,w.jsx)(Z.Z,{className:r.spacerBottom,classes:{inputLabel:r.sizedLabel},id:"subnet-email",name:"subnet-email",onChange:function(e){return f(e.target.value)},label:"Email",value:u,overlayIcon:(0,w.jsx)(b.oyc,{})}),(0,w.jsx)(Z.Z,{className:r.spacerBottom,classes:{inputLabel:r.sizedLabel},id:"subnet-password",name:"subnet-password",onChange:function(e){return j(e.target.value)},label:"Password",type:k?"text":"password",value:m,overlayIcon:k?(0,w.jsx)(L.Z,{}):(0,w.jsx)(S.Z,{}),overlayAction:function(){return C(!k)}})]})},G=function(){return(0,w.jsx)(c.Z,{sx:{display:"flex"},children:(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,w.jsx)(c.Z,{sx:{fontSize:"16px",display:"flex",flexFlow:"column",marginTop:"30px",marginBottom:"30px"},children:"Two-Factor Authentication"}),(0,w.jsx)(c.Z,{children:"Please enter the 6-digit verification code that was sent to your email address. This code will be valid for 5 minutes."}),(0,w.jsx)(c.Z,{sx:{flex:"1",marginTop:"30px"},children:(0,w.jsx)(Z.Z,{overlayIcon:(0,w.jsx)(T.Z,{}),id:"subnet-otp",name:"subnet-otp",onChange:function(e){return R(e.target.value)},placeholder:"",label:"",value:K})}),(0,w.jsx)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"}})]})})};return n?(0,w.jsx)(z.Z,{title:"Get API Key from SUBNET",confirmText:"Get API Key",isOpen:n,titleIcon:(0,w.jsx)(b.szr,{}),isLoading:_,cancelText:"Cancel",onConfirm:function(){""!==P?M("POST","/api/v1/subnet/login/mfa",{username:u,otp:K,mfa_token:P}):M("POST","/api/v1/subnet/login",{username:u,password:m})},onClose:t,confirmButtonProps:{variant:"callAction",disabled:!u||!m||_,hidden:!0},cancelButtonProps:{disabled:_},confirmationContent:""===P?U():G()}):null})),P=function(e){var n=e.icon,t=e.description;return(0,w.jsxs)(c.Z,{sx:{display:"flex","& .min-icon":{marginRight:"10px",height:"23px",width:"23px",marginBottom:"10px"}},children:[n," ",(0,w.jsx)("div",{style:{fontSize:"14px",fontStyle:"italic",color:"#5E5E5E"},children:t})]})},A=function(e){var n=e.hasMargin,t=void 0===n||n;return(0,w.jsxs)(c.Z,{sx:{flex:1,border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"20px",marginLeft:{xs:"0px",sm:"0px",md:t?"30px":""},marginTop:{xs:"0px",sm:t?"30px":""}},children:[(0,w.jsxs)(c.Z,{sx:{fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center",marginBottom:"16px","& .min-icon":{height:"21px",width:"21px",marginRight:"15px"}},children:[(0,w.jsx)(b.M9A,{}),(0,w.jsx)("div",{children:"Why should I register?"})]}),(0,w.jsx)(c.Z,{sx:{fontSize:"14px",marginBottom:"15px"},children:"Registering this cluster with the MinIO Subscription Network (SUBNET) provides the following benefits in addition to the commercial license and SLA backed support."}),(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column"},children:[(0,w.jsx)(P,{icon:(0,w.jsx)(b._qw,{}),description:"Call Home Monitoring"}),(0,w.jsx)(P,{icon:(0,w.jsx)(b.toM,{}),description:"Health Diagnostics"}),(0,w.jsx)(P,{icon:(0,w.jsx)(b.Fsz,{}),description:"Performance Analysis"}),(0,w.jsx)(P,{icon:(0,w.jsx)(b.EQx,{}),description:(0,w.jsx)(j.Z,{href:"https://min.io/signup?ref=con",target:"_blank",sx:{color:"#2781B0",cursor:"pointer"},children:"More Features"})})]})]})},E=t(57689),B=t(56087),K=(0,l.Z)((function(e){return(0,o.Z)((0,r.Z)({sizedLabel:{minWidth:"75px"}},a.bK))}))((function(e){var n=e.classes,t=e.registerEndpoint,r=(0,E.s0)(),o=(0,s.useState)(!1),a=(0,i.Z)(o,2),l=a[0],u=a[1],f=(0,s.useState)(""),h=(0,i.Z)(f,2),g=h[0],m=h[1],j=(0,s.useState)(!1),v=(0,i.Z)(j,2),y=v[0],C=v[1],I=(0,s.useState)(!1),S=(0,i.Z)(I,2),L=S[0],T=S[1],z=(0,p.TL)(),F=(0,s.useCallback)((function(){if(!y){C(!0);var e={apiKey:g};x.Z.invoke("POST",t,e).then((function(e){C(!1),e&&e.registered&&(z((0,d.cN)(!0)),r(B.gA.LICENSE))})).catch((function(e){z((0,d.Ih)(e)),C(!1),P()}))}}),[g,z,y,t,r]);(0,s.useEffect)((function(){L&&F()}),[L,F]);var P=function(){m(""),T(!1)};return(0,w.jsxs)(s.Fragment,{children:[(0,w.jsx)(c.Z,{sx:{"& .title-text":{marginLeft:"27px",fontWeight:600}},children:(0,w.jsx)(k,{icon:(0,w.jsx)(b.dRy,{}),title:"Register cluster with API key"})}),(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:{xs:"column",md:"row"}},children:[(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,w.jsx)(c.Z,{sx:{fontSize:"16px",display:"flex",flexFlow:"column",marginTop:"30px",marginBottom:"30px"},children:"Use your MinIO Subscription Network API Key to register this cluster."}),(0,w.jsxs)(c.Z,{sx:{flex:"1"},children:[(0,w.jsx)(Z.Z,{className:n.spacerBottom,classes:{inputLabel:n.sizedLabel},id:"api-key",name:"api-key",onChange:function(e){return m(e.target.value)},label:"API Key",value:g}),(0,w.jsxs)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end","& button":{marginLeft:"8px"}},children:[(0,w.jsx)(b.zxk,{id:"get-from-subnet",variant:"regular",className:n.spacerRight,disabled:y,onClick:function(){return u(!0)},label:"Get from SUBNET"}),(0,w.jsx)(b.zxk,{id:"register",type:"submit",variant:"callAction",disabled:y||0===g.trim().length,onClick:function(){return F()},label:"Register"}),(0,w.jsx)(N,{open:l,closeModal:function(){return u(!1)},onSet:function(e){m(e),T(!0)}})]})]})]}),(0,w.jsx)(A,{})]})]})})),R=t(74165),W=t(15861),O=t(36825),_=t(96382),M=t(38442),U=(0,_.hg)("register/fetchLicenseInfo",function(){var e=(0,W.Z)((0,R.Z)().mark((function e(n,t){var i,r,s,o;return(0,R.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=t.getState,r=t.dispatch,s=i(),o=(0,M.F)(B.C3,B.LC[B.gA.LICENSE],!0),!s.register.loadingLicenseInfo){e.next=6;break}return e.abrupt("return");case 6:o?(r((0,O.pI)(!0)),x.Z.invoke("GET","/api/v1/subnet/info").then((function(e){r((0,O.aO)(e)),r((0,O.Dr)(!0)),r((0,O.pI)(!1))})).catch((function(e){e.detailedError.toLowerCase()!=="License is not present".toLowerCase()&&e.detailedError.toLowerCase()!=="license not found".toLowerCase()&&r((0,d.Ih)(e)),r((0,O.Dr)(!1)),r((0,O.pI)(!1))}))):r((0,O.pI)(!1));case 7:case"end":return e.stop()}}),e)})));return function(n,t){return e.apply(this,arguments)}}()),G=(0,_.hg)("register/callRegister",function(){var e=(0,W.Z)((0,R.Z)().mark((function e(n,t){var i,r;return(0,R.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:i=t.dispatch,r={token:n.token,account_id:n.account_id},x.Z.invoke("POST","/api/v1/subnet/register",r).then((function(){i((0,O.K4)(!1)),i((0,d.cN)(!0)),i((0,O.jS)()),i(U())})).catch((function(e){i((0,d.Ih)(e)),i((0,O.K4)(!1))}));case 3:case"end":return e.stop()}}),e)})));return function(n,t){return e.apply(this,arguments)}}()),H=(0,_.hg)("register/subnetLoginWithMFA",function(){var e=(0,W.Z)((0,R.Z)().mark((function e(n,t){var i,r,s,o,a,l,c;return(0,R.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=t.getState,t.rejectWithValue,r=t.dispatch,s=i(),o=s.register.subnetEmail,a=s.register.subnetMFAToken,l=s.register.subnetOTP,!s.register.loading){e.next=8;break}return e.abrupt("return");case 8:r((0,O.K4)(!0)),c={username:o,otp:l,mfa_token:a},x.Z.invoke("POST","/api/v1/subnet/login/mfa",c).then((function(e){r((0,O.K4)(!1)),e&&e.access_token&&e.organizations.length>0&&(1===e.organizations.length?r(G({token:e.access_token,account_id:e.organizations[0].accountId.toString()})):(r((0,O.t2)(e.access_token)),r((0,O.dl)(e.organizations)),r((0,O.wK)(e.organizations[0].accountId.toString()))))})).catch((function(e){r((0,d.Ih)(e)),r((0,O.K4)(!1)),r((0,O.Z7)(""))}));case 11:case"end":return e.stop()}}),e)})));return function(n,t){return e.apply(this,arguments)}}()),Y=(0,_.hg)("register/subnetLogin",function(){var e=(0,W.Z)((0,R.Z)().mark((function e(n,t){var i,r,s,o,a,l,c;return(0,R.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=t.getState,t.rejectWithValue,r=t.dispatch,s=i(),o=s.register.license,a=s.register.subnetPassword,l=s.register.subnetEmail,!s.register.loading){e.next=8;break}return e.abrupt("return");case 8:r((0,O.K4)(!0)),c={username:l,password:a,apiKey:o},x.Z.invoke("POST","/api/v1/subnet/login",c).then((function(e){r((0,O.K4)(!1)),e&&e.registered?(r((0,O.jS)()),r(U())):e&&e.mfa_token?r((0,O.dK)(e.mfa_token)):e&&e.access_token&&e.organizations.length>0&&(r((0,O.t2)(e.access_token)),r((0,O.dl)(e.organizations)),r((0,O.wK)(e.organizations[0].accountId.toString())))})).catch((function(e){r((0,d.Ih)(e)),r((0,O.K4)(!1)),r((0,O.jS)())}));case 11:case"end":return e.stop()}}),e)})));return function(n,t){return e.apply(this,arguments)}}()),D=t(27454),q=t(78029),V=t.n(q),Q=t(57314),X=function(){var e=(0,p.TL)(),n=(0,u.v9)((function(e){return e.register.subnetRegToken})),t=(0,u.v9)((function(e){return e.register.clusterRegistered})),r=(0,u.v9)((function(e){return e.register.licenseInfo})),o="https://subnet.min.io/cluster/register?token=".concat(n),a=(0,s.useState)(""),l=(0,i.Z)(a,2),x=l[0],f=l[1],h=(0,F.Z)((function(){e(U()),e((0,d.cN)(!0))}),(function(n){e((0,d.Ih)(n))})),g=(0,i.Z)(h,2),m=g[0],v=g[1];return(0,w.jsx)(s.Fragment,{children:(0,w.jsx)(c.Z,{sx:{border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"43px"},children:t&&r?(0,w.jsx)(C,{email:r.email}):(0,w.jsxs)(s.Fragment,{children:[(0,w.jsx)(c.Z,{sx:{"& .title-text":{marginLeft:"27px",fontWeight:600}},children:(0,w.jsx)(k,{icon:(0,w.jsx)(b.YL8,{}),title:"Register cluster in an Air-gap environment"})}),(0,w.jsxs)(c.Z,{sx:{display:"flex"},children:[(0,w.jsx)(c.Z,{sx:{display:"flex",flexFlow:"column",flex:"2",marginTop:"15px","& .step-number":{color:"#ffffff",height:"25px",width:"25px",background:"#081C42",marginRight:"10px",textAlign:"center",fontWeight:600,borderRadius:"50%"},"& .step-row":{fontSize:"16px",display:"flex",marginTop:"15px",marginBottom:"15px"}},children:(0,w.jsxs)(c.Z,{children:[(0,w.jsx)(c.Z,{className:"step-row",children:(0,w.jsx)("div",{className:"step-text",children:"Click on the link to register this cluster in SUBNET and get a License Key for this Air-Gap deployment"})}),(0,w.jsxs)(c.Z,{sx:{flex:"1",display:"flex",alignItems:"center",gap:3},children:[(0,w.jsx)(j.Z,{style:{color:"#2781B0",cursor:"pointer"},color:"inherit",href:o,target:"_blank",children:"https://subnet.min.io/cluster/register"}),(0,w.jsx)(D.Z,{tooltip:"Copy to Clipboard",children:(0,w.jsx)(V(),{text:o,children:(0,w.jsx)(b.zxk,{type:"button",id:"copy-ult-to-clip-board",icon:(0,w.jsx)(b.TIy,{}),color:"primary",variant:"regular"})})})]}),(0,w.jsx)("div",{style:{marginTop:"25px",fontSize:"14px",fontStyle:"italic",color:"#5E5E5E"},children:"Note: If this machine does not have internet connection, Copy paste the following URL in a browser where you access SUBNET and follow the instructions to complete the registration"}),(0,w.jsxs)(c.Z,{sx:{marginTop:"25px",display:"flex",flexDirection:"column"},children:[(0,w.jsxs)("label",{style:{fontWeight:"bold",marginBottom:"10px"},children:["Paste the License Key"," "]}),(0,w.jsx)(Q.Z,{value:x,disabled:m,label:"",id:"licenseKey",name:"licenseKey",placeholder:"License Key",onChange:function(e){f(e.target.value)}})]}),(0,w.jsx)(c.Z,{sx:{marginTop:"25px"},children:(0,w.jsx)(b.zxk,{id:"apply-license-key",onClick:function(){v("PUT","/api/v1/configs/subnet",{key_values:[{key:"license",value:x}]})},variant:"callAction",disabled:!x||m,label:"Apply Cluster License"})})]})}),(0,w.jsx)(A,{})]})]})})})},J=function(){var e=(0,p.TL)(),n=(0,u.v9)((function(e){return e.register.subnetMFAToken})),t=(0,u.v9)((function(e){return e.register.subnetOTP})),i=(0,u.v9)((function(e){return e.register.loading}));return(0,w.jsxs)(c.Z,{sx:{display:"flex"},children:[(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,w.jsx)(c.Z,{sx:{fontSize:"16px",display:"flex",flexFlow:"column",marginTop:"30px",marginBottom:"30px"},children:"Two-Factor Authentication"}),(0,w.jsx)(c.Z,{children:"Please enter the 6-digit verification code that was sent to your email address. This code will be valid for 5 minutes."}),(0,w.jsx)(c.Z,{sx:{flex:"1",marginTop:"30px"},children:(0,w.jsx)(Z.Z,{overlayIcon:(0,w.jsx)(T.Z,{}),id:"subnet-otp",name:"subnet-otp",onChange:function(n){return e((0,O.Z7)(n.target.value))},placeholder:"",label:"",value:t})}),(0,w.jsx)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:(0,w.jsx)(b.zxk,{id:"verify",onClick:function(){return e(H())},disabled:i||0===t.trim().length||0===n.trim().length,variant:"callAction",label:"Verify"})})]}),(0,w.jsx)(A,{})]})},$=t(90673),ee=function(){var e=(0,p.TL)(),n=(0,u.v9)((function(e){return e.register.subnetAccessToken})),t=(0,u.v9)((function(e){return e.register.selectedSubnetOrganization})),i=(0,u.v9)((function(e){return e.register.subnetOrganizations})),r=(0,u.v9)((function(e){return e.register.loading}));return(0,w.jsxs)(c.Z,{sx:{display:"flex"},children:[(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,w.jsx)(c.Z,{sx:{marginTop:"15px",marginBottom:"15px","& .title-text":{marginLeft:"0px"}},children:(0,w.jsx)(k,{title:"Register MinIO cluster"})}),(0,w.jsxs)(c.Z,{children:[(0,w.jsx)($.Z,{id:"subnet-organization",name:"subnet-organization",onChange:function(n){return e((0,O.wK)(n.target.value))},label:"Select an organization",value:t,options:i.map((function(e){return{label:e.company,value:e.accountId.toString()}}))}),(0,w.jsx)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",marginTop:"15px"},children:(0,w.jsx)(b.zxk,{id:"register-cluster",onClick:function(){return function(){r||(e((0,O.K4)(!0)),n&&t&&e(G({token:n,account_id:t})))}},disabled:r||0===n.trim().length,variant:"callAction",label:"Register"})})]})]}),(0,w.jsx)(A,{})]})},ne=(0,t(72455).Z)((function(e){return(0,o.Z)((0,r.Z)({sizedLabel:{minWidth:"75px"}},a.bK))})),te=function(){var e=ne(),n=(0,p.TL)(),t=(0,u.v9)((function(e){return e.register.subnetPassword})),i=(0,u.v9)((function(e){return e.register.subnetEmail})),r=(0,u.v9)((function(e){return e.register.showPassword})),o=(0,u.v9)((function(e){return e.register.loading}));return(0,w.jsxs)(s.Fragment,{children:[(0,w.jsx)(c.Z,{sx:{"& .title-text":{marginLeft:"27px",fontWeight:600}},children:(0,w.jsx)(k,{icon:(0,w.jsx)(b.dRy,{}),title:"Online activation of MinIO Subscription Network License"})}),(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:{xs:"column",md:"row"}},children:[(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,w.jsx)(c.Z,{sx:{fontSize:"16px",display:"flex",flexFlow:"column",marginTop:"30px",marginBottom:"30px"},children:"Use your MinIO Subscription Network login credentials to register this cluster."}),(0,w.jsxs)(c.Z,{sx:{flex:"1"},children:[(0,w.jsx)(Z.Z,{className:e.spacerBottom,classes:{inputLabel:e.sizedLabel},id:"subnet-email",name:"subnet-email",onChange:function(e){return n((0,O.Ze)(e.target.value))},label:"Email",value:i,overlayIcon:(0,w.jsx)(b.oyc,{})}),(0,w.jsx)(Z.Z,{className:e.spacerBottom,classes:{inputLabel:e.sizedLabel},id:"subnet-password",name:"subnet-password",onChange:function(e){return n((0,O.lr)(e.target.value))},label:"Password",type:r?"text":"password",value:t,overlayIcon:r?(0,w.jsx)(L.Z,{}):(0,w.jsx)(S.Z,{}),overlayAction:function(){return n((0,O.R5)(!r))}}),(0,w.jsxs)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end","& button":{marginLeft:"8px"}},children:[(0,w.jsx)(b.zxk,{id:"sign-up",type:"submit",className:e.spacerRight,variant:"regular",onClick:function(e){e.preventDefault(),window.open("https://min.io/signup?ref=con","_blank")},label:"Sign up"}),(0,w.jsx)(b.zxk,{id:"register-credentials",type:"submit",variant:"callAction",disabled:o||0===i.trim().length||0===t.trim().length,onClick:function(){return n(Y())},label:"Register"})]})]})]}),(0,w.jsx)(A,{})]})]})},ie=t(47974),re=t(99670),se=(0,l.Z)((function(e){return(0,o.Z)((0,r.Z)({sizedLabel:{minWidth:"75px"}},a.bK))}))((function(e){e.classes;var n=(0,p.TL)(),t=(0,u.v9)((function(e){return e.register.subnetMFAToken})),r=(0,u.v9)((function(e){return e.register.subnetAccessToken})),o=(0,u.v9)((function(e){return e.register.subnetRegToken})),a=(0,u.v9)((function(e){return e.register.subnetOrganizations})),l=(0,u.v9)((function(e){return e.register.loading})),m=(0,u.v9)((function(e){return e.register.loadingLicenseInfo})),j=(0,u.v9)((function(e){return e.register.clusterRegistered})),v=(0,u.v9)((function(e){return e.register.licenseInfo})),Z=(0,u.v9)((function(e){return e.register.curTab})),y=(0,s.useState)(!0),k=(0,i.Z)(y,2),S=k[0],L=k[1];(0,s.useEffect)((function(){return function(){n((0,O.jS)())}}),[n]);(0,s.useEffect)((function(){S&&(n(U()),L(!1))}),[S,L,n]);var T=(0,w.jsx)(s.Fragment,{});T=r&&a.length>0?(0,w.jsx)(ee,{}):t?(0,w.jsx)(J,{}):(0,w.jsx)(te,{});var z=(0,w.jsxs)(s.Fragment,{children:[(0,w.jsx)(c.Z,{sx:{border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"43px"},children:j&&v?(0,w.jsx)(C,{email:v.email}):(0,w.jsx)(K,{registerEndpoint:"/api/v1/subnet/login"})}),(0,w.jsx)(I,{})]}),F=(0,w.jsx)(X,{}),N=(0,w.jsxs)(s.Fragment,{children:[(0,w.jsx)(c.Z,{sx:{border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"43px"},children:j&&v?(0,w.jsx)(C,{email:v.email}):T}),!j&&(0,w.jsx)(I,{})]}),P=m?(0,w.jsx)("div",{children:"Loading.."}):N;return(0,s.useEffect)((function(){n((0,d.Sc)("register"))}),[]),(0,w.jsxs)(s.Fragment,{children:[(0,w.jsx)(ie.Z,{label:"Register to MinIO Subscription Network",actions:(0,w.jsx)(re.Z,{})}),(0,w.jsxs)(b.Xgh,{children:[(0,w.jsxs)(f.Z,{value:Z,onChange:function(e,t){n((0,O.m)(t))},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[(0,w.jsx)(h.Z,{label:"Credentials",id:"simple-tab-0","aria-controls":"simple-tab-panel-0"}),(0,w.jsx)(h.Z,{label:"API Key",id:"simple-tab-1","aria-controls":"simple-tab-panel-1"}),(0,w.jsx)(h.Z,{label:"Air-Gap",id:"simple-tab-2","aria-controls":"simple-tab-panel-2",onClick:function(){l||o||(n((0,O.K4)(!0)),x.Z.invoke("GET","/api/v1/subnet/registration-token").then((function(e){n((0,O.K4)(!1)),e&&e.regToken&&n((0,O.wz)(e.regToken))})).catch((function(e){console.error(e),n((0,d.Ih)(e)),n((0,O.K4)(!1))})))}})]}),(0,w.jsx)(g.x,{index:0,value:Z,children:P}),(0,w.jsx)(g.x,{index:1,value:Z,children:z}),(0,w.jsx)(g.x,{index:2,value:Z,children:F})]})]})}))},74440:function(e,n,t){t(72791);var i=t(64554),r=t(29945),s=t(80184);n.Z=function(e){var n=e.email,t=void 0===n?"":n;return(0,s.jsxs)(i.Z,{sx:{height:"67px",color:"#ffffff",display:"flex",position:"relative",top:"-30px",left:"-32px",width:"calc(100% + 64px)",alignItems:"center",justifyContent:"space-between",backgroundColor:"#2781B0",padding:"0 25px 0 25px","& .registered-box, .reg-badge-box":{display:"flex",alignItems:"center",justifyContent:"flex-start"},"& .reg-badge-box":{marginLeft:"20px","& .min-icon":{fill:"#2781B0"}}},children:[(0,s.jsxs)(i.Z,{className:"registered-box",children:[(0,s.jsx)(i.Z,{sx:{fontSize:"16px",fontWeight:400},children:"Register status:"}),(0,s.jsxs)(i.Z,{className:"reg-badge-box",children:[(0,s.jsx)(r.SA,{}),(0,s.jsx)(i.Z,{sx:{fontWeight:600},children:"Registered"})]})]}),(0,s.jsxs)(i.Z,{className:"registered-acc-box",sx:{alignItems:"center",justifyContent:"flex-start",display:{sm:"flex",xs:"none"}},children:[(0,s.jsx)(i.Z,{sx:{fontSize:"16px",fontWeight:400},children:"Registered to:"}),(0,s.jsx)(i.Z,{sx:{marginLeft:"8px",fontWeight:600},children:t})]})]})}}}]); -//# sourceMappingURL=1516.216550a5.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/1516.216550a5.chunk.js.map b/portal-ui/build/static/js/1516.216550a5.chunk.js.map deleted file mode 100644 index 59da40e6b..000000000 --- a/portal-ui/build/static/js/1516.216550a5.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/1516.216550a5.chunk.js","mappings":"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","sources":["screens/Console/Common/FormComponents/CommentBoxWrapper/CommentBoxWrapper.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Common/FormComponents/SelectWrapper/SelectWrapper.tsx","screens/Console/Support/utils.tsx","screens/Console/Support/GetApiKeyModal.tsx","screens/Console/Support/RegisterHelpBox.tsx","screens/Console/Support/ApiKeyRegister.tsx","screens/Console/Support/registerThunks.ts","screens/Console/Support/OfflineRegistration.tsx","screens/Console/Support/SubnetMFAToken.tsx","screens/Console/Support/ClusterRegistrationForm.tsx","screens/Console/Support/OnlineRegistration.tsx","screens/Console/Support/Register.tsx","screens/Console/Support/RegistrationStatusBanner.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Grid, InputLabel, TextField, Tooltip } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\ninterface CommentBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n inputLabel: {\n ...fieldBasic.inputLabel,\n fontSize: 14,\n margin: 0,\n alignItems: \"flex-start\",\n paddingTop: \"20px\",\n flexWrap: \"wrap\",\n display: \"flex\",\n },\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n cssOutlinedInput: {\n borderColor: \"#EAEAEA\",\n padding: 16,\n },\n rootContainer: {\n \"& .MuiOutlinedInput-inputMultiline\": {\n ...fieldBasic.inputLabel,\n fontSize: 13,\n minHeight: 150,\n },\n \"&.Mui-focused .MuiOutlinedInput-notchedOutline\": {\n borderColor: \"#07193E\",\n borderWidth: 1,\n },\n \"& textarea\": {\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n \"&:placeholder\": {\n color: \"#858585\",\n opacity: 1,\n fontWeight: 400,\n },\n },\n },\n });\n\nconst CommentBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n disabled = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n classes,\n}: CommentBoxProps) => {\n let inputProps: any = { \"data-index\": index };\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n\n
\n \n
\n \n
\n );\n};\n\nexport default withStyles(styles)(CommentBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n FormControl,\n InputBase,\n InputLabel,\n MenuItem,\n Select,\n SelectChangeEvent,\n Tooltip,\n} from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\nexport interface selectorTypes {\n label: string;\n value: string;\n}\n\ninterface SelectProps {\n options: selectorTypes[];\n value: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n onChange: (e: SelectChangeEvent) => void;\n disabled?: boolean;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n fieldContainer: {\n display: \"flex\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n height: 38,\n lineHeight: 1,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n },\n input: {\n height: 38,\n position: \"relative\",\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n padding: \"8px 20px 10px 10px\",\n border: \"#e5e5e5 1px solid\",\n borderRadius: 4,\n display: \"flex\",\n alignItems: \"center\",\n \"&:hover\": {\n borderColor: \"#393939\",\n },\n \"&:focus\": {\n backgroundColor: \"#fff\",\n },\n },\n }),\n)(InputBase);\n\nconst SelectWrapper = ({\n classes,\n id,\n name,\n onChange,\n options,\n label,\n tooltip = \"\",\n value,\n disabled = false,\n}: SelectProps) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n \n }\n disabled={disabled}\n >\n {options.map((option) => (\n \n {option.label}\n \n ))}\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(SelectWrapper);\n","import { Box, Grid, Link } from \"@mui/material\";\nimport { Fragment, useState } from \"react\";\nimport { CopyIcon, SettingsIcon } from \"mds\";\nimport FormSwitchWrapper from \"../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport RegistrationStatusBanner from \"./RegistrationStatusBanner\";\n\nexport const FormTitle = ({\n icon = null,\n title,\n}: {\n icon?: any;\n title: any;\n}) => {\n return (\n \n {icon}\n
{title}
\n \n );\n};\n\nexport const ClusterRegistered = ({ email }: { email: string }) => {\n return (\n \n \n \n \n Login to{\" \"}\n \n SUBNET\n {\" \"}\n to avail support for this MinIO cluster\n \n \n \n );\n};\n\nexport const ProxyConfiguration = () => {\n const proxyConfigurationCommand =\n \"mc admin config set {alias} subnet proxy={proxy}\";\n const [displaySubnetProxy, setDisplaySubnetProxy] = useState(false);\n return (\n \n \n \n \n \n
\n Proxy Configuration\n
\n \n \n For airgap/firewalled environments it is possible to{\" \"}\n \n configure a proxy\n {\" \"}\n to connect to SUBNET .\n \n \n {displaySubnetProxy && (\n {}}\n label=\"\"\n value={proxyConfigurationCommand}\n overlayIcon={}\n extraInputProps={{\n readOnly: true,\n }}\n overlayAction={() =>\n navigator.clipboard.writeText(proxyConfigurationCommand)\n }\n />\n )}\n \n \n \n ) => {\n setDisplaySubnetProxy(event.target.checked);\n }}\n />\n \n \n
\n );\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport LockOutlinedIcon from \"@mui/icons-material/LockOutlined\";\nimport {\n containerForHeader,\n spacingUtils,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport ConfirmDialog from \"../Common/ModalWrapper/ConfirmDialog\";\nimport useApi from \"../Common/Hooks/useApi\";\nimport React, { useState } from \"react\";\nimport { InfoIcon, UsersIcon } from \"mds\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setErrorSnackMessage } from \"../../../systemSlice\";\nimport { Box } from \"@mui/material\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n sizedLabel: {\n minWidth: \"75px\",\n },\n ...containerForHeader,\n ...spacingUtils,\n });\n\ninterface IGetApiKeyModalProps {\n open: boolean;\n closeModal: () => void;\n onSet: (apiKey: string) => void;\n classes: any;\n}\n\nconst GetApiKeyModal = ({\n open,\n closeModal,\n classes,\n onSet,\n}: IGetApiKeyModalProps) => {\n const dispatch = useAppDispatch();\n const [email, setEmail] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [showPassword, setShowPassword] = useState(false);\n const [mfaToken, setMfaToken] = useState(\"\");\n const [subnetOTP, setSubnetOTP] = useState(\"\");\n\n const onError = (err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n closeModal();\n setEmail(\"\");\n setPassword(\"\");\n setShowPassword(false);\n setMfaToken(\"\");\n setSubnetOTP(\"\");\n };\n\n const onSuccess = (res: any) => {\n if (res.mfa_token) {\n setMfaToken(res.mfa_token);\n } else if (res.access_token) {\n invokeApi(\"GET\", `/api/v1/subnet/apikey?token=${res.access_token}`);\n } else {\n onSet(res.apiKey);\n closeModal();\n }\n };\n\n const [isLoading, invokeApi] = useApi(onSuccess, onError);\n\n const onConfirm = () => {\n if (mfaToken !== \"\") {\n invokeApi(\"POST\", \"/api/v1/subnet/login/mfa\", {\n username: email,\n otp: subnetOTP,\n mfa_token: mfaToken,\n });\n } else {\n invokeApi(\"POST\", \"/api/v1/subnet/login\", { username: email, password });\n }\n };\n\n const getDialogContent = () => {\n if (mfaToken === \"\") {\n return getCredentialsDialog();\n }\n return getMFADialog();\n };\n\n const getCredentialsDialog = () => {\n return (\n \n ) =>\n setEmail(event.target.value)\n }\n label=\"Email\"\n value={email}\n overlayIcon={}\n />\n ) =>\n setPassword(event.target.value)\n }\n label=\"Password\"\n type={showPassword ? \"text\" : \"password\"}\n value={password}\n overlayIcon={\n showPassword ? : \n }\n overlayAction={() => setShowPassword(!showPassword)}\n />\n \n );\n };\n\n const getMFADialog = () => {\n return (\n \n \n \n Two-Factor Authentication\n \n\n \n Please enter the 6-digit verification code that was sent to your\n email address. This code will be valid for 5 minutes.\n \n\n \n }\n id=\"subnet-otp\"\n name=\"subnet-otp\"\n onChange={(event: React.ChangeEvent) =>\n setSubnetOTP(event.target.value)\n }\n placeholder=\"\"\n label=\"\"\n value={subnetOTP}\n />\n \n \n \n \n );\n };\n\n return open ? (\n }\n isLoading={isLoading}\n cancelText={\"Cancel\"}\n onConfirm={onConfirm}\n onClose={closeModal}\n confirmButtonProps={{\n variant: \"callAction\",\n disabled: !email || !password || isLoading,\n hidden: true,\n }}\n cancelButtonProps={{\n disabled: isLoading,\n }}\n confirmationContent={getDialogContent()}\n />\n ) : null;\n};\n\nexport default withStyles(styles)(GetApiKeyModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box, Link } from \"@mui/material\";\nimport {\n CallHomeFeatureIcon,\n DiagnosticsFeatureIcon,\n ExtraFeaturesIcon,\n HelpIconFilled,\n PerformanceFeatureIcon,\n} from \"mds\";\n\nconst FeatureItem = ({\n icon,\n description,\n}: {\n icon: any;\n description: string | React.ReactNode;\n}) => {\n return (\n \n {icon}{\" \"}\n
\n {description}\n
\n \n );\n};\nconst RegisterHelpBox = ({ hasMargin = true }: { hasMargin?: boolean }) => {\n return (\n \n \n \n
Why should I register?
\n \n \n Registering this cluster with the MinIO Subscription Network (SUBNET)\n provides the following benefits in addition to the commercial license\n and SLA backed support.\n \n\n \n }\n description={`Call Home Monitoring`}\n />\n }\n description={`Health Diagnostics`}\n />\n }\n description={`Performance Analysis`}\n />\n }\n description={\n \n More Features\n \n }\n />\n \n \n );\n};\n\nexport default RegisterHelpBox;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { Box } from \"@mui/material\";\nimport { Button, OnlineRegistrationIcon } from \"mds\";\nimport { FormTitle } from \"./utils\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport GetApiKeyModal from \"./GetApiKeyModal\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { SubnetLoginRequest, SubnetLoginResponse } from \"../License/types\";\nimport api from \"../../../common/api\";\nimport { useAppDispatch } from \"../../../store\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { spacingUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { useNavigate } from \"react-router-dom\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\n\ninterface IApiKeyRegister {\n classes: any;\n registerEndpoint: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n sizedLabel: {\n minWidth: \"75px\",\n },\n ...spacingUtils,\n });\n\nconst ApiKeyRegister = ({ classes, registerEndpoint }: IApiKeyRegister) => {\n const navigate = useNavigate();\n\n const [showApiKeyModal, setShowApiKeyModal] = useState(false);\n const [apiKey, setApiKey] = useState(\"\");\n const [loading, setLoading] = useState(false);\n const [fromModal, setFromModal] = useState(false);\n const dispatch = useAppDispatch();\n\n const onRegister = useCallback(() => {\n if (loading) {\n return;\n }\n setLoading(true);\n let request: SubnetLoginRequest = { apiKey };\n api\n .invoke(\"POST\", registerEndpoint, request)\n .then((resp: SubnetLoginResponse) => {\n setLoading(false);\n if (resp && resp.registered) {\n dispatch(setServerNeedsRestart(true));\n navigate(IAM_PAGES.LICENSE);\n }\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n reset();\n });\n }, [apiKey, dispatch, loading, registerEndpoint, navigate]);\n\n useEffect(() => {\n if (fromModal) {\n onRegister();\n }\n }, [fromModal, onRegister]);\n\n const reset = () => {\n setApiKey(\"\");\n setFromModal(false);\n };\n\n return (\n \n \n }\n title={`Register cluster with API key`}\n />\n \n \n \n \n Use your MinIO Subscription Network API Key to register this\n cluster.\n \n \n ) =>\n setApiKey(event.target.value)\n }\n label=\"API Key\"\n value={apiKey}\n />\n\n \n setShowApiKeyModal(true)}\n label={\"Get from SUBNET\"}\n />\n onRegister()}\n label={\"Register\"}\n />\n setShowApiKeyModal(false)}\n onSet={(value) => {\n setApiKey(value);\n setFromModal(true);\n }}\n />\n \n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(ApiKeyRegister);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n resetRegisterForm,\n setClusterRegistered,\n setLicenseInfo,\n setLoading,\n setLoadingLicenseInfo,\n setSelectedSubnetOrganization,\n setSubnetAccessToken,\n setSubnetMFAToken,\n setSubnetOrganizations,\n setSubnetOTP,\n} from \"./registerSlice\";\nimport api from \"../../../common/api\";\nimport {\n SubnetInfo,\n SubnetLoginRequest,\n SubnetLoginResponse,\n SubnetLoginWithMFARequest,\n SubnetRegisterRequest,\n} from \"../License/types\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { createAsyncThunk } from \"@reduxjs/toolkit\";\nimport { AppState } from \"../../../store\";\nimport { hasPermission } from \"../../../common/SecureComponent\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_PAGES,\n IAM_PAGES_PERMISSIONS,\n} from \"../../../common/SecureComponent/permissions\";\n\nexport const fetchLicenseInfo = createAsyncThunk(\n \"register/fetchLicenseInfo\",\n async (_, { getState, dispatch }) => {\n const state = getState() as AppState;\n\n const getSubnetInfo = hasPermission(\n CONSOLE_UI_RESOURCE,\n IAM_PAGES_PERMISSIONS[IAM_PAGES.LICENSE],\n true,\n );\n\n const loadingLicenseInfo = state.register.loadingLicenseInfo;\n\n if (loadingLicenseInfo) {\n return;\n }\n if (getSubnetInfo) {\n dispatch(setLoadingLicenseInfo(true));\n api\n .invoke(\"GET\", `/api/v1/subnet/info`)\n .then((res: SubnetInfo) => {\n dispatch(setLicenseInfo(res));\n dispatch(setClusterRegistered(true));\n dispatch(setLoadingLicenseInfo(false));\n })\n .catch((err: ErrorResponseHandler) => {\n if (\n err.detailedError.toLowerCase() !==\n \"License is not present\".toLowerCase() &&\n err.detailedError.toLowerCase() !==\n \"license not found\".toLowerCase()\n ) {\n dispatch(setErrorSnackMessage(err));\n }\n dispatch(setClusterRegistered(false));\n dispatch(setLoadingLicenseInfo(false));\n });\n } else {\n dispatch(setLoadingLicenseInfo(false));\n }\n },\n);\n\nexport interface ClassRegisterArgs {\n token: string;\n account_id: string;\n}\n\nexport const callRegister = createAsyncThunk(\n \"register/callRegister\",\n async (args: ClassRegisterArgs, { dispatch }) => {\n const request: SubnetRegisterRequest = {\n token: args.token,\n account_id: args.account_id,\n };\n api\n .invoke(\"POST\", \"/api/v1/subnet/register\", request)\n .then(() => {\n dispatch(setLoading(false));\n dispatch(setServerNeedsRestart(true));\n dispatch(resetRegisterForm());\n dispatch(fetchLicenseInfo());\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n });\n },\n);\n\nexport const subnetLoginWithMFA = createAsyncThunk(\n \"register/subnetLoginWithMFA\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n const subnetEmail = state.register.subnetEmail;\n const subnetMFAToken = state.register.subnetMFAToken;\n const subnetOTP = state.register.subnetOTP;\n const loading = state.register.loading;\n\n if (loading) {\n return;\n }\n dispatch(setLoading(true));\n const request: SubnetLoginWithMFARequest = {\n username: subnetEmail,\n otp: subnetOTP,\n mfa_token: subnetMFAToken,\n };\n api\n .invoke(\"POST\", \"/api/v1/subnet/login/mfa\", request)\n .then((resp: SubnetLoginResponse) => {\n dispatch(setLoading(false));\n if (resp && resp.access_token && resp.organizations.length > 0) {\n if (resp.organizations.length === 1) {\n dispatch(\n callRegister({\n token: resp.access_token,\n account_id: resp.organizations[0].accountId.toString(),\n }),\n );\n } else {\n dispatch(setSubnetAccessToken(resp.access_token));\n dispatch(setSubnetOrganizations(resp.organizations));\n dispatch(\n setSelectedSubnetOrganization(\n resp.organizations[0].accountId.toString(),\n ),\n );\n }\n }\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n dispatch(setSubnetOTP(\"\"));\n });\n },\n);\n\nexport const subnetLogin = createAsyncThunk(\n \"register/subnetLogin\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n const license = state.register.license;\n const subnetPassword = state.register.subnetPassword;\n const subnetEmail = state.register.subnetEmail;\n const loading = state.register.loading;\n\n if (loading) {\n return;\n }\n dispatch(setLoading(true));\n let request: SubnetLoginRequest = {\n username: subnetEmail,\n password: subnetPassword,\n apiKey: license,\n };\n api\n .invoke(\"POST\", \"/api/v1/subnet/login\", request)\n .then((resp: SubnetLoginResponse) => {\n dispatch(setLoading(false));\n if (resp && resp.registered) {\n dispatch(resetRegisterForm());\n dispatch(fetchLicenseInfo());\n } else if (resp && resp.mfa_token) {\n dispatch(setSubnetMFAToken(resp.mfa_token));\n } else if (resp && resp.access_token && resp.organizations.length > 0) {\n dispatch(setSubnetAccessToken(resp.access_token));\n dispatch(setSubnetOrganizations(resp.organizations));\n dispatch(\n setSelectedSubnetOrganization(\n resp.organizations[0].accountId.toString(),\n ),\n );\n }\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n dispatch(resetRegisterForm());\n });\n },\n);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Box, Link } from \"@mui/material\";\nimport { ClusterRegistered, FormTitle } from \"./utils\";\nimport { Button, CopyIcon, OfflineRegistrationIcon } from \"mds\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { useSelector } from \"react-redux\";\nimport CommentBoxWrapper from \"../Common/FormComponents/CommentBoxWrapper/CommentBoxWrapper\";\nimport useApi from \"../Common/Hooks/useApi\";\nimport { fetchLicenseInfo } from \"./registerThunks\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\n\nconst OfflineRegistration = () => {\n const dispatch = useAppDispatch();\n const subnetRegToken = useSelector(\n (state: AppState) => state.register.subnetRegToken,\n );\n const clusterRegistered = useSelector(\n (state: AppState) => state.register.clusterRegistered,\n );\n const licenseInfo = useSelector(\n (state: AppState) => state.register.licenseInfo,\n );\n\n const offlineRegUrl = `https://subnet.min.io/cluster/register?token=${subnetRegToken}`;\n\n const [licenseKey, setLicenseKey] = useState(\"\");\n\n const [isSaving, invokeApplyLicenseApi] = useApi(\n () => {\n dispatch(fetchLicenseInfo());\n dispatch(setServerNeedsRestart(true));\n },\n (err) => {\n dispatch(setErrorSnackMessage(err));\n },\n );\n\n const applyAirGapLicense = () => {\n invokeApplyLicenseApi(\"PUT\", `/api/v1/configs/subnet`, {\n key_values: [{ key: \"license\", value: licenseKey }],\n });\n };\n\n return (\n \n \n {clusterRegistered && licenseInfo ? (\n \n ) : (\n \n \n }\n title={`Register cluster in an Air-gap environment`}\n />\n \n\n \n \n \n \n
\n Click on the link to register this cluster in SUBNET and\n get a License Key for this Air-Gap deployment\n
\n
\n\n \n \n https://subnet.min.io/cluster/register\n \n\n \n \n }\n color={\"primary\"}\n variant={\"regular\"}\n />\n \n \n
\n\n \n Note: If this machine does not have internet connection,\n Copy paste the following URL in a browser where you access\n SUBNET and follow the instructions to complete the\n registration\n \n\n \n \n {\n setLicenseKey(e.target.value);\n }}\n />\n \n \n \n \n \n \n \n \n
\n )}\n \n
\n );\n};\n\nexport default OfflineRegistration;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box } from \"@mui/material\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport LockOutlinedIcon from \"@mui/icons-material/LockOutlined\";\nimport { setSubnetOTP } from \"./registerSlice\";\nimport { Button } from \"mds\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { useSelector } from \"react-redux\";\nimport { subnetLoginWithMFA } from \"./registerThunks\";\n\nconst SubnetMFAToken = () => {\n const dispatch = useAppDispatch();\n\n const subnetMFAToken = useSelector(\n (state: AppState) => state.register.subnetMFAToken,\n );\n const subnetOTP = useSelector((state: AppState) => state.register.subnetOTP);\n const loading = useSelector((state: AppState) => state.register.loading);\n\n return (\n \n \n \n Two-Factor Authentication\n \n\n \n Please enter the 6-digit verification code that was sent to your email\n address. This code will be valid for 5 minutes.\n \n\n \n }\n id=\"subnet-otp\"\n name=\"subnet-otp\"\n onChange={(event: React.ChangeEvent) =>\n dispatch(setSubnetOTP(event.target.value))\n }\n placeholder=\"\"\n label=\"\"\n value={subnetOTP}\n />\n \n \n dispatch(subnetLoginWithMFA())}\n disabled={\n loading ||\n subnetOTP.trim().length === 0 ||\n subnetMFAToken.trim().length === 0\n }\n variant=\"callAction\"\n label={\"Verify\"}\n />\n \n \n\n \n \n );\n};\nexport default SubnetMFAToken;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box } from \"@mui/material\";\nimport { FormTitle } from \"./utils\";\nimport SelectWrapper from \"../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport { setLoading, setSelectedSubnetOrganization } from \"./registerSlice\";\nimport { Button } from \"mds\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { callRegister } from \"./registerThunks\";\n\nconst ClusterRegistrationForm = () => {\n const dispatch = useAppDispatch();\n\n const subnetAccessToken = useSelector(\n (state: AppState) => state.register.subnetAccessToken,\n );\n const selectedSubnetOrganization = useSelector(\n (state: AppState) => state.register.selectedSubnetOrganization,\n );\n const subnetOrganizations = useSelector(\n (state: AppState) => state.register.subnetOrganizations,\n );\n const loading = useSelector((state: AppState) => state.register.loading);\n\n return (\n \n \n \n \n \n \n \n dispatch(setSelectedSubnetOrganization(e.target.value as string))\n }\n label=\"Select an organization\"\n value={selectedSubnetOrganization}\n options={subnetOrganizations.map((organization) => ({\n label: organization.company,\n value: organization.accountId.toString(),\n }))}\n />\n \n () => {\n if (loading) {\n return;\n }\n dispatch(setLoading(true));\n if (subnetAccessToken && selectedSubnetOrganization) {\n dispatch(\n callRegister({\n token: subnetAccessToken,\n account_id: selectedSubnetOrganization,\n }),\n );\n }\n }}\n disabled={loading || subnetAccessToken.trim().length === 0}\n variant=\"callAction\"\n label={\"Register\"}\n />\n \n \n \n \n \n );\n};\n\nexport default ClusterRegistrationForm;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Box } from \"@mui/material\";\nimport { FormTitle } from \"./utils\";\nimport { Button, OnlineRegistrationIcon, UsersIcon } from \"mds\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { spacingUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport {\n setShowPassword,\n setSubnetEmail,\n setSubnetPassword,\n} from \"./registerSlice\";\nimport { subnetLogin } from \"./registerThunks\";\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n sizedLabel: {\n minWidth: \"75px\",\n },\n ...spacingUtils,\n }),\n);\n\nconst OnlineRegistration = () => {\n const classes = useStyles();\n const dispatch = useAppDispatch();\n\n const subnetPassword = useSelector(\n (state: AppState) => state.register.subnetPassword,\n );\n const subnetEmail = useSelector(\n (state: AppState) => state.register.subnetEmail,\n );\n const showPassword = useSelector(\n (state: AppState) => state.register.showPassword,\n );\n const loading = useSelector((state: AppState) => state.register.loading);\n\n return (\n \n \n }\n title={`Online activation of MinIO Subscription Network License`}\n />\n \n \n \n \n Use your MinIO Subscription Network login credentials to register\n this cluster.\n \n \n ) =>\n dispatch(setSubnetEmail(event.target.value))\n }\n label=\"Email\"\n value={subnetEmail}\n overlayIcon={}\n />\n ) =>\n dispatch(setSubnetPassword(event.target.value))\n }\n label=\"Password\"\n type={showPassword ? \"text\" : \"password\"}\n value={subnetPassword}\n overlayIcon={\n showPassword ? : \n }\n overlayAction={() => dispatch(setShowPassword(!showPassword))}\n />\n\n \n {\n e.preventDefault();\n window.open(`https://min.io/signup?ref=con`, \"_blank\");\n }}\n label={\"Sign up\"}\n />\n dispatch(subnetLogin())}\n label={\"Register\"}\n />\n \n \n \n \n \n \n );\n};\n\nexport default OnlineRegistration;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { spacingUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Box } from \"@mui/material\";\nimport api from \"../../../common/api\";\n\nimport { SubnetRegTokenResponse } from \"../License/types\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { useSelector } from \"react-redux\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport Tabs from \"@mui/material/Tabs\";\nimport Tab from \"@mui/material/Tab\";\nimport { TabPanel } from \"../../shared/tabs\";\nimport { ClusterRegistered, ProxyConfiguration } from \"./utils\";\nimport ApiKeyRegister from \"./ApiKeyRegister\";\nimport { fetchLicenseInfo } from \"./registerThunks\";\nimport {\n resetRegisterForm,\n setCurTab,\n setLoading,\n setSubnetRegToken,\n} from \"./registerSlice\";\nimport OfflineRegistration from \"./OfflineRegistration\";\nimport SubnetMFAToken from \"./SubnetMFAToken\";\nimport ClusterRegistrationForm from \"./ClusterRegistrationForm\";\nimport OnlineRegistration from \"./OnlineRegistration\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport { PageLayout } from \"mds\";\nimport HelpMenu from \"../HelpMenu\";\n\ninterface IRegister {\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n sizedLabel: {\n minWidth: \"75px\",\n },\n ...spacingUtils,\n });\n\nconst Register = ({ classes }: IRegister) => {\n const dispatch = useAppDispatch();\n\n const subnetMFAToken = useSelector(\n (state: AppState) => state.register.subnetMFAToken,\n );\n const subnetAccessToken = useSelector(\n (state: AppState) => state.register.subnetAccessToken,\n );\n\n const subnetRegToken = useSelector(\n (state: AppState) => state.register.subnetRegToken,\n );\n const subnetOrganizations = useSelector(\n (state: AppState) => state.register.subnetOrganizations,\n );\n\n const loading = useSelector((state: AppState) => state.register.loading);\n const loadingLicenseInfo = useSelector(\n (state: AppState) => state.register.loadingLicenseInfo,\n );\n const clusterRegistered = useSelector(\n (state: AppState) => state.register.clusterRegistered,\n );\n const licenseInfo = useSelector(\n (state: AppState) => state.register.licenseInfo,\n );\n const curTab = useSelector((state: AppState) => state.register.curTab);\n\n const [initialLicenseLoading, setInitialLicenseLoading] =\n useState(true);\n\n useEffect(() => {\n // when unmounted, reset\n return () => {\n dispatch(resetRegisterForm());\n };\n }, [dispatch]);\n\n const fetchSubnetRegToken = () => {\n if (loading || subnetRegToken) {\n return;\n }\n dispatch(setLoading(true));\n api\n .invoke(\"GET\", \"/api/v1/subnet/registration-token\")\n .then((resp: SubnetRegTokenResponse) => {\n dispatch(setLoading(false));\n if (resp && resp.regToken) {\n dispatch(setSubnetRegToken(resp.regToken));\n }\n })\n .catch((err: ErrorResponseHandler) => {\n console.error(err);\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n });\n };\n\n useEffect(() => {\n if (initialLicenseLoading) {\n dispatch(fetchLicenseInfo());\n setInitialLicenseLoading(false);\n }\n }, [initialLicenseLoading, setInitialLicenseLoading, dispatch]);\n\n let clusterRegistrationForm: JSX.Element = ;\n\n if (subnetAccessToken && subnetOrganizations.length > 0) {\n clusterRegistrationForm = ;\n } else if (subnetMFAToken) {\n clusterRegistrationForm = ;\n } else {\n clusterRegistrationForm = ;\n }\n\n const apiKeyRegistration = (\n \n \n {clusterRegistered && licenseInfo ? (\n \n ) : (\n \n )}\n \n \n \n );\n\n const offlineRegistration = ;\n\n const regUi = (\n \n \n {clusterRegistered && licenseInfo ? (\n \n ) : (\n clusterRegistrationForm\n )}\n \n\n {!clusterRegistered && }\n \n );\n\n const loadingUi =
Loading..
;\n const uiToShow = loadingLicenseInfo ? loadingUi : regUi;\n\n useEffect(() => {\n dispatch(setHelpName(\"register\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n }\n />\n\n \n , newValue: number) => {\n dispatch(setCurTab(newValue));\n }}\n indicatorColor=\"primary\"\n textColor=\"primary\"\n aria-label=\"cluster-tabs\"\n variant=\"scrollable\"\n scrollButtons=\"auto\"\n >\n \n \n fetchSubnetRegToken()}\n />\n \n\n \n {uiToShow}\n \n \n {apiKeyRegistration}\n \n \n {offlineRegistration}\n \n \n \n );\n};\n\nexport default withStyles(styles)(Register);\n","import React from \"react\";\nimport { Box } from \"@mui/material\";\nimport { VerifiedIcon } from \"mds\";\n\nconst RegistrationStatusBanner = ({ email = \"\" }: { email?: string }) => {\n return (\n \n \n Register status:\n \n \n \n Registered\n \n \n \n\n \n Registered to:\n {email}\n \n \n );\n};\nexport default RegistrationStatusBanner;\n"],"names":["withStyles","theme","createStyles","_objectSpread","fieldBasic","tooltipHelper","inputLabel","fontSize","margin","alignItems","paddingTop","flexWrap","display","textBoxContainer","flexGrow","position","cssOutlinedInput","borderColor","padding","rootContainer","minHeight","borderWidth","color","fontWeight","opacity","_ref","label","onChange","value","id","name","_ref$disabled","disabled","_ref$tooltip","tooltip","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","placeholder","classes","inputProps","_jsx","React","children","_jsxs","Grid","item","xs","className","concat","fieldContainer","errorInField","InputLabel","htmlFor","tooltipContainer","Tooltip","title","placement","HelpIcon","TextField","fullWidth","multiline","rows","helperText","InputLabelProps","shrink","InputProps","notchedOutline","root","variant","inputStyles","makeStyles","inputFieldStyles","InputField","props","overlayAction","right","top","maxWidth","maxHeight","_ref$type","type","_ref$autoComplete","autoComplete","_ref$multiline","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","onKeyPress","onFocus","onPaste","_useState","useState","_useState2","_slicedToArray","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","container","clsx","inputBoxContainer","noMinWidthLabel","inputRebase","IconButton","onClick","size","disableFocusRipple","disableRipple","disableTouchRipple","SelectStyled","height","lineHeight","marginTop","spacing","input","border","borderRadius","backgroundColor","InputBase","flexFlow","options","FormControl","Select","map","option","MenuItem","FormTitle","_ref$icon","icon","Box","sx","justifyContent","ClusterRegistered","_ref2","email","Fragment","RegistrationStatusBanner","cursor","Link","href","target","style","ProxyConfiguration","proxyConfigurationCommand","displaySubnetProxy","setDisplaySubnetProxy","width","SettingsIcon","marginLeft","marginBottom","InputBoxWrapper","CopyIcon","readOnly","navigator","clipboard","writeText","FormSwitchWrapper","checked","event","sizedLabel","minWidth","containerForHeader","spacingUtils","open","closeModal","onSet","dispatch","useAppDispatch","setEmail","_useState3","_useState4","password","setPassword","_useState5","_useState6","showPassword","setShowPassword","_useState7","_useState8","mfaToken","setMfaToken","_useState9","_useState10","subnetOTP","setSubnetOTP","_useApi","useApi","res","mfa_token","access_token","invokeApi","apiKey","err","setErrorSnackMessage","_useApi2","isLoading","getCredentialsDialog","spacerBottom","UsersIcon","getMFADialog","flex","LockOutlinedIcon","ConfirmDialog","confirmText","isOpen","titleIcon","InfoIcon","cancelText","onConfirm","username","otp","onClose","confirmButtonProps","hidden","cancelButtonProps","confirmationContent","FeatureItem","description","marginRight","fontStyle","_ref2$hasMargin","hasMargin","sm","md","HelpIconFilled","CallHomeFeatureIcon","DiagnosticsFeatureIcon","PerformanceFeatureIcon","ExtraFeaturesIcon","registerEndpoint","navigate","useNavigate","showApiKeyModal","setShowApiKeyModal","setApiKey","loading","setLoading","fromModal","setFromModal","onRegister","useCallback","request","api","invoke","then","resp","registered","setServerNeedsRestart","IAM_PAGES","LICENSE","catch","reset","useEffect","OnlineRegistrationIcon","Button","spacerRight","trim","length","GetApiKeyModal","RegisterHelpBox","fetchLicenseInfo","createAsyncThunk","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_","getState","state","getSubnetInfo","wrap","_context","prev","next","hasPermission","CONSOLE_UI_RESOURCE","IAM_PAGES_PERMISSIONS","register","loadingLicenseInfo","abrupt","setLoadingLicenseInfo","setLicenseInfo","setClusterRegistered","detailedError","toLowerCase","stop","_x","_x2","apply","arguments","callRegister","_ref4","_callee2","args","_ref3","_context2","token","account_id","resetRegisterForm","_x3","_x4","subnetLoginWithMFA","_ref6","_callee3","_ref5","subnetEmail","subnetMFAToken","_context3","rejectWithValue","organizations","accountId","toString","setSubnetAccessToken","setSubnetOrganizations","setSelectedSubnetOrganization","_x5","_x6","subnetLogin","_ref8","_callee4","_ref7","license","subnetPassword","_context4","setSubnetMFAToken","_x7","_x8","subnetRegToken","useSelector","clusterRegistered","licenseInfo","offlineRegUrl","licenseKey","setLicenseKey","isSaving","invokeApplyLicenseApi","OfflineRegistrationIcon","background","textAlign","gap","TooltipWrapper","CopyToClipboard","text","flexDirection","CommentBoxWrapper","e","key_values","key","subnetAccessToken","selectedSubnetOrganization","subnetOrganizations","SelectWrapper","organization","company","useStyles","setSubnetEmail","setSubnetPassword","preventDefault","window","curTab","initialLicenseLoading","setInitialLicenseLoading","clusterRegistrationForm","ClusterRegistrationForm","SubnetMFAToken","OnlineRegistration","apiKeyRegistration","ApiKeyRegister","offlineRegistration","OfflineRegistration","regUi","uiToShow","setHelpName","PageHeaderWrapper","actions","HelpMenu","PageLayout","Tabs","newValue","setCurTab","indicatorColor","textColor","scrollButtons","Tab","regToken","setSubnetRegToken","console","TabPanel","_ref$email","left","fill","VerifiedIcon"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1516.b3513b8c.chunk.js b/portal-ui/build/static/js/1516.b3513b8c.chunk.js new file mode 100644 index 000000000..e74e25bd4 --- /dev/null +++ b/portal-ui/build/static/js/1516.b3513b8c.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1516],{57314:function(e,t,n){"use strict";var r=n(1413),i=n(72791),o=n(61889),s=n(30829),a=n(20068),l=n(27391),c=n(11135),u=n(25787),d=n(23814),p=n(29945),f=n(80184);t.Z=(0,u.Z)((function(e){return(0,c.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},d.YI),d.Hr),{},{inputLabel:(0,r.Z)((0,r.Z)({},d.YI.inputLabel),{},{fontSize:14,margin:0,alignItems:"flex-start",paddingTop:"20px",flexWrap:"wrap",display:"flex"}),textBoxContainer:{flexGrow:1,position:"relative"},cssOutlinedInput:{borderColor:"#EAEAEA",padding:16},rootContainer:{"& .MuiOutlinedInput-inputMultiline":(0,r.Z)((0,r.Z)({},d.YI.inputLabel),{},{fontSize:13,minHeight:150}),"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:"#07193E",borderWidth:1},"& textarea":{color:"#07193E",fontSize:13,fontWeight:600,"&:placeholder":{color:"#858585",opacity:1,fontWeight:400}}}}))}))((function(e){var t=e.label,n=e.onChange,r=e.value,c=e.id,u=e.name,d=e.disabled,x=void 0!==d&&d,h=e.tooltip,g=void 0===h?"":h,m=e.index,b=void 0===m?0:m,v=e.error,y=void 0===v?"":v,j=e.required,Z=void 0!==j&&j,w=e.placeholder,C=void 0===w?"":w,k=e.classes,S={"data-index":b};return(0,f.jsx)(i.Fragment,{children:(0,f.jsxs)(o.ZP,{item:!0,xs:12,className:"".concat(k.fieldContainer," ").concat(""!==y?k.errorInField:""),children:[""!==t&&(0,f.jsxs)(s.Z,{htmlFor:c,className:k.inputLabel,children:[(0,f.jsxs)("span",{children:[t,Z?"*":""]}),""!==g&&(0,f.jsx)("div",{className:k.tooltipContainer,children:(0,f.jsx)(a.Z,{title:g,placement:"top-start",children:(0,f.jsx)("div",{className:k.tooltip,children:(0,f.jsx)(p.byK,{})})})})]}),(0,f.jsx)("div",{className:k.textBoxContainer,children:(0,f.jsx)(l.Z,{id:c,name:u,fullWidth:!0,value:r,disabled:x,onChange:n,multiline:!0,rows:5,inputProps:S,error:""!==y,helperText:y,placeholder:C,InputLabelProps:{shrink:!0},InputProps:{classes:{notchedOutline:k.cssOutlinedInput,root:k.rootContainer}},variant:"outlined"})})]})})}))},21435:function(e,t,n){"use strict";var r=n(29439),i=n(1413),o=n(72791),s=n(27391),a=n(61889),l=n(30829),c=n(20068),u=n(13400),d=n(20165),p=n(3579),f=n(11135),x=n(72455),h=n(25787),g=n(23814),m=n(29945),b=n(28182),v=n(80184),y=(0,x.Z)((function(e){return(0,f.Z)((0,i.Z)({},g.gM))}));function j(e){var t=y();return(0,v.jsx)(s.Z,(0,i.Z)({InputProps:{classes:t}},e))}t.Z=(0,h.Z)((function(e){return(0,f.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},g.YI),g.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var t=e.label,n=e.onChange,s=e.value,f=e.id,x=e.name,h=e.type,g=void 0===h?"text":h,y=e.autoComplete,Z=void 0===y?"off":y,w=e.disabled,C=void 0!==w&&w,k=e.multiline,S=void 0!==k&&k,I=e.tooltip,T=void 0===I?"":I,P=e.index,O=void 0===P?0:P,L=e.error,z=void 0===L?"":L,E=e.required,F=void 0!==E&&E,R=e.placeholder,N=void 0===R?"":R,A=e.min,_=e.max,B=e.overlayId,M=e.overlayIcon,K=void 0===M?null:M,W=e.overlayObject,D=void 0===W?null:W,U=e.extraInputProps,H=void 0===U?{}:U,G=e.overlayAction,V=e.noLabelMinWidth,Y=void 0!==V&&V,q=e.pattern,X=void 0===q?"":q,Q=e.autoFocus,J=void 0!==Q&&Q,$=e.classes,ee=e.className,te=void 0===ee?"":ee,ne=e.onKeyPress,re=e.onFocus,ie=e.onPaste,oe=(0,i.Z)({"data-index":O},H),se=(0,o.useState)(!1),ae=(0,r.Z)(se,2),le=ae[0],ce=ae[1];"number"===g&&A&&(oe.min=A),"number"===g&&_&&(oe.max=_),""!==X&&(oe.pattern=X);var ue=K,de=g;return"password"===g&&null===K&&(ue=le?(0,v.jsx)(d.Z,{}):(0,v.jsx)(p.Z,{}),de=le?"text":"password"),(0,v.jsx)(o.Fragment,{children:(0,v.jsxs)(a.ZP,{container:!0,className:(0,b.Z)(""!==te?te:"",""!==z?$.errorInField:$.inputBoxContainer),children:[""!==t&&(0,v.jsxs)(l.Z,{htmlFor:f,className:Y?$.noMinWidthLabel:$.inputLabel,children:[(0,v.jsxs)("span",{children:[t,F?"*":""]}),""!==T&&(0,v.jsx)("div",{className:$.tooltipContainer,children:(0,v.jsx)(c.Z,{title:T,placement:"top-start",children:(0,v.jsx)("div",{className:$.tooltip,children:(0,v.jsx)(m.byK,{})})})})]}),(0,v.jsxs)("div",{className:$.textBoxContainer,children:[(0,v.jsx)(j,{id:f,name:x,fullWidth:!0,value:s,autoFocus:J,disabled:C,onChange:n,type:de,multiline:S,autoComplete:Z,inputProps:oe,error:""!==z,helperText:z,placeholder:N,className:$.inputRebase,onKeyPress:ne,onFocus:re,onPaste:ie}),ue&&(0,v.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==t?"withLabel":""),children:(0,v.jsx)(u.Z,{onClick:G?function(){G()}:function(){return ce(!le)},id:B,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:ue})}),D&&(0,v.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==t?"withLabel":""),children:D})]})]})})}))},90673:function(e,t,n){"use strict";var r=n(1413),i=n(72791),o=n(61889),s=n(886),a=n(30829),l=n(20068),c=n(68096),u=n(58406),d=n(77865),p=n(11135),f=n(25787),x=n(23814),h=n(29945),g=n(80184),m=(0,f.Z)((function(e){return(0,p.Z)({root:{height:38,lineHeight:1,"label + &":{marginTop:e.spacing(3)}},input:{height:38,position:"relative",color:"#07193E",fontSize:13,fontWeight:600,padding:"8px 20px 10px 10px",border:"#e5e5e5 1px solid",borderRadius:4,display:"flex",alignItems:"center","&:hover":{borderColor:"#393939"},"&:focus":{backgroundColor:"#fff"}}})}))(s.ZP);t.Z=(0,f.Z)((function(e){return(0,p.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},x.YI),x.Hr),{},{fieldContainer:{display:"flex","@media (max-width: 600px)":{flexFlow:"column"}}}))}))((function(e){var t=e.classes,n=e.id,r=e.name,s=e.onChange,p=e.options,f=e.label,x=e.tooltip,b=void 0===x?"":x,v=e.value,y=e.disabled,j=void 0!==y&&y;return(0,g.jsx)(i.Fragment,{children:(0,g.jsxs)(o.ZP,{item:!0,xs:12,className:t.fieldContainer,children:[""!==f&&(0,g.jsxs)(a.Z,{htmlFor:n,className:t.inputLabel,children:[(0,g.jsx)("span",{children:f}),""!==b&&(0,g.jsx)("div",{className:t.tooltipContainer,children:(0,g.jsx)(l.Z,{title:b,placement:"top-start",children:(0,g.jsx)("div",{className:t.tooltip,children:(0,g.jsx)(h.byK,{})})})})]}),(0,g.jsx)(c.Z,{fullWidth:!0,children:(0,g.jsx)(u.Z,{id:n,name:r,value:v,onChange:s,input:(0,g.jsx)(m,{}),disabled:j,children:p.map((function(e){return(0,g.jsx)(d.Z,{value:e.value,children:e.label},"select-".concat(r,"-").concat(e.label))}))})})]})})}))},51516:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return oe}});var r=n(29439),i=n(1413),o=n(72791),s=n(11135),a=n(23814),l=n(25787),c=n(64554),u=n(81207),d=n(78687),p=n(87995),f=n(81551),x=n(18073),h=n(43896),g=n(19847),m=n(61889),b=n(50533),v=n(29945),y=n(81159),j=n(21435),Z=n(74440),w=n(80184),C=function(e){var t=e.icon,n=void 0===t?null:t,r=e.title;return(0,w.jsxs)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-start"},children:[n,(0,w.jsx)("div",{className:"title-text",children:r})]})},k=function(e){var t=e.email;return(0,w.jsxs)(o.Fragment,{children:[(0,w.jsx)(Z.Z,{email:t}),(0,w.jsx)(m.ZP,{item:!0,xs:12,marginTop:"25px",children:(0,w.jsxs)(c.Z,{sx:{padding:"20px","& a":{color:"#2781B0",cursor:"pointer"}},children:["Login to"," ",(0,w.jsx)(b.Z,{href:"https://subnet.min.io",target:"_blank",style:{color:"#2781B0",cursor:"pointer"},children:"SUBNET"})," ","to avail support for this MinIO cluster"]})})]})},S=function(){var e="mc admin config set {alias} subnet proxy={proxy}",t=(0,o.useState)(!1),n=(0,r.Z)(t,2),i=n[0],s=n[1];return(0,w.jsx)(o.Fragment,{children:(0,w.jsxs)(c.Z,{sx:{border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",padding:"23px",marginTop:"40px",alignItems:"start",justifyContent:"space-between"},children:[(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column"},children:[(0,w.jsxs)(c.Z,{sx:{display:"flex","& .min-icon":{height:"22px",width:"22px"}},children:[(0,w.jsx)(v.ewm,{}),(0,w.jsx)("div",{style:{marginLeft:"10px",fontWeight:600},children:"Proxy Configuration"})]}),(0,w.jsxs)(c.Z,{sx:{marginTop:"10px",marginBottom:"10px",fontSize:"14px"},children:["For airgap/firewalled environments it is possible to"," ",(0,w.jsx)(b.Z,{style:{color:"#2781B0",cursor:"pointer"},href:"https://min.io/docs/minio/linux/reference/minio-mc-admin/mc-admin-config.html?ref=con",target:"_blank",children:"configure a proxy"})," ","to connect to SUBNET ."]}),(0,w.jsx)(c.Z,{children:i&&(0,w.jsx)(j.Z,{disabled:!0,id:"subnetProxy",name:"subnetProxy",placeholder:"",onChange:function(){},label:"",value:e,overlayIcon:(0,w.jsx)(v.TIy,{}),extraInputProps:{readOnly:!0},overlayAction:function(){return navigator.clipboard.writeText(e)}})})]}),(0,w.jsx)(c.Z,{sx:{display:"flex"},children:(0,w.jsx)(y.Z,{value:"enableProxy",id:"enableProxy",name:"enableProxy",checked:i,onChange:function(e){s(e.target.checked)}})})]})})},I=n(3579),T=n(20165),P=n(30403),O=n(23508),L=n(9505),z=(0,l.Z)((function(e){return(0,s.Z)((0,i.Z)((0,i.Z)({sizedLabel:{minWidth:"75px"}},a.Bz),a.bK))}))((function(e){var t=e.open,n=e.closeModal,i=e.classes,s=e.onSet,a=(0,f.TL)(),l=(0,o.useState)(""),u=(0,r.Z)(l,2),d=u[0],x=u[1],h=(0,o.useState)(""),g=(0,r.Z)(h,2),m=g[0],b=g[1],y=(0,o.useState)(!1),Z=(0,r.Z)(y,2),C=Z[0],k=Z[1],S=(0,o.useState)(""),z=(0,r.Z)(S,2),E=z[0],F=z[1],R=(0,o.useState)(""),N=(0,r.Z)(R,2),A=N[0],_=N[1],B=(0,L.Z)((function(e){e.mfa_token?F(e.mfa_token):e.access_token?W("GET","/api/v1/subnet/apikey?token=".concat(e.access_token)):(s(e.apiKey),n())}),(function(e){a((0,p.Ih)(e)),n(),x(""),b(""),k(!1),F(""),_("")})),M=(0,r.Z)(B,2),K=M[0],W=M[1],D=function(){return(0,w.jsxs)(c.Z,{sx:{width:500},children:[(0,w.jsx)(j.Z,{className:i.spacerBottom,classes:{inputLabel:i.sizedLabel},id:"subnet-email",name:"subnet-email",onChange:function(e){return x(e.target.value)},label:"Email",value:d,overlayIcon:(0,w.jsx)(v.oyc,{})}),(0,w.jsx)(j.Z,{className:i.spacerBottom,classes:{inputLabel:i.sizedLabel},id:"subnet-password",name:"subnet-password",onChange:function(e){return b(e.target.value)},label:"Password",type:C?"text":"password",value:m,overlayIcon:C?(0,w.jsx)(T.Z,{}):(0,w.jsx)(I.Z,{}),overlayAction:function(){return k(!C)}})]})},U=function(){return(0,w.jsx)(c.Z,{sx:{display:"flex"},children:(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,w.jsx)(c.Z,{sx:{fontSize:"16px",display:"flex",flexFlow:"column",marginTop:"30px",marginBottom:"30px"},children:"Two-Factor Authentication"}),(0,w.jsx)(c.Z,{children:"Please enter the 6-digit verification code that was sent to your email address. This code will be valid for 5 minutes."}),(0,w.jsx)(c.Z,{sx:{flex:"1",marginTop:"30px"},children:(0,w.jsx)(j.Z,{overlayIcon:(0,w.jsx)(P.Z,{}),id:"subnet-otp",name:"subnet-otp",onChange:function(e){return _(e.target.value)},placeholder:"",label:"",value:A})}),(0,w.jsx)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"}})]})})};return t?(0,w.jsx)(O.Z,{title:"Get API Key from SUBNET",confirmText:"Get API Key",isOpen:t,titleIcon:(0,w.jsx)(v.szr,{}),isLoading:K,cancelText:"Cancel",onConfirm:function(){""!==E?W("POST","/api/v1/subnet/login/mfa",{username:d,otp:A,mfa_token:E}):W("POST","/api/v1/subnet/login",{username:d,password:m})},onClose:n,confirmButtonProps:{variant:"callAction",disabled:!d||!m||K,hidden:!0},cancelButtonProps:{disabled:K},confirmationContent:""===E?D():U()}):null})),E=function(e){var t=e.icon,n=e.description;return(0,w.jsxs)(c.Z,{sx:{display:"flex","& .min-icon":{marginRight:"10px",height:"23px",width:"23px",marginBottom:"10px"}},children:[t," ",(0,w.jsx)("div",{style:{fontSize:"14px",fontStyle:"italic",color:"#5E5E5E"},children:n})]})},F=function(e){var t=e.hasMargin,n=void 0===t||t;return(0,w.jsxs)(c.Z,{sx:{flex:1,border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"20px",marginLeft:{xs:"0px",sm:"0px",md:n?"30px":""},marginTop:{xs:"0px",sm:n?"30px":""}},children:[(0,w.jsxs)(c.Z,{sx:{fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center",marginBottom:"16px","& .min-icon":{height:"21px",width:"21px",marginRight:"15px"}},children:[(0,w.jsx)(v.M9A,{}),(0,w.jsx)("div",{children:"Why should I register?"})]}),(0,w.jsx)(c.Z,{sx:{fontSize:"14px",marginBottom:"15px"},children:"Registering this cluster with the MinIO Subscription Network (SUBNET) provides the following benefits in addition to the commercial license and SLA backed support."}),(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column"},children:[(0,w.jsx)(E,{icon:(0,w.jsx)(v._qw,{}),description:"Call Home Monitoring"}),(0,w.jsx)(E,{icon:(0,w.jsx)(v.toM,{}),description:"Health Diagnostics"}),(0,w.jsx)(E,{icon:(0,w.jsx)(v.Fsz,{}),description:"Performance Analysis"}),(0,w.jsx)(E,{icon:(0,w.jsx)(v.EQx,{}),description:(0,w.jsx)(b.Z,{href:"https://min.io/signup?ref=con",target:"_blank",sx:{color:"#2781B0",cursor:"pointer"},children:"More Features"})})]})]})},R=n(57689),N=n(56087),A=(0,l.Z)((function(e){return(0,s.Z)((0,i.Z)({sizedLabel:{minWidth:"75px"}},a.bK))}))((function(e){var t=e.classes,n=e.registerEndpoint,i=(0,R.s0)(),s=(0,o.useState)(!1),a=(0,r.Z)(s,2),l=a[0],d=a[1],x=(0,o.useState)(""),h=(0,r.Z)(x,2),g=h[0],m=h[1],b=(0,o.useState)(!1),y=(0,r.Z)(b,2),Z=y[0],k=y[1],S=(0,o.useState)(!1),I=(0,r.Z)(S,2),T=I[0],P=I[1],O=(0,f.TL)(),L=(0,o.useCallback)((function(){if(!Z){k(!0);var e={apiKey:g};u.Z.invoke("POST",n,e).then((function(e){k(!1),e&&e.registered&&(O((0,p.cN)(!0)),i(N.gA.LICENSE))})).catch((function(e){O((0,p.Ih)(e)),k(!1),E()}))}}),[g,O,Z,n,i]);(0,o.useEffect)((function(){T&&L()}),[T,L]);var E=function(){m(""),P(!1)};return(0,w.jsxs)(o.Fragment,{children:[(0,w.jsx)(c.Z,{sx:{"& .title-text":{marginLeft:"27px",fontWeight:600}},children:(0,w.jsx)(C,{icon:(0,w.jsx)(v.dRy,{}),title:"Register cluster with API key"})}),(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:{xs:"column",md:"row"}},children:[(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,w.jsx)(c.Z,{sx:{fontSize:"16px",display:"flex",flexFlow:"column",marginTop:"30px",marginBottom:"30px"},children:"Use your MinIO Subscription Network API Key to register this cluster."}),(0,w.jsxs)(c.Z,{sx:{flex:"1"},children:[(0,w.jsx)(j.Z,{className:t.spacerBottom,classes:{inputLabel:t.sizedLabel},id:"api-key",name:"api-key",onChange:function(e){return m(e.target.value)},label:"API Key",value:g}),(0,w.jsxs)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end","& button":{marginLeft:"8px"}},children:[(0,w.jsx)(v.zxk,{id:"get-from-subnet",variant:"regular",className:t.spacerRight,disabled:Z,onClick:function(){return d(!0)},label:"Get from SUBNET"}),(0,w.jsx)(v.zxk,{id:"register",type:"submit",variant:"callAction",disabled:Z||0===g.trim().length,onClick:function(){return L()},label:"Register"}),(0,w.jsx)(z,{open:l,closeModal:function(){return d(!1)},onSet:function(e){m(e),P(!0)}})]})]})]}),(0,w.jsx)(F,{})]})]})})),_=n(74165),B=n(15861),M=n(36825),K=n(96382),W=n(38442),D=(0,K.hg)("register/fetchLicenseInfo",function(){var e=(0,B.Z)((0,_.Z)().mark((function e(t,n){var r,i,o,s;return(0,_.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=n.getState,i=n.dispatch,o=r(),s=(0,W.F)(N.C3,N.LC[N.gA.LICENSE],!0),!o.register.loadingLicenseInfo){e.next=6;break}return e.abrupt("return");case 6:s?(i((0,M.pI)(!0)),u.Z.invoke("GET","/api/v1/subnet/info").then((function(e){i((0,M.aO)(e)),i((0,M.Dr)(!0)),i((0,M.pI)(!1))})).catch((function(e){e.detailedError.toLowerCase()!=="License is not present".toLowerCase()&&e.detailedError.toLowerCase()!=="license not found".toLowerCase()&&i((0,p.Ih)(e)),i((0,M.Dr)(!1)),i((0,M.pI)(!1))}))):i((0,M.pI)(!1));case 7:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),U=(0,K.hg)("register/callRegister",function(){var e=(0,B.Z)((0,_.Z)().mark((function e(t,n){var r,i;return(0,_.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=n.dispatch,i={token:t.token,account_id:t.account_id},u.Z.invoke("POST","/api/v1/subnet/register",i).then((function(){r((0,M.K4)(!1)),r((0,p.cN)(!0)),r((0,M.jS)()),r(D())})).catch((function(e){r((0,p.Ih)(e)),r((0,M.K4)(!1))}));case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),H=(0,K.hg)("register/subnetLoginWithMFA",function(){var e=(0,B.Z)((0,_.Z)().mark((function e(t,n){var r,i,o,s,a,l,c;return(0,_.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=n.getState,n.rejectWithValue,i=n.dispatch,o=r(),s=o.register.subnetEmail,a=o.register.subnetMFAToken,l=o.register.subnetOTP,!o.register.loading){e.next=8;break}return e.abrupt("return");case 8:i((0,M.K4)(!0)),c={username:s,otp:l,mfa_token:a},u.Z.invoke("POST","/api/v1/subnet/login/mfa",c).then((function(e){i((0,M.K4)(!1)),e&&e.access_token&&e.organizations.length>0&&(1===e.organizations.length?i(U({token:e.access_token,account_id:e.organizations[0].accountId.toString()})):(i((0,M.t2)(e.access_token)),i((0,M.dl)(e.organizations)),i((0,M.wK)(e.organizations[0].accountId.toString()))))})).catch((function(e){i((0,p.Ih)(e)),i((0,M.K4)(!1)),i((0,M.Z7)(""))}));case 11:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),G=(0,K.hg)("register/subnetLogin",function(){var e=(0,B.Z)((0,_.Z)().mark((function e(t,n){var r,i,o,s,a,l,c;return(0,_.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=n.getState,n.rejectWithValue,i=n.dispatch,o=r(),s=o.register.license,a=o.register.subnetPassword,l=o.register.subnetEmail,!o.register.loading){e.next=8;break}return e.abrupt("return");case 8:i((0,M.K4)(!0)),c={username:l,password:a,apiKey:s},u.Z.invoke("POST","/api/v1/subnet/login",c).then((function(e){i((0,M.K4)(!1)),e&&e.registered?(i((0,M.jS)()),i(D())):e&&e.mfa_token?i((0,M.dK)(e.mfa_token)):e&&e.access_token&&e.organizations.length>0&&(i((0,M.t2)(e.access_token)),i((0,M.dl)(e.organizations)),i((0,M.wK)(e.organizations[0].accountId.toString())))})).catch((function(e){i((0,p.Ih)(e)),i((0,M.K4)(!1)),i((0,M.jS)())}));case 11:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),V=n(27454),Y=n(78029),q=n.n(Y),X=n(57314),Q=function(){var e=(0,f.TL)(),t=(0,d.v9)((function(e){return e.register.subnetRegToken})),n=(0,d.v9)((function(e){return e.register.clusterRegistered})),i=(0,d.v9)((function(e){return e.register.licenseInfo})),s="https://subnet.min.io/cluster/register?token=".concat(t),a=(0,o.useState)(""),l=(0,r.Z)(a,2),u=l[0],x=l[1],h=(0,L.Z)((function(){e(D()),e((0,p.cN)(!0))}),(function(t){e((0,p.Ih)(t))})),g=(0,r.Z)(h,2),m=g[0],y=g[1];return(0,w.jsx)(o.Fragment,{children:(0,w.jsx)(c.Z,{sx:{border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"43px"},children:n&&i?(0,w.jsx)(k,{email:i.email}):(0,w.jsxs)(o.Fragment,{children:[(0,w.jsx)(c.Z,{sx:{"& .title-text":{marginLeft:"27px",fontWeight:600}},children:(0,w.jsx)(C,{icon:(0,w.jsx)(v.YL8,{}),title:"Register cluster in an Air-gap environment"})}),(0,w.jsxs)(c.Z,{sx:{display:"flex"},children:[(0,w.jsx)(c.Z,{sx:{display:"flex",flexFlow:"column",flex:"2",marginTop:"15px","& .step-number":{color:"#ffffff",height:"25px",width:"25px",background:"#081C42",marginRight:"10px",textAlign:"center",fontWeight:600,borderRadius:"50%"},"& .step-row":{fontSize:"16px",display:"flex",marginTop:"15px",marginBottom:"15px"}},children:(0,w.jsxs)(c.Z,{children:[(0,w.jsx)(c.Z,{className:"step-row",children:(0,w.jsx)("div",{className:"step-text",children:"Click on the link to register this cluster in SUBNET and get a License Key for this Air-Gap deployment"})}),(0,w.jsxs)(c.Z,{sx:{flex:"1",display:"flex",alignItems:"center",gap:3},children:[(0,w.jsx)(b.Z,{style:{color:"#2781B0",cursor:"pointer"},color:"inherit",href:s,target:"_blank",children:"https://subnet.min.io/cluster/register"}),(0,w.jsx)(V.Z,{tooltip:"Copy to Clipboard",children:(0,w.jsx)(q(),{text:s,children:(0,w.jsx)(v.zxk,{type:"button",id:"copy-ult-to-clip-board",icon:(0,w.jsx)(v.TIy,{}),color:"primary",variant:"regular"})})})]}),(0,w.jsx)("div",{style:{marginTop:"25px",fontSize:"14px",fontStyle:"italic",color:"#5E5E5E"},children:"Note: If this machine does not have internet connection, Copy paste the following URL in a browser where you access SUBNET and follow the instructions to complete the registration"}),(0,w.jsxs)(c.Z,{sx:{marginTop:"25px",display:"flex",flexDirection:"column"},children:[(0,w.jsxs)("label",{style:{fontWeight:"bold",marginBottom:"10px"},children:["Paste the License Key"," "]}),(0,w.jsx)(X.Z,{value:u,disabled:m,label:"",id:"licenseKey",name:"licenseKey",placeholder:"License Key",onChange:function(e){x(e.target.value)}})]}),(0,w.jsx)(c.Z,{sx:{marginTop:"25px"},children:(0,w.jsx)(v.zxk,{id:"apply-license-key",onClick:function(){y("PUT","/api/v1/configs/subnet",{key_values:[{key:"license",value:u}]})},variant:"callAction",disabled:!u||m,label:"Apply Cluster License"})})]})}),(0,w.jsx)(F,{})]})]})})})},J=function(){var e=(0,f.TL)(),t=(0,d.v9)((function(e){return e.register.subnetMFAToken})),n=(0,d.v9)((function(e){return e.register.subnetOTP})),r=(0,d.v9)((function(e){return e.register.loading}));return(0,w.jsxs)(c.Z,{sx:{display:"flex"},children:[(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,w.jsx)(c.Z,{sx:{fontSize:"16px",display:"flex",flexFlow:"column",marginTop:"30px",marginBottom:"30px"},children:"Two-Factor Authentication"}),(0,w.jsx)(c.Z,{children:"Please enter the 6-digit verification code that was sent to your email address. This code will be valid for 5 minutes."}),(0,w.jsx)(c.Z,{sx:{flex:"1",marginTop:"30px"},children:(0,w.jsx)(j.Z,{overlayIcon:(0,w.jsx)(P.Z,{}),id:"subnet-otp",name:"subnet-otp",onChange:function(t){return e((0,M.Z7)(t.target.value))},placeholder:"",label:"",value:n})}),(0,w.jsx)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:(0,w.jsx)(v.zxk,{id:"verify",onClick:function(){return e(H())},disabled:r||0===n.trim().length||0===t.trim().length,variant:"callAction",label:"Verify"})})]}),(0,w.jsx)(F,{})]})},$=n(90673),ee=function(){var e=(0,f.TL)(),t=(0,d.v9)((function(e){return e.register.subnetAccessToken})),n=(0,d.v9)((function(e){return e.register.selectedSubnetOrganization})),r=(0,d.v9)((function(e){return e.register.subnetOrganizations})),i=(0,d.v9)((function(e){return e.register.loading}));return(0,w.jsxs)(c.Z,{sx:{display:"flex"},children:[(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,w.jsx)(c.Z,{sx:{marginTop:"15px",marginBottom:"15px","& .title-text":{marginLeft:"0px"}},children:(0,w.jsx)(C,{title:"Register MinIO cluster"})}),(0,w.jsxs)(c.Z,{children:[(0,w.jsx)($.Z,{id:"subnet-organization",name:"subnet-organization",onChange:function(t){return e((0,M.wK)(t.target.value))},label:"Select an organization",value:n,options:r.map((function(e){return{label:e.company,value:e.accountId.toString()}}))}),(0,w.jsx)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",marginTop:"15px"},children:(0,w.jsx)(v.zxk,{id:"register-cluster",onClick:function(){return function(){i||(e((0,M.K4)(!0)),t&&n&&e(U({token:t,account_id:n})))}},disabled:i||0===t.trim().length,variant:"callAction",label:"Register"})})]})]}),(0,w.jsx)(F,{})]})},te=(0,n(72455).Z)((function(e){return(0,s.Z)((0,i.Z)({sizedLabel:{minWidth:"75px"}},a.bK))})),ne=function(){var e=te(),t=(0,f.TL)(),n=(0,d.v9)((function(e){return e.register.subnetPassword})),r=(0,d.v9)((function(e){return e.register.subnetEmail})),i=(0,d.v9)((function(e){return e.register.showPassword})),s=(0,d.v9)((function(e){return e.register.loading}));return(0,w.jsxs)(o.Fragment,{children:[(0,w.jsx)(c.Z,{sx:{"& .title-text":{marginLeft:"27px",fontWeight:600}},children:(0,w.jsx)(C,{icon:(0,w.jsx)(v.dRy,{}),title:"Online activation of MinIO Subscription Network License"})}),(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:{xs:"column",md:"row"}},children:[(0,w.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,w.jsx)(c.Z,{sx:{fontSize:"16px",display:"flex",flexFlow:"column",marginTop:"30px",marginBottom:"30px"},children:"Use your MinIO Subscription Network login credentials to register this cluster."}),(0,w.jsxs)(c.Z,{sx:{flex:"1"},children:[(0,w.jsx)(j.Z,{className:e.spacerBottom,classes:{inputLabel:e.sizedLabel},id:"subnet-email",name:"subnet-email",onChange:function(e){return t((0,M.Ze)(e.target.value))},label:"Email",value:r,overlayIcon:(0,w.jsx)(v.oyc,{})}),(0,w.jsx)(j.Z,{className:e.spacerBottom,classes:{inputLabel:e.sizedLabel},id:"subnet-password",name:"subnet-password",onChange:function(e){return t((0,M.lr)(e.target.value))},label:"Password",type:i?"text":"password",value:n,overlayIcon:i?(0,w.jsx)(T.Z,{}):(0,w.jsx)(I.Z,{}),overlayAction:function(){return t((0,M.R5)(!i))}}),(0,w.jsxs)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end","& button":{marginLeft:"8px"}},children:[(0,w.jsx)(v.zxk,{id:"sign-up",type:"submit",className:e.spacerRight,variant:"regular",onClick:function(e){e.preventDefault(),window.open("https://min.io/signup?ref=con","_blank")},label:"Sign up"}),(0,w.jsx)(v.zxk,{id:"register-credentials",type:"submit",variant:"callAction",disabled:s||0===r.trim().length||0===n.trim().length,onClick:function(){return t(G())},label:"Register"})]})]})]}),(0,w.jsx)(F,{})]})]})},re=n(47974),ie=n(99670),oe=(0,l.Z)((function(e){return(0,s.Z)((0,i.Z)({sizedLabel:{minWidth:"75px"}},a.bK))}))((function(e){e.classes;var t=(0,f.TL)(),n=(0,d.v9)((function(e){return e.register.subnetMFAToken})),i=(0,d.v9)((function(e){return e.register.subnetAccessToken})),s=(0,d.v9)((function(e){return e.register.subnetRegToken})),a=(0,d.v9)((function(e){return e.register.subnetOrganizations})),l=(0,d.v9)((function(e){return e.register.loading})),m=(0,d.v9)((function(e){return e.register.loadingLicenseInfo})),b=(0,d.v9)((function(e){return e.register.clusterRegistered})),y=(0,d.v9)((function(e){return e.register.licenseInfo})),j=(0,d.v9)((function(e){return e.register.curTab})),Z=(0,o.useState)(!0),C=(0,r.Z)(Z,2),I=C[0],T=C[1];(0,o.useEffect)((function(){return function(){t((0,M.jS)())}}),[t]);(0,o.useEffect)((function(){I&&(t(D()),T(!1))}),[I,T,t]);var P=(0,w.jsx)(o.Fragment,{});P=i&&a.length>0?(0,w.jsx)(ee,{}):n?(0,w.jsx)(J,{}):(0,w.jsx)(ne,{});var O=(0,w.jsxs)(o.Fragment,{children:[(0,w.jsx)(c.Z,{sx:{border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"43px"},children:b&&y?(0,w.jsx)(k,{email:y.email}):(0,w.jsx)(A,{registerEndpoint:"/api/v1/subnet/login"})}),(0,w.jsx)(S,{})]}),L=(0,w.jsx)(Q,{}),z=(0,w.jsxs)(o.Fragment,{children:[(0,w.jsx)(c.Z,{sx:{border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"43px"},children:b&&y?(0,w.jsx)(k,{email:y.email}):P}),!b&&(0,w.jsx)(S,{})]}),E=m?(0,w.jsx)("div",{children:"Loading.."}):z;return(0,o.useEffect)((function(){t((0,p.Sc)("register"))}),[]),(0,w.jsxs)(o.Fragment,{children:[(0,w.jsx)(re.Z,{label:"Register to MinIO Subscription Network",actions:(0,w.jsx)(ie.Z,{})}),(0,w.jsxs)(v.Xgh,{children:[(0,w.jsxs)(x.Z,{value:j,onChange:function(e,n){t((0,M.m)(n))},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[(0,w.jsx)(h.Z,{label:"Credentials",id:"simple-tab-0","aria-controls":"simple-tab-panel-0"}),(0,w.jsx)(h.Z,{label:"API Key",id:"simple-tab-1","aria-controls":"simple-tab-panel-1"}),(0,w.jsx)(h.Z,{label:"Air-Gap",id:"simple-tab-2","aria-controls":"simple-tab-panel-2",onClick:function(){l||s||(t((0,M.K4)(!0)),u.Z.invoke("GET","/api/v1/subnet/registration-token").then((function(e){t((0,M.K4)(!1)),e&&e.regToken&&t((0,M.wz)(e.regToken))})).catch((function(e){console.error(e),t((0,p.Ih)(e)),t((0,M.K4)(!1))})))}})]}),(0,w.jsx)(g.x,{index:0,value:j,children:E}),(0,w.jsx)(g.x,{index:1,value:j,children:O}),(0,w.jsx)(g.x,{index:2,value:j,children:L})]})]})}))},74440:function(e,t,n){"use strict";n(72791);var r=n(64554),i=n(29945),o=n(80184);t.Z=function(e){var t=e.email,n=void 0===t?"":t;return(0,o.jsxs)(r.Z,{sx:{height:"67px",color:"#ffffff",display:"flex",position:"relative",top:"-30px",left:"-32px",width:"calc(100% + 64px)",alignItems:"center",justifyContent:"space-between",backgroundColor:"#2781B0",padding:"0 25px 0 25px","& .registered-box, .reg-badge-box":{display:"flex",alignItems:"center",justifyContent:"flex-start"},"& .reg-badge-box":{marginLeft:"20px","& .min-icon":{fill:"#2781B0"}}},children:[(0,o.jsxs)(r.Z,{className:"registered-box",children:[(0,o.jsx)(r.Z,{sx:{fontSize:"16px",fontWeight:400},children:"Register status:"}),(0,o.jsxs)(r.Z,{className:"reg-badge-box",children:[(0,o.jsx)(i.SA,{}),(0,o.jsx)(r.Z,{sx:{fontWeight:600},children:"Registered"})]})]}),(0,o.jsxs)(r.Z,{className:"registered-acc-box",sx:{alignItems:"center",justifyContent:"flex-start",display:{sm:"flex",xs:"none"}},children:[(0,o.jsx)(r.Z,{sx:{fontSize:"16px",fontWeight:400},children:"Registered to:"}),(0,o.jsx)(r.Z,{sx:{marginLeft:"8px",fontWeight:600},children:n})]})]})}},30403:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var i=r(n(45649)),o=n(80184),s=(0,i.default)((0,o.jsx)("path",{d:"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6zm9 14H6V10h12v10zm-6-3c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"}),"LockOutlined");t.Z=s},3579:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var i=r(n(45649)),o=n(80184),s=(0,i.default)((0,o.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=s},20165:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var i=r(n(45649)),o=n(80184),s=(0,i.default)((0,o.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=s},45649:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return r.createSvgIcon}});var r=n(28610)},31260:function(e,t,n){"use strict";var r=n(78949);t.Z=r.Z},28610:function(e,t,n){"use strict";n.r(t),n.d(t,{capitalize:function(){return i.Z},createChainedFunction:function(){return o.Z},createSvgIcon:function(){return s.Z},debounce:function(){return a.Z},deprecatedPropType:function(){return l},isMuiElement:function(){return c.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return p},setRef:function(){return f},unstable_ClassNameGenerator:function(){return j},unstable_useEnhancedEffect:function(){return x.Z},unstable_useId:function(){return h.Z},unsupportedProp:function(){return g},useControlled:function(){return m.Z},useEventCallback:function(){return b.Z},useForkRef:function(){return v.Z},useIsFocusVisible:function(){return y.Z}});var r=n(55902),i=n(14036),o=n(31260),s=n(76189),a=n(83199);var l=function(e,t){return function(){return null}},c=n(19103),u=n(98301),d=n(17602);n(87462);var p=function(e,t){return function(){return null}},f=n(62971).Z,x=n(40162),h=n(67384);var g=function(e,t,n,r,i){return null},m=n(98278),b=n(89683),v=n(42071),y=n(23031),j={configure:function(e){r.Z.configure(e)}}},19103:function(e,t,n){"use strict";n.d(t,{Z:function(){return i}});var r=n(72791);var i=function(e,t){return r.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}},76998:function(e,t,n){"use strict";var r=n(42458),i={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var n,o,s,a,l,c,u=!1;t||(t={}),n=t.debug||!1;try{if(s=r(),a=document.createRange(),l=document.getSelection(),(c=document.createElement("span")).textContent=e,c.ariaHidden="true",c.style.all="unset",c.style.position="fixed",c.style.top=0,c.style.clip="rect(0, 0, 0, 0)",c.style.whiteSpace="pre",c.style.webkitUserSelect="text",c.style.MozUserSelect="text",c.style.msUserSelect="text",c.style.userSelect="text",c.addEventListener("copy",(function(r){if(r.stopPropagation(),t.format)if(r.preventDefault(),"undefined"===typeof r.clipboardData){n&&console.warn("unable to use e.clipboardData"),n&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var o=i[t.format]||i.default;window.clipboardData.setData(o,e)}else r.clipboardData.clearData(),r.clipboardData.setData(t.format,e);t.onCopy&&(r.preventDefault(),t.onCopy(r.clipboardData))})),document.body.appendChild(c),a.selectNodeContents(c),l.addRange(a),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");u=!0}catch(d){n&&console.error("unable to copy using execCommand: ",d),n&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),u=!0}catch(d){n&&console.error("unable to copy using clipboardData: ",d),n&&console.error("falling back to prompt"),o=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(o,e)}}finally{l&&("function"==typeof l.removeRange?l.removeRange(a):l.removeAllRanges()),c&&document.body.removeChild(c),s()}return u}},568:function(e,t,n){"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var i=a(n(72791)),o=a(n(76998)),s=["text","onCopy","options","children"];function a(e){return e&&e.__esModule?e:{default:e}}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function c(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function d(e,t){for(var n=0;n.\n\nimport React from \"react\";\nimport { Grid, InputLabel, TextField, Tooltip } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\ninterface CommentBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n inputLabel: {\n ...fieldBasic.inputLabel,\n fontSize: 14,\n margin: 0,\n alignItems: \"flex-start\",\n paddingTop: \"20px\",\n flexWrap: \"wrap\",\n display: \"flex\",\n },\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n cssOutlinedInput: {\n borderColor: \"#EAEAEA\",\n padding: 16,\n },\n rootContainer: {\n \"& .MuiOutlinedInput-inputMultiline\": {\n ...fieldBasic.inputLabel,\n fontSize: 13,\n minHeight: 150,\n },\n \"&.Mui-focused .MuiOutlinedInput-notchedOutline\": {\n borderColor: \"#07193E\",\n borderWidth: 1,\n },\n \"& textarea\": {\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n \"&:placeholder\": {\n color: \"#858585\",\n opacity: 1,\n fontWeight: 400,\n },\n },\n },\n });\n\nconst CommentBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n disabled = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n classes,\n}: CommentBoxProps) => {\n let inputProps: any = { \"data-index\": index };\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n\n
\n \n
\n \n
\n );\n};\n\nexport default withStyles(styles)(CommentBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n FormControl,\n InputBase,\n InputLabel,\n MenuItem,\n Select,\n SelectChangeEvent,\n Tooltip,\n} from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\nexport interface selectorTypes {\n label: string;\n value: string;\n}\n\ninterface SelectProps {\n options: selectorTypes[];\n value: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n onChange: (e: SelectChangeEvent) => void;\n disabled?: boolean;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n fieldContainer: {\n display: \"flex\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n height: 38,\n lineHeight: 1,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n },\n input: {\n height: 38,\n position: \"relative\",\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n padding: \"8px 20px 10px 10px\",\n border: \"#e5e5e5 1px solid\",\n borderRadius: 4,\n display: \"flex\",\n alignItems: \"center\",\n \"&:hover\": {\n borderColor: \"#393939\",\n },\n \"&:focus\": {\n backgroundColor: \"#fff\",\n },\n },\n }),\n)(InputBase);\n\nconst SelectWrapper = ({\n classes,\n id,\n name,\n onChange,\n options,\n label,\n tooltip = \"\",\n value,\n disabled = false,\n}: SelectProps) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n \n }\n disabled={disabled}\n >\n {options.map((option) => (\n \n {option.label}\n \n ))}\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(SelectWrapper);\n","import { Box, Grid, Link } from \"@mui/material\";\nimport { Fragment, useState } from \"react\";\nimport { CopyIcon, SettingsIcon } from \"mds\";\nimport FormSwitchWrapper from \"../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport RegistrationStatusBanner from \"./RegistrationStatusBanner\";\n\nexport const FormTitle = ({\n icon = null,\n title,\n}: {\n icon?: any;\n title: any;\n}) => {\n return (\n \n {icon}\n
{title}
\n \n );\n};\n\nexport const ClusterRegistered = ({ email }: { email: string }) => {\n return (\n \n \n \n \n Login to{\" \"}\n \n SUBNET\n {\" \"}\n to avail support for this MinIO cluster\n \n \n \n );\n};\n\nexport const ProxyConfiguration = () => {\n const proxyConfigurationCommand =\n \"mc admin config set {alias} subnet proxy={proxy}\";\n const [displaySubnetProxy, setDisplaySubnetProxy] = useState(false);\n return (\n \n \n \n \n \n
\n Proxy Configuration\n
\n \n \n For airgap/firewalled environments it is possible to{\" \"}\n \n configure a proxy\n {\" \"}\n to connect to SUBNET .\n \n \n {displaySubnetProxy && (\n {}}\n label=\"\"\n value={proxyConfigurationCommand}\n overlayIcon={}\n extraInputProps={{\n readOnly: true,\n }}\n overlayAction={() =>\n navigator.clipboard.writeText(proxyConfigurationCommand)\n }\n />\n )}\n \n \n \n ) => {\n setDisplaySubnetProxy(event.target.checked);\n }}\n />\n \n \n
\n );\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport LockOutlinedIcon from \"@mui/icons-material/LockOutlined\";\nimport {\n containerForHeader,\n spacingUtils,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport ConfirmDialog from \"../Common/ModalWrapper/ConfirmDialog\";\nimport useApi from \"../Common/Hooks/useApi\";\nimport React, { useState } from \"react\";\nimport { InfoIcon, UsersIcon } from \"mds\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setErrorSnackMessage } from \"../../../systemSlice\";\nimport { Box } from \"@mui/material\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n sizedLabel: {\n minWidth: \"75px\",\n },\n ...containerForHeader,\n ...spacingUtils,\n });\n\ninterface IGetApiKeyModalProps {\n open: boolean;\n closeModal: () => void;\n onSet: (apiKey: string) => void;\n classes: any;\n}\n\nconst GetApiKeyModal = ({\n open,\n closeModal,\n classes,\n onSet,\n}: IGetApiKeyModalProps) => {\n const dispatch = useAppDispatch();\n const [email, setEmail] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [showPassword, setShowPassword] = useState(false);\n const [mfaToken, setMfaToken] = useState(\"\");\n const [subnetOTP, setSubnetOTP] = useState(\"\");\n\n const onError = (err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n closeModal();\n setEmail(\"\");\n setPassword(\"\");\n setShowPassword(false);\n setMfaToken(\"\");\n setSubnetOTP(\"\");\n };\n\n const onSuccess = (res: any) => {\n if (res.mfa_token) {\n setMfaToken(res.mfa_token);\n } else if (res.access_token) {\n invokeApi(\"GET\", `/api/v1/subnet/apikey?token=${res.access_token}`);\n } else {\n onSet(res.apiKey);\n closeModal();\n }\n };\n\n const [isLoading, invokeApi] = useApi(onSuccess, onError);\n\n const onConfirm = () => {\n if (mfaToken !== \"\") {\n invokeApi(\"POST\", \"/api/v1/subnet/login/mfa\", {\n username: email,\n otp: subnetOTP,\n mfa_token: mfaToken,\n });\n } else {\n invokeApi(\"POST\", \"/api/v1/subnet/login\", { username: email, password });\n }\n };\n\n const getDialogContent = () => {\n if (mfaToken === \"\") {\n return getCredentialsDialog();\n }\n return getMFADialog();\n };\n\n const getCredentialsDialog = () => {\n return (\n \n ) =>\n setEmail(event.target.value)\n }\n label=\"Email\"\n value={email}\n overlayIcon={}\n />\n ) =>\n setPassword(event.target.value)\n }\n label=\"Password\"\n type={showPassword ? \"text\" : \"password\"}\n value={password}\n overlayIcon={\n showPassword ? : \n }\n overlayAction={() => setShowPassword(!showPassword)}\n />\n \n );\n };\n\n const getMFADialog = () => {\n return (\n \n \n \n Two-Factor Authentication\n \n\n \n Please enter the 6-digit verification code that was sent to your\n email address. This code will be valid for 5 minutes.\n \n\n \n }\n id=\"subnet-otp\"\n name=\"subnet-otp\"\n onChange={(event: React.ChangeEvent) =>\n setSubnetOTP(event.target.value)\n }\n placeholder=\"\"\n label=\"\"\n value={subnetOTP}\n />\n \n \n \n \n );\n };\n\n return open ? (\n }\n isLoading={isLoading}\n cancelText={\"Cancel\"}\n onConfirm={onConfirm}\n onClose={closeModal}\n confirmButtonProps={{\n variant: \"callAction\",\n disabled: !email || !password || isLoading,\n hidden: true,\n }}\n cancelButtonProps={{\n disabled: isLoading,\n }}\n confirmationContent={getDialogContent()}\n />\n ) : null;\n};\n\nexport default withStyles(styles)(GetApiKeyModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box, Link } from \"@mui/material\";\nimport {\n CallHomeFeatureIcon,\n DiagnosticsFeatureIcon,\n ExtraFeaturesIcon,\n HelpIconFilled,\n PerformanceFeatureIcon,\n} from \"mds\";\n\nconst FeatureItem = ({\n icon,\n description,\n}: {\n icon: any;\n description: string | React.ReactNode;\n}) => {\n return (\n \n {icon}{\" \"}\n
\n {description}\n
\n \n );\n};\nconst RegisterHelpBox = ({ hasMargin = true }: { hasMargin?: boolean }) => {\n return (\n \n \n \n
Why should I register?
\n \n \n Registering this cluster with the MinIO Subscription Network (SUBNET)\n provides the following benefits in addition to the commercial license\n and SLA backed support.\n \n\n \n }\n description={`Call Home Monitoring`}\n />\n }\n description={`Health Diagnostics`}\n />\n }\n description={`Performance Analysis`}\n />\n }\n description={\n \n More Features\n \n }\n />\n \n \n );\n};\n\nexport default RegisterHelpBox;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { Box } from \"@mui/material\";\nimport { Button, OnlineRegistrationIcon } from \"mds\";\nimport { FormTitle } from \"./utils\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport GetApiKeyModal from \"./GetApiKeyModal\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { SubnetLoginRequest, SubnetLoginResponse } from \"../License/types\";\nimport api from \"../../../common/api\";\nimport { useAppDispatch } from \"../../../store\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { spacingUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { useNavigate } from \"react-router-dom\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\n\ninterface IApiKeyRegister {\n classes: any;\n registerEndpoint: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n sizedLabel: {\n minWidth: \"75px\",\n },\n ...spacingUtils,\n });\n\nconst ApiKeyRegister = ({ classes, registerEndpoint }: IApiKeyRegister) => {\n const navigate = useNavigate();\n\n const [showApiKeyModal, setShowApiKeyModal] = useState(false);\n const [apiKey, setApiKey] = useState(\"\");\n const [loading, setLoading] = useState(false);\n const [fromModal, setFromModal] = useState(false);\n const dispatch = useAppDispatch();\n\n const onRegister = useCallback(() => {\n if (loading) {\n return;\n }\n setLoading(true);\n let request: SubnetLoginRequest = { apiKey };\n api\n .invoke(\"POST\", registerEndpoint, request)\n .then((resp: SubnetLoginResponse) => {\n setLoading(false);\n if (resp && resp.registered) {\n dispatch(setServerNeedsRestart(true));\n navigate(IAM_PAGES.LICENSE);\n }\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n reset();\n });\n }, [apiKey, dispatch, loading, registerEndpoint, navigate]);\n\n useEffect(() => {\n if (fromModal) {\n onRegister();\n }\n }, [fromModal, onRegister]);\n\n const reset = () => {\n setApiKey(\"\");\n setFromModal(false);\n };\n\n return (\n \n \n }\n title={`Register cluster with API key`}\n />\n \n \n \n \n Use your MinIO Subscription Network API Key to register this\n cluster.\n \n \n ) =>\n setApiKey(event.target.value)\n }\n label=\"API Key\"\n value={apiKey}\n />\n\n \n setShowApiKeyModal(true)}\n label={\"Get from SUBNET\"}\n />\n onRegister()}\n label={\"Register\"}\n />\n setShowApiKeyModal(false)}\n onSet={(value) => {\n setApiKey(value);\n setFromModal(true);\n }}\n />\n \n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(ApiKeyRegister);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n resetRegisterForm,\n setClusterRegistered,\n setLicenseInfo,\n setLoading,\n setLoadingLicenseInfo,\n setSelectedSubnetOrganization,\n setSubnetAccessToken,\n setSubnetMFAToken,\n setSubnetOrganizations,\n setSubnetOTP,\n} from \"./registerSlice\";\nimport api from \"../../../common/api\";\nimport {\n SubnetInfo,\n SubnetLoginRequest,\n SubnetLoginResponse,\n SubnetLoginWithMFARequest,\n SubnetRegisterRequest,\n} from \"../License/types\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { createAsyncThunk } from \"@reduxjs/toolkit\";\nimport { AppState } from \"../../../store\";\nimport { hasPermission } from \"../../../common/SecureComponent\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_PAGES,\n IAM_PAGES_PERMISSIONS,\n} from \"../../../common/SecureComponent/permissions\";\n\nexport const fetchLicenseInfo = createAsyncThunk(\n \"register/fetchLicenseInfo\",\n async (_, { getState, dispatch }) => {\n const state = getState() as AppState;\n\n const getSubnetInfo = hasPermission(\n CONSOLE_UI_RESOURCE,\n IAM_PAGES_PERMISSIONS[IAM_PAGES.LICENSE],\n true,\n );\n\n const loadingLicenseInfo = state.register.loadingLicenseInfo;\n\n if (loadingLicenseInfo) {\n return;\n }\n if (getSubnetInfo) {\n dispatch(setLoadingLicenseInfo(true));\n api\n .invoke(\"GET\", `/api/v1/subnet/info`)\n .then((res: SubnetInfo) => {\n dispatch(setLicenseInfo(res));\n dispatch(setClusterRegistered(true));\n dispatch(setLoadingLicenseInfo(false));\n })\n .catch((err: ErrorResponseHandler) => {\n if (\n err.detailedError.toLowerCase() !==\n \"License is not present\".toLowerCase() &&\n err.detailedError.toLowerCase() !==\n \"license not found\".toLowerCase()\n ) {\n dispatch(setErrorSnackMessage(err));\n }\n dispatch(setClusterRegistered(false));\n dispatch(setLoadingLicenseInfo(false));\n });\n } else {\n dispatch(setLoadingLicenseInfo(false));\n }\n },\n);\n\nexport interface ClassRegisterArgs {\n token: string;\n account_id: string;\n}\n\nexport const callRegister = createAsyncThunk(\n \"register/callRegister\",\n async (args: ClassRegisterArgs, { dispatch }) => {\n const request: SubnetRegisterRequest = {\n token: args.token,\n account_id: args.account_id,\n };\n api\n .invoke(\"POST\", \"/api/v1/subnet/register\", request)\n .then(() => {\n dispatch(setLoading(false));\n dispatch(setServerNeedsRestart(true));\n dispatch(resetRegisterForm());\n dispatch(fetchLicenseInfo());\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n });\n },\n);\n\nexport const subnetLoginWithMFA = createAsyncThunk(\n \"register/subnetLoginWithMFA\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n const subnetEmail = state.register.subnetEmail;\n const subnetMFAToken = state.register.subnetMFAToken;\n const subnetOTP = state.register.subnetOTP;\n const loading = state.register.loading;\n\n if (loading) {\n return;\n }\n dispatch(setLoading(true));\n const request: SubnetLoginWithMFARequest = {\n username: subnetEmail,\n otp: subnetOTP,\n mfa_token: subnetMFAToken,\n };\n api\n .invoke(\"POST\", \"/api/v1/subnet/login/mfa\", request)\n .then((resp: SubnetLoginResponse) => {\n dispatch(setLoading(false));\n if (resp && resp.access_token && resp.organizations.length > 0) {\n if (resp.organizations.length === 1) {\n dispatch(\n callRegister({\n token: resp.access_token,\n account_id: resp.organizations[0].accountId.toString(),\n }),\n );\n } else {\n dispatch(setSubnetAccessToken(resp.access_token));\n dispatch(setSubnetOrganizations(resp.organizations));\n dispatch(\n setSelectedSubnetOrganization(\n resp.organizations[0].accountId.toString(),\n ),\n );\n }\n }\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n dispatch(setSubnetOTP(\"\"));\n });\n },\n);\n\nexport const subnetLogin = createAsyncThunk(\n \"register/subnetLogin\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n const license = state.register.license;\n const subnetPassword = state.register.subnetPassword;\n const subnetEmail = state.register.subnetEmail;\n const loading = state.register.loading;\n\n if (loading) {\n return;\n }\n dispatch(setLoading(true));\n let request: SubnetLoginRequest = {\n username: subnetEmail,\n password: subnetPassword,\n apiKey: license,\n };\n api\n .invoke(\"POST\", \"/api/v1/subnet/login\", request)\n .then((resp: SubnetLoginResponse) => {\n dispatch(setLoading(false));\n if (resp && resp.registered) {\n dispatch(resetRegisterForm());\n dispatch(fetchLicenseInfo());\n } else if (resp && resp.mfa_token) {\n dispatch(setSubnetMFAToken(resp.mfa_token));\n } else if (resp && resp.access_token && resp.organizations.length > 0) {\n dispatch(setSubnetAccessToken(resp.access_token));\n dispatch(setSubnetOrganizations(resp.organizations));\n dispatch(\n setSelectedSubnetOrganization(\n resp.organizations[0].accountId.toString(),\n ),\n );\n }\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n dispatch(resetRegisterForm());\n });\n },\n);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Box, Link } from \"@mui/material\";\nimport { ClusterRegistered, FormTitle } from \"./utils\";\nimport { Button, CopyIcon, OfflineRegistrationIcon } from \"mds\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { useSelector } from \"react-redux\";\nimport CommentBoxWrapper from \"../Common/FormComponents/CommentBoxWrapper/CommentBoxWrapper\";\nimport useApi from \"../Common/Hooks/useApi\";\nimport { fetchLicenseInfo } from \"./registerThunks\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\n\nconst OfflineRegistration = () => {\n const dispatch = useAppDispatch();\n const subnetRegToken = useSelector(\n (state: AppState) => state.register.subnetRegToken,\n );\n const clusterRegistered = useSelector(\n (state: AppState) => state.register.clusterRegistered,\n );\n const licenseInfo = useSelector(\n (state: AppState) => state.register.licenseInfo,\n );\n\n const offlineRegUrl = `https://subnet.min.io/cluster/register?token=${subnetRegToken}`;\n\n const [licenseKey, setLicenseKey] = useState(\"\");\n\n const [isSaving, invokeApplyLicenseApi] = useApi(\n () => {\n dispatch(fetchLicenseInfo());\n dispatch(setServerNeedsRestart(true));\n },\n (err) => {\n dispatch(setErrorSnackMessage(err));\n },\n );\n\n const applyAirGapLicense = () => {\n invokeApplyLicenseApi(\"PUT\", `/api/v1/configs/subnet`, {\n key_values: [{ key: \"license\", value: licenseKey }],\n });\n };\n\n return (\n \n \n {clusterRegistered && licenseInfo ? (\n \n ) : (\n \n \n }\n title={`Register cluster in an Air-gap environment`}\n />\n \n\n \n \n \n \n
\n Click on the link to register this cluster in SUBNET and\n get a License Key for this Air-Gap deployment\n
\n
\n\n \n \n https://subnet.min.io/cluster/register\n \n\n \n \n }\n color={\"primary\"}\n variant={\"regular\"}\n />\n \n \n
\n\n \n Note: If this machine does not have internet connection,\n Copy paste the following URL in a browser where you access\n SUBNET and follow the instructions to complete the\n registration\n \n\n \n \n {\n setLicenseKey(e.target.value);\n }}\n />\n \n \n \n \n \n \n \n \n
\n )}\n \n
\n );\n};\n\nexport default OfflineRegistration;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box } from \"@mui/material\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport LockOutlinedIcon from \"@mui/icons-material/LockOutlined\";\nimport { setSubnetOTP } from \"./registerSlice\";\nimport { Button } from \"mds\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { useSelector } from \"react-redux\";\nimport { subnetLoginWithMFA } from \"./registerThunks\";\n\nconst SubnetMFAToken = () => {\n const dispatch = useAppDispatch();\n\n const subnetMFAToken = useSelector(\n (state: AppState) => state.register.subnetMFAToken,\n );\n const subnetOTP = useSelector((state: AppState) => state.register.subnetOTP);\n const loading = useSelector((state: AppState) => state.register.loading);\n\n return (\n \n \n \n Two-Factor Authentication\n \n\n \n Please enter the 6-digit verification code that was sent to your email\n address. This code will be valid for 5 minutes.\n \n\n \n }\n id=\"subnet-otp\"\n name=\"subnet-otp\"\n onChange={(event: React.ChangeEvent) =>\n dispatch(setSubnetOTP(event.target.value))\n }\n placeholder=\"\"\n label=\"\"\n value={subnetOTP}\n />\n \n \n dispatch(subnetLoginWithMFA())}\n disabled={\n loading ||\n subnetOTP.trim().length === 0 ||\n subnetMFAToken.trim().length === 0\n }\n variant=\"callAction\"\n label={\"Verify\"}\n />\n \n \n\n \n \n );\n};\nexport default SubnetMFAToken;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box } from \"@mui/material\";\nimport { FormTitle } from \"./utils\";\nimport SelectWrapper from \"../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport { setLoading, setSelectedSubnetOrganization } from \"./registerSlice\";\nimport { Button } from \"mds\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { callRegister } from \"./registerThunks\";\n\nconst ClusterRegistrationForm = () => {\n const dispatch = useAppDispatch();\n\n const subnetAccessToken = useSelector(\n (state: AppState) => state.register.subnetAccessToken,\n );\n const selectedSubnetOrganization = useSelector(\n (state: AppState) => state.register.selectedSubnetOrganization,\n );\n const subnetOrganizations = useSelector(\n (state: AppState) => state.register.subnetOrganizations,\n );\n const loading = useSelector((state: AppState) => state.register.loading);\n\n return (\n \n \n \n \n \n \n \n dispatch(setSelectedSubnetOrganization(e.target.value as string))\n }\n label=\"Select an organization\"\n value={selectedSubnetOrganization}\n options={subnetOrganizations.map((organization) => ({\n label: organization.company,\n value: organization.accountId.toString(),\n }))}\n />\n \n () => {\n if (loading) {\n return;\n }\n dispatch(setLoading(true));\n if (subnetAccessToken && selectedSubnetOrganization) {\n dispatch(\n callRegister({\n token: subnetAccessToken,\n account_id: selectedSubnetOrganization,\n }),\n );\n }\n }}\n disabled={loading || subnetAccessToken.trim().length === 0}\n variant=\"callAction\"\n label={\"Register\"}\n />\n \n \n \n \n \n );\n};\n\nexport default ClusterRegistrationForm;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Box } from \"@mui/material\";\nimport { FormTitle } from \"./utils\";\nimport { Button, OnlineRegistrationIcon, UsersIcon } from \"mds\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { spacingUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport {\n setShowPassword,\n setSubnetEmail,\n setSubnetPassword,\n} from \"./registerSlice\";\nimport { subnetLogin } from \"./registerThunks\";\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n sizedLabel: {\n minWidth: \"75px\",\n },\n ...spacingUtils,\n }),\n);\n\nconst OnlineRegistration = () => {\n const classes = useStyles();\n const dispatch = useAppDispatch();\n\n const subnetPassword = useSelector(\n (state: AppState) => state.register.subnetPassword,\n );\n const subnetEmail = useSelector(\n (state: AppState) => state.register.subnetEmail,\n );\n const showPassword = useSelector(\n (state: AppState) => state.register.showPassword,\n );\n const loading = useSelector((state: AppState) => state.register.loading);\n\n return (\n \n \n }\n title={`Online activation of MinIO Subscription Network License`}\n />\n \n \n \n \n Use your MinIO Subscription Network login credentials to register\n this cluster.\n \n \n ) =>\n dispatch(setSubnetEmail(event.target.value))\n }\n label=\"Email\"\n value={subnetEmail}\n overlayIcon={}\n />\n ) =>\n dispatch(setSubnetPassword(event.target.value))\n }\n label=\"Password\"\n type={showPassword ? \"text\" : \"password\"}\n value={subnetPassword}\n overlayIcon={\n showPassword ? : \n }\n overlayAction={() => dispatch(setShowPassword(!showPassword))}\n />\n\n \n {\n e.preventDefault();\n window.open(`https://min.io/signup?ref=con`, \"_blank\");\n }}\n label={\"Sign up\"}\n />\n dispatch(subnetLogin())}\n label={\"Register\"}\n />\n \n \n \n \n \n \n );\n};\n\nexport default OnlineRegistration;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { spacingUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Box } from \"@mui/material\";\nimport api from \"../../../common/api\";\n\nimport { SubnetRegTokenResponse } from \"../License/types\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { useSelector } from \"react-redux\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport Tabs from \"@mui/material/Tabs\";\nimport Tab from \"@mui/material/Tab\";\nimport { TabPanel } from \"../../shared/tabs\";\nimport { ClusterRegistered, ProxyConfiguration } from \"./utils\";\nimport ApiKeyRegister from \"./ApiKeyRegister\";\nimport { fetchLicenseInfo } from \"./registerThunks\";\nimport {\n resetRegisterForm,\n setCurTab,\n setLoading,\n setSubnetRegToken,\n} from \"./registerSlice\";\nimport OfflineRegistration from \"./OfflineRegistration\";\nimport SubnetMFAToken from \"./SubnetMFAToken\";\nimport ClusterRegistrationForm from \"./ClusterRegistrationForm\";\nimport OnlineRegistration from \"./OnlineRegistration\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport { PageLayout } from \"mds\";\nimport HelpMenu from \"../HelpMenu\";\n\ninterface IRegister {\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n sizedLabel: {\n minWidth: \"75px\",\n },\n ...spacingUtils,\n });\n\nconst Register = ({ classes }: IRegister) => {\n const dispatch = useAppDispatch();\n\n const subnetMFAToken = useSelector(\n (state: AppState) => state.register.subnetMFAToken,\n );\n const subnetAccessToken = useSelector(\n (state: AppState) => state.register.subnetAccessToken,\n );\n\n const subnetRegToken = useSelector(\n (state: AppState) => state.register.subnetRegToken,\n );\n const subnetOrganizations = useSelector(\n (state: AppState) => state.register.subnetOrganizations,\n );\n\n const loading = useSelector((state: AppState) => state.register.loading);\n const loadingLicenseInfo = useSelector(\n (state: AppState) => state.register.loadingLicenseInfo,\n );\n const clusterRegistered = useSelector(\n (state: AppState) => state.register.clusterRegistered,\n );\n const licenseInfo = useSelector(\n (state: AppState) => state.register.licenseInfo,\n );\n const curTab = useSelector((state: AppState) => state.register.curTab);\n\n const [initialLicenseLoading, setInitialLicenseLoading] =\n useState(true);\n\n useEffect(() => {\n // when unmounted, reset\n return () => {\n dispatch(resetRegisterForm());\n };\n }, [dispatch]);\n\n const fetchSubnetRegToken = () => {\n if (loading || subnetRegToken) {\n return;\n }\n dispatch(setLoading(true));\n api\n .invoke(\"GET\", \"/api/v1/subnet/registration-token\")\n .then((resp: SubnetRegTokenResponse) => {\n dispatch(setLoading(false));\n if (resp && resp.regToken) {\n dispatch(setSubnetRegToken(resp.regToken));\n }\n })\n .catch((err: ErrorResponseHandler) => {\n console.error(err);\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n });\n };\n\n useEffect(() => {\n if (initialLicenseLoading) {\n dispatch(fetchLicenseInfo());\n setInitialLicenseLoading(false);\n }\n }, [initialLicenseLoading, setInitialLicenseLoading, dispatch]);\n\n let clusterRegistrationForm: JSX.Element = ;\n\n if (subnetAccessToken && subnetOrganizations.length > 0) {\n clusterRegistrationForm = ;\n } else if (subnetMFAToken) {\n clusterRegistrationForm = ;\n } else {\n clusterRegistrationForm = ;\n }\n\n const apiKeyRegistration = (\n \n \n {clusterRegistered && licenseInfo ? (\n \n ) : (\n \n )}\n \n \n \n );\n\n const offlineRegistration = ;\n\n const regUi = (\n \n \n {clusterRegistered && licenseInfo ? (\n \n ) : (\n clusterRegistrationForm\n )}\n \n\n {!clusterRegistered && }\n \n );\n\n const loadingUi =
Loading..
;\n const uiToShow = loadingLicenseInfo ? loadingUi : regUi;\n\n useEffect(() => {\n dispatch(setHelpName(\"register\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n }\n />\n\n \n , newValue: number) => {\n dispatch(setCurTab(newValue));\n }}\n indicatorColor=\"primary\"\n textColor=\"primary\"\n aria-label=\"cluster-tabs\"\n variant=\"scrollable\"\n scrollButtons=\"auto\"\n >\n \n \n fetchSubnetRegToken()}\n />\n \n\n \n {uiToShow}\n \n \n {apiKeyRegistration}\n \n \n {offlineRegistration}\n \n \n \n );\n};\n\nexport default withStyles(styles)(Register);\n","import React from \"react\";\nimport { Box } from \"@mui/material\";\nimport { VerifiedIcon } from \"mds\";\n\nconst RegistrationStatusBanner = ({ email = \"\" }: { email?: string }) => {\n return (\n \n \n Register status:\n \n \n \n Registered\n \n \n \n\n \n Registered to:\n {email}\n \n \n );\n};\nexport default RegistrationStatusBanner;\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6zm9 14H6V10h12v10zm-6-3c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z\"\n}), 'LockOutlined');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["withStyles","theme","createStyles","_objectSpread","fieldBasic","tooltipHelper","inputLabel","fontSize","margin","alignItems","paddingTop","flexWrap","display","textBoxContainer","flexGrow","position","cssOutlinedInput","borderColor","padding","rootContainer","minHeight","borderWidth","color","fontWeight","opacity","_ref","label","onChange","value","id","name","_ref$disabled","disabled","_ref$tooltip","tooltip","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","placeholder","classes","inputProps","_jsx","React","children","_jsxs","Grid","item","xs","className","concat","fieldContainer","errorInField","InputLabel","htmlFor","tooltipContainer","Tooltip","title","placement","HelpIcon","TextField","fullWidth","multiline","rows","helperText","InputLabelProps","shrink","InputProps","notchedOutline","root","variant","inputStyles","makeStyles","inputFieldStyles","InputField","props","overlayAction","right","top","maxWidth","maxHeight","_ref$type","type","_ref$autoComplete","autoComplete","_ref$multiline","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","onKeyPress","onFocus","onPaste","_useState","useState","_useState2","_slicedToArray","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","container","clsx","inputBoxContainer","noMinWidthLabel","inputRebase","IconButton","onClick","size","disableFocusRipple","disableRipple","disableTouchRipple","SelectStyled","height","lineHeight","marginTop","spacing","input","border","borderRadius","backgroundColor","InputBase","flexFlow","options","FormControl","Select","map","option","MenuItem","FormTitle","_ref$icon","icon","Box","sx","justifyContent","ClusterRegistered","_ref2","email","Fragment","RegistrationStatusBanner","cursor","Link","href","target","style","ProxyConfiguration","proxyConfigurationCommand","displaySubnetProxy","setDisplaySubnetProxy","width","SettingsIcon","marginLeft","marginBottom","InputBoxWrapper","CopyIcon","readOnly","navigator","clipboard","writeText","FormSwitchWrapper","checked","event","sizedLabel","minWidth","containerForHeader","spacingUtils","open","closeModal","onSet","dispatch","useAppDispatch","setEmail","_useState3","_useState4","password","setPassword","_useState5","_useState6","showPassword","setShowPassword","_useState7","_useState8","mfaToken","setMfaToken","_useState9","_useState10","subnetOTP","setSubnetOTP","_useApi","useApi","res","mfa_token","access_token","invokeApi","apiKey","err","setErrorSnackMessage","_useApi2","isLoading","getCredentialsDialog","spacerBottom","UsersIcon","getMFADialog","flex","LockOutlinedIcon","ConfirmDialog","confirmText","isOpen","titleIcon","InfoIcon","cancelText","onConfirm","username","otp","onClose","confirmButtonProps","hidden","cancelButtonProps","confirmationContent","FeatureItem","description","marginRight","fontStyle","_ref2$hasMargin","hasMargin","sm","md","HelpIconFilled","CallHomeFeatureIcon","DiagnosticsFeatureIcon","PerformanceFeatureIcon","ExtraFeaturesIcon","registerEndpoint","navigate","useNavigate","showApiKeyModal","setShowApiKeyModal","setApiKey","loading","setLoading","fromModal","setFromModal","onRegister","useCallback","request","api","invoke","then","resp","registered","setServerNeedsRestart","IAM_PAGES","LICENSE","catch","reset","useEffect","OnlineRegistrationIcon","Button","spacerRight","trim","length","GetApiKeyModal","RegisterHelpBox","fetchLicenseInfo","createAsyncThunk","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_","getState","state","getSubnetInfo","wrap","_context","prev","next","hasPermission","CONSOLE_UI_RESOURCE","IAM_PAGES_PERMISSIONS","register","loadingLicenseInfo","abrupt","setLoadingLicenseInfo","setLicenseInfo","setClusterRegistered","detailedError","toLowerCase","stop","_x","_x2","apply","arguments","callRegister","_ref4","_callee2","args","_ref3","_context2","token","account_id","resetRegisterForm","_x3","_x4","subnetLoginWithMFA","_ref6","_callee3","_ref5","subnetEmail","subnetMFAToken","_context3","rejectWithValue","organizations","accountId","toString","setSubnetAccessToken","setSubnetOrganizations","setSelectedSubnetOrganization","_x5","_x6","subnetLogin","_ref8","_callee4","_ref7","license","subnetPassword","_context4","setSubnetMFAToken","_x7","_x8","subnetRegToken","useSelector","clusterRegistered","licenseInfo","offlineRegUrl","licenseKey","setLicenseKey","isSaving","invokeApplyLicenseApi","OfflineRegistrationIcon","background","textAlign","gap","TooltipWrapper","CopyToClipboard","text","flexDirection","CommentBoxWrapper","e","key_values","key","subnetAccessToken","selectedSubnetOrganization","subnetOrganizations","SelectWrapper","organization","company","useStyles","setSubnetEmail","setSubnetPassword","preventDefault","window","curTab","initialLicenseLoading","setInitialLicenseLoading","clusterRegistrationForm","ClusterRegistrationForm","SubnetMFAToken","OnlineRegistration","apiKeyRegistration","ApiKeyRegister","offlineRegistration","OfflineRegistration","regUi","uiToShow","setHelpName","PageHeaderWrapper","actions","HelpMenu","PageLayout","Tabs","newValue","setCurTab","indicatorColor","textColor","scrollButtons","Tab","regToken","setSubnetRegToken","console","TabPanel","_ref$email","left","fill","VerifiedIcon","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","enumerable","get","_utils","createSvgIcon","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","muiName","deselectCurrent","clipboardToIE11Formatting","module","debug","message","reselectPrevious","range","selection","success","document","createRange","getSelection","createElement","textContent","ariaHidden","all","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","addEventListener","stopPropagation","format","clipboardData","warn","clearData","setData","onCopy","body","appendChild","selectNodeContents","addRange","execCommand","Error","copyKey","test","userAgent","replace","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","_react","_copyToClipboard","_excluded","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","i","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","call","_defineProperties","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","this","self","TypeError","_assertThisInitialized","_possibleConstructorReturn","ReferenceError","getPrototypeOf","_React$PureComponent","subClass","superClass","create","_inherits","Constructor","protoProps","staticProps","_super","_this","instance","_classCallCheck","_len","Array","_key","_this$props","elem","Children","only","_this$props2","cloneElement","PureComponent","undefined","rangeCount","active","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","focus"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1520.af5d5afd.chunk.js b/portal-ui/build/static/js/1520.af5d5afd.chunk.js deleted file mode 100644 index 10dbf3c2f..000000000 --- a/portal-ui/build/static/js/1520.af5d5afd.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1520],{85523:function(e,r,o){o.d(r,{Z:function(){return S}});var a=o(4942),n=o(63366),t=o(87462),l=o(72791),i=o(28182),c=o(94419),s=o(52930),u=o(20890),d=o(14036),m=o(66934),f=o(31402),p=o(75878),v=o(21217);function Z(e){return(0,v.Z)("MuiFormControlLabel",e)}var h=(0,p.Z)("MuiFormControlLabel",["root","labelPlacementStart","labelPlacementTop","labelPlacementBottom","disabled","label","error","required","asterisk"]),b=o(76147),g=o(80184),w=["checked","className","componentsProps","control","disabled","disableTypography","inputRef","label","labelPlacement","name","onChange","required","slotProps","value"],C=(0,m.ZP)("label",{name:"MuiFormControlLabel",slot:"Root",overridesResolver:function(e,r){var o=e.ownerState;return[(0,a.Z)({},"& .".concat(h.label),r.label),r.root,r["labelPlacement".concat((0,d.Z)(o.labelPlacement))]]}})((function(e){var r=e.theme,o=e.ownerState;return(0,t.Z)((0,a.Z)({display:"inline-flex",alignItems:"center",cursor:"pointer",verticalAlign:"middle",WebkitTapHighlightColor:"transparent",marginLeft:-11,marginRight:16},"&.".concat(h.disabled),{cursor:"default"}),"start"===o.labelPlacement&&{flexDirection:"row-reverse",marginLeft:16,marginRight:-11},"top"===o.labelPlacement&&{flexDirection:"column-reverse",marginLeft:16},"bottom"===o.labelPlacement&&{flexDirection:"column",marginLeft:16},(0,a.Z)({},"& .".concat(h.label),(0,a.Z)({},"&.".concat(h.disabled),{color:(r.vars||r).palette.text.disabled})))})),k=(0,m.ZP)("span",{name:"MuiFormControlLabel",slot:"Asterisk",overridesResolver:function(e,r){return r.asterisk}})((function(e){var r=e.theme;return(0,a.Z)({},"&.".concat(h.error),{color:(r.vars||r).palette.error.main})})),S=l.forwardRef((function(e,r){var o,a,m=(0,f.Z)({props:e,name:"MuiFormControlLabel"}),p=m.className,v=m.componentsProps,h=void 0===v?{}:v,S=m.control,x=m.disabled,P=m.disableTypography,y=m.label,R=m.labelPlacement,M=void 0===R?"end":R,j=m.required,N=m.slotProps,F=void 0===N?{}:N,z=(0,n.Z)(m,w),q=(0,s.Z)(),L=null!=(o=null!=x?x:S.props.disabled)?o:null==q?void 0:q.disabled,I=null!=j?j:S.props.required,D={disabled:L,required:I};["checked","name","onChange","value","inputRef"].forEach((function(e){"undefined"===typeof S.props[e]&&"undefined"!==typeof m[e]&&(D[e]=m[e])}));var G=(0,b.Z)({props:m,muiFormControl:q,states:["error"]}),E=(0,t.Z)({},m,{disabled:L,labelPlacement:M,required:I,error:G.error}),O=function(e){var r=e.classes,o=e.disabled,a=e.labelPlacement,n=e.error,t=e.required,l={root:["root",o&&"disabled","labelPlacement".concat((0,d.Z)(a)),n&&"error",t&&"required"],label:["label",o&&"disabled"],asterisk:["asterisk",n&&"error"]};return(0,c.Z)(l,Z,r)}(E),T=null!=(a=F.typography)?a:h.typography,B=y;return null==B||B.type===u.Z||P||(B=(0,g.jsx)(u.Z,(0,t.Z)({component:"span"},T,{className:(0,i.Z)(O.label,null==T?void 0:T.className),children:B}))),(0,g.jsxs)(C,(0,t.Z)({className:(0,i.Z)(O.root,p),ownerState:E,ref:r},z,{children:[l.cloneElement(S,D),B,I&&(0,g.jsxs)(k,{ownerState:E,"aria-hidden":!0,className:O.asterisk,children:["\u2009","*"]})]}))}))},61419:function(e,r,o){o.d(r,{Z:function(){return z}});var a=o(4942),n=o(63366),t=o(87462),l=o(72791),i=o(28182),c=o(94419),s=o(12065),u=o(97278),d=o(31402),m=o(76189),f=o(80184),p=(0,m.Z)((0,f.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"RadioButtonUnchecked"),v=(0,m.Z)((0,f.jsx)("path",{d:"M8.465 8.465C9.37 7.56 10.62 7 12 7C14.76 7 17 9.24 17 12C17 13.38 16.44 14.63 15.535 15.535C14.63 16.44 13.38 17 12 17C9.24 17 7 14.76 7 12C7 10.62 7.56 9.37 8.465 8.465Z"}),"RadioButtonChecked"),Z=o(66934),h=(0,Z.ZP)("span")({position:"relative",display:"flex"}),b=(0,Z.ZP)(p)({transform:"scale(1)"}),g=(0,Z.ZP)(v)((function(e){var r=e.theme,o=e.ownerState;return(0,t.Z)({left:0,position:"absolute",transform:"scale(0)",transition:r.transitions.create("transform",{easing:r.transitions.easing.easeIn,duration:r.transitions.duration.shortest})},o.checked&&{transform:"scale(1)",transition:r.transitions.create("transform",{easing:r.transitions.easing.easeOut,duration:r.transitions.duration.shortest})})}));var w=function(e){var r=e.checked,o=void 0!==r&&r,a=e.classes,n=void 0===a?{}:a,l=e.fontSize,i=(0,t.Z)({},e,{checked:o});return(0,f.jsxs)(h,{className:n.root,ownerState:i,children:[(0,f.jsx)(b,{fontSize:l,className:n.background,ownerState:i}),(0,f.jsx)(g,{fontSize:l,className:n.dot,ownerState:i})]})},C=o(14036),k=o(31260),S=o(18672);var x=o(75878),P=o(21217);function y(e){return(0,P.Z)("MuiRadio",e)}var R=(0,x.Z)("MuiRadio",["root","checked","disabled","colorPrimary","colorSecondary"]),M=["checked","checkedIcon","color","icon","name","onChange","size","className"],j=(0,Z.ZP)(u.Z,{shouldForwardProp:function(e){return(0,Z.FO)(e)||"classes"===e},name:"MuiRadio",slot:"Root",overridesResolver:function(e,r){var o=e.ownerState;return[r.root,r["color".concat((0,C.Z)(o.color))]]}})((function(e){var r=e.theme,o=e.ownerState;return(0,t.Z)({color:(r.vars||r).palette.text.secondary},!o.disableRipple&&{"&:hover":{backgroundColor:r.vars?"rgba(".concat("default"===o.color?r.vars.palette.action.activeChannel:r.vars.palette[o.color].mainChannel," / ").concat(r.vars.palette.action.hoverOpacity,")"):(0,s.Fq)("default"===o.color?r.palette.action.active:r.palette[o.color].main,r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==o.color&&(0,a.Z)({},"&.".concat(R.checked),{color:(r.vars||r).palette[o.color].main}),(0,a.Z)({},"&.".concat(R.disabled),{color:(r.vars||r).palette.action.disabled}))}));var N=(0,f.jsx)(w,{checked:!0}),F=(0,f.jsx)(w,{}),z=l.forwardRef((function(e,r){var o,a,s,u,m=(0,d.Z)({props:e,name:"MuiRadio"}),p=m.checked,v=m.checkedIcon,Z=void 0===v?N:v,h=m.color,b=void 0===h?"primary":h,g=m.icon,w=void 0===g?F:g,x=m.name,P=m.onChange,R=m.size,z=void 0===R?"medium":R,q=m.className,L=(0,n.Z)(m,M),I=(0,t.Z)({},m,{color:b,size:z}),D=function(e){var r=e.classes,o=e.color,a={root:["root","color".concat((0,C.Z)(o))]};return(0,t.Z)({},r,(0,c.Z)(a,y,r))}(I),G=l.useContext(S.Z),E=p,O=(0,k.Z)(P,G&&G.onChange),T=x;return G&&("undefined"===typeof E&&(s=G.value,E="object"===typeof(u=m.value)&&null!==u?s===u:String(s)===String(u)),"undefined"===typeof T&&(T=G.name)),(0,f.jsx)(j,(0,t.Z)({type:"radio",icon:l.cloneElement(w,{fontSize:null!=(o=F.props.fontSize)?o:z}),checkedIcon:l.cloneElement(Z,{fontSize:null!=(a=N.props.fontSize)?a:z}),ownerState:I,classes:D,name:T,checked:E,onChange:O,ref:r,className:(0,i.Z)(D.root,q)},L))}))},10765:function(e,r,o){o.d(r,{Z:function(){return P}});var a=o(29439),n=o(87462),t=o(63366),l=o(72791),i=o(28182),c=o(94419),s=o(66934),u=o(31402),d=o(75878),m=o(21217);function f(e){return(0,m.Z)("MuiFormGroup",e)}(0,d.Z)("MuiFormGroup",["root","row","error"]);var p=o(52930),v=o(76147),Z=o(80184),h=["className","row"],b=(0,s.ZP)("div",{name:"MuiFormGroup",slot:"Root",overridesResolver:function(e,r){var o=e.ownerState;return[r.root,o.row&&r.row]}})((function(e){var r=e.ownerState;return(0,n.Z)({display:"flex",flexDirection:"column",flexWrap:"wrap"},r.row&&{flexDirection:"row"})})),g=l.forwardRef((function(e,r){var o=(0,u.Z)({props:e,name:"MuiFormGroup"}),a=o.className,l=o.row,s=void 0!==l&&l,d=(0,t.Z)(o,h),m=(0,p.Z)(),g=(0,v.Z)({props:o,muiFormControl:m,states:["error"]}),w=(0,n.Z)({},o,{row:s,error:g.error}),C=function(e){var r=e.classes,o={root:["root",e.row&&"row",e.error&&"error"]};return(0,c.Z)(o,f,r)}(w);return(0,Z.jsx)(b,(0,n.Z)({className:(0,i.Z)(C.root,a),ownerState:w,ref:r},d))})),w=o(42071),C=o(98278),k=o(18672),S=o(67384),x=["actions","children","defaultValue","name","onChange","value"],P=l.forwardRef((function(e,r){var o=e.actions,i=e.children,c=e.defaultValue,s=e.name,u=e.onChange,d=e.value,m=(0,t.Z)(e,x),f=l.useRef(null),p=(0,C.Z)({controlled:d,default:c,name:"RadioGroup"}),v=(0,a.Z)(p,2),h=v[0],b=v[1];l.useImperativeHandle(o,(function(){return{focus:function(){var e=f.current.querySelector("input:not(:disabled):checked");e||(e=f.current.querySelector("input:not(:disabled)")),e&&e.focus()}}}),[]);var P=(0,w.Z)(r,f),y=(0,S.Z)(s),R=l.useMemo((function(){return{name:y,onChange:function(e){b(e.target.value),u&&u(e,e.target.value)},value:h}}),[y,u,b,h]);return(0,Z.jsx)(k.Z.Provider,{value:R,children:(0,Z.jsx)(g,(0,n.Z)({role:"radiogroup",ref:P},m,{children:i}))})}))},18672:function(e,r,o){var a=o(72791).createContext(void 0);r.Z=a}}]); -//# sourceMappingURL=1520.af5d5afd.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/1520.af5d5afd.chunk.js.map b/portal-ui/build/static/js/1520.af5d5afd.chunk.js.map deleted file mode 100644 index e4e3508b0..000000000 --- a/portal-ui/build/static/js/1520.af5d5afd.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/1520.af5d5afd.chunk.js","mappings":"+RAEO,SAASA,EAAkCC,GAChD,OAAOC,EAAAA,EAAAA,GAAqB,sBAAuBD,EACrD,CACA,IACA,GADgCE,EAAAA,EAAAA,GAAuB,sBAAuB,CAAC,OAAQ,sBAAuB,oBAAqB,uBAAwB,WAAY,QAAS,QAAS,WAAY,a,sBCH/LC,EAAY,CAAC,UAAW,YAAa,kBAAmB,UAAW,WAAY,oBAAqB,WAAY,QAAS,iBAAkB,OAAQ,WAAY,WAAY,YAAa,SA8BjLC,GAAuBC,EAAAA,EAAAA,IAAO,QAAS,CAClDC,KAAM,sBACNN,KAAM,OACNO,kBAAmB,SAACC,EAAOC,GACzB,IACEC,EACEF,EADFE,WAEF,MAAO,EAAAC,EAAAA,EAAAA,GAAA,SAAAC,OACEC,EAAwBC,OAAUL,EAAOK,OAC/CL,EAAOM,KAAMN,EAAO,iBAADG,QAAkBI,EAAAA,EAAAA,GAAWN,EAAWO,kBAChE,GAVkCZ,EAWjC,SAAAa,GAAA,IACDC,EAAKD,EAALC,MACAT,EAAUQ,EAAVR,WAAU,OACNU,EAAAA,EAAAA,IAAQT,EAAAA,EAAAA,GAAC,CACbU,QAAS,cACTC,WAAY,SACZC,OAAQ,UAERC,cAAe,SACfC,wBAAyB,cACzBC,YAAa,GACbC,YAAa,IAAE,KAAAf,OAETC,EAAwBe,UAAa,CACzCL,OAAQ,YAEqB,UAA9Bb,EAAWO,gBAA8B,CAC1CY,cAAe,cACfH,WAAY,GAEZC,aAAc,IACiB,QAA9BjB,EAAWO,gBAA4B,CACxCY,cAAe,iBACfH,WAAY,IACmB,WAA9BhB,EAAWO,gBAA+B,CAC3CY,cAAe,SACfH,WAAY,KACbf,EAAAA,EAAAA,GAAA,SAAAC,OACQC,EAAwBC,QAAKH,EAAAA,EAAAA,GAAA,QAAAC,OAC5BC,EAAwBe,UAAa,CACzCE,OAAQX,EAAMY,MAAQZ,GAAOa,QAAQC,KAAKL,YAG9C,IACIM,GAAoB7B,EAAAA,EAAAA,IAAO,OAAQ,CACvCC,KAAM,sBACNN,KAAM,WACNO,kBAAmB,SAACC,EAAOC,GAAM,OAAKA,EAAO0B,QAAQ,GAH7B9B,EAIvB,SAAA+B,GAAA,IACDjB,EAAKiB,EAALjB,MAAK,OAAAR,EAAAA,EAAAA,GAAA,QAAAC,OAECC,EAAwBwB,OAAU,CACtCP,OAAQX,EAAMY,MAAQZ,GAAOa,QAAQK,MAAMC,MAC5C,IAwJH,EAjJsCC,EAAAA,YAAiB,SAA0BC,EAASC,GACxF,IAAIC,EAAMC,EACJnC,GAAQoC,EAAAA,EAAAA,GAAc,CAC1BpC,MAAOgC,EACPlC,KAAM,wBAGJuC,EASErC,EATFqC,UAASC,EASPtC,EARFuC,gBAAAA,OAAe,IAAAD,EAAG,CAAC,EAACA,EACpBE,EAOExC,EAPFwC,QACUC,EAMRzC,EANFoB,SACAsB,EAKE1C,EALF0C,kBACOC,EAIL3C,EAJFM,MAAKsC,EAIH5C,EAHFS,eAAAA,OAAc,IAAAmC,EAAG,MAAKA,EACZC,EAER7C,EAFF8C,SAAQC,EAEN/C,EADFgD,UAAAA,OAAS,IAAAD,EAAG,CAAC,EAACA,EAEhBE,GAAQC,EAAAA,EAAAA,GAA8BlD,EAAOL,GACzCwD,GAAiBC,EAAAA,EAAAA,KACjBhC,EAAoF,OAAxEc,EAAuB,MAAhBO,EAAuBA,EAAeD,EAAQxC,MAAMoB,UAAoBc,EAAyB,MAAlBiB,OAAyB,EAASA,EAAe/B,SACnJ0B,EAA2B,MAAhBD,EAAuBA,EAAeL,EAAQxC,MAAM8C,SAC/DO,EAAe,CACnBjC,SAAAA,EACA0B,SAAAA,GAEF,CAAC,UAAW,OAAQ,WAAY,QAAS,YAAYQ,SAAQ,SAAAC,GACzB,qBAAvBf,EAAQxC,MAAMuD,IAA8C,qBAAfvD,EAAMuD,KAC5DF,EAAaE,GAAOvD,EAAMuD,GAE9B,IACA,IAAMC,GAAMC,EAAAA,EAAAA,GAAiB,CAC3BzD,MAAAA,EACAmD,eAAAA,EACAO,OAAQ,CAAC,WAELxD,GAAaU,EAAAA,EAAAA,GAAS,CAAC,EAAGZ,EAAO,CACrCoB,SAAAA,EACAX,eAAAA,EACAqC,SAAAA,EACAjB,MAAO2B,EAAI3B,QAEP8B,EArHkB,SAAAzD,GACxB,IACEyD,EAKEzD,EALFyD,QACAvC,EAIElB,EAJFkB,SACAX,EAGEP,EAHFO,eACAoB,EAEE3B,EAFF2B,MACAiB,EACE5C,EADF4C,SAEIc,EAAQ,CACZrD,KAAM,CAAC,OAAQa,GAAY,WAAY,iBAAFhB,QAAmBI,EAAAA,EAAAA,GAAWC,IAAmBoB,GAAS,QAASiB,GAAY,YACpHxC,MAAO,CAAC,QAASc,GAAY,YAC7BO,SAAU,CAAC,WAAYE,GAAS,UAElC,OAAOgC,EAAAA,EAAAA,GAAeD,EAAOrE,EAAmCoE,EAClE,CAuGkBG,CAAkB5D,GAC5B6D,EAAwE,OAAjD5B,EAAwBa,EAAUgB,YAAsB7B,EAAwBI,EAAgByB,WACzH1D,EAAQqC,EASZ,OARa,MAATrC,GAAiBA,EAAM2D,OAASC,EAAAA,GAAexB,IACjDpC,GAAqB6D,EAAAA,EAAAA,KAAKD,EAAAA,GAAYtD,EAAAA,EAAAA,GAAS,CAC7CwD,UAAW,QACVL,EAAqB,CACtB1B,WAAWgC,EAAAA,EAAAA,GAAKV,EAAQrD,MAA8B,MAAvByD,OAA8B,EAASA,EAAoB1B,WAC1FiC,SAAUhE,OAGMiE,EAAAA,EAAAA,MAAM3E,GAAsBgB,EAAAA,EAAAA,GAAS,CACvDyB,WAAWgC,EAAAA,EAAAA,GAAKV,EAAQpD,KAAM8B,GAC9BnC,WAAYA,EACZ+B,IAAKA,GACJgB,EAAO,CACRqB,SAAU,CAAcvC,EAAAA,aAAmBS,EAASa,GAAe/C,EAAOwC,IAAyByB,EAAAA,EAAAA,MAAM7C,EAAmB,CAC1HxB,WAAYA,EACZ,eAAe,EACfmC,UAAWsB,EAAQhC,SACnB2C,SAAU,CAAC,SAAU,UAG3B,G,oLCtJA,GAAeE,EAAAA,EAAAA,IAA4BL,EAAAA,EAAAA,KAAK,OAAQ,CACtDM,EAAG,iIACD,wBCFJ,GAAeD,EAAAA,EAAAA,IAA4BL,EAAAA,EAAAA,KAAK,OAAQ,CACtDM,EAAG,gLACD,sB,WCDEC,GAAsB7E,EAAAA,EAAAA,IAAO,OAAPA,CAAe,CACzC8E,SAAU,WACV9D,QAAS,SAEL+D,GAA4B/E,EAAAA,EAAAA,IAAOgF,EAAPhF,CAAiC,CAEjEiF,UAAW,aAEPC,GAAqBlF,EAAAA,EAAAA,IAAOmF,EAAPnF,EAA+B,SAAAqC,GAAA,IACxDvB,EAAKuB,EAALvB,MACAT,EAAUgC,EAAVhC,WAAU,OACNU,EAAAA,EAAAA,GAAS,CACbqE,KAAM,EACNN,SAAU,WACVG,UAAW,WACXI,WAAYvE,EAAMwE,YAAYC,OAAO,YAAa,CAChDC,OAAQ1E,EAAMwE,YAAYE,OAAOC,OACjCC,SAAU5E,EAAMwE,YAAYI,SAASC,YAEtCtF,EAAWuF,SAAW,CACvBX,UAAW,WACXI,WAAYvE,EAAMwE,YAAYC,OAAO,YAAa,CAChDC,OAAQ1E,EAAMwE,YAAYE,OAAOK,QACjCH,SAAU5E,EAAMwE,YAAYI,SAASC,YAEvC,IA4CF,MAvCA,SAAyBxF,GACvB,IAAA2F,EAII3F,EAHFyF,QAAAA,OAAO,IAAAE,GAAQA,EAAAC,EAGb5F,EAFF2D,QAAAA,OAAO,IAAAiC,EAAG,CAAC,EAACA,EACZC,EACE7F,EADF6F,SAEI3F,GAAaU,EAAAA,EAAAA,GAAS,CAAC,EAAGZ,EAAO,CACrCyF,QAAAA,IAEF,OAAoBlB,EAAAA,EAAAA,MAAMG,EAAqB,CAC7CrC,UAAWsB,EAAQpD,KACnBL,WAAYA,EACZoE,SAAU,EAAcH,EAAAA,EAAAA,KAAKS,EAA2B,CACtDiB,SAAUA,EACVxD,UAAWsB,EAAQmC,WACnB5F,WAAYA,KACGiE,EAAAA,EAAAA,KAAKY,EAAoB,CACxCc,SAAUA,EACVxD,UAAWsB,EAAQoC,IACnB7F,WAAYA,MAGlB,E,2DC1DO,SAAS8F,EAAqBxG,GACnC,OAAOC,EAAAA,EAAAA,GAAqB,WAAYD,EAC1C,CACA,IACA,GADqBE,EAAAA,EAAAA,GAAuB,WAAY,CAAC,OAAQ,UAAW,WAAY,eAAgB,mBCHlGC,EAAY,CAAC,UAAW,cAAe,QAAS,OAAQ,OAAQ,WAAY,OAAQ,aA0BpFsG,GAAYpG,EAAAA,EAAAA,IAAOqG,EAAAA,EAAY,CACnCC,kBAAmB,SAAAC,GAAI,OAAIC,EAAAA,EAAAA,IAAsBD,IAAkB,YAATA,CAAkB,EAC5EtG,KAAM,WACNN,KAAM,OACNO,kBAAmB,SAACC,EAAOC,GACzB,IACEC,EACEF,EADFE,WAEF,MAAO,CAACD,EAAOM,KAAMN,EAAO,QAADG,QAASI,EAAAA,EAAAA,GAAWN,EAAWoB,SAC5D,GATgBzB,EAUf,SAAAqC,GAAA,IACDvB,EAAKuB,EAALvB,MACAT,EAAUgC,EAAVhC,WAAU,OACNU,EAAAA,EAAAA,GAAS,CACbU,OAAQX,EAAMY,MAAQZ,GAAOa,QAAQC,KAAK6E,YACxCpG,EAAWqG,eAAiB,CAC9B,UAAW,CACTC,gBAAiB7F,EAAMY,KAAO,QAAHnB,OAAgC,YAArBF,EAAWoB,MAAsBX,EAAMY,KAAKC,QAAQiF,OAAOC,cAAgB/F,EAAMY,KAAKC,QAAQtB,EAAWoB,OAAOqF,YAAW,OAAAvG,OAAMO,EAAMY,KAAKC,QAAQiF,OAAOG,aAAY,MAAMC,EAAAA,EAAAA,IAA2B,YAArB3G,EAAWoB,MAAsBX,EAAMa,QAAQiF,OAAOK,OAASnG,EAAMa,QAAQtB,EAAWoB,OAAOQ,KAAMnB,EAAMa,QAAQiF,OAAOG,cAEnV,uBAAwB,CACtBJ,gBAAiB,iBAGC,YAArBtG,EAAWoB,QAAmBnB,EAAAA,EAAAA,GAAA,QAAAC,OACzB2G,EAAatB,SAAY,CAC7BnE,OAAQX,EAAMY,MAAQZ,GAAOa,QAAQtB,EAAWoB,OAAOQ,QAE1D3B,EAAAA,EAAAA,GAAA,QAAAC,OACO2G,EAAa3F,UAAa,CAC9BE,OAAQX,EAAMY,MAAQZ,GAAOa,QAAQiF,OAAOrF,WAE9C,IASF,IAAM4F,GAAkC7C,EAAAA,EAAAA,KAAK8C,EAAiB,CAC5DxB,SAAS,IAELyB,GAA2B/C,EAAAA,EAAAA,KAAK8C,EAAiB,CAAC,GA2IxD,EA1I2BlF,EAAAA,YAAiB,SAAeC,EAASC,GAClE,IAAIkF,EAAuBC,EAbLC,EAAGC,EAcnBtH,GAAQoC,EAAAA,EAAAA,GAAc,CAC1BpC,MAAOgC,EACPlC,KAAM,aAGKyH,EAQPvH,EARFyF,QAAO+B,EAQLxH,EAPFyH,YAAAA,OAAW,IAAAD,EAAGR,EAAkBQ,EAAAE,EAO9B1H,EANFsB,MAAAA,OAAK,IAAAoG,EAAG,UAASA,EAAAC,EAMf3H,EALF4H,KAAAA,OAAI,IAAAD,EAAGT,EAAWS,EACZE,EAIJ7H,EAJFF,KACUgI,EAGR9H,EAHF+H,SAAQC,EAGNhI,EAFFiI,KAAAA,OAAI,IAAAD,EAAG,SAAQA,EACf3F,EACErC,EADFqC,UAEFY,GAAQC,EAAAA,EAAAA,GAA8BlD,EAAOL,GACzCO,GAAaU,EAAAA,EAAAA,GAAS,CAAC,EAAGZ,EAAO,CACrCsB,MAAAA,EACA2G,KAAAA,IAEItE,EA3EkB,SAAAzD,GACxB,IACEyD,EAEEzD,EAFFyD,QACArC,EACEpB,EADFoB,MAEIsC,EAAQ,CACZrD,KAAM,CAAC,OAAQ,QAAFH,QAAUI,EAAAA,EAAAA,GAAWc,MAEpC,OAAOV,EAAAA,EAAAA,GAAS,CAAC,EAAG+C,GAASE,EAAAA,EAAAA,GAAeD,EAAOoC,EAAsBrC,GAC3E,CAkEkBG,CAAkB5D,GAC5BgI,EC3FCnG,EAAAA,WAAiBoG,EAAAA,GD4FpB1C,EAAU8B,EACRQ,GAAWK,EAAAA,EAAAA,GAAsBN,EAAcI,GAAcA,EAAWH,UAC1EjI,EAAO+H,EASX,OARIK,IACqB,qBAAZzC,IAvCS4B,EAwCOa,EAAWG,MAApC5C,EAvCa,kBADQ6B,EAwCsBtH,EAAMqI,QAvClB,OAANf,EACpBD,IAAMC,EAIRgB,OAAOjB,KAAOiB,OAAOhB,IAoCN,qBAATxH,IACTA,EAAOoI,EAAWpI,QAGFqE,EAAAA,EAAAA,KAAK8B,GAAWrF,EAAAA,EAAAA,GAAS,CAC3CqD,KAAM,QACN2D,KAAmB7F,EAAAA,aAAmB6F,EAAM,CAC1C/B,SAAkE,OAAvDsB,EAAwBD,EAAYlH,MAAM6F,UAAoBsB,EAAwBc,IAEnGR,YAA0B1F,EAAAA,aAAmB0F,EAAa,CACxD5B,SAAyE,OAA9DuB,EAAwBJ,EAAmBhH,MAAM6F,UAAoBuB,EAAwBa,IAE1G/H,WAAYA,EACZyD,QAASA,EACT7D,KAAMA,EACN2F,QAASA,EACTsC,SAAUA,EACV9F,IAAKA,EACLI,WAAWgC,EAAAA,EAAAA,GAAKV,EAAQpD,KAAM8B,IAC7BY,GACL,G,0KExHO,SAASsF,EAAyB/I,GACvC,OAAOC,EAAAA,EAAAA,GAAqB,eAAgBD,EAC9C,EACyBE,EAAAA,EAAAA,GAAuB,eAAgB,CAAC,OAAQ,MAAO,UAAhF,I,iCCHMC,EAAY,CAAC,YAAa,OAsB1B6I,GAAgB3I,EAAAA,EAAAA,IAAO,MAAO,CAClCC,KAAM,eACNN,KAAM,OACNO,kBAAmB,SAACC,EAAOC,GACzB,IACEC,EACEF,EADFE,WAEF,MAAO,CAACD,EAAOM,KAAML,EAAWuI,KAAOxI,EAAOwI,IAChD,GARoB5I,EASnB,SAAAqC,GAAA,IACDhC,EAAUgC,EAAVhC,WAAU,OACNU,EAAAA,EAAAA,GAAS,CACbC,QAAS,OACTQ,cAAe,SACfqH,SAAU,QACTxI,EAAWuI,KAAO,CACnBpH,cAAe,OACf,IA6DF,EAtD+BU,EAAAA,YAAiB,SAAmBC,EAASC,GAC1E,IAAMjC,GAAQoC,EAAAA,EAAAA,GAAc,CAC1BpC,MAAOgC,EACPlC,KAAM,iBAGJuC,EAEErC,EAFFqC,UAASsG,EAEP3I,EADFyI,IAAAA,OAAG,IAAAE,GAAQA,EAEb1F,GAAQC,EAAAA,EAAAA,GAA8BlD,EAAOL,GACzCwD,GAAiBC,EAAAA,EAAAA,KACjBI,GAAMC,EAAAA,EAAAA,GAAiB,CAC3BzD,MAAAA,EACAmD,eAAAA,EACAO,OAAQ,CAAC,WAELxD,GAAaU,EAAAA,EAAAA,GAAS,CAAC,EAAGZ,EAAO,CACrCyI,IAAAA,EACA5G,MAAO2B,EAAI3B,QAEP8B,EAvDkB,SAAAzD,GACxB,IACEyD,EAGEzD,EAHFyD,QAIIC,EAAQ,CACZrD,KAAM,CAAC,OAFLL,EAFFuI,KAIsB,MAFpBvI,EADF2B,OAGsC,UAExC,OAAOgC,EAAAA,EAAAA,GAAeD,EAAO2E,EAA0B5E,EACzD,CA6CkBG,CAAkB5D,GAClC,OAAoBiE,EAAAA,EAAAA,KAAKqE,GAAe5H,EAAAA,EAAAA,GAAS,CAC/CyB,WAAWgC,EAAAA,EAAAA,GAAKV,EAAQpD,KAAM8B,GAC9BnC,WAAYA,EACZ+B,IAAKA,GACJgB,GACL,I,4CCxEMtD,EAAY,CAAC,UAAW,WAAY,eAAgB,OAAQ,WAAY,SA2F9E,EAlFgCoC,EAAAA,YAAiB,SAAoB/B,EAAOiC,GAC1E,IAGI2G,EAME5I,EANF4I,QACAtE,EAKEtE,EALFsE,SACAuE,EAIE7I,EAJF6I,aACMhB,EAGJ7H,EAHFF,KACAiI,EAEE/H,EAFF+H,SACOe,EACL9I,EADFqI,MAEFpF,GAAQC,EAAAA,EAAAA,GAA8BlD,EAAOL,GACzCoJ,EAAUhH,EAAAA,OAAa,MAC7BiH,GAA+BC,EAAAA,EAAAA,GAAc,CAC3CC,WAAYJ,EACZK,QAASN,EACT/I,KAAM,eACNsJ,GAAAC,EAAAA,EAAAA,GAAAL,EAAA,GAJKX,EAAKe,EAAA,GAAEE,EAAaF,EAAA,GAK3BrH,EAAAA,oBAA0B6G,GAAS,iBAAO,CACxCW,MAAO,WACL,IAAIC,EAAQT,EAAQU,QAAQC,cAAc,gCACrCF,IACHA,EAAQT,EAAQU,QAAQC,cAAc,yBAEpCF,GACFA,EAAMD,OAEV,EACD,GAAG,IACJ,IAAMI,GAAYC,EAAAA,EAAAA,GAAW3H,EAAK8G,GAC5BjJ,GAAO+J,EAAAA,EAAAA,GAAMhC,GACbiC,EAAe/H,EAAAA,SAAc,iBAAO,CACxCjC,KAAAA,EACAiI,SAAQ,SAACgC,GACPT,EAAcS,EAAMC,OAAO3B,OACvBN,GACFA,EAASgC,EAAOA,EAAMC,OAAO3B,MAEjC,EACAA,MAAAA,EACD,GAAG,CAACvI,EAAMiI,EAAUuB,EAAejB,IACpC,OAAoBlE,EAAAA,EAAAA,KAAKgE,EAAAA,EAAkB8B,SAAU,CACnD5B,MAAOyB,EACPxF,UAAuBH,EAAAA,EAAAA,KAAK+F,GAAWtJ,EAAAA,EAAAA,GAAS,CAC9CuJ,KAAM,aACNlI,IAAK0H,GACJ1G,EAAO,CACRqB,SAAUA,MAGhB,G,4BCzDM6D,E,SAAiCpG,mBAAoBqI,GAI3D,K","sources":["../node_modules/@mui/material/FormControlLabel/formControlLabelClasses.js","../node_modules/@mui/material/FormControlLabel/FormControlLabel.js","../node_modules/@mui/material/internal/svg-icons/RadioButtonUnchecked.js","../node_modules/@mui/material/internal/svg-icons/RadioButtonChecked.js","../node_modules/@mui/material/Radio/RadioButtonIcon.js","../node_modules/@mui/material/Radio/radioClasses.js","../node_modules/@mui/material/Radio/Radio.js","../node_modules/@mui/material/RadioGroup/useRadioGroup.js","../node_modules/@mui/material/FormGroup/formGroupClasses.js","../node_modules/@mui/material/FormGroup/FormGroup.js","../node_modules/@mui/material/RadioGroup/RadioGroup.js","../node_modules/@mui/material/RadioGroup/RadioGroupContext.js"],"sourcesContent":["import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormControlLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormControlLabel', slot);\n}\nconst formControlLabelClasses = generateUtilityClasses('MuiFormControlLabel', ['root', 'labelPlacementStart', 'labelPlacementTop', 'labelPlacementBottom', 'disabled', 'label', 'error', 'required', 'asterisk']);\nexport default formControlLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"checked\", \"className\", \"componentsProps\", \"control\", \"disabled\", \"disableTypography\", \"inputRef\", \"label\", \"labelPlacement\", \"name\", \"onChange\", \"required\", \"slotProps\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { useFormControl } from '../FormControl';\nimport Typography from '../Typography';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport formControlLabelClasses, { getFormControlLabelUtilityClasses } from './formControlLabelClasses';\nimport formControlState from '../FormControl/formControlState';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n disabled,\n labelPlacement,\n error,\n required\n } = ownerState;\n const slots = {\n root: ['root', disabled && 'disabled', `labelPlacement${capitalize(labelPlacement)}`, error && 'error', required && 'required'],\n label: ['label', disabled && 'disabled'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormControlLabelUtilityClasses, classes);\n};\nexport const FormControlLabelRoot = styled('label', {\n name: 'MuiFormControlLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formControlLabelClasses.label}`]: styles.label\n }, styles.root, styles[`labelPlacement${capitalize(ownerState.labelPlacement)}`]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'inline-flex',\n alignItems: 'center',\n cursor: 'pointer',\n // For correct alignment with the text.\n verticalAlign: 'middle',\n WebkitTapHighlightColor: 'transparent',\n marginLeft: -11,\n marginRight: 16,\n // used for row presentation of radio/checkbox\n [`&.${formControlLabelClasses.disabled}`]: {\n cursor: 'default'\n }\n}, ownerState.labelPlacement === 'start' && {\n flexDirection: 'row-reverse',\n marginLeft: 16,\n // used for row presentation of radio/checkbox\n marginRight: -11\n}, ownerState.labelPlacement === 'top' && {\n flexDirection: 'column-reverse',\n marginLeft: 16\n}, ownerState.labelPlacement === 'bottom' && {\n flexDirection: 'column',\n marginLeft: 16\n}, {\n [`& .${formControlLabelClasses.label}`]: {\n [`&.${formControlLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n }\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormControlLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formControlLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\n\n/**\n * Drop-in replacement of the `Radio`, `Switch` and `Checkbox` component.\n * Use this component if you want to display an extra label.\n */\nconst FormControlLabel = /*#__PURE__*/React.forwardRef(function FormControlLabel(inProps, ref) {\n var _ref, _slotProps$typography;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormControlLabel'\n });\n const {\n className,\n componentsProps = {},\n control,\n disabled: disabledProp,\n disableTypography,\n label: labelProp,\n labelPlacement = 'end',\n required: requiredProp,\n slotProps = {}\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const disabled = (_ref = disabledProp != null ? disabledProp : control.props.disabled) != null ? _ref : muiFormControl == null ? void 0 : muiFormControl.disabled;\n const required = requiredProp != null ? requiredProp : control.props.required;\n const controlProps = {\n disabled,\n required\n };\n ['checked', 'name', 'onChange', 'value', 'inputRef'].forEach(key => {\n if (typeof control.props[key] === 'undefined' && typeof props[key] !== 'undefined') {\n controlProps[key] = props[key];\n }\n });\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['error']\n });\n const ownerState = _extends({}, props, {\n disabled,\n labelPlacement,\n required,\n error: fcs.error\n });\n const classes = useUtilityClasses(ownerState);\n const typographySlotProps = (_slotProps$typography = slotProps.typography) != null ? _slotProps$typography : componentsProps.typography;\n let label = labelProp;\n if (label != null && label.type !== Typography && !disableTypography) {\n label = /*#__PURE__*/_jsx(Typography, _extends({\n component: \"span\"\n }, typographySlotProps, {\n className: clsx(classes.label, typographySlotProps == null ? void 0 : typographySlotProps.className),\n children: label\n }));\n }\n return /*#__PURE__*/_jsxs(FormControlLabelRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/React.cloneElement(control, controlProps), label, required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormControlLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component appears selected.\n */\n checked: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The props used for each slot inside.\n * @default {}\n */\n componentsProps: PropTypes.shape({\n typography: PropTypes.object\n }),\n /**\n * A control element. For instance, it can be a `Radio`, a `Switch` or a `Checkbox`.\n */\n control: PropTypes.element.isRequired,\n /**\n * If `true`, the control is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is rendered as it is passed without an additional typography node.\n */\n disableTypography: PropTypes.bool,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * A text or an element to be used in an enclosing label element.\n */\n label: PropTypes.node,\n /**\n * The position of the label.\n * @default 'end'\n */\n labelPlacement: PropTypes.oneOf(['bottom', 'end', 'start', 'top']),\n /**\n * @ignore\n */\n name: PropTypes.string,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The props used for each slot inside.\n * @default {}\n */\n slotProps: PropTypes.shape({\n typography: PropTypes.object\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default FormControlLabel;","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z\"\n}), 'RadioButtonUnchecked');","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M8.465 8.465C9.37 7.56 10.62 7 12 7C14.76 7 17 9.24 17 12C17 13.38 16.44 14.63 15.535 15.535C14.63 16.44 13.38 17 12 17C9.24 17 7 14.76 7 12C7 10.62 7.56 9.37 8.465 8.465Z\"\n}), 'RadioButtonChecked');","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport RadioButtonUncheckedIcon from '../internal/svg-icons/RadioButtonUnchecked';\nimport RadioButtonCheckedIcon from '../internal/svg-icons/RadioButtonChecked';\nimport styled from '../styles/styled';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst RadioButtonIconRoot = styled('span')({\n position: 'relative',\n display: 'flex'\n});\nconst RadioButtonIconBackground = styled(RadioButtonUncheckedIcon)({\n // Scale applied to prevent dot misalignment in Safari\n transform: 'scale(1)'\n});\nconst RadioButtonIconDot = styled(RadioButtonCheckedIcon)(({\n theme,\n ownerState\n}) => _extends({\n left: 0,\n position: 'absolute',\n transform: 'scale(0)',\n transition: theme.transitions.create('transform', {\n easing: theme.transitions.easing.easeIn,\n duration: theme.transitions.duration.shortest\n })\n}, ownerState.checked && {\n transform: 'scale(1)',\n transition: theme.transitions.create('transform', {\n easing: theme.transitions.easing.easeOut,\n duration: theme.transitions.duration.shortest\n })\n}));\n\n/**\n * @ignore - internal component.\n */\nfunction RadioButtonIcon(props) {\n const {\n checked = false,\n classes = {},\n fontSize\n } = props;\n const ownerState = _extends({}, props, {\n checked\n });\n return /*#__PURE__*/_jsxs(RadioButtonIconRoot, {\n className: classes.root,\n ownerState: ownerState,\n children: [/*#__PURE__*/_jsx(RadioButtonIconBackground, {\n fontSize: fontSize,\n className: classes.background,\n ownerState: ownerState\n }), /*#__PURE__*/_jsx(RadioButtonIconDot, {\n fontSize: fontSize,\n className: classes.dot,\n ownerState: ownerState\n })]\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? RadioButtonIcon.propTypes = {\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * The size of the component.\n * `small` is equivalent to the dense radio styling.\n */\n fontSize: PropTypes.oneOf(['small', 'medium'])\n} : void 0;\nexport default RadioButtonIcon;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getRadioUtilityClass(slot) {\n return generateUtilityClass('MuiRadio', slot);\n}\nconst radioClasses = generateUtilityClasses('MuiRadio', ['root', 'checked', 'disabled', 'colorPrimary', 'colorSecondary']);\nexport default radioClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"checked\", \"checkedIcon\", \"color\", \"icon\", \"name\", \"onChange\", \"size\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport SwitchBase from '../internal/SwitchBase';\nimport useThemeProps from '../styles/useThemeProps';\nimport RadioButtonIcon from './RadioButtonIcon';\nimport capitalize from '../utils/capitalize';\nimport createChainedFunction from '../utils/createChainedFunction';\nimport useRadioGroup from '../RadioGroup/useRadioGroup';\nimport radioClasses, { getRadioUtilityClass } from './radioClasses';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`]\n };\n return _extends({}, classes, composeClasses(slots, getRadioUtilityClass, classes));\n};\nconst RadioRoot = styled(SwitchBase, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiRadio',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, !ownerState.disableRipple && {\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${ownerState.color === 'default' ? theme.vars.palette.action.activeChannel : theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(ownerState.color === 'default' ? theme.palette.action.active : theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${radioClasses.checked}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n }\n}, {\n [`&.${radioClasses.disabled}`]: {\n color: (theme.vars || theme).palette.action.disabled\n }\n}));\nfunction areEqualValues(a, b) {\n if (typeof b === 'object' && b !== null) {\n return a === b;\n }\n\n // The value could be a number, the DOM will stringify it anyway.\n return String(a) === String(b);\n}\nconst defaultCheckedIcon = /*#__PURE__*/_jsx(RadioButtonIcon, {\n checked: true\n});\nconst defaultIcon = /*#__PURE__*/_jsx(RadioButtonIcon, {});\nconst Radio = /*#__PURE__*/React.forwardRef(function Radio(inProps, ref) {\n var _defaultIcon$props$fo, _defaultCheckedIcon$p;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiRadio'\n });\n const {\n checked: checkedProp,\n checkedIcon = defaultCheckedIcon,\n color = 'primary',\n icon = defaultIcon,\n name: nameProp,\n onChange: onChangeProp,\n size = 'medium',\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n size\n });\n const classes = useUtilityClasses(ownerState);\n const radioGroup = useRadioGroup();\n let checked = checkedProp;\n const onChange = createChainedFunction(onChangeProp, radioGroup && radioGroup.onChange);\n let name = nameProp;\n if (radioGroup) {\n if (typeof checked === 'undefined') {\n checked = areEqualValues(radioGroup.value, props.value);\n }\n if (typeof name === 'undefined') {\n name = radioGroup.name;\n }\n }\n return /*#__PURE__*/_jsx(RadioRoot, _extends({\n type: \"radio\",\n icon: /*#__PURE__*/React.cloneElement(icon, {\n fontSize: (_defaultIcon$props$fo = defaultIcon.props.fontSize) != null ? _defaultIcon$props$fo : size\n }),\n checkedIcon: /*#__PURE__*/React.cloneElement(checkedIcon, {\n fontSize: (_defaultCheckedIcon$p = defaultCheckedIcon.props.fontSize) != null ? _defaultCheckedIcon$p : size\n }),\n ownerState: ownerState,\n classes: classes,\n name: name,\n checked: checked,\n onChange: onChange,\n ref: ref,\n className: clsx(classes.root, className)\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? Radio.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n * @default \n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * The icon to display when the component is unchecked.\n * @default \n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Name attribute of the `input` element.\n */\n name: PropTypes.string,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense radio styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n */\n value: PropTypes.any\n} : void 0;\nexport default Radio;","import * as React from 'react';\nimport RadioGroupContext from './RadioGroupContext';\nexport default function useRadioGroup() {\n return React.useContext(RadioGroupContext);\n}","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormGroupUtilityClass(slot) {\n return generateUtilityClass('MuiFormGroup', slot);\n}\nconst formGroupClasses = generateUtilityClasses('MuiFormGroup', ['root', 'row', 'error']);\nexport default formGroupClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"row\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { getFormGroupUtilityClass } from './formGroupClasses';\nimport useFormControl from '../FormControl/useFormControl';\nimport formControlState from '../FormControl/formControlState';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n row,\n error\n } = ownerState;\n const slots = {\n root: ['root', row && 'row', error && 'error']\n };\n return composeClasses(slots, getFormGroupUtilityClass, classes);\n};\nconst FormGroupRoot = styled('div', {\n name: 'MuiFormGroup',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.row && styles.row];\n }\n})(({\n ownerState\n}) => _extends({\n display: 'flex',\n flexDirection: 'column',\n flexWrap: 'wrap'\n}, ownerState.row && {\n flexDirection: 'row'\n}));\n\n/**\n * `FormGroup` wraps controls such as `Checkbox` and `Switch`.\n * It provides compact row layout.\n * For the `Radio`, you should be using the `RadioGroup` component instead of this one.\n */\nconst FormGroup = /*#__PURE__*/React.forwardRef(function FormGroup(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormGroup'\n });\n const {\n className,\n row = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['error']\n });\n const ownerState = _extends({}, props, {\n row,\n error: fcs.error\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(FormGroupRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormGroup.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * Display group of elements in a compact row.\n * @default false\n */\n row: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormGroup;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"actions\", \"children\", \"defaultValue\", \"name\", \"onChange\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport FormGroup from '../FormGroup';\nimport useForkRef from '../utils/useForkRef';\nimport useControlled from '../utils/useControlled';\nimport RadioGroupContext from './RadioGroupContext';\nimport useId from '../utils/useId';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst RadioGroup = /*#__PURE__*/React.forwardRef(function RadioGroup(props, ref) {\n const {\n // private\n // eslint-disable-next-line react/prop-types\n actions,\n children,\n defaultValue,\n name: nameProp,\n onChange,\n value: valueProp\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const rootRef = React.useRef(null);\n const [value, setValueState] = useControlled({\n controlled: valueProp,\n default: defaultValue,\n name: 'RadioGroup'\n });\n React.useImperativeHandle(actions, () => ({\n focus: () => {\n let input = rootRef.current.querySelector('input:not(:disabled):checked');\n if (!input) {\n input = rootRef.current.querySelector('input:not(:disabled)');\n }\n if (input) {\n input.focus();\n }\n }\n }), []);\n const handleRef = useForkRef(ref, rootRef);\n const name = useId(nameProp);\n const contextValue = React.useMemo(() => ({\n name,\n onChange(event) {\n setValueState(event.target.value);\n if (onChange) {\n onChange(event, event.target.value);\n }\n },\n value\n }), [name, onChange, setValueState, value]);\n return /*#__PURE__*/_jsx(RadioGroupContext.Provider, {\n value: contextValue,\n children: /*#__PURE__*/_jsx(FormGroup, _extends({\n role: \"radiogroup\",\n ref: handleRef\n }, other, {\n children: children\n }))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? RadioGroup.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * The default value. Use when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * The name used to reference the value of the control.\n * If you don't provide this prop, it falls back to a randomly generated name.\n */\n name: PropTypes.string,\n /**\n * Callback fired when a radio button is selected.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * @param {string} value The value of the selected radio button.\n * You can pull out the new value by accessing `event.target.value` (string).\n */\n onChange: PropTypes.func,\n /**\n * Value of the selected radio button. The DOM API casts this to a string.\n */\n value: PropTypes.any\n} : void 0;\nexport default RadioGroup;","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst RadioGroupContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n RadioGroupContext.displayName = 'RadioGroupContext';\n}\nexport default RadioGroupContext;"],"names":["getFormControlLabelUtilityClasses","slot","generateUtilityClass","generateUtilityClasses","_excluded","FormControlLabelRoot","styled","name","overridesResolver","props","styles","ownerState","_defineProperty","concat","formControlLabelClasses","label","root","capitalize","labelPlacement","_ref3","theme","_extends","display","alignItems","cursor","verticalAlign","WebkitTapHighlightColor","marginLeft","marginRight","disabled","flexDirection","color","vars","palette","text","AsteriskComponent","asterisk","_ref4","error","main","React","inProps","ref","_ref","_slotProps$typography","useThemeProps","className","_props$componentsProp","componentsProps","control","disabledProp","disableTypography","labelProp","_props$labelPlacement","requiredProp","required","_props$slotProps","slotProps","other","_objectWithoutPropertiesLoose","muiFormControl","useFormControl","controlProps","forEach","key","fcs","formControlState","states","classes","slots","composeClasses","useUtilityClasses","typographySlotProps","typography","type","Typography","_jsx","component","clsx","children","_jsxs","createSvgIcon","d","RadioButtonIconRoot","position","RadioButtonIconBackground","RadioButtonUncheckedIcon","transform","RadioButtonIconDot","RadioButtonCheckedIcon","left","transition","transitions","create","easing","easeIn","duration","shortest","checked","easeOut","_props$checked","_props$classes","fontSize","background","dot","getRadioUtilityClass","RadioRoot","SwitchBase","shouldForwardProp","prop","rootShouldForwardProp","secondary","disableRipple","backgroundColor","action","activeChannel","mainChannel","hoverOpacity","alpha","active","radioClasses","defaultCheckedIcon","RadioButtonIcon","defaultIcon","_defaultIcon$props$fo","_defaultCheckedIcon$p","a","b","checkedProp","_props$checkedIcon","checkedIcon","_props$color","_props$icon","icon","nameProp","onChangeProp","onChange","_props$size","size","radioGroup","RadioGroupContext","createChainedFunction","value","String","getFormGroupUtilityClass","FormGroupRoot","row","flexWrap","_props$row","actions","defaultValue","valueProp","rootRef","_useControlled","useControlled","controlled","default","_useControlled2","_slicedToArray","setValueState","focus","input","current","querySelector","handleRef","useForkRef","useId","contextValue","event","target","Provider","FormGroup","role","undefined"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1569.eb3c10a7.chunk.js b/portal-ui/build/static/js/1569.eb3c10a7.chunk.js deleted file mode 100644 index 7da959fb1..000000000 --- a/portal-ui/build/static/js/1569.eb3c10a7.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1569,4882,7981,9581,6662,222],{3579:function(e,t,r){"use strict";var n=r(64836);t.Z=void 0;var o=n(r(45649)),a=r(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=i},20165:function(e,t,r){"use strict";var n=r(64836);t.Z=void 0;var o=n(r(45649)),a=r(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=i},45649:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=r(28610)},93840:function(e,t,r){"use strict";var n=r(72791).createContext(void 0);t.Z=n},76147:function(e,t,r){"use strict";function n(e){var t=e.props,r=e.states,n=e.muiFormControl;return r.reduce((function(e,r){return e[r]=t[r],n&&"undefined"===typeof t[r]&&(e[r]=n[r]),e}),{})}r.d(t,{Z:function(){return n}})},52930:function(e,t,r){"use strict";r.d(t,{Z:function(){return a}});var n=r(72791),o=r(93840);function a(){return n.useContext(o.Z)}},17133:function(e,t,r){"use strict";var n=r(4942),o=r(63366),a=r(87462),i=r(72791),c=r(28182),s=r(94419),l=r(76147),u=r(52930),d=r(14036),f=r(31402),p=r(66934),m=r(10843),h=r(80184),v=["children","className","color","component","disabled","error","filled","focused","required"],Z=(0,p.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return(0,a.Z)({},t.root,"secondary"===r.color&&t.colorSecondary,r.filled&&t.filled)}})((function(e){var t,r=e.theme,o=e.ownerState;return(0,a.Z)({color:(r.vars||r).palette.text.secondary},r.typography.body1,(t={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(t,"&.".concat(m.Z.focused),{color:(r.vars||r).palette[o.color].main}),(0,n.Z)(t,"&.".concat(m.Z.disabled),{color:(r.vars||r).palette.text.disabled}),(0,n.Z)(t,"&.".concat(m.Z.error),{color:(r.vars||r).palette.error.main}),t))})),b=(0,p.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,t){return t.asterisk}})((function(e){var t=e.theme;return(0,n.Z)({},"&.".concat(m.Z.error),{color:(t.vars||t).palette.error.main})})),g=i.forwardRef((function(e,t){var r=(0,f.Z)({props:e,name:"MuiFormLabel"}),n=r.children,i=r.className,p=r.component,g=void 0===p?"label":p,k=(0,o.Z)(r,v),x=(0,u.Z)(),w=(0,l.Z)({props:r,muiFormControl:x,states:["color","required","focused","disabled","error","filled"]}),S=(0,a.Z)({},r,{color:w.color||"primary",component:g,disabled:w.disabled,error:w.error,filled:w.filled,focused:w.focused,required:w.required}),y=function(e){var t=e.classes,r=e.color,n=e.focused,o=e.disabled,a=e.error,i=e.filled,c=e.required,l={root:["root","color".concat((0,d.Z)(r)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",c&&"required"],asterisk:["asterisk",a&&"error"]};return(0,s.Z)(l,m.M,t)}(S);return(0,h.jsxs)(Z,(0,a.Z)({as:g,ownerState:S,className:(0,c.Z)(y.root,i),ref:t},k,{children:[n,w.required&&(0,h.jsxs)(b,{ownerState:S,"aria-hidden":!0,className:y.asterisk,children:["\u2009","*"]})]}))}));t.Z=g},10843:function(e,t,r){"use strict";r.d(t,{M:function(){return a}});var n=r(75878),o=r(21217);function a(e){return(0,o.Z)("MuiFormLabel",e)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);t.Z=i},30829:function(e,t,r){"use strict";r.d(t,{Z:function(){return x}});var n=r(4942),o=r(63366),a=r(87462),i=r(72791),c=r(94419),s=r(28182),l=r(76147),u=r(52930),d=r(17133),f=r(10843),p=r(31402),m=r(66934),h=r(75878),v=r(21217);function Z(e){return(0,v.Z)("MuiInputLabel",e)}(0,h.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var b=r(80184),g=["disableAnimation","margin","shrink","variant","className"],k=(0,m.ZP)(d.Z,{shouldForwardProp:function(e){return(0,m.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),t.asterisk),t.root,r.formControl&&t.formControl,"small"===r.size&&t.sizeSmall,r.shrink&&t.shrink,!r.disableAnimation&&t.animated,t[r.variant]]}})((function(e){var t=e.theme,r=e.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},r.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===r.size&&{transform:"translate(0, 17px) scale(1)"},r.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!r.disableAnimation&&{transition:t.transitions.create(["color","transform","max-width"],{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut})},"filled"===r.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(12px, 13px) scale(1)"},r.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===r.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===r.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(14px, 9px) scale(1)"},r.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),x=i.forwardRef((function(e,t){var r=(0,p.Z)({name:"MuiInputLabel",props:e}),n=r.disableAnimation,i=void 0!==n&&n,d=r.shrink,f=r.className,m=(0,o.Z)(r,g),h=(0,u.Z)(),v=d;"undefined"===typeof v&&h&&(v=h.filled||h.focused||h.adornedStart);var x=(0,l.Z)({props:r,muiFormControl:h,states:["size","variant","required"]}),w=(0,a.Z)({},r,{disableAnimation:i,formControl:h,shrink:v,size:x.size,variant:x.variant,required:x.required}),S=function(e){var t=e.classes,r=e.formControl,n=e.size,o=e.shrink,i={root:["root",r&&"formControl",!e.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},s=(0,c.Z)(i,Z,t);return(0,a.Z)({},t,s)}(w);return(0,b.jsx)(k,(0,a.Z)({"data-shrink":v,ownerState:w,ref:t,className:(0,s.Z)(S.root,f)},m,{classes:S}))}))},9955:function(e,t,r){"use strict";r.d(t,{Z:function(){return y}});var n=r(4942),o=r(63366),a=r(87462),i=r(72791),c=r(28182),s=r(94419),l=r(12065),u=r(14036),d=r(97278),f=r(31402),p=r(66934),m=r(75878),h=r(21217);function v(e){return(0,h.Z)("MuiSwitch",e)}var Z=(0,m.Z)("MuiSwitch",["root","edgeStart","edgeEnd","switchBase","colorPrimary","colorSecondary","sizeSmall","sizeMedium","checked","disabled","input","thumb","track"]),b=r(80184),g=["className","color","edge","size","sx"],k=(0,p.ZP)("span",{name:"MuiSwitch",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[t.root,r.edge&&t["edge".concat((0,u.Z)(r.edge))],t["size".concat((0,u.Z)(r.size))]]}})((function(e){var t,r=e.ownerState;return(0,a.Z)({display:"inline-flex",width:58,height:38,overflow:"hidden",padding:12,boxSizing:"border-box",position:"relative",flexShrink:0,zIndex:0,verticalAlign:"middle","@media print":{colorAdjust:"exact"}},"start"===r.edge&&{marginLeft:-8},"end"===r.edge&&{marginRight:-8},"small"===r.size&&(t={width:40,height:24,padding:7},(0,n.Z)(t,"& .".concat(Z.thumb),{width:16,height:16}),(0,n.Z)(t,"& .".concat(Z.switchBase),(0,n.Z)({padding:4},"&.".concat(Z.checked),{transform:"translateX(16px)"})),t))})),x=(0,p.ZP)(d.Z,{name:"MuiSwitch",slot:"SwitchBase",overridesResolver:function(e,t){var r=e.ownerState;return[t.switchBase,(0,n.Z)({},"& .".concat(Z.input),t.input),"default"!==r.color&&t["color".concat((0,u.Z)(r.color))]]}})((function(e){var t,r=e.theme;return t={position:"absolute",top:0,left:0,zIndex:1,color:r.vars?r.vars.palette.Switch.defaultColor:"".concat("light"===r.palette.mode?r.palette.common.white:r.palette.grey[300]),transition:r.transitions.create(["left","transform"],{duration:r.transitions.duration.shortest})},(0,n.Z)(t,"&.".concat(Z.checked),{transform:"translateX(20px)"}),(0,n.Z)(t,"&.".concat(Z.disabled),{color:r.vars?r.vars.palette.Switch.defaultDisabledColor:"".concat("light"===r.palette.mode?r.palette.grey[100]:r.palette.grey[600])}),(0,n.Z)(t,"&.".concat(Z.checked," + .").concat(Z.track),{opacity:.5}),(0,n.Z)(t,"&.".concat(Z.disabled," + .").concat(Z.track),{opacity:r.vars?r.vars.opacity.switchTrackDisabled:"".concat("light"===r.palette.mode?.12:.2)}),(0,n.Z)(t,"& .".concat(Z.input),{left:"-100%",width:"300%"}),t}),(function(e){var t,r=e.theme,o=e.ownerState;return(0,a.Z)({"&:hover":{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.action.activeChannel," / ").concat(r.vars.palette.action.hoverOpacity,")"):(0,l.Fq)(r.palette.action.active,r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==o.color&&(t={},(0,n.Z)(t,"&.".concat(Z.checked),(0,n.Z)({color:(r.vars||r).palette[o.color].main,"&:hover":{backgroundColor:r.vars?"rgba(".concat(r.vars.palette[o.color].mainChannel," / ").concat(r.vars.palette.action.hoverOpacity,")"):(0,l.Fq)(r.palette[o.color].main,r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"&.".concat(Z.disabled),{color:r.vars?r.vars.palette.Switch["".concat(o.color,"DisabledColor")]:"".concat("light"===r.palette.mode?(0,l.$n)(r.palette[o.color].main,.62):(0,l._j)(r.palette[o.color].main,.55))})),(0,n.Z)(t,"&.".concat(Z.checked," + .").concat(Z.track),{backgroundColor:(r.vars||r).palette[o.color].main}),t))})),w=(0,p.ZP)("span",{name:"MuiSwitch",slot:"Track",overridesResolver:function(e,t){return t.track}})((function(e){var t=e.theme;return{height:"100%",width:"100%",borderRadius:7,zIndex:-1,transition:t.transitions.create(["opacity","background-color"],{duration:t.transitions.duration.shortest}),backgroundColor:t.vars?t.vars.palette.common.onBackground:"".concat("light"===t.palette.mode?t.palette.common.black:t.palette.common.white),opacity:t.vars?t.vars.opacity.switchTrack:"".concat("light"===t.palette.mode?.38:.3)}})),S=(0,p.ZP)("span",{name:"MuiSwitch",slot:"Thumb",overridesResolver:function(e,t){return t.thumb}})((function(e){var t=e.theme;return{boxShadow:(t.vars||t).shadows[1],backgroundColor:"currentColor",width:20,height:20,borderRadius:"50%"}})),y=i.forwardRef((function(e,t){var r=(0,f.Z)({props:e,name:"MuiSwitch"}),n=r.className,i=r.color,l=void 0===i?"primary":i,d=r.edge,p=void 0!==d&&d,m=r.size,h=void 0===m?"medium":m,Z=r.sx,y=(0,o.Z)(r,g),C=(0,a.Z)({},r,{color:l,edge:p,size:h}),z=function(e){var t=e.classes,r=e.edge,n=e.size,o=e.color,i=e.checked,c=e.disabled,l={root:["root",r&&"edge".concat((0,u.Z)(r)),"size".concat((0,u.Z)(n))],switchBase:["switchBase","color".concat((0,u.Z)(o)),i&&"checked",c&&"disabled"],thumb:["thumb"],track:["track"],input:["input"]},d=(0,s.Z)(l,v,t);return(0,a.Z)({},t,d)}(C),R=(0,b.jsx)(S,{className:z.thumb,ownerState:C});return(0,b.jsxs)(k,{className:(0,c.Z)(z.root,n),sx:Z,ownerState:C,children:[(0,b.jsx)(x,(0,a.Z)({type:"checkbox",icon:R,checkedIcon:R,ref:t,ownerState:C},y,{classes:(0,a.Z)({},z,{root:z.switchBase})})),(0,b.jsx)(w,{className:z.track,ownerState:C})]})}))},97278:function(e,t,r){"use strict";r.d(t,{Z:function(){return x}});var n=r(29439),o=r(63366),a=r(87462),i=r(72791),c=r(28182),s=r(94419),l=r(14036),u=r(66934),d=r(98278),f=r(52930),p=r(95080),m=r(75878),h=r(21217);function v(e){return(0,h.Z)("PrivateSwitchBase",e)}(0,m.Z)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var Z=r(80184),b=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],g=(0,u.ZP)(p.Z)((function(e){var t=e.ownerState;return(0,a.Z)({padding:9,borderRadius:"50%"},"start"===t.edge&&{marginLeft:"small"===t.size?-3:-12},"end"===t.edge&&{marginRight:"small"===t.size?-3:-12})})),k=(0,u.ZP)("input")({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),x=i.forwardRef((function(e,t){var r=e.autoFocus,i=e.checked,u=e.checkedIcon,p=e.className,m=e.defaultChecked,h=e.disabled,x=e.disableFocusRipple,w=void 0!==x&&x,S=e.edge,y=void 0!==S&&S,C=e.icon,z=e.id,R=e.inputProps,M=e.inputRef,F=e.name,I=e.onBlur,P=e.onChange,q=e.onFocus,N=e.readOnly,B=e.required,O=void 0!==B&&B,j=e.tabIndex,E=e.type,L=e.value,_=(0,o.Z)(e,b),A=(0,d.Z)({controlled:i,default:Boolean(m),name:"SwitchBase",state:"checked"}),W=(0,n.Z)(A,2),T=W[0],D=W[1],V=(0,f.Z)(),X=h;V&&"undefined"===typeof X&&(X=V.disabled);var G="checkbox"===E||"radio"===E,H=(0,a.Z)({},e,{checked:T,disabled:X,disableFocusRipple:w,edge:y}),$=function(e){var t=e.classes,r=e.checked,n=e.disabled,o=e.edge,a={root:["root",r&&"checked",n&&"disabled",o&&"edge".concat((0,l.Z)(o))],input:["input"]};return(0,s.Z)(a,v,t)}(H);return(0,Z.jsxs)(g,(0,a.Z)({component:"span",className:(0,c.Z)($.root,p),centerRipple:!0,focusRipple:!w,disabled:X,tabIndex:null,role:void 0,onFocus:function(e){q&&q(e),V&&V.onFocus&&V.onFocus(e)},onBlur:function(e){I&&I(e),V&&V.onBlur&&V.onBlur(e)},ownerState:H,ref:t},_,{children:[(0,Z.jsx)(k,(0,a.Z)({autoFocus:r,checked:i,defaultChecked:m,className:$.input,disabled:X,id:G?z:void 0,name:F,onChange:function(e){if(!e.nativeEvent.defaultPrevented){var t=e.target.checked;D(t),P&&P(e,t)}},readOnly:N,ref:M,required:O,ownerState:H,tabIndex:j,type:E},"checkbox"===E&&void 0===L?{}:{value:L},R)),T?u:C]}))}))},31260:function(e,t,r){"use strict";var n=r(78949);t.Z=n.Z},28610:function(e,t,r){"use strict";r.r(t),r.d(t,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return c.Z},deprecatedPropType:function(){return s},isMuiElement:function(){return l.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return p},unstable_ClassNameGenerator:function(){return x},unstable_useEnhancedEffect:function(){return m.Z},unstable_useId:function(){return h.Z},unsupportedProp:function(){return v},useControlled:function(){return Z.Z},useEventCallback:function(){return b.Z},useForkRef:function(){return g.Z},useIsFocusVisible:function(){return k.Z}});var n=r(55902),o=r(14036),a=r(31260),i=r(76189),c=r(83199);var s=function(e,t){return function(){return null}},l=r(19103),u=r(98301),d=r(17602);r(87462);var f=function(e,t){return function(){return null}},p=r(62971).Z,m=r(40162),h=r(67384);var v=function(e,t,r,n,o){return null},Z=r(98278),b=r(89683),g=r(42071),k=r(23031),x={configure:function(e){n.Z.configure(e)}}},19103:function(e,t,r){"use strict";r.d(t,{Z:function(){return o}});var n=r(72791);var o=function(e,t){return n.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}},78949:function(e,t,r){"use strict";function n(){for(var e=arguments.length,t=new Array(e),r=0;r {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchUtilityClass(slot) {\n return generateUtilityClass('MuiSwitch', slot);\n}\nconst switchClasses = generateUtilityClasses('MuiSwitch', ['root', 'edgeStart', 'edgeEnd', 'switchBase', 'colorPrimary', 'colorSecondary', 'sizeSmall', 'sizeMedium', 'checked', 'disabled', 'input', 'thumb', 'track']);\nexport default switchClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"color\", \"edge\", \"size\", \"sx\"];\n// @inheritedComponent IconButton\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha, darken, lighten } from '@mui/system';\nimport capitalize from '../utils/capitalize';\nimport SwitchBase from '../internal/SwitchBase';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport switchClasses, { getSwitchUtilityClass } from './switchClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n edge,\n size,\n color,\n checked,\n disabled\n } = ownerState;\n const slots = {\n root: ['root', edge && `edge${capitalize(edge)}`, `size${capitalize(size)}`],\n switchBase: ['switchBase', `color${capitalize(color)}`, checked && 'checked', disabled && 'disabled'],\n thumb: ['thumb'],\n track: ['track'],\n input: ['input']\n };\n const composedClasses = composeClasses(slots, getSwitchUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst SwitchRoot = styled('span', {\n name: 'MuiSwitch',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.edge && styles[`edge${capitalize(ownerState.edge)}`], styles[`size${capitalize(ownerState.size)}`]];\n }\n})(({\n ownerState\n}) => _extends({\n display: 'inline-flex',\n width: 34 + 12 * 2,\n height: 14 + 12 * 2,\n overflow: 'hidden',\n padding: 12,\n boxSizing: 'border-box',\n position: 'relative',\n flexShrink: 0,\n zIndex: 0,\n // Reset the stacking context.\n verticalAlign: 'middle',\n // For correct alignment with the text.\n '@media print': {\n colorAdjust: 'exact'\n }\n}, ownerState.edge === 'start' && {\n marginLeft: -8\n}, ownerState.edge === 'end' && {\n marginRight: -8\n}, ownerState.size === 'small' && {\n width: 40,\n height: 24,\n padding: 7,\n [`& .${switchClasses.thumb}`]: {\n width: 16,\n height: 16\n },\n [`& .${switchClasses.switchBase}`]: {\n padding: 4,\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(16px)'\n }\n }\n}));\nconst SwitchSwitchBase = styled(SwitchBase, {\n name: 'MuiSwitch',\n slot: 'SwitchBase',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.switchBase, {\n [`& .${switchClasses.input}`]: styles.input\n }, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme\n}) => ({\n position: 'absolute',\n top: 0,\n left: 0,\n zIndex: 1,\n // Render above the focus ripple.\n color: theme.vars ? theme.vars.palette.Switch.defaultColor : `${theme.palette.mode === 'light' ? theme.palette.common.white : theme.palette.grey[300]}`,\n transition: theme.transitions.create(['left', 'transform'], {\n duration: theme.transitions.duration.shortest\n }),\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(20px)'\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch.defaultDisabledColor : `${theme.palette.mode === 'light' ? theme.palette.grey[100] : theme.palette.grey[600]}`\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n opacity: 0.5\n },\n [`&.${switchClasses.disabled} + .${switchClasses.track}`]: {\n opacity: theme.vars ? theme.vars.opacity.switchTrackDisabled : `${theme.palette.mode === 'light' ? 0.12 : 0.2}`\n },\n [`& .${switchClasses.input}`]: {\n left: '-100%',\n width: '300%'\n }\n}), ({\n theme,\n ownerState\n}) => _extends({\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${switchClasses.checked}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main,\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch[`${ownerState.color}DisabledColor`] : `${theme.palette.mode === 'light' ? lighten(theme.palette[ownerState.color].main, 0.62) : darken(theme.palette[ownerState.color].main, 0.55)}`\n }\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].main\n }\n}));\nconst SwitchTrack = styled('span', {\n name: 'MuiSwitch',\n slot: 'Track',\n overridesResolver: (props, styles) => styles.track\n})(({\n theme\n}) => ({\n height: '100%',\n width: '100%',\n borderRadius: 14 / 2,\n zIndex: -1,\n transition: theme.transitions.create(['opacity', 'background-color'], {\n duration: theme.transitions.duration.shortest\n }),\n backgroundColor: theme.vars ? theme.vars.palette.common.onBackground : `${theme.palette.mode === 'light' ? theme.palette.common.black : theme.palette.common.white}`,\n opacity: theme.vars ? theme.vars.opacity.switchTrack : `${theme.palette.mode === 'light' ? 0.38 : 0.3}`\n}));\nconst SwitchThumb = styled('span', {\n name: 'MuiSwitch',\n slot: 'Thumb',\n overridesResolver: (props, styles) => styles.thumb\n})(({\n theme\n}) => ({\n boxShadow: (theme.vars || theme).shadows[1],\n backgroundColor: 'currentColor',\n width: 20,\n height: 20,\n borderRadius: '50%'\n}));\nconst Switch = /*#__PURE__*/React.forwardRef(function Switch(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiSwitch'\n });\n const {\n className,\n color = 'primary',\n edge = false,\n size = 'medium',\n sx\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n edge,\n size\n });\n const classes = useUtilityClasses(ownerState);\n const icon = /*#__PURE__*/_jsx(SwitchThumb, {\n className: classes.thumb,\n ownerState: ownerState\n });\n return /*#__PURE__*/_jsxs(SwitchRoot, {\n className: clsx(classes.root, className),\n sx: sx,\n ownerState: ownerState,\n children: [/*#__PURE__*/_jsx(SwitchSwitchBase, _extends({\n type: \"checkbox\",\n icon: icon,\n checkedIcon: icon,\n ref: ref,\n ownerState: ownerState\n }, other, {\n classes: _extends({}, classes, {\n root: classes.switchBase\n })\n })), /*#__PURE__*/_jsx(SwitchTrack, {\n className: classes.track,\n ownerState: ownerState\n })]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Switch.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The default checked state. Use when the component is not controlled.\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense switch styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n */\n value: PropTypes.any\n} : void 0;\nexport default Switch;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchBaseUtilityClass(slot) {\n return generateUtilityClass('PrivateSwitchBase', slot);\n}\nconst switchBaseClasses = generateUtilityClasses('PrivateSwitchBase', ['root', 'checked', 'disabled', 'input', 'edgeStart', 'edgeEnd']);\nexport default switchBaseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"checked\", \"checkedIcon\", \"className\", \"defaultChecked\", \"disabled\", \"disableFocusRipple\", \"edge\", \"icon\", \"id\", \"inputProps\", \"inputRef\", \"name\", \"onBlur\", \"onChange\", \"onFocus\", \"readOnly\", \"required\", \"tabIndex\", \"type\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useControlled from '../utils/useControlled';\nimport useFormControl from '../FormControl/useFormControl';\nimport ButtonBase from '../ButtonBase';\nimport { getSwitchBaseUtilityClass } from './switchBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n checked,\n disabled,\n edge\n } = ownerState;\n const slots = {\n root: ['root', checked && 'checked', disabled && 'disabled', edge && `edge${capitalize(edge)}`],\n input: ['input']\n };\n return composeClasses(slots, getSwitchBaseUtilityClass, classes);\n};\nconst SwitchBaseRoot = styled(ButtonBase)(({\n ownerState\n}) => _extends({\n padding: 9,\n borderRadius: '50%'\n}, ownerState.edge === 'start' && {\n marginLeft: ownerState.size === 'small' ? -3 : -12\n}, ownerState.edge === 'end' && {\n marginRight: ownerState.size === 'small' ? -3 : -12\n}));\nconst SwitchBaseInput = styled('input')({\n cursor: 'inherit',\n position: 'absolute',\n opacity: 0,\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n zIndex: 1\n});\n\n/**\n * @ignore - internal component.\n */\nconst SwitchBase = /*#__PURE__*/React.forwardRef(function SwitchBase(props, ref) {\n const {\n autoFocus,\n checked: checkedProp,\n checkedIcon,\n className,\n defaultChecked,\n disabled: disabledProp,\n disableFocusRipple = false,\n edge = false,\n icon,\n id,\n inputProps,\n inputRef,\n name,\n onBlur,\n onChange,\n onFocus,\n readOnly,\n required = false,\n tabIndex,\n type,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [checked, setCheckedState] = useControlled({\n controlled: checkedProp,\n default: Boolean(defaultChecked),\n name: 'SwitchBase',\n state: 'checked'\n });\n const muiFormControl = useFormControl();\n const handleFocus = event => {\n if (onFocus) {\n onFocus(event);\n }\n if (muiFormControl && muiFormControl.onFocus) {\n muiFormControl.onFocus(event);\n }\n };\n const handleBlur = event => {\n if (onBlur) {\n onBlur(event);\n }\n if (muiFormControl && muiFormControl.onBlur) {\n muiFormControl.onBlur(event);\n }\n };\n const handleInputChange = event => {\n // Workaround for https://github.com/facebook/react/issues/9023\n if (event.nativeEvent.defaultPrevented) {\n return;\n }\n const newChecked = event.target.checked;\n setCheckedState(newChecked);\n if (onChange) {\n // TODO v6: remove the second argument.\n onChange(event, newChecked);\n }\n };\n let disabled = disabledProp;\n if (muiFormControl) {\n if (typeof disabled === 'undefined') {\n disabled = muiFormControl.disabled;\n }\n }\n const hasLabelFor = type === 'checkbox' || type === 'radio';\n const ownerState = _extends({}, props, {\n checked,\n disabled,\n disableFocusRipple,\n edge\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(SwitchBaseRoot, _extends({\n component: \"span\",\n className: clsx(classes.root, className),\n centerRipple: true,\n focusRipple: !disableFocusRipple,\n disabled: disabled,\n tabIndex: null,\n role: undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/_jsx(SwitchBaseInput, _extends({\n autoFocus: autoFocus,\n checked: checkedProp,\n defaultChecked: defaultChecked,\n className: classes.input,\n disabled: disabled,\n id: hasLabelFor ? id : undefined,\n name: name,\n onChange: handleInputChange,\n readOnly: readOnly,\n ref: inputRef,\n required: required,\n ownerState: ownerState,\n tabIndex: tabIndex,\n type: type\n }, type === 'checkbox' && value === undefined ? {} : {\n value\n }, inputProps)), checked ? checkedIcon : icon]\n }));\n});\n\n// NB: If changed, please update Checkbox, Switch and Radio\n// so that the API documentation is updated.\nprocess.env.NODE_ENV !== \"production\" ? SwitchBase.propTypes = {\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node.isRequired,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * @ignore\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the keyboard focus ripple is disabled.\n * @default false\n */\n disableFocusRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node.isRequired,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /*\n * @ignore\n */\n name: PropTypes.string,\n /**\n * @ignore\n */\n onBlur: PropTypes.func,\n /**\n * Callback fired when the state is changed.\n *\n * @param {object} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.object,\n /**\n * @ignore\n */\n tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The input component prop `type`.\n */\n type: PropTypes.string.isRequired,\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default SwitchBase;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","getSwitchUtilityClass","SwitchRoot","edge","width","height","boxSizing","flexShrink","verticalAlign","colorAdjust","marginLeft","marginRight","switchClasses","thumb","switchBase","checked","SwitchSwitchBase","SwitchBase","input","_ref4","_ref5","Switch","defaultColor","mode","common","white","grey","shortest","defaultDisabledColor","track","opacity","switchTrackDisabled","_ref6","_ref7","backgroundColor","action","activeChannel","hoverOpacity","alpha","active","mainChannel","lighten","darken","SwitchTrack","_ref8","borderRadius","onBackground","black","switchTrack","SwitchThumb","_ref9","boxShadow","shadows","_props$color","_props$edge","_props$size","sx","icon","type","checkedIcon","getSwitchBaseUtilityClass","SwitchBaseRoot","ButtonBase","SwitchBaseInput","cursor","margin","autoFocus","checkedProp","defaultChecked","disabledProp","_props$disableFocusRi","disableFocusRipple","id","inputProps","inputRef","onBlur","onChange","onFocus","readOnly","_props$required","tabIndex","_useControlled","useControlled","controlled","Boolean","_useControlled2","_slicedToArray","setCheckedState","hasLabelFor","centerRipple","focusRipple","role","event","nativeEvent","defaultPrevented","newChecked","target","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","muiName","_len","arguments","length","funcs","Array","_key","func","_len2","args","_key2","apply","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1581.a911ee27.chunk.js b/portal-ui/build/static/js/1581.a911ee27.chunk.js new file mode 100644 index 000000000..dd151c4d9 --- /dev/null +++ b/portal-ui/build/static/js/1581.a911ee27.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1581],{1581:function(t,e,n){n.r(e);var a=n(29439),o=n(72791),i=n(29945),u=n(45248),r=n(23814),l=n(56028),c=n(84741),s=n(87995),d=n(81551),f=n(31776),b=n(82342),h=n(40986),v=n(80184);e.default=function(t){var e=t.open,n=t.enabled,x=t.cfg,g=t.selectedBucket,p=t.closeModalAndRefresh,m=(0,d.TL)(),j=(0,o.useState)(!1),k=(0,a.Z)(j,2),Z=k[0],C=k[1],S=(0,o.useState)(!1),q=(0,a.Z)(S,2),z=q[0],_=q[1],y=(0,o.useState)("1"),B=(0,a.Z)(y,2),w=B[0],E=B[1],T=(0,o.useState)("Ti"),F=(0,a.Z)(T,2),O=F[0],Q=F[1],A=(0,o.useState)(!1),I=(0,a.Z)(A,2),L=I[0],P=I[1];(0,o.useEffect)((function(){if(n&&(_(!0),x)){var t=(0,u.Am)(x.quota||0,!0,!1,!0);E(t.total.toString()),Q(t.unit),P(!0)}}),[n,x]),(0,o.useEffect)((function(){P(!z||/^\d*(?:\.\d{1,2})?$/.test(w))}),[z,w]);return(0,v.jsx)(l.Z,{modalOpen:e,onClose:function(){p()},title:"Enable Bucket Quota",titleIcon:(0,v.jsx)(i.Wqw,{}),children:(0,v.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(t){t.preventDefault(),!Z&&L&&f.h.buckets.setBucketQuota(g,{enabled:z,amount:parseInt((0,u.Pw)(w,O,!0)),quota_type:"hard"}).then((function(){C(!1),p()})).catch((function(t){C(!1),m((0,s.zb)((0,b.g)(t.error)))}))},children:(0,v.jsxs)(i.ltY,{withBorders:!1,containerPadding:!1,children:[(0,v.jsx)(i.rsf,{value:"bucket_quota",id:"bucket_quota",name:"bucket_quota",checked:z,onChange:function(t){_(t.target.checked)},label:"Enabled"}),z&&(0,v.jsx)(i.Wzg,{id:"quota_size",name:"quota_size",onChange:function(t){E(t.target.value),t.target.validity.valid?P(!0):P(!1)},label:"Quota",value:w,required:!0,min:"1",overlayObject:(0,v.jsx)(c.Z,{id:"quota_unit",onUnitChange:function(t){Q(t)},unitSelected:O,unitsList:(0,u.zQ)(["Ki"]),disabled:!1}),error:L?"":"Please enter a valid quota"}),(0,v.jsxs)(i.rjZ,{item:!0,xs:12,sx:r.ID.modalButtonBar,children:[(0,v.jsx)(i.zxk,{id:"cancel",type:"button",variant:"regular",disabled:Z,onClick:function(){p()},label:"Cancel"}),(0,v.jsx)(i.zxk,{id:"save",type:"submit",variant:"callAction",disabled:Z||!L,label:"Save"})]}),Z&&(0,v.jsx)(i.rjZ,{item:!0,xs:12,children:(0,v.jsx)(h.Z,{})})]})})})}},84741:function(t,e,n){var a=n(29439),o=n(72791),i=n(11135),u=n(25787),r=n(71715),l=n(77865),c=n(80184);e.Z=(0,u.Z)((function(t){return(0,i.Z)({buttonTrigger:{border:"#F0F2F2 1px solid",borderRadius:3,color:"#838383",backgroundColor:"#fff",fontSize:12}})}))((function(t){var e=t.classes,n=t.id,i=t.unitSelected,u=t.unitsList,s=t.disabled,d=void 0!==s&&s,f=t.onUnitChange,b=o.useState(null),h=(0,a.Z)(b,2),v=h[0],x=h[1],g=Boolean(v),p=function(t){x(null),""!==t&&f&&f(t)};return(0,c.jsxs)(o.Fragment,{children:[(0,c.jsx)("button",{id:"".concat(n,"-button"),"aria-controls":"".concat(n,"-menu"),"aria-haspopup":"true","aria-expanded":g?"true":void 0,onClick:function(t){x(t.currentTarget)},className:e.buttonTrigger,disabled:d,type:"button",children:i}),(0,c.jsx)(r.Z,{id:"".concat(n,"-menu"),"aria-labelledby":"".concat(n,"-button"),anchorEl:v,open:g,onClose:function(){p("")},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:u.map((function(t){return(0,c.jsx)(l.Z,{onClick:function(){return p(t.value)},children:t.label},"itemUnit-".concat(t.value,"-").concat(t.label))}))})]})}))}}]); +//# sourceMappingURL=1581.a911ee27.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/1581.a911ee27.chunk.js.map b/portal-ui/build/static/js/1581.a911ee27.chunk.js.map new file mode 100644 index 000000000..49c327da4 --- /dev/null +++ b/portal-ui/build/static/js/1581.a911ee27.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/1581.a911ee27.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/EnableQuota.tsx","screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport {\n BucketQuotaIcon,\n Button,\n FormLayout,\n InputBox,\n Switch,\n Grid,\n} from \"mds\";\nimport {\n calculateBytes,\n getBytes,\n k8sScalarUnitsExcluding,\n} from \"../../../../common/utils\";\n\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport InputUnitMenu from \"../../Common/FormComponents/InputUnitMenu/InputUnitMenu\";\n\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { BucketQuota } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { LinearProgress } from \"@mui/material\";\n\ninterface IEnableQuotaProps {\n open: boolean;\n enabled: boolean;\n cfg: BucketQuota | null;\n selectedBucket: string;\n closeModalAndRefresh: () => void;\n}\n\nconst EnableQuota = ({\n open,\n enabled,\n cfg,\n selectedBucket,\n closeModalAndRefresh,\n}: IEnableQuotaProps) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [quotaEnabled, setQuotaEnabled] = useState(false);\n const [quotaSize, setQuotaSize] = useState(\"1\");\n const [quotaUnit, setQuotaUnit] = useState(\"Ti\");\n const [validInput, setValidInput] = useState(false);\n\n useEffect(() => {\n if (enabled) {\n setQuotaEnabled(true);\n if (cfg) {\n const unitCalc = calculateBytes(cfg.quota || 0, true, false, true);\n\n setQuotaSize(unitCalc.total.toString());\n setQuotaUnit(unitCalc.unit);\n setValidInput(true);\n }\n }\n }, [enabled, cfg]);\n\n useEffect(() => {\n const valRegExp = /^\\d*(?:\\.\\d{1,2})?$/;\n\n if (!quotaEnabled) {\n setValidInput(true);\n return;\n }\n\n setValidInput(valRegExp.test(quotaSize));\n }, [quotaEnabled, quotaSize]);\n\n const enableBucketEncryption = () => {\n if (loading || !validInput) {\n return;\n }\n\n api.buckets\n .setBucketQuota(selectedBucket, {\n enabled: quotaEnabled,\n amount: parseInt(getBytes(quotaSize, quotaUnit, true)),\n quota_type: \"hard\",\n })\n .then(() => {\n setLoading(false);\n closeModalAndRefresh();\n })\n .catch((err) => {\n setLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n return (\n {\n closeModalAndRefresh();\n }}\n title=\"Enable Bucket Quota\"\n titleIcon={}\n >\n ) => {\n e.preventDefault();\n enableBucketEncryption();\n }}\n >\n \n ) => {\n setQuotaEnabled(event.target.checked);\n }}\n label={\"Enabled\"}\n />\n {quotaEnabled && (\n ) => {\n setQuotaSize(e.target.value);\n if (!e.target.validity.valid) {\n setValidInput(false);\n } else {\n setValidInput(true);\n }\n }}\n label=\"Quota\"\n value={quotaSize}\n required\n min=\"1\"\n overlayObject={\n {\n setQuotaUnit(newValue);\n }}\n unitSelected={quotaUnit}\n unitsList={k8sScalarUnitsExcluding([\"Ki\"])}\n disabled={false}\n />\n }\n error={!validInput ? \"Please enter a valid quota\" : \"\"}\n />\n )}\n \n {\n closeModalAndRefresh();\n }}\n label={\"Cancel\"}\n />\n\n \n \n {loading && (\n \n \n \n )}\n \n \n \n );\n};\n\nexport default EnableQuota;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { selectorTypes } from \"../SelectWrapper/SelectWrapper\";\nimport { Menu, MenuItem } from \"@mui/material\";\n\ninterface IInputUnitBox {\n classes: any;\n id: string;\n unitSelected: string;\n unitsList: selectorTypes[];\n disabled?: boolean;\n onUnitChange?: (newValue: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonTrigger: {\n border: \"#F0F2F2 1px solid\",\n borderRadius: 3,\n color: \"#838383\",\n backgroundColor: \"#fff\",\n fontSize: 12,\n },\n });\n\nconst InputUnitMenu = ({\n classes,\n id,\n unitSelected,\n unitsList,\n disabled = false,\n onUnitChange,\n}: IInputUnitBox) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (newUnit: string) => {\n setAnchorEl(null);\n if (newUnit !== \"\" && onUnitChange) {\n onUnitChange(newUnit);\n }\n };\n\n return (\n \n \n {unitSelected}\n \n {\n handleClose(\"\");\n }}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"center\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"center\",\n }}\n >\n {unitsList.map((unit) => (\n handleClose(unit.value)}\n key={`itemUnit-${unit.value}-${unit.label}`}\n >\n {unit.label}\n \n ))}\n \n \n );\n};\n\nexport default withStyles(styles)(InputUnitMenu);\n"],"names":["_ref","open","enabled","cfg","selectedBucket","closeModalAndRefresh","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","loading","setLoading","_useState3","_useState4","quotaEnabled","setQuotaEnabled","_useState5","_useState6","quotaSize","setQuotaSize","_useState7","_useState8","quotaUnit","setQuotaUnit","_useState9","_useState10","validInput","setValidInput","useEffect","unitCalc","calculateBytes","quota","total","toString","unit","test","_jsx","ModalWrapper","modalOpen","onClose","title","titleIcon","BucketQuotaIcon","children","noValidate","autoComplete","onSubmit","e","preventDefault","api","buckets","setBucketQuota","amount","parseInt","getBytes","quota_type","then","catch","err","setModalErrorSnackMessage","errorToHandler","error","_jsxs","FormLayout","withBorders","containerPadding","Switch","value","id","name","checked","onChange","event","target","label","InputBox","validity","valid","required","min","overlayObject","InputUnitMenu","onUnitChange","newValue","unitSelected","unitsList","k8sScalarUnitsExcluding","disabled","Grid","item","xs","sx","modalStyleUtils","modalButtonBar","Button","type","variant","onClick","LinearProgress","withStyles","theme","createStyles","buttonTrigger","border","borderRadius","color","backgroundColor","fontSize","classes","_ref$disabled","_React$useState","React","_React$useState2","anchorEl","setAnchorEl","Boolean","handleClose","newUnit","Fragment","concat","undefined","currentTarget","className","Menu","anchorOrigin","vertical","horizontal","transformOrigin","map","MenuItem"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1581.bec44ff2.chunk.js b/portal-ui/build/static/js/1581.bec44ff2.chunk.js deleted file mode 100644 index 96255da0f..000000000 --- a/portal-ui/build/static/js/1581.bec44ff2.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1581,4882,7981,1569,9581,6662,222],{1581:function(e,t,n){"use strict";n.r(t);var r=n(29439),o=n(1413),a=n(72791),i=n(40986),c=n(29945),s=n(11135),l=n(25787),d=n(61889),u=n(45248),p=n(23814),f=n(81159),m=n(21435),h=n(56028),v=n(84741),Z=n(87995),b=n(81551),x=n(31776),g=n(82342),k=n(80184);t.default=(0,l.Z)((function(e){return(0,s.Z)((0,o.Z)((0,o.Z)({},p.DF),p.ID))}))((function(e){var t=e.classes,n=e.open,o=e.enabled,s=e.cfg,l=e.selectedBucket,p=e.closeModalAndRefresh,w=(0,b.TL)(),y=(0,a.useState)(!1),C=(0,r.Z)(y,2),j=C[0],S=C[1],F=(0,a.useState)(!1),z=(0,r.Z)(F,2),P=z[0],R=z[1],N=(0,a.useState)("1"),I=(0,r.Z)(N,2),M=I[0],q=I[1],L=(0,a.useState)("Ti"),B=(0,r.Z)(L,2),O=B[0],E=B[1],A=(0,a.useState)(!1),_=(0,r.Z)(A,2),T=_[0],W=_[1];(0,a.useEffect)((function(){if(o&&(R(!0),s)){var e=(0,u.Am)(s.quota||0,!0,!1,!0);q(e.total.toString()),E(e.unit),W(!0)}}),[o,s]),(0,a.useEffect)((function(){W(!P||/^\d*(?:\.\d{1,2})?$/.test(M))}),[P,M]);return(0,k.jsx)(h.Z,{modalOpen:n,onClose:function(){p()},title:"Enable Bucket Quota",titleIcon:(0,k.jsx)(c.Wqw,{}),children:(0,k.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),!j&&T&&x.h.buckets.setBucketQuota(l,{enabled:P,amount:parseInt((0,u.Pw)(M,O,!0)),quota_type:"hard"}).then((function(){S(!1),p()})).catch((function(e){S(!1),w((0,Z.zb)((0,g.g)(e.error)))}))},children:(0,k.jsxs)(d.ZP,{container:!0,children:[(0,k.jsxs)(d.ZP,{item:!0,xs:12,className:t.formScrollable,children:[(0,k.jsx)(d.ZP,{item:!0,xs:12,className:t.formFieldRow,children:(0,k.jsx)(f.Z,{value:"bucket_quota",id:"bucket_quota",name:"bucket_quota",checked:P,onChange:function(e){R(e.target.checked)},label:"Enabled"})}),P&&(0,k.jsx)(a.Fragment,{children:(0,k.jsx)(d.ZP,{item:!0,xs:12,className:t.formFieldRow,children:(0,k.jsx)(d.ZP,{container:!0,children:(0,k.jsx)(d.ZP,{item:!0,xs:12,children:(0,k.jsx)(m.Z,{id:"quota_size",name:"quota_size",onChange:function(e){q(e.target.value),e.target.validity.valid?W(!0):W(!1)},label:"Quota",value:M,required:!0,min:"1",overlayObject:(0,k.jsx)(v.Z,{id:"quota_unit",onUnitChange:function(e){E(e)},unitSelected:O,unitsList:(0,u.zQ)(["Ki"]),disabled:!1}),error:T?"":"Please enter a valid quota"})})})})})]}),(0,k.jsxs)(d.ZP,{item:!0,xs:12,className:t.modalButtonBar,children:[(0,k.jsx)(c.zxk,{id:"cancel",type:"button",variant:"regular",disabled:j,onClick:function(){p()},label:"Cancel"}),(0,k.jsx)(c.zxk,{id:"save",type:"submit",variant:"callAction",disabled:j||!T,label:"Save"})]}),j&&(0,k.jsx)(d.ZP,{item:!0,xs:12,children:(0,k.jsx)(i.Z,{})})]})})})}))},81159:function(e,t,n){"use strict";var r=n(4942),o=n(1413),a=n(72791),i=n(11135),c=n(25787),s=n(9955),l=n(30829),d=n(20068),u=n(20890),p=n(61889),f=n(23814),m=n(29945),h=n(28182),v=n(80184),Z=(0,c.Z)((function(e){return{root:{width:50,height:24,padding:0,margin:0},switchBase:{padding:1,"&$checked":{transform:"translateX(24px)",color:e.palette.common.white,"& + $track":{backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,border:"none"}},"&$focusVisible $thumb":{color:"#4CCB92",border:"6px solid #fff"}},thumb:{width:22,height:22,backgroundColor:"#FAFAFA",border:"2px solid #FFFFFF",marginLeft:1},track:{borderRadius:12,backgroundColor:"#E2E2E2",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,transition:e.transitions.create(["background-color","border"])},checked:{},focusVisible:{},switchContainer:{display:"flex",alignItems:"center",justifyContent:"flex-end"}}}))(s.Z);t.Z=(0,c.Z)((function(e){return(0,i.Z)((0,o.Z)((0,o.Z)({indicatorLabelOn:{fontWeight:"bold",color:"#081C42 !important"},indicatorLabel:{fontSize:12,color:"#E2E2E2",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"},tooltip:{fontSize:16}},f.OR),f.YI))}))((function(e){var t=e.label,n=void 0===t?"":t,i=e.onChange,c=e.value,s=e.id,f=e.name,b=e.checked,x=void 0!==b&&b,g=e.disabled,k=void 0!==g&&g,w=e.switchOnly,y=void 0!==w&&w,C=e.tooltip,j=void 0===C?"":C,S=e.description,F=void 0===S?"":S,z=e.classes,P=e.indicatorLabels,R=e.extraInputProps,N=void 0===R?{}:R,I=(0,v.jsxs)(a.Fragment,{children:[!y&&(0,v.jsx)("span",{className:(0,h.Z)(z.indicatorLabel,(0,r.Z)({},z.indicatorLabelOn,!x)),children:P&&P.length>1?P[1]:"OFF"}),(0,v.jsx)(Z,{checked:x,onChange:i,color:"primary",name:f,inputProps:(0,o.Z)({"aria-label":"primary checkbox"},N),disabled:k,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:c,id:s}),!y&&(0,v.jsx)("span",{className:(0,h.Z)(z.indicatorLabel,(0,r.Z)({},z.indicatorLabelOn,x)),children:P?P[0]:"ON"})]});return y?I:(0,v.jsx)("div",{children:(0,v.jsxs)(p.ZP,{container:!0,alignItems:"center",children:[(0,v.jsx)(p.ZP,{item:!0,xs:12,sm:8,md:8,children:""!==n&&(0,v.jsxs)(l.Z,{htmlFor:s,className:z.inputLabel,children:[(0,v.jsx)("span",{children:n}),""!==j&&(0,v.jsx)("div",{className:z.tooltipContainer,children:(0,v.jsx)(d.Z,{title:j,placement:"top-start",children:(0,v.jsx)("div",{className:z.tooltip,children:(0,v.jsx)(m.byK,{})})})})]})}),(0,v.jsx)(p.ZP,{item:!0,xs:12,sm:""!==n?4:12,md:""!==n?4:12,textAlign:"right",justifyContent:"end",className:z.switchContainer,children:I}),""!==F&&(0,v.jsx)(p.ZP,{item:!0,xs:12,textAlign:"left",children:(0,v.jsx)(u.Z,{component:"p",className:z.fieldDescription,children:F})})]})})}))},21435:function(e,t,n){"use strict";var r=n(29439),o=n(1413),a=n(72791),i=n(27391),c=n(61889),s=n(30829),l=n(20068),d=n(13400),u=n(20165),p=n(3579),f=n(11135),m=n(72455),h=n(25787),v=n(23814),Z=n(29945),b=n(28182),x=n(80184),g=(0,m.Z)((function(e){return(0,f.Z)((0,o.Z)({},v.gM))}));function k(e){var t=g();return(0,x.jsx)(i.Z,(0,o.Z)({InputProps:{classes:t}},e))}t.Z=(0,h.Z)((function(e){return(0,f.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},v.YI),v.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var t=e.label,n=e.onChange,i=e.value,f=e.id,m=e.name,h=e.type,v=void 0===h?"text":h,g=e.autoComplete,w=void 0===g?"off":g,y=e.disabled,C=void 0!==y&&y,j=e.multiline,S=void 0!==j&&j,F=e.tooltip,z=void 0===F?"":F,P=e.index,R=void 0===P?0:P,N=e.error,I=void 0===N?"":N,M=e.required,q=void 0!==M&&M,L=e.placeholder,B=void 0===L?"":L,O=e.min,E=e.max,A=e.overlayId,_=e.overlayIcon,T=void 0===_?null:_,W=e.overlayObject,D=void 0===W?null:W,V=e.extraInputProps,$=void 0===V?{}:V,K=e.overlayAction,Q=e.noLabelMinWidth,H=void 0!==Q&&Q,U=e.pattern,X=void 0===U?"":U,G=e.autoFocus,Y=void 0!==G&&G,J=e.classes,ee=e.className,te=void 0===ee?"":ee,ne=e.onKeyPress,re=e.onFocus,oe=e.onPaste,ae=(0,o.Z)({"data-index":R},$),ie=(0,a.useState)(!1),ce=(0,r.Z)(ie,2),se=ce[0],le=ce[1];"number"===v&&O&&(ae.min=O),"number"===v&&E&&(ae.max=E),""!==X&&(ae.pattern=X);var de=T,ue=v;return"password"===v&&null===T&&(de=se?(0,x.jsx)(u.Z,{}):(0,x.jsx)(p.Z,{}),ue=se?"text":"password"),(0,x.jsx)(a.Fragment,{children:(0,x.jsxs)(c.ZP,{container:!0,className:(0,b.Z)(""!==te?te:"",""!==I?J.errorInField:J.inputBoxContainer),children:[""!==t&&(0,x.jsxs)(s.Z,{htmlFor:f,className:H?J.noMinWidthLabel:J.inputLabel,children:[(0,x.jsxs)("span",{children:[t,q?"*":""]}),""!==z&&(0,x.jsx)("div",{className:J.tooltipContainer,children:(0,x.jsx)(l.Z,{title:z,placement:"top-start",children:(0,x.jsx)("div",{className:J.tooltip,children:(0,x.jsx)(Z.byK,{})})})})]}),(0,x.jsxs)("div",{className:J.textBoxContainer,children:[(0,x.jsx)(k,{id:f,name:m,fullWidth:!0,value:i,autoFocus:Y,disabled:C,onChange:n,type:ue,multiline:S,autoComplete:w,inputProps:ae,error:""!==I,helperText:I,placeholder:B,className:J.inputRebase,onKeyPress:ne,onFocus:re,onPaste:oe}),de&&(0,x.jsx)("div",{className:"".concat(J.overlayAction," ").concat(""!==t?"withLabel":""),children:(0,x.jsx)(d.Z,{onClick:K?function(){K()}:function(){return le(!se)},id:A,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:de})}),D&&(0,x.jsx)("div",{className:"".concat(J.overlayAction," ").concat(""!==t?"withLabel":""),children:D})]})]})})}))},84741:function(e,t,n){"use strict";var r=n(29439),o=n(72791),a=n(11135),i=n(25787),c=n(71715),s=n(77865),l=n(80184);t.Z=(0,i.Z)((function(e){return(0,a.Z)({buttonTrigger:{border:"#F0F2F2 1px solid",borderRadius:3,color:"#838383",backgroundColor:"#fff",fontSize:12}})}))((function(e){var t=e.classes,n=e.id,a=e.unitSelected,i=e.unitsList,d=e.disabled,u=void 0!==d&&d,p=e.onUnitChange,f=o.useState(null),m=(0,r.Z)(f,2),h=m[0],v=m[1],Z=Boolean(h),b=function(e){v(null),""!==e&&p&&p(e)};return(0,l.jsxs)(o.Fragment,{children:[(0,l.jsx)("button",{id:"".concat(n,"-button"),"aria-controls":"".concat(n,"-menu"),"aria-haspopup":"true","aria-expanded":Z?"true":void 0,onClick:function(e){v(e.currentTarget)},className:t.buttonTrigger,disabled:u,type:"button",children:a}),(0,l.jsx)(c.Z,{id:"".concat(n,"-menu"),"aria-labelledby":"".concat(n,"-button"),anchorEl:h,open:Z,onClose:function(){b("")},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:i.map((function(e){return(0,l.jsx)(s.Z,{onClick:function(){return b(e.value)},children:e.label},"itemUnit-".concat(e.value,"-").concat(e.label))}))})]})}))},3579:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var o=r(n(45649)),a=n(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=i},20165:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var o=r(n(45649)),a=n(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=i},45649:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return r.createSvgIcon}});var r=n(28610)},93840:function(e,t,n){"use strict";var r=n(72791).createContext(void 0);t.Z=r},76147:function(e,t,n){"use strict";function r(e){var t=e.props,n=e.states,r=e.muiFormControl;return n.reduce((function(e,n){return e[n]=t[n],r&&"undefined"===typeof t[n]&&(e[n]=r[n]),e}),{})}n.d(t,{Z:function(){return r}})},52930:function(e,t,n){"use strict";n.d(t,{Z:function(){return a}});var r=n(72791),o=n(93840);function a(){return r.useContext(o.Z)}},17133:function(e,t,n){"use strict";var r=n(4942),o=n(63366),a=n(87462),i=n(72791),c=n(28182),s=n(94419),l=n(76147),d=n(52930),u=n(14036),p=n(31402),f=n(66934),m=n(10843),h=n(80184),v=["children","className","color","component","disabled","error","filled","focused","required"],Z=(0,f.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return(0,a.Z)({},t.root,"secondary"===n.color&&t.colorSecondary,n.filled&&t.filled)}})((function(e){var t,n=e.theme,o=e.ownerState;return(0,a.Z)({color:(n.vars||n).palette.text.secondary},n.typography.body1,(t={lineHeight:"1.4375em",padding:0,position:"relative"},(0,r.Z)(t,"&.".concat(m.Z.focused),{color:(n.vars||n).palette[o.color].main}),(0,r.Z)(t,"&.".concat(m.Z.disabled),{color:(n.vars||n).palette.text.disabled}),(0,r.Z)(t,"&.".concat(m.Z.error),{color:(n.vars||n).palette.error.main}),t))})),b=(0,f.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,t){return t.asterisk}})((function(e){var t=e.theme;return(0,r.Z)({},"&.".concat(m.Z.error),{color:(t.vars||t).palette.error.main})})),x=i.forwardRef((function(e,t){var n=(0,p.Z)({props:e,name:"MuiFormLabel"}),r=n.children,i=n.className,f=n.component,x=void 0===f?"label":f,g=(0,o.Z)(n,v),k=(0,d.Z)(),w=(0,l.Z)({props:n,muiFormControl:k,states:["color","required","focused","disabled","error","filled"]}),y=(0,a.Z)({},n,{color:w.color||"primary",component:x,disabled:w.disabled,error:w.error,filled:w.filled,focused:w.focused,required:w.required}),C=function(e){var t=e.classes,n=e.color,r=e.focused,o=e.disabled,a=e.error,i=e.filled,c=e.required,l={root:["root","color".concat((0,u.Z)(n)),o&&"disabled",a&&"error",i&&"filled",r&&"focused",c&&"required"],asterisk:["asterisk",a&&"error"]};return(0,s.Z)(l,m.M,t)}(y);return(0,h.jsxs)(Z,(0,a.Z)({as:x,ownerState:y,className:(0,c.Z)(C.root,i),ref:t},g,{children:[r,w.required&&(0,h.jsxs)(b,{ownerState:y,"aria-hidden":!0,className:C.asterisk,children:["\u2009","*"]})]}))}));t.Z=x},10843:function(e,t,n){"use strict";n.d(t,{M:function(){return a}});var r=n(75878),o=n(21217);function a(e){return(0,o.Z)("MuiFormLabel",e)}var i=(0,r.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);t.Z=i},30829:function(e,t,n){"use strict";n.d(t,{Z:function(){return k}});var r=n(4942),o=n(63366),a=n(87462),i=n(72791),c=n(94419),s=n(28182),l=n(76147),d=n(52930),u=n(17133),p=n(10843),f=n(31402),m=n(66934),h=n(75878),v=n(21217);function Z(e){return(0,v.Z)("MuiInputLabel",e)}(0,h.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var b=n(80184),x=["disableAnimation","margin","shrink","variant","className"],g=(0,m.ZP)(u.Z,{shouldForwardProp:function(e){return(0,m.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[(0,r.Z)({},"& .".concat(p.Z.asterisk),t.asterisk),t.root,n.formControl&&t.formControl,"small"===n.size&&t.sizeSmall,n.shrink&&t.shrink,!n.disableAnimation&&t.animated,t[n.variant]]}})((function(e){var t=e.theme,n=e.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},n.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===n.size&&{transform:"translate(0, 17px) scale(1)"},n.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!n.disableAnimation&&{transition:t.transitions.create(["color","transform","max-width"],{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut})},"filled"===n.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===n.size&&{transform:"translate(12px, 13px) scale(1)"},n.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===n.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===n.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===n.size&&{transform:"translate(14px, 9px) scale(1)"},n.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),k=i.forwardRef((function(e,t){var n=(0,f.Z)({name:"MuiInputLabel",props:e}),r=n.disableAnimation,i=void 0!==r&&r,u=n.shrink,p=n.className,m=(0,o.Z)(n,x),h=(0,d.Z)(),v=u;"undefined"===typeof v&&h&&(v=h.filled||h.focused||h.adornedStart);var k=(0,l.Z)({props:n,muiFormControl:h,states:["size","variant","required"]}),w=(0,a.Z)({},n,{disableAnimation:i,formControl:h,shrink:v,size:k.size,variant:k.variant,required:k.required}),y=function(e){var t=e.classes,n=e.formControl,r=e.size,o=e.shrink,i={root:["root",n&&"formControl",!e.disableAnimation&&"animated",o&&"shrink","small"===r&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},s=(0,c.Z)(i,Z,t);return(0,a.Z)({},t,s)}(w);return(0,b.jsx)(g,(0,a.Z)({"data-shrink":v,ownerState:w,ref:t,className:(0,s.Z)(y.root,p)},m,{classes:y}))}))},9955:function(e,t,n){"use strict";n.d(t,{Z:function(){return C}});var r=n(4942),o=n(63366),a=n(87462),i=n(72791),c=n(28182),s=n(94419),l=n(12065),d=n(14036),u=n(97278),p=n(31402),f=n(66934),m=n(75878),h=n(21217);function v(e){return(0,h.Z)("MuiSwitch",e)}var Z=(0,m.Z)("MuiSwitch",["root","edgeStart","edgeEnd","switchBase","colorPrimary","colorSecondary","sizeSmall","sizeMedium","checked","disabled","input","thumb","track"]),b=n(80184),x=["className","color","edge","size","sx"],g=(0,f.ZP)("span",{name:"MuiSwitch",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,n.edge&&t["edge".concat((0,d.Z)(n.edge))],t["size".concat((0,d.Z)(n.size))]]}})((function(e){var t,n=e.ownerState;return(0,a.Z)({display:"inline-flex",width:58,height:38,overflow:"hidden",padding:12,boxSizing:"border-box",position:"relative",flexShrink:0,zIndex:0,verticalAlign:"middle","@media print":{colorAdjust:"exact"}},"start"===n.edge&&{marginLeft:-8},"end"===n.edge&&{marginRight:-8},"small"===n.size&&(t={width:40,height:24,padding:7},(0,r.Z)(t,"& .".concat(Z.thumb),{width:16,height:16}),(0,r.Z)(t,"& .".concat(Z.switchBase),(0,r.Z)({padding:4},"&.".concat(Z.checked),{transform:"translateX(16px)"})),t))})),k=(0,f.ZP)(u.Z,{name:"MuiSwitch",slot:"SwitchBase",overridesResolver:function(e,t){var n=e.ownerState;return[t.switchBase,(0,r.Z)({},"& .".concat(Z.input),t.input),"default"!==n.color&&t["color".concat((0,d.Z)(n.color))]]}})((function(e){var t,n=e.theme;return t={position:"absolute",top:0,left:0,zIndex:1,color:n.vars?n.vars.palette.Switch.defaultColor:"".concat("light"===n.palette.mode?n.palette.common.white:n.palette.grey[300]),transition:n.transitions.create(["left","transform"],{duration:n.transitions.duration.shortest})},(0,r.Z)(t,"&.".concat(Z.checked),{transform:"translateX(20px)"}),(0,r.Z)(t,"&.".concat(Z.disabled),{color:n.vars?n.vars.palette.Switch.defaultDisabledColor:"".concat("light"===n.palette.mode?n.palette.grey[100]:n.palette.grey[600])}),(0,r.Z)(t,"&.".concat(Z.checked," + .").concat(Z.track),{opacity:.5}),(0,r.Z)(t,"&.".concat(Z.disabled," + .").concat(Z.track),{opacity:n.vars?n.vars.opacity.switchTrackDisabled:"".concat("light"===n.palette.mode?.12:.2)}),(0,r.Z)(t,"& .".concat(Z.input),{left:"-100%",width:"300%"}),t}),(function(e){var t,n=e.theme,o=e.ownerState;return(0,a.Z)({"&:hover":{backgroundColor:n.vars?"rgba(".concat(n.vars.palette.action.activeChannel," / ").concat(n.vars.palette.action.hoverOpacity,")"):(0,l.Fq)(n.palette.action.active,n.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==o.color&&(t={},(0,r.Z)(t,"&.".concat(Z.checked),(0,r.Z)({color:(n.vars||n).palette[o.color].main,"&:hover":{backgroundColor:n.vars?"rgba(".concat(n.vars.palette[o.color].mainChannel," / ").concat(n.vars.palette.action.hoverOpacity,")"):(0,l.Fq)(n.palette[o.color].main,n.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"&.".concat(Z.disabled),{color:n.vars?n.vars.palette.Switch["".concat(o.color,"DisabledColor")]:"".concat("light"===n.palette.mode?(0,l.$n)(n.palette[o.color].main,.62):(0,l._j)(n.palette[o.color].main,.55))})),(0,r.Z)(t,"&.".concat(Z.checked," + .").concat(Z.track),{backgroundColor:(n.vars||n).palette[o.color].main}),t))})),w=(0,f.ZP)("span",{name:"MuiSwitch",slot:"Track",overridesResolver:function(e,t){return t.track}})((function(e){var t=e.theme;return{height:"100%",width:"100%",borderRadius:7,zIndex:-1,transition:t.transitions.create(["opacity","background-color"],{duration:t.transitions.duration.shortest}),backgroundColor:t.vars?t.vars.palette.common.onBackground:"".concat("light"===t.palette.mode?t.palette.common.black:t.palette.common.white),opacity:t.vars?t.vars.opacity.switchTrack:"".concat("light"===t.palette.mode?.38:.3)}})),y=(0,f.ZP)("span",{name:"MuiSwitch",slot:"Thumb",overridesResolver:function(e,t){return t.thumb}})((function(e){var t=e.theme;return{boxShadow:(t.vars||t).shadows[1],backgroundColor:"currentColor",width:20,height:20,borderRadius:"50%"}})),C=i.forwardRef((function(e,t){var n=(0,p.Z)({props:e,name:"MuiSwitch"}),r=n.className,i=n.color,l=void 0===i?"primary":i,u=n.edge,f=void 0!==u&&u,m=n.size,h=void 0===m?"medium":m,Z=n.sx,C=(0,o.Z)(n,x),j=(0,a.Z)({},n,{color:l,edge:f,size:h}),S=function(e){var t=e.classes,n=e.edge,r=e.size,o=e.color,i=e.checked,c=e.disabled,l={root:["root",n&&"edge".concat((0,d.Z)(n)),"size".concat((0,d.Z)(r))],switchBase:["switchBase","color".concat((0,d.Z)(o)),i&&"checked",c&&"disabled"],thumb:["thumb"],track:["track"],input:["input"]},u=(0,s.Z)(l,v,t);return(0,a.Z)({},t,u)}(j),F=(0,b.jsx)(y,{className:S.thumb,ownerState:j});return(0,b.jsxs)(g,{className:(0,c.Z)(S.root,r),sx:Z,ownerState:j,children:[(0,b.jsx)(k,(0,a.Z)({type:"checkbox",icon:F,checkedIcon:F,ref:t,ownerState:j},C,{classes:(0,a.Z)({},S,{root:S.switchBase})})),(0,b.jsx)(w,{className:S.track,ownerState:j})]})}))},97278:function(e,t,n){"use strict";n.d(t,{Z:function(){return k}});var r=n(29439),o=n(63366),a=n(87462),i=n(72791),c=n(28182),s=n(94419),l=n(14036),d=n(66934),u=n(98278),p=n(52930),f=n(95080),m=n(75878),h=n(21217);function v(e){return(0,h.Z)("PrivateSwitchBase",e)}(0,m.Z)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var Z=n(80184),b=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],x=(0,d.ZP)(f.Z)((function(e){var t=e.ownerState;return(0,a.Z)({padding:9,borderRadius:"50%"},"start"===t.edge&&{marginLeft:"small"===t.size?-3:-12},"end"===t.edge&&{marginRight:"small"===t.size?-3:-12})})),g=(0,d.ZP)("input")({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),k=i.forwardRef((function(e,t){var n=e.autoFocus,i=e.checked,d=e.checkedIcon,f=e.className,m=e.defaultChecked,h=e.disabled,k=e.disableFocusRipple,w=void 0!==k&&k,y=e.edge,C=void 0!==y&&y,j=e.icon,S=e.id,F=e.inputProps,z=e.inputRef,P=e.name,R=e.onBlur,N=e.onChange,I=e.onFocus,M=e.readOnly,q=e.required,L=void 0!==q&&q,B=e.tabIndex,O=e.type,E=e.value,A=(0,o.Z)(e,b),_=(0,u.Z)({controlled:i,default:Boolean(m),name:"SwitchBase",state:"checked"}),T=(0,r.Z)(_,2),W=T[0],D=T[1],V=(0,p.Z)(),$=h;V&&"undefined"===typeof $&&($=V.disabled);var K="checkbox"===O||"radio"===O,Q=(0,a.Z)({},e,{checked:W,disabled:$,disableFocusRipple:w,edge:C}),H=function(e){var t=e.classes,n=e.checked,r=e.disabled,o=e.edge,a={root:["root",n&&"checked",r&&"disabled",o&&"edge".concat((0,l.Z)(o))],input:["input"]};return(0,s.Z)(a,v,t)}(Q);return(0,Z.jsxs)(x,(0,a.Z)({component:"span",className:(0,c.Z)(H.root,f),centerRipple:!0,focusRipple:!w,disabled:$,tabIndex:null,role:void 0,onFocus:function(e){I&&I(e),V&&V.onFocus&&V.onFocus(e)},onBlur:function(e){R&&R(e),V&&V.onBlur&&V.onBlur(e)},ownerState:Q,ref:t},A,{children:[(0,Z.jsx)(g,(0,a.Z)({autoFocus:n,checked:i,defaultChecked:m,className:H.input,disabled:$,id:K?S:void 0,name:P,onChange:function(e){if(!e.nativeEvent.defaultPrevented){var t=e.target.checked;D(t),N&&N(e,t)}},readOnly:M,ref:z,required:L,ownerState:Q,tabIndex:B,type:O},"checkbox"===O&&void 0===E?{}:{value:E},F)),W?d:j]}))}))},31260:function(e,t,n){"use strict";var r=n(78949);t.Z=r.Z},28610:function(e,t,n){"use strict";n.r(t),n.d(t,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return c.Z},deprecatedPropType:function(){return s},isMuiElement:function(){return l.Z},ownerDocument:function(){return d.Z},ownerWindow:function(){return u.Z},requirePropFactory:function(){return p},setRef:function(){return f},unstable_ClassNameGenerator:function(){return k},unstable_useEnhancedEffect:function(){return m.Z},unstable_useId:function(){return h.Z},unsupportedProp:function(){return v},useControlled:function(){return Z.Z},useEventCallback:function(){return b.Z},useForkRef:function(){return x.Z},useIsFocusVisible:function(){return g.Z}});var r=n(55902),o=n(14036),a=n(31260),i=n(76189),c=n(83199);var s=function(e,t){return function(){return null}},l=n(19103),d=n(98301),u=n(17602);n(87462);var p=function(e,t){return function(){return null}},f=n(62971).Z,m=n(40162),h=n(67384);var v=function(e,t,n,r,o){return null},Z=n(98278),b=n(89683),x=n(42071),g=n(23031),k={configure:function(e){r.Z.configure(e)}}},19103:function(e,t,n){"use strict";n.d(t,{Z:function(){return o}});var r=n(72791);var o=function(e,t){return r.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}},78949:function(e,t,n){"use strict";function r(){for(var e=arguments.length,t=new Array(e),n=0;n.\n\nimport React, { useEffect, useState } from \"react\";\nimport { LinearProgress } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport { BucketQuotaIcon, Button } from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n calculateBytes,\n getBytes,\n k8sScalarUnitsExcluding,\n} from \"../../../../common/utils\";\n\nimport {\n formFieldStyles,\n modalStyleUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport InputUnitMenu from \"../../Common/FormComponents/InputUnitMenu/InputUnitMenu\";\n\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { BucketQuota } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...formFieldStyles,\n ...modalStyleUtils,\n });\n\ninterface IEnableQuotaProps {\n classes: any;\n open: boolean;\n enabled: boolean;\n cfg: BucketQuota | null;\n selectedBucket: string;\n closeModalAndRefresh: () => void;\n}\n\nconst EnableQuota = ({\n classes,\n open,\n enabled,\n cfg,\n selectedBucket,\n closeModalAndRefresh,\n}: IEnableQuotaProps) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [quotaEnabled, setQuotaEnabled] = useState(false);\n const [quotaSize, setQuotaSize] = useState(\"1\");\n const [quotaUnit, setQuotaUnit] = useState(\"Ti\");\n const [validInput, setValidInput] = useState(false);\n\n useEffect(() => {\n if (enabled) {\n setQuotaEnabled(true);\n if (cfg) {\n const unitCalc = calculateBytes(cfg.quota || 0, true, false, true);\n\n setQuotaSize(unitCalc.total.toString());\n setQuotaUnit(unitCalc.unit);\n setValidInput(true);\n }\n }\n }, [enabled, cfg]);\n\n useEffect(() => {\n const valRegExp = /^\\d*(?:\\.\\d{1,2})?$/;\n\n if (!quotaEnabled) {\n setValidInput(true);\n return;\n }\n\n setValidInput(valRegExp.test(quotaSize));\n }, [quotaEnabled, quotaSize]);\n\n const enableBucketEncryption = () => {\n if (loading || !validInput) {\n return;\n }\n\n api.buckets\n .setBucketQuota(selectedBucket, {\n enabled: quotaEnabled,\n amount: parseInt(getBytes(quotaSize, quotaUnit, true)),\n quota_type: \"hard\",\n })\n .then(() => {\n setLoading(false);\n closeModalAndRefresh();\n })\n .catch((err) => {\n setLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n return (\n {\n closeModalAndRefresh();\n }}\n title=\"Enable Bucket Quota\"\n titleIcon={}\n >\n ) => {\n e.preventDefault();\n enableBucketEncryption();\n }}\n >\n \n \n \n ) => {\n setQuotaEnabled(event.target.checked);\n }}\n label={\"Enabled\"}\n />\n \n {quotaEnabled && (\n \n \n \n \n ) => {\n setQuotaSize(e.target.value);\n if (!e.target.validity.valid) {\n setValidInput(false);\n } else {\n setValidInput(true);\n }\n }}\n label=\"Quota\"\n value={quotaSize}\n required\n min=\"1\"\n overlayObject={\n {\n setQuotaUnit(newValue);\n }}\n unitSelected={quotaUnit}\n unitsList={k8sScalarUnitsExcluding([\"Ki\"])}\n disabled={false}\n />\n }\n error={!validInput ? \"Please enter a valid quota\" : \"\"}\n />\n \n \n \n \n )}\n \n \n {\n closeModalAndRefresh();\n }}\n label={\"Cancel\"}\n />\n\n \n \n {loading && (\n \n \n \n )}\n \n \n \n );\n};\n\nexport default withStyles(styles)(EnableQuota);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input/Input\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n checked: boolean;\n switchOnly?: boolean;\n indicatorLabels?: string[];\n extraInputProps?: StandardInputProps[\"inputProps\"];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n indicatorLabelOn: {\n fontWeight: \"bold\",\n color: \"#081C42 !important\",\n },\n indicatorLabel: {\n fontSize: 12,\n color: \"#E2E2E2\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n tooltip: {\n fontSize: 16,\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles((theme) => ({\n root: {\n width: 50,\n height: 24,\n padding: 0,\n margin: 0,\n },\n switchBase: {\n padding: 1,\n \"&$checked\": {\n transform: \"translateX(24px)\",\n color: theme.palette.common.white,\n \"& + $track\": {\n backgroundColor: \"#4CCB92\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n border: \"none\",\n },\n },\n \"&$focusVisible $thumb\": {\n color: \"#4CCB92\",\n border: \"6px solid #fff\",\n },\n },\n thumb: {\n width: 22,\n height: 22,\n backgroundColor: \"#FAFAFA\",\n border: \"2px solid #FFFFFF\",\n marginLeft: 1,\n },\n track: {\n borderRadius: 24 / 2,\n backgroundColor: \"#E2E2E2\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n transition: theme.transitions.create([\"background-color\", \"border\"]),\n },\n checked: {},\n focusVisible: {},\n switchContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n}))(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n classes,\n indicatorLabels,\n extraInputProps = {},\n}: IFormSwitch) => {\n const switchComponent = (\n \n {!switchOnly && (\n \n {indicatorLabels && indicatorLabels.length > 1\n ? indicatorLabels[1]\n : \"OFF\"}\n \n )}\n \n {!switchOnly && (\n \n {indicatorLabels ? indicatorLabels[0] : \"ON\"}\n \n )}\n \n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n
\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n \n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { selectorTypes } from \"../SelectWrapper/SelectWrapper\";\nimport { Menu, MenuItem } from \"@mui/material\";\n\ninterface IInputUnitBox {\n classes: any;\n id: string;\n unitSelected: string;\n unitsList: selectorTypes[];\n disabled?: boolean;\n onUnitChange?: (newValue: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonTrigger: {\n border: \"#F0F2F2 1px solid\",\n borderRadius: 3,\n color: \"#838383\",\n backgroundColor: \"#fff\",\n fontSize: 12,\n },\n });\n\nconst InputUnitMenu = ({\n classes,\n id,\n unitSelected,\n unitsList,\n disabled = false,\n onUnitChange,\n}: IInputUnitBox) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (newUnit: string) => {\n setAnchorEl(null);\n if (newUnit !== \"\" && onUnitChange) {\n onUnitChange(newUnit);\n }\n };\n\n return (\n \n \n {unitSelected}\n \n {\n handleClose(\"\");\n }}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"center\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"center\",\n }}\n >\n {unitsList.map((unit) => (\n handleClose(unit.value)}\n key={`itemUnit-${unit.value}-${unit.label}`}\n >\n {unit.label}\n \n ))}\n \n \n );\n};\n\nexport default withStyles(styles)(InputUnitMenu);\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchUtilityClass(slot) {\n return generateUtilityClass('MuiSwitch', slot);\n}\nconst switchClasses = generateUtilityClasses('MuiSwitch', ['root', 'edgeStart', 'edgeEnd', 'switchBase', 'colorPrimary', 'colorSecondary', 'sizeSmall', 'sizeMedium', 'checked', 'disabled', 'input', 'thumb', 'track']);\nexport default switchClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"color\", \"edge\", \"size\", \"sx\"];\n// @inheritedComponent IconButton\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha, darken, lighten } from '@mui/system';\nimport capitalize from '../utils/capitalize';\nimport SwitchBase from '../internal/SwitchBase';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport switchClasses, { getSwitchUtilityClass } from './switchClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n edge,\n size,\n color,\n checked,\n disabled\n } = ownerState;\n const slots = {\n root: ['root', edge && `edge${capitalize(edge)}`, `size${capitalize(size)}`],\n switchBase: ['switchBase', `color${capitalize(color)}`, checked && 'checked', disabled && 'disabled'],\n thumb: ['thumb'],\n track: ['track'],\n input: ['input']\n };\n const composedClasses = composeClasses(slots, getSwitchUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst SwitchRoot = styled('span', {\n name: 'MuiSwitch',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.edge && styles[`edge${capitalize(ownerState.edge)}`], styles[`size${capitalize(ownerState.size)}`]];\n }\n})(({\n ownerState\n}) => _extends({\n display: 'inline-flex',\n width: 34 + 12 * 2,\n height: 14 + 12 * 2,\n overflow: 'hidden',\n padding: 12,\n boxSizing: 'border-box',\n position: 'relative',\n flexShrink: 0,\n zIndex: 0,\n // Reset the stacking context.\n verticalAlign: 'middle',\n // For correct alignment with the text.\n '@media print': {\n colorAdjust: 'exact'\n }\n}, ownerState.edge === 'start' && {\n marginLeft: -8\n}, ownerState.edge === 'end' && {\n marginRight: -8\n}, ownerState.size === 'small' && {\n width: 40,\n height: 24,\n padding: 7,\n [`& .${switchClasses.thumb}`]: {\n width: 16,\n height: 16\n },\n [`& .${switchClasses.switchBase}`]: {\n padding: 4,\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(16px)'\n }\n }\n}));\nconst SwitchSwitchBase = styled(SwitchBase, {\n name: 'MuiSwitch',\n slot: 'SwitchBase',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.switchBase, {\n [`& .${switchClasses.input}`]: styles.input\n }, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme\n}) => ({\n position: 'absolute',\n top: 0,\n left: 0,\n zIndex: 1,\n // Render above the focus ripple.\n color: theme.vars ? theme.vars.palette.Switch.defaultColor : `${theme.palette.mode === 'light' ? theme.palette.common.white : theme.palette.grey[300]}`,\n transition: theme.transitions.create(['left', 'transform'], {\n duration: theme.transitions.duration.shortest\n }),\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(20px)'\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch.defaultDisabledColor : `${theme.palette.mode === 'light' ? theme.palette.grey[100] : theme.palette.grey[600]}`\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n opacity: 0.5\n },\n [`&.${switchClasses.disabled} + .${switchClasses.track}`]: {\n opacity: theme.vars ? theme.vars.opacity.switchTrackDisabled : `${theme.palette.mode === 'light' ? 0.12 : 0.2}`\n },\n [`& .${switchClasses.input}`]: {\n left: '-100%',\n width: '300%'\n }\n}), ({\n theme,\n ownerState\n}) => _extends({\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${switchClasses.checked}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main,\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch[`${ownerState.color}DisabledColor`] : `${theme.palette.mode === 'light' ? lighten(theme.palette[ownerState.color].main, 0.62) : darken(theme.palette[ownerState.color].main, 0.55)}`\n }\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].main\n }\n}));\nconst SwitchTrack = styled('span', {\n name: 'MuiSwitch',\n slot: 'Track',\n overridesResolver: (props, styles) => styles.track\n})(({\n theme\n}) => ({\n height: '100%',\n width: '100%',\n borderRadius: 14 / 2,\n zIndex: -1,\n transition: theme.transitions.create(['opacity', 'background-color'], {\n duration: theme.transitions.duration.shortest\n }),\n backgroundColor: theme.vars ? theme.vars.palette.common.onBackground : `${theme.palette.mode === 'light' ? theme.palette.common.black : theme.palette.common.white}`,\n opacity: theme.vars ? theme.vars.opacity.switchTrack : `${theme.palette.mode === 'light' ? 0.38 : 0.3}`\n}));\nconst SwitchThumb = styled('span', {\n name: 'MuiSwitch',\n slot: 'Thumb',\n overridesResolver: (props, styles) => styles.thumb\n})(({\n theme\n}) => ({\n boxShadow: (theme.vars || theme).shadows[1],\n backgroundColor: 'currentColor',\n width: 20,\n height: 20,\n borderRadius: '50%'\n}));\nconst Switch = /*#__PURE__*/React.forwardRef(function Switch(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiSwitch'\n });\n const {\n className,\n color = 'primary',\n edge = false,\n size = 'medium',\n sx\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n edge,\n size\n });\n const classes = useUtilityClasses(ownerState);\n const icon = /*#__PURE__*/_jsx(SwitchThumb, {\n className: classes.thumb,\n ownerState: ownerState\n });\n return /*#__PURE__*/_jsxs(SwitchRoot, {\n className: clsx(classes.root, className),\n sx: sx,\n ownerState: ownerState,\n children: [/*#__PURE__*/_jsx(SwitchSwitchBase, _extends({\n type: \"checkbox\",\n icon: icon,\n checkedIcon: icon,\n ref: ref,\n ownerState: ownerState\n }, other, {\n classes: _extends({}, classes, {\n root: classes.switchBase\n })\n })), /*#__PURE__*/_jsx(SwitchTrack, {\n className: classes.track,\n ownerState: ownerState\n })]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Switch.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The default checked state. Use when the component is not controlled.\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense switch styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n */\n value: PropTypes.any\n} : void 0;\nexport default Switch;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchBaseUtilityClass(slot) {\n return generateUtilityClass('PrivateSwitchBase', slot);\n}\nconst switchBaseClasses = generateUtilityClasses('PrivateSwitchBase', ['root', 'checked', 'disabled', 'input', 'edgeStart', 'edgeEnd']);\nexport default switchBaseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"checked\", \"checkedIcon\", \"className\", \"defaultChecked\", \"disabled\", \"disableFocusRipple\", \"edge\", \"icon\", \"id\", \"inputProps\", \"inputRef\", \"name\", \"onBlur\", \"onChange\", \"onFocus\", \"readOnly\", \"required\", \"tabIndex\", \"type\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useControlled from '../utils/useControlled';\nimport useFormControl from '../FormControl/useFormControl';\nimport ButtonBase from '../ButtonBase';\nimport { getSwitchBaseUtilityClass } from './switchBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n checked,\n disabled,\n edge\n } = ownerState;\n const slots = {\n root: ['root', checked && 'checked', disabled && 'disabled', edge && `edge${capitalize(edge)}`],\n input: ['input']\n };\n return composeClasses(slots, getSwitchBaseUtilityClass, classes);\n};\nconst SwitchBaseRoot = styled(ButtonBase)(({\n ownerState\n}) => _extends({\n padding: 9,\n borderRadius: '50%'\n}, ownerState.edge === 'start' && {\n marginLeft: ownerState.size === 'small' ? -3 : -12\n}, ownerState.edge === 'end' && {\n marginRight: ownerState.size === 'small' ? -3 : -12\n}));\nconst SwitchBaseInput = styled('input')({\n cursor: 'inherit',\n position: 'absolute',\n opacity: 0,\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n zIndex: 1\n});\n\n/**\n * @ignore - internal component.\n */\nconst SwitchBase = /*#__PURE__*/React.forwardRef(function SwitchBase(props, ref) {\n const {\n autoFocus,\n checked: checkedProp,\n checkedIcon,\n className,\n defaultChecked,\n disabled: disabledProp,\n disableFocusRipple = false,\n edge = false,\n icon,\n id,\n inputProps,\n inputRef,\n name,\n onBlur,\n onChange,\n onFocus,\n readOnly,\n required = false,\n tabIndex,\n type,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [checked, setCheckedState] = useControlled({\n controlled: checkedProp,\n default: Boolean(defaultChecked),\n name: 'SwitchBase',\n state: 'checked'\n });\n const muiFormControl = useFormControl();\n const handleFocus = event => {\n if (onFocus) {\n onFocus(event);\n }\n if (muiFormControl && muiFormControl.onFocus) {\n muiFormControl.onFocus(event);\n }\n };\n const handleBlur = event => {\n if (onBlur) {\n onBlur(event);\n }\n if (muiFormControl && muiFormControl.onBlur) {\n muiFormControl.onBlur(event);\n }\n };\n const handleInputChange = event => {\n // Workaround for https://github.com/facebook/react/issues/9023\n if (event.nativeEvent.defaultPrevented) {\n return;\n }\n const newChecked = event.target.checked;\n setCheckedState(newChecked);\n if (onChange) {\n // TODO v6: remove the second argument.\n onChange(event, newChecked);\n }\n };\n let disabled = disabledProp;\n if (muiFormControl) {\n if (typeof disabled === 'undefined') {\n disabled = muiFormControl.disabled;\n }\n }\n const hasLabelFor = type === 'checkbox' || type === 'radio';\n const ownerState = _extends({}, props, {\n checked,\n disabled,\n disableFocusRipple,\n edge\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(SwitchBaseRoot, _extends({\n component: \"span\",\n className: clsx(classes.root, className),\n centerRipple: true,\n focusRipple: !disableFocusRipple,\n disabled: disabled,\n tabIndex: null,\n role: undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/_jsx(SwitchBaseInput, _extends({\n autoFocus: autoFocus,\n checked: checkedProp,\n defaultChecked: defaultChecked,\n className: classes.input,\n disabled: disabled,\n id: hasLabelFor ? id : undefined,\n name: name,\n onChange: handleInputChange,\n readOnly: readOnly,\n ref: inputRef,\n required: required,\n ownerState: ownerState,\n tabIndex: tabIndex,\n type: type\n }, type === 'checkbox' && value === undefined ? {} : {\n value\n }, inputProps)), checked ? checkedIcon : icon]\n }));\n});\n\n// NB: If changed, please update Checkbox, Switch and Radio\n// so that the API documentation is updated.\nprocess.env.NODE_ENV !== \"production\" ? SwitchBase.propTypes = {\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node.isRequired,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * @ignore\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the keyboard focus ripple is disabled.\n * @default false\n */\n disableFocusRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node.isRequired,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /*\n * @ignore\n */\n name: PropTypes.string,\n /**\n * @ignore\n */\n onBlur: PropTypes.func,\n /**\n * Callback fired when the state is changed.\n *\n * @param {object} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.object,\n /**\n * @ignore\n */\n tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The input component prop `type`.\n */\n type: PropTypes.string.isRequired,\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default SwitchBase;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["withStyles","theme","createStyles","_objectSpread","formFieldStyles","modalStyleUtils","_ref","classes","open","enabled","cfg","selectedBucket","closeModalAndRefresh","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","loading","setLoading","_useState3","_useState4","quotaEnabled","setQuotaEnabled","_useState5","_useState6","quotaSize","setQuotaSize","_useState7","_useState8","quotaUnit","setQuotaUnit","_useState9","_useState10","validInput","setValidInput","useEffect","unitCalc","calculateBytes","quota","total","toString","unit","test","_jsx","ModalWrapper","modalOpen","onClose","title","titleIcon","BucketQuotaIcon","children","noValidate","autoComplete","onSubmit","e","preventDefault","api","buckets","setBucketQuota","amount","parseInt","getBytes","quota_type","then","catch","err","setModalErrorSnackMessage","errorToHandler","error","_jsxs","Grid","container","item","xs","className","formScrollable","formFieldRow","FormSwitchWrapper","value","id","name","checked","onChange","event","target","label","React","InputBoxWrapper","validity","valid","required","min","overlayObject","InputUnitMenu","onUnitChange","newValue","unitSelected","unitsList","k8sScalarUnitsExcluding","disabled","modalButtonBar","Button","type","variant","onClick","LinearProgress","StyledSwitch","root","width","height","padding","margin","switchBase","transform","color","palette","common","white","backgroundColor","boxShadow","opacity","border","thumb","marginLeft","track","borderRadius","transition","transitions","create","focusVisible","switchContainer","display","alignItems","justifyContent","Switch","indicatorLabelOn","fontWeight","indicatorLabel","fontSize","fieldDescription","marginTop","tooltip","actionsTray","fieldBasic","_ref$label","_ref$checked","_ref$disabled","_ref$switchOnly","switchOnly","_ref$tooltip","_ref$description","description","indicatorLabels","_ref$extraInputProps","extraInputProps","switchComponent","clsx","_defineProperty","length","inputProps","disableRipple","disableFocusRipple","disableTouchRipple","sm","md","InputLabel","htmlFor","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","textAlign","Typography","component","inputStyles","makeStyles","inputFieldStyles","InputField","props","TextField","InputProps","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","_ref$type","_ref$autoComplete","_ref$multiline","multiline","_ref$index","index","_ref$error","_ref$required","_ref$placeholder","placeholder","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","onKeyPress","onFocus","onPaste","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","errorInField","inputBoxContainer","noMinWidthLabel","fullWidth","helperText","inputRebase","concat","IconButton","size","buttonTrigger","_React$useState","_React$useState2","anchorEl","setAnchorEl","Boolean","handleClose","newUnit","Fragment","undefined","currentTarget","Menu","anchorOrigin","vertical","horizontal","transformOrigin","map","MenuItem","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","enumerable","get","_utils","createSvgIcon","FormControlContext","formControlState","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","slot","overridesResolver","styles","ownerState","_extends","colorSecondary","filled","_ref2","_extends2","vars","text","secondary","typography","body1","lineHeight","formLabelClasses","focused","main","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","_props$component","other","_objectWithoutPropertiesLoose","fcs","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","as","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","sizeSmall","shrink","disableAnimation","animated","whiteSpace","overflow","textOverflow","left","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","getSwitchUtilityClass","SwitchRoot","edge","boxSizing","flexShrink","verticalAlign","colorAdjust","marginRight","switchClasses","SwitchSwitchBase","SwitchBase","input","_ref4","_ref5","defaultColor","mode","grey","shortest","defaultDisabledColor","switchTrackDisabled","_ref6","_ref7","action","activeChannel","hoverOpacity","alpha","active","mainChannel","lighten","darken","SwitchTrack","_ref8","onBackground","black","switchTrack","SwitchThumb","_ref9","shadows","_props$color","_props$edge","_props$size","sx","icon","checkedIcon","getSwitchBaseUtilityClass","SwitchBaseRoot","ButtonBase","SwitchBaseInput","cursor","checkedProp","defaultChecked","disabledProp","_props$disableFocusRi","inputRef","onBlur","readOnly","_props$required","tabIndex","_useControlled","useControlled","controlled","_useControlled2","setCheckedState","hasLabelFor","centerRipple","focusRipple","role","nativeEvent","defaultPrevented","newChecked","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","muiName","_len","arguments","funcs","Array","_key","func","_len2","args","_key2","apply","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1604.2dfa540d.chunk.js b/portal-ui/build/static/js/1604.2dfa540d.chunk.js new file mode 100644 index 000000000..ebb3eed77 --- /dev/null +++ b/portal-ui/build/static/js/1604.2dfa540d.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1604],{1604:function(e,t,n){n.r(t);var a=n(29439),i=n(72791),o=n(29945),l=n(31776),u=n(66315),r=n(82342),s=n(40986),c=n(23814),d=n(87995),f=n(81551),m=n(56028),b=n(80184);t.default=function(e){var t=e.open,n=e.bucketName,h=e.closeModalAndRefresh,p=(0,f.TL)(),v=(0,i.useState)(!1),g=(0,a.Z)(v,2),x=g[0],y=g[1],C=(0,i.useState)(!0),j=(0,a.Z)(C,2),k=j[0],S=j[1],Z=(0,i.useState)(u.oO.Compliance),R=(0,a.Z)(Z,2),_=R[0],z=R[1],N=(0,i.useState)(u.zR.Days),w=(0,a.Z)(N,2),B=w[0],D=w[1],O=(0,i.useState)(1),E=(0,a.Z)(O,2),V=E[0],A=E[1],M=(0,i.useState)(!1),Y=(0,a.Z)(M,2),q=Y[0],G=Y[1];return(0,i.useEffect)((function(){Number.isNaN(V)||(V||1)<1?G(!1):G(!0)}),[V]),(0,i.useEffect)((function(){k&&l.h.buckets.getBucketRetentionConfig(n).then((function(e){S(!1),z(e.data.mode),A(e.data.validity),D(e.data.unit)})).catch((function(){S(!1)}))}),[k,n]),(0,b.jsx)(m.Z,{title:"Set Retention Configuration",modalOpen:t,onClose:function(){h()},children:k?(0,b.jsx)(o.aNw,{style:{width:16,height:16}}):(0,b.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),x||(y(!0),l.h.buckets.setBucketRetentionConfig(n,{mode:_||u.oO.Compliance,unit:B||u.zR.Days,validity:V||1}).then((function(){y(!1),h()})).catch((function(e){y(!1),p((0,d.zb)((0,r.g)(e.error)))})))},children:(0,b.jsxs)(o.ltY,{containerPadding:!1,withBorders:!1,children:[(0,b.jsx)(o.Eep,{currentValue:_,id:"retention_mode",name:"retention_mode",label:"Retention Mode",onChange:function(e){z(e.target.value)},selectorOptions:[{value:"compliance",label:"Compliance"},{value:"governance",label:"Governance"}]}),(0,b.jsx)(o.Eep,{currentValue:B,id:"retention_unit",name:"retention_unit",label:"Retention Unit",onChange:function(e){D(e.target.value)},selectorOptions:[{value:"days",label:"Days"},{value:"years",label:"Years"}]}),(0,b.jsx)(o.Wzg,{type:"number",id:"retention_validity",name:"retention_validity",onChange:function(e){A(e.target.valueAsNumber)},label:"Retention Validity",value:String(V),required:!0,min:"1"}),(0,b.jsxs)(o.rjZ,{item:!0,xs:12,sx:c.ID.modalButtonBar,children:[(0,b.jsx)(o.zxk,{id:"cancel",type:"button",variant:"regular",disabled:x,onClick:function(){h()},label:"Cancel"}),(0,b.jsx)(o.zxk,{id:"set",type:"submit",variant:"callAction",color:"primary",disabled:x||!q,label:"Set"})]}),x&&(0,b.jsx)(o.rjZ,{item:!0,xs:12,children:(0,b.jsx)(s.Z,{})})]})})})}}}]); +//# sourceMappingURL=1604.2dfa540d.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/1604.2dfa540d.chunk.js.map b/portal-ui/build/static/js/1604.2dfa540d.chunk.js.map new file mode 100644 index 000000000..33210174d --- /dev/null +++ b/portal-ui/build/static/js/1604.2dfa540d.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/1604.2dfa540d.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/SetRetentionConfig.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport { Button, Loader, Grid, FormLayout, RadioGroup, InputBox } from \"mds\";\nimport { api } from \"api\";\nimport { ObjectRetentionMode, ObjectRetentionUnit } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport { LinearProgress } from \"@mui/material\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\n\ninterface ISetRetentionConfigProps {\n open: boolean;\n bucketName: string;\n closeModalAndRefresh: () => void;\n}\n\nconst SetRetentionConfig = ({\n open,\n bucketName,\n closeModalAndRefresh,\n}: ISetRetentionConfigProps) => {\n const dispatch = useAppDispatch();\n const [addLoading, setAddLoading] = useState(false);\n const [loadingForm, setLoadingForm] = useState(true);\n const [retentionMode, setRetentionMode] = useState<\n ObjectRetentionMode | undefined\n >(ObjectRetentionMode.Compliance);\n const [retentionUnit, setRetentionUnit] = useState<\n ObjectRetentionUnit | undefined\n >(ObjectRetentionUnit.Days);\n const [retentionValidity, setRetentionValidity] = useState<\n number | undefined\n >(1);\n const [valid, setValid] = useState(false);\n\n const setRetention = (event: React.FormEvent) => {\n event.preventDefault();\n if (addLoading) {\n return;\n }\n setAddLoading(true);\n api.buckets\n .setBucketRetentionConfig(bucketName, {\n mode: retentionMode || ObjectRetentionMode.Compliance,\n unit: retentionUnit || ObjectRetentionUnit.Days,\n validity: retentionValidity || 1,\n })\n .then(() => {\n setAddLoading(false);\n closeModalAndRefresh();\n })\n .catch((err) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n useEffect(() => {\n if (Number.isNaN(retentionValidity) || (retentionValidity || 1) < 1) {\n setValid(false);\n return;\n }\n setValid(true);\n }, [retentionValidity]);\n\n useEffect(() => {\n if (loadingForm) {\n api.buckets\n .getBucketRetentionConfig(bucketName)\n .then((res) => {\n setLoadingForm(false);\n\n // We set default values\n setRetentionMode(res.data.mode);\n setRetentionValidity(res.data.validity);\n setRetentionUnit(res.data.unit);\n })\n .catch(() => {\n setLoadingForm(false);\n });\n }\n }, [loadingForm, bucketName]);\n\n return (\n {\n closeModalAndRefresh();\n }}\n >\n {loadingForm ? (\n \n ) : (\n ) => {\n setRetention(e);\n }}\n >\n \n ) => {\n setRetentionMode(e.target.value as ObjectRetentionMode);\n }}\n selectorOptions={[\n { value: \"compliance\", label: \"Compliance\" },\n { value: \"governance\", label: \"Governance\" },\n ]}\n />\n ) => {\n setRetentionUnit(e.target.value as ObjectRetentionUnit);\n }}\n selectorOptions={[\n { value: \"days\", label: \"Days\" },\n { value: \"years\", label: \"Years\" },\n ]}\n />\n ) => {\n setRetentionValidity(e.target.valueAsNumber);\n }}\n label=\"Retention Validity\"\n value={String(retentionValidity)}\n required\n min=\"1\"\n />\n \n {\n closeModalAndRefresh();\n }}\n label={\"Cancel\"}\n />\n \n \n {addLoading && (\n \n \n \n )}\n \n \n )}\n \n );\n};\n\nexport default SetRetentionConfig;\n"],"names":["_ref","open","bucketName","closeModalAndRefresh","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","addLoading","setAddLoading","_useState3","_useState4","loadingForm","setLoadingForm","_useState5","ObjectRetentionMode","Compliance","_useState6","retentionMode","setRetentionMode","_useState7","ObjectRetentionUnit","Days","_useState8","retentionUnit","setRetentionUnit","_useState9","_useState10","retentionValidity","setRetentionValidity","_useState11","_useState12","valid","setValid","useEffect","Number","isNaN","api","buckets","getBucketRetentionConfig","then","res","data","mode","validity","unit","catch","_jsx","ModalWrapper","title","modalOpen","onClose","children","Loader","style","width","height","noValidate","autoComplete","onSubmit","e","preventDefault","setBucketRetentionConfig","err","setModalErrorSnackMessage","errorToHandler","error","_jsxs","FormLayout","containerPadding","withBorders","RadioGroup","currentValue","id","name","label","onChange","target","value","selectorOptions","InputBox","type","valueAsNumber","String","required","min","Grid","item","xs","sx","modalStyleUtils","modalButtonBar","Button","variant","disabled","onClick","color","LinearProgress"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1690.416d7e98.chunk.js b/portal-ui/build/static/js/1690.416d7e98.chunk.js deleted file mode 100644 index 474823dc6..000000000 --- a/portal-ui/build/static/js/1690.416d7e98.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1690],{14917:function(e,n,t){"use strict";t(72791);var r=t(61889),i=t(72455),o=t(80184),s=(0,i.Z)((function(e){return{headerBarIcon:{marginRight:".7rem",color:e.palette.primary.main,"& .min-icon":{width:44,height:44},"@media (max-width: 600px)":{display:"none"}},headerBarSubheader:{color:"grey","@media (max-width: 900px)":{maxWidth:200}},stContainer:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:8,borderBottom:"1px solid #EAEAEA","@media (max-width: 600px)":{flexFlow:"column"}},titleColumn:{height:"auto",justifyContent:"center",display:"flex",flexFlow:"column",alignItems:"flex-start","& h1":{fontSize:19}},leftItems:{display:"flex",alignItems:"center","@media (max-width: 600px)":{flexFlow:"column",width:"100%"}},rightItems:{display:"flex",alignItems:"center","& button":{marginLeft:8},"@media (max-width: 600px)":{width:"100%"}}}}));n.Z=function(e){var n=e.icon,t=e.title,i=e.subTitle,a=e.actions,l=e.className,c=s();return(0,o.jsx)(r.ZP,{container:!0,children:(0,o.jsxs)(r.ZP,{item:!0,xs:12,className:"".concat(c.stContainer," ").concat(l||""),children:[(0,o.jsxs)("div",{className:c.leftItems,children:[n?(0,o.jsx)("div",{className:c.headerBarIcon,children:n}):null,(0,o.jsxs)("div",{className:c.titleColumn,children:[(0,o.jsx)("h1",{style:{margin:0},children:t}),(0,o.jsx)("span",{className:c.headerBarSubheader,children:i})]})]}),(0,o.jsx)("div",{className:c.rightItems,children:a})]})})}},59197:function(e,n,t){"use strict";t.d(n,{Z:function(){return N}});var r=t(1413),i=t(72791),o=t(4942),s=t(63366),a=t(87462),l=t(28182),c=t(82466),u=t(94419),d=t(21217),f=(0,t(44046).ZP)(),p=t(86083),x=t(78519),h=t(85080),m=t(51184),g=t(45682),v=t(80184),y=["component","direction","spacing","divider","children","className","useFlexGap"],j=(0,h.Z)(),b=f("div",{name:"MuiStack",slot:"Root",overridesResolver:function(e,n){return n.root}});function Z(e){return(0,p.Z)({props:e,name:"MuiStack",defaultTheme:j})}function k(e,n){var t=i.Children.toArray(e).filter(Boolean);return t.reduce((function(e,r,o){return e.push(r),o0?l[t[n-1]]:"column";l[e]=r}}));r=(0,c.Z)(r,(0,m.k9)({theme:t},u,(function(e,t){return n.useFlexGap?{gap:(0,g.NA)(i,e)}:{"& > :not(style) + :not(style)":(0,o.Z)({margin:0},"margin".concat((r=t?l[t]:n.direction,{row:"Left","row-reverse":"Right",column:"Top","column-reverse":"Bottom"}[r])),(0,g.NA)(i,e))};var r})))}return r=(0,m.dt)(t.breakpoints,r)};var w=t(66934),S=t(31402),D=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.createStyledComponent,t=void 0===n?b:n,r=e.useThemeProps,o=void 0===r?Z:r,c=e.componentName,f=void 0===c?"MuiStack":c,p=t(C),h=i.forwardRef((function(e,n){var t=o(e),r=(0,x.Z)(t),i=r.component,c=void 0===i?"div":i,h=r.direction,m=void 0===h?"column":h,g=r.spacing,j=void 0===g?0:g,b=r.divider,Z=r.children,C=r.className,w=r.useFlexGap,S=void 0!==w&&w,D=(0,s.Z)(r,y),P={direction:m,spacing:j,useFlexGap:S},N=(0,u.Z)({root:["root"]},(function(e){return(0,d.Z)(f,e)}),{});return(0,v.jsx)(p,(0,a.Z)({as:c,ownerState:P,ref:n,className:(0,l.Z)(N.root,C)},D,{children:b?k(Z,b):Z}))}));return h}({createStyledComponent:(0,w.ZP)("div",{name:"MuiStack",slot:"Root",overridesResolver:function(e,n){return n.root}}),useThemeProps:function(e){return(0,S.Z)({props:e,name:"MuiStack"})}}),P=D,N=function(e){var n=e.label,t=void 0===n?null:n,i=e.value,o=void 0===i?"-":i,s=e.orientation,a=void 0===s?"column":s,l=e.stkProps,c=void 0===l?{}:l,u=e.lblProps,d=void 0===u?{}:u,f=e.valProps,p=void 0===f?{}:f;return(0,v.jsxs)(P,(0,r.Z)((0,r.Z)({direction:{xs:"column",sm:a}},c),{},{children:[(0,v.jsx)("label",(0,r.Z)((0,r.Z)({style:{marginRight:5,fontWeight:600}},d),{},{children:t})),(0,v.jsx)("label",(0,r.Z)((0,r.Z)({style:{marginRight:5,fontWeight:500}},p),{},{children:o}))]}))}},90767:function(e,n,t){"use strict";var r=t(29439),i=t(1413),o=t(72791),s=t(40986),a=t(51691),l=t(11135),c=t(25787),u=t(23814),d=t(23508),f=t(29945),p=t(87995),x=t(81551),h=t(31776),m=t(82342),g=t(80184);n.Z=(0,c.Z)((function(e){return(0,l.Z)((0,i.Z)({wrapText:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"}},u.Qw))}))((function(e){var n=e.classes,t=e.configurationName,i=e.closeResetModalAndRefresh,l=e.resetOpen,c=(0,x.TL)(),u=(0,o.useState)(!1),v=(0,r.Z)(u,2),y=v[0],j=v[1];(0,o.useEffect)((function(){y&&h.h.configs.resetConfig(t).then((function(){j(!1),i(!0)})).catch((function(e){j(!1),c((0,p.Ih)((0,m.g)(e.error)))}))}),[i,t,y,c]);return(0,g.jsx)(d.Z,{title:"Restore Defaults",confirmText:"Yes, Reset Configuration",isOpen:l,titleIcon:(0,g.jsx)(f.NvT,{}),isLoading:y,onConfirm:function(){j(!0)},onClose:function(){i(!1)},confirmationContent:(0,g.jsxs)(o.Fragment,{children:[y&&(0,g.jsx)(s.Z,{}),(0,g.jsxs)(a.Z,{children:["Are you sure you want to restore these configurations to default values?",(0,g.jsx)("br",{}),(0,g.jsx)("b",{className:n.wrapText,children:"Please note that this may cause your system to not be accessible"})]})]})})}))},37099:function(e,n,t){"use strict";var r=t(72791),i=t(29945),o=t(80184),s=function(e){var n=e.icon,t=e.description;return(0,o.jsxs)(i.xuv,{sx:{display:"flex","& .min-icon":{marginRight:"10px",height:"23px",width:"23px",marginBottom:"10px"}},children:[n," ",(0,o.jsx)("div",{style:{fontSize:"14px",fontStyle:"italic",color:"#5E5E5E"},children:t})]})};n.Z=function(e){var n=e.helpText,t=e.docLink,a=e.docText,l=e.contents;return(0,o.jsxs)(i.xuv,{sx:{flex:1,border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"20px"},children:[(0,o.jsxs)(i.xuv,{sx:{fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center",marginBottom:"16px",paddingBottom:"20px","& .min-icon":{height:"21px",width:"21px",marginRight:"15px"}},children:[(0,o.jsx)(i.M9A,{}),(0,o.jsx)("div",{children:n})]}),(0,o.jsxs)(i.xuv,{sx:{fontSize:"14px",marginBottom:"15px"},children:[l.map((function(e,n){return(0,o.jsxs)(r.Fragment,{children:[e.icon&&(0,o.jsx)(i.xuv,{sx:{paddingBottom:"20px"},children:(0,o.jsx)(s,{icon:e.icon,description:e.iconDescription})}),(0,o.jsx)(i.xuv,{sx:{paddingBottom:"20px"},children:e.text})]},"feature-item-".concat(n))})),(0,o.jsx)(i.xuv,{sx:{paddingBottom:"20px"},children:(0,o.jsx)("a",{href:t,target:"_blank",rel:"noopener",children:a})})]})]})}},11690:function(e,n,t){"use strict";t.r(n),t.d(n,{default:function(){return I}});var r=t(4942),i=t(1413),o=t(74165),s=t(15861),a=t(29439),l=t(72791),c=t(29945),u=t(31776),d=t(82342),f=t(81551),p=t(87995),x=t(79979),h=t(14917),m=t(59197),g=t(47974),v=t(37099),y=t(93433),j=t(78687),b=t(99779),Z=t(80184),k=function(e){var n=e.name;return(0,Z.jsxs)("h4",{children:[(0,Z.jsx)(c.ZyT,{style:{transform:"rotateZ(90deg)"}}),n]})},C=function(e){var n=e.blockName,t=e.results;return(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsxs)("strong",{children:[n,":"]}),(0,Z.jsx)("ul",{children:t.map((function(e,t){return(0,Z.jsx)("li",{children:e},"policy-".concat(n,"-").concat(t))}))})]})},w=function(e){var n,t,r,i,o,s,a=e.entityName,u=e.results,d=0;switch(a){case"Group":d=(null===(n=u.groups)||void 0===n?void 0:n.length)||0;break;case"Policy":d=(null===(t=u.policies)||void 0===t?void 0:t.length)||0;break;case"User":d=(null===(r=u.users)||void 0===r?void 0:r.length)||0}return(0,Z.jsxs)(c.xuv,{className:"resultElement",sx:{marginTop:50,"&:first-of-type":{marginTop:0}},children:[(0,Z.jsxs)(c.NZf,{separator:!0,sx:{fontSize:12},icon:(0,Z.jsx)(c.anK,{style:{width:17,height:17}}),actions:(0,Z.jsxs)(c.xuv,{sx:{fontSize:14},children:[(0,Z.jsx)("strong",{children:d})," Entit",1===d?"y":"ies"," Found"]}),children:[a," Mappings"]}),(0,Z.jsxs)(c.xuv,{className:"resultsList",sx:{h4:{borderBottom:"#e2e2e2 1px solid",padding:"12px 0",margin:0,marginBottom:15,display:"flex",alignItems:"center","& svg":{marginRight:10,fill:"#3C77A7"}}},children:["Group"===a&&(null===(i=u.groups)||void 0===i?void 0:i.map((function(e,n){return(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(k,{name:e.group||""}),e.policies&&(0,Z.jsx)(C,{blockName:"Policies",results:e.policies})]},"policy-res-".concat(n))}))),"User"===a&&(null===(o=u.users)||void 0===o?void 0:o.map((function(e,n){return(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(k,{name:e.user||""}),e.policies&&(0,Z.jsx)(C,{blockName:"Policies",results:e.policies})]},"users-res-".concat(n))}))),"Policy"===a&&(null===(s=u.policies)||void 0===s?void 0:s.map((function(e,n){return(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(k,{name:e.policy||""}),e.groups&&(0,Z.jsx)(C,{blockName:"Groups",results:e.groups}),e.users&&(0,Z.jsx)(C,{blockName:"Users",results:e.users})]},"policy-map-".concat(n))})))]})]})},S=t(58400),D=function(){var e=(0,f.TL)(),n=(0,l.useState)(!1),t=(0,a.Z)(n,2),r=t[0],i=t[1],o=(0,l.useState)([""]),s=(0,a.Z)(o,2),x=s[0],h=s[1],m=(0,l.useState)([""]),g=(0,a.Z)(m,2),v=g[0],k=g[1],C=(0,l.useState)(null),D=(0,a.Z)(C,2),P=D[0],N=D[1],_=(0,j.v9)((function(e){return e.createUser.selectedPolicies}));return(0,Z.jsxs)(c.xuv,{sx:{marginTop:15,paddingTop:0},children:[(0,Z.jsxs)(c.rjZ,{container:!0,sx:{marginTop:5},children:[(0,Z.jsxs)(c.rjZ,{item:!0,sm:12,md:6,lg:5,sx:{padding:10,paddingTop:0},children:[(0,Z.jsx)(c.NZf,{children:"Query Filters"}),(0,Z.jsxs)(c.xuv,{sx:{padding:"0 10px",display:"flex",flexDirection:"column",gap:40},children:[(0,Z.jsxs)(c.xuv,{sx:{padding:"10px 26px"},withBorders:!0,children:[(0,Z.jsx)(c.xuv,{sx:{display:"flex"},children:(0,Z.jsx)("h4",{style:{margin:0,marginBottom:10,fontSize:14},children:"Users"})}),(0,Z.jsx)(c.xuv,{sx:{overflowY:"auto",minHeight:50,maxHeight:250,"& > div > div":{width:"100%"}},children:x.map((function(e,n){return(0,Z.jsx)(c.Wzg,{id:"search-user-".concat(n),value:e,onChange:function(e){var t=(0,y.Z)(x);t[n]=e.target.value,h(t)},overlayIcon:x.length===n+1?(0,Z.jsx)(c.dtP,{}):(0,Z.jsx)(c.HFL,{}),overlayAction:function(){!function(e,n){if(e){var t=[].concat((0,y.Z)(x),[""]);h(t)}else{var r=x.filter((function(e,t){return t!==n}));h(r)}}(x.length===n+1,n)}},"search-user-".concat(n))}))})]}),(0,Z.jsxs)(c.xuv,{sx:{padding:"10px 26px"},withBorders:!0,children:[(0,Z.jsx)("h4",{style:{margin:0,marginBottom:10,fontSize:14},children:"Groups"}),(0,Z.jsx)(c.xuv,{sx:{overflowY:"auto",minHeight:50,maxHeight:"calc(100vh - 340px)","& > div > div":{width:"100%"}},children:v.map((function(e,n){return(0,Z.jsx)(c.Wzg,{id:"search-group-".concat(n),value:e,onChange:function(e){var t=(0,y.Z)(v);t[n]=e.target.value,k(t)},overlayIcon:v.length===n+1?(0,Z.jsx)(c.dtP,{}):(0,Z.jsx)(c.HFL,{}),overlayAction:function(){!function(e,n){if(e){var t=[].concat((0,y.Z)(v),[""]);k(t)}else{var r=v.filter((function(e,t){return t!==n}));k(r)}}(v.length===n+1,n)}},"search-group-".concat(n))}))})]}),(0,Z.jsxs)(c.xuv,{sx:{padding:"10px 26px"},withBorders:!0,children:[(0,Z.jsx)("h4",{style:{margin:0,marginBottom:10,fontSize:14},children:"Policies"}),(0,Z.jsx)(c.xuv,{sx:{minHeight:265,maxHeight:"calc(100vh - 740px)"},children:(0,Z.jsx)(S.Z,{selectedPolicy:_,noTitle:!0})})]})]})]}),(0,Z.jsx)(c.rjZ,{item:!0,sm:12,md:6,lg:7,sx:{padding:10,paddingTop:0,display:"flex",flexDirection:"column"},children:r?(0,Z.jsx)(c.xuv,{sx:{textAlign:"center"},children:(0,Z.jsx)(c.aNw,{})}):(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(c.NZf,{actions:(0,Z.jsx)(c.xuv,{sx:{display:"flex",flexDirection:"row",alignItems:"center",fontSize:14},children:null!==P&&void 0!==P&&P.timestamp?(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(c.wZd,{style:{width:14,height:14,marginRight:5,fill:"#BEBFBF"}}),b.ou.fromISO(P.timestamp).toFormat("D HH:mm:ss")]}):""}),children:"Query Results"}),P?(0,Z.jsxs)(c.xuv,{sx:{backgroundColor:"#FBFAFA",padding:"8px 22px",flexGrow:1,overflowY:"auto"},children:[!P.groups&&!P.users&&!P.policies&&(0,Z.jsx)(c.xuv,{sx:{textAlign:"center"},children:(0,Z.jsx)("h4",{children:"No Results Available"})}),!!P.groups&&(0,Z.jsx)(w,{results:P,entityName:"Group"}),!!P.users&&(0,Z.jsx)(w,{results:P,entityName:"User"}),!!P.policies&&(0,Z.jsx)(w,{results:P,entityName:"Policy"})]}):(0,Z.jsx)(c.xuv,{sx:{textAlign:"center"},children:"No query results yet"})]})})]}),(0,Z.jsx)(c.rjZ,{container:!0,children:(0,Z.jsx)(c.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-start",marginTop:45,padding:"0 20px"},children:(0,Z.jsx)(c.zxk,{id:"search-entity",type:"button",variant:"callAction",onClick:function(){i(!0);var n={},t=_.filter((function(e){return""!==e})),r=x.filter((function(e){return""!==e})),o=v.filter((function(e){return""!==e}));t.length>0&&(n.policies=t),r.length>0&&(n.users=r),o.length>0&&(n.groups=o),u.h.ldapEntities.getLdapEntities(n).then((function(e){N(e.data),i(!1)})).catch((function(n){e((0,p.Ih)((0,d.g)(n.error))),i(!1)}))},icon:(0,Z.jsx)(c.W1M,{}),children:"Search"})})})]})},P=t(90767),N=t(99670),_=["server_addr","lookup_bind_dn","lookup_bind_password","user_dn_search_base_dn","user_dn_search_filter"],I=function(){var e=(0,f.TL)(),n=x.iR,t=(0,l.useState)(!0),y=(0,a.Z)(t,2),j=y[0],b=y[1],k=(0,l.useState)(!1),C=(0,a.Z)(k,2),w=C[0],S=C[1],I=(0,l.useState)(!1),E=(0,a.Z)(I,2),A=E[0],F=E[1],L=(0,l.useState)({}),B=(0,a.Z)(L,2),R=B[0],q=B[1],T=(0,l.useState)(void 0),O=(0,a.Z)(T,2),M=O[0],z=O[1],U=(0,l.useState)(!1),G=(0,a.Z)(U,2),H=G[0],K=G[1],W=(0,l.useState)(!1),Y=(0,a.Z)(W,2),Q=Y[0],V=Y[1],$=(0,l.useState)("configuration"),X=(0,a.Z)($,2),J=X[0],ee=X[1],ne=function(){H&&M&&te(M),K(!H)},te=function(e){var n={};if(e&&e.length>0){var t=e.find((function(e){return"enable"===e.key})),r=0;e.forEach((function(e){n[e.key]=e.value,_.includes(e.key)&&e.value&&""!==e.value&&"off"!==e.value&&r++}));var i=r===_.length;t&&"on"!==t.value||!i?S(!1):S(!0),F(i)}q(n)};(0,l.useEffect)((function(){j&&u.h.configs.configInfo("identity_ldap").then((function(e){e.data.length>0&&(z(e.data[0].key_values),te(e.data[0].key_values||[])),b(!1)})).catch((function(n){b(!1),e((0,p.Ih)((0,d.g)(n.error)))}))}),[e,j]);var re=function(){var n=(0,s.Z)((0,o.Z)().mark((function n(t){return(0,o.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:V(!1),t&&(e((0,p.cN)(t)),z(void 0),q({}),S(!1),F(!1),K(!1));case 2:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}();return(0,l.useEffect)((function(){e((0,p.Sc)("LDAP"))}),[]),(0,Z.jsxs)(c.rjZ,{item:!0,xs:12,children:[Q&&(0,Z.jsx)(P.Z,{configurationName:"identity_ldap",closeResetModalAndRefresh:re,resetOpen:Q}),(0,Z.jsx)(g.Z,{label:"LDAP",actions:(0,Z.jsx)(N.Z,{})}),(0,Z.jsx)(c.Xgh,{variant:"constrained",children:(0,Z.jsx)(c.mQc,{horizontal:!0,options:[{tabConfig:{id:"configuration",label:"Configuration"},content:(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(h.Z,{title:H?"Edit Configuration":"",actions:H?null:(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(c.zxk,{id:"edit",type:"button",variant:"callAction",icon:(0,Z.jsx)(c.dY8,{}),onClick:ne,label:"Edit Configuration",disabled:j}),A&&(0,Z.jsx)(c.zxk,{id:"is-configuration-enabled",onClick:function(){return function(n){var t={key_values:[{key:"enable",value:n?"on":"off"}]};u.h.configs.setConfig("identity_ldap",t).then((function(n){S(!w),e((0,p.cN)(n.data.restart||!1)),n.data.restart||e((0,p.y1)("Configuration saved successfully"))})).catch((function(n){e((0,p.Ih)((0,d.g)(n.error)))}))}(!w)},label:w?"Disable LDAP":"Enable LDAP",variant:w?"secondary":"regular"}),(0,Z.jsx)(c.zxk,{id:"refresh-idp-config",onClick:function(){return b(!0)},label:"Refresh",icon:(0,Z.jsx)(c.DuK,{})})]})}),(0,Z.jsx)("br",{}),j?(0,Z.jsx)(c.xuv,{sx:{display:"flex",justifyContent:"center",marginTop:10},children:(0,Z.jsx)(c.aNw,{})}):(0,Z.jsx)(l.Fragment,{children:H?(0,Z.jsx)(l.Fragment,{children:(0,Z.jsxs)(c.ltY,{helpBox:(0,Z.jsx)(v.Z,{helpText:"Learn more about LDAP Configurations",contents:x.Si,docLink:"https://min.io/docs/minio/linux/operations/external-iam.html?ref=con#minio-external-iam-ad-ldap",docText:"Learn more about LDAP Configurations"}),children:[Object.entries(n).map((function(e){var n=(0,a.Z)(e,2);return function(e,n){return"toggle"===n.type?(0,Z.jsx)(c.rsf,{indicatorLabels:["Enabled","Disabled"],checked:"on"===R[e],value:"is-field-enabled",id:"is-field-enabled",name:"is-field-enabled",label:n.label,tooltip:n.tooltip,onChange:function(n){return q((0,i.Z)((0,i.Z)({},R),{},(0,r.Z)({},e,n.target.checked?"on":"off")))},description:"",disabled:!H},e):(0,Z.jsx)(c.Wzg,{id:e,required:n.required,name:e,label:n.label,tooltip:n.tooltip,error:n.hasError(R[e],H),value:R[e]?R[e]:"",onChange:function(n){return q((0,i.Z)((0,i.Z)({},R),{},(0,r.Z)({},e,n.target.value)))},placeholder:n.placeholder,disabled:!H,type:n.type},e)}(n[0],n[1])})),(0,Z.jsxs)(c.xuv,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",marginTop:"20px",gap:"15px"},children:[H&&(0,Z.jsx)(c.zxk,{id:"clear",type:"button",variant:"secondary",onClick:function(){return V(!0)},label:"Reset Configuration"}),H&&(0,Z.jsx)(c.zxk,{id:"cancel",type:"button",variant:"regular",onClick:ne,label:"Cancel"}),H&&(0,Z.jsx)(c.zxk,{id:"save-key",type:"submit",variant:"callAction",color:"primary",disabled:j||!function(){for(var e=0,t=Object.entries(n);e0?(0,h.jsxs)(o.Fragment,{children:[(0,h.jsx)(a.rjZ,{item:!0,xs:12,className:"inputItem",children:(0,h.jsx)(c.Z,{placeholder:"Start typing to search for a Policy",onChange:function(e){P(e)},value:D,label:t?"":"Assign Policies"})}),(0,h.jsx)(a.wQF,{columns:[{label:"Policy",elementKey:"name"}],onSelect:function(e){var n=e.target,t=n.value,i=n.checked,o=(0,r.Z)(N);i?o.push(t):o=o.filter((function(e){return e!==t})),o=o.filter((function(e){return""!==e})),m((0,f.ue)(o))},selectedItems:N,isLoading:k,records:I,entityName:"Policies",idField:"name",customPaperHeight:"200px"})]}):(0,h.jsx)(a.xuv,{sx:{textAlign:"center",padding:"10px 0"},children:"No Policies Available"})]})}},21639:function(e,n,t){"use strict";t.d(n,{KE:function(){return s},LQ:function(){return r},V2:function(){return o},g4:function(){return i}});var r=function(e,n){if(e.accessKey&&n.accessKey){if(e.accessKey>n.accessKey)return 1;if(e.accessKeyn.name?1:e.namen?1:en.policy?1:e.policy.\n\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { Theme } from \"@mui/material/styles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\n\ninterface IScreenTitle {\n icon?: any;\n title?: any;\n subTitle?: any;\n actions?: any;\n className?: any;\n}\n\nconst useStyles = makeStyles((theme: Theme) => ({\n headerBarIcon: {\n marginRight: \".7rem\",\n color: theme.palette.primary.main,\n \"& .min-icon\": {\n width: 44,\n height: 44,\n },\n \"@media (max-width: 600px)\": {\n display: \"none\",\n },\n },\n headerBarSubheader: {\n color: \"grey\",\n \"@media (max-width: 900px)\": {\n maxWidth: 200,\n },\n },\n stContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n padding: 8,\n\n borderBottom: \"1px solid #EAEAEA\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n titleColumn: {\n height: \"auto\",\n justifyContent: \"center\",\n display: \"flex\",\n flexFlow: \"column\",\n alignItems: \"flex-start\",\n \"& h1\": {\n fontSize: 19,\n },\n },\n leftItems: {\n display: \"flex\",\n alignItems: \"center\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n width: \"100%\",\n },\n },\n rightItems: {\n display: \"flex\",\n alignItems: \"center\",\n \"& button\": {\n marginLeft: 8,\n },\n \"@media (max-width: 600px)\": {\n width: \"100%\",\n },\n },\n}));\n\nconst ScreenTitle = ({\n icon,\n title,\n subTitle,\n actions,\n className,\n}: IScreenTitle) => {\n const classes = useStyles();\n return (\n \n \n
\n {icon ?
{icon}
: null}\n
\n

{title}

\n {subTitle}\n
\n
\n\n
{actions}
\n
\n \n );\n};\n\nexport default ScreenTitle;\n","import createStyled from './createStyled';\nconst styled = createStyled();\nexport default styled;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"component\", \"direction\", \"spacing\", \"divider\", \"children\", \"className\", \"useFlexGap\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { deepmerge, unstable_composeClasses as composeClasses, unstable_generateUtilityClass as generateUtilityClass } from '@mui/utils';\nimport systemStyled from '../styled';\nimport useThemePropsSystem from '../useThemeProps';\nimport { extendSxProp } from '../styleFunctionSx';\nimport createTheme from '../createTheme';\nimport { handleBreakpoints, mergeBreakpointsInOrder, resolveBreakpointValues } from '../breakpoints';\nimport { createUnarySpacing, getValue } from '../spacing';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst defaultTheme = createTheme();\n// widening Theme to any so that the consumer can own the theme structure.\nconst defaultCreateStyledComponent = systemStyled('div', {\n name: 'MuiStack',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n});\nfunction useThemePropsDefault(props) {\n return useThemePropsSystem({\n props,\n name: 'MuiStack',\n defaultTheme\n });\n}\n\n/**\n * Return an array with the separator React element interspersed between\n * each React node of the input children.\n *\n * > joinChildren([1,2,3], 0)\n * [1,0,2,0,3]\n */\nfunction joinChildren(children, separator) {\n const childrenArray = React.Children.toArray(children).filter(Boolean);\n return childrenArray.reduce((output, child, index) => {\n output.push(child);\n if (index < childrenArray.length - 1) {\n output.push( /*#__PURE__*/React.cloneElement(separator, {\n key: `separator-${index}`\n }));\n }\n return output;\n }, []);\n}\nconst getSideFromDirection = direction => {\n return {\n row: 'Left',\n 'row-reverse': 'Right',\n column: 'Top',\n 'column-reverse': 'Bottom'\n }[direction];\n};\nexport const style = ({\n ownerState,\n theme\n}) => {\n let styles = _extends({\n display: 'flex',\n flexDirection: 'column'\n }, handleBreakpoints({\n theme\n }, resolveBreakpointValues({\n values: ownerState.direction,\n breakpoints: theme.breakpoints.values\n }), propValue => ({\n flexDirection: propValue\n })));\n if (ownerState.spacing) {\n const transformer = createUnarySpacing(theme);\n const base = Object.keys(theme.breakpoints.values).reduce((acc, breakpoint) => {\n if (typeof ownerState.spacing === 'object' && ownerState.spacing[breakpoint] != null || typeof ownerState.direction === 'object' && ownerState.direction[breakpoint] != null) {\n acc[breakpoint] = true;\n }\n return acc;\n }, {});\n const directionValues = resolveBreakpointValues({\n values: ownerState.direction,\n base\n });\n const spacingValues = resolveBreakpointValues({\n values: ownerState.spacing,\n base\n });\n if (typeof directionValues === 'object') {\n Object.keys(directionValues).forEach((breakpoint, index, breakpoints) => {\n const directionValue = directionValues[breakpoint];\n if (!directionValue) {\n const previousDirectionValue = index > 0 ? directionValues[breakpoints[index - 1]] : 'column';\n directionValues[breakpoint] = previousDirectionValue;\n }\n });\n }\n const styleFromPropValue = (propValue, breakpoint) => {\n if (ownerState.useFlexGap) {\n return {\n gap: getValue(transformer, propValue)\n };\n }\n return {\n '& > :not(style) + :not(style)': {\n margin: 0,\n [`margin${getSideFromDirection(breakpoint ? directionValues[breakpoint] : ownerState.direction)}`]: getValue(transformer, propValue)\n }\n };\n };\n styles = deepmerge(styles, handleBreakpoints({\n theme\n }, spacingValues, styleFromPropValue));\n }\n styles = mergeBreakpointsInOrder(theme.breakpoints, styles);\n return styles;\n};\nexport default function createStack(options = {}) {\n const {\n // This will allow adding custom styled fn (for example for custom sx style function)\n createStyledComponent = defaultCreateStyledComponent,\n useThemeProps = useThemePropsDefault,\n componentName = 'MuiStack'\n } = options;\n const useUtilityClasses = () => {\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, slot => generateUtilityClass(componentName, slot), {});\n };\n const StackRoot = createStyledComponent(style);\n const Stack = /*#__PURE__*/React.forwardRef(function Grid(inProps, ref) {\n const themeProps = useThemeProps(inProps);\n const props = extendSxProp(themeProps); // `color` type conflicts with html color attribute.\n const {\n component = 'div',\n direction = 'column',\n spacing = 0,\n divider,\n children,\n className,\n useFlexGap = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = {\n direction,\n spacing,\n useFlexGap\n };\n const classes = useUtilityClasses();\n return /*#__PURE__*/_jsx(StackRoot, _extends({\n as: component,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n children: divider ? joinChildren(children, divider) : children\n }));\n });\n process.env.NODE_ENV !== \"production\" ? Stack.propTypes /* remove-proptypes */ = {\n children: PropTypes.node,\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n divider: PropTypes.node,\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n } : void 0;\n return Stack;\n}","import PropTypes from 'prop-types';\nimport { createStack } from '@mui/system';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nconst Stack = createStack({\n createStyledComponent: styled('div', {\n name: 'MuiStack',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n }),\n useThemeProps: inProps => useThemeProps({\n props: inProps,\n name: 'MuiStack'\n })\n});\nprocess.env.NODE_ENV !== \"production\" ? Stack.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Defines the `flex-direction` style property.\n * It is applied for all screen sizes.\n * @default 'column'\n */\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n /**\n * Add an element between each child.\n */\n divider: PropTypes.node,\n /**\n * Defines the space between immediate children.\n * @default 0\n */\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n /**\n * The system prop, which allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * If `true`, the CSS flexbox `gap` is used instead of applying `margin` to children.\n *\n * While CSS `gap` removes the [known limitations](https://mui.com/joy-ui/react-stack/#limitations),\n * it is not fully supported in some browsers. We recommend checking https://caniuse.com/?search=flex%20gap before using this flag.\n *\n * To enable this flag globally, follow the [theme's default props](https://mui.com/material-ui/customization/theme-components/#default-props) configuration.\n * @default false\n */\n useFlexGap: PropTypes.bool\n} : void 0;\nexport default Stack;","import React from \"react\";\nimport { Stack } from \"@mui/material\";\n\ntype LabelValuePairProps = {\n label?: any;\n value?: any;\n orientation?: any;\n stkProps?: any;\n lblProps?: any;\n valProps?: any;\n};\n\nconst LabelValuePair = ({\n label = null,\n value = \"-\",\n orientation = \"column\",\n stkProps = {},\n lblProps = {},\n valProps = {},\n}: LabelValuePairProps) => {\n return (\n \n \n \n \n );\n};\n\nexport default LabelValuePair;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\n\nimport { DialogContentText, LinearProgress } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { deleteDialogStyles } from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n wrapText: {\n maxWidth: \"200px\",\n whiteSpace: \"normal\",\n wordWrap: \"break-word\",\n },\n ...deleteDialogStyles,\n });\n\ninterface IResetConfiguration {\n classes: any;\n configurationName: string;\n closeResetModalAndRefresh: (reloadConfiguration: boolean) => void;\n\n resetOpen: boolean;\n}\n\nconst ResetConfigurationModal = ({\n classes,\n configurationName,\n closeResetModalAndRefresh,\n resetOpen,\n}: IResetConfiguration) => {\n const dispatch = useAppDispatch();\n const [resetLoading, setResetLoading] = useState(false);\n\n useEffect(() => {\n if (resetLoading) {\n api.configs\n .resetConfig(configurationName)\n .then(() => {\n setResetLoading(false);\n closeResetModalAndRefresh(true);\n })\n .catch((err) => {\n setResetLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [closeResetModalAndRefresh, configurationName, resetLoading, dispatch]);\n\n const resetConfiguration = () => {\n setResetLoading(true);\n };\n\n return (\n }\n isLoading={resetLoading}\n onConfirm={resetConfiguration}\n onClose={() => {\n closeResetModalAndRefresh(false);\n }}\n confirmationContent={\n \n {resetLoading && }\n \n Are you sure you want to restore these configurations to default\n values?\n
\n \n Please note that this may cause your system to not be accessible\n \n
\n
\n }\n />\n );\n};\n\nexport default withStyles(styles)(ResetConfigurationModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { HelpIconFilled, Box } from \"mds\";\n\ninterface IContent {\n icon: React.ReactNode;\n text: string;\n iconDescription: string;\n}\n\ninterface IAddIDPConfigurationHelpBoxProps {\n helpText: string;\n docLink: string;\n docText: string;\n contents: IContent[];\n}\n\nconst FeatureItem = ({\n icon,\n description,\n}: {\n icon: any;\n description: string;\n}) => {\n return (\n \n {icon}{\" \"}\n
\n {description}\n
\n \n );\n};\n\nconst AddIDPConfigurationHelpBox = ({\n helpText,\n docLink,\n docText,\n contents,\n}: IAddIDPConfigurationHelpBoxProps) => {\n return (\n \n \n \n
{helpText}
\n \n \n {contents.map((content, index) => (\n \n {content.icon && (\n \n \n \n )}\n {content.text}\n \n ))}\n \n \n {docText}\n \n \n \n \n );\n};\n\nexport default AddIDPConfigurationHelpBox;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Box, CollapseCaret, GroupsMenuIcon, SectionTitle } from \"mds\";\nimport { LdapEntities } from \"api/consoleApi\";\n\ninterface IResultBlock {\n entityName: \"Group\" | \"User\" | \"Policy\";\n results: LdapEntities;\n}\n\ninterface IEntityResultName {\n name: string;\n}\n\ninterface IEntityResultItem {\n blockName: \"Policies\" | \"Groups\" | \"Users\";\n results: string[];\n}\n\nconst EntityResultTitle = ({ name }: IEntityResultName) => {\n return (\n

\n \n {name}\n

\n );\n};\n\nconst EntityResultItems = ({ blockName, results }: IEntityResultItem) => {\n return (\n \n {blockName}:\n
    \n {results.map((res, index) => (\n
  • {res}
  • \n ))}\n
\n
\n );\n};\n\nconst LDAPResultsBlock = ({ entityName, results }: IResultBlock) => {\n let entityLength = 0;\n\n switch (entityName) {\n case \"Group\":\n entityLength = results.groups?.length || 0;\n break;\n case \"Policy\":\n entityLength = results.policies?.length || 0;\n break;\n case \"User\":\n entityLength = results.users?.length || 0;\n break;\n }\n\n return (\n \n }\n actions={\n \n {entityLength} Entit\n {entityLength === 1 ? \"y\" : \"ies\"} Found\n \n }\n >\n {entityName} Mappings\n \n \n {entityName === \"Group\" &&\n results.groups?.map((groupData, index) => {\n return (\n \n \n {groupData.policies && (\n \n )}\n \n );\n })}\n {entityName === \"User\" &&\n results.users?.map((groupData, index) => {\n return (\n \n \n {groupData.policies && (\n \n )}\n \n );\n })}\n {entityName === \"Policy\" &&\n results.policies?.map((groupData, index) => {\n return (\n \n \n {groupData.groups && (\n \n )}\n {groupData.users && (\n \n )}\n \n );\n })}\n \n \n );\n};\n\nexport default LDAPResultsBlock;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport {\n AddIcon,\n Box,\n Button,\n Grid,\n InputBox,\n Loader,\n RemoveIcon,\n SearchIcon,\n SectionTitle,\n TimeIcon,\n} from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { DateTime } from \"luxon\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { LdapEntities } from \"api/consoleApi\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport LDAPResultsBlock from \"./LDAPResultsBlock\";\nimport PolicySelectors from \"../../Policies/PolicySelectors\";\n\nconst LDAPEntitiesQuery = () => {\n const dispatch = useAppDispatch();\n\n const [loading, setLoading] = useState(false);\n const [users, setUsers] = useState([\"\"]);\n const [groups, setGroups] = useState([\"\"]);\n const [results, setResults] = useState(null);\n\n const selectedPolicies = useSelector(\n (state: AppState) => state.createUser.selectedPolicies,\n );\n\n const searchEntities = () => {\n setLoading(true);\n\n let data: any = {};\n\n let cleanPolicies = selectedPolicies.filter((pol) => pol !== \"\");\n let cleanUsers = users.filter((usr) => usr !== \"\");\n let cleanGroups = groups.filter((grp) => grp !== \"\");\n\n if (cleanPolicies.length > 0) {\n data[\"policies\"] = cleanPolicies;\n }\n\n if (cleanUsers.length > 0) {\n data[\"users\"] = cleanUsers;\n }\n\n if (cleanGroups.length > 0) {\n data[\"groups\"] = cleanGroups;\n }\n\n api.ldapEntities\n .getLdapEntities(data)\n .then((result) => {\n setResults(result.data);\n setLoading(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setLoading(false);\n });\n };\n\n const alterUsersList = (addItem: boolean, index: number) => {\n if (addItem) {\n const alterUsers = [...users, \"\"];\n setUsers(alterUsers);\n\n return;\n }\n\n const filteredUsers = users.filter((_, indx) => indx !== index);\n\n setUsers(filteredUsers);\n };\n\n const alterGroupsList = (addItem: boolean, index: number) => {\n if (addItem) {\n const alterGroups = [...groups, \"\"];\n setGroups(alterGroups);\n\n return;\n }\n\n const filteredGroups = groups.filter((_, indx) => indx !== index);\n\n setGroups(filteredGroups);\n };\n\n return (\n \n \n \n Query Filters\n\n \n \n \n

\n Users\n

\n
\n div > div\": {\n width: \"100%\",\n },\n }}\n >\n {users.map((userDat, index) => {\n return (\n ) => {\n const usersElements = [...users];\n usersElements[index] = e.target.value;\n setUsers(usersElements);\n }}\n overlayIcon={\n users.length === index + 1 ? (\n \n ) : (\n \n )\n }\n overlayAction={() => {\n alterUsersList(users.length === index + 1, index);\n }}\n />\n );\n })}\n
\n
\n \n

\n Groups\n

\n div > div\": {\n width: \"100%\",\n },\n }}\n >\n {groups.map((groupDat, index) => {\n return (\n ) => {\n const groupsElements = [...groups];\n groupsElements[index] = e.target.value;\n setGroups(groupsElements);\n }}\n overlayIcon={\n groups.length === index + 1 ? (\n \n ) : (\n \n )\n }\n overlayAction={() => {\n alterGroupsList(groups.length === index + 1, index);\n }}\n />\n );\n })}\n
\n \n \n

\n Policies\n

\n \n \n
\n \n \n \n \n {loading ? (\n \n \n \n ) : (\n \n \n {results?.timestamp ? (\n \n \n {DateTime.fromISO(results.timestamp).toFormat(\n \"D HH:mm:ss\",\n )}\n \n ) : (\n \"\"\n )}\n \n }\n >\n Query Results\n \n {results ? (\n \n {!results.groups && !results.users && !results.policies && (\n \n

No Results Available

\n
\n )}\n {!!results.groups && (\n \n )}\n {!!results.users && (\n \n )}\n {!!results.policies && (\n \n )}\n \n ) : (\n No query results yet\n )}\n
\n )}\n \n \n \n \n }\n >\n Search\n \n \n \n \n );\n};\n\nexport default LDAPEntitiesQuery;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport {\n Box,\n Button,\n EditIcon,\n FormLayout,\n Grid,\n InputBox,\n Loader,\n PageLayout,\n RefreshIcon,\n Switch,\n Tabs,\n} from \"mds\";\nimport { api } from \"api\";\nimport { ConfigurationKV } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport { useAppDispatch } from \"../../../../store\";\nimport {\n setErrorSnackMessage,\n setHelpName,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { ldapFormFields, ldapHelpBoxContents } from \"../utils\";\nimport ScreenTitle from \"../../Common/ScreenTitle/ScreenTitle\";\nimport LabelValuePair from \"../../Common/UsageBarWrapper/LabelValuePair\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport AddIDPConfigurationHelpBox from \"../AddIDPConfigurationHelpbox\";\nimport LDAPEntitiesQuery from \"./LDAPEntitiesQuery\";\nimport ResetConfigurationModal from \"../../EventDestinations/CustomForms/ResetConfigurationModal\";\nimport HelpMenu from \"../../HelpMenu\";\n\nconst enabledConfigLDAP = [\n \"server_addr\",\n \"lookup_bind_dn\",\n \"lookup_bind_password\",\n \"user_dn_search_base_dn\",\n \"user_dn_search_filter\",\n];\n\nconst IDPLDAPConfigurationDetails = () => {\n const dispatch = useAppDispatch();\n\n const formFields = ldapFormFields;\n\n const [loading, setLoading] = useState(true);\n const [isEnabled, setIsEnabled] = useState(false);\n const [hasConfiguration, setHasConfiguration] = useState(false);\n const [fields, setFields] = useState({});\n const [record, setRecord] = useState(\n undefined,\n );\n const [editMode, setEditMode] = useState(false);\n const [resetOpen, setResetOpen] = useState(false);\n const [curTab, setCurTab] = useState(\"configuration\");\n\n const toggleEditMode = () => {\n if (editMode && record) {\n parseFields(record);\n }\n setEditMode(!editMode);\n };\n\n const parseFields = (record: ConfigurationKV[]) => {\n let fields: any = {};\n if (record && record.length > 0) {\n const enabled = record.find((item: any) => item.key === \"enable\");\n\n let totalCoincidences = 0;\n\n record.forEach((item: any) => {\n fields[item.key] = item.value;\n\n if (\n enabledConfigLDAP.includes(item.key) &&\n item.value &&\n item.value !== \"\" &&\n item.value !== \"off\"\n ) {\n totalCoincidences++;\n }\n });\n\n const hasConfig = totalCoincidences === enabledConfigLDAP.length;\n\n if ((!enabled || enabled.value === \"on\") && hasConfig) {\n setIsEnabled(true);\n } else {\n setIsEnabled(false);\n }\n\n setHasConfiguration(hasConfig);\n }\n setFields(fields);\n };\n\n useEffect(() => {\n const loadRecord = () => {\n api.configs\n .configInfo(\"identity_ldap\")\n .then((res) => {\n if (res.data.length > 0) {\n setRecord(res.data[0].key_values);\n parseFields(res.data[0].key_values || []);\n }\n setLoading(false);\n })\n .catch((err) => {\n setLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n if (loading) {\n loadRecord();\n }\n }, [dispatch, loading]);\n\n const validSave = () => {\n for (const [key, value] of Object.entries(formFields)) {\n if (\n value.required &&\n !(\n fields[key] !== undefined &&\n fields[key] !== null &&\n fields[key] !== \"\"\n )\n ) {\n return false;\n }\n }\n return true;\n };\n\n const saveRecord = () => {\n const keyVals = Object.keys(formFields).map((key) => {\n return {\n key,\n value: fields[key],\n };\n });\n\n api.configs\n .setConfig(\"identity_ldap\", {\n key_values: keyVals,\n })\n .then((res) => {\n setEditMode(false);\n setRecord(keyVals);\n parseFields(keyVals);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const closeDeleteModalAndRefresh = async (refresh: boolean) => {\n setResetOpen(false);\n\n if (refresh) {\n dispatch(setServerNeedsRestart(refresh));\n setRecord(undefined);\n setFields({});\n setIsEnabled(false);\n setHasConfiguration(false);\n setEditMode(false);\n }\n };\n\n const toggleConfiguration = (value: boolean) => {\n const payload = {\n key_values: [\n {\n key: \"enable\",\n value: value ? \"on\" : \"off\",\n },\n ],\n };\n\n api.configs\n .setConfig(\"identity_ldap\", payload)\n .then((res) => {\n setIsEnabled(!isEnabled);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const renderFormField = (key: string, value: any) => {\n switch (value.type) {\n case \"toggle\":\n return (\n \n setFields({ ...fields, [key]: e.target.checked ? \"on\" : \"off\" })\n }\n description=\"\"\n disabled={!editMode}\n />\n );\n default:\n return (\n ) =>\n setFields({ ...fields, [key]: e.target.value })\n }\n placeholder={value.placeholder}\n disabled={!editMode}\n type={value.type}\n />\n );\n }\n };\n\n useEffect(() => {\n dispatch(setHelpName(\"LDAP\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n {resetOpen && (\n \n )}\n } />\n \n \n \n }\n onClick={toggleEditMode}\n label={\"Edit Configuration\"}\n disabled={loading}\n />\n {hasConfiguration && (\n toggleConfiguration(!isEnabled)}\n label={isEnabled ? \"Disable LDAP\" : \"Enable LDAP\"}\n variant={isEnabled ? \"secondary\" : \"regular\"}\n />\n )}\n setLoading(true)}\n label={\"Refresh\"}\n icon={}\n />\n
\n ) : null\n }\n />\n
\n {loading ? (\n \n \n \n ) : (\n \n {editMode ? (\n \n \n }\n >\n {Object.entries(formFields).map(([key, value]) =>\n renderFormField(key, value),\n )}\n \n {editMode && (\n setResetOpen(true)}\n label={\"Reset Configuration\"}\n />\n )}\n {editMode && (\n \n )}\n {editMode && (\n \n )}\n \n \n \n ) : (\n \n \n \n {hasConfiguration && (\n \n {Object.entries(formFields).map(\n ([key, value]) => (\n \n ),\n )}\n \n )}\n \n \n )}\n \n )}\n
\n ),\n },\n {\n tabConfig: {\n id: \"entities\",\n label: \"Entities\",\n disabled: !hasConfiguration || !isEnabled,\n },\n content: (\n \n {hasConfiguration && (\n \n \n \n )}\n \n ),\n },\n ]}\n currentTabOrPath={curTab}\n onTabClick={(newTab) => {\n setCurTab(newTab);\n setEditMode(false);\n }}\n />\n \n \n );\n};\n\nexport default IDPLDAPConfigurationDetails;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport LoginIcon from \"@mui/icons-material/Login\";\nimport { LockIcon } from \"mds\";\n\nexport const ldapHelpBoxContents = [\n {\n text: \"MinIO supports using an Active Directory or LDAP (AD/LDAP) service for external management of user identities. Configuring an external IDentity Provider (IDP) enables Single-Sign On (SSO) workflows, where applications authenticate against the external IDP before accessing MinIO.\",\n icon: ,\n iconDescription: \"Create Configurations\",\n },\n {\n text: \"MinIO queries the configured Active Directory / LDAP server to verify the credentials specified by the application and optionally return a list of groups in which the user has membership. MinIO supports two modes (Lookup-Bind Mode and Username-Bind Mode) for performing these queries\",\n icon: null,\n iconDescription: \"\",\n },\n {\n text: \"MinIO recommends using Lookup-Bind mode as the preferred method for verifying AD/LDAP credentials. Username-Bind mode is a legacy method retained for backwards compatibility only.\",\n icon: null,\n iconDescription: \"\",\n },\n];\n\nexport const openIDHelpBoxContents = [\n {\n text: \"MinIO supports using an OpenID Connect (OIDC) compatible IDentity Provider (IDP) such as Okta, KeyCloak, Dex, Google, or Facebook for external management of user identities.\",\n icon: ,\n iconDescription: \"Create Configurations\",\n },\n {\n text: \"Configuring an external IDP enables Single-Sign On workflows, where applications authenticate against the external IDP before accessing MinIO.\",\n icon: null,\n iconDescription: \"\",\n },\n];\n\nexport const openIDFormFields = {\n config_url: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Config URL is required\" : \"\";\n },\n label: \"Config URL\",\n tooltip: \"Config URL for identity provider configuration\",\n placeholder:\n \"https://identity-provider-url/.well-known/openid-configuration\",\n type: \"text\",\n },\n client_id: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Client ID is required\" : \"\";\n },\n label: \"Client ID\",\n tooltip: \"Identity provider Client ID\",\n placeholder: \"Enter Client ID\",\n type: \"text\",\n },\n client_secret: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Client Secret is required\" : \"\";\n },\n label: \"Client Secret\",\n tooltip: \"Identity provider Client Secret\",\n placeholder: \"Enter Client Secret\",\n type: \"password\",\n },\n claim_name: {\n required: false,\n label: \"Claim Name\",\n tooltip: \"Claim from which MinIO will read the policy or role to use\",\n placeholder: \"Enter Claim Name\",\n type: \"text\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n display_name: {\n required: false,\n label: \"Display Name\",\n tooltip: \"\",\n placeholder: \"Enter Display Name\",\n type: \"text\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n claim_prefix: {\n required: false,\n label: \"Claim Prefix\",\n tooltip: \"\",\n placeholder: \"Enter Claim Prefix\",\n type: \"text\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n scopes: {\n required: false,\n label: \"Scopes\",\n tooltip: \"\",\n placeholder: \"openid,profile,email\",\n type: \"text\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n redirect_uri: {\n required: false,\n label: \"Redirect URI\",\n tooltip: \"\",\n placeholder: \"https://console-endpoint-url/oauth_callback\",\n type: \"text\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n role_policy: {\n required: false,\n label: \"Role Policy\",\n tooltip: \"\",\n placeholder: \"readonly\",\n type: \"text\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n claim_userinfo: {\n required: false,\n label: \"Claim User Info\",\n tooltip: \"\",\n placeholder: \"Claim User Info\",\n type: \"toggle\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n redirect_uri_dynamic: {\n required: false,\n label: \"Redirect URI Dynamic\",\n tooltip: \"\",\n placeholder: \"Redirect URI Dynamic\",\n type: \"toggle\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n};\n\nexport const ldapFormFields = {\n server_insecure: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Server Address is required\" : \"\";\n },\n label: \"Server Insecure\",\n tooltip: \"Disable SSL certificate verification \",\n placeholder: \"myldapserver.com:636\",\n type: \"toggle\",\n },\n server_addr: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Server Address is required\" : \"\";\n },\n label: \"Server Address\",\n tooltip: 'AD/LDAP server address e.g. \"myldapserver.com:636\"',\n placeholder: \"myldapserver.com:636\",\n type: \"text\",\n },\n lookup_bind_dn: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Lookup Bind DN is required\" : \"\";\n },\n label: \"Lookup Bind DN\",\n tooltip:\n \"DN (Distinguished Name) for LDAP read-only service account used to perform DN and group lookups\",\n placeholder: \"cn=admin,dc=min,dc=io\",\n type: \"text\",\n },\n lookup_bind_password: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Lookup Bind Password is required\" : \"\";\n },\n label: \"Lookup Bind Password\",\n tooltip:\n \"Password for LDAP read-only service account used to perform DN and group lookups\",\n placeholder: \"admin\",\n type: \"password\",\n },\n user_dn_search_base_dn: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"User DN Search Base DN is required\" : \"\";\n },\n label: \"User DN Search Base\",\n tooltip: \"\",\n placeholder: \"DC=example,DC=net\",\n type: \"text\",\n },\n user_dn_search_filter: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"User DN Search Filter is required\" : \"\";\n },\n label: \"User DN Search Filter\",\n tooltip: \"\",\n placeholder: \"(sAMAcountName=%s)\",\n type: \"text\",\n },\n group_search_base_dn: {\n required: false,\n hasError: (s: string, editMode: boolean) => \"\",\n label: \"Group Search Base DN\",\n tooltip: \"\",\n placeholder: \"ou=swengg,dc=min,dc=io\",\n type: \"text\",\n },\n group_search_filter: {\n required: false,\n hasError: (s: string, editMode: boolean) => \"\",\n label: \"Group Search Filter\",\n tooltip: \"\",\n placeholder: \"(&(objectclass=groupofnames)(member=%d))\",\n type: \"text\",\n },\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { LinearProgress } from \"@mui/material\";\nimport { DataTable, Grid, Box } from \"mds\";\nimport { policySort } from \"../../../utils/sortFunctions\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"../../../api\";\nimport {\n Error,\n HttpResponse,\n ListPoliciesResponse,\n} from \"../../../api/consoleApi\";\n\ninterface ISelectPolicyProps {\n selectedPolicy?: string[];\n noTitle?: boolean;\n}\n\nconst PolicySelectors = ({ noTitle = false }: ISelectPolicyProps) => {\n const dispatch = useAppDispatch();\n // Local State\n const [records, setRecords] = useState([]);\n const [loading, isLoading] = useState(false);\n const [filter, setFilter] = useState(\"\");\n\n const currentPolicies = useSelector(\n (state: AppState) => state.createUser.selectedPolicies,\n );\n\n const fetchPolicies = useCallback(() => {\n isLoading(true);\n\n api.policies\n .listPolicies()\n .then((res: HttpResponse) => {\n const policies = res.data.policies ?? [];\n isLoading(false);\n setRecords(policies.sort(policySort));\n })\n .catch((err: ErrorResponseHandler) => {\n isLoading(false);\n dispatch(setModalErrorSnackMessage(err));\n });\n }, [dispatch]);\n\n //Effects\n useEffect(() => {\n isLoading(true);\n }, []);\n\n useEffect(() => {\n if (loading) {\n fetchPolicies();\n }\n }, [loading, fetchPolicies]);\n\n const selectionChanged = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...currentPolicies]; // We clone the checkedUsers array\n\n if (checked) {\n // If the user has checked this field we need to push this to checkedUsersList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n // remove empty values\n elements = elements.filter((element) => element !== \"\");\n\n dispatch(setSelectedPolicies(elements));\n };\n\n const filteredRecords = records.filter((elementItem) =>\n elementItem.name.includes(filter),\n );\n\n return (\n \n {loading && }\n {records.length > 0 ? (\n \n \n {\n setFilter(value);\n }}\n value={filter}\n label={!noTitle ? \"Assign Policies\" : \"\"}\n />\n \n\n \n \n ) : (\n \n No Policies Available\n \n )}\n \n );\n};\n\nexport default PolicySelectors;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { Policy, User } from \"api/consoleApi\";\n\ninterface policyDetailsInterface {\n policy: string;\n}\n\nexport const usersSort = (a: User, b: User) => {\n if (a.accessKey && b.accessKey) {\n if (a.accessKey > b.accessKey) {\n return 1;\n }\n if (a.accessKey < b.accessKey) {\n return -1;\n }\n }\n // a must be equal to b\n return 0;\n};\n\nexport const policySort = (a: Policy, b: Policy) => {\n if (a.name! > b.name!) {\n return 1;\n }\n if (a.name! < b.name!) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n\nexport const stringSort = (a: string, b: string) => {\n if (a > b) {\n return 1;\n }\n if (a < b) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n\nexport const policyDetailsSort = (\n a: policyDetailsInterface,\n b: policyDetailsInterface,\n) => {\n if (a.policy > b.policy) {\n return 1;\n }\n if (a.policy < b.policy) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M11 7 9.6 8.4l2.6 2.6H2v2h10.2l-2.6 2.6L11 17l5-5-5-5zm9 12h-8v2h8c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2h-8v2h8v14z\"\n}), 'Login');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["useStyles","makeStyles","theme","headerBarIcon","marginRight","color","palette","primary","main","width","height","display","headerBarSubheader","maxWidth","stContainer","alignItems","justifyContent","padding","borderBottom","flexFlow","titleColumn","fontSize","leftItems","rightItems","marginLeft","_ref","icon","title","subTitle","actions","className","classes","_jsx","Grid","container","children","_jsxs","item","xs","concat","style","margin","createStyled","_excluded","defaultTheme","createTheme","defaultCreateStyledComponent","systemStyled","name","slot","overridesResolver","props","styles","root","useThemePropsDefault","useThemePropsSystem","joinChildren","separator","childrenArray","React","toArray","filter","Boolean","reduce","output","child","index","push","length","key","ownerState","_extends","flexDirection","handleBreakpoints","resolveBreakpointValues","values","direction","breakpoints","propValue","spacing","transformer","createUnarySpacing","base","Object","keys","acc","breakpoint","directionValues","spacingValues","forEach","previousDirectionValue","deepmerge","useFlexGap","gap","getValue","_defineProperty","row","column","mergeBreakpointsInOrder","Stack","options","arguments","undefined","_options$createStyled","createStyledComponent","_options$useThemeProp","useThemeProps","_options$componentNam","componentName","StackRoot","inProps","ref","themeProps","extendSxProp","_props$component","component","_props$direction","_props$spacing","divider","_props$useFlexGap","other","_objectWithoutPropertiesLoose","composeClasses","generateUtilityClass","as","clsx","createStack","styled","_ref$label","label","_ref$value","value","_ref$orientation","orientation","_ref$stkProps","stkProps","_ref$lblProps","lblProps","_ref$valProps","valProps","_objectSpread","sm","fontWeight","withStyles","createStyles","wrapText","whiteSpace","wordWrap","deleteDialogStyles","configurationName","closeResetModalAndRefresh","resetOpen","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","resetLoading","setResetLoading","useEffect","api","configs","resetConfig","then","catch","err","setErrorSnackMessage","errorToHandler","error","ConfirmDialog","confirmText","isOpen","titleIcon","ConfirmDeleteIcon","isLoading","onConfirm","onClose","confirmationContent","LinearProgress","DialogContentText","FeatureItem","description","Box","sx","marginBottom","fontStyle","_ref2","helpText","docLink","docText","contents","flex","border","borderRadius","paddingBottom","HelpIconFilled","map","content","Fragment","iconDescription","text","href","target","rel","EntityResultTitle","CollapseCaret","transform","EntityResultItems","blockName","results","res","_ref3","_results$groups","_results$policies","_results$users","_results$groups2","_results$users2","_results$policies2","entityName","entityLength","groups","policies","users","marginTop","SectionTitle","GroupsMenuIcon","h4","fill","groupData","group","user","policy","loading","setLoading","_useState3","_useState4","setUsers","_useState5","_useState6","setGroups","_useState7","_useState8","setResults","selectedPolicies","useSelector","state","createUser","paddingTop","md","lg","withBorders","overflowY","minHeight","maxHeight","userDat","InputBox","id","onChange","e","usersElements","_toConsumableArray","overlayIcon","AddIcon","RemoveIcon","overlayAction","addItem","alterUsers","filteredUsers","_","indx","alterUsersList","groupDat","groupsElements","alterGroups","filteredGroups","alterGroupsList","PolicySelectors","selectedPolicy","noTitle","textAlign","Loader","timestamp","TimeIcon","DateTime","fromISO","toFormat","backgroundColor","flexGrow","LDAPResultsBlock","Button","type","variant","onClick","data","cleanPolicies","pol","cleanUsers","usr","cleanGroups","grp","ldapEntities","getLdapEntities","result","SearchIcon","enabledConfigLDAP","formFields","ldapFormFields","isEnabled","setIsEnabled","hasConfiguration","setHasConfiguration","fields","setFields","_useState9","_useState10","record","setRecord","_useState11","_useState12","editMode","setEditMode","_useState13","_useState14","setResetOpen","_useState15","_useState16","curTab","setCurTab","toggleEditMode","parseFields","enabled","find","totalCoincidences","includes","hasConfig","configInfo","key_values","closeDeleteModalAndRefresh","_asyncToGenerator","_regeneratorRuntime","mark","_callee","refresh","wrap","_context","prev","next","setServerNeedsRestart","stop","_x","apply","setHelpName","ResetConfigurationModal","PageHeaderWrapper","HelpMenu","PageLayout","Tabs","horizontal","tabConfig","ScreenTitle","EditIcon","disabled","payload","setConfig","restart","setSnackBarMessage","toggleConfiguration","RefreshIcon","FormLayout","helpBox","AddIDPConfigurationHelpBox","ldapHelpBoxContents","entries","Switch","indicatorLabels","checked","tooltip","required","hasError","placeholder","renderFormField","_i","_Object$entries","_Object$entries$_i","validSave","keyVals","gridTemplateColumns","gridAutoFlow","LabelValuePair","_ref5","_ref6","LDAPEntitiesQuery","currentTabOrPath","onTabClick","newTab","LoginIcon","openIDHelpBoxContents","LockIcon","openIDFormFields","config_url","s","client_id","client_secret","claim_name","display_name","claim_prefix","scopes","redirect_uri","role_policy","claim_userinfo","redirect_uri_dynamic","server_insecure","server_addr","lookup_bind_dn","lookup_bind_password","user_dn_search_base_dn","user_dn_search_filter","group_search_base_dn","group_search_filter","_ref$noTitle","records","setRecords","setFilter","currentPolicies","fetchPolicies","useCallback","listPolicies","_res$data$policies","sort","policySort","setModalErrorSnackMessage","filteredRecords","elementItem","SearchBox","DataTable","columns","elementKey","onSelect","targetD","elements","element","setSelectedPolicies","selectedItems","idField","customPaperHeight","usersSort","a","b","accessKey","stringSort","policyDetailsSort","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","defineProperty","enumerable","get","_utils","createSvgIcon","createChainedFunction","validator","reason","componentNameInError","Component","propName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","muiNames","indexOf","muiName","_len","funcs","Array","_key","func","_len2","args","_key2","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1690.f30e8f7f.chunk.js b/portal-ui/build/static/js/1690.f30e8f7f.chunk.js new file mode 100644 index 000000000..dd545a49c --- /dev/null +++ b/portal-ui/build/static/js/1690.f30e8f7f.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1690],{14917:function(e,n,t){"use strict";t(72791);var r=t(61889),i=t(72455),o=t(80184),s=(0,i.Z)((function(e){return{headerBarIcon:{marginRight:".7rem",color:e.palette.primary.main,"& .min-icon":{width:44,height:44},"@media (max-width: 600px)":{display:"none"}},headerBarSubheader:{color:"grey","@media (max-width: 900px)":{maxWidth:200}},stContainer:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:8,borderBottom:"1px solid #EAEAEA","@media (max-width: 600px)":{flexFlow:"column"}},titleColumn:{height:"auto",justifyContent:"center",display:"flex",flexFlow:"column",alignItems:"flex-start","& h1":{fontSize:19}},leftItems:{display:"flex",alignItems:"center","@media (max-width: 600px)":{flexFlow:"column",width:"100%"}},rightItems:{display:"flex",alignItems:"center","& button":{marginLeft:8},"@media (max-width: 600px)":{width:"100%"}}}}));n.Z=function(e){var n=e.icon,t=e.title,i=e.subTitle,a=e.actions,l=e.className,c=s();return(0,o.jsx)(r.ZP,{container:!0,children:(0,o.jsxs)(r.ZP,{item:!0,xs:12,className:"".concat(c.stContainer," ").concat(l||""),children:[(0,o.jsxs)("div",{className:c.leftItems,children:[n?(0,o.jsx)("div",{className:c.headerBarIcon,children:n}):null,(0,o.jsxs)("div",{className:c.titleColumn,children:[(0,o.jsx)("h1",{style:{margin:0},children:t}),(0,o.jsx)("span",{className:c.headerBarSubheader,children:i})]})]}),(0,o.jsx)("div",{className:c.rightItems,children:a})]})})}},59197:function(e,n,t){"use strict";t.d(n,{Z:function(){return _}});var r=t(1413),i=t(72791),o=t(4942),s=t(63366),a=t(87462),l=t(28182),c=t(82466),u=t(94419),d=t(21217),f=(0,t(44046).ZP)(),p=t(86083),x=t(78519),h=t(85080),m=t(51184),g=t(45682),v=t(80184),y=["component","direction","spacing","divider","children","className","useFlexGap"],j=(0,h.Z)(),b=f("div",{name:"MuiStack",slot:"Root",overridesResolver:function(e,n){return n.root}});function Z(e){return(0,p.Z)({props:e,name:"MuiStack",defaultTheme:j})}function k(e,n){var t=i.Children.toArray(e).filter(Boolean);return t.reduce((function(e,r,o){return e.push(r),o0?l[t[n-1]]:"column";l[e]=r}}));r=(0,c.Z)(r,(0,m.k9)({theme:t},u,(function(e,t){return n.useFlexGap?{gap:(0,g.NA)(i,e)}:{"& > :not(style) + :not(style)":(0,o.Z)({margin:0},"margin".concat((r=t?l[t]:n.direction,{row:"Left","row-reverse":"Right",column:"Top","column-reverse":"Bottom"}[r])),(0,g.NA)(i,e))};var r})))}return r=(0,m.dt)(t.breakpoints,r)};var w=t(66934),S=t(31402),D=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.createStyledComponent,t=void 0===n?b:n,r=e.useThemeProps,o=void 0===r?Z:r,c=e.componentName,f=void 0===c?"MuiStack":c,p=t(C),h=i.forwardRef((function(e,n){var t=o(e),r=(0,x.Z)(t),i=r.component,c=void 0===i?"div":i,h=r.direction,m=void 0===h?"column":h,g=r.spacing,j=void 0===g?0:g,b=r.divider,Z=r.children,C=r.className,w=r.useFlexGap,S=void 0!==w&&w,D=(0,s.Z)(r,y),P={direction:m,spacing:j,useFlexGap:S},_=(0,u.Z)({root:["root"]},(function(e){return(0,d.Z)(f,e)}),{});return(0,v.jsx)(p,(0,a.Z)({as:c,ownerState:P,ref:n,className:(0,l.Z)(_.root,C)},D,{children:b?k(Z,b):Z}))}));return h}({createStyledComponent:(0,w.ZP)("div",{name:"MuiStack",slot:"Root",overridesResolver:function(e,n){return n.root}}),useThemeProps:function(e){return(0,S.Z)({props:e,name:"MuiStack"})}}),P=D,_=function(e){var n=e.label,t=void 0===n?null:n,i=e.value,o=void 0===i?"-":i,s=e.orientation,a=void 0===s?"column":s,l=e.stkProps,c=void 0===l?{}:l,u=e.lblProps,d=void 0===u?{}:u,f=e.valProps,p=void 0===f?{}:f;return(0,v.jsxs)(P,(0,r.Z)((0,r.Z)({direction:{xs:"column",sm:a}},c),{},{children:[(0,v.jsx)("label",(0,r.Z)((0,r.Z)({style:{marginRight:5,fontWeight:600}},d),{},{children:t})),(0,v.jsx)("label",(0,r.Z)((0,r.Z)({style:{marginRight:5,fontWeight:500}},p),{},{children:o}))]}))}},90767:function(e,n,t){"use strict";var r=t(29439),i=t(72791),o=t(31776),s=t(82342),a=t(23508),l=t(40986),c=t(29945),u=t(87995),d=t(81551),f=t(80184);n.Z=function(e){var n=e.configurationName,t=e.closeResetModalAndRefresh,p=e.resetOpen,x=(0,d.TL)(),h=(0,i.useState)(!1),m=(0,r.Z)(h,2),g=m[0],v=m[1];(0,i.useEffect)((function(){g&&o.h.configs.resetConfig(n).then((function(){v(!1),t(!0)})).catch((function(e){v(!1),x((0,u.Ih)((0,s.g)(e.error)))}))}),[t,n,g,x]);return(0,f.jsx)(a.Z,{title:"Restore Defaults",confirmText:"Yes, Reset Configuration",isOpen:p,titleIcon:(0,f.jsx)(c.NvT,{}),isLoading:g,onConfirm:function(){v(!0)},onClose:function(){t(!1)},confirmationContent:(0,f.jsxs)(i.Fragment,{children:[g&&(0,f.jsx)(l.Z,{}),(0,f.jsxs)(i.Fragment,{children:["Are you sure you want to restore these configurations to default values?",(0,f.jsx)("br",{}),(0,f.jsx)("b",{style:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},children:"Please note that this may cause your system to not be accessible"})]})]})})}},37099:function(e,n,t){"use strict";var r=t(72791),i=t(29945),o=t(80184),s=function(e){var n=e.icon,t=e.description;return(0,o.jsxs)(i.xuv,{sx:{display:"flex","& .min-icon":{marginRight:"10px",height:"23px",width:"23px",marginBottom:"10px"}},children:[n," ",(0,o.jsx)("div",{style:{fontSize:"14px",fontStyle:"italic",color:"#5E5E5E"},children:t})]})};n.Z=function(e){var n=e.helpText,t=e.docLink,a=e.docText,l=e.contents;return(0,o.jsxs)(i.xuv,{sx:{flex:1,border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"20px"},children:[(0,o.jsxs)(i.xuv,{sx:{fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center",marginBottom:"16px",paddingBottom:"20px","& .min-icon":{height:"21px",width:"21px",marginRight:"15px"}},children:[(0,o.jsx)(i.M9A,{}),(0,o.jsx)("div",{children:n})]}),(0,o.jsxs)(i.xuv,{sx:{fontSize:"14px",marginBottom:"15px"},children:[l.map((function(e,n){return(0,o.jsxs)(r.Fragment,{children:[e.icon&&(0,o.jsx)(i.xuv,{sx:{paddingBottom:"20px"},children:(0,o.jsx)(s,{icon:e.icon,description:e.iconDescription})}),(0,o.jsx)(i.xuv,{sx:{paddingBottom:"20px"},children:e.text})]},"feature-item-".concat(n))})),(0,o.jsx)(i.xuv,{sx:{paddingBottom:"20px"},children:(0,o.jsx)("a",{href:t,target:"_blank",rel:"noopener",children:a})})]})]})}},11690:function(e,n,t){"use strict";t.r(n),t.d(n,{default:function(){return I}});var r=t(4942),i=t(1413),o=t(74165),s=t(15861),a=t(29439),l=t(72791),c=t(29945),u=t(31776),d=t(82342),f=t(81551),p=t(87995),x=t(79979),h=t(14917),m=t(59197),g=t(47974),v=t(37099),y=t(93433),j=t(78687),b=t(99779),Z=t(80184),k=function(e){var n=e.name;return(0,Z.jsxs)("h4",{children:[(0,Z.jsx)(c.ZyT,{style:{transform:"rotateZ(90deg)"}}),n]})},C=function(e){var n=e.blockName,t=e.results;return(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsxs)("strong",{children:[n,":"]}),(0,Z.jsx)("ul",{children:t.map((function(e,t){return(0,Z.jsx)("li",{children:e},"policy-".concat(n,"-").concat(t))}))})]})},w=function(e){var n,t,r,i,o,s,a=e.entityName,u=e.results,d=0;switch(a){case"Group":d=(null===(n=u.groups)||void 0===n?void 0:n.length)||0;break;case"Policy":d=(null===(t=u.policies)||void 0===t?void 0:t.length)||0;break;case"User":d=(null===(r=u.users)||void 0===r?void 0:r.length)||0}return(0,Z.jsxs)(c.xuv,{className:"resultElement",sx:{marginTop:50,"&:first-of-type":{marginTop:0}},children:[(0,Z.jsxs)(c.NZf,{separator:!0,sx:{fontSize:12},icon:(0,Z.jsx)(c.anK,{style:{width:17,height:17}}),actions:(0,Z.jsxs)(c.xuv,{sx:{fontSize:14},children:[(0,Z.jsx)("strong",{children:d})," Entit",1===d?"y":"ies"," Found"]}),children:[a," Mappings"]}),(0,Z.jsxs)(c.xuv,{className:"resultsList",sx:{h4:{borderBottom:"#e2e2e2 1px solid",padding:"12px 0",margin:0,marginBottom:15,display:"flex",alignItems:"center","& svg":{marginRight:10,fill:"#3C77A7"}}},children:["Group"===a&&(null===(i=u.groups)||void 0===i?void 0:i.map((function(e,n){return(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(k,{name:e.group||""}),e.policies&&(0,Z.jsx)(C,{blockName:"Policies",results:e.policies})]},"policy-res-".concat(n))}))),"User"===a&&(null===(o=u.users)||void 0===o?void 0:o.map((function(e,n){return(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(k,{name:e.user||""}),e.policies&&(0,Z.jsx)(C,{blockName:"Policies",results:e.policies})]},"users-res-".concat(n))}))),"Policy"===a&&(null===(s=u.policies)||void 0===s?void 0:s.map((function(e,n){return(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(k,{name:e.policy||""}),e.groups&&(0,Z.jsx)(C,{blockName:"Groups",results:e.groups}),e.users&&(0,Z.jsx)(C,{blockName:"Users",results:e.users})]},"policy-map-".concat(n))})))]})]})},S=t(58400),D=function(){var e=(0,f.TL)(),n=(0,l.useState)(!1),t=(0,a.Z)(n,2),r=t[0],i=t[1],o=(0,l.useState)([""]),s=(0,a.Z)(o,2),x=s[0],h=s[1],m=(0,l.useState)([""]),g=(0,a.Z)(m,2),v=g[0],k=g[1],C=(0,l.useState)(null),D=(0,a.Z)(C,2),P=D[0],_=D[1],N=(0,j.v9)((function(e){return e.createUser.selectedPolicies}));return(0,Z.jsxs)(c.xuv,{sx:{marginTop:15,paddingTop:0},children:[(0,Z.jsxs)(c.rjZ,{container:!0,sx:{marginTop:5},children:[(0,Z.jsxs)(c.rjZ,{item:!0,sm:12,md:6,lg:5,sx:{padding:10,paddingTop:0},children:[(0,Z.jsx)(c.NZf,{children:"Query Filters"}),(0,Z.jsxs)(c.xuv,{sx:{padding:"0 10px",display:"flex",flexDirection:"column",gap:40},children:[(0,Z.jsxs)(c.xuv,{sx:{padding:"10px 26px"},withBorders:!0,children:[(0,Z.jsx)(c.xuv,{sx:{display:"flex"},children:(0,Z.jsx)("h4",{style:{margin:0,marginBottom:10,fontSize:14},children:"Users"})}),(0,Z.jsx)(c.xuv,{sx:{overflowY:"auto",minHeight:50,maxHeight:250,"& > div > div":{width:"100%"}},children:x.map((function(e,n){return(0,Z.jsx)(c.Wzg,{id:"search-user-".concat(n),value:e,onChange:function(e){var t=(0,y.Z)(x);t[n]=e.target.value,h(t)},overlayIcon:x.length===n+1?(0,Z.jsx)(c.dtP,{}):(0,Z.jsx)(c.HFL,{}),overlayAction:function(){!function(e,n){if(e){var t=[].concat((0,y.Z)(x),[""]);h(t)}else{var r=x.filter((function(e,t){return t!==n}));h(r)}}(x.length===n+1,n)}},"search-user-".concat(n))}))})]}),(0,Z.jsxs)(c.xuv,{sx:{padding:"10px 26px"},withBorders:!0,children:[(0,Z.jsx)("h4",{style:{margin:0,marginBottom:10,fontSize:14},children:"Groups"}),(0,Z.jsx)(c.xuv,{sx:{overflowY:"auto",minHeight:50,maxHeight:"calc(100vh - 340px)","& > div > div":{width:"100%"}},children:v.map((function(e,n){return(0,Z.jsx)(c.Wzg,{id:"search-group-".concat(n),value:e,onChange:function(e){var t=(0,y.Z)(v);t[n]=e.target.value,k(t)},overlayIcon:v.length===n+1?(0,Z.jsx)(c.dtP,{}):(0,Z.jsx)(c.HFL,{}),overlayAction:function(){!function(e,n){if(e){var t=[].concat((0,y.Z)(v),[""]);k(t)}else{var r=v.filter((function(e,t){return t!==n}));k(r)}}(v.length===n+1,n)}},"search-group-".concat(n))}))})]}),(0,Z.jsxs)(c.xuv,{sx:{padding:"10px 26px"},withBorders:!0,children:[(0,Z.jsx)("h4",{style:{margin:0,marginBottom:10,fontSize:14},children:"Policies"}),(0,Z.jsx)(c.xuv,{sx:{minHeight:265,maxHeight:"calc(100vh - 740px)"},children:(0,Z.jsx)(S.Z,{selectedPolicy:N,noTitle:!0})})]})]})]}),(0,Z.jsx)(c.rjZ,{item:!0,sm:12,md:6,lg:7,sx:{padding:10,paddingTop:0,display:"flex",flexDirection:"column"},children:r?(0,Z.jsx)(c.xuv,{sx:{textAlign:"center"},children:(0,Z.jsx)(c.aNw,{})}):(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(c.NZf,{actions:(0,Z.jsx)(c.xuv,{sx:{display:"flex",flexDirection:"row",alignItems:"center",fontSize:14},children:null!==P&&void 0!==P&&P.timestamp?(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(c.wZd,{style:{width:14,height:14,marginRight:5,fill:"#BEBFBF"}}),b.ou.fromISO(P.timestamp).toFormat("D HH:mm:ss")]}):""}),children:"Query Results"}),P?(0,Z.jsxs)(c.xuv,{sx:{backgroundColor:"#FBFAFA",padding:"8px 22px",flexGrow:1,overflowY:"auto"},children:[!P.groups&&!P.users&&!P.policies&&(0,Z.jsx)(c.xuv,{sx:{textAlign:"center"},children:(0,Z.jsx)("h4",{children:"No Results Available"})}),!!P.groups&&(0,Z.jsx)(w,{results:P,entityName:"Group"}),!!P.users&&(0,Z.jsx)(w,{results:P,entityName:"User"}),!!P.policies&&(0,Z.jsx)(w,{results:P,entityName:"Policy"})]}):(0,Z.jsx)(c.xuv,{sx:{textAlign:"center"},children:"No query results yet"})]})})]}),(0,Z.jsx)(c.rjZ,{container:!0,children:(0,Z.jsx)(c.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-start",marginTop:45,padding:"0 20px"},children:(0,Z.jsx)(c.zxk,{id:"search-entity",type:"button",variant:"callAction",onClick:function(){i(!0);var n={},t=N.filter((function(e){return""!==e})),r=x.filter((function(e){return""!==e})),o=v.filter((function(e){return""!==e}));t.length>0&&(n.policies=t),r.length>0&&(n.users=r),o.length>0&&(n.groups=o),u.h.ldapEntities.getLdapEntities(n).then((function(e){_(e.data),i(!1)})).catch((function(n){e((0,p.Ih)((0,d.g)(n.error))),i(!1)}))},icon:(0,Z.jsx)(c.W1M,{}),children:"Search"})})})]})},P=t(90767),_=t(99670),N=["server_addr","lookup_bind_dn","lookup_bind_password","user_dn_search_base_dn","user_dn_search_filter"],I=function(){var e=(0,f.TL)(),n=x.iR,t=(0,l.useState)(!0),y=(0,a.Z)(t,2),j=y[0],b=y[1],k=(0,l.useState)(!1),C=(0,a.Z)(k,2),w=C[0],S=C[1],I=(0,l.useState)(!1),E=(0,a.Z)(I,2),A=E[0],F=E[1],L=(0,l.useState)({}),B=(0,a.Z)(L,2),R=B[0],q=B[1],T=(0,l.useState)(void 0),O=(0,a.Z)(T,2),M=O[0],z=O[1],U=(0,l.useState)(!1),G=(0,a.Z)(U,2),H=G[0],K=G[1],W=(0,l.useState)(!1),Y=(0,a.Z)(W,2),Q=Y[0],V=Y[1],$=(0,l.useState)("configuration"),X=(0,a.Z)($,2),J=X[0],ee=X[1],ne=function(){H&&M&&te(M),K(!H)},te=function(e){var n={};if(e&&e.length>0){var t=e.find((function(e){return"enable"===e.key})),r=0;e.forEach((function(e){n[e.key]=e.value,N.includes(e.key)&&e.value&&""!==e.value&&"off"!==e.value&&r++}));var i=r===N.length;t&&"on"!==t.value||!i?S(!1):S(!0),F(i)}q(n)};(0,l.useEffect)((function(){j&&u.h.configs.configInfo("identity_ldap").then((function(e){e.data.length>0&&(z(e.data[0].key_values),te(e.data[0].key_values||[])),b(!1)})).catch((function(n){b(!1),e((0,p.Ih)((0,d.g)(n.error)))}))}),[e,j]);var re=function(){var n=(0,s.Z)((0,o.Z)().mark((function n(t){return(0,o.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:V(!1),t&&(e((0,p.cN)(t)),z(void 0),q({}),S(!1),F(!1),K(!1));case 2:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}();return(0,l.useEffect)((function(){e((0,p.Sc)("LDAP"))}),[]),(0,Z.jsxs)(c.rjZ,{item:!0,xs:12,children:[Q&&(0,Z.jsx)(P.Z,{configurationName:"identity_ldap",closeResetModalAndRefresh:re,resetOpen:Q}),(0,Z.jsx)(g.Z,{label:"LDAP",actions:(0,Z.jsx)(_.Z,{})}),(0,Z.jsx)(c.Xgh,{variant:"constrained",children:(0,Z.jsx)(c.mQc,{horizontal:!0,options:[{tabConfig:{id:"configuration",label:"Configuration"},content:(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(h.Z,{title:H?"Edit Configuration":"",actions:H?null:(0,Z.jsxs)(l.Fragment,{children:[(0,Z.jsx)(c.zxk,{id:"edit",type:"button",variant:"callAction",icon:(0,Z.jsx)(c.dY8,{}),onClick:ne,label:"Edit Configuration",disabled:j}),A&&(0,Z.jsx)(c.zxk,{id:"is-configuration-enabled",onClick:function(){return function(n){var t={key_values:[{key:"enable",value:n?"on":"off"}]};u.h.configs.setConfig("identity_ldap",t).then((function(n){S(!w),e((0,p.cN)(n.data.restart||!1)),n.data.restart||e((0,p.y1)("Configuration saved successfully"))})).catch((function(n){e((0,p.Ih)((0,d.g)(n.error)))}))}(!w)},label:w?"Disable LDAP":"Enable LDAP",variant:w?"secondary":"regular"}),(0,Z.jsx)(c.zxk,{id:"refresh-idp-config",onClick:function(){return b(!0)},label:"Refresh",icon:(0,Z.jsx)(c.DuK,{})})]})}),(0,Z.jsx)("br",{}),j?(0,Z.jsx)(c.xuv,{sx:{display:"flex",justifyContent:"center",marginTop:10},children:(0,Z.jsx)(c.aNw,{})}):(0,Z.jsx)(l.Fragment,{children:H?(0,Z.jsx)(l.Fragment,{children:(0,Z.jsxs)(c.ltY,{helpBox:(0,Z.jsx)(v.Z,{helpText:"Learn more about LDAP Configurations",contents:x.Si,docLink:"https://min.io/docs/minio/linux/operations/external-iam.html?ref=con#minio-external-iam-ad-ldap",docText:"Learn more about LDAP Configurations"}),children:[Object.entries(n).map((function(e){var n=(0,a.Z)(e,2);return function(e,n){return"toggle"===n.type?(0,Z.jsx)(c.rsf,{indicatorLabels:["Enabled","Disabled"],checked:"on"===R[e],value:"is-field-enabled",id:"is-field-enabled",name:"is-field-enabled",label:n.label,tooltip:n.tooltip,onChange:function(n){return q((0,i.Z)((0,i.Z)({},R),{},(0,r.Z)({},e,n.target.checked?"on":"off")))},description:"",disabled:!H},e):(0,Z.jsx)(c.Wzg,{id:e,required:n.required,name:e,label:n.label,tooltip:n.tooltip,error:n.hasError(R[e],H),value:R[e]?R[e]:"",onChange:function(n){return q((0,i.Z)((0,i.Z)({},R),{},(0,r.Z)({},e,n.target.value)))},placeholder:n.placeholder,disabled:!H,type:n.type},e)}(n[0],n[1])})),(0,Z.jsxs)(c.xuv,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",marginTop:"20px",gap:"15px"},children:[H&&(0,Z.jsx)(c.zxk,{id:"clear",type:"button",variant:"secondary",onClick:function(){return V(!0)},label:"Reset Configuration"}),H&&(0,Z.jsx)(c.zxk,{id:"cancel",type:"button",variant:"regular",onClick:ne,label:"Cancel"}),H&&(0,Z.jsx)(c.zxk,{id:"save-key",type:"submit",variant:"callAction",color:"primary",disabled:j||!function(){for(var e=0,t=Object.entries(n);e0?(0,h.jsxs)(o.Fragment,{children:[(0,h.jsx)(a.rjZ,{item:!0,xs:12,className:"inputItem",children:(0,h.jsx)(c.Z,{placeholder:"Start typing to search for a Policy",onChange:function(e){P(e)},value:D,label:t?"":"Assign Policies"})}),(0,h.jsx)(a.wQF,{columns:[{label:"Policy",elementKey:"name"}],onSelect:function(e){var n=e.target,t=n.value,i=n.checked,o=(0,r.Z)(_);i?o.push(t):o=o.filter((function(e){return e!==t})),o=o.filter((function(e){return""!==e})),m((0,f.ue)(o))},selectedItems:_,isLoading:k,records:I,entityName:"Policies",idField:"name",customPaperHeight:"200px"})]}):(0,h.jsx)(a.xuv,{sx:{textAlign:"center",padding:"10px 0"},children:"No Policies Available"})]})}},21639:function(e,n,t){"use strict";t.d(n,{KE:function(){return s},LQ:function(){return r},V2:function(){return o},g4:function(){return i}});var r=function(e,n){if(e.accessKey&&n.accessKey){if(e.accessKey>n.accessKey)return 1;if(e.accessKeyn.name?1:e.namen?1:en.policy?1:e.policy.\n\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { Theme } from \"@mui/material/styles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\n\ninterface IScreenTitle {\n icon?: any;\n title?: any;\n subTitle?: any;\n actions?: any;\n className?: any;\n}\n\nconst useStyles = makeStyles((theme: Theme) => ({\n headerBarIcon: {\n marginRight: \".7rem\",\n color: theme.palette.primary.main,\n \"& .min-icon\": {\n width: 44,\n height: 44,\n },\n \"@media (max-width: 600px)\": {\n display: \"none\",\n },\n },\n headerBarSubheader: {\n color: \"grey\",\n \"@media (max-width: 900px)\": {\n maxWidth: 200,\n },\n },\n stContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n padding: 8,\n\n borderBottom: \"1px solid #EAEAEA\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n titleColumn: {\n height: \"auto\",\n justifyContent: \"center\",\n display: \"flex\",\n flexFlow: \"column\",\n alignItems: \"flex-start\",\n \"& h1\": {\n fontSize: 19,\n },\n },\n leftItems: {\n display: \"flex\",\n alignItems: \"center\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n width: \"100%\",\n },\n },\n rightItems: {\n display: \"flex\",\n alignItems: \"center\",\n \"& button\": {\n marginLeft: 8,\n },\n \"@media (max-width: 600px)\": {\n width: \"100%\",\n },\n },\n}));\n\nconst ScreenTitle = ({\n icon,\n title,\n subTitle,\n actions,\n className,\n}: IScreenTitle) => {\n const classes = useStyles();\n return (\n \n \n
\n {icon ?
{icon}
: null}\n
\n

{title}

\n {subTitle}\n
\n
\n\n
{actions}
\n
\n \n );\n};\n\nexport default ScreenTitle;\n","import createStyled from './createStyled';\nconst styled = createStyled();\nexport default styled;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"component\", \"direction\", \"spacing\", \"divider\", \"children\", \"className\", \"useFlexGap\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { deepmerge, unstable_composeClasses as composeClasses, unstable_generateUtilityClass as generateUtilityClass } from '@mui/utils';\nimport systemStyled from '../styled';\nimport useThemePropsSystem from '../useThemeProps';\nimport { extendSxProp } from '../styleFunctionSx';\nimport createTheme from '../createTheme';\nimport { handleBreakpoints, mergeBreakpointsInOrder, resolveBreakpointValues } from '../breakpoints';\nimport { createUnarySpacing, getValue } from '../spacing';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst defaultTheme = createTheme();\n// widening Theme to any so that the consumer can own the theme structure.\nconst defaultCreateStyledComponent = systemStyled('div', {\n name: 'MuiStack',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n});\nfunction useThemePropsDefault(props) {\n return useThemePropsSystem({\n props,\n name: 'MuiStack',\n defaultTheme\n });\n}\n\n/**\n * Return an array with the separator React element interspersed between\n * each React node of the input children.\n *\n * > joinChildren([1,2,3], 0)\n * [1,0,2,0,3]\n */\nfunction joinChildren(children, separator) {\n const childrenArray = React.Children.toArray(children).filter(Boolean);\n return childrenArray.reduce((output, child, index) => {\n output.push(child);\n if (index < childrenArray.length - 1) {\n output.push( /*#__PURE__*/React.cloneElement(separator, {\n key: `separator-${index}`\n }));\n }\n return output;\n }, []);\n}\nconst getSideFromDirection = direction => {\n return {\n row: 'Left',\n 'row-reverse': 'Right',\n column: 'Top',\n 'column-reverse': 'Bottom'\n }[direction];\n};\nexport const style = ({\n ownerState,\n theme\n}) => {\n let styles = _extends({\n display: 'flex',\n flexDirection: 'column'\n }, handleBreakpoints({\n theme\n }, resolveBreakpointValues({\n values: ownerState.direction,\n breakpoints: theme.breakpoints.values\n }), propValue => ({\n flexDirection: propValue\n })));\n if (ownerState.spacing) {\n const transformer = createUnarySpacing(theme);\n const base = Object.keys(theme.breakpoints.values).reduce((acc, breakpoint) => {\n if (typeof ownerState.spacing === 'object' && ownerState.spacing[breakpoint] != null || typeof ownerState.direction === 'object' && ownerState.direction[breakpoint] != null) {\n acc[breakpoint] = true;\n }\n return acc;\n }, {});\n const directionValues = resolveBreakpointValues({\n values: ownerState.direction,\n base\n });\n const spacingValues = resolveBreakpointValues({\n values: ownerState.spacing,\n base\n });\n if (typeof directionValues === 'object') {\n Object.keys(directionValues).forEach((breakpoint, index, breakpoints) => {\n const directionValue = directionValues[breakpoint];\n if (!directionValue) {\n const previousDirectionValue = index > 0 ? directionValues[breakpoints[index - 1]] : 'column';\n directionValues[breakpoint] = previousDirectionValue;\n }\n });\n }\n const styleFromPropValue = (propValue, breakpoint) => {\n if (ownerState.useFlexGap) {\n return {\n gap: getValue(transformer, propValue)\n };\n }\n return {\n '& > :not(style) + :not(style)': {\n margin: 0,\n [`margin${getSideFromDirection(breakpoint ? directionValues[breakpoint] : ownerState.direction)}`]: getValue(transformer, propValue)\n }\n };\n };\n styles = deepmerge(styles, handleBreakpoints({\n theme\n }, spacingValues, styleFromPropValue));\n }\n styles = mergeBreakpointsInOrder(theme.breakpoints, styles);\n return styles;\n};\nexport default function createStack(options = {}) {\n const {\n // This will allow adding custom styled fn (for example for custom sx style function)\n createStyledComponent = defaultCreateStyledComponent,\n useThemeProps = useThemePropsDefault,\n componentName = 'MuiStack'\n } = options;\n const useUtilityClasses = () => {\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, slot => generateUtilityClass(componentName, slot), {});\n };\n const StackRoot = createStyledComponent(style);\n const Stack = /*#__PURE__*/React.forwardRef(function Grid(inProps, ref) {\n const themeProps = useThemeProps(inProps);\n const props = extendSxProp(themeProps); // `color` type conflicts with html color attribute.\n const {\n component = 'div',\n direction = 'column',\n spacing = 0,\n divider,\n children,\n className,\n useFlexGap = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = {\n direction,\n spacing,\n useFlexGap\n };\n const classes = useUtilityClasses();\n return /*#__PURE__*/_jsx(StackRoot, _extends({\n as: component,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n children: divider ? joinChildren(children, divider) : children\n }));\n });\n process.env.NODE_ENV !== \"production\" ? Stack.propTypes /* remove-proptypes */ = {\n children: PropTypes.node,\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n divider: PropTypes.node,\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n } : void 0;\n return Stack;\n}","import PropTypes from 'prop-types';\nimport { createStack } from '@mui/system';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nconst Stack = createStack({\n createStyledComponent: styled('div', {\n name: 'MuiStack',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n }),\n useThemeProps: inProps => useThemeProps({\n props: inProps,\n name: 'MuiStack'\n })\n});\nprocess.env.NODE_ENV !== \"production\" ? Stack.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Defines the `flex-direction` style property.\n * It is applied for all screen sizes.\n * @default 'column'\n */\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n /**\n * Add an element between each child.\n */\n divider: PropTypes.node,\n /**\n * Defines the space between immediate children.\n * @default 0\n */\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n /**\n * The system prop, which allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * If `true`, the CSS flexbox `gap` is used instead of applying `margin` to children.\n *\n * While CSS `gap` removes the [known limitations](https://mui.com/joy-ui/react-stack/#limitations),\n * it is not fully supported in some browsers. We recommend checking https://caniuse.com/?search=flex%20gap before using this flag.\n *\n * To enable this flag globally, follow the [theme's default props](https://mui.com/material-ui/customization/theme-components/#default-props) configuration.\n * @default false\n */\n useFlexGap: PropTypes.bool\n} : void 0;\nexport default Stack;","import React from \"react\";\nimport { Stack } from \"@mui/material\";\n\ntype LabelValuePairProps = {\n label?: any;\n value?: any;\n orientation?: any;\n stkProps?: any;\n lblProps?: any;\n valProps?: any;\n};\n\nconst LabelValuePair = ({\n label = null,\n value = \"-\",\n orientation = \"column\",\n stkProps = {},\n lblProps = {},\n valProps = {},\n}: LabelValuePairProps) => {\n return (\n \n \n \n \n );\n};\n\nexport default LabelValuePair;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport { LinearProgress } from \"@mui/material\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IResetConfiguration {\n configurationName: string;\n closeResetModalAndRefresh: (reloadConfiguration: boolean) => void;\n resetOpen: boolean;\n}\n\nconst ResetConfigurationModal = ({\n configurationName,\n closeResetModalAndRefresh,\n resetOpen,\n}: IResetConfiguration) => {\n const dispatch = useAppDispatch();\n const [resetLoading, setResetLoading] = useState(false);\n\n useEffect(() => {\n if (resetLoading) {\n api.configs\n .resetConfig(configurationName)\n .then(() => {\n setResetLoading(false);\n closeResetModalAndRefresh(true);\n })\n .catch((err) => {\n setResetLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [closeResetModalAndRefresh, configurationName, resetLoading, dispatch]);\n\n const resetConfiguration = () => {\n setResetLoading(true);\n };\n\n return (\n }\n isLoading={resetLoading}\n onConfirm={resetConfiguration}\n onClose={() => {\n closeResetModalAndRefresh(false);\n }}\n confirmationContent={\n \n {resetLoading && }\n \n Are you sure you want to restore these configurations to default\n values?\n
\n \n Please note that this may cause your system to not be accessible\n \n
\n
\n }\n />\n );\n};\n\nexport default ResetConfigurationModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { HelpIconFilled, Box } from \"mds\";\n\ninterface IContent {\n icon: React.ReactNode;\n text: string;\n iconDescription: string;\n}\n\ninterface IAddIDPConfigurationHelpBoxProps {\n helpText: string;\n docLink: string;\n docText: string;\n contents: IContent[];\n}\n\nconst FeatureItem = ({\n icon,\n description,\n}: {\n icon: any;\n description: string;\n}) => {\n return (\n \n {icon}{\" \"}\n
\n {description}\n
\n \n );\n};\n\nconst AddIDPConfigurationHelpBox = ({\n helpText,\n docLink,\n docText,\n contents,\n}: IAddIDPConfigurationHelpBoxProps) => {\n return (\n \n \n \n
{helpText}
\n \n \n {contents.map((content, index) => (\n \n {content.icon && (\n \n \n \n )}\n {content.text}\n \n ))}\n \n \n {docText}\n \n \n \n \n );\n};\n\nexport default AddIDPConfigurationHelpBox;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Box, CollapseCaret, GroupsMenuIcon, SectionTitle } from \"mds\";\nimport { LdapEntities } from \"api/consoleApi\";\n\ninterface IResultBlock {\n entityName: \"Group\" | \"User\" | \"Policy\";\n results: LdapEntities;\n}\n\ninterface IEntityResultName {\n name: string;\n}\n\ninterface IEntityResultItem {\n blockName: \"Policies\" | \"Groups\" | \"Users\";\n results: string[];\n}\n\nconst EntityResultTitle = ({ name }: IEntityResultName) => {\n return (\n

\n \n {name}\n

\n );\n};\n\nconst EntityResultItems = ({ blockName, results }: IEntityResultItem) => {\n return (\n \n {blockName}:\n
    \n {results.map((res, index) => (\n
  • {res}
  • \n ))}\n
\n
\n );\n};\n\nconst LDAPResultsBlock = ({ entityName, results }: IResultBlock) => {\n let entityLength = 0;\n\n switch (entityName) {\n case \"Group\":\n entityLength = results.groups?.length || 0;\n break;\n case \"Policy\":\n entityLength = results.policies?.length || 0;\n break;\n case \"User\":\n entityLength = results.users?.length || 0;\n break;\n }\n\n return (\n \n }\n actions={\n \n {entityLength} Entit\n {entityLength === 1 ? \"y\" : \"ies\"} Found\n \n }\n >\n {entityName} Mappings\n \n \n {entityName === \"Group\" &&\n results.groups?.map((groupData, index) => {\n return (\n \n \n {groupData.policies && (\n \n )}\n \n );\n })}\n {entityName === \"User\" &&\n results.users?.map((groupData, index) => {\n return (\n \n \n {groupData.policies && (\n \n )}\n \n );\n })}\n {entityName === \"Policy\" &&\n results.policies?.map((groupData, index) => {\n return (\n \n \n {groupData.groups && (\n \n )}\n {groupData.users && (\n \n )}\n \n );\n })}\n \n \n );\n};\n\nexport default LDAPResultsBlock;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport {\n AddIcon,\n Box,\n Button,\n Grid,\n InputBox,\n Loader,\n RemoveIcon,\n SearchIcon,\n SectionTitle,\n TimeIcon,\n} from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { DateTime } from \"luxon\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { LdapEntities } from \"api/consoleApi\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport LDAPResultsBlock from \"./LDAPResultsBlock\";\nimport PolicySelectors from \"../../Policies/PolicySelectors\";\n\nconst LDAPEntitiesQuery = () => {\n const dispatch = useAppDispatch();\n\n const [loading, setLoading] = useState(false);\n const [users, setUsers] = useState([\"\"]);\n const [groups, setGroups] = useState([\"\"]);\n const [results, setResults] = useState(null);\n\n const selectedPolicies = useSelector(\n (state: AppState) => state.createUser.selectedPolicies,\n );\n\n const searchEntities = () => {\n setLoading(true);\n\n let data: any = {};\n\n let cleanPolicies = selectedPolicies.filter((pol) => pol !== \"\");\n let cleanUsers = users.filter((usr) => usr !== \"\");\n let cleanGroups = groups.filter((grp) => grp !== \"\");\n\n if (cleanPolicies.length > 0) {\n data[\"policies\"] = cleanPolicies;\n }\n\n if (cleanUsers.length > 0) {\n data[\"users\"] = cleanUsers;\n }\n\n if (cleanGroups.length > 0) {\n data[\"groups\"] = cleanGroups;\n }\n\n api.ldapEntities\n .getLdapEntities(data)\n .then((result) => {\n setResults(result.data);\n setLoading(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setLoading(false);\n });\n };\n\n const alterUsersList = (addItem: boolean, index: number) => {\n if (addItem) {\n const alterUsers = [...users, \"\"];\n setUsers(alterUsers);\n\n return;\n }\n\n const filteredUsers = users.filter((_, indx) => indx !== index);\n\n setUsers(filteredUsers);\n };\n\n const alterGroupsList = (addItem: boolean, index: number) => {\n if (addItem) {\n const alterGroups = [...groups, \"\"];\n setGroups(alterGroups);\n\n return;\n }\n\n const filteredGroups = groups.filter((_, indx) => indx !== index);\n\n setGroups(filteredGroups);\n };\n\n return (\n \n \n \n Query Filters\n\n \n \n \n

\n Users\n

\n
\n div > div\": {\n width: \"100%\",\n },\n }}\n >\n {users.map((userDat, index) => {\n return (\n ) => {\n const usersElements = [...users];\n usersElements[index] = e.target.value;\n setUsers(usersElements);\n }}\n overlayIcon={\n users.length === index + 1 ? (\n \n ) : (\n \n )\n }\n overlayAction={() => {\n alterUsersList(users.length === index + 1, index);\n }}\n />\n );\n })}\n
\n
\n \n

\n Groups\n

\n div > div\": {\n width: \"100%\",\n },\n }}\n >\n {groups.map((groupDat, index) => {\n return (\n ) => {\n const groupsElements = [...groups];\n groupsElements[index] = e.target.value;\n setGroups(groupsElements);\n }}\n overlayIcon={\n groups.length === index + 1 ? (\n \n ) : (\n \n )\n }\n overlayAction={() => {\n alterGroupsList(groups.length === index + 1, index);\n }}\n />\n );\n })}\n
\n \n \n

\n Policies\n

\n \n \n
\n \n \n \n \n {loading ? (\n \n \n \n ) : (\n \n \n {results?.timestamp ? (\n \n \n {DateTime.fromISO(results.timestamp).toFormat(\n \"D HH:mm:ss\",\n )}\n \n ) : (\n \"\"\n )}\n \n }\n >\n Query Results\n \n {results ? (\n \n {!results.groups && !results.users && !results.policies && (\n \n

No Results Available

\n
\n )}\n {!!results.groups && (\n \n )}\n {!!results.users && (\n \n )}\n {!!results.policies && (\n \n )}\n \n ) : (\n No query results yet\n )}\n
\n )}\n \n \n \n \n }\n >\n Search\n \n \n \n \n );\n};\n\nexport default LDAPEntitiesQuery;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport {\n Box,\n Button,\n EditIcon,\n FormLayout,\n Grid,\n InputBox,\n Loader,\n PageLayout,\n RefreshIcon,\n Switch,\n Tabs,\n} from \"mds\";\nimport { api } from \"api\";\nimport { ConfigurationKV } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport { useAppDispatch } from \"../../../../store\";\nimport {\n setErrorSnackMessage,\n setHelpName,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { ldapFormFields, ldapHelpBoxContents } from \"../utils\";\nimport ScreenTitle from \"../../Common/ScreenTitle/ScreenTitle\";\nimport LabelValuePair from \"../../Common/UsageBarWrapper/LabelValuePair\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport AddIDPConfigurationHelpBox from \"../AddIDPConfigurationHelpbox\";\nimport LDAPEntitiesQuery from \"./LDAPEntitiesQuery\";\nimport ResetConfigurationModal from \"../../EventDestinations/CustomForms/ResetConfigurationModal\";\nimport HelpMenu from \"../../HelpMenu\";\n\nconst enabledConfigLDAP = [\n \"server_addr\",\n \"lookup_bind_dn\",\n \"lookup_bind_password\",\n \"user_dn_search_base_dn\",\n \"user_dn_search_filter\",\n];\n\nconst IDPLDAPConfigurationDetails = () => {\n const dispatch = useAppDispatch();\n\n const formFields = ldapFormFields;\n\n const [loading, setLoading] = useState(true);\n const [isEnabled, setIsEnabled] = useState(false);\n const [hasConfiguration, setHasConfiguration] = useState(false);\n const [fields, setFields] = useState({});\n const [record, setRecord] = useState(\n undefined,\n );\n const [editMode, setEditMode] = useState(false);\n const [resetOpen, setResetOpen] = useState(false);\n const [curTab, setCurTab] = useState(\"configuration\");\n\n const toggleEditMode = () => {\n if (editMode && record) {\n parseFields(record);\n }\n setEditMode(!editMode);\n };\n\n const parseFields = (record: ConfigurationKV[]) => {\n let fields: any = {};\n if (record && record.length > 0) {\n const enabled = record.find((item: any) => item.key === \"enable\");\n\n let totalCoincidences = 0;\n\n record.forEach((item: any) => {\n fields[item.key] = item.value;\n\n if (\n enabledConfigLDAP.includes(item.key) &&\n item.value &&\n item.value !== \"\" &&\n item.value !== \"off\"\n ) {\n totalCoincidences++;\n }\n });\n\n const hasConfig = totalCoincidences === enabledConfigLDAP.length;\n\n if ((!enabled || enabled.value === \"on\") && hasConfig) {\n setIsEnabled(true);\n } else {\n setIsEnabled(false);\n }\n\n setHasConfiguration(hasConfig);\n }\n setFields(fields);\n };\n\n useEffect(() => {\n const loadRecord = () => {\n api.configs\n .configInfo(\"identity_ldap\")\n .then((res) => {\n if (res.data.length > 0) {\n setRecord(res.data[0].key_values);\n parseFields(res.data[0].key_values || []);\n }\n setLoading(false);\n })\n .catch((err) => {\n setLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n if (loading) {\n loadRecord();\n }\n }, [dispatch, loading]);\n\n const validSave = () => {\n for (const [key, value] of Object.entries(formFields)) {\n if (\n value.required &&\n !(\n fields[key] !== undefined &&\n fields[key] !== null &&\n fields[key] !== \"\"\n )\n ) {\n return false;\n }\n }\n return true;\n };\n\n const saveRecord = () => {\n const keyVals = Object.keys(formFields).map((key) => {\n return {\n key,\n value: fields[key],\n };\n });\n\n api.configs\n .setConfig(\"identity_ldap\", {\n key_values: keyVals,\n })\n .then((res) => {\n setEditMode(false);\n setRecord(keyVals);\n parseFields(keyVals);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const closeDeleteModalAndRefresh = async (refresh: boolean) => {\n setResetOpen(false);\n\n if (refresh) {\n dispatch(setServerNeedsRestart(refresh));\n setRecord(undefined);\n setFields({});\n setIsEnabled(false);\n setHasConfiguration(false);\n setEditMode(false);\n }\n };\n\n const toggleConfiguration = (value: boolean) => {\n const payload = {\n key_values: [\n {\n key: \"enable\",\n value: value ? \"on\" : \"off\",\n },\n ],\n };\n\n api.configs\n .setConfig(\"identity_ldap\", payload)\n .then((res) => {\n setIsEnabled(!isEnabled);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const renderFormField = (key: string, value: any) => {\n switch (value.type) {\n case \"toggle\":\n return (\n \n setFields({ ...fields, [key]: e.target.checked ? \"on\" : \"off\" })\n }\n description=\"\"\n disabled={!editMode}\n />\n );\n default:\n return (\n ) =>\n setFields({ ...fields, [key]: e.target.value })\n }\n placeholder={value.placeholder}\n disabled={!editMode}\n type={value.type}\n />\n );\n }\n };\n\n useEffect(() => {\n dispatch(setHelpName(\"LDAP\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n {resetOpen && (\n \n )}\n } />\n \n \n \n }\n onClick={toggleEditMode}\n label={\"Edit Configuration\"}\n disabled={loading}\n />\n {hasConfiguration && (\n toggleConfiguration(!isEnabled)}\n label={isEnabled ? \"Disable LDAP\" : \"Enable LDAP\"}\n variant={isEnabled ? \"secondary\" : \"regular\"}\n />\n )}\n setLoading(true)}\n label={\"Refresh\"}\n icon={}\n />\n \n ) : null\n }\n />\n
\n {loading ? (\n \n \n \n ) : (\n \n {editMode ? (\n \n \n }\n >\n {Object.entries(formFields).map(([key, value]) =>\n renderFormField(key, value),\n )}\n \n {editMode && (\n setResetOpen(true)}\n label={\"Reset Configuration\"}\n />\n )}\n {editMode && (\n \n )}\n {editMode && (\n \n )}\n \n \n \n ) : (\n \n \n \n {hasConfiguration && (\n \n {Object.entries(formFields).map(\n ([key, value]) => (\n \n ),\n )}\n \n )}\n \n \n )}\n \n )}\n \n ),\n },\n {\n tabConfig: {\n id: \"entities\",\n label: \"Entities\",\n disabled: !hasConfiguration || !isEnabled,\n },\n content: (\n \n {hasConfiguration && (\n \n \n \n )}\n \n ),\n },\n ]}\n currentTabOrPath={curTab}\n onTabClick={(newTab) => {\n setCurTab(newTab);\n setEditMode(false);\n }}\n />\n
\n
\n );\n};\n\nexport default IDPLDAPConfigurationDetails;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport LoginIcon from \"@mui/icons-material/Login\";\nimport { LockIcon } from \"mds\";\n\nexport const ldapHelpBoxContents = [\n {\n text: \"MinIO supports using an Active Directory or LDAP (AD/LDAP) service for external management of user identities. Configuring an external IDentity Provider (IDP) enables Single-Sign On (SSO) workflows, where applications authenticate against the external IDP before accessing MinIO.\",\n icon: ,\n iconDescription: \"Create Configurations\",\n },\n {\n text: \"MinIO queries the configured Active Directory / LDAP server to verify the credentials specified by the application and optionally return a list of groups in which the user has membership. MinIO supports two modes (Lookup-Bind Mode and Username-Bind Mode) for performing these queries\",\n icon: null,\n iconDescription: \"\",\n },\n {\n text: \"MinIO recommends using Lookup-Bind mode as the preferred method for verifying AD/LDAP credentials. Username-Bind mode is a legacy method retained for backwards compatibility only.\",\n icon: null,\n iconDescription: \"\",\n },\n];\n\nexport const openIDHelpBoxContents = [\n {\n text: \"MinIO supports using an OpenID Connect (OIDC) compatible IDentity Provider (IDP) such as Okta, KeyCloak, Dex, Google, or Facebook for external management of user identities.\",\n icon: ,\n iconDescription: \"Create Configurations\",\n },\n {\n text: \"Configuring an external IDP enables Single-Sign On workflows, where applications authenticate against the external IDP before accessing MinIO.\",\n icon: null,\n iconDescription: \"\",\n },\n];\n\nexport const openIDFormFields = {\n config_url: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Config URL is required\" : \"\";\n },\n label: \"Config URL\",\n tooltip: \"Config URL for identity provider configuration\",\n placeholder:\n \"https://identity-provider-url/.well-known/openid-configuration\",\n type: \"text\",\n },\n client_id: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Client ID is required\" : \"\";\n },\n label: \"Client ID\",\n tooltip: \"Identity provider Client ID\",\n placeholder: \"Enter Client ID\",\n type: \"text\",\n },\n client_secret: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Client Secret is required\" : \"\";\n },\n label: \"Client Secret\",\n tooltip: \"Identity provider Client Secret\",\n placeholder: \"Enter Client Secret\",\n type: \"password\",\n },\n claim_name: {\n required: false,\n label: \"Claim Name\",\n tooltip: \"Claim from which MinIO will read the policy or role to use\",\n placeholder: \"Enter Claim Name\",\n type: \"text\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n display_name: {\n required: false,\n label: \"Display Name\",\n tooltip: \"\",\n placeholder: \"Enter Display Name\",\n type: \"text\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n claim_prefix: {\n required: false,\n label: \"Claim Prefix\",\n tooltip: \"\",\n placeholder: \"Enter Claim Prefix\",\n type: \"text\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n scopes: {\n required: false,\n label: \"Scopes\",\n tooltip: \"\",\n placeholder: \"openid,profile,email\",\n type: \"text\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n redirect_uri: {\n required: false,\n label: \"Redirect URI\",\n tooltip: \"\",\n placeholder: \"https://console-endpoint-url/oauth_callback\",\n type: \"text\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n role_policy: {\n required: false,\n label: \"Role Policy\",\n tooltip: \"\",\n placeholder: \"readonly\",\n type: \"text\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n claim_userinfo: {\n required: false,\n label: \"Claim User Info\",\n tooltip: \"\",\n placeholder: \"Claim User Info\",\n type: \"toggle\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n redirect_uri_dynamic: {\n required: false,\n label: \"Redirect URI Dynamic\",\n tooltip: \"\",\n placeholder: \"Redirect URI Dynamic\",\n type: \"toggle\",\n hasError: (s: string, editMode: boolean) => \"\",\n },\n};\n\nexport const ldapFormFields = {\n server_insecure: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Server Address is required\" : \"\";\n },\n label: \"Server Insecure\",\n tooltip: \"Disable SSL certificate verification \",\n placeholder: \"myldapserver.com:636\",\n type: \"toggle\",\n },\n server_addr: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Server Address is required\" : \"\";\n },\n label: \"Server Address\",\n tooltip: 'AD/LDAP server address e.g. \"myldapserver.com:636\"',\n placeholder: \"myldapserver.com:636\",\n type: \"text\",\n },\n lookup_bind_dn: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Lookup Bind DN is required\" : \"\";\n },\n label: \"Lookup Bind DN\",\n tooltip:\n \"DN (Distinguished Name) for LDAP read-only service account used to perform DN and group lookups\",\n placeholder: \"cn=admin,dc=min,dc=io\",\n type: \"text\",\n },\n lookup_bind_password: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"Lookup Bind Password is required\" : \"\";\n },\n label: \"Lookup Bind Password\",\n tooltip:\n \"Password for LDAP read-only service account used to perform DN and group lookups\",\n placeholder: \"admin\",\n type: \"password\",\n },\n user_dn_search_base_dn: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"User DN Search Base DN is required\" : \"\";\n },\n label: \"User DN Search Base\",\n tooltip: \"\",\n placeholder: \"DC=example,DC=net\",\n type: \"text\",\n },\n user_dn_search_filter: {\n required: true,\n hasError: (s: string, editMode: boolean) => {\n return !s && editMode ? \"User DN Search Filter is required\" : \"\";\n },\n label: \"User DN Search Filter\",\n tooltip: \"\",\n placeholder: \"(sAMAcountName=%s)\",\n type: \"text\",\n },\n group_search_base_dn: {\n required: false,\n hasError: (s: string, editMode: boolean) => \"\",\n label: \"Group Search Base DN\",\n tooltip: \"\",\n placeholder: \"ou=swengg,dc=min,dc=io\",\n type: \"text\",\n },\n group_search_filter: {\n required: false,\n hasError: (s: string, editMode: boolean) => \"\",\n label: \"Group Search Filter\",\n tooltip: \"\",\n placeholder: \"(&(objectclass=groupofnames)(member=%d))\",\n type: \"text\",\n },\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { LinearProgress } from \"@mui/material\";\nimport { DataTable, Grid, Box } from \"mds\";\nimport { policySort } from \"../../../utils/sortFunctions\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"../../../api\";\nimport {\n Error,\n HttpResponse,\n ListPoliciesResponse,\n} from \"../../../api/consoleApi\";\n\ninterface ISelectPolicyProps {\n selectedPolicy?: string[];\n noTitle?: boolean;\n}\n\nconst PolicySelectors = ({ noTitle = false }: ISelectPolicyProps) => {\n const dispatch = useAppDispatch();\n // Local State\n const [records, setRecords] = useState([]);\n const [loading, isLoading] = useState(false);\n const [filter, setFilter] = useState(\"\");\n\n const currentPolicies = useSelector(\n (state: AppState) => state.createUser.selectedPolicies,\n );\n\n const fetchPolicies = useCallback(() => {\n isLoading(true);\n\n api.policies\n .listPolicies()\n .then((res: HttpResponse) => {\n const policies = res.data.policies ?? [];\n isLoading(false);\n setRecords(policies.sort(policySort));\n })\n .catch((err: ErrorResponseHandler) => {\n isLoading(false);\n dispatch(setModalErrorSnackMessage(err));\n });\n }, [dispatch]);\n\n //Effects\n useEffect(() => {\n isLoading(true);\n }, []);\n\n useEffect(() => {\n if (loading) {\n fetchPolicies();\n }\n }, [loading, fetchPolicies]);\n\n const selectionChanged = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...currentPolicies]; // We clone the checkedUsers array\n\n if (checked) {\n // If the user has checked this field we need to push this to checkedUsersList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n // remove empty values\n elements = elements.filter((element) => element !== \"\");\n\n dispatch(setSelectedPolicies(elements));\n };\n\n const filteredRecords = records.filter((elementItem) =>\n elementItem.name.includes(filter),\n );\n\n return (\n \n {loading && }\n {records.length > 0 ? (\n \n \n {\n setFilter(value);\n }}\n value={filter}\n label={!noTitle ? \"Assign Policies\" : \"\"}\n />\n \n\n \n \n ) : (\n \n No Policies Available\n \n )}\n \n );\n};\n\nexport default PolicySelectors;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { Policy, User } from \"api/consoleApi\";\n\ninterface policyDetailsInterface {\n policy: string;\n}\n\nexport const usersSort = (a: User, b: User) => {\n if (a.accessKey && b.accessKey) {\n if (a.accessKey > b.accessKey) {\n return 1;\n }\n if (a.accessKey < b.accessKey) {\n return -1;\n }\n }\n // a must be equal to b\n return 0;\n};\n\nexport const policySort = (a: Policy, b: Policy) => {\n if (a.name! > b.name!) {\n return 1;\n }\n if (a.name! < b.name!) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n\nexport const stringSort = (a: string, b: string) => {\n if (a > b) {\n return 1;\n }\n if (a < b) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n\nexport const policyDetailsSort = (\n a: policyDetailsInterface,\n b: policyDetailsInterface,\n) => {\n if (a.policy > b.policy) {\n return 1;\n }\n if (a.policy < b.policy) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M11 7 9.6 8.4l2.6 2.6H2v2h10.2l-2.6 2.6L11 17l5-5-5-5zm9 12h-8v2h8c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2h-8v2h8v14z\"\n}), 'Login');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["useStyles","makeStyles","theme","headerBarIcon","marginRight","color","palette","primary","main","width","height","display","headerBarSubheader","maxWidth","stContainer","alignItems","justifyContent","padding","borderBottom","flexFlow","titleColumn","fontSize","leftItems","rightItems","marginLeft","_ref","icon","title","subTitle","actions","className","classes","_jsx","Grid","container","children","_jsxs","item","xs","concat","style","margin","createStyled","_excluded","defaultTheme","createTheme","defaultCreateStyledComponent","systemStyled","name","slot","overridesResolver","props","styles","root","useThemePropsDefault","useThemePropsSystem","joinChildren","separator","childrenArray","React","toArray","filter","Boolean","reduce","output","child","index","push","length","key","ownerState","_extends","flexDirection","handleBreakpoints","resolveBreakpointValues","values","direction","breakpoints","propValue","spacing","transformer","createUnarySpacing","base","Object","keys","acc","breakpoint","directionValues","spacingValues","forEach","previousDirectionValue","deepmerge","useFlexGap","gap","getValue","_defineProperty","row","column","mergeBreakpointsInOrder","Stack","options","arguments","undefined","_options$createStyled","createStyledComponent","_options$useThemeProp","useThemeProps","_options$componentNam","componentName","StackRoot","inProps","ref","themeProps","extendSxProp","_props$component","component","_props$direction","_props$spacing","divider","_props$useFlexGap","other","_objectWithoutPropertiesLoose","composeClasses","generateUtilityClass","as","clsx","createStack","styled","_ref$label","label","_ref$value","value","_ref$orientation","orientation","_ref$stkProps","stkProps","_ref$lblProps","lblProps","_ref$valProps","valProps","_objectSpread","sm","fontWeight","configurationName","closeResetModalAndRefresh","resetOpen","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","resetLoading","setResetLoading","useEffect","api","configs","resetConfig","then","catch","err","setErrorSnackMessage","errorToHandler","error","ConfirmDialog","confirmText","isOpen","titleIcon","ConfirmDeleteIcon","isLoading","onConfirm","onClose","confirmationContent","Fragment","LinearProgress","whiteSpace","wordWrap","FeatureItem","description","Box","sx","marginBottom","fontStyle","_ref2","helpText","docLink","docText","contents","flex","border","borderRadius","paddingBottom","HelpIconFilled","map","content","iconDescription","text","href","target","rel","EntityResultTitle","CollapseCaret","transform","EntityResultItems","blockName","results","res","_ref3","_results$groups","_results$policies","_results$users","_results$groups2","_results$users2","_results$policies2","entityName","entityLength","groups","policies","users","marginTop","SectionTitle","GroupsMenuIcon","h4","fill","groupData","group","user","policy","loading","setLoading","_useState3","_useState4","setUsers","_useState5","_useState6","setGroups","_useState7","_useState8","setResults","selectedPolicies","useSelector","state","createUser","paddingTop","md","lg","withBorders","overflowY","minHeight","maxHeight","userDat","InputBox","id","onChange","e","usersElements","_toConsumableArray","overlayIcon","AddIcon","RemoveIcon","overlayAction","addItem","alterUsers","filteredUsers","_","indx","alterUsersList","groupDat","groupsElements","alterGroups","filteredGroups","alterGroupsList","PolicySelectors","selectedPolicy","noTitle","textAlign","Loader","timestamp","TimeIcon","DateTime","fromISO","toFormat","backgroundColor","flexGrow","LDAPResultsBlock","Button","type","variant","onClick","data","cleanPolicies","pol","cleanUsers","usr","cleanGroups","grp","ldapEntities","getLdapEntities","result","SearchIcon","enabledConfigLDAP","formFields","ldapFormFields","isEnabled","setIsEnabled","hasConfiguration","setHasConfiguration","fields","setFields","_useState9","_useState10","record","setRecord","_useState11","_useState12","editMode","setEditMode","_useState13","_useState14","setResetOpen","_useState15","_useState16","curTab","setCurTab","toggleEditMode","parseFields","enabled","find","totalCoincidences","includes","hasConfig","configInfo","key_values","closeDeleteModalAndRefresh","_asyncToGenerator","_regeneratorRuntime","mark","_callee","refresh","wrap","_context","prev","next","setServerNeedsRestart","stop","_x","apply","setHelpName","ResetConfigurationModal","PageHeaderWrapper","HelpMenu","PageLayout","Tabs","horizontal","tabConfig","ScreenTitle","EditIcon","disabled","payload","setConfig","restart","setSnackBarMessage","toggleConfiguration","RefreshIcon","FormLayout","helpBox","AddIDPConfigurationHelpBox","ldapHelpBoxContents","entries","Switch","indicatorLabels","checked","tooltip","required","hasError","placeholder","renderFormField","_i","_Object$entries","_Object$entries$_i","validSave","keyVals","gridTemplateColumns","gridAutoFlow","LabelValuePair","_ref5","_ref6","LDAPEntitiesQuery","currentTabOrPath","onTabClick","newTab","LoginIcon","openIDHelpBoxContents","LockIcon","openIDFormFields","config_url","s","client_id","client_secret","claim_name","display_name","claim_prefix","scopes","redirect_uri","role_policy","claim_userinfo","redirect_uri_dynamic","server_insecure","server_addr","lookup_bind_dn","lookup_bind_password","user_dn_search_base_dn","user_dn_search_filter","group_search_base_dn","group_search_filter","_ref$noTitle","records","setRecords","setFilter","currentPolicies","fetchPolicies","useCallback","listPolicies","_res$data$policies","sort","policySort","setModalErrorSnackMessage","filteredRecords","elementItem","SearchBox","DataTable","columns","elementKey","onSelect","targetD","elements","element","setSelectedPolicies","selectedItems","idField","customPaperHeight","usersSort","a","b","accessKey","stringSort","policyDetailsSort","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","defineProperty","enumerable","get","_utils","createSvgIcon","createChainedFunction","validator","reason","componentNameInError","Component","propName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","muiNames","indexOf","muiName","_len","funcs","Array","_key","func","_len2","args","_key2","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1705.8a627131.chunk.js b/portal-ui/build/static/js/1705.8a627131.chunk.js deleted file mode 100644 index 777685d70..000000000 --- a/portal-ui/build/static/js/1705.8a627131.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1705],{71705:function(n,e,t){"use strict";t.r(e);var u=t(29439),r=t(72791),o=t(9505),c=t(64554),i=t(56087),l=t(38442),s=t(26181),a=t.n(s),f=t(81918),d=t(29823),p=t(42419),v=t(75578),Z=t(29945),h=t(87995),x=t(81551),_=t(80184),T=(0,v.Z)(r.lazy((function(){return Promise.all([t.e(5994),t.e(5473),t.e(7391),t.e(247)]).then(t.bind(t,40247))}))),b=(0,v.Z)(r.lazy((function(){return t.e(2763).then(t.bind(t,22763))})));e.default=function(n){var e=n.bucketName,t=(0,x.TL)(),s=(0,r.useState)(null),v=(0,u.Z)(s,2),m=v[0],j=v[1],C=(0,r.useState)(!1),g=(0,u.Z)(C,2),S=g[0],k=g[1],y=(0,r.useState)([]),G=(0,u.Z)(y,2),I=G[0],P=G[1],A=(0,r.useState)(["",""]),E=(0,u.Z)(A,2),F=E[0],N=E[1],U=(0,r.useState)(!1),w=(0,u.Z)(U,2),O=w[0],z=w[1],M=(0,o.Z)((function(n){var e,t;null!=n&&null!=(null===n||void 0===n?void 0:n.details)&&"tags"in(null===n||void 0===n?void 0:n.details)&&(j(null===n||void 0===n||null===(e=n.details)||void 0===e?void 0:e.tags),P(Object.keys(null===n||void 0===n||null===(t=n.details)||void 0===t?void 0:t.tags)))}),(function(n){t((0,h.Ih)(n))})),B=(0,u.Z)(M,2),D=B[0],K=B[1],R=function(){K("GET","/api/v1/buckets/".concat(e))};return(0,r.useEffect)((function(){R()}),[e]),(0,_.jsxs)(c.Z,{children:[D?(0,_.jsx)(Z.aNw,{style:{width:16,height:16}}):null,(0,_.jsx)(l.s,{scopes:[i.Ft.S3_GET_BUCKET_TAGGING,i.Ft.S3_GET_ACTIONS],resource:e,children:(0,_.jsxs)(c.Z,{sx:{display:"flex",flexFlow:"column"},children:[(0,_.jsx)(c.Z,{children:I&&I.map((function(n,t){var u=a()(m,"".concat(n),"");return""!==u?(0,_.jsx)(l.s,{scopes:[i.Ft.S3_PUT_BUCKET_TAGGING,i.Ft.S3_PUT_ACTIONS],resource:e,matchAll:!0,errorProps:{deleteIcon:null,onDelete:null},children:(0,_.jsx)(f.Z,{style:{textTransform:"none",marginRight:"5px"},size:"small",label:"".concat(n," : ").concat(u),color:"primary",deleteIcon:(0,_.jsx)(d.Z,{}),onDelete:function(){!function(n,e){N([n,e]),z(!0)}(n,u)}})},"chip-".concat(t)):null}))}),(0,_.jsx)(l.s,{scopes:[i.Ft.S3_PUT_BUCKET_TAGGING,i.Ft.S3_PUT_ACTIONS],resource:e,errorProps:{disabled:!0,onClick:null},children:(0,_.jsx)(f.Z,{style:{maxWidth:80,marginTop:"10px"},icon:(0,_.jsx)(p.Z,{}),clickable:!0,size:"small",label:"Add tag",color:"primary",variant:"outlined",onClick:function(){k(!0)}})})]})}),S&&(0,_.jsx)(T,{modalOpen:S,currentTags:m,bucketName:e,onCloseAndUpdate:function(n){k(!1),n&&R()}}),O&&(0,_.jsx)(b,{deleteOpen:O,currentTags:m,bucketName:e,onCloseAndUpdate:function(n){z(!1),n&&R()},selectedTag:F})]})}},42419:function(n,e,t){"use strict";var u=t(64836);e.Z=void 0;var r=u(t(45649)),o=t(80184),c=(0,r.default)((0,o.jsx)("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"}),"Add");e.Z=c},29823:function(n,e,t){"use strict";var u=t(64836);e.Z=void 0;var r=u(t(45649)),o=t(80184),c=(0,r.default)((0,o.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close");e.Z=c},45649:function(n,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return u.createSvgIcon}});var u=t(28610)},31260:function(n,e,t){"use strict";var u=t(78949);e.Z=u.Z},28610:function(n,e,t){"use strict";t.r(e),t.d(e,{capitalize:function(){return r.Z},createChainedFunction:function(){return o.Z},createSvgIcon:function(){return c.Z},debounce:function(){return i.Z},deprecatedPropType:function(){return l},isMuiElement:function(){return s.Z},ownerDocument:function(){return a.Z},ownerWindow:function(){return f.Z},requirePropFactory:function(){return d},setRef:function(){return p},unstable_ClassNameGenerator:function(){return m},unstable_useEnhancedEffect:function(){return v.Z},unstable_useId:function(){return Z.Z},unsupportedProp:function(){return h},useControlled:function(){return x.Z},useEventCallback:function(){return _.Z},useForkRef:function(){return T.Z},useIsFocusVisible:function(){return b.Z}});var u=t(55902),r=t(14036),o=t(31260),c=t(76189),i=t(83199);var l=function(n,e){return function(){return null}},s=t(19103),a=t(98301),f=t(17602);t(87462);var d=function(n,e){return function(){return null}},p=t(62971).Z,v=t(40162),Z=t(67384);var h=function(n,e,t,u,r){return null},x=t(98278),_=t(89683),T=t(42071),b=t(23031),m={configure:function(n){u.Z.configure(n)}}},64836:function(n){n.exports=function(n){return n&&n.__esModule?n:{default:n}},n.exports.__esModule=!0,n.exports.default=n.exports}}]); -//# sourceMappingURL=1705.8a627131.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/1705.8a627131.chunk.js.map b/portal-ui/build/static/js/1705.8a627131.chunk.js.map deleted file mode 100644 index c45b530b6..000000000 --- a/portal-ui/build/static/js/1705.8a627131.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/1705.8a627131.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/SummaryItems/BucketTags.tsx","../node_modules/@mui/icons-material/Add.js","../node_modules/@mui/icons-material/Close.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { useEffect, useState } from \"react\";\nimport { Bucket } from \"../../../Watch/types\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport useApi from \"../../../Common/Hooks/useApi\";\nimport { Box } from \"@mui/material\";\nimport { IAM_SCOPES } from \"../../../../../common/SecureComponent/permissions\";\nimport { SecureComponent } from \"../../../../../common/SecureComponent\";\nimport get from \"lodash/get\";\nimport Chip from \"@mui/material/Chip\";\nimport CloseIcon from \"@mui/icons-material/Close\";\nimport AddIcon from \"@mui/icons-material/Add\";\nimport withSuspense from \"../../../Common/Components/withSuspense\";\nimport { Loader } from \"mds\";\n\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../store\";\n\nconst AddBucketTagModal = withSuspense(\n React.lazy(() => import(\"../AddBucketTagModal\")),\n);\nconst DeleteBucketTagModal = withSuspense(\n React.lazy(() => import(\"../DeleteBucketTagModal\")),\n);\n\ntype BucketTagProps = {\n bucketName: string;\n};\n\nconst BucketTags = ({ bucketName }: BucketTagProps) => {\n const dispatch = useAppDispatch();\n\n const [tags, setTags] = useState(null);\n const [tagModalOpen, setTagModalOpen] = useState(false);\n const [tagKeys, setTagKeys] = useState([]);\n const [selectedTag, setSelectedTag] = useState([\"\", \"\"]);\n const [deleteTagModalOpen, setDeleteTagModalOpen] = useState(false);\n\n const closeAddTagModal = (refresh: boolean) => {\n setTagModalOpen(false);\n if (refresh) {\n fetchTags();\n }\n };\n\n const deleteTag = (tagKey: string, tagLabel: string) => {\n setSelectedTag([tagKey, tagLabel]);\n setDeleteTagModalOpen(true);\n };\n\n const closeDeleteTagModal = (refresh: boolean) => {\n setDeleteTagModalOpen(false);\n\n if (refresh) {\n fetchTags();\n }\n };\n\n const onTagLoaded = (res: Bucket) => {\n if (res != null && res?.details != null && \"tags\" in res?.details) {\n setTags(res?.details?.tags);\n setTagKeys(Object.keys(res?.details?.tags));\n }\n };\n\n const onTagLoadFailed = (err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n };\n\n const [isLoading, invokeTagsApi] = useApi(onTagLoaded, onTagLoadFailed);\n\n const fetchTags = () => {\n invokeTagsApi(\"GET\", `/api/v1/buckets/${bucketName}`);\n };\n\n useEffect(() => {\n fetchTags();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [bucketName]);\n\n return (\n \n {isLoading ? : null}\n \n \n \n {tagKeys &&\n tagKeys.map((tagKey: any, index: any) => {\n const tag = get(tags, `${tagKey}`, \"\");\n if (tag !== \"\") {\n return (\n \n }\n onDelete={() => {\n deleteTag(tagKey, tag);\n }}\n />\n \n );\n }\n return null;\n })}\n \n\n \n }\n clickable\n size=\"small\"\n label=\"Add tag\"\n color=\"primary\"\n variant=\"outlined\"\n onClick={() => {\n setTagModalOpen(true);\n }}\n />\n \n \n \n\n {/** Modals **/}\n\n {tagModalOpen && (\n \n )}\n {deleteTagModalOpen && (\n \n )}\n \n );\n};\n\nexport default BucketTags;\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\"\n}), 'Add');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\n}), 'Close');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["AddBucketTagModal","withSuspense","React","DeleteBucketTagModal","_ref","bucketName","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","tags","setTags","_useState3","_useState4","tagModalOpen","setTagModalOpen","_useState5","_useState6","tagKeys","setTagKeys","_useState7","_useState8","selectedTag","setSelectedTag","_useState9","_useState10","deleteTagModalOpen","setDeleteTagModalOpen","_useApi","useApi","res","_res$details","_res$details2","details","Object","keys","err","setErrorSnackMessage","_useApi2","isLoading","invokeTagsApi","fetchTags","concat","useEffect","_jsxs","Box","children","_jsx","Loader","style","width","height","SecureComponent","scopes","IAM_SCOPES","S3_GET_BUCKET_TAGGING","S3_GET_ACTIONS","resource","sx","display","flexFlow","map","tagKey","index","tag","get","S3_PUT_BUCKET_TAGGING","S3_PUT_ACTIONS","matchAll","errorProps","deleteIcon","onDelete","Chip","textTransform","marginRight","size","label","color","CloseIcon","tagLabel","deleteTag","disabled","onClick","maxWidth","marginTop","icon","AddIcon","clickable","variant","modalOpen","currentTags","onCloseAndUpdate","refresh","deleteOpen","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","defineProperty","value","enumerable","_utils","createSvgIcon","createChainedFunction","validator","reason","componentNameInError","Component","props","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1705.a54c5659.chunk.js b/portal-ui/build/static/js/1705.a54c5659.chunk.js new file mode 100644 index 000000000..83a63708c --- /dev/null +++ b/portal-ui/build/static/js/1705.a54c5659.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1705],{71705:function(e,n,t){t.r(n);var l=t(29439),s=t(72791),c=t(26181),a=t.n(c),o=t(29945),u=t(56087),i=t(38442),r=t(87995),d=t(81551),p=t(9505),f=t(75578),x=t(80184),T=(0,f.Z)(s.lazy((function(){return Promise.all([t.e(5473),t.e(1715),t.e(5994),t.e(7391),t.e(247)]).then(t.bind(t,40247))}))),h=(0,f.Z)(s.lazy((function(){return t.e(2763).then(t.bind(t,22763))})));n.default=function(e){var n=e.bucketName,t=(0,d.TL)(),c=(0,s.useState)(null),f=(0,l.Z)(c,2),v=f[0],_=f[1],S=(0,s.useState)(!1),j=(0,l.Z)(S,2),b=j[0],g=j[1],C=(0,s.useState)([]),G=(0,l.Z)(C,2),k=G[0],m=G[1],A=(0,s.useState)(["",""]),N=(0,l.Z)(A,2),U=N[0],Z=N[1],I=(0,s.useState)(!1),P=(0,l.Z)(I,2),E=P[0],F=P[1],w=(0,p.Z)((function(e){if(e&&null!=(null===e||void 0===e?void 0:e.details)){var n,t;if(e.details.tags)return _(null===e||void 0===e||null===(n=e.details)||void 0===n?void 0:n.tags),void m(Object.keys(null===e||void 0===e||null===(t=e.details)||void 0===t?void 0:t.tags));_([]),m([])}}),(function(e){t((0,r.Ih)(e))})),y=(0,l.Z)(w,2),O=y[0],B=y[1],K=function(){B("GET","/api/v1/buckets/".concat(n))};return(0,s.useEffect)((function(){K()}),[n]),(0,x.jsxs)(o.xuv,{children:[O?(0,x.jsx)(o.aNw,{style:{width:16,height:16}}):null,(0,x.jsx)(i.s,{scopes:[u.Ft.S3_GET_BUCKET_TAGGING,u.Ft.S3_GET_ACTIONS],resource:n,children:(0,x.jsx)(o.xuv,{sx:{display:"flex",flexFlow:"column",marginTop:5},children:(0,x.jsxs)(o.xuv,{sx:{display:"flex",gap:8,flexWrap:"wrap"},children:[k&&k.map((function(e,t){var l=a()(v,"".concat(e),"");return""!==l?(0,x.jsx)(i.s,{scopes:[u.Ft.S3_PUT_BUCKET_TAGGING,u.Ft.S3_PUT_ACTIONS],resource:n,matchAll:!0,errorProps:{deleteIcon:null,onDelete:null},children:(0,x.jsx)(o.Vp9,{label:"".concat(e," : ").concat(l),id:"tag-".concat(e,"-").concat(l),onDelete:function(){!function(e,n){Z([e,n]),F(!0)}(e,l)}})},"chip-".concat(t)):null})),(0,x.jsx)(i.s,{scopes:[u.Ft.S3_PUT_BUCKET_TAGGING,u.Ft.S3_PUT_ACTIONS],resource:n,errorProps:{disabled:!0,onClick:null},children:(0,x.jsx)(o.Vp9,{label:"Add tag",icon:(0,x.jsx)(o.dtP,{}),id:"create-tag",variant:"outlined",onClick:function(){g(!0)},sx:{cursor:"pointer",maxWidth:90}})})]})})}),b&&(0,x.jsx)(T,{modalOpen:b,currentTags:v,bucketName:n,onCloseAndUpdate:function(e){g(!1),e&&K()}}),E&&(0,x.jsx)(h,{deleteOpen:E,currentTags:v,bucketName:n,onCloseAndUpdate:function(e){F(!1),e&&K()},selectedTag:U})]})}}}]); +//# sourceMappingURL=1705.a54c5659.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/1705.a54c5659.chunk.js.map b/portal-ui/build/static/js/1705.a54c5659.chunk.js.map new file mode 100644 index 000000000..15dcd9326 --- /dev/null +++ b/portal-ui/build/static/js/1705.a54c5659.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/1705.a54c5659.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/SummaryItems/BucketTags.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { AddIcon, Box, Loader, Tag } from \"mds\";\nimport { Bucket } from \"../../../Watch/types\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { IAM_SCOPES } from \"../../../../../common/SecureComponent/permissions\";\nimport { SecureComponent } from \"../../../../../common/SecureComponent\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../store\";\nimport useApi from \"../../../Common/Hooks/useApi\";\nimport withSuspense from \"../../../Common/Components/withSuspense\";\n\nconst AddBucketTagModal = withSuspense(\n React.lazy(() => import(\"../AddBucketTagModal\")),\n);\nconst DeleteBucketTagModal = withSuspense(\n React.lazy(() => import(\"../DeleteBucketTagModal\")),\n);\n\ntype BucketTagProps = {\n bucketName: string;\n};\n\nconst BucketTags = ({ bucketName }: BucketTagProps) => {\n const dispatch = useAppDispatch();\n\n const [tags, setTags] = useState(null);\n const [tagModalOpen, setTagModalOpen] = useState(false);\n const [tagKeys, setTagKeys] = useState([]);\n const [selectedTag, setSelectedTag] = useState([\"\", \"\"]);\n const [deleteTagModalOpen, setDeleteTagModalOpen] = useState(false);\n\n const closeAddTagModal = (refresh: boolean) => {\n setTagModalOpen(false);\n if (refresh) {\n fetchTags();\n }\n };\n\n const deleteTag = (tagKey: string, tagLabel: string) => {\n setSelectedTag([tagKey, tagLabel]);\n setDeleteTagModalOpen(true);\n };\n\n const closeDeleteTagModal = (refresh: boolean) => {\n setDeleteTagModalOpen(false);\n\n if (refresh) {\n fetchTags();\n }\n };\n\n const onTagLoaded = (res: Bucket) => {\n if (!!res && res?.details != null) {\n if (res.details.tags) {\n setTags(res?.details?.tags);\n setTagKeys(Object.keys(res?.details?.tags));\n\n return;\n }\n setTags([]);\n setTagKeys([]);\n }\n };\n\n const onTagLoadFailed = (err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n };\n\n const [isLoading, invokeTagsApi] = useApi(onTagLoaded, onTagLoadFailed);\n\n const fetchTags = () => {\n invokeTagsApi(\"GET\", `/api/v1/buckets/${bucketName}`);\n };\n\n useEffect(() => {\n fetchTags();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [bucketName]);\n\n return (\n \n {isLoading ? : null}\n \n \n \n {tagKeys &&\n tagKeys.map((tagKey: any, index: any) => {\n const tag = get(tags, `${tagKey}`, \"\");\n if (tag !== \"\") {\n return (\n \n {\n deleteTag(tagKey, tag);\n }}\n />\n \n );\n }\n return null;\n })}\n \n }\n id={\"create-tag\"}\n variant={\"outlined\"}\n onClick={() => {\n setTagModalOpen(true);\n }}\n sx={{ cursor: \"pointer\", maxWidth: 90 }}\n />\n \n \n \n \n\n {/** Modals **/}\n\n {tagModalOpen && (\n \n )}\n {deleteTagModalOpen && (\n \n )}\n \n );\n};\n\nexport default BucketTags;\n"],"names":["AddBucketTagModal","withSuspense","React","DeleteBucketTagModal","_ref","bucketName","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","tags","setTags","_useState3","_useState4","tagModalOpen","setTagModalOpen","_useState5","_useState6","tagKeys","setTagKeys","_useState7","_useState8","selectedTag","setSelectedTag","_useState9","_useState10","deleteTagModalOpen","setDeleteTagModalOpen","_useApi","useApi","res","details","_res$details","_res$details2","Object","keys","err","setErrorSnackMessage","_useApi2","isLoading","invokeTagsApi","fetchTags","concat","useEffect","_jsxs","Box","children","_jsx","Loader","style","width","height","SecureComponent","scopes","IAM_SCOPES","S3_GET_BUCKET_TAGGING","S3_GET_ACTIONS","resource","sx","display","flexFlow","marginTop","gap","flexWrap","map","tagKey","index","tag","get","S3_PUT_BUCKET_TAGGING","S3_PUT_ACTIONS","matchAll","errorProps","deleteIcon","onDelete","Tag","label","id","tagLabel","deleteTag","disabled","onClick","icon","AddIcon","variant","cursor","maxWidth","modalOpen","currentTags","onCloseAndUpdate","refresh","deleteOpen"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/1715.b85c256f.chunk.js b/portal-ui/build/static/js/1715.b85c256f.chunk.js new file mode 100644 index 000000000..60d8a0b7d --- /dev/null +++ b/portal-ui/build/static/js/1715.b85c256f.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[1715],{90493:function(e,n,t){t.d(n,{Z:function(){return g}});var r=t(63366),i=t(87462),o=t(72791),s=t(28182),a=t(94419),u=t(66934),l=t(31402),d=t(66199),c=t(75878),p=t(21217);function v(e){return(0,p.Z)("MuiList",e)}(0,c.Z)("MuiList",["root","padding","dense","subheader"]);var f=t(80184),h=["children","className","component","dense","disablePadding","subheader"],m=(0,u.ZP)("ul",{name:"MuiList",slot:"Root",overridesResolver:function(e,n){var t=e.ownerState;return[n.root,!t.disablePadding&&n.padding,t.dense&&n.dense,t.subheader&&n.subheader]}})((function(e){var n=e.ownerState;return(0,i.Z)({listStyle:"none",margin:0,padding:0,position:"relative"},!n.disablePadding&&{paddingTop:8,paddingBottom:8},n.subheader&&{paddingTop:0})})),g=o.forwardRef((function(e,n){var t=(0,l.Z)({props:e,name:"MuiList"}),u=t.children,c=t.className,p=t.component,g=void 0===p?"ul":p,b=t.dense,Z=void 0!==b&&b,P=t.disablePadding,M=void 0!==P&&P,y=t.subheader,w=(0,r.Z)(t,h),C=o.useMemo((function(){return{dense:Z}}),[Z]),F=(0,i.Z)({},t,{component:g,dense:Z,disablePadding:M}),x=function(e){var n=e.classes,t={root:["root",!e.disablePadding&&"padding",e.dense&&"dense",e.subheader&&"subheader"]};return(0,a.Z)(t,v,n)}(F);return(0,f.jsx)(d.Z.Provider,{value:C,children:(0,f.jsxs)(m,(0,i.Z)({as:g,className:(0,s.Z)(x.root,c),ref:n,ownerState:F},w,{children:[y,u]}))})}))},71715:function(e,n,t){t.d(n,{Z:function(){return T}});var r=t(87462),i=t(63366),o=t(72791),s=(t(57441),t(28182)),a=t(94419),u=t(98301),l=t(90493),d=t(57137).Z,c=t(42071),p=t(40162),v=t(80184),f=["actions","autoFocus","autoFocusItem","children","className","disabledItemsFocusable","disableListWrap","onKeyDown","variant"];function h(e,n,t){return e===n?e.firstChild:n&&n.nextElementSibling?n.nextElementSibling:t?null:e.firstChild}function m(e,n,t){return e===n?t?e.firstChild:e.lastChild:n&&n.previousElementSibling?n.previousElementSibling:t?null:e.lastChild}function g(e,n){if(void 0===n)return!0;var t=e.innerText;return void 0===t&&(t=e.textContent),0!==(t=t.trim().toLowerCase()).length&&(n.repeating?t[0]===n.keys[0]:0===t.indexOf(n.keys.join("")))}function b(e,n,t,r,i,o){for(var s=!1,a=i(e,n,!!n&&t);a;){if(a===e.firstChild){if(s)return!1;s=!0}var u=!r&&(a.disabled||"true"===a.getAttribute("aria-disabled"));if(a.hasAttribute("tabindex")&&g(a,o)&&!u)return a.focus(),!0;a=i(e,a,t)}return!1}var Z=o.forwardRef((function(e,n){var t=e.actions,s=e.autoFocus,a=void 0!==s&&s,Z=e.autoFocusItem,P=void 0!==Z&&Z,M=e.children,y=e.className,w=e.disabledItemsFocusable,C=void 0!==w&&w,F=e.disableListWrap,x=void 0!==F&&F,S=e.onKeyDown,k=e.variant,D=void 0===k?"selectedMenu":k,L=(0,i.Z)(e,f),E=o.useRef(null),R=o.useRef({keys:[],repeating:!0,previousKeyMatched:!0,lastTime:null});(0,p.Z)((function(){a&&E.current.focus()}),[a]),o.useImperativeHandle(t,(function(){return{adjustStyleForScrollbar:function(e,n){var t=!E.current.style.width;if(e.clientHeight=M.length&&(T=-1)):T===n&&(T+=1)>=M.length&&(T=-1)}));var K=o.Children.map(M,(function(e,n){if(n===T){var t={};return P&&(t.autoFocus=!0),void 0===e.props.tabIndex&&"selectedMenu"===D&&(t.tabIndex=0),o.cloneElement(e,t)}return e}));return(0,v.jsx)(l.Z,(0,r.Z)({role:"menu",ref:I,className:y,onKeyDown:function(e){var n=E.current,t=e.key,r=(0,u.Z)(n).activeElement;if("ArrowDown"===t)e.preventDefault(),b(n,r,x,C,h);else if("ArrowUp"===t)e.preventDefault(),b(n,r,x,C,m);else if("Home"===t)e.preventDefault(),b(n,null,x,C,h);else if("End"===t)e.preventDefault(),b(n,null,x,C,m);else if(1===t.length){var i=R.current,o=t.toLowerCase(),s=performance.now();i.keys.length>0&&(s-i.lastTime>500?(i.keys=[],i.repeating=!0,i.previousKeyMatched=!0):i.repeating&&o!==i.keys[0]&&(i.repeating=!1)),i.lastTime=s,i.keys.push(o);var a=r&&!i.repeating&&g(r,i);i.previousKeyMatched&&(a||b(n,r,!1,C,h,i))?e.preventDefault():i.previousKeyMatched=!1}S&&S(e)},tabIndex:a?0:-1},L,{children:K}))})),P=t(15473),M=t(66934),y=t(13967),w=t(31402),C=t(75878),F=t(21217);function x(e){return(0,F.Z)("MuiMenu",e)}(0,C.Z)("MuiMenu",["root","paper","list"]);var S=["onEntering"],k=["autoFocus","children","disableAutoFocusItem","MenuListProps","onClose","open","PaperProps","PopoverClasses","transitionDuration","TransitionProps","variant"],D={vertical:"top",horizontal:"right"},L={vertical:"top",horizontal:"left"},E=(0,M.ZP)(P.ZP,{shouldForwardProp:function(e){return(0,M.FO)(e)||"classes"===e},name:"MuiMenu",slot:"Root",overridesResolver:function(e,n){return n.root}})({}),R=(0,M.ZP)(P.XS,{name:"MuiMenu",slot:"Paper",overridesResolver:function(e,n){return n.paper}})({maxHeight:"calc(100% - 96px)",WebkitOverflowScrolling:"touch"}),I=(0,M.ZP)(Z,{name:"MuiMenu",slot:"List",overridesResolver:function(e,n){return n.list}})({outline:0}),T=o.forwardRef((function(e,n){var t=(0,w.Z)({props:e,name:"MuiMenu"}),u=t.autoFocus,l=void 0===u||u,d=t.children,c=t.disableAutoFocusItem,p=void 0!==c&&c,f=t.MenuListProps,h=void 0===f?{}:f,m=t.onClose,g=t.open,b=t.PaperProps,Z=void 0===b?{}:b,P=t.PopoverClasses,M=t.transitionDuration,C=void 0===M?"auto":M,F=t.TransitionProps,T=(void 0===F?{}:F).onEntering,K=t.variant,N=void 0===K?"selectedMenu":K,j=(0,i.Z)(t.TransitionProps,S),A=(0,i.Z)(t,k),H=(0,y.Z)(),O="rtl"===H.direction,z=(0,r.Z)({},t,{autoFocus:l,disableAutoFocusItem:p,MenuListProps:h,onEntering:T,PaperProps:Z,transitionDuration:C,TransitionProps:j,variant:N}),W=function(e){var n=e.classes;return(0,a.Z)({root:["root"],paper:["paper"],list:["list"]},x,n)}(z),V=l&&!p&&g,_=o.useRef(null),B=-1;return o.Children.map(d,(function(e,n){o.isValidElement(e)&&(e.props.disabled||("selectedMenu"===N&&e.props.selected||-1===B)&&(B=n))})),(0,v.jsx)(E,(0,r.Z)({onClose:m,anchorOrigin:{vertical:"bottom",horizontal:O?"right":"left"},transformOrigin:O?D:L,slots:{paper:R},slotProps:{paper:(0,r.Z)({},Z,{classes:(0,r.Z)({},Z.classes,{root:W.paper})})},className:W.root,open:g,ref:n,transitionDuration:C,TransitionProps:(0,r.Z)({onEntering:function(e,n){_.current&&_.current.adjustStyleForScrollbar(e,H),T&&T(e,n)}},j),ownerState:z},A,{classes:P,children:(0,v.jsx)(I,(0,r.Z)({onKeyDown:function(e){"Tab"===e.key&&(e.preventDefault(),m&&m(e,"tabKeyDown"))},actions:_,autoFocus:l&&(-1===B||p),autoFocusItem:V,variant:N},h,{className:(0,s.Z)(W.list,h.className),children:d}))}))}))}}]); +//# sourceMappingURL=1715.b85c256f.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/1715.b85c256f.chunk.js.map b/portal-ui/build/static/js/1715.b85c256f.chunk.js.map new file mode 100644 index 000000000..87f492e82 --- /dev/null +++ b/portal-ui/build/static/js/1715.b85c256f.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/1715.b85c256f.chunk.js","mappings":"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","sources":["../node_modules/@mui/material/List/listClasses.js","../node_modules/@mui/material/List/List.js","../node_modules/@mui/material/utils/getScrollbarSize.js","../node_modules/@mui/material/MenuList/MenuList.js","../node_modules/@mui/material/Menu/menuClasses.js","../node_modules/@mui/material/Menu/Menu.js"],"sourcesContent":["import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getListUtilityClass(slot) {\n return generateUtilityClass('MuiList', slot);\n}\nconst listClasses = generateUtilityClasses('MuiList', ['root', 'padding', 'dense', 'subheader']);\nexport default listClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"component\", \"dense\", \"disablePadding\", \"subheader\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport ListContext from './ListContext';\nimport { getListUtilityClass } from './listClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n disablePadding,\n dense,\n subheader\n } = ownerState;\n const slots = {\n root: ['root', !disablePadding && 'padding', dense && 'dense', subheader && 'subheader']\n };\n return composeClasses(slots, getListUtilityClass, classes);\n};\nconst ListRoot = styled('ul', {\n name: 'MuiList',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, !ownerState.disablePadding && styles.padding, ownerState.dense && styles.dense, ownerState.subheader && styles.subheader];\n }\n})(({\n ownerState\n}) => _extends({\n listStyle: 'none',\n margin: 0,\n padding: 0,\n position: 'relative'\n}, !ownerState.disablePadding && {\n paddingTop: 8,\n paddingBottom: 8\n}, ownerState.subheader && {\n paddingTop: 0\n}));\nconst List = /*#__PURE__*/React.forwardRef(function List(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiList'\n });\n const {\n children,\n className,\n component = 'ul',\n dense = false,\n disablePadding = false,\n subheader\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const context = React.useMemo(() => ({\n dense\n }), [dense]);\n const ownerState = _extends({}, props, {\n component,\n dense,\n disablePadding\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(ListContext.Provider, {\n value: context,\n children: /*#__PURE__*/_jsxs(ListRoot, _extends({\n as: component,\n className: clsx(classes.root, className),\n ref: ref,\n ownerState: ownerState\n }, other, {\n children: [subheader, children]\n }))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? List.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, compact vertical padding designed for keyboard and mouse input is used for\n * the list and list items.\n * The prop is available to descendant components as the `dense` context.\n * @default false\n */\n dense: PropTypes.bool,\n /**\n * If `true`, vertical padding is removed from the list.\n * @default false\n */\n disablePadding: PropTypes.bool,\n /**\n * The content of the subheader, normally `ListSubheader`.\n */\n subheader: PropTypes.node,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default List;","import { unstable_getScrollbarSize as getScrollbarSize } from '@mui/utils';\nexport default getScrollbarSize;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"actions\", \"autoFocus\", \"autoFocusItem\", \"children\", \"className\", \"disabledItemsFocusable\", \"disableListWrap\", \"onKeyDown\", \"variant\"];\nimport * as React from 'react';\nimport { isFragment } from 'react-is';\nimport PropTypes from 'prop-types';\nimport ownerDocument from '../utils/ownerDocument';\nimport List from '../List';\nimport getScrollbarSize from '../utils/getScrollbarSize';\nimport useForkRef from '../utils/useForkRef';\nimport useEnhancedEffect from '../utils/useEnhancedEffect';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction nextItem(list, item, disableListWrap) {\n if (list === item) {\n return list.firstChild;\n }\n if (item && item.nextElementSibling) {\n return item.nextElementSibling;\n }\n return disableListWrap ? null : list.firstChild;\n}\nfunction previousItem(list, item, disableListWrap) {\n if (list === item) {\n return disableListWrap ? list.firstChild : list.lastChild;\n }\n if (item && item.previousElementSibling) {\n return item.previousElementSibling;\n }\n return disableListWrap ? null : list.lastChild;\n}\nfunction textCriteriaMatches(nextFocus, textCriteria) {\n if (textCriteria === undefined) {\n return true;\n }\n let text = nextFocus.innerText;\n if (text === undefined) {\n // jsdom doesn't support innerText\n text = nextFocus.textContent;\n }\n text = text.trim().toLowerCase();\n if (text.length === 0) {\n return false;\n }\n if (textCriteria.repeating) {\n return text[0] === textCriteria.keys[0];\n }\n return text.indexOf(textCriteria.keys.join('')) === 0;\n}\nfunction moveFocus(list, currentFocus, disableListWrap, disabledItemsFocusable, traversalFunction, textCriteria) {\n let wrappedOnce = false;\n let nextFocus = traversalFunction(list, currentFocus, currentFocus ? disableListWrap : false);\n while (nextFocus) {\n // Prevent infinite loop.\n if (nextFocus === list.firstChild) {\n if (wrappedOnce) {\n return false;\n }\n wrappedOnce = true;\n }\n\n // Same logic as useAutocomplete.js\n const nextFocusDisabled = disabledItemsFocusable ? false : nextFocus.disabled || nextFocus.getAttribute('aria-disabled') === 'true';\n if (!nextFocus.hasAttribute('tabindex') || !textCriteriaMatches(nextFocus, textCriteria) || nextFocusDisabled) {\n // Move to the next element.\n nextFocus = traversalFunction(list, nextFocus, disableListWrap);\n } else {\n nextFocus.focus();\n return true;\n }\n }\n return false;\n}\n\n/**\n * A permanently displayed menu following https://www.w3.org/WAI/ARIA/apg/patterns/menu-button/.\n * It's exposed to help customization of the [`Menu`](/material-ui/api/menu/) component if you\n * use it separately you need to move focus into the component manually. Once\n * the focus is placed inside the component it is fully keyboard accessible.\n */\nconst MenuList = /*#__PURE__*/React.forwardRef(function MenuList(props, ref) {\n const {\n // private\n // eslint-disable-next-line react/prop-types\n actions,\n autoFocus = false,\n autoFocusItem = false,\n children,\n className,\n disabledItemsFocusable = false,\n disableListWrap = false,\n onKeyDown,\n variant = 'selectedMenu'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const listRef = React.useRef(null);\n const textCriteriaRef = React.useRef({\n keys: [],\n repeating: true,\n previousKeyMatched: true,\n lastTime: null\n });\n useEnhancedEffect(() => {\n if (autoFocus) {\n listRef.current.focus();\n }\n }, [autoFocus]);\n React.useImperativeHandle(actions, () => ({\n adjustStyleForScrollbar: (containerElement, theme) => {\n // Let's ignore that piece of logic if users are already overriding the width\n // of the menu.\n const noExplicitWidth = !listRef.current.style.width;\n if (containerElement.clientHeight < listRef.current.clientHeight && noExplicitWidth) {\n const scrollbarSize = `${getScrollbarSize(ownerDocument(containerElement))}px`;\n listRef.current.style[theme.direction === 'rtl' ? 'paddingLeft' : 'paddingRight'] = scrollbarSize;\n listRef.current.style.width = `calc(100% + ${scrollbarSize})`;\n }\n return listRef.current;\n }\n }), []);\n const handleKeyDown = event => {\n const list = listRef.current;\n const key = event.key;\n /**\n * @type {Element} - will always be defined since we are in a keydown handler\n * attached to an element. A keydown event is either dispatched to the activeElement\n * or document.body or document.documentElement. Only the first case will\n * trigger this specific handler.\n */\n const currentFocus = ownerDocument(list).activeElement;\n if (key === 'ArrowDown') {\n // Prevent scroll of the page\n event.preventDefault();\n moveFocus(list, currentFocus, disableListWrap, disabledItemsFocusable, nextItem);\n } else if (key === 'ArrowUp') {\n event.preventDefault();\n moveFocus(list, currentFocus, disableListWrap, disabledItemsFocusable, previousItem);\n } else if (key === 'Home') {\n event.preventDefault();\n moveFocus(list, null, disableListWrap, disabledItemsFocusable, nextItem);\n } else if (key === 'End') {\n event.preventDefault();\n moveFocus(list, null, disableListWrap, disabledItemsFocusable, previousItem);\n } else if (key.length === 1) {\n const criteria = textCriteriaRef.current;\n const lowerKey = key.toLowerCase();\n const currTime = performance.now();\n if (criteria.keys.length > 0) {\n // Reset\n if (currTime - criteria.lastTime > 500) {\n criteria.keys = [];\n criteria.repeating = true;\n criteria.previousKeyMatched = true;\n } else if (criteria.repeating && lowerKey !== criteria.keys[0]) {\n criteria.repeating = false;\n }\n }\n criteria.lastTime = currTime;\n criteria.keys.push(lowerKey);\n const keepFocusOnCurrent = currentFocus && !criteria.repeating && textCriteriaMatches(currentFocus, criteria);\n if (criteria.previousKeyMatched && (keepFocusOnCurrent || moveFocus(list, currentFocus, false, disabledItemsFocusable, nextItem, criteria))) {\n event.preventDefault();\n } else {\n criteria.previousKeyMatched = false;\n }\n }\n if (onKeyDown) {\n onKeyDown(event);\n }\n };\n const handleRef = useForkRef(listRef, ref);\n\n /**\n * the index of the item should receive focus\n * in a `variant=\"selectedMenu\"` it's the first `selected` item\n * otherwise it's the very first item.\n */\n let activeItemIndex = -1;\n // since we inject focus related props into children we have to do a lookahead\n // to check if there is a `selected` item. We're looking for the last `selected`\n // item and use the first valid item as a fallback\n React.Children.forEach(children, (child, index) => {\n if (! /*#__PURE__*/React.isValidElement(child)) {\n if (activeItemIndex === index) {\n activeItemIndex += 1;\n if (activeItemIndex >= children.length) {\n // there are no focusable items within the list.\n activeItemIndex = -1;\n }\n }\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (isFragment(child)) {\n console.error([\"MUI: The Menu component doesn't accept a Fragment as a child.\", 'Consider providing an array instead.'].join('\\n'));\n }\n }\n if (!child.props.disabled) {\n if (variant === 'selectedMenu' && child.props.selected) {\n activeItemIndex = index;\n } else if (activeItemIndex === -1) {\n activeItemIndex = index;\n }\n }\n if (activeItemIndex === index && (child.props.disabled || child.props.muiSkipListHighlight || child.type.muiSkipListHighlight)) {\n activeItemIndex += 1;\n if (activeItemIndex >= children.length) {\n // there are no focusable items within the list.\n activeItemIndex = -1;\n }\n }\n });\n const items = React.Children.map(children, (child, index) => {\n if (index === activeItemIndex) {\n const newChildProps = {};\n if (autoFocusItem) {\n newChildProps.autoFocus = true;\n }\n if (child.props.tabIndex === undefined && variant === 'selectedMenu') {\n newChildProps.tabIndex = 0;\n }\n return /*#__PURE__*/React.cloneElement(child, newChildProps);\n }\n return child;\n });\n return /*#__PURE__*/_jsx(List, _extends({\n role: \"menu\",\n ref: handleRef,\n className: className,\n onKeyDown: handleKeyDown,\n tabIndex: autoFocus ? 0 : -1\n }, other, {\n children: items\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? MenuList.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, will focus the `[role=\"menu\"]` container and move into tab order.\n * @default false\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, will focus the first menuitem if `variant=\"menu\"` or selected item\n * if `variant=\"selectedMenu\"`.\n * @default false\n */\n autoFocusItem: PropTypes.bool,\n /**\n * MenuList contents, normally `MenuItem`s.\n */\n children: PropTypes.node,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * If `true`, will allow focus on disabled items.\n * @default false\n */\n disabledItemsFocusable: PropTypes.bool,\n /**\n * If `true`, the menu items will not wrap focus.\n * @default false\n */\n disableListWrap: PropTypes.bool,\n /**\n * @ignore\n */\n onKeyDown: PropTypes.func,\n /**\n * The variant to use. Use `menu` to prevent selected items from impacting the initial focus\n * and the vertical alignment relative to the anchor element.\n * @default 'selectedMenu'\n */\n variant: PropTypes.oneOf(['menu', 'selectedMenu'])\n} : void 0;\nexport default MenuList;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getMenuUtilityClass(slot) {\n return generateUtilityClass('MuiMenu', slot);\n}\nconst menuClasses = generateUtilityClasses('MuiMenu', ['root', 'paper', 'list']);\nexport default menuClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"onEntering\"],\n _excluded2 = [\"autoFocus\", \"children\", \"disableAutoFocusItem\", \"MenuListProps\", \"onClose\", \"open\", \"PaperProps\", \"PopoverClasses\", \"transitionDuration\", \"TransitionProps\", \"variant\"];\nimport * as React from 'react';\nimport { isFragment } from 'react-is';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { HTMLElementType } from '@mui/utils';\nimport MenuList from '../MenuList';\nimport Popover, { PopoverPaper } from '../Popover';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport useTheme from '../styles/useTheme';\nimport useThemeProps from '../styles/useThemeProps';\nimport { getMenuUtilityClass } from './menuClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst RTL_ORIGIN = {\n vertical: 'top',\n horizontal: 'right'\n};\nconst LTR_ORIGIN = {\n vertical: 'top',\n horizontal: 'left'\n};\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n paper: ['paper'],\n list: ['list']\n };\n return composeClasses(slots, getMenuUtilityClass, classes);\n};\nconst MenuRoot = styled(Popover, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiMenu',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({});\nexport const MenuPaper = styled(PopoverPaper, {\n name: 'MuiMenu',\n slot: 'Paper',\n overridesResolver: (props, styles) => styles.paper\n})({\n // specZ: The maximum height of a simple menu should be one or more rows less than the view\n // height. This ensures a tappable area outside of the simple menu with which to dismiss\n // the menu.\n maxHeight: 'calc(100% - 96px)',\n // Add iOS momentum scrolling for iOS < 13.0\n WebkitOverflowScrolling: 'touch'\n});\nconst MenuMenuList = styled(MenuList, {\n name: 'MuiMenu',\n slot: 'List',\n overridesResolver: (props, styles) => styles.list\n})({\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0\n});\nconst Menu = /*#__PURE__*/React.forwardRef(function Menu(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiMenu'\n });\n const {\n autoFocus = true,\n children,\n disableAutoFocusItem = false,\n MenuListProps = {},\n onClose,\n open,\n PaperProps = {},\n PopoverClasses,\n transitionDuration = 'auto',\n TransitionProps: {\n onEntering\n } = {},\n variant = 'selectedMenu'\n } = props,\n TransitionProps = _objectWithoutPropertiesLoose(props.TransitionProps, _excluded),\n other = _objectWithoutPropertiesLoose(props, _excluded2);\n const theme = useTheme();\n const isRtl = theme.direction === 'rtl';\n const ownerState = _extends({}, props, {\n autoFocus,\n disableAutoFocusItem,\n MenuListProps,\n onEntering,\n PaperProps,\n transitionDuration,\n TransitionProps,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n const autoFocusItem = autoFocus && !disableAutoFocusItem && open;\n const menuListActionsRef = React.useRef(null);\n const handleEntering = (element, isAppearing) => {\n if (menuListActionsRef.current) {\n menuListActionsRef.current.adjustStyleForScrollbar(element, theme);\n }\n if (onEntering) {\n onEntering(element, isAppearing);\n }\n };\n const handleListKeyDown = event => {\n if (event.key === 'Tab') {\n event.preventDefault();\n if (onClose) {\n onClose(event, 'tabKeyDown');\n }\n }\n };\n\n /**\n * the index of the item should receive focus\n * in a `variant=\"selectedMenu\"` it's the first `selected` item\n * otherwise it's the very first item.\n */\n let activeItemIndex = -1;\n // since we inject focus related props into children we have to do a lookahead\n // to check if there is a `selected` item. We're looking for the last `selected`\n // item and use the first valid item as a fallback\n React.Children.map(children, (child, index) => {\n if (! /*#__PURE__*/React.isValidElement(child)) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (isFragment(child)) {\n console.error([\"MUI: The Menu component doesn't accept a Fragment as a child.\", 'Consider providing an array instead.'].join('\\n'));\n }\n }\n if (!child.props.disabled) {\n if (variant === 'selectedMenu' && child.props.selected) {\n activeItemIndex = index;\n } else if (activeItemIndex === -1) {\n activeItemIndex = index;\n }\n }\n });\n return /*#__PURE__*/_jsx(MenuRoot, _extends({\n onClose: onClose,\n anchorOrigin: {\n vertical: 'bottom',\n horizontal: isRtl ? 'right' : 'left'\n },\n transformOrigin: isRtl ? RTL_ORIGIN : LTR_ORIGIN,\n slots: {\n paper: MenuPaper\n },\n slotProps: {\n paper: _extends({}, PaperProps, {\n classes: _extends({}, PaperProps.classes, {\n root: classes.paper\n })\n })\n },\n className: classes.root,\n open: open,\n ref: ref,\n transitionDuration: transitionDuration,\n TransitionProps: _extends({\n onEntering: handleEntering\n }, TransitionProps),\n ownerState: ownerState\n }, other, {\n classes: PopoverClasses,\n children: /*#__PURE__*/_jsx(MenuMenuList, _extends({\n onKeyDown: handleListKeyDown,\n actions: menuListActionsRef,\n autoFocus: autoFocus && (activeItemIndex === -1 || disableAutoFocusItem),\n autoFocusItem: autoFocusItem,\n variant: variant\n }, MenuListProps, {\n className: clsx(classes.list, MenuListProps.className),\n children: children\n }))\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Menu.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * An HTML element, or a function that returns one.\n * It's used to set the position of the menu.\n */\n anchorEl: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([HTMLElementType, PropTypes.func]),\n /**\n * If `true` (Default) will focus the `[role=\"menu\"]` if no focusable child is found. Disabled\n * children are not focusable. If you set this prop to `false` focus will be placed\n * on the parent modal container. This has severe accessibility implications\n * and should only be considered if you manage focus otherwise.\n * @default true\n */\n autoFocus: PropTypes.bool,\n /**\n * Menu contents, normally `MenuItem`s.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * When opening the menu will not focus the active item but the `[role=\"menu\"]`\n * unless `autoFocus` is also set to `false`. Not using the default means not\n * following WAI-ARIA authoring practices. Please be considerate about possible\n * accessibility implications.\n * @default false\n */\n disableAutoFocusItem: PropTypes.bool,\n /**\n * Props applied to the [`MenuList`](/material-ui/api/menu-list/) element.\n * @default {}\n */\n MenuListProps: PropTypes.object,\n /**\n * Callback fired when the component requests to be closed.\n *\n * @param {object} event The event source of the callback.\n * @param {string} reason Can be: `\"escapeKeyDown\"`, `\"backdropClick\"`, `\"tabKeyDown\"`.\n */\n onClose: PropTypes.func,\n /**\n * If `true`, the component is shown.\n */\n open: PropTypes.bool.isRequired,\n /**\n * @ignore\n */\n PaperProps: PropTypes.object,\n /**\n * `classes` prop applied to the [`Popover`](/material-ui/api/popover/) element.\n */\n PopoverClasses: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The length of the transition in `ms`, or 'auto'\n * @default 'auto'\n */\n transitionDuration: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })]),\n /**\n * Props applied to the transition element.\n * By default, the element is based on this [`Transition`](http://reactcommunity.org/react-transition-group/transition/) component.\n * @default {}\n */\n TransitionProps: PropTypes.object,\n /**\n * The variant to use. Use `menu` to prevent selected items from impacting the initial focus.\n * @default 'selectedMenu'\n */\n variant: PropTypes.oneOf(['menu', 'selectedMenu'])\n} : void 0;\nexport default Menu;"],"names":["getListUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","ListRoot","styled","name","overridesResolver","props","styles","ownerState","root","disablePadding","padding","dense","subheader","_ref","_extends","listStyle","margin","position","paddingTop","paddingBottom","React","inProps","ref","useThemeProps","children","className","_props$component","component","_props$dense","_props$disablePadding","other","_objectWithoutPropertiesLoose","context","classes","slots","composeClasses","useUtilityClasses","_jsx","ListContext","Provider","value","_jsxs","as","clsx","nextItem","list","item","disableListWrap","firstChild","nextElementSibling","previousItem","lastChild","previousElementSibling","textCriteriaMatches","nextFocus","textCriteria","undefined","text","innerText","textContent","trim","toLowerCase","length","repeating","keys","indexOf","join","moveFocus","currentFocus","disabledItemsFocusable","traversalFunction","wrappedOnce","nextFocusDisabled","disabled","getAttribute","hasAttribute","focus","actions","_props$autoFocus","autoFocus","_props$autoFocusItem","autoFocusItem","_props$disabledItemsF","_props$disableListWra","onKeyDown","_props$variant","variant","listRef","textCriteriaRef","previousKeyMatched","lastTime","useEnhancedEffect","current","adjustStyleForScrollbar","containerElement","theme","noExplicitWidth","style","width","clientHeight","scrollbarSize","concat","getScrollbarSize","ownerDocument","direction","handleRef","useForkRef","activeItemIndex","forEach","child","index","selected","muiSkipListHighlight","type","items","map","newChildProps","tabIndex","List","role","event","key","activeElement","preventDefault","criteria","lowerKey","currTime","performance","now","push","keepFocusOnCurrent","getMenuUtilityClass","_excluded2","RTL_ORIGIN","vertical","horizontal","LTR_ORIGIN","MenuRoot","Popover","shouldForwardProp","prop","rootShouldForwardProp","MenuPaper","PopoverPaper","paper","maxHeight","WebkitOverflowScrolling","MenuMenuList","MenuList","outline","_props$disableAutoFoc","disableAutoFocusItem","_props$MenuListProps","MenuListProps","onClose","open","_props$PaperProps","PaperProps","PopoverClasses","_props$transitionDura","transitionDuration","_props$TransitionProp","TransitionProps","onEntering","useTheme","isRtl","menuListActionsRef","anchorOrigin","transformOrigin","slotProps","element","isAppearing"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2074.307a0b66.chunk.js b/portal-ui/build/static/js/2074.307a0b66.chunk.js deleted file mode 100644 index 0c5c22c38..000000000 --- a/portal-ui/build/static/js/2074.307a0b66.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2074,8896,9134],{88896:function(e,n,t){t.r(n);var s=t(37762),i=t(29439),r=t(72791),o=t(29945),l=t(45248),c=t(87995),a=t(81551),u=t(23508),d=t(9505),f=t(80184);n.default=function(e){var n=e.selectedGroups,t=e.deleteOpen,x=e.closeDeleteModalAndRefresh,h=(0,a.TL)(),p=(0,d.Z)((function(){return x(!0)}),(function(e){h((0,c.Ih)(e)),x(!1)})),m=(0,i.Z)(p,2),j=m[0],v=m[1];if(!n)return null;var g=n.map((function(e){return(0,f.jsx)("div",{children:(0,f.jsx)("b",{children:e})},e)}));return(0,f.jsx)(u.Z,{title:"Delete Group".concat(n.length>1?"s":""),confirmText:"Delete",isOpen:t,titleIcon:(0,f.jsx)(o.NvT,{}),isLoading:j,onConfirm:function(){var e,t=(0,s.Z)(n);try{for(t.s();!(e=t.n()).done;){var i=e.value;v("DELETE","/api/v1/group/".concat((0,l.LL)(i)))}}catch(r){t.e(r)}finally{t.f()}},onClose:function(){return x(!1)},confirmationContent:(0,f.jsxs)(r.Fragment,{children:["Are you sure you want to delete the following"," ",1===n.length?"":n.length," group",n.length>1?"s?":"?",g]})})}},22074:function(e,n,t){t.r(n),t.d(n,{default:function(){return L},formatPolicy:function(){return k}});var s=t(29439),i=t(72791),r=t(57689),o=t(29945),l=t(31776),c=t(82342),a=t(56087),u=t(38442),d=t(45248),f=t(87995),x=t(81551),h=t(74616),p=t(39134),m=t(23814),j=t(40228),v=t(56028),g=t(80184),b=function(e){var n=e.title,t=void 0===n?"":n,r=e.groupStatus,a=void 0===r?"enabled":r,u=e.preSelectedUsers,h=void 0===u?[]:u,p=e.selectedGroup,b=void 0===p?"":p,Z=e.open,y=e.onClose,S=(0,x.TL)(),C=(0,i.useState)(h),P=(0,s.Z)(C,2),k=P[0],L=P[1];return(0,g.jsxs)(v.Z,{modalOpen:Z,onClose:y,title:t,titleIcon:(0,g.jsx)(o.ZmA,{}),children:[(0,g.jsxs)(o.ltY,{withBorders:!1,containerPadding:!1,children:[(0,g.jsx)(o.bSr,{label:"Selected Group",sx:{width:"100%"},children:b}),(0,g.jsx)(j.Z,{selectedUsers:k,setSelectedUsers:L,editMode:!b})]}),(0,g.jsxs)(o.rjZ,{item:!0,xs:12,sx:m.ID.modalButtonBar,children:[(0,g.jsx)(o.zxk,{id:"reset-add-group-member",type:"button",variant:"regular",onClick:function(){L(h)},label:"Reset"}),(0,g.jsx)(o.zxk,{id:"save-add-group-member",type:"button",variant:"callAction",onClick:function(){l.h.group.updateGroup((0,d.LL)(b),{members:k,status:a}).then((function(){y()})).catch((function(e){y(),S((0,f.zb)((0,c.g)(e.error)))}))},label:"Save"})]})]})},Z=t(88896),y=t(59114),S=t(27454),C=t(99670),P=t(47974),k=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e.length<=0?[]:e.split(",")},L=function(){var e=(0,x.TL)(),n=(0,r.s0)(),t=(0,r.UO)(),m=(0,i.useState)({}),j=(0,s.Z)(m,2),v=j[0],L=j[1],A=(0,i.useState)(!1),U=(0,s.Z)(A,2),w=U[0],F=U[1],G=(0,i.useState)(!1),K=(0,s.Z)(G,2),M=K[0],E=K[1],I=(0,i.useState)(!1),z=(0,s.Z)(I,2),N=z[0],T=z[1],B=(0,i.useState)(""),D=(0,s.Z)(B,2),O=D[0],R=D[1],Q=(0,i.useState)("members"),_=(0,s.Z)(Q,2),H=_[0],W=_[1],X=(0,d.IO)(t.groupName||""),Y=v.members,J=void 0===Y?[]:Y,V=v.policy,q=void 0===V?"":V,$=v.status,ee=J.filter((function(e){return e.includes(O)})),ne=(0,u.F)(a.C3,a.iw,!0);(0,i.useEffect)((function(){e((0,f.Sc)("group_details"))}),[]),(0,i.useEffect)((function(){X&&ae()}),[X]);var te=k(q),se="enabled"===$,ie=J.length>0?"Edit Members":"Add Members",re=(0,u.F)(a.C3,a.k_),oe=(0,u.F)(a.C3,a.kt,!0),le=(0,u.F)(a.C3,a.UA,!0),ce=(0,u.F)(a.C3,a.GD,!0);function ae(){re&&l.h.group.groupInfo((0,d.LL)(X)).then((function(e){L(e.data)})).catch((function(n){e((0,f.zb)((0,c.g)(n.error))),L({})}))}var ue=(0,g.jsxs)(o.xuv,{onMouseMove:function(){e((0,f.Sc)("groups_members"))},children:[(0,g.jsx)(o.NZf,{separator:!0,sx:{marginBottom:15},actions:(0,g.jsxs)(o.xuv,{sx:{display:"flex",gap:10},children:[(0,g.jsx)(y.Z,{placeholder:"Search members",onChange:function(e){R(e)},value:O,sx:{maxWidth:280}}),(0,g.jsx)(u.s,{resource:a.C3,scopes:a.uH,errorProps:{disabled:!0},children:(0,g.jsx)(S.Z,{tooltip:oe?ie:(0,a.MK)(a.vN,"edit Group membership"),children:(0,g.jsx)(o.zxk,{id:"add-user-group",label:ie,variant:"callAction",icon:(0,g.jsx)(o.dtP,{}),onClick:function(){E(!0)},disabled:!oe})})})]}),children:"Members"}),(0,g.jsx)(o.rjZ,{item:!0,xs:12,children:(0,g.jsx)(u.s,{resource:a.C3,scopes:a.Rs,errorProps:{disabled:!0},children:(0,g.jsx)(S.Z,{tooltip:ne?"":(0,a.MK)(a.iw,"view User details"),children:(0,g.jsx)(o.wQF,{itemActions:[{type:"view",onClick:function(e){n("".concat(a.gA.USERS,"/").concat((0,d.LL)(e)))},disableButtonFunction:function(){return!ne}}],columns:[{label:"Access Key"}],selectedItems:[],isLoading:!1,records:ee,entityName:"Users"})})})})]}),de=(0,g.jsxs)(i.Fragment,{children:[(0,g.jsx)(o.xuv,{onMouseMove:function(){e((0,f.Sc)("groups_policies"))},children:(0,g.jsx)(o.NZf,{separator:!0,sx:{marginBottom:15},actions:(0,g.jsx)(S.Z,{tooltip:le?"Set Policies":(0,a.MK)(a.UA,"assign Policies"),children:(0,g.jsx)(o.zxk,{id:"set-policies",label:"Set Policies",variant:"callAction",icon:(0,g.jsx)(o.v42,{}),onClick:function(){F(!0)},disabled:!le})}),children:"Policies"})}),(0,g.jsx)(o.rjZ,{item:!0,xs:12,children:(0,g.jsx)(S.Z,{tooltip:ce?"":(0,a.MK)(a.GD,"view Policy details"),children:(0,g.jsx)(o.wQF,{itemActions:[{type:"view",onClick:function(e){n("".concat(a.gA.POLICIES,"/").concat((0,d.LL)(e)))},disableButtonFunction:function(){return!ce}}],columns:[{label:"Policy"}],isLoading:!1,records:te,entityName:"Policies"})})})]});return(0,g.jsxs)(i.Fragment,{children:[w?(0,g.jsx)(p.default,{open:w,selectedGroups:[X],selectedUser:null,closeModalAndRefresh:function(){F(!1),ae(),e((0,h.ue)([]))}}):null,M?(0,g.jsx)(b,{selectedGroup:X,onSaveClick:function(){},title:ie,groupStatus:$,preSelectedUsers:J,open:M,onClose:function(){E(!1),ae()}}):null,N&&(0,g.jsx)(Z.default,{deleteOpen:N,selectedGroups:[X],closeDeleteModalAndRefresh:function(e){T(!1),e&&n(a.gA.GROUPS)}}),(0,g.jsx)(P.Z,{label:(0,g.jsx)(i.Fragment,{children:(0,g.jsx)(o.hbI,{label:"Groups",onClick:function(){return n(a.gA.GROUPS)}})}),actions:(0,g.jsx)(C.Z,{})}),(0,g.jsxs)(o.Xgh,{children:[(0,g.jsx)(o.rjZ,{item:!0,xs:12,children:(0,g.jsx)(o.UHn,{icon:(0,g.jsx)(i.Fragment,{children:(0,g.jsx)(o.wws,{width:40})}),title:X,subTitle:null,bottomBorder:!0,actions:(0,g.jsxs)(o.xuv,{sx:{display:"flex",fontSize:14,alignItems:"center",gap:15},children:[(0,g.jsx)("span",{children:"Group Status:"}),(0,g.jsx)("span",{id:"group-status-label",style:{fontWeight:"bold"},children:se?"Enabled":"Disabled"}),(0,g.jsx)(S.Z,{tooltip:(0,u.F)(a.C3,a.xh,!0)?"":(0,a.MK)(a.xh,"enable or disable Groups"),children:(0,g.jsx)(u.s,{resource:a.C3,scopes:a.xh,errorProps:{disabled:!0},matchAll:!0,children:(0,g.jsx)(o.rsf,{indicatorLabels:["Enabled","Disabled"],checked:se,value:"group_enabled",id:"group-status",name:"group-status",onChange:function(){var n;n=!se,l.h.group.updateGroup((0,d.LL)(X),{members:J,status:n?"enabled":"disabled"}).then((function(){ae()})).catch((function(n){e((0,f.zb)((0,c.g)(n.error)))}))},switchOnly:!0})})}),(0,g.jsx)(S.Z,{tooltip:"Delete Group",children:(0,g.jsx)(o.zxk,{id:"delete-user-group",variant:"secondary",icon:(0,g.jsx)(o.XHJ,{}),onClick:function(){T(!0)}})})]}),sx:{marginBottom:15}})}),(0,g.jsx)(o.rjZ,{item:!0,xs:12,children:(0,g.jsx)(o.mQc,{options:[{tabConfig:{id:"members",label:"Members"},content:ue},{tabConfig:{id:"policies",label:"Policies"},content:de}],currentTabOrPath:H,onTabClick:W})})]})]})}},40228:function(e,n,t){var s=t(93433),i=t(29439),r=t(72791),o=t(26181),l=t.n(o),c=t(31776),a=t(82342),u=t(29945),d=t(40986),f=t(21639),x=t(87995),h=t(81551),p=t(59114),m=t(80184);n.Z=function(e){var n=e.selectedUsers,t=e.setSelectedUsers,o=e.editMode,j=void 0!==o&&o,v=(0,h.TL)(),g=(0,r.useState)([]),b=(0,i.Z)(g,2),Z=b[0],y=b[1],S=(0,r.useState)(!1),C=(0,i.Z)(S,2),P=C[0],k=C[1],L=(0,r.useState)(""),A=(0,i.Z)(L,2),U=A[0],w=A[1],F=(0,r.useCallback)((function(){c.h.users.listUsers().then((function(e){var n=l()(e.data,"users",[]);n||(n=[]),y(n.sort(f.LQ)),k(!1)})).catch((function(e){v((0,x.zb)((0,a.g)(e.error))),k(!1)}))}),[v]);(0,r.useEffect)((function(){k(!0)}),[]),(0,r.useEffect)((function(){P&&F()}),[P,F]);var G=n||[],K=Z.filter((function(e){return e.accessKey.includes(U)}));return(0,m.jsx)(u.rjZ,{item:!0,xs:12,className:"inputItem",children:(0,m.jsxs)(u.xuv,{children:[P&&(0,m.jsx)(d.Z,{}),(null===Z||void 0===Z?void 0:Z.length)>0?(0,m.jsxs)(r.Fragment,{children:[(0,m.jsx)(u.rjZ,{item:!0,xs:12,className:"inputItem",children:(0,m.jsx)(p.Z,{label:j?"Edit Members":"Assign Users",placeholder:"Filter Users",onChange:w,value:U})}),(0,m.jsx)(u.wQF,{columns:[{label:"Access Key",elementKey:"accessKey"}],onSelect:function(e){var n=e.target,i=n.value,r=n.checked,o=(0,s.Z)(G);return r?o.push(i):o=o.filter((function(e){return e!==i})),t(o),o},selectedItems:G,isLoading:P,records:K,entityName:"Users",idField:"accessKey",customPaperHeight:"200px"})]}):(0,m.jsx)(u.xuv,{sx:{textAlign:"center",padding:"10px 0"},children:"No Users to display"})]})})}},58400:function(e,n,t){var s=t(93433),i=t(29439),r=t(72791),o=t(40986),l=t(29945),c=t(21639),a=t(59114),u=t(87995),d=t(81551),f=t(74616),x=t(78687),h=t(31776),p=t(80184);n.Z=function(e){var n=e.noTitle,t=void 0!==n&&n,m=(0,d.TL)(),j=(0,r.useState)([]),v=(0,i.Z)(j,2),g=v[0],b=v[1],Z=(0,r.useState)(!1),y=(0,i.Z)(Z,2),S=y[0],C=y[1],P=(0,r.useState)(""),k=(0,i.Z)(P,2),L=k[0],A=k[1],U=(0,x.v9)((function(e){return e.createUser.selectedPolicies})),w=(0,r.useCallback)((function(){C(!0),h.h.policies.listPolicies().then((function(e){var n,t=null!==(n=e.data.policies)&&void 0!==n?n:[];C(!1),b(t.sort(c.g4))})).catch((function(e){C(!1),m((0,u.zb)(e))}))}),[m]);(0,r.useEffect)((function(){C(!0)}),[]),(0,r.useEffect)((function(){S&&w()}),[S,w]);var F=g.filter((function(e){return e.name.includes(L)}));return(0,p.jsxs)(l.rjZ,{item:!0,xs:12,className:"inputItem",children:[S&&(0,p.jsx)(o.Z,{}),g.length>0?(0,p.jsxs)(r.Fragment,{children:[(0,p.jsx)(l.rjZ,{item:!0,xs:12,className:"inputItem",children:(0,p.jsx)(a.Z,{placeholder:"Start typing to search for a Policy",onChange:function(e){A(e)},value:L,label:t?"":"Assign Policies"})}),(0,p.jsx)(l.wQF,{columns:[{label:"Policy",elementKey:"name"}],onSelect:function(e){var n=e.target,t=n.value,i=n.checked,r=(0,s.Z)(U);i?r.push(t):r=r.filter((function(e){return e!==t})),r=r.filter((function(e){return""!==e})),m((0,f.ue)(r))},selectedItems:U,isLoading:S,records:F,entityName:"Policies",idField:"name",customPaperHeight:"200px"})]}):(0,p.jsx)(l.xuv,{sx:{textAlign:"center",padding:"10px 0"},children:"No Policies Available"})]})}},39134:function(e,n,t){t.r(n);var s=t(29439),i=t(72791),r=t(26181),o=t.n(r),l=t(78687),c=t(29945),a=t(40986),u=t(45248),d=t(87995),f=t(81551),x=t(23814),h=t(74616),p=t(56028),m=t(58400),j=t(81207),v=t(80184);n.default=function(e){var n=e.closeModalAndRefresh,t=e.selectedUser,r=e.selectedGroups,g=e.open,b=(0,f.TL)(),Z=(0,i.useState)(!1),y=(0,s.Z)(Z,2),S=y[0],C=y[1],P=(0,i.useState)([]),k=(0,s.Z)(P,2),L=k[0],A=k[1],U=(0,i.useState)([]),w=(0,s.Z)(U,2),F=w[0],G=w[1],K=(0,l.v9)((function(e){return e.createUser.selectedPolicies}));(0,i.useEffect)((function(){if(g){if(1===(null===r||void 0===r?void 0:r.length))return void(1===(null===r||void 0===r?void 0:r.length)&&j.Z.invoke("GET","/api/v1/group/".concat((0,u.LL)(r[0]))).then((function(e){var n=o()(e,"policy","");A(n.split(",")),G(n.split(",")),b((0,h.ue)(n.split(",")))})).catch((function(e){b((0,d.zb)(e)),C(!1)})));var e=o()(t,"policy",[]);A(e),G(e),b((0,h.ue)(e))}}),[g,null===r||void 0===r?void 0:r.length,t]);var M=o()(t,"accessKey","");return(0,v.jsxs)(p.Z,{onClose:function(){n()},modalOpen:g,title:"Set Policies",children:[(0,v.jsxs)(c.ltY,{withBorders:!1,containerPadding:!1,children:[(1===(null===r||void 0===r?void 0:r.length)||null!=t)&&(0,v.jsxs)(i.Fragment,{children:[(0,v.jsx)(c.bSr,{label:"Selected ".concat(null!==r?"Group":"User"),sx:{width:"100%"},children:null!==r?r[0]:M}),(0,v.jsx)(c.bSr,{label:"Current Policy",sx:{width:"100%"},children:L.join(", ")})]}),r&&(null===r||void 0===r?void 0:r.length)>1&&(0,v.jsx)(c.bSr,{label:"Selected Groups",sx:{width:"100%"},children:r.join(", ")}),(0,v.jsx)(c.rjZ,{item:!0,xs:12,children:(0,v.jsx)(m.Z,{selectedPolicy:F})})]}),(0,v.jsxs)(c.rjZ,{item:!0,xs:12,sx:x.ID.modalButtonBar,children:[(0,v.jsx)(c.zxk,{id:"reset",type:"button",variant:"regular",onClick:function(){G(L),b((0,h.ue)(L))},label:"Reset"}),(0,v.jsx)(c.zxk,{id:"save",type:"button",variant:"callAction",color:"primary",disabled:S,onClick:function(){var e=null,s=null;null!==r?s=r:null!==t&&(e=[t.accessKey]||0),C(!0),j.Z.invoke("PUT","/api/v1/set-policy-multi",{name:K,groups:s,users:e}).then((function(){C(!1),n()})).catch((function(e){C(!1),b((0,d.zb)(e))}))},label:"Save"})]}),S&&(0,v.jsx)(c.rjZ,{item:!0,xs:12,children:(0,v.jsx)(a.Z,{})})]})}},21639:function(e,n,t){t.d(n,{KE:function(){return o},LQ:function(){return s},V2:function(){return r},g4:function(){return i}});var s=function(e,n){if(e.accessKey&&n.accessKey){if(e.accessKey>n.accessKey)return 1;if(e.accessKeyn.name?1:e.namen?1:en.policy?1:e.policy.\n\nimport React, { Fragment } from \"react\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { encodeURLString } from \"../../../common/utils\";\nimport { setErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport ConfirmDialog from \"../Common/ModalWrapper/ConfirmDialog\";\nimport useApi from \"../Common/Hooks/useApi\";\n\ninterface IDeleteGroup {\n selectedGroups: string[];\n deleteOpen: boolean;\n closeDeleteModalAndRefresh: any;\n}\n\nconst DeleteGroup = ({\n selectedGroups,\n deleteOpen,\n closeDeleteModalAndRefresh,\n}: IDeleteGroup) => {\n const dispatch = useAppDispatch();\n const onDelSuccess = () => closeDeleteModalAndRefresh(true);\n const onDelError = (err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n closeDeleteModalAndRefresh(false);\n };\n const onClose = () => closeDeleteModalAndRefresh(false);\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n\n if (!selectedGroups) {\n return null;\n }\n const onDeleteGroups = () => {\n for (let group of selectedGroups) {\n invokeDeleteApi(\"DELETE\", `/api/v1/group/${encodeURLString(group)}`);\n }\n };\n\n const renderGroups = selectedGroups.map((group) => (\n
\n {group}\n
\n ));\n\n return (\n 1 ? \"s\" : \"\"}`}\n confirmText={\"Delete\"}\n isOpen={deleteOpen}\n titleIcon={}\n isLoading={deleteLoading}\n onConfirm={onDeleteGroups}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete the following{\" \"}\n {selectedGroups.length === 1 ? \"\" : selectedGroups.length} group\n {selectedGroups.length > 1 ? \"s?\" : \"?\"}\n {renderGroups}\n \n }\n />\n );\n};\n\nexport default DeleteGroup;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { AddMembersToGroupIcon, Button, FormLayout, Grid, ReadBox } from \"mds\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { encodeURLString } from \"../../../common/utils\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport UsersSelectors from \"./UsersSelectors\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\n\ntype UserPickerModalProps = {\n title?: string;\n preSelectedUsers?: string[];\n selectedGroup?: string;\n open: boolean;\n onClose: () => void;\n onSaveClick: () => void;\n groupStatus?: string;\n};\n\nconst AddGroupMember = ({\n title = \"\",\n groupStatus = \"enabled\",\n preSelectedUsers = [],\n selectedGroup = \"\",\n open,\n onClose,\n}: UserPickerModalProps) => {\n const dispatch = useAppDispatch();\n const [selectedUsers, setSelectedUsers] = useState(preSelectedUsers);\n\n function addMembersToGroup() {\n return api.group\n .updateGroup(encodeURLString(selectedGroup), {\n members: selectedUsers,\n status: groupStatus,\n })\n .then(() => {\n onClose();\n })\n .catch((err) => {\n onClose();\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n\n return (\n }\n >\n \n \n {selectedGroup}\n \n \n \n \n {\n setSelectedUsers(preSelectedUsers);\n }}\n label={\"Reset\"}\n />\n\n {\n addMembersToGroup();\n }}\n label={\"Save\"}\n />\n \n \n );\n};\n\nexport default AddGroupMember;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useNavigate, useParams } from \"react-router-dom\";\nimport {\n AddIcon,\n BackLink,\n Box,\n Button,\n DataTable,\n Grid,\n GroupsIcon,\n IAMPoliciesIcon,\n PageLayout,\n ScreenTitle,\n SectionTitle,\n Switch,\n Tabs,\n TrashIcon,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { Group } from \"api/consoleApi\";\nimport {\n addUserToGroupPermissions,\n CONSOLE_UI_RESOURCE,\n createGroupPermissions,\n editGroupMembersPermissions,\n enableDisableGroupPermissions,\n getGroupPermissions,\n IAM_PAGES,\n listUsersPermissions,\n permissionTooltipHelper,\n setGroupPoliciesPermissions,\n viewPolicyPermissions,\n viewUserPermissions,\n} from \"../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../common/SecureComponent\";\nimport { decodeURLString, encodeURLString } from \"../../../common/utils\";\nimport { setHelpName, setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport SetPolicy from \"../Policies/SetPolicy\";\nimport AddGroupMember from \"./AddGroupMember\";\nimport DeleteGroup from \"./DeleteGroup\";\nimport SearchBox from \"../Common/SearchBox\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport HelpMenu from \"../HelpMenu\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\n\nexport const formatPolicy = (policy: string = \"\"): string[] => {\n if (policy.length <= 0) return [];\n return policy.split(\",\");\n};\n\nconst GroupsDetails = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const params = useParams();\n\n const [groupDetails, setGroupDetails] = useState({});\n const [policyOpen, setPolicyOpen] = useState(false);\n const [usersOpen, setUsersOpen] = useState(false);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [memberFilter, setMemberFilter] = useState(\"\");\n const [currentTab, setCurrentTab] = useState(\"members\");\n\n const groupName = decodeURLString(params.groupName || \"\");\n\n const { members = [], policy = \"\", status: groupEnabled } = groupDetails;\n\n const filteredMembers = members.filter((elementItem) =>\n elementItem.includes(memberFilter),\n );\n\n const viewUser = hasPermission(\n CONSOLE_UI_RESOURCE,\n viewUserPermissions,\n true,\n );\n\n useEffect(() => {\n dispatch(setHelpName(\"group_details\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (groupName) {\n fetchGroupInfo();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [groupName]);\n\n const groupPolicies = formatPolicy(policy);\n const isGroupEnabled = groupEnabled === \"enabled\";\n const memberActionText = members.length > 0 ? \"Edit Members\" : \"Add Members\";\n\n const getGroupDetails = hasPermission(\n CONSOLE_UI_RESOURCE,\n getGroupPermissions,\n );\n\n const canEditGroupMembers = hasPermission(\n CONSOLE_UI_RESOURCE,\n editGroupMembersPermissions,\n true,\n );\n\n const canSetPolicies = hasPermission(\n CONSOLE_UI_RESOURCE,\n setGroupPoliciesPermissions,\n true,\n );\n\n const canViewPolicy = hasPermission(\n CONSOLE_UI_RESOURCE,\n viewPolicyPermissions,\n true,\n );\n\n function fetchGroupInfo() {\n if (getGroupDetails) {\n api.group\n .groupInfo(encodeURLString(groupName))\n .then((res) => {\n setGroupDetails(res.data);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setGroupDetails({});\n });\n }\n }\n\n function toggleGroupStatus(nextStatus: boolean) {\n return api.group\n .updateGroup(encodeURLString(groupName), {\n members: members,\n status: nextStatus ? \"enabled\" : \"disabled\",\n })\n .then(() => {\n fetchGroupInfo();\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n\n const groupsTabContent = (\n {\n dispatch(setHelpName(\"groups_members\"));\n }}\n >\n \n {\n setMemberFilter(searchText);\n }}\n value={memberFilter}\n sx={{\n maxWidth: 280,\n }}\n />\n \n \n }\n onClick={() => {\n setUsersOpen(true);\n }}\n disabled={!canEditGroupMembers}\n />\n \n \n \n }\n >\n Members\n \n \n \n \n {\n navigate(`${IAM_PAGES.USERS}/${encodeURLString(userName)}`);\n },\n disableButtonFunction: () => !viewUser,\n },\n ]}\n columns={[{ label: \"Access Key\" }]}\n selectedItems={[]}\n isLoading={false}\n records={filteredMembers}\n entityName=\"Users\"\n />\n \n \n \n \n );\n\n const policiesTabContent = (\n \n {\n dispatch(setHelpName(\"groups_policies\"));\n }}\n >\n \n }\n onClick={() => {\n setPolicyOpen(true);\n }}\n disabled={!canSetPolicies}\n />\n \n }\n >\n Policies\n \n \n \n \n {\n navigate(`${IAM_PAGES.POLICIES}/${encodeURLString(policy)}`);\n },\n disableButtonFunction: () => !canViewPolicy,\n },\n ]}\n columns={[{ label: \"Policy\" }]}\n isLoading={false}\n records={groupPolicies}\n entityName=\"Policies\"\n />\n \n \n \n );\n\n return (\n \n {policyOpen ? (\n {\n setPolicyOpen(false);\n fetchGroupInfo();\n dispatch(setSelectedPolicies([]));\n }}\n />\n ) : null}\n\n {usersOpen ? (\n {}}\n title={memberActionText}\n groupStatus={groupEnabled}\n preSelectedUsers={members}\n open={usersOpen}\n onClose={() => {\n setUsersOpen(false);\n fetchGroupInfo();\n }}\n />\n ) : null}\n\n {deleteOpen && (\n {\n setDeleteOpen(false);\n if (isDelSuccess) {\n navigate(IAM_PAGES.GROUPS);\n }\n }}\n />\n )}\n \n navigate(IAM_PAGES.GROUPS)}\n />\n \n }\n actions={}\n />\n \n \n \n \n \n }\n title={groupName}\n subTitle={null}\n bottomBorder\n actions={\n \n Group Status:\n \n {isGroupEnabled ? \"Enabled\" : \"Disabled\"}\n \n \n \n {\n toggleGroupStatus(!isGroupEnabled);\n }}\n switchOnly\n />\n \n \n\n \n }\n onClick={() => {\n setDeleteOpen(true);\n }}\n />\n \n \n }\n sx={{ marginBottom: 15 }}\n />\n \n\n \n \n \n \n \n );\n};\n\nexport default GroupsDetails;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useCallback, useEffect, useState, Fragment } from \"react\";\nimport get from \"lodash/get\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { Box, DataTable, Grid } from \"mds\";\nimport { LinearProgress } from \"@mui/material\";\nimport { usersSort } from \"../../../utils/sortFunctions\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport SearchBox from \"../Common/SearchBox\";\n\ninterface IGroupsProps {\n selectedUsers: string[];\n setSelectedUsers: any;\n editMode?: boolean;\n}\n\nconst UsersSelectors = ({\n selectedUsers,\n setSelectedUsers,\n editMode = false,\n}: IGroupsProps) => {\n const dispatch = useAppDispatch();\n //Local States\n const [records, setRecords] = useState([]);\n const [loading, isLoading] = useState(false);\n const [filter, setFilter] = useState(\"\");\n\n const fetchUsers = useCallback(() => {\n api.users\n .listUsers()\n .then((res) => {\n let users = get(res.data, \"users\", []);\n\n if (!users) {\n users = [];\n }\n\n setRecords(users.sort(usersSort));\n isLoading(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n isLoading(false);\n });\n }, [dispatch]);\n\n //Effects\n useEffect(() => {\n isLoading(true);\n }, []);\n\n useEffect(() => {\n if (loading) {\n fetchUsers();\n }\n }, [loading, fetchUsers]);\n\n const selUsers = !selectedUsers ? [] : selectedUsers;\n\n //Fetch Actions\n const selectionChanged = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selUsers]; // We clone the selectedGroups array\n\n if (checked) {\n // If the user has checked this field we need to push this to selectedGroupsList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n setSelectedUsers(elements);\n\n return elements;\n };\n\n const filteredRecords = records.filter((elementItem) =>\n elementItem.accessKey.includes(filter),\n );\n\n return (\n \n \n {loading && }\n {records?.length > 0 ? (\n \n \n \n \n \n \n ) : (\n \n No Users to display\n \n )}\n \n \n );\n};\n\nexport default UsersSelectors;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { LinearProgress } from \"@mui/material\";\nimport { DataTable, Grid, Box } from \"mds\";\nimport { policySort } from \"../../../utils/sortFunctions\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"../../../api\";\nimport {\n Error,\n HttpResponse,\n ListPoliciesResponse,\n} from \"../../../api/consoleApi\";\n\ninterface ISelectPolicyProps {\n selectedPolicy?: string[];\n noTitle?: boolean;\n}\n\nconst PolicySelectors = ({ noTitle = false }: ISelectPolicyProps) => {\n const dispatch = useAppDispatch();\n // Local State\n const [records, setRecords] = useState([]);\n const [loading, isLoading] = useState(false);\n const [filter, setFilter] = useState(\"\");\n\n const currentPolicies = useSelector(\n (state: AppState) => state.createUser.selectedPolicies,\n );\n\n const fetchPolicies = useCallback(() => {\n isLoading(true);\n\n api.policies\n .listPolicies()\n .then((res: HttpResponse) => {\n const policies = res.data.policies ?? [];\n isLoading(false);\n setRecords(policies.sort(policySort));\n })\n .catch((err: ErrorResponseHandler) => {\n isLoading(false);\n dispatch(setModalErrorSnackMessage(err));\n });\n }, [dispatch]);\n\n //Effects\n useEffect(() => {\n isLoading(true);\n }, []);\n\n useEffect(() => {\n if (loading) {\n fetchPolicies();\n }\n }, [loading, fetchPolicies]);\n\n const selectionChanged = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...currentPolicies]; // We clone the checkedUsers array\n\n if (checked) {\n // If the user has checked this field we need to push this to checkedUsersList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n // remove empty values\n elements = elements.filter((element) => element !== \"\");\n\n dispatch(setSelectedPolicies(elements));\n };\n\n const filteredRecords = records.filter((elementItem) =>\n elementItem.name.includes(filter),\n );\n\n return (\n \n {loading && }\n {records.length > 0 ? (\n \n \n {\n setFilter(value);\n }}\n value={filter}\n label={!noTitle ? \"Assign Policies\" : \"\"}\n />\n \n\n \n \n ) : (\n \n No Policies Available\n \n )}\n \n );\n};\n\nexport default PolicySelectors;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport { Button, FormLayout, ReadBox, Grid } from \"mds\";\nimport { LinearProgress } from \"@mui/material\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { encodeURLString } from \"../../../common/utils\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { User } from \"../Users/types\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\nimport PolicySelectors from \"./PolicySelectors\";\nimport api from \"../../../common/api\";\n\ninterface ISetPolicyProps {\n closeModalAndRefresh: () => void;\n selectedUser: User | null;\n selectedGroups: string[] | null;\n open: boolean;\n}\n\nconst SetPolicy = ({\n closeModalAndRefresh,\n selectedUser,\n selectedGroups,\n open,\n}: ISetPolicyProps) => {\n const dispatch = useAppDispatch();\n //Local States\n const [loading, setLoading] = useState(false);\n const [actualPolicy, setActualPolicy] = useState([]);\n const [selectedPolicy, setSelectedPolicy] = useState([]);\n const currentPolicies = useSelector(\n (state: AppState) => state.createUser.selectedPolicies,\n );\n const setPolicyAction = () => {\n let users = null;\n let groups = null;\n if (selectedGroups !== null) {\n groups = selectedGroups;\n } else {\n if (selectedUser !== null) {\n users = [selectedUser.accessKey] || [\" \"];\n }\n }\n\n setLoading(true);\n\n api\n .invoke(\"PUT\", `/api/v1/set-policy-multi`, {\n name: currentPolicies,\n groups: groups,\n users: users,\n })\n .then(() => {\n setLoading(false);\n closeModalAndRefresh();\n })\n .catch((err: ErrorResponseHandler) => {\n setLoading(false);\n dispatch(setModalErrorSnackMessage(err));\n });\n };\n\n const fetchGroupInformation = () => {\n if (selectedGroups?.length === 1) {\n api\n .invoke(\"GET\", `/api/v1/group/${encodeURLString(selectedGroups[0])}`)\n .then((res: any) => {\n const groupPolicy: String = get(res, \"policy\", \"\");\n setActualPolicy(groupPolicy.split(\",\"));\n setSelectedPolicy(groupPolicy.split(\",\"));\n dispatch(setSelectedPolicies(groupPolicy.split(\",\")));\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setModalErrorSnackMessage(err));\n setLoading(false);\n });\n }\n };\n\n const resetSelection = () => {\n setSelectedPolicy(actualPolicy);\n dispatch(setSelectedPolicies(actualPolicy));\n };\n\n useEffect(() => {\n if (open) {\n if (selectedGroups?.length === 1) {\n fetchGroupInformation();\n return;\n }\n\n const userPolicy: string[] = get(selectedUser, \"policy\", []);\n setActualPolicy(userPolicy);\n setSelectedPolicy(userPolicy);\n dispatch(setSelectedPolicies(userPolicy));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open, selectedGroups?.length, selectedUser]);\n\n const userName = get(selectedUser, \"accessKey\", \"\");\n\n return (\n {\n closeModalAndRefresh();\n }}\n modalOpen={open}\n title=\"Set Policies\"\n >\n \n {(selectedGroups?.length === 1 || selectedUser != null) && (\n \n \n {selectedGroups !== null ? selectedGroups[0] : userName}\n \n \n {actualPolicy.join(\", \")}\n \n \n )}\n {selectedGroups && selectedGroups?.length > 1 && (\n \n {selectedGroups.join(\", \")}\n \n )}\n \n \n \n \n \n \n \n \n {loading && (\n \n \n \n )}\n \n );\n};\n\nexport default SetPolicy;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { Policy, User } from \"api/consoleApi\";\n\ninterface policyDetailsInterface {\n policy: string;\n}\n\nexport const usersSort = (a: User, b: User) => {\n if (a.accessKey && b.accessKey) {\n if (a.accessKey > b.accessKey) {\n return 1;\n }\n if (a.accessKey < b.accessKey) {\n return -1;\n }\n }\n // a must be equal to b\n return 0;\n};\n\nexport const policySort = (a: Policy, b: Policy) => {\n if (a.name! > b.name!) {\n return 1;\n }\n if (a.name! < b.name!) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n\nexport const stringSort = (a: string, b: string) => {\n if (a > b) {\n return 1;\n }\n if (a < b) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n\nexport const policyDetailsSort = (\n a: policyDetailsInterface,\n b: policyDetailsInterface,\n) => {\n if (a.policy > b.policy) {\n return 1;\n }\n if (a.policy < b.policy) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n"],"names":["_ref","selectedGroups","deleteOpen","closeDeleteModalAndRefresh","dispatch","useAppDispatch","_useApi","useApi","err","setErrorSnackMessage","_useApi2","_slicedToArray","deleteLoading","invokeDeleteApi","renderGroups","map","group","_jsx","children","ConfirmDialog","title","concat","length","confirmText","isOpen","titleIcon","ConfirmDeleteIcon","isLoading","onConfirm","_step","_iterator","_createForOfIteratorHelper","s","n","done","value","encodeURLString","e","f","onClose","confirmationContent","_jsxs","Fragment","_ref$title","_ref$groupStatus","groupStatus","_ref$preSelectedUsers","preSelectedUsers","_ref$selectedGroup","selectedGroup","open","_useState","useState","_useState2","selectedUsers","setSelectedUsers","ModalWrapper","modalOpen","AddMembersToGroupIcon","FormLayout","withBorders","containerPadding","ReadBox","label","sx","width","UsersSelectors","editMode","Grid","item","xs","modalStyleUtils","modalButtonBar","Button","id","type","variant","onClick","api","updateGroup","members","status","then","catch","setModalErrorSnackMessage","errorToHandler","error","formatPolicy","policy","arguments","undefined","split","navigate","useNavigate","params","useParams","groupDetails","setGroupDetails","_useState3","_useState4","policyOpen","setPolicyOpen","_useState5","_useState6","usersOpen","setUsersOpen","_useState7","_useState8","setDeleteOpen","_useState9","_useState10","memberFilter","setMemberFilter","_useState11","_useState12","currentTab","setCurrentTab","groupName","decodeURLString","_groupDetails$members","_groupDetails$policy","groupEnabled","filteredMembers","filter","elementItem","includes","viewUser","hasPermission","CONSOLE_UI_RESOURCE","viewUserPermissions","useEffect","setHelpName","fetchGroupInfo","groupPolicies","isGroupEnabled","memberActionText","getGroupDetails","getGroupPermissions","canEditGroupMembers","editGroupMembersPermissions","canSetPolicies","setGroupPoliciesPermissions","canViewPolicy","viewPolicyPermissions","groupInfo","res","data","groupsTabContent","Box","onMouseMove","SectionTitle","separator","marginBottom","actions","display","gap","SearchBox","placeholder","onChange","searchText","maxWidth","SecureComponent","resource","scopes","addUserToGroupPermissions","errorProps","disabled","TooltipWrapper","tooltip","permissionTooltipHelper","createGroupPermissions","icon","AddIcon","listUsersPermissions","DataTable","itemActions","userName","IAM_PAGES","USERS","disableButtonFunction","columns","selectedItems","records","entityName","policiesTabContent","IAMPoliciesIcon","POLICIES","SetPolicy","selectedUser","closeModalAndRefresh","setSelectedPolicies","AddGroupMember","onSaveClick","DeleteGroup","isDelSuccess","GROUPS","PageHeaderWrapper","BackLink","HelpMenu","PageLayout","ScreenTitle","GroupsIcon","subTitle","bottomBorder","fontSize","alignItems","style","fontWeight","enableDisableGroupPermissions","matchAll","Switch","indicatorLabels","checked","name","nextStatus","switchOnly","TrashIcon","Tabs","options","tabConfig","content","currentTabOrPath","onTabClick","_ref$editMode","setRecords","loading","setFilter","fetchUsers","useCallback","users","listUsers","get","sort","usersSort","selUsers","filteredRecords","accessKey","className","LinearProgress","elementKey","onSelect","targetD","target","elements","_toConsumableArray","push","element","idField","customPaperHeight","textAlign","padding","_ref$noTitle","noTitle","currentPolicies","useSelector","state","createUser","selectedPolicies","fetchPolicies","policies","listPolicies","_res$data$policies","policySort","setLoading","actualPolicy","setActualPolicy","selectedPolicy","setSelectedPolicy","invoke","groupPolicy","userPolicy","join","PolicySelectors","color","groups","a","b","stringSort","policyDetailsSort"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2074.7e79443f.chunk.js b/portal-ui/build/static/js/2074.7e79443f.chunk.js new file mode 100644 index 000000000..c361e6547 --- /dev/null +++ b/portal-ui/build/static/js/2074.7e79443f.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2074,8896,9134],{88896:function(e,n,t){t.r(n);var s=t(37762),i=t(29439),r=t(72791),l=t(29945),o=t(45248),c=t(87995),a=t(81551),u=t(23508),d=t(9505),x=t(80184);n.default=function(e){var n=e.selectedGroups,t=e.deleteOpen,f=e.closeDeleteModalAndRefresh,h=(0,a.TL)(),p=(0,d.Z)((function(){return f(!0)}),(function(e){h((0,c.Ih)(e)),f(!1)})),m=(0,i.Z)(p,2),j=m[0],v=m[1];if(!n)return null;var g=n.map((function(e){return(0,x.jsx)("div",{children:(0,x.jsx)("b",{children:e})},e)}));return(0,x.jsx)(u.Z,{title:"Delete Group".concat(n.length>1?"s":""),confirmText:"Delete",isOpen:t,titleIcon:(0,x.jsx)(l.NvT,{}),isLoading:j,onConfirm:function(){var e,t=(0,s.Z)(n);try{for(t.s();!(e=t.n()).done;){var i=e.value;v("DELETE","/api/v1/group/".concat((0,o.LL)(i)))}}catch(r){t.e(r)}finally{t.f()}},onClose:function(){return f(!1)},confirmationContent:(0,x.jsxs)(r.Fragment,{children:["Are you sure you want to delete the following"," ",1===n.length?"":n.length," group",n.length>1?"s?":"?",g]})})}},22074:function(e,n,t){t.r(n),t.d(n,{default:function(){return L},formatPolicy:function(){return k}});var s=t(29439),i=t(72791),r=t(57689),l=t(29945),o=t(31776),c=t(82342),a=t(56087),u=t(38442),d=t(45248),x=t(87995),f=t(81551),h=t(74616),p=t(39134),m=t(23814),j=t(40228),v=t(56028),g=t(80184),b=function(e){var n=e.title,t=void 0===n?"":n,r=e.groupStatus,a=void 0===r?"enabled":r,u=e.preSelectedUsers,h=void 0===u?[]:u,p=e.selectedGroup,b=void 0===p?"":p,Z=e.open,y=e.onClose,S=(0,f.TL)(),C=(0,i.useState)(h),P=(0,s.Z)(C,2),k=P[0],L=P[1];return(0,g.jsxs)(v.Z,{modalOpen:Z,onClose:y,title:t,titleIcon:(0,g.jsx)(l.ZmA,{}),children:[(0,g.jsxs)(l.ltY,{withBorders:!1,containerPadding:!1,children:[(0,g.jsx)(l.bSr,{label:"Selected Group",sx:{width:"100%"},children:b}),(0,g.jsx)(j.Z,{selectedUsers:k,setSelectedUsers:L,editMode:!b})]}),(0,g.jsxs)(l.rjZ,{item:!0,xs:12,sx:m.ID.modalButtonBar,children:[(0,g.jsx)(l.zxk,{id:"reset-add-group-member",type:"button",variant:"regular",onClick:function(){L(h)},label:"Reset"}),(0,g.jsx)(l.zxk,{id:"save-add-group-member",type:"button",variant:"callAction",onClick:function(){o.h.group.updateGroup((0,d.LL)(b),{members:k,status:a}).then((function(){y()})).catch((function(e){y(),S((0,x.zb)((0,c.g)(e.error)))}))},label:"Save"})]})]})},Z=t(88896),y=t(59114),S=t(27454),C=t(99670),P=t(47974),k=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e.length<=0?[]:e.split(",")},L=function(){var e=(0,f.TL)(),n=(0,r.s0)(),t=(0,r.UO)(),m=(0,i.useState)({}),j=(0,s.Z)(m,2),v=j[0],L=j[1],A=(0,i.useState)(!1),U=(0,s.Z)(A,2),w=U[0],G=U[1],F=(0,i.useState)(!1),K=(0,s.Z)(F,2),M=K[0],E=K[1],I=(0,i.useState)(!1),z=(0,s.Z)(I,2),N=z[0],T=z[1],D=(0,i.useState)(""),O=(0,s.Z)(D,2),B=O[0],R=O[1],Q=(0,i.useState)("members"),_=(0,s.Z)(Q,2),H=_[0],W=_[1],X=(0,d.IO)(t.groupName||""),Y=v.members,J=void 0===Y?[]:Y,V=v.policy,q=void 0===V?"":V,$=v.status,ee=J.filter((function(e){return e.includes(B)})),ne=(0,u.F)(a.C3,a.iw,!0);(0,i.useEffect)((function(){e((0,x.Sc)("group_details"))}),[]),(0,i.useEffect)((function(){X&&ae()}),[X]);var te=k(q),se="enabled"===$,ie=J.length>0?"Edit Members":"Add Members",re=(0,u.F)(a.C3,a.k_),le=(0,u.F)(a.C3,a.kt,!0),oe=(0,u.F)(a.C3,a.UA,!0),ce=(0,u.F)(a.C3,a.GD,!0);function ae(){re&&o.h.group.groupInfo((0,d.LL)(X)).then((function(e){L(e.data)})).catch((function(n){e((0,x.zb)((0,c.g)(n.error))),L({})}))}var ue=(0,g.jsxs)(l.xuv,{onMouseMove:function(){e((0,x.Sc)("groups_members"))},children:[(0,g.jsx)(l.NZf,{separator:!0,sx:{marginBottom:15},actions:(0,g.jsxs)(l.xuv,{sx:{display:"flex",gap:10},children:[(0,g.jsx)(y.Z,{placeholder:"Search members",onChange:function(e){R(e)},value:B,sx:{maxWidth:280}}),(0,g.jsx)(u.s,{resource:a.C3,scopes:a.uH,errorProps:{disabled:!0},children:(0,g.jsx)(S.Z,{tooltip:le?ie:(0,a.MK)(a.vN,"edit Group membership"),children:(0,g.jsx)(l.zxk,{id:"add-user-group",label:ie,variant:"callAction",icon:(0,g.jsx)(l.dtP,{}),onClick:function(){E(!0)},disabled:!le})})})]}),children:"Members"}),(0,g.jsx)(l.rjZ,{item:!0,xs:12,children:(0,g.jsx)(u.s,{resource:a.C3,scopes:a.Rs,errorProps:{disabled:!0},children:(0,g.jsx)(S.Z,{tooltip:ne?"":(0,a.MK)(a.iw,"view User details"),children:(0,g.jsx)(l.wQF,{itemActions:[{type:"view",onClick:function(e){n("".concat(a.gA.USERS,"/").concat((0,d.LL)(e)))},isDisabled:!ne}],columns:[{label:"Access Key"}],selectedItems:[],isLoading:!1,records:ee,entityName:"Users"})})})})]}),de=(0,g.jsxs)(i.Fragment,{children:[(0,g.jsx)(l.xuv,{onMouseMove:function(){e((0,x.Sc)("groups_policies"))},children:(0,g.jsx)(l.NZf,{separator:!0,sx:{marginBottom:15},actions:(0,g.jsx)(S.Z,{tooltip:oe?"Set Policies":(0,a.MK)(a.UA,"assign Policies"),children:(0,g.jsx)(l.zxk,{id:"set-policies",label:"Set Policies",variant:"callAction",icon:(0,g.jsx)(l.v42,{}),onClick:function(){G(!0)},disabled:!oe})}),children:"Policies"})}),(0,g.jsx)(l.rjZ,{item:!0,xs:12,children:(0,g.jsx)(S.Z,{tooltip:ce?"":(0,a.MK)(a.GD,"view Policy details"),children:(0,g.jsx)(l.wQF,{itemActions:[{type:"view",onClick:function(e){n("".concat(a.gA.POLICIES,"/").concat((0,d.LL)(e)))},isDisabled:!ce}],columns:[{label:"Policy"}],isLoading:!1,records:te,entityName:"Policies"})})})]});return(0,g.jsxs)(i.Fragment,{children:[w?(0,g.jsx)(p.default,{open:w,selectedGroups:[X],selectedUser:null,closeModalAndRefresh:function(){G(!1),ae(),e((0,h.ue)([]))}}):null,M?(0,g.jsx)(b,{selectedGroup:X,onSaveClick:function(){},title:ie,groupStatus:$,preSelectedUsers:J,open:M,onClose:function(){E(!1),ae()}}):null,N&&(0,g.jsx)(Z.default,{deleteOpen:N,selectedGroups:[X],closeDeleteModalAndRefresh:function(e){T(!1),e&&n(a.gA.GROUPS)}}),(0,g.jsx)(P.Z,{label:(0,g.jsx)(i.Fragment,{children:(0,g.jsx)(l.hbI,{label:"Groups",onClick:function(){return n(a.gA.GROUPS)}})}),actions:(0,g.jsx)(C.Z,{})}),(0,g.jsxs)(l.Xgh,{children:[(0,g.jsx)(l.rjZ,{item:!0,xs:12,children:(0,g.jsx)(l.UHn,{icon:(0,g.jsx)(i.Fragment,{children:(0,g.jsx)(l.wws,{width:40})}),title:X,subTitle:null,bottomBorder:!0,actions:(0,g.jsxs)(l.xuv,{sx:{display:"flex",fontSize:14,alignItems:"center",gap:15},children:[(0,g.jsx)("span",{children:"Group Status:"}),(0,g.jsx)("span",{id:"group-status-label",style:{fontWeight:"bold"},children:se?"Enabled":"Disabled"}),(0,g.jsx)(S.Z,{tooltip:(0,u.F)(a.C3,a.xh,!0)?"":(0,a.MK)(a.xh,"enable or disable Groups"),children:(0,g.jsx)(u.s,{resource:a.C3,scopes:a.xh,errorProps:{disabled:!0},matchAll:!0,children:(0,g.jsx)(l.rsf,{indicatorLabels:["Enabled","Disabled"],checked:se,value:"group_enabled",id:"group-status",name:"group-status",onChange:function(){var n;n=!se,o.h.group.updateGroup((0,d.LL)(X),{members:J,status:n?"enabled":"disabled"}).then((function(){ae()})).catch((function(n){e((0,x.zb)((0,c.g)(n.error)))}))},switchOnly:!0})})}),(0,g.jsx)(S.Z,{tooltip:"Delete Group",children:(0,g.jsx)(l.zxk,{id:"delete-user-group",variant:"secondary",icon:(0,g.jsx)(l.XHJ,{}),onClick:function(){T(!0)}})})]}),sx:{marginBottom:15}})}),(0,g.jsx)(l.rjZ,{item:!0,xs:12,children:(0,g.jsx)(l.mQc,{options:[{tabConfig:{id:"members",label:"Members"},content:ue},{tabConfig:{id:"policies",label:"Policies"},content:de}],currentTabOrPath:H,onTabClick:W})})]})]})}},40228:function(e,n,t){var s=t(93433),i=t(29439),r=t(72791),l=t(26181),o=t.n(l),c=t(31776),a=t(82342),u=t(29945),d=t(40986),x=t(21639),f=t(87995),h=t(81551),p=t(59114),m=t(80184);n.Z=function(e){var n=e.selectedUsers,t=e.setSelectedUsers,l=e.editMode,j=void 0!==l&&l,v=(0,h.TL)(),g=(0,r.useState)([]),b=(0,i.Z)(g,2),Z=b[0],y=b[1],S=(0,r.useState)(!1),C=(0,i.Z)(S,2),P=C[0],k=C[1],L=(0,r.useState)(""),A=(0,i.Z)(L,2),U=A[0],w=A[1],G=(0,r.useCallback)((function(){c.h.users.listUsers().then((function(e){var n=o()(e.data,"users",[]);n||(n=[]),y(n.sort(x.LQ)),k(!1)})).catch((function(e){v((0,f.zb)((0,a.g)(e.error))),k(!1)}))}),[v]);(0,r.useEffect)((function(){k(!0)}),[]),(0,r.useEffect)((function(){P&&G()}),[P,G]);var F=n||[],K=Z.filter((function(e){return e.accessKey.includes(U)}));return(0,m.jsx)(u.rjZ,{item:!0,xs:12,className:"inputItem",children:(0,m.jsxs)(u.xuv,{children:[P&&(0,m.jsx)(d.Z,{}),(null===Z||void 0===Z?void 0:Z.length)>0?(0,m.jsxs)(r.Fragment,{children:[(0,m.jsx)(u.rjZ,{item:!0,xs:12,className:"inputItem",children:(0,m.jsx)(p.Z,{label:j?"Edit Members":"Assign Users",placeholder:"Filter Users",onChange:w,value:U})}),(0,m.jsx)(u.wQF,{columns:[{label:"Access Key",elementKey:"accessKey"}],onSelect:function(e){var n=e.target,i=n.value,r=n.checked,l=(0,s.Z)(F);return r?l.push(i):l=l.filter((function(e){return e!==i})),t(l),l},selectedItems:F,isLoading:P,records:K,entityName:"Users",idField:"accessKey",customPaperHeight:"200px"})]}):(0,m.jsx)(u.xuv,{sx:{textAlign:"center",padding:"10px 0"},children:"No Users to display"})]})})}},58400:function(e,n,t){var s=t(93433),i=t(29439),r=t(72791),l=t(40986),o=t(29945),c=t(21639),a=t(59114),u=t(87995),d=t(81551),x=t(74616),f=t(78687),h=t(31776),p=t(80184);n.Z=function(e){var n=e.noTitle,t=void 0!==n&&n,m=(0,d.TL)(),j=(0,r.useState)([]),v=(0,i.Z)(j,2),g=v[0],b=v[1],Z=(0,r.useState)(!1),y=(0,i.Z)(Z,2),S=y[0],C=y[1],P=(0,r.useState)(""),k=(0,i.Z)(P,2),L=k[0],A=k[1],U=(0,f.v9)((function(e){return e.createUser.selectedPolicies})),w=(0,r.useCallback)((function(){C(!0),h.h.policies.listPolicies().then((function(e){var n,t=null!==(n=e.data.policies)&&void 0!==n?n:[];C(!1),b(t.sort(c.g4))})).catch((function(e){C(!1),m((0,u.zb)(e))}))}),[m]);(0,r.useEffect)((function(){C(!0)}),[]),(0,r.useEffect)((function(){S&&w()}),[S,w]);var G=g.filter((function(e){return e.name.includes(L)}));return(0,p.jsxs)(o.rjZ,{item:!0,xs:12,className:"inputItem",children:[S&&(0,p.jsx)(l.Z,{}),g.length>0?(0,p.jsxs)(r.Fragment,{children:[(0,p.jsx)(o.rjZ,{item:!0,xs:12,className:"inputItem",children:(0,p.jsx)(a.Z,{placeholder:"Start typing to search for a Policy",onChange:function(e){A(e)},value:L,label:t?"":"Assign Policies"})}),(0,p.jsx)(o.wQF,{columns:[{label:"Policy",elementKey:"name"}],onSelect:function(e){var n=e.target,t=n.value,i=n.checked,r=(0,s.Z)(U);i?r.push(t):r=r.filter((function(e){return e!==t})),r=r.filter((function(e){return""!==e})),m((0,x.ue)(r))},selectedItems:U,isLoading:S,records:G,entityName:"Policies",idField:"name",customPaperHeight:"200px"})]}):(0,p.jsx)(o.xuv,{sx:{textAlign:"center",padding:"10px 0"},children:"No Policies Available"})]})}},39134:function(e,n,t){t.r(n);var s=t(29439),i=t(72791),r=t(26181),l=t.n(r),o=t(78687),c=t(29945),a=t(40986),u=t(45248),d=t(87995),x=t(81551),f=t(23814),h=t(74616),p=t(56028),m=t(58400),j=t(81207),v=t(80184);n.default=function(e){var n=e.closeModalAndRefresh,t=e.selectedUser,r=e.selectedGroups,g=e.open,b=(0,x.TL)(),Z=(0,i.useState)(!1),y=(0,s.Z)(Z,2),S=y[0],C=y[1],P=(0,i.useState)([]),k=(0,s.Z)(P,2),L=k[0],A=k[1],U=(0,i.useState)([]),w=(0,s.Z)(U,2),G=w[0],F=w[1],K=(0,o.v9)((function(e){return e.createUser.selectedPolicies}));(0,i.useEffect)((function(){if(g){if(1===(null===r||void 0===r?void 0:r.length))return void(1===(null===r||void 0===r?void 0:r.length)&&j.Z.invoke("GET","/api/v1/group/".concat((0,u.LL)(r[0]))).then((function(e){var n=l()(e,"policy","");A(n.split(",")),F(n.split(",")),b((0,h.ue)(n.split(",")))})).catch((function(e){b((0,d.zb)(e)),C(!1)})));var e=l()(t,"policy",[]);A(e),F(e),b((0,h.ue)(e))}}),[g,null===r||void 0===r?void 0:r.length,t]);var M=l()(t,"accessKey","");return(0,v.jsxs)(p.Z,{onClose:function(){n()},modalOpen:g,title:"Set Policies",children:[(0,v.jsxs)(c.ltY,{withBorders:!1,containerPadding:!1,children:[(1===(null===r||void 0===r?void 0:r.length)||null!=t)&&(0,v.jsxs)(i.Fragment,{children:[(0,v.jsx)(c.bSr,{label:"Selected ".concat(null!==r?"Group":"User"),sx:{width:"100%"},children:null!==r?r[0]:M}),(0,v.jsx)(c.bSr,{label:"Current Policy",sx:{width:"100%"},children:L.join(", ")})]}),r&&(null===r||void 0===r?void 0:r.length)>1&&(0,v.jsx)(c.bSr,{label:"Selected Groups",sx:{width:"100%"},children:r.join(", ")}),(0,v.jsx)(c.rjZ,{item:!0,xs:12,children:(0,v.jsx)(m.Z,{selectedPolicy:G})})]}),(0,v.jsxs)(c.rjZ,{item:!0,xs:12,sx:f.ID.modalButtonBar,children:[(0,v.jsx)(c.zxk,{id:"reset",type:"button",variant:"regular",onClick:function(){F(L),b((0,h.ue)(L))},label:"Reset"}),(0,v.jsx)(c.zxk,{id:"save",type:"button",variant:"callAction",color:"primary",disabled:S,onClick:function(){var e=null,s=null;null!==r?s=r:null!==t&&(e=[t.accessKey]||0),C(!0),j.Z.invoke("PUT","/api/v1/set-policy-multi",{name:K,groups:s,users:e}).then((function(){C(!1),n()})).catch((function(e){C(!1),b((0,d.zb)(e))}))},label:"Save"})]}),S&&(0,v.jsx)(c.rjZ,{item:!0,xs:12,children:(0,v.jsx)(a.Z,{})})]})}},21639:function(e,n,t){t.d(n,{KE:function(){return l},LQ:function(){return s},V2:function(){return r},g4:function(){return i}});var s=function(e,n){if(e.accessKey&&n.accessKey){if(e.accessKey>n.accessKey)return 1;if(e.accessKeyn.name?1:e.namen?1:en.policy?1:e.policy.\n\nimport React, { Fragment } from \"react\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { encodeURLString } from \"../../../common/utils\";\nimport { setErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport ConfirmDialog from \"../Common/ModalWrapper/ConfirmDialog\";\nimport useApi from \"../Common/Hooks/useApi\";\n\ninterface IDeleteGroup {\n selectedGroups: string[];\n deleteOpen: boolean;\n closeDeleteModalAndRefresh: any;\n}\n\nconst DeleteGroup = ({\n selectedGroups,\n deleteOpen,\n closeDeleteModalAndRefresh,\n}: IDeleteGroup) => {\n const dispatch = useAppDispatch();\n const onDelSuccess = () => closeDeleteModalAndRefresh(true);\n const onDelError = (err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n closeDeleteModalAndRefresh(false);\n };\n const onClose = () => closeDeleteModalAndRefresh(false);\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n\n if (!selectedGroups) {\n return null;\n }\n const onDeleteGroups = () => {\n for (let group of selectedGroups) {\n invokeDeleteApi(\"DELETE\", `/api/v1/group/${encodeURLString(group)}`);\n }\n };\n\n const renderGroups = selectedGroups.map((group) => (\n
\n {group}\n
\n ));\n\n return (\n 1 ? \"s\" : \"\"}`}\n confirmText={\"Delete\"}\n isOpen={deleteOpen}\n titleIcon={}\n isLoading={deleteLoading}\n onConfirm={onDeleteGroups}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete the following{\" \"}\n {selectedGroups.length === 1 ? \"\" : selectedGroups.length} group\n {selectedGroups.length > 1 ? \"s?\" : \"?\"}\n {renderGroups}\n \n }\n />\n );\n};\n\nexport default DeleteGroup;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { AddMembersToGroupIcon, Button, FormLayout, Grid, ReadBox } from \"mds\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { encodeURLString } from \"../../../common/utils\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport UsersSelectors from \"./UsersSelectors\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\n\ntype UserPickerModalProps = {\n title?: string;\n preSelectedUsers?: string[];\n selectedGroup?: string;\n open: boolean;\n onClose: () => void;\n onSaveClick: () => void;\n groupStatus?: string;\n};\n\nconst AddGroupMember = ({\n title = \"\",\n groupStatus = \"enabled\",\n preSelectedUsers = [],\n selectedGroup = \"\",\n open,\n onClose,\n}: UserPickerModalProps) => {\n const dispatch = useAppDispatch();\n const [selectedUsers, setSelectedUsers] = useState(preSelectedUsers);\n\n function addMembersToGroup() {\n return api.group\n .updateGroup(encodeURLString(selectedGroup), {\n members: selectedUsers,\n status: groupStatus,\n })\n .then(() => {\n onClose();\n })\n .catch((err) => {\n onClose();\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n\n return (\n }\n >\n \n \n {selectedGroup}\n \n \n \n \n {\n setSelectedUsers(preSelectedUsers);\n }}\n label={\"Reset\"}\n />\n\n {\n addMembersToGroup();\n }}\n label={\"Save\"}\n />\n \n \n );\n};\n\nexport default AddGroupMember;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useNavigate, useParams } from \"react-router-dom\";\nimport {\n AddIcon,\n BackLink,\n Box,\n Button,\n DataTable,\n Grid,\n GroupsIcon,\n IAMPoliciesIcon,\n PageLayout,\n ScreenTitle,\n SectionTitle,\n Switch,\n Tabs,\n TrashIcon,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { Group } from \"api/consoleApi\";\nimport {\n addUserToGroupPermissions,\n CONSOLE_UI_RESOURCE,\n createGroupPermissions,\n editGroupMembersPermissions,\n enableDisableGroupPermissions,\n getGroupPermissions,\n IAM_PAGES,\n listUsersPermissions,\n permissionTooltipHelper,\n setGroupPoliciesPermissions,\n viewPolicyPermissions,\n viewUserPermissions,\n} from \"../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../common/SecureComponent\";\nimport { decodeURLString, encodeURLString } from \"../../../common/utils\";\nimport { setHelpName, setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport SetPolicy from \"../Policies/SetPolicy\";\nimport AddGroupMember from \"./AddGroupMember\";\nimport DeleteGroup from \"./DeleteGroup\";\nimport SearchBox from \"../Common/SearchBox\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport HelpMenu from \"../HelpMenu\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\n\nexport const formatPolicy = (policy: string = \"\"): string[] => {\n if (policy.length <= 0) return [];\n return policy.split(\",\");\n};\n\nconst GroupsDetails = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const params = useParams();\n\n const [groupDetails, setGroupDetails] = useState({});\n const [policyOpen, setPolicyOpen] = useState(false);\n const [usersOpen, setUsersOpen] = useState(false);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [memberFilter, setMemberFilter] = useState(\"\");\n const [currentTab, setCurrentTab] = useState(\"members\");\n\n const groupName = decodeURLString(params.groupName || \"\");\n\n const { members = [], policy = \"\", status: groupEnabled } = groupDetails;\n\n const filteredMembers = members.filter((elementItem) =>\n elementItem.includes(memberFilter),\n );\n\n const viewUser = hasPermission(\n CONSOLE_UI_RESOURCE,\n viewUserPermissions,\n true,\n );\n\n useEffect(() => {\n dispatch(setHelpName(\"group_details\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (groupName) {\n fetchGroupInfo();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [groupName]);\n\n const groupPolicies = formatPolicy(policy);\n const isGroupEnabled = groupEnabled === \"enabled\";\n const memberActionText = members.length > 0 ? \"Edit Members\" : \"Add Members\";\n\n const getGroupDetails = hasPermission(\n CONSOLE_UI_RESOURCE,\n getGroupPermissions,\n );\n\n const canEditGroupMembers = hasPermission(\n CONSOLE_UI_RESOURCE,\n editGroupMembersPermissions,\n true,\n );\n\n const canSetPolicies = hasPermission(\n CONSOLE_UI_RESOURCE,\n setGroupPoliciesPermissions,\n true,\n );\n\n const canViewPolicy = hasPermission(\n CONSOLE_UI_RESOURCE,\n viewPolicyPermissions,\n true,\n );\n\n function fetchGroupInfo() {\n if (getGroupDetails) {\n api.group\n .groupInfo(encodeURLString(groupName))\n .then((res) => {\n setGroupDetails(res.data);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setGroupDetails({});\n });\n }\n }\n\n function toggleGroupStatus(nextStatus: boolean) {\n return api.group\n .updateGroup(encodeURLString(groupName), {\n members: members,\n status: nextStatus ? \"enabled\" : \"disabled\",\n })\n .then(() => {\n fetchGroupInfo();\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n\n const groupsTabContent = (\n {\n dispatch(setHelpName(\"groups_members\"));\n }}\n >\n \n {\n setMemberFilter(searchText);\n }}\n value={memberFilter}\n sx={{\n maxWidth: 280,\n }}\n />\n \n \n }\n onClick={() => {\n setUsersOpen(true);\n }}\n disabled={!canEditGroupMembers}\n />\n \n \n \n }\n >\n Members\n \n \n \n \n {\n navigate(`${IAM_PAGES.USERS}/${encodeURLString(userName)}`);\n },\n isDisabled: !viewUser,\n },\n ]}\n columns={[{ label: \"Access Key\" }]}\n selectedItems={[]}\n isLoading={false}\n records={filteredMembers}\n entityName=\"Users\"\n />\n \n \n \n \n );\n\n const policiesTabContent = (\n \n {\n dispatch(setHelpName(\"groups_policies\"));\n }}\n >\n \n }\n onClick={() => {\n setPolicyOpen(true);\n }}\n disabled={!canSetPolicies}\n />\n \n }\n >\n Policies\n \n \n \n \n {\n navigate(`${IAM_PAGES.POLICIES}/${encodeURLString(policy)}`);\n },\n isDisabled: !canViewPolicy,\n },\n ]}\n columns={[{ label: \"Policy\" }]}\n isLoading={false}\n records={groupPolicies}\n entityName=\"Policies\"\n />\n \n \n \n );\n\n return (\n \n {policyOpen ? (\n {\n setPolicyOpen(false);\n fetchGroupInfo();\n dispatch(setSelectedPolicies([]));\n }}\n />\n ) : null}\n\n {usersOpen ? (\n {}}\n title={memberActionText}\n groupStatus={groupEnabled}\n preSelectedUsers={members}\n open={usersOpen}\n onClose={() => {\n setUsersOpen(false);\n fetchGroupInfo();\n }}\n />\n ) : null}\n\n {deleteOpen && (\n {\n setDeleteOpen(false);\n if (isDelSuccess) {\n navigate(IAM_PAGES.GROUPS);\n }\n }}\n />\n )}\n \n navigate(IAM_PAGES.GROUPS)}\n />\n \n }\n actions={}\n />\n \n \n \n \n \n }\n title={groupName}\n subTitle={null}\n bottomBorder\n actions={\n \n Group Status:\n \n {isGroupEnabled ? \"Enabled\" : \"Disabled\"}\n \n \n \n {\n toggleGroupStatus(!isGroupEnabled);\n }}\n switchOnly\n />\n \n \n\n \n }\n onClick={() => {\n setDeleteOpen(true);\n }}\n />\n \n \n }\n sx={{ marginBottom: 15 }}\n />\n \n\n \n \n \n \n \n );\n};\n\nexport default GroupsDetails;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useCallback, useEffect, useState, Fragment } from \"react\";\nimport get from \"lodash/get\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { Box, DataTable, Grid } from \"mds\";\nimport { LinearProgress } from \"@mui/material\";\nimport { usersSort } from \"../../../utils/sortFunctions\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport SearchBox from \"../Common/SearchBox\";\n\ninterface IGroupsProps {\n selectedUsers: string[];\n setSelectedUsers: any;\n editMode?: boolean;\n}\n\nconst UsersSelectors = ({\n selectedUsers,\n setSelectedUsers,\n editMode = false,\n}: IGroupsProps) => {\n const dispatch = useAppDispatch();\n //Local States\n const [records, setRecords] = useState([]);\n const [loading, isLoading] = useState(false);\n const [filter, setFilter] = useState(\"\");\n\n const fetchUsers = useCallback(() => {\n api.users\n .listUsers()\n .then((res) => {\n let users = get(res.data, \"users\", []);\n\n if (!users) {\n users = [];\n }\n\n setRecords(users.sort(usersSort));\n isLoading(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n isLoading(false);\n });\n }, [dispatch]);\n\n //Effects\n useEffect(() => {\n isLoading(true);\n }, []);\n\n useEffect(() => {\n if (loading) {\n fetchUsers();\n }\n }, [loading, fetchUsers]);\n\n const selUsers = !selectedUsers ? [] : selectedUsers;\n\n //Fetch Actions\n const selectionChanged = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selUsers]; // We clone the selectedGroups array\n\n if (checked) {\n // If the user has checked this field we need to push this to selectedGroupsList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n setSelectedUsers(elements);\n\n return elements;\n };\n\n const filteredRecords = records.filter((elementItem) =>\n elementItem.accessKey.includes(filter),\n );\n\n return (\n \n \n {loading && }\n {records?.length > 0 ? (\n \n \n \n \n \n \n ) : (\n \n No Users to display\n \n )}\n \n \n );\n};\n\nexport default UsersSelectors;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { LinearProgress } from \"@mui/material\";\nimport { DataTable, Grid, Box } from \"mds\";\nimport { policySort } from \"../../../utils/sortFunctions\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"../../../api\";\nimport {\n Error,\n HttpResponse,\n ListPoliciesResponse,\n} from \"../../../api/consoleApi\";\n\ninterface ISelectPolicyProps {\n selectedPolicy?: string[];\n noTitle?: boolean;\n}\n\nconst PolicySelectors = ({ noTitle = false }: ISelectPolicyProps) => {\n const dispatch = useAppDispatch();\n // Local State\n const [records, setRecords] = useState([]);\n const [loading, isLoading] = useState(false);\n const [filter, setFilter] = useState(\"\");\n\n const currentPolicies = useSelector(\n (state: AppState) => state.createUser.selectedPolicies,\n );\n\n const fetchPolicies = useCallback(() => {\n isLoading(true);\n\n api.policies\n .listPolicies()\n .then((res: HttpResponse) => {\n const policies = res.data.policies ?? [];\n isLoading(false);\n setRecords(policies.sort(policySort));\n })\n .catch((err: ErrorResponseHandler) => {\n isLoading(false);\n dispatch(setModalErrorSnackMessage(err));\n });\n }, [dispatch]);\n\n //Effects\n useEffect(() => {\n isLoading(true);\n }, []);\n\n useEffect(() => {\n if (loading) {\n fetchPolicies();\n }\n }, [loading, fetchPolicies]);\n\n const selectionChanged = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...currentPolicies]; // We clone the checkedUsers array\n\n if (checked) {\n // If the user has checked this field we need to push this to checkedUsersList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n // remove empty values\n elements = elements.filter((element) => element !== \"\");\n\n dispatch(setSelectedPolicies(elements));\n };\n\n const filteredRecords = records.filter((elementItem) =>\n elementItem.name.includes(filter),\n );\n\n return (\n \n {loading && }\n {records.length > 0 ? (\n \n \n {\n setFilter(value);\n }}\n value={filter}\n label={!noTitle ? \"Assign Policies\" : \"\"}\n />\n \n\n \n \n ) : (\n \n No Policies Available\n \n )}\n \n );\n};\n\nexport default PolicySelectors;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport { Button, FormLayout, ReadBox, Grid } from \"mds\";\nimport { LinearProgress } from \"@mui/material\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { encodeURLString } from \"../../../common/utils\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { User } from \"../Users/types\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\nimport PolicySelectors from \"./PolicySelectors\";\nimport api from \"../../../common/api\";\n\ninterface ISetPolicyProps {\n closeModalAndRefresh: () => void;\n selectedUser: User | null;\n selectedGroups: string[] | null;\n open: boolean;\n}\n\nconst SetPolicy = ({\n closeModalAndRefresh,\n selectedUser,\n selectedGroups,\n open,\n}: ISetPolicyProps) => {\n const dispatch = useAppDispatch();\n //Local States\n const [loading, setLoading] = useState(false);\n const [actualPolicy, setActualPolicy] = useState([]);\n const [selectedPolicy, setSelectedPolicy] = useState([]);\n const currentPolicies = useSelector(\n (state: AppState) => state.createUser.selectedPolicies,\n );\n const setPolicyAction = () => {\n let users = null;\n let groups = null;\n if (selectedGroups !== null) {\n groups = selectedGroups;\n } else {\n if (selectedUser !== null) {\n users = [selectedUser.accessKey] || [\" \"];\n }\n }\n\n setLoading(true);\n\n api\n .invoke(\"PUT\", `/api/v1/set-policy-multi`, {\n name: currentPolicies,\n groups: groups,\n users: users,\n })\n .then(() => {\n setLoading(false);\n closeModalAndRefresh();\n })\n .catch((err: ErrorResponseHandler) => {\n setLoading(false);\n dispatch(setModalErrorSnackMessage(err));\n });\n };\n\n const fetchGroupInformation = () => {\n if (selectedGroups?.length === 1) {\n api\n .invoke(\"GET\", `/api/v1/group/${encodeURLString(selectedGroups[0])}`)\n .then((res: any) => {\n const groupPolicy: String = get(res, \"policy\", \"\");\n setActualPolicy(groupPolicy.split(\",\"));\n setSelectedPolicy(groupPolicy.split(\",\"));\n dispatch(setSelectedPolicies(groupPolicy.split(\",\")));\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setModalErrorSnackMessage(err));\n setLoading(false);\n });\n }\n };\n\n const resetSelection = () => {\n setSelectedPolicy(actualPolicy);\n dispatch(setSelectedPolicies(actualPolicy));\n };\n\n useEffect(() => {\n if (open) {\n if (selectedGroups?.length === 1) {\n fetchGroupInformation();\n return;\n }\n\n const userPolicy: string[] = get(selectedUser, \"policy\", []);\n setActualPolicy(userPolicy);\n setSelectedPolicy(userPolicy);\n dispatch(setSelectedPolicies(userPolicy));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open, selectedGroups?.length, selectedUser]);\n\n const userName = get(selectedUser, \"accessKey\", \"\");\n\n return (\n {\n closeModalAndRefresh();\n }}\n modalOpen={open}\n title=\"Set Policies\"\n >\n \n {(selectedGroups?.length === 1 || selectedUser != null) && (\n \n \n {selectedGroups !== null ? selectedGroups[0] : userName}\n \n \n {actualPolicy.join(\", \")}\n \n \n )}\n {selectedGroups && selectedGroups?.length > 1 && (\n \n {selectedGroups.join(\", \")}\n \n )}\n \n \n \n \n \n \n \n \n {loading && (\n \n \n \n )}\n \n );\n};\n\nexport default SetPolicy;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { Policy, User } from \"api/consoleApi\";\n\ninterface policyDetailsInterface {\n policy: string;\n}\n\nexport const usersSort = (a: User, b: User) => {\n if (a.accessKey && b.accessKey) {\n if (a.accessKey > b.accessKey) {\n return 1;\n }\n if (a.accessKey < b.accessKey) {\n return -1;\n }\n }\n // a must be equal to b\n return 0;\n};\n\nexport const policySort = (a: Policy, b: Policy) => {\n if (a.name! > b.name!) {\n return 1;\n }\n if (a.name! < b.name!) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n\nexport const stringSort = (a: string, b: string) => {\n if (a > b) {\n return 1;\n }\n if (a < b) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n\nexport const policyDetailsSort = (\n a: policyDetailsInterface,\n b: policyDetailsInterface,\n) => {\n if (a.policy > b.policy) {\n return 1;\n }\n if (a.policy < b.policy) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n"],"names":["_ref","selectedGroups","deleteOpen","closeDeleteModalAndRefresh","dispatch","useAppDispatch","_useApi","useApi","err","setErrorSnackMessage","_useApi2","_slicedToArray","deleteLoading","invokeDeleteApi","renderGroups","map","group","_jsx","children","ConfirmDialog","title","concat","length","confirmText","isOpen","titleIcon","ConfirmDeleteIcon","isLoading","onConfirm","_step","_iterator","_createForOfIteratorHelper","s","n","done","value","encodeURLString","e","f","onClose","confirmationContent","_jsxs","Fragment","_ref$title","_ref$groupStatus","groupStatus","_ref$preSelectedUsers","preSelectedUsers","_ref$selectedGroup","selectedGroup","open","_useState","useState","_useState2","selectedUsers","setSelectedUsers","ModalWrapper","modalOpen","AddMembersToGroupIcon","FormLayout","withBorders","containerPadding","ReadBox","label","sx","width","UsersSelectors","editMode","Grid","item","xs","modalStyleUtils","modalButtonBar","Button","id","type","variant","onClick","api","updateGroup","members","status","then","catch","setModalErrorSnackMessage","errorToHandler","error","formatPolicy","policy","arguments","undefined","split","navigate","useNavigate","params","useParams","groupDetails","setGroupDetails","_useState3","_useState4","policyOpen","setPolicyOpen","_useState5","_useState6","usersOpen","setUsersOpen","_useState7","_useState8","setDeleteOpen","_useState9","_useState10","memberFilter","setMemberFilter","_useState11","_useState12","currentTab","setCurrentTab","groupName","decodeURLString","_groupDetails$members","_groupDetails$policy","groupEnabled","filteredMembers","filter","elementItem","includes","viewUser","hasPermission","CONSOLE_UI_RESOURCE","viewUserPermissions","useEffect","setHelpName","fetchGroupInfo","groupPolicies","isGroupEnabled","memberActionText","getGroupDetails","getGroupPermissions","canEditGroupMembers","editGroupMembersPermissions","canSetPolicies","setGroupPoliciesPermissions","canViewPolicy","viewPolicyPermissions","groupInfo","res","data","groupsTabContent","Box","onMouseMove","SectionTitle","separator","marginBottom","actions","display","gap","SearchBox","placeholder","onChange","searchText","maxWidth","SecureComponent","resource","scopes","addUserToGroupPermissions","errorProps","disabled","TooltipWrapper","tooltip","permissionTooltipHelper","createGroupPermissions","icon","AddIcon","listUsersPermissions","DataTable","itemActions","userName","IAM_PAGES","USERS","isDisabled","columns","selectedItems","records","entityName","policiesTabContent","IAMPoliciesIcon","POLICIES","SetPolicy","selectedUser","closeModalAndRefresh","setSelectedPolicies","AddGroupMember","onSaveClick","DeleteGroup","isDelSuccess","GROUPS","PageHeaderWrapper","BackLink","HelpMenu","PageLayout","ScreenTitle","GroupsIcon","subTitle","bottomBorder","fontSize","alignItems","style","fontWeight","enableDisableGroupPermissions","matchAll","Switch","indicatorLabels","checked","name","nextStatus","switchOnly","TrashIcon","Tabs","options","tabConfig","content","currentTabOrPath","onTabClick","_ref$editMode","setRecords","loading","setFilter","fetchUsers","useCallback","users","listUsers","get","sort","usersSort","selUsers","filteredRecords","accessKey","className","LinearProgress","elementKey","onSelect","targetD","target","elements","_toConsumableArray","push","element","idField","customPaperHeight","textAlign","padding","_ref$noTitle","noTitle","currentPolicies","useSelector","state","createUser","selectedPolicies","fetchPolicies","policies","listPolicies","_res$data$policies","policySort","setLoading","actualPolicy","setActualPolicy","selectedPolicy","setSelectedPolicy","invoke","groupPolicy","userPolicy","join","PolicySelectors","color","groups","a","b","stringSort","policyDetailsSort"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2260.71dd3e05.chunk.js.map b/portal-ui/build/static/js/2260.71dd3e05.chunk.js.map deleted file mode 100644 index 000d1b82d..000000000 --- a/portal-ui/build/static/js/2260.71dd3e05.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/2260.71dd3e05.chunk.js","mappings":"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","sources":["../node_modules/@mui/material/node_modules/@mui/base/useAutocomplete/useAutocomplete.js","../node_modules/@mui/material/internal/svg-icons/Close.js","../node_modules/@mui/material/Autocomplete/autocompleteClasses.js","../node_modules/@mui/material/Autocomplete/Autocomplete.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/ListSubheader/listSubheaderClasses.js","../node_modules/@mui/material/ListSubheader/ListSubheader.js","../node_modules/@mui/utils/esm/usePreviousProps.js"],"sourcesContent":["import _extends from \"@babel/runtime/helpers/esm/extends\";\n/* eslint-disable no-constant-condition */\nimport * as React from 'react';\nimport { unstable_setRef as setRef, unstable_useEventCallback as useEventCallback, unstable_useControlled as useControlled, unstable_useId as useId, usePreviousProps } from '@mui/utils';\n\n// https://stackoverflow.com/questions/990904/remove-accents-diacritics-in-a-string-in-javascript\n// Give up on IE11 support for this feature\nfunction stripDiacritics(string) {\n return typeof string.normalize !== 'undefined' ? string.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '') : string;\n}\nexport function createFilterOptions(config = {}) {\n const {\n ignoreAccents = true,\n ignoreCase = true,\n limit,\n matchFrom = 'any',\n stringify,\n trim = false\n } = config;\n return (options, {\n inputValue,\n getOptionLabel\n }) => {\n let input = trim ? inputValue.trim() : inputValue;\n if (ignoreCase) {\n input = input.toLowerCase();\n }\n if (ignoreAccents) {\n input = stripDiacritics(input);\n }\n const filteredOptions = !input ? options : options.filter(option => {\n let candidate = (stringify || getOptionLabel)(option);\n if (ignoreCase) {\n candidate = candidate.toLowerCase();\n }\n if (ignoreAccents) {\n candidate = stripDiacritics(candidate);\n }\n return matchFrom === 'start' ? candidate.indexOf(input) === 0 : candidate.indexOf(input) > -1;\n });\n return typeof limit === 'number' ? filteredOptions.slice(0, limit) : filteredOptions;\n };\n}\n\n// To replace with .findIndex() once we stop IE11 support.\nfunction findIndex(array, comp) {\n for (let i = 0; i < array.length; i += 1) {\n if (comp(array[i])) {\n return i;\n }\n }\n return -1;\n}\nconst defaultFilterOptions = createFilterOptions();\n\n// Number of options to jump in list box when `Page Up` and `Page Down` keys are used.\nconst pageSize = 5;\nconst defaultIsActiveElementInListbox = listboxRef => {\n var _listboxRef$current$p;\n return listboxRef.current !== null && ((_listboxRef$current$p = listboxRef.current.parentElement) == null ? void 0 : _listboxRef$current$p.contains(document.activeElement));\n};\nexport default function useAutocomplete(props) {\n const {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n unstable_isActiveElementInListbox = defaultIsActiveElementInListbox,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n unstable_classNamePrefix = 'Mui',\n autoComplete = false,\n autoHighlight = false,\n autoSelect = false,\n blurOnSelect = false,\n clearOnBlur = !props.freeSolo,\n clearOnEscape = false,\n componentName = 'useAutocomplete',\n defaultValue = props.multiple ? [] : null,\n disableClearable = false,\n disableCloseOnSelect = false,\n disabled: disabledProp,\n disabledItemsFocusable = false,\n disableListWrap = false,\n filterOptions = defaultFilterOptions,\n filterSelectedOptions = false,\n freeSolo = false,\n getOptionDisabled,\n getOptionLabel: getOptionLabelProp = option => {\n var _option$label;\n return (_option$label = option.label) != null ? _option$label : option;\n },\n groupBy,\n handleHomeEndKeys = !props.freeSolo,\n id: idProp,\n includeInputInList = false,\n inputValue: inputValueProp,\n isOptionEqualToValue = (option, value) => option === value,\n multiple = false,\n onChange,\n onClose,\n onHighlightChange,\n onInputChange,\n onOpen,\n open: openProp,\n openOnFocus = false,\n options,\n readOnly = false,\n selectOnFocus = !props.freeSolo,\n value: valueProp\n } = props;\n const id = useId(idProp);\n let getOptionLabel = getOptionLabelProp;\n getOptionLabel = option => {\n const optionLabel = getOptionLabelProp(option);\n if (typeof optionLabel !== 'string') {\n if (process.env.NODE_ENV !== 'production') {\n const erroneousReturn = optionLabel === undefined ? 'undefined' : `${typeof optionLabel} (${optionLabel})`;\n console.error(`MUI: The \\`getOptionLabel\\` method of ${componentName} returned ${erroneousReturn} instead of a string for ${JSON.stringify(option)}.`);\n }\n return String(optionLabel);\n }\n return optionLabel;\n };\n const ignoreFocus = React.useRef(false);\n const firstFocus = React.useRef(true);\n const inputRef = React.useRef(null);\n const listboxRef = React.useRef(null);\n const [anchorEl, setAnchorEl] = React.useState(null);\n const [focusedTag, setFocusedTag] = React.useState(-1);\n const defaultHighlighted = autoHighlight ? 0 : -1;\n const highlightedIndexRef = React.useRef(defaultHighlighted);\n const [value, setValueState] = useControlled({\n controlled: valueProp,\n default: defaultValue,\n name: componentName\n });\n const [inputValue, setInputValueState] = useControlled({\n controlled: inputValueProp,\n default: '',\n name: componentName,\n state: 'inputValue'\n });\n const [focused, setFocused] = React.useState(false);\n const resetInputValue = React.useCallback((event, newValue) => {\n // retain current `inputValue` if new option isn't selected and `clearOnBlur` is false\n // When `multiple` is enabled, `newValue` is an array of all selected items including the newly selected item\n const isOptionSelected = multiple ? value.length < newValue.length : newValue !== null;\n if (!isOptionSelected && !clearOnBlur) {\n return;\n }\n let newInputValue;\n if (multiple) {\n newInputValue = '';\n } else if (newValue == null) {\n newInputValue = '';\n } else {\n const optionLabel = getOptionLabel(newValue);\n newInputValue = typeof optionLabel === 'string' ? optionLabel : '';\n }\n if (inputValue === newInputValue) {\n return;\n }\n setInputValueState(newInputValue);\n if (onInputChange) {\n onInputChange(event, newInputValue, 'reset');\n }\n }, [getOptionLabel, inputValue, multiple, onInputChange, setInputValueState, clearOnBlur, value]);\n const [open, setOpenState] = useControlled({\n controlled: openProp,\n default: false,\n name: componentName,\n state: 'open'\n });\n const [inputPristine, setInputPristine] = React.useState(true);\n const inputValueIsSelectedValue = !multiple && value != null && inputValue === getOptionLabel(value);\n const popupOpen = open && !readOnly;\n const filteredOptions = popupOpen ? filterOptions(options.filter(option => {\n if (filterSelectedOptions && (multiple ? value : [value]).some(value2 => value2 !== null && isOptionEqualToValue(option, value2))) {\n return false;\n }\n return true;\n }),\n // we use the empty string to manipulate `filterOptions` to not filter any options\n // i.e. the filter predicate always returns true\n {\n inputValue: inputValueIsSelectedValue && inputPristine ? '' : inputValue,\n getOptionLabel\n }) : [];\n const previousProps = usePreviousProps({\n filteredOptions,\n value,\n inputValue\n });\n React.useEffect(() => {\n const valueChange = value !== previousProps.value;\n if (focused && !valueChange) {\n return;\n }\n\n // Only reset the input's value when freeSolo if the component's value changes.\n if (freeSolo && !valueChange) {\n return;\n }\n resetInputValue(null, value);\n }, [value, resetInputValue, focused, previousProps.value, freeSolo]);\n const listboxAvailable = open && filteredOptions.length > 0 && !readOnly;\n if (process.env.NODE_ENV !== 'production') {\n if (value !== null && !freeSolo && options.length > 0) {\n const missingValue = (multiple ? value : [value]).filter(value2 => !options.some(option => isOptionEqualToValue(option, value2)));\n if (missingValue.length > 0) {\n console.warn([`MUI: The value provided to ${componentName} is invalid.`, `None of the options match with \\`${missingValue.length > 1 ? JSON.stringify(missingValue) : JSON.stringify(missingValue[0])}\\`.`, 'You can use the `isOptionEqualToValue` prop to customize the equality test.'].join('\\n'));\n }\n }\n }\n const focusTag = useEventCallback(tagToFocus => {\n if (tagToFocus === -1) {\n inputRef.current.focus();\n } else {\n anchorEl.querySelector(`[data-tag-index=\"${tagToFocus}\"]`).focus();\n }\n });\n\n // Ensure the focusedTag is never inconsistent\n React.useEffect(() => {\n if (multiple && focusedTag > value.length - 1) {\n setFocusedTag(-1);\n focusTag(-1);\n }\n }, [value, multiple, focusedTag, focusTag]);\n function validOptionIndex(index, direction) {\n if (!listboxRef.current || index === -1) {\n return -1;\n }\n let nextFocus = index;\n while (true) {\n // Out of range\n if (direction === 'next' && nextFocus === filteredOptions.length || direction === 'previous' && nextFocus === -1) {\n return -1;\n }\n const option = listboxRef.current.querySelector(`[data-option-index=\"${nextFocus}\"]`);\n\n // Same logic as MenuList.js\n const nextFocusDisabled = disabledItemsFocusable ? false : !option || option.disabled || option.getAttribute('aria-disabled') === 'true';\n if (option && !option.hasAttribute('tabindex') || nextFocusDisabled) {\n // Move to the next element.\n nextFocus += direction === 'next' ? 1 : -1;\n } else {\n return nextFocus;\n }\n }\n }\n const setHighlightedIndex = useEventCallback(({\n event,\n index,\n reason = 'auto'\n }) => {\n highlightedIndexRef.current = index;\n\n // does the index exist?\n if (index === -1) {\n inputRef.current.removeAttribute('aria-activedescendant');\n } else {\n inputRef.current.setAttribute('aria-activedescendant', `${id}-option-${index}`);\n }\n if (onHighlightChange) {\n onHighlightChange(event, index === -1 ? null : filteredOptions[index], reason);\n }\n if (!listboxRef.current) {\n return;\n }\n const prev = listboxRef.current.querySelector(`[role=\"option\"].${unstable_classNamePrefix}-focused`);\n if (prev) {\n prev.classList.remove(`${unstable_classNamePrefix}-focused`);\n prev.classList.remove(`${unstable_classNamePrefix}-focusVisible`);\n }\n let listboxNode = listboxRef.current;\n if (listboxRef.current.getAttribute('role') !== 'listbox') {\n listboxNode = listboxRef.current.parentElement.querySelector('[role=\"listbox\"]');\n }\n\n // \"No results\"\n if (!listboxNode) {\n return;\n }\n if (index === -1) {\n listboxNode.scrollTop = 0;\n return;\n }\n const option = listboxRef.current.querySelector(`[data-option-index=\"${index}\"]`);\n if (!option) {\n return;\n }\n option.classList.add(`${unstable_classNamePrefix}-focused`);\n if (reason === 'keyboard') {\n option.classList.add(`${unstable_classNamePrefix}-focusVisible`);\n }\n\n // Scroll active descendant into view.\n // Logic copied from https://www.w3.org/WAI/content-assets/wai-aria-practices/patterns/combobox/examples/js/select-only.js\n //\n // Consider this API instead once it has a better browser support:\n // .scrollIntoView({ scrollMode: 'if-needed', block: 'nearest' });\n if (listboxNode.scrollHeight > listboxNode.clientHeight && reason !== 'mouse') {\n const element = option;\n const scrollBottom = listboxNode.clientHeight + listboxNode.scrollTop;\n const elementBottom = element.offsetTop + element.offsetHeight;\n if (elementBottom > scrollBottom) {\n listboxNode.scrollTop = elementBottom - listboxNode.clientHeight;\n } else if (element.offsetTop - element.offsetHeight * (groupBy ? 1.3 : 0) < listboxNode.scrollTop) {\n listboxNode.scrollTop = element.offsetTop - element.offsetHeight * (groupBy ? 1.3 : 0);\n }\n }\n });\n const changeHighlightedIndex = useEventCallback(({\n event,\n diff,\n direction = 'next',\n reason = 'auto'\n }) => {\n if (!popupOpen) {\n return;\n }\n const getNextIndex = () => {\n const maxIndex = filteredOptions.length - 1;\n if (diff === 'reset') {\n return defaultHighlighted;\n }\n if (diff === 'start') {\n return 0;\n }\n if (diff === 'end') {\n return maxIndex;\n }\n const newIndex = highlightedIndexRef.current + diff;\n if (newIndex < 0) {\n if (newIndex === -1 && includeInputInList) {\n return -1;\n }\n if (disableListWrap && highlightedIndexRef.current !== -1 || Math.abs(diff) > 1) {\n return 0;\n }\n return maxIndex;\n }\n if (newIndex > maxIndex) {\n if (newIndex === maxIndex + 1 && includeInputInList) {\n return -1;\n }\n if (disableListWrap || Math.abs(diff) > 1) {\n return maxIndex;\n }\n return 0;\n }\n return newIndex;\n };\n const nextIndex = validOptionIndex(getNextIndex(), direction);\n setHighlightedIndex({\n index: nextIndex,\n reason,\n event\n });\n\n // Sync the content of the input with the highlighted option.\n if (autoComplete && diff !== 'reset') {\n if (nextIndex === -1) {\n inputRef.current.value = inputValue;\n } else {\n const option = getOptionLabel(filteredOptions[nextIndex]);\n inputRef.current.value = option;\n\n // The portion of the selected suggestion that has not been typed by the user,\n // a completion string, appears inline after the input cursor in the textbox.\n const index = option.toLowerCase().indexOf(inputValue.toLowerCase());\n if (index === 0 && inputValue.length > 0) {\n inputRef.current.setSelectionRange(inputValue.length, option.length);\n }\n }\n }\n });\n const checkHighlightedOptionExists = () => {\n const isSameValue = (value1, value2) => {\n const label1 = value1 ? getOptionLabel(value1) : '';\n const label2 = value2 ? getOptionLabel(value2) : '';\n return label1 === label2;\n };\n if (highlightedIndexRef.current !== -1 && previousProps.filteredOptions && previousProps.filteredOptions.length !== filteredOptions.length && previousProps.inputValue === inputValue && (multiple ? value.length === previousProps.value.length && previousProps.value.every((val, i) => getOptionLabel(value[i]) === getOptionLabel(val)) : isSameValue(previousProps.value, value))) {\n const previousHighlightedOption = previousProps.filteredOptions[highlightedIndexRef.current];\n if (previousHighlightedOption) {\n const previousHighlightedOptionExists = filteredOptions.some(option => {\n return getOptionLabel(option) === getOptionLabel(previousHighlightedOption);\n });\n if (previousHighlightedOptionExists) {\n return true;\n }\n }\n }\n return false;\n };\n const syncHighlightedIndex = React.useCallback(() => {\n if (!popupOpen) {\n return;\n }\n\n // Check if the previously highlighted option still exists in the updated filtered options list and if the value and inputValue haven't changed\n // If it exists and the value and the inputValue haven't changed, return, otherwise continue execution\n if (checkHighlightedOptionExists()) {\n return;\n }\n const valueItem = multiple ? value[0] : value;\n\n // The popup is empty, reset\n if (filteredOptions.length === 0 || valueItem == null) {\n changeHighlightedIndex({\n diff: 'reset'\n });\n return;\n }\n if (!listboxRef.current) {\n return;\n }\n\n // Synchronize the value with the highlighted index\n if (valueItem != null) {\n const currentOption = filteredOptions[highlightedIndexRef.current];\n\n // Keep the current highlighted index if possible\n if (multiple && currentOption && findIndex(value, val => isOptionEqualToValue(currentOption, val)) !== -1) {\n return;\n }\n const itemIndex = findIndex(filteredOptions, optionItem => isOptionEqualToValue(optionItem, valueItem));\n if (itemIndex === -1) {\n changeHighlightedIndex({\n diff: 'reset'\n });\n } else {\n setHighlightedIndex({\n index: itemIndex\n });\n }\n return;\n }\n\n // Prevent the highlighted index to leak outside the boundaries.\n if (highlightedIndexRef.current >= filteredOptions.length - 1) {\n setHighlightedIndex({\n index: filteredOptions.length - 1\n });\n return;\n }\n\n // Restore the focus to the previous index.\n setHighlightedIndex({\n index: highlightedIndexRef.current\n });\n // Ignore filteredOptions (and options, isOptionEqualToValue, getOptionLabel) not to break the scroll position\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n // Only sync the highlighted index when the option switch between empty and not\n filteredOptions.length,\n // Don't sync the highlighted index with the value when multiple\n // eslint-disable-next-line react-hooks/exhaustive-deps\n multiple ? false : value, filterSelectedOptions, changeHighlightedIndex, setHighlightedIndex, popupOpen, inputValue, multiple]);\n const handleListboxRef = useEventCallback(node => {\n setRef(listboxRef, node);\n if (!node) {\n return;\n }\n syncHighlightedIndex();\n });\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useEffect(() => {\n if (!inputRef.current || inputRef.current.nodeName !== 'INPUT') {\n if (inputRef.current && inputRef.current.nodeName === 'TEXTAREA') {\n console.warn([`A textarea element was provided to ${componentName} where input was expected.`, `This is not a supported scenario but it may work under certain conditions.`, `A textarea keyboard navigation may conflict with Autocomplete controls (e.g. enter and arrow keys).`, `Make sure to test keyboard navigation and add custom event handlers if necessary.`].join('\\n'));\n } else {\n console.error([`MUI: Unable to find the input element. It was resolved to ${inputRef.current} while an HTMLInputElement was expected.`, `Instead, ${componentName} expects an input element.`, '', componentName === 'useAutocomplete' ? 'Make sure you have bound getInputProps correctly and that the normal ref/effect resolutions order is guaranteed.' : 'Make sure you have customized the input component correctly.'].join('\\n'));\n }\n }\n }, [componentName]);\n }\n React.useEffect(() => {\n syncHighlightedIndex();\n }, [syncHighlightedIndex]);\n const handleOpen = event => {\n if (open) {\n return;\n }\n setOpenState(true);\n setInputPristine(true);\n if (onOpen) {\n onOpen(event);\n }\n };\n const handleClose = (event, reason) => {\n if (!open) {\n return;\n }\n setOpenState(false);\n if (onClose) {\n onClose(event, reason);\n }\n };\n const handleValue = (event, newValue, reason, details) => {\n if (multiple) {\n if (value.length === newValue.length && value.every((val, i) => val === newValue[i])) {\n return;\n }\n } else if (value === newValue) {\n return;\n }\n if (onChange) {\n onChange(event, newValue, reason, details);\n }\n setValueState(newValue);\n };\n const isTouch = React.useRef(false);\n const selectNewValue = (event, option, reasonProp = 'selectOption', origin = 'options') => {\n let reason = reasonProp;\n let newValue = option;\n if (multiple) {\n newValue = Array.isArray(value) ? value.slice() : [];\n if (process.env.NODE_ENV !== 'production') {\n const matches = newValue.filter(val => isOptionEqualToValue(option, val));\n if (matches.length > 1) {\n console.error([`MUI: The \\`isOptionEqualToValue\\` method of ${componentName} does not handle the arguments correctly.`, `The component expects a single value to match a given option but found ${matches.length} matches.`].join('\\n'));\n }\n }\n const itemIndex = findIndex(newValue, valueItem => isOptionEqualToValue(option, valueItem));\n if (itemIndex === -1) {\n newValue.push(option);\n } else if (origin !== 'freeSolo') {\n newValue.splice(itemIndex, 1);\n reason = 'removeOption';\n }\n }\n resetInputValue(event, newValue);\n handleValue(event, newValue, reason, {\n option\n });\n if (!disableCloseOnSelect && (!event || !event.ctrlKey && !event.metaKey)) {\n handleClose(event, reason);\n }\n if (blurOnSelect === true || blurOnSelect === 'touch' && isTouch.current || blurOnSelect === 'mouse' && !isTouch.current) {\n inputRef.current.blur();\n }\n };\n function validTagIndex(index, direction) {\n if (index === -1) {\n return -1;\n }\n let nextFocus = index;\n while (true) {\n // Out of range\n if (direction === 'next' && nextFocus === value.length || direction === 'previous' && nextFocus === -1) {\n return -1;\n }\n const option = anchorEl.querySelector(`[data-tag-index=\"${nextFocus}\"]`);\n\n // Same logic as MenuList.js\n if (!option || !option.hasAttribute('tabindex') || option.disabled || option.getAttribute('aria-disabled') === 'true') {\n nextFocus += direction === 'next' ? 1 : -1;\n } else {\n return nextFocus;\n }\n }\n }\n const handleFocusTag = (event, direction) => {\n if (!multiple) {\n return;\n }\n if (inputValue === '') {\n handleClose(event, 'toggleInput');\n }\n let nextTag = focusedTag;\n if (focusedTag === -1) {\n if (inputValue === '' && direction === 'previous') {\n nextTag = value.length - 1;\n }\n } else {\n nextTag += direction === 'next' ? 1 : -1;\n if (nextTag < 0) {\n nextTag = 0;\n }\n if (nextTag === value.length) {\n nextTag = -1;\n }\n }\n nextTag = validTagIndex(nextTag, direction);\n setFocusedTag(nextTag);\n focusTag(nextTag);\n };\n const handleClear = event => {\n ignoreFocus.current = true;\n setInputValueState('');\n if (onInputChange) {\n onInputChange(event, '', 'clear');\n }\n handleValue(event, multiple ? [] : null, 'clear');\n };\n const handleKeyDown = other => event => {\n if (other.onKeyDown) {\n other.onKeyDown(event);\n }\n if (event.defaultMuiPrevented) {\n return;\n }\n if (focusedTag !== -1 && ['ArrowLeft', 'ArrowRight'].indexOf(event.key) === -1) {\n setFocusedTag(-1);\n focusTag(-1);\n }\n\n // Wait until IME is settled.\n if (event.which !== 229) {\n switch (event.key) {\n case 'Home':\n if (popupOpen && handleHomeEndKeys) {\n // Prevent scroll of the page\n event.preventDefault();\n changeHighlightedIndex({\n diff: 'start',\n direction: 'next',\n reason: 'keyboard',\n event\n });\n }\n break;\n case 'End':\n if (popupOpen && handleHomeEndKeys) {\n // Prevent scroll of the page\n event.preventDefault();\n changeHighlightedIndex({\n diff: 'end',\n direction: 'previous',\n reason: 'keyboard',\n event\n });\n }\n break;\n case 'PageUp':\n // Prevent scroll of the page\n event.preventDefault();\n changeHighlightedIndex({\n diff: -pageSize,\n direction: 'previous',\n reason: 'keyboard',\n event\n });\n handleOpen(event);\n break;\n case 'PageDown':\n // Prevent scroll of the page\n event.preventDefault();\n changeHighlightedIndex({\n diff: pageSize,\n direction: 'next',\n reason: 'keyboard',\n event\n });\n handleOpen(event);\n break;\n case 'ArrowDown':\n // Prevent cursor move\n event.preventDefault();\n changeHighlightedIndex({\n diff: 1,\n direction: 'next',\n reason: 'keyboard',\n event\n });\n handleOpen(event);\n break;\n case 'ArrowUp':\n // Prevent cursor move\n event.preventDefault();\n changeHighlightedIndex({\n diff: -1,\n direction: 'previous',\n reason: 'keyboard',\n event\n });\n handleOpen(event);\n break;\n case 'ArrowLeft':\n handleFocusTag(event, 'previous');\n break;\n case 'ArrowRight':\n handleFocusTag(event, 'next');\n break;\n case 'Enter':\n if (highlightedIndexRef.current !== -1 && popupOpen) {\n const option = filteredOptions[highlightedIndexRef.current];\n const disabled = getOptionDisabled ? getOptionDisabled(option) : false;\n\n // Avoid early form validation, let the end-users continue filling the form.\n event.preventDefault();\n if (disabled) {\n return;\n }\n selectNewValue(event, option, 'selectOption');\n\n // Move the selection to the end.\n if (autoComplete) {\n inputRef.current.setSelectionRange(inputRef.current.value.length, inputRef.current.value.length);\n }\n } else if (freeSolo && inputValue !== '' && inputValueIsSelectedValue === false) {\n if (multiple) {\n // Allow people to add new values before they submit the form.\n event.preventDefault();\n }\n selectNewValue(event, inputValue, 'createOption', 'freeSolo');\n }\n break;\n case 'Escape':\n if (popupOpen) {\n // Avoid Opera to exit fullscreen mode.\n event.preventDefault();\n // Avoid the Modal to handle the event.\n event.stopPropagation();\n handleClose(event, 'escape');\n } else if (clearOnEscape && (inputValue !== '' || multiple && value.length > 0)) {\n // Avoid Opera to exit fullscreen mode.\n event.preventDefault();\n // Avoid the Modal to handle the event.\n event.stopPropagation();\n handleClear(event);\n }\n break;\n case 'Backspace':\n if (multiple && !readOnly && inputValue === '' && value.length > 0) {\n const index = focusedTag === -1 ? value.length - 1 : focusedTag;\n const newValue = value.slice();\n newValue.splice(index, 1);\n handleValue(event, newValue, 'removeOption', {\n option: value[index]\n });\n }\n break;\n case 'Delete':\n if (multiple && !readOnly && inputValue === '' && value.length > 0 && focusedTag !== -1) {\n const index = focusedTag;\n const newValue = value.slice();\n newValue.splice(index, 1);\n handleValue(event, newValue, 'removeOption', {\n option: value[index]\n });\n }\n break;\n default:\n }\n }\n };\n const handleFocus = event => {\n setFocused(true);\n if (openOnFocus && !ignoreFocus.current) {\n handleOpen(event);\n }\n };\n const handleBlur = event => {\n // Ignore the event when using the scrollbar with IE11\n if (unstable_isActiveElementInListbox(listboxRef)) {\n inputRef.current.focus();\n return;\n }\n setFocused(false);\n firstFocus.current = true;\n ignoreFocus.current = false;\n if (autoSelect && highlightedIndexRef.current !== -1 && popupOpen) {\n selectNewValue(event, filteredOptions[highlightedIndexRef.current], 'blur');\n } else if (autoSelect && freeSolo && inputValue !== '') {\n selectNewValue(event, inputValue, 'blur', 'freeSolo');\n } else if (clearOnBlur) {\n resetInputValue(event, value);\n }\n handleClose(event, 'blur');\n };\n const handleInputChange = event => {\n const newValue = event.target.value;\n if (inputValue !== newValue) {\n setInputValueState(newValue);\n setInputPristine(false);\n if (onInputChange) {\n onInputChange(event, newValue, 'input');\n }\n }\n if (newValue === '') {\n if (!disableClearable && !multiple) {\n handleValue(event, null, 'clear');\n }\n } else {\n handleOpen(event);\n }\n };\n const handleOptionMouseMove = event => {\n const index = Number(event.currentTarget.getAttribute('data-option-index'));\n if (highlightedIndexRef.current !== index) {\n setHighlightedIndex({\n event,\n index,\n reason: 'mouse'\n });\n }\n };\n const handleOptionTouchStart = event => {\n setHighlightedIndex({\n event,\n index: Number(event.currentTarget.getAttribute('data-option-index')),\n reason: 'touch'\n });\n isTouch.current = true;\n };\n const handleOptionClick = event => {\n const index = Number(event.currentTarget.getAttribute('data-option-index'));\n selectNewValue(event, filteredOptions[index], 'selectOption');\n isTouch.current = false;\n };\n const handleTagDelete = index => event => {\n const newValue = value.slice();\n newValue.splice(index, 1);\n handleValue(event, newValue, 'removeOption', {\n option: value[index]\n });\n };\n const handlePopupIndicator = event => {\n if (open) {\n handleClose(event, 'toggleInput');\n } else {\n handleOpen(event);\n }\n };\n\n // Prevent input blur when interacting with the combobox\n const handleMouseDown = event => {\n // Prevent focusing the input if click is anywhere outside the Autocomplete\n if (!event.currentTarget.contains(event.target)) {\n return;\n }\n if (event.target.getAttribute('id') !== id) {\n event.preventDefault();\n }\n };\n\n // Focus the input when interacting with the combobox\n const handleClick = event => {\n // Prevent focusing the input if click is anywhere outside the Autocomplete\n if (!event.currentTarget.contains(event.target)) {\n return;\n }\n inputRef.current.focus();\n if (selectOnFocus && firstFocus.current && inputRef.current.selectionEnd - inputRef.current.selectionStart === 0) {\n inputRef.current.select();\n }\n firstFocus.current = false;\n };\n const handleInputMouseDown = event => {\n if (inputValue === '' || !open) {\n handlePopupIndicator(event);\n }\n };\n let dirty = freeSolo && inputValue.length > 0;\n dirty = dirty || (multiple ? value.length > 0 : value !== null);\n let groupedOptions = filteredOptions;\n if (groupBy) {\n // used to keep track of key and indexes in the result array\n const indexBy = new Map();\n let warn = false;\n groupedOptions = filteredOptions.reduce((acc, option, index) => {\n const group = groupBy(option);\n if (acc.length > 0 && acc[acc.length - 1].group === group) {\n acc[acc.length - 1].options.push(option);\n } else {\n if (process.env.NODE_ENV !== 'production') {\n if (indexBy.get(group) && !warn) {\n console.warn(`MUI: The options provided combined with the \\`groupBy\\` method of ${componentName} returns duplicated headers.`, 'You can solve the issue by sorting the options with the output of `groupBy`.');\n warn = true;\n }\n indexBy.set(group, true);\n }\n acc.push({\n key: index,\n index,\n group,\n options: [option]\n });\n }\n return acc;\n }, []);\n }\n if (disabledProp && focused) {\n handleBlur();\n }\n return {\n getRootProps: (other = {}) => _extends({\n 'aria-owns': listboxAvailable ? `${id}-listbox` : null\n }, other, {\n onKeyDown: handleKeyDown(other),\n onMouseDown: handleMouseDown,\n onClick: handleClick\n }),\n getInputLabelProps: () => ({\n id: `${id}-label`,\n htmlFor: id\n }),\n getInputProps: () => ({\n id,\n value: inputValue,\n onBlur: handleBlur,\n onFocus: handleFocus,\n onChange: handleInputChange,\n onMouseDown: handleInputMouseDown,\n // if open then this is handled imperatively so don't let react override\n // only have an opinion about this when closed\n 'aria-activedescendant': popupOpen ? '' : null,\n 'aria-autocomplete': autoComplete ? 'both' : 'list',\n 'aria-controls': listboxAvailable ? `${id}-listbox` : undefined,\n 'aria-expanded': listboxAvailable,\n // Disable browser's suggestion that might overlap with the popup.\n // Handle autocomplete but not autofill.\n autoComplete: 'off',\n ref: inputRef,\n autoCapitalize: 'none',\n spellCheck: 'false',\n role: 'combobox',\n disabled: disabledProp\n }),\n getClearProps: () => ({\n tabIndex: -1,\n onClick: handleClear\n }),\n getPopupIndicatorProps: () => ({\n tabIndex: -1,\n onClick: handlePopupIndicator\n }),\n getTagProps: ({\n index\n }) => _extends({\n key: index,\n 'data-tag-index': index,\n tabIndex: -1\n }, !readOnly && {\n onDelete: handleTagDelete(index)\n }),\n getListboxProps: () => ({\n role: 'listbox',\n id: `${id}-listbox`,\n 'aria-labelledby': `${id}-label`,\n ref: handleListboxRef,\n onMouseDown: event => {\n // Prevent blur\n event.preventDefault();\n }\n }),\n getOptionProps: ({\n index,\n option\n }) => {\n const selected = (multiple ? value : [value]).some(value2 => value2 != null && isOptionEqualToValue(option, value2));\n const disabled = getOptionDisabled ? getOptionDisabled(option) : false;\n return {\n key: getOptionLabel(option),\n tabIndex: -1,\n role: 'option',\n id: `${id}-option-${index}`,\n onMouseMove: handleOptionMouseMove,\n onClick: handleOptionClick,\n onTouchStart: handleOptionTouchStart,\n 'data-option-index': index,\n 'aria-disabled': disabled,\n 'aria-selected': selected\n };\n },\n id,\n inputValue,\n value,\n dirty,\n expanded: popupOpen && anchorEl,\n popupOpen,\n focused: focused || focusedTag !== -1,\n anchorEl,\n setAnchorEl,\n focusedTag,\n groupedOptions\n };\n}","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n *\n * Alias to `Clear`.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\n}), 'Close');","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getAutocompleteUtilityClass(slot) {\n return generateUtilityClass('MuiAutocomplete', slot);\n}\nconst autocompleteClasses = generateUtilityClasses('MuiAutocomplete', ['root', 'expanded', 'fullWidth', 'focused', 'focusVisible', 'tag', 'tagSizeSmall', 'tagSizeMedium', 'hasPopupIcon', 'hasClearIcon', 'inputRoot', 'input', 'inputFocused', 'endAdornment', 'clearIndicator', 'popupIndicator', 'popupIndicatorOpen', 'popper', 'popperDisablePortal', 'paper', 'listbox', 'loading', 'noOptions', 'option', 'groupLabel', 'groupUl']);\nexport default autocompleteClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nvar _ClearIcon, _ArrowDropDownIcon;\nconst _excluded = [\"autoComplete\", \"autoHighlight\", \"autoSelect\", \"blurOnSelect\", \"ChipProps\", \"className\", \"clearIcon\", \"clearOnBlur\", \"clearOnEscape\", \"clearText\", \"closeText\", \"componentsProps\", \"defaultValue\", \"disableClearable\", \"disableCloseOnSelect\", \"disabled\", \"disabledItemsFocusable\", \"disableListWrap\", \"disablePortal\", \"filterOptions\", \"filterSelectedOptions\", \"forcePopupIcon\", \"freeSolo\", \"fullWidth\", \"getLimitTagsText\", \"getOptionDisabled\", \"getOptionLabel\", \"isOptionEqualToValue\", \"groupBy\", \"handleHomeEndKeys\", \"id\", \"includeInputInList\", \"inputValue\", \"limitTags\", \"ListboxComponent\", \"ListboxProps\", \"loading\", \"loadingText\", \"multiple\", \"noOptionsText\", \"onChange\", \"onClose\", \"onHighlightChange\", \"onInputChange\", \"onOpen\", \"open\", \"openOnFocus\", \"openText\", \"options\", \"PaperComponent\", \"PopperComponent\", \"popupIcon\", \"readOnly\", \"renderGroup\", \"renderInput\", \"renderOption\", \"renderTags\", \"selectOnFocus\", \"size\", \"slotProps\", \"value\"],\n _excluded2 = [\"ref\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { chainPropTypes, integerPropType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses, useAutocomplete, createFilterOptions } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport Popper from '../Popper';\nimport ListSubheader from '../ListSubheader';\nimport Paper from '../Paper';\nimport IconButton from '../IconButton';\nimport Chip from '../Chip';\nimport inputClasses from '../Input/inputClasses';\nimport inputBaseClasses from '../InputBase/inputBaseClasses';\nimport outlinedInputClasses from '../OutlinedInput/outlinedInputClasses';\nimport filledInputClasses from '../FilledInput/filledInputClasses';\nimport ClearIcon from '../internal/svg-icons/Close';\nimport ArrowDropDownIcon from '../internal/svg-icons/ArrowDropDown';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport autocompleteClasses, { getAutocompleteUtilityClass } from './autocompleteClasses';\nimport capitalize from '../utils/capitalize';\nimport useForkRef from '../utils/useForkRef';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n disablePortal,\n expanded,\n focused,\n fullWidth,\n hasClearIcon,\n hasPopupIcon,\n inputFocused,\n popupOpen,\n size\n } = ownerState;\n const slots = {\n root: ['root', expanded && 'expanded', focused && 'focused', fullWidth && 'fullWidth', hasClearIcon && 'hasClearIcon', hasPopupIcon && 'hasPopupIcon'],\n inputRoot: ['inputRoot'],\n input: ['input', inputFocused && 'inputFocused'],\n tag: ['tag', `tagSize${capitalize(size)}`],\n endAdornment: ['endAdornment'],\n clearIndicator: ['clearIndicator'],\n popupIndicator: ['popupIndicator', popupOpen && 'popupIndicatorOpen'],\n popper: ['popper', disablePortal && 'popperDisablePortal'],\n paper: ['paper'],\n listbox: ['listbox'],\n loading: ['loading'],\n noOptions: ['noOptions'],\n option: ['option'],\n groupLabel: ['groupLabel'],\n groupUl: ['groupUl']\n };\n return composeClasses(slots, getAutocompleteUtilityClass, classes);\n};\nconst AutocompleteRoot = styled('div', {\n name: 'MuiAutocomplete',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n const {\n fullWidth,\n hasClearIcon,\n hasPopupIcon,\n inputFocused,\n size\n } = ownerState;\n return [{\n [`& .${autocompleteClasses.tag}`]: styles.tag\n }, {\n [`& .${autocompleteClasses.tag}`]: styles[`tagSize${capitalize(size)}`]\n }, {\n [`& .${autocompleteClasses.inputRoot}`]: styles.inputRoot\n }, {\n [`& .${autocompleteClasses.input}`]: styles.input\n }, {\n [`& .${autocompleteClasses.input}`]: inputFocused && styles.inputFocused\n }, styles.root, fullWidth && styles.fullWidth, hasPopupIcon && styles.hasPopupIcon, hasClearIcon && styles.hasClearIcon];\n }\n})(({\n ownerState\n}) => _extends({\n [`&.${autocompleteClasses.focused} .${autocompleteClasses.clearIndicator}`]: {\n visibility: 'visible'\n },\n /* Avoid double tap issue on iOS */\n '@media (pointer: fine)': {\n [`&:hover .${autocompleteClasses.clearIndicator}`]: {\n visibility: 'visible'\n }\n }\n}, ownerState.fullWidth && {\n width: '100%'\n}, {\n [`& .${autocompleteClasses.tag}`]: _extends({\n margin: 3,\n maxWidth: 'calc(100% - 6px)'\n }, ownerState.size === 'small' && {\n margin: 2,\n maxWidth: 'calc(100% - 4px)'\n }),\n [`& .${autocompleteClasses.inputRoot}`]: {\n flexWrap: 'wrap',\n [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: {\n paddingRight: 26 + 4\n },\n [`.${autocompleteClasses.hasPopupIcon}.${autocompleteClasses.hasClearIcon}&`]: {\n paddingRight: 52 + 4\n },\n [`& .${autocompleteClasses.input}`]: {\n width: 0,\n minWidth: 30\n }\n },\n [`& .${inputClasses.root}`]: {\n paddingBottom: 1,\n '& .MuiInput-input': {\n padding: '4px 4px 4px 0px'\n }\n },\n [`& .${inputClasses.root}.${inputBaseClasses.sizeSmall}`]: {\n [`& .${inputClasses.input}`]: {\n padding: '2px 4px 3px 0'\n }\n },\n [`& .${outlinedInputClasses.root}`]: {\n padding: 9,\n [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: {\n paddingRight: 26 + 4 + 9\n },\n [`.${autocompleteClasses.hasPopupIcon}.${autocompleteClasses.hasClearIcon}&`]: {\n paddingRight: 52 + 4 + 9\n },\n [`& .${autocompleteClasses.input}`]: {\n padding: '7.5px 4px 7.5px 5px'\n },\n [`& .${autocompleteClasses.endAdornment}`]: {\n right: 9\n }\n },\n [`& .${outlinedInputClasses.root}.${inputBaseClasses.sizeSmall}`]: {\n // Don't specify paddingRight, as it overrides the default value set when there is only\n // one of the popup or clear icon as the specificity is equal so the latter one wins\n paddingTop: 6,\n paddingBottom: 6,\n paddingLeft: 6,\n [`& .${autocompleteClasses.input}`]: {\n padding: '2.5px 4px 2.5px 8px'\n }\n },\n [`& .${filledInputClasses.root}`]: {\n paddingTop: 19,\n paddingLeft: 8,\n [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: {\n paddingRight: 26 + 4 + 9\n },\n [`.${autocompleteClasses.hasPopupIcon}.${autocompleteClasses.hasClearIcon}&`]: {\n paddingRight: 52 + 4 + 9\n },\n [`& .${filledInputClasses.input}`]: {\n padding: '7px 4px'\n },\n [`& .${autocompleteClasses.endAdornment}`]: {\n right: 9\n }\n },\n [`& .${filledInputClasses.root}.${inputBaseClasses.sizeSmall}`]: {\n paddingBottom: 1,\n [`& .${filledInputClasses.input}`]: {\n padding: '2.5px 4px'\n }\n },\n [`& .${inputBaseClasses.hiddenLabel}`]: {\n paddingTop: 8\n },\n [`& .${filledInputClasses.root}.${inputBaseClasses.hiddenLabel}`]: {\n paddingTop: 0,\n paddingBottom: 0,\n [`& .${autocompleteClasses.input}`]: {\n paddingTop: 16,\n paddingBottom: 17\n }\n },\n [`& .${filledInputClasses.root}.${inputBaseClasses.hiddenLabel}.${inputBaseClasses.sizeSmall}`]: {\n [`& .${autocompleteClasses.input}`]: {\n paddingTop: 8,\n paddingBottom: 9\n }\n },\n [`& .${autocompleteClasses.input}`]: _extends({\n flexGrow: 1,\n textOverflow: 'ellipsis',\n opacity: 0\n }, ownerState.inputFocused && {\n opacity: 1\n })\n}));\nconst AutocompleteEndAdornment = styled('div', {\n name: 'MuiAutocomplete',\n slot: 'EndAdornment',\n overridesResolver: (props, styles) => styles.endAdornment\n})({\n // We use a position absolute to support wrapping tags.\n position: 'absolute',\n right: 0,\n top: 'calc(50% - 14px)' // Center vertically\n});\n\nconst AutocompleteClearIndicator = styled(IconButton, {\n name: 'MuiAutocomplete',\n slot: 'ClearIndicator',\n overridesResolver: (props, styles) => styles.clearIndicator\n})({\n marginRight: -2,\n padding: 4,\n visibility: 'hidden'\n});\nconst AutocompletePopupIndicator = styled(IconButton, {\n name: 'MuiAutocomplete',\n slot: 'PopupIndicator',\n overridesResolver: ({\n ownerState\n }, styles) => _extends({}, styles.popupIndicator, ownerState.popupOpen && styles.popupIndicatorOpen)\n})(({\n ownerState\n}) => _extends({\n padding: 2,\n marginRight: -2\n}, ownerState.popupOpen && {\n transform: 'rotate(180deg)'\n}));\nconst AutocompletePopper = styled(Popper, {\n name: 'MuiAutocomplete',\n slot: 'Popper',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${autocompleteClasses.option}`]: styles.option\n }, styles.popper, ownerState.disablePortal && styles.popperDisablePortal];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n zIndex: (theme.vars || theme).zIndex.modal\n}, ownerState.disablePortal && {\n position: 'absolute'\n}));\nconst AutocompletePaper = styled(Paper, {\n name: 'MuiAutocomplete',\n slot: 'Paper',\n overridesResolver: (props, styles) => styles.paper\n})(({\n theme\n}) => _extends({}, theme.typography.body1, {\n overflow: 'auto'\n}));\nconst AutocompleteLoading = styled('div', {\n name: 'MuiAutocomplete',\n slot: 'Loading',\n overridesResolver: (props, styles) => styles.loading\n})(({\n theme\n}) => ({\n color: (theme.vars || theme).palette.text.secondary,\n padding: '14px 16px'\n}));\nconst AutocompleteNoOptions = styled('div', {\n name: 'MuiAutocomplete',\n slot: 'NoOptions',\n overridesResolver: (props, styles) => styles.noOptions\n})(({\n theme\n}) => ({\n color: (theme.vars || theme).palette.text.secondary,\n padding: '14px 16px'\n}));\nconst AutocompleteListbox = styled('div', {\n name: 'MuiAutocomplete',\n slot: 'Listbox',\n overridesResolver: (props, styles) => styles.listbox\n})(({\n theme\n}) => ({\n listStyle: 'none',\n margin: 0,\n padding: '8px 0',\n maxHeight: '40vh',\n overflow: 'auto',\n position: 'relative',\n [`& .${autocompleteClasses.option}`]: {\n minHeight: 48,\n display: 'flex',\n overflow: 'hidden',\n justifyContent: 'flex-start',\n alignItems: 'center',\n cursor: 'pointer',\n paddingTop: 6,\n boxSizing: 'border-box',\n outline: '0',\n WebkitTapHighlightColor: 'transparent',\n paddingBottom: 6,\n paddingLeft: 16,\n paddingRight: 16,\n [theme.breakpoints.up('sm')]: {\n minHeight: 'auto'\n },\n [`&.${autocompleteClasses.focused}`]: {\n backgroundColor: (theme.vars || theme).palette.action.hover,\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n '&[aria-disabled=\"true\"]': {\n opacity: (theme.vars || theme).palette.action.disabledOpacity,\n pointerEvents: 'none'\n },\n [`&.${autocompleteClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette.action.focus\n },\n '&[aria-selected=\"true\"]': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity),\n [`&.${autocompleteClasses.focused}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: (theme.vars || theme).palette.action.selected\n }\n },\n [`&.${autocompleteClasses.focusVisible}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)\n }\n }\n }\n}));\nconst AutocompleteGroupLabel = styled(ListSubheader, {\n name: 'MuiAutocomplete',\n slot: 'GroupLabel',\n overridesResolver: (props, styles) => styles.groupLabel\n})(({\n theme\n}) => ({\n backgroundColor: (theme.vars || theme).palette.background.paper,\n top: -8\n}));\nconst AutocompleteGroupUl = styled('ul', {\n name: 'MuiAutocomplete',\n slot: 'GroupUl',\n overridesResolver: (props, styles) => styles.groupUl\n})({\n padding: 0,\n [`& .${autocompleteClasses.option}`]: {\n paddingLeft: 24\n }\n});\nexport { createFilterOptions };\nconst Autocomplete = /*#__PURE__*/React.forwardRef(function Autocomplete(inProps, ref) {\n var _slotProps$clearIndic, _slotProps$paper, _slotProps$popper, _slotProps$popupIndic;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiAutocomplete'\n });\n /* eslint-disable @typescript-eslint/no-unused-vars */\n const {\n autoComplete = false,\n autoHighlight = false,\n autoSelect = false,\n blurOnSelect = false,\n ChipProps,\n className,\n clearIcon = _ClearIcon || (_ClearIcon = /*#__PURE__*/_jsx(ClearIcon, {\n fontSize: \"small\"\n })),\n clearOnBlur = !props.freeSolo,\n clearOnEscape = false,\n clearText = 'Clear',\n closeText = 'Close',\n componentsProps = {},\n defaultValue = props.multiple ? [] : null,\n disableClearable = false,\n disableCloseOnSelect = false,\n disabled = false,\n disabledItemsFocusable = false,\n disableListWrap = false,\n disablePortal = false,\n filterSelectedOptions = false,\n forcePopupIcon = 'auto',\n freeSolo = false,\n fullWidth = false,\n getLimitTagsText = more => `+${more}`,\n getOptionLabel = option => {\n var _option$label;\n return (_option$label = option.label) != null ? _option$label : option;\n },\n groupBy,\n handleHomeEndKeys = !props.freeSolo,\n includeInputInList = false,\n limitTags = -1,\n ListboxComponent = 'ul',\n ListboxProps,\n loading = false,\n loadingText = 'Loading…',\n multiple = false,\n noOptionsText = 'No options',\n openOnFocus = false,\n openText = 'Open',\n PaperComponent = Paper,\n PopperComponent = Popper,\n popupIcon = _ArrowDropDownIcon || (_ArrowDropDownIcon = /*#__PURE__*/_jsx(ArrowDropDownIcon, {})),\n readOnly = false,\n renderGroup: renderGroupProp,\n renderInput,\n renderOption: renderOptionProp,\n renderTags,\n selectOnFocus = !props.freeSolo,\n size = 'medium',\n slotProps = {}\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n /* eslint-enable @typescript-eslint/no-unused-vars */\n\n const {\n getRootProps,\n getInputProps,\n getInputLabelProps,\n getPopupIndicatorProps,\n getClearProps,\n getTagProps,\n getListboxProps,\n getOptionProps,\n value,\n dirty,\n expanded,\n id,\n popupOpen,\n focused,\n focusedTag,\n anchorEl,\n setAnchorEl,\n inputValue,\n groupedOptions\n } = useAutocomplete(_extends({}, props, {\n componentName: 'Autocomplete'\n }));\n const hasClearIcon = !disableClearable && !disabled && dirty && !readOnly;\n const hasPopupIcon = (!freeSolo || forcePopupIcon === true) && forcePopupIcon !== false;\n const {\n onMouseDown: handleInputMouseDown\n } = getInputProps();\n const {\n ref: externalListboxRef\n } = ListboxProps != null ? ListboxProps : {};\n const _getListboxProps = getListboxProps(),\n {\n ref: listboxRef\n } = _getListboxProps,\n otherListboxProps = _objectWithoutPropertiesLoose(_getListboxProps, _excluded2);\n const combinedListboxRef = useForkRef(listboxRef, externalListboxRef);\n\n // If you modify this, make sure to keep the `AutocompleteOwnerState` type in sync.\n const ownerState = _extends({}, props, {\n disablePortal,\n expanded,\n focused,\n fullWidth,\n hasClearIcon,\n hasPopupIcon,\n inputFocused: focusedTag === -1,\n popupOpen,\n size\n });\n const classes = useUtilityClasses(ownerState);\n let startAdornment;\n if (multiple && value.length > 0) {\n const getCustomizedTagProps = params => _extends({\n className: classes.tag,\n disabled\n }, getTagProps(params));\n if (renderTags) {\n startAdornment = renderTags(value, getCustomizedTagProps, ownerState);\n } else {\n startAdornment = value.map((option, index) => /*#__PURE__*/_jsx(Chip, _extends({\n label: getOptionLabel(option),\n size: size\n }, getCustomizedTagProps({\n index\n }), ChipProps)));\n }\n }\n if (limitTags > -1 && Array.isArray(startAdornment)) {\n const more = startAdornment.length - limitTags;\n if (!focused && more > 0) {\n startAdornment = startAdornment.splice(0, limitTags);\n startAdornment.push( /*#__PURE__*/_jsx(\"span\", {\n className: classes.tag,\n children: getLimitTagsText(more)\n }, startAdornment.length));\n }\n }\n const defaultRenderGroup = params => /*#__PURE__*/_jsxs(\"li\", {\n children: [/*#__PURE__*/_jsx(AutocompleteGroupLabel, {\n className: classes.groupLabel,\n ownerState: ownerState,\n component: \"div\",\n children: params.group\n }), /*#__PURE__*/_jsx(AutocompleteGroupUl, {\n className: classes.groupUl,\n ownerState: ownerState,\n children: params.children\n })]\n }, params.key);\n const renderGroup = renderGroupProp || defaultRenderGroup;\n const defaultRenderOption = (props2, option) => /*#__PURE__*/_jsx(\"li\", _extends({}, props2, {\n children: getOptionLabel(option)\n }));\n const renderOption = renderOptionProp || defaultRenderOption;\n const renderListOption = (option, index) => {\n const optionProps = getOptionProps({\n option,\n index\n });\n return renderOption(_extends({}, optionProps, {\n className: classes.option\n }), option, {\n selected: optionProps['aria-selected'],\n index,\n inputValue\n });\n };\n const clearIndicatorSlotProps = (_slotProps$clearIndic = slotProps.clearIndicator) != null ? _slotProps$clearIndic : componentsProps.clearIndicator;\n const paperSlotProps = (_slotProps$paper = slotProps.paper) != null ? _slotProps$paper : componentsProps.paper;\n const popperSlotProps = (_slotProps$popper = slotProps.popper) != null ? _slotProps$popper : componentsProps.popper;\n const popupIndicatorSlotProps = (_slotProps$popupIndic = slotProps.popupIndicator) != null ? _slotProps$popupIndic : componentsProps.popupIndicator;\n return /*#__PURE__*/_jsxs(React.Fragment, {\n children: [/*#__PURE__*/_jsx(AutocompleteRoot, _extends({\n ref: ref,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, getRootProps(other), {\n children: renderInput({\n id,\n disabled,\n fullWidth: true,\n size: size === 'small' ? 'small' : undefined,\n InputLabelProps: getInputLabelProps(),\n InputProps: _extends({\n ref: setAnchorEl,\n className: classes.inputRoot,\n startAdornment,\n onClick: event => {\n if (event.target === event.currentTarget) {\n handleInputMouseDown(event);\n }\n }\n }, (hasClearIcon || hasPopupIcon) && {\n endAdornment: /*#__PURE__*/_jsxs(AutocompleteEndAdornment, {\n className: classes.endAdornment,\n ownerState: ownerState,\n children: [hasClearIcon ? /*#__PURE__*/_jsx(AutocompleteClearIndicator, _extends({}, getClearProps(), {\n \"aria-label\": clearText,\n title: clearText,\n ownerState: ownerState\n }, clearIndicatorSlotProps, {\n className: clsx(classes.clearIndicator, clearIndicatorSlotProps == null ? void 0 : clearIndicatorSlotProps.className),\n children: clearIcon\n })) : null, hasPopupIcon ? /*#__PURE__*/_jsx(AutocompletePopupIndicator, _extends({}, getPopupIndicatorProps(), {\n disabled: disabled,\n \"aria-label\": popupOpen ? closeText : openText,\n title: popupOpen ? closeText : openText,\n ownerState: ownerState\n }, popupIndicatorSlotProps, {\n className: clsx(classes.popupIndicator, popupIndicatorSlotProps == null ? void 0 : popupIndicatorSlotProps.className),\n children: popupIcon\n })) : null]\n })\n }),\n inputProps: _extends({\n className: classes.input,\n disabled,\n readOnly\n }, getInputProps())\n })\n })), anchorEl ? /*#__PURE__*/_jsx(AutocompletePopper, _extends({\n as: PopperComponent,\n disablePortal: disablePortal,\n style: {\n width: anchorEl ? anchorEl.clientWidth : null\n },\n ownerState: ownerState,\n role: \"presentation\",\n anchorEl: anchorEl,\n open: popupOpen\n }, popperSlotProps, {\n className: clsx(classes.popper, popperSlotProps == null ? void 0 : popperSlotProps.className),\n children: /*#__PURE__*/_jsxs(AutocompletePaper, _extends({\n ownerState: ownerState,\n as: PaperComponent\n }, paperSlotProps, {\n className: clsx(classes.paper, paperSlotProps == null ? void 0 : paperSlotProps.className),\n children: [loading && groupedOptions.length === 0 ? /*#__PURE__*/_jsx(AutocompleteLoading, {\n className: classes.loading,\n ownerState: ownerState,\n children: loadingText\n }) : null, groupedOptions.length === 0 && !freeSolo && !loading ? /*#__PURE__*/_jsx(AutocompleteNoOptions, {\n className: classes.noOptions,\n ownerState: ownerState,\n role: \"presentation\",\n onMouseDown: event => {\n // Prevent input blur when interacting with the \"no options\" content\n event.preventDefault();\n },\n children: noOptionsText\n }) : null, groupedOptions.length > 0 ? /*#__PURE__*/_jsx(AutocompleteListbox, _extends({\n as: ListboxComponent,\n className: classes.listbox,\n ownerState: ownerState\n }, otherListboxProps, ListboxProps, {\n ref: combinedListboxRef,\n children: groupedOptions.map((option, index) => {\n if (groupBy) {\n return renderGroup({\n key: option.key,\n group: option.group,\n children: option.options.map((option2, index2) => renderListOption(option2, option.index + index2))\n });\n }\n return renderListOption(option, index);\n })\n })) : null]\n }))\n })) : null]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Autocomplete.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the portion of the selected suggestion that has not been typed by the user,\n * known as the completion string, appears inline after the input cursor in the textbox.\n * The inline completion string is visually highlighted and has a selected state.\n * @default false\n */\n autoComplete: PropTypes.bool,\n /**\n * If `true`, the first option is automatically highlighted.\n * @default false\n */\n autoHighlight: PropTypes.bool,\n /**\n * If `true`, the selected option becomes the value of the input\n * when the Autocomplete loses focus unless the user chooses\n * a different option or changes the character string in the input.\n *\n * When using `freeSolo` mode, the typed value will be the input value\n * if the Autocomplete loses focus without highlighting an option.\n * @default false\n */\n autoSelect: PropTypes.bool,\n /**\n * Control if the input should be blurred when an option is selected:\n *\n * - `false` the input is not blurred.\n * - `true` the input is always blurred.\n * - `touch` the input is blurred after a touch event.\n * - `mouse` the input is blurred after a mouse event.\n * @default false\n */\n blurOnSelect: PropTypes.oneOfType([PropTypes.oneOf(['mouse', 'touch']), PropTypes.bool]),\n /**\n * Props applied to the [`Chip`](/material-ui/api/chip/) element.\n */\n ChipProps: PropTypes.object,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The icon to display in place of the default clear icon.\n * @default \n */\n clearIcon: PropTypes.node,\n /**\n * If `true`, the input's text is cleared on blur if no value is selected.\n *\n * Set to `true` if you want to help the user enter a new value.\n * Set to `false` if you want to help the user resume their search.\n * @default !props.freeSolo\n */\n clearOnBlur: PropTypes.bool,\n /**\n * If `true`, clear all values when the user presses escape and the popup is closed.\n * @default false\n */\n clearOnEscape: PropTypes.bool,\n /**\n * Override the default text for the *clear* icon button.\n *\n * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n * @default 'Clear'\n */\n clearText: PropTypes.string,\n /**\n * Override the default text for the *close popup* icon button.\n *\n * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n * @default 'Close'\n */\n closeText: PropTypes.string,\n /**\n * The props used for each slot inside.\n * @default {}\n */\n componentsProps: PropTypes.shape({\n clearIndicator: PropTypes.object,\n paper: PropTypes.object,\n popper: PropTypes.object,\n popupIndicator: PropTypes.object\n }),\n /**\n * The default value. Use when the component is not controlled.\n * @default props.multiple ? [] : null\n */\n defaultValue: chainPropTypes(PropTypes.any, props => {\n if (props.multiple && props.defaultValue !== undefined && !Array.isArray(props.defaultValue)) {\n return new Error(['MUI: The Autocomplete expects the `defaultValue` prop to be an array when `multiple={true}` or undefined.', `However, ${props.defaultValue} was provided.`].join('\\n'));\n }\n return null;\n }),\n /**\n * If `true`, the input can't be cleared.\n * @default false\n */\n disableClearable: PropTypes.bool,\n /**\n * If `true`, the popup won't close when a value is selected.\n * @default false\n */\n disableCloseOnSelect: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, will allow focus on disabled items.\n * @default false\n */\n disabledItemsFocusable: PropTypes.bool,\n /**\n * If `true`, the list box in the popup will not wrap focus.\n * @default false\n */\n disableListWrap: PropTypes.bool,\n /**\n * If `true`, the `Popper` content will be under the DOM hierarchy of the parent component.\n * @default false\n */\n disablePortal: PropTypes.bool,\n /**\n * A function that determines the filtered options to be rendered on search.\n *\n * @default createFilterOptions()\n * @param {T[]} options The options to render.\n * @param {object} state The state of the component.\n * @returns {T[]}\n */\n filterOptions: PropTypes.func,\n /**\n * If `true`, hide the selected options from the list box.\n * @default false\n */\n filterSelectedOptions: PropTypes.bool,\n /**\n * Force the visibility display of the popup icon.\n * @default 'auto'\n */\n forcePopupIcon: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.bool]),\n /**\n * If `true`, the Autocomplete is free solo, meaning that the user input is not bound to provided options.\n * @default false\n */\n freeSolo: PropTypes.bool,\n /**\n * If `true`, the input will take up the full width of its container.\n * @default false\n */\n fullWidth: PropTypes.bool,\n /**\n * The label to display when the tags are truncated (`limitTags`).\n *\n * @param {number} more The number of truncated tags.\n * @returns {ReactNode}\n * @default (more) => `+${more}`\n */\n getLimitTagsText: PropTypes.func,\n /**\n * Used to determine the disabled state for a given option.\n *\n * @param {T} option The option to test.\n * @returns {boolean}\n */\n getOptionDisabled: PropTypes.func,\n /**\n * Used to determine the string value for a given option.\n * It's used to fill the input (and the list box options if `renderOption` is not provided).\n *\n * If used in free solo mode, it must accept both the type of the options and a string.\n *\n * @param {T} option\n * @returns {string}\n * @default (option) => option.label ?? option\n */\n getOptionLabel: PropTypes.func,\n /**\n * If provided, the options will be grouped under the returned string.\n * The groupBy value is also used as the text for group headings when `renderGroup` is not provided.\n *\n * @param {T} options The options to group.\n * @returns {string}\n */\n groupBy: PropTypes.func,\n /**\n * If `true`, the component handles the \"Home\" and \"End\" keys when the popup is open.\n * It should move focus to the first option and last option, respectively.\n * @default !props.freeSolo\n */\n handleHomeEndKeys: PropTypes.bool,\n /**\n * This prop is used to help implement the accessibility logic.\n * If you don't provide an id it will fall back to a randomly generated one.\n */\n id: PropTypes.string,\n /**\n * If `true`, the highlight can move to the input.\n * @default false\n */\n includeInputInList: PropTypes.bool,\n /**\n * The input value.\n */\n inputValue: PropTypes.string,\n /**\n * Used to determine if the option represents the given value.\n * Uses strict equality by default.\n * ⚠️ Both arguments need to be handled, an option can only match with one value.\n *\n * @param {T} option The option to test.\n * @param {T} value The value to test against.\n * @returns {boolean}\n */\n isOptionEqualToValue: PropTypes.func,\n /**\n * The maximum number of tags that will be visible when not focused.\n * Set `-1` to disable the limit.\n * @default -1\n */\n limitTags: integerPropType,\n /**\n * The component used to render the listbox.\n * @default 'ul'\n */\n ListboxComponent: PropTypes.elementType,\n /**\n * Props applied to the Listbox element.\n */\n ListboxProps: PropTypes.object,\n /**\n * If `true`, the component is in a loading state.\n * This shows the `loadingText` in place of suggestions (only if there are no suggestions to show, e.g. `options` are empty).\n * @default false\n */\n loading: PropTypes.bool,\n /**\n * Text to display when in a loading state.\n *\n * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n * @default 'Loading…'\n */\n loadingText: PropTypes.node,\n /**\n * If `true`, `value` must be an array and the menu will support multiple selections.\n * @default false\n */\n multiple: PropTypes.bool,\n /**\n * Text to display when there are no options.\n *\n * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n * @default 'No options'\n */\n noOptionsText: PropTypes.node,\n /**\n * Callback fired when the value changes.\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n * @param {T|T[]} value The new value of the component.\n * @param {string} reason One of \"createOption\", \"selectOption\", \"removeOption\", \"blur\" or \"clear\".\n * @param {string} [details]\n */\n onChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be closed.\n * Use in controlled mode (see open).\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n * @param {string} reason Can be: `\"toggleInput\"`, `\"escape\"`, `\"selectOption\"`, `\"removeOption\"`, `\"blur\"`.\n */\n onClose: PropTypes.func,\n /**\n * Callback fired when the highlight option changes.\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n * @param {T} option The highlighted option.\n * @param {string} reason Can be: `\"keyboard\"`, `\"auto\"`, `\"mouse\"`, `\"touch\"`.\n */\n onHighlightChange: PropTypes.func,\n /**\n * Callback fired when the input value changes.\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n * @param {string} value The new value of the text input.\n * @param {string} reason Can be: `\"input\"` (user input), `\"reset\"` (programmatic change), `\"clear\"`.\n */\n onInputChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be opened.\n * Use in controlled mode (see open).\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n */\n onOpen: PropTypes.func,\n /**\n * If `true`, the component is shown.\n */\n open: PropTypes.bool,\n /**\n * If `true`, the popup will open on input focus.\n * @default false\n */\n openOnFocus: PropTypes.bool,\n /**\n * Override the default text for the *open popup* icon button.\n *\n * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n * @default 'Open'\n */\n openText: PropTypes.string,\n /**\n * Array of options.\n */\n options: PropTypes.array.isRequired,\n /**\n * The component used to render the body of the popup.\n * @default Paper\n */\n PaperComponent: PropTypes.elementType,\n /**\n * The component used to position the popup.\n * @default Popper\n */\n PopperComponent: PropTypes.elementType,\n /**\n * The icon to display in place of the default popup icon.\n * @default \n */\n popupIcon: PropTypes.node,\n /**\n * If `true`, the component becomes readonly. It is also supported for multiple tags where the tag cannot be deleted.\n * @default false\n */\n readOnly: PropTypes.bool,\n /**\n * Render the group.\n *\n * @param {AutocompleteRenderGroupParams} params The group to render.\n * @returns {ReactNode}\n */\n renderGroup: PropTypes.func,\n /**\n * Render the input.\n *\n * @param {object} params\n * @returns {ReactNode}\n */\n renderInput: PropTypes.func.isRequired,\n /**\n * Render the option, use `getOptionLabel` by default.\n *\n * @param {object} props The props to apply on the li element.\n * @param {T} option The option to render.\n * @param {object} state The state of the component.\n * @returns {ReactNode}\n */\n renderOption: PropTypes.func,\n /**\n * Render the selected value.\n *\n * @param {T[]} value The `value` provided to the component.\n * @param {function} getTagProps A tag props getter.\n * @param {object} ownerState The state of the Autocomplete component.\n * @returns {ReactNode}\n */\n renderTags: PropTypes.func,\n /**\n * If `true`, the input's text is selected on focus.\n * It helps the user clear the selected value.\n * @default !props.freeSolo\n */\n selectOnFocus: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['small', 'medium']), PropTypes.string]),\n /**\n * The props used for each slot inside.\n * @default {}\n */\n slotProps: PropTypes.shape({\n clearIndicator: PropTypes.object,\n paper: PropTypes.object,\n popper: PropTypes.object,\n popupIndicator: PropTypes.object\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the autocomplete.\n *\n * The value must have reference equality with the option in order to be selected.\n * You can customize the equality behavior with the `isOptionEqualToValue` prop.\n */\n value: chainPropTypes(PropTypes.any, props => {\n if (props.multiple && props.value !== undefined && !Array.isArray(props.value)) {\n return new Error(['MUI: The Autocomplete expects the `value` prop to be an array when `multiple={true}` or undefined.', `However, ${props.value} was provided.`].join('\\n'));\n }\n return null;\n })\n} : void 0;\nexport default Autocomplete;","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getListSubheaderUtilityClass(slot) {\n return generateUtilityClass('MuiListSubheader', slot);\n}\nconst listSubheaderClasses = generateUtilityClasses('MuiListSubheader', ['root', 'colorPrimary', 'colorInherit', 'gutters', 'inset', 'sticky']);\nexport default listSubheaderClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"color\", \"component\", \"disableGutters\", \"disableSticky\", \"inset\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport capitalize from '../utils/capitalize';\nimport { getListSubheaderUtilityClass } from './listSubheaderClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n disableGutters,\n inset,\n disableSticky\n } = ownerState;\n const slots = {\n root: ['root', color !== 'default' && `color${capitalize(color)}`, !disableGutters && 'gutters', inset && 'inset', !disableSticky && 'sticky']\n };\n return composeClasses(slots, getListSubheaderUtilityClass, classes);\n};\nconst ListSubheaderRoot = styled('li', {\n name: 'MuiListSubheader',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`], !ownerState.disableGutters && styles.gutters, ownerState.inset && styles.inset, !ownerState.disableSticky && styles.sticky];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n boxSizing: 'border-box',\n lineHeight: '48px',\n listStyle: 'none',\n color: (theme.vars || theme).palette.text.secondary,\n fontFamily: theme.typography.fontFamily,\n fontWeight: theme.typography.fontWeightMedium,\n fontSize: theme.typography.pxToRem(14)\n}, ownerState.color === 'primary' && {\n color: (theme.vars || theme).palette.primary.main\n}, ownerState.color === 'inherit' && {\n color: 'inherit'\n}, !ownerState.disableGutters && {\n paddingLeft: 16,\n paddingRight: 16\n}, ownerState.inset && {\n paddingLeft: 72\n}, !ownerState.disableSticky && {\n position: 'sticky',\n top: 0,\n zIndex: 1,\n backgroundColor: (theme.vars || theme).palette.background.paper\n}));\nconst ListSubheader = /*#__PURE__*/React.forwardRef(function ListSubheader(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListSubheader'\n });\n const {\n className,\n color = 'default',\n component = 'li',\n disableGutters = false,\n disableSticky = false,\n inset = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n component,\n disableGutters,\n disableSticky,\n inset\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(ListSubheaderRoot, _extends({\n as: component,\n className: clsx(classes.root, className),\n ref: ref,\n ownerState: ownerState\n }, other));\n});\nListSubheader.muiSkipListHighlight = true;\nprocess.env.NODE_ENV !== \"production\" ? ListSubheader.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component. It supports those theme colors that make sense for this component.\n * @default 'default'\n */\n color: PropTypes.oneOf(['default', 'inherit', 'primary']),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the List Subheader will not have gutters.\n * @default false\n */\n disableGutters: PropTypes.bool,\n /**\n * If `true`, the List Subheader will not stick to the top during scroll.\n * @default false\n */\n disableSticky: PropTypes.bool,\n /**\n * If `true`, the List Subheader is indented.\n * @default false\n */\n inset: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListSubheader;","import * as React from 'react';\nconst usePreviousProps = value => {\n const ref = React.useRef({});\n React.useEffect(() => {\n ref.current = value;\n });\n return ref.current;\n};\nexport default usePreviousProps;"],"names":["stripDiacritics","string","normalize","replace","findIndex","array","comp","i","length","defaultFilterOptions","config","arguments","undefined","_config$ignoreAccents","ignoreAccents","_config$ignoreCase","ignoreCase","limit","_config$matchFrom","matchFrom","stringify","_config$trim","trim","options","_ref","inputValue","getOptionLabel","input","toLowerCase","filteredOptions","filter","option","candidate","indexOf","slice","createFilterOptions","defaultIsActiveElementInListbox","listboxRef","_listboxRef$current$p","current","parentElement","contains","document","activeElement","useAutocomplete","props","_props$unstable_isAct","unstable_isActiveElementInListbox","_props$unstable_class","unstable_classNamePrefix","_props$autoComplete","autoComplete","_props$autoHighlight","autoHighlight","_props$autoSelect","autoSelect","_props$blurOnSelect","blurOnSelect","_props$clearOnBlur","clearOnBlur","freeSolo","_props$clearOnEscape","clearOnEscape","_props$componentName","componentName","_props$defaultValue","defaultValue","multiple","_props$disableClearab","disableClearable","_props$disableCloseOn","disableCloseOnSelect","disabledProp","disabled","_props$disabledItemsF","disabledItemsFocusable","_props$disableListWra","disableListWrap","_props$filterOptions","filterOptions","_props$filterSelected","filterSelectedOptions","_props$freeSolo","getOptionDisabled","_props$getOptionLabel","getOptionLabelProp","_option$label","label","groupBy","_props$handleHomeEndK","handleHomeEndKeys","idProp","id","_props$includeInputIn","includeInputInList","inputValueProp","_props$isOptionEqualT","isOptionEqualToValue","value","_props$multiple","onChange","onClose","onHighlightChange","onInputChange","onOpen","openProp","open","_props$openOnFocus","openOnFocus","_props$readOnly","readOnly","_props$selectOnFocus","selectOnFocus","valueProp","useId","optionLabel","String","ignoreFocus","React","firstFocus","inputRef","_React$useState","_React$useState2","_slicedToArray","anchorEl","setAnchorEl","_React$useState3","_React$useState4","focusedTag","setFocusedTag","defaultHighlighted","highlightedIndexRef","_useControlled","useControlled","controlled","default","name","_useControlled2","setValueState","_useControlled3","state","_useControlled4","setInputValueState","_React$useState5","_React$useState6","focused","setFocused","resetInputValue","event","newValue","newInputValue","_useControlled5","_useControlled6","setOpenState","_React$useState7","_React$useState8","inputPristine","setInputPristine","inputValueIsSelectedValue","popupOpen","some","value2","previousProps","usePreviousProps","valueChange","listboxAvailable","focusTag","useEventCallback","tagToFocus","focus","querySelector","concat","setHighlightedIndex","_ref2","index","_ref2$reason","reason","removeAttribute","setAttribute","prev","classList","remove","listboxNode","getAttribute","add","scrollHeight","clientHeight","element","scrollBottom","scrollTop","elementBottom","offsetTop","offsetHeight","changeHighlightedIndex","_ref3","diff","_ref3$direction","direction","_ref3$reason","nextIndex","nextFocus","nextFocusDisabled","hasAttribute","validOptionIndex","maxIndex","newIndex","Math","abs","getNextIndex","setSelectionRange","syncHighlightedIndex","value1","every","val","previousHighlightedOption","checkHighlightedOptionExists","valueItem","currentOption","itemIndex","optionItem","handleListboxRef","node","setRef","handleOpen","handleClose","handleValue","details","isTouch","selectNewValue","origin","Array","isArray","push","splice","ctrlKey","metaKey","blur","handleFocusTag","nextTag","validTagIndex","handleClear","handleKeyDown","other","onKeyDown","defaultMuiPrevented","key","which","preventDefault","stopPropagation","handleFocus","handleBlur","handleInputChange","target","handleOptionMouseMove","Number","currentTarget","handleOptionTouchStart","handleOptionClick","handleTagDelete","handlePopupIndicator","handleMouseDown","handleClick","selectionEnd","selectionStart","select","handleInputMouseDown","dirty","groupedOptions","Map","reduce","acc","group","getRootProps","_extends","onMouseDown","onClick","getInputLabelProps","htmlFor","getInputProps","onBlur","onFocus","ref","autoCapitalize","spellCheck","role","getClearProps","tabIndex","getPopupIndicatorProps","getTagProps","_ref4","onDelete","getListboxProps","getOptionProps","_ref5","selected","onMouseMove","onTouchStart","expanded","createSvgIcon","_jsx","d","getAutocompleteUtilityClass","slot","generateUtilityClass","_ClearIcon","_ArrowDropDownIcon","generateUtilityClasses","_excluded","_excluded2","AutocompleteRoot","styled","overridesResolver","styles","ownerState","fullWidth","hasClearIcon","hasPopupIcon","inputFocused","size","_defineProperty","autocompleteClasses","tag","capitalize","inputRoot","root","_ref6","_extends2","_$concat","_$concat2","_$concat3","_extends3","clearIndicator","visibility","width","margin","maxWidth","flexWrap","paddingRight","minWidth","inputClasses","paddingBottom","padding","inputBaseClasses","sizeSmall","outlinedInputClasses","endAdornment","right","paddingTop","paddingLeft","filledInputClasses","hiddenLabel","flexGrow","textOverflow","opacity","AutocompleteEndAdornment","position","top","AutocompleteClearIndicator","IconButton","marginRight","AutocompletePopupIndicator","_ref7","popupIndicator","popupIndicatorOpen","_ref8","transform","AutocompletePopper","Popper","popper","disablePortal","popperDisablePortal","_ref10","theme","zIndex","vars","modal","AutocompletePaper","Paper","paper","_ref11","typography","body1","overflow","AutocompleteLoading","loading","_ref12","color","palette","text","secondary","AutocompleteNoOptions","noOptions","_ref13","AutocompleteListbox","listbox","_ref14","_ariaSelectedTru","_$concat4","listStyle","maxHeight","minHeight","display","justifyContent","alignItems","cursor","boxSizing","outline","WebkitTapHighlightColor","breakpoints","up","backgroundColor","action","hover","disabledOpacity","pointerEvents","focusVisible","primary","mainChannel","selectedOpacity","alpha","main","hoverOpacity","focusOpacity","AutocompleteGroupLabel","ListSubheader","groupLabel","_ref16","background","AutocompleteGroupUl","groupUl","inProps","_slotProps$clearIndic","_slotProps$paper","_slotProps$popper","_slotProps$popupIndic","startAdornment","useThemeProps","ChipProps","className","_props$clearIcon","clearIcon","ClearIcon","fontSize","_props$clearText","clearText","_props$closeText","closeText","_props$componentsProp","componentsProps","_props$disabled","_props$disablePortal","_props$forcePopupIcon","forcePopupIcon","_props$fullWidth","_props$getLimitTagsTe","getLimitTagsText","more","_props$limitTags","limitTags","_props$ListboxCompone","ListboxComponent","ListboxProps","_props$loading","_props$loadingText","loadingText","_props$noOptionsText","noOptionsText","_props$openText","openText","_props$PaperComponent","PaperComponent","_props$PopperComponen","PopperComponent","_props$popupIcon","popupIcon","ArrowDropDownIcon","renderGroupProp","renderGroup","renderInput","renderOptionProp","renderOption","renderTags","_props$size","_props$slotProps","slotProps","_objectWithoutPropertiesLoose","_useAutocomplete","externalListboxRef","_getListboxProps","otherListboxProps","combinedListboxRef","useForkRef","classes","slots","composeClasses","useUtilityClasses","getCustomizedTagProps","params","map","Chip","children","_jsxs","component","props2","renderListOption","optionProps","clearIndicatorSlotProps","paperSlotProps","popperSlotProps","popupIndicatorSlotProps","clsx","InputLabelProps","InputProps","title","inputProps","as","style","clientWidth","option2","index2","FormControlContext","formControlState","states","muiFormControl","useFormControl","FormLabelRoot","colorSecondary","filled","lineHeight","formLabelClasses","error","AsteriskComponent","asterisk","FormLabel","_props$component","fcs","required","getFormLabelUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","shrink","disableAnimation","animated","variant","transformOrigin","whiteSpace","left","transition","transitions","create","duration","shorter","easing","easeOut","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","getListSubheaderUtilityClass","ListSubheaderRoot","disableGutters","gutters","inset","disableSticky","sticky","fontFamily","fontWeight","fontWeightMedium","pxToRem","_props$color","_props$disableGutters","_props$disableSticky","_props$inset","muiSkipListHighlight"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2260.71dd3e05.chunk.js b/portal-ui/build/static/js/2260.c0246fc5.chunk.js similarity index 99% rename from portal-ui/build/static/js/2260.71dd3e05.chunk.js rename to portal-ui/build/static/js/2260.c0246fc5.chunk.js index 78ed13b61..e870768fe 100644 --- a/portal-ui/build/static/js/2260.71dd3e05.chunk.js +++ b/portal-ui/build/static/js/2260.c0246fc5.chunk.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2260],{67252:function(e,t,n){n.d(t,{Z:function(){return oe}});var o=n(4942),r=n(63366),a=n(87462),i=n(72791),l=n(28182),c=n(94419),s=n(29439),u=n(18252),p=n(88637),d=n(36229),f=n(97054),v=n(62971);function g(e){return"undefined"!==typeof e.normalize?e.normalize("NFD").replace(/[\u0300-\u036f]/g,""):e}function m(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{},t=e.ignoreAccents,n=void 0===t||t,o=e.ignoreCase,r=void 0===o||o,a=e.limit,i=e.matchFrom,l=void 0===i?"any":i,c=e.stringify,s=e.trim,u=void 0!==s&&s;return function(e,t){var o=t.inputValue,i=t.getOptionLabel,s=u?o.trim():o;r&&(s=s.toLowerCase()),n&&(s=g(s));var p=s?e.filter((function(e){var t=(c||i)(e);return r&&(t=t.toLowerCase()),n&&(t=g(t)),"start"===l?0===t.indexOf(s):t.indexOf(s)>-1})):e;return"number"===typeof a?p.slice(0,a):p}}(),b=function(e){var t;return null!==e.current&&(null==(t=e.current.parentElement)?void 0:t.contains(document.activeElement))};function Z(e){var t,n=e.unstable_isActiveElementInListbox,o=void 0===n?b:n,r=e.unstable_classNamePrefix,l=void 0===r?"Mui":r,c=e.autoComplete,g=void 0!==c&&c,Z=e.autoHighlight,x=void 0!==Z&&Z,y=e.autoSelect,S=void 0!==y&&y,O=e.blurOnSelect,I=void 0!==O&&O,k=e.clearOnBlur,C=void 0===k?!e.freeSolo:k,P=e.clearOnEscape,w=void 0!==P&&P,L=e.componentName,A=void 0===L?"useAutocomplete":L,R=e.defaultValue,T=void 0===R?e.multiple?[]:null:R,M=e.disableClearable,z=void 0!==M&&M,N=e.disableCloseOnSelect,F=void 0!==N&&N,D=e.disabled,E=e.disabledItemsFocusable,W=void 0!==E&&E,j=e.disableListWrap,q=void 0!==j&&j,H=e.filterOptions,V=void 0===H?h:H,B=e.filterSelectedOptions,G=void 0!==B&&B,K=e.freeSolo,U=void 0!==K&&K,_=e.getOptionDisabled,J=e.getOptionLabel,Q=void 0===J?function(e){var t;return null!=(t=e.label)?t:e}:J,X=e.groupBy,Y=e.handleHomeEndKeys,$=void 0===Y?!e.freeSolo:Y,ee=e.id,te=e.includeInputInList,ne=void 0!==te&&te,oe=e.inputValue,re=e.isOptionEqualToValue,ae=void 0===re?function(e,t){return e===t}:re,ie=e.multiple,le=void 0!==ie&&ie,ce=e.onChange,se=e.onClose,ue=e.onHighlightChange,pe=e.onInputChange,de=e.onOpen,fe=e.open,ve=e.openOnFocus,ge=void 0!==ve&&ve,me=e.options,he=e.readOnly,be=void 0!==he&&he,Ze=e.selectOnFocus,xe=void 0===Ze?!e.freeSolo:Ze,ye=e.value,Se=(0,u.Z)(ee);t=function(e){var t=Q(e);return"string"!==typeof t?String(t):t};var Oe=i.useRef(!1),Ie=i.useRef(!0),ke=i.useRef(null),Ce=i.useRef(null),Pe=i.useState(null),we=(0,s.Z)(Pe,2),Le=we[0],Ae=we[1],Re=i.useState(-1),Te=(0,s.Z)(Re,2),Me=Te[0],ze=Te[1],Ne=x?0:-1,Fe=i.useRef(Ne),De=(0,p.Z)({controlled:ye,default:T,name:A}),Ee=(0,s.Z)(De,2),We=Ee[0],je=Ee[1],qe=(0,p.Z)({controlled:oe,default:"",name:A,state:"inputValue"}),He=(0,s.Z)(qe,2),Ve=He[0],Be=He[1],Ge=i.useState(!1),Ke=(0,s.Z)(Ge,2),Ue=Ke[0],_e=Ke[1],Je=i.useCallback((function(e,n){if((le?We.length0&&!be,st=(0,f.Z)((function(e){-1===e?ke.current.focus():Le.querySelector('[data-tag-index="'.concat(e,'"]')).focus()}));i.useEffect((function(){le&&Me>We.length-1&&(ze(-1),st(-1))}),[We,le,Me,st]);var ut=(0,f.Z)((function(e){var t=e.event,n=e.index,o=e.reason,r=void 0===o?"auto":o;if(Fe.current=n,-1===n?ke.current.removeAttribute("aria-activedescendant"):ke.current.setAttribute("aria-activedescendant","".concat(Se,"-option-").concat(n)),ue&&ue(t,-1===n?null:it[n],r),Ce.current){var a=Ce.current.querySelector('[role="option"].'.concat(l,"-focused"));a&&(a.classList.remove("".concat(l,"-focused")),a.classList.remove("".concat(l,"-focusVisible")));var i=Ce.current;if("listbox"!==Ce.current.getAttribute("role")&&(i=Ce.current.parentElement.querySelector('[role="listbox"]')),i)if(-1!==n){var c=Ce.current.querySelector('[data-option-index="'.concat(n,'"]'));if(c&&(c.classList.add("".concat(l,"-focused")),"keyboard"===r&&c.classList.add("".concat(l,"-focusVisible")),i.scrollHeight>i.clientHeight&&"mouse"!==r)){var s=c,u=i.clientHeight+i.scrollTop,p=s.offsetTop+s.offsetHeight;p>u?i.scrollTop=p-i.clientHeight:s.offsetTop-s.offsetHeight*(X?1.3:0)1?0:e:t>e?t===e+1&&ne?-1:q||Math.abs(o)>1?e:0:t}(),a);if(ut({index:c,reason:l,event:n}),g&&"reset"!==o)if(-1===c)ke.current.value=Ve;else{var s=t(it[c]);ke.current.value=s,0===s.toLowerCase().indexOf(Ve.toLowerCase())&&Ve.length>0&&ke.current.setSelectionRange(Ve.length,s.length)}}})),dt=i.useCallback((function(){if(at&&!function(){var e,n;if(-1!==Fe.current&<.filteredOptions&<.filteredOptions.length!==it.length&<.inputValue===Ve&&(le?We.length===lt.value.length&<.value.every((function(e,n){return t(We[n])===t(e)})):(e=lt.value,n=We,(e?t(e):"")===(n?t(n):"")))){var o=lt.filteredOptions[Fe.current];if(o&&it.some((function(e){return t(e)===t(o)})))return!0}return!1}()){var e=le?We[0]:We;if(0!==it.length&&null!=e){if(Ce.current)if(null==e)Fe.current>=it.length-1?ut({index:it.length-1}):ut({index:Fe.current});else{var n=it[Fe.current];if(le&&n&&-1!==m(We,(function(e){return ae(n,e)})))return;var o=m(it,(function(t){return ae(t,e)}));-1===o?pt({diff:"reset"}):ut({index:o})}}else pt({diff:"reset"})}}),[it.length,!le&&We,G,pt,ut,at,Ve,le]),ft=(0,f.Z)((function(e){(0,v.Z)(Ce,e),e&&dt()}));i.useEffect((function(){dt()}),[dt]);var vt=function(e){Ye||($e(!0),ot(!0),de&&de(e))},gt=function(e,t){Ye&&($e(!1),se&&se(e,t))},mt=function(e,t,n,o){if(le){if(We.length===t.length&&We.every((function(e,n){return e===t[n]})))return}else if(We===t)return;ce&&ce(e,t,n,o),je(t)},ht=i.useRef(!1),bt=function(e,t){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"options",o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"selectOption",r=t;if(le){var a=m(r=Array.isArray(We)?We.slice():[],(function(e){return ae(t,e)}));-1===a?r.push(t):"freeSolo"!==n&&(r.splice(a,1),o="removeOption")}Je(e,r),mt(e,r,o,{option:t}),F||e&&(e.ctrlKey||e.metaKey)||gt(e,o),(!0===I||"touch"===I&&ht.current||"mouse"===I&&!ht.current)&&ke.current.blur()};var Zt=function(e,t){if(le){""===Ve&>(e,"toggleInput");var n=Me;-1===Me?""===Ve&&"previous"===t&&(n=We.length-1):((n+="next"===t?1:-1)<0&&(n=0),n===We.length&&(n=-1)),n=function(e,t){if(-1===e)return-1;for(var n=e;;){if("next"===t&&n===We.length||"previous"===t&&-1===n)return-1;var o=Le.querySelector('[data-tag-index="'.concat(n,'"]'));if(o&&o.hasAttribute("tabindex")&&!o.disabled&&"true"!==o.getAttribute("aria-disabled"))return n;n+="next"===t?1:-1}}(n,t),ze(n),st(n)}},xt=function(e){Oe.current=!0,Be(""),pe&&pe(e,"","clear"),mt(e,le?[]:null,"clear")},yt=function(e){return function(t){if(e.onKeyDown&&e.onKeyDown(t),!t.defaultMuiPrevented&&(-1!==Me&&-1===["ArrowLeft","ArrowRight"].indexOf(t.key)&&(ze(-1),st(-1)),229!==t.which))switch(t.key){case"Home":at&&$&&(t.preventDefault(),pt({diff:"start",direction:"next",reason:"keyboard",event:t}));break;case"End":at&&$&&(t.preventDefault(),pt({diff:"end",direction:"previous",reason:"keyboard",event:t}));break;case"PageUp":t.preventDefault(),pt({diff:-5,direction:"previous",reason:"keyboard",event:t}),vt(t);break;case"PageDown":t.preventDefault(),pt({diff:5,direction:"next",reason:"keyboard",event:t}),vt(t);break;case"ArrowDown":t.preventDefault(),pt({diff:1,direction:"next",reason:"keyboard",event:t}),vt(t);break;case"ArrowUp":t.preventDefault(),pt({diff:-1,direction:"previous",reason:"keyboard",event:t}),vt(t);break;case"ArrowLeft":Zt(t,"previous");break;case"ArrowRight":Zt(t,"next");break;case"Enter":if(-1!==Fe.current&&at){var n=it[Fe.current],o=!!_&&_(n);if(t.preventDefault(),o)return;bt(t,n,"selectOption"),g&&ke.current.setSelectionRange(ke.current.value.length,ke.current.value.length)}else U&&""!==Ve&&!1===rt&&(le&&t.preventDefault(),bt(t,Ve,"createOption","freeSolo"));break;case"Escape":at?(t.preventDefault(),t.stopPropagation(),gt(t,"escape")):w&&(""!==Ve||le&&We.length>0)&&(t.preventDefault(),t.stopPropagation(),xt(t));break;case"Backspace":if(le&&!be&&""===Ve&&We.length>0){var r=-1===Me?We.length-1:Me,a=We.slice();a.splice(r,1),mt(t,a,"removeOption",{option:We[r]})}break;case"Delete":if(le&&!be&&""===Ve&&We.length>0&&-1!==Me){var i=Me,l=We.slice();l.splice(i,1),mt(t,l,"removeOption",{option:We[i]})}}}},St=function(e){_e(!0),ge&&!Oe.current&&vt(e)},Ot=function(e){o(Ce)?ke.current.focus():(_e(!1),Ie.current=!0,Oe.current=!1,S&&-1!==Fe.current&&at?bt(e,it[Fe.current],"blur"):S&&U&&""!==Ve?bt(e,Ve,"blur","freeSolo"):C&&Je(e,We),gt(e,"blur"))},It=function(e){var t=e.target.value;Ve!==t&&(Be(t),ot(!1),pe&&pe(e,t,"input")),""===t?z||le||mt(e,null,"clear"):vt(e)},kt=function(e){var t=Number(e.currentTarget.getAttribute("data-option-index"));Fe.current!==t&&ut({event:e,index:t,reason:"mouse"})},Ct=function(e){ut({event:e,index:Number(e.currentTarget.getAttribute("data-option-index")),reason:"touch"}),ht.current=!0},Pt=function(e){var t=Number(e.currentTarget.getAttribute("data-option-index"));bt(e,it[t],"selectOption"),ht.current=!1},wt=function(e){return function(t){var n=We.slice();n.splice(e,1),mt(t,n,"removeOption",{option:We[e]})}},Lt=function(e){Ye?gt(e,"toggleInput"):vt(e)},At=function(e){e.currentTarget.contains(e.target)&&e.target.getAttribute("id")!==Se&&e.preventDefault()},Rt=function(e){e.currentTarget.contains(e.target)&&(ke.current.focus(),xe&&Ie.current&&ke.current.selectionEnd-ke.current.selectionStart===0&&ke.current.select(),Ie.current=!1)},Tt=function(e){""!==Ve&&Ye||Lt(e)},Mt=U&&Ve.length>0;Mt=Mt||(le?We.length>0:null!==We);var zt=it;if(X){new Map;zt=it.reduce((function(e,t,n){var o=X(t);return e.length>0&&e[e.length-1].group===o?e[e.length-1].options.push(t):e.push({key:n,index:n,group:o,options:[t]}),e}),[])}return D&&Ue&&Ot(),{getRootProps:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.Z)({"aria-owns":ct?"".concat(Se,"-listbox"):null},e,{onKeyDown:yt(e),onMouseDown:At,onClick:Rt})},getInputLabelProps:function(){return{id:"".concat(Se,"-label"),htmlFor:Se}},getInputProps:function(){return{id:Se,value:Ve,onBlur:Ot,onFocus:St,onChange:It,onMouseDown:Tt,"aria-activedescendant":at?"":null,"aria-autocomplete":g?"both":"list","aria-controls":ct?"".concat(Se,"-listbox"):void 0,"aria-expanded":ct,autoComplete:"off",ref:ke,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:D}},getClearProps:function(){return{tabIndex:-1,onClick:xt}},getPopupIndicatorProps:function(){return{tabIndex:-1,onClick:Lt}},getTagProps:function(e){var t=e.index;return(0,a.Z)({key:t,"data-tag-index":t,tabIndex:-1},!be&&{onDelete:wt(t)})},getListboxProps:function(){return{role:"listbox",id:"".concat(Se,"-listbox"),"aria-labelledby":"".concat(Se,"-label"),ref:ft,onMouseDown:function(e){e.preventDefault()}}},getOptionProps:function(e){var n=e.index,o=e.option,r=(le?We:[We]).some((function(e){return null!=e&&ae(o,e)})),a=!!_&&_(o);return{key:t(o),tabIndex:-1,role:"option",id:"".concat(Se,"-option-").concat(n),onMouseMove:kt,onClick:Pt,onTouchStart:Ct,"data-option-index":n,"aria-disabled":a,"aria-selected":r}},id:Se,inputValue:Ve,value:We,dirty:Mt,expanded:at&&Le,popupOpen:at,focused:Ue||-1!==Me,anchorEl:Le,setAnchorEl:Ae,focusedTag:Me,groupedOptions:zt}}var x=n(12065),y=n(41),S=n(79834),O=n(35527),I=n(13400),k=n(81918),C=n(86779),P=n(55891),w=n(56059),L=n(96285),A=n(76189),R=n(80184),T=(0,A.Z)((0,R.jsx)("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close"),M=n(89059),z=n(31402),N=n(66934),F=n(75878),D=n(21217);function E(e){return(0,D.Z)("MuiAutocomplete",e)}var W,j,q=(0,F.Z)("MuiAutocomplete",["root","expanded","fullWidth","focused","focusVisible","tag","tagSizeSmall","tagSizeMedium","hasPopupIcon","hasClearIcon","inputRoot","input","inputFocused","endAdornment","clearIndicator","popupIndicator","popupIndicatorOpen","popper","popperDisablePortal","paper","listbox","loading","noOptions","option","groupLabel","groupUl"]),H=n(14036),V=n(42071),B=["autoComplete","autoHighlight","autoSelect","blurOnSelect","ChipProps","className","clearIcon","clearOnBlur","clearOnEscape","clearText","closeText","componentsProps","defaultValue","disableClearable","disableCloseOnSelect","disabled","disabledItemsFocusable","disableListWrap","disablePortal","filterOptions","filterSelectedOptions","forcePopupIcon","freeSolo","fullWidth","getLimitTagsText","getOptionDisabled","getOptionLabel","isOptionEqualToValue","groupBy","handleHomeEndKeys","id","includeInputInList","inputValue","limitTags","ListboxComponent","ListboxProps","loading","loadingText","multiple","noOptionsText","onChange","onClose","onHighlightChange","onInputChange","onOpen","open","openOnFocus","openText","options","PaperComponent","PopperComponent","popupIcon","readOnly","renderGroup","renderInput","renderOption","renderTags","selectOnFocus","size","slotProps","value"],G=["ref"],K=(0,N.ZP)("div",{name:"MuiAutocomplete",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState,r=n.fullWidth,a=n.hasClearIcon,i=n.hasPopupIcon,l=n.inputFocused,c=n.size;return[(0,o.Z)({},"& .".concat(q.tag),t.tag),(0,o.Z)({},"& .".concat(q.tag),t["tagSize".concat((0,H.Z)(c))]),(0,o.Z)({},"& .".concat(q.inputRoot),t.inputRoot),(0,o.Z)({},"& .".concat(q.input),t.input),(0,o.Z)({},"& .".concat(q.input),l&&t.inputFocused),t.root,r&&t.fullWidth,i&&t.hasPopupIcon,a&&t.hasClearIcon]}})((function(e){var t,n,r,i,l,c=e.ownerState;return(0,a.Z)((t={},(0,o.Z)(t,"&.".concat(q.focused," .").concat(q.clearIndicator),{visibility:"visible"}),(0,o.Z)(t,"@media (pointer: fine)",(0,o.Z)({},"&:hover .".concat(q.clearIndicator),{visibility:"visible"})),t),c.fullWidth&&{width:"100%"},(l={},(0,o.Z)(l,"& .".concat(q.tag),(0,a.Z)({margin:3,maxWidth:"calc(100% - 6px)"},"small"===c.size&&{margin:2,maxWidth:"calc(100% - 4px)"})),(0,o.Z)(l,"& .".concat(q.inputRoot),(n={flexWrap:"wrap"},(0,o.Z)(n,".".concat(q.hasPopupIcon,"&, .").concat(q.hasClearIcon,"&"),{paddingRight:30}),(0,o.Z)(n,".".concat(q.hasPopupIcon,".").concat(q.hasClearIcon,"&"),{paddingRight:56}),(0,o.Z)(n,"& .".concat(q.input),{width:0,minWidth:30}),n)),(0,o.Z)(l,"& .".concat(C.Z.root),{paddingBottom:1,"& .MuiInput-input":{padding:"4px 4px 4px 0px"}}),(0,o.Z)(l,"& .".concat(C.Z.root,".").concat(P.Z.sizeSmall),(0,o.Z)({},"& .".concat(C.Z.input),{padding:"2px 4px 3px 0"})),(0,o.Z)(l,"& .".concat(w.Z.root),(r={padding:9},(0,o.Z)(r,".".concat(q.hasPopupIcon,"&, .").concat(q.hasClearIcon,"&"),{paddingRight:39}),(0,o.Z)(r,".".concat(q.hasPopupIcon,".").concat(q.hasClearIcon,"&"),{paddingRight:65}),(0,o.Z)(r,"& .".concat(q.input),{padding:"7.5px 4px 7.5px 5px"}),(0,o.Z)(r,"& .".concat(q.endAdornment),{right:9}),r)),(0,o.Z)(l,"& .".concat(w.Z.root,".").concat(P.Z.sizeSmall),(0,o.Z)({paddingTop:6,paddingBottom:6,paddingLeft:6},"& .".concat(q.input),{padding:"2.5px 4px 2.5px 8px"})),(0,o.Z)(l,"& .".concat(L.Z.root),(i={paddingTop:19,paddingLeft:8},(0,o.Z)(i,".".concat(q.hasPopupIcon,"&, .").concat(q.hasClearIcon,"&"),{paddingRight:39}),(0,o.Z)(i,".".concat(q.hasPopupIcon,".").concat(q.hasClearIcon,"&"),{paddingRight:65}),(0,o.Z)(i,"& .".concat(L.Z.input),{padding:"7px 4px"}),(0,o.Z)(i,"& .".concat(q.endAdornment),{right:9}),i)),(0,o.Z)(l,"& .".concat(L.Z.root,".").concat(P.Z.sizeSmall),(0,o.Z)({paddingBottom:1},"& .".concat(L.Z.input),{padding:"2.5px 4px"})),(0,o.Z)(l,"& .".concat(P.Z.hiddenLabel),{paddingTop:8}),(0,o.Z)(l,"& .".concat(L.Z.root,".").concat(P.Z.hiddenLabel),(0,o.Z)({paddingTop:0,paddingBottom:0},"& .".concat(q.input),{paddingTop:16,paddingBottom:17})),(0,o.Z)(l,"& .".concat(L.Z.root,".").concat(P.Z.hiddenLabel,".").concat(P.Z.sizeSmall),(0,o.Z)({},"& .".concat(q.input),{paddingTop:8,paddingBottom:9})),(0,o.Z)(l,"& .".concat(q.input),(0,a.Z)({flexGrow:1,textOverflow:"ellipsis",opacity:0},c.inputFocused&&{opacity:1})),l))})),U=(0,N.ZP)("div",{name:"MuiAutocomplete",slot:"EndAdornment",overridesResolver:function(e,t){return t.endAdornment}})({position:"absolute",right:0,top:"calc(50% - 14px)"}),_=(0,N.ZP)(I.Z,{name:"MuiAutocomplete",slot:"ClearIndicator",overridesResolver:function(e,t){return t.clearIndicator}})({marginRight:-2,padding:4,visibility:"hidden"}),J=(0,N.ZP)(I.Z,{name:"MuiAutocomplete",slot:"PopupIndicator",overridesResolver:function(e,t){var n=e.ownerState;return(0,a.Z)({},t.popupIndicator,n.popupOpen&&t.popupIndicatorOpen)}})((function(e){var t=e.ownerState;return(0,a.Z)({padding:2,marginRight:-2},t.popupOpen&&{transform:"rotate(180deg)"})})),Q=(0,N.ZP)(y.Z,{name:"MuiAutocomplete",slot:"Popper",overridesResolver:function(e,t){var n=e.ownerState;return[(0,o.Z)({},"& .".concat(q.option),t.option),t.popper,n.disablePortal&&t.popperDisablePortal]}})((function(e){var t=e.theme,n=e.ownerState;return(0,a.Z)({zIndex:(t.vars||t).zIndex.modal},n.disablePortal&&{position:"absolute"})})),X=(0,N.ZP)(O.Z,{name:"MuiAutocomplete",slot:"Paper",overridesResolver:function(e,t){return t.paper}})((function(e){var t=e.theme;return(0,a.Z)({},t.typography.body1,{overflow:"auto"})})),Y=(0,N.ZP)("div",{name:"MuiAutocomplete",slot:"Loading",overridesResolver:function(e,t){return t.loading}})((function(e){var t=e.theme;return{color:(t.vars||t).palette.text.secondary,padding:"14px 16px"}})),$=(0,N.ZP)("div",{name:"MuiAutocomplete",slot:"NoOptions",overridesResolver:function(e,t){return t.noOptions}})((function(e){var t=e.theme;return{color:(t.vars||t).palette.text.secondary,padding:"14px 16px"}})),ee=(0,N.ZP)("div",{name:"MuiAutocomplete",slot:"Listbox",overridesResolver:function(e,t){return t.listbox}})((function(e){var t,n,r=e.theme;return(0,o.Z)({listStyle:"none",margin:0,padding:"8px 0",maxHeight:"40vh",overflow:"auto",position:"relative"},"& .".concat(q.option),(n={minHeight:48,display:"flex",overflow:"hidden",justifyContent:"flex-start",alignItems:"center",cursor:"pointer",paddingTop:6,boxSizing:"border-box",outline:"0",WebkitTapHighlightColor:"transparent",paddingBottom:6,paddingLeft:16,paddingRight:16},(0,o.Z)(n,r.breakpoints.up("sm"),{minHeight:"auto"}),(0,o.Z)(n,"&.".concat(q.focused),{backgroundColor:(r.vars||r).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}}),(0,o.Z)(n,'&[aria-disabled="true"]',{opacity:(r.vars||r).palette.action.disabledOpacity,pointerEvents:"none"}),(0,o.Z)(n,"&.".concat(q.focusVisible),{backgroundColor:(r.vars||r).palette.action.focus}),(0,o.Z)(n,'&[aria-selected="true"]',(t={backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / ").concat(r.vars.palette.action.selectedOpacity,")"):(0,x.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity)},(0,o.Z)(t,"&.".concat(q.focused),{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / calc(").concat(r.vars.palette.action.selectedOpacity," + ").concat(r.vars.palette.action.hoverOpacity,"))"):(0,x.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity+r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:(r.vars||r).palette.action.selected}}),(0,o.Z)(t,"&.".concat(q.focusVisible),{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / calc(").concat(r.vars.palette.action.selectedOpacity," + ").concat(r.vars.palette.action.focusOpacity,"))"):(0,x.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity+r.palette.action.focusOpacity)}),t)),n))})),te=(0,N.ZP)(S.Z,{name:"MuiAutocomplete",slot:"GroupLabel",overridesResolver:function(e,t){return t.groupLabel}})((function(e){var t=e.theme;return{backgroundColor:(t.vars||t).palette.background.paper,top:-8}})),ne=(0,N.ZP)("ul",{name:"MuiAutocomplete",slot:"GroupUl",overridesResolver:function(e,t){return t.groupUl}})((0,o.Z)({padding:0},"& .".concat(q.option),{paddingLeft:24})),oe=i.forwardRef((function(e,t){var n,o,s,u,p,d=(0,z.Z)({props:e,name:"MuiAutocomplete"}),f=(d.autoComplete,d.autoHighlight,d.autoSelect,d.blurOnSelect,d.ChipProps),v=d.className,g=d.clearIcon,m=void 0===g?W||(W=(0,R.jsx)(T,{fontSize:"small"})):g,h=d.clearOnBlur,b=(void 0===h&&d.freeSolo,d.clearOnEscape,d.clearText),x=void 0===b?"Clear":b,S=d.closeText,I=void 0===S?"Close":S,C=d.componentsProps,P=void 0===C?{}:C,w=d.defaultValue,L=(void 0===w&&d.multiple,d.disableClearable),A=void 0!==L&&L,N=(d.disableCloseOnSelect,d.disabled),F=void 0!==N&&N,D=(d.disabledItemsFocusable,d.disableListWrap,d.disablePortal),q=void 0!==D&&D,oe=(d.filterSelectedOptions,d.forcePopupIcon),re=void 0===oe?"auto":oe,ae=d.freeSolo,ie=void 0!==ae&&ae,le=d.fullWidth,ce=void 0!==le&&le,se=d.getLimitTagsText,ue=void 0===se?function(e){return"+".concat(e)}:se,pe=d.getOptionLabel,de=void 0===pe?function(e){var t;return null!=(t=e.label)?t:e}:pe,fe=d.groupBy,ve=d.handleHomeEndKeys,ge=(void 0===ve&&d.freeSolo,d.includeInputInList,d.limitTags),me=void 0===ge?-1:ge,he=d.ListboxComponent,be=void 0===he?"ul":he,Ze=d.ListboxProps,xe=d.loading,ye=void 0!==xe&&xe,Se=d.loadingText,Oe=void 0===Se?"Loading\u2026":Se,Ie=d.multiple,ke=void 0!==Ie&&Ie,Ce=d.noOptionsText,Pe=void 0===Ce?"No options":Ce,we=(d.openOnFocus,d.openText),Le=void 0===we?"Open":we,Ae=d.PaperComponent,Re=void 0===Ae?O.Z:Ae,Te=d.PopperComponent,Me=void 0===Te?y.Z:Te,ze=d.popupIcon,Ne=void 0===ze?j||(j=(0,R.jsx)(M.Z,{})):ze,Fe=d.readOnly,De=void 0!==Fe&&Fe,Ee=d.renderGroup,We=d.renderInput,je=d.renderOption,qe=d.renderTags,He=d.selectOnFocus,Ve=(void 0===He&&d.freeSolo,d.size),Be=void 0===Ve?"medium":Ve,Ge=d.slotProps,Ke=void 0===Ge?{}:Ge,Ue=(0,r.Z)(d,B),_e=Z((0,a.Z)({},d,{componentName:"Autocomplete"})),Je=_e.getRootProps,Qe=_e.getInputProps,Xe=_e.getInputLabelProps,Ye=_e.getPopupIndicatorProps,$e=_e.getClearProps,et=_e.getTagProps,tt=_e.getListboxProps,nt=_e.getOptionProps,ot=_e.value,rt=_e.dirty,at=_e.expanded,it=_e.id,lt=_e.popupOpen,ct=_e.focused,st=_e.focusedTag,ut=_e.anchorEl,pt=_e.setAnchorEl,dt=_e.inputValue,ft=_e.groupedOptions,vt=!A&&!F&&rt&&!De,gt=(!ie||!0===re)&&!1!==re,mt=Qe().onMouseDown,ht=(null!=Ze?Ze:{}).ref,bt=tt(),Zt=bt.ref,xt=(0,r.Z)(bt,G),yt=(0,V.Z)(Zt,ht),St=(0,a.Z)({},d,{disablePortal:q,expanded:at,focused:ct,fullWidth:ce,hasClearIcon:vt,hasPopupIcon:gt,inputFocused:-1===st,popupOpen:lt,size:Be}),Ot=function(e){var t=e.classes,n=e.disablePortal,o=e.expanded,r=e.focused,a=e.fullWidth,i=e.hasClearIcon,l=e.hasPopupIcon,s=e.inputFocused,u=e.popupOpen,p=e.size,d={root:["root",o&&"expanded",r&&"focused",a&&"fullWidth",i&&"hasClearIcon",l&&"hasPopupIcon"],inputRoot:["inputRoot"],input:["input",s&&"inputFocused"],tag:["tag","tagSize".concat((0,H.Z)(p))],endAdornment:["endAdornment"],clearIndicator:["clearIndicator"],popupIndicator:["popupIndicator",u&&"popupIndicatorOpen"],popper:["popper",n&&"popperDisablePortal"],paper:["paper"],listbox:["listbox"],loading:["loading"],noOptions:["noOptions"],option:["option"],groupLabel:["groupLabel"],groupUl:["groupUl"]};return(0,c.Z)(d,E,t)}(St);if(ke&&ot.length>0){var It=function(e){return(0,a.Z)({className:Ot.tag,disabled:F},et(e))};p=qe?qe(ot,It,St):ot.map((function(e,t){return(0,R.jsx)(k.Z,(0,a.Z)({label:de(e),size:Be},It({index:t}),f))}))}if(me>-1&&Array.isArray(p)){var kt=p.length-me;!ct&&kt>0&&(p=p.splice(0,me)).push((0,R.jsx)("span",{className:Ot.tag,children:ue(kt)},p.length))}var Ct=Ee||function(e){return(0,R.jsxs)("li",{children:[(0,R.jsx)(te,{className:Ot.groupLabel,ownerState:St,component:"div",children:e.group}),(0,R.jsx)(ne,{className:Ot.groupUl,ownerState:St,children:e.children})]},e.key)},Pt=je||function(e,t){return(0,R.jsx)("li",(0,a.Z)({},e,{children:de(t)}))},wt=function(e,t){var n=nt({option:e,index:t});return Pt((0,a.Z)({},n,{className:Ot.option}),e,{selected:n["aria-selected"],index:t,inputValue:dt})},Lt=null!=(n=Ke.clearIndicator)?n:P.clearIndicator,At=null!=(o=Ke.paper)?o:P.paper,Rt=null!=(s=Ke.popper)?s:P.popper,Tt=null!=(u=Ke.popupIndicator)?u:P.popupIndicator;return(0,R.jsxs)(i.Fragment,{children:[(0,R.jsx)(K,(0,a.Z)({ref:t,className:(0,l.Z)(Ot.root,v),ownerState:St},Je(Ue),{children:We({id:it,disabled:F,fullWidth:!0,size:"small"===Be?"small":void 0,InputLabelProps:Xe(),InputProps:(0,a.Z)({ref:pt,className:Ot.inputRoot,startAdornment:p,onClick:function(e){e.target===e.currentTarget&&mt(e)}},(vt||gt)&&{endAdornment:(0,R.jsxs)(U,{className:Ot.endAdornment,ownerState:St,children:[vt?(0,R.jsx)(_,(0,a.Z)({},$e(),{"aria-label":x,title:x,ownerState:St},Lt,{className:(0,l.Z)(Ot.clearIndicator,null==Lt?void 0:Lt.className),children:m})):null,gt?(0,R.jsx)(J,(0,a.Z)({},Ye(),{disabled:F,"aria-label":lt?I:Le,title:lt?I:Le,ownerState:St},Tt,{className:(0,l.Z)(Ot.popupIndicator,null==Tt?void 0:Tt.className),children:Ne})):null]})}),inputProps:(0,a.Z)({className:Ot.input,disabled:F,readOnly:De},Qe())})})),ut?(0,R.jsx)(Q,(0,a.Z)({as:Me,disablePortal:q,style:{width:ut?ut.clientWidth:null},ownerState:St,role:"presentation",anchorEl:ut,open:lt},Rt,{className:(0,l.Z)(Ot.popper,null==Rt?void 0:Rt.className),children:(0,R.jsxs)(X,(0,a.Z)({ownerState:St,as:Re},At,{className:(0,l.Z)(Ot.paper,null==At?void 0:At.className),children:[ye&&0===ft.length?(0,R.jsx)(Y,{className:Ot.loading,ownerState:St,children:Oe}):null,0!==ft.length||ie||ye?null:(0,R.jsx)($,{className:Ot.noOptions,ownerState:St,role:"presentation",onMouseDown:function(e){e.preventDefault()},children:Pe}),ft.length>0?(0,R.jsx)(ee,(0,a.Z)({as:be,className:Ot.listbox,ownerState:St},xt,Ze,{ref:yt,children:ft.map((function(e,t){return fe?Ct({key:e.key,group:e.group,children:e.options.map((function(t,n){return wt(t,e.index+n)}))}):wt(e,t)}))})):null]}))})):null]})}))},93840:function(e,t,n){var o=n(72791).createContext(void 0);t.Z=o},76147:function(e,t,n){function o(e){var t=e.props,n=e.states,o=e.muiFormControl;return n.reduce((function(e,n){return e[n]=t[n],o&&"undefined"===typeof t[n]&&(e[n]=o[n]),e}),{})}n.d(t,{Z:function(){return o}})},52930:function(e,t,n){n.d(t,{Z:function(){return a}});var o=n(72791),r=n(93840);function a(){return o.useContext(r.Z)}},17133:function(e,t,n){var o=n(4942),r=n(63366),a=n(87462),i=n(72791),l=n(28182),c=n(94419),s=n(76147),u=n(52930),p=n(14036),d=n(31402),f=n(66934),v=n(10843),g=n(80184),m=["children","className","color","component","disabled","error","filled","focused","required"],h=(0,f.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return(0,a.Z)({},t.root,"secondary"===n.color&&t.colorSecondary,n.filled&&t.filled)}})((function(e){var t,n=e.theme,r=e.ownerState;return(0,a.Z)({color:(n.vars||n).palette.text.secondary},n.typography.body1,(t={lineHeight:"1.4375em",padding:0,position:"relative"},(0,o.Z)(t,"&.".concat(v.Z.focused),{color:(n.vars||n).palette[r.color].main}),(0,o.Z)(t,"&.".concat(v.Z.disabled),{color:(n.vars||n).palette.text.disabled}),(0,o.Z)(t,"&.".concat(v.Z.error),{color:(n.vars||n).palette.error.main}),t))})),b=(0,f.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,t){return t.asterisk}})((function(e){var t=e.theme;return(0,o.Z)({},"&.".concat(v.Z.error),{color:(t.vars||t).palette.error.main})})),Z=i.forwardRef((function(e,t){var n=(0,d.Z)({props:e,name:"MuiFormLabel"}),o=n.children,i=n.className,f=n.component,Z=void 0===f?"label":f,x=(0,r.Z)(n,m),y=(0,u.Z)(),S=(0,s.Z)({props:n,muiFormControl:y,states:["color","required","focused","disabled","error","filled"]}),O=(0,a.Z)({},n,{color:S.color||"primary",component:Z,disabled:S.disabled,error:S.error,filled:S.filled,focused:S.focused,required:S.required}),I=function(e){var t=e.classes,n=e.color,o=e.focused,r=e.disabled,a=e.error,i=e.filled,l=e.required,s={root:["root","color".concat((0,p.Z)(n)),r&&"disabled",a&&"error",i&&"filled",o&&"focused",l&&"required"],asterisk:["asterisk",a&&"error"]};return(0,c.Z)(s,v.M,t)}(O);return(0,g.jsxs)(h,(0,a.Z)({as:Z,ownerState:O,className:(0,l.Z)(I.root,i),ref:t},x,{children:[o,S.required&&(0,g.jsxs)(b,{ownerState:O,"aria-hidden":!0,className:I.asterisk,children:["\u2009","*"]})]}))}));t.Z=Z},10843:function(e,t,n){n.d(t,{M:function(){return a}});var o=n(75878),r=n(21217);function a(e){return(0,r.Z)("MuiFormLabel",e)}var i=(0,o.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);t.Z=i},30829:function(e,t,n){n.d(t,{Z:function(){return y}});var o=n(4942),r=n(63366),a=n(87462),i=n(72791),l=n(94419),c=n(28182),s=n(76147),u=n(52930),p=n(17133),d=n(10843),f=n(31402),v=n(66934),g=n(75878),m=n(21217);function h(e){return(0,m.Z)("MuiInputLabel",e)}(0,g.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var b=n(80184),Z=["disableAnimation","margin","shrink","variant","className"],x=(0,v.ZP)(p.Z,{shouldForwardProp:function(e){return(0,v.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[(0,o.Z)({},"& .".concat(d.Z.asterisk),t.asterisk),t.root,n.formControl&&t.formControl,"small"===n.size&&t.sizeSmall,n.shrink&&t.shrink,!n.disableAnimation&&t.animated,t[n.variant]]}})((function(e){var t=e.theme,n=e.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},n.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===n.size&&{transform:"translate(0, 17px) scale(1)"},n.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!n.disableAnimation&&{transition:t.transitions.create(["color","transform","max-width"],{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut})},"filled"===n.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===n.size&&{transform:"translate(12px, 13px) scale(1)"},n.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===n.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===n.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===n.size&&{transform:"translate(14px, 9px) scale(1)"},n.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),y=i.forwardRef((function(e,t){var n=(0,f.Z)({name:"MuiInputLabel",props:e}),o=n.disableAnimation,i=void 0!==o&&o,p=n.shrink,d=n.className,v=(0,r.Z)(n,Z),g=(0,u.Z)(),m=p;"undefined"===typeof m&&g&&(m=g.filled||g.focused||g.adornedStart);var y=(0,s.Z)({props:n,muiFormControl:g,states:["size","variant","required"]}),S=(0,a.Z)({},n,{disableAnimation:i,formControl:g,shrink:m,size:y.size,variant:y.variant,required:y.required}),O=function(e){var t=e.classes,n=e.formControl,o=e.size,r=e.shrink,i={root:["root",n&&"formControl",!e.disableAnimation&&"animated",r&&"shrink","small"===o&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},c=(0,l.Z)(i,h,t);return(0,a.Z)({},t,c)}(S);return(0,b.jsx)(x,(0,a.Z)({"data-shrink":m,ownerState:S,ref:t,className:(0,c.Z)(O.root,d)},v,{classes:O}))}))},79834:function(e,t,n){n.d(t,{Z:function(){return b}});var o=n(63366),r=n(87462),a=n(72791),i=n(28182),l=n(94419),c=n(66934),s=n(31402),u=n(14036),p=n(75878),d=n(21217);function f(e){return(0,d.Z)("MuiListSubheader",e)}(0,p.Z)("MuiListSubheader",["root","colorPrimary","colorInherit","gutters","inset","sticky"]);var v=n(80184),g=["className","color","component","disableGutters","disableSticky","inset"],m=(0,c.ZP)("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,"default"!==n.color&&t["color".concat((0,u.Z)(n.color))],!n.disableGutters&&t.gutters,n.inset&&t.inset,!n.disableSticky&&t.sticky]}})((function(e){var t=e.theme,n=e.ownerState;return(0,r.Z)({boxSizing:"border-box",lineHeight:"48px",listStyle:"none",color:(t.vars||t).palette.text.secondary,fontFamily:t.typography.fontFamily,fontWeight:t.typography.fontWeightMedium,fontSize:t.typography.pxToRem(14)},"primary"===n.color&&{color:(t.vars||t).palette.primary.main},"inherit"===n.color&&{color:"inherit"},!n.disableGutters&&{paddingLeft:16,paddingRight:16},n.inset&&{paddingLeft:72},!n.disableSticky&&{position:"sticky",top:0,zIndex:1,backgroundColor:(t.vars||t).palette.background.paper})})),h=a.forwardRef((function(e,t){var n=(0,s.Z)({props:e,name:"MuiListSubheader"}),a=n.className,c=n.color,p=void 0===c?"default":c,d=n.component,h=void 0===d?"li":d,b=n.disableGutters,Z=void 0!==b&&b,x=n.disableSticky,y=void 0!==x&&x,S=n.inset,O=void 0!==S&&S,I=(0,o.Z)(n,g),k=(0,r.Z)({},n,{color:p,component:h,disableGutters:Z,disableSticky:y,inset:O}),C=function(e){var t=e.classes,n=e.color,o=e.disableGutters,r=e.inset,a=e.disableSticky,i={root:["root","default"!==n&&"color".concat((0,u.Z)(n)),!o&&"gutters",r&&"inset",!a&&"sticky"]};return(0,l.Z)(i,f,t)}(k);return(0,v.jsx)(m,(0,r.Z)({as:h,className:(0,i.Z)(C.root,a),ref:t,ownerState:k},I))}));h.muiSkipListHighlight=!0;var b=h},36229:function(e,t,n){var o=n(72791);t.Z=function(e){var t=o.useRef({});return o.useEffect((function(){t.current=e})),t.current}}}]); -//# sourceMappingURL=2260.71dd3e05.chunk.js.map \ No newline at end of file +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2260],{67252:function(e,t,n){n.d(t,{Z:function(){return oe}});var o=n(4942),r=n(63366),a=n(87462),i=n(72791),l=n(28182),c=n(94419),s=n(29439),u=n(18252),p=n(88637),d=n(36229),f=n(97054),v=n(62971);function g(e){return"undefined"!==typeof e.normalize?e.normalize("NFD").replace(/[\u0300-\u036f]/g,""):e}function m(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{},t=e.ignoreAccents,n=void 0===t||t,o=e.ignoreCase,r=void 0===o||o,a=e.limit,i=e.matchFrom,l=void 0===i?"any":i,c=e.stringify,s=e.trim,u=void 0!==s&&s;return function(e,t){var o=t.inputValue,i=t.getOptionLabel,s=u?o.trim():o;r&&(s=s.toLowerCase()),n&&(s=g(s));var p=s?e.filter((function(e){var t=(c||i)(e);return r&&(t=t.toLowerCase()),n&&(t=g(t)),"start"===l?0===t.indexOf(s):t.indexOf(s)>-1})):e;return"number"===typeof a?p.slice(0,a):p}}(),b=function(e){var t;return null!==e.current&&(null==(t=e.current.parentElement)?void 0:t.contains(document.activeElement))};function Z(e){var t,n=e.unstable_isActiveElementInListbox,o=void 0===n?b:n,r=e.unstable_classNamePrefix,l=void 0===r?"Mui":r,c=e.autoComplete,g=void 0!==c&&c,Z=e.autoHighlight,x=void 0!==Z&&Z,y=e.autoSelect,S=void 0!==y&&y,O=e.blurOnSelect,I=void 0!==O&&O,k=e.clearOnBlur,C=void 0===k?!e.freeSolo:k,P=e.clearOnEscape,w=void 0!==P&&P,L=e.componentName,A=void 0===L?"useAutocomplete":L,R=e.defaultValue,T=void 0===R?e.multiple?[]:null:R,M=e.disableClearable,z=void 0!==M&&M,N=e.disableCloseOnSelect,F=void 0!==N&&N,D=e.disabled,E=e.disabledItemsFocusable,W=void 0!==E&&E,j=e.disableListWrap,q=void 0!==j&&j,H=e.filterOptions,V=void 0===H?h:H,B=e.filterSelectedOptions,G=void 0!==B&&B,K=e.freeSolo,U=void 0!==K&&K,_=e.getOptionDisabled,J=e.getOptionLabel,Q=void 0===J?function(e){var t;return null!=(t=e.label)?t:e}:J,X=e.groupBy,Y=e.handleHomeEndKeys,$=void 0===Y?!e.freeSolo:Y,ee=e.id,te=e.includeInputInList,ne=void 0!==te&&te,oe=e.inputValue,re=e.isOptionEqualToValue,ae=void 0===re?function(e,t){return e===t}:re,ie=e.multiple,le=void 0!==ie&&ie,ce=e.onChange,se=e.onClose,ue=e.onHighlightChange,pe=e.onInputChange,de=e.onOpen,fe=e.open,ve=e.openOnFocus,ge=void 0!==ve&&ve,me=e.options,he=e.readOnly,be=void 0!==he&&he,Ze=e.selectOnFocus,xe=void 0===Ze?!e.freeSolo:Ze,ye=e.value,Se=(0,u.Z)(ee);t=function(e){var t=Q(e);return"string"!==typeof t?String(t):t};var Oe=i.useRef(!1),Ie=i.useRef(!0),ke=i.useRef(null),Ce=i.useRef(null),Pe=i.useState(null),we=(0,s.Z)(Pe,2),Le=we[0],Ae=we[1],Re=i.useState(-1),Te=(0,s.Z)(Re,2),Me=Te[0],ze=Te[1],Ne=x?0:-1,Fe=i.useRef(Ne),De=(0,p.Z)({controlled:ye,default:T,name:A}),Ee=(0,s.Z)(De,2),We=Ee[0],je=Ee[1],qe=(0,p.Z)({controlled:oe,default:"",name:A,state:"inputValue"}),He=(0,s.Z)(qe,2),Ve=He[0],Be=He[1],Ge=i.useState(!1),Ke=(0,s.Z)(Ge,2),Ue=Ke[0],_e=Ke[1],Je=i.useCallback((function(e,n){if((le?We.length0&&!be,st=(0,f.Z)((function(e){-1===e?ke.current.focus():Le.querySelector('[data-tag-index="'.concat(e,'"]')).focus()}));i.useEffect((function(){le&&Me>We.length-1&&(ze(-1),st(-1))}),[We,le,Me,st]);var ut=(0,f.Z)((function(e){var t=e.event,n=e.index,o=e.reason,r=void 0===o?"auto":o;if(Fe.current=n,-1===n?ke.current.removeAttribute("aria-activedescendant"):ke.current.setAttribute("aria-activedescendant","".concat(Se,"-option-").concat(n)),ue&&ue(t,-1===n?null:it[n],r),Ce.current){var a=Ce.current.querySelector('[role="option"].'.concat(l,"-focused"));a&&(a.classList.remove("".concat(l,"-focused")),a.classList.remove("".concat(l,"-focusVisible")));var i=Ce.current;if("listbox"!==Ce.current.getAttribute("role")&&(i=Ce.current.parentElement.querySelector('[role="listbox"]')),i)if(-1!==n){var c=Ce.current.querySelector('[data-option-index="'.concat(n,'"]'));if(c&&(c.classList.add("".concat(l,"-focused")),"keyboard"===r&&c.classList.add("".concat(l,"-focusVisible")),i.scrollHeight>i.clientHeight&&"mouse"!==r)){var s=c,u=i.clientHeight+i.scrollTop,p=s.offsetTop+s.offsetHeight;p>u?i.scrollTop=p-i.clientHeight:s.offsetTop-s.offsetHeight*(X?1.3:0)1?0:e:t>e?t===e+1&&ne?-1:q||Math.abs(o)>1?e:0:t}(),a);if(ut({index:c,reason:l,event:n}),g&&"reset"!==o)if(-1===c)ke.current.value=Ve;else{var s=t(it[c]);ke.current.value=s,0===s.toLowerCase().indexOf(Ve.toLowerCase())&&Ve.length>0&&ke.current.setSelectionRange(Ve.length,s.length)}}})),dt=i.useCallback((function(){if(at&&!function(){var e,n;if(-1!==Fe.current&<.filteredOptions&<.filteredOptions.length!==it.length&<.inputValue===Ve&&(le?We.length===lt.value.length&<.value.every((function(e,n){return t(We[n])===t(e)})):(e=lt.value,n=We,(e?t(e):"")===(n?t(n):"")))){var o=lt.filteredOptions[Fe.current];if(o&&it.some((function(e){return t(e)===t(o)})))return!0}return!1}()){var e=le?We[0]:We;if(0!==it.length&&null!=e){if(Ce.current)if(null==e)Fe.current>=it.length-1?ut({index:it.length-1}):ut({index:Fe.current});else{var n=it[Fe.current];if(le&&n&&-1!==m(We,(function(e){return ae(n,e)})))return;var o=m(it,(function(t){return ae(t,e)}));-1===o?pt({diff:"reset"}):ut({index:o})}}else pt({diff:"reset"})}}),[it.length,!le&&We,G,pt,ut,at,Ve,le]),ft=(0,f.Z)((function(e){(0,v.Z)(Ce,e),e&&dt()}));i.useEffect((function(){dt()}),[dt]);var vt=function(e){Ye||($e(!0),ot(!0),de&&de(e))},gt=function(e,t){Ye&&($e(!1),se&&se(e,t))},mt=function(e,t,n,o){if(le){if(We.length===t.length&&We.every((function(e,n){return e===t[n]})))return}else if(We===t)return;ce&&ce(e,t,n,o),je(t)},ht=i.useRef(!1),bt=function(e,t){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"options",o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"selectOption",r=t;if(le){var a=m(r=Array.isArray(We)?We.slice():[],(function(e){return ae(t,e)}));-1===a?r.push(t):"freeSolo"!==n&&(r.splice(a,1),o="removeOption")}Je(e,r),mt(e,r,o,{option:t}),F||e&&(e.ctrlKey||e.metaKey)||gt(e,o),(!0===I||"touch"===I&&ht.current||"mouse"===I&&!ht.current)&&ke.current.blur()};var Zt=function(e,t){if(le){""===Ve&>(e,"toggleInput");var n=Me;-1===Me?""===Ve&&"previous"===t&&(n=We.length-1):((n+="next"===t?1:-1)<0&&(n=0),n===We.length&&(n=-1)),n=function(e,t){if(-1===e)return-1;for(var n=e;;){if("next"===t&&n===We.length||"previous"===t&&-1===n)return-1;var o=Le.querySelector('[data-tag-index="'.concat(n,'"]'));if(o&&o.hasAttribute("tabindex")&&!o.disabled&&"true"!==o.getAttribute("aria-disabled"))return n;n+="next"===t?1:-1}}(n,t),ze(n),st(n)}},xt=function(e){Oe.current=!0,Be(""),pe&&pe(e,"","clear"),mt(e,le?[]:null,"clear")},yt=function(e){return function(t){if(e.onKeyDown&&e.onKeyDown(t),!t.defaultMuiPrevented&&(-1!==Me&&-1===["ArrowLeft","ArrowRight"].indexOf(t.key)&&(ze(-1),st(-1)),229!==t.which))switch(t.key){case"Home":at&&$&&(t.preventDefault(),pt({diff:"start",direction:"next",reason:"keyboard",event:t}));break;case"End":at&&$&&(t.preventDefault(),pt({diff:"end",direction:"previous",reason:"keyboard",event:t}));break;case"PageUp":t.preventDefault(),pt({diff:-5,direction:"previous",reason:"keyboard",event:t}),vt(t);break;case"PageDown":t.preventDefault(),pt({diff:5,direction:"next",reason:"keyboard",event:t}),vt(t);break;case"ArrowDown":t.preventDefault(),pt({diff:1,direction:"next",reason:"keyboard",event:t}),vt(t);break;case"ArrowUp":t.preventDefault(),pt({diff:-1,direction:"previous",reason:"keyboard",event:t}),vt(t);break;case"ArrowLeft":Zt(t,"previous");break;case"ArrowRight":Zt(t,"next");break;case"Enter":if(-1!==Fe.current&&at){var n=it[Fe.current],o=!!_&&_(n);if(t.preventDefault(),o)return;bt(t,n,"selectOption"),g&&ke.current.setSelectionRange(ke.current.value.length,ke.current.value.length)}else U&&""!==Ve&&!1===rt&&(le&&t.preventDefault(),bt(t,Ve,"createOption","freeSolo"));break;case"Escape":at?(t.preventDefault(),t.stopPropagation(),gt(t,"escape")):w&&(""!==Ve||le&&We.length>0)&&(t.preventDefault(),t.stopPropagation(),xt(t));break;case"Backspace":if(le&&!be&&""===Ve&&We.length>0){var r=-1===Me?We.length-1:Me,a=We.slice();a.splice(r,1),mt(t,a,"removeOption",{option:We[r]})}break;case"Delete":if(le&&!be&&""===Ve&&We.length>0&&-1!==Me){var i=Me,l=We.slice();l.splice(i,1),mt(t,l,"removeOption",{option:We[i]})}}}},St=function(e){_e(!0),ge&&!Oe.current&&vt(e)},Ot=function(e){o(Ce)?ke.current.focus():(_e(!1),Ie.current=!0,Oe.current=!1,S&&-1!==Fe.current&&at?bt(e,it[Fe.current],"blur"):S&&U&&""!==Ve?bt(e,Ve,"blur","freeSolo"):C&&Je(e,We),gt(e,"blur"))},It=function(e){var t=e.target.value;Ve!==t&&(Be(t),ot(!1),pe&&pe(e,t,"input")),""===t?z||le||mt(e,null,"clear"):vt(e)},kt=function(e){var t=Number(e.currentTarget.getAttribute("data-option-index"));Fe.current!==t&&ut({event:e,index:t,reason:"mouse"})},Ct=function(e){ut({event:e,index:Number(e.currentTarget.getAttribute("data-option-index")),reason:"touch"}),ht.current=!0},Pt=function(e){var t=Number(e.currentTarget.getAttribute("data-option-index"));bt(e,it[t],"selectOption"),ht.current=!1},wt=function(e){return function(t){var n=We.slice();n.splice(e,1),mt(t,n,"removeOption",{option:We[e]})}},Lt=function(e){Ye?gt(e,"toggleInput"):vt(e)},At=function(e){e.currentTarget.contains(e.target)&&e.target.getAttribute("id")!==Se&&e.preventDefault()},Rt=function(e){e.currentTarget.contains(e.target)&&(ke.current.focus(),xe&&Ie.current&&ke.current.selectionEnd-ke.current.selectionStart===0&&ke.current.select(),Ie.current=!1)},Tt=function(e){""!==Ve&&Ye||Lt(e)},Mt=U&&Ve.length>0;Mt=Mt||(le?We.length>0:null!==We);var zt=it;if(X){new Map;zt=it.reduce((function(e,t,n){var o=X(t);return e.length>0&&e[e.length-1].group===o?e[e.length-1].options.push(t):e.push({key:n,index:n,group:o,options:[t]}),e}),[])}return D&&Ue&&Ot(),{getRootProps:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,a.Z)({"aria-owns":ct?"".concat(Se,"-listbox"):null},e,{onKeyDown:yt(e),onMouseDown:At,onClick:Rt})},getInputLabelProps:function(){return{id:"".concat(Se,"-label"),htmlFor:Se}},getInputProps:function(){return{id:Se,value:Ve,onBlur:Ot,onFocus:St,onChange:It,onMouseDown:Tt,"aria-activedescendant":at?"":null,"aria-autocomplete":g?"both":"list","aria-controls":ct?"".concat(Se,"-listbox"):void 0,"aria-expanded":ct,autoComplete:"off",ref:ke,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:D}},getClearProps:function(){return{tabIndex:-1,onClick:xt}},getPopupIndicatorProps:function(){return{tabIndex:-1,onClick:Lt}},getTagProps:function(e){var t=e.index;return(0,a.Z)({key:t,"data-tag-index":t,tabIndex:-1},!be&&{onDelete:wt(t)})},getListboxProps:function(){return{role:"listbox",id:"".concat(Se,"-listbox"),"aria-labelledby":"".concat(Se,"-label"),ref:ft,onMouseDown:function(e){e.preventDefault()}}},getOptionProps:function(e){var n=e.index,o=e.option,r=(le?We:[We]).some((function(e){return null!=e&&ae(o,e)})),a=!!_&&_(o);return{key:t(o),tabIndex:-1,role:"option",id:"".concat(Se,"-option-").concat(n),onMouseMove:kt,onClick:Pt,onTouchStart:Ct,"data-option-index":n,"aria-disabled":a,"aria-selected":r}},id:Se,inputValue:Ve,value:We,dirty:Mt,expanded:at&&Le,popupOpen:at,focused:Ue||-1!==Me,anchorEl:Le,setAnchorEl:Ae,focusedTag:Me,groupedOptions:zt}}var x=n(12065),y=n(41),S=n(79834),O=n(35527),I=n(13400),k=n(81918),C=n(86779),P=n(55891),w=n(56059),L=n(96285),A=n(76189),R=n(80184),T=(0,A.Z)((0,R.jsx)("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close"),M=n(89059),z=n(31402),N=n(66934),F=n(75878),D=n(21217);function E(e){return(0,D.Z)("MuiAutocomplete",e)}var W,j,q=(0,F.Z)("MuiAutocomplete",["root","expanded","fullWidth","focused","focusVisible","tag","tagSizeSmall","tagSizeMedium","hasPopupIcon","hasClearIcon","inputRoot","input","inputFocused","endAdornment","clearIndicator","popupIndicator","popupIndicatorOpen","popper","popperDisablePortal","paper","listbox","loading","noOptions","option","groupLabel","groupUl"]),H=n(14036),V=n(42071),B=["autoComplete","autoHighlight","autoSelect","blurOnSelect","ChipProps","className","clearIcon","clearOnBlur","clearOnEscape","clearText","closeText","componentsProps","defaultValue","disableClearable","disableCloseOnSelect","disabled","disabledItemsFocusable","disableListWrap","disablePortal","filterOptions","filterSelectedOptions","forcePopupIcon","freeSolo","fullWidth","getLimitTagsText","getOptionDisabled","getOptionLabel","isOptionEqualToValue","groupBy","handleHomeEndKeys","id","includeInputInList","inputValue","limitTags","ListboxComponent","ListboxProps","loading","loadingText","multiple","noOptionsText","onChange","onClose","onHighlightChange","onInputChange","onOpen","open","openOnFocus","openText","options","PaperComponent","PopperComponent","popupIcon","readOnly","renderGroup","renderInput","renderOption","renderTags","selectOnFocus","size","slotProps","value"],G=["ref"],K=(0,N.ZP)("div",{name:"MuiAutocomplete",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState,r=n.fullWidth,a=n.hasClearIcon,i=n.hasPopupIcon,l=n.inputFocused,c=n.size;return[(0,o.Z)({},"& .".concat(q.tag),t.tag),(0,o.Z)({},"& .".concat(q.tag),t["tagSize".concat((0,H.Z)(c))]),(0,o.Z)({},"& .".concat(q.inputRoot),t.inputRoot),(0,o.Z)({},"& .".concat(q.input),t.input),(0,o.Z)({},"& .".concat(q.input),l&&t.inputFocused),t.root,r&&t.fullWidth,i&&t.hasPopupIcon,a&&t.hasClearIcon]}})((function(e){var t,n,r,i,l,c=e.ownerState;return(0,a.Z)((t={},(0,o.Z)(t,"&.".concat(q.focused," .").concat(q.clearIndicator),{visibility:"visible"}),(0,o.Z)(t,"@media (pointer: fine)",(0,o.Z)({},"&:hover .".concat(q.clearIndicator),{visibility:"visible"})),t),c.fullWidth&&{width:"100%"},(l={},(0,o.Z)(l,"& .".concat(q.tag),(0,a.Z)({margin:3,maxWidth:"calc(100% - 6px)"},"small"===c.size&&{margin:2,maxWidth:"calc(100% - 4px)"})),(0,o.Z)(l,"& .".concat(q.inputRoot),(n={flexWrap:"wrap"},(0,o.Z)(n,".".concat(q.hasPopupIcon,"&, .").concat(q.hasClearIcon,"&"),{paddingRight:30}),(0,o.Z)(n,".".concat(q.hasPopupIcon,".").concat(q.hasClearIcon,"&"),{paddingRight:56}),(0,o.Z)(n,"& .".concat(q.input),{width:0,minWidth:30}),n)),(0,o.Z)(l,"& .".concat(C.Z.root),{paddingBottom:1,"& .MuiInput-input":{padding:"4px 4px 4px 0px"}}),(0,o.Z)(l,"& .".concat(C.Z.root,".").concat(P.Z.sizeSmall),(0,o.Z)({},"& .".concat(C.Z.input),{padding:"2px 4px 3px 0"})),(0,o.Z)(l,"& .".concat(w.Z.root),(r={padding:9},(0,o.Z)(r,".".concat(q.hasPopupIcon,"&, .").concat(q.hasClearIcon,"&"),{paddingRight:39}),(0,o.Z)(r,".".concat(q.hasPopupIcon,".").concat(q.hasClearIcon,"&"),{paddingRight:65}),(0,o.Z)(r,"& .".concat(q.input),{padding:"7.5px 4px 7.5px 5px"}),(0,o.Z)(r,"& .".concat(q.endAdornment),{right:9}),r)),(0,o.Z)(l,"& .".concat(w.Z.root,".").concat(P.Z.sizeSmall),(0,o.Z)({paddingTop:6,paddingBottom:6,paddingLeft:6},"& .".concat(q.input),{padding:"2.5px 4px 2.5px 8px"})),(0,o.Z)(l,"& .".concat(L.Z.root),(i={paddingTop:19,paddingLeft:8},(0,o.Z)(i,".".concat(q.hasPopupIcon,"&, .").concat(q.hasClearIcon,"&"),{paddingRight:39}),(0,o.Z)(i,".".concat(q.hasPopupIcon,".").concat(q.hasClearIcon,"&"),{paddingRight:65}),(0,o.Z)(i,"& .".concat(L.Z.input),{padding:"7px 4px"}),(0,o.Z)(i,"& .".concat(q.endAdornment),{right:9}),i)),(0,o.Z)(l,"& .".concat(L.Z.root,".").concat(P.Z.sizeSmall),(0,o.Z)({paddingBottom:1},"& .".concat(L.Z.input),{padding:"2.5px 4px"})),(0,o.Z)(l,"& .".concat(P.Z.hiddenLabel),{paddingTop:8}),(0,o.Z)(l,"& .".concat(L.Z.root,".").concat(P.Z.hiddenLabel),(0,o.Z)({paddingTop:0,paddingBottom:0},"& .".concat(q.input),{paddingTop:16,paddingBottom:17})),(0,o.Z)(l,"& .".concat(L.Z.root,".").concat(P.Z.hiddenLabel,".").concat(P.Z.sizeSmall),(0,o.Z)({},"& .".concat(q.input),{paddingTop:8,paddingBottom:9})),(0,o.Z)(l,"& .".concat(q.input),(0,a.Z)({flexGrow:1,textOverflow:"ellipsis",opacity:0},c.inputFocused&&{opacity:1})),l))})),U=(0,N.ZP)("div",{name:"MuiAutocomplete",slot:"EndAdornment",overridesResolver:function(e,t){return t.endAdornment}})({position:"absolute",right:0,top:"calc(50% - 14px)"}),_=(0,N.ZP)(I.Z,{name:"MuiAutocomplete",slot:"ClearIndicator",overridesResolver:function(e,t){return t.clearIndicator}})({marginRight:-2,padding:4,visibility:"hidden"}),J=(0,N.ZP)(I.Z,{name:"MuiAutocomplete",slot:"PopupIndicator",overridesResolver:function(e,t){var n=e.ownerState;return(0,a.Z)({},t.popupIndicator,n.popupOpen&&t.popupIndicatorOpen)}})((function(e){var t=e.ownerState;return(0,a.Z)({padding:2,marginRight:-2},t.popupOpen&&{transform:"rotate(180deg)"})})),Q=(0,N.ZP)(y.Z,{name:"MuiAutocomplete",slot:"Popper",overridesResolver:function(e,t){var n=e.ownerState;return[(0,o.Z)({},"& .".concat(q.option),t.option),t.popper,n.disablePortal&&t.popperDisablePortal]}})((function(e){var t=e.theme,n=e.ownerState;return(0,a.Z)({zIndex:(t.vars||t).zIndex.modal},n.disablePortal&&{position:"absolute"})})),X=(0,N.ZP)(O.Z,{name:"MuiAutocomplete",slot:"Paper",overridesResolver:function(e,t){return t.paper}})((function(e){var t=e.theme;return(0,a.Z)({},t.typography.body1,{overflow:"auto"})})),Y=(0,N.ZP)("div",{name:"MuiAutocomplete",slot:"Loading",overridesResolver:function(e,t){return t.loading}})((function(e){var t=e.theme;return{color:(t.vars||t).palette.text.secondary,padding:"14px 16px"}})),$=(0,N.ZP)("div",{name:"MuiAutocomplete",slot:"NoOptions",overridesResolver:function(e,t){return t.noOptions}})((function(e){var t=e.theme;return{color:(t.vars||t).palette.text.secondary,padding:"14px 16px"}})),ee=(0,N.ZP)("div",{name:"MuiAutocomplete",slot:"Listbox",overridesResolver:function(e,t){return t.listbox}})((function(e){var t,n,r=e.theme;return(0,o.Z)({listStyle:"none",margin:0,padding:"8px 0",maxHeight:"40vh",overflow:"auto",position:"relative"},"& .".concat(q.option),(n={minHeight:48,display:"flex",overflow:"hidden",justifyContent:"flex-start",alignItems:"center",cursor:"pointer",paddingTop:6,boxSizing:"border-box",outline:"0",WebkitTapHighlightColor:"transparent",paddingBottom:6,paddingLeft:16,paddingRight:16},(0,o.Z)(n,r.breakpoints.up("sm"),{minHeight:"auto"}),(0,o.Z)(n,"&.".concat(q.focused),{backgroundColor:(r.vars||r).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}}),(0,o.Z)(n,'&[aria-disabled="true"]',{opacity:(r.vars||r).palette.action.disabledOpacity,pointerEvents:"none"}),(0,o.Z)(n,"&.".concat(q.focusVisible),{backgroundColor:(r.vars||r).palette.action.focus}),(0,o.Z)(n,'&[aria-selected="true"]',(t={backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / ").concat(r.vars.palette.action.selectedOpacity,")"):(0,x.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity)},(0,o.Z)(t,"&.".concat(q.focused),{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / calc(").concat(r.vars.palette.action.selectedOpacity," + ").concat(r.vars.palette.action.hoverOpacity,"))"):(0,x.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity+r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:(r.vars||r).palette.action.selected}}),(0,o.Z)(t,"&.".concat(q.focusVisible),{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / calc(").concat(r.vars.palette.action.selectedOpacity," + ").concat(r.vars.palette.action.focusOpacity,"))"):(0,x.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity+r.palette.action.focusOpacity)}),t)),n))})),te=(0,N.ZP)(S.Z,{name:"MuiAutocomplete",slot:"GroupLabel",overridesResolver:function(e,t){return t.groupLabel}})((function(e){var t=e.theme;return{backgroundColor:(t.vars||t).palette.background.paper,top:-8}})),ne=(0,N.ZP)("ul",{name:"MuiAutocomplete",slot:"GroupUl",overridesResolver:function(e,t){return t.groupUl}})((0,o.Z)({padding:0},"& .".concat(q.option),{paddingLeft:24})),oe=i.forwardRef((function(e,t){var n,o,s,u,p,d=(0,z.Z)({props:e,name:"MuiAutocomplete"}),f=(d.autoComplete,d.autoHighlight,d.autoSelect,d.blurOnSelect,d.ChipProps),v=d.className,g=d.clearIcon,m=void 0===g?W||(W=(0,R.jsx)(T,{fontSize:"small"})):g,h=d.clearOnBlur,b=(void 0===h&&d.freeSolo,d.clearOnEscape,d.clearText),x=void 0===b?"Clear":b,S=d.closeText,I=void 0===S?"Close":S,C=d.componentsProps,P=void 0===C?{}:C,w=d.defaultValue,L=(void 0===w&&d.multiple,d.disableClearable),A=void 0!==L&&L,N=(d.disableCloseOnSelect,d.disabled),F=void 0!==N&&N,D=(d.disabledItemsFocusable,d.disableListWrap,d.disablePortal),q=void 0!==D&&D,oe=(d.filterSelectedOptions,d.forcePopupIcon),re=void 0===oe?"auto":oe,ae=d.freeSolo,ie=void 0!==ae&&ae,le=d.fullWidth,ce=void 0!==le&&le,se=d.getLimitTagsText,ue=void 0===se?function(e){return"+".concat(e)}:se,pe=d.getOptionLabel,de=void 0===pe?function(e){var t;return null!=(t=e.label)?t:e}:pe,fe=d.groupBy,ve=d.handleHomeEndKeys,ge=(void 0===ve&&d.freeSolo,d.includeInputInList,d.limitTags),me=void 0===ge?-1:ge,he=d.ListboxComponent,be=void 0===he?"ul":he,Ze=d.ListboxProps,xe=d.loading,ye=void 0!==xe&&xe,Se=d.loadingText,Oe=void 0===Se?"Loading\u2026":Se,Ie=d.multiple,ke=void 0!==Ie&&Ie,Ce=d.noOptionsText,Pe=void 0===Ce?"No options":Ce,we=(d.openOnFocus,d.openText),Le=void 0===we?"Open":we,Ae=d.PaperComponent,Re=void 0===Ae?O.Z:Ae,Te=d.PopperComponent,Me=void 0===Te?y.Z:Te,ze=d.popupIcon,Ne=void 0===ze?j||(j=(0,R.jsx)(M.Z,{})):ze,Fe=d.readOnly,De=void 0!==Fe&&Fe,Ee=d.renderGroup,We=d.renderInput,je=d.renderOption,qe=d.renderTags,He=d.selectOnFocus,Ve=(void 0===He&&d.freeSolo,d.size),Be=void 0===Ve?"medium":Ve,Ge=d.slotProps,Ke=void 0===Ge?{}:Ge,Ue=(0,r.Z)(d,B),_e=Z((0,a.Z)({},d,{componentName:"Autocomplete"})),Je=_e.getRootProps,Qe=_e.getInputProps,Xe=_e.getInputLabelProps,Ye=_e.getPopupIndicatorProps,$e=_e.getClearProps,et=_e.getTagProps,tt=_e.getListboxProps,nt=_e.getOptionProps,ot=_e.value,rt=_e.dirty,at=_e.expanded,it=_e.id,lt=_e.popupOpen,ct=_e.focused,st=_e.focusedTag,ut=_e.anchorEl,pt=_e.setAnchorEl,dt=_e.inputValue,ft=_e.groupedOptions,vt=!A&&!F&&rt&&!De,gt=(!ie||!0===re)&&!1!==re,mt=Qe().onMouseDown,ht=(null!=Ze?Ze:{}).ref,bt=tt(),Zt=bt.ref,xt=(0,r.Z)(bt,G),yt=(0,V.Z)(Zt,ht),St=(0,a.Z)({},d,{disablePortal:q,expanded:at,focused:ct,fullWidth:ce,hasClearIcon:vt,hasPopupIcon:gt,inputFocused:-1===st,popupOpen:lt,size:Be}),Ot=function(e){var t=e.classes,n=e.disablePortal,o=e.expanded,r=e.focused,a=e.fullWidth,i=e.hasClearIcon,l=e.hasPopupIcon,s=e.inputFocused,u=e.popupOpen,p=e.size,d={root:["root",o&&"expanded",r&&"focused",a&&"fullWidth",i&&"hasClearIcon",l&&"hasPopupIcon"],inputRoot:["inputRoot"],input:["input",s&&"inputFocused"],tag:["tag","tagSize".concat((0,H.Z)(p))],endAdornment:["endAdornment"],clearIndicator:["clearIndicator"],popupIndicator:["popupIndicator",u&&"popupIndicatorOpen"],popper:["popper",n&&"popperDisablePortal"],paper:["paper"],listbox:["listbox"],loading:["loading"],noOptions:["noOptions"],option:["option"],groupLabel:["groupLabel"],groupUl:["groupUl"]};return(0,c.Z)(d,E,t)}(St);if(ke&&ot.length>0){var It=function(e){return(0,a.Z)({className:Ot.tag,disabled:F},et(e))};p=qe?qe(ot,It,St):ot.map((function(e,t){return(0,R.jsx)(k.Z,(0,a.Z)({label:de(e),size:Be},It({index:t}),f))}))}if(me>-1&&Array.isArray(p)){var kt=p.length-me;!ct&&kt>0&&(p=p.splice(0,me)).push((0,R.jsx)("span",{className:Ot.tag,children:ue(kt)},p.length))}var Ct=Ee||function(e){return(0,R.jsxs)("li",{children:[(0,R.jsx)(te,{className:Ot.groupLabel,ownerState:St,component:"div",children:e.group}),(0,R.jsx)(ne,{className:Ot.groupUl,ownerState:St,children:e.children})]},e.key)},Pt=je||function(e,t){return(0,R.jsx)("li",(0,a.Z)({},e,{children:de(t)}))},wt=function(e,t){var n=nt({option:e,index:t});return Pt((0,a.Z)({},n,{className:Ot.option}),e,{selected:n["aria-selected"],index:t,inputValue:dt})},Lt=null!=(n=Ke.clearIndicator)?n:P.clearIndicator,At=null!=(o=Ke.paper)?o:P.paper,Rt=null!=(s=Ke.popper)?s:P.popper,Tt=null!=(u=Ke.popupIndicator)?u:P.popupIndicator;return(0,R.jsxs)(i.Fragment,{children:[(0,R.jsx)(K,(0,a.Z)({ref:t,className:(0,l.Z)(Ot.root,v),ownerState:St},Je(Ue),{children:We({id:it,disabled:F,fullWidth:!0,size:"small"===Be?"small":void 0,InputLabelProps:Xe(),InputProps:(0,a.Z)({ref:pt,className:Ot.inputRoot,startAdornment:p,onClick:function(e){e.target===e.currentTarget&&mt(e)}},(vt||gt)&&{endAdornment:(0,R.jsxs)(U,{className:Ot.endAdornment,ownerState:St,children:[vt?(0,R.jsx)(_,(0,a.Z)({},$e(),{"aria-label":x,title:x,ownerState:St},Lt,{className:(0,l.Z)(Ot.clearIndicator,null==Lt?void 0:Lt.className),children:m})):null,gt?(0,R.jsx)(J,(0,a.Z)({},Ye(),{disabled:F,"aria-label":lt?I:Le,title:lt?I:Le,ownerState:St},Tt,{className:(0,l.Z)(Ot.popupIndicator,null==Tt?void 0:Tt.className),children:Ne})):null]})}),inputProps:(0,a.Z)({className:Ot.input,disabled:F,readOnly:De},Qe())})})),ut?(0,R.jsx)(Q,(0,a.Z)({as:Me,disablePortal:q,style:{width:ut?ut.clientWidth:null},ownerState:St,role:"presentation",anchorEl:ut,open:lt},Rt,{className:(0,l.Z)(Ot.popper,null==Rt?void 0:Rt.className),children:(0,R.jsxs)(X,(0,a.Z)({ownerState:St,as:Re},At,{className:(0,l.Z)(Ot.paper,null==At?void 0:At.className),children:[ye&&0===ft.length?(0,R.jsx)(Y,{className:Ot.loading,ownerState:St,children:Oe}):null,0!==ft.length||ie||ye?null:(0,R.jsx)($,{className:Ot.noOptions,ownerState:St,role:"presentation",onMouseDown:function(e){e.preventDefault()},children:Pe}),ft.length>0?(0,R.jsx)(ee,(0,a.Z)({as:be,className:Ot.listbox,ownerState:St},xt,Ze,{ref:yt,children:ft.map((function(e,t){return fe?Ct({key:e.key,group:e.group,children:e.options.map((function(t,n){return wt(t,e.index+n)}))}):wt(e,t)}))})):null]}))})):null]})}))},93840:function(e,t,n){var o=n(72791).createContext(void 0);t.Z=o},76147:function(e,t,n){function o(e){var t=e.props,n=e.states,o=e.muiFormControl;return n.reduce((function(e,n){return e[n]=t[n],o&&"undefined"===typeof t[n]&&(e[n]=o[n]),e}),{})}n.d(t,{Z:function(){return o}})},52930:function(e,t,n){n.d(t,{Z:function(){return a}});var o=n(72791),r=n(93840);function a(){return o.useContext(r.Z)}},17133:function(e,t,n){var o=n(4942),r=n(63366),a=n(87462),i=n(72791),l=n(28182),c=n(94419),s=n(76147),u=n(52930),p=n(14036),d=n(31402),f=n(66934),v=n(10843),g=n(80184),m=["children","className","color","component","disabled","error","filled","focused","required"],h=(0,f.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return(0,a.Z)({},t.root,"secondary"===n.color&&t.colorSecondary,n.filled&&t.filled)}})((function(e){var t,n=e.theme,r=e.ownerState;return(0,a.Z)({color:(n.vars||n).palette.text.secondary},n.typography.body1,(t={lineHeight:"1.4375em",padding:0,position:"relative"},(0,o.Z)(t,"&.".concat(v.Z.focused),{color:(n.vars||n).palette[r.color].main}),(0,o.Z)(t,"&.".concat(v.Z.disabled),{color:(n.vars||n).palette.text.disabled}),(0,o.Z)(t,"&.".concat(v.Z.error),{color:(n.vars||n).palette.error.main}),t))})),b=(0,f.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,t){return t.asterisk}})((function(e){var t=e.theme;return(0,o.Z)({},"&.".concat(v.Z.error),{color:(t.vars||t).palette.error.main})})),Z=i.forwardRef((function(e,t){var n=(0,d.Z)({props:e,name:"MuiFormLabel"}),o=n.children,i=n.className,f=n.component,Z=void 0===f?"label":f,x=(0,r.Z)(n,m),y=(0,u.Z)(),S=(0,s.Z)({props:n,muiFormControl:y,states:["color","required","focused","disabled","error","filled"]}),O=(0,a.Z)({},n,{color:S.color||"primary",component:Z,disabled:S.disabled,error:S.error,filled:S.filled,focused:S.focused,required:S.required}),I=function(e){var t=e.classes,n=e.color,o=e.focused,r=e.disabled,a=e.error,i=e.filled,l=e.required,s={root:["root","color".concat((0,p.Z)(n)),r&&"disabled",a&&"error",i&&"filled",o&&"focused",l&&"required"],asterisk:["asterisk",a&&"error"]};return(0,c.Z)(s,v.M,t)}(O);return(0,g.jsxs)(h,(0,a.Z)({as:Z,ownerState:O,className:(0,l.Z)(I.root,i),ref:t},x,{children:[o,S.required&&(0,g.jsxs)(b,{ownerState:O,"aria-hidden":!0,className:I.asterisk,children:["\u2009","*"]})]}))}));t.Z=Z},10843:function(e,t,n){n.d(t,{M:function(){return a}});var o=n(75878),r=n(21217);function a(e){return(0,r.Z)("MuiFormLabel",e)}var i=(0,o.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);t.Z=i},30829:function(e,t,n){n.d(t,{Z:function(){return y}});var o=n(4942),r=n(63366),a=n(87462),i=n(72791),l=n(94419),c=n(28182),s=n(76147),u=n(52930),p=n(17133),d=n(10843),f=n(31402),v=n(66934),g=n(75878),m=n(21217);function h(e){return(0,m.Z)("MuiInputLabel",e)}(0,g.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var b=n(80184),Z=["disableAnimation","margin","shrink","variant","className"],x=(0,v.ZP)(p.Z,{shouldForwardProp:function(e){return(0,v.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[(0,o.Z)({},"& .".concat(d.Z.asterisk),t.asterisk),t.root,n.formControl&&t.formControl,"small"===n.size&&t.sizeSmall,n.shrink&&t.shrink,!n.disableAnimation&&t.animated,t[n.variant]]}})((function(e){var t=e.theme,n=e.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},n.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===n.size&&{transform:"translate(0, 17px) scale(1)"},n.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!n.disableAnimation&&{transition:t.transitions.create(["color","transform","max-width"],{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut})},"filled"===n.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===n.size&&{transform:"translate(12px, 13px) scale(1)"},n.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===n.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===n.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===n.size&&{transform:"translate(14px, 9px) scale(1)"},n.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),y=i.forwardRef((function(e,t){var n=(0,f.Z)({name:"MuiInputLabel",props:e}),o=n.disableAnimation,i=void 0!==o&&o,p=n.shrink,d=n.className,v=(0,r.Z)(n,Z),g=(0,u.Z)(),m=p;"undefined"===typeof m&&g&&(m=g.filled||g.focused||g.adornedStart);var y=(0,s.Z)({props:n,muiFormControl:g,states:["size","variant","required"]}),S=(0,a.Z)({},n,{disableAnimation:i,formControl:g,shrink:m,size:y.size,variant:y.variant,required:y.required}),O=function(e){var t=e.classes,n=e.formControl,o=e.size,r=e.shrink,i={root:["root",n&&"formControl",!e.disableAnimation&&"animated",r&&"shrink","small"===o&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},c=(0,l.Z)(i,h,t);return(0,a.Z)({},t,c)}(S);return(0,b.jsx)(x,(0,a.Z)({"data-shrink":m,ownerState:S,ref:t,className:(0,c.Z)(O.root,d)},v,{classes:O}))}))},79834:function(e,t,n){n.d(t,{Z:function(){return b}});var o=n(63366),r=n(87462),a=n(72791),i=n(28182),l=n(94419),c=n(66934),s=n(31402),u=n(14036),p=n(75878),d=n(21217);function f(e){return(0,d.Z)("MuiListSubheader",e)}(0,p.Z)("MuiListSubheader",["root","colorPrimary","colorInherit","gutters","inset","sticky"]);var v=n(80184),g=["className","color","component","disableGutters","disableSticky","inset"],m=(0,c.ZP)("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,"default"!==n.color&&t["color".concat((0,u.Z)(n.color))],!n.disableGutters&&t.gutters,n.inset&&t.inset,!n.disableSticky&&t.sticky]}})((function(e){var t=e.theme,n=e.ownerState;return(0,r.Z)({boxSizing:"border-box",lineHeight:"48px",listStyle:"none",color:(t.vars||t).palette.text.secondary,fontFamily:t.typography.fontFamily,fontWeight:t.typography.fontWeightMedium,fontSize:t.typography.pxToRem(14)},"primary"===n.color&&{color:(t.vars||t).palette.primary.main},"inherit"===n.color&&{color:"inherit"},!n.disableGutters&&{paddingLeft:16,paddingRight:16},n.inset&&{paddingLeft:72},!n.disableSticky&&{position:"sticky",top:0,zIndex:1,backgroundColor:(t.vars||t).palette.background.paper})})),h=a.forwardRef((function(e,t){var n=(0,s.Z)({props:e,name:"MuiListSubheader"}),a=n.className,c=n.color,p=void 0===c?"default":c,d=n.component,h=void 0===d?"li":d,b=n.disableGutters,Z=void 0!==b&&b,x=n.disableSticky,y=void 0!==x&&x,S=n.inset,O=void 0!==S&&S,I=(0,o.Z)(n,g),k=(0,r.Z)({},n,{color:p,component:h,disableGutters:Z,disableSticky:y,inset:O}),C=function(e){var t=e.classes,n=e.color,o=e.disableGutters,r=e.inset,a=e.disableSticky,i={root:["root","default"!==n&&"color".concat((0,u.Z)(n)),!o&&"gutters",r&&"inset",!a&&"sticky"]};return(0,l.Z)(i,f,t)}(k);return(0,v.jsx)(m,(0,r.Z)({as:h,className:(0,i.Z)(C.root,a),ref:t,ownerState:k},I))}));h.muiSkipListHighlight=!0;var b=h}}]); +//# sourceMappingURL=2260.c0246fc5.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/2260.c0246fc5.chunk.js.map b/portal-ui/build/static/js/2260.c0246fc5.chunk.js.map new file mode 100644 index 000000000..d3de922cb --- /dev/null +++ b/portal-ui/build/static/js/2260.c0246fc5.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/2260.c0246fc5.chunk.js","mappings":"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","sources":["../node_modules/@mui/material/node_modules/@mui/base/useAutocomplete/useAutocomplete.js","../node_modules/@mui/material/internal/svg-icons/Close.js","../node_modules/@mui/material/Autocomplete/autocompleteClasses.js","../node_modules/@mui/material/Autocomplete/Autocomplete.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/ListSubheader/listSubheaderClasses.js","../node_modules/@mui/material/ListSubheader/ListSubheader.js"],"sourcesContent":["import _extends from \"@babel/runtime/helpers/esm/extends\";\n/* eslint-disable no-constant-condition */\nimport * as React from 'react';\nimport { unstable_setRef as setRef, unstable_useEventCallback as useEventCallback, unstable_useControlled as useControlled, unstable_useId as useId, usePreviousProps } from '@mui/utils';\n\n// https://stackoverflow.com/questions/990904/remove-accents-diacritics-in-a-string-in-javascript\n// Give up on IE11 support for this feature\nfunction stripDiacritics(string) {\n return typeof string.normalize !== 'undefined' ? string.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '') : string;\n}\nexport function createFilterOptions(config = {}) {\n const {\n ignoreAccents = true,\n ignoreCase = true,\n limit,\n matchFrom = 'any',\n stringify,\n trim = false\n } = config;\n return (options, {\n inputValue,\n getOptionLabel\n }) => {\n let input = trim ? inputValue.trim() : inputValue;\n if (ignoreCase) {\n input = input.toLowerCase();\n }\n if (ignoreAccents) {\n input = stripDiacritics(input);\n }\n const filteredOptions = !input ? options : options.filter(option => {\n let candidate = (stringify || getOptionLabel)(option);\n if (ignoreCase) {\n candidate = candidate.toLowerCase();\n }\n if (ignoreAccents) {\n candidate = stripDiacritics(candidate);\n }\n return matchFrom === 'start' ? candidate.indexOf(input) === 0 : candidate.indexOf(input) > -1;\n });\n return typeof limit === 'number' ? filteredOptions.slice(0, limit) : filteredOptions;\n };\n}\n\n// To replace with .findIndex() once we stop IE11 support.\nfunction findIndex(array, comp) {\n for (let i = 0; i < array.length; i += 1) {\n if (comp(array[i])) {\n return i;\n }\n }\n return -1;\n}\nconst defaultFilterOptions = createFilterOptions();\n\n// Number of options to jump in list box when `Page Up` and `Page Down` keys are used.\nconst pageSize = 5;\nconst defaultIsActiveElementInListbox = listboxRef => {\n var _listboxRef$current$p;\n return listboxRef.current !== null && ((_listboxRef$current$p = listboxRef.current.parentElement) == null ? void 0 : _listboxRef$current$p.contains(document.activeElement));\n};\nexport default function useAutocomplete(props) {\n const {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n unstable_isActiveElementInListbox = defaultIsActiveElementInListbox,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n unstable_classNamePrefix = 'Mui',\n autoComplete = false,\n autoHighlight = false,\n autoSelect = false,\n blurOnSelect = false,\n clearOnBlur = !props.freeSolo,\n clearOnEscape = false,\n componentName = 'useAutocomplete',\n defaultValue = props.multiple ? [] : null,\n disableClearable = false,\n disableCloseOnSelect = false,\n disabled: disabledProp,\n disabledItemsFocusable = false,\n disableListWrap = false,\n filterOptions = defaultFilterOptions,\n filterSelectedOptions = false,\n freeSolo = false,\n getOptionDisabled,\n getOptionLabel: getOptionLabelProp = option => {\n var _option$label;\n return (_option$label = option.label) != null ? _option$label : option;\n },\n groupBy,\n handleHomeEndKeys = !props.freeSolo,\n id: idProp,\n includeInputInList = false,\n inputValue: inputValueProp,\n isOptionEqualToValue = (option, value) => option === value,\n multiple = false,\n onChange,\n onClose,\n onHighlightChange,\n onInputChange,\n onOpen,\n open: openProp,\n openOnFocus = false,\n options,\n readOnly = false,\n selectOnFocus = !props.freeSolo,\n value: valueProp\n } = props;\n const id = useId(idProp);\n let getOptionLabel = getOptionLabelProp;\n getOptionLabel = option => {\n const optionLabel = getOptionLabelProp(option);\n if (typeof optionLabel !== 'string') {\n if (process.env.NODE_ENV !== 'production') {\n const erroneousReturn = optionLabel === undefined ? 'undefined' : `${typeof optionLabel} (${optionLabel})`;\n console.error(`MUI: The \\`getOptionLabel\\` method of ${componentName} returned ${erroneousReturn} instead of a string for ${JSON.stringify(option)}.`);\n }\n return String(optionLabel);\n }\n return optionLabel;\n };\n const ignoreFocus = React.useRef(false);\n const firstFocus = React.useRef(true);\n const inputRef = React.useRef(null);\n const listboxRef = React.useRef(null);\n const [anchorEl, setAnchorEl] = React.useState(null);\n const [focusedTag, setFocusedTag] = React.useState(-1);\n const defaultHighlighted = autoHighlight ? 0 : -1;\n const highlightedIndexRef = React.useRef(defaultHighlighted);\n const [value, setValueState] = useControlled({\n controlled: valueProp,\n default: defaultValue,\n name: componentName\n });\n const [inputValue, setInputValueState] = useControlled({\n controlled: inputValueProp,\n default: '',\n name: componentName,\n state: 'inputValue'\n });\n const [focused, setFocused] = React.useState(false);\n const resetInputValue = React.useCallback((event, newValue) => {\n // retain current `inputValue` if new option isn't selected and `clearOnBlur` is false\n // When `multiple` is enabled, `newValue` is an array of all selected items including the newly selected item\n const isOptionSelected = multiple ? value.length < newValue.length : newValue !== null;\n if (!isOptionSelected && !clearOnBlur) {\n return;\n }\n let newInputValue;\n if (multiple) {\n newInputValue = '';\n } else if (newValue == null) {\n newInputValue = '';\n } else {\n const optionLabel = getOptionLabel(newValue);\n newInputValue = typeof optionLabel === 'string' ? optionLabel : '';\n }\n if (inputValue === newInputValue) {\n return;\n }\n setInputValueState(newInputValue);\n if (onInputChange) {\n onInputChange(event, newInputValue, 'reset');\n }\n }, [getOptionLabel, inputValue, multiple, onInputChange, setInputValueState, clearOnBlur, value]);\n const [open, setOpenState] = useControlled({\n controlled: openProp,\n default: false,\n name: componentName,\n state: 'open'\n });\n const [inputPristine, setInputPristine] = React.useState(true);\n const inputValueIsSelectedValue = !multiple && value != null && inputValue === getOptionLabel(value);\n const popupOpen = open && !readOnly;\n const filteredOptions = popupOpen ? filterOptions(options.filter(option => {\n if (filterSelectedOptions && (multiple ? value : [value]).some(value2 => value2 !== null && isOptionEqualToValue(option, value2))) {\n return false;\n }\n return true;\n }),\n // we use the empty string to manipulate `filterOptions` to not filter any options\n // i.e. the filter predicate always returns true\n {\n inputValue: inputValueIsSelectedValue && inputPristine ? '' : inputValue,\n getOptionLabel\n }) : [];\n const previousProps = usePreviousProps({\n filteredOptions,\n value,\n inputValue\n });\n React.useEffect(() => {\n const valueChange = value !== previousProps.value;\n if (focused && !valueChange) {\n return;\n }\n\n // Only reset the input's value when freeSolo if the component's value changes.\n if (freeSolo && !valueChange) {\n return;\n }\n resetInputValue(null, value);\n }, [value, resetInputValue, focused, previousProps.value, freeSolo]);\n const listboxAvailable = open && filteredOptions.length > 0 && !readOnly;\n if (process.env.NODE_ENV !== 'production') {\n if (value !== null && !freeSolo && options.length > 0) {\n const missingValue = (multiple ? value : [value]).filter(value2 => !options.some(option => isOptionEqualToValue(option, value2)));\n if (missingValue.length > 0) {\n console.warn([`MUI: The value provided to ${componentName} is invalid.`, `None of the options match with \\`${missingValue.length > 1 ? JSON.stringify(missingValue) : JSON.stringify(missingValue[0])}\\`.`, 'You can use the `isOptionEqualToValue` prop to customize the equality test.'].join('\\n'));\n }\n }\n }\n const focusTag = useEventCallback(tagToFocus => {\n if (tagToFocus === -1) {\n inputRef.current.focus();\n } else {\n anchorEl.querySelector(`[data-tag-index=\"${tagToFocus}\"]`).focus();\n }\n });\n\n // Ensure the focusedTag is never inconsistent\n React.useEffect(() => {\n if (multiple && focusedTag > value.length - 1) {\n setFocusedTag(-1);\n focusTag(-1);\n }\n }, [value, multiple, focusedTag, focusTag]);\n function validOptionIndex(index, direction) {\n if (!listboxRef.current || index === -1) {\n return -1;\n }\n let nextFocus = index;\n while (true) {\n // Out of range\n if (direction === 'next' && nextFocus === filteredOptions.length || direction === 'previous' && nextFocus === -1) {\n return -1;\n }\n const option = listboxRef.current.querySelector(`[data-option-index=\"${nextFocus}\"]`);\n\n // Same logic as MenuList.js\n const nextFocusDisabled = disabledItemsFocusable ? false : !option || option.disabled || option.getAttribute('aria-disabled') === 'true';\n if (option && !option.hasAttribute('tabindex') || nextFocusDisabled) {\n // Move to the next element.\n nextFocus += direction === 'next' ? 1 : -1;\n } else {\n return nextFocus;\n }\n }\n }\n const setHighlightedIndex = useEventCallback(({\n event,\n index,\n reason = 'auto'\n }) => {\n highlightedIndexRef.current = index;\n\n // does the index exist?\n if (index === -1) {\n inputRef.current.removeAttribute('aria-activedescendant');\n } else {\n inputRef.current.setAttribute('aria-activedescendant', `${id}-option-${index}`);\n }\n if (onHighlightChange) {\n onHighlightChange(event, index === -1 ? null : filteredOptions[index], reason);\n }\n if (!listboxRef.current) {\n return;\n }\n const prev = listboxRef.current.querySelector(`[role=\"option\"].${unstable_classNamePrefix}-focused`);\n if (prev) {\n prev.classList.remove(`${unstable_classNamePrefix}-focused`);\n prev.classList.remove(`${unstable_classNamePrefix}-focusVisible`);\n }\n let listboxNode = listboxRef.current;\n if (listboxRef.current.getAttribute('role') !== 'listbox') {\n listboxNode = listboxRef.current.parentElement.querySelector('[role=\"listbox\"]');\n }\n\n // \"No results\"\n if (!listboxNode) {\n return;\n }\n if (index === -1) {\n listboxNode.scrollTop = 0;\n return;\n }\n const option = listboxRef.current.querySelector(`[data-option-index=\"${index}\"]`);\n if (!option) {\n return;\n }\n option.classList.add(`${unstable_classNamePrefix}-focused`);\n if (reason === 'keyboard') {\n option.classList.add(`${unstable_classNamePrefix}-focusVisible`);\n }\n\n // Scroll active descendant into view.\n // Logic copied from https://www.w3.org/WAI/content-assets/wai-aria-practices/patterns/combobox/examples/js/select-only.js\n //\n // Consider this API instead once it has a better browser support:\n // .scrollIntoView({ scrollMode: 'if-needed', block: 'nearest' });\n if (listboxNode.scrollHeight > listboxNode.clientHeight && reason !== 'mouse') {\n const element = option;\n const scrollBottom = listboxNode.clientHeight + listboxNode.scrollTop;\n const elementBottom = element.offsetTop + element.offsetHeight;\n if (elementBottom > scrollBottom) {\n listboxNode.scrollTop = elementBottom - listboxNode.clientHeight;\n } else if (element.offsetTop - element.offsetHeight * (groupBy ? 1.3 : 0) < listboxNode.scrollTop) {\n listboxNode.scrollTop = element.offsetTop - element.offsetHeight * (groupBy ? 1.3 : 0);\n }\n }\n });\n const changeHighlightedIndex = useEventCallback(({\n event,\n diff,\n direction = 'next',\n reason = 'auto'\n }) => {\n if (!popupOpen) {\n return;\n }\n const getNextIndex = () => {\n const maxIndex = filteredOptions.length - 1;\n if (diff === 'reset') {\n return defaultHighlighted;\n }\n if (diff === 'start') {\n return 0;\n }\n if (diff === 'end') {\n return maxIndex;\n }\n const newIndex = highlightedIndexRef.current + diff;\n if (newIndex < 0) {\n if (newIndex === -1 && includeInputInList) {\n return -1;\n }\n if (disableListWrap && highlightedIndexRef.current !== -1 || Math.abs(diff) > 1) {\n return 0;\n }\n return maxIndex;\n }\n if (newIndex > maxIndex) {\n if (newIndex === maxIndex + 1 && includeInputInList) {\n return -1;\n }\n if (disableListWrap || Math.abs(diff) > 1) {\n return maxIndex;\n }\n return 0;\n }\n return newIndex;\n };\n const nextIndex = validOptionIndex(getNextIndex(), direction);\n setHighlightedIndex({\n index: nextIndex,\n reason,\n event\n });\n\n // Sync the content of the input with the highlighted option.\n if (autoComplete && diff !== 'reset') {\n if (nextIndex === -1) {\n inputRef.current.value = inputValue;\n } else {\n const option = getOptionLabel(filteredOptions[nextIndex]);\n inputRef.current.value = option;\n\n // The portion of the selected suggestion that has not been typed by the user,\n // a completion string, appears inline after the input cursor in the textbox.\n const index = option.toLowerCase().indexOf(inputValue.toLowerCase());\n if (index === 0 && inputValue.length > 0) {\n inputRef.current.setSelectionRange(inputValue.length, option.length);\n }\n }\n }\n });\n const checkHighlightedOptionExists = () => {\n const isSameValue = (value1, value2) => {\n const label1 = value1 ? getOptionLabel(value1) : '';\n const label2 = value2 ? getOptionLabel(value2) : '';\n return label1 === label2;\n };\n if (highlightedIndexRef.current !== -1 && previousProps.filteredOptions && previousProps.filteredOptions.length !== filteredOptions.length && previousProps.inputValue === inputValue && (multiple ? value.length === previousProps.value.length && previousProps.value.every((val, i) => getOptionLabel(value[i]) === getOptionLabel(val)) : isSameValue(previousProps.value, value))) {\n const previousHighlightedOption = previousProps.filteredOptions[highlightedIndexRef.current];\n if (previousHighlightedOption) {\n const previousHighlightedOptionExists = filteredOptions.some(option => {\n return getOptionLabel(option) === getOptionLabel(previousHighlightedOption);\n });\n if (previousHighlightedOptionExists) {\n return true;\n }\n }\n }\n return false;\n };\n const syncHighlightedIndex = React.useCallback(() => {\n if (!popupOpen) {\n return;\n }\n\n // Check if the previously highlighted option still exists in the updated filtered options list and if the value and inputValue haven't changed\n // If it exists and the value and the inputValue haven't changed, return, otherwise continue execution\n if (checkHighlightedOptionExists()) {\n return;\n }\n const valueItem = multiple ? value[0] : value;\n\n // The popup is empty, reset\n if (filteredOptions.length === 0 || valueItem == null) {\n changeHighlightedIndex({\n diff: 'reset'\n });\n return;\n }\n if (!listboxRef.current) {\n return;\n }\n\n // Synchronize the value with the highlighted index\n if (valueItem != null) {\n const currentOption = filteredOptions[highlightedIndexRef.current];\n\n // Keep the current highlighted index if possible\n if (multiple && currentOption && findIndex(value, val => isOptionEqualToValue(currentOption, val)) !== -1) {\n return;\n }\n const itemIndex = findIndex(filteredOptions, optionItem => isOptionEqualToValue(optionItem, valueItem));\n if (itemIndex === -1) {\n changeHighlightedIndex({\n diff: 'reset'\n });\n } else {\n setHighlightedIndex({\n index: itemIndex\n });\n }\n return;\n }\n\n // Prevent the highlighted index to leak outside the boundaries.\n if (highlightedIndexRef.current >= filteredOptions.length - 1) {\n setHighlightedIndex({\n index: filteredOptions.length - 1\n });\n return;\n }\n\n // Restore the focus to the previous index.\n setHighlightedIndex({\n index: highlightedIndexRef.current\n });\n // Ignore filteredOptions (and options, isOptionEqualToValue, getOptionLabel) not to break the scroll position\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n // Only sync the highlighted index when the option switch between empty and not\n filteredOptions.length,\n // Don't sync the highlighted index with the value when multiple\n // eslint-disable-next-line react-hooks/exhaustive-deps\n multiple ? false : value, filterSelectedOptions, changeHighlightedIndex, setHighlightedIndex, popupOpen, inputValue, multiple]);\n const handleListboxRef = useEventCallback(node => {\n setRef(listboxRef, node);\n if (!node) {\n return;\n }\n syncHighlightedIndex();\n });\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useEffect(() => {\n if (!inputRef.current || inputRef.current.nodeName !== 'INPUT') {\n if (inputRef.current && inputRef.current.nodeName === 'TEXTAREA') {\n console.warn([`A textarea element was provided to ${componentName} where input was expected.`, `This is not a supported scenario but it may work under certain conditions.`, `A textarea keyboard navigation may conflict with Autocomplete controls (e.g. enter and arrow keys).`, `Make sure to test keyboard navigation and add custom event handlers if necessary.`].join('\\n'));\n } else {\n console.error([`MUI: Unable to find the input element. It was resolved to ${inputRef.current} while an HTMLInputElement was expected.`, `Instead, ${componentName} expects an input element.`, '', componentName === 'useAutocomplete' ? 'Make sure you have bound getInputProps correctly and that the normal ref/effect resolutions order is guaranteed.' : 'Make sure you have customized the input component correctly.'].join('\\n'));\n }\n }\n }, [componentName]);\n }\n React.useEffect(() => {\n syncHighlightedIndex();\n }, [syncHighlightedIndex]);\n const handleOpen = event => {\n if (open) {\n return;\n }\n setOpenState(true);\n setInputPristine(true);\n if (onOpen) {\n onOpen(event);\n }\n };\n const handleClose = (event, reason) => {\n if (!open) {\n return;\n }\n setOpenState(false);\n if (onClose) {\n onClose(event, reason);\n }\n };\n const handleValue = (event, newValue, reason, details) => {\n if (multiple) {\n if (value.length === newValue.length && value.every((val, i) => val === newValue[i])) {\n return;\n }\n } else if (value === newValue) {\n return;\n }\n if (onChange) {\n onChange(event, newValue, reason, details);\n }\n setValueState(newValue);\n };\n const isTouch = React.useRef(false);\n const selectNewValue = (event, option, reasonProp = 'selectOption', origin = 'options') => {\n let reason = reasonProp;\n let newValue = option;\n if (multiple) {\n newValue = Array.isArray(value) ? value.slice() : [];\n if (process.env.NODE_ENV !== 'production') {\n const matches = newValue.filter(val => isOptionEqualToValue(option, val));\n if (matches.length > 1) {\n console.error([`MUI: The \\`isOptionEqualToValue\\` method of ${componentName} does not handle the arguments correctly.`, `The component expects a single value to match a given option but found ${matches.length} matches.`].join('\\n'));\n }\n }\n const itemIndex = findIndex(newValue, valueItem => isOptionEqualToValue(option, valueItem));\n if (itemIndex === -1) {\n newValue.push(option);\n } else if (origin !== 'freeSolo') {\n newValue.splice(itemIndex, 1);\n reason = 'removeOption';\n }\n }\n resetInputValue(event, newValue);\n handleValue(event, newValue, reason, {\n option\n });\n if (!disableCloseOnSelect && (!event || !event.ctrlKey && !event.metaKey)) {\n handleClose(event, reason);\n }\n if (blurOnSelect === true || blurOnSelect === 'touch' && isTouch.current || blurOnSelect === 'mouse' && !isTouch.current) {\n inputRef.current.blur();\n }\n };\n function validTagIndex(index, direction) {\n if (index === -1) {\n return -1;\n }\n let nextFocus = index;\n while (true) {\n // Out of range\n if (direction === 'next' && nextFocus === value.length || direction === 'previous' && nextFocus === -1) {\n return -1;\n }\n const option = anchorEl.querySelector(`[data-tag-index=\"${nextFocus}\"]`);\n\n // Same logic as MenuList.js\n if (!option || !option.hasAttribute('tabindex') || option.disabled || option.getAttribute('aria-disabled') === 'true') {\n nextFocus += direction === 'next' ? 1 : -1;\n } else {\n return nextFocus;\n }\n }\n }\n const handleFocusTag = (event, direction) => {\n if (!multiple) {\n return;\n }\n if (inputValue === '') {\n handleClose(event, 'toggleInput');\n }\n let nextTag = focusedTag;\n if (focusedTag === -1) {\n if (inputValue === '' && direction === 'previous') {\n nextTag = value.length - 1;\n }\n } else {\n nextTag += direction === 'next' ? 1 : -1;\n if (nextTag < 0) {\n nextTag = 0;\n }\n if (nextTag === value.length) {\n nextTag = -1;\n }\n }\n nextTag = validTagIndex(nextTag, direction);\n setFocusedTag(nextTag);\n focusTag(nextTag);\n };\n const handleClear = event => {\n ignoreFocus.current = true;\n setInputValueState('');\n if (onInputChange) {\n onInputChange(event, '', 'clear');\n }\n handleValue(event, multiple ? [] : null, 'clear');\n };\n const handleKeyDown = other => event => {\n if (other.onKeyDown) {\n other.onKeyDown(event);\n }\n if (event.defaultMuiPrevented) {\n return;\n }\n if (focusedTag !== -1 && ['ArrowLeft', 'ArrowRight'].indexOf(event.key) === -1) {\n setFocusedTag(-1);\n focusTag(-1);\n }\n\n // Wait until IME is settled.\n if (event.which !== 229) {\n switch (event.key) {\n case 'Home':\n if (popupOpen && handleHomeEndKeys) {\n // Prevent scroll of the page\n event.preventDefault();\n changeHighlightedIndex({\n diff: 'start',\n direction: 'next',\n reason: 'keyboard',\n event\n });\n }\n break;\n case 'End':\n if (popupOpen && handleHomeEndKeys) {\n // Prevent scroll of the page\n event.preventDefault();\n changeHighlightedIndex({\n diff: 'end',\n direction: 'previous',\n reason: 'keyboard',\n event\n });\n }\n break;\n case 'PageUp':\n // Prevent scroll of the page\n event.preventDefault();\n changeHighlightedIndex({\n diff: -pageSize,\n direction: 'previous',\n reason: 'keyboard',\n event\n });\n handleOpen(event);\n break;\n case 'PageDown':\n // Prevent scroll of the page\n event.preventDefault();\n changeHighlightedIndex({\n diff: pageSize,\n direction: 'next',\n reason: 'keyboard',\n event\n });\n handleOpen(event);\n break;\n case 'ArrowDown':\n // Prevent cursor move\n event.preventDefault();\n changeHighlightedIndex({\n diff: 1,\n direction: 'next',\n reason: 'keyboard',\n event\n });\n handleOpen(event);\n break;\n case 'ArrowUp':\n // Prevent cursor move\n event.preventDefault();\n changeHighlightedIndex({\n diff: -1,\n direction: 'previous',\n reason: 'keyboard',\n event\n });\n handleOpen(event);\n break;\n case 'ArrowLeft':\n handleFocusTag(event, 'previous');\n break;\n case 'ArrowRight':\n handleFocusTag(event, 'next');\n break;\n case 'Enter':\n if (highlightedIndexRef.current !== -1 && popupOpen) {\n const option = filteredOptions[highlightedIndexRef.current];\n const disabled = getOptionDisabled ? getOptionDisabled(option) : false;\n\n // Avoid early form validation, let the end-users continue filling the form.\n event.preventDefault();\n if (disabled) {\n return;\n }\n selectNewValue(event, option, 'selectOption');\n\n // Move the selection to the end.\n if (autoComplete) {\n inputRef.current.setSelectionRange(inputRef.current.value.length, inputRef.current.value.length);\n }\n } else if (freeSolo && inputValue !== '' && inputValueIsSelectedValue === false) {\n if (multiple) {\n // Allow people to add new values before they submit the form.\n event.preventDefault();\n }\n selectNewValue(event, inputValue, 'createOption', 'freeSolo');\n }\n break;\n case 'Escape':\n if (popupOpen) {\n // Avoid Opera to exit fullscreen mode.\n event.preventDefault();\n // Avoid the Modal to handle the event.\n event.stopPropagation();\n handleClose(event, 'escape');\n } else if (clearOnEscape && (inputValue !== '' || multiple && value.length > 0)) {\n // Avoid Opera to exit fullscreen mode.\n event.preventDefault();\n // Avoid the Modal to handle the event.\n event.stopPropagation();\n handleClear(event);\n }\n break;\n case 'Backspace':\n if (multiple && !readOnly && inputValue === '' && value.length > 0) {\n const index = focusedTag === -1 ? value.length - 1 : focusedTag;\n const newValue = value.slice();\n newValue.splice(index, 1);\n handleValue(event, newValue, 'removeOption', {\n option: value[index]\n });\n }\n break;\n case 'Delete':\n if (multiple && !readOnly && inputValue === '' && value.length > 0 && focusedTag !== -1) {\n const index = focusedTag;\n const newValue = value.slice();\n newValue.splice(index, 1);\n handleValue(event, newValue, 'removeOption', {\n option: value[index]\n });\n }\n break;\n default:\n }\n }\n };\n const handleFocus = event => {\n setFocused(true);\n if (openOnFocus && !ignoreFocus.current) {\n handleOpen(event);\n }\n };\n const handleBlur = event => {\n // Ignore the event when using the scrollbar with IE11\n if (unstable_isActiveElementInListbox(listboxRef)) {\n inputRef.current.focus();\n return;\n }\n setFocused(false);\n firstFocus.current = true;\n ignoreFocus.current = false;\n if (autoSelect && highlightedIndexRef.current !== -1 && popupOpen) {\n selectNewValue(event, filteredOptions[highlightedIndexRef.current], 'blur');\n } else if (autoSelect && freeSolo && inputValue !== '') {\n selectNewValue(event, inputValue, 'blur', 'freeSolo');\n } else if (clearOnBlur) {\n resetInputValue(event, value);\n }\n handleClose(event, 'blur');\n };\n const handleInputChange = event => {\n const newValue = event.target.value;\n if (inputValue !== newValue) {\n setInputValueState(newValue);\n setInputPristine(false);\n if (onInputChange) {\n onInputChange(event, newValue, 'input');\n }\n }\n if (newValue === '') {\n if (!disableClearable && !multiple) {\n handleValue(event, null, 'clear');\n }\n } else {\n handleOpen(event);\n }\n };\n const handleOptionMouseMove = event => {\n const index = Number(event.currentTarget.getAttribute('data-option-index'));\n if (highlightedIndexRef.current !== index) {\n setHighlightedIndex({\n event,\n index,\n reason: 'mouse'\n });\n }\n };\n const handleOptionTouchStart = event => {\n setHighlightedIndex({\n event,\n index: Number(event.currentTarget.getAttribute('data-option-index')),\n reason: 'touch'\n });\n isTouch.current = true;\n };\n const handleOptionClick = event => {\n const index = Number(event.currentTarget.getAttribute('data-option-index'));\n selectNewValue(event, filteredOptions[index], 'selectOption');\n isTouch.current = false;\n };\n const handleTagDelete = index => event => {\n const newValue = value.slice();\n newValue.splice(index, 1);\n handleValue(event, newValue, 'removeOption', {\n option: value[index]\n });\n };\n const handlePopupIndicator = event => {\n if (open) {\n handleClose(event, 'toggleInput');\n } else {\n handleOpen(event);\n }\n };\n\n // Prevent input blur when interacting with the combobox\n const handleMouseDown = event => {\n // Prevent focusing the input if click is anywhere outside the Autocomplete\n if (!event.currentTarget.contains(event.target)) {\n return;\n }\n if (event.target.getAttribute('id') !== id) {\n event.preventDefault();\n }\n };\n\n // Focus the input when interacting with the combobox\n const handleClick = event => {\n // Prevent focusing the input if click is anywhere outside the Autocomplete\n if (!event.currentTarget.contains(event.target)) {\n return;\n }\n inputRef.current.focus();\n if (selectOnFocus && firstFocus.current && inputRef.current.selectionEnd - inputRef.current.selectionStart === 0) {\n inputRef.current.select();\n }\n firstFocus.current = false;\n };\n const handleInputMouseDown = event => {\n if (inputValue === '' || !open) {\n handlePopupIndicator(event);\n }\n };\n let dirty = freeSolo && inputValue.length > 0;\n dirty = dirty || (multiple ? value.length > 0 : value !== null);\n let groupedOptions = filteredOptions;\n if (groupBy) {\n // used to keep track of key and indexes in the result array\n const indexBy = new Map();\n let warn = false;\n groupedOptions = filteredOptions.reduce((acc, option, index) => {\n const group = groupBy(option);\n if (acc.length > 0 && acc[acc.length - 1].group === group) {\n acc[acc.length - 1].options.push(option);\n } else {\n if (process.env.NODE_ENV !== 'production') {\n if (indexBy.get(group) && !warn) {\n console.warn(`MUI: The options provided combined with the \\`groupBy\\` method of ${componentName} returns duplicated headers.`, 'You can solve the issue by sorting the options with the output of `groupBy`.');\n warn = true;\n }\n indexBy.set(group, true);\n }\n acc.push({\n key: index,\n index,\n group,\n options: [option]\n });\n }\n return acc;\n }, []);\n }\n if (disabledProp && focused) {\n handleBlur();\n }\n return {\n getRootProps: (other = {}) => _extends({\n 'aria-owns': listboxAvailable ? `${id}-listbox` : null\n }, other, {\n onKeyDown: handleKeyDown(other),\n onMouseDown: handleMouseDown,\n onClick: handleClick\n }),\n getInputLabelProps: () => ({\n id: `${id}-label`,\n htmlFor: id\n }),\n getInputProps: () => ({\n id,\n value: inputValue,\n onBlur: handleBlur,\n onFocus: handleFocus,\n onChange: handleInputChange,\n onMouseDown: handleInputMouseDown,\n // if open then this is handled imperatively so don't let react override\n // only have an opinion about this when closed\n 'aria-activedescendant': popupOpen ? '' : null,\n 'aria-autocomplete': autoComplete ? 'both' : 'list',\n 'aria-controls': listboxAvailable ? `${id}-listbox` : undefined,\n 'aria-expanded': listboxAvailable,\n // Disable browser's suggestion that might overlap with the popup.\n // Handle autocomplete but not autofill.\n autoComplete: 'off',\n ref: inputRef,\n autoCapitalize: 'none',\n spellCheck: 'false',\n role: 'combobox',\n disabled: disabledProp\n }),\n getClearProps: () => ({\n tabIndex: -1,\n onClick: handleClear\n }),\n getPopupIndicatorProps: () => ({\n tabIndex: -1,\n onClick: handlePopupIndicator\n }),\n getTagProps: ({\n index\n }) => _extends({\n key: index,\n 'data-tag-index': index,\n tabIndex: -1\n }, !readOnly && {\n onDelete: handleTagDelete(index)\n }),\n getListboxProps: () => ({\n role: 'listbox',\n id: `${id}-listbox`,\n 'aria-labelledby': `${id}-label`,\n ref: handleListboxRef,\n onMouseDown: event => {\n // Prevent blur\n event.preventDefault();\n }\n }),\n getOptionProps: ({\n index,\n option\n }) => {\n const selected = (multiple ? value : [value]).some(value2 => value2 != null && isOptionEqualToValue(option, value2));\n const disabled = getOptionDisabled ? getOptionDisabled(option) : false;\n return {\n key: getOptionLabel(option),\n tabIndex: -1,\n role: 'option',\n id: `${id}-option-${index}`,\n onMouseMove: handleOptionMouseMove,\n onClick: handleOptionClick,\n onTouchStart: handleOptionTouchStart,\n 'data-option-index': index,\n 'aria-disabled': disabled,\n 'aria-selected': selected\n };\n },\n id,\n inputValue,\n value,\n dirty,\n expanded: popupOpen && anchorEl,\n popupOpen,\n focused: focused || focusedTag !== -1,\n anchorEl,\n setAnchorEl,\n focusedTag,\n groupedOptions\n };\n}","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n *\n * Alias to `Clear`.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\n}), 'Close');","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getAutocompleteUtilityClass(slot) {\n return generateUtilityClass('MuiAutocomplete', slot);\n}\nconst autocompleteClasses = generateUtilityClasses('MuiAutocomplete', ['root', 'expanded', 'fullWidth', 'focused', 'focusVisible', 'tag', 'tagSizeSmall', 'tagSizeMedium', 'hasPopupIcon', 'hasClearIcon', 'inputRoot', 'input', 'inputFocused', 'endAdornment', 'clearIndicator', 'popupIndicator', 'popupIndicatorOpen', 'popper', 'popperDisablePortal', 'paper', 'listbox', 'loading', 'noOptions', 'option', 'groupLabel', 'groupUl']);\nexport default autocompleteClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nvar _ClearIcon, _ArrowDropDownIcon;\nconst _excluded = [\"autoComplete\", \"autoHighlight\", \"autoSelect\", \"blurOnSelect\", \"ChipProps\", \"className\", \"clearIcon\", \"clearOnBlur\", \"clearOnEscape\", \"clearText\", \"closeText\", \"componentsProps\", \"defaultValue\", \"disableClearable\", \"disableCloseOnSelect\", \"disabled\", \"disabledItemsFocusable\", \"disableListWrap\", \"disablePortal\", \"filterOptions\", \"filterSelectedOptions\", \"forcePopupIcon\", \"freeSolo\", \"fullWidth\", \"getLimitTagsText\", \"getOptionDisabled\", \"getOptionLabel\", \"isOptionEqualToValue\", \"groupBy\", \"handleHomeEndKeys\", \"id\", \"includeInputInList\", \"inputValue\", \"limitTags\", \"ListboxComponent\", \"ListboxProps\", \"loading\", \"loadingText\", \"multiple\", \"noOptionsText\", \"onChange\", \"onClose\", \"onHighlightChange\", \"onInputChange\", \"onOpen\", \"open\", \"openOnFocus\", \"openText\", \"options\", \"PaperComponent\", \"PopperComponent\", \"popupIcon\", \"readOnly\", \"renderGroup\", \"renderInput\", \"renderOption\", \"renderTags\", \"selectOnFocus\", \"size\", \"slotProps\", \"value\"],\n _excluded2 = [\"ref\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { chainPropTypes, integerPropType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses, useAutocomplete, createFilterOptions } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport Popper from '../Popper';\nimport ListSubheader from '../ListSubheader';\nimport Paper from '../Paper';\nimport IconButton from '../IconButton';\nimport Chip from '../Chip';\nimport inputClasses from '../Input/inputClasses';\nimport inputBaseClasses from '../InputBase/inputBaseClasses';\nimport outlinedInputClasses from '../OutlinedInput/outlinedInputClasses';\nimport filledInputClasses from '../FilledInput/filledInputClasses';\nimport ClearIcon from '../internal/svg-icons/Close';\nimport ArrowDropDownIcon from '../internal/svg-icons/ArrowDropDown';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport autocompleteClasses, { getAutocompleteUtilityClass } from './autocompleteClasses';\nimport capitalize from '../utils/capitalize';\nimport useForkRef from '../utils/useForkRef';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n disablePortal,\n expanded,\n focused,\n fullWidth,\n hasClearIcon,\n hasPopupIcon,\n inputFocused,\n popupOpen,\n size\n } = ownerState;\n const slots = {\n root: ['root', expanded && 'expanded', focused && 'focused', fullWidth && 'fullWidth', hasClearIcon && 'hasClearIcon', hasPopupIcon && 'hasPopupIcon'],\n inputRoot: ['inputRoot'],\n input: ['input', inputFocused && 'inputFocused'],\n tag: ['tag', `tagSize${capitalize(size)}`],\n endAdornment: ['endAdornment'],\n clearIndicator: ['clearIndicator'],\n popupIndicator: ['popupIndicator', popupOpen && 'popupIndicatorOpen'],\n popper: ['popper', disablePortal && 'popperDisablePortal'],\n paper: ['paper'],\n listbox: ['listbox'],\n loading: ['loading'],\n noOptions: ['noOptions'],\n option: ['option'],\n groupLabel: ['groupLabel'],\n groupUl: ['groupUl']\n };\n return composeClasses(slots, getAutocompleteUtilityClass, classes);\n};\nconst AutocompleteRoot = styled('div', {\n name: 'MuiAutocomplete',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n const {\n fullWidth,\n hasClearIcon,\n hasPopupIcon,\n inputFocused,\n size\n } = ownerState;\n return [{\n [`& .${autocompleteClasses.tag}`]: styles.tag\n }, {\n [`& .${autocompleteClasses.tag}`]: styles[`tagSize${capitalize(size)}`]\n }, {\n [`& .${autocompleteClasses.inputRoot}`]: styles.inputRoot\n }, {\n [`& .${autocompleteClasses.input}`]: styles.input\n }, {\n [`& .${autocompleteClasses.input}`]: inputFocused && styles.inputFocused\n }, styles.root, fullWidth && styles.fullWidth, hasPopupIcon && styles.hasPopupIcon, hasClearIcon && styles.hasClearIcon];\n }\n})(({\n ownerState\n}) => _extends({\n [`&.${autocompleteClasses.focused} .${autocompleteClasses.clearIndicator}`]: {\n visibility: 'visible'\n },\n /* Avoid double tap issue on iOS */\n '@media (pointer: fine)': {\n [`&:hover .${autocompleteClasses.clearIndicator}`]: {\n visibility: 'visible'\n }\n }\n}, ownerState.fullWidth && {\n width: '100%'\n}, {\n [`& .${autocompleteClasses.tag}`]: _extends({\n margin: 3,\n maxWidth: 'calc(100% - 6px)'\n }, ownerState.size === 'small' && {\n margin: 2,\n maxWidth: 'calc(100% - 4px)'\n }),\n [`& .${autocompleteClasses.inputRoot}`]: {\n flexWrap: 'wrap',\n [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: {\n paddingRight: 26 + 4\n },\n [`.${autocompleteClasses.hasPopupIcon}.${autocompleteClasses.hasClearIcon}&`]: {\n paddingRight: 52 + 4\n },\n [`& .${autocompleteClasses.input}`]: {\n width: 0,\n minWidth: 30\n }\n },\n [`& .${inputClasses.root}`]: {\n paddingBottom: 1,\n '& .MuiInput-input': {\n padding: '4px 4px 4px 0px'\n }\n },\n [`& .${inputClasses.root}.${inputBaseClasses.sizeSmall}`]: {\n [`& .${inputClasses.input}`]: {\n padding: '2px 4px 3px 0'\n }\n },\n [`& .${outlinedInputClasses.root}`]: {\n padding: 9,\n [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: {\n paddingRight: 26 + 4 + 9\n },\n [`.${autocompleteClasses.hasPopupIcon}.${autocompleteClasses.hasClearIcon}&`]: {\n paddingRight: 52 + 4 + 9\n },\n [`& .${autocompleteClasses.input}`]: {\n padding: '7.5px 4px 7.5px 5px'\n },\n [`& .${autocompleteClasses.endAdornment}`]: {\n right: 9\n }\n },\n [`& .${outlinedInputClasses.root}.${inputBaseClasses.sizeSmall}`]: {\n // Don't specify paddingRight, as it overrides the default value set when there is only\n // one of the popup or clear icon as the specificity is equal so the latter one wins\n paddingTop: 6,\n paddingBottom: 6,\n paddingLeft: 6,\n [`& .${autocompleteClasses.input}`]: {\n padding: '2.5px 4px 2.5px 8px'\n }\n },\n [`& .${filledInputClasses.root}`]: {\n paddingTop: 19,\n paddingLeft: 8,\n [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: {\n paddingRight: 26 + 4 + 9\n },\n [`.${autocompleteClasses.hasPopupIcon}.${autocompleteClasses.hasClearIcon}&`]: {\n paddingRight: 52 + 4 + 9\n },\n [`& .${filledInputClasses.input}`]: {\n padding: '7px 4px'\n },\n [`& .${autocompleteClasses.endAdornment}`]: {\n right: 9\n }\n },\n [`& .${filledInputClasses.root}.${inputBaseClasses.sizeSmall}`]: {\n paddingBottom: 1,\n [`& .${filledInputClasses.input}`]: {\n padding: '2.5px 4px'\n }\n },\n [`& .${inputBaseClasses.hiddenLabel}`]: {\n paddingTop: 8\n },\n [`& .${filledInputClasses.root}.${inputBaseClasses.hiddenLabel}`]: {\n paddingTop: 0,\n paddingBottom: 0,\n [`& .${autocompleteClasses.input}`]: {\n paddingTop: 16,\n paddingBottom: 17\n }\n },\n [`& .${filledInputClasses.root}.${inputBaseClasses.hiddenLabel}.${inputBaseClasses.sizeSmall}`]: {\n [`& .${autocompleteClasses.input}`]: {\n paddingTop: 8,\n paddingBottom: 9\n }\n },\n [`& .${autocompleteClasses.input}`]: _extends({\n flexGrow: 1,\n textOverflow: 'ellipsis',\n opacity: 0\n }, ownerState.inputFocused && {\n opacity: 1\n })\n}));\nconst AutocompleteEndAdornment = styled('div', {\n name: 'MuiAutocomplete',\n slot: 'EndAdornment',\n overridesResolver: (props, styles) => styles.endAdornment\n})({\n // We use a position absolute to support wrapping tags.\n position: 'absolute',\n right: 0,\n top: 'calc(50% - 14px)' // Center vertically\n});\n\nconst AutocompleteClearIndicator = styled(IconButton, {\n name: 'MuiAutocomplete',\n slot: 'ClearIndicator',\n overridesResolver: (props, styles) => styles.clearIndicator\n})({\n marginRight: -2,\n padding: 4,\n visibility: 'hidden'\n});\nconst AutocompletePopupIndicator = styled(IconButton, {\n name: 'MuiAutocomplete',\n slot: 'PopupIndicator',\n overridesResolver: ({\n ownerState\n }, styles) => _extends({}, styles.popupIndicator, ownerState.popupOpen && styles.popupIndicatorOpen)\n})(({\n ownerState\n}) => _extends({\n padding: 2,\n marginRight: -2\n}, ownerState.popupOpen && {\n transform: 'rotate(180deg)'\n}));\nconst AutocompletePopper = styled(Popper, {\n name: 'MuiAutocomplete',\n slot: 'Popper',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${autocompleteClasses.option}`]: styles.option\n }, styles.popper, ownerState.disablePortal && styles.popperDisablePortal];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n zIndex: (theme.vars || theme).zIndex.modal\n}, ownerState.disablePortal && {\n position: 'absolute'\n}));\nconst AutocompletePaper = styled(Paper, {\n name: 'MuiAutocomplete',\n slot: 'Paper',\n overridesResolver: (props, styles) => styles.paper\n})(({\n theme\n}) => _extends({}, theme.typography.body1, {\n overflow: 'auto'\n}));\nconst AutocompleteLoading = styled('div', {\n name: 'MuiAutocomplete',\n slot: 'Loading',\n overridesResolver: (props, styles) => styles.loading\n})(({\n theme\n}) => ({\n color: (theme.vars || theme).palette.text.secondary,\n padding: '14px 16px'\n}));\nconst AutocompleteNoOptions = styled('div', {\n name: 'MuiAutocomplete',\n slot: 'NoOptions',\n overridesResolver: (props, styles) => styles.noOptions\n})(({\n theme\n}) => ({\n color: (theme.vars || theme).palette.text.secondary,\n padding: '14px 16px'\n}));\nconst AutocompleteListbox = styled('div', {\n name: 'MuiAutocomplete',\n slot: 'Listbox',\n overridesResolver: (props, styles) => styles.listbox\n})(({\n theme\n}) => ({\n listStyle: 'none',\n margin: 0,\n padding: '8px 0',\n maxHeight: '40vh',\n overflow: 'auto',\n position: 'relative',\n [`& .${autocompleteClasses.option}`]: {\n minHeight: 48,\n display: 'flex',\n overflow: 'hidden',\n justifyContent: 'flex-start',\n alignItems: 'center',\n cursor: 'pointer',\n paddingTop: 6,\n boxSizing: 'border-box',\n outline: '0',\n WebkitTapHighlightColor: 'transparent',\n paddingBottom: 6,\n paddingLeft: 16,\n paddingRight: 16,\n [theme.breakpoints.up('sm')]: {\n minHeight: 'auto'\n },\n [`&.${autocompleteClasses.focused}`]: {\n backgroundColor: (theme.vars || theme).palette.action.hover,\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n '&[aria-disabled=\"true\"]': {\n opacity: (theme.vars || theme).palette.action.disabledOpacity,\n pointerEvents: 'none'\n },\n [`&.${autocompleteClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette.action.focus\n },\n '&[aria-selected=\"true\"]': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity),\n [`&.${autocompleteClasses.focused}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: (theme.vars || theme).palette.action.selected\n }\n },\n [`&.${autocompleteClasses.focusVisible}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)\n }\n }\n }\n}));\nconst AutocompleteGroupLabel = styled(ListSubheader, {\n name: 'MuiAutocomplete',\n slot: 'GroupLabel',\n overridesResolver: (props, styles) => styles.groupLabel\n})(({\n theme\n}) => ({\n backgroundColor: (theme.vars || theme).palette.background.paper,\n top: -8\n}));\nconst AutocompleteGroupUl = styled('ul', {\n name: 'MuiAutocomplete',\n slot: 'GroupUl',\n overridesResolver: (props, styles) => styles.groupUl\n})({\n padding: 0,\n [`& .${autocompleteClasses.option}`]: {\n paddingLeft: 24\n }\n});\nexport { createFilterOptions };\nconst Autocomplete = /*#__PURE__*/React.forwardRef(function Autocomplete(inProps, ref) {\n var _slotProps$clearIndic, _slotProps$paper, _slotProps$popper, _slotProps$popupIndic;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiAutocomplete'\n });\n /* eslint-disable @typescript-eslint/no-unused-vars */\n const {\n autoComplete = false,\n autoHighlight = false,\n autoSelect = false,\n blurOnSelect = false,\n ChipProps,\n className,\n clearIcon = _ClearIcon || (_ClearIcon = /*#__PURE__*/_jsx(ClearIcon, {\n fontSize: \"small\"\n })),\n clearOnBlur = !props.freeSolo,\n clearOnEscape = false,\n clearText = 'Clear',\n closeText = 'Close',\n componentsProps = {},\n defaultValue = props.multiple ? [] : null,\n disableClearable = false,\n disableCloseOnSelect = false,\n disabled = false,\n disabledItemsFocusable = false,\n disableListWrap = false,\n disablePortal = false,\n filterSelectedOptions = false,\n forcePopupIcon = 'auto',\n freeSolo = false,\n fullWidth = false,\n getLimitTagsText = more => `+${more}`,\n getOptionLabel = option => {\n var _option$label;\n return (_option$label = option.label) != null ? _option$label : option;\n },\n groupBy,\n handleHomeEndKeys = !props.freeSolo,\n includeInputInList = false,\n limitTags = -1,\n ListboxComponent = 'ul',\n ListboxProps,\n loading = false,\n loadingText = 'Loading…',\n multiple = false,\n noOptionsText = 'No options',\n openOnFocus = false,\n openText = 'Open',\n PaperComponent = Paper,\n PopperComponent = Popper,\n popupIcon = _ArrowDropDownIcon || (_ArrowDropDownIcon = /*#__PURE__*/_jsx(ArrowDropDownIcon, {})),\n readOnly = false,\n renderGroup: renderGroupProp,\n renderInput,\n renderOption: renderOptionProp,\n renderTags,\n selectOnFocus = !props.freeSolo,\n size = 'medium',\n slotProps = {}\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n /* eslint-enable @typescript-eslint/no-unused-vars */\n\n const {\n getRootProps,\n getInputProps,\n getInputLabelProps,\n getPopupIndicatorProps,\n getClearProps,\n getTagProps,\n getListboxProps,\n getOptionProps,\n value,\n dirty,\n expanded,\n id,\n popupOpen,\n focused,\n focusedTag,\n anchorEl,\n setAnchorEl,\n inputValue,\n groupedOptions\n } = useAutocomplete(_extends({}, props, {\n componentName: 'Autocomplete'\n }));\n const hasClearIcon = !disableClearable && !disabled && dirty && !readOnly;\n const hasPopupIcon = (!freeSolo || forcePopupIcon === true) && forcePopupIcon !== false;\n const {\n onMouseDown: handleInputMouseDown\n } = getInputProps();\n const {\n ref: externalListboxRef\n } = ListboxProps != null ? ListboxProps : {};\n const _getListboxProps = getListboxProps(),\n {\n ref: listboxRef\n } = _getListboxProps,\n otherListboxProps = _objectWithoutPropertiesLoose(_getListboxProps, _excluded2);\n const combinedListboxRef = useForkRef(listboxRef, externalListboxRef);\n\n // If you modify this, make sure to keep the `AutocompleteOwnerState` type in sync.\n const ownerState = _extends({}, props, {\n disablePortal,\n expanded,\n focused,\n fullWidth,\n hasClearIcon,\n hasPopupIcon,\n inputFocused: focusedTag === -1,\n popupOpen,\n size\n });\n const classes = useUtilityClasses(ownerState);\n let startAdornment;\n if (multiple && value.length > 0) {\n const getCustomizedTagProps = params => _extends({\n className: classes.tag,\n disabled\n }, getTagProps(params));\n if (renderTags) {\n startAdornment = renderTags(value, getCustomizedTagProps, ownerState);\n } else {\n startAdornment = value.map((option, index) => /*#__PURE__*/_jsx(Chip, _extends({\n label: getOptionLabel(option),\n size: size\n }, getCustomizedTagProps({\n index\n }), ChipProps)));\n }\n }\n if (limitTags > -1 && Array.isArray(startAdornment)) {\n const more = startAdornment.length - limitTags;\n if (!focused && more > 0) {\n startAdornment = startAdornment.splice(0, limitTags);\n startAdornment.push( /*#__PURE__*/_jsx(\"span\", {\n className: classes.tag,\n children: getLimitTagsText(more)\n }, startAdornment.length));\n }\n }\n const defaultRenderGroup = params => /*#__PURE__*/_jsxs(\"li\", {\n children: [/*#__PURE__*/_jsx(AutocompleteGroupLabel, {\n className: classes.groupLabel,\n ownerState: ownerState,\n component: \"div\",\n children: params.group\n }), /*#__PURE__*/_jsx(AutocompleteGroupUl, {\n className: classes.groupUl,\n ownerState: ownerState,\n children: params.children\n })]\n }, params.key);\n const renderGroup = renderGroupProp || defaultRenderGroup;\n const defaultRenderOption = (props2, option) => /*#__PURE__*/_jsx(\"li\", _extends({}, props2, {\n children: getOptionLabel(option)\n }));\n const renderOption = renderOptionProp || defaultRenderOption;\n const renderListOption = (option, index) => {\n const optionProps = getOptionProps({\n option,\n index\n });\n return renderOption(_extends({}, optionProps, {\n className: classes.option\n }), option, {\n selected: optionProps['aria-selected'],\n index,\n inputValue\n });\n };\n const clearIndicatorSlotProps = (_slotProps$clearIndic = slotProps.clearIndicator) != null ? _slotProps$clearIndic : componentsProps.clearIndicator;\n const paperSlotProps = (_slotProps$paper = slotProps.paper) != null ? _slotProps$paper : componentsProps.paper;\n const popperSlotProps = (_slotProps$popper = slotProps.popper) != null ? _slotProps$popper : componentsProps.popper;\n const popupIndicatorSlotProps = (_slotProps$popupIndic = slotProps.popupIndicator) != null ? _slotProps$popupIndic : componentsProps.popupIndicator;\n return /*#__PURE__*/_jsxs(React.Fragment, {\n children: [/*#__PURE__*/_jsx(AutocompleteRoot, _extends({\n ref: ref,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, getRootProps(other), {\n children: renderInput({\n id,\n disabled,\n fullWidth: true,\n size: size === 'small' ? 'small' : undefined,\n InputLabelProps: getInputLabelProps(),\n InputProps: _extends({\n ref: setAnchorEl,\n className: classes.inputRoot,\n startAdornment,\n onClick: event => {\n if (event.target === event.currentTarget) {\n handleInputMouseDown(event);\n }\n }\n }, (hasClearIcon || hasPopupIcon) && {\n endAdornment: /*#__PURE__*/_jsxs(AutocompleteEndAdornment, {\n className: classes.endAdornment,\n ownerState: ownerState,\n children: [hasClearIcon ? /*#__PURE__*/_jsx(AutocompleteClearIndicator, _extends({}, getClearProps(), {\n \"aria-label\": clearText,\n title: clearText,\n ownerState: ownerState\n }, clearIndicatorSlotProps, {\n className: clsx(classes.clearIndicator, clearIndicatorSlotProps == null ? void 0 : clearIndicatorSlotProps.className),\n children: clearIcon\n })) : null, hasPopupIcon ? /*#__PURE__*/_jsx(AutocompletePopupIndicator, _extends({}, getPopupIndicatorProps(), {\n disabled: disabled,\n \"aria-label\": popupOpen ? closeText : openText,\n title: popupOpen ? closeText : openText,\n ownerState: ownerState\n }, popupIndicatorSlotProps, {\n className: clsx(classes.popupIndicator, popupIndicatorSlotProps == null ? void 0 : popupIndicatorSlotProps.className),\n children: popupIcon\n })) : null]\n })\n }),\n inputProps: _extends({\n className: classes.input,\n disabled,\n readOnly\n }, getInputProps())\n })\n })), anchorEl ? /*#__PURE__*/_jsx(AutocompletePopper, _extends({\n as: PopperComponent,\n disablePortal: disablePortal,\n style: {\n width: anchorEl ? anchorEl.clientWidth : null\n },\n ownerState: ownerState,\n role: \"presentation\",\n anchorEl: anchorEl,\n open: popupOpen\n }, popperSlotProps, {\n className: clsx(classes.popper, popperSlotProps == null ? void 0 : popperSlotProps.className),\n children: /*#__PURE__*/_jsxs(AutocompletePaper, _extends({\n ownerState: ownerState,\n as: PaperComponent\n }, paperSlotProps, {\n className: clsx(classes.paper, paperSlotProps == null ? void 0 : paperSlotProps.className),\n children: [loading && groupedOptions.length === 0 ? /*#__PURE__*/_jsx(AutocompleteLoading, {\n className: classes.loading,\n ownerState: ownerState,\n children: loadingText\n }) : null, groupedOptions.length === 0 && !freeSolo && !loading ? /*#__PURE__*/_jsx(AutocompleteNoOptions, {\n className: classes.noOptions,\n ownerState: ownerState,\n role: \"presentation\",\n onMouseDown: event => {\n // Prevent input blur when interacting with the \"no options\" content\n event.preventDefault();\n },\n children: noOptionsText\n }) : null, groupedOptions.length > 0 ? /*#__PURE__*/_jsx(AutocompleteListbox, _extends({\n as: ListboxComponent,\n className: classes.listbox,\n ownerState: ownerState\n }, otherListboxProps, ListboxProps, {\n ref: combinedListboxRef,\n children: groupedOptions.map((option, index) => {\n if (groupBy) {\n return renderGroup({\n key: option.key,\n group: option.group,\n children: option.options.map((option2, index2) => renderListOption(option2, option.index + index2))\n });\n }\n return renderListOption(option, index);\n })\n })) : null]\n }))\n })) : null]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Autocomplete.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the portion of the selected suggestion that has not been typed by the user,\n * known as the completion string, appears inline after the input cursor in the textbox.\n * The inline completion string is visually highlighted and has a selected state.\n * @default false\n */\n autoComplete: PropTypes.bool,\n /**\n * If `true`, the first option is automatically highlighted.\n * @default false\n */\n autoHighlight: PropTypes.bool,\n /**\n * If `true`, the selected option becomes the value of the input\n * when the Autocomplete loses focus unless the user chooses\n * a different option or changes the character string in the input.\n *\n * When using `freeSolo` mode, the typed value will be the input value\n * if the Autocomplete loses focus without highlighting an option.\n * @default false\n */\n autoSelect: PropTypes.bool,\n /**\n * Control if the input should be blurred when an option is selected:\n *\n * - `false` the input is not blurred.\n * - `true` the input is always blurred.\n * - `touch` the input is blurred after a touch event.\n * - `mouse` the input is blurred after a mouse event.\n * @default false\n */\n blurOnSelect: PropTypes.oneOfType([PropTypes.oneOf(['mouse', 'touch']), PropTypes.bool]),\n /**\n * Props applied to the [`Chip`](/material-ui/api/chip/) element.\n */\n ChipProps: PropTypes.object,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The icon to display in place of the default clear icon.\n * @default \n */\n clearIcon: PropTypes.node,\n /**\n * If `true`, the input's text is cleared on blur if no value is selected.\n *\n * Set to `true` if you want to help the user enter a new value.\n * Set to `false` if you want to help the user resume their search.\n * @default !props.freeSolo\n */\n clearOnBlur: PropTypes.bool,\n /**\n * If `true`, clear all values when the user presses escape and the popup is closed.\n * @default false\n */\n clearOnEscape: PropTypes.bool,\n /**\n * Override the default text for the *clear* icon button.\n *\n * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n * @default 'Clear'\n */\n clearText: PropTypes.string,\n /**\n * Override the default text for the *close popup* icon button.\n *\n * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n * @default 'Close'\n */\n closeText: PropTypes.string,\n /**\n * The props used for each slot inside.\n * @default {}\n */\n componentsProps: PropTypes.shape({\n clearIndicator: PropTypes.object,\n paper: PropTypes.object,\n popper: PropTypes.object,\n popupIndicator: PropTypes.object\n }),\n /**\n * The default value. Use when the component is not controlled.\n * @default props.multiple ? [] : null\n */\n defaultValue: chainPropTypes(PropTypes.any, props => {\n if (props.multiple && props.defaultValue !== undefined && !Array.isArray(props.defaultValue)) {\n return new Error(['MUI: The Autocomplete expects the `defaultValue` prop to be an array when `multiple={true}` or undefined.', `However, ${props.defaultValue} was provided.`].join('\\n'));\n }\n return null;\n }),\n /**\n * If `true`, the input can't be cleared.\n * @default false\n */\n disableClearable: PropTypes.bool,\n /**\n * If `true`, the popup won't close when a value is selected.\n * @default false\n */\n disableCloseOnSelect: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, will allow focus on disabled items.\n * @default false\n */\n disabledItemsFocusable: PropTypes.bool,\n /**\n * If `true`, the list box in the popup will not wrap focus.\n * @default false\n */\n disableListWrap: PropTypes.bool,\n /**\n * If `true`, the `Popper` content will be under the DOM hierarchy of the parent component.\n * @default false\n */\n disablePortal: PropTypes.bool,\n /**\n * A function that determines the filtered options to be rendered on search.\n *\n * @default createFilterOptions()\n * @param {T[]} options The options to render.\n * @param {object} state The state of the component.\n * @returns {T[]}\n */\n filterOptions: PropTypes.func,\n /**\n * If `true`, hide the selected options from the list box.\n * @default false\n */\n filterSelectedOptions: PropTypes.bool,\n /**\n * Force the visibility display of the popup icon.\n * @default 'auto'\n */\n forcePopupIcon: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.bool]),\n /**\n * If `true`, the Autocomplete is free solo, meaning that the user input is not bound to provided options.\n * @default false\n */\n freeSolo: PropTypes.bool,\n /**\n * If `true`, the input will take up the full width of its container.\n * @default false\n */\n fullWidth: PropTypes.bool,\n /**\n * The label to display when the tags are truncated (`limitTags`).\n *\n * @param {number} more The number of truncated tags.\n * @returns {ReactNode}\n * @default (more) => `+${more}`\n */\n getLimitTagsText: PropTypes.func,\n /**\n * Used to determine the disabled state for a given option.\n *\n * @param {T} option The option to test.\n * @returns {boolean}\n */\n getOptionDisabled: PropTypes.func,\n /**\n * Used to determine the string value for a given option.\n * It's used to fill the input (and the list box options if `renderOption` is not provided).\n *\n * If used in free solo mode, it must accept both the type of the options and a string.\n *\n * @param {T} option\n * @returns {string}\n * @default (option) => option.label ?? option\n */\n getOptionLabel: PropTypes.func,\n /**\n * If provided, the options will be grouped under the returned string.\n * The groupBy value is also used as the text for group headings when `renderGroup` is not provided.\n *\n * @param {T} options The options to group.\n * @returns {string}\n */\n groupBy: PropTypes.func,\n /**\n * If `true`, the component handles the \"Home\" and \"End\" keys when the popup is open.\n * It should move focus to the first option and last option, respectively.\n * @default !props.freeSolo\n */\n handleHomeEndKeys: PropTypes.bool,\n /**\n * This prop is used to help implement the accessibility logic.\n * If you don't provide an id it will fall back to a randomly generated one.\n */\n id: PropTypes.string,\n /**\n * If `true`, the highlight can move to the input.\n * @default false\n */\n includeInputInList: PropTypes.bool,\n /**\n * The input value.\n */\n inputValue: PropTypes.string,\n /**\n * Used to determine if the option represents the given value.\n * Uses strict equality by default.\n * ⚠️ Both arguments need to be handled, an option can only match with one value.\n *\n * @param {T} option The option to test.\n * @param {T} value The value to test against.\n * @returns {boolean}\n */\n isOptionEqualToValue: PropTypes.func,\n /**\n * The maximum number of tags that will be visible when not focused.\n * Set `-1` to disable the limit.\n * @default -1\n */\n limitTags: integerPropType,\n /**\n * The component used to render the listbox.\n * @default 'ul'\n */\n ListboxComponent: PropTypes.elementType,\n /**\n * Props applied to the Listbox element.\n */\n ListboxProps: PropTypes.object,\n /**\n * If `true`, the component is in a loading state.\n * This shows the `loadingText` in place of suggestions (only if there are no suggestions to show, e.g. `options` are empty).\n * @default false\n */\n loading: PropTypes.bool,\n /**\n * Text to display when in a loading state.\n *\n * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n * @default 'Loading…'\n */\n loadingText: PropTypes.node,\n /**\n * If `true`, `value` must be an array and the menu will support multiple selections.\n * @default false\n */\n multiple: PropTypes.bool,\n /**\n * Text to display when there are no options.\n *\n * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n * @default 'No options'\n */\n noOptionsText: PropTypes.node,\n /**\n * Callback fired when the value changes.\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n * @param {T|T[]} value The new value of the component.\n * @param {string} reason One of \"createOption\", \"selectOption\", \"removeOption\", \"blur\" or \"clear\".\n * @param {string} [details]\n */\n onChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be closed.\n * Use in controlled mode (see open).\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n * @param {string} reason Can be: `\"toggleInput\"`, `\"escape\"`, `\"selectOption\"`, `\"removeOption\"`, `\"blur\"`.\n */\n onClose: PropTypes.func,\n /**\n * Callback fired when the highlight option changes.\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n * @param {T} option The highlighted option.\n * @param {string} reason Can be: `\"keyboard\"`, `\"auto\"`, `\"mouse\"`, `\"touch\"`.\n */\n onHighlightChange: PropTypes.func,\n /**\n * Callback fired when the input value changes.\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n * @param {string} value The new value of the text input.\n * @param {string} reason Can be: `\"input\"` (user input), `\"reset\"` (programmatic change), `\"clear\"`.\n */\n onInputChange: PropTypes.func,\n /**\n * Callback fired when the popup requests to be opened.\n * Use in controlled mode (see open).\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n */\n onOpen: PropTypes.func,\n /**\n * If `true`, the component is shown.\n */\n open: PropTypes.bool,\n /**\n * If `true`, the popup will open on input focus.\n * @default false\n */\n openOnFocus: PropTypes.bool,\n /**\n * Override the default text for the *open popup* icon button.\n *\n * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n * @default 'Open'\n */\n openText: PropTypes.string,\n /**\n * Array of options.\n */\n options: PropTypes.array.isRequired,\n /**\n * The component used to render the body of the popup.\n * @default Paper\n */\n PaperComponent: PropTypes.elementType,\n /**\n * The component used to position the popup.\n * @default Popper\n */\n PopperComponent: PropTypes.elementType,\n /**\n * The icon to display in place of the default popup icon.\n * @default \n */\n popupIcon: PropTypes.node,\n /**\n * If `true`, the component becomes readonly. It is also supported for multiple tags where the tag cannot be deleted.\n * @default false\n */\n readOnly: PropTypes.bool,\n /**\n * Render the group.\n *\n * @param {AutocompleteRenderGroupParams} params The group to render.\n * @returns {ReactNode}\n */\n renderGroup: PropTypes.func,\n /**\n * Render the input.\n *\n * @param {object} params\n * @returns {ReactNode}\n */\n renderInput: PropTypes.func.isRequired,\n /**\n * Render the option, use `getOptionLabel` by default.\n *\n * @param {object} props The props to apply on the li element.\n * @param {T} option The option to render.\n * @param {object} state The state of the component.\n * @returns {ReactNode}\n */\n renderOption: PropTypes.func,\n /**\n * Render the selected value.\n *\n * @param {T[]} value The `value` provided to the component.\n * @param {function} getTagProps A tag props getter.\n * @param {object} ownerState The state of the Autocomplete component.\n * @returns {ReactNode}\n */\n renderTags: PropTypes.func,\n /**\n * If `true`, the input's text is selected on focus.\n * It helps the user clear the selected value.\n * @default !props.freeSolo\n */\n selectOnFocus: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['small', 'medium']), PropTypes.string]),\n /**\n * The props used for each slot inside.\n * @default {}\n */\n slotProps: PropTypes.shape({\n clearIndicator: PropTypes.object,\n paper: PropTypes.object,\n popper: PropTypes.object,\n popupIndicator: PropTypes.object\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the autocomplete.\n *\n * The value must have reference equality with the option in order to be selected.\n * You can customize the equality behavior with the `isOptionEqualToValue` prop.\n */\n value: chainPropTypes(PropTypes.any, props => {\n if (props.multiple && props.value !== undefined && !Array.isArray(props.value)) {\n return new Error(['MUI: The Autocomplete expects the `value` prop to be an array when `multiple={true}` or undefined.', `However, ${props.value} was provided.`].join('\\n'));\n }\n return null;\n })\n} : void 0;\nexport default Autocomplete;","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getListSubheaderUtilityClass(slot) {\n return generateUtilityClass('MuiListSubheader', slot);\n}\nconst listSubheaderClasses = generateUtilityClasses('MuiListSubheader', ['root', 'colorPrimary', 'colorInherit', 'gutters', 'inset', 'sticky']);\nexport default listSubheaderClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"color\", \"component\", \"disableGutters\", \"disableSticky\", \"inset\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport capitalize from '../utils/capitalize';\nimport { getListSubheaderUtilityClass } from './listSubheaderClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n disableGutters,\n inset,\n disableSticky\n } = ownerState;\n const slots = {\n root: ['root', color !== 'default' && `color${capitalize(color)}`, !disableGutters && 'gutters', inset && 'inset', !disableSticky && 'sticky']\n };\n return composeClasses(slots, getListSubheaderUtilityClass, classes);\n};\nconst ListSubheaderRoot = styled('li', {\n name: 'MuiListSubheader',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`], !ownerState.disableGutters && styles.gutters, ownerState.inset && styles.inset, !ownerState.disableSticky && styles.sticky];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n boxSizing: 'border-box',\n lineHeight: '48px',\n listStyle: 'none',\n color: (theme.vars || theme).palette.text.secondary,\n fontFamily: theme.typography.fontFamily,\n fontWeight: theme.typography.fontWeightMedium,\n fontSize: theme.typography.pxToRem(14)\n}, ownerState.color === 'primary' && {\n color: (theme.vars || theme).palette.primary.main\n}, ownerState.color === 'inherit' && {\n color: 'inherit'\n}, !ownerState.disableGutters && {\n paddingLeft: 16,\n paddingRight: 16\n}, ownerState.inset && {\n paddingLeft: 72\n}, !ownerState.disableSticky && {\n position: 'sticky',\n top: 0,\n zIndex: 1,\n backgroundColor: (theme.vars || theme).palette.background.paper\n}));\nconst ListSubheader = /*#__PURE__*/React.forwardRef(function ListSubheader(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListSubheader'\n });\n const {\n className,\n color = 'default',\n component = 'li',\n disableGutters = false,\n disableSticky = false,\n inset = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n component,\n disableGutters,\n disableSticky,\n inset\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(ListSubheaderRoot, _extends({\n as: component,\n className: clsx(classes.root, className),\n ref: ref,\n ownerState: ownerState\n }, other));\n});\nListSubheader.muiSkipListHighlight = true;\nprocess.env.NODE_ENV !== \"production\" ? ListSubheader.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component. It supports those theme colors that make sense for this component.\n * @default 'default'\n */\n color: PropTypes.oneOf(['default', 'inherit', 'primary']),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the List Subheader will not have gutters.\n * @default false\n */\n disableGutters: PropTypes.bool,\n /**\n * If `true`, the List Subheader will not stick to the top during scroll.\n * @default false\n */\n disableSticky: PropTypes.bool,\n /**\n * If `true`, the List Subheader is indented.\n * @default false\n */\n inset: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListSubheader;"],"names":["stripDiacritics","string","normalize","replace","findIndex","array","comp","i","length","defaultFilterOptions","config","arguments","undefined","_config$ignoreAccents","ignoreAccents","_config$ignoreCase","ignoreCase","limit","_config$matchFrom","matchFrom","stringify","_config$trim","trim","options","_ref","inputValue","getOptionLabel","input","toLowerCase","filteredOptions","filter","option","candidate","indexOf","slice","createFilterOptions","defaultIsActiveElementInListbox","listboxRef","_listboxRef$current$p","current","parentElement","contains","document","activeElement","useAutocomplete","props","_props$unstable_isAct","unstable_isActiveElementInListbox","_props$unstable_class","unstable_classNamePrefix","_props$autoComplete","autoComplete","_props$autoHighlight","autoHighlight","_props$autoSelect","autoSelect","_props$blurOnSelect","blurOnSelect","_props$clearOnBlur","clearOnBlur","freeSolo","_props$clearOnEscape","clearOnEscape","_props$componentName","componentName","_props$defaultValue","defaultValue","multiple","_props$disableClearab","disableClearable","_props$disableCloseOn","disableCloseOnSelect","disabledProp","disabled","_props$disabledItemsF","disabledItemsFocusable","_props$disableListWra","disableListWrap","_props$filterOptions","filterOptions","_props$filterSelected","filterSelectedOptions","_props$freeSolo","getOptionDisabled","_props$getOptionLabel","getOptionLabelProp","_option$label","label","groupBy","_props$handleHomeEndK","handleHomeEndKeys","idProp","id","_props$includeInputIn","includeInputInList","inputValueProp","_props$isOptionEqualT","isOptionEqualToValue","value","_props$multiple","onChange","onClose","onHighlightChange","onInputChange","onOpen","openProp","open","_props$openOnFocus","openOnFocus","_props$readOnly","readOnly","_props$selectOnFocus","selectOnFocus","valueProp","useId","optionLabel","String","ignoreFocus","React","firstFocus","inputRef","_React$useState","_React$useState2","_slicedToArray","anchorEl","setAnchorEl","_React$useState3","_React$useState4","focusedTag","setFocusedTag","defaultHighlighted","highlightedIndexRef","_useControlled","useControlled","controlled","default","name","_useControlled2","setValueState","_useControlled3","state","_useControlled4","setInputValueState","_React$useState5","_React$useState6","focused","setFocused","resetInputValue","event","newValue","newInputValue","_useControlled5","_useControlled6","setOpenState","_React$useState7","_React$useState8","inputPristine","setInputPristine","inputValueIsSelectedValue","popupOpen","some","value2","previousProps","usePreviousProps","valueChange","listboxAvailable","focusTag","useEventCallback","tagToFocus","focus","querySelector","concat","setHighlightedIndex","_ref2","index","_ref2$reason","reason","removeAttribute","setAttribute","prev","classList","remove","listboxNode","getAttribute","add","scrollHeight","clientHeight","element","scrollBottom","scrollTop","elementBottom","offsetTop","offsetHeight","changeHighlightedIndex","_ref3","diff","_ref3$direction","direction","_ref3$reason","nextIndex","nextFocus","nextFocusDisabled","hasAttribute","validOptionIndex","maxIndex","newIndex","Math","abs","getNextIndex","setSelectionRange","syncHighlightedIndex","value1","every","val","previousHighlightedOption","checkHighlightedOptionExists","valueItem","currentOption","itemIndex","optionItem","handleListboxRef","node","setRef","handleOpen","handleClose","handleValue","details","isTouch","selectNewValue","origin","Array","isArray","push","splice","ctrlKey","metaKey","blur","handleFocusTag","nextTag","validTagIndex","handleClear","handleKeyDown","other","onKeyDown","defaultMuiPrevented","key","which","preventDefault","stopPropagation","handleFocus","handleBlur","handleInputChange","target","handleOptionMouseMove","Number","currentTarget","handleOptionTouchStart","handleOptionClick","handleTagDelete","handlePopupIndicator","handleMouseDown","handleClick","selectionEnd","selectionStart","select","handleInputMouseDown","dirty","groupedOptions","Map","reduce","acc","group","getRootProps","_extends","onMouseDown","onClick","getInputLabelProps","htmlFor","getInputProps","onBlur","onFocus","ref","autoCapitalize","spellCheck","role","getClearProps","tabIndex","getPopupIndicatorProps","getTagProps","_ref4","onDelete","getListboxProps","getOptionProps","_ref5","selected","onMouseMove","onTouchStart","expanded","createSvgIcon","_jsx","d","getAutocompleteUtilityClass","slot","generateUtilityClass","_ClearIcon","_ArrowDropDownIcon","generateUtilityClasses","_excluded","_excluded2","AutocompleteRoot","styled","overridesResolver","styles","ownerState","fullWidth","hasClearIcon","hasPopupIcon","inputFocused","size","_defineProperty","autocompleteClasses","tag","capitalize","inputRoot","root","_ref6","_extends2","_$concat","_$concat2","_$concat3","_extends3","clearIndicator","visibility","width","margin","maxWidth","flexWrap","paddingRight","minWidth","inputClasses","paddingBottom","padding","inputBaseClasses","sizeSmall","outlinedInputClasses","endAdornment","right","paddingTop","paddingLeft","filledInputClasses","hiddenLabel","flexGrow","textOverflow","opacity","AutocompleteEndAdornment","position","top","AutocompleteClearIndicator","IconButton","marginRight","AutocompletePopupIndicator","_ref7","popupIndicator","popupIndicatorOpen","_ref8","transform","AutocompletePopper","Popper","popper","disablePortal","popperDisablePortal","_ref10","theme","zIndex","vars","modal","AutocompletePaper","Paper","paper","_ref11","typography","body1","overflow","AutocompleteLoading","loading","_ref12","color","palette","text","secondary","AutocompleteNoOptions","noOptions","_ref13","AutocompleteListbox","listbox","_ref14","_ariaSelectedTru","_$concat4","listStyle","maxHeight","minHeight","display","justifyContent","alignItems","cursor","boxSizing","outline","WebkitTapHighlightColor","breakpoints","up","backgroundColor","action","hover","disabledOpacity","pointerEvents","focusVisible","primary","mainChannel","selectedOpacity","alpha","main","hoverOpacity","focusOpacity","AutocompleteGroupLabel","ListSubheader","groupLabel","_ref16","background","AutocompleteGroupUl","groupUl","inProps","_slotProps$clearIndic","_slotProps$paper","_slotProps$popper","_slotProps$popupIndic","startAdornment","useThemeProps","ChipProps","className","_props$clearIcon","clearIcon","ClearIcon","fontSize","_props$clearText","clearText","_props$closeText","closeText","_props$componentsProp","componentsProps","_props$disabled","_props$disablePortal","_props$forcePopupIcon","forcePopupIcon","_props$fullWidth","_props$getLimitTagsTe","getLimitTagsText","more","_props$limitTags","limitTags","_props$ListboxCompone","ListboxComponent","ListboxProps","_props$loading","_props$loadingText","loadingText","_props$noOptionsText","noOptionsText","_props$openText","openText","_props$PaperComponent","PaperComponent","_props$PopperComponen","PopperComponent","_props$popupIcon","popupIcon","ArrowDropDownIcon","renderGroupProp","renderGroup","renderInput","renderOptionProp","renderOption","renderTags","_props$size","_props$slotProps","slotProps","_objectWithoutPropertiesLoose","_useAutocomplete","externalListboxRef","_getListboxProps","otherListboxProps","combinedListboxRef","useForkRef","classes","slots","composeClasses","useUtilityClasses","getCustomizedTagProps","params","map","Chip","children","_jsxs","component","props2","renderListOption","optionProps","clearIndicatorSlotProps","paperSlotProps","popperSlotProps","popupIndicatorSlotProps","clsx","InputLabelProps","InputProps","title","inputProps","as","style","clientWidth","option2","index2","FormControlContext","formControlState","states","muiFormControl","useFormControl","FormLabelRoot","colorSecondary","filled","lineHeight","formLabelClasses","error","AsteriskComponent","asterisk","FormLabel","_props$component","fcs","required","getFormLabelUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","shrink","disableAnimation","animated","variant","transformOrigin","whiteSpace","left","transition","transitions","create","duration","shorter","easing","easeOut","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","getListSubheaderUtilityClass","ListSubheaderRoot","disableGutters","gutters","inset","disableSticky","sticky","fontFamily","fontWeight","fontWeightMedium","pxToRem","_props$color","_props$disableGutters","_props$disableSticky","_props$inset","muiSkipListHighlight"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2432.e69c0c1d.chunk.js b/portal-ui/build/static/js/2432.e69c0c1d.chunk.js deleted file mode 100644 index 80aa1c166..000000000 --- a/portal-ui/build/static/js/2432.e69c0c1d.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2432],{93840:function(e,t,a){var o=a(72791).createContext(void 0);t.Z=o},76147:function(e,t,a){function o(e){var t=e.props,a=e.states,o=e.muiFormControl;return a.reduce((function(e,a){return e[a]=t[a],o&&"undefined"===typeof t[a]&&(e[a]=o[a]),e}),{})}a.d(t,{Z:function(){return o}})},52930:function(e,t,a){a.d(t,{Z:function(){return n}});var o=a(72791),r=a(93840);function n(){return o.useContext(r.Z)}},79836:function(e,t,a){a.d(t,{Z:function(){return Z}});var o=a(63366),r=a(87462),n=a(72791),i=a(28182),c=a(94419),l=a(46646),d=a(31402),s=a(66934),p=a(75878),u=a(21217);function v(e){return(0,u.Z)("MuiTable",e)}(0,p.Z)("MuiTable",["root","stickyHeader"]);var g=a(80184),f=["className","component","padding","size","stickyHeader"],m=(0,s.ZP)("table",{name:"MuiTable",slot:"Root",overridesResolver:function(e,t){var a=e.ownerState;return[t.root,a.stickyHeader&&t.stickyHeader]}})((function(e){var t=e.theme,a=e.ownerState;return(0,r.Z)({display:"table",width:"100%",borderCollapse:"collapse",borderSpacing:0,"& caption":(0,r.Z)({},t.typography.body2,{padding:t.spacing(2),color:(t.vars||t).palette.text.secondary,textAlign:"left",captionSide:"bottom"})},a.stickyHeader&&{borderCollapse:"separate"})})),y="table",Z=n.forwardRef((function(e,t){var a=(0,d.Z)({props:e,name:"MuiTable"}),s=a.className,p=a.component,u=void 0===p?y:p,Z=a.padding,h=void 0===Z?"normal":Z,b=a.size,x=void 0===b?"medium":b,k=a.stickyHeader,w=void 0!==k&&k,C=(0,o.Z)(a,f),H=(0,r.Z)({},a,{component:u,padding:h,size:x,stickyHeader:w}),R=function(e){var t=e.classes,a={root:["root",e.stickyHeader&&"stickyHeader"]};return(0,c.Z)(a,v,t)}(H),T=n.useMemo((function(){return{padding:h,size:x,stickyHeader:w}}),[h,x,w]);return(0,g.jsx)(l.Z.Provider,{value:T,children:(0,g.jsx)(m,(0,r.Z)({as:u,role:u===y?null:"table",ref:t,className:(0,i.Z)(R.root,s),ownerState:H},C))})}))},46646:function(e,t,a){var o=a(72791).createContext();t.Z=o},829:function(e,t,a){var o=a(72791).createContext();t.Z=o},53382:function(e,t,a){a.d(t,{Z:function(){return h}});var o=a(87462),r=a(63366),n=a(72791),i=a(28182),c=a(94419),l=a(829),d=a(31402),s=a(66934),p=a(75878),u=a(21217);function v(e){return(0,u.Z)("MuiTableBody",e)}(0,p.Z)("MuiTableBody",["root"]);var g=a(80184),f=["className","component"],m=(0,s.ZP)("tbody",{name:"MuiTableBody",slot:"Root",overridesResolver:function(e,t){return t.root}})({display:"table-row-group"}),y={variant:"body"},Z="tbody",h=n.forwardRef((function(e,t){var a=(0,d.Z)({props:e,name:"MuiTableBody"}),n=a.className,s=a.component,p=void 0===s?Z:s,u=(0,r.Z)(a,f),h=(0,o.Z)({},a,{component:p}),b=function(e){var t=e.classes;return(0,c.Z)({root:["root"]},v,t)}(h);return(0,g.jsx)(l.Z.Provider,{value:y,children:(0,g.jsx)(m,(0,o.Z)({className:(0,i.Z)(b.root,n),as:p,ref:t,role:p===Z?null:"rowgroup",ownerState:h},u))})}))},53994:function(e,t,a){a.d(t,{Z:function(){return k}});var o=a(4942),r=a(63366),n=a(87462),i=a(72791),c=a(28182),l=a(94419),d=a(12065),s=a(14036),p=a(46646),u=a(829),v=a(31402),g=a(66934),f=a(75878),m=a(21217);function y(e){return(0,m.Z)("MuiTableCell",e)}var Z=(0,f.Z)("MuiTableCell",["root","head","body","footer","sizeSmall","sizeMedium","paddingCheckbox","paddingNone","alignLeft","alignCenter","alignRight","alignJustify","stickyHeader"]),h=a(80184),b=["align","className","component","padding","scope","size","sortDirection","variant"],x=(0,g.ZP)("td",{name:"MuiTableCell",slot:"Root",overridesResolver:function(e,t){var a=e.ownerState;return[t.root,t[a.variant],t["size".concat((0,s.Z)(a.size))],"normal"!==a.padding&&t["padding".concat((0,s.Z)(a.padding))],"inherit"!==a.align&&t["align".concat((0,s.Z)(a.align))],a.stickyHeader&&t.stickyHeader]}})((function(e){var t=e.theme,a=e.ownerState;return(0,n.Z)({},t.typography.body2,{display:"table-cell",verticalAlign:"inherit",borderBottom:t.vars?"1px solid ".concat(t.vars.palette.TableCell.border):"1px solid\n ".concat("light"===t.palette.mode?(0,d.$n)((0,d.Fq)(t.palette.divider,1),.88):(0,d._j)((0,d.Fq)(t.palette.divider,1),.68)),textAlign:"left",padding:16},"head"===a.variant&&{color:(t.vars||t).palette.text.primary,lineHeight:t.typography.pxToRem(24),fontWeight:t.typography.fontWeightMedium},"body"===a.variant&&{color:(t.vars||t).palette.text.primary},"footer"===a.variant&&{color:(t.vars||t).palette.text.secondary,lineHeight:t.typography.pxToRem(21),fontSize:t.typography.pxToRem(12)},"small"===a.size&&(0,o.Z)({padding:"6px 16px"},"&.".concat(Z.paddingCheckbox),{width:24,padding:"0 12px 0 16px","& > *":{padding:0}}),"checkbox"===a.padding&&{width:48,padding:"0 0 0 4px"},"none"===a.padding&&{padding:0},"left"===a.align&&{textAlign:"left"},"center"===a.align&&{textAlign:"center"},"right"===a.align&&{textAlign:"right",flexDirection:"row-reverse"},"justify"===a.align&&{textAlign:"justify"},a.stickyHeader&&{position:"sticky",top:0,zIndex:2,backgroundColor:(t.vars||t).palette.background.default})})),k=i.forwardRef((function(e,t){var a,o=(0,v.Z)({props:e,name:"MuiTableCell"}),d=o.align,g=void 0===d?"inherit":d,f=o.className,m=o.component,Z=o.padding,k=o.scope,w=o.size,C=o.sortDirection,H=o.variant,R=(0,r.Z)(o,b),T=i.useContext(p.Z),M=i.useContext(u.Z),z=M&&"head"===M.variant,N=k;"td"===(a=m||(z?"th":"td"))?N=void 0:!N&&z&&(N="col");var S=H||M&&M.variant,j=(0,n.Z)({},o,{align:g,component:a,padding:Z||(T&&T.padding?T.padding:"normal"),size:w||(T&&T.size?T.size:"medium"),sortDirection:C,stickyHeader:"head"===S&&T&&T.stickyHeader,variant:S}),A=function(e){var t=e.classes,a=e.variant,o=e.align,r=e.padding,n=e.size,i={root:["root",a,e.stickyHeader&&"stickyHeader","inherit"!==o&&"align".concat((0,s.Z)(o)),"normal"!==r&&"padding".concat((0,s.Z)(r)),"size".concat((0,s.Z)(n))]};return(0,l.Z)(i,y,t)}(j),O=null;return C&&(O="asc"===C?"ascending":"descending"),(0,h.jsx)(x,(0,n.Z)({as:a,ref:t,className:(0,c.Z)(A.root,f),"aria-sort":O,scope:N,ownerState:j},R))}))},35855:function(e,t,a){a.d(t,{Z:function(){return b}});var o=a(4942),r=a(87462),n=a(63366),i=a(72791),c=a(28182),l=a(94419),d=a(12065),s=a(829),p=a(31402),u=a(66934),v=a(75878),g=a(21217);function f(e){return(0,g.Z)("MuiTableRow",e)}var m=(0,v.Z)("MuiTableRow",["root","selected","hover","head","footer"]),y=a(80184),Z=["className","component","hover","selected"],h=(0,u.ZP)("tr",{name:"MuiTableRow",slot:"Root",overridesResolver:function(e,t){var a=e.ownerState;return[t.root,a.head&&t.head,a.footer&&t.footer]}})((function(e){var t,a=e.theme;return t={color:"inherit",display:"table-row",verticalAlign:"middle",outline:0},(0,o.Z)(t,"&.".concat(m.hover,":hover"),{backgroundColor:(a.vars||a).palette.action.hover}),(0,o.Z)(t,"&.".concat(m.selected),{backgroundColor:a.vars?"rgba(".concat(a.vars.palette.primary.mainChannel," / ").concat(a.vars.palette.action.selectedOpacity,")"):(0,d.Fq)(a.palette.primary.main,a.palette.action.selectedOpacity),"&:hover":{backgroundColor:a.vars?"rgba(".concat(a.vars.palette.primary.mainChannel," / calc(").concat(a.vars.palette.action.selectedOpacity," + ").concat(a.vars.palette.action.hoverOpacity,"))"):(0,d.Fq)(a.palette.primary.main,a.palette.action.selectedOpacity+a.palette.action.hoverOpacity)}}),t})),b=i.forwardRef((function(e,t){var a=(0,p.Z)({props:e,name:"MuiTableRow"}),o=a.className,d=a.component,u=void 0===d?"tr":d,v=a.hover,g=void 0!==v&&v,m=a.selected,b=void 0!==m&&m,x=(0,n.Z)(a,Z),k=i.useContext(s.Z),w=(0,r.Z)({},a,{component:u,hover:g,selected:b,head:k&&"head"===k.variant,footer:k&&"footer"===k.variant}),C=function(e){var t=e.classes,a={root:["root",e.selected&&"selected",e.hover&&"hover",e.head&&"head",e.footer&&"footer"]};return(0,l.Z)(a,f,t)}(w);return(0,y.jsx)(h,(0,r.Z)({as:u,ref:t,className:(0,c.Z)(C.root,o),role:"tr"===u?null:"row",ownerState:w},x))}))}}]); -//# sourceMappingURL=2432.e69c0c1d.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/2432.e69c0c1d.chunk.js.map b/portal-ui/build/static/js/2432.e69c0c1d.chunk.js.map deleted file mode 100644 index 0e7955736..000000000 --- a/portal-ui/build/static/js/2432.e69c0c1d.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/2432.e69c0c1d.chunk.js","mappings":"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","sources":["../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/Table/tableClasses.js","../node_modules/@mui/material/Table/Table.js","../node_modules/@mui/material/Table/TableContext.js","../node_modules/@mui/material/Table/Tablelvl2Context.js","../node_modules/@mui/material/TableBody/tableBodyClasses.js","../node_modules/@mui/material/TableBody/TableBody.js","../node_modules/@mui/material/TableCell/tableCellClasses.js","../node_modules/@mui/material/TableCell/TableCell.js","../node_modules/@mui/material/TableRow/tableRowClasses.js","../node_modules/@mui/material/TableRow/TableRow.js"],"sourcesContent":["import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getTableUtilityClass(slot) {\n return generateUtilityClass('MuiTable', slot);\n}\nconst tableClasses = generateUtilityClasses('MuiTable', ['root', 'stickyHeader']);\nexport default tableClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"component\", \"padding\", \"size\", \"stickyHeader\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport TableContext from './TableContext';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport { getTableUtilityClass } from './tableClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n stickyHeader\n } = ownerState;\n const slots = {\n root: ['root', stickyHeader && 'stickyHeader']\n };\n return composeClasses(slots, getTableUtilityClass, classes);\n};\nconst TableRoot = styled('table', {\n name: 'MuiTable',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.stickyHeader && styles.stickyHeader];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'table',\n width: '100%',\n borderCollapse: 'collapse',\n borderSpacing: 0,\n '& caption': _extends({}, theme.typography.body2, {\n padding: theme.spacing(2),\n color: (theme.vars || theme).palette.text.secondary,\n textAlign: 'left',\n captionSide: 'bottom'\n })\n}, ownerState.stickyHeader && {\n borderCollapse: 'separate'\n}));\nconst defaultComponent = 'table';\nconst Table = /*#__PURE__*/React.forwardRef(function Table(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTable'\n });\n const {\n className,\n component = defaultComponent,\n padding = 'normal',\n size = 'medium',\n stickyHeader = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n component,\n padding,\n size,\n stickyHeader\n });\n const classes = useUtilityClasses(ownerState);\n const table = React.useMemo(() => ({\n padding,\n size,\n stickyHeader\n }), [padding, size, stickyHeader]);\n return /*#__PURE__*/_jsx(TableContext.Provider, {\n value: table,\n children: /*#__PURE__*/_jsx(TableRoot, _extends({\n as: component,\n role: component === defaultComponent ? null : 'table',\n ref: ref,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, other))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Table.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the table, normally `TableHead` and `TableBody`.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Allows TableCells to inherit padding of the Table.\n * @default 'normal'\n */\n padding: PropTypes.oneOf(['checkbox', 'none', 'normal']),\n /**\n * Allows TableCells to inherit size of the Table.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * Set the header sticky.\n *\n * ⚠️ It doesn't work with IE11.\n * @default false\n */\n stickyHeader: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default Table;","import * as React from 'react';\n\n/**\n * @ignore - internal component.\n */\nconst TableContext = /*#__PURE__*/React.createContext();\nif (process.env.NODE_ENV !== 'production') {\n TableContext.displayName = 'TableContext';\n}\nexport default TableContext;","import * as React from 'react';\n\n/**\n * @ignore - internal component.\n */\nconst Tablelvl2Context = /*#__PURE__*/React.createContext();\nif (process.env.NODE_ENV !== 'production') {\n Tablelvl2Context.displayName = 'Tablelvl2Context';\n}\nexport default Tablelvl2Context;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getTableBodyUtilityClass(slot) {\n return generateUtilityClass('MuiTableBody', slot);\n}\nconst tableBodyClasses = generateUtilityClasses('MuiTableBody', ['root']);\nexport default tableBodyClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"className\", \"component\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport Tablelvl2Context from '../Table/Tablelvl2Context';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport { getTableBodyUtilityClass } from './tableBodyClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getTableBodyUtilityClass, classes);\n};\nconst TableBodyRoot = styled('tbody', {\n name: 'MuiTableBody',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n display: 'table-row-group'\n});\nconst tablelvl2 = {\n variant: 'body'\n};\nconst defaultComponent = 'tbody';\nconst TableBody = /*#__PURE__*/React.forwardRef(function TableBody(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTableBody'\n });\n const {\n className,\n component = defaultComponent\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n component\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(Tablelvl2Context.Provider, {\n value: tablelvl2,\n children: /*#__PURE__*/_jsx(TableBodyRoot, _extends({\n className: clsx(classes.root, className),\n as: component,\n ref: ref,\n role: component === defaultComponent ? null : 'rowgroup',\n ownerState: ownerState\n }, other))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? TableBody.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component, normally `TableRow`.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default TableBody;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getTableCellUtilityClass(slot) {\n return generateUtilityClass('MuiTableCell', slot);\n}\nconst tableCellClasses = generateUtilityClasses('MuiTableCell', ['root', 'head', 'body', 'footer', 'sizeSmall', 'sizeMedium', 'paddingCheckbox', 'paddingNone', 'alignLeft', 'alignCenter', 'alignRight', 'alignJustify', 'stickyHeader']);\nexport default tableCellClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"align\", \"className\", \"component\", \"padding\", \"scope\", \"size\", \"sortDirection\", \"variant\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { darken, alpha, lighten } from '@mui/system';\nimport capitalize from '../utils/capitalize';\nimport TableContext from '../Table/TableContext';\nimport Tablelvl2Context from '../Table/Tablelvl2Context';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport tableCellClasses, { getTableCellUtilityClass } from './tableCellClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n variant,\n align,\n padding,\n size,\n stickyHeader\n } = ownerState;\n const slots = {\n root: ['root', variant, stickyHeader && 'stickyHeader', align !== 'inherit' && `align${capitalize(align)}`, padding !== 'normal' && `padding${capitalize(padding)}`, `size${capitalize(size)}`]\n };\n return composeClasses(slots, getTableCellUtilityClass, classes);\n};\nconst TableCellRoot = styled('td', {\n name: 'MuiTableCell',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[ownerState.variant], styles[`size${capitalize(ownerState.size)}`], ownerState.padding !== 'normal' && styles[`padding${capitalize(ownerState.padding)}`], ownerState.align !== 'inherit' && styles[`align${capitalize(ownerState.align)}`], ownerState.stickyHeader && styles.stickyHeader];\n }\n})(({\n theme,\n ownerState\n}) => _extends({}, theme.typography.body2, {\n display: 'table-cell',\n verticalAlign: 'inherit',\n // Workaround for a rendering bug with spanned columns in Chrome 62.0.\n // Removes the alpha (sets it to 1), and lightens or darkens the theme color.\n borderBottom: theme.vars ? `1px solid ${theme.vars.palette.TableCell.border}` : `1px solid\n ${theme.palette.mode === 'light' ? lighten(alpha(theme.palette.divider, 1), 0.88) : darken(alpha(theme.palette.divider, 1), 0.68)}`,\n textAlign: 'left',\n padding: 16\n}, ownerState.variant === 'head' && {\n color: (theme.vars || theme).palette.text.primary,\n lineHeight: theme.typography.pxToRem(24),\n fontWeight: theme.typography.fontWeightMedium\n}, ownerState.variant === 'body' && {\n color: (theme.vars || theme).palette.text.primary\n}, ownerState.variant === 'footer' && {\n color: (theme.vars || theme).palette.text.secondary,\n lineHeight: theme.typography.pxToRem(21),\n fontSize: theme.typography.pxToRem(12)\n}, ownerState.size === 'small' && {\n padding: '6px 16px',\n [`&.${tableCellClasses.paddingCheckbox}`]: {\n width: 24,\n // prevent the checkbox column from growing\n padding: '0 12px 0 16px',\n '& > *': {\n padding: 0\n }\n }\n}, ownerState.padding === 'checkbox' && {\n width: 48,\n // prevent the checkbox column from growing\n padding: '0 0 0 4px'\n}, ownerState.padding === 'none' && {\n padding: 0\n}, ownerState.align === 'left' && {\n textAlign: 'left'\n}, ownerState.align === 'center' && {\n textAlign: 'center'\n}, ownerState.align === 'right' && {\n textAlign: 'right',\n flexDirection: 'row-reverse'\n}, ownerState.align === 'justify' && {\n textAlign: 'justify'\n}, ownerState.stickyHeader && {\n position: 'sticky',\n top: 0,\n zIndex: 2,\n backgroundColor: (theme.vars || theme).palette.background.default\n}));\n\n/**\n * The component renders a `` element when the parent context is a header\n * or otherwise a `` element.\n */\nconst TableCell = /*#__PURE__*/React.forwardRef(function TableCell(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTableCell'\n });\n const {\n align = 'inherit',\n className,\n component: componentProp,\n padding: paddingProp,\n scope: scopeProp,\n size: sizeProp,\n sortDirection,\n variant: variantProp\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const table = React.useContext(TableContext);\n const tablelvl2 = React.useContext(Tablelvl2Context);\n const isHeadCell = tablelvl2 && tablelvl2.variant === 'head';\n let component;\n if (componentProp) {\n component = componentProp;\n } else {\n component = isHeadCell ? 'th' : 'td';\n }\n let scope = scopeProp;\n // scope is not a valid attribute for elements.\n // source: https://html.spec.whatwg.org/multipage/tables.html#the-td-element\n if (component === 'td') {\n scope = undefined;\n } else if (!scope && isHeadCell) {\n scope = 'col';\n }\n const variant = variantProp || tablelvl2 && tablelvl2.variant;\n const ownerState = _extends({}, props, {\n align,\n component,\n padding: paddingProp || (table && table.padding ? table.padding : 'normal'),\n size: sizeProp || (table && table.size ? table.size : 'medium'),\n sortDirection,\n stickyHeader: variant === 'head' && table && table.stickyHeader,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n let ariaSort = null;\n if (sortDirection) {\n ariaSort = sortDirection === 'asc' ? 'ascending' : 'descending';\n }\n return /*#__PURE__*/_jsx(TableCellRoot, _extends({\n as: component,\n ref: ref,\n className: clsx(classes.root, className),\n \"aria-sort\": ariaSort,\n scope: scope,\n ownerState: ownerState\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? TableCell.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Set the text-align on the table cell content.\n *\n * Monetary or generally number fields **should be right aligned** as that allows\n * you to add them up quickly in your head without having to worry about decimals.\n * @default 'inherit'\n */\n align: PropTypes.oneOf(['center', 'inherit', 'justify', 'left', 'right']),\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Sets the padding applied to the cell.\n * The prop defaults to the value (`'default'`) inherited from the parent Table component.\n */\n padding: PropTypes.oneOf(['checkbox', 'none', 'normal']),\n /**\n * Set scope attribute.\n */\n scope: PropTypes.string,\n /**\n * Specify the size of the cell.\n * The prop defaults to the value (`'medium'`) inherited from the parent Table component.\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * Set aria-sort direction.\n */\n sortDirection: PropTypes.oneOf(['asc', 'desc', false]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * Specify the cell type.\n * The prop defaults to the value inherited from the parent TableHead, TableBody, or TableFooter components.\n */\n variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['body', 'footer', 'head']), PropTypes.string])\n} : void 0;\nexport default TableCell;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getTableRowUtilityClass(slot) {\n return generateUtilityClass('MuiTableRow', slot);\n}\nconst tableRowClasses = generateUtilityClasses('MuiTableRow', ['root', 'selected', 'hover', 'head', 'footer']);\nexport default tableRowClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"className\", \"component\", \"hover\", \"selected\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport Tablelvl2Context from '../Table/Tablelvl2Context';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport tableRowClasses, { getTableRowUtilityClass } from './tableRowClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n selected,\n hover,\n head,\n footer\n } = ownerState;\n const slots = {\n root: ['root', selected && 'selected', hover && 'hover', head && 'head', footer && 'footer']\n };\n return composeClasses(slots, getTableRowUtilityClass, classes);\n};\nconst TableRowRoot = styled('tr', {\n name: 'MuiTableRow',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.head && styles.head, ownerState.footer && styles.footer];\n }\n})(({\n theme\n}) => ({\n color: 'inherit',\n display: 'table-row',\n verticalAlign: 'middle',\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0,\n [`&.${tableRowClasses.hover}:hover`]: {\n backgroundColor: (theme.vars || theme).palette.action.hover\n },\n [`&.${tableRowClasses.selected}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity),\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity)\n }\n }\n}));\nconst defaultComponent = 'tr';\n/**\n * Will automatically set dynamic row height\n * based on the material table element parent (head, body, etc).\n */\nconst TableRow = /*#__PURE__*/React.forwardRef(function TableRow(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTableRow'\n });\n const {\n className,\n component = defaultComponent,\n hover = false,\n selected = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const tablelvl2 = React.useContext(Tablelvl2Context);\n const ownerState = _extends({}, props, {\n component,\n hover,\n selected,\n head: tablelvl2 && tablelvl2.variant === 'head',\n footer: tablelvl2 && tablelvl2.variant === 'footer'\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(TableRowRoot, _extends({\n as: component,\n ref: ref,\n className: clsx(classes.root, className),\n role: component === defaultComponent ? null : 'row',\n ownerState: ownerState\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? TableRow.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Should be valid children such as `TableCell`.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the table row will shade on hover.\n * @default false\n */\n hover: PropTypes.bool,\n /**\n * If `true`, the table row will have the selected shading.\n * @default false\n */\n selected: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default TableRow;"],"names":["FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","getTableUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","TableRoot","styled","name","overridesResolver","styles","ownerState","root","stickyHeader","theme","_extends","display","width","borderCollapse","borderSpacing","typography","body2","padding","spacing","color","vars","palette","text","secondary","textAlign","captionSide","defaultComponent","inProps","ref","useThemeProps","className","_props$component","component","_props$padding","_props$size","size","_props$stickyHeader","other","_objectWithoutPropertiesLoose","classes","slots","composeClasses","useUtilityClasses","table","_jsx","TableContext","Provider","value","children","as","role","clsx","Tablelvl2Context","getTableBodyUtilityClass","TableBodyRoot","tablelvl2","variant","getTableCellUtilityClass","TableCellRoot","concat","capitalize","align","verticalAlign","borderBottom","TableCell","border","mode","lighten","alpha","divider","darken","primary","lineHeight","pxToRem","fontWeight","fontWeightMedium","fontSize","_defineProperty","tableCellClasses","paddingCheckbox","flexDirection","position","top","zIndex","backgroundColor","background","default","_props$align","componentProp","paddingProp","scopeProp","scope","sizeProp","sortDirection","variantProp","isHeadCell","ariaSort","getTableRowUtilityClass","TableRowRoot","head","footer","_ref2","outline","tableRowClasses","hover","action","selected","mainChannel","selectedOpacity","main","hoverOpacity","_props$hover","_props$selected"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/247.2a7f8e21.chunk.js b/portal-ui/build/static/js/247.2a7f8e21.chunk.js new file mode 100644 index 000000000..7f5d9a4e6 --- /dev/null +++ b/portal-ui/build/static/js/247.2a7f8e21.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[247,4882,7981,9581],{40247:function(e,r,t){"use strict";t.r(r);var n=t(29439),o=t(1413),a=t(72791),i=t(29945),s=t(61889),l=t(11135),c=t(25787),u=t(23814),d=t(21435),f=t(56028),m=t(87995),p=t(81551),v=t(31776),Z=t(82342),x=t(80184);r.default=(0,c.Z)((function(e){return(0,l.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},u.DF),u.ID),u.bK))}))((function(e){var r=e.modalOpen,t=e.currentTags,l=e.onCloseAndUpdate,c=e.bucketName,u=e.classes,h=(0,p.TL)(),b=(0,a.useState)(""),g=(0,n.Z)(b,2),k=g[0],C=g[1],w=(0,a.useState)(""),y=(0,n.Z)(w,2),j=y[0],N=y[1],z=(0,a.useState)(!1),F=(0,n.Z)(z,2),M=F[0],S=F[1];return(0,x.jsx)(f.Z,{modalOpen:r,title:"Add New Tag ",onClose:function(){l(!1)},titleIcon:(0,x.jsx)(i.OCT,{}),children:(0,x.jsxs)(s.ZP,{container:!0,children:[(0,x.jsxs)("div",{className:u.spacerBottom,children:[(0,x.jsx)("strong",{children:"Bucket"}),": ",c]}),(0,x.jsx)(s.ZP,{item:!0,xs:12,className:u.formFieldRow,children:(0,x.jsx)(d.Z,{value:k,label:"New Tag Key",id:"newTagKey",name:"newTagKey",placeholder:"Enter New Tag Key",onChange:function(e){C(e.target.value)}})}),(0,x.jsx)(s.ZP,{item:!0,xs:12,className:u.formFieldRow,children:(0,x.jsx)(d.Z,{value:j,label:"New Tag Label",id:"newTagLabel",name:"newTagLabel",placeholder:"Enter New Tag Label",onChange:function(e){N(e.target.value)}})}),(0,x.jsxs)(s.ZP,{item:!0,xs:12,className:u.modalButtonBar,children:[(0,x.jsx)(i.zxk,{id:"clear",type:"button",variant:"regular",onClick:function(){N(""),C("")},label:"Clear"}),(0,x.jsx)(i.zxk,{id:"save-add-bucket-tag",type:"submit",variant:"callAction",color:"primary",disabled:""===j.trim()||""===k.trim()||M,onClick:function(){S(!0);var e={};e[k]=j;var r=(0,o.Z)((0,o.Z)({},t),e);v.h.buckets.putBucketTags(c,{tags:r}).then((function(){S(!1),l(!0)})).catch((function(e){h((0,m.zb)((0,Z.g)(e.error))),S(!1)}))},label:"Save"})]})]})})}))},21435:function(e,r,t){"use strict";var n=t(29439),o=t(1413),a=t(72791),i=t(27391),s=t(61889),l=t(30829),c=t(20068),u=t(13400),d=t(20165),f=t(3579),m=t(11135),p=t(72455),v=t(25787),Z=t(23814),x=t(29945),h=t(28182),b=t(80184),g=(0,p.Z)((function(e){return(0,m.Z)((0,o.Z)({},Z.gM))}));function k(e){var r=g();return(0,b.jsx)(i.Z,(0,o.Z)({InputProps:{classes:r}},e))}r.Z=(0,v.Z)((function(e){return(0,m.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},Z.YI),Z.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var r=e.label,t=e.onChange,i=e.value,m=e.id,p=e.name,v=e.type,Z=void 0===v?"text":v,g=e.autoComplete,C=void 0===g?"off":g,w=e.disabled,y=void 0!==w&&w,j=e.multiline,N=void 0!==j&&j,z=e.tooltip,F=void 0===z?"":z,M=e.index,S=void 0===M?0:M,L=e.error,P=void 0===L?"":L,I=e.required,R=void 0!==I&&I,T=e.placeholder,q=void 0===T?"":T,A=e.min,O=e.max,E=e.overlayId,W=e.overlayIcon,_=void 0===W?null:W,B=e.overlayObject,K=void 0===B?null:B,D=e.extraInputProps,H=void 0===D?{}:D,V=e.overlayAction,G=e.noLabelMinWidth,U=void 0!==G&&G,Y=e.pattern,J=void 0===Y?"":Y,Q=e.autoFocus,X=void 0!==Q&&Q,$=e.classes,ee=e.className,re=void 0===ee?"":ee,te=e.onKeyPress,ne=e.onFocus,oe=e.onPaste,ae=(0,o.Z)({"data-index":S},H),ie=(0,a.useState)(!1),se=(0,n.Z)(ie,2),le=se[0],ce=se[1];"number"===Z&&A&&(ae.min=A),"number"===Z&&O&&(ae.max=O),""!==J&&(ae.pattern=J);var ue=_,de=Z;return"password"===Z&&null===_&&(ue=le?(0,b.jsx)(d.Z,{}):(0,b.jsx)(f.Z,{}),de=le?"text":"password"),(0,b.jsx)(a.Fragment,{children:(0,b.jsxs)(s.ZP,{container:!0,className:(0,h.Z)(""!==re?re:"",""!==P?$.errorInField:$.inputBoxContainer),children:[""!==r&&(0,b.jsxs)(l.Z,{htmlFor:m,className:U?$.noMinWidthLabel:$.inputLabel,children:[(0,b.jsxs)("span",{children:[r,R?"*":""]}),""!==F&&(0,b.jsx)("div",{className:$.tooltipContainer,children:(0,b.jsx)(c.Z,{title:F,placement:"top-start",children:(0,b.jsx)("div",{className:$.tooltip,children:(0,b.jsx)(x.byK,{})})})})]}),(0,b.jsxs)("div",{className:$.textBoxContainer,children:[(0,b.jsx)(k,{id:m,name:p,fullWidth:!0,value:i,autoFocus:X,disabled:y,onChange:t,type:de,multiline:N,autoComplete:C,inputProps:ae,error:""!==P,helperText:P,placeholder:q,className:$.inputRebase,onKeyPress:te,onFocus:ne,onPaste:oe}),ue&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==r?"withLabel":""),children:(0,b.jsx)(u.Z,{onClick:V?function(){V()}:function(){return ce(!le)},id:E,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:ue})}),K&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==r?"withLabel":""),children:K})]})]})})}))},3579:function(e,r,t){"use strict";var n=t(64836);r.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");r.Z=i},20165:function(e,r,t){"use strict";var n=t(64836);r.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");r.Z=i},45649:function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=t(28610)},93840:function(e,r,t){"use strict";var n=t(72791).createContext(void 0);r.Z=n},76147:function(e,r,t){"use strict";function n(e){var r=e.props,t=e.states,n=e.muiFormControl;return t.reduce((function(e,t){return e[t]=r[t],n&&"undefined"===typeof r[t]&&(e[t]=n[t]),e}),{})}t.d(r,{Z:function(){return n}})},52930:function(e,r,t){"use strict";t.d(r,{Z:function(){return a}});var n=t(72791),o=t(93840);function a(){return n.useContext(o.Z)}},17133:function(e,r,t){"use strict";var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(28182),l=t(94419),c=t(76147),u=t(52930),d=t(14036),f=t(31402),m=t(66934),p=t(10843),v=t(80184),Z=["children","className","color","component","disabled","error","filled","focused","required"],x=(0,m.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,r){var t=e.ownerState;return(0,a.Z)({},r.root,"secondary"===t.color&&r.colorSecondary,t.filled&&r.filled)}})((function(e){var r,t=e.theme,o=e.ownerState;return(0,a.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(r={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(r,"&.".concat(p.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(r,"&.".concat(p.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,n.Z)(r,"&.".concat(p.Z.error),{color:(t.vars||t).palette.error.main}),r))})),h=(0,m.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,r){return r.asterisk}})((function(e){var r=e.theme;return(0,n.Z)({},"&.".concat(p.Z.error),{color:(r.vars||r).palette.error.main})})),b=i.forwardRef((function(e,r){var t=(0,f.Z)({props:e,name:"MuiFormLabel"}),n=t.children,i=t.className,m=t.component,b=void 0===m?"label":m,g=(0,o.Z)(t,Z),k=(0,u.Z)(),C=(0,c.Z)({props:t,muiFormControl:k,states:["color","required","focused","disabled","error","filled"]}),w=(0,a.Z)({},t,{color:C.color||"primary",component:b,disabled:C.disabled,error:C.error,filled:C.filled,focused:C.focused,required:C.required}),y=function(e){var r=e.classes,t=e.color,n=e.focused,o=e.disabled,a=e.error,i=e.filled,s=e.required,c={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",a&&"error"]};return(0,l.Z)(c,p.M,r)}(w);return(0,v.jsxs)(x,(0,a.Z)({as:b,ownerState:w,className:(0,s.Z)(y.root,i),ref:r},g,{children:[n,C.required&&(0,v.jsxs)(h,{ownerState:w,"aria-hidden":!0,className:y.asterisk,children:["\u2009","*"]})]}))}));r.Z=b},10843:function(e,r,t){"use strict";t.d(r,{M:function(){return a}});var n=t(75878),o=t(21217);function a(e){return(0,o.Z)("MuiFormLabel",e)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);r.Z=i},30829:function(e,r,t){"use strict";t.d(r,{Z:function(){return k}});var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(94419),l=t(28182),c=t(76147),u=t(52930),d=t(17133),f=t(10843),m=t(31402),p=t(66934),v=t(75878),Z=t(21217);function x(e){return(0,Z.Z)("MuiInputLabel",e)}(0,v.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var h=t(80184),b=["disableAnimation","margin","shrink","variant","className"],g=(0,p.ZP)(d.Z,{shouldForwardProp:function(e){return(0,p.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,r){var t=e.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),r.asterisk),r.root,t.formControl&&r.formControl,"small"===t.size&&r.sizeSmall,t.shrink&&r.shrink,!t.disableAnimation&&r.animated,r[t.variant]]}})((function(e){var r=e.theme,t=e.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:r.transitions.create(["color","transform","max-width"],{duration:r.transitions.duration.shorter,easing:r.transitions.easing.easeOut})},"filled"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),k=i.forwardRef((function(e,r){var t=(0,m.Z)({name:"MuiInputLabel",props:e}),n=t.disableAnimation,i=void 0!==n&&n,d=t.shrink,f=t.className,p=(0,o.Z)(t,b),v=(0,u.Z)(),Z=d;"undefined"===typeof Z&&v&&(Z=v.filled||v.focused||v.adornedStart);var k=(0,c.Z)({props:t,muiFormControl:v,states:["size","variant","required"]}),C=(0,a.Z)({},t,{disableAnimation:i,formControl:v,shrink:Z,size:k.size,variant:k.variant,required:k.required}),w=function(e){var r=e.classes,t=e.formControl,n=e.size,o=e.shrink,i={root:["root",t&&"formControl",!e.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},l=(0,s.Z)(i,x,r);return(0,a.Z)({},r,l)}(C);return(0,h.jsx)(g,(0,a.Z)({"data-shrink":Z,ownerState:C,ref:r,className:(0,l.Z)(w.root,f)},p,{classes:w}))}))},31260:function(e,r,t){"use strict";var n=t(78949);r.Z=n.Z},28610:function(e,r,t){"use strict";t.r(r),t.d(r,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return l},isMuiElement:function(){return c.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return m},unstable_ClassNameGenerator:function(){return k},unstable_useEnhancedEffect:function(){return p.Z},unstable_useId:function(){return v.Z},unsupportedProp:function(){return Z},useControlled:function(){return x.Z},useEventCallback:function(){return h.Z},useForkRef:function(){return b.Z},useIsFocusVisible:function(){return g.Z}});var n=t(55902),o=t(14036),a=t(31260),i=t(76189),s=t(83199);var l=function(e,r){return function(){return null}},c=t(19103),u=t(98301),d=t(17602);t(87462);var f=function(e,r){return function(){return null}},m=t(62971).Z,p=t(40162),v=t(67384);var Z=function(e,r,t,n,o){return null},x=t(98278),h=t(89683),b=t(42071),g=t(23031),k={configure:function(e){n.Z.configure(e)}}},19103:function(e,r,t){"use strict";t.d(r,{Z:function(){return o}});var n=t(72791);var o=function(e,r){return n.isValidElement(e)&&-1!==r.indexOf(e.type.muiName)}},64836:function(e){e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports}}]); +//# sourceMappingURL=247.2a7f8e21.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/247.2a7f8e21.chunk.js.map b/portal-ui/build/static/js/247.2a7f8e21.chunk.js.map new file mode 100644 index 000000000..2f36ac683 --- /dev/null +++ b/portal-ui/build/static/js/247.2a7f8e21.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/247.2a7f8e21.chunk.js","mappings":"0SAuJA,WAAeA,EAAAA,EAAAA,IA5GA,SAACC,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTC,EAAAA,IACAC,EAAAA,IACAC,EAAAA,IACF,GAuGL,EArG0B,SAAHC,GAOC,IANtBC,EAASD,EAATC,UACAC,EAAWF,EAAXE,YACAC,EAAgBH,EAAhBG,iBACAC,EAAUJ,EAAVI,WAEAC,EAAOL,EAAPK,QAEMC,GAAWC,EAAAA,EAAAA,MACjBC,GAA4BC,EAAAA,EAAAA,UAAiB,IAAGC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAzCI,EAAMF,EAAA,GAAEG,EAASH,EAAA,GACxBI,GAAgCL,EAAAA,EAAAA,UAAiB,IAAGM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAA7CE,EAAQD,EAAA,GAAEE,EAAWF,EAAA,GAC5BG,GAAkCT,EAAAA,EAAAA,WAAkB,GAAMU,GAAAR,EAAAA,EAAAA,GAAAO,EAAA,GAAnDE,EAASD,EAAA,GAAEE,EAAYF,EAAA,GA4B9B,OACEG,EAAAA,EAAAA,KAACC,EAAAA,EAAY,CACXtB,UAAWA,EACXuB,MAAK,eACLC,QAAS,WACPtB,GAAiB,EACnB,EACAuB,WAAWJ,EAAAA,EAAAA,KAACK,EAAAA,IAAa,IAAIC,UAE7BC,EAAAA,EAAAA,MAACC,EAAAA,GAAI,CAACC,WAAS,EAAAH,SAAA,EACbC,EAAAA,EAAAA,MAAA,OAAKG,UAAW3B,EAAQ4B,aAAaL,SAAA,EACnCN,EAAAA,EAAAA,KAAA,UAAAM,SAAQ,WAAe,KAAGxB,MAE5BkB,EAAAA,EAAAA,KAACQ,EAAAA,GAAI,CAACI,MAAI,EAACC,GAAI,GAAIH,UAAW3B,EAAQ+B,aAAaR,UACjDN,EAAAA,EAAAA,KAACe,EAAAA,EAAe,CACdC,MAAO1B,EACP2B,MAAO,cACPC,GAAI,YACJC,KAAM,YACNC,YAAa,oBACbC,SAAU,SAACC,GACT/B,EAAU+B,EAAEC,OAAOP,MACrB,OAGJhB,EAAAA,EAAAA,KAACQ,EAAAA,GAAI,CAACI,MAAI,EAACC,GAAI,GAAIH,UAAW3B,EAAQ+B,aAAaR,UACjDN,EAAAA,EAAAA,KAACe,EAAAA,EAAe,CACdC,MAAOtB,EACPuB,MAAO,gBACPC,GAAI,cACJC,KAAM,cACNC,YAAa,sBACbC,SAAU,SAACC,GACT3B,EAAY2B,EAAEC,OAAOP,MACvB,OAGJT,EAAAA,EAAAA,MAACC,EAAAA,GAAI,CAACI,MAAI,EAACC,GAAI,GAAIH,UAAW3B,EAAQyC,eAAelB,SAAA,EACnDN,EAAAA,EAAAA,KAACyB,EAAAA,IAAM,CACLP,GAAI,QACJQ,KAAK,SACLC,QAAQ,UACRC,QApEQ,WAChBjC,EAAY,IACZJ,EAAU,GACZ,EAkEU0B,MAAO,WAETjB,EAAAA,EAAAA,KAACyB,EAAAA,IAAM,CACLP,GAAI,sBACJQ,KAAK,SACLC,QAAQ,aACRE,MAAM,UACNC,SACsB,KAApBpC,EAASqC,QAAmC,KAAlBzC,EAAOyC,QAAiBjC,EAEpD8B,QA1EY,WACpB7B,GAAa,GACb,IAAMiC,EAAc,CAAC,EAErBA,EAAO1C,GAAUI,EACjB,IAAMuC,GAAU3D,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAAQM,GAAgBoD,GAExCE,EAAAA,EAAIC,QACDC,cAActD,EAAY,CACzBuD,KAAMJ,IAEPK,MAAK,WACJvC,GAAa,GACblB,GAAiB,EACnB,IACC0D,OAAM,SAACC,GACNxD,GAASyD,EAAAA,EAAAA,KAA0BC,EAAAA,EAAAA,GAAeF,EAAMA,SACxDzC,GAAa,EACf,GACJ,EAwDUkB,MAAO,gBAMnB,G,kOCvDM0B,GAAcC,EAAAA,EAAAA,IAAW,SAACxE,GAAY,OAC1CC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,GAAC,CAAC,EACTuE,EAAAA,IACH,IAGJ,SAASC,EAAWC,GAClB,IAAMhE,EAAU4D,IAEhB,OACE3C,EAAAA,EAAAA,KAACgD,EAAAA,GAAS1E,EAAAA,EAAAA,GAAA,CACR2E,WAAY,CAAElE,QAAAA,IACVgE,GAGV,CAwJA,KAAe5E,EAAAA,EAAAA,IA7LA,SAACC,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACT4E,EAAAA,IACAC,EAAAA,IAAa,IAChBC,iBAAkB,CAChBC,SAAU,EACVC,SAAU,YAEZC,cAAe,CACbD,SAAU,WACVE,MAAO,EACPC,IAAK,EACL,QAAS,CACPC,SAAU,GACVC,UAAW,IAEb,cAAe,CACbF,IAAK,MAGR,GAyKL,EAtJwB,SAAH/E,GA8BC,IA7BpBuC,EAAKvC,EAALuC,MACAI,EAAQ3C,EAAR2C,SACAL,EAAKtC,EAALsC,MACAE,EAAExC,EAAFwC,GACAC,EAAIzC,EAAJyC,KAAIyC,EAAAlF,EACJgD,KAAAA,OAAI,IAAAkC,EAAG,OAAMA,EAAAC,EAAAnF,EACboF,aAAAA,OAAY,IAAAD,EAAG,MAAKA,EAAAE,EAAArF,EACpBoD,SAAAA,OAAQ,IAAAiC,GAAQA,EAAAC,EAAAtF,EAChBuF,UAAAA,OAAS,IAAAD,GAAQA,EAAAE,EAAAxF,EACjByF,QAAAA,OAAO,IAAAD,EAAG,GAAEA,EAAAE,EAAA1F,EACZ2F,MAAAA,OAAK,IAAAD,EAAG,EAACA,EAAAE,EAAA5F,EACT8D,MAAAA,OAAK,IAAA8B,EAAG,GAAEA,EAAAC,EAAA7F,EACV8F,SAAAA,OAAQ,IAAAD,GAAQA,EAAAE,EAAA/F,EAChB0C,YAAAA,OAAW,IAAAqD,EAAG,GAAEA,EAChBC,EAAGhG,EAAHgG,IACAC,EAAGjG,EAAHiG,IACAC,EAASlG,EAATkG,UAASC,EAAAnG,EACToG,YAAAA,OAAW,IAAAD,EAAG,KAAIA,EAAAE,EAAArG,EAClBsG,cAAAA,OAAa,IAAAD,EAAG,KAAIA,EAAAE,EAAAvG,EACpBwG,gBAAAA,OAAe,IAAAD,EAAG,CAAC,EAACA,EACpB1B,EAAa7E,EAAb6E,cAAa4B,EAAAzG,EACb0G,gBAAAA,OAAe,IAAAD,GAAQA,EAAAE,EAAA3G,EACvB4G,QAAAA,OAAO,IAAAD,EAAG,GAAEA,EAAAE,EAAA7G,EACZ8G,UAAAA,OAAS,IAAAD,GAAQA,EACjBxG,EAAOL,EAAPK,QAAO0G,GAAA/G,EACPgC,UAAAA,QAAS,IAAA+E,GAAG,GAAEA,GACdC,GAAUhH,EAAVgH,WACAC,GAAOjH,EAAPiH,QACAC,GAAOlH,EAAPkH,QAEIC,IAAevH,EAAAA,EAAAA,GAAA,CAAK,aAAc+F,GAAUa,GAChDhG,IAA8CC,EAAAA,EAAAA,WAAkB,GAAMC,IAAAC,EAAAA,EAAAA,GAAAH,GAAA,GAA/D4G,GAAe1G,GAAA,GAAE2G,GAAkB3G,GAAA,GAE7B,WAATsC,GAAqBgD,IACvBmB,GAAgB,IAAInB,GAGT,WAAThD,GAAqBiD,IACvBkB,GAAgB,IAAIlB,GAGN,KAAZW,IACFO,GAAoB,QAAIP,GAG1B,IAAIU,GAAsBlB,EACtBmB,GAAsBvE,EAW1B,MATa,aAATA,GAAuC,OAAhBoD,IACzBkB,GAAsBF,IACpB9F,EAAAA,EAAAA,KAACkG,EAAAA,EAAiB,KAElBlG,EAAAA,EAAAA,KAACmG,EAAAA,EAAgB,IAEnBF,GAAsBH,GAAkB,OAAS,aAIjD9F,EAAAA,EAAAA,KAACoG,EAAAA,SAAc,CAAA9F,UACbC,EAAAA,EAAAA,MAACC,EAAAA,GAAI,CACHC,WAAS,EACTC,WAAW2F,EAAAA,EAAAA,GACK,KAAd3F,GAAmBA,GAAY,GACrB,KAAV8B,EAAezD,EAAQuH,aAAevH,EAAQwH,mBAC9CjG,SAAA,CAES,KAAVW,IACCV,EAAAA,EAAAA,MAACiG,EAAAA,EAAU,CACTC,QAASvF,EACTR,UACE0E,EAAkBrG,EAAQ2H,gBAAkB3H,EAAQ4H,WACrDrG,SAAA,EAEDC,EAAAA,EAAAA,MAAA,QAAAD,SAAA,CACGW,EACAuD,EAAW,IAAM,MAEP,KAAZL,IACCnE,EAAAA,EAAAA,KAAA,OAAKU,UAAW3B,EAAQ6H,iBAAiBtG,UACvCN,EAAAA,EAAAA,KAAC6G,EAAAA,EAAO,CAAC3G,MAAOiE,EAAS2C,UAAU,YAAWxG,UAC5CN,EAAAA,EAAAA,KAAA,OAAKU,UAAW3B,EAAQoF,QAAQ7D,UAC9BN,EAAAA,EAAAA,KAAC+G,EAAAA,IAAQ,cAQrBxG,EAAAA,EAAAA,MAAA,OAAKG,UAAW3B,EAAQqE,iBAAiB9C,SAAA,EACvCN,EAAAA,EAAAA,KAAC8C,EAAU,CACT5B,GAAIA,EACJC,KAAMA,EACN6F,WAAS,EACThG,MAAOA,EACPwE,UAAWA,EACX1D,SAAUA,EACVT,SAAUA,EACVK,KAAMuE,GACNhC,UAAWA,EACXH,aAAcA,EACd+B,WAAYA,GACZrD,MAAiB,KAAVA,EACPyE,WAAYzE,EACZpB,YAAaA,EACbV,UAAW3B,EAAQmI,YACnBxB,WAAYA,GACZC,QAASA,GACTC,QAASA,KAEVI,KACChG,EAAAA,EAAAA,KAAA,OACEU,UAAS,GAAAyG,OAAKpI,EAAQwE,cAAa,KAAA4D,OACvB,KAAVlG,EAAe,YAAc,IAC5BX,UAEHN,EAAAA,EAAAA,KAACoH,EAAAA,EAAU,CACTxF,QACE2B,EACI,WACEA,GACF,EACA,kBAAMwC,IAAoBD,GAAgB,EAEhD5E,GAAI0D,EACJyC,KAAM,QACNC,oBAAoB,EACpBC,eAAe,EACfC,oBAAoB,EAAMlH,SAEzB0F,OAINhB,IACChF,EAAAA,EAAAA,KAAA,OACEU,UAAS,GAAAyG,OAAKpI,EAAQwE,cAAa,KAAA4D,OACvB,KAAVlG,EAAe,YAAc,IAC5BX,SAEF0E,WAOf,G,wCCjQIyC,EAAyBC,EAAQ,OAIrCC,EAAQ,OAAU,EAClB,IAAIC,EAAiBH,EAAuBC,EAAQ,QAChDG,EAAcH,EAAQ,OACtBI,GAAW,EAAIF,EAAeG,UAAuB,EAAIF,EAAYG,KAAK,OAAQ,CACpFC,EAAG,sNACD,gBACJN,EAAQ,EAAUG,C,yCCVdL,EAAyBC,EAAQ,OAIrCC,EAAQ,OAAU,EAClB,IAAIC,EAAiBH,EAAuBC,EAAQ,QAChDG,EAAcH,EAAQ,OACtBI,GAAW,EAAIF,EAAeG,UAAuB,EAAIF,EAAYG,KAAK,OAAQ,CACpFC,EAAG,8fACD,iBACJN,EAAQ,EAAUG,C,qCCVlBI,OAAOC,eAAeR,EAAS,aAAc,CAC3C3G,OAAO,IAETkH,OAAOC,eAAeR,EAAS,UAAW,CACxCS,YAAY,EACZC,IAAK,WACH,OAAOC,EAAOC,aAChB,IAEF,IAAID,EAASZ,EAAQ,M,yCCPfc,E,SAAkCpC,mBAAoBqC,GAI5D,K,qCCRe,SAASC,EAAgBhK,GAIrC,IAHDqE,EAAKrE,EAALqE,MACA4F,EAAMjK,EAANiK,OACAC,EAAclK,EAAdkK,eAEA,OAAOD,EAAOE,QAAO,SAACC,EAAKC,GAOzB,OANAD,EAAIC,GAAShG,EAAMgG,GACfH,GAC0B,qBAAjB7F,EAAMgG,KACfD,EAAIC,GAASH,EAAeG,IAGzBD,CACT,GAAG,CAAC,EACN,C,8HCZe,SAASE,IACtB,OAAO5C,EAAAA,WAAiBoC,EAAAA,EAC1B,C,uLCFMS,EAAY,CAAC,WAAY,YAAa,QAAS,YAAa,WAAY,QAAS,SAAU,UAAW,YA4B/FC,GAAgBC,EAAAA,EAAAA,IAAO,QAAS,CAC3ChI,KAAM,eACNiI,KAAM,OACNC,kBAAmB,SAAA3K,EAEhB4K,GAAW,IADZC,EAAU7K,EAAV6K,WAEA,OAAOC,EAAAA,EAAAA,GAAS,CAAC,EAAGF,EAAOG,KAA2B,cAArBF,EAAW1H,OAAyByH,EAAOI,eAAgBH,EAAWI,QAAUL,EAAOK,OAC1H,GAP2BR,EAQ1B,SAAAS,GAAA,IAAAC,EACDzL,EAAKwL,EAALxL,MACAmL,EAAUK,EAAVL,WAAU,OACNC,EAAAA,EAAAA,GAAS,CACb3H,OAAQzD,EAAM0L,MAAQ1L,GAAO2L,QAAQC,KAAKC,WACzC7L,EAAM8L,WAAWC,OAAKN,EAAA,CACvBO,WAAY,WACZC,QAAS,EACT/G,SAAU,aAAUgH,EAAAA,EAAAA,GAAAT,EAAA,KAAA1C,OACdoD,EAAAA,EAAiBC,SAAY,CACjC3I,OAAQzD,EAAM0L,MAAQ1L,GAAO2L,QAAQR,EAAW1H,OAAO4I,QACxDH,EAAAA,EAAAA,GAAAT,EAAA,KAAA1C,OACKoD,EAAAA,EAAiBzI,UAAa,CAClCD,OAAQzD,EAAM0L,MAAQ1L,GAAO2L,QAAQC,KAAKlI,YAC3CwI,EAAAA,EAAAA,GAAAT,EAAA,KAAA1C,OACKoD,EAAAA,EAAiB/H,OAAU,CAC/BX,OAAQzD,EAAM0L,MAAQ1L,GAAO2L,QAAQvH,MAAMiI,OAC5CZ,GACD,IACIa,GAAoBvB,EAAAA,EAAAA,IAAO,OAAQ,CACvChI,KAAM,eACNiI,KAAM,WACNC,kBAAmB,SAACtG,EAAOuG,GAAM,OAAKA,EAAOqB,QAAQ,GAH7BxB,EAIvB,SAAAyB,GAAA,IACDxM,EAAKwM,EAALxM,MAAK,OAAAkM,EAAAA,EAAAA,GAAA,QAAAnD,OAECoD,EAAAA,EAAiB/H,OAAU,CAC/BX,OAAQzD,EAAM0L,MAAQ1L,GAAO2L,QAAQvH,MAAMiI,MAC5C,IAEGI,EAAyBzE,EAAAA,YAAiB,SAAmB0E,EAASC,GAC1E,IAAMhI,GAAQiI,EAAAA,EAAAA,GAAc,CAC1BjI,MAAO+H,EACP3J,KAAM,iBAGJb,EAGEyC,EAHFzC,SACAI,EAEEqC,EAFFrC,UAASuK,EAEPlI,EADFmI,UAAAA,OAAS,IAAAD,EAAG,QAAOA,EAErBE,GAAQC,EAAAA,EAAAA,GAA8BrI,EAAOkG,GACzCL,GAAiBI,EAAAA,EAAAA,KACjBqC,GAAM3C,EAAAA,EAAAA,GAAiB,CAC3B3F,MAAAA,EACA6F,eAAAA,EACAD,OAAQ,CAAC,QAAS,WAAY,UAAW,WAAY,QAAS,YAE1DY,GAAaC,EAAAA,EAAAA,GAAS,CAAC,EAAGzG,EAAO,CACrClB,MAAOwJ,EAAIxJ,OAAS,UACpBqJ,UAAAA,EACApJ,SAAUuJ,EAAIvJ,SACdU,MAAO6I,EAAI7I,MACXmH,OAAQ0B,EAAI1B,OACZa,QAASa,EAAIb,QACbhG,SAAU6G,EAAI7G,WAEVzF,EAhFkB,SAAAwK,GACxB,IACExK,EAOEwK,EAPFxK,QACA8C,EAME0H,EANF1H,MACA2I,EAKEjB,EALFiB,QACA1I,EAIEyH,EAJFzH,SACAU,EAGE+G,EAHF/G,MACAmH,EAEEJ,EAFFI,OACAnF,EACE+E,EADF/E,SAEI8G,EAAQ,CACZ7B,KAAM,CAAC,OAAQ,QAAFtC,QAAUoE,EAAAA,EAAAA,GAAW1J,IAAUC,GAAY,WAAYU,GAAS,QAASmH,GAAU,SAAUa,GAAW,UAAWhG,GAAY,YAC5ImG,SAAU,CAAC,WAAYnI,GAAS,UAElC,OAAOgJ,EAAAA,EAAAA,GAAeF,EAAOG,EAAAA,EAA4B1M,EAC3D,CAiEkB2M,CAAkBnC,GAClC,OAAoBhJ,EAAAA,EAAAA,MAAM2I,GAAeM,EAAAA,EAAAA,GAAS,CAChDmC,GAAIT,EACJ3B,WAAYA,EACZ7I,WAAW2F,EAAAA,EAAAA,GAAKtH,EAAQ0K,KAAM/I,GAC9BqK,IAAKA,GACJI,EAAO,CACR7K,SAAU,CAACA,EAAU+K,EAAI7G,WAAyBjE,EAAAA,EAAAA,MAAMmK,EAAmB,CACzEnB,WAAYA,EACZ,eAAe,EACf7I,UAAW3B,EAAQ4L,SACnBrK,SAAU,CAAC,SAAU,UAG3B,IAsDA,K,+FChKO,SAASmL,EAA2BrC,GACzC,OAAOwC,EAAAA,EAAAA,GAAqB,eAAgBxC,EAC9C,CACA,IAAMmB,GAAmBsB,EAAAA,EAAAA,GAAuB,eAAgB,CAAC,OAAQ,iBAAkB,UAAW,WAAY,QAAS,SAAU,WAAY,aACjJ,K,kOCJO,SAASC,EAA4B1C,GAC1C,OAAOwC,EAAAA,EAAAA,GAAqB,gBAAiBxC,EAC/C,EAC0ByC,EAAAA,EAAAA,GAAuB,gBAAiB,CAAC,OAAQ,UAAW,WAAY,QAAS,WAAY,WAAY,cAAe,YAAa,SAAU,WAAY,WAAY,SAAU,aAA3M,I,WCHM5C,EAAY,CAAC,mBAAoB,SAAU,SAAU,UAAW,aA6BhE8C,GAAiB5C,EAAAA,EAAAA,IAAO0B,EAAAA,EAAW,CACvCmB,kBAAmB,SAAAC,GAAI,OAAIC,EAAAA,EAAAA,IAAsBD,IAAkB,YAATA,CAAkB,EAC5E9K,KAAM,gBACNiI,KAAM,OACNC,kBAAmB,SAACtG,EAAOuG,GACzB,IACEC,EACExG,EADFwG,WAEF,MAAO,EAAAe,EAAAA,EAAAA,GAAA,SAAAnD,OACEoD,EAAAA,EAAiBI,UAAarB,EAAOqB,UAC3CrB,EAAOG,KAAMF,EAAW4C,aAAe7C,EAAO6C,YAAiC,UAApB5C,EAAWlC,MAAoBiC,EAAO8C,UAAW7C,EAAW8C,QAAU/C,EAAO+C,QAAS9C,EAAW+C,kBAAoBhD,EAAOiD,SAAUjD,EAAOC,EAAW5H,SACxN,GAXqBwH,EAYpB,SAAAS,GAAA,IACDxL,EAAKwL,EAALxL,MACAmL,EAAUK,EAAVL,WAAU,OACNC,EAAAA,EAAAA,GAAS,CACbgD,QAAS,QACTC,gBAAiB,WACjBC,WAAY,SACZC,SAAU,SACVC,aAAc,WACdlJ,SAAU,QACT6F,EAAW4C,aAAe,CAC3B7I,SAAU,WACVuJ,KAAM,EACNpJ,IAAK,EAELqJ,UAAW,+BACU,UAApBvD,EAAWlC,MAAoB,CAEhCyF,UAAW,+BACVvD,EAAW8C,QAAU,CACtBS,UAAW,mCACXL,gBAAiB,WACjB/I,SAAU,SACR6F,EAAW+C,kBAAoB,CACjCS,WAAY3O,EAAM4O,YAAYC,OAAO,CAAC,QAAS,YAAa,aAAc,CACxEC,SAAU9O,EAAM4O,YAAYE,SAASC,QACrCC,OAAQhP,EAAM4O,YAAYI,OAAOC,WAEX,WAAvB9D,EAAW5H,UAAwB6H,EAAAA,EAAAA,GAAS,CAK7C8D,OAAQ,EACRC,cAAe,OACfT,UAAW,iCACXpJ,SAAU,qBACW,UAApB6F,EAAWlC,MAAoB,CAChCyF,UAAW,kCACVvD,EAAW8C,SAAU7C,EAAAA,EAAAA,GAAS,CAC/BgE,WAAY,OACZD,cAAe,OACfT,UAAW,mCACXpJ,SAAU,qBACW,UAApB6F,EAAWlC,MAAoB,CAChCyF,UAAW,sCACe,aAAvBvD,EAAW5H,UAA0B6H,EAAAA,EAAAA,GAAS,CAEjD8D,OAAQ,EACRC,cAAe,OACfT,UAAW,iCACXpJ,SAAU,qBACW,UAApB6F,EAAWlC,MAAoB,CAChCyF,UAAW,iCACVvD,EAAW8C,QAAU,CACtBmB,WAAY,OACZD,cAAe,OAGf7J,SAAU,oBACVoJ,UAAW,sCACV,IA2GH,EA1GgC1G,EAAAA,YAAiB,SAAoB0E,EAASC,GAC5E,IAAMhI,GAAQiI,EAAAA,EAAAA,GAAc,CAC1B7J,KAAM,gBACN4B,MAAO+H,IAET2C,EAIM1K,EAHFuJ,iBAAAA,OAAgB,IAAAmB,GAAQA,EAChBC,EAEN3K,EAFFsJ,OACA3L,EACEqC,EADFrC,UAEFyK,GAAQC,EAAAA,EAAAA,GAA8BrI,EAAOkG,GACzCL,GAAiBI,EAAAA,EAAAA,KACnBqD,EAASqB,EACS,qBAAXrB,GAA0BzD,IACnCyD,EAASzD,EAAee,QAAUf,EAAe4B,SAAW5B,EAAe+E,cAE7E,IAAMtC,GAAM3C,EAAAA,EAAAA,GAAiB,CAC3B3F,MAAAA,EACA6F,eAAAA,EACAD,OAAQ,CAAC,OAAQ,UAAW,cAExBY,GAAaC,EAAAA,EAAAA,GAAS,CAAC,EAAGzG,EAAO,CACrCuJ,iBAAAA,EACAH,YAAavD,EACbyD,OAAAA,EACAhF,KAAMgE,EAAIhE,KACV1F,QAAS0J,EAAI1J,QACb6C,SAAU6G,EAAI7G,WAEVzF,EAxHkB,SAAAwK,GACxB,IACExK,EAOEwK,EAPFxK,QACAoN,EAME5C,EANF4C,YACA9E,EAKEkC,EALFlC,KACAgF,EAIE9C,EAJF8C,OAKIf,EAAQ,CACZ7B,KAAM,CAAC,OAAQ0C,GAAe,eAF5B5C,EAHF+C,kBAKkE,WAAYD,GAAU,SAAmB,UAAThF,GAAoB,YAFpHkC,EAFF5H,SAKAgJ,SAAU,CAHRpB,EADF/E,UAIuB,aAEnBoJ,GAAkBpC,EAAAA,EAAAA,GAAeF,EAAOQ,EAA6B/M,GAC3E,OAAOyK,EAAAA,EAAAA,GAAS,CAAC,EAAGzK,EAAS6O,EAC/B,CAwGkBlC,CAAkBnC,GAClC,OAAoBvJ,EAAAA,EAAAA,KAAK+L,GAAgBvC,EAAAA,EAAAA,GAAS,CAChD,cAAe6C,EACf9C,WAAYA,EACZwB,IAAKA,EACLrK,WAAW2F,EAAAA,EAAAA,GAAKtH,EAAQ0K,KAAM/I,IAC7ByK,EAAO,CACRpM,QAASA,IAEb,G,oDC9IA,IAAe8O,EAAqB,C,kyBCApC,MCDe,SAA4BC,EAAWC,GAElD,OAAO,kBAAM,IAAI,CAUrB,E,0CCXA,MCAe,SAA4BC,EAAsBC,GAE7D,OAAO,kBAAM,IAAI,CAoBrB,ECtBA,E,SAAqB,E,sBCArB,MCDe,SAAyBlL,EAAOmL,EAAUC,EAAeC,EAAUC,GAE9E,OAAO,IAOX,E,4CCWaC,EAA8B,CACzCC,UAAW,SAAAC,GAITC,EAAAA,EAAmBF,UAAUC,EAC/B,E,oFCzBF,MCAe,SAAsBE,EAASC,GAC5C,OAAoBvI,EAAAA,eAAqBsI,KAAwD,IAA5CC,EAASC,QAAQF,EAAQhN,KAAKmN,QACrF,C,oBCEAC,EAAOnH,QALP,SAAgCoH,GAC9B,OAAOA,GAAOA,EAAIC,WAAaD,EAAM,CACnC,QAAWA,EAEf,EACyCD,EAAOnH,QAAQqH,YAAa,EAAMF,EAAOnH,QAAiB,QAAImH,EAAOnH,O","sources":["screens/Console/Buckets/BucketDetails/AddBucketTagModal.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { AddNewTagIcon, Button } from \"mds\";\nimport { Grid } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IBucketTagModal {\n modalOpen: boolean;\n currentTags: any;\n bucketName: string;\n onCloseAndUpdate: (refresh: boolean) => void;\n\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...formFieldStyles,\n ...modalStyleUtils,\n ...spacingUtils,\n });\n\nconst AddBucketTagModal = ({\n modalOpen,\n currentTags,\n onCloseAndUpdate,\n bucketName,\n\n classes,\n}: IBucketTagModal) => {\n const dispatch = useAppDispatch();\n const [newKey, setNewKey] = useState(\"\");\n const [newLabel, setNewLabel] = useState(\"\");\n const [isSending, setIsSending] = useState(false);\n\n const resetForm = () => {\n setNewLabel(\"\");\n setNewKey(\"\");\n };\n\n const addTagProcess = () => {\n setIsSending(true);\n const newTag: any = {};\n\n newTag[newKey] = newLabel;\n const newTagList = { ...currentTags, ...newTag };\n\n api.buckets\n .putBucketTags(bucketName, {\n tags: newTagList,\n })\n .then(() => {\n setIsSending(false);\n onCloseAndUpdate(true);\n })\n .catch((error) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(error.error)));\n setIsSending(false);\n });\n };\n\n return (\n {\n onCloseAndUpdate(false);\n }}\n titleIcon={}\n >\n \n
\n Bucket: {bucketName}\n
\n \n {\n setNewKey(e.target.value);\n }}\n />\n \n \n {\n setNewLabel(e.target.value);\n }}\n />\n \n \n \n \n \n
\n \n );\n};\n\nexport default withStyles(styles)(AddBucketTagModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["withStyles","theme","createStyles","_objectSpread","formFieldStyles","modalStyleUtils","spacingUtils","_ref","modalOpen","currentTags","onCloseAndUpdate","bucketName","classes","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","newKey","setNewKey","_useState3","_useState4","newLabel","setNewLabel","_useState5","_useState6","isSending","setIsSending","_jsx","ModalWrapper","title","onClose","titleIcon","AddNewTagIcon","children","_jsxs","Grid","container","className","spacerBottom","item","xs","formFieldRow","InputBoxWrapper","value","label","id","name","placeholder","onChange","e","target","modalButtonBar","Button","type","variant","onClick","color","disabled","trim","newTag","newTagList","api","buckets","putBucketTags","tags","then","catch","error","setModalErrorSnackMessage","errorToHandler","inputStyles","makeStyles","inputFieldStyles","InputField","props","TextField","InputProps","fieldBasic","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","_ref$type","_ref$autoComplete","autoComplete","_ref$disabled","_ref$multiline","multiline","_ref$tooltip","tooltip","_ref$index","index","_ref$error","_ref$required","required","_ref$placeholder","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","onKeyPress","onFocus","onPaste","inputProps","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","React","clsx","errorInField","inputBoxContainer","InputLabel","htmlFor","noMinWidthLabel","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","fullWidth","helperText","inputRebase","concat","IconButton","size","disableFocusRipple","disableRipple","disableTouchRipple","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","enumerable","get","_utils","createSvgIcon","FormControlContext","undefined","formControlState","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","slot","overridesResolver","styles","ownerState","_extends","root","colorSecondary","filled","_ref2","_extends2","vars","palette","text","secondary","typography","body1","lineHeight","padding","_defineProperty","formLabelClasses","focused","main","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","as","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","sizeSmall","shrink","disableAnimation","animated","display","transformOrigin","whiteSpace","overflow","textOverflow","left","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","muiName","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/247.3ae1405a.chunk.js b/portal-ui/build/static/js/247.3ae1405a.chunk.js deleted file mode 100644 index f6e11d81a..000000000 --- a/portal-ui/build/static/js/247.3ae1405a.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[247],{40247:function(e,r,a){a.r(r);var t=a(29439),n=a(1413),o=a(72791),i=a(29945),s=a(61889),l=a(11135),c=a(25787),d=a(23814),u=a(21435),m=a(56028),p=a(87995),f=a(81551),v=a(31776),Z=a(82342),x=a(80184);r.default=(0,c.Z)((function(e){return(0,l.Z)((0,n.Z)((0,n.Z)((0,n.Z)({},d.DF),d.ID),d.bK))}))((function(e){var r=e.modalOpen,a=e.currentTags,l=e.onCloseAndUpdate,c=e.bucketName,d=e.classes,h=(0,f.TL)(),b=(0,o.useState)(""),k=(0,t.Z)(b,2),g=k[0],j=k[1],w=(0,o.useState)(""),C=(0,t.Z)(w,2),y=C[0],N=C[1],z=(0,o.useState)(!1),F=(0,t.Z)(z,2),L=F[0],S=F[1];return(0,x.jsx)(m.Z,{modalOpen:r,title:"Add New Tag ",onClose:function(){l(!1)},titleIcon:(0,x.jsx)(i.OCT,{}),children:(0,x.jsxs)(s.ZP,{container:!0,children:[(0,x.jsxs)("div",{className:d.spacerBottom,children:[(0,x.jsx)("strong",{children:"Bucket"}),": ",c]}),(0,x.jsx)(s.ZP,{item:!0,xs:12,className:d.formFieldRow,children:(0,x.jsx)(u.Z,{value:g,label:"New Tag Key",id:"newTagKey",name:"newTagKey",placeholder:"Enter New Tag Key",onChange:function(e){j(e.target.value)}})}),(0,x.jsx)(s.ZP,{item:!0,xs:12,className:d.formFieldRow,children:(0,x.jsx)(u.Z,{value:y,label:"New Tag Label",id:"newTagLabel",name:"newTagLabel",placeholder:"Enter New Tag Label",onChange:function(e){N(e.target.value)}})}),(0,x.jsxs)(s.ZP,{item:!0,xs:12,className:d.modalButtonBar,children:[(0,x.jsx)(i.zxk,{id:"clear",type:"button",variant:"regular",onClick:function(){N(""),j("")},label:"Clear"}),(0,x.jsx)(i.zxk,{id:"save-add-bucket-tag",type:"submit",variant:"callAction",color:"primary",disabled:""===y.trim()||""===g.trim()||L,onClick:function(){S(!0);var e={};e[g]=y;var r=(0,n.Z)((0,n.Z)({},a),e);v.h.buckets.putBucketTags(c,{tags:r}).then((function(){S(!1),l(!0)})).catch((function(e){h((0,p.zb)((0,Z.g)(e.error))),S(!1)}))},label:"Save"})]})]})})}))},21435:function(e,r,a){var t=a(29439),n=a(1413),o=a(72791),i=a(27391),s=a(61889),l=a(30829),c=a(20068),d=a(13400),u=a(20165),m=a(3579),p=a(11135),f=a(72455),v=a(25787),Z=a(23814),x=a(29945),h=a(28182),b=a(80184),k=(0,f.Z)((function(e){return(0,p.Z)((0,n.Z)({},Z.gM))}));function g(e){var r=k();return(0,b.jsx)(i.Z,(0,n.Z)({InputProps:{classes:r}},e))}r.Z=(0,v.Z)((function(e){return(0,p.Z)((0,n.Z)((0,n.Z)((0,n.Z)({},Z.YI),Z.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var r=e.label,a=e.onChange,i=e.value,p=e.id,f=e.name,v=e.type,Z=void 0===v?"text":v,k=e.autoComplete,j=void 0===k?"off":k,w=e.disabled,C=void 0!==w&&w,y=e.multiline,N=void 0!==y&&y,z=e.tooltip,F=void 0===z?"":z,L=e.index,S=void 0===L?0:L,M=e.error,P=void 0===M?"":M,R=e.required,T=void 0!==R&&R,q=e.placeholder,A=void 0===q?"":q,I=e.min,O=e.max,W=e.overlayId,B=e.overlayIcon,K=void 0===B?null:B,E=e.overlayObject,H=void 0===E?null:E,D=e.extraInputProps,_=void 0===D?{}:D,G=e.overlayAction,U=e.noLabelMinWidth,V=void 0!==U&&U,Y=e.pattern,J=void 0===Y?"":Y,Q=e.autoFocus,X=void 0!==Q&&Q,$=e.classes,ee=e.className,re=void 0===ee?"":ee,ae=e.onKeyPress,te=e.onFocus,ne=e.onPaste,oe=(0,n.Z)({"data-index":S},_),ie=(0,o.useState)(!1),se=(0,t.Z)(ie,2),le=se[0],ce=se[1];"number"===Z&&I&&(oe.min=I),"number"===Z&&O&&(oe.max=O),""!==J&&(oe.pattern=J);var de=K,ue=Z;return"password"===Z&&null===K&&(de=le?(0,b.jsx)(u.Z,{}):(0,b.jsx)(m.Z,{}),ue=le?"text":"password"),(0,b.jsx)(o.Fragment,{children:(0,b.jsxs)(s.ZP,{container:!0,className:(0,h.Z)(""!==re?re:"",""!==P?$.errorInField:$.inputBoxContainer),children:[""!==r&&(0,b.jsxs)(l.Z,{htmlFor:p,className:V?$.noMinWidthLabel:$.inputLabel,children:[(0,b.jsxs)("span",{children:[r,T?"*":""]}),""!==F&&(0,b.jsx)("div",{className:$.tooltipContainer,children:(0,b.jsx)(c.Z,{title:F,placement:"top-start",children:(0,b.jsx)("div",{className:$.tooltip,children:(0,b.jsx)(x.byK,{})})})})]}),(0,b.jsxs)("div",{className:$.textBoxContainer,children:[(0,b.jsx)(g,{id:p,name:f,fullWidth:!0,value:i,autoFocus:X,disabled:C,onChange:a,type:ue,multiline:N,autoComplete:j,inputProps:oe,error:""!==P,helperText:P,placeholder:A,className:$.inputRebase,onKeyPress:ae,onFocus:te,onPaste:ne}),de&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==r?"withLabel":""),children:(0,b.jsx)(d.Z,{onClick:G?function(){G()}:function(){return ce(!le)},id:W,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:de})}),H&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==r?"withLabel":""),children:H})]})]})})}))},3579:function(e,r,a){var t=a(64836);r.Z=void 0;var n=t(a(45649)),o=a(80184),i=(0,n.default)((0,o.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");r.Z=i},20165:function(e,r,a){var t=a(64836);r.Z=void 0;var n=t(a(45649)),o=a(80184),i=(0,n.default)((0,o.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");r.Z=i},93840:function(e,r,a){var t=a(72791).createContext(void 0);r.Z=t},76147:function(e,r,a){function t(e){var r=e.props,a=e.states,t=e.muiFormControl;return a.reduce((function(e,a){return e[a]=r[a],t&&"undefined"===typeof r[a]&&(e[a]=t[a]),e}),{})}a.d(r,{Z:function(){return t}})},52930:function(e,r,a){a.d(r,{Z:function(){return o}});var t=a(72791),n=a(93840);function o(){return t.useContext(n.Z)}},17133:function(e,r,a){var t=a(4942),n=a(63366),o=a(87462),i=a(72791),s=a(28182),l=a(94419),c=a(76147),d=a(52930),u=a(14036),m=a(31402),p=a(66934),f=a(10843),v=a(80184),Z=["children","className","color","component","disabled","error","filled","focused","required"],x=(0,p.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,r){var a=e.ownerState;return(0,o.Z)({},r.root,"secondary"===a.color&&r.colorSecondary,a.filled&&r.filled)}})((function(e){var r,a=e.theme,n=e.ownerState;return(0,o.Z)({color:(a.vars||a).palette.text.secondary},a.typography.body1,(r={lineHeight:"1.4375em",padding:0,position:"relative"},(0,t.Z)(r,"&.".concat(f.Z.focused),{color:(a.vars||a).palette[n.color].main}),(0,t.Z)(r,"&.".concat(f.Z.disabled),{color:(a.vars||a).palette.text.disabled}),(0,t.Z)(r,"&.".concat(f.Z.error),{color:(a.vars||a).palette.error.main}),r))})),h=(0,p.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,r){return r.asterisk}})((function(e){var r=e.theme;return(0,t.Z)({},"&.".concat(f.Z.error),{color:(r.vars||r).palette.error.main})})),b=i.forwardRef((function(e,r){var a=(0,m.Z)({props:e,name:"MuiFormLabel"}),t=a.children,i=a.className,p=a.component,b=void 0===p?"label":p,k=(0,n.Z)(a,Z),g=(0,d.Z)(),j=(0,c.Z)({props:a,muiFormControl:g,states:["color","required","focused","disabled","error","filled"]}),w=(0,o.Z)({},a,{color:j.color||"primary",component:b,disabled:j.disabled,error:j.error,filled:j.filled,focused:j.focused,required:j.required}),C=function(e){var r=e.classes,a=e.color,t=e.focused,n=e.disabled,o=e.error,i=e.filled,s=e.required,c={root:["root","color".concat((0,u.Z)(a)),n&&"disabled",o&&"error",i&&"filled",t&&"focused",s&&"required"],asterisk:["asterisk",o&&"error"]};return(0,l.Z)(c,f.M,r)}(w);return(0,v.jsxs)(x,(0,o.Z)({as:b,ownerState:w,className:(0,s.Z)(C.root,i),ref:r},k,{children:[t,j.required&&(0,v.jsxs)(h,{ownerState:w,"aria-hidden":!0,className:C.asterisk,children:["\u2009","*"]})]}))}));r.Z=b},10843:function(e,r,a){a.d(r,{M:function(){return o}});var t=a(75878),n=a(21217);function o(e){return(0,n.Z)("MuiFormLabel",e)}var i=(0,t.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);r.Z=i},30829:function(e,r,a){a.d(r,{Z:function(){return g}});var t=a(4942),n=a(63366),o=a(87462),i=a(72791),s=a(94419),l=a(28182),c=a(76147),d=a(52930),u=a(17133),m=a(10843),p=a(31402),f=a(66934),v=a(75878),Z=a(21217);function x(e){return(0,Z.Z)("MuiInputLabel",e)}(0,v.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var h=a(80184),b=["disableAnimation","margin","shrink","variant","className"],k=(0,f.ZP)(u.Z,{shouldForwardProp:function(e){return(0,f.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,r){var a=e.ownerState;return[(0,t.Z)({},"& .".concat(m.Z.asterisk),r.asterisk),r.root,a.formControl&&r.formControl,"small"===a.size&&r.sizeSmall,a.shrink&&r.shrink,!a.disableAnimation&&r.animated,r[a.variant]]}})((function(e){var r=e.theme,a=e.ownerState;return(0,o.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},a.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===a.size&&{transform:"translate(0, 17px) scale(1)"},a.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!a.disableAnimation&&{transition:r.transitions.create(["color","transform","max-width"],{duration:r.transitions.duration.shorter,easing:r.transitions.easing.easeOut})},"filled"===a.variant&&(0,o.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===a.size&&{transform:"translate(12px, 13px) scale(1)"},a.shrink&&(0,o.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===a.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===a.variant&&(0,o.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===a.size&&{transform:"translate(14px, 9px) scale(1)"},a.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),g=i.forwardRef((function(e,r){var a=(0,p.Z)({name:"MuiInputLabel",props:e}),t=a.disableAnimation,i=void 0!==t&&t,u=a.shrink,m=a.className,f=(0,n.Z)(a,b),v=(0,d.Z)(),Z=u;"undefined"===typeof Z&&v&&(Z=v.filled||v.focused||v.adornedStart);var g=(0,c.Z)({props:a,muiFormControl:v,states:["size","variant","required"]}),j=(0,o.Z)({},a,{disableAnimation:i,formControl:v,shrink:Z,size:g.size,variant:g.variant,required:g.required}),w=function(e){var r=e.classes,a=e.formControl,t=e.size,n=e.shrink,i={root:["root",a&&"formControl",!e.disableAnimation&&"animated",n&&"shrink","small"===t&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},l=(0,s.Z)(i,x,r);return(0,o.Z)({},r,l)}(j);return(0,h.jsx)(k,(0,o.Z)({"data-shrink":Z,ownerState:j,ref:r,className:(0,l.Z)(w.root,m)},f,{classes:w}))}))}}]); -//# sourceMappingURL=247.3ae1405a.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/247.3ae1405a.chunk.js.map b/portal-ui/build/static/js/247.3ae1405a.chunk.js.map deleted file mode 100644 index 587260592..000000000 --- a/portal-ui/build/static/js/247.3ae1405a.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/247.3ae1405a.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AddBucketTagModal.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { AddNewTagIcon, Button } from \"mds\";\nimport { Grid } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IBucketTagModal {\n modalOpen: boolean;\n currentTags: any;\n bucketName: string;\n onCloseAndUpdate: (refresh: boolean) => void;\n\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...formFieldStyles,\n ...modalStyleUtils,\n ...spacingUtils,\n });\n\nconst AddBucketTagModal = ({\n modalOpen,\n currentTags,\n onCloseAndUpdate,\n bucketName,\n\n classes,\n}: IBucketTagModal) => {\n const dispatch = useAppDispatch();\n const [newKey, setNewKey] = useState(\"\");\n const [newLabel, setNewLabel] = useState(\"\");\n const [isSending, setIsSending] = useState(false);\n\n const resetForm = () => {\n setNewLabel(\"\");\n setNewKey(\"\");\n };\n\n const addTagProcess = () => {\n setIsSending(true);\n const newTag: any = {};\n\n newTag[newKey] = newLabel;\n const newTagList = { ...currentTags, ...newTag };\n\n api.buckets\n .putBucketTags(bucketName, {\n tags: newTagList,\n })\n .then(() => {\n setIsSending(false);\n onCloseAndUpdate(true);\n })\n .catch((error) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(error.error)));\n setIsSending(false);\n });\n };\n\n return (\n {\n onCloseAndUpdate(false);\n }}\n titleIcon={}\n >\n \n
\n Bucket: {bucketName}\n
\n \n {\n setNewKey(e.target.value);\n }}\n />\n \n \n {\n setNewLabel(e.target.value);\n }}\n />\n \n \n \n \n \n
\n \n );\n};\n\nexport default withStyles(styles)(AddBucketTagModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;"],"names":["withStyles","theme","createStyles","_objectSpread","formFieldStyles","modalStyleUtils","spacingUtils","_ref","modalOpen","currentTags","onCloseAndUpdate","bucketName","classes","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","newKey","setNewKey","_useState3","_useState4","newLabel","setNewLabel","_useState5","_useState6","isSending","setIsSending","_jsx","ModalWrapper","title","onClose","titleIcon","AddNewTagIcon","children","_jsxs","Grid","container","className","spacerBottom","item","xs","formFieldRow","InputBoxWrapper","value","label","id","name","placeholder","onChange","e","target","modalButtonBar","Button","type","variant","onClick","color","disabled","trim","newTag","newTagList","api","buckets","putBucketTags","tags","then","catch","error","setModalErrorSnackMessage","errorToHandler","inputStyles","makeStyles","inputFieldStyles","InputField","props","TextField","InputProps","fieldBasic","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","_ref$type","_ref$autoComplete","autoComplete","_ref$disabled","_ref$multiline","multiline","_ref$tooltip","tooltip","_ref$index","index","_ref$error","_ref$required","required","_ref$placeholder","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","onKeyPress","onFocus","onPaste","inputProps","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","React","clsx","errorInField","inputBoxContainer","InputLabel","htmlFor","noMinWidthLabel","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","fullWidth","helperText","inputRebase","concat","IconButton","size","disableFocusRipple","disableRipple","disableTouchRipple","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","FormControlContext","undefined","formControlState","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","slot","overridesResolver","styles","ownerState","_extends","root","colorSecondary","filled","_ref2","_extends2","vars","palette","text","secondary","typography","body1","lineHeight","padding","_defineProperty","formLabelClasses","focused","main","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","as","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","sizeSmall","shrink","disableAnimation","animated","display","transformOrigin","whiteSpace","overflow","textOverflow","left","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2486.1ecaac74.chunk.js.map b/portal-ui/build/static/js/2486.1ecaac74.chunk.js.map deleted file mode 100644 index b6332630f..000000000 --- a/portal-ui/build/static/js/2486.1ecaac74.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/2486.1ecaac74.chunk.js","mappings":"yOA6JA,KAAeA,EAAAA,EAAAA,IAtHA,SAACC,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTC,EAAAA,IACAC,EAAAA,IAAa,IAChBC,YAAUH,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACLC,EAAAA,GAAWE,YAAU,IACxBC,SAAU,GACVC,OAAQ,EACRC,WAAY,aACZC,WAAY,OACZC,SAAU,OACVC,QAAS,SAEXC,iBAAkB,CAChBC,SAAU,EACVC,SAAU,YAEZC,iBAAkB,CAChBC,YAAa,UACbC,QAAS,IAEXC,cAAe,CACb,sCAAoChB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAC/BC,EAAAA,GAAWE,YAAU,IACxBC,SAAU,GACVa,UAAW,MAEb,iDAAkD,CAChDH,YAAa,UACbI,YAAa,GAEf,aAAc,CACZC,MAAO,UACPf,SAAU,GACVgB,WAAY,IACZ,gBAAiB,CACfD,MAAO,UACPE,QAAS,EACTD,WAAY,SAIjB,GA4EL,EA1E0B,SAAHE,GAaC,IAZtBC,EAAKD,EAALC,MACAC,EAAQF,EAARE,SACAC,EAAKH,EAALG,MACAC,EAAEJ,EAAFI,GACAC,EAAIL,EAAJK,KAAIC,EAAAN,EACJO,SAAAA,OAAQ,IAAAD,GAAQA,EAAAE,EAAAR,EAChBS,QAAAA,OAAO,IAAAD,EAAG,GAAEA,EAAAE,EAAAV,EACZW,MAAAA,OAAK,IAAAD,EAAG,EAACA,EAAAE,EAAAZ,EACTa,MAAAA,OAAK,IAAAD,EAAG,GAAEA,EAAAE,EAAAd,EACVe,SAAAA,OAAQ,IAAAD,GAAQA,EAAAE,EAAAhB,EAChBiB,YAAAA,OAAW,IAAAD,EAAG,GAAEA,EAChBE,EAAOlB,EAAPkB,QAEIC,EAAkB,CAAE,aAAcR,GAEtC,OACES,EAAAA,EAAAA,KAACC,EAAAA,SAAc,CAAAC,UACbC,EAAAA,EAAAA,MAACC,EAAAA,GAAI,CACHC,MAAI,EACJC,GAAI,GACJC,UAAS,GAAAC,OAAKV,EAAQW,eAAc,KAAAD,OACxB,KAAVf,EAAeK,EAAQY,aAAe,IACrCR,SAAA,CAEQ,KAAVrB,IACCsB,EAAAA,EAAAA,MAACQ,EAAAA,EAAU,CAACC,QAAS5B,EAAIuB,UAAWT,EAAQrC,WAAWyC,SAAA,EACrDC,EAAAA,EAAAA,MAAA,QAAAD,SAAA,CACGrB,EACAc,EAAW,IAAM,MAEP,KAAZN,IACCW,EAAAA,EAAAA,KAAA,OAAKO,UAAWT,EAAQe,iBAAiBX,UACvCF,EAAAA,EAAAA,KAACc,EAAAA,EAAO,CAACC,MAAO1B,EAAS2B,UAAU,YAAWd,UAC5CF,EAAAA,EAAAA,KAAA,OAAKO,UAAWT,EAAQT,QAAQa,UAC9BF,EAAAA,EAAAA,KAACiB,EAAAA,IAAQ,cAQrBjB,EAAAA,EAAAA,KAAA,OAAKO,UAAWT,EAAQ9B,iBAAiBkC,UACvCF,EAAAA,EAAAA,KAACkB,EAAAA,EAAS,CACRlC,GAAIA,EACJC,KAAMA,EACNkC,WAAS,EACTpC,MAAOA,EACPI,SAAUA,EACVL,SAAUA,EACVsC,WAAS,EACTC,KAAM,EACNtB,WAAYA,EACZN,MAAiB,KAAVA,EACP6B,WAAY7B,EACZI,YAAaA,EACb0B,gBAAiB,CACfC,QAAQ,GAEVC,WAAY,CACV3B,QAAS,CACP4B,eAAgB5B,EAAQ3B,iBACxBwD,KAAM7B,EAAQxB,gBAGlBsD,QAAQ,mBAMpB,G,oICgKA,WAAezE,EAAAA,EAAAA,IA1RA,SAACC,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTuE,EAAAA,IACAC,EAAAA,IACF,GAsRL,EApRkB,SAAHlD,GAAgD,IAA1CE,EAAQF,EAARE,SAAUgB,EAAOlB,EAAPkB,QAE7BiC,GAAwCC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAzDI,EAAYF,EAAA,GAAEG,EAAeH,EAAA,GACpCI,GAAkCL,EAAAA,EAAAA,UAAiB,IAAGM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAA/CE,EAASD,EAAA,GAAEE,EAAYF,EAAA,GAC9BG,GAA4BT,EAAAA,EAAAA,UAAiB,IAAGU,GAAAR,EAAAA,EAAAA,GAAAO,EAAA,GAAzCE,EAAID,EAAA,GAAEE,EAAWF,EAAA,GACxBG,GAA4Bb,EAAAA,EAAAA,UAAiB,IAAGc,GAAAZ,EAAAA,EAAAA,GAAAW,EAAA,GAAzCE,EAAMD,EAAA,GAAEE,EAASF,EAAA,GACxBG,GAAwBjB,EAAAA,EAAAA,UAAiB,IAAGkB,GAAAhB,EAAAA,EAAAA,GAAAe,EAAA,GAArCE,EAAID,EAAA,GAAEE,EAAOF,EAAA,GACpBG,GAAwBrB,EAAAA,EAAAA,UAAiB,IAAGsB,GAAApB,EAAAA,EAAAA,GAAAmB,EAAA,GAArCE,EAAID,EAAA,GAAEE,EAAOF,EAAA,GACpBG,GAAgCzB,EAAAA,EAAAA,UAAiB,IAAG0B,GAAAxB,EAAAA,EAAAA,GAAAuB,EAAA,GAA7CE,EAAQD,EAAA,GAAEE,EAAWF,EAAA,GAE5BG,GAA0B7B,EAAAA,EAAAA,UAAiB,IAAG8B,GAAA5B,EAAAA,EAAAA,GAAA2B,EAAA,GAAvCE,EAAKD,EAAA,GAAEE,EAAQF,EAAA,GACtBG,GAA4BjC,EAAAA,EAAAA,UAAiB,aAAYkC,GAAAhC,EAAAA,EAAAA,GAAA+B,EAAA,GAAlDE,EAAMD,EAAA,GAAEE,EAASF,EAAA,GACxBG,GAAgCrC,EAAAA,EAAAA,UAAiB,IAAGsC,GAAApC,EAAAA,EAAAA,GAAAmC,EAAA,GAA7CE,EAAQD,EAAA,GAAEE,EAAWF,EAAA,GAC5BG,GAAoCzC,EAAAA,EAAAA,UAAiB,IAAG0C,GAAAxC,EAAAA,EAAAA,GAAAuC,EAAA,GAAjDE,EAAUD,EAAA,GAAEE,EAAaF,EAAA,GAChCG,GAA8B7C,EAAAA,EAAAA,UAAiB,IAAG8C,GAAA5C,EAAAA,EAAAA,GAAA2C,EAAA,GAA3CE,GAAOD,EAAA,GAAEE,GAAUF,EAAA,GAiCpBG,IAAoBC,EAAAA,EAAAA,cAAY,WACpC,MAAM,GAAN1E,OAAU+C,EAAI,KAAA/C,OAAImD,EAAQ,SAAAnD,OAAQmC,EAAI,KAAAnC,OAAI2C,EAAI,MAAA3C,OAAKuC,EACrD,GAAG,CAACQ,EAAMI,EAAUhB,EAAMQ,EAAMJ,KAEhCoC,EAAAA,EAAAA,YAAU,WACU,KAAd5C,GAUFzD,EATmB,CACjB,CAAEsG,IAAK,aAAcrG,MAAOwD,GAC5B,CAAE6C,IAAK,QAASrG,MAAOgF,GACvB,CAAEqB,IAAK,SAAUrG,MAAOoF,GACxB,CAAEiB,IAAK,YAAarG,MAAOwF,GAC3B,CAAEa,IAAK,cAAerG,MAAO4F,GAC7B,CAAES,IAAK,UAAWrG,MAAOgG,KAK/B,GAAG,CAACxC,EAAWwB,EAAOI,EAAQI,EAAUI,EAAYI,GAASjG,KAE7DqG,EAAAA,EAAAA,YAAU,WACR,IAAME,EAAKJ,KACXzC,EAAa6C,EACf,GAAG,CAAC9B,EAAMR,EAAQY,EAAUR,EAAMR,EAAMH,EAAcyC,KA0BtD,OACE9E,EAAAA,EAAAA,MAACC,EAAAA,IAAI,CAACkF,WAAS,EAAApF,SAAA,EACbF,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,UAAWT,EAAQyF,aAAarF,UACjDF,EAAAA,EAAAA,KAACwF,EAAAA,IAAM,CACL3G,MAAO,mBACP4G,QAAStD,EACTnD,GAAG,WACHC,KAAK,WACLH,SAhCkB,SAAC4G,GACzB,GAAIA,EAAMC,OAAOF,QAAS,CAExB,IAAMJ,EAAKJ,KACXzC,EAAa6C,EACf,KAAO,CAEL,IAAMO,EAvDa,SACrBC,EACAC,GAMA,IAJA,IAEIC,EAFAC,EAAgC,IAAIC,IAClCC,EAAQ,2CAGqB,QAA3BH,EAAIG,EAAMC,KAAKN,KAEjBE,EAAExG,QAAU2G,EAAME,WACpBF,EAAME,YAGRJ,EAASK,IAAI,OAAQN,EAAE,IACvBC,EAASK,IAAI,WAAYN,EAAE,IAC3BC,EAASK,IAAI,OAAQN,EAAE,IACvBC,EAASK,IAAI,OAAQN,EAAE,IACvBC,EAASK,IAAI,SAAUN,EAAE,IAG3B,OAAOC,CACT,CAiCeM,CAAe/D,GAO1BK,EAAYgD,EAAGW,IAAI,QAAUX,EAAGW,IAAI,QAAU,GAAK,IACnDnD,EAAQwC,EAAGW,IAAI,QAAUX,EAAGW,IAAI,QAAU,GAAK,IAC/CvD,EAAU4C,EAAGW,IAAI,UAAYX,EAAGW,IAAI,UAAY,GAAK,IACrD/C,EAAQoC,EAAGW,IAAI,QAAUX,EAAGW,IAAI,QAAU,GAAK,IAC/C3C,EAAYgC,EAAGW,IAAI,YAAcX,EAAGW,IAAI,YAAc,GAAK,GAC7D,CAEAnE,EAAgBsD,EAAMC,OAAOF,QAC/B,EAWQ1G,MAAO,gBAGVoD,GACCnC,EAAAA,EAAAA,KAACC,EAAAA,SAAc,CAAAC,UACbF,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,UAAWT,EAAQyF,aAAarF,UACjDF,EAAAA,EAAAA,KAACwG,EAAAA,IAAQ,CACPxH,GAAG,aACHC,KAAK,aACLJ,MAAM,aACNE,MAAOwD,EACPzD,SAAU,SAAC2H,GACTjE,EAAaiE,EAAEd,OAAO5G,MACxB,SAKNoB,EAAAA,EAAAA,MAACF,EAAAA,SAAc,CAAAC,SAAA,EACbF,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAGJ,UAChBC,EAAAA,EAAAA,MAACuG,EAAAA,IAAG,CACFC,aAAW,EACXC,eAAa,EACbC,GAAI,CACFC,UAAW,OACXC,OAAQ,IACRC,aAAc,IACd9G,SAAA,EAEFF,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,UAAWT,EAAQyF,aAAarF,UACjDF,EAAAA,EAAAA,KAACwG,EAAAA,IAAQ,CACPxH,GAAG,OACHC,KAAK,OACLJ,MAAM,GACNgB,YAAY,aACZd,MAAO4D,EACP7D,SAAU,SAAC2H,GACT7D,EAAY6D,EAAEd,OAAO5G,MACvB,OAGJiB,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,UAAWT,EAAQyF,aAAarF,UACjDF,EAAAA,EAAAA,KAACwG,EAAAA,IAAQ,CACPxH,GAAG,UACHC,KAAK,UACLJ,MAAM,GACNgB,YAAY,gBACZd,MAAOgE,EACPjE,SAAU,SAAC2H,GACTzD,EAAUyD,EAAEd,OAAO5G,MACrB,OAGJiB,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,UAAWT,EAAQyF,aAAarF,UACjDF,EAAAA,EAAAA,KAACwG,EAAAA,IAAQ,CACPxH,GAAG,OACHC,KAAK,OACLJ,MAAM,GACNgB,YAAY,aACZd,MAAOoE,EACPrE,SAAU,SAAC2H,GACTrD,EAAQqD,EAAEd,OAAO5G,MACnB,OAIJiB,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,UAAWT,EAAQyF,aAAarF,UACjDF,EAAAA,EAAAA,KAACwG,EAAAA,IAAQ,CACPxH,GAAG,OACHC,KAAK,OACLJ,MAAM,GACNgB,YAAY,aACZd,MAAOwE,EACPzE,SAAU,SAAC2H,GACTjD,EAAQiD,EAAEd,OAAO5G,MACnB,OAGJiB,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,UAAWT,EAAQyF,aAAarF,UACjDF,EAAAA,EAAAA,KAACwG,EAAAA,IAAQ,CACPxH,GAAG,WACHC,KAAK,WACLJ,MAAM,GACNgB,YAAY,iBACZoH,KAAK,WACLlI,MAAO4E,EACP7E,SAAU,SAAC2H,GACT7C,EAAY6C,EAAEd,OAAO5G,MACvB,YAKRiB,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIuG,GAAI,CAAElJ,OAAQ,UAAWuC,UAC1CF,EAAAA,EAAAA,KAACkH,EAAAA,IAAO,CAACrI,MAAO,oBAAqBsI,WAAS,EAAAjH,SAC3CqC,UAKTvC,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,UAAWT,EAAQyF,aAAarF,UACjDF,EAAAA,EAAAA,KAACwG,EAAAA,IAAQ,CACPxH,GAAG,QACHC,KAAK,QACLJ,MAAM,QACNgB,YAAY,mBACZd,MAAOgF,EACP1E,QAAQ,8DACRP,SAAU,SAAC2H,GACTzC,EAASyC,EAAEd,OAAO5G,MACpB,OAGJiB,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,UAAWT,EAAQyF,aAAarF,UACjDF,EAAAA,EAAAA,KAACoH,EAAAA,IAAU,CACTC,aAAclD,EACdnF,GAAG,SACHC,KAAK,SACLJ,MAAM,SACNC,SAAU,SAAC2H,GACTrC,EAAUqC,EAAEd,OAAO5G,MACrB,EACAM,QAAQ,gIACRiI,gBAAiB,CACf,CAAEzI,MAAO,YAAaE,MAAO,aAC7B,CAAEF,MAAO,SAAUE,MAAO,gBAIhCiB,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,UAAWT,EAAQyF,aAAarF,UACjDF,EAAAA,EAAAA,KAACwG,EAAAA,IAAQ,CACPxH,GAAG,YACHC,KAAK,YACLJ,MAAM,YACNgB,YAAY,kBACZd,MAAOwF,EACPlF,QAAQ,iEACRP,SAAU,SAAC2H,GACTjC,EAAYiC,EAAEd,OAAO5G,MACvB,OAGJiB,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,UAAWT,EAAQyF,aAAarF,UACjDF,EAAAA,EAAAA,KAACwG,EAAAA,IAAQ,CACPxH,GAAG,cACHC,KAAK,cACLJ,MAAM,cACNgB,YAAY,oBACZoH,KAAK,SACLlI,MAAO4F,EACPtF,QAAQ,8DACRP,SAAU,SAAC2H,GACT7B,EAAc6B,EAAEd,OAAO5G,MACzB,OAGJiB,EAAAA,EAAAA,KAACI,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,UAAWT,EAAQyF,aAAarF,UACjDF,EAAAA,EAAAA,KAACuH,EAAAA,EAAiB,CAChBvI,GAAG,UACHC,KAAK,UACLJ,MAAM,UACNgB,YAAY,4BACZd,MAAOgG,GACPjG,SAAU,SAAC2H,GACTzB,GAAWyB,EAAEd,OAAO5G,MACtB,QAKV,G,4BCrTMyI,E,SAAkCvH,mBAAoBwH,GAI5D,K,wBCRe,SAASC,EAAgB9I,GAIrC,IAHD+I,EAAK/I,EAAL+I,MACAC,EAAMhJ,EAANgJ,OACAC,EAAcjJ,EAAdiJ,eAEA,OAAOD,EAAOE,QAAO,SAACC,EAAKC,GAOzB,OANAD,EAAIC,GAASL,EAAMK,GACfH,GAC0B,qBAAjBF,EAAMK,KACfD,EAAIC,GAASH,EAAeG,IAGzBD,CACT,GAAG,CAAC,EACN,C,iHCZe,SAASE,IACtB,OAAOhI,EAAAA,WAAiBuH,EAAAA,EAC1B,C,0KCFMU,EAAY,CAAC,WAAY,YAAa,QAAS,YAAa,WAAY,QAAS,SAAU,UAAW,YA4B/FC,GAAgBC,EAAAA,EAAAA,IAAO,QAAS,CAC3CnJ,KAAM,eACNoJ,KAAM,OACNC,kBAAmB,SAAA1J,EAEhB2J,GAAW,IADZC,EAAU5J,EAAV4J,WAEA,OAAOC,EAAAA,EAAAA,GAAS,CAAC,EAAGF,EAAO5G,KAA2B,cAArB6G,EAAW/J,OAAyB8J,EAAOG,eAAgBF,EAAWG,QAAUJ,EAAOI,OAC1H,GAP2BP,EAQ1B,SAAAQ,GAAA,IAAAC,EACDzL,EAAKwL,EAALxL,MACAoL,EAAUI,EAAVJ,WAAU,OACNC,EAAAA,EAAAA,GAAS,CACbhK,OAAQrB,EAAM0L,MAAQ1L,GAAO2L,QAAQC,KAAKC,WACzC7L,EAAM8L,WAAWC,OAAKN,EAAA,CACvBO,WAAY,WACZ/K,QAAS,EACTH,SAAU,aAAUmL,EAAAA,EAAAA,GAAAR,EAAA,KAAArI,OACd8I,EAAAA,EAAiBC,SAAY,CACjC9K,OAAQrB,EAAM0L,MAAQ1L,GAAO2L,QAAQP,EAAW/J,OAAO+K,QACxDH,EAAAA,EAAAA,GAAAR,EAAA,KAAArI,OACK8I,EAAAA,EAAiBnK,UAAa,CAClCV,OAAQrB,EAAM0L,MAAQ1L,GAAO2L,QAAQC,KAAK7J,YAC3CkK,EAAAA,EAAAA,GAAAR,EAAA,KAAArI,OACK8I,EAAAA,EAAiB7J,OAAU,CAC/BhB,OAAQrB,EAAM0L,MAAQ1L,GAAO2L,QAAQtJ,MAAM+J,OAC5CX,GACD,IACIY,GAAoBrB,EAAAA,EAAAA,IAAO,OAAQ,CACvCnJ,KAAM,eACNoJ,KAAM,WACNC,kBAAmB,SAACX,EAAOY,GAAM,OAAKA,EAAOmB,QAAQ,GAH7BtB,EAIvB,SAAAuB,GAAA,IACDvM,EAAKuM,EAALvM,MAAK,OAAAiM,EAAAA,EAAAA,GAAA,QAAA7I,OAEC8I,EAAAA,EAAiB7J,OAAU,CAC/BhB,OAAQrB,EAAM0L,MAAQ1L,GAAO2L,QAAQtJ,MAAM+J,MAC5C,IAEGI,EAAyB3J,EAAAA,YAAiB,SAAmB4J,EAASC,GAC1E,IAAMnC,GAAQoC,EAAAA,EAAAA,GAAc,CAC1BpC,MAAOkC,EACP5K,KAAM,iBAGJiB,EAGEyH,EAHFzH,SACAK,EAEEoH,EAFFpH,UAASyJ,EAEPrC,EADFsC,UAAAA,OAAS,IAAAD,EAAG,QAAOA,EAErBE,GAAQC,EAAAA,EAAAA,GAA8BxC,EAAOO,GACzCL,GAAiBI,EAAAA,EAAAA,KACjBmC,GAAM1C,EAAAA,EAAAA,GAAiB,CAC3BC,MAAAA,EACAE,eAAAA,EACAD,OAAQ,CAAC,QAAS,WAAY,UAAW,WAAY,QAAS,YAE1DY,GAAaC,EAAAA,EAAAA,GAAS,CAAC,EAAGd,EAAO,CACrClJ,MAAO2L,EAAI3L,OAAS,UACpBwL,UAAAA,EACA9K,SAAUiL,EAAIjL,SACdM,MAAO2K,EAAI3K,MACXkJ,OAAQyB,EAAIzB,OACZY,QAASa,EAAIb,QACb5J,SAAUyK,EAAIzK,WAEVG,EAhFkB,SAAA0I,GACxB,IACE1I,EAOE0I,EAPF1I,QACArB,EAME+J,EANF/J,MACA8K,EAKEf,EALFe,QACApK,EAIEqJ,EAJFrJ,SACAM,EAGE+I,EAHF/I,MACAkJ,EAEEH,EAFFG,OACAhJ,EACE6I,EADF7I,SAEI0K,EAAQ,CACZ1I,KAAM,CAAC,OAAQ,QAAFnB,QAAU8J,EAAAA,EAAAA,GAAW7L,IAAUU,GAAY,WAAYM,GAAS,QAASkJ,GAAU,SAAUY,GAAW,UAAW5J,GAAY,YAC5I+J,SAAU,CAAC,WAAYjK,GAAS,UAElC,OAAO8K,EAAAA,EAAAA,GAAeF,EAAOG,EAAAA,EAA4B1K,EAC3D,CAiEkB2K,CAAkBjC,GAClC,OAAoBrI,EAAAA,EAAAA,MAAMgI,GAAeM,EAAAA,EAAAA,GAAS,CAChDiC,GAAIT,EACJzB,WAAYA,EACZjI,WAAWoK,EAAAA,EAAAA,GAAK7K,EAAQ6B,KAAMpB,GAC9BuJ,IAAKA,GACJI,EAAO,CACRhK,SAAU,CAACA,EAAUkK,EAAIzK,WAAyBQ,EAAAA,EAAAA,MAAMsJ,EAAmB,CACzEjB,WAAYA,EACZ,eAAe,EACfjI,UAAWT,EAAQ4J,SACnBxJ,SAAU,CAAC,SAAU,UAG3B,IAsDA,K,kFChKO,SAASsK,EAA2BnC,GACzC,OAAOuC,EAAAA,EAAAA,GAAqB,eAAgBvC,EAC9C,CACA,IAAMiB,GAAmBuB,EAAAA,EAAAA,GAAuB,eAAgB,CAAC,OAAQ,iBAAkB,UAAW,WAAY,QAAS,SAAU,WAAY,aACjJ,K,qNCJO,SAASC,EAA4BzC,GAC1C,OAAOuC,EAAAA,EAAAA,GAAqB,gBAAiBvC,EAC/C,EAC0BwC,EAAAA,EAAAA,GAAuB,gBAAiB,CAAC,OAAQ,UAAW,WAAY,QAAS,WAAY,WAAY,cAAe,YAAa,SAAU,WAAY,WAAY,SAAU,aAA3M,I,WCHM3C,EAAY,CAAC,mBAAoB,SAAU,SAAU,UAAW,aA6BhE6C,GAAiB3C,EAAAA,EAAAA,IAAOwB,EAAAA,EAAW,CACvCoB,kBAAmB,SAAAC,GAAI,OAAIC,EAAAA,EAAAA,IAAsBD,IAAkB,YAATA,CAAkB,EAC5EhM,KAAM,gBACNoJ,KAAM,OACNC,kBAAmB,SAACX,EAAOY,GACzB,IACEC,EACEb,EADFa,WAEF,MAAO,EAAAa,EAAAA,EAAAA,GAAA,SAAA7I,OACE8I,EAAAA,EAAiBI,UAAanB,EAAOmB,UAC3CnB,EAAO5G,KAAM6G,EAAW2C,aAAe5C,EAAO4C,YAAiC,UAApB3C,EAAW4C,MAAoB7C,EAAO8C,UAAW7C,EAAWhH,QAAU+G,EAAO/G,QAASgH,EAAW8C,kBAAoB/C,EAAOgD,SAAUhD,EAAOC,EAAW5G,SACxN,GAXqBwG,EAYpB,SAAAQ,GAAA,IACDxL,EAAKwL,EAALxL,MACAoL,EAAUI,EAAVJ,WAAU,OACNC,EAAAA,EAAAA,GAAS,CACb1K,QAAS,QACTyN,gBAAiB,WACjBC,WAAY,SACZC,SAAU,SACVC,aAAc,WACdC,SAAU,QACTpD,EAAW2C,aAAe,CAC3BjN,SAAU,WACV2N,KAAM,EACNC,IAAK,EAELC,UAAW,+BACU,UAApBvD,EAAW4C,MAAoB,CAEhCW,UAAW,+BACVvD,EAAWhH,QAAU,CACtBuK,UAAW,mCACXP,gBAAiB,WACjBI,SAAU,SACRpD,EAAW8C,kBAAoB,CACjCU,WAAY5O,EAAM6O,YAAYC,OAAO,CAAC,QAAS,YAAa,aAAc,CACxEC,SAAU/O,EAAM6O,YAAYE,SAASC,QACrCC,OAAQjP,EAAM6O,YAAYI,OAAOC,WAEX,WAAvB9D,EAAW5G,UAAwB6G,EAAAA,EAAAA,GAAS,CAK7C8D,OAAQ,EACRC,cAAe,OACfT,UAAW,iCACXH,SAAU,qBACW,UAApBpD,EAAW4C,MAAoB,CAChCW,UAAW,kCACVvD,EAAWhH,SAAUiH,EAAAA,EAAAA,GAAS,CAC/BgE,WAAY,OACZD,cAAe,OACfT,UAAW,mCACXH,SAAU,qBACW,UAApBpD,EAAW4C,MAAoB,CAChCW,UAAW,sCACe,aAAvBvD,EAAW5G,UAA0B6G,EAAAA,EAAAA,GAAS,CAEjD8D,OAAQ,EACRC,cAAe,OACfT,UAAW,iCACXH,SAAU,qBACW,UAApBpD,EAAW4C,MAAoB,CAChCW,UAAW,iCACVvD,EAAWhH,QAAU,CACtBiL,WAAY,OACZD,cAAe,OAGfZ,SAAU,oBACVG,UAAW,sCACV,IA2GH,EA1GgC9L,EAAAA,YAAiB,SAAoB4J,EAASC,GAC5E,IAAMnC,GAAQoC,EAAAA,EAAAA,GAAc,CAC1B9K,KAAM,gBACN0I,MAAOkC,IAET6C,EAIM/E,EAHF2D,iBAAAA,OAAgB,IAAAoB,GAAQA,EAChBC,EAENhF,EAFFnG,OACAjB,EACEoH,EADFpH,UAEF2J,GAAQC,EAAAA,EAAAA,GAA8BxC,EAAOO,GACzCL,GAAiBI,EAAAA,EAAAA,KACnBzG,EAASmL,EACS,qBAAXnL,GAA0BqG,IACnCrG,EAASqG,EAAec,QAAUd,EAAe0B,SAAW1B,EAAe+E,cAE7E,IAAMxC,GAAM1C,EAAAA,EAAAA,GAAiB,CAC3BC,MAAAA,EACAE,eAAAA,EACAD,OAAQ,CAAC,OAAQ,UAAW,cAExBY,GAAaC,EAAAA,EAAAA,GAAS,CAAC,EAAGd,EAAO,CACrC2D,iBAAAA,EACAH,YAAatD,EACbrG,OAAAA,EACA4J,KAAMhB,EAAIgB,KACVxJ,QAASwI,EAAIxI,QACbjC,SAAUyK,EAAIzK,WAEVG,EAxHkB,SAAA0I,GACxB,IACE1I,EAOE0I,EAPF1I,QACAqL,EAME3C,EANF2C,YACAC,EAKE5C,EALF4C,KACA5J,EAIEgH,EAJFhH,OAKI6I,EAAQ,CACZ1I,KAAM,CAAC,OAAQwJ,GAAe,eAF5B3C,EAHF8C,kBAKkE,WAAY9J,GAAU,SAAmB,UAAT4J,GAAoB,YAFpH5C,EAFF5G,SAKA8H,SAAU,CAHRlB,EADF7I,UAIuB,aAEnBkN,GAAkBtC,EAAAA,EAAAA,GAAeF,EAAOS,EAA6BhL,GAC3E,OAAO2I,EAAAA,EAAAA,GAAS,CAAC,EAAG3I,EAAS+M,EAC/B,CAwGkBpC,CAAkBjC,GAClC,OAAoBxI,EAAAA,EAAAA,KAAK+K,GAAgBtC,EAAAA,EAAAA,GAAS,CAChD,cAAejH,EACfgH,WAAYA,EACZsB,IAAKA,EACLvJ,WAAWoK,EAAAA,EAAAA,GAAK7K,EAAQ6B,KAAMpB,IAC7B2J,EAAO,CACRpK,QAASA,IAEb,G,uEC9IA,MCAe,SAAsBgN,EAASC,GAC5C,OAAoB9M,EAAAA,eAAqB6M,KAAwD,IAA5CC,EAASC,QAAQF,EAAQ7F,KAAKgG,QACrF,C,wBCGe,SAASC,IAAgC,QAAAC,EAAAC,UAAAC,OAAPC,EAAK,IAAAC,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAALF,EAAKE,GAAAJ,UAAAI,GACpD,OAAOF,EAAMxF,QAAO,SAACC,EAAK0F,GACxB,OAAY,MAARA,EACK1F,EAEF,WAAkC,QAAA2F,EAAAN,UAAAC,OAANM,EAAI,IAAAJ,MAAAG,GAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAAJD,EAAIC,GAAAR,UAAAQ,GACrC7F,EAAI8F,MAAMC,KAAMH,GAChBF,EAAKI,MAAMC,KAAMH,EACnB,CACF,IAAG,WAAO,GACZ,C","sources":["screens/Console/Common/FormComponents/CommentBoxWrapper/CommentBoxWrapper.tsx","screens/Console/EventDestinations/CustomForms/ConfMySql.tsx","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@mui/utils/esm/createChainedFunction.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Grid, InputLabel, TextField, Tooltip } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\ninterface CommentBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n inputLabel: {\n ...fieldBasic.inputLabel,\n fontSize: 14,\n margin: 0,\n alignItems: \"flex-start\",\n paddingTop: \"20px\",\n flexWrap: \"wrap\",\n display: \"flex\",\n },\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n cssOutlinedInput: {\n borderColor: \"#EAEAEA\",\n padding: 16,\n },\n rootContainer: {\n \"& .MuiOutlinedInput-inputMultiline\": {\n ...fieldBasic.inputLabel,\n fontSize: 13,\n minHeight: 150,\n },\n \"&.Mui-focused .MuiOutlinedInput-notchedOutline\": {\n borderColor: \"#07193E\",\n borderWidth: 1,\n },\n \"& textarea\": {\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n \"&:placeholder\": {\n color: \"#858585\",\n opacity: 1,\n fontWeight: 400,\n },\n },\n },\n });\n\nconst CommentBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n disabled = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n classes,\n}: CommentBoxProps) => {\n let inputProps: any = { \"data-index\": index };\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n\n
\n \n
\n \n
\n );\n};\n\nexport default withStyles(styles)(CommentBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useCallback, useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { IElementValue } from \"../../Configurations/types\";\nimport {\n formFieldStyles,\n modalBasic,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport CommentBoxWrapper from \"../../Common/FormComponents/CommentBoxWrapper/CommentBoxWrapper\";\nimport { Switch, InputBox, Grid, Box, ReadBox, RadioGroup } from \"mds\";\n\ninterface IConfMySqlProps {\n onChange: (newValue: IElementValue[]) => void;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalBasic,\n ...formFieldStyles,\n });\n\nconst ConfMySql = ({ onChange, classes }: IConfMySqlProps) => {\n //Local States\n const [useDsnString, setUseDsnString] = useState(false);\n const [dsnString, setDsnString] = useState(\"\");\n const [host, setHostname] = useState(\"\");\n const [dbName, setDbName] = useState(\"\");\n const [port, setPort] = useState(\"\");\n const [user, setUser] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n\n const [table, setTable] = useState(\"\");\n const [format, setFormat] = useState(\"namespace\");\n const [queueDir, setQueueDir] = useState(\"\");\n const [queueLimit, setQueueLimit] = useState(\"\");\n const [comment, setComment] = useState(\"\");\n\n // dsn_string* (string) MySQL data-source-name connection string e.g. \":@tcp(:)/\"\n // table* (string) DB table name to store/update events, table is auto-created\n // format* (namespace*|access) 'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\n // queue_dir (path) staging dir for undelivered messages e.g. '/home/events'\n // queue_limit (number) maximum limit for undelivered messages, defaults to '100000'\n // comment (sentence) optionally add a comment to this setting\n\n const parseDsnString = (\n input: string,\n keys: string[],\n ): Map => {\n let kvFields: Map = new Map();\n const regex = /(.*?):(.*?)@tcp\\((.*?):(.*?)\\)\\/(.*?)$/gm;\n let m;\n\n while ((m = regex.exec(input)) !== null) {\n // This is necessary to avoid infinite loops with zero-width matches\n if (m.index === regex.lastIndex) {\n regex.lastIndex++;\n }\n\n kvFields.set(\"user\", m[1]);\n kvFields.set(\"password\", m[2]);\n kvFields.set(\"host\", m[3]);\n kvFields.set(\"port\", m[4]);\n kvFields.set(\"dbname\", m[5]);\n }\n\n return kvFields;\n };\n\n const configToDsnString = useCallback((): string => {\n return `${user}:${password}@tcp(${host}:${port})/${dbName}`;\n }, [user, password, host, port, dbName]);\n\n useEffect(() => {\n if (dsnString !== \"\") {\n const formValues = [\n { key: \"dsn_string\", value: dsnString },\n { key: \"table\", value: table },\n { key: \"format\", value: format },\n { key: \"queue_dir\", value: queueDir },\n { key: \"queue_limit\", value: queueLimit },\n { key: \"comment\", value: comment },\n ];\n\n onChange(formValues);\n }\n }, [dsnString, table, format, queueDir, queueLimit, comment, onChange]);\n\n useEffect(() => {\n const cs = configToDsnString();\n setDsnString(cs);\n }, [user, dbName, password, port, host, setDsnString, configToDsnString]);\n\n const switcherChangeEvt = (event: React.ChangeEvent) => {\n if (event.target.checked) {\n // build dsn_string\n const cs = configToDsnString();\n setDsnString(cs);\n } else {\n // parse dsn_string\n const kv = parseDsnString(dsnString, [\n \"host\",\n \"port\",\n \"dbname\",\n \"user\",\n \"password\",\n ]);\n setHostname(kv.get(\"host\") ? kv.get(\"host\") + \"\" : \"\");\n setPort(kv.get(\"port\") ? kv.get(\"port\") + \"\" : \"\");\n setDbName(kv.get(\"dbname\") ? kv.get(\"dbname\") + \"\" : \"\");\n setUser(kv.get(\"user\") ? kv.get(\"user\") + \"\" : \"\");\n setPassword(kv.get(\"password\") ? kv.get(\"password\") + \"\" : \"\");\n }\n\n setUseDsnString(event.target.checked);\n };\n\n return (\n \n \n \n \n {useDsnString ? (\n \n \n ) => {\n setDsnString(e.target.value);\n }}\n />\n \n \n ) : (\n \n \n \n \n ) => {\n setHostname(e.target.value);\n }}\n />\n \n \n ) => {\n setDbName(e.target.value);\n }}\n />\n \n \n ) => {\n setPort(e.target.value);\n }}\n />\n \n\n \n ) => {\n setUser(e.target.value);\n }}\n />\n \n \n ) => {\n setPassword(e.target.value);\n }}\n />\n \n \n \n \n \n {dsnString}\n \n \n \n )}\n \n ) => {\n setTable(e.target.value);\n }}\n />\n \n \n {\n setFormat(e.target.value);\n }}\n tooltip=\"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\"\n selectorOptions={[\n { label: \"Namespace\", value: \"namespace\" },\n { label: \"Access\", value: \"access\" },\n ]}\n />\n \n \n ) => {\n setQueueDir(e.target.value);\n }}\n />\n \n \n ) => {\n setQueueLimit(e.target.value);\n }}\n />\n \n \n ) => {\n setComment(e.target.value);\n }}\n />\n \n \n );\n};\n\nexport default withStyles(styles)(ConfMySql);\n","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}"],"names":["withStyles","theme","createStyles","_objectSpread","fieldBasic","tooltipHelper","inputLabel","fontSize","margin","alignItems","paddingTop","flexWrap","display","textBoxContainer","flexGrow","position","cssOutlinedInput","borderColor","padding","rootContainer","minHeight","borderWidth","color","fontWeight","opacity","_ref","label","onChange","value","id","name","_ref$disabled","disabled","_ref$tooltip","tooltip","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","placeholder","classes","inputProps","_jsx","React","children","_jsxs","Grid","item","xs","className","concat","fieldContainer","errorInField","InputLabel","htmlFor","tooltipContainer","Tooltip","title","placement","HelpIcon","TextField","fullWidth","multiline","rows","helperText","InputLabelProps","shrink","InputProps","notchedOutline","root","variant","modalBasic","formFieldStyles","_useState","useState","_useState2","_slicedToArray","useDsnString","setUseDsnString","_useState3","_useState4","dsnString","setDsnString","_useState5","_useState6","host","setHostname","_useState7","_useState8","dbName","setDbName","_useState9","_useState10","port","setPort","_useState11","_useState12","user","setUser","_useState13","_useState14","password","setPassword","_useState15","_useState16","table","setTable","_useState17","_useState18","format","setFormat","_useState19","_useState20","queueDir","setQueueDir","_useState21","_useState22","queueLimit","setQueueLimit","_useState23","_useState24","comment","setComment","configToDsnString","useCallback","useEffect","key","cs","container","formFieldRow","Switch","checked","event","target","kv","input","keys","m","kvFields","Map","regex","exec","lastIndex","set","parseDsnString","get","InputBox","e","Box","withBorders","useBackground","sx","overflowY","height","marginBottom","type","ReadBox","multiLine","RadioGroup","currentValue","selectorOptions","CommentBoxWrapper","FormControlContext","undefined","formControlState","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","slot","overridesResolver","styles","ownerState","_extends","colorSecondary","filled","_ref2","_extends2","vars","palette","text","secondary","typography","body1","lineHeight","_defineProperty","formLabelClasses","focused","main","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","disableAnimation","animated","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","element","muiNames","indexOf","muiName","createChainedFunction","_len","arguments","length","funcs","Array","_key","func","_len2","args","_key2","apply","this"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2512.3225c7da.chunk.js b/portal-ui/build/static/js/2512.3225c7da.chunk.js deleted file mode 100644 index 377b0f0ba..000000000 --- a/portal-ui/build/static/js/2512.3225c7da.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2512],{32512:function(e,t,n){n.r(t),n.d(t,{default:function(){return E}});var a=n(93433),i=n(29439),o=n(1413),r=n(72791),c=n(78687),l=n(29945),s=n(11135),d=n(25787),u=n(61889),h=n(23814),p=n(38442),m=n(56087),x=n(81207),f=n(92983),v=n(60680),Z=n(75578),g=n(56028),b=n(21435),j=n(17420),S=n(64163),k=n(81159),C=n(87995),y=n(81551),N=n(31776),w=n(82342),R=n(80184),P=(0,d.Z)((function(e){return(0,s.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},h.bK),h.QV),h.DF),h.ID),{},{modalFormScrollable:(0,o.Z)((0,o.Z)({},h.ID.modalFormScrollable),{},{paddingRight:10})}))}))((function(e){var t=e.closeModalAndRefresh,n=e.open,a=e.classes,o=e.bucketName,c=e.ruleID,s=(0,y.TL)(),d=(0,r.useState)(!0),h=(0,i.Z)(d,2),p=h[0],m=h[1],x=(0,r.useState)(!1),f=(0,i.Z)(x,2),v=f[0],Z=f[1],P=(0,r.useState)("1"),F=(0,i.Z)(P,2),I=F[0],T=F[1],A=(0,r.useState)(""),O=(0,i.Z)(A,2),E=O[0],_=O[1],z=(0,r.useState)(""),M=(0,i.Z)(z,2),B=M[0],D=M[1],L=(0,r.useState)(!1),U=(0,i.Z)(L,2),G=U[0],K=U[1],H=(0,r.useState)(!1),W=(0,i.Z)(H,2),q=W[0],V=W[1],Y=(0,r.useState)(""),X=(0,i.Z)(Y,2),$=X[0],Q=X[1],J=(0,r.useState)(""),ee=(0,i.Z)(J,2),te=ee[0],ne=ee[1],ae=(0,r.useState)(""),ie=(0,i.Z)(ae,2),oe=ie[0],re=ie[1],ce=(0,r.useState)(!1),le=(0,i.Z)(ce,2),se=le[0],de=le[1],ue=(0,r.useState)(!1),he=(0,i.Z)(ue,2),pe=he[0],me=he[1],xe=(0,r.useState)(!1),fe=(0,i.Z)(xe,2),ve=fe[0],Ze=fe[1];return(0,r.useEffect)((function(){p&&N.h.buckets.getBucketReplicationRule(o,c).then((function(e){var t;T(e.data.priority?e.data.priority.toString():"");var n=e.data.prefix||"",a=e.data.tags||"";D(n),Q(a),ne(a),_((null===(t=e.data.destination)||void 0===t?void 0:t.bucket)||""),K(e.data.delete_marker_replication||!1),re(e.data.storageClass||""),de(!!e.data.existingObjects),me(!!e.data.deletes_replication),Ze("Enabled"===e.data.status),V(!!e.data.metadata_replication),m(!1)})).catch((function(e){s((0,C.zb)((0,w.g)(e.error))),m(!1)}))}),[p,s,o,c]),(0,r.useEffect)((function(){if(v){var e={arn:E,ruleState:ve,prefix:B,tags:te,replicateDeleteMarkers:G,replicateDeletes:pe,replicateExistingObjects:se,replicateMetadata:q,priority:parseInt(I),storageClass:oe};N.h.buckets.updateMultiBucketReplication(o,c,e).then((function(){Z(!1),t(!0)})).catch((function(e){s((0,C.zb)((0,w.g)(e.error))),Z(!1)}))}}),[v,o,c,E,B,te,G,I,pe,se,ve,q,oe,t,s]),(0,R.jsx)(g.Z,{modalOpen:n,onClose:function(){t(!1)},title:"Edit Bucket Replication",titleIcon:(0,R.jsx)(l.xRg,{}),children:(0,R.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),Z(!0)},children:(0,R.jsxs)(u.ZP,{container:!0,children:[(0,R.jsxs)(u.ZP,{item:!0,xs:12,className:a.modalFormScrollable,children:[(0,R.jsx)(u.ZP,{item:!0,xs:12,className:a.formFieldRow,children:(0,R.jsx)(k.Z,{checked:ve,id:"ruleState",name:"ruleState",label:"Rule State",onChange:function(e){Ze(e.target.checked)},value:ve})}),(0,R.jsx)(u.ZP,{item:!0,xs:12,className:a.formFieldRow,children:(0,R.jsx)(S.Z,{label:"Destination",content:E})}),(0,R.jsx)(u.ZP,{item:!0,xs:12,className:a.formFieldRow,children:(0,R.jsx)(b.Z,{id:"priority",name:"priority",onChange:function(e){e.target.validity.valid&&T(e.target.value)},label:"Priority",value:I,pattern:"[0-9]*"})}),(0,R.jsx)(u.ZP,{item:!0,xs:12,className:"".concat(a.spacerTop," ").concat(a.formFieldRow),children:(0,R.jsx)(b.Z,{id:"storageClass",name:"storageClass",onChange:function(e){re(e.target.value)},placeholder:"STANDARD_IA,REDUCED_REDUNDANCY etc",label:"Storage Class",value:oe})}),(0,R.jsx)(u.ZP,{item:!0,xs:12,children:(0,R.jsxs)("fieldset",{className:a.fieldGroup,children:[(0,R.jsx)("legend",{className:a.descriptionText,children:"Object Filters"}),(0,R.jsx)(u.ZP,{item:!0,xs:12,className:a.formFieldRow,children:(0,R.jsx)(b.Z,{id:"prefix",name:"prefix",onChange:function(e){D(e.target.value)},placeholder:"prefix",label:"Prefix",value:B})}),(0,R.jsx)(u.ZP,{item:!0,xs:12,className:a.formFieldRow,children:(0,R.jsx)(j.Z,{name:"tags",label:"Tags",elements:$,onChange:function(e){ne(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})})]})}),(0,R.jsx)(u.ZP,{item:!0,xs:12,children:(0,R.jsxs)("fieldset",{className:a.fieldGroup,children:[(0,R.jsx)("legend",{className:a.descriptionText,children:"Replication Options"}),(0,R.jsx)(u.ZP,{item:!0,xs:12,className:a.formFieldRow,children:(0,R.jsx)(k.Z,{checked:se,id:"repExisting",name:"repExisting",label:"Existing Objects",onChange:function(e){de(e.target.checked)},value:se,description:"Replicate existing objects"})}),(0,R.jsx)(k.Z,{checked:q,id:"metadatataSync",name:"metadatataSync",label:"Metadata Sync",onChange:function(e){V(e.target.checked)},value:q,description:"Metadata Sync"}),(0,R.jsx)(u.ZP,{item:!0,xs:12,className:a.formFieldRow,children:(0,R.jsx)(k.Z,{checked:G,id:"deleteMarker",name:"deleteMarker",label:"Delete Marker",onChange:function(e){K(e.target.checked)},value:G,description:"Replicate soft deletes"})}),(0,R.jsx)(u.ZP,{item:!0,xs:12,className:a.formFieldRow,children:(0,R.jsx)(k.Z,{checked:pe,id:"repDelete",name:"repDelete",label:"Deletes",onChange:function(e){me(e.target.checked)},value:pe,description:"Replicate versioned deletes"})})]})})]}),(0,R.jsxs)(u.ZP,{item:!0,xs:12,className:a.modalButtonBar,children:[(0,R.jsx)(l.zxk,{id:"cancel-edit-replication",type:"button",variant:"regular",disabled:p||v,onClick:function(){t(!1)},label:"Cancel"}),(0,R.jsx)(l.zxk,{id:"save-replication",type:"submit",variant:"callAction",disabled:p||v,label:"Save"})]})]})})})})),F=n(9859),I=n(57689),T=n(27454),A=(0,Z.Z)(r.lazy((function(){return n.e(889).then(n.bind(n,20889))}))),O=(0,Z.Z)(r.lazy((function(){return n.e(9088).then(n.bind(n,69088))}))),E=(0,d.Z)((function(e){return(0,s.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},h.qg),h.OR),{},{twHeight:{minHeight:400}}))}))((function(e){var t=e.classes,n=(0,y.TL)(),o=(0,I.UO)(),s=(0,c.v9)(F.HQ),d=(0,r.useState)(!0),h=(0,i.Z)(d,2),Z=h[0],g=h[1],b=(0,r.useState)([]),j=(0,i.Z)(b,2),S=j[0],k=j[1],N=(0,r.useState)(!1),w=(0,i.Z)(N,2),E=w[0],_=w[1],z=(0,r.useState)(!1),M=(0,i.Z)(z,2),B=M[0],D=M[1],L=(0,r.useState)(!1),U=(0,i.Z)(L,2),G=U[0],K=U[1],H=(0,r.useState)(""),W=(0,i.Z)(H,2),q=W[0],V=W[1],Y=(0,r.useState)([]),X=(0,i.Z)(Y,2),$=X[0],Q=X[1],J=(0,r.useState)(!1),ee=(0,i.Z)(J,2),te=ee[0],ne=ee[1],ae=o.bucketName||"",ie=(0,p.F)(ae,[m.Ft.S3_GET_REPLICATION_CONFIGURATION,m.Ft.S3_GET_ACTIONS]);(0,r.useEffect)((function(){n((0,C.Sc)("bucket_detail_replication"))}),[]),(0,r.useEffect)((function(){s&&g(!0)}),[s,g]),(0,r.useEffect)((function(){Z&&(ie?x.Z.invoke("GET","/api/v1/buckets/".concat(ae,"/replication")).then((function(e){var t=e.rules?e.rules:[];t.sort((function(e,t){return e.priority-t.priority})),k(t),g(!1)})).catch((function(e){n((0,C.Ih)(e)),g(!1)})):g(!1))}),[Z,n,ae,ie]);var oe=function(){D(arguments.length>0&&void 0!==arguments[0]&&arguments[0])},re=[{type:"delete",onClick:function(e){V(e.id),ne(!1),_(!0)}},{type:"view",onClick:function(e){V(e.id),K(!0)},disableButtonFunction:!(0,p.F)(ae,[m.Ft.S3_PUT_REPLICATION_CONFIGURATION,m.Ft.S3_PUT_ACTIONS],!0)}];return(0,R.jsxs)(r.Fragment,{children:[B&&(0,R.jsx)(A,{closeModalAndRefresh:function(){oe(!1),g(!0)},open:B,bucketName:ae,setReplicationRules:S}),E&&(0,R.jsx)(O,{deleteOpen:E,selectedBucket:ae,closeDeleteModalAndRefresh:function(e){_(!1),e&&g(!0)},ruleToDelete:q,rulesToDelete:$,remainingRules:S.length,allSelected:S.length>0&&$.length===S.length,deleteSelectedRules:te}),G&&(0,R.jsx)(P,{closeModalAndRefresh:function(e){K(!1),e&&g(!0)},open:G,bucketName:ae,ruleID:q}),(0,R.jsxs)(u.ZP,{container:!0,children:[(0,R.jsxs)(u.ZP,{item:!0,xs:12,className:t.actionsTray,children:[(0,R.jsx)(v.Z,{children:"Replication"}),(0,R.jsxs)("div",{style:{display:"flex"},children:[(0,R.jsx)(p.s,{scopes:[m.Ft.S3_PUT_REPLICATION_CONFIGURATION,m.Ft.S3_PUT_ACTIONS],resource:ae,matchAll:!0,errorProps:{disabled:!0},children:(0,R.jsx)(T.Z,{tooltip:"Remove Selected Replication Rules",children:(0,R.jsx)(l.zxk,{id:"remove-bucket-replication-rule",onClick:function(){V("selectedRules"),ne(!0),_(!0)},label:"Remove Selected Rules",icon:(0,R.jsx)(l.XHJ,{}),color:"secondary",disabled:0===$.length||0===S.length,variant:"secondary"})})}),(0,R.jsx)(p.s,{scopes:[m.Ft.S3_PUT_REPLICATION_CONFIGURATION,m.Ft.S3_PUT_ACTIONS],resource:ae,matchAll:!0,errorProps:{disabled:!0},children:(0,R.jsx)(T.Z,{tooltip:"Add Replication Rule",children:(0,R.jsx)(l.zxk,{id:"add-bucket-replication-rule",onClick:function(){oe(!0)},label:"Add Replication Rule",icon:(0,R.jsx)(l.dtP,{}),variant:"callAction"})})})]})]}),(0,R.jsx)(u.ZP,{item:!0,xs:12,children:(0,R.jsx)(p.s,{scopes:[m.Ft.S3_GET_REPLICATION_CONFIGURATION,m.Ft.S3_GET_ACTIONS],resource:ae,errorProps:{disabled:!0},children:(0,R.jsx)(f.Z,{itemActions:re,columns:[{label:"Priority",elementKey:"priority",width:55,contentTextAlign:"center"},{label:"Destination",elementKey:"destination",renderFunction:function(e){return(0,R.jsx)(r.Fragment,{children:e.bucket.replace("arn:aws:s3:::","")})}},{label:"Prefix",elementKey:"prefix",width:200},{label:"Tags",elementKey:"tags",renderFunction:function(e){return(0,R.jsx)(r.Fragment,{children:e&&""!==e.tags?"Yes":"No"})},width:60},{label:"Status",elementKey:"status",width:100}],isLoading:Z,records:S,entityName:"Replication Rules",idField:"id",customPaperHeight:t.twHeight,textSelectable:!0,selectedItems:$,onSelect:function(e){return function(e){var t=e.target,n=t.value,i=t.checked,o=(0,a.Z)($);return i?o.push(n):o=o.filter((function(e){return e!==n})),Q(o),o}(e)},onSelectAll:function(){$.length!==S.length?Q(S.map((function(e){return e.id}))):Q([])}})})}),(0,R.jsxs)(u.ZP,{item:!0,xs:12,children:[(0,R.jsx)("br",{}),(0,R.jsx)(l.KfX,{title:"Replication",iconComponent:(0,R.jsx)(l.wNb,{}),help:(0,R.jsxs)(r.Fragment,{children:["MinIO supports server-side and client-side replication of objects between source and destination buckets.",(0,R.jsx)("br",{}),(0,R.jsx)("br",{}),"You can learn more at our"," ",(0,R.jsx)("a",{href:"https://min.io/docs/minio/linux/administration/bucket-replication.html?ref=con",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})]})]})]})}))},81159:function(e,t,n){var a=n(4942),i=n(1413),o=n(72791),r=n(11135),c=n(25787),l=n(9955),s=n(30829),d=n(20068),u=n(20890),h=n(61889),p=n(23814),m=n(29945),x=n(28182),f=n(80184),v=(0,c.Z)((function(e){return{root:{width:50,height:24,padding:0,margin:0},switchBase:{padding:1,"&$checked":{transform:"translateX(24px)",color:e.palette.common.white,"& + $track":{backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,border:"none"}},"&$focusVisible $thumb":{color:"#4CCB92",border:"6px solid #fff"}},thumb:{width:22,height:22,backgroundColor:"#FAFAFA",border:"2px solid #FFFFFF",marginLeft:1},track:{borderRadius:12,backgroundColor:"#E2E2E2",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,transition:e.transitions.create(["background-color","border"])},checked:{},focusVisible:{},switchContainer:{display:"flex",alignItems:"center",justifyContent:"flex-end"}}}))(l.Z);t.Z=(0,c.Z)((function(e){return(0,r.Z)((0,i.Z)((0,i.Z)({indicatorLabelOn:{fontWeight:"bold",color:"#081C42 !important"},indicatorLabel:{fontSize:12,color:"#E2E2E2",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"},tooltip:{fontSize:16}},p.OR),p.YI))}))((function(e){var t=e.label,n=void 0===t?"":t,r=e.onChange,c=e.value,l=e.id,p=e.name,Z=e.checked,g=void 0!==Z&&Z,b=e.disabled,j=void 0!==b&&b,S=e.switchOnly,k=void 0!==S&&S,C=e.tooltip,y=void 0===C?"":C,N=e.description,w=void 0===N?"":N,R=e.classes,P=e.indicatorLabels,F=e.extraInputProps,I=void 0===F?{}:F,T=(0,f.jsxs)(o.Fragment,{children:[!k&&(0,f.jsx)("span",{className:(0,x.Z)(R.indicatorLabel,(0,a.Z)({},R.indicatorLabelOn,!g)),children:P&&P.length>1?P[1]:"OFF"}),(0,f.jsx)(v,{checked:g,onChange:r,color:"primary",name:p,inputProps:(0,i.Z)({"aria-label":"primary checkbox"},I),disabled:j,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:c,id:l}),!k&&(0,f.jsx)("span",{className:(0,x.Z)(R.indicatorLabel,(0,a.Z)({},R.indicatorLabelOn,g)),children:P?P[0]:"ON"})]});return k?T:(0,f.jsx)("div",{children:(0,f.jsxs)(h.ZP,{container:!0,alignItems:"center",children:[(0,f.jsx)(h.ZP,{item:!0,xs:12,sm:8,md:8,children:""!==n&&(0,f.jsxs)(s.Z,{htmlFor:l,className:R.inputLabel,children:[(0,f.jsx)("span",{children:n}),""!==y&&(0,f.jsx)("div",{className:R.tooltipContainer,children:(0,f.jsx)(d.Z,{title:y,placement:"top-start",children:(0,f.jsx)("div",{className:R.tooltip,children:(0,f.jsx)(m.byK,{})})})})]})}),(0,f.jsx)(h.ZP,{item:!0,xs:12,sm:""!==n?4:12,md:""!==n?4:12,textAlign:"right",justifyContent:"end",className:R.switchContainer,children:T}),""!==w&&(0,f.jsx)(h.ZP,{item:!0,xs:12,textAlign:"left",children:(0,f.jsx)(u.Z,{component:"p",className:R.fieldDescription,children:w})})]})})}))},21435:function(e,t,n){var a=n(29439),i=n(1413),o=n(72791),r=n(27391),c=n(61889),l=n(30829),s=n(20068),d=n(13400),u=n(20165),h=n(3579),p=n(11135),m=n(72455),x=n(25787),f=n(23814),v=n(29945),Z=n(28182),g=n(80184),b=(0,m.Z)((function(e){return(0,p.Z)((0,i.Z)({},f.gM))}));function j(e){var t=b();return(0,g.jsx)(r.Z,(0,i.Z)({InputProps:{classes:t}},e))}t.Z=(0,x.Z)((function(e){return(0,p.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},f.YI),f.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var t=e.label,n=e.onChange,r=e.value,p=e.id,m=e.name,x=e.type,f=void 0===x?"text":x,b=e.autoComplete,S=void 0===b?"off":b,k=e.disabled,C=void 0!==k&&k,y=e.multiline,N=void 0!==y&&y,w=e.tooltip,R=void 0===w?"":w,P=e.index,F=void 0===P?0:P,I=e.error,T=void 0===I?"":I,A=e.required,O=void 0!==A&&A,E=e.placeholder,_=void 0===E?"":E,z=e.min,M=e.max,B=e.overlayId,D=e.overlayIcon,L=void 0===D?null:D,U=e.overlayObject,G=void 0===U?null:U,K=e.extraInputProps,H=void 0===K?{}:K,W=e.overlayAction,q=e.noLabelMinWidth,V=void 0!==q&&q,Y=e.pattern,X=void 0===Y?"":Y,$=e.autoFocus,Q=void 0!==$&&$,J=e.classes,ee=e.className,te=void 0===ee?"":ee,ne=e.onKeyPress,ae=e.onFocus,ie=e.onPaste,oe=(0,i.Z)({"data-index":F},H),re=(0,o.useState)(!1),ce=(0,a.Z)(re,2),le=ce[0],se=ce[1];"number"===f&&z&&(oe.min=z),"number"===f&&M&&(oe.max=M),""!==X&&(oe.pattern=X);var de=L,ue=f;return"password"===f&&null===L&&(de=le?(0,g.jsx)(u.Z,{}):(0,g.jsx)(h.Z,{}),ue=le?"text":"password"),(0,g.jsx)(o.Fragment,{children:(0,g.jsxs)(c.ZP,{container:!0,className:(0,Z.Z)(""!==te?te:"",""!==T?J.errorInField:J.inputBoxContainer),children:[""!==t&&(0,g.jsxs)(l.Z,{htmlFor:p,className:V?J.noMinWidthLabel:J.inputLabel,children:[(0,g.jsxs)("span",{children:[t,O?"*":""]}),""!==R&&(0,g.jsx)("div",{className:J.tooltipContainer,children:(0,g.jsx)(s.Z,{title:R,placement:"top-start",children:(0,g.jsx)("div",{className:J.tooltip,children:(0,g.jsx)(v.byK,{})})})})]}),(0,g.jsxs)("div",{className:J.textBoxContainer,children:[(0,g.jsx)(j,{id:p,name:m,fullWidth:!0,value:r,autoFocus:Q,disabled:C,onChange:n,type:ue,multiline:N,autoComplete:S,inputProps:oe,error:""!==T,helperText:T,placeholder:_,className:J.inputRebase,onKeyPress:ne,onFocus:ae,onPaste:ie}),de&&(0,g.jsx)("div",{className:"".concat(J.overlayAction," ").concat(""!==t?"withLabel":""),children:(0,g.jsx)(d.Z,{onClick:W?function(){W()}:function(){return se(!le)},id:B,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:de})}),G&&(0,g.jsx)("div",{className:"".concat(J.overlayAction," ").concat(""!==t?"withLabel":""),children:G})]})]})})}))},64163:function(e,t,n){var a=n(1413),i=n(72791),o=n(61889),r=n(11135),c=n(25787),l=n(23814),s=n(80184);t.Z=(0,c.Z)((function(e){return(0,r.Z)((0,a.Z)({},l.xx))}))((function(e){var t=e.classes,n=e.label,a=void 0===n?"":n,r=e.content,c=e.multiLine,l=void 0!==c&&c,d=e.actionButton;return(0,s.jsx)(i.Fragment,{children:(0,s.jsxs)(o.ZP,{className:t.prefinedContainer,children:[""!==a&&(0,s.jsx)(o.ZP,{item:!0,xs:12,className:t.predefinedTitle,children:a}),(0,s.jsxs)(o.ZP,{item:!0,xs:12,className:"".concat(t.predefinedList," ").concat(d?t.includesActionButton:""),children:[(0,s.jsx)(o.ZP,{item:!0,xs:12,className:l?t.innerContentMultiline:t.innerContent,children:r}),d&&(0,s.jsx)("div",{className:t.overlayShareOption,children:d})]})]})})}))},17420:function(e,t,n){var a=n(93433),i=n(29439),o=n(1413),r=n(72791),c=n(26181),l=n.n(c),s=n(48573),d=n.n(s),u=n(11135),h=n(25787),p=n(61889),m=n(77961),x=n(30829),f=n(20068),v=n(23814),Z=n(21435),g=n(29945),b=n(80184);t.Z=(0,h.Z)((function(e){return(0,u.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},v.YI),v.Hr),{},{inputWithBorder:{border:"1px solid #EAEAEA",padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},lineInputBoxes:{display:"flex",marginBottom:10},queryDiv:{alignSelf:"center",margin:"0 4px",fontWeight:600}}))}))((function(e){var t=e.elements,n=e.name,o=e.label,c=e.tooltip,s=void 0===c?"":c,u=e.keyPlaceholder,h=void 0===u?"":u,v=e.valuePlaceholder,j=void 0===v?"":v,S=e.onChange,k=e.withBorder,C=void 0!==k&&k,y=e.classes,N=(0,r.useState)([""]),w=(0,i.Z)(N,2),R=w[0],P=w[1],F=(0,r.useState)([""]),I=(0,i.Z)(F,2),T=I[0],A=I[1],O=(0,r.createRef)();(0,r.useEffect)((function(){if(1===R.length&&""===R[0]&&1===T.length&&""===T[0]&&t&&""!==t){var e=t.split("&"),n=[],a=[];e.forEach((function(e){var t=e.split("=");2===t.length&&(n.push(t[0]),a.push(t[1]))})),n.push(""),a.push(""),P(n),A(a)}}),[R,T,t]),(0,r.useEffect)((function(){var e=O.current;e&&R.length>1&&e.scrollIntoView(!1)}),[R]);var E=(0,r.useRef)(!0);(0,r.useLayoutEffect)((function(){E.current?E.current=!1:M()}),[R,T]);var _=function(e){e.persist();var t=(0,a.Z)(R),n=l()(e.target,"dataset.index","0");t[parseInt(n)]=e.target.value,P(t)},z=function(e){e.persist();var t=(0,a.Z)(T),n=l()(e.target,"dataset.index","0");t[parseInt(n)]=e.target.value,A(t)},M=d()((function(){var e="";R.forEach((function(t,n){if(R[n]&&T[n]){var a="".concat(t,"=").concat(T[n]);0!==n&&(a="&".concat(a)),e="".concat(e).concat(a)}})),S(e)}),500),B=T.map((function(e,t){return(0,b.jsxs)(p.ZP,{item:!0,xs:12,className:y.lineInputBoxes,children:[(0,b.jsx)(Z.Z,{id:"".concat(n,"-key-").concat(t.toString()),label:"",name:"".concat(n,"-").concat(t.toString()),value:R[t],onChange:_,index:t,placeholder:h}),(0,b.jsx)("span",{className:y.queryDiv,children:":"}),(0,b.jsx)(Z.Z,{id:"".concat(n,"-value-").concat(t.toString()),label:"",name:"".concat(n,"-").concat(t.toString()),value:T[t],onChange:z,index:t,placeholder:j,overlayIcon:t===T.length-1?(0,b.jsx)(g.dtP,{}):null,overlayAction:function(){!function(){if(""!==R[R.length-1].trim()&&""!==T[T.length-1].trim()){var e=(0,a.Z)(R),t=(0,a.Z)(T);e.push(""),t.push(""),P(e),A(t)}}()}})]},"query-pair-".concat(n,"-").concat(t.toString()))}));return(0,b.jsx)(r.Fragment,{children:(0,b.jsxs)(p.ZP,{item:!0,xs:12,className:y.fieldContainer,children:[(0,b.jsxs)(x.Z,{className:y.inputLabel,children:[(0,b.jsx)("span",{children:o}),""!==s&&(0,b.jsx)("div",{className:y.tooltipContainer,children:(0,b.jsx)(f.Z,{title:s,placement:"top-start",children:(0,b.jsx)(m.Z,{className:y.tooltip})})})]}),(0,b.jsxs)(p.ZP,{item:!0,xs:12,className:"".concat(C?y.inputWithBorder:""),children:[B,(0,b.jsx)("div",{ref:O})]})]})})}))},60680:function(e,t,n){n(72791);var a=n(11135),i=n(25787),o=n(80184);t.Z=(0,i.Z)((function(e){return(0,a.Z)({root:{padding:0,margin:0,fontSize:".9rem"}})}))((function(e){var t=e.classes,n=e.children;return(0,o.jsx)("h1",{className:t.root,children:n})}))},77961:function(e,t,n){var a=n(64836);t.Z=void 0;var i=a(n(45649)),o=n(80184),r=(0,i.default)((0,o.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z"}),"Help");t.Z=r},3579:function(e,t,n){var a=n(64836);t.Z=void 0;var i=a(n(45649)),o=n(80184),r=(0,i.default)((0,o.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=r},20165:function(e,t,n){var a=n(64836);t.Z=void 0;var i=a(n(45649)),o=n(80184),r=(0,i.default)((0,o.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=r},9955:function(e,t,n){n.d(t,{Z:function(){return C}});var a=n(4942),i=n(63366),o=n(87462),r=n(72791),c=n(28182),l=n(94419),s=n(12065),d=n(14036),u=n(97278),h=n(31402),p=n(66934),m=n(75878),x=n(21217);function f(e){return(0,x.Z)("MuiSwitch",e)}var v=(0,m.Z)("MuiSwitch",["root","edgeStart","edgeEnd","switchBase","colorPrimary","colorSecondary","sizeSmall","sizeMedium","checked","disabled","input","thumb","track"]),Z=n(80184),g=["className","color","edge","size","sx"],b=(0,p.ZP)("span",{name:"MuiSwitch",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,n.edge&&t["edge".concat((0,d.Z)(n.edge))],t["size".concat((0,d.Z)(n.size))]]}})((function(e){var t,n=e.ownerState;return(0,o.Z)({display:"inline-flex",width:58,height:38,overflow:"hidden",padding:12,boxSizing:"border-box",position:"relative",flexShrink:0,zIndex:0,verticalAlign:"middle","@media print":{colorAdjust:"exact"}},"start"===n.edge&&{marginLeft:-8},"end"===n.edge&&{marginRight:-8},"small"===n.size&&(t={width:40,height:24,padding:7},(0,a.Z)(t,"& .".concat(v.thumb),{width:16,height:16}),(0,a.Z)(t,"& .".concat(v.switchBase),(0,a.Z)({padding:4},"&.".concat(v.checked),{transform:"translateX(16px)"})),t))})),j=(0,p.ZP)(u.Z,{name:"MuiSwitch",slot:"SwitchBase",overridesResolver:function(e,t){var n=e.ownerState;return[t.switchBase,(0,a.Z)({},"& .".concat(v.input),t.input),"default"!==n.color&&t["color".concat((0,d.Z)(n.color))]]}})((function(e){var t,n=e.theme;return t={position:"absolute",top:0,left:0,zIndex:1,color:n.vars?n.vars.palette.Switch.defaultColor:"".concat("light"===n.palette.mode?n.palette.common.white:n.palette.grey[300]),transition:n.transitions.create(["left","transform"],{duration:n.transitions.duration.shortest})},(0,a.Z)(t,"&.".concat(v.checked),{transform:"translateX(20px)"}),(0,a.Z)(t,"&.".concat(v.disabled),{color:n.vars?n.vars.palette.Switch.defaultDisabledColor:"".concat("light"===n.palette.mode?n.palette.grey[100]:n.palette.grey[600])}),(0,a.Z)(t,"&.".concat(v.checked," + .").concat(v.track),{opacity:.5}),(0,a.Z)(t,"&.".concat(v.disabled," + .").concat(v.track),{opacity:n.vars?n.vars.opacity.switchTrackDisabled:"".concat("light"===n.palette.mode?.12:.2)}),(0,a.Z)(t,"& .".concat(v.input),{left:"-100%",width:"300%"}),t}),(function(e){var t,n=e.theme,i=e.ownerState;return(0,o.Z)({"&:hover":{backgroundColor:n.vars?"rgba(".concat(n.vars.palette.action.activeChannel," / ").concat(n.vars.palette.action.hoverOpacity,")"):(0,s.Fq)(n.palette.action.active,n.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==i.color&&(t={},(0,a.Z)(t,"&.".concat(v.checked),(0,a.Z)({color:(n.vars||n).palette[i.color].main,"&:hover":{backgroundColor:n.vars?"rgba(".concat(n.vars.palette[i.color].mainChannel," / ").concat(n.vars.palette.action.hoverOpacity,")"):(0,s.Fq)(n.palette[i.color].main,n.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"&.".concat(v.disabled),{color:n.vars?n.vars.palette.Switch["".concat(i.color,"DisabledColor")]:"".concat("light"===n.palette.mode?(0,s.$n)(n.palette[i.color].main,.62):(0,s._j)(n.palette[i.color].main,.55))})),(0,a.Z)(t,"&.".concat(v.checked," + .").concat(v.track),{backgroundColor:(n.vars||n).palette[i.color].main}),t))})),S=(0,p.ZP)("span",{name:"MuiSwitch",slot:"Track",overridesResolver:function(e,t){return t.track}})((function(e){var t=e.theme;return{height:"100%",width:"100%",borderRadius:7,zIndex:-1,transition:t.transitions.create(["opacity","background-color"],{duration:t.transitions.duration.shortest}),backgroundColor:t.vars?t.vars.palette.common.onBackground:"".concat("light"===t.palette.mode?t.palette.common.black:t.palette.common.white),opacity:t.vars?t.vars.opacity.switchTrack:"".concat("light"===t.palette.mode?.38:.3)}})),k=(0,p.ZP)("span",{name:"MuiSwitch",slot:"Thumb",overridesResolver:function(e,t){return t.thumb}})((function(e){var t=e.theme;return{boxShadow:(t.vars||t).shadows[1],backgroundColor:"currentColor",width:20,height:20,borderRadius:"50%"}})),C=r.forwardRef((function(e,t){var n=(0,h.Z)({props:e,name:"MuiSwitch"}),a=n.className,r=n.color,s=void 0===r?"primary":r,u=n.edge,p=void 0!==u&&u,m=n.size,x=void 0===m?"medium":m,v=n.sx,C=(0,i.Z)(n,g),y=(0,o.Z)({},n,{color:s,edge:p,size:x}),N=function(e){var t=e.classes,n=e.edge,a=e.size,i=e.color,r=e.checked,c=e.disabled,s={root:["root",n&&"edge".concat((0,d.Z)(n)),"size".concat((0,d.Z)(a))],switchBase:["switchBase","color".concat((0,d.Z)(i)),r&&"checked",c&&"disabled"],thumb:["thumb"],track:["track"],input:["input"]},u=(0,l.Z)(s,f,t);return(0,o.Z)({},t,u)}(y),w=(0,Z.jsx)(k,{className:N.thumb,ownerState:y});return(0,Z.jsxs)(b,{className:(0,c.Z)(N.root,a),sx:v,ownerState:y,children:[(0,Z.jsx)(j,(0,o.Z)({type:"checkbox",icon:w,checkedIcon:w,ref:t,ownerState:y},C,{classes:(0,o.Z)({},N,{root:N.switchBase})})),(0,Z.jsx)(S,{className:N.track,ownerState:y})]})}))}}]); -//# sourceMappingURL=2512.3225c7da.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/2512.3225c7da.chunk.js.map b/portal-ui/build/static/js/2512.3225c7da.chunk.js.map deleted file mode 100644 index fdcf66a0b..000000000 --- a/portal-ui/build/static/js/2512.3225c7da.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/2512.3225c7da.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/EditReplicationModal.tsx","screens/Console/Buckets/BucketDetails/BucketReplicationPanel.tsx","screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Common/FormComponents/PredefinedList/PredefinedList.tsx","screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector.tsx","screens/Console/Common/PanelTitle/PanelTitle.tsx","../node_modules/@mui/icons-material/Help.js","../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/material/Switch/switchClasses.js","../node_modules/@mui/material/Switch/Switch.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { Theme } from \"@mui/material/styles\";\nimport { BucketReplicationIcon, Button } from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport QueryMultiSelector from \"../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector\";\nimport {\n createTenantCommon,\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport PredefinedList from \"../../Common/FormComponents/PredefinedList/PredefinedList\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IEditReplicationModal {\n closeModalAndRefresh: (refresh: boolean) => void;\n open: boolean;\n classes: any;\n bucketName: string;\n ruleID: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...spacingUtils,\n ...createTenantCommon,\n ...formFieldStyles,\n ...modalStyleUtils,\n modalFormScrollable: {\n ...modalStyleUtils.modalFormScrollable,\n paddingRight: 10,\n },\n });\n\nconst EditReplicationModal = ({\n closeModalAndRefresh,\n open,\n classes,\n bucketName,\n ruleID,\n}: IEditReplicationModal) => {\n const dispatch = useAppDispatch();\n const [editLoading, setEditLoading] = useState(true);\n const [saveEdit, setSaveEdit] = useState(false);\n const [priority, setPriority] = useState(\"1\");\n const [destination, setDestination] = useState(\"\");\n const [prefix, setPrefix] = useState(\"\");\n const [repDeleteMarker, setRepDeleteMarker] = useState(false);\n const [metadataSync, setMetadataSync] = useState(false);\n const [initialTags, setInitialTags] = useState(\"\");\n const [tags, setTags] = useState(\"\");\n const [targetStorageClass, setTargetStorageClass] = useState(\"\");\n const [repExisting, setRepExisting] = useState(false);\n const [repDelete, setRepDelete] = useState(false);\n const [ruleState, setRuleState] = useState(false);\n\n useEffect(() => {\n if (editLoading) {\n api.buckets\n .getBucketReplicationRule(bucketName, ruleID)\n .then((res) => {\n setPriority(res.data.priority ? res.data.priority.toString() : \"\");\n const pref = res.data.prefix || \"\";\n const tag = res.data.tags || \"\";\n setPrefix(pref);\n setInitialTags(tag);\n setTags(tag);\n setDestination(res.data.destination?.bucket || \"\");\n setRepDeleteMarker(res.data.delete_marker_replication || false);\n setTargetStorageClass(res.data.storageClass || \"\");\n setRepExisting(!!res.data.existingObjects);\n setRepDelete(!!res.data.deletes_replication);\n setRuleState(res.data.status === \"Enabled\");\n setMetadataSync(!!res.data.metadata_replication);\n\n setEditLoading(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setEditLoading(false);\n });\n }\n }, [editLoading, dispatch, bucketName, ruleID]);\n\n useEffect(() => {\n if (saveEdit) {\n const remoteBucketsInfo = {\n arn: destination,\n ruleState: ruleState,\n prefix: prefix,\n tags: tags,\n replicateDeleteMarkers: repDeleteMarker,\n replicateDeletes: repDelete,\n replicateExistingObjects: repExisting,\n replicateMetadata: metadataSync,\n priority: parseInt(priority),\n storageClass: targetStorageClass,\n };\n\n api.buckets\n .updateMultiBucketReplication(bucketName, ruleID, remoteBucketsInfo)\n .then(() => {\n setSaveEdit(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setSaveEdit(false);\n });\n }\n }, [\n saveEdit,\n bucketName,\n ruleID,\n destination,\n prefix,\n tags,\n repDeleteMarker,\n priority,\n repDelete,\n repExisting,\n ruleState,\n metadataSync,\n targetStorageClass,\n closeModalAndRefresh,\n dispatch,\n ]);\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n title=\"Edit Bucket Replication\"\n titleIcon={}\n >\n ) => {\n e.preventDefault();\n setSaveEdit(true);\n }}\n >\n \n \n \n {\n setRuleState(e.target.checked);\n }}\n value={ruleState}\n />\n \n \n \n \n \n ) => {\n if (e.target.validity.valid) {\n setPriority(e.target.value);\n }\n }}\n label=\"Priority\"\n value={priority}\n pattern={\"[0-9]*\"}\n />\n \n \n ) => {\n setTargetStorageClass(e.target.value);\n }}\n placeholder=\"STANDARD_IA,REDUCED_REDUNDANCY etc\"\n label=\"Storage Class\"\n value={targetStorageClass}\n />\n \n \n
\n \n Object Filters\n \n \n ) => {\n setPrefix(e.target.value);\n }}\n placeholder=\"prefix\"\n label=\"Prefix\"\n value={prefix}\n />\n \n \n {\n setTags(vl);\n }}\n keyPlaceholder=\"Tag Key\"\n valuePlaceholder=\"Tag Value\"\n withBorder\n />\n \n
\n
\n \n
\n \n Replication Options\n \n \n {\n setRepExisting(e.target.checked);\n }}\n value={repExisting}\n description={\"Replicate existing objects\"}\n />\n \n {\n setMetadataSync(e.target.checked);\n }}\n value={metadataSync}\n description={\"Metadata Sync\"}\n />\n \n {\n setRepDeleteMarker(e.target.checked);\n }}\n value={repDeleteMarker}\n description={\"Replicate soft deletes\"}\n />\n \n \n {\n setRepDelete(e.target.checked);\n }}\n value={repDelete}\n description={\"Replicate versioned deletes\"}\n />\n \n
\n
\n
\n \n {\n closeModalAndRefresh(false);\n }}\n label={\"Cancel\"}\n />\n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(EditReplicationModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { Theme } from \"@mui/material/styles\";\nimport { AddIcon, BucketsIcon, Button, HelpBox, TrashIcon } from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport Grid from \"@mui/material/Grid\";\n\nimport {\n actionsTray,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport {\n BucketReplication,\n BucketReplicationDestination,\n BucketReplicationRule,\n} from \"../types\";\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport api from \"../../../../common/api\";\nimport TableWrapper from \"../../Common/TableWrapper/TableWrapper\";\nimport PanelTitle from \"../../Common/PanelTitle/PanelTitle\";\nimport withSuspense from \"../../Common/Components/withSuspense\";\nimport EditReplicationModal from \"./EditReplicationModal\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { selBucketDetailsLoading } from \"./bucketDetailsSlice\";\nimport { useParams } from \"react-router-dom\";\nimport { useAppDispatch } from \"../../../../store\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst AddReplicationModal = withSuspense(\n React.lazy(() => import(\"./AddReplicationModal\")),\n);\nconst DeleteReplicationRule = withSuspense(\n React.lazy(() => import(\"./DeleteReplicationRule\")),\n);\n\ninterface IBucketReplicationProps {\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...searchField,\n ...actionsTray,\n twHeight: {\n minHeight: 400,\n },\n });\n\nconst BucketReplicationPanel = ({ classes }: IBucketReplicationProps) => {\n const dispatch = useAppDispatch();\n const params = useParams();\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n\n const [loadingReplication, setLoadingReplication] = useState(true);\n const [replicationRules, setReplicationRules] = useState<\n BucketReplicationRule[]\n >([]);\n const [deleteReplicationModal, setDeleteReplicationModal] =\n useState(false);\n const [openSetReplication, setOpenSetReplication] = useState(false);\n const [editReplicationModal, setEditReplicationModal] =\n useState(false);\n const [selectedRRule, setSelectedRRule] = useState(\"\");\n const [selectedRepRules, setSelectedRepRules] = useState([]);\n const [deleteSelectedRules, setDeleteSelectedRules] =\n useState(false);\n\n const bucketName = params.bucketName || \"\";\n\n const displayReplicationRules = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_detail_replication\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (loadingBucket) {\n setLoadingReplication(true);\n }\n }, [loadingBucket, setLoadingReplication]);\n\n useEffect(() => {\n if (loadingReplication) {\n if (displayReplicationRules) {\n api\n .invoke(\"GET\", `/api/v1/buckets/${bucketName}/replication`)\n .then((res: BucketReplication) => {\n const r = res.rules ? res.rules : [];\n\n r.sort((a, b) => a.priority - b.priority);\n\n setReplicationRules(r);\n setLoadingReplication(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoadingReplication(false);\n });\n } else {\n setLoadingReplication(false);\n }\n }\n }, [loadingReplication, dispatch, bucketName, displayReplicationRules]);\n\n const closeAddReplication = () => {\n setOpenReplicationOpen(false);\n setLoadingReplication(true);\n };\n\n const setOpenReplicationOpen = (open = false) => {\n setOpenSetReplication(open);\n };\n\n const closeReplicationModalDelete = (refresh: boolean) => {\n setDeleteReplicationModal(false);\n\n if (refresh) {\n setLoadingReplication(true);\n }\n };\n\n const closeEditReplication = (refresh: boolean) => {\n setEditReplicationModal(false);\n\n if (refresh) {\n setLoadingReplication(true);\n }\n };\n\n const confirmDeleteReplication = (replication: BucketReplicationRule) => {\n setSelectedRRule(replication.id);\n setDeleteSelectedRules(false);\n setDeleteReplicationModal(true);\n };\n\n const confirmDeleteSelectedReplicationRules = () => {\n setSelectedRRule(\"selectedRules\");\n setDeleteSelectedRules(true);\n setDeleteReplicationModal(true);\n };\n\n const editReplicationRule = (replication: BucketReplicationRule) => {\n setSelectedRRule(replication.id);\n setEditReplicationModal(true);\n };\n\n const ruleDestDisplay = (events: BucketReplicationDestination) => {\n return {events.bucket.replace(\"arn:aws:s3:::\", \"\")};\n };\n\n const tagDisplay = (events: BucketReplicationRule) => {\n return {events && events.tags !== \"\" ? \"Yes\" : \"No\"};\n };\n\n const selectAllItems = () => {\n if (selectedRepRules.length === replicationRules.length) {\n setSelectedRepRules([]);\n return;\n }\n setSelectedRepRules(replicationRules.map((x) => x.id));\n };\n\n const selectRules = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedRepRules]; // We clone the selectedSAs array\n if (checked) {\n // If the user has checked this field we need to push this to selectedSAs\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n setSelectedRepRules(elements);\n return elements;\n };\n\n const replicationTableActions: any = [\n {\n type: \"delete\",\n onClick: confirmDeleteReplication,\n },\n {\n type: \"view\",\n onClick: editReplicationRule,\n disableButtonFunction: !hasPermission(\n bucketName,\n [\n IAM_SCOPES.S3_PUT_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n true,\n ),\n },\n ];\n\n return (\n \n {openSetReplication && (\n \n )}\n\n {deleteReplicationModal && (\n 0 &&\n selectedRepRules.length === replicationRules.length\n }\n deleteSelectedRules={deleteSelectedRules}\n />\n )}\n\n {editReplicationModal && (\n \n )}\n \n \n Replication\n
\n \n \n {\n confirmDeleteSelectedReplicationRules();\n }}\n label={\"Remove Selected Rules\"}\n icon={}\n color={\"secondary\"}\n disabled={\n selectedRepRules.length === 0 ||\n replicationRules.length === 0\n }\n variant={\"secondary\"}\n />\n \n \n \n \n {\n setOpenReplicationOpen(true);\n }}\n label={\"Add Replication Rule\"}\n icon={}\n variant={\"callAction\"}\n />\n \n \n
\n
\n \n \n selectRules(e)}\n onSelectAll={selectAllItems}\n />\n \n \n \n
\n }\n help={\n \n MinIO supports server-side and client-side replication of\n objects between source and destination buckets.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(BucketReplicationPanel);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input/Input\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n checked: boolean;\n switchOnly?: boolean;\n indicatorLabels?: string[];\n extraInputProps?: StandardInputProps[\"inputProps\"];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n indicatorLabelOn: {\n fontWeight: \"bold\",\n color: \"#081C42 !important\",\n },\n indicatorLabel: {\n fontSize: 12,\n color: \"#E2E2E2\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n tooltip: {\n fontSize: 16,\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles((theme) => ({\n root: {\n width: 50,\n height: 24,\n padding: 0,\n margin: 0,\n },\n switchBase: {\n padding: 1,\n \"&$checked\": {\n transform: \"translateX(24px)\",\n color: theme.palette.common.white,\n \"& + $track\": {\n backgroundColor: \"#4CCB92\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n border: \"none\",\n },\n },\n \"&$focusVisible $thumb\": {\n color: \"#4CCB92\",\n border: \"6px solid #fff\",\n },\n },\n thumb: {\n width: 22,\n height: 22,\n backgroundColor: \"#FAFAFA\",\n border: \"2px solid #FFFFFF\",\n marginLeft: 1,\n },\n track: {\n borderRadius: 24 / 2,\n backgroundColor: \"#E2E2E2\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n transition: theme.transitions.create([\"background-color\", \"border\"]),\n },\n checked: {},\n focusVisible: {},\n switchContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n}))(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n classes,\n indicatorLabels,\n extraInputProps = {},\n}: IFormSwitch) => {\n const switchComponent = (\n \n {!switchOnly && (\n \n {indicatorLabels && indicatorLabels.length > 1\n ? indicatorLabels[1]\n : \"OFF\"}\n \n )}\n \n {!switchOnly && (\n \n {indicatorLabels ? indicatorLabels[0] : \"ON\"}\n \n )}\n \n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n
\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n \n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","import React, { Fragment } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { predefinedList } from \"../common/styleLibrary\";\n\ninterface IPredefinedList {\n classes: any;\n label?: string;\n content: any;\n multiLine?: boolean;\n actionButton?: React.ReactNode;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...predefinedList,\n });\n\nconst PredefinedList = ({\n classes,\n label = \"\",\n content,\n multiLine = false,\n actionButton,\n}: IPredefinedList) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n \n )}\n \n \n {content}\n \n {actionButton && (\n
{actionButton}
\n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(PredefinedList);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, {\n ChangeEvent,\n createRef,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport get from \"lodash/get\";\nimport debounce from \"lodash/debounce\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport Grid from \"@mui/material/Grid\";\nimport HelpIcon from \"@mui/icons-material/Help\";\nimport { InputLabel, Tooltip } from \"@mui/material\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport InputBoxWrapper from \"../InputBoxWrapper/InputBoxWrapper\";\nimport { AddIcon } from \"mds\";\n\ninterface IQueryMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n keyPlaceholder?: string;\n valuePlaceholder?: string;\n classes: any;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n inputWithBorder: {\n border: \"1px solid #EAEAEA\",\n padding: 15,\n height: 150,\n overflowY: \"auto\",\n position: \"relative\",\n marginTop: 15,\n },\n lineInputBoxes: {\n display: \"flex\",\n marginBottom: 10,\n },\n queryDiv: {\n alignSelf: \"center\",\n margin: \"0 4px\",\n fontWeight: 600,\n },\n });\n\nconst QueryMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n keyPlaceholder = \"\",\n valuePlaceholder = \"\",\n onChange,\n withBorder = false,\n classes,\n}: IQueryMultiSelector) => {\n const [currentKeys, setCurrentKeys] = useState([\"\"]);\n const [currentValues, setCurrentValues] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentKeys.length === 1 &&\n currentKeys[0] === \"\" &&\n currentValues.length === 1 &&\n currentValues[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\"&\");\n let keys = [];\n let values = [];\n\n elementsSplit.forEach((element: string) => {\n const splittedVals = element.split(\"=\");\n if (splittedVals.length === 2) {\n keys.push(splittedVals[0]);\n values.push(splittedVals[1]);\n }\n });\n\n keys.push(\"\");\n values.push(\"\");\n\n setCurrentKeys(keys);\n setCurrentValues(values);\n }\n }, [currentKeys, currentValues, elements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n const refScroll = bottomList.current;\n if (refScroll && currentKeys.length > 1) {\n refScroll.scrollIntoView(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys]);\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useLayoutEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n debouncedOnChange();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys, currentValues]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = () => {\n if (\n currentKeys[currentKeys.length - 1].trim() !== \"\" &&\n currentValues[currentValues.length - 1].trim() !== \"\"\n ) {\n const keysList = [...currentKeys];\n const valuesList = [...currentValues];\n\n keysList.push(\"\");\n valuesList.push(\"\");\n\n setCurrentKeys(keysList);\n setCurrentValues(valuesList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeKey = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentKeys];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentKeys(updatedElement);\n };\n\n const onChangeValue = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentValues];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentValues(updatedElement);\n };\n\n // Debounce for On Change\n const debouncedOnChange = debounce(() => {\n let queryString = \"\";\n\n currentKeys.forEach((keyVal, index) => {\n if (currentKeys[index] && currentValues[index]) {\n let insertString = `${keyVal}=${currentValues[index]}`;\n if (index !== 0) {\n insertString = `&${insertString}`;\n }\n queryString = `${queryString}${insertString}`;\n }\n });\n\n onChange(queryString);\n }, 500);\n\n const inputs = currentValues.map((element, index) => {\n return (\n \n \n :\n : null}\n overlayAction={() => {\n addEmptyLine();\n }}\n />\n \n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n
\n \n \n \n
\n )}\n
\n \n {inputs}\n
\n \n \n \n );\n};\nexport default withStyles(styles)(QueryMultiSelector);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { IconButtonProps } from \"@mui/material\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n root: {\n padding: 0,\n margin: 0,\n fontSize: \".9rem\",\n },\n });\n\ninterface IPanelTitle extends IconButtonProps {\n classes: any;\n children: any;\n}\n\nconst PanelTitle = ({ classes, children }: IPanelTitle) => {\n return

{children}

;\n};\n\nexport default withStyles(styles)(PanelTitle);\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z\"\n}), 'Help');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchUtilityClass(slot) {\n return generateUtilityClass('MuiSwitch', slot);\n}\nconst switchClasses = generateUtilityClasses('MuiSwitch', ['root', 'edgeStart', 'edgeEnd', 'switchBase', 'colorPrimary', 'colorSecondary', 'sizeSmall', 'sizeMedium', 'checked', 'disabled', 'input', 'thumb', 'track']);\nexport default switchClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"color\", \"edge\", \"size\", \"sx\"];\n// @inheritedComponent IconButton\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha, darken, lighten } from '@mui/system';\nimport capitalize from '../utils/capitalize';\nimport SwitchBase from '../internal/SwitchBase';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport switchClasses, { getSwitchUtilityClass } from './switchClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n edge,\n size,\n color,\n checked,\n disabled\n } = ownerState;\n const slots = {\n root: ['root', edge && `edge${capitalize(edge)}`, `size${capitalize(size)}`],\n switchBase: ['switchBase', `color${capitalize(color)}`, checked && 'checked', disabled && 'disabled'],\n thumb: ['thumb'],\n track: ['track'],\n input: ['input']\n };\n const composedClasses = composeClasses(slots, getSwitchUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst SwitchRoot = styled('span', {\n name: 'MuiSwitch',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.edge && styles[`edge${capitalize(ownerState.edge)}`], styles[`size${capitalize(ownerState.size)}`]];\n }\n})(({\n ownerState\n}) => _extends({\n display: 'inline-flex',\n width: 34 + 12 * 2,\n height: 14 + 12 * 2,\n overflow: 'hidden',\n padding: 12,\n boxSizing: 'border-box',\n position: 'relative',\n flexShrink: 0,\n zIndex: 0,\n // Reset the stacking context.\n verticalAlign: 'middle',\n // For correct alignment with the text.\n '@media print': {\n colorAdjust: 'exact'\n }\n}, ownerState.edge === 'start' && {\n marginLeft: -8\n}, ownerState.edge === 'end' && {\n marginRight: -8\n}, ownerState.size === 'small' && {\n width: 40,\n height: 24,\n padding: 7,\n [`& .${switchClasses.thumb}`]: {\n width: 16,\n height: 16\n },\n [`& .${switchClasses.switchBase}`]: {\n padding: 4,\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(16px)'\n }\n }\n}));\nconst SwitchSwitchBase = styled(SwitchBase, {\n name: 'MuiSwitch',\n slot: 'SwitchBase',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.switchBase, {\n [`& .${switchClasses.input}`]: styles.input\n }, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme\n}) => ({\n position: 'absolute',\n top: 0,\n left: 0,\n zIndex: 1,\n // Render above the focus ripple.\n color: theme.vars ? theme.vars.palette.Switch.defaultColor : `${theme.palette.mode === 'light' ? theme.palette.common.white : theme.palette.grey[300]}`,\n transition: theme.transitions.create(['left', 'transform'], {\n duration: theme.transitions.duration.shortest\n }),\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(20px)'\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch.defaultDisabledColor : `${theme.palette.mode === 'light' ? theme.palette.grey[100] : theme.palette.grey[600]}`\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n opacity: 0.5\n },\n [`&.${switchClasses.disabled} + .${switchClasses.track}`]: {\n opacity: theme.vars ? theme.vars.opacity.switchTrackDisabled : `${theme.palette.mode === 'light' ? 0.12 : 0.2}`\n },\n [`& .${switchClasses.input}`]: {\n left: '-100%',\n width: '300%'\n }\n}), ({\n theme,\n ownerState\n}) => _extends({\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${switchClasses.checked}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main,\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch[`${ownerState.color}DisabledColor`] : `${theme.palette.mode === 'light' ? lighten(theme.palette[ownerState.color].main, 0.62) : darken(theme.palette[ownerState.color].main, 0.55)}`\n }\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].main\n }\n}));\nconst SwitchTrack = styled('span', {\n name: 'MuiSwitch',\n slot: 'Track',\n overridesResolver: (props, styles) => styles.track\n})(({\n theme\n}) => ({\n height: '100%',\n width: '100%',\n borderRadius: 14 / 2,\n zIndex: -1,\n transition: theme.transitions.create(['opacity', 'background-color'], {\n duration: theme.transitions.duration.shortest\n }),\n backgroundColor: theme.vars ? theme.vars.palette.common.onBackground : `${theme.palette.mode === 'light' ? theme.palette.common.black : theme.palette.common.white}`,\n opacity: theme.vars ? theme.vars.opacity.switchTrack : `${theme.palette.mode === 'light' ? 0.38 : 0.3}`\n}));\nconst SwitchThumb = styled('span', {\n name: 'MuiSwitch',\n slot: 'Thumb',\n overridesResolver: (props, styles) => styles.thumb\n})(({\n theme\n}) => ({\n boxShadow: (theme.vars || theme).shadows[1],\n backgroundColor: 'currentColor',\n width: 20,\n height: 20,\n borderRadius: '50%'\n}));\nconst Switch = /*#__PURE__*/React.forwardRef(function Switch(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiSwitch'\n });\n const {\n className,\n color = 'primary',\n edge = false,\n size = 'medium',\n sx\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n edge,\n size\n });\n const classes = useUtilityClasses(ownerState);\n const icon = /*#__PURE__*/_jsx(SwitchThumb, {\n className: classes.thumb,\n ownerState: ownerState\n });\n return /*#__PURE__*/_jsxs(SwitchRoot, {\n className: clsx(classes.root, className),\n sx: sx,\n ownerState: ownerState,\n children: [/*#__PURE__*/_jsx(SwitchSwitchBase, _extends({\n type: \"checkbox\",\n icon: icon,\n checkedIcon: icon,\n ref: ref,\n ownerState: ownerState\n }, other, {\n classes: _extends({}, classes, {\n root: classes.switchBase\n })\n })), /*#__PURE__*/_jsx(SwitchTrack, {\n className: classes.track,\n ownerState: ownerState\n })]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Switch.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The default checked state. Use when the component is not controlled.\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense switch styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n */\n value: PropTypes.any\n} : void 0;\nexport default Switch;"],"names":["withStyles","theme","createStyles","_objectSpread","spacingUtils","createTenantCommon","formFieldStyles","modalStyleUtils","modalFormScrollable","paddingRight","_ref","closeModalAndRefresh","open","classes","bucketName","ruleID","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","editLoading","setEditLoading","_useState3","_useState4","saveEdit","setSaveEdit","_useState5","_useState6","priority","setPriority","_useState7","_useState8","destination","setDestination","_useState9","_useState10","prefix","setPrefix","_useState11","_useState12","repDeleteMarker","setRepDeleteMarker","_useState13","_useState14","metadataSync","setMetadataSync","_useState15","_useState16","initialTags","setInitialTags","_useState17","_useState18","tags","setTags","_useState19","_useState20","targetStorageClass","setTargetStorageClass","_useState21","_useState22","repExisting","setRepExisting","_useState23","_useState24","repDelete","setRepDelete","_useState25","_useState26","ruleState","setRuleState","useEffect","api","buckets","getBucketReplicationRule","then","res","_res$data$destination","data","toString","pref","tag","bucket","delete_marker_replication","storageClass","existingObjects","deletes_replication","status","metadata_replication","catch","err","setModalErrorSnackMessage","errorToHandler","error","remoteBucketsInfo","arn","replicateDeleteMarkers","replicateDeletes","replicateExistingObjects","replicateMetadata","parseInt","updateMultiBucketReplication","_jsx","ModalWrapper","modalOpen","onClose","title","titleIcon","BucketReplicationIcon","children","noValidate","autoComplete","onSubmit","e","preventDefault","_jsxs","Grid","container","item","xs","className","formFieldRow","FormSwitchWrapper","checked","id","name","label","onChange","target","value","PredefinedList","content","InputBoxWrapper","validity","valid","pattern","concat","spacerTop","placeholder","fieldGroup","descriptionText","QueryMultiSelector","elements","vl","keyPlaceholder","valuePlaceholder","withBorder","description","modalButtonBar","Button","type","variant","disabled","onClick","AddReplicationModal","withSuspense","React","DeleteReplicationRule","searchField","actionsTray","twHeight","minHeight","params","useParams","loadingBucket","useSelector","selBucketDetailsLoading","loadingReplication","setLoadingReplication","replicationRules","setReplicationRules","deleteReplicationModal","setDeleteReplicationModal","openSetReplication","setOpenSetReplication","editReplicationModal","setEditReplicationModal","selectedRRule","setSelectedRRule","selectedRepRules","setSelectedRepRules","deleteSelectedRules","setDeleteSelectedRules","displayReplicationRules","hasPermission","IAM_SCOPES","S3_GET_REPLICATION_CONFIGURATION","S3_GET_ACTIONS","setHelpName","invoke","r","rules","sort","a","b","setErrorSnackMessage","setOpenReplicationOpen","arguments","length","undefined","replicationTableActions","replication","disableButtonFunction","S3_PUT_REPLICATION_CONFIGURATION","S3_PUT_ACTIONS","Fragment","deleteOpen","selectedBucket","closeDeleteModalAndRefresh","refresh","ruleToDelete","rulesToDelete","remainingRules","allSelected","EditReplicationModal","PanelTitle","style","display","SecureComponent","scopes","resource","matchAll","errorProps","TooltipWrapper","tooltip","icon","TrashIcon","color","AddIcon","TableWrapper","itemActions","columns","elementKey","width","contentTextAlign","renderFunction","events","replace","isLoading","records","entityName","idField","customPaperHeight","textSelectable","selectedItems","onSelect","targetD","_toConsumableArray","push","filter","element","selectRules","onSelectAll","map","x","HelpBox","iconComponent","BucketsIcon","help","href","rel","StyledSwitch","root","height","padding","margin","switchBase","transform","palette","common","white","backgroundColor","boxShadow","opacity","border","thumb","marginLeft","track","borderRadius","transition","transitions","create","focusVisible","switchContainer","alignItems","justifyContent","Switch","indicatorLabelOn","fontWeight","indicatorLabel","fontSize","fieldDescription","marginTop","fieldBasic","_ref$label","_ref$checked","_ref$disabled","_ref$switchOnly","switchOnly","_ref$tooltip","_ref$description","indicatorLabels","_ref$extraInputProps","extraInputProps","switchComponent","clsx","_defineProperty","inputProps","disableRipple","disableFocusRipple","disableTouchRipple","sm","md","InputLabel","htmlFor","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","textAlign","Typography","component","inputStyles","makeStyles","inputFieldStyles","InputField","props","TextField","InputProps","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","_ref$type","_ref$autoComplete","_ref$multiline","multiline","_ref$index","index","_ref$error","_ref$required","required","_ref$placeholder","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","_ref$autoFocus","autoFocus","_ref$className","onKeyPress","onFocus","onPaste","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","errorInField","inputBoxContainer","noMinWidthLabel","fullWidth","helperText","inputRebase","IconButton","size","predefinedList","_ref$multiLine","multiLine","actionButton","prefinedContainer","predefinedTitle","includesActionButton","innerContentMultiline","innerContent","overlayShareOption","inputWithBorder","overflowY","lineInputBoxes","marginBottom","queryDiv","alignSelf","_ref$keyPlaceholder","_ref$valuePlaceholder","_ref$withBorder","currentKeys","setCurrentKeys","currentValues","setCurrentValues","bottomList","createRef","elementsSplit","split","keys","values","forEach","splittedVals","refScroll","current","scrollIntoView","firstUpdate","useRef","useLayoutEffect","debouncedOnChange","onChangeKey","persist","updatedElement","get","onChangeValue","debounce","queryString","keyVal","insertString","inputs","trim","keysList","valuesList","addEmptyLine","fieldContainer","ref","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","getSwitchUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","SwitchRoot","styled","overridesResolver","styles","ownerState","edge","capitalize","_ref2","_extends","overflow","boxSizing","flexShrink","zIndex","verticalAlign","colorAdjust","marginRight","switchClasses","SwitchSwitchBase","SwitchBase","input","_ref4","_ref5","left","vars","defaultColor","mode","grey","duration","shortest","defaultDisabledColor","switchTrackDisabled","_ref6","_ref7","action","activeChannel","hoverOpacity","alpha","active","main","mainChannel","lighten","darken","SwitchTrack","_ref8","onBackground","black","switchTrack","SwitchThumb","_ref9","shadows","inProps","useThemeProps","_props$color","_props$edge","_props$size","sx","other","_objectWithoutPropertiesLoose","slots","composedClasses","composeClasses","useUtilityClasses","checkedIcon"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2603.500676d6.chunk.js b/portal-ui/build/static/js/2603.500676d6.chunk.js new file mode 100644 index 000000000..03588a218 --- /dev/null +++ b/portal-ui/build/static/js/2603.500676d6.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2603,4619],{94619:function(e,n,t){t.r(n);var i=t(29439),o=t(72791),r=t(56028),a=t(29945),s=t(31776),c=t(82342),l=t(23814),d=t(87995),u=t(81551),h=t(80184);n.default=function(e){var n=e.modalOpen,t=e.onClose,f=e.bucket,m=e.prefilledRoute,p=(0,u.TL)(),x=(0,o.useState)(""),b=(0,i.Z)(x,2),v=b[0],j=b[1],g=(0,o.useState)("readonly"),_=(0,i.Z)(g,2),S=_[0],C=_[1];(0,o.useEffect)((function(){m&&j(m)}),[m]);return(0,h.jsx)(r.Z,{modalOpen:n,title:"Add Anonymous Access Rule",onClose:t,titleIcon:(0,h.jsx)(a.sR0,{}),children:(0,h.jsxs)(a.ltY,{withBorders:!1,containerPadding:!1,children:[(0,h.jsx)(a.Wzg,{value:v,label:"Prefix",id:"prefix",name:"prefix",placeholder:"Enter Prefix",onChange:function(e){j(e.target.value)},tooltip:"Enter '/' to apply the rule to all prefixes and objects at the bucket root. Do not include the wildcard asterisk '*' as part of the prefix *unless* it is an explicit part of the prefix name. The Console automatically appends an asterisk to the appropriate sections of the resulting IAM policy."}),(0,h.jsx)(a.PhF,{id:"access",name:"Access",onChange:function(e){C(e)},label:"Access",value:S,options:[{label:"readonly",value:"readonly"},{label:"writeonly",value:"writeonly"},{label:"readwrite",value:"readwrite"}],disabled:!1}),(0,h.jsxs)(a.rjZ,{item:!0,xs:12,sx:l.ID.modalButtonBar,children:[(0,h.jsx)(a.zxk,{id:"clear",type:"button",variant:"regular",onClick:function(){j(""),C("readonly")},label:"Clear"}),(0,h.jsx)(a.zxk,{id:"add-access-save",type:"submit",variant:"callAction",disabled:""===v.trim(),onClick:function(){s.h.bucket.setAccessRuleWithBucket(f,{prefix:v,access:S}).then((function(e){p((0,d.y1)("Access Rule added successfully")),t()})).catch((function(e){p((0,d.Ih)((0,c.g)(e))),t()}))},label:"Save"})]})]})})}},32603:function(e,n,t){t.r(n),t.d(n,{default:function(){return Ln}});var i,o=t(1413),r=t(72791),a=t(78687),s=t(57689),c=t(11135),l=t(25787),d=t(81551),u=t(23814),h=t(93433),f=t(29439),m=t(43954),p=t(29945),x=t(99779),b=t(61889),v=t(26181),j=t.n(v),g=t(45248),_=t(63021),S=t(78029),C=t.n(S),Z=t(72455),w=t(11087),T=t(38442),y=t(56087),N=t(75578),F=t(87995),E=t(54756),O=function(e){return(e.match(/\.([^.]*?)(?=\?|#|$)/)||[])[1]},I=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],i=Object.keys(e).reduce((function(t,i){return O(i)&&i.includes(n)&&(t[i]=e[i]),t}),{});return Object.keys(i).filter((function(e){var o=i[e].some((function(e){return t.find((function(n){var t=!1;if(-1!==n.indexOf("*")){var i=n.substring(0,n.length-1);t=e.includes(i)}return t||e===n}))})),r=e.substring(0,e.indexOf("/*."))==="arn:aws:s3:::".concat(n);return o&&(r&&"arn:aws:s3:::*"!==e)}))},k=t(80184),L=(0,N.Z)(r.lazy((function(){return t.e(2185).then(t.bind(t,62185))}))),B=(0,Z.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)({},u.cx),{},{slashSpacingStyle:{margin:"0 5px"}}))})),P=function(e){var n=e.bucketName,t=e.internalPaths,i=e.hidePathButton,o=e.additionalOptions,c=(0,d.TL)(),l=(0,s.s0)(),u=B(),m=(0,a.v9)((function(e){return e.objectBrowser.rewind.rewindEnabled})),x=(0,a.v9)((function(e){return e.objectBrowser.versionsMode})),b=(0,a.v9)((function(e){return e.objectBrowser.versionedFile})),v=(0,a.v9)((function(e){return e.system.anonymousMode})),j=(0,r.useState)(!1),_=(0,f.Z)(j,2),S=_[0],Z=_[1],N=[y.Ft.S3_PUT_OBJECT,y.Ft.S3_PUT_ACTIONS],O=(0,a.v9)((function(e){return e.console.session&&e.console.session.permissions||{}})),P=t;""!==t&&(P="/".concat(t));var A=P.split("/").filter((function(e){return""!==e})),D=A.length-1,R=P||n,M=I(O,R,N),U=(0,T.F)([R].concat((0,h.Z)(M)),N)||v,z=A.map((function(e,t){var i="".concat(A.slice(0,t+1).join("/"),"/"),o="/browser/".concat(n,"/").concat(i?"".concat((0,g.LL)(i)):"");return t===D&&e===b?null:(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)("span",{className:u.slashSpacingStyle,children:"/"}),t===D?(0,k.jsx)("span",{style:{cursor:"default",whiteSpace:"pre"},children:(0,g.eC)(e)}):(0,k.jsx)(w.rU,{style:{whiteSpace:"pre"},to:o,onClick:function(){c((0,E.db)({status:!1,objectName:""}))},children:(0,g.eC)(e)})]},"breadcrumbs-".concat(t.toString()))})),G=[];x&&(G=[(0,k.jsx)(r.Fragment,{children:(0,k.jsxs)("span",{children:[(0,k.jsx)("span",{className:u.slashSpacingStyle,children:"/"}),b," - Versions"]})},"breadcrumbs-versionedItem")]);var W=[(0,k.jsx)(r.Fragment,{children:(0,k.jsx)(w.rU,{to:"/browser/".concat(n),onClick:function(){c((0,E.db)({status:!1,objectName:""}))},children:n})},"breadcrumbs-root-path")].concat((0,h.Z)(z),(0,h.Z)(G));return(0,k.jsxs)(r.Fragment,{children:[(0,k.jsxs)("div",{className:u.breadcrumbsMain,children:[S&&(0,k.jsx)(L,{modalOpen:S,bucketName:n,folderName:t,onClose:function(){Z(!1)}}),(0,k.jsx)(p.OoM,{sx:{whiteSpace:"pre"},goBackFunction:function(){if(x)c((0,E.db)({status:!1,objectName:""}));else{if(0===A.length)return void l("/browser");var e=A.slice(0,-1);l("/browser/".concat(n).concat(e.length>0?"/".concat((0,g.LL)("".concat(e.join("/"),"/"))):""))}},additionalOptions:(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)(C(),{text:"".concat(n,"/").concat(A.join("/")),children:(0,k.jsx)(p.zxk,{id:"copy-path",icon:(0,k.jsx)(p.TIy,{style:{width:"12px",height:"12px",fill:"#969FA8",marginTop:-1}}),variant:"regular",onClick:function(){c((0,F.y1)("Path copied to clipboard"))},style:{width:"28px",height:"28px",color:"#969FA8",border:"#969FA8 1px solid",marginRight:5}})}),(0,k.jsx)("div",{className:u.additionalOptions,children:o})]}),children:W}),!i&&(0,k.jsx)(p.ua7,{tooltip:U?"Choose or create a new path":(0,y.MK)([y.Ft.S3_PUT_OBJECT,y.Ft.S3_PUT_ACTIONS],"create a new path"),children:(0,k.jsx)(p.zxk,{id:"new-path",onClick:function(){Z(!0)},disabled:!v&&(m||!U),icon:(0,k.jsx)(p.N$q,{style:{fill:"#969FA8"}}),style:{whiteSpace:"nowrap"},variant:"regular",label:"Create new path"})})]}),(0,k.jsx)("div",{className:u.breadcrumbsSecond,children:o})]})},A=t(47922),D=t(71715),R=t(77865),M=t(49900),U=t(57064),z=t(27454),G=(0,l.Z)((function(e){return(0,c.Z)({listUploadIcons:{height:20,"& .min-icon":{width:18,fill:"rgba(0,0,0,0.87)"}}})}))((function(e){var n=e.uploadPath,t=e.bucketName,i=e.forceDisable,o=void 0!==i&&i,s=e.uploadFileFunction,c=e.uploadFolderFunction,l=e.classes,d=e.overrideStyles,u=void 0===d?{}:d,m=(0,a.v9)((function(e){return e.system.anonymousMode})),x=(0,a.v9)((function(e){return e.console.session&&e.console.session.permissions||{}})),b=[y.Ft.S3_PUT_OBJECT,y.Ft.S3_PUT_ACTIONS],v=I(x,n,b),j=(0,r.useState)(null),g=(0,f.Z)(j,2),_=g[0],S=g[1],C=Boolean(_),Z=function(){S(null)},w=(0,T.F)([n].concat((0,h.Z)(v)),b)||m,N=(0,T.F)([t].concat((0,h.Z)(v)),b,!1,!0),F=w||N;return(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)(z.Z,{tooltip:F?"Upload Files":(0,y.MK)([y.Ft.S3_PUT_OBJECT,y.Ft.S3_PUT_ACTIONS],"upload files to this bucket"),children:(0,k.jsx)(p.zxk,{id:"upload-main","aria-controls":"upload-main-menu","aria-haspopup":"true","aria-expanded":C?"true":void 0,onClick:function(e){S(e.currentTarget)},label:"Upload",icon:(0,k.jsx)(p.rG2,{}),variant:"callAction",disabled:o||!F,sx:u})}),(0,k.jsxs)(D.Z,{id:"upload-main-menu","aria-labelledby":"upload-main",anchorEl:_,open:C,onClose:function(){Z()},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:[(0,k.jsxs)(R.Z,{onClick:function(){s(Z)},disabled:!w||o,children:[(0,k.jsx)(U.Z,{className:l.listUploadIcons,children:(0,k.jsx)(p.rG2,{})}),(0,k.jsx)(M.Z,{children:"Upload File"})]}),(0,k.jsxs)(R.Z,{onClick:function(){c(Z)},disabled:!N||o,children:[(0,k.jsx)(U.Z,{className:l.listUploadIcons,children:(0,k.jsx)(p.oXh,{})}),(0,k.jsx)(M.Z,{children:"Upload Folder"})]})]})]})})),W=(0,Z.Z)((function(e){return(0,c.Z)({detailsList:{borderColor:"#EAEDEE",borderWidth:0,borderStyle:"solid",borderRadius:3,borderBottomLeftRadius:0,borderBottomRightRadius:0,width:0,transitionDuration:"0.3s",overflowX:"hidden",overflowY:"auto",position:"relative",opacity:0,marginLeft:-1,"&.open":{width:300,minWidth:300,borderLeftWidth:1,opacity:1},"@media (max-width: 799px)":{"&.open":{width:"100%",minWidth:"100%",borderLeftWidth:0}}}})})),K=function(e){var n=e.open,t=e.closePanel,i=e.className,o=void 0===i?"":i,r=e.children,a=W();return(0,k.jsxs)(p.rjZ,{item:!0,className:"".concat(a.detailsList," ").concat(n?"open":""," ").concat(o),children:[(0,k.jsx)(p.zxk,{variant:"text",id:"close-details-list",onClick:t,icon:(0,k.jsx)(p.oto,{}),sx:{position:"absolute",right:5,top:18,padding:0,height:14,"&:hover:not(:disabled)":{backgroundColor:"transparent"}}}),r]})},H=t(64554),V=t(34433),J=[{value:"01",label:"January"},{value:"02",label:"February"},{value:"03",label:"March"},{value:"04",label:"April"},{value:"05",label:"May"},{value:"06",label:"June"},{value:"07",label:"July"},{value:"08",label:"August"},{value:"09",label:"September"},{value:"10",label:"October"},{value:"11",label:"November"},{value:"12",label:"December"}],Y=Array.from(Array(31),(function(e,n){return{value:(n+1).toString(),label:(n+1).toString()}})),q=(new Date).getFullYear(),$=Array.from(Array(50),(function(e,n){return{value:(n+q).toString(),label:(n+q).toString()}})),X=t(56028),Q=t(4942),ee=t(28182),ne=(0,r.forwardRef)((function(e,n){var t=e.classes,i=e.id,o=e.label,a=e.disableOptions,s=void 0!==a&&a,c=e.addSwitch,l=void 0!==c&&c,d=e.tooltip,u=void 0===d?"":d,m=e.borderBottom,x=void 0!==m&&m,b=e.onDateChange,v=e.value,j=void 0===v?"":v;(0,r.useImperativeHandle)(n,(function(){return{resetDate:A}}));var g=(0,r.useState)(!1),_=(0,f.Z)(g,2),S=_[0],C=_[1],Z=(0,r.useState)(""),w=(0,f.Z)(Z,2),T=w[0],y=w[1],N=(0,r.useState)(""),F=(0,f.Z)(N,2),E=F[0],O=F[1],I=(0,r.useState)(""),L=(0,f.Z)(I,2),B=L[0],P=L[1];(0,r.useEffect)((function(){if(""!==j){var e=j.split("-");P(e[0]),y(e[1]),O("".concat(parseInt(e[2])))}}),[j]),(0,r.useEffect)((function(){var e=function(e,n,t){var i=Date.parse("".concat(e,"-").concat(n,"-").concat(t));if(isNaN(i))return[!1,""];var o=parseInt(n),r=parseInt(t),a=o<10?"0".concat(o):o,s=r<10?"0".concat(r):r,c=new Date(i).toISOString().split("T")[0],l="".concat(e,"-").concat(a,"-").concat(s);return[c===l,l]}(B,T,E),n=(0,f.Z)(e,2),t=n[0],i=n[1];b(i,t)}),[T,E,B,b]);var A=function(){y(""),O(""),P("")},D=function(){return s||!!l&&!S},R=[{value:"",label:""}].concat((0,h.Z)(J)),M=[{value:"",label:""}].concat((0,h.Z)(Y)),U=[{value:"",label:""}].concat((0,h.Z)($));return(0,k.jsxs)(p.rjZ,{item:!0,xs:12,className:(0,ee.Z)(t.fieldContainer,(0,Q.Z)({},t.fieldContainerBorder,x)),children:[(0,k.jsx)("div",{className:t.labelContainer,children:(0,k.jsxs)(p.rjZ,{container:!0,children:[(0,k.jsxs)(p.AZs,{htmlFor:i,children:[(0,k.jsx)("span",{children:o}),""!==u&&(0,k.jsx)("div",{className:t.tooltipContainer,children:(0,k.jsx)(p.ua7,{tooltip:u,placement:"top",children:(0,k.jsx)("div",{className:t.tooltip,children:(0,k.jsx)(p.byK,{})})})})]}),l&&(0,k.jsx)(p.rsf,{indicatorLabels:["Specific Date","Default (7 Days)"],checked:S,value:"date_enabled",id:"date-status",name:"date-status",onChange:function(e){C(e.target.checked),e.target.checked||b("",!0)},switchOnly:!0})]})}),(0,k.jsxs)(p.xuv,{sx:{display:"flex",gap:12},children:[(0,k.jsx)(p.PhF,{id:"".concat(i,"-month"),name:"".concat(i,"-month"),value:T,onChange:function(e){y(e)},options:R,label:"",disabled:D()}),(0,k.jsx)(p.PhF,{id:"".concat(i,"-day"),name:"".concat(i,"-day"),value:E,onChange:function(e){O(e)},options:M,label:"",disabled:D()}),(0,k.jsx)(p.PhF,{id:"".concat(i,"-year"),name:"".concat(i,"-year"),value:B,onChange:function(e){P(e)},options:U,label:"",disabled:D()})]})]})})),te=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},u.YI),u.Hr),{},{fieldContainer:(0,o.Z)((0,o.Z)({},u.YI.fieldContainer),{},{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:10,marginTop:11,marginBottom:6})}))}))(ne),ie=t(66315),oe=t(31776),re=t(82342),ae=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},u.DF),u.ID),u.bK))}))((function(e){var n=e.classes,t=e.open,i=e.closeModalAndRefresh,o=e.objectName,s=e.objectInfo,c=e.bucketName,l=(0,d.TL)(),u=(0,a.v9)((function(e){return e.objectBrowser.retentionConfig})),h=(0,r.useState)(!0),m=(0,f.Z)(h,2),x=m[0],b=m[1],v=(0,r.useState)(""),j=(0,f.Z)(v,2),_=j[0],S=j[1],C=(0,r.useState)(""),Z=(0,f.Z)(C,2),w=Z[0],T=Z[1],y=(0,r.useState)(!1),N=(0,f.Z)(y,2),E=N[0],O=N[1],I=(0,r.useState)(!1),L=(0,f.Z)(I,2),B=L[0],P=L[1],A=(0,r.useState)(!1),D=(0,f.Z)(A,2),R=D[0],M=D[1];(0,r.useEffect)((function(){if(s.retention_mode&&(S((null===u||void 0===u?void 0:u.mode)||ie.oO.Governance),M(!0)),s.retention_until_date){var e=new Date(s.retention_until_date);if("Invalid Date"!==e.toString()){var n=e.getFullYear(),t=(o=e.getMonth()+1)<10?"0".concat(o):"".concat(o),i=e.getDate();isNaN(i)||"NaN"===t||isNaN(n)||T("".concat(n,"-").concat(t,"-").concat(i))}M(!0)}var o}),[s,null===u||void 0===u?void 0:u.mode]);var U=(0,r.useRef)(null),z=function(){b(!1),S(ie.oO.Governance),U.current&&U.current.resetDate()},G=R&&("governance"===_||""===_);return(0,k.jsxs)(X.Z,{title:"Set Retention Policy",modalOpen:t,onClose:function(){z(),i(!1)},children:[(0,k.jsxs)("div",{className:n.spacerBottom,children:[(0,k.jsx)("strong",{children:"Selected Object"}),": ",o]}),(0,k.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault()}(e)},children:[G&&(0,k.jsx)(p.rjZ,{item:!0,xs:12,className:n.formFieldRow,children:(0,k.jsx)(p.rsf,{value:"status",id:"status",name:"status",checked:x,onChange:function(e){b(!x)},label:"Status",indicatorLabels:["Enabled","Disabled"]})}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,className:n.formFieldRow,children:(0,k.jsx)(p.Eep,{currentValue:_,id:"type",name:"type",label:"Type",disableOptions:!x||R&&""!==_,onChange:function(e){S(e.target.value)},selectorOptions:[{label:"Governance",value:ie.oO.Governance},{label:"Compliance",value:ie.oO.Compliance}]})}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,className:"".concat(n.dateSelector," "),children:(0,k.jsx)(te,{id:"date",label:"Date",disableOptions:!(x&&("governance"===_||"compliance"===_)),ref:U,value:w,borderBottom:!0,onDateChange:function(e,n){O(n),n&&T(e)}})}),(0,k.jsxs)(p.rjZ,{item:!0,xs:12,className:n.modalButtonBar,children:[(0,k.jsx)(p.zxk,{id:"reset",type:"button",variant:"regular",onClick:z,label:"Reset"}),(0,k.jsx)(p.zxk,{id:"save",type:"submit",variant:"callAction",disabled:x&&""===_||x&&!E||B,onClick:function(){P(!0);var e=s.name||"",n=s.version_id||null,t=x||"governance"!==_?"".concat(w,"T23:59:59Z"):"";x||"governance"!==_?function(e,n,t){oe.h.buckets.putObjectRetention(c,{prefix:(0,g.LL)(e),version_id:n||""},{expires:t,mode:_}).then((function(){P(!1),i(!0)})).catch((function(e){l((0,F.zb)((0,re.g)(e.error))),P(!1)}))}(e,n,t):function(e,n){oe.h.buckets.deleteObjectRetention(c,{prefix:(0,g.LL)(e),version_id:n||""}).then((function(){P(!1),i(!0)})).catch((function(e){l((0,F.zb)((0,re.g)(e.error))),P(!1)}))}(e,n)},label:"Save"})]})]})]})})),se=t(23508),ce=t(9505),le=function(e){return"Enabled"===e||"Suspended"===e},de=function(e){var n=e.closeDeleteModalAndRefresh,t=e.deleteOpen,i=e.selectedBucket,o=e.selectedObject,s=e.versioningInfo,c=e.selectedVersion,l=void 0===c?"":c,u=(0,d.TL)(),h=(0,ce.Z)((function(){return n(!0)}),(function(e){u((0,F.Ih)(e)),"Access Denied."===e.detailedError&&n(!0)})),m=(0,f.Z)(h,2),x=m[0],b=m[1],v=(0,r.useState)(!1),j=(0,f.Z)(v,2),_=j[0],S=j[1],C=(0,r.useState)(!1),Z=(0,f.Z)(C,2),w=Z[0],N=Z[1],E=(0,a.v9)((function(e){return e.objectBrowser.retentionConfig})),O=(0,T.F)([i],[y.Ft.S3_BYPASS_GOVERNANCE_RETENTION])&&"governance"===(null===E||void 0===E?void 0:E.mode);if(!o)return null;return(0,k.jsx)(se.Z,{title:"Delete Object",confirmText:"Delete",isOpen:t,titleIcon:(0,k.jsx)(p.NvT,{}),isLoading:x,onConfirm:function(){var e=(0,g.IO)(o).endsWith("/");b("DELETE","/api/v1/buckets/".concat(i,"/objects?path=").concat(o).concat(""!==l?"&version_id=".concat(l):"&recursive=".concat(e,"&all_versions=").concat(_)).concat(w?"&bypass=true":""))},onClose:function(){return n(!1)},confirmationContent:(0,k.jsxs)(r.Fragment,{children:["Are you sure you want to delete: ",(0,k.jsx)("br",{}),(0,k.jsx)("b",{children:(0,g.IO)(o)})," ",""!==l?(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)("br",{}),(0,k.jsx)("br",{}),"Version ID:",(0,k.jsx)("br",{}),(0,k.jsx)("strong",{children:l})]}):"","? ",(0,k.jsx)("br",{}),(0,k.jsx)("br",{}),le(null===s||void 0===s?void 0:s.status)&&""===l&&(0,k.jsx)(r.Fragment,{children:(0,k.jsx)(p.rsf,{label:"Delete All Versions",indicatorLabels:["Yes","No"],checked:_,value:"delete_versions",id:"delete-versions",name:"delete-versions",onChange:function(e){S(!_)},description:""})}),O&&(_||""!==l)&&(0,k.jsx)(r.Fragment,{children:(0,k.jsx)("div",{style:{marginTop:10},children:(0,k.jsx)(p.rsf,{label:"Bypass Governance Mode",indicatorLabels:["Yes","No"],checked:w,value:"bypass_governance",id:"bypass_governance",name:"bypass_governance",onChange:function(e){N(!w)},description:""})})}),_&&(0,k.jsxs)(r.Fragment,{children:[(0,k.jsxs)("div",{style:{marginTop:10,border:"#c83b51 1px solid",borderRadius:3,padding:5,backgroundColor:"#c83b5120",color:"#c83b51"},children:["This will remove the object as well as all of its versions,"," ",(0,k.jsx)("br",{}),"This action is irreversible."]}),(0,k.jsx)("br",{}),"Are you sure you want to continue?"]})]})})},ue=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},u.DF),u.ID),u.bK))}))((function(e){var n=e.classes,t=e.open,i=e.closeModalAndRefresh,o=e.objectName,a=e.bucketName,s=e.actualInfo,c=(0,d.TL)(),l=(0,r.useState)(!1),u=(0,f.Z)(l,2),h=u[0],m=u[1],x=(0,r.useState)(!1),b=(0,f.Z)(x,2),v=b[0],_=b[1],S=s.version_id;(0,r.useEffect)((function(){var e=j()(s,"legal_hold_status","OFF");m("ON"===e)}),[s]);var C=function(){m(!1)};return(0,k.jsxs)(X.Z,{title:"Set Legal Hold",modalOpen:t,onClose:function(){C(),i(!1)},children:[(0,k.jsxs)(p.rjZ,{item:!0,xs:12,className:n.spacerBottom,children:["Object: ",a]}),(0,k.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault(),_(!0),oe.h.buckets.putObjectLegalHold(a,{prefix:(0,g.LL)(o),version_id:S||""},{status:h?ie.nY.Enabled:ie.nY.Disabled}).then((function(){_(!1),i(!0)})).catch((function(e){c((0,F.zb)((0,re.g)(e.error))),_(!1)}))}(e)},children:[(0,k.jsx)(p.rjZ,{item:!0,xs:12,className:n.formFieldRow,children:(0,k.jsx)(p.rsf,{value:"legalhold",id:"legalhold",name:"legalhold",checked:h,onChange:function(e){m(!h)},label:"Legal Hold Status",indicatorLabels:["Enabled","Disabled"],tooltip:"To enable this feature you need to enable versioning on the bucket before creation"})}),(0,k.jsxs)(p.rjZ,{item:!0,xs:12,className:n.modalButtonBar,children:[(0,k.jsx)(p.zxk,{id:"clear",type:"button",variant:"regular",onClick:C,label:"Clear"}),(0,k.jsx)(p.zxk,{id:"save",type:"submit",variant:"callAction",disabled:v,label:" Save"})]})]})]})})),he=t(78562),fe=t(79836),me=t(53382),pe=t(35855),xe=t(53994),be=function(e){return Array.isArray(e)?e.map(g.eC).join(", "):(0,g.eC)(e)},ve=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)({titleItem:{width:"35%"}},u.bK),u.$b))}))((function(e){var n=e.metaData,t=e.classes,i=e.linear,o=void 0!==i&&i,a=Object.keys(n);return o?(0,k.jsx)(r.Fragment,{children:a.map((function(e,i){var o=be(n[e]);return(0,k.jsxs)(H.Z,{className:t.metadataLinear,children:[(0,k.jsx)("strong",{children:e}),(0,k.jsx)("br",{}),o]},"box-meta-".concat(e,"-").concat(i.toString()))}))}):(0,k.jsxs)(b.ZP,{container:!0,children:[(0,k.jsx)(b.ZP,{item:!0,xs:12,sx:{marginTop:"25px",marginBottom:"5px"},children:(0,k.jsx)("h3",{style:{marginTop:"0",marginBottom:"0"},children:"Object Metadata"})}),(0,k.jsx)(b.ZP,{item:!0,xs:12,children:(0,k.jsx)(fe.Z,{className:t.table,"aria-label":"simple table",children:(0,k.jsx)(me.Z,{children:a.map((function(e,i){var o=be(n[e]);return(0,k.jsxs)(pe.Z,{children:[(0,k.jsx)(xe.Z,{component:"th",scope:"row",className:t.titleItem,children:e}),(0,k.jsx)(xe.Z,{align:"right",children:o})]},"tRow-".concat(i.toString()))}))})})})]})})),je=t(37762),ge=(0,l.Z)((function(e){return(0,c.Z)({fileName:{display:"flex",alignItems:"center","& .min-icon":{width:16,height:16,marginRight:4,minWidth:16,minHeight:16}},fileNameText:{whiteSpace:"pre",overflow:"hidden",textOverflow:"ellipsis"}})}))((function(e){var n=e.classes,t=e.icon,i=e.strings;return(0,k.jsxs)("div",{className:n.fileName,children:[t,(0,k.jsx)("span",{className:n.fileNameText,children:(0,g.e3)(i[i.length-1])})]})})),_e=[{icon:(0,k.jsx)(p.n9O,{}),extensions:["mp4","mov","avi","mpeg","mpg"]},{icon:(0,k.jsx)(p.mYf,{}),extensions:["mp3","m4a","aac"]},{icon:(0,k.jsx)(p.UU9,{}),extensions:["pdf"]},{icon:(0,k.jsx)(p.hjP,{}),extensions:["ppt","pptx"]},{icon:(0,k.jsx)(p.hz9,{}),extensions:["xls","xlsx"]},{icon:(0,k.jsx)(p.xDw,{}),extensions:["cer","crt","pem"]},{icon:(0,k.jsx)(p.jG9,{}),extensions:["html","xml","css","py","go","php","cpp","h","java"]},{icon:(0,k.jsx)(p.NqG,{}),extensions:["cfg","yaml"]},{icon:(0,k.jsx)(p.OkY,{}),extensions:["sql"]},{icon:(0,k.jsx)(p.ZAy,{}),extensions:["ttf","otf"]},{icon:(0,k.jsx)(p.p2x,{}),extensions:["doc","docx","txt","rtf"]},{icon:(0,k.jsx)(p.xhr,{}),extensions:["zip","rar","tar","gz"]},{icon:(0,k.jsx)(p.rtI,{}),extensions:["epub","mobi","azw","azw3"]},{icon:(0,k.jsx)(p.q$4,{}),extensions:["jpeg","jpg","gif","tiff","png","heic","dng"]}],Se=function(e){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],t=e,i=(0,k.jsx)(p.MoH,{});e.endsWith("/")&&(i=(0,k.jsx)(p.BI,{}),t=e.slice(0,-1));for(var o=e.toLowerCase(),r=0,a=_e;r svg":{marginRight:10}},tagsForLabel:{fontSize:16,margin:"20px 0 30px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",width:"100%"},currentTagsContainer:{fontSize:14,fontWeight:"normal"},noTagsForObject:{color:"#858585"},deleteTag:{color:"#C83B51",marginLeft:5}},u.DF),u.ID),u.bK))}))((function(e){var n,t=e.modalOpen,i=e.onCloseAndUpdate,s=e.bucketName,c=e.actualInfo,l=e.classes,u=(0,d.TL)(),h=(0,a.v9)(F.N5),m=(0,r.useState)(""),x=(0,f.Z)(m,2),v=x[0],_=x[1],S=(0,r.useState)(""),C=(0,f.Z)(S,2),Z=C[0],w=C[1],N=(0,r.useState)(!1),E=(0,f.Z)(N,2),O=E[0],I=E[1],L=(0,r.useState)(!1),B=(0,f.Z)(L,2),P=B[0],A=B[1],D=(0,r.useState)(""),R=(0,f.Z)(D,2),M=R[0],U=R[1],z=(0,r.useState)(""),G=(0,f.Z)(z,2),W=G[0],K=G[1],V=(0,g.LL)(c.name||""),J=c.tags,Y=Object.keys(J||{}),q=null===(n=c.name)||void 0===n?void 0:n.split("/"),$=(null===q||void 0===q?void 0:q.pop())||"",Q=function(e){return(0,k.jsxs)("div",{className:l.tagsForLabel,children:["Tag",e?"s":""," for: ",(0,k.jsx)("strong",{children:$})]})};return(0,k.jsx)(r.Fragment,{children:(0,k.jsx)(X.Z,{modalOpen:t,title:P?"Delete Tag":"Edit Tags",onClose:function(){i(!0)},titleIcon:P?(0,k.jsx)(p.dRf,{style:{fill:"#C83B51"}}):(0,k.jsx)(p.T0F,{}),children:P?(0,k.jsx)(r.Fragment,{children:(0,k.jsxs)(b.ZP,{container:!0,children:[Q(!1),"Are you sure you want to delete the tag"," ",(0,k.jsxs)("b",{className:l.deleteTag,children:[M," : ",W]})," ","?",(0,k.jsxs)(b.ZP,{item:!0,xs:12,className:l.modalButtonBar,children:[(0,k.jsx)(p.zxk,{id:"cancel",type:"button",variant:"regular",onClick:function(){U(""),K(""),A(!1)},label:"Cancel"}),(0,k.jsx)(p.zxk,{type:"submit",variant:"secondary",onClick:function(){var e=(0,o.Z)({},J);delete e[M];var n=h?c.version_id||"":"null";oe.h.buckets.putObjectTags(s,{prefix:V,version_id:n},{tags:e}).then((function(){i(!0),I(!1)})).catch((function(e){u((0,F.zb)((0,re.g)(e.error))),I(!1)}))},id:"deleteTag",label:"Delete Tag"})]})]})}):(0,k.jsxs)(b.ZP,{container:!0,children:[(0,k.jsx)(T.s,{scopes:[y.Ft.S3_GET_OBJECT_TAGGING,y.Ft.S3_GET_ACTIONS],resource:s,children:(0,k.jsxs)(H.Z,{sx:{display:"flex",flexFlow:"column",width:"100%"},children:[Q(!0),(0,k.jsxs)("div",{className:l.currentTagsContainer,children:["Current Tags:",(0,k.jsx)("br",{}),0===Y.length?(0,k.jsx)("span",{className:l.noTagsForObject,children:"There are no tags for this object"}):(0,k.jsx)(r.Fragment,{}),(0,k.jsx)(H.Z,{sx:{marginTop:"5px",marginBottom:"15px"},children:Y.map((function(e,n){var t=j()(J,"".concat(e),"");return""!==t?(0,k.jsx)(T.s,{scopes:[y.Ft.S3_DELETE_OBJECT_TAGGING],resource:s,errorProps:{deleteIcon:null,onDelete:null},children:(0,k.jsx)(Ce.Z,{style:{textTransform:"none",marginRight:"5px",marginBottom:"5px"},size:"small",label:"".concat(e," : ").concat(t),color:"primary",deleteIcon:(0,k.jsx)(Ze.Z,{}),onDelete:function(){!function(e,n){U(e),K(n),A(!0)}(e,t)}})},"chip-".concat(n)):null}))})]})]})}),(0,k.jsx)(T.s,{scopes:[y.Ft.S3_PUT_OBJECT_TAGGING,y.Ft.S3_PUT_ACTIONS],resource:s,errorProps:{disabled:!0,onClick:null},children:(0,k.jsxs)(b.ZP,{container:!0,children:[(0,k.jsx)(p.NZf,{icon:(0,k.jsx)(p.OCT,{}),separator:!1,children:"Add New Tag"}),(0,k.jsx)(b.ZP,{item:!0,xs:12,className:l.formFieldRow,children:(0,k.jsx)(p.Wzg,{value:v,label:"Tag Key",id:"newTagKey",name:"newTagKey",placeholder:"Enter Tag Key",onChange:function(e){_(e.target.value)}})}),(0,k.jsx)(b.ZP,{item:!0,xs:12,className:l.formFieldRow,children:(0,k.jsx)(p.Wzg,{value:Z,label:"Tag Label",id:"newTagLabel",name:"newTagLabel",placeholder:"Enter Tag Label",onChange:function(e){w(e.target.value)}})}),(0,k.jsxs)(b.ZP,{item:!0,xs:12,className:l.modalButtonBar,children:[(0,k.jsx)(p.zxk,{id:"clear",type:"button",variant:"regular",color:"primary",onClick:function(){w(""),_("")},label:"Clear"}),(0,k.jsx)(p.zxk,{type:"submit",variant:"callAction",disabled:""===Z.trim()||""===v.trim()||O,onClick:function(){I(!0);var e={};e[v]=Z;var n=(0,o.Z)((0,o.Z)({},J),e),t=h?c.version_id||"":"null";oe.h.buckets.putObjectTags(s,{prefix:V,version_id:t},{tags:n}).then((function(){i(!0),I(!1)})).catch((function(e){u((0,F.zb)((0,re.g)(e.error))),I(!1)}))},id:"saveTag",label:"Save"})]})]})})]})})})})),Te=t(74165),ye=t(15861),Ne=t(51691),Fe=t(73669),Ee=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},u.DF),u.ID),u.bK))}))((function(e){var n=e.classes,t=e.closeInspectModalAndRefresh,i=e.inspectOpen,o=e.inspectPath,a=e.volumeName,s=(0,d.TL)(),c=function(){return t(!1)},l=(0,r.useState)(!0),u=(0,f.Z)(l,2),h=u[0],m=u[1],x=(0,r.useState)(""),b=(0,f.Z)(x,2),v=b[0],j=b[1],_=(0,r.useState)(""),S=(0,f.Z)(_,2),C=S[0],Z=S[1];if(!o)return null;var w=function(){var e=(0,ye.Z)((0,Te.Z)().mark((function e(n){return(0,Te.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,fetch(n,{method:"GET"});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}(),T=function(){var e=(0,ye.Z)((0,Te.Z)().mark((function e(){var n,t,i;return(0,Te.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=(0,g.LL)(o+"/xl.meta"),t=(0,g.LL)(a),i="/api/v1/admin/inspect?volume=".concat(t,"&file=").concat(n,"&encrypt=").concat(h),w(i).then(function(){var e=(0,ye.Z)((0,Te.Z)().mark((function e(n){var t,i,o,r;return(0,Te.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n.ok){e.next=5;break}return e.next=3,n.json();case 3:t=e.sent,s((0,F.Ih)({errorMessage:t.message,detailedError:t.code}));case 5:return e.next=7,n.blob();case 7:if(i=e.sent,o=n.headers.get("content-disposition").split('"')[1],r=(0,g.Do)(o)||"",(0,g.zZ)(i,o),Z(o),""!==r){e.next=15;break}return c(),e.abrupt("return");case 15:j(r);case 16:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}()).catch((function(e){s((0,F.Ih)(e))}));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return(0,k.jsxs)(r.Fragment,{children:[!v&&(0,k.jsx)(X.Z,{modalOpen:i,titleIcon:(0,k.jsx)(p.Gp8,{}),title:"Inspect Object",onClose:c,children:(0,k.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault()}(e)},children:["Would you like to encrypt ",(0,k.jsx)("b",{children:(0,g.IO)(o)}),"?"," ",(0,k.jsx)("br",{}),(0,k.jsx)(p.rsf,{label:"Encrypt",indicatorLabels:["Yes","No"],checked:h,value:"encrypt",id:"encrypt",name:"encrypt",onChange:function(e){m(!h)},description:""}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,className:n.modalButtonBar,children:(0,k.jsx)(p.zxk,{id:"inspect",type:"submit",variant:"callAction",color:"primary",onClick:T,label:"Inspect"})})]})}),v?(0,k.jsx)(X.Z,{modalOpen:i,title:"Inspect Decryption Key",onClose:function(){(0,g.kT)(C),c(),j("")},titleIcon:(0,k.jsx)(p.tvm,{}),children:(0,k.jsxs)(Ne.Z,{children:[(0,k.jsxs)(p.xuv,{children:["This will be displayed only once. It cannot be recovered.",(0,k.jsx)("br",{}),"Use secure medium to share this key."]}),(0,k.jsx)(p.xuv,{children:(0,k.jsx)(Fe.Z,{value:v})})]})}):null]})})),Oe=t(21435),Ie=t(81159),ke=t(76610),Le=function(e,n,t,i){var o,r=(0,g.LL)("".concat(n,"-").concat(i.name,"-").concat((new Date).getTime(),"-").concat(Math.random())),a=(0,g.mv)().toLowerCase().includes("win");if(((null===(o=i.name)||void 0===o?void 0:o.length)||0)>200&&a)e((0,E.Hg)(!0));else{var s=(0,ke.YO)(8),c=(0,A.LR)(n,t,i.version_id,i.size||0,null,s,(function(n){e((0,E.RO)({instanceID:r,progress:n}))}),(function(){e((0,E.oK)(r))}),(function(n){e((0,E.qJ)({instanceID:r,msg:n}))}),(function(){e((0,E.Im)(r))}),(function(){e((0,F.y1)("File download will be handled directly by the browser."))}));(0,ke.EN)(s,c),e((0,E.Mc)({ID:s,bucketName:n,done:!1,instanceID:r,percentage:0,prefix:i.name||"",type:"download",waitingForFile:!0,failed:!1,cancelled:!1,errorMessage:""}))}},Be=(0,Z.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},u.ID),u.DF),u.bK),u.Bz))})),Pe=function(e){var n=e.open,t=e.closeModal,i=e.currentItem,o=e.internalPaths,a=e.actualInfo,s=e.bucketName,c=Be(),l=(0,d.TL)(),u=(0,r.useState)(i),h=(0,f.Z)(u,2),m=h[0],x=h[1],v=(0,r.useState)(!1),j=(0,f.Z)(v,2),g=j[0],_=j[1];return(0,k.jsxs)(X.Z,{title:"Rename Download",modalOpen:n,onClose:t,titleIcon:(0,k.jsx)(p.dY8,{}),children:[(0,k.jsxs)("div",{children:["The file you are trying to download has a long name.",(0,k.jsx)("br",{}),"This can cause issues on Windows Systems by trimming the file name after download.",(0,k.jsx)("br",{}),(0,k.jsx)("br",{})," We recommend to rename the file download"]}),(0,k.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault(),Le(l,s,o,a),t()}(e)},children:(0,k.jsxs)(b.ZP,{container:!0,children:[(0,k.jsxs)(b.ZP,{item:!0,xs:12,className:c.modalFormScrollable,children:[(0,k.jsx)(b.ZP,{item:!0,xs:12,className:c.formFieldRow,children:(0,k.jsx)(Oe.Z,{id:"download-filename",name:"download-filename",onChange:function(e){x(e.target.value)},label:"",type:"text",value:m,error:m.length>200&&!g?"Filename should be less than 200 characters long.":""})}),(0,k.jsx)(b.ZP,{item:!0,xs:12,className:c.formFieldRow,children:(0,k.jsx)(Ie.Z,{value:"acceptLongName",id:"acceptLongName",name:"acceptLongName",checked:g,onChange:function(e){_(e.target.checked),e.target.checked&&x(i)},label:"Use Original Name"})})]}),(0,k.jsx)(b.ZP,{item:!0,xs:12,className:c.modalButtonBar,children:(0,k.jsx)(p.zxk,{id:"download-file",type:"submit",variant:"callAction",color:"primary",disabled:m.length>200&&!g,label:"Download File"})})]})})]})},Ae={is_latest:!0,last_modified:"",legal_hold_status:"",name:"",retention_mode:"",retention_until_date:"",size:0,tags:{},version_id:void 0},De=(0,l.Z)((function(){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)({ObjectDetailsTitle:{display:"flex",alignItems:"center","& .min-icon":{width:26,height:26,minWidth:26,minHeight:26}},objectNameContainer:{whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",alignItems:"center",marginLeft:10},capitalizeFirst:{textTransform:"capitalize"}},u.OR),u.bK),u.VI),u.$b))}))((function(e){var n=e.classes,t=e.internalPaths,i=e.bucketName,o=e.versioningInfo,s=e.locking,c=e.onClosePanel,l=(0,d.TL)(),u=(0,a.v9)(F.N5),h=(0,a.v9)((function(e){return e.objectBrowser.versionsMode})),m=(0,a.v9)((function(e){return e.objectBrowser.selectedVersion})),x=(0,a.v9)((function(e){return e.objectBrowser.loadingObjectInfo})),v=(0,r.useState)(!1),_=(0,f.Z)(v,2),S=_[0],C=_[1],Z=(0,r.useState)(!1),w=(0,f.Z)(Z,2),N=w[0],O=w[1],I=(0,r.useState)(!1),L=(0,f.Z)(I,2),B=L[0],P=L[1],D=(0,r.useState)(!1),R=(0,f.Z)(D,2),M=R[0],U=R[1],G=(0,r.useState)(!1),W=(0,f.Z)(G,2),K=W[0],J=W[1],Y=(0,r.useState)(null),q=(0,f.Z)(Y,2),$=q[0],X=q[1],Q=(0,r.useState)([]),ee=(0,f.Z)(Q,2),ne=ee[0],te=ee[1],ie=(0,r.useState)(null),re=(0,f.Z)(ie,2),se=re[0],ce=re[1],le=(0,r.useState)([]),fe=(0,f.Z)(le,2),me=fe[0],pe=fe[1],xe=(0,r.useState)(!1),be=(0,f.Z)(xe,2),je=be[0],ge=be[1],_e=(0,r.useState)(!1),Ce=(0,f.Z)(_e,2),Ze=Ce[0],Te=Ce[1],ye=(0,r.useState)(0),Ne=(0,f.Z)(ye,2),Fe=Ne[0],Oe=Ne[1],Ie=(0,r.useState)(!1),ke=(0,f.Z)(Ie,2),Be=ke[0],De=ke[1],Re=(0,r.useState)(null),Me=(0,f.Z)(Re,2),Ue=Me[0],ze=Me[1],Ge=(0,r.useState)(!1),We=(0,f.Z)(Ge,2),Ke=We[0],He=We[1],Ve=((0,g.IO)(t)||"").split("/").pop()||"",Je=[];$&&$.name&&(Je=$.name.split("/")),(0,r.useEffect)((function(){if(u&&ne&&ne.length>=1){var e=ne.find((function(e){return e.is_latest}))||Ae;""!==m&&(e=ne.find((function(e){return e.version_id===m}))||Ae),e.is_delete_marker||He(!0),X(e)}}),[m,u,ne]),(0,r.useEffect)((function(){x&&""!==t&&oe.h.buckets.listObjects(i,{prefix:t,with_versions:u}).then((function(e){var n=e.data.objects||[];if(u){te(n),pe(n);var t=n.reduce((function(e,n){return null!==n&&void 0!==n&&n.size?e+n.size:e}),0);Oe(t)}else{var i=n[0];X(i),pe([]),i.is_delete_marker||He(!0)}l((0,E.vH)(!1))})).catch((function(e){console.error("Error loading object details",e.error),l((0,E.vH)(!1))}))}),[x,i,t,l,u,m]),(0,r.useEffect)((function(){Ke&&""!==t&&oe.h.buckets.getObjectMetadata(i,{prefix:t}).then((function(e){var n=j()(e.data,"objectMetadata",{});ze(n),He(!1)})).catch((function(e){console.error("Error Getting Metadata Status: ",e.detailedError),He(!1)}))}),[i,t,Ke]);var Ye=[];$&&$.tags&&(Ye=Object.keys($.tags));var qe=(0,k.jsx)("div",{style:{textAlign:"center",marginTop:35},children:(0,k.jsx)(p.aNw,{})});if(!$)return x?qe:null;var $e=Je.length>0?Je[Je.length-1]:$.name,Xe=[i,Ve,[i,$.name].join("/")],Qe=(0,T.F)(i,[y.Ft.S3_PUT_OBJECT_LEGAL_HOLD,y.Ft.S3_PUT_ACTIONS]),en=(0,T.F)(Xe,[y.Ft.S3_PUT_OBJECT_TAGGING,y.Ft.S3_PUT_ACTIONS]),nn=(0,T.F)(Xe,[y.Ft.S3_GET_OBJECT_RETENTION,y.Ft.S3_PUT_OBJECT_RETENTION,y.Ft.S3_GET_ACTIONS,y.Ft.S3_PUT_ACTIONS],!0),tn=(0,T.F)(Xe,[y.Ft.ADMIN_INSPECT_DATA]),on=(0,T.F)(Xe,[y.Ft.S3_GET_BUCKET_VERSIONING,y.Ft.S3_PUT_BUCKET_VERSIONING,y.Ft.S3_GET_OBJECT_VERSION,y.Ft.S3_GET_ACTIONS,y.Ft.S3_PUT_ACTIONS]),rn=(0,T.F)(Xe,[y.Ft.S3_GET_OBJECT,y.Ft.S3_GET_ACTIONS]),an=(0,T.F)([i,Ve,[i,$.name].join("/")],[y.Ft.S3_DELETE_OBJECT]),sn=(0,A.s7)(Ue,Ve),cn=[{action:function(){Le(l,i,t,$)},label:"Download",disabled:!!$.is_delete_marker||!rn,icon:(0,k.jsx)(p._8t,{}),tooltip:rn?"Download this Object":(0,y.MK)([y.Ft.S3_GET_OBJECT,y.Ft.S3_GET_ACTIONS],"download this object")},{action:function(){C(!0)},label:"Share",disabled:!!$.is_delete_marker||!rn,icon:(0,k.jsx)(p.aAc,{}),tooltip:rn?"Share this File":(0,y.MK)([y.Ft.S3_GET_OBJECT,y.Ft.S3_GET_ACTIONS],"share this object")},{action:function(){Te(!0)},label:"Preview",disabled:!!$.is_delete_marker||"none"===sn&&!rn,icon:(0,k.jsx)(p.P99,{}),tooltip:rn?"Preview this File":(0,y.MK)([y.Ft.S3_GET_OBJECT,y.Ft.S3_GET_ACTIONS],"preview this object")},{action:function(){U(!0)},label:"Legal Hold",disabled:!s||!u||!!$.is_delete_marker||!Qe||""!==m,icon:(0,k.jsx)(p.fNL,{}),tooltip:Qe?s?"Change Legal Hold rules for this File":"Object Locking must be enabled on this bucket in order to set Legal Hold":(0,y.MK)([y.Ft.S3_PUT_OBJECT_LEGAL_HOLD,y.Ft.S3_PUT_ACTIONS],"change legal hold settings for this object")},{action:function(){O(!0)},label:"Retention",disabled:!u||!!$.is_delete_marker||!nn||""!==m||!s,icon:(0,k.jsx)(p.E9d,{}),tooltip:nn?s?"Change Retention rules for this File":"Object Locking must be enabled on this bucket in order to set Retention Rules":(0,y.MK)([y.Ft.S3_GET_OBJECT_RETENTION,y.Ft.S3_PUT_OBJECT_RETENTION,y.Ft.S3_GET_ACTIONS,y.Ft.S3_PUT_ACTIONS],"change Retention Rules for this object")},{action:function(){P(!0)},label:"Tags",disabled:!!$.is_delete_marker||""!==m||!en,icon:(0,k.jsx)(p.DgT,{}),tooltip:en?"Change Tags for this File":(0,y.MK)([y.Ft.S3_PUT_OBJECT_TAGGING,y.Ft.S3_GET_OBJECT_TAGGING,y.Ft.S3_GET_ACTIONS,y.Ft.S3_PUT_ACTIONS],"set Tags on this object")},{action:function(){J(!0)},label:"Inspect",disabled:!u||!!$.is_delete_marker||""!==m||!tn,icon:(0,k.jsx)(p.Gp8,{}),tooltip:tn?"Inspect this file":(0,y.MK)([y.Ft.ADMIN_INSPECT_DATA],"inspect this file")},{action:function(){l((0,E.db)({status:!h,objectName:$e}))},label:h?"Hide Object Versions":"Display Object Versions",icon:(0,k.jsx)(p.cRd,{}),disabled:!u||!($.version_id&&"null"!==$.version_id)||!on,tooltip:on?$.version_id&&"null"!==$.version_id?"Display Versions for this file":"":(0,y.MK)([y.Ft.S3_GET_BUCKET_VERSIONING,y.Ft.S3_PUT_BUCKET_VERSIONING,y.Ft.S3_GET_OBJECT_VERSION,y.Ft.S3_GET_ACTIONS,y.Ft.S3_PUT_ACTIONS],"display all versions of this object")}];return(0,k.jsxs)(r.Fragment,{children:[S&&$&&(0,k.jsx)(V.default,{open:S,closeModalAndRefresh:function(){ce(null),C(!1)},bucketName:i,dataObject:se||$}),N&&$&&(0,k.jsx)(ae,{open:N,closeModalAndRefresh:function(e){O(!1),e&&l((0,E.vH)(!0))},objectName:Ve,objectInfo:$,bucketName:i}),je&&(0,k.jsx)(de,{deleteOpen:je,selectedBucket:i,selectedObject:t,closeDeleteModalAndRefresh:function(e){ge(!1),e&&""===m?c(!0):(l((0,E.Eq)(!0)),l((0,E.M3)("")),l((0,E.vH)(!0)))},versioningInfo:u?o:void 0,selectedVersion:m}),M&&$&&(0,k.jsx)(ue,{open:M,closeModalAndRefresh:function(e){U(!1),e&&l((0,E.vH)(!0))},objectName:$.name||"",bucketName:i,actualInfo:$}),Ze&&$&&(0,k.jsx)(he.default,{open:Ze,bucketName:i,object:{name:$.name||"",version_id:$.version_id||"null",size:$.size||0,content_type:"",last_modified:$.last_modified||""},onClosePreview:function(){Te(!1)}}),B&&$&&(0,k.jsx)(we,{modalOpen:B,bucketName:i,actualInfo:$,onCloseAndUpdate:function(e){P(!1),e&&l((0,E.vH)(!0))}}),K&&$&&(0,k.jsx)(Ee,{inspectOpen:K,volumeName:i,inspectPath:$.name||"",closeInspectModalAndRefresh:function(e){J(!1),e&&l((0,E.vH)(!0))}}),Be&&$&&(0,k.jsx)(Pe,{open:Be,closeModal:function(){De(!1)},currentItem:Ve,bucketName:i,internalPaths:t,actualInfo:$}),x?(0,k.jsx)(r.Fragment,{children:qe}):(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)(p.Wk,{title:(0,k.jsxs)("div",{className:n.ObjectDetailsTitle,children:[Se($e||"",!0),(0,k.jsx)("span",{className:n.objectNameContainer,children:$e})]}),items:cn}),(0,k.jsx)(z.Z,{tooltip:an?"":(0,y.MK)([y.Ft.S3_DELETE_OBJECT],"delete this object"),children:(0,k.jsx)(b.ZP,{item:!0,xs:12,sx:{justifyContent:"center",display:"flex"},children:(0,k.jsx)(T.s,{resource:[i,Ve,[i,$.name].join("/")],scopes:[y.Ft.S3_DELETE_OBJECT],errorProps:{disabled:!0},children:(0,k.jsx)(p.zxk,{id:"delete-element-click",icon:(0,k.jsx)(p.pJl,{}),iconLocation:"start",fullWidth:!0,variant:"secondary",onClick:function(){ge(!0)},disabled:""===m&&$.is_delete_marker,sx:{width:"calc(100% - 44px)",margin:"8px 0"},label:"Delete".concat(""!==m?" version":"")})})})}),(0,k.jsx)(p.AG2,{icon:(0,k.jsx)(p.Gvh,{}),label:"Object Info"}),(0,k.jsxs)(H.Z,{className:n.detailContainer,children:[(0,k.jsx)("strong",{children:"Name:"}),(0,k.jsx)("br",{}),(0,k.jsx)("div",{style:{overflowWrap:"break-word"},children:$e})]}),""!==m&&(0,k.jsxs)(H.Z,{className:n.detailContainer,children:[(0,k.jsx)("strong",{children:"Version ID:"}),(0,k.jsx)("br",{}),m]}),(0,k.jsxs)(H.Z,{className:n.detailContainer,children:[(0,k.jsx)("strong",{children:"Size:"}),(0,k.jsx)("br",{}),(0,g.ae)("".concat($.size||"0"))]}),$.version_id&&"null"!==$.version_id&&""===m&&(0,k.jsxs)(H.Z,{className:n.detailContainer,children:[(0,k.jsx)("strong",{children:"Versions:"}),(0,k.jsx)("br",{}),me.length," version",1!==me.length?"s":"",","," ",(0,g.l5)(Fe)]}),""===m&&(0,k.jsxs)(H.Z,{className:n.detailContainer,children:[(0,k.jsx)("strong",{children:"Last Modified:"}),(0,k.jsx)("br",{}),function(e){var n=new Date,t=new Date(e),i=n.getTime()-t.getTime(),o=(0,g.nF)(i,"ms");return""!==o.trim()?"".concat(o," ago"):"Just now"}($.last_modified||"")]}),(0,k.jsxs)(H.Z,{className:n.detailContainer,children:[(0,k.jsx)("strong",{children:"ETAG:"}),(0,k.jsx)("br",{}),$.etag||"N/A"]}),(0,k.jsxs)(H.Z,{className:n.detailContainer,children:[(0,k.jsx)("strong",{children:"Tags:"}),(0,k.jsx)("br",{}),0===Ye.length?"N/A":Ye.map((function(e,n){return(0,k.jsxs)("span",{children:[e,":",j()($,"tags.".concat(e),""),n div":{borderBottomColor:j()(n,"boxBackground","#F8F8F8")}}},"& .versionContainer":{fontSize:16,fontWeight:"bold",display:"flex",alignItems:"center","& svg.min-icon":{width:18,height:18,minWidth:18,minHeight:18,marginRight:10}},"& .buttonContainer":{textAlign:"right","& button":{marginLeft:"1.5rem"}},"& .versionID":{fontSize:"12px",margin:"2px 0",whiteSpace:"nowrap",textOverflow:"ellipsis",maxWidth:"95%",overflow:"hidden"},"& .versionData":{marginRight:"10px",fontSize:12,color:"#868686"},"@media (max-width: 600px)":{"& .buttonContainer":{"& button":{marginLeft:"5px"}}},"@media (max-width: 799px)":{"&:before":{display:"none"},"& .mainFileVersionItem":{padding:"5px 0px",margin:0},"& .intermediateLayer":{margin:0,"&:hover, &.selected":{backgroundColor:"transparent","& > div":{borderBottomColor:j()(n,"boxBackground","#F8F8F8")}}},"& .versionContainer":{fontSize:14,"& svg.min-icon":{display:"none"}},"& .versionData":{textOverflow:"ellipsis",maxWidth:"95%",overflow:"hidden",whiteSpace:"nowrap"},"& .collapsableInfo":{display:"flex",flexDirection:"column"},"& .versionItem":{display:"none"}}}})),Ke=function(e){var n=e.fileName,t=e.versionInfo,i=e.isSelected,o=e.checkable,r=e.isChecked,a=e.onCheck,s=e.onShare,c=e.onDownload,l=e.onRestore,d=e.onPreview,u=e.globalClick,h=e.index,f=e.key,m=e.style,b=t.is_delete_marker,v=[{icon:(0,k.jsx)(p.P99,{}),action:d,tooltip:"Preview"},{icon:(0,k.jsx)(p._8t,{}),action:c,tooltip:"Download this version"},{icon:(0,k.jsx)(p.aAc,{}),action:s,tooltip:"Share this version"},{icon:(0,k.jsx)(p.D7Y,{}),action:l,tooltip:"Restore this version"}],j=null;t.is_delete_marker?j="deleted":t.is_latest?j="current":"null"===t.version_id&&(j="null");var _=x.ou.now();return t.last_modified&&(_=x.ou.fromISO(t.last_modified)),(0,k.jsx)(We,{children:(0,k.jsx)(p.rjZ,{container:!0,className:"ctrItem",onClick:function(){u(t)},style:m,children:(0,k.jsx)(p.rjZ,{item:!0,xs:12,className:"intermediateLayer".concat(" ",i?"selected":""),children:(0,k.jsxs)(p.rjZ,{item:!0,xs:!0,className:"mainFileVersionItem ".concat(t.is_delete_marker?"deleted":""),children:[(0,k.jsx)(p.rjZ,{item:!0,xs:12,children:(0,k.jsxs)(p.rjZ,{container:!0,children:[(0,k.jsxs)(p.rjZ,{item:!0,xs:!0,md:4,className:"versionContainer",children:[o&&(0,k.jsx)(Ge.Z,{checked:r,id:"select-".concat(t.version_id),label:"",name:"select-".concat(t.version_id),onChange:function(e){e.stopPropagation(),e.preventDefault(),a(t.version_id||"")},value:t.version_id||"",disabled:t.is_delete_marker,overrideCheckboxStyles:{paddingLeft:0,height:34,width:25},noTopMargin:!0}),Se(n,!0)," v",h.toString(),(0,k.jsx)("span",{className:"versionItem",children:j&&(0,k.jsx)(ze,{type:j})})]}),(0,k.jsx)(p.rjZ,{item:!0,xs:10,md:8,className:"buttonContainer",children:v.map((function(e,n){return(0,k.jsx)(p.ua7,{tooltip:e.tooltip,children:(0,k.jsx)(p.hU,{size:"small",id:"version-action-".concat(e.tooltip,"-").concat(n.toString()),className:"spacing".concat(" ",b?"buttonDisabled":""),disabled:b,onClick:function(n){n.stopPropagation(),b?n.preventDefault():e.action(t)},sx:{backgroundColor:"#F8F8F8",borderRadius:"100%",width:"28px",height:"28px",padding:"5px","& .min-icon":{width:"14px",height:"14px"}},children:e.icon})},"version-action-".concat(e.tooltip,"-").concat(n.toString()))}))})]})}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,className:"versionID",children:"null"!==t.version_id?t.version_id:"-"}),(0,k.jsxs)(p.rjZ,{item:!0,xs:12,className:"collapsableInfo",children:[(0,k.jsxs)("span",{className:"versionData",children:[(0,k.jsx)("strong",{children:"Last modified:"})," ",_.toFormat("ccc, LLL dd yyyy HH:mm:ss (ZZZZ)")]}),(0,k.jsxs)("span",{className:"versionData",children:[(0,k.jsx)("strong",{children:"Size:"})," ",(0,g.ae)("".concat(t.size||"0"))]})]})]})})},f)})},He=function(e){var n=e.closeDeleteModalAndRefresh,t=e.deleteOpen,i=e.selectedBucket,o=e.selectedObject,s=(0,d.TL)(),c=(0,r.useState)(!1),l=(0,f.Z)(c,2),u=l[0],h=l[1],m=(0,r.useState)(""),x=(0,f.Z)(m,2),b=x[0],v=x[1],j=(0,r.useState)(!1),_=(0,f.Z)(j,2),S=_[0],C=_[1],Z=(0,a.v9)((function(e){return e.objectBrowser.retentionConfig})),w=(0,T.F)([i],[y.Ft.S3_BYPASS_GOVERNANCE_RETENTION])&&"governance"===(null===Z||void 0===Z?void 0:Z.mode);if((0,r.useEffect)((function(){u&&oe.h.buckets.deleteObject(i,{path:o,non_current_versions:!0,bypass:S}).then((function(){n(!0)})).catch((function(e){s((0,F.Ih)((0,re.g)(e.error))),h(!1)}))}),[u,n,s,o,i,S]),!o)return null;return(0,k.jsx)(se.Z,{title:"Delete Non-Current versions",confirmText:"Delete",isOpen:t,titleIcon:(0,k.jsx)(p.NvT,{}),isLoading:u,onConfirm:function(){h(!0)},onClose:function(){return n(!1)},confirmButtonProps:{disabled:"YES, PROCEED"!==b||u},confirmationContent:(0,k.jsxs)(r.Fragment,{children:["Are you sure you want to delete all the non-current versions for:"," ",(0,k.jsx)("b",{children:(0,g.IO)(o)}),"? ",(0,k.jsx)("br",{}),w&&(0,k.jsx)(r.Fragment,{children:(0,k.jsx)("div",{style:{marginTop:10},children:(0,k.jsx)(p.rsf,{label:"Bypass Governance Mode",indicatorLabels:["Yes","No"],checked:S,value:"bypass_governance",id:"bypass_governance",name:"bypass_governance",onChange:function(e){C(!S)},description:""})})}),(0,k.jsx)("br",{}),"To continue please type ",(0,k.jsx)("b",{children:"YES, PROCEED"})," in the box.",(0,k.jsx)("br",{}),(0,k.jsx)("br",{}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,children:(0,k.jsx)(p.Wzg,{id:"type-confirm",name:"retype-tenant",onChange:function(e){v(e.target.value)},label:"",value:b})})]})})},Ve=function(e){var n=e.closeDeleteModalAndRefresh,t=e.deleteOpen,i=e.selectedBucket,o=e.selectedVersions,s=e.selectedObject,c=(0,d.TL)(),l=(0,r.useState)(!1),u=(0,f.Z)(l,2),h=u[0],m=u[1],x=(0,r.useState)(!1),b=(0,f.Z)(x,2),v=b[0],j=b[1],g=(0,a.v9)((function(e){return e.objectBrowser.retentionConfig})),_=(0,T.F)([i],[y.Ft.S3_BYPASS_GOVERNANCE_RETENTION])&&"governance"===(null===g||void 0===g?void 0:g.mode);return(0,r.useEffect)((function(){if(h){var e=o.map((function(e){return{path:s,versionID:e,recursive:!1}}));e.length>0&&oe.h.buckets.deleteMultipleObjects(i,e,{all_versions:!1,bypass:v}).then((function(){m(!1),n(!0)})).catch((function(e){c((0,F.Ih)((0,re.g)(e.error))),m(!1)}))}}),[h,n,i,s,o,v,c]),o?(0,k.jsx)(se.Z,{title:"Delete Selected Versions",confirmText:"Delete",isOpen:t,titleIcon:(0,k.jsx)(p.NvT,{}),isLoading:h,onConfirm:function(){m(!0)},onClose:function(){return n(!1)},confirmationContent:(0,k.jsxs)(r.Fragment,{children:["Are you sure you want to delete the selected ",o.length," ","versions for ",(0,k.jsx)("strong",{children:s}),"?",_&&(0,k.jsx)(r.Fragment,{children:(0,k.jsx)("div",{style:{marginTop:10},children:(0,k.jsx)(p.rsf,{label:"Bypass Governance Mode",indicatorLabels:["Yes","No"],checked:v,value:"bypass_governance",id:"bypass_governance",name:"bypass_governance",onChange:function(e){j(!v)},description:""})})})]})}):null},Je=t(5171),Ye={is_latest:!0,last_modified:"",legal_hold_status:"",name:"",retention_mode:"",retention_until_date:"",size:0,tags:{},version_id:void 0},qe=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)({versionsContainer:{padding:10,"@media (max-width: 799px)":{minHeight:800}},noBottomBorder:{borderBottom:0},versionsVirtualPanel:{flexGrow:1,height:"calc(100% - 120px)",overflow:"auto","@media (max-width: 799px)":{height:600}},screenTitleContainer:{position:"relative","@media (max-width: 799px)":{"&::before":{display:"none"}}},sortByLabel:{color:"#838383",fontWeight:"bold",whiteSpace:"nowrap",marginRight:12,fontSize:14,"@media (max-width: 600px)":{display:"none"}}},u.OR),u.VX),u.bK),u.VI),u.cx),u.C4),u.Bz))}))((function(e){var n=e.classes,t=e.internalPaths,i=e.bucketName,o=(0,d.TL)(),s=(0,a.v9)((function(e){return e.objectBrowser.searchVersions})),c=(0,a.v9)((function(e){return e.objectBrowser.loadingVersions})),l=(0,a.v9)((function(e){return e.objectBrowser.selectedVersion})),u=(0,a.v9)(F.N5),m=(0,r.useState)(!1),x=(0,f.Z)(m,2),v=x[0],_=x[1],S=(0,r.useState)(null),C=(0,f.Z)(S,2),Z=C[0],w=C[1],T=(0,r.useState)(null),y=(0,f.Z)(T,2),N=y[0],O=y[1],I=(0,r.useState)([]),L=(0,f.Z)(I,2),B=L[0],A=L[1],D=(0,r.useState)(!1),R=(0,f.Z)(D,2),M=R[0],U=R[1],G=(0,r.useState)(null),W=(0,f.Z)(G,2),K=W[0],H=W[1],J=(0,r.useState)("date"),Y=(0,f.Z)(J,2),q=Y[0],$=Y[1],X=(0,r.useState)(!1),Q=(0,f.Z)(X,2),ee=Q[0],ne=Q[1],te=(0,r.useState)(!1),ie=(0,f.Z)(te,2),ae=ie[0],se=ie[1],ce=(0,r.useState)(!1),le=(0,f.Z)(ce,2),de=le[0],ue=le[1],fe=(0,r.useState)([]),me=(0,f.Z)(fe,2),pe=me[0],xe=me[1],be=(0,r.useState)(!1),ve=(0,f.Z)(be,2),je=ve[0],ge=ve[1],_e=[];Z&&Z.name&&(_e=Z.name.split("/")),(0,r.useEffect)((function(){c||Z||o((0,E.Eq)(!0))}),[c,Z,o]),(0,r.useEffect)((function(){c&&""!==t&&oe.h.buckets.listObjects(i,{prefix:t,with_versions:u}).then((function(e){var n=j()(e.data,"objects",[]),i=(0,g.IO)(t),r=n.filter((function(e){return e.name===i}));u?(w(r.find((function(e){return e.is_latest}))||Ye),A(r)):(w(r[0]),A([])),o((0,E.Eq)(!1))})).catch((function(e){o((0,F.Ih)((0,re.g)(e.error))),o((0,E.Eq)(!1))}))}),[c,i,t,o,u]);var Se=function(e){O(e),_(!0)},Ce=function(e){O(e),ne(!0)},Ze=function(e){H(e),U(!0)},we=function(e){Le(o,i,t,e)},Te=function(e){o((0,E.M3)(e.version_id||""))},ye=B.filter((function(e){return!!e.version_id&&e.version_id.includes(s)})),Ne=B.reduce((function(e,n){return n.size?e+n.size:e}),0);ye.sort((function(e,n){if("size"===q)return e.size&&n.size?e.sizen.size?1:0:0;var t=new Date(e.last_modified||"").getTime(),i=new Date(n.last_modified||"").getTime();return ti?-1:0}));var Fe=function(e){if(pe.includes(e)){var n=pe.filter((function(n){return n!==e}));xe(n)}else{var t=(0,h.Z)(pe);t.push(e),xe(t)}};return(0,k.jsxs)(r.Fragment,{children:[v&&Z&&(0,k.jsx)(V.default,{open:v,closeModalAndRefresh:function(){O(null),_(!1),ne(!1)},bucketName:i,dataObject:N||Z}),M&&Z&&K&&(0,k.jsx)(Me,{restoreOpen:M,bucketName:i,versionToRestore:K,objectPath:Z.name||"",onCloseAndUpdate:function(e){U(!1),H(null),e&&(o((0,E.Eq)(!0)),o((0,E.vH)(!0)))}}),ee&&Z&&(0,k.jsx)(he.default,{open:ee,bucketName:i,object:{name:Z.name||"",version_id:N&&N.version_id?N.version_id:"null",size:N&&N.size?N.size:0,content_type:"",last_modified:Z.last_modified||""},onClosePreview:function(){ne(!1)}}),ae&&(0,k.jsx)(He,{deleteOpen:ae,closeDeleteModalAndRefresh:function(e){se(!1),e&&(o((0,E.Eq)(!0)),o((0,E.M3)("")),o((0,E.vH)(!0)))},selectedBucket:i,selectedObject:t}),je&&(0,k.jsx)(Ve,{selectedBucket:i,selectedObject:(0,g.IO)(t),deleteOpen:je,selectedVersions:pe,closeDeleteModalAndRefresh:function(e){ge(!1),e&&(o((0,E.Eq)(!0)),o((0,E.M3)("")),o((0,E.vH)(!0)),xe([]))}}),(0,k.jsxs)(b.ZP,{container:!0,className:n.versionsContainer,children:[!Z&&(0,k.jsx)(b.ZP,{item:!0,xs:12,children:(0,k.jsx)(Re.Z,{})}),Z&&(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)(b.ZP,{item:!0,xs:12,children:(0,k.jsx)(P,{bucketName:i,internalPaths:(0,g.IO)(t),hidePathButton:!0})}),(0,k.jsx)(b.ZP,{item:!0,xs:12,className:n.screenTitleContainer,children:(0,k.jsx)(p.UHn,{icon:(0,k.jsx)("span",{className:n.listIcon,children:(0,k.jsx)(p.cRd,{})}),title:"".concat(_e.length>0?_e[_e.length-1]:Z.name," Versions"),subTitle:(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)("span",{className:n.detailsSpacer,children:(0,k.jsxs)("strong",{children:[B.length," Version",1===B.length?"":"s","\xa0\xa0\xa0"]})}),(0,k.jsx)("span",{className:n.detailsSpacer,children:(0,k.jsx)("strong",{children:(0,g.l5)(Ne)})})]}),actions:(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)(z.Z,{tooltip:"Select Multiple Versions",children:(0,k.jsx)(p.zxk,{id:"select-multiple-versions",onClick:function(){ue(!de)},icon:(0,k.jsx)(p.amE,{}),variant:de?"callAction":"regular",style:{marginRight:8}})}),de&&(0,k.jsx)(z.Z,{tooltip:"Delete Selected Versions",children:(0,k.jsx)(p.zxk,{id:"delete-multiple-versions",onClick:function(){ge(!0)},icon:(0,k.jsx)(p.pJl,{}),variant:"secondary",style:{marginRight:8},disabled:0===pe.length})}),(0,k.jsx)(z.Z,{tooltip:"Delete Non Current Versions",children:(0,k.jsx)(p.zxk,{id:"delete-non-current",onClick:function(){se(!0)},icon:(0,k.jsx)(p.utM,{}),variant:"secondary",style:{marginRight:15},disabled:B.length<=1})}),(0,k.jsx)(p.PhF,{id:"sort-by",options:[{label:"Date",value:"date"},{label:"Size",value:"size"}],value:q,label:"Sort by",onChange:function(e){$(e)},noLabelMinWidth:!0})]}),bottomBorder:!1})}),(0,k.jsx)(b.ZP,{item:!0,xs:12,className:n.versionsVirtualPanel,children:Z.version_id&&"null"!==Z.version_id&&(0,k.jsx)(Je.aV,{style:{width:"100%"},containerStyle:{width:"100%",maxWidth:"100%"},width:1,height:800,rowCount:ye.length,rowHeight:108,rowRenderer:function(e){var n=e.key,t=e.index,i=(e.isScrolling,e.isVisible,e.style),o=B.length-t;return(0,k.jsx)(Ke,{style:i,fileName:(null===Z||void 0===Z?void 0:Z.name)||"",versionInfo:ye[t],index:o,onDownload:we,onRestore:Ze,onShare:Se,onPreview:Ce,globalClick:Te,isSelected:l===ye[t].version_id,checkable:de,onCheck:Fe,isChecked:pe.includes(ye[t].version_id||"")},n)}})})]})]})]})})),$e=t(9859),Xe=function(e){if(e.name.endsWith("/"))return"";var n=x.ou.now(),t=x.ou.fromISO(e.last_modified);return n.hasSame(t,"day")&&n.hasSame(t,"month")&&n.hasSame(t,"year")?"Today, ".concat(t.toFormat("HH:mm")):t.toFormat("ccc, LLL dd yyyy HH:mm (ZZZZ)")},Qe=function(e){return e.name.endsWith("/")||!e.size?"-":(0,g.ae)(String(e.size))},en=[{label:"Name",elementKey:"name",renderFunction:Se,enableSort:!0},{label:"Last Modified",elementKey:"last_modified",renderFunction:Xe,renderFullObject:!0,enableSort:!0},{label:"Size",elementKey:"size",renderFunction:Qe,renderFullObject:!0,width:100,enableSort:!0}],nn=[{label:"Name",elementKey:"name",renderFunction:Se,enableSort:!0},{label:"Object Date",elementKey:"last_modified",renderFunction:Xe,renderFullObject:!0,enableSort:!0},{label:"Size",elementKey:"size",renderFunction:Qe,renderFullObject:!0,width:100,enableSort:!0},{label:"Deleted",elementKey:"delete_flag",renderFunction:function(e){return e?"Yes":"No"},width:60}],tn=t(46078),on=(0,Z.Z)((function(e){return(0,c.Z)({browsePaper:{border:0,"@media (max-width: 800px)":{width:800}},parentWrapper:{position:"relative",height:"calc(100% - 60px)","@media (max-width: 800px)":{overflowX:"auto"},"@media (max-width: 1060px)":{height:"calc(100% - 115px)"}},"@global":{".rowLine:hover .iconFileElm":{backgroundImage:"url(/images/ob_file_filled.svg)"},".rowLine:hover .iconFolderElm":{backgroundImage:"url(/images/ob_folder_filled.svg)"}}})})),rn=function(e){var n=e.internalPaths,t=on(),i=(0,d.TL)(),o=(0,s.UO)(),c=(0,s.s0)(),l=(0,r.useState)("ASC"),u=(0,f.Z)(l,2),m=u[0],x=u[1],b=(0,r.useState)("name"),v=(0,f.Z)(b,2),_=v[0],S=v[1],C=o.bucketName||"",Z=(0,a.v9)((function(e){return e.objectBrowser.objectDetailsOpen})),w=(0,a.v9)((function(e){return e.objectBrowser.loadingObjects})),N=(0,a.v9)(tn.$4),F=!(null===N||void 0===N||!N.includes("object-browser-only")),O=(0,a.v9)((function(e){return e.objectBrowser.rewind.rewindEnabled})),I=(0,a.v9)((function(e){return e.objectBrowser.records})),L=(0,a.v9)((function(e){return e.objectBrowser.searchObjects})),B=(0,a.v9)((function(e){return e.objectBrowser.selectedObjects})),P=(0,a.v9)((function(e){return e.objectBrowser.connectionError})),D=(0,a.v9)((function(e){return e.system.anonymousMode})),R=(0,T.F)(C,[y.Ft.S3_LIST_BUCKET,y.Ft.S3_ALL_LIST_BUCKET]),M=I.filter((function(e){return""===L||e.name.toLowerCase().indexOf(L.toLowerCase())>=0})).sort((0,A.P_)(_)),U=[];U="ASC"===m?M:M.reverse();var z=[{type:"view",label:"View",onClick:function(e){var t,o=e.name||"",r="/browser/".concat(C).concat(o?"/".concat((0,g.LL)(o)):"");!D||null===n||null!==(t=e.name)&&void 0!==t&&t.endsWith("/")?(i((0,E.S2)([])),c(r),D||(i((0,E.vb)(!0)),i((0,E.Eq)(!0)),i((0,E.d_)(!0))),i((0,E.EE)("".concat(o?"".concat((0,g.LL)(o)):"")))):Le(i,C,"".concat((0,g.LL)(o)),e)},sendOnlyId:!1}],G=R||D?"This location is empty".concat(O?"":", please try uploading a new file"):(0,y.MK)([y.Ft.S3_LIST_BUCKET,y.Ft.S3_ALL_LIST_BUCKET],"view Objects in this bucket");P&&(G="Objects List unavailable. Please review your WebSockets configuration and try again");var W="calc(100vh - 290px)";return F&&(W="calc(100vh - 315px)"),(0,k.jsx)(p.wQF,{itemActions:z,columns:O?nn:en,isLoading:w,entityName:"Objects",idField:"name",records:U,customPaperHeight:W,selectedItems:B,onSelect:D?void 0:function(e){var n=e.target,t=n.value,o=n.checked,r=(0,h.Z)(B);return o?r.push(t):r=r.filter((function(e){return e!==t})),i((0,E.S2)(r)),i((0,E.EE)(null)),r},customEmptyMessage:G,sortConfig:{currentSort:_,currentDirection:m,triggerSort:function(e){var n=j()(e,"sortDirection","DESC");S(e.sortBy),x(n),i((0,E.Cn)(!0))}},onSelectAll:function(){if(i((0,E.EE)(null)),B.length!==U.length){var e=U.map((function(e){return e.name}));i((0,E.S2)(e))}else i((0,E.S2)([]))},rowStyle:function(e){var n,t=e.index;return null!==(n=U[t])&&void 0!==n&&n.delete_flag?"deleted":""},parentClassName:t.parentWrapper,sx:{minHeight:Z?"100%":"initial"},noBackground:!0})},an=t(96382),sn=(0,an.hg)("objectBrowser/downloadSelected",function(){var e=(0,ye.Z)((0,Te.Z)().mark((function e(n,t){var i,o,r,a,s,c;return(0,Te.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=t.getState,t.rejectWithValue,o=t.dispatch,r=i(),a=function(e){var t=(0,g.LL)("".concat(n,"-").concat(e.name,"-").concat((new Date).getTime(),"-").concat(Math.random())),i=(0,ke.YO)(8),r=(0,A.LR)(n,(0,g.LL)(e.name),e.version_id,e.size,null,i,(function(e){o((0,E.RO)({instanceID:t,progress:e}))}),(function(){o((0,E.oK)(t))}),(function(e){o((0,E.qJ)({instanceID:t,msg:e}))}),(function(){o((0,E.Im)(t))}),(function(){o((0,F.y1)("File download will be handled directly by the browser."))}));(0,ke.EN)(i,r),o((0,E.Mc)({ID:i,bucketName:n,done:!1,instanceID:t,percentage:0,prefix:e.name,type:"download",waitingForFile:!0,failed:!1,cancelled:!1,errorMessage:""}))},0===r.objectBrowser.selectedObjects.length){e.next=12;break}if(s=[],c=function(e){return r.objectBrowser.selectedObjects.includes(e.name)},1!==(s=r.objectBrowser.records.filter(c)).length){e.next=11;break}if(!(s[0].name.length>200&&(0,g.mv)().toLowerCase().includes("win"))){e.next=11;break}return o((0,E.$y)(s[0])),e.abrupt("return");case 11:s.forEach((function(e){a(e)}));case 12:case"end":return e.stop()}}),e)})));return function(n,t){return e.apply(this,arguments)}}()),cn=(0,an.hg)("objectBrowser/openPreview",function(){var e=(0,ye.Z)((0,Te.Z)().mark((function e(n,t){var i,o,r,a,s;return(0,Te.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:i=t.getState,t.rejectWithValue,o=t.dispatch,1===(r=i()).objectBrowser.selectedObjects.length&&(s=function(e){return r.objectBrowser.selectedObjects.includes(e.name)},(a=r.objectBrowser.records.find(s))&&(o((0,E.eP)(a)),o((0,E.ei)(!0))));case 3:case"end":return e.stop()}}),e)})));return function(n,t){return e.apply(this,arguments)}}()),ln=(0,an.hg)("objectBrowser/openShare",function(){var e=(0,ye.Z)((0,Te.Z)().mark((function e(n,t){var i,o,r,a,s;return(0,Te.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:i=t.getState,t.rejectWithValue,o=t.dispatch,1===(r=i()).objectBrowser.selectedObjects.length&&(s=function(e){return r.objectBrowser.selectedObjects.includes(e.name)},(a=r.objectBrowser.records.find(s))&&(o((0,E.eP)(a)),o((0,E.Qf)(!0))));case 3:case"end":return e.stop()}}),e)})));return function(n,t){return e.apply(this,arguments)}}()),dn=(0,an.hg)("objectBrowser/openAnonymousAccess",function(){var e=(0,ye.Z)((0,Te.Z)().mark((function e(n,t){var i,o,r;return(0,Te.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:i=t.getState,o=t.dispatch,1===(r=i()).objectBrowser.selectedObjects.length&&r.objectBrowser.selectedObjects[0].endsWith("/")&&o((0,E.xV)(!0));case 3:case"end":return e.stop()}}),e)})));return function(n,t){return e.apply(this,arguments)}}()),un=t(59114),hn=function(){var e=(0,d.TL)(),n=(0,a.v9)((function(e){return e.objectBrowser.searchObjects}));return(0,k.jsx)(un.Z,{placeholder:"Start typing to filter objects in the bucket",onChange:function(n){e((0,E.G4)(n))},value:n})},fn=t(94619),mn=(0,N.Z)(r.lazy((function(){return t.e(711).then(t.bind(t,50711))}))),pn=(0,N.Z)(r.lazy((function(){return Promise.resolve().then(t.bind(t,34433))}))),xn=(0,N.Z)(r.lazy((function(){return Promise.all([t.e(7847),t.e(6901)]).then(t.bind(t,26901))}))),bn=(0,N.Z)(r.lazy((function(){return Promise.resolve().then(t.bind(t,78562))}))),vn=(0,Z.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)({badgeOverlap:{"& .MuiBadge-badge":{top:10,right:1,width:5,height:5,minWidth:5}}},u.VX),u.OR),u.qg),{},{searchField:(0,o.Z)((0,o.Z)({},u.qg.searchField),{},{maxWidth:380}),screenTitleContainer:{border:"#EAEDEE 1px solid",padding:"0 5px"},labelStyle:{color:"#969FA8",fontSize:"12px"},breadcrumbsContainer:{padding:"12px 14px 5px"},fullContainer:{width:"100%",position:"relative","&.detailsOpen":{"@media (max-width: 799px)":{display:"none"}}},hideListOnSmall:{"@media (max-width: 799px)":{display:"none"}},actionsSection:{display:"flex",justifyContent:"space-between",width:"100%"}},u.C4),u.cx),u.Bz))})),jn={borderWidth:2,borderRadius:2,borderColor:"#eeeeee",outline:"none"},gn={borderStyle:"dashed",backgroundColor:"#fafafa",borderColor:"#2196f3"},_n={borderStyle:"dashed",backgroundColor:"#fafafa",borderColor:"#00e676"},Sn=function(){var e,n=vn(),t=(0,d.TL)(),i=(0,s.UO)(),c=(0,s.s0)(),l=(0,s.TH)(),u=(0,a.v9)((function(e){return e.objectBrowser.rewind.rewindEnabled})),v=(0,a.v9)((function(e){return e.objectBrowser.rewind.bucketToRewind})),S=(0,a.v9)((function(e){return e.objectBrowser.versionsMode})),C=(0,a.v9)((function(e){return e.objectBrowser.showDeleted})),Z=(0,a.v9)((function(e){return e.objectBrowser.objectDetailsOpen})),w=(0,a.v9)((function(e){return e.objectBrowser.selectedInternalPaths})),N=(0,a.v9)((function(e){return e.objectBrowser.loadingObjects})),L=(0,a.v9)((function(e){return e.objectBrowser.simplePath})),B=(0,a.v9)((function(e){return e.objectBrowser.versionInfo})),D=(0,a.v9)((function(e){return e.objectBrowser.lockingEnabled})),R=(0,a.v9)((function(e){return e.objectBrowser.downloadRenameModal})),M=(0,a.v9)((function(e){return e.objectBrowser.selectedPreview})),U=(0,a.v9)((function(e){return e.objectBrowser.shareFileModalOpen})),W=(0,a.v9)((function(e){return e.objectBrowser.previewOpen})),H=(0,a.v9)((function(e){return e.objectBrowser.selectedBucket})),V=(0,a.v9)((function(e){return e.system.anonymousMode})),J=(0,a.v9)((function(e){return e.objectBrowser.anonymousAccessOpen})),Y=(0,a.v9)($e.HQ),q=(0,a.v9)($e.G6),$=(0,r.useState)(!1),X=(0,f.Z)($,2),Q=X[0],ee=X[1],ne=(0,r.useState)(!1),te=(0,f.Z)(ne,2),ie=te[0],ae=te[1],se=(0,r.useState)(!1),ce=(0,f.Z)(se,2),de=ce[0],ue=ce[1],he=(0,r.useState)(!1),fe=(0,f.Z)(he,2),me=fe[0],pe=fe[1],xe=(0,r.useState)(!1),be=(0,f.Z)(xe,2),ve=be[0],je=be[1],ge=(0,r.useState)(null),_e=(0,f.Z)(ge,2),Se=_e[0],Ce=_e[1],Ze=(0,r.useState)(null),we=(0,f.Z)(Ze,2),Te=we[0],ye=we[1],Ne=(0,r.useState)(!1),Fe=(0,f.Z)(Ne,2),Ee=Fe[0],Oe=Fe[1],Ie=le(B.status),Le=i.bucketName||"",Be=l.pathname.split("/browser/".concat(Le,"/")),Ae=2===Be.length?Be[1]:"",Re=(0,g.IO)(Ae),Me=Re.split("/").filter((function(e){return""!==e})),Ue=[Le];Me.length>0&&(Ue=Ue.concat(Me));var ze=(0,r.useRef)(null),We=(0,r.useRef)(null),Ke=(0,a.v9)((function(e){return e.console.session&&e.console.session.permissions||{}})),He=[y.Ft.S3_PUT_OBJECT,y.Ft.S3_PUT_ACTIONS],Ve=Ue.join("/"),Je=function(e,n){var t=I(e,n,arguments.length>2&&void 0!==arguments[2]?arguments[2]:[]).reduce((function(e,n){var t=O(n);return t&&e.push(".".concat(t)),e}),[]);return(0,h.Z)(new Set(t)).join(",")}(Ke,Ve,He),Ye=I(Ke,Ve,He),Xe=(0,T.F)([Ve].concat((0,h.Z)(Ye)),[y.Ft.S3_GET_OBJECT,y.Ft.S3_GET_ACTIONS]),Qe=(0,T.F)([Ve].concat((0,h.Z)(Ye)),[y.Ft.S3_DELETE_OBJECT]),en=(0,T.F)([Ve].concat((0,h.Z)(Ye)),He)||V,nn=(0,T.F)(Le,[y.Ft.S3_GET_BUCKET_POLICY,y.Ft.S3_PUT_BUCKET_POLICY,y.Ft.S3_GET_ACTIONS,y.Ft.S3_PUT_ACTIONS]),tn=(0,a.v9)((function(e){return e.objectBrowser.selectedObjects})),on=(0,r.useCallback)((function(){var e=tn[0];if(!Ee){var n=(0,g.LL)(e);oe.h.buckets.getObjectMetadata(Le,{prefix:n}).then((function(e){var n=j()(e.data,"objectMetadata",{});Oe(!0),ye(n)})).catch((function(e){console.error("Error Getting Metadata Status: ",e,null===e||void 0===e?void 0:e.detailedError),Oe(!0)}))}}),[Le,tn,Ee]);(0,r.useEffect)((function(){Le&&1===tn.length&&on()}),[Le,tn,on]),(0,r.useEffect)((function(){t((0,E.G4)("")),t((0,E.Cn)(!0)),t((0,E.S2)([]))}),[L,t]),(0,r.useEffect)((function(){u&&v!==Le&&t((0,E._w)())}),[u,v,Le,t]),(0,r.useEffect)((function(){null!==We.current&&(We.current.setAttribute("directory",""),We.current.setAttribute("webkitdirectory",""))}),[We]),(0,r.useEffect)((function(){if(1===tn.length){var e=tn[0],n=(0,A.s7)(Te,e);je(!("none"===n||!Xe)),e.endsWith("/")||Xe?pe(!0):pe(!1)}else pe(!1),je(!1)}),[tn,Xe,Te]),(0,r.useEffect)((function(){Se||V||oe.h.buckets.getBucketQuota(Le).then((function(e){var n=null;e.data.quota&&(n=e.data),Ce(n)})).catch((function(e){console.error("Error Getting Quota Status: ",e.error.detailedMessage),Ce(null)}))}),[Se,Le,V]),(0,r.useEffect)((function(){tn.length>0?t((0,E.vb)(!0)):0!==tn.length||null!==w||N||t((0,E.vb)(!1))}),[tn,w,t,N]),(0,r.useEffect)((function(){de||(t((0,$e.d5)(!0)),ue(!0))}),[de,t,ue]),(0,r.useEffect)((function(){!N&&!Y||V||oe.h.buckets.bucketInfo(Le).then((function(e){t((0,$e.d5)(!1)),t((0,$e.f4)(e.data)),t((0,E.RS)(Le))})).catch((function(e){t((0,$e.d5)(!1)),t((0,F.Ih)((0,re.g)(e)))}))}),[Le,Y,t,V,N]),(0,r.useEffect)((function(){""!==H&&oe.h.buckets.getBucketRetentionConfig(H).then((function(e){t((0,E.c8)(e.data))})).catch((function(){t((0,E.c8)(null))}))}),[H,t]);var an=function(e){if(null!==e&&void 0!==e&&null!==e.target.files&&void 0!==e.target.files){e.preventDefault();for(var n=[],t=0;t1,C="An error occurred while uploading the file".concat(S?"s":"","."),Z={413:"Error - File size too large"};_.withCredentials=!1,_.onload=function(e){if(_.status>=200&&_.status<300)t((0,E.oK)(v)),a({status:_.status}),(0,ke.GM)(p);else{if(Z[_.status])C=Z[_.status];else if(_.response)try{var n=JSON.parse(_.response);C=n.detailedMessage}catch(i){C="something went wrong"}t((0,E.qJ)({instanceID:v,msg:C})),s({status:_.status,message:C}),(0,ke.GM)(p)}},_.upload.addEventListener("error",(function(e){s(C),t((0,E.qJ)({instanceID:v,msg:"A network error occurred."}))})),_.upload.addEventListener("progress",(function(e){var n=Math.floor(100*e.loaded/e.total);t((0,E.RO)({instanceID:v,progress:n}))})),_.onerror=function(){s(C),t((0,E.qJ)({instanceID:v,msg:"A network error occurred."}))},_.onloadend=function(){0===e.length&&t((0,E.Cn)(!0))},_.onabort=function(){t((0,E.Im)(v))};var w=new FormData;void 0!==r.size&&(w.append(r.size.toString(),d,l),(0,ke.EN)(p,_),t((0,E.Mc)({ID:p,bucketName:n,done:!1,instanceID:v,percentage:0,prefix:"".concat((0,g.IO)(u)).concat(l),type:"upload",waitingForFile:!1,failed:!1,cancelled:!1,errorMessage:""})),(0,ke.N5)(p,w))}))},a=[];t((0,E.LD)());for(var s=0;s0){var i=a.length,o=a.length-n.length,r={errorMessage:"There were some errors during file upload",detailedError:"Uploaded files ".concat(o,"/").concat(i)};t((0,F.Ih)(r))}t((0,E.Cn)(!0)),t((0,E.S2)([]))}))}(e,Le,i,n)}),[Le,t,L,V]),Sn=(0,r.useCallback)((function(e){if(e&&e.length>0&&en){var n,i,o=e[0].path,r=[];if((r=Je.length>0?e.filter((function(e){var n=O(e.name);return Je.includes(n)})):e).length)un(r,o),(n=console).log.apply(n,["".concat(r.length," Allowed Files Processed out of ").concat(e.length,"."),Ve].concat((0,h.Z)(Ye))),r.length!==e.length&&t((0,F.Ih)({errorMessage:"Upload is restricted.",detailedError:(0,y.MK)([y.Ft.S3_PUT_OBJECT,y.Ft.S3_PUT_ACTIONS],"upload objects to this location")}));else t((0,F.Ih)({errorMessage:"Could not process drag and drop.",detailedError:(0,y.MK)([y.Ft.S3_PUT_OBJECT,y.Ft.S3_PUT_ACTIONS],"upload objects to this location")})),(i=console).error.apply(i,["Could not process drag and drop . upload may be restricted.",Ve].concat((0,h.Z)(Ye)))}en||t((0,F.Ih)({errorMessage:"Upload not allowed",detailedError:(0,y.MK)([y.Ft.S3_PUT_OBJECT,y.Ft.S3_PUT_ACTIONS],"upload objects to this location")}))}),[un]),Cn=(0,m.uI)({noClick:!0,onDrop:Sn}),Zn=Cn.getRootProps,wn=Cn.getInputProps,Tn=Cn.isDragActive,yn=Cn.isDragAccept,Nn=(0,r.useMemo)((function(){return(0,o.Z)((0,o.Z)((0,o.Z)({},jn),Tn?gn:{}),yn?_n:{})}),[Tn,yn]),Fn=function(e){if(t((0,E.EE)(null)),t((0,E.db)({status:!1})),Z&&null!==w){var n=(0,g.IO)(Ae).split("/");n.pop();var i="";n&&n.length>0&&(i="".concat(n.join("/"),"/")),c("/browser/".concat(Le,"/").concat((0,g.LL)(i)))}t((0,E.vb)(!1)),t((0,E.S2)([])),e&&t((0,E.Cn)(!0))},En=x.ou.now();null!==q&&void 0!==q&&q.creation_date&&(En=x.ou.fromISO(q.creation_date));var On=[{action:function(){t(sn(Le))},label:"Download",disabled:!Xe||0===(null===tn||void 0===tn?void 0:tn.length),icon:(0,k.jsx)(p._8t,{}),tooltip:Xe?"Download Selected":(0,y.MK)([y.Ft.S3_GET_OBJECT,y.Ft.S3_GET_ACTIONS],"download objects from this bucket")},{action:function(){t(ln())},label:"Share",disabled:1!==tn.length||!me,icon:(0,k.jsx)(p.aAc,{}),tooltip:me?"Share Selected File":"Sharing unavailable"},{action:function(){t(cn())},label:"Preview",disabled:1!==tn.length||!ve,icon:(0,k.jsx)(p.P99,{}),tooltip:ve?"Preview Selected File":"Preview unavailable"},{action:function(){t(dn())},label:"Anonymous Access",disabled:1!==tn.length||!tn[0].endsWith("/")||!nn,icon:(0,k.jsx)(p.cuP,{}),tooltip:1===tn.length&&tn[0].endsWith("/")?"Set Anonymous Access to this Folder":"Anonymous Access unavailable"},{action:function(){ee(!0)},label:"Delete",icon:(0,k.jsx)(p.pJl,{}),disabled:!Qe||0===tn.length,tooltip:Qe?"Delete Selected Files":(0,y.MK)([y.Ft.S3_DELETE_OBJECT],"delete objects in this bucket")}];return(0,k.jsxs)(r.Fragment,{children:[U&&M&&(0,k.jsx)(pn,{open:U,closeModalAndRefresh:function(){t((0,E.Qf)(!1)),t((0,E.eP)(null))},bucketName:Le,dataObject:{name:M.name,last_modified:"",version_id:M.version_id}}),Q&&(0,k.jsx)(mn,{deleteOpen:Q,selectedBucket:Le,selectedObjects:tn,closeDeleteModalAndRefresh:function(e){ee(!1),e&&(t((0,F.y1)("Objects deleted successfully.")),t((0,E.S2)([])),t((0,E.Cn)(!0)))},versioning:B}),ie&&(0,k.jsx)(xn,{open:ie,closeModalAndRefresh:function(){ae(!1)},bucketName:Le}),W&&(0,k.jsx)(bn,{open:W,bucketName:Le,object:M,onClosePreview:function(){t((0,E.ei)(!1)),t((0,E.eP)(null))}}),!!R&&(0,k.jsx)(Pe,{open:!!R,closeModal:function(){t((0,E.$y)(null))},currentItem:(null===(e=R.name.split("/"))||void 0===e?void 0:e.pop())||"",bucketName:Le,internalPaths:Ae,actualInfo:{name:R.name,last_modified:"",version_id:R.version_id,size:R.size}}),J&&(0,k.jsx)(fn.default,{onClose:function(){t((0,E.xV)(!1))},bucket:Le,modalOpen:J,prefilledRoute:"".concat(tn[0],"*")}),(0,k.jsxs)(p.Xgh,{variant:"full",children:[V&&(0,k.jsx)("div",{style:{paddingBottom:16},children:(0,k.jsx)(hn,{})}),(0,k.jsx)(b.ZP,{item:!0,xs:12,className:n.screenTitleContainer,children:(0,k.jsx)(p.UHn,{icon:(0,k.jsx)("span",{children:(0,k.jsx)(p.wNb,{style:{width:30}})}),title:Le,subTitle:V?null:(0,k.jsxs)(r.Fragment,{children:[(0,k.jsxs)("span",{className:n.detailsSpacer,children:["Created on:\xa0\xa0",(0,k.jsx)("strong",{children:null!==q&&void 0!==q&&q.creation_date?En.toFormat("ccc, LLL dd yyyy HH:mm:ss (ZZZZ)"):""})]}),(0,k.jsxs)("span",{className:n.detailsSpacer,children:["Access:\xa0\xa0\xa0",(0,k.jsx)("strong",{children:(null===q||void 0===q?void 0:q.access)||""})]}),q&&(0,k.jsx)(r.Fragment,{children:(0,k.jsxs)("span",{className:n.detailsSpacer,children:[q.size&&(0,k.jsx)(r.Fragment,{children:(0,g.l5)(q.size)}),q.size&&Se&&(0,k.jsxs)(r.Fragment,{children:[" ","/ ",(0,g.l5)(Se.quota||0)]}),q.size&&q.objects?" - ":"",q.objects&&(0,k.jsxs)(r.Fragment,{children:[q.objects,"\xa0Object",q.objects&&1!==q.objects?"s":""]})]})})]}),actions:(0,k.jsxs)(r.Fragment,{children:[!V&&(0,k.jsx)(z.Z,{tooltip:"Rewind Bucket",children:(0,k.jsx)(p.zxk,{id:"rewind-objects-list",label:"Rewind",icon:(0,k.jsx)(_.Z,{badgeContent:" ",color:"secondary",variant:"dot",invisible:!u,className:n.badgeOverlap,sx:{height:16},children:(0,k.jsx)(p.F_y,{style:{minWidth:16,minHeight:16,width:16,height:16,marginTop:-3}})}),variant:"regular",onClick:function(){ae(!0)},disabled:!Ie||!(0,T.F)(Le,[y.Ft.S3_GET_OBJECT,y.Ft.S3_GET_ACTIONS])})}),(0,k.jsx)(z.Z,{tooltip:"Reload List",children:(0,k.jsx)(p.zxk,{id:"refresh-objects-list",label:"Refresh",icon:(0,k.jsx)(p.DuK,{}),variant:"regular",onClick:function(){S?t((0,E.Eq)(!0)):(t((0,E.o_)()),t((0,E._D)(!0)),t((0,E.Cn)(!0)))},disabled:!V&&(!(0,T.F)(Le,[y.Ft.S3_LIST_BUCKET,y.Ft.S3_ALL_LIST_BUCKET])||u)})}),(0,k.jsx)("input",{type:"file",multiple:!0,accept:Je||void 0,onChange:an,style:{display:"none"},ref:ze}),(0,k.jsx)("input",{type:"file",multiple:!0,onChange:an,style:{display:"none"},ref:We}),(0,k.jsx)(G,{bucketName:Le,uploadPath:Ve,uploadFileFunction:function(e){ze&&ze.current&&ze.current.click(),e()},uploadFolderFunction:function(e){We&&We.current&&We.current.click(),e()}})]}),bottomBorder:!1})}),(0,k.jsxs)("div",(0,o.Z)((0,o.Z)({id:"object-list-wrapper"},Zn({style:(0,o.Z)({},Nn)})),{},{children:[(0,k.jsx)("input",(0,o.Z)({},wn())),(0,k.jsxs)(b.ZP,{item:!0,xs:12,className:n.tableBlock,sx:{border:"#EAEDEE 1px solid",borderTop:0},children:[S?(0,k.jsx)(r.Fragment,{children:null!==w&&(0,k.jsx)(qe,{internalPaths:w,bucketName:Le})}):(0,k.jsx)(T.s,{scopes:[y.Ft.S3_LIST_BUCKET,y.Ft.S3_ALL_LIST_BUCKET],resource:Le,errorProps:{disabled:!0},children:(0,k.jsxs)(b.ZP,{item:!0,xs:12,className:"".concat(n.fullContainer," ").concat(Z?"detailsOpen":""," "),children:[!V&&(0,k.jsx)(b.ZP,{item:!0,xs:12,className:n.breadcrumbsContainer,children:(0,k.jsx)(P,{bucketName:Le,internalPaths:Re,additionalOptions:!Ie||u?null:(0,k.jsx)("div",{children:(0,k.jsx)(Ge.Z,{name:"deleted_objects",id:"showDeletedObjects",value:"deleted_on",label:"Show deleted objects",onChange:function(){t((0,E.o_)()),t((0,E.mz)(!C)),Fn(!0)},checked:C,overrideLabelClasses:n.labelStyle,className:n.overrideShowDeleted,noTopMargin:!0})}),hidePathButton:!1})}),(0,k.jsx)(rn,{internalPaths:w})]})}),!V&&(0,k.jsx)(T.s,{scopes:[y.Ft.S3_LIST_BUCKET,y.Ft.S3_ALL_LIST_BUCKET],resource:Le,errorProps:{disabled:!0},children:(0,k.jsxs)(K,{open:Z,closePanel:function(){Fn(!1)},className:"".concat(S?n.hideListOnSmall:""),children:[tn.length>0&&(0,k.jsx)(p.Wk,{items:On,title:"Selected Objects:"}),null!==w&&(0,k.jsx)(De,{internalPaths:w,bucketName:Le,onClosePanel:Fn,versioningInfo:B,locking:D})]})})]})]}))]})]})},Cn=t(49535),Zn=t(26824),wn=t(73996),Tn=t(47974),yn=t(4677),Nn=t(99670),Fn=function(e){var n=e.bucketName,t=(0,d.TL)(),i=(0,a.v9)(tn.$4),o=(0,a.v9)((function(e){return e.objectBrowser.versionsMode})),c=(0,a.v9)((function(e){return e.objectBrowser.versionedFile})),l=(0,a.v9)((function(e){return e.objectBrowser.searchVersions})),u=!(null===i||void 0===i||!i.includes("object-browser-only")),h=(0,s.s0)(),f=(0,Cn.Z)(n,[y.Ft.S3_GET_BUCKET_POLICY,y.Ft.S3_PUT_BUCKET_POLICY,y.Ft.S3_GET_BUCKET_VERSIONING,y.Ft.S3_PUT_BUCKET_VERSIONING,y.Ft.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,y.Ft.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,y.Ft.S3_DELETE_BUCKET,y.Ft.S3_GET_BUCKET_NOTIFICATIONS,y.Ft.S3_PUT_BUCKET_NOTIFICATIONS,y.Ft.S3_GET_REPLICATION_CONFIGURATION,y.Ft.S3_PUT_REPLICATION_CONFIGURATION,y.Ft.S3_GET_LIFECYCLE_CONFIGURATION,y.Ft.S3_PUT_LIFECYCLE_CONFIGURATION,y.Ft.ADMIN_GET_BUCKET_QUOTA,y.Ft.ADMIN_SET_BUCKET_QUOTA,y.Ft.S3_PUT_BUCKET_TAGGING,y.Ft.S3_GET_BUCKET_TAGGING,y.Ft.S3_LIST_BUCKET_VERSIONS,y.Ft.S3_GET_BUCKET_POLICY_STATUS,y.Ft.S3_DELETE_BUCKET_POLICY,y.Ft.S3_GET_ACTIONS,y.Ft.S3_PUT_ACTIONS]),m=(0,k.jsx)(r.Fragment,{children:o?(0,k.jsx)(r.Fragment,{children:(0,k.jsx)(un.Z,{placeholder:"Start typing to filter versions of ".concat(c),onChange:function(e){t((0,E.Pr)(e))},value:l})}):(0,k.jsx)(T.s,{scopes:[y.Ft.S3_LIST_BUCKET,y.Ft.S3_ALL_LIST_BUCKET],resource:n,errorProps:{disabled:!0},children:(0,k.jsx)(hn,{})})});return(0,r.useEffect)((function(){t((0,F.Sc)("object_browser"))}),[]),(0,k.jsx)(r.Fragment,{children:u?(0,k.jsxs)(p.rjZ,{container:!0,sx:{padding:"20px 32px 0"},children:[(0,k.jsx)(p.rjZ,{children:(0,k.jsx)(wn.Z,{marginRight:30,marginTop:10})}),(0,k.jsxs)(p.rjZ,{item:!0,xs:!0,sx:{display:"flex",gap:10},children:[m,(0,k.jsx)(yn.Z,{})]})]}):(0,k.jsx)(Tn.Z,{label:(0,k.jsx)(p.hbI,{label:"Object Browser",onClick:function(){h(y.gA.OBJECT_BROWSER_VIEW)}}),actions:(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)(T.s,{scopes:y.D[y.EI.BUCKET_ADMIN],resource:n,errorProps:{disabled:!0},children:(0,k.jsx)(z.Z,{tooltip:f?"Configure Bucket":"You do not have the required permissions to configure this bucket. Please contact your MinIO administrator to request "+y.EI.BUCKET_ADMIN+" permisions.",children:(0,k.jsx)(p.zxk,{id:"configure-bucket-main",color:"primary","aria-label":"Configure Bucket",onClick:function(){return h("/buckets/".concat(n,"/admin"))},icon:(0,k.jsx)(p.ewm,{style:{width:20,height:20,marginTop:-3}}),style:{padding:"0 10px"}})})}),(0,k.jsx)(Nn.Z,{})]}),middleComponent:m})})},En=0,On=0,In=!1,kn=function e(n,t,o){if(!In){In=!0;var r=new URL(window.location.toString()),a=r.port,s=new URL(document.baseURI).pathname,c=(0,Zn.x2)(r.protocol);(i=new WebSocket("".concat(c,"://").concat(r.hostname,":").concat(a).concat(s,"ws/objectManager"))).onopen=function(){In=!1,n&&n(),On=0},t&&(i.onmessage=t);var l=function(){On<=5?(e((function(){}),t,o),On+=1):(console.error("Websocket not available. Please review that your environment settings are enabled to allow websocket connections and that requests are made from the same origin."),o&&o("Couldn't establish WebSocket connection. Please review your configuration and try again."))};i.onclose=function(){In=!1,console.warn("Websocket Disconnected. Attempting Reconnection..."),setTimeout(l,3e3)},i.onerror=function(){In=!1,console.error("Error in websocket connection. Attempting reconnection...")}}},Ln=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)({},u.Bz))}))((function(){var e=(0,d.TL)(),n=(0,s.UO)(),t=(0,s.TH)(),o=(0,a.v9)((function(e){return e.objectBrowser.loadingVersioning})),c=(0,a.v9)((function(e){return e.objectBrowser.rewind.rewindEnabled})),l=(0,a.v9)((function(e){return e.objectBrowser.rewind.dateToRewind})),u=(0,a.v9)((function(e){return e.objectBrowser.showDeleted})),h=(0,a.v9)((function(e){return e.console.session.allowResources})),f=(0,a.v9)((function(e){return e.objectBrowser.loadingObjects})),m=(0,a.v9)((function(e){return e.objectBrowser.loadingLocking})),p=(0,a.v9)((function(e){return e.objectBrowser.loadRecords})),x=(0,a.v9)((function(e){return e.objectBrowser.selectedInternalPaths})),b=(0,a.v9)((function(e){return e.objectBrowser.simplePath})),v=(0,a.v9)((function(e){return e.objectBrowser.isOpeningObjectDetail})),j=(0,a.v9)((function(e){return e.system.anonymousMode})),_=n.bucketName||"",S=t.pathname.split("/browser/".concat(_,"/")),C=2===S.length?S[1]:"",Z=(0,r.useCallback)((function(n){e((0,E.Cn)(!1));var t=JSON.parse(n.data.toString());if(En===t.request_id){if(t.request_id!==En)return;if("The Access Key Id you provided does not exist in our records."===t.error)window.location.reload();else if("Access Denied."===t.error){var i=t.prefix,o="";if(i){var r=(0,g.IO)(i);o=r.endsWith("/")?r:r+"/"}var a=(0,A.kh)(t.bucketName||_,o,h||[]);return void(a&&0!==a.length?e((0,E.ZJ)(a)):e((0,F.Ih)({errorMessage:t.error,detailedError:t.error})))}if(t.request_end)return e((0,E.Cn)(!1)),void e((0,E._D)(!1));t.data&&e((0,E.rW)(t.data))}}),[e,h,_]),w=(0,r.useCallback)((function(n,t){if(i&&1===i.readyState)try{var o=En+1;e((0,E.o_)()),e((0,E.ZR)(!1));var r={bucket_name:_,prefix:(0,g.LL)(n),mode:c||u?"rewind":"objects",date:t.toISOString(),request_id:o};i.send(JSON.stringify(r)),En=o}catch(a){console.error(a)}else{kn((function(){w(n,t)}),Z,(function(n){e((0,F.Ih)({errorMessage:n,detailedError:n})),e((0,E.ZR)(!0))}))}}),[_,c,u,e,Z]);(0,r.useEffect)((function(){return function(){var e={mode:"cancel",request_id:En};i&&1===i.readyState&&i.send(JSON.stringify(e))}}),[]),(0,r.useEffect)((function(){var n=(0,g.IO)(C);e((0,E.IJ)(!0)),n.endsWith("/")||""===n?(e((0,E.vb)(!1)),e((0,E.EE)(null)),e((0,E.Su)(""===n?"/":n)),e((0,E.Jn)(!0))):(e((0,E.vH)(!0)),e((0,E.vb)(!0)),e((0,E.Eq)(!0)),e((0,E.EE)("".concat(n?"".concat((0,g.LL)(n)):""))),e((0,E.Su)("".concat(n.split("/").slice(0,-1).join("/"),"/"))))}),[_,C,l,c,e]),(0,r.useEffect)((function(){if(!f&&!p&&!c&&!v){var n=(0,g.IO)(C);if(!n.endsWith("/")&&b!==n&&""!==n){(0,E._D)(!0);var t="".concat(n.split("/").slice(0,-1).join("/"),"/");w(t,new Date)}}e((0,E.d_)(!1))}),[f,p,e,C,w,c,b]);var T=(0,Cn.Z)(_,[y.Ft.S3_LIST_BUCKET,y.Ft.S3_ALL_LIST_BUCKET])||j;return(0,r.useEffect)((function(){if(f&&T){var n="";if(C){var t=(0,g.IO)(C);n=x===C?"".concat((0,g.IO)(C).split("/").slice(0,-1).join("/"),"/"):t.endsWith("/")?t:t+"/"}var i=new Date;c&&l&&(i=new Date(l)),w(n,i)}else e((0,E.Cn)(!1))}),[f,C,e,l,c,T,w]),(0,r.useEffect)((function(){e((0,E.db)({status:!1}))}),[C,e]),(0,r.useEffect)((function(){o&&!j&&(T?oe.h.buckets.getBucketVersioning(_).then((function(n){e((0,E.lS)(n.data)),e((0,E.IJ)(!1))})).catch((function(n){console.error("Error Getting Object Versioning Status: ",n.error.detailedMessage),e((0,E.IJ)(!1))})):(e((0,E.IJ)(!1)),e((0,E.o_)())))}),[_,o,e,T,j]),(0,r.useEffect)((function(){m&&(T?oe.h.buckets.getBucketObjectLockingStatus(_).then((function(n){e((0,E.lY)(n.data.object_locking_enabled)),e((0,E.Jn)(!1))})).catch((function(n){console.error("Error Getting Object Locking Status: ",n.error.detailedMessage),e((0,E.Jn)(!1))})):(e((0,E.o_)()),e((0,E.Jn)(!1))))}),[_,m,e,T]),(0,r.useEffect)((function(){var n=(0,A.kh)(_,"",h||[]);if(_&&(!n||0===n.length)){e((0,E.o_)()),e((0,E._D)(!0)),e((0,E.Cn)(!0));var t="";if(C){var i=(0,g.IO)(C);t=x===C?"".concat((0,g.IO)(C).split("/").slice(0,-1).join("/"),"/"):i.endsWith("/")?i:i+"/"}w(t,new Date)}}),[_,e,w,h,C,x]),(0,k.jsxs)(r.Fragment,{children:[!j&&(0,k.jsx)(Fn,{bucketName:_}),(0,k.jsx)(Sn,{})]})}))},34433:function(e,n,t){t.r(n),t.d(n,{default:function(){return C}});var i=t(29439),o=t(72791),r=t(78687),a=t(29945),s=t(78029),c=t.n(s),l=t(40986),d=t(56028),u=t(1413),h=t(99779),f=t(11135),m=t(25787),p=t(23814),x=t(80184),b=(0,m.Z)((function(e){return(0,f.Z)((0,u.Z)((0,u.Z)((0,u.Z)({},p.YI),p.Hr),{},{labelContainer:{display:"flex",alignItems:"center",marginBottom:15},fieldContainer:(0,u.Z)((0,u.Z)({},p.YI.fieldContainer),{},{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:10,marginTop:11,marginBottom:6}),durationInputs:{display:"flex",alignItems:"flex-start",justifyContent:"flex-start",gap:10},validityIndicator:{display:"flex",alignItems:"center",justifyContent:"flex-start",marginTop:25,marginLeft:10},invalidDurationText:{marginTop:15,display:"flex",color:"red",fontSize:11},reverseInput:{flexFlow:"row-reverse","& > label":{fontWeight:400,marginLeft:15,marginRight:25}},validityText:{fontSize:14,marginTop:15,display:"flex",alignItems:"center",justifyContent:"center","@media (max-width: 900px)":{flexFlow:"column"},"& > .min-icon":{color:"#5E5E5E",width:15,height:15,marginRight:10}},validTill:{fontWeight:"bold",marginLeft:15}}))}))((function(e){var n=e.classes,t=e.id,r=e.initialDate,s=e.label,c=e.maxDays,l=e.entity,d=e.onChange,u=(0,o.useState)(7),f=(0,i.Z)(u,2),m=f[0],p=f[1],b=(0,o.useState)(0),v=(0,i.Z)(b,2),j=v[0],g=v[1],_=(0,o.useState)(0),S=(0,i.Z)(_,2),C=S[0],Z=S[1],w=(0,o.useState)(!0),T=(0,i.Z)(w,2),y=T[0],N=T[1],F=(0,o.useState)(h.ou.now()),E=(0,i.Z)(F,2),O=E[0],I=E[1];(0,o.useEffect)((function(){isNaN(j)||isNaN(m)||isNaN(C)||I(function(e,n,t,i){return h.ou.fromJSDate(e).plus({days:n,hours:t,minutes:i})}(r,m,j,C))}),[r,m,j,C]),(0,o.useEffect)((function(){if(y){var e=O.toFormat("yyyy-MM-dd HH:mm:ss");d(e.split(" ").join("T"),!0)}else d("0000-00-00",!1)}),[O,d,y]),(0,o.useEffect)((function(){var e=!0;(m<0||c&&m>c||isNaN(m))&&(e=!1),(j<0||j>23||isNaN(j))&&(e=!1),(C<0||C>59||isNaN(C))&&(e=!1),!c||m!==c||0===j&&0===C||(e=!1),m<=0&&j<=0&&C<=0&&(e=!1),N(e)}),[O,c,d,m,j,C]);var k={"& .textBoxContainer":{minWidth:0},"& input":{textAlign:"center",paddingRight:10,paddingLeft:10,width:40}};return(0,x.jsx)(o.Fragment,{children:(0,x.jsxs)(a.rjZ,{container:!0,className:n.fieldContainer,children:[(0,x.jsx)(a.rjZ,{item:!0,xs:12,className:n.labelContainer,children:(0,x.jsx)(a.AZs,{htmlFor:t,children:s})}),(0,x.jsxs)(a.rjZ,{item:!0,xs:12,className:n.durationInputs,children:[(0,x.jsx)(a.rjZ,{item:!0,xs:!0,className:n.dateInputContainer,children:(0,x.jsx)(a.Wzg,{id:t,className:"".concat(n.reverseInput," removeArrows"),type:"number",min:"0",max:c?c.toString():"999",label:"Days",name:t,onChange:function(e){p(parseInt(e.target.value))},value:m.toString(),sx:k,noLabelMinWidth:!0})}),(0,x.jsx)(a.rjZ,{item:!0,xs:!0,className:n.dateInputContainer,children:(0,x.jsx)(a.Wzg,{id:t,className:"".concat(n.reverseInput," removeArrows"),type:"number",min:"0",max:"23",label:"Hours",name:t,onChange:function(e){g(parseInt(e.target.value))},value:j.toString(),sx:k,noLabelMinWidth:!0})}),(0,x.jsx)(a.rjZ,{item:!0,xs:!0,className:n.dateInputContainer,children:(0,x.jsx)(a.Wzg,{id:t,className:"".concat(n.reverseInput," removeArrows"),type:"number",min:"0",max:"59",label:"Minutes",name:t,onChange:function(e){Z(parseInt(e.target.value))},value:C.toString(),sx:k,noLabelMinWidth:!0})})]}),(0,x.jsx)(a.rjZ,{item:!0,xs:12,className:"".concat(n.validityIndicator," ").concat(n.formFieldRow),children:y?(0,x.jsxs)("div",{className:n.validityText,children:[(0,x.jsx)(a.xPt,{}),(0,x.jsxs)("div",{className:n.validityLabel,children:[l," will be available until:"]})," ",(0,x.jsx)("div",{className:n.validTill,children:O.toFormat("MM/dd/yyyy HH:mm:ss")})]}):(0,x.jsx)("div",{className:n.invalidDurationText,children:"Please select a valid duration."})})]})})})),v=t(45248),j=t(87995),g=t(81551),_=t(31776),S=t(82342),C=function(e){var n=e.open,t=e.closeModalAndRefresh,s=e.bucketName,u=e.dataObject,h=(0,g.TL)(),f=(0,r.v9)(j.N5),m=(0,o.useState)(""),p=(0,i.Z)(m,2),C=p[0],Z=p[1],w=(0,o.useState)(!0),T=(0,i.Z)(w,2),y=T[0],N=T[1],F=(0,o.useState)(!1),E=(0,i.Z)(F,2),O=E[0],I=E[1],k=(0,o.useState)(""),L=(0,i.Z)(k,2),B=L[0],P=L[1],A=(0,o.useState)(!0),D=(0,i.Z)(A,2),R=D[0],M=D[1],U=(0,o.useState)("null"),z=(0,i.Z)(U,2),G=z[0],W=z[1],K=new Date;return(0,o.useEffect)((function(){if(void 0===u.version_id)return f?(_.h.buckets.listObjects(s,{prefix:(0,v.LL)(u.name||""),with_versions:f}).then((function(e){var n=(e.data.objects||[]).find((function(e){return e.is_latest}));W(n?"".concat(n.version_id):"null")})).catch((function(e){h((0,j.zb)((0,S.g)(e.error)))})),void N(!1)):(W("null"),void N(!1));W(u.version_id||"null"),N(!1)}),[s,u,f,h]),(0,o.useEffect)((function(){if(R&&!y){I(!0),Z("");var e=new Date("".concat(B)),n=new Date,t=Math.ceil((e.getTime()-n.getTime())/1e3);t>0&&_.h.buckets.shareObject(s,{prefix:(0,v.LL)(u.name||""),version_id:G,expires:""!==B?"".concat(t,"s"):""}).then((function(e){Z(e.data),I(!1)})).catch((function(e){h((0,j.zb)((0,S.g)(e.error))),Z(""),I(!1)}))}}),[u,B,s,R,Z,h,f,y,G]),(0,x.jsx)(o.Fragment,{children:(0,x.jsxs)(d.Z,{title:"Share File",titleIcon:(0,x.jsx)(a.aAc,{style:{fill:"#4CCB92"}}),modalOpen:n,onClose:function(){t()},children:[y&&(0,x.jsx)(a.rjZ,{item:!0,xs:12,children:(0,x.jsx)(l.Z,{})}),!y&&(0,x.jsxs)(o.Fragment,{children:[(0,x.jsxs)(a.rjZ,{item:!0,xs:12,sx:{fontSize:14,fontWeight:400},children:["This is a temporary URL with integrated access credentials for sharing objects valid for up to 7 days.",(0,x.jsx)("br",{}),(0,x.jsx)("br",{}),"The temporary URL expires after the configured time limit."]}),(0,x.jsx)("br",{}),(0,x.jsx)(a.rjZ,{item:!0,xs:12,children:(0,x.jsx)(b,{initialDate:K,id:"date",label:"Active for",maxDays:7,onChange:function(e,n){M(n),n?P(e):(P(""),Z(""))},entity:"Link"})}),(0,x.jsx)(a.rjZ,{item:!0,xs:12,sx:{marginBottom:10},children:(0,x.jsx)(a.bSr,{actionButton:(0,x.jsx)(c(),{text:C,children:(0,x.jsx)(a.zxk,{id:"copy-path",variant:"regular",onClick:function(){h((0,j.MK)("Share URL Copied to clipboard"))},disabled:""===C||O,style:{width:"28px",height:"28px",padding:"0px"},icon:(0,x.jsx)(a.TIy,{})})}),children:C})})]})]})})}},78562:function(e,n,t){t.r(n),t.d(n,{default:function(){return _}});var i=t(72791),o=t(56028),r=t(4942),a=t(29439),s=t(11135),c=t(25787),l=t(61889),d=t(40986),u=t(47922),h=t(45248),f=t(28182),m=t(16502),p=t(31776),x=t(26181),b=t.n(x),v=t(80184),j=(0,c.Z)((function(){return(0,s.Z)({iframeContainer:{border:"0px",flex:"1 1 auto",width:"100%",height:250,backgroundColor:"transparent",borderRadius:5,"&.image":{height:500},"&.text":{height:700},"&.audio":{height:150},"&.video":{height:350},"&.fullHeight":{height:"calc(100vh - 185px)"}},iframeBase:{backgroundColor:"#fff"},iframeHidden:{display:"none"}})}))((function(e){var n=e.bucketName,t=e.object,o=e.isFullscreen,s=void 0!==o&&o,c=e.classes,x=(0,i.useState)(!0),j=(0,a.Z)(x,2),g=j[0],_=j[1],S=(0,i.useState)(null),C=(0,a.Z)(S,2),Z=C[0],w=C[1],T=(0,i.useState)(!1),y=(0,a.Z)(T,2),N=y[0],F=y[1],E=(null===t||void 0===t?void 0:t.name)||"",O=(0,i.useCallback)((function(){if(!N){var e=(0,h.LL)(E);p.h.buckets.getObjectMetadata(n,{prefix:e}).then((function(e){var n=b()(e.data,"objectMetadata",{});F(!0),w(n)})).catch((function(e){console.error("Error Getting Metadata Status: ",e,null===e||void 0===e?void 0:e.detailedError),F(!0)}))}}),[n,E,N]);(0,i.useEffect)((function(){n&&E&&O()}),[n,E,O]);var I="";if(t){var k=(0,h.LL)(t.name),L=document.baseURI.replace(window.location.origin,"");I="".concat(window.location.origin).concat(L,"api/v1/buckets/").concat(n,"/objects/download?preview=true&prefix=").concat(k),t.version_id&&(I=I.concat("&version_id=".concat(t.version_id)))}var B=(0,u.s7)(Z,E),P=function(){_(!1)};return(0,v.jsxs)(i.Fragment,{children:["none"!==B&&g&&(0,v.jsx)(l.ZP,{item:!0,xs:12,children:(0,v.jsx)(d.Z,{})}),N?(0,v.jsxs)("div",{style:{textAlign:"center"},children:["video"===B&&(0,v.jsx)("video",{style:{width:"auto",height:"auto",maxWidth:"calc(100vw - 100px)",maxHeight:"calc(100vh - 200px)"},autoPlay:!0,controls:!0,muted:!1,playsInline:!0,onPlay:P,children:(0,v.jsx)("source",{src:I,type:"video/mp4"})}),"audio"===B&&(0,v.jsx)("audio",{style:{width:"100%",height:"auto"},autoPlay:!0,controls:!0,muted:!1,playsInline:!0,onPlay:P,children:(0,v.jsx)("source",{src:I,type:"audio/mpeg"})}),"image"===B&&(0,v.jsx)("img",{style:{width:"auto",height:"auto",maxWidth:"100vw",maxHeight:"100vh"},src:I,alt:"preview",onLoad:P}),"none"===B&&(0,v.jsx)("div",{children:(0,v.jsx)(m.Z,{label:" File couldn't be previewed using file extension or mime type. Please try Download instead",title:"Preview unavailable "})}),"none"!==B&&"video"!==B&&"audio"!==B&&"image"!==B&&(0,v.jsx)("div",{className:(0,f.Z)(c.iframeBase,(0,r.Z)({},c.iframeHidden,g)),children:(0,v.jsx)("iframe",{src:I,title:"File Preview",allowTransparency:!0,className:"".concat(c.iframeContainer," ").concat(s?"fullHeight":B),onLoad:P,children:"File couldn't be loaded. Please try Download instead"})})]}):null]})})),g=t(29945),_=function(e){var n=e.open,t=e.bucketName,r=e.object,a=e.onClosePreview;return(0,v.jsx)(i.Fragment,{children:(0,v.jsx)(o.Z,{modalOpen:n,title:"Preview - ".concat(null===r||void 0===r?void 0:r.name),onClose:a,wideLimit:!1,titleIcon:(0,v.jsx)(g.$30,{}),children:(0,v.jsx)(j,{bucketName:t,object:r})})})}},47922:function(e,n,t){t.d(n,{LR:function(){return c},P_:function(){return u},kh:function(){return h},s7:function(){return d}});var i=t(15671),o=t(43144),r=t(45248),a=t(76610),s=t(81551),c=function(e,n,t,i){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,c=arguments.length>5?arguments[5]:void 0,d=arguments.length>6?arguments[6]:void 0,u=arguments.length>7?arguments[7]:void 0,h=arguments.length>8?arguments[8]:void 0,f=arguments.length>9?arguments[9]:void 0,m=arguments.length>10?arguments[10]:void 0,p=document.createElement("a");document.body.appendChild(p);var x=document.baseURI.replace(window.location.origin,""),b=s.ZP.getState().system.anonymousMode,v="".concat(window.location.origin).concat(x,"api/v1/buckets/").concat(e,"/objects/download?prefix=").concat(n).concat(null!==o&&""!==o.trim()?"&override_file_name=".concat((0,r.LL)(o||"")):"");if(t&&(v=v.concat("&version_id=".concat(t))),i>53687091200)return new l(v,c,u,m);var j=new XMLHttpRequest;return j.open("GET",v,!0),b&&j.setRequestHeader("X-Anonymous","1"),j.addEventListener("progress",(function(e){var n=Math.round(e.loaded/i*100);d&&d(n)}),!1),j.responseType="blob",j.onreadystatechange=function(){if(4===j.readyState)if(200===j.status){var e=j.getResponseHeader("Content-Disposition"),n="download";if(e)n=decodeURIComponent(e).split('"')[1];u&&u(),(0,a.GM)(c);var t=document.createElement("a");t.href=window.URL.createObjectURL(j.response),t.download=n,document.body.appendChild(t),t.click(),document.body.removeChild(t)}else{if("application/json"===j.getResponseHeader("Content-Type")){var i=JSON.parse(j.response);if(i.detailedMessage)return void h(i.detailedMessage)}h("Unexpected response status code (".concat(j.status,")."))}},j.onerror=function(){h&&h("A network error occurred.")},j.onabort=function(){f&&f()},j},l=function(){function e(n,t,o,r){(0,i.Z)(this,e),this.path=void 0,this.id=void 0,this.completeCallback=void 0,this.toastCallback=void 0,this.path=n,this.id=t,this.completeCallback=o,this.toastCallback=r}return(0,o.Z)(e,[{key:"send",value:function(){this.toastCallback();var e=document.createElement("a");e.href=this.path,document.body.appendChild(e),e.click(),document.body.removeChild(e),this.completeCallback(),(0,a.GM)(this.id)}}]),e}(),d=function(e,n){var t=(e&&e["Content-Type"]||"").toString(),i=function(e){var n=e.split(".").pop();return n?(n=n.toLowerCase(),["jif","jfif","apng","avif","svg","webp","bmp","ico","jpg","jpe","jpeg","gif","png","heic"].includes(n)?"image":["pdf"].includes(n)?"text":["wav","mp3","alac","aiff","dsd","pcm"].includes(n)?"audio":["mp4","avi","mpg","webm","mov","flv","mkv","wmv","avchd","mpeg-4"].includes(n)?"video":"none"):"none"}(n||""),o=function(e){if(e){var n=(e||"").toLowerCase();if(n.includes("image"))return"image";if(n.includes("text"))return"text";if(n.includes("audio"))return"audio";if(n.includes("video"))return"video"}return"none"}(t),r=i;return i===o?r=i:"none"===i&&"none"!==o?r=o:"none"===o&&"none"!==i&&(r=i),r},u=function(e){switch(e){case"name":return function(e,n){return e.name.localeCompare(n.name)};case"last_modified":return function(e,n){return new Date(e.last_modified).getTime()-new Date(n.last_modified).getTime()};case"size":return function(e,n){return(e.size||-1)-(n.size||-1)}}},h=function(e,n,t){if(0===t.length)return null;var i=t.filter((function(n){var t,i;return(null===(t=n.resource)||void 0===t?void 0:t.endsWith(":".concat(e)))||(null===(i=n.resource)||void 0===i?void 0:i.includes(":".concat(e,"/")))}));if(0===i.length)return null;var o=[],r=n.split("/");if(i.forEach((function(e){var t,i,a=null===(t=e.resource)||void 0===t?void 0:t.split(":"),s=((null===a||void 0===a?void 0:a.pop())||"").split("/");(s.length>1&&s.every((function(e,n){return"*"!==e&&((!r[n]||r[n]===e)&&(r[n]||o.push({name:"".concat(e,"/"),size:0,last_modified:"",version_id:""}),!0))})),"StringEquals"===e.conditionOperator||"StringLike"===e.conditionOperator)&&(null===(i=e.prefixes)||void 0===i||i.forEach((function(e){if(""!==e){var t=e.split("/"),i=[],a=n.replace(/\/$/,"");if(!e.startsWith(a)&&""!==n)return;t.every((function(e,n){return!e.includes("*")&&""!==e&&(e!==r[n]?(o.push({name:"".concat(i.join("/")).concat(i.length>0?"/":"").concat(e,"/"),size:0,last_modified:"",version_id:""}),!1):(""!==e&&i.push(e),!0))}))}})))})),o.length>0){var a=[],s=[];o.forEach((function(e){s.includes(e.name)||(a.push(e),s.push(e.name))})),o=a}return o}},75578:function(e,n,t){var i=t(1413),o=t(72791),r=t(80184);n.Z=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(t){return(0,r.jsx)(o.Suspense,{fallback:n,children:(0,r.jsx)(e,(0,i.Z)({},t))})}}},34866:function(e,n,t){var i=t(1413),o=t(72791),r=t(61889),a=t(94454),s=t(30829),c=t(20068),l=t(11135),d=t(25787),u=t(23814),h=t(29945),f=t(80184);n.Z=(0,d.Z)((function(e){return(0,l.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},u.YI),u.Hr),u.lM),{},{fieldContainer:(0,i.Z)((0,i.Z)({},u.YI.fieldContainer),{},{display:"flex",justifyContent:"flex-start",alignItems:"center",margin:"15px 0",marginBottom:0,flexBasis:"initial",flexWrap:"nowrap"}),noTopMargin:{marginTop:0}}))}))((function(e){var n=e.label,t=e.onChange,i=e.value,l=e.id,d=e.name,u=e.checked,m=void 0!==u&&u,p=e.disabled,x=void 0!==p&&p,b=e.noTopMargin,v=void 0!==b&&b,j=e.tooltip,g=void 0===j?"":j,_=e.overrideLabelClasses,S=void 0===_?"":_,C=e.overrideCheckboxStyles,Z=e.classes,w=e.className;return(0,f.jsx)(o.Fragment,{children:(0,f.jsxs)(r.ZP,{item:!0,xs:12,className:"".concat(Z.fieldContainer," ").concat(v?Z.noTopMargin:""," ").concat(w||""),children:[(0,f.jsx)("div",{children:(0,f.jsx)(a.Z,{name:d,id:l,value:i,color:"primary",inputProps:{"aria-label":"secondary checkbox"},checked:m,onChange:t,checkedIcon:(0,f.jsx)("span",{className:Z.checkedIcon}),icon:(0,f.jsx)("span",{className:Z.unCheckedIcon}),disabled:x,disableRipple:!0,disableFocusRipple:!0,focusRipple:!1,centerRipple:!1,disableTouchRipple:!0,style:C||{}})}),""!==n&&(0,f.jsxs)(s.Z,{htmlFor:l,className:"".concat(Z.noMinWidthLabel," ").concat(S),children:[(0,f.jsx)("span",{children:n}),""!==g&&(0,f.jsx)("div",{className:Z.tooltipContainer,children:(0,f.jsx)(c.Z,{title:g,placement:"top-start",children:(0,f.jsx)("div",{className:Z.tooltip,children:(0,f.jsx)(h.byK,{})})})})]})]})})}))},81159:function(e,n,t){var i=t(4942),o=t(1413),r=t(72791),a=t(11135),s=t(25787),c=t(9955),l=t(30829),d=t(20068),u=t(20890),h=t(61889),f=t(23814),m=t(29945),p=t(28182),x=t(80184),b=(0,s.Z)((function(e){return{root:{width:50,height:24,padding:0,margin:0},switchBase:{padding:1,"&$checked":{transform:"translateX(24px)",color:e.palette.common.white,"& + $track":{backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,border:"none"}},"&$focusVisible $thumb":{color:"#4CCB92",border:"6px solid #fff"}},thumb:{width:22,height:22,backgroundColor:"#FAFAFA",border:"2px solid #FFFFFF",marginLeft:1},track:{borderRadius:12,backgroundColor:"#E2E2E2",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,transition:e.transitions.create(["background-color","border"])},checked:{},focusVisible:{},switchContainer:{display:"flex",alignItems:"center",justifyContent:"flex-end"}}}))(c.Z);n.Z=(0,s.Z)((function(e){return(0,a.Z)((0,o.Z)((0,o.Z)({indicatorLabelOn:{fontWeight:"bold",color:"#081C42 !important"},indicatorLabel:{fontSize:12,color:"#E2E2E2",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"},tooltip:{fontSize:16}},f.OR),f.YI))}))((function(e){var n=e.label,t=void 0===n?"":n,a=e.onChange,s=e.value,c=e.id,f=e.name,v=e.checked,j=void 0!==v&&v,g=e.disabled,_=void 0!==g&&g,S=e.switchOnly,C=void 0!==S&&S,Z=e.tooltip,w=void 0===Z?"":Z,T=e.description,y=void 0===T?"":T,N=e.classes,F=e.indicatorLabels,E=e.extraInputProps,O=void 0===E?{}:E,I=(0,x.jsxs)(r.Fragment,{children:[!C&&(0,x.jsx)("span",{className:(0,p.Z)(N.indicatorLabel,(0,i.Z)({},N.indicatorLabelOn,!j)),children:F&&F.length>1?F[1]:"OFF"}),(0,x.jsx)(b,{checked:j,onChange:a,color:"primary",name:f,inputProps:(0,o.Z)({"aria-label":"primary checkbox"},O),disabled:_,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:s,id:c}),!C&&(0,x.jsx)("span",{className:(0,p.Z)(N.indicatorLabel,(0,i.Z)({},N.indicatorLabelOn,j)),children:F?F[0]:"ON"})]});return C?I:(0,x.jsx)("div",{children:(0,x.jsxs)(h.ZP,{container:!0,alignItems:"center",children:[(0,x.jsx)(h.ZP,{item:!0,xs:12,sm:8,md:8,children:""!==t&&(0,x.jsxs)(l.Z,{htmlFor:c,className:N.inputLabel,children:[(0,x.jsx)("span",{children:t}),""!==w&&(0,x.jsx)("div",{className:N.tooltipContainer,children:(0,x.jsx)(d.Z,{title:w,placement:"top-start",children:(0,x.jsx)("div",{className:N.tooltip,children:(0,x.jsx)(m.byK,{})})})})]})}),(0,x.jsx)(h.ZP,{item:!0,xs:12,sm:""!==t?4:12,md:""!==t?4:12,textAlign:"right",justifyContent:"end",className:N.switchContainer,children:I}),""!==y&&(0,x.jsx)(h.ZP,{item:!0,xs:12,textAlign:"left",children:(0,x.jsx)(u.Z,{component:"p",className:N.fieldDescription,children:y})})]})})}))},21435:function(e,n,t){var i=t(29439),o=t(1413),r=t(72791),a=t(27391),s=t(61889),c=t(30829),l=t(20068),d=t(13400),u=t(20165),h=t(3579),f=t(11135),m=t(72455),p=t(25787),x=t(23814),b=t(29945),v=t(28182),j=t(80184),g=(0,m.Z)((function(e){return(0,f.Z)((0,o.Z)({},x.gM))}));function _(e){var n=g();return(0,j.jsx)(a.Z,(0,o.Z)({InputProps:{classes:n}},e))}n.Z=(0,p.Z)((function(e){return(0,f.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},x.YI),x.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var n=e.label,t=e.onChange,a=e.value,f=e.id,m=e.name,p=e.type,x=void 0===p?"text":p,g=e.autoComplete,S=void 0===g?"off":g,C=e.disabled,Z=void 0!==C&&C,w=e.multiline,T=void 0!==w&&w,y=e.tooltip,N=void 0===y?"":y,F=e.index,E=void 0===F?0:F,O=e.error,I=void 0===O?"":O,k=e.required,L=void 0!==k&&k,B=e.placeholder,P=void 0===B?"":B,A=e.min,D=e.max,R=e.overlayId,M=e.overlayIcon,U=void 0===M?null:M,z=e.overlayObject,G=void 0===z?null:z,W=e.extraInputProps,K=void 0===W?{}:W,H=e.overlayAction,V=e.noLabelMinWidth,J=void 0!==V&&V,Y=e.pattern,q=void 0===Y?"":Y,$=e.autoFocus,X=void 0!==$&&$,Q=e.classes,ee=e.className,ne=void 0===ee?"":ee,te=e.onKeyPress,ie=e.onFocus,oe=e.onPaste,re=(0,o.Z)({"data-index":E},K),ae=(0,r.useState)(!1),se=(0,i.Z)(ae,2),ce=se[0],le=se[1];"number"===x&&A&&(re.min=A),"number"===x&&D&&(re.max=D),""!==q&&(re.pattern=q);var de=U,ue=x;return"password"===x&&null===U&&(de=ce?(0,j.jsx)(u.Z,{}):(0,j.jsx)(h.Z,{}),ue=ce?"text":"password"),(0,j.jsx)(r.Fragment,{children:(0,j.jsxs)(s.ZP,{container:!0,className:(0,v.Z)(""!==ne?ne:"",""!==I?Q.errorInField:Q.inputBoxContainer),children:[""!==n&&(0,j.jsxs)(c.Z,{htmlFor:f,className:J?Q.noMinWidthLabel:Q.inputLabel,children:[(0,j.jsxs)("span",{children:[n,L?"*":""]}),""!==N&&(0,j.jsx)("div",{className:Q.tooltipContainer,children:(0,j.jsx)(l.Z,{title:N,placement:"top-start",children:(0,j.jsx)("div",{className:Q.tooltip,children:(0,j.jsx)(b.byK,{})})})})]}),(0,j.jsxs)("div",{className:Q.textBoxContainer,children:[(0,j.jsx)(_,{id:f,name:m,fullWidth:!0,value:a,autoFocus:X,disabled:Z,onChange:t,type:ue,multiline:T,autoComplete:S,inputProps:re,error:""!==I,helperText:I,placeholder:P,className:Q.inputRebase,onKeyPress:te,onFocus:ie,onPaste:oe}),de&&(0,j.jsx)("div",{className:"".concat(Q.overlayAction," ").concat(""!==n?"withLabel":""),children:(0,j.jsx)(d.Z,{onClick:H?function(){H()}:function(){return le(!ce)},id:R,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:de})}),G&&(0,j.jsx)("div",{className:"".concat(Q.overlayAction," ").concat(""!==n?"withLabel":""),children:G})]})]})})}))},16502:function(e,n,t){t(72791);var i=t(11135),o=t(25787),r=t(80184);n.Z=(0,o.Z)((function(e){return(0,i.Z)({headerContainer:{backgroundColor:"#e78794",borderRadius:3,marginBottom:20,padding:1,paddingBottom:15},labelHeadline:{color:"#000000",fontSize:14,marginLeft:20},labelText:{color:"#000000",fontSize:14,marginLeft:20,marginRight:40}})}))((function(e){var n=e.classes,t=e.label,i=e.title;return(0,r.jsxs)("div",{className:n.headerContainer,children:[(0,r.jsx)("h4",{className:n.labelHeadline,children:i}),(0,r.jsx)("div",{className:n.labelText,children:t})]})}))},73669:function(e,n,t){var i=t(29439),o=t(72791),r=t(64554),a=t(29945),s=t(21435),c=t(80184);n.Z=function(e){var n=e.value,t=(0,o.useState)(!1),l=(0,i.Z)(t,2),d=l[0],u=l[1];return(0,c.jsxs)(r.Z,{sx:{display:"flex",alignItems:"center",flexFlow:{sm:"row",xs:"column"}},children:[(0,c.jsx)(s.Z,{id:"inspect-dec-key",name:"inspect-dec-key",placeholder:"",label:"",type:d?"text":"password",onChange:function(){},value:n,overlayIcon:(0,c.jsx)(a.TIy,{}),extraInputProps:{readOnly:!0},overlayAction:function(){return navigator.clipboard.writeText(n)}}),(0,c.jsx)(a.zxk,{id:"show-hide-key",style:{marginLeft:"10px"},variant:"callAction",onClick:function(){return u(!d)},label:"Show/Hide"})]})}},26824:function(e,n,t){t.d(n,{HE:function(){return r},V9:function(){return i},ci:function(){return o},x2:function(){return a}});var i=1006,o=1008,r=1011,a=function(e){var n="ws";return"https:"===e&&(n="wss"),n}}}]); +//# sourceMappingURL=2603.500676d6.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/2603.500676d6.chunk.js.map b/portal-ui/build/static/js/2603.500676d6.chunk.js.map new file mode 100644 index 000000000..1357a5027 --- /dev/null +++ b/portal-ui/build/static/js/2603.500676d6.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/2603.500676d6.chunk.js","mappings":"2OA6IA,UAnGsB,SAAHA,GAKI,IAJrBC,EAASD,EAATC,UACAC,EAAOF,EAAPE,QACAC,EAAMH,EAANG,OACAC,EAAcJ,EAAdI,eAEMC,GAAWC,EAAAA,EAAAA,MAEjBC,GAA4BC,EAAAA,EAAAA,UAAS,IAAGC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAjCI,EAAMF,EAAA,GAAEG,EAASH,EAAA,GACxBI,GAA4CL,EAAAA,EAAAA,UAAc,YAAWM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAA9DE,EAAcD,EAAA,GAAEE,EAAiBF,EAAA,IAExCG,EAAAA,EAAAA,YAAU,WACJb,GACFQ,EAAUR,EAEd,GAAG,CAACA,IA6BJ,OACEc,EAAAA,EAAAA,KAACC,EAAAA,EAAY,CACXlB,UAAWA,EACXmB,MAAM,4BACNlB,QAASA,EACTmB,WAAWH,EAAAA,EAAAA,KAACI,EAAAA,IAAiB,IAAIC,UAEjCC,EAAAA,EAAAA,MAACC,EAAAA,IAAU,CAACC,aAAa,EAAOC,kBAAkB,EAAMJ,SAAA,EACtDL,EAAAA,EAAAA,KAACU,EAAAA,IAAQ,CACPC,MAAOlB,EACPmB,MAAO,SACPC,GAAI,SACJC,KAAM,SACNC,YAAa,eACbC,SAAU,SAACC,GACTvB,EAAUuB,EAAEC,OAAOP,MACrB,EACAQ,QACE,2SAGJnB,EAAAA,EAAAA,KAACoB,EAAAA,IAAM,CACLP,GAAG,SACHC,KAAK,SACLE,SAAU,SAACL,GACTb,EAAkBa,EACpB,EACAC,MAAM,SACND,MAAOd,EACPwB,QAxDc,CACpB,CAAET,MAAO,WAAYD,MAAO,YAC5B,CAAEC,MAAO,YAAaD,MAAO,aAC7B,CAAEC,MAAO,YAAaD,MAAO,cAsDvBW,UAAU,KAEZhB,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,GAAIC,EAAAA,GAAgBC,eAAevB,SAAA,EACpDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,QACJiB,KAAK,SACLC,QAAQ,UACRC,QA1DQ,WAChBtC,EAAU,IACVI,EAAkB,WACpB,EAwDUc,MAAO,WAGTZ,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,kBACJiB,KAAK,SACLC,QAAQ,aACRT,SAA4B,KAAlB7B,EAAOwC,OACjBD,QA9DY,WACpBE,EAAAA,EAAIjD,OACDkD,wBAAwBlD,EAAQ,CAC/BQ,OAAQA,EACR2C,OAAQvC,IAETwC,MAAK,SAACC,GACLnD,GAASoD,EAAAA,EAAAA,IAAmB,mCAC5BvD,GACF,IACCwD,OAAM,SAACC,GACNtD,GAASuD,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,KAC7CzD,GACF,GACJ,EAiDU4B,MAAO,gBAMnB,C,0EC3EIgC,E,oSChDSC,EAAkB,SAACC,GAE9B,OAAQA,EAAYC,MAAM,yBAA2B,IAAI,EAC3D,EA8BaC,EAA2B,SACtCC,EACAC,GAEI,IADJC,EAAgBC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,GAGbG,EAAsBC,OAAOC,KAAKR,GAAeS,QACrD,SAACC,EAA+BC,GAI9B,OAHIf,EAAgBe,IAAaA,EAASC,SAASX,KACjDS,EAAIC,GAAYX,EAAcW,IAEzBD,CACT,GACA,CAAC,GAgCH,OAAOH,OAAOC,KAAKF,GAAqBO,QA7BR,SAACC,GAC/B,IACMC,EADeT,EAAoBQ,GACXE,MAAK,SAACC,GAAS,OAC3Cf,EAAOgB,MAAK,SAACC,GACX,IAAIC,GAAgB,EAEpB,IAD+C,IAA3BD,EAASE,QAAQ,KACpB,CACf,IAAMC,EAAiBH,EAASI,UAAU,EAAGJ,EAASf,OAAS,GAE/DgB,EAAgBH,EAAUL,SAASU,EACrC,CAEA,OAAOF,GAAiBH,IAAcE,CACxC,GAAE,IAOEK,EAJsBV,EAAgBS,UAC1C,EACAT,EAAgBO,QAAQ,UAGL,gBAAAI,OAAqBxB,GAK1C,OAAOc,IAFLS,GAA4C,mBAApBV,EAG5B,GAGF,E,WC1DMY,GAAkBC,EAAAA,EAAAA,GACtBC,EAAAA,MACE,kBAAM,+BAAoE,KAIxEC,GAAYC,EAAAA,EAAAA,IAAW,SAACC,GAAY,OACxCC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTC,EAAAA,IAAmB,IACtBC,kBAAmB,CACjBC,OAAQ,WAEV,IAoPJ,EA1O2B,SAAHvG,GAKD,IAJrBwG,EAAUxG,EAAVwG,WACAC,EAAazG,EAAbyG,cACAC,EAAc1G,EAAd0G,eACAC,EAAiB3G,EAAjB2G,kBAEMtG,GAAWC,EAAAA,EAAAA,MACXsG,GAAWC,EAAAA,EAAAA,MACXC,EAAUd,IAEVe,GAAgBC,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMC,cAAcC,OAAOJ,aAAa,IAEzDK,GAAeJ,EAAAA,EAAAA,KACnB,SAACC,GAAe,OAAKA,EAAMC,cAAcE,YAAY,IAEjDC,GAAgBL,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMC,cAAcG,aAAa,IAElDC,GAAgBN,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMM,OAAOD,aAAa,IAGjD/G,GAAgDC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAjEiH,EAAgB/G,EAAA,GAAEgH,EAAmBhH,EAAA,GAEtCiH,EAAsB,CAC1BC,EAAAA,GAAWC,cACXD,EAAAA,GAAWE,gBAGP1D,GAAgB6C,EAAAA,EAAAA,KAAY,SAACC,GAAe,OAChDA,EAAMa,QAAQC,SAAUd,EAAMa,QAAQC,QAAQC,aAAoB,CAAC,CAAC,IAGlEC,EAAQxB,EAEU,KAAlBA,IACFwB,EAAK,IAAArC,OAAOa,IAGd,IAAMyB,EAAaD,EAAME,MAAM,KAAKnD,QAAO,SAACoD,GAAI,MAAc,KAATA,CAAW,IAC1DC,EAAuBH,EAAW3D,OAAS,EAE3C+D,EAAmBL,GAASzB,EAC5B+B,EAAwBrE,EAC5BC,EACAmE,EACAZ,GAGIc,GACJC,EAAAA,EAAAA,GAAc,CACXH,GAAgB1C,QAAA8C,EAAAA,EAAAA,GAAKH,IACtBb,IACGJ,EAEHqB,EAAiBT,EAAWU,KAAI,SAACC,EAAoBC,GACvD,IAAMC,EAAQ,GAAAnD,OAAMsC,EAAWc,MAAM,EAAGF,EAAQ,GAAGG,KAAK,KAAI,KACtDC,EAAK,YAAAtD,OAAeY,EAAU,KAAAZ,OAClCmD,EAAQ,GAAAnD,QAAMuD,EAAAA,EAAAA,IAAgBJ,IAAS,IAGzC,OAAID,IAAUT,GAAwBQ,IAAexB,EAC5C,MAIP7F,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPL,EAAAA,EAAAA,KAAA,QAAMmI,UAAWvC,EAAQR,kBAAkB/E,SAAC,MAC3CuH,IAAUT,GACTnH,EAAAA,EAAAA,KAAA,QAAMoI,MAAO,CAAEC,OAAQ,UAAWC,WAAY,OAAQjI,UACnDkI,EAAAA,EAAAA,IAAuBZ,MAG1B3H,EAAAA,EAAAA,KAACwI,EAAAA,GAAI,CACHJ,MAAO,CACLE,WAAY,OAEdG,GAAIT,EACJhG,QAAS,WACP7C,GACEuJ,EAAAA,EAAAA,IAAuB,CAAEC,QAAQ,EAAOC,WAAY,KAExD,EAAEvI,UAGAkI,EAAAA,EAAAA,IACEZ,OAIP,eAAAjD,OAxB2BkD,EAAMiB,YA2BxC,IAEIC,EAAsB,GAEtB5C,IACF4C,EAAe,EACb9I,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UACPC,EAAAA,EAAAA,MAAA,QAAAD,SAAA,EACEL,EAAAA,EAAAA,KAAA,QAAMmI,UAAWvC,EAAQR,kBAAkB/E,SAAC,MAC3C8F,EAAc,kBACV,+BAKb,IAAM4C,EAAsB,EAC1B/I,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UACPL,EAAAA,EAAAA,KAACwI,EAAAA,GAAI,CACHC,GAAE,YAAA/D,OAAcY,GAChBtD,QAAS,WACP7C,GAASuJ,EAAAA,EAAAA,IAAuB,CAAEC,QAAQ,EAAOC,WAAY,KAC/D,EAAEvI,SAEDiF,KACI,0BACEZ,QAAA8C,EAAAA,EAAAA,GACRC,IAAcD,EAAAA,EAAAA,GACdsB,IA6BL,OACExI,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPC,EAAAA,EAAAA,MAAA,OAAK6H,UAAWvC,EAAQoD,gBAAgB3I,SAAA,CACrCiG,IACCtG,EAAAA,EAAAA,KAAC2E,EAAe,CACd5F,UAAWuH,EACXhB,WAAYA,EACZ2D,WAAY1D,EACZvG,QAlCkB,WAC1BuH,GAAoB,EACtB,KAmCMvG,EAAAA,EAAAA,KAACkJ,EAAAA,IAAW,CACVxH,GAAI,CACF4G,WAAY,OAEda,eArCe,WACrB,GAAIjD,EACF/G,GAASuJ,EAAAA,EAAAA,IAAuB,CAAEC,QAAQ,EAAOC,WAAY,UACxD,CACL,GAA0B,IAAtB5B,EAAW3D,OAGb,YAFAqC,EAAS,YAKX,IAAM0D,EAAWpC,EAAWc,MAAM,GAAI,GAEtCpC,EAAS,YAADhB,OACMY,GAAUZ,OACpB0E,EAAS/F,OAAS,EAAC,IAAAqB,QACXuD,EAAAA,EAAAA,IAAgB,GAADvD,OAAI0E,EAASrB,KAAK,KAAI,OACzC,IAGV,CACF,EAkBQtC,mBACEnF,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPL,EAAAA,EAAAA,KAACqJ,IAAe,CAACC,KAAI,GAAA5E,OAAKY,EAAU,KAAAZ,OAAIsC,EAAWe,KAAK,MAAO1H,UAC7DL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,YACJ0I,MACEvJ,EAAAA,EAAAA,KAACwJ,EAAAA,IAAQ,CACPpB,MAAO,CACLqB,MAAO,OACPC,OAAQ,OACRC,KAAM,UACNC,WAAY,KAIlB7H,QAAS,UACTC,QAAS,WACP7C,GAASoD,EAAAA,EAAAA,IAAmB,4BAC9B,EACA6F,MAAO,CACLqB,MAAO,OACPC,OAAQ,OACRG,MAAO,UACPC,OAAQ,oBACRC,YAAa,QAInB/J,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQH,kBAAkBpF,SACvCoF,OAGNpF,SAEA0I,KAEDvD,IACAxF,EAAAA,EAAAA,KAACgK,EAAAA,IAAO,CACN7I,QACEmG,EACI,+BACA2C,EAAAA,EAAAA,IACE,CAACxD,EAAAA,GAAWC,cAAeD,EAAAA,GAAWE,gBACtC,qBAEPtG,UAEDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,WACJmB,QAAS,WACPuE,GAAoB,EACtB,EACAjF,UAAU8E,IAAwBP,IAAkByB,GACpDiC,MAAMvJ,EAAAA,EAAAA,KAACkK,EAAAA,IAAW,CAAC9B,MAAO,CAAEuB,KAAM,aAClCvB,MAAO,CACLE,WAAY,UAEdvG,QAAS,UACTnB,MAAO,0BAKfZ,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQuE,kBAAkB9J,SAAEoF,MAGlD,E,kEClHA,GAAe2E,EAAAA,EAAAA,IApIA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,GAAa,CACXoF,gBAAiB,CACfX,OAAQ,GACR,cAAe,CACbD,MAAO,GACPE,KAAM,sBAGT,GA2HL,EAzH0B,SAAH7K,GAQI,IAPzBoE,EAAUpE,EAAVoE,WACAoC,EAAUxG,EAAVwG,WAAUgF,EAAAxL,EACVyL,aAAAA,OAAY,IAAAD,GAAQA,EACpBE,EAAkB1L,EAAlB0L,mBACAC,EAAoB3L,EAApB2L,qBACA7E,EAAO9G,EAAP8G,QAAO8E,EAAA5L,EACP6L,eAAAA,OAAc,IAAAD,EAAG,CAAC,EAACA,EAEbtE,GAAgBN,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMM,OAAOD,aAAa,IAG3CnD,GAAgB6C,EAAAA,EAAAA,KAAY,SAACC,GAAe,OAChDA,EAAMa,QAAQC,SAAUd,EAAMa,QAAQC,QAAQC,aAAoB,CAAC,CAAC,IAGhEN,EAAsB,CAC1BC,EAAAA,GAAWC,cACXD,EAAAA,GAAWE,gBAGPU,EAAwBrE,EAC5BC,EACAC,EACAsD,GAGFnH,GAAgCC,EAAAA,EAAAA,UAA6B,MAAKC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA3DuL,EAAQrL,EAAA,GAAEsL,EAAWtL,EAAA,GACtBuL,EAAiBC,QAAQH,GAIzBI,EAAoB,WACxBH,EAAY,KACd,EAEMI,GACJ1D,EAAAA,EAAAA,GAAc,CACXrE,GAAUwB,QAAA8C,EAAAA,EAAAA,GAAKH,IAChBb,IACGJ,EAED8E,GAAsB3D,EAAAA,EAAAA,GAAc,CACvCjC,GAAUZ,QAAA8C,EAAAA,EAAAA,GAAKH,IAChBb,GACA,GACA,GAGI2E,EAAyBF,GAAuBC,EAEtD,OACE5K,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPL,EAAAA,EAAAA,KAACoL,EAAAA,EAAc,CACbjK,QACEgK,EACI,gBACAlB,EAAAA,EAAAA,IACE,CAACxD,EAAAA,GAAWC,cAAeD,EAAAA,GAAWE,gBACtC,+BAEPtG,UAEDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,cACJ,mCACA,gBAAc,OACd,gBAAeiK,EAAiB,YAASxH,EACzCtB,QAvCY,SAACqJ,GACnBR,EAAYQ,EAAMC,cACpB,EAsCQ1K,MAAO,SACP2I,MAAMvJ,EAAAA,EAAAA,KAACuL,EAAAA,IAAU,IACjBxJ,QAAS,aACTT,SAAUiJ,IAAiBY,EAC3BzJ,GAAIiJ,OAGRrK,EAAAA,EAAAA,MAACkL,EAAAA,EAAI,CACH3K,GAAE,mBACF,gCACA+J,SAAUA,EACVa,KAAMX,EACN9L,QAAS,WACPgM,GACF,EACAU,aAAc,CACZC,SAAU,SACVC,WAAY,UAEdC,gBAAiB,CACfF,SAAU,MACVC,WAAY,UACZvL,SAAA,EAEFC,EAAAA,EAAAA,MAACwL,EAAAA,EAAQ,CACP9J,QAAS,WACPwI,EAAmBQ,EACrB,EACA1J,UAAW2J,GAAuBV,EAAalK,SAAA,EAE/CL,EAAAA,EAAAA,KAAC+L,EAAAA,EAAY,CAAC5D,UAAWvC,EAAQyE,gBAAgBhK,UAC/CL,EAAAA,EAAAA,KAACuL,EAAAA,IAAU,OAEbvL,EAAAA,EAAAA,KAACgM,EAAAA,EAAY,CAAA3L,SAAC,oBAEhBC,EAAAA,EAAAA,MAACwL,EAAAA,EAAQ,CACP9J,QAAS,WACPyI,EAAqBO,EACvB,EACA1J,UAAW4J,GAAuBX,EAAalK,SAAA,EAE/CL,EAAAA,EAAAA,KAAC+L,EAAAA,EAAY,CAAC5D,UAAWvC,EAAQyE,gBAAgBhK,UAC/CL,EAAAA,EAAAA,KAACiM,EAAAA,IAAgB,OAEnBjM,EAAAA,EAAAA,KAACgM,EAAAA,EAAY,CAAA3L,SAAC,0BAKxB,IClJMyE,GAAYC,EAAAA,EAAAA,IAAW,SAACC,GAAY,OACxCC,EAAAA,EAAAA,GAAa,CACXiH,YAAa,CACXC,YAAa,UACbC,YAAa,EACbC,YAAa,QACbC,aAAc,EACdC,uBAAwB,EACxBC,wBAAyB,EACzB/C,MAAO,EACPgD,mBAAoB,OACpBC,UAAW,SACXC,UAAW,OACXC,SAAU,WACVC,QAAS,EACTC,YAAa,EACb,SAAU,CACRrD,MAAO,IACPsD,SAAU,IACVC,gBAAiB,EACjBH,QAAS,GAEX,4BAA6B,CAC3B,SAAU,CACRpD,MAAO,OACPsD,SAAU,OACVC,gBAAiB,MAIvB,IAqCJ,EAlCyB,SAAHlO,GAKI,IAJxB2M,EAAI3M,EAAJ2M,KACAwB,EAAUnO,EAAVmO,WAAUC,EAAApO,EACVqJ,UAAAA,OAAS,IAAA+E,EAAG,GAAEA,EACd7M,EAAQvB,EAARuB,SAEMuF,EAAUd,IAEhB,OACExE,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CACHC,MAAI,EACJ2G,UAAS,GAAAzD,OAAKkB,EAAQsG,YAAW,KAAAxH,OAAI+G,EAAO,OAAS,GAAE,KAAA/G,OAAIyD,GAAY9H,SAAA,EAEvEL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLE,QAAS,OACTlB,GAAI,qBACJmB,QAASiL,EACT1D,MAAMvJ,EAAAA,EAAAA,KAACmN,EAAAA,IAAc,IACrBzL,GAAI,CACFkL,SAAU,WACVQ,MAAO,EACPC,IAAK,GACLC,QAAS,EACT5D,OAAQ,GACR,yBAA0B,CACxB6D,gBAAiB,kBAItBlN,IAGP,E,sBC9EamN,EAAS,CACpB,CAAE7M,MAAO,KAAMC,MAAO,WACtB,CAAED,MAAO,KAAMC,MAAO,YACtB,CAAED,MAAO,KAAMC,MAAO,SACtB,CAAED,MAAO,KAAMC,MAAO,SACtB,CAAED,MAAO,KAAMC,MAAO,OACtB,CAAED,MAAO,KAAMC,MAAO,QACtB,CAAED,MAAO,KAAMC,MAAO,QACtB,CAAED,MAAO,KAAMC,MAAO,UACtB,CAAED,MAAO,KAAMC,MAAO,aACtB,CAAED,MAAO,KAAMC,MAAO,WACtB,CAAED,MAAO,KAAMC,MAAO,YACtB,CAAED,MAAO,KAAMC,MAAO,aAGX6M,EAAOC,MAAMC,KAAKD,MAAM,KAAK,SAACE,EAAGC,GAAG,MAAM,CACrDlN,OAAQkN,EAAM,GAAGhF,WACjBjI,OAAQiN,EAAM,GAAGhF,WAClB,IAEKiF,GAAc,IAAIC,MAAOC,cAElBC,EAAQP,MAAMC,KAAKD,MAAM,KAAK,SAACE,EAAGM,GAAO,MAAM,CAC1DvN,OAAQuN,EAAUJ,GAAajF,WAC/BjI,OAAQsN,EAAUJ,GAAajF,WAChC,I,iCCgBKsF,IAAeC,EAAAA,EAAAA,aACnB,SAAAtP,EAYEuP,GACI,IAXFzI,EAAO9G,EAAP8G,QACA/E,EAAE/B,EAAF+B,GACAD,EAAK9B,EAAL8B,MAAK0N,EAAAxP,EACLyP,eAAAA,OAAc,IAAAD,GAAQA,EAAAE,EAAA1P,EACtB2P,UAAAA,OAAS,IAAAD,GAAQA,EAAAE,EAAA5P,EACjBqC,QAAAA,OAAO,IAAAuN,EAAG,GAAEA,EAAAC,EAAA7P,EACZ8P,aAAAA,OAAY,IAAAD,GAAQA,EACpBE,EAAY/P,EAAZ+P,aAAYC,EAAAhQ,EACZ6B,MAAAA,OAAK,IAAAmO,EAAG,GAAEA,GAIZC,EAAAA,EAAAA,qBAAoBV,GAAK,iBAAO,CAAEW,UAAAA,EAAW,IAE7C,IAAA3P,GAAsCC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAvD4P,EAAW1P,EAAA,GAAE2P,EAAc3P,EAAA,GAClCI,GAA0BL,EAAAA,EAAAA,UAAiB,IAAGM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAvCwP,EAAKvP,EAAA,GAAEwP,EAAQxP,EAAA,GACtByP,GAAsB/P,EAAAA,EAAAA,UAAiB,IAAGgQ,GAAA9P,EAAAA,EAAAA,GAAA6P,EAAA,GAAnCE,EAAGD,EAAA,GAAEE,EAAMF,EAAA,GAClBG,GAAwBnQ,EAAAA,EAAAA,UAAiB,IAAGoQ,GAAAlQ,EAAAA,EAAAA,GAAAiQ,EAAA,GAArCE,EAAID,EAAA,GAAEE,EAAOF,EAAA,IAEpB3P,EAAAA,EAAAA,YAAU,WAGR,GAAc,KAAVY,EAAc,CAChB,IAAMkP,EAAalP,EAAMsG,MAAM,KAE/B2I,EAAQC,EAAW,IACnBT,EAASS,EAAW,IAEpBL,EAAO,GAAD9K,OAAIoL,SAASD,EAAW,KAChC,CACF,GAAG,CAAClP,KAEJZ,EAAAA,EAAAA,YAAU,WACR,IAAAgQ,EDlDmB,SAACJ,EAAcR,EAAeI,GACrD,IAAMS,EAAcjC,KAAKkC,MAAM,GAADvL,OAAIiL,EAAI,KAAAjL,OAAIyK,EAAK,KAAAzK,OAAI6K,IAEnD,GAAIW,MAAMF,GACR,MAAO,EAAC,EAAO,IAGjB,IAAMG,EAAcL,SAASX,GACvBiB,EAAYN,SAASP,GAErBc,EAAiBF,EAAc,GAAE,IAAAzL,OAAOyL,GAAgBA,EACxDG,EAAeF,EAAY,GAAE,IAAA1L,OAAO0L,GAAcA,EAElDG,EAAa,IAAIxC,KAAKiC,GAAaQ,cAAcvJ,MAAM,KAAK,GAC5DwJ,EAAU,GAAA/L,OAAMiL,EAAI,KAAAjL,OAAI2L,EAAc,KAAA3L,OAAI4L,GAEhD,MAAO,CAACC,IAAeE,EAAYA,EACrC,CCiCoCC,CAAUf,EAAMR,EAAOI,GAAIoB,GAAAnR,EAAAA,EAAAA,GAAAuQ,EAAA,GAAlDa,EAAOD,EAAA,GAAEF,EAAUE,EAAA,GAC1B9B,EAAa4B,EAAYG,EAC3B,GAAG,CAACzB,EAAOI,EAAKI,EAAMd,IAEtB,IAAMG,EAAY,WAChBI,EAAS,IACTI,EAAO,IACPI,EAAQ,GACV,EAEMiB,EAAiB,WACrB,OAAItC,KAEOE,IACDQ,CAIZ,EAEM6B,EAAgB,CAAI,CAAEnQ,MAAO,GAAIC,MAAO,YAAW8D,QAAA8C,EAAAA,EAAAA,GAAKgG,IACxDuD,EAAW,CAAI,CAAEpQ,MAAO,GAAIC,MAAO,UAAS8D,QAAA8C,EAAAA,EAAAA,GAAKiG,IACjDuD,EAAY,CAAI,CAAErQ,MAAO,GAAIC,MAAO,WAAU8D,QAAA8C,EAAAA,EAAAA,GAAKyG,IAEzD,OACE3N,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CACHC,MAAI,EACJC,GAAI,GACJ0G,WAAW8I,EAAAA,GAAAA,GAAKrL,EAAQsL,gBAAcC,EAAAA,EAAAA,GAAA,GACnCvL,EAAQwL,qBAAuBxC,IAC/BvO,SAAA,EAEHL,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQyL,eAAehR,UACrCC,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CAAC+P,WAAS,EAAAjR,SAAA,EACbC,EAAAA,EAAAA,MAACiR,EAAAA,IAAU,CAACC,QAAS3Q,EAAGR,SAAA,EACtBL,EAAAA,EAAAA,KAAA,QAAAK,SAAOO,IACM,KAAZO,IACCnB,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQ6L,iBAAiBpR,UACvCL,EAAAA,EAAAA,KAACgK,EAAAA,IAAO,CAAC7I,QAASA,EAASuQ,UAAU,MAAKrR,UACxCL,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQzE,QAAQd,UAC9BL,EAAAA,EAAAA,KAAC2R,EAAAA,IAAQ,aAMlBlD,IACCzO,EAAAA,EAAAA,KAAC4R,EAAAA,IAAM,CACLC,gBAAiB,CAAC,gBAAiB,oBACnCC,QAAS7C,EACTtO,MAAO,eACPE,GAAG,cACHC,KAAK,cACLE,SAAU,SAACC,GACTiO,EAAejO,EAAEC,OAAO4Q,SACnB7Q,EAAEC,OAAO4Q,SACZjD,EAAa,IAAI,EAErB,EACAkD,YAAU,UAKlBzR,EAAAA,EAAAA,MAAC0R,EAAAA,IAAG,CAACtQ,GAAI,CAAEuQ,QAAS,OAAQC,IAAK,IAAK7R,SAAA,EACpCL,EAAAA,EAAAA,KAACoB,EAAAA,IAAM,CACLP,GAAE,GAAA6D,OAAK7D,EAAE,UACTC,KAAI,GAAA4D,OAAK7D,EAAE,UACXF,MAAOwO,EACPnO,SAAU,SAACmR,GACT/C,EAAS+C,EACX,EACA9Q,QAASyP,EACTlQ,MAAO,GACPU,SAAUuP,OAGZ7Q,EAAAA,EAAAA,KAACoB,EAAAA,IAAM,CACLP,GAAE,GAAA6D,OAAK7D,EAAE,QACTC,KAAI,GAAA4D,OAAK7D,EAAE,QACXF,MAAO4O,EACPvO,SAAU,SAACmR,GACT3C,EAAO2C,EACT,EACA9Q,QAAS0P,EACTnQ,MAAO,GACPU,SAAUuP,OAGZ7Q,EAAAA,EAAAA,KAACoB,EAAAA,IAAM,CACLP,GAAE,GAAA6D,OAAK7D,EAAE,SACTC,KAAI,GAAA4D,OAAK7D,EAAE,SACXF,MAAOgP,EACP3O,SAAU,SAACmR,GACTvC,EAAQuC,EACV,EACA9Q,QAAS2P,EACTpQ,MAAO,GACPU,SAAUuP,WAKpB,IAGF,IAAezG,EAAAA,EAAAA,IAzKA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTkN,EAAAA,IACAC,EAAAA,IAAa,IAChBnB,gBAAchM,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACTkN,EAAAA,GAAWlB,gBAAc,IAC5Be,QAAS,OACTK,WAAY,SACZC,eAAgB,gBAChBC,cAAe,GACf5I,UAAW,GACX6I,aAAc,MAEf,GA4JL,CAAkCtE,I,oCC8ElC,IAAe/D,EAAAA,EAAAA,IA9OA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTwN,EAAAA,IACA/Q,EAAAA,IACAgR,EAAAA,IACF,GAyOL,EA1NqB,SAAH7T,GAOS,IANzB8G,EAAO9G,EAAP8G,QACA6F,EAAI3M,EAAJ2M,KACAmH,EAAoB9T,EAApB8T,qBACAhK,EAAU9J,EAAV8J,WACAiK,EAAU/T,EAAV+T,WACAvN,EAAUxG,EAAVwG,WAEMnG,GAAWC,EAAAA,EAAAA,MACX0T,GAAkBhN,EAAAA,EAAAA,KACtB,SAACC,GAAe,OAAKA,EAAMC,cAAc8M,eAAe,IAG1DzT,GAA0CC,EAAAA,EAAAA,WAAkB,GAAKC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA1D0T,EAAaxT,EAAA,GAAEyT,EAAgBzT,EAAA,GACtCI,GAAwBL,EAAAA,EAAAA,UAAmC,IAAGM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAvDmC,EAAIlC,EAAA,GAAEqT,EAAOrT,EAAA,GACpByP,GAAwB/P,EAAAA,EAAAA,UAAiB,IAAGgQ,GAAA9P,EAAAA,EAAAA,GAAA6P,EAAA,GAArC6D,EAAI5D,EAAA,GAAE6D,EAAO7D,EAAA,GACpBG,GAAsCnQ,EAAAA,EAAAA,WAAkB,GAAMoQ,GAAAlQ,EAAAA,EAAAA,GAAAiQ,EAAA,GAAvD2D,EAAW1D,EAAA,GAAE2D,EAAc3D,EAAA,GAClC4D,GAAgChU,EAAAA,EAAAA,WAAkB,GAAMiU,GAAA/T,EAAAA,EAAAA,GAAA8T,EAAA,GAAjDE,EAAQD,EAAA,GAAEE,EAAWF,EAAA,GAC5BG,GAAkDpU,EAAAA,EAAAA,WAAkB,GAAMqU,GAAAnU,EAAAA,EAAAA,GAAAkU,EAAA,GAAnEE,EAAiBD,EAAA,GAAEE,EAAoBF,EAAA,IAE9C5T,EAAAA,EAAAA,YAAU,WAMR,GALI8S,EAAWiB,iBACbb,GAAuB,OAAfH,QAAe,IAAfA,OAAe,EAAfA,EAAiBiB,OAAQC,GAAAA,GAAoBC,YACrDJ,GAAqB,IAGnBhB,EAAWqB,qBAAsB,CACnC,IAAMC,EAAY,IAAIpG,KAAK8E,EAAWqB,sBACtC,GAA6B,iBAAzBC,EAAUtL,WAA+B,CAC3C,IAAM8G,EAAOwE,EAAUnG,cACjBmB,GFzBetB,EEyBMsG,EAAUC,WAAa,GFxB3C,GAAE,IAAA1P,OAAOmJ,GAAG,GAAAnJ,OAAQmJ,GEyBrB0B,EAAM4E,EAAUE,UACjBnE,MAAMX,IAAkB,QAAVJ,GAAoBe,MAAMP,IAC3CwD,EAAQ,GAADzO,OAAIiL,EAAI,KAAAjL,OAAIyK,EAAK,KAAAzK,OAAI6K,GAEhC,CACAsE,GAAqB,EACvB,CFhCwB,IAAChG,CEiC3B,GAAG,CAACgF,EAA2B,OAAfC,QAAe,IAAfA,OAAe,EAAfA,EAAiBiB,OAEjC,IAAMO,GAAcC,EAAAA,EAAAA,QAAmB,MAUjCC,EAAY,WAChBxB,GAAiB,GACjBC,EAAQe,GAAAA,GAAoBC,YACxBK,EAAYG,SACdH,EAAYG,QAAQzF,WAExB,EAiEM0F,EACJd,IAA+B,eAAT9R,GAAkC,KAATA,GAEjD,OACExB,EAAAA,EAAAA,MAACL,EAAAA,EAAY,CACXC,MAAM,uBACNnB,UAAW0M,EACXzM,QAAS,WACPwV,IACA5B,GAAqB,EACvB,EAAEvS,SAAA,EAEFC,EAAAA,EAAAA,MAAA,OAAK6H,UAAWvC,EAAQ+O,aAAatU,SAAA,EACnCL,EAAAA,EAAAA,KAAA,UAAAK,SAAQ,oBAAwB,KAAGuI,MAErCtI,EAAAA,EAAAA,MAAA,QACEsU,YAAU,EACVC,aAAa,MACbC,SAAU,SAAC7T,IA7FA,SAACA,GAChBA,EAAE8T,gBACJ,CA4FQD,CAAS7T,EACX,EAAEZ,SAAA,CAEDqU,IACC1U,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQoP,aAAa3U,UACjDL,EAAAA,EAAAA,KAAC4R,EAAAA,IAAM,CACLjR,MAAM,SACNE,GAAG,SACHC,KAAK,SACLgR,QAASiB,EACT/R,SAAU,SAACC,GACT+R,GAAkBD,EACpB,EACAnS,MAAO,SACPiR,gBAAiB,CAAC,UAAW,iBAInC7R,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQoP,aAAa3U,UACjDL,EAAAA,EAAAA,KAACiV,EAAAA,IAAU,CACTC,aAAcpT,EACdjB,GAAG,OACHC,KAAK,OACLF,MAAM,OACN2N,gBACGwE,GAAkBa,GAA8B,KAAT9R,EAE1Cd,SAAU,SAACC,GACTgS,EAAQhS,EAAEC,OAAOP,MACnB,EACAwU,gBAAiB,CACf,CAAEvU,MAAO,aAAcD,MAAOqT,GAAAA,GAAoBC,YAClD,CAAErT,MAAO,aAAcD,MAAOqT,GAAAA,GAAoBoB,kBAIxDpV,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAS,GAAAzD,OAAKkB,EAAQyP,aAAY,KAAIhV,UACvDL,EAAAA,EAAAA,KAACmO,GAAY,CACXtN,GAAG,OACHD,MAAM,OACN2N,iBAzICwE,IAA2B,eAATjR,GAAkC,eAATA,IA0I5CuM,IAAKiG,EACL3T,MAAOuS,EACPtE,cAAc,EACdC,aAAc,SAACqE,EAActC,GAC3ByC,EAAezC,GACXA,GACFuC,EAAQD,EAEZ,OAGJ5S,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQhE,eAAevB,SAAA,EACnDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,QACJiB,KAAK,SACLC,QAAQ,UACRC,QAASwS,EACT5T,MAAO,WAETZ,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,OACJiB,KAAK,SACLC,QAAQ,aACRT,SACGyR,GAA0B,KAATjR,GACjBiR,IAAkBK,GACnBI,EAEFxR,QAzGqB,WAC7ByR,GAAY,GACZ,IAAM6B,EAAiBzC,EAAW/R,MAAQ,GACpCyU,EAAY1C,EAAW2C,YAAc,KAErCC,EACH1C,GAA0B,eAATjR,EAA0B,GAAA4C,OAAMwO,EAAI,cAAZ,GAEvCH,GAA0B,eAATjR,EAtDH,SACnBwT,EACAC,EACAE,GAEAvT,GAAAA,EAAIwT,QACDC,mBACCrQ,EACA,CACE7F,QAAQwI,EAAAA,EAAAA,IAAgBqN,GACxBE,WAAYD,GAAa,IAE3B,CACEK,QAASH,EACT1B,KAAMjS,IAGTO,MAAK,WACJoR,GAAY,GACZb,GAAqB,EACvB,IACCpQ,OAAM,SAACC,GACNtD,GAAS0W,EAAAA,EAAAA,KAA0BlT,EAAAA,GAAAA,GAAeF,EAAIqT,SACtDrC,GAAY,EACd,GACJ,CAmCEsC,CAAaT,EAAgBC,EAAWE,GAjCjB,SACvBH,EACAC,GAEArT,GAAAA,EAAIwT,QACDM,sBAAsB1Q,EAAY,CACjC7F,QAAQwI,EAAAA,EAAAA,IAAgBqN,GACxBE,WAAYD,GAAa,KAE1BlT,MAAK,WACJoR,GAAY,GACZb,GAAqB,EACvB,IACCpQ,OAAM,SAACC,GACNtD,GAAS0W,EAAAA,EAAAA,KAA0BlT,EAAAA,GAAAA,GAAeF,EAAIqT,SACtDrC,GAAY,EACd,GACJ,CAWIwC,CAAiBX,EAAgBC,EAMrC,EA2FU3U,MAAO,iBAMnB,I,uBCnQasV,GAAkB,SAACvN,GAC9B,MAAkB,YAAXA,GAAmC,cAAXA,CACjC,ECmKA,GA7IqB,SAAH7J,GAOS,IANzBqX,EAA0BrX,EAA1BqX,2BACAC,EAAUtX,EAAVsX,WACAC,EAAcvX,EAAduX,eACAf,EAAcxW,EAAdwW,eACAgB,EAAcxX,EAAdwX,eAAcC,EAAAzX,EACd0X,gBAAAA,OAAe,IAAAD,EAAG,GAAEA,EAEdpX,GAAWC,EAAAA,EAAAA,MAYjBqX,GAAyCC,EAAAA,GAAAA,IAXpB,WAAH,OAASP,GAA2B,EAAM,IACzC,SAAC1T,GAClBtD,GAASuD,EAAAA,EAAAA,IAAqBD,IAGJ,mBAAtBA,EAAIkU,eACNR,GAA2B,EAE/B,IAGyES,GAAApX,EAAAA,EAAAA,GAAAiX,EAAA,GAAlEI,EAAaD,EAAA,GAAEE,EAAeF,EAAA,GACrCvX,GAA4CC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA7D0X,EAAcxX,EAAA,GAAEyX,EAAiBzX,EAAA,GACxCI,GAAgDL,EAAAA,EAAAA,WAAkB,GAAMM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAjEsX,EAAgBrX,EAAA,GAAEsX,EAAmBtX,EAAA,GAEtCkT,GAAkBhN,EAAAA,EAAAA,KACtB,SAACC,GAAe,OAAKA,EAAMC,cAAc8M,eAAe,IAGpDqE,GACJ5P,EAAAA,EAAAA,GACE,CAAC8O,GACD,CAAC5P,EAAAA,GAAW2Q,kCACiB,gBAAX,OAAftE,QAAe,IAAfA,OAAe,EAAfA,EAAiBiB,MAExB,IAAKuB,EACH,OAAO,KAeT,OACEtV,EAAAA,EAAAA,KAACqX,GAAAA,EAAa,CACZnX,MAAK,gBACLoX,YAAa,SACbC,OAAQnB,EACRjW,WAAWH,EAAAA,EAAAA,KAACwX,EAAAA,IAAiB,IAC7BC,UAAWZ,EACXa,UApBoB,WACtB,IACMC,GADwBC,EAAAA,EAAAA,IAAgBtC,GACNuC,SAAS,KACjDf,EACE,SAAS,mBAADpS,OACW2R,EAAc,kBAAA3R,OAAiB4Q,GAAc5Q,OAC1C,KAApB8R,EAAsB,eAAA9R,OACH8R,GAAe,cAAA9R,OAChBiT,EAAS,kBAAAjT,OAAiBqS,IAAgBrS,OAC3DuS,EAAmB,eAAiB,IAE3C,EAUIjY,QAxCY,WAAH,OAASmX,GAA2B,EAAO,EAyCpD2B,qBACExX,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,CAAC,qCACyBL,EAAAA,EAAAA,KAAA,UACjCA,EAAAA,EAAAA,KAAA,KAAAK,UAAIuX,EAAAA,EAAAA,IAAgBtC,KAAqB,IACpB,KAApBkB,GACClW,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPL,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,SAAM,eAENA,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,UAAAK,SAASmW,OAGX,GACA,MACAxW,EAAAA,EAAAA,KAAA,UACFA,EAAAA,EAAAA,KAAA,SACCkW,GAA8B,OAAdI,QAAc,IAAdA,OAAc,EAAdA,EAAgB3N,SACX,KAApB6N,IACExW,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UACPL,EAAAA,EAAAA,KAAC4R,EAAAA,IAAM,CACLhR,MAAO,sBACPiR,gBAAiB,CAAC,MAAO,MACzBC,QAASiF,EACTpW,MAAO,kBACPE,GAAG,kBACHC,KAAK,kBACLE,SAAU,SAACC,GACT+V,GAAmBD,EACrB,EACAgB,YAAY,OAInBZ,IAAcJ,GAAsC,KAApBP,KAC/BxW,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UACPL,EAAAA,EAAAA,KAAA,OACEoI,MAAO,CACLwB,UAAW,IACXvJ,UAEFL,EAAAA,EAAAA,KAAC4R,EAAAA,IAAM,CACLhR,MAAO,yBACPiR,gBAAiB,CAAC,MAAO,MACzBC,QAASmF,EACTtW,MAAO,oBACPE,GAAG,oBACHC,KAAK,oBACLE,SAAU,SAACC,GACTiW,GAAqBD,EACvB,EACAc,YAAY,SAKnBhB,IACCzW,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPC,EAAAA,EAAAA,MAAA,OACE8H,MAAO,CACLwB,UAAW,GACXE,OAAQ,oBACRwC,aAAc,EACdgB,QAAS,EACTC,gBAAiB,YACjB1D,MAAO,WACPxJ,SAAA,CACH,8DAC6D,KAC5DL,EAAAA,EAAAA,KAAA,SAAM,mCAGRA,EAAAA,EAAAA,KAAA,SAAM,4CAQpB,ECpBA,IAAeoK,EAAAA,EAAAA,IA1HA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTwN,EAAAA,IACA/Q,EAAAA,IACAgR,EAAAA,IACF,GAqHL,EA1G0B,SAAH7T,GAOI,IANzB8G,EAAO9G,EAAP8G,QACA6F,EAAI3M,EAAJ2M,KACAmH,EAAoB9T,EAApB8T,qBACAhK,EAAU9J,EAAV8J,WACAtD,EAAUxG,EAAVwG,WACA0S,EAAUlZ,EAAVkZ,WAEM7Y,GAAWC,EAAAA,EAAAA,MACjBC,GAAgDC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAjE4Y,EAAgB1Y,EAAA,GAAE2Y,EAAmB3Y,EAAA,GAC5CI,GAAgCL,EAAAA,EAAAA,WAAkB,GAAMM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAjD6T,EAAQ5T,EAAA,GAAE6T,EAAW7T,EAAA,GACtB2V,EAAYyC,EAAWxC,YAE7BzV,EAAAA,EAAAA,YAAU,WACR,IAAM4I,EAASwP,IAAIH,EAAY,oBAAqB,OACpDE,EAA+B,OAAXvP,EACtB,GAAG,CAACqP,IAEJ,IA2BMxD,EAAY,WAChB0D,GAAoB,EACtB,EAEA,OACE5X,EAAAA,EAAAA,MAACL,EAAAA,EAAY,CACXC,MAAM,iBACNnB,UAAW0M,EACXzM,QAAS,WACPwV,IACA5B,GAAqB,EACvB,EAAEvS,SAAA,EAEFC,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQ+O,aAAatU,SAAA,CAAC,WACzCiF,MAGXhF,EAAAA,EAAAA,MAAA,QACEsU,YAAU,EACVC,aAAa,MACbC,SAAU,SAAC7T,IA/CA,SAACA,GAChBA,EAAE8T,iBACFtB,GAAY,GAEZvR,GAAAA,EAAIwT,QACD0C,mBACC9S,EACA,CACE7F,QAAQwI,EAAAA,EAAAA,IAAgBW,GACxB4M,WAAYD,GAAa,IAE3B,CACE5M,OAAQsP,EACJI,GAAAA,GAAsBC,QACtBD,GAAAA,GAAsBE,WAG7BlW,MAAK,WACJoR,GAAY,GACZb,GAAqB,EACvB,IACCpQ,OAAM,SAACC,GACNtD,GAAS0W,EAAAA,EAAAA,KAA0BlT,EAAAA,GAAAA,GAAeF,EAAIqT,SACtDrC,GAAY,EACd,GACJ,CAuBQqB,CAAS7T,EACX,EAAEZ,SAAA,EAEFL,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQoP,aAAa3U,UACjDL,EAAAA,EAAAA,KAAC4R,EAAAA,IAAM,CACLjR,MAAM,YACNE,GAAG,YACHC,KAAK,YACLgR,QAASmG,EACTjX,SAAU,SAACC,GACTiX,GAAqBD,EACvB,EACArX,MAAO,oBACPiR,gBAAiB,CAAC,UAAW,YAC7B1Q,QACE,0FAINb,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQhE,eAAevB,SAAA,EACnDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,QACJiB,KAAK,SACLC,QAAQ,UACRC,QAASwS,EACT5T,MAAO,WAETZ,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,OACJiB,KAAK,SACLC,QAAQ,aACRT,SAAUkS,EACV5S,MAAO,kBAMnB,I,4DClHM4X,GAAiB,SAACC,GACtB,OAAO/K,MAAMgL,QAAQD,GACjBA,EAAQ/Q,IAAIa,EAAAA,IAAwBR,KAAK,OACzCQ,EAAAA,EAAAA,IAAuBkQ,EAC7B,EA0EA,IAAerO,EAAAA,EAAAA,IAvFA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CACXyT,UAAW,CACTlP,MAAO,QAENkJ,EAAAA,IACAiG,EAAAA,IACF,GAgFL,EAxEuB,SAAH9Z,GAII,IAHtB+Z,EAAQ/Z,EAAR+Z,SACAjT,EAAO9G,EAAP8G,QAAOkT,EAAAha,EACPia,OAAAA,OAAM,IAAAD,GAAQA,EAERE,EAAWxV,OAAOC,KAAKoV,GAE7B,OAAIE,GAEA/Y,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,SACN2Y,EAAStR,KAAI,SAAC+Q,EAAiB7Q,GAC9B,IAAMqR,EAAaT,GAAeK,EAASJ,IAC3C,OACEnY,EAAAA,EAAAA,MAAC0R,EAAAA,EAAG,CACF7J,UAAWvC,EAAQsT,eAAe7Y,SAAA,EAGlCL,EAAAA,EAAAA,KAAA,UAAAK,SAASoY,KACTzY,EAAAA,EAAAA,KAAA,SACCiZ,IAAU,YAAAvU,OAJM+T,EAAO,KAAA/T,OAAIkD,EAAMiB,YAOxC,OAMJvI,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CAAC+P,WAAS,EAAAjR,SAAA,EACbL,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CACHC,MAAI,EACJC,GAAI,GACJC,GAAI,CACFkI,UAAW,OACX6I,aAAc,OACdpS,UAEFL,EAAAA,EAAAA,KAAA,MACEoI,MAAO,CACLwB,UAAW,IACX6I,aAAc,KACdpS,SACH,uBAKHL,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAGpB,UAChBL,EAAAA,EAAAA,KAACmZ,GAAAA,EAAK,CAAChR,UAAWvC,EAAQwT,MAAO,aAAW,eAAc/Y,UACxDL,EAAAA,EAAAA,KAACqZ,GAAAA,EAAS,CAAAhZ,SACP2Y,EAAStR,KAAI,SAAC+Q,EAAiB7Q,GAC9B,IAAMqR,EAAaT,GAAeK,EAASJ,IAC3C,OACEnY,EAAAA,EAAAA,MAACgZ,GAAAA,EAAQ,CAAAjZ,SAAA,EACPL,EAAAA,EAAAA,KAACuZ,GAAAA,EAAS,CACRC,UAAU,KACVC,MAAM,MACNtR,UAAWvC,EAAQ+S,UAAUtY,SAE5BoY,KAEHzY,EAAAA,EAAAA,KAACuZ,GAAAA,EAAS,CAACG,MAAM,QAAOrZ,SAAE4Y,MAAuB,QAAAvU,OAR5BkD,EAAMiB,YAWjC,YAMZ,I,YC5EA,IAAeuB,EAAAA,EAAAA,IA/BA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,GAAa,CACX0U,SAAU,CACR1H,QAAS,OACTK,WAAY,SACZ,cAAe,CACb7I,MAAO,GACPC,OAAQ,GACRK,YAAa,EACbgD,SAAU,GACV6M,UAAW,KAGfC,aAAc,CACZvR,WAAY,MACZwR,SAAU,SACVC,aAAc,aAEf,GAaL,EAXsB,SAAHjb,GAAoD,IAA9C8G,EAAO9G,EAAP8G,QAAS2D,EAAIzK,EAAJyK,KAAMyQ,EAAOlb,EAAPkb,QACtC,OACE1Z,EAAAA,EAAAA,MAAA,OAAK6H,UAAWvC,EAAQ+T,SAAStZ,SAAA,CAC9BkJ,GACDvJ,EAAAA,EAAAA,KAAA,QAAMmI,UAAWvC,EAAQiU,aAAaxZ,UACnC4Z,EAAAA,EAAAA,IAAmBD,EAAQA,EAAQ3W,OAAS,QAIrD,ICGa6W,GAAgC,CAC3C,CACE3Q,MAAMvJ,EAAAA,EAAAA,KAACma,EAAAA,IAAa,IACpBC,WAAY,CAAC,MAAO,MAAO,MAAO,OAAQ,QAE5C,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAACqa,EAAAA,IAAa,IACpBD,WAAY,CAAC,MAAO,MAAO,QAE7B,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAACsa,EAAAA,IAAW,IAClBF,WAAY,CAAC,QAEf,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAACua,EAAAA,IAAW,IAClBH,WAAY,CAAC,MAAO,SAEtB,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAACwa,EAAAA,IAAW,IAClBJ,WAAY,CAAC,MAAO,SAEtB,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAACya,EAAAA,IAAY,IACnBL,WAAY,CAAC,MAAO,MAAO,QAE7B,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAAC0a,EAAAA,IAAY,IACnBN,WAAY,CAAC,OAAQ,MAAO,MAAO,KAAM,KAAM,MAAO,MAAO,IAAK,SAEpE,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAAC2a,EAAAA,IAAc,IACrBP,WAAY,CAAC,MAAO,SAEtB,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAAC4a,EAAAA,IAAU,IACjBR,WAAY,CAAC,QAEf,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAAC6a,EAAAA,IAAY,IACnBT,WAAY,CAAC,MAAO,QAEtB,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAAC8a,EAAAA,IAAW,IAClBV,WAAY,CAAC,MAAO,OAAQ,MAAO,QAErC,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAAC+a,EAAAA,IAAW,IAClBX,WAAY,CAAC,MAAO,MAAO,MAAO,OAEpC,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAACgb,EAAAA,IAAY,IACnBZ,WAAY,CAAC,OAAQ,OAAQ,MAAO,SAEtC,CACE7Q,MAAMvJ,EAAAA,EAAAA,KAACib,EAAAA,IAAa,IACpBb,WAAY,CAAC,OAAQ,MAAO,MAAO,OAAQ,MAAO,OAAQ,SAIjDc,GAAsB,SACjCzC,GAEI,IADJ0C,EAAuB/X,UAAAC,OAAA,QAAAC,IAAAF,UAAA,IAAAA,UAAA,GAEnBgY,EAAgB3C,EAChBlP,GAAOvJ,EAAAA,EAAAA,KAACqb,EAAAA,IAAW,IAEnB5C,EAAQZ,SAAS,OACnBtO,GAAOvJ,EAAAA,EAAAA,KAACsb,EAAAA,GAAiB,IACzBF,EAAgB3C,EAAQ3Q,MAAM,GAAI,IAIpC,IADA,IAAMyT,EAAmB9C,EAAQ+C,cACjCC,EAAA,EAAAC,EAAkBxB,GAAeuB,EAAAC,EAAArY,OAAAoY,IAAE,CAA9B,IAC6BE,EADvBC,EAAGF,EAAAD,GAAAI,GAAAC,EAAAA,GAAAA,GACMF,EAAIxB,YAAU,IAAhC,IAAAyB,EAAAE,MAAAJ,EAAAE,EAAAG,KAAAC,MAAkC,CAAC,IAAxBC,EAAGP,EAAAhb,MACR4a,EAAiB1D,SAAS,IAADnT,OAAKwX,MAChC3S,EAAOqS,EAAIrS,KAEf,CAAC,OAAA9G,GAAAoZ,EAAA5a,EAAAwB,EAAA,SAAAoZ,EAAAM,GAAA,CACH,EAEK1D,EAAQZ,SAAS,MAAQY,EAAQnU,QAAQ,KAAO,IACnDiF,GAAOvJ,EAAAA,EAAAA,KAACoc,EAAAA,IAAe,KAGzB,IAAMC,EAAYjB,EAAcnU,MAAM,KAEtC,OAAIkU,EACK5R,GAGFvJ,EAAAA,EAAAA,KAACsc,GAAa,CAAC/S,KAAMA,EAAMyQ,QAASqC,GAC7C,E,wBCsOA,IAAejS,EAAAA,EAAAA,IAlTA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CACXqX,cAAe,CACbC,SAAU,GACVC,WAAY,OACZ5S,MAAO,OACPxE,OAAQ,SACRmN,cAAe,GACfP,QAAS,OACTK,WAAY,SACZ,UAAW,CACTvI,YAAa,KAGjB2S,aAAc,CACZF,SAAU,GACVnX,OAAQ,cACRiD,WAAY,SACZwR,SAAU,SACVC,aAAc,WACdtQ,MAAO,QAETkT,qBAAsB,CACpBH,SAAU,GACVC,WAAY,UAEdG,gBAAiB,CACf/S,MAAO,WAETgT,UAAW,CACThT,MAAO,UACPiD,WAAY,IAEX4F,EAAAA,IACA/Q,EAAAA,IACAgR,EAAAA,IACF,GA8QL,EA5QoB,SAAH7T,GAMC,IAADge,EALf/d,EAASD,EAATC,UACAge,EAAgBje,EAAhBie,iBACAzX,EAAUxG,EAAVwG,WACA0S,EAAUlZ,EAAVkZ,WACApS,EAAO9G,EAAP8G,QAEMzG,GAAWC,EAAAA,EAAAA,MACX4d,GAAmBlX,EAAAA,EAAAA,IAAYmX,EAAAA,IACrC5d,GAA4BC,EAAAA,EAAAA,UAAiB,IAAGC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAzC6d,EAAM3d,EAAA,GAAE4d,EAAS5d,EAAA,GACxBI,GAAgCL,EAAAA,EAAAA,UAAiB,IAAGM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAA7Cyd,EAAQxd,EAAA,GAAEyd,EAAWzd,EAAA,GAC5ByP,GAAkC/P,EAAAA,EAAAA,WAAkB,GAAMgQ,GAAA9P,EAAAA,EAAAA,GAAA6P,EAAA,GAAnDiO,EAAShO,EAAA,GAAEiO,EAAYjO,EAAA,GAC9BG,GAA0CnQ,EAAAA,EAAAA,WAAkB,GAAMoQ,GAAAlQ,EAAAA,EAAAA,GAAAiQ,EAAA,GAA3D+N,EAAa9N,EAAA,GAAE+N,EAAgB/N,EAAA,GACtC4D,GAAkChU,EAAAA,EAAAA,UAAiB,IAAGiU,GAAA/T,EAAAA,EAAAA,GAAA8T,EAAA,GAA/CoK,EAASnK,EAAA,GAAEoK,EAAYpK,EAAA,GAC9BG,GAAsCpU,EAAAA,EAAAA,UAAiB,IAAGqU,GAAAnU,EAAAA,EAAAA,GAAAkU,EAAA,GAAnDkK,EAAWjK,EAAA,GAAEkK,EAAclK,EAAA,GAE5B2B,GAAiBrN,EAAAA,EAAAA,IAAgB+P,EAAWlX,MAAQ,IAEpDgd,EAAc9F,EAAW+F,KACzBC,EAAcxa,OAAOC,KAAKqa,GAAe,CAAC,GAE1CG,EAA6B,QAAlBnB,EAAG9E,EAAWlX,YAAI,IAAAgc,OAAA,EAAfA,EAAiB7V,MAAM,KACrCiX,GAAyB,OAAXD,QAAW,IAAXA,OAAW,EAAXA,EAAaE,QAAS,GAkEpCC,EAAU,SAACC,GAAe,OAC9B/d,EAAAA,EAAAA,MAAA,OAAK6H,UAAWvC,EAAQ8W,aAAarc,SAAA,CAAC,MAChCge,EAAS,IAAM,GAAG,UAAMre,EAAAA,EAAAA,KAAA,UAAAK,SAAS6d,MACjC,EAGR,OACEle,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UACPL,EAAAA,EAAAA,KAACC,EAAAA,EAAY,CACXlB,UAAWA,EACXmB,MAAOsd,EAAgB,aAAY,YACnCxe,QAAS,WACP+d,GAAiB,EACnB,EACA5c,UACEqd,GACExd,EAAAA,EAAAA,KAACse,EAAAA,IAAY,CAAClW,MAAO,CAAEuB,KAAM,cAE7B3J,EAAAA,EAAAA,KAACue,EAAAA,IAAW,IAEfle,SAEAmd,GACCxd,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UACPC,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CAAC+P,WAAS,EAAAjR,SAAA,CACZ+d,GAAQ,GAAO,0CACwB,KACxC9d,EAAAA,EAAAA,MAAA,KAAG6H,UAAWvC,EAAQiX,UAAUxc,SAAA,CAC7Bqd,EAAU,MAAIE,KACZ,IAAI,KAETtd,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQhE,eAAevB,SAAA,EACnDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,SACJiB,KAAK,SACLC,QAAQ,UACRC,QA1CK,WACnB2b,EAAa,IACbE,EAAe,IACfJ,GAAiB,EACnB,EAuCgB7c,MAAO,YAETZ,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLC,KAAK,SACLC,QAAQ,YACRC,QA5ES,WACvB,IAAMwc,GAAgBtZ,EAAAA,EAAAA,GAAA,GAAQ4Y,UACvBU,EAAYd,GAEnB,IAAMe,EAAQzB,EAAmBhF,EAAWxC,YAAc,GAAK,OAE/DtT,GAAAA,EAAIwT,QACDgJ,cACCpZ,EACA,CAAE7F,OAAQ6V,EAAgBE,WAAYiJ,GACtC,CAAEV,KAAMS,IAETnc,MAAK,WACJ0a,GAAiB,GACjBQ,GAAa,EACf,IACC/a,OAAM,SAACC,GACNtD,GAAS0W,EAAAA,EAAAA,KAA0BlT,EAAAA,GAAAA,GAAeF,EAAIqT,SACtDyH,GAAa,EACf,GACJ,EAyDgB1c,GAAI,YACJD,MAAO,wBAMfN,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CAAC+P,WAAS,EAAAjR,SAAA,EACbL,EAAAA,EAAAA,KAAC2e,EAAAA,EAAe,CACdxb,OAAQ,CACNsD,EAAAA,GAAWmY,sBACXnY,EAAAA,GAAWoY,gBAEbC,SAAUxZ,EAAWjF,UAErBC,EAAAA,EAAAA,MAAC0R,EAAAA,EAAG,CACFtQ,GAAI,CACFuQ,QAAS,OACT8M,SAAU,SACVtV,MAAO,QACPpJ,SAAA,CAED+d,GAAQ,IACT9d,EAAAA,EAAAA,MAAA,OAAK6H,UAAWvC,EAAQ+W,qBAAqBtc,SAAA,CAAC,iBAE5CL,EAAAA,EAAAA,KAAA,SACwB,IAAvBge,EAAY3a,QACXrD,EAAAA,EAAAA,KAAA,QAAMmI,UAAWvC,EAAQgX,gBAAgBvc,SAAC,uCAI1CL,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,KAEXlI,EAAAA,EAAAA,KAACgS,EAAAA,EAAG,CAACtQ,GAAI,CAAEkI,UAAW,MAAO6I,aAAc,QAASpS,SACjD2d,EAAYtW,KAAI,SAACsX,EAAgBpX,GAChC,IAAMqX,EAAM9G,IAAI2F,EAAY,GAADpZ,OAAKsa,GAAU,IAC1C,MAAY,KAARC,GAEAjf,EAAAA,EAAAA,KAAC2e,EAAAA,EAAe,CAEdxb,OAAQ,CAACsD,EAAAA,GAAWyY,0BACpBJ,SAAUxZ,EACV6Z,WAAY,CACVC,WAAY,KACZC,SAAU,MACVhf,UAEFL,EAAAA,EAAAA,KAACsf,GAAAA,EAAI,CACHlX,MAAO,CACLmX,cAAe,OACfxV,YAAa,MACb0I,aAAc,OAEhB+M,KAAK,QACL5e,MAAK,GAAA8D,OAAKsa,EAAM,OAAAta,OAAMua,GACtBpV,MAAM,UACNuV,YAAYpf,EAAAA,EAAAA,KAACyf,GAAAA,EAAS,IACtBJ,SAAU,YAhHlB,SAACL,EAAgBC,GACnCtB,EAAaqB,GACbnB,EAAeoB,GACfxB,GAAiB,EACnB,CA6G8BiC,CAAYV,EAAQC,EACtB,KACA,QAAAva,OArBWkD,IAyBZ,IACT,eAKR5H,EAAAA,EAAAA,KAAC2e,EAAAA,EAAe,CACdxb,OAAQ,CACNsD,EAAAA,GAAWkZ,sBACXlZ,EAAAA,GAAWE,gBAEbmY,SAAUxZ,EACV6Z,WAAY,CAAE7d,UAAU,EAAMU,QAAS,MAAO3B,UAE9CC,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CAAC+P,WAAS,EAAAjR,SAAA,EACbL,EAAAA,EAAAA,KAAC4f,EAAAA,IAAY,CAACrW,MAAMvJ,EAAAA,EAAAA,KAAC6f,EAAAA,IAAa,IAAKC,WAAW,EAAMzf,SAAC,iBAGzDL,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQoP,aAAa3U,UACjDL,EAAAA,EAAAA,KAACU,EAAAA,IAAQ,CACPC,MAAOuc,EACPtc,MAAO,UACPC,GAAI,YACJC,KAAM,YACNC,YAAa,gBACbC,SAAU,SAACC,GACTkc,EAAUlc,EAAEC,OAAOP,MACrB,OAGJX,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQoP,aAAa3U,UACjDL,EAAAA,EAAAA,KAACU,EAAAA,IAAQ,CACPC,MAAOyc,EACPxc,MAAO,YACPC,GAAI,cACJC,KAAM,cACNC,YAAa,kBACbC,SAAU,SAACC,GACToc,EAAYpc,EAAEC,OAAOP,MACvB,OAGJL,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQhE,eAAevB,SAAA,EACnDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,QACJiB,KAAK,SACLC,QAAQ,UACR8H,MAAM,UACN7H,QA3NA,WAChBqb,EAAY,IACZF,EAAU,GACZ,EAyNkBvc,MAAO,WAETZ,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLC,KAAK,SACLC,QAAQ,aACRT,SACsB,KAApB8b,EAASnb,QACS,KAAlBib,EAAOjb,QACPqb,EAEFtb,QAjOI,WACpBub,GAAa,GACb,IAAMwC,EAAc,CAAC,EAErBA,EAAO7C,GAAUE,EACjB,IAAM4C,GAAU9a,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAAQ4Y,GAAgBiC,GAElCtB,EAAQzB,EAAmBhF,EAAWxC,YAAc,GAAK,OAE/DtT,GAAAA,EAAIwT,QACDgJ,cACCpZ,EACA,CAAE7F,OAAQ6V,EAAgBE,WAAYiJ,GACtC,CAAEV,KAAMiC,IAET3d,MAAK,WACJ0a,GAAiB,GACjBQ,GAAa,EACf,IACC/a,OAAM,SAACC,GACNtD,GAAS0W,EAAAA,EAAAA,KAA0BlT,EAAAA,GAAAA,GAAeF,EAAIqT,SACtDyH,GAAa,EACf,GACJ,EA2MkB1c,GAAG,UACHD,MAAO,uBAU3B,I,gDCzKA,IAAewJ,EAAAA,EAAAA,IApJA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTwN,EAAAA,IACA/Q,EAAAA,IACAgR,EAAAA,IACF,GA+IL,EArIsB,SAAH7T,GAMS,IAL1B8G,EAAO9G,EAAP8G,QACAqa,EAA2BnhB,EAA3BmhB,4BACAC,EAAWphB,EAAXohB,YACAC,EAAWrhB,EAAXqhB,YACAC,EAAUthB,EAAVshB,WAEMjhB,GAAWC,EAAAA,EAAAA,MACXJ,EAAU,WAAH,OAASihB,GAA4B,EAAO,EACzD5gB,GAAkCC,EAAAA,EAAAA,WAAkB,GAAKC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAlDghB,EAAS9gB,EAAA,GAAE+gB,EAAY/gB,EAAA,GAC9BI,GAA0CL,EAAAA,EAAAA,UAAiB,IAAGM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAvD4gB,EAAa3gB,EAAA,GAAE4gB,EAAgB5gB,EAAA,GACtCyP,GAAsC/P,EAAAA,EAAAA,UAAiB,IAAGgQ,GAAA9P,EAAAA,EAAAA,GAAA6P,EAAA,GAAnDoR,EAAWnR,EAAA,GAAEoR,EAAcpR,EAAA,GAElC,IAAK6Q,EACH,OAAO,KAET,IAAMQ,EAAW,eAAAC,GAAAC,EAAAA,GAAAA,IAAAC,EAAAA,GAAAA,KAAAC,MAAG,SAAAC,EAAOC,GAAW,OAAAH,EAAAA,GAAAA,KAAAI,MAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACvBC,MAAML,EAAK,CAAEM,OAAQ,QAAS,KAAD,SAAAJ,EAAAK,OAAA,SAAAL,EAAAM,MAAA,wBAAAN,EAAAO,OAAA,GAAAV,EAAA,KAC3C,gBAFgBW,GAAA,OAAAf,EAAAgB,MAAA,KAAAxe,UAAA,KAIXye,EAAc,eAAAC,GAAAjB,EAAAA,GAAAA,IAAAC,EAAAA,GAAAA,KAAAC,MAAG,SAAAgB,IAAA,IAAAC,EAAAC,EAAAC,EAAA,OAAApB,EAAAA,GAAAA,KAAAI,MAAA,SAAAiB,GAAA,cAAAA,EAAAf,KAAAe,EAAAd,MAAA,OACfW,GAAO/Z,EAAAA,EAAAA,IAAgBkY,EAAc,YACrC8B,GAASha,EAAAA,EAAAA,IAAgBmY,GAEzB8B,EAAe,gCAAAxd,OAAmCud,EAAM,UAAAvd,OAASsd,EAAI,aAAAtd,OAAY2b,GAEvFM,EAAYuB,GACT7f,KAAI,eAAA+f,GAAAvB,EAAAA,GAAAA,IAAAC,EAAAA,GAAAA,KAAAC,MAAC,SAAAsB,EAAO/f,GAAG,IAAAggB,EAAAC,EAAAC,EAAAC,EAAA,OAAA3B,EAAAA,GAAAA,KAAAI,MAAA,SAAAwB,GAAA,cAAAA,EAAAtB,KAAAsB,EAAArB,MAAA,UACT/e,EAAIqgB,GAAG,CAADD,EAAArB,KAAA,eAAAqB,EAAArB,KAAA,EACiB/e,EAAIsgB,OAAO,KAAD,EAA9BN,EAAWI,EAAAjB,KAEjBtiB,GACEuD,EAAAA,EAAAA,IAAqB,CACnBmgB,aAAcP,EAAOQ,QACrBnM,cAAe2L,EAAOS,QAExB,cAAAL,EAAArB,KAAA,EAEqB/e,EAAIigB,OAAO,KAAD,EAOV,GAPnBA,EAAUG,EAAAjB,KAGVe,EAAWlgB,EAAI0gB,QAAQ7K,IAAI,uBAAuBlR,MAAM,KAAK,GAC7Dwb,GAAaQ,EAAAA,EAAAA,IAAeT,IAAa,IAE/CU,EAAAA,EAAAA,IAAgBX,EAAMC,GACtB9B,EAAe8B,GACI,KAAfC,EAAiB,CAAAC,EAAArB,KAAA,SACT,OAAVriB,IAAU0jB,EAAAlB,OAAA,kBAGZhB,EAAiBiC,GAAY,yBAAAC,EAAAhB,OAAA,GAAAW,EAAA,KAC9B,gBAAAc,GAAA,OAAAf,EAAAR,MAAA,KAAAxe,UAAA,EAxBI,IAyBJZ,OAAM,SAACC,GACNtD,GAASuD,EAAAA,EAAAA,IAAqBD,GAChC,IAAG,wBAAA0f,EAAAT,OAAA,GAAAK,EAAA,KACN,kBAnCmB,OAAAD,EAAAF,MAAA,KAAAxe,UAAA,KA+CpB,OACE9C,EAAAA,EAAAA,MAACuE,EAAAA,SAAc,CAAAxE,SAAA,EACXkgB,IACAvgB,EAAAA,EAAAA,KAACC,EAAAA,EAAY,CACXlB,UAAWmhB,EACX/f,WAAWH,EAAAA,EAAAA,KAACojB,EAAAA,IAAe,IAC3BljB,MAAK,iBACLlB,QAASA,EAAQqB,UAEjBC,EAAAA,EAAAA,MAAA,QACEsU,YAAU,EACVC,aAAa,MACbC,SAAU,SAAC7T,IAhBJ,SAACA,GAChBA,EAAE8T,gBACJ,CAeYD,CAAS7T,EACX,EAAEZ,SAAA,CACH,8BAC2BL,EAAAA,EAAAA,KAAA,KAAAK,UAAIuX,EAAAA,EAAAA,IAAgBuI,KAAiB,IAAE,KACjEngB,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAC4R,EAAAA,IAAM,CACLhR,MAAO,UACPiR,gBAAiB,CAAC,MAAO,MACzBC,QAASuO,EACT1f,MAAO,UACPE,GAAG,UACHC,KAAK,UACLE,SAAU,SAACC,GACTqf,GAAcD,EAChB,EACAtI,YAAY,MAEd/X,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQhE,eAAevB,UACnDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,UACJiB,KAAK,SACLC,QAAQ,aACR8H,MAAM,UACN7H,QAAS6f,EACTjhB,MAAO,mBAMhB2f,GACCvgB,EAAAA,EAAAA,KAACC,EAAAA,EAAY,CACXlB,UAAWmhB,EACXhgB,MAAM,yBACNlB,QAzDmB,YACzBqkB,EAAAA,EAAAA,IAAa5C,GACbzhB,IACAwhB,EAAiB,GACnB,EAsDQrgB,WAAWH,EAAAA,EAAAA,KAACsjB,EAAAA,IAAe,IAAIjjB,UAE/BC,EAAAA,EAAAA,MAACijB,GAAAA,EAAiB,CAAAljB,SAAA,EAChBC,EAAAA,EAAAA,MAAC0R,EAAAA,IAAG,CAAA3R,SAAA,CAAC,6DAEHL,EAAAA,EAAAA,KAAA,SAAM,2CAGRA,EAAAA,EAAAA,KAACgS,EAAAA,IAAG,CAAA3R,UACFL,EAAAA,EAAAA,KAACwjB,GAAAA,EAAW,CAAC7iB,MAAO4f,WAIxB,OAGV,I,oCCjKakD,GAAiB,SAC5BtkB,EACAmG,EACAC,EACAme,GACI,IAADC,EACGC,GAAmB3b,EAAAA,EAAAA,IAAgB,GAADvD,OACnCY,EAAU,KAAAZ,OAAIgf,EAAO5iB,KAAI,KAAA4D,QAAI,IAAIqJ,MAAO8V,UAAS,KAAAnf,OAAIof,KAAKC,WAGzDC,GAAUC,EAAAA,EAAAA,MAAczI,cAAc3X,SAAS,OAErD,KAAgB,QAAX8f,EAAAD,EAAO5iB,YAAI,IAAA6iB,OAAA,EAAXA,EAAatgB,SAAU,GAAK,KAAO2gB,EACtC7kB,GAAS+kB,EAAAA,EAAAA,KAAgB,QAD3B,CAKA,IAAMC,GAAKC,EAAAA,GAAAA,IAAO,GAEZC,GAAeC,EAAAA,EAAAA,IACnBhf,EACAC,EACAme,EAAOlO,WACPkO,EAAOlE,MAAQ,EACf,KACA2E,GACA,SAACI,GACCplB,GACEqlB,EAAAA,EAAAA,IAAe,CACbC,WAAYb,EACZW,SAAUA,IAGhB,IACA,WACEplB,GAASulB,EAAAA,EAAAA,IAAed,GAC1B,IACA,SAACe,GACCxlB,GAASylB,EAAAA,EAAAA,IAAW,CAAEH,WAAYb,EAAkBe,IAAAA,IACtD,IACA,WACExlB,GAAS0lB,EAAAA,EAAAA,IAAmBjB,GAC9B,IACA,WACEzkB,GACEoD,EAAAA,EAAAA,IACE,0DAGN,KAGFuiB,EAAAA,GAAAA,IAAyBX,EAAIE,GAC7BllB,GACE4lB,EAAAA,EAAAA,IAAa,CACXZ,GAAAA,EACA7e,WAAAA,EACA2W,MAAM,EACNwI,WAAYb,EACZoB,WAAY,EACZvlB,OAAQikB,EAAO5iB,MAAQ,GACvBgB,KAAM,WACNmjB,gBAAgB,EAChBC,QAAQ,EACRC,WAAW,EACXtC,aAAc,KAlDlB,CAqDF,ECvDM/d,IAAYC,EAAAA,EAAAA,IAAW,SAACC,GAAY,OACxCC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTvD,EAAAA,IACA+Q,EAAAA,IACAC,EAAAA,IACAyS,EAAAA,IACH,IAgGJ,GA7F2B,SAAHtmB,GAOI,IAN1B2M,EAAI3M,EAAJ2M,KACA4Z,EAAUvmB,EAAVumB,WACAnH,EAAWpf,EAAXof,YACA3Y,EAAazG,EAAbyG,cACAyS,EAAUlZ,EAAVkZ,WACA1S,EAAUxG,EAAVwG,WAEMM,EAAUd,KACV3F,GAAWC,EAAAA,EAAAA,MAEjBC,GAAsCC,EAAAA,EAAAA,UAAiB4e,GAAY3e,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA5DimB,EAAW/lB,EAAA,GAAEgmB,EAAchmB,EAAA,GAClCI,GAA4CL,EAAAA,EAAAA,WAAkB,GAAMM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAA7D6lB,EAAc5lB,EAAA,GAAE6lB,EAAiB7lB,EAAA,GAQxC,OACEU,EAAAA,EAAAA,MAACL,EAAAA,EAAY,CACXC,MAAK,kBACLnB,UAAW0M,EACXzM,QAASqmB,EACTllB,WAAWH,EAAAA,EAAAA,KAAC0lB,EAAAA,IAAQ,IAAIrlB,SAAA,EAExBC,EAAAA,EAAAA,MAAA,OAAAD,SAAA,CAAK,wDAEHL,EAAAA,EAAAA,KAAA,SAAM,sFAGNA,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,SAAM,gDAERA,EAAAA,EAAAA,KAAA,QACE4U,YAAU,EACVC,aAAa,MACbC,SAAU,SAAC7T,IAxBE,SAACA,GAClBA,EAAE8T,iBACF0O,GAAetkB,EAAUmG,EAAYC,EAAeyS,GACpDqN,GACF,CAqBQM,CAAW1kB,EACb,EAAEZ,UAEFC,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CAAC+P,WAAS,EAAAjR,SAAA,EACbC,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQggB,oBAAoBvlB,SAAA,EACxDL,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQoP,aAAa3U,UACjDL,EAAAA,EAAAA,KAAC6lB,GAAAA,EAAe,CACdhlB,GAAG,oBACHC,KAAK,oBACLE,SAAU,SAACqK,GACTka,EAAela,EAAMnK,OAAOP,MAC9B,EACAC,MAAM,GACNkB,KAAM,OACNnB,MAAO2kB,EACPxP,MACEwP,EAAYjiB,OAAS,MAAQmiB,EACzB,oDACA,QAIVxlB,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQoP,aAAa3U,UACjDL,EAAAA,EAAAA,KAAC8lB,GAAAA,EAAiB,CAChBnlB,MAAM,iBACNE,GAAG,iBACHC,KAAK,iBACLgR,QAAS0T,EACTxkB,SAAU,SAACqK,GACToa,EAAkBpa,EAAMnK,OAAO4Q,SAC3BzG,EAAMnK,OAAO4Q,SACfyT,EAAerH,EAEnB,EACAtd,MAAO,4BAIbZ,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQhE,eAAevB,UACnDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,gBACJiB,KAAK,SACLC,QAAQ,aACR8H,MAAM,UACNvI,SAAUgkB,EAAYjiB,OAAS,MAAQmiB,EACvC5kB,MAAO,2BAOrB,EC9BMmlB,GAA0B,CAC9BC,WAAW,EACXC,cAAe,GACfC,kBAAmB,GACnBplB,KAAM,GACNgT,eAAgB,GAChBI,qBAAsB,GACtBsL,KAAM,EACNzB,KAAM,CAAC,EACPvI,gBAAYlS,GA8rBd,IAAe8G,EAAAA,EAAAA,IApuBA,WAAH,OACVnF,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CACXihB,mBAAoB,CAClBlU,QAAS,OACTK,WAAY,SACZ,cAAe,CACb7I,MAAO,GACPC,OAAQ,GACRqD,SAAU,GACV6M,UAAW,KAGfwM,oBAAqB,CACnB9d,WAAY,SACZyR,aAAc,WACdD,SAAU,SACVxH,WAAY,SACZxF,WAAY,IAEduZ,gBAAiB,CACf9G,cAAe,eAGd+G,EAAAA,IACA3T,EAAAA,IACA4T,EAAAA,IACA3N,EAAAA,IACF,GAysBL,EAlrB0B,SAAH9Z,GAOS,IAN9B8G,EAAO9G,EAAP8G,QACAL,EAAazG,EAAbyG,cACAD,EAAUxG,EAAVwG,WACAgR,EAAcxX,EAAdwX,eACAkQ,EAAO1nB,EAAP0nB,QACAC,EAAY3nB,EAAZ2nB,aAEMtnB,GAAWC,EAAAA,EAAAA,MAEX4d,GAAmBlX,EAAAA,EAAAA,IAAYmX,EAAAA,IAC/B/W,GAAeJ,EAAAA,EAAAA,KACnB,SAACC,GAAe,OAAKA,EAAMC,cAAcE,YAAY,IAEjDsQ,GAAkB1Q,EAAAA,EAAAA,KACtB,SAACC,GAAe,OAAKA,EAAMC,cAAcwQ,eAAe,IAEpDkQ,GAAoB5gB,EAAAA,EAAAA,KACxB,SAACC,GAAe,OAAKA,EAAMC,cAAc0gB,iBAAiB,IAG5DrnB,GAAoDC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAArEsnB,EAAkBpnB,EAAA,GAAEqnB,EAAqBrnB,EAAA,GAChDI,GAAoDL,EAAAA,EAAAA,WAAkB,GAAMM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAArEknB,EAAkBjnB,EAAA,GAAEknB,EAAqBlnB,EAAA,GAChDyP,GAAwC/P,EAAAA,EAAAA,WAAkB,GAAMgQ,GAAA9P,EAAAA,EAAAA,GAAA6P,EAAA,GAAzD0X,EAAYzX,EAAA,GAAE0X,EAAe1X,EAAA,GACpCG,GAA0CnQ,EAAAA,EAAAA,WAAkB,GAAMoQ,GAAAlQ,EAAAA,EAAAA,GAAAiQ,EAAA,GAA3DwX,EAAavX,EAAA,GAAEwX,EAAgBxX,EAAA,GACtC4D,GAAgDhU,EAAAA,EAAAA,WAAkB,GAAMiU,GAAA/T,EAAAA,EAAAA,GAAA8T,EAAA,GAAjE6T,EAAgB5T,EAAA,GAAE6T,EAAmB7T,EAAA,GAC5CG,GAAoCpU,EAAAA,EAAAA,UAA8B,MAAKqU,GAAAnU,EAAAA,EAAAA,GAAAkU,EAAA,GAAhEsE,EAAUrE,EAAA,GAAE0T,EAAa1T,EAAA,GAChC2T,GAA8ChoB,EAAAA,EAAAA,UAAyB,IAAGioB,IAAA/nB,EAAAA,EAAAA,GAAA8nB,EAAA,GAAnEE,GAAeD,GAAA,GAAEE,GAAkBF,GAAA,GAC1CG,IAA0CpoB,EAAAA,EAAAA,UAA8B,MAAKqoB,IAAAnoB,EAAAA,EAAAA,GAAAkoB,GAAA,GAAtEE,GAAaD,GAAA,GAAEE,GAAgBF,GAAA,GACtCG,IAAgCxoB,EAAAA,EAAAA,UAAyB,IAAGyoB,IAAAvoB,EAAAA,EAAAA,GAAAsoB,GAAA,GAArDE,GAAQD,GAAA,GAAEE,GAAWF,GAAA,GAC5BG,IAAoC5oB,EAAAA,EAAAA,WAAkB,GAAM6oB,IAAA3oB,EAAAA,EAAAA,GAAA0oB,GAAA,GAArD9R,GAAU+R,GAAA,GAAEC,GAAaD,GAAA,GAChCE,IAAsC/oB,EAAAA,EAAAA,WAAkB,GAAMgpB,IAAA9oB,EAAAA,EAAAA,GAAA6oB,GAAA,GAAvDE,GAAWD,GAAA,GAAEE,GAAcF,GAAA,GAClCG,IAAkDnpB,EAAAA,EAAAA,UAAiB,GAAEopB,IAAAlpB,EAAAA,EAAAA,GAAAipB,GAAA,GAA9DE,GAAiBD,GAAA,GAAEE,GAAoBF,GAAA,GAC9CG,IAAwCvpB,EAAAA,EAAAA,WAAkB,GAAMwpB,IAAAtpB,EAAAA,EAAAA,GAAAqpB,GAAA,GAAzDE,GAAYD,GAAA,GAAE5E,GAAe4E,GAAA,GACpCE,IAAgC1pB,EAAAA,EAAAA,UAAqB,MAAK2pB,IAAAzpB,EAAAA,EAAAA,GAAAwpB,GAAA,GAAnDnQ,GAAQoQ,GAAA,GAAEC,GAAWD,GAAA,GAC5BE,IAA2C7pB,EAAAA,EAAAA,WAAkB,GAAM8pB,IAAA5pB,EAAAA,EAAAA,GAAA2pB,GAAA,GAA5DE,GAAYD,GAAA,GAAEE,GAAkBF,GAAA,GAIjClL,KAFuBtG,EAAAA,EAAAA,IAAgBrS,IAAkB,IACtB0B,MAAM,KACfkX,OAAS,GAGrCoL,GAA4B,GAC5BvR,GAAcA,EAAWlX,OAC3ByoB,GAAkBvR,EAAWlX,KAAKmG,MAAM,OAG1ClH,EAAAA,EAAAA,YAAU,WACR,GAAIid,GAAoBwK,IAAmBA,GAAgBnkB,QAAU,EAAG,CACtE,IAAImmB,EACFhC,GAAgBrjB,MAAK,SAACslB,GAAgB,OAAKA,EAAGzD,SAAS,KAAKD,GAEtC,KAApBvP,IACFgT,EACEhC,GAAgBrjB,MACd,SAACslB,GAAgB,OAAKA,EAAGjU,aAAegB,CAAe,KACpDuP,IAGJyD,EAAYE,kBACfJ,IAAmB,GAGrBjC,EAAcmC,EAChB,CACF,GAAG,CAAChT,EAAiBwG,EAAkBwK,MAEvCznB,EAAAA,EAAAA,YAAU,WACJ2mB,GAAuC,KAAlBnhB,GACvBrD,GAAAA,EAAIwT,QACDiU,YAAYrkB,EAAY,CACvB7F,OAAQ8F,EACRqkB,cAAe5M,IAEhB3a,MAAK,SAACC,GACL,IAAMunB,EAAyBvnB,EAAIwnB,KAAKC,SAAW,GACnD,GAAI/M,EAAkB,CACpByK,GAAmBoC,GACnB5B,GAAY4B,GAEZ,IAAMG,EAAeH,EAAOnmB,QAC1B,SAACC,EAAasmB,GACZ,OAAa,OAATA,QAAS,IAATA,GAAAA,EAAWzK,KACN7b,EAAMsmB,EAAUzK,KAElB7b,CACT,GACA,GAGFilB,GAAqBoB,EACvB,KAAO,CACL,IAAME,EAAUL,EAAO,GAEvBxC,EAAc6C,GACdjC,GAAY,IAEPiC,EAAQR,kBACXJ,IAAmB,EAEvB,CAEAnqB,GAASgrB,EAAAA,EAAAA,KAAqB,GAChC,IACC3nB,OAAM,SAACC,GACNmE,QAAQkP,MAAM,+BAAgCrT,EAAIqT,OAClD3W,GAASgrB,EAAAA,EAAAA,KAAqB,GAChC,GAEN,GAAG,CACDzD,EACAphB,EACAC,EACApG,EACA6d,EACAxG,KAGFzW,EAAAA,EAAAA,YAAU,WACJspB,IAAkC,KAAlB9jB,GAClBrD,GAAAA,EAAIwT,QACD0U,kBAAkB9kB,EAAY,CAC7B7F,OAAQ8F,IAETlD,MAAK,SAACC,GACL,IAAI+nB,EAAWlS,IAAI7V,EAAIwnB,KAAM,iBAAkB,CAAC,GAEhDZ,GAAYmB,GACZf,IAAmB,EACrB,IACC9mB,OAAM,SAACC,GACNmE,QAAQkP,MAAM,kCAAmCrT,EAAIkU,eACrD2S,IAAmB,EACrB,GAEN,GAAG,CAAChkB,EAAYC,EAAe8jB,KAE/B,IAAIiB,GAAoB,GAEpBtS,GAAcA,EAAW+F,OAC3BuM,GAAU9mB,OAAOC,KAAKuU,EAAW+F,OAGnC,IAyDMwM,IACJvqB,EAAAA,EAAAA,KAAA,OAAKoI,MAAO,CAAEoiB,UAAW,SAAU5gB,UAAW,IAAKvJ,UACjDL,EAAAA,EAAAA,KAACyqB,EAAAA,IAAM,MAIX,IAAKzS,EACH,OAAI0O,EACK6D,GAGF,KAGT,IAAM3hB,GACJ2gB,GAAgBlmB,OAAS,EACrBkmB,GAAgBA,GAAgBlmB,OAAS,GACzC2U,EAAWlX,KAEX4pB,GAAkB,CACtBplB,EACA4Y,GACA,CAAC5Y,EAAY0S,EAAWlX,MAAMiH,KAAK,MAE/B4iB,IAAkBpjB,EAAAA,EAAAA,GAAcjC,EAAY,CAChDmB,EAAAA,GAAWmkB,yBACXnkB,EAAAA,GAAWE,iBAEPkkB,IAAatjB,EAAAA,EAAAA,GAAcmjB,GAAiB,CAChDjkB,EAAAA,GAAWkZ,sBACXlZ,EAAAA,GAAWE,iBAGPmkB,IAAqBvjB,EAAAA,EAAAA,GACzBmjB,GACA,CACEjkB,EAAAA,GAAWskB,wBACXtkB,EAAAA,GAAWukB,wBACXvkB,EAAAA,GAAWoY,eACXpY,EAAAA,GAAWE,iBAEb,GAEIskB,IAAa1jB,EAAAA,EAAAA,GAAcmjB,GAAiB,CAChDjkB,EAAAA,GAAWykB,qBAEPC,IAAsB5jB,EAAAA,EAAAA,GAAcmjB,GAAiB,CACzDjkB,EAAAA,GAAW2kB,yBACX3kB,EAAAA,GAAW4kB,yBACX5kB,EAAAA,GAAW6kB,sBACX7kB,EAAAA,GAAWoY,eACXpY,EAAAA,GAAWE,iBAEP4kB,IAAehkB,EAAAA,EAAAA,GAAcmjB,GAAiB,CAClDjkB,EAAAA,GAAW+kB,cACX/kB,EAAAA,GAAWoY,iBAEP4M,IAAYlkB,EAAAA,EAAAA,GAChB,CAACjC,EAAY4Y,GAAa,CAAC5Y,EAAY0S,EAAWlX,MAAMiH,KAAK,MAC7D,CAACtB,EAAAA,GAAWilB,mBAGVC,IAA8BC,EAAAA,EAAAA,IAAkB/S,GAAUqF,IAExD2N,GAAqB,CACzB,CACEC,OAAQ,WACNrI,GAAetkB,EAAUmG,EAAYC,EAAeyS,EACtD,EACApX,MAAO,WACPU,WAAY0W,EAAW0R,mBAAqB6B,GAC5ChiB,MAAMvJ,EAAAA,EAAAA,KAAC+rB,EAAAA,IAAY,IACnB5qB,QAASoqB,GACL,wBACAthB,EAAAA,EAAAA,IACE,CAACxD,EAAAA,GAAW+kB,cAAe/kB,EAAAA,GAAWoY,gBACtC,yBAGR,CACEiN,OAAQ,WA7HVlF,GAAsB,EA+HpB,EACAhmB,MAAO,QACPU,WAAY0W,EAAW0R,mBAAqB6B,GAC5ChiB,MAAMvJ,EAAAA,EAAAA,KAACgsB,EAAAA,IAAS,IAChB7qB,QAASoqB,GACL,mBACAthB,EAAAA,EAAAA,IACE,CAACxD,EAAAA,GAAW+kB,cAAe/kB,EAAAA,GAAWoY,gBACtC,sBAGR,CACEiN,OAAQ,WACNtD,IAAe,EACjB,EACA5nB,MAAO,UACPU,WACI0W,EAAW0R,kBACG,SAAfiC,KAA0BJ,GAC7BhiB,MAAMvJ,EAAAA,EAAAA,KAACisB,EAAAA,IAAW,IAClB9qB,QAASoqB,GACL,qBACAthB,EAAAA,EAAAA,IACE,CAACxD,EAAAA,GAAW+kB,cAAe/kB,EAAAA,GAAWoY,gBACtC,wBAGR,CACEiN,OAAQ,WACN5E,GAAiB,EACnB,EACAtmB,MAAO,aACPU,UACGklB,IACAxJ,KACChF,EAAW0R,mBACZiB,IACmB,KAApBnU,EACFjN,MAAMvJ,EAAAA,EAAAA,KAACksB,EAAAA,IAAa,IACpB/qB,QAASwpB,GACLnE,EACE,wCACA,4EACFvc,EAAAA,EAAAA,IACE,CAACxD,EAAAA,GAAWmkB,yBAA0BnkB,EAAAA,GAAWE,gBACjD,+CAGR,CACEmlB,OA5LuB,WACzBhF,GAAsB,EACxB,EA2LIlmB,MAAO,YACPU,UACG0b,KACChF,EAAW0R,mBACZoB,IACmB,KAApBtU,IACCgQ,EACHjd,MAAMvJ,EAAAA,EAAAA,KAACmsB,EAAAA,IAAa,IACpBhrB,QAAS2pB,GACLtE,EACE,uCACA,iFACFvc,EAAAA,EAAAA,IACE,CACExD,EAAAA,GAAWskB,wBACXtkB,EAAAA,GAAWukB,wBACXvkB,EAAAA,GAAWoY,eACXpY,EAAAA,GAAWE,gBAEb,2CAGR,CACEmlB,OAAQ,WACN9E,GAAgB,EAClB,EACApmB,MAAO,OACPU,WACI0W,EAAW0R,kBAAwC,KAApBlT,IAA2BqU,GAC9DthB,MAAMvJ,EAAAA,EAAAA,KAACosB,EAAAA,IAAQ,IACfjrB,QAAS0pB,GACL,6BACA5gB,EAAAA,EAAAA,IACE,CACExD,EAAAA,GAAWkZ,sBACXlZ,EAAAA,GAAWmY,sBACXnY,EAAAA,GAAWoY,eACXpY,EAAAA,GAAWE,gBAEb,4BAGR,CACEmlB,OAAQ,WACN1E,GAAoB,EACtB,EACAxmB,MAAO,UACPU,UACG0b,KACChF,EAAW0R,kBACO,KAApBlT,IACCyU,GACH1hB,MAAMvJ,EAAAA,EAAAA,KAACojB,EAAAA,IAAe,IACtBjiB,QAAS8pB,GACL,qBACAhhB,EAAAA,EAAAA,IACE,CAACxD,EAAAA,GAAWykB,oBACZ,sBAGR,CACEY,OAAQ,WACN3sB,GACEuJ,EAAAA,EAAAA,IAAuB,CACrBC,QAASzC,EACT0C,WAAYA,KAGlB,EACAhI,MAAOsF,EAAe,uBAAyB,0BAC/CqD,MAAMvJ,EAAAA,EAAAA,KAACqsB,EAAAA,IAAY,IACnB/qB,UACG0b,KACChF,EAAWxC,YAAwC,SAA1BwC,EAAWxC,cACrC2V,GACHhqB,QAASgqB,GACLnT,EAAWxC,YAAwC,SAA1BwC,EAAWxC,WAClC,iCACA,IACFvL,EAAAA,EAAAA,IACE,CACExD,EAAAA,GAAW2kB,yBACX3kB,EAAAA,GAAW4kB,yBACX5kB,EAAAA,GAAW6kB,sBACX7kB,EAAAA,GAAWoY,eACXpY,EAAAA,GAAWE,gBAEb,yCAgBV,OACErG,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,CACNsmB,GAAsB3O,IACrBhY,EAAAA,EAAAA,KAACssB,EAAAA,QAAS,CACR7gB,KAAMkb,EACN/T,qBA1RgB,WACtBiV,GAAiB,MACjBjB,GAAsB,EACxB,EAwRQthB,WAAYA,EACZinB,WAAY3E,IAAiB5P,IAGhC6O,GAAsB7O,IACrBhY,EAAAA,EAAAA,KAACwsB,GAAY,CACX/gB,KAAMob,EACNjU,qBA7SoB,SAAC6Z,GAC3B3F,GAAsB,GAClB2F,GACFttB,GAASgrB,EAAAA,EAAAA,KAAqB,GAElC,EAySQvhB,WAAYsV,GACZrL,WAAYmF,EACZ1S,WAAYA,IAGf8Q,KACCpW,EAAAA,EAAAA,KAAC0sB,GAAY,CACXtW,WAAYA,GACZC,eAAgB/Q,EAChBgQ,eAAgB/P,EAChB4Q,2BApSiB,SAACwW,GACxBvE,IAAc,GAEVuE,GAAsC,KAApBnW,EACpBiQ,GAAa,IAEbtnB,GAASytB,EAAAA,EAAAA,KAAmB,IAC5BztB,GAAS0tB,EAAAA,EAAAA,IAAmB,KAC5B1tB,GAASgrB,EAAAA,EAAAA,KAAqB,IAElC,EA2RQ7T,eAAgB0G,EAAmB1G,OAAiBhT,EACpDkT,gBAAiBA,IAGpByQ,GAAiBjP,IAChBhY,EAAAA,EAAAA,KAAC8sB,GAAiB,CAChBrhB,KAAMwb,EACNrU,qBAlRoB,SAACma,GAC3B7F,GAAiB,GACb6F,GACF5tB,GAASgrB,EAAAA,EAAAA,KAAqB,GAElC,EA8QQvhB,WAAYoP,EAAWlX,MAAQ,GAC/BwE,WAAYA,EACZ0S,WAAYA,IAGfuQ,IAAevQ,IACdhY,EAAAA,EAAAA,KAACgtB,GAAAA,QAAgB,CACfvhB,KAAM8c,GACNjjB,WAAYA,EACZoe,OAAQ,CACN5iB,KAAMkX,EAAWlX,MAAQ,GACzB0U,WAAYwC,EAAWxC,YAAc,OACrCgK,KAAMxH,EAAWwH,MAAQ,EACzByN,aAAc,GACdhH,cAAejO,EAAWiO,eAAiB,IAE7CiH,eAAgB,WACd1E,IAAe,EACjB,IAGHzB,GAAgB/O,IACfhY,EAAAA,EAAAA,KAACmtB,GAAS,CACRpuB,UAAWgoB,EACXzhB,WAAYA,EACZ0S,WAAYA,EACZ+E,iBA3TiB,SAACqQ,GACxBpG,GAAgB,GACZoG,GACFjuB,GAASgrB,EAAAA,EAAAA,KAAqB,GAElC,IAyTKhD,GAAoBnP,IACnBhY,EAAAA,EAAAA,KAACqtB,GAAa,CACZnN,YAAaiH,EACb/G,WAAY9a,EACZ6a,YAAanI,EAAWlX,MAAQ,GAChCmf,4BA5TkB,SAACmN,GACzBhG,GAAoB,GAChBgG,GACFjuB,GAASgrB,EAAAA,EAAAA,KAAqB,GAElC,IA0TKpB,IAAgB/Q,IACfhY,EAAAA,EAAAA,KAACstB,GAAkB,CACjB7hB,KAAMsd,GACN1D,WAzVc,WACpBnB,IAAgB,EAClB,EAwVQhG,YAAaA,GACb5Y,WAAYA,EACZC,cAAeA,EACfyS,WAAYA,IAIf0O,GACC1mB,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,SAAEkqB,MAEXjqB,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPL,EAAAA,EAAAA,KAACutB,EAAAA,GAAW,CACVrtB,OACEI,EAAAA,EAAAA,MAAA,OAAK6H,UAAWvC,EAAQugB,mBAAmB9lB,SAAA,CACxC6a,GAAoBtS,IAAc,IAAI,IACvC5I,EAAAA,EAAAA,KAAA,QAAMmI,UAAWvC,EAAQwgB,oBAAoB/lB,SAC1CuI,QAIP4kB,MAAO3B,MAET7rB,EAAAA,EAAAA,KAACoL,EAAAA,EAAc,CACbjK,QACEsqB,GACI,IACAxhB,EAAAA,EAAAA,IACE,CAACxD,EAAAA,GAAWilB,kBACZ,sBAEPrrB,UAEDL,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CACHC,MAAI,EACJC,GAAI,GACJC,GAAI,CAAE6Q,eAAgB,SAAUN,QAAS,QAAS5R,UAElDL,EAAAA,EAAAA,KAAC2e,EAAAA,EAAe,CACdG,SAAU,CACRxZ,EACA4Y,GACA,CAAC5Y,EAAY0S,EAAWlX,MAAMiH,KAAK,MAErC5E,OAAQ,CAACsD,EAAAA,GAAWilB,kBACpBvM,WAAY,CAAE7d,UAAU,GAAOjB,UAE/BL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,uBACJ0I,MAAMvJ,EAAAA,EAAAA,KAACytB,EAAAA,IAAU,IACjBC,aAAc,QACdC,WAAS,EACT5rB,QAAS,YACTC,QAAS,WACPomB,IAAc,EAChB,EACA9mB,SACsB,KAApBkV,GAA0BwB,EAAW0R,iBAEvChoB,GAAI,CACF+H,MAAO,oBACPpE,OAAQ,SAEVzE,MAAK,SAAA8D,OAA+B,KAApB8R,EAAyB,WAAa,aAK9DxW,EAAAA,EAAAA,KAAC4tB,EAAAA,IAAY,CAACrkB,MAAMvJ,EAAAA,EAAAA,KAAC6tB,EAAAA,IAAc,IAAKjtB,MAAO,iBAC/CN,EAAAA,EAAAA,MAAC0R,EAAAA,EAAG,CAAC7J,UAAWvC,EAAQkoB,gBAAgBztB,SAAA,EACtCL,EAAAA,EAAAA,KAAA,UAAAK,SAAQ,WACRL,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,OAAKoI,MAAO,CAAE2lB,aAAc,cAAe1tB,SAAEuI,QAE1B,KAApB4N,IACClW,EAAAA,EAAAA,MAAC0R,EAAAA,EAAG,CAAC7J,UAAWvC,EAAQkoB,gBAAgBztB,SAAA,EACtCL,EAAAA,EAAAA,KAAA,UAAAK,SAAQ,iBACRL,EAAAA,EAAAA,KAAA,SACCwW,MAGLlW,EAAAA,EAAAA,MAAC0R,EAAAA,EAAG,CAAC7J,UAAWvC,EAAQkoB,gBAAgBztB,SAAA,EACtCL,EAAAA,EAAAA,KAAA,UAAAK,SAAQ,WACRL,EAAAA,EAAAA,KAAA,UACCguB,EAAAA,EAAAA,IAAU,GAADtpB,OAAIsT,EAAWwH,MAAQ,SAElCxH,EAAWxC,YACgB,SAA1BwC,EAAWxC,YACS,KAApBgB,IACElW,EAAAA,EAAAA,MAAC0R,EAAAA,EAAG,CAAC7J,UAAWvC,EAAQkoB,gBAAgBztB,SAAA,EACtCL,EAAAA,EAAAA,KAAA,UAAAK,SAAQ,eACRL,EAAAA,EAAAA,KAAA,SACCgoB,GAAS3kB,OAAO,WAA6B,IAApB2kB,GAAS3kB,OAAe,IAAM,GAAG,IAAE,KAC5D4qB,EAAAA,EAAAA,IAAatF,OAGC,KAApBnS,IACClW,EAAAA,EAAAA,MAAC0R,EAAAA,EAAG,CAAC7J,UAAWvC,EAAQkoB,gBAAgBztB,SAAA,EACtCL,EAAAA,EAAAA,KAAA,UAAAK,SAAQ,oBACRL,EAAAA,EAAAA,KAAA,SAvLoB,SAACkuB,GAC/B,IAAMC,EAAc,IAAIpgB,KAClBqgB,EAAe,IAAIrgB,KAAKmgB,GAExBG,EAAUF,EAAYtK,UAAYuK,EAAavK,UAE/CyK,GAAaC,EAAAA,EAAAA,IAAYF,EAAS,MAExC,MAA6B,KAAtBC,EAAWrsB,OAAa,GAAAyC,OAAM4pB,EAAU,QAAS,UAC1D,CA+KaE,CAAwBxW,EAAWiO,eAAiB,QAGzD3lB,EAAAA,EAAAA,MAAC0R,EAAAA,EAAG,CAAC7J,UAAWvC,EAAQkoB,gBAAgBztB,SAAA,EACtCL,EAAAA,EAAAA,KAAA,UAAAK,SAAQ,WACRL,EAAAA,EAAAA,KAAA,SACCgY,EAAWyW,MAAQ,UAEtBnuB,EAAAA,EAAAA,MAAC0R,EAAAA,EAAG,CAAC7J,UAAWvC,EAAQkoB,gBAAgBztB,SAAA,EACtCL,EAAAA,EAAAA,KAAA,UAAAK,SAAQ,WACRL,EAAAA,EAAAA,KAAA,SACoB,IAAnBsqB,GAAQjnB,OACL,MACAinB,GAAQ5iB,KAAI,SAACsX,EAAQpX,GACnB,OACEtH,EAAAA,EAAAA,MAAA,QAAAD,SAAA,CACG2e,EAAO,IAAE7G,IAAIH,EAAW,QAADtT,OAAUsa,GAAU,IAC3CpX,EAAQ0iB,GAAQjnB,OAAS,EAAI,KAAO,KAAE,UAAAqB,OAFpBkD,EAAMiB,YAK/B,QAEN7I,EAAAA,EAAAA,KAACgS,EAAAA,EAAG,CAAC7J,UAAWvC,EAAQkoB,gBAAgBztB,UACtCL,EAAAA,EAAAA,KAAC2e,EAAAA,EAAe,CACdxb,OAAQ,CACNsD,EAAAA,GAAWioB,yBACXjoB,EAAAA,GAAWoY,gBAEbC,SAAUxZ,EAAWjF,UAErBC,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPL,EAAAA,EAAAA,KAAA,UAAAK,SAAQ,iBACRL,EAAAA,EAAAA,KAAA,SACCgY,EAAWkO,kBAAoB,KAAO,cAI7ClmB,EAAAA,EAAAA,KAACgS,EAAAA,EAAG,CAAC7J,UAAWvC,EAAQkoB,gBAAgBztB,UACtCL,EAAAA,EAAAA,KAAC2e,EAAAA,EAAe,CACdxb,OAAQ,CACNsD,EAAAA,GAAWskB,wBACXtkB,EAAAA,GAAWoY,gBAEbC,SAAUxZ,EAAWjF,UAErBC,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPL,EAAAA,EAAAA,KAAA,UAAAK,SAAQ,uBACRL,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,QAAMmI,UAAWvC,EAAQygB,gBAAgBhmB,UACtC2X,EAAWxC,YAAcwC,EAAWxC,YACnCxV,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,SACN2X,EAAWlE,eACRkE,EAAWlE,eAAe0H,cAC1B,oBAadxD,EAAW0R,mBACXppB,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPL,EAAAA,EAAAA,KAAC4tB,EAAAA,IAAY,CAAChtB,MAAO,WAAY2I,MAAMvJ,EAAAA,EAAAA,KAAC2uB,EAAAA,IAAY,OACpD3uB,EAAAA,EAAAA,KAACgS,EAAAA,EAAG,CAAC7J,UAAWvC,EAAQkoB,gBAAgBztB,SACrC2X,GAAca,IACb7Y,EAAAA,EAAAA,KAAC4uB,GAAc,CAAC/V,SAAUA,GAAUE,QAAM,IACxC,eAQpB,I,YC5sBA,IAAe3O,EAAAA,EAAAA,IAnEA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,GAAC,CAAC,EACT2pB,EAAAA,IACF,GAgEL,EA9D2B,SAAH/vB,GAOI,IAN1B8G,EAAO9G,EAAP8G,QACAkpB,EAAgBhwB,EAAhBgwB,iBACAxpB,EAAUxG,EAAVwG,WACAypB,EAAUjwB,EAAViwB,WACAC,EAAWlwB,EAAXkwB,YACAjS,EAAgBje,EAAhBie,iBAEM5d,GAAWC,EAAAA,EAAAA,MACjBC,GAA4CC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA7D4vB,EAAc1vB,EAAA,GAAE2vB,EAAiB3vB,EAAA,GA0BxC,OACES,EAAAA,EAAAA,KAACqX,GAAAA,EAAa,CACZnX,MAAK,uBACLoX,YAAa,UACbC,OAAQyX,EACRvX,UAAWwX,EACX9uB,WAAWH,EAAAA,EAAAA,KAACmvB,EAAAA,IAAW,IACvBzX,UA/BmB,WACrBwX,GAAkB,GAElBhtB,GAAAA,EAAIwT,QACD0Z,iBAAiB9pB,EAAY,CAC5B7F,QAAQwI,EAAAA,EAAAA,IAAgB8mB,GACxBvZ,WAAYsZ,EAAiBtZ,YAAc,KAE5CnT,MAAK,WACJ6sB,GAAkB,GAClBnS,GAAiB,GACjB5d,GACEkwB,EAAAA,EAAAA,IAAuB,CACrB5vB,OAAQsvB,EACRlc,WAAYic,IAGlB,IACCtsB,OAAM,SAACC,GACNtD,GAASuD,EAAAA,EAAAA,KAAqBC,EAAAA,GAAAA,GAAeF,EAAIqT,SACjDoZ,GAAkB,EACpB,GACJ,EAUII,mBAAoB,CAClBvtB,QAAS,YACTT,SAAU2tB,GAEZjwB,QAAS,WACP+d,GAAiB,EACnB,EACAjF,qBACExX,EAAAA,EAAAA,MAAC0R,EAAAA,IAAG,CAACnR,GAAG,2BAA0BR,SAAA,CAAC,qCACAL,EAAAA,EAAAA,KAAA,UACjCA,EAAAA,EAAAA,KAAA,KAAAK,SAAI0uB,IAAe,KAAC/uB,EAAAA,EAAAA,KAAA,SAAM,qBAC1BA,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,KAAGmI,UAAWvC,EAAQ2pB,SAASlvB,SAAEyuB,EAAiBtZ,aAAe,QAK3E,I,YC9CA,GArC4B,SAAH1W,GAA6C,IAChE0wB,EAAU,OACV1M,EAAU,GAEd,OAJiChkB,EAAJgD,MAK3B,IAAK,OACH0tB,EAAU,UACV1M,EAAU,eACV,MACF,IAAK,UACH0M,EAAU,UACV1M,EAAU,UACV,MACF,QACE0M,EAAU,UACV1M,EAAU,kBAGd,OACE9iB,EAAAA,EAAAA,KAAA,QACEoI,MAAO,CACLmF,gBAAiBiiB,EACjBliB,QAAS,QACT2E,QAAS,eACTpI,MAAO,OACP4S,WAAY,OACZD,SAAU,GACVlQ,aAAc,EACdhE,WAAY,SACZjD,OAAQ,UACRhF,SAEDyiB,GAGP,E,YCLM2M,GAAoBC,GAAAA,GAAOC,KAAI,SAAA7wB,GAAgB,IAAbkG,EAAKlG,EAALkG,MACtC,MAAO,CACL,WAAY,CACV4qB,QAAS,MACT3d,QAAS,QACTrF,SAAU,WACVnD,MAAO,MACPC,OAAQ,mBACR6D,gBAAiB4K,IAAInT,EAAO,cAAe,WAC3C6qB,KAAM,QAER,yBAA0B,CACxBjhB,aAAa,GAADlK,OAAKyT,IAAInT,EAAO,cAAe,WAAU,cACrDsI,QAAS,SACTjI,OAAQ,oBACRgD,OAAQ,UACR,YAAa,CACXwB,MAAO,YAGX,uBAAwB,CACtBxE,OAAQ,oBACR,sBAAuB,CACrBkI,gBAAiB4K,IAAInT,EAAO,gBAAiB,WAC7C,UAAW,CACT8qB,kBAAmB3X,IAAInT,EAAO,gBAAiB,cAIrD,sBAAuB,CACrBwX,SAAU,GACVC,WAAY,OACZxK,QAAS,OACTK,WAAY,SACZ,iBAAkB,CAChB7I,MAAO,GACPC,OAAQ,GACRqD,SAAU,GACV6M,UAAW,GACX7P,YAAa,KAGjB,qBAAsB,CACpBygB,UAAW,QACX,WAAY,CACV1d,WAAY,WAGhB,eAAgB,CACd0P,SAAU,OACVnX,OAAQ,QACRiD,WAAY,SACZyR,aAAc,WACdgW,SAAU,MACVjW,SAAU,UAEZ,iBAAkB,CAChB/P,YAAa,OACbyS,SAAU,GACV3S,MAAO,WAET,4BAA6B,CAC3B,qBAAsB,CACpB,WAAY,CACViD,WAAY,SAIlB,4BAA6B,CAC3B,WAAY,CACVmF,QAAS,QAEX,yBAA0B,CACxB3E,QAAS,UACTjI,OAAQ,GAEV,uBAAwB,CACtBA,OAAQ,EACR,sBAAuB,CACrBkI,gBAAiB,cACjB,UAAW,CACTuiB,kBAAmB3X,IAAInT,EAAO,gBAAiB,cAIrD,sBAAuB,CACrBwX,SAAU,GACV,iBAAkB,CAChBvK,QAAS,SAGb,iBAAkB,CAChB8H,aAAc,WACdgW,SAAU,MACVjW,SAAU,SACVxR,WAAY,UAEd,qBAAsB,CACpB2J,QAAS,OACT+d,cAAe,UAEjB,iBAAkB,CAChB/d,QAAS,SAIjB,IAgLA,GA9KwB,SAAH2O,GAeI,IAdvBjH,EAAQiH,EAARjH,SACAsW,EAAWrP,EAAXqP,YACAC,EAAUtP,EAAVsP,WACAC,EAASvP,EAATuP,UACAC,EAASxP,EAATwP,UACAC,EAAOzP,EAAPyP,QACAC,EAAO1P,EAAP0P,QACAC,EAAU3P,EAAV2P,WACAC,EAAS5P,EAAT4P,UACAC,EAAS7P,EAAT6P,UACAC,EAAW9P,EAAX8P,YACA9oB,EAAKgZ,EAALhZ,MACA+oB,EAAG/P,EAAH+P,IACAvoB,EAAKwY,EAALxY,MAEMwoB,EAAiBX,EAAYvG,iBAE7BmH,EAAqB,CACzB,CACEtnB,MAAMvJ,EAAAA,EAAAA,KAACisB,EAAAA,IAAW,IAClBH,OAAQ2E,EACRtvB,QAAS,WAEX,CACEoI,MAAMvJ,EAAAA,EAAAA,KAAC+rB,EAAAA,IAAY,IACnBD,OAAQyE,EACRpvB,QAAS,yBAEX,CACEoI,MAAMvJ,EAAAA,EAAAA,KAACgsB,EAAAA,IAAS,IAChBF,OAAQwE,EACRnvB,QAAS,sBAEX,CACEoI,MAAMvJ,EAAAA,EAAAA,KAACmvB,EAAAA,IAAW,IAClBrD,OAAQ0E,EACRrvB,QAAS,yBAIT2vB,EAA8C,KAE9Cb,EAAYvG,iBACdoH,EAAO,UACEb,EAAYjK,UACrB8K,EAAO,UAC6B,SAA3Bb,EAAYza,aACrBsb,EAAO,QAGT,IAAI5C,EAAe6C,EAAAA,GAASC,MAM5B,OAJIf,EAAYhK,gBACdiI,EAAe6C,EAAAA,GAASE,QAAQhB,EAAYhK,iBAI5CjmB,EAAAA,EAAAA,KAACyvB,GAAiB,CAAApvB,UAChBL,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CACH+P,WAAS,EACTnJ,UAAW,UACXnG,QAAS,WACP0uB,EAAYT,EACd,EAEA7nB,MAAOA,EAAM/H,UAEbL,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CACHC,MAAI,EACJC,GAAI,GACJ0G,UAAc,oBAAmBzD,OAAA,IAAIwrB,EAAa,WAAa,IAAK7vB,UAEpEC,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CACHC,MAAI,EACJC,IAAE,EACF0G,UAAS,uBAAAzD,OACPurB,EAAYvG,iBAAmB,UAAY,IAC1CrpB,SAAA,EAEHL,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAGpB,UAChBC,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CAAC+P,WAAS,EAAAjR,SAAA,EACbC,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CAACC,MAAI,EAACC,IAAE,EAACyvB,GAAI,EAAG/oB,UAAW,mBAAmB9H,SAAA,CAChD8vB,IACCnwB,EAAAA,EAAAA,KAACmxB,GAAAA,EAAe,CACdrf,QAASse,EACTvvB,GAAE,UAAA6D,OAAYurB,EAAYza,YAC1B5U,MAAO,GACPE,KAAI,UAAA4D,OAAYurB,EAAYza,YAC5BxU,SAAU,SAACC,GACTA,EAAEmwB,kBACFnwB,EAAE8T,iBACFsb,EAAQJ,EAAYza,YAAc,GACpC,EACA7U,MAAOsvB,EAAYza,YAAc,GACjClU,SAAU2uB,EAAYvG,iBACtB2H,uBAAwB,CACtBC,YAAa,EACb5nB,OAAQ,GACRD,MAAO,IAET8nB,aAAW,IAGdrW,GAAoBvB,GAAU,GAAM,KAAG/R,EAAMiB,YAC9C7I,EAAAA,EAAAA,KAAA,QAAMmI,UAAW,cAAc9H,SAC5BywB,IAAQ9wB,EAAAA,EAAAA,KAACwxB,GAAmB,CAAC1vB,KAAMgvB,UAGxC9wB,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIyvB,GAAI,EAAG/oB,UAAW,kBAAkB9H,SACpDwwB,EAAmBnpB,KAAI,SAAC+pB,EAAQ7pB,GAC/B,OACE5H,EAAAA,EAAAA,KAACgK,EAAAA,IAAO,CACN7I,QAASswB,EAAOtwB,QAAQd,UAKxBL,EAAAA,EAAAA,KAAC0xB,EAAAA,GAAU,CACTlS,KAAM,QACN3e,GAAE,kBAAA6D,OACA+sB,EAAOtwB,QAAO,KAAAuD,OACZkD,EAAMiB,YACVV,UAAc,UAASzD,OAAA,IACrBksB,EAAiB,iBAAmB,IAEtCtvB,SAAUsvB,EACV5uB,QAAS,SAACf,GACRA,EAAEmwB,kBACGR,EAGH3vB,EAAE8T,iBAFF0c,EAAO3F,OAAOmE,EAIlB,EACAvuB,GAAI,CACF6L,gBAAiB,UACjBjB,aAAc,OACd7C,MAAO,OACPC,OAAQ,OACR4D,QAAS,MACT,cAAe,CACb7D,MAAO,OACPC,OAAQ,SAEVrJ,SAEDoxB,EAAOloB,QACG,kBAAA7E,OAjCX+sB,EAAOtwB,QAAO,KAAAuD,OACZkD,EAAMiB,YAmChB,YAIN7I,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAW,YAAY9H,SACZ,SAA3B4vB,EAAYza,WAAwBya,EAAYza,WAAa,OAEhElV,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAW,kBAAkB9H,SAAA,EAC9CC,EAAAA,EAAAA,MAAA,QAAM6H,UAAW,cAAc9H,SAAA,EAC7BL,EAAAA,EAAAA,KAAA,UAAAK,SAAQ,mBAAwB,IAC/B6tB,EAAayD,SAAS,wCAEzBrxB,EAAAA,EAAAA,MAAA,QAAM6H,UAAW,cAAc9H,SAAA,EAC7BL,EAAAA,EAAAA,KAAA,UAAAK,SAAQ,UAAc,KAAE2tB,EAAAA,EAAAA,IAAU,GAADtpB,OAAIurB,EAAYzQ,MAAQ,kBAnG5DmR,IA2Gb,ECxLA,GAhHiC,SAAH7xB,GAKC,IAJ7BqX,EAA0BrX,EAA1BqX,2BACAC,EAAUtX,EAAVsX,WACAC,EAAcvX,EAAduX,eACAf,EAAcxW,EAAdwW,eAEMnW,GAAWC,EAAAA,EAAAA,MACjBC,GAA0CC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA3DwX,EAAatX,EAAA,GAAEqyB,EAAgBryB,EAAA,GACtCI,GAAsCL,EAAAA,EAAAA,UAAiB,IAAGM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAnDkyB,EAAWjyB,EAAA,GAAEkyB,EAAclyB,EAAA,GAClCyP,GAAgD/P,EAAAA,EAAAA,WAAkB,GAAMgQ,GAAA9P,EAAAA,EAAAA,GAAA6P,EAAA,GAAjE4H,EAAgB3H,EAAA,GAAE4H,EAAmB5H,EAAA,GAEtCwD,GAAkBhN,EAAAA,EAAAA,KACtB,SAACC,GAAe,OAAKA,EAAMC,cAAc8M,eAAe,IAGpDqE,GACJ5P,EAAAA,EAAAA,GACE,CAAC8O,GACD,CAAC5P,EAAAA,GAAW2Q,kCACiB,gBAAX,OAAftE,QAAe,IAAfA,OAAe,EAAfA,EAAiBiB,MA2BxB,IAzBAhU,EAAAA,EAAAA,YAAU,WACJ8W,GACF3U,GAAAA,EAAIwT,QACDqc,aAAa1b,EAAgB,CAC5BnP,KAAMoO,EACN0c,sBAAsB,EACtBC,OAAQhb,IAET5U,MAAK,WACJ8T,GAA2B,EAC7B,IACC3T,OAAM,SAACC,GACNtD,GAASuD,EAAAA,EAAAA,KAAqBC,EAAAA,GAAAA,GAAeF,EAAIqT,SACjD8b,GAAiB,EACnB,GAEN,GAAG,CACD/a,EACAV,EACAhX,EACAmW,EACAe,EACAY,KAGG3B,EACH,OAAO,KAMT,OACEtV,EAAAA,EAAAA,KAACqX,GAAAA,EAAa,CACZnX,MAAK,8BACLoX,YAAa,SACbC,OAAQnB,EACRjW,WAAWH,EAAAA,EAAAA,KAACwX,EAAAA,IAAiB,IAC7BC,UAAWZ,EACXa,UAXoB,WACtBka,GAAiB,EACnB,EAUI5yB,QAAS,kBAAMmX,GAA2B,EAAM,EAChDmZ,mBAAoB,CAClBhuB,SAA0B,iBAAhBuwB,GAAkChb,GAE9CiB,qBACExX,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,CAAC,oEAC0D,KAClEL,EAAAA,EAAAA,KAAA,KAAAK,UAAIuX,EAAAA,EAAAA,IAAgBtC,KAAoB,MAAEtV,EAAAA,EAAAA,KAAA,SACzCmX,IACCnX,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UACPL,EAAAA,EAAAA,KAAA,OACEoI,MAAO,CACLwB,UAAW,IACXvJ,UAEFL,EAAAA,EAAAA,KAAC4R,EAAAA,IAAM,CACLhR,MAAO,yBACPiR,gBAAiB,CAAC,MAAO,MACzBC,QAASmF,EACTtW,MAAO,oBACPE,GAAG,oBACHC,KAAK,oBACLE,SAAU,SAACC,GACTiW,GAAqBD,EACvB,EACAc,YAAY,UAKpB/X,EAAAA,EAAAA,KAAA,SAAM,4BACkBA,EAAAA,EAAAA,KAAA,KAAAK,SAAG,iBAAgB,gBAC3CL,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAGpB,UAChBL,EAAAA,EAAAA,KAACU,EAAAA,IAAQ,CACPG,GAAG,eACHC,KAAK,gBACLE,SAAU,SAACqK,GACTymB,EAAezmB,EAAMnK,OAAOP,MAC9B,EACAC,MAAM,GACND,MAAOkxB,UAOrB,ECJA,GA3GqB,SAAH/yB,GAMmB,IALnCqX,EAA0BrX,EAA1BqX,2BACAC,EAAUtX,EAAVsX,WACAC,EAAcvX,EAAduX,eACA6b,EAAgBpzB,EAAhBozB,iBACA5c,EAAcxW,EAAdwW,eAEMnW,GAAWC,EAAAA,EAAAA,MACjBC,GAA0CC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA3DwX,EAAatX,EAAA,GAAEqyB,EAAgBryB,EAAA,GACtCI,GAAgDL,EAAAA,EAAAA,WAAkB,GAAMM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAjEsX,EAAgBrX,EAAA,GAAEsX,EAAmBtX,EAAA,GAEtCkT,GAAkBhN,EAAAA,EAAAA,KACtB,SAACC,GAAe,OAAKA,EAAMC,cAAc8M,eAAe,IAGpDqE,GACJ5P,EAAAA,EAAAA,GACE,CAAC8O,GACD,CAAC5P,EAAAA,GAAW2Q,kCACiB,gBAAX,OAAftE,QAAe,IAAfA,OAAe,EAAfA,EAAiBiB,MA2CxB,OApCAhU,EAAAA,EAAAA,YAAU,WACR,GAAI8W,EAAe,CACjB,IAAMsb,EAAyBD,EAAiBxqB,KAAI,SAAC0qB,GACnD,MAAO,CACLlrB,KAAMoO,EACN8c,UAAWA,EACXza,WAAW,EAEf,IAEIwa,EAAuB9uB,OAAS,GAClCnB,GAAAA,EAAIwT,QACD2c,sBAAsBhc,EAAgB8b,EAAwB,CAC7DG,cAAc,EACdL,OAAQhb,IAET5U,MAAK,WACJuvB,GAAiB,GACjBzb,GAA2B,EAC7B,IACC3T,OAAM,SAACC,GACNtD,GAASuD,EAAAA,EAAAA,KAAqBC,EAAAA,GAAAA,GAAeF,EAAIqT,SACjD8b,GAAiB,EACnB,GAEN,CACF,GAAG,CACD/a,EACAV,EACAE,EACAf,EACA4c,EACAjb,EACA9X,IAGG+yB,GAKHlyB,EAAAA,EAAAA,KAACqX,GAAAA,EAAa,CACZnX,MAAK,2BACLoX,YAAa,SACbC,OAAQnB,EACRjW,WAAWH,EAAAA,EAAAA,KAACwX,EAAAA,IAAiB,IAC7BC,UAAWZ,EACXa,UAnDoB,WACtBka,GAAiB,EACnB,EAkDI5yB,QArDY,WAAH,OAASmX,GAA2B,EAAO,EAsDpD2B,qBACExX,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,CAAC,gDACsC6xB,EAAiB7uB,OAAQ,IAAI,iBAC9DrD,EAAAA,EAAAA,KAAA,UAAAK,SAASiV,IAAwB,IAC7C6B,IACCnX,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UACPL,EAAAA,EAAAA,KAAA,OACEoI,MAAO,CACLwB,UAAW,IACXvJ,UAEFL,EAAAA,EAAAA,KAAC4R,EAAAA,IAAM,CACLhR,MAAO,yBACPiR,gBAAiB,CAAC,MAAO,MACzBC,QAASmF,EACTtW,MAAO,oBACPE,GAAG,oBACHC,KAAK,oBACLE,SAAU,SAACC,GACTiW,GAAqBD,EACvB,EACAc,YAAY,cAjCnB,IA0CX,E,WCnBMgO,GAA0B,CAC9BC,WAAW,EACXC,cAAe,GACfC,kBAAmB,GACnBplB,KAAM,GACNgT,eAAgB,GAChBI,qBAAsB,GACtBsL,KAAM,EACNzB,KAAM,CAAC,EACPvI,gBAAYlS,GAoad,IAAe8G,EAAAA,EAAAA,IAjeA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CACXqtB,kBAAmB,CACjBjlB,QAAS,GACT,4BAA6B,CAC3BsM,UAAW,MAGf4Y,eAAgB,CACd5jB,aAAc,GAEhB6jB,qBAAsB,CACpBC,SAAU,EACVhpB,OAAQ,qBACRoQ,SAAU,OACV,4BAA6B,CAC3BpQ,OAAQ,MAGZipB,qBAAsB,CACpB/lB,SAAU,WACV,4BAA6B,CAC3B,YAAa,CACXqF,QAAS,UAIf2gB,YAAa,CACX/oB,MAAO,UACP4S,WAAY,OACZnU,WAAY,SACZyB,YAAa,GACbyS,SAAU,GACV,4BAA6B,CAC3BvK,QAAS,UAGVqU,EAAAA,IACAuM,EAAAA,IACAlgB,EAAAA,IACA4T,EAAAA,IACAphB,EAAAA,IACA2tB,EAAAA,IACA1N,EAAAA,IACF,GAqbL,EAja0B,SAAHtmB,GAIS,IAH9B8G,EAAO9G,EAAP8G,QACAL,EAAazG,EAAbyG,cACAD,EAAUxG,EAAVwG,WAEMnG,GAAWC,EAAAA,EAAAA,MAEX2zB,GAAiBjtB,EAAAA,EAAAA,KACrB,SAACC,GAAe,OAAKA,EAAMC,cAAc+sB,cAAc,IAEnDC,GAAkBltB,EAAAA,EAAAA,KACtB,SAACC,GAAe,OAAKA,EAAMC,cAAcgtB,eAAe,IAEpDxc,GAAkB1Q,EAAAA,EAAAA,KACtB,SAACC,GAAe,OAAKA,EAAMC,cAAcwQ,eAAe,IAGpDwG,GAAmBlX,EAAAA,EAAAA,IAAYmX,EAAAA,IACrC5d,GAAoDC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAArEsnB,EAAkBpnB,EAAA,GAAEqnB,EAAqBrnB,EAAA,GAChDI,GAAoCL,EAAAA,EAAAA,UAA8B,MAAKM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAhEqY,EAAUpY,EAAA,GAAEynB,EAAaznB,EAAA,GAChCyP,GAA0C/P,EAAAA,EAAAA,UAA8B,MAAKgQ,GAAA9P,EAAAA,EAAAA,GAAA6P,EAAA,GAAtEuY,EAAatY,EAAA,GAAEuY,EAAgBvY,EAAA,GACtCG,GAAgCnQ,EAAAA,EAAAA,UAAyB,IAAGoQ,GAAAlQ,EAAAA,EAAAA,GAAAiQ,EAAA,GAArDuY,EAAQtY,EAAA,GAAEuY,EAAWvY,EAAA,GAC5B4D,GAAoDhU,EAAAA,EAAAA,WAAkB,GAAMiU,GAAA/T,EAAAA,EAAAA,GAAA8T,EAAA,GAArE2f,EAAkB1f,EAAA,GAAE2f,EAAqB3f,EAAA,GAChDG,GAA4CpU,EAAAA,EAAAA,UAC1C,MACDqU,GAAAnU,EAAAA,EAAAA,GAAAkU,EAAA,GAFMyf,EAAcxf,EAAA,GAAEyf,EAAiBzf,EAAA,GAGxC2T,GAAkChoB,EAAAA,EAAAA,UAAiB,QAAOioB,GAAA/nB,EAAAA,EAAAA,GAAA8nB,EAAA,GAAnD+L,EAAS9L,EAAA,GAAE+L,EAAY/L,EAAA,GAC9BG,GAAsCpoB,EAAAA,EAAAA,WAAkB,GAAMqoB,GAAAnoB,EAAAA,EAAAA,GAAAkoB,EAAA,GAAvDa,GAAWZ,EAAA,GAAEa,GAAcb,EAAA,GAClCG,IACExoB,EAAAA,EAAAA,WAAkB,GAAMyoB,IAAAvoB,EAAAA,EAAAA,GAAAsoB,GAAA,GADnByL,GAAoBxL,GAAA,GAAEyL,GAAuBzL,GAAA,GAEpDG,IAA0C5oB,EAAAA,EAAAA,WAAkB,GAAM6oB,IAAA3oB,EAAAA,EAAAA,GAAA0oB,GAAA,GAA3DuL,GAAatL,GAAA,GAAEuL,GAAgBvL,GAAA,GACtCE,IAA0C/oB,EAAAA,EAAAA,UAAmB,IAAGgpB,IAAA9oB,EAAAA,EAAAA,GAAA6oB,GAAA,GAAzDsL,GAAarL,GAAA,GAAEsL,GAAgBtL,GAAA,GACtCG,IAAgDnpB,EAAAA,EAAAA,WAAkB,GAAMopB,IAAAlpB,EAAAA,EAAAA,GAAAipB,GAAA,GAAjEoL,GAAgBnL,GAAA,GAAEoL,GAAmBpL,GAAA,GAGxCa,GAA4B,GAC5BvR,GAAcA,EAAWlX,OAC3ByoB,GAAkBvR,EAAWlX,KAAKmG,MAAM,OAG1ClH,EAAAA,EAAAA,YAAU,WACHizB,GAAoBhb,GACvB7Y,GAASytB,EAAAA,EAAAA,KAAmB,GAEhC,GAAG,CAACoG,EAAiBhb,EAAY7Y,KAEjCY,EAAAA,EAAAA,YAAU,WACJizB,GAAqC,KAAlBztB,GACrBrD,GAAAA,EAAIwT,QACDiU,YAAYrkB,EAAY,CACvB7F,OAAQ8F,EACRqkB,cAAe5M,IAEhB3a,MAAK,SAACC,GACL,IAAMunB,EAAS1R,IAAI7V,EAAIwnB,KAAM,UAAW,IAElCiK,GAAuBnc,EAAAA,EAAAA,IAAgBrS,GAGvCyuB,EAAmBnK,EAAO/lB,QAC9B,SAACtC,GAAkB,OAAKA,EAAKV,OAASizB,CAAoB,IAGxD/W,GACFqK,EACE2M,EAAiB7vB,MAAK,SAACslB,GAAgB,OAAKA,EAAGzD,SAAS,KACtDD,IAEJkC,EAAY+L,KAEZ3M,EAAc2M,EAAiB,IAC/B/L,EAAY,KAGd9oB,GAASytB,EAAAA,EAAAA,KAAmB,GAC9B,IACCpqB,OAAM,SAACC,GACNtD,GAASuD,EAAAA,EAAAA,KAAqBC,EAAAA,GAAAA,GAAeF,EAAIqT,SACjD3W,GAASytB,EAAAA,EAAAA,KAAmB,GAC9B,GAEN,GAAG,CAACoG,EAAiB1tB,EAAYC,EAAepG,EAAU6d,IAE1D,IAUMiX,GAAc,SAACzyB,GACnBqmB,EAAiBrmB,GAVjBolB,GAAsB,EAYxB,EAEMsN,GAAgB,SAAC1yB,GACrBqmB,EAAiBrmB,GACjBgnB,IAAe,EACjB,EAEM2L,GAAgB,SAAC3yB,GACrB4xB,EAAkB5xB,GAClB0xB,GAAsB,EACxB,EAEMkB,GAAiB,SAAC5yB,GACtBiiB,GAAetkB,EAAUmG,EAAYC,EAAe/D,EACtD,EAEM6yB,GAAgB,SAAC7yB,GACrBrC,GAAS0tB,EAAAA,EAAAA,IAAmBrrB,EAAKgU,YAAc,IACjD,EAEM8e,GAAkBtM,EAASlkB,QAAO,SAACywB,GACvC,QAAIA,EAAQ/e,YACH+e,EAAQ/e,WAAW3R,SAASkvB,EAGvC,IAiCMyB,GAAaxM,EAAStkB,QAAO,SAACC,EAAasmB,GAC/C,OAAIA,EAAUzK,KACL7b,EAAMsmB,EAAUzK,KAElB7b,CACT,GAAG,GAEH2wB,GAAgBG,MAAK,SAACC,EAAGC,GACvB,GACO,SADCtB,EAEJ,OAAIqB,EAAElV,MAAQmV,EAAEnV,KACVkV,EAAElV,KAAOmV,EAAEnV,MACL,EAENkV,EAAElV,KAAOmV,EAAEnV,KACN,EAEF,EAEF,EAEP,IAAMoV,EAAQ,IAAI7mB,KAAK2mB,EAAEzO,eAAiB,IAAIpC,UACxCgR,EAAQ,IAAI9mB,KAAK4mB,EAAE1O,eAAiB,IAAIpC,UAE9C,OAAI+Q,EAAQC,EACH,EAELD,EAAQC,GACF,EAEH,CAEb,IAEA,IAAMC,GAAiB,SAACte,GACtB,GAAImd,GAAc9vB,SAAS2S,GAA3B,CACE,IAAMue,EAAgBpB,GAAc7vB,QAClC,SAAC2U,GAAO,OAAKA,IAAYjC,CAAe,IAG1Cod,GAAiBmB,EAGnB,KARA,CAUA,IAAMC,GAAUxtB,EAAAA,EAAAA,GAAOmsB,IACvBqB,EAAWC,KAAKze,GAEhBod,GAAiBoB,EALjB,CAMF,EAgCA,OACE10B,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,CACNsmB,GAAsB3O,IACrBhY,EAAAA,EAAAA,KAACssB,EAAAA,QAAS,CACR7gB,KAAMkb,EACN/T,qBAzJgB,WACtBiV,EAAiB,MACjBjB,GAAsB,GACtB4B,IAAe,EACjB,EAsJQljB,WAAYA,EACZinB,WAAY3E,GAAiB5P,IAGhCib,GAAsBjb,GAAcmb,IACnCnzB,EAAAA,EAAAA,KAACk1B,GAAkB,CACjBlG,YAAaiE,EACb3tB,WAAYA,EACZwpB,iBAAkBqE,EAClBpE,WAAY/W,EAAWlX,MAAQ,GAC/Bic,iBAhIkB,SAACqQ,GACzB8F,GAAsB,GACtBE,EAAkB,MAEdhG,IACFjuB,GAASytB,EAAAA,EAAAA,KAAmB,IAC5BztB,GAASgrB,EAAAA,EAAAA,KAAqB,IAElC,IA2HK5B,IAAevQ,IACdhY,EAAAA,EAAAA,KAACgtB,GAAAA,QAAgB,CACfvhB,KAAM8c,GACNjjB,WAAYA,EACZoe,OAAQ,CACN5iB,KAAMkX,EAAWlX,MAAQ,GACzB0U,WACEoS,GAAiBA,EAAcpS,WAC3BoS,EAAcpS,WACd,OACNgK,KAAMoI,GAAiBA,EAAcpI,KAAOoI,EAAcpI,KAAO,EACjEyN,aAAc,GACdhH,cAAejO,EAAWiO,eAAiB,IAE7CiH,eAAgB,WACd1E,IAAe,EACjB,IAGH+K,KACCvzB,EAAAA,EAAAA,KAACm1B,GAAgB,CACf/e,WAAYmd,GACZpd,2BA/IsB,SAACif,GAC7B5B,IAAwB,GAEpB4B,IACFj2B,GAASytB,EAAAA,EAAAA,KAAmB,IAC5BztB,GAAS0tB,EAAAA,EAAAA,IAAmB,KAC5B1tB,GAASgrB,EAAAA,EAAAA,KAAqB,IAElC,EAwIQ9T,eAAgB/Q,EAChBgQ,eAAgB/P,IAGnBsuB,KACC7zB,EAAAA,EAAAA,KAACq1B,GAAsB,CACrBhf,eAAgB/Q,EAChBgQ,gBAAgBsC,EAAAA,EAAAA,IAAgBrS,GAChC6Q,WAAYyd,GACZ3B,iBAAkByB,GAClBxd,2BAhJsB,SAACmf,GAC7BxB,IAAoB,GAEhBwB,IACFn2B,GAASytB,EAAAA,EAAAA,KAAmB,IAC5BztB,GAAS0tB,EAAAA,EAAAA,IAAmB,KAC5B1tB,GAASgrB,EAAAA,EAAAA,KAAqB,IAC9ByJ,GAAiB,IAErB,KA0IItzB,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CAAC+P,WAAS,EAACnJ,UAAWvC,EAAQ2sB,kBAAkBlyB,SAAA,EACjD2X,IACAhY,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAGpB,UAChBL,EAAAA,EAAAA,KAACu1B,GAAAA,EAAc,MAIlBvd,IACC1X,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPL,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAGpB,UAChBL,EAAAA,EAAAA,KAACw1B,EAAkB,CACjBlwB,WAAYA,EACZC,eAAeqS,EAAAA,EAAAA,IAAgBrS,GAC/BC,gBAAgB,OAGpBxF,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQ+sB,qBAAqBtyB,UACzDL,EAAAA,EAAAA,KAACy1B,EAAAA,IAAW,CACVlsB,MACEvJ,EAAAA,EAAAA,KAAA,QAAMmI,UAAWvC,EAAQ8vB,SAASr1B,UAChCL,EAAAA,EAAAA,KAACqsB,EAAAA,IAAY,MAGjBnsB,MAAK,GAAAwE,OACH6kB,GAAgBlmB,OAAS,EACrBkmB,GAAgBA,GAAgBlmB,OAAS,GACzC2U,EAAWlX,KAAI,aAErB60B,UACEr1B,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPL,EAAAA,EAAAA,KAAA,QAAMmI,UAAWvC,EAAQgwB,cAAcv1B,UACrCC,EAAAA,EAAAA,MAAA,UAAAD,SAAA,CACG2nB,EAAS3kB,OAAO,WACI,IAApB2kB,EAAS3kB,OAAe,GAAK,IAAI,qBAGtCrD,EAAAA,EAAAA,KAAA,QAAMmI,UAAWvC,EAAQgwB,cAAcv1B,UACrCL,EAAAA,EAAAA,KAAA,UAAAK,UAAS4tB,EAAAA,EAAAA,IAAauG,WAI5BqB,SACEv1B,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPL,EAAAA,EAAAA,KAACoL,EAAAA,EAAc,CAACjK,QAAS,2BAA2Bd,UAClDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,2BACJmB,QAAS,WACP0xB,IAAkBD,GACpB,EACAlqB,MAAMvJ,EAAAA,EAAAA,KAAC81B,EAAAA,IAAkB,IACzB/zB,QAAS0xB,GAAgB,aAAe,UACxCrrB,MAAO,CAAE2B,YAAa,OAGzB0pB,KACCzzB,EAAAA,EAAAA,KAACoL,EAAAA,EAAc,CAACjK,QAAS,2BAA2Bd,UAClDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,2BACJmB,QAAS,WACP8xB,IAAoB,EACtB,EACAvqB,MAAMvJ,EAAAA,EAAAA,KAACytB,EAAAA,IAAU,IACjB1rB,QAAS,YACTqG,MAAO,CAAE2B,YAAa,GACtBzI,SAAmC,IAAzBqyB,GAActwB,YAI9BrD,EAAAA,EAAAA,KAACoL,EAAAA,EAAc,CAACjK,QAAS,8BAA8Bd,UACrDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,qBACJmB,QAAS,WACPwxB,IAAwB,EAC1B,EACAjqB,MAAMvJ,EAAAA,EAAAA,KAAC+1B,EAAAA,IAAoB,IAC3Bh0B,QAAS,YACTqG,MAAO,CAAE2B,YAAa,IACtBzI,SAAU0mB,EAAS3kB,QAAU,OAGjCrD,EAAAA,EAAAA,KAACoB,EAAAA,IAAM,CACLP,GAAI,UACJQ,QAAS,CACP,CAAET,MAAO,OAAQD,MAAO,QACxB,CACEC,MAAO,OACPD,MAAO,SAGXA,MAAO0yB,EACPzyB,MAAO,UACPI,SAAU,SAACmR,GACTmhB,EAAanhB,EACf,EACA6jB,iBAAe,OAIrBC,cAAc,OAGlBj2B,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQ6sB,qBAAqBpyB,SACxD2X,EAAWxC,YAAwC,SAA1BwC,EAAWxC,aAEnCxV,EAAAA,EAAAA,KAACk2B,GAAAA,GAAI,CACH9tB,MAAO,CACLqB,MAAO,QAET0sB,eAAgB,CACd1sB,MAAO,OACPsmB,SAAU,QAEZtmB,MAAO,EACPC,OAAQ,IACR0sB,SAAU9B,GAAgBjxB,OAC1BgzB,UAAW,IACXC,YAzMI,SAAH1V,GAMI,IALnB+P,EAAG/P,EAAH+P,IACA/oB,EAAKgZ,EAALhZ,MAGAQ,GAFWwY,EAAX2V,YACS3V,EAAT4V,UACK5V,EAALxY,OAEMquB,EAAUzO,EAAS3kB,OAASuE,EAClC,OACE5H,EAAAA,EAAAA,KAAC02B,GAAe,CACdtuB,MAAOA,EAEPuR,UAAoB,OAAV3B,QAAU,IAAVA,OAAU,EAAVA,EAAYlX,OAAQ,GAC9BmvB,YAAaqE,GAAgB1sB,GAC7BA,MAAO6uB,EACPlG,WAAY6D,GACZ5D,UAAW2D,GACX7D,QAAS2D,GACTxD,UAAWyD,GACXxD,YAAa2D,GACbnE,WAAY1Z,IAAoB8d,GAAgB1sB,GAAO4N,WACvD2a,UAAWsD,GACXpD,QAASyE,GACT1E,UAAWuD,GAAc9vB,SACvBywB,GAAgB1sB,GAAO4N,YAAc,KAblCmb,EAiBX,cAsLF,I,WC7gBagG,GAAoB,SAACjT,GAChC,GAAIA,EAAO5iB,KAAK+W,SAAS,KACvB,MAAO,GAGT,IAAM+e,EAAW7F,EAAAA,GAASC,MACpB6F,EAAa9F,EAAAA,GAASE,QAAQvN,EAAOuC,eAO3C,OAJE2Q,EAASE,QAAQD,EAAY,QAC7BD,EAASE,QAAQD,EAAY,UAC7BD,EAASE,QAAQD,EAAY,QAGvB,UAANnyB,OAAiBmyB,EAAWlF,SAAS,UAGhCkF,EAAWlF,SAAS,gCAC7B,EAEaoF,GAAmB,SAACrT,GAC/B,OAAIA,EAAO5iB,KAAK+W,SAAS,OAAS6L,EAAOlE,KAChC,KAEFwO,EAAAA,EAAAA,IAAUgJ,OAAOtT,EAAOlE,MACjC,EAQayX,GAAkB,CAC7B,CACEr2B,MAAO,OACPs2B,WAAY,OACZC,eAAgBjc,GAChBkc,YAAY,GAEd,CACEx2B,MAAO,gBACPs2B,WAAY,gBACZC,eAAgBR,GAChBU,kBAAkB,EAClBD,YAAY,GAEd,CACEx2B,MAAO,OACPs2B,WAAY,OACZC,eAAgBJ,GAChBM,kBAAkB,EAClB5tB,MAAO,IACP2tB,YAAY,IAIHE,GAAoB,CAC/B,CACE12B,MAAO,OACPs2B,WAAY,OACZC,eAAgBjc,GAChBkc,YAAY,GAEd,CACEx2B,MAAO,cACPs2B,WAAY,gBACZC,eAAgBR,GAChBU,kBAAkB,EAClBD,YAAY,GAEd,CACEx2B,MAAO,OACPs2B,WAAY,OACZC,eAAgBJ,GAChBM,kBAAkB,EAClB5tB,MAAO,IACP2tB,YAAY,GAEd,CACEx2B,MAAO,UACPs2B,WAAY,cACZC,eAvD6B,SAACpxB,GAChC,OAAOA,EAAQ,MAAQ,IACzB,EAsDI0D,MAAO,K,YC3DL3E,IAAYC,EAAAA,EAAAA,IAAW,SAACC,GAAY,OACxCC,EAAAA,EAAAA,GAAa,CACXsyB,YAAa,CACXztB,OAAQ,EACR,4BAA6B,CAC3BL,MAAO,MAGX+tB,cAAe,CACb5qB,SAAU,WACVlD,OAAQ,oBACR,4BAA6B,CAC3BgD,UAAW,QAEb,6BAA8B,CAC5BhD,OAAQ,uBAGZ,UAAW,CACT,+BAAgC,CAC9B+tB,gBAAiB,mCAEnB,iCAAkC,CAChCA,gBAAiB,uCAGrB,IAsNJ,GA/MyB,SAAH34B,GAA6C,IAAvCyG,EAAazG,EAAbyG,cACpBK,EAAUd,KACV3F,GAAWC,EAAAA,EAAAA,MACXs4B,GAASC,EAAAA,EAAAA,MACTjyB,GAAWC,EAAAA,EAAAA,MAEjBtG,GAA0CC,EAAAA,EAAAA,UAExC,OAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAFDu4B,EAAar4B,EAAA,GAAEs4B,EAAgBt4B,EAAA,GAGtCI,GAAgDL,EAAAA,EAAAA,UAAiB,QAAOM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAjEm4B,EAAgBl4B,EAAA,GAAEm4B,EAAmBn4B,EAAA,GAEtC0F,EAAaoyB,EAAOpyB,YAAc,GAElC0yB,GAAclyB,EAAAA,EAAAA,KAClB,SAACC,GAAe,OAAKA,EAAMC,cAAciyB,iBAAiB,IAGtDC,GAAiBpyB,EAAAA,EAAAA,KACrB,SAACC,GAAe,OAAKA,EAAMC,cAAckyB,cAAc,IAGnDC,GAAWryB,EAAAA,EAAAA,IAAYsyB,GAAAA,IACvBC,IAAmB,OAARF,QAAQ,IAARA,IAAAA,EAAUt0B,SAAS,wBAE9BgC,GAAgBC,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMC,cAAcC,OAAOJ,aAAa,IAEzDyyB,GAAUxyB,EAAAA,EAAAA,KAAY,SAACC,GAAe,OAAKA,EAAMC,cAAcsyB,OAAO,IACtEC,GAAgBzyB,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMC,cAAcuyB,aAAa,IAElDC,GAAkB1yB,EAAAA,EAAAA,KACtB,SAACC,GAAe,OAAKA,EAAMC,cAAcwyB,eAAe,IAEpDC,GAAkB3yB,EAAAA,EAAAA,KACtB,SAACC,GAAe,OAAKA,EAAMC,cAAcyyB,eAAe,IAEpDryB,GAAgBN,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMM,OAAOD,aAAa,IAG3CsyB,GAAqBnxB,EAAAA,EAAAA,GAAcjC,EAAY,CACnDmB,EAAAA,GAAWkyB,eACXlyB,EAAAA,GAAWmyB,qBAiBPC,EAdkBP,EAAQx0B,QAAO,SAAC6wB,GACtC,MAAsB,KAAlB4D,GAGiB5D,EAAE7zB,KAAK0a,cACXlX,QAAQi0B,EAAc/c,gBAAkB,CAM3D,IAGyBiZ,MAAKqE,EAAAA,EAAAA,IAAgBhB,IAE1CiB,EAA8B,GAGhCA,EADoB,QAAlBnB,EACQiB,EAEAA,EAAQG,UAGpB,IAmCMC,EAA8B,CAClC,CACEn3B,KAAM,OACNlB,MAAO,OACPoB,QAvCa,SAAC0hB,GAA0B,IAADC,EACnCuV,EAAYxV,EAAO5iB,MAAQ,GAC3Bq4B,EAAO,YAAAz0B,OAAeY,GAAUZ,OACpCw0B,EAAS,IAAAx0B,QAAOuD,EAAAA,EAAAA,IAAgBixB,IAAU,KAK1C9yB,GACkB,OAAlBb,GACY,QAAZoe,EAACD,EAAO5iB,YAAI,IAAA6iB,GAAXA,EAAa9L,SAAS,MAUzB1Y,GAASi6B,EAAAA,EAAAA,IAAmB,KAE5B1zB,EAASyzB,GAEJ/yB,IACHjH,GAASk6B,EAAAA,EAAAA,KAAqB,IAC9Bl6B,GAASytB,EAAAA,EAAAA,KAAmB,IAC5BztB,GAASm6B,EAAAA,EAAAA,KAAe,KAE1Bn6B,GACEo6B,EAAAA,EAAAA,IAAsB,GAAD70B,OAChBw0B,EAAS,GAAAx0B,QAAMuD,EAAAA,EAAAA,IAAgBixB,IAAU,OAnB9CzV,GACEtkB,EACAmG,EAAW,GAADZ,QACPuD,EAAAA,EAAAA,IAAgBixB,IACnBxV,EAkBN,EAMI8V,YAAY,IA2CZ3W,EACD6V,GAAuBtyB,EAInB,yBAAA1B,OAEEmB,EAAsD,GAAtC,sCALnBoE,EAAAA,EAAAA,IACE,CAACxD,EAAAA,GAAWkyB,eAAgBlyB,EAAAA,GAAWmyB,oBACvC,+BAMJH,IACF5V,EACE,uFAGJ,IAAI4W,EAAoB,sBAMxB,OAJIpB,IACFoB,EAAoB,wBAIpBz5B,EAAAA,EAAAA,KAAC05B,EAAAA,IAAS,CACRC,YAAaV,EACbW,QAAS/zB,EAAgByxB,GAAoBL,GAC7Cxf,UAAWygB,EACX2B,WAAW,UACXC,QAAQ,OACRxB,QAASS,EACTU,kBAAmBA,EACnB9F,cAAe6E,EACfuB,SAAW3zB,OAAoC9C,EAnDzB,SAACrC,GACzB,IAAM+4B,EAAU/4B,EAAEC,OACZP,EAAQq5B,EAAQr5B,MAChBmR,EAAUkoB,EAAQloB,QAEpBmoB,GAAkBzyB,EAAAA,EAAAA,GAAOgxB,GAY7B,OAVI1mB,EAEFmoB,EAAShF,KAAKt0B,GAGds5B,EAAWA,EAASn2B,QAAO,SAAC2U,GAAO,OAAKA,IAAY9X,CAAK,IAE3DxB,GAASi6B,EAAAA,EAAAA,IAAmBa,IAC5B96B,GAASo6B,EAAAA,EAAAA,IAAsB,OAExBU,CACT,EAkCIC,mBAAoBrX,EACpBsX,WAAY,CACVC,YAAatC,EACbuC,iBAAkBzC,EAClB0C,YA3Ea,SAACC,GAClB,IAAMC,EAAmBriB,IAAIoiB,EAAU,gBAAiB,QACxDxC,EAAoBwC,EAASE,QAC7B5C,EAAiB2C,GACjBr7B,GAASu7B,EAAAA,EAAAA,KAAkB,GAC7B,GAwEIC,YAtEmB,WAGrB,GAFAx7B,GAASo6B,EAAAA,EAAAA,IAAsB,OAE3Bf,EAAgBn1B,SAAW01B,EAAQ11B,OAAvC,CAKA,IAAM42B,EAAWlB,EAAQrxB,KAAI,SAAClG,GAAI,OAAKA,EAAKV,IAAI,IAChD3B,GAASi6B,EAAAA,EAAAA,IAAmBa,GAH5B,MAFE96B,GAASi6B,EAAAA,EAAAA,IAAmB,IAMhC,EA6DIwB,SAAU,SAAAha,GAAgB,IAADia,EAAZjzB,EAAKgZ,EAALhZ,MACX,OAAkB,QAAlBizB,EAAI9B,EAAQnxB,UAAM,IAAAizB,GAAdA,EAAgBC,YACX,UAGF,EACT,EACAC,gBAAiBn1B,EAAQ4xB,cACzB91B,GAAI,CACFkY,UAAWoe,EAAc,OAAS,WAEpCgD,cAAY,GAGlB,E,YC1PaC,IAAmBC,EAAAA,GAAAA,IAC9B,iCAAgC,eAAAta,GAAAC,EAAAA,GAAAA,IAAAC,EAAAA,GAAAA,KAAAC,MAChC,SAAAC,EAAO1b,EAAkBxG,GAAA,IAAAq8B,EAAAh8B,EAAA4G,EAAA0d,EAAA2X,EAAAC,EAAA,OAAAva,EAAAA,GAAAA,KAAAI,MAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OA0DrB,GA1DyB8Z,EAAQr8B,EAARq8B,SAAyBr8B,EAAfw8B,gBAAiBn8B,EAAQL,EAARK,SAChD4G,EAAQo1B,IAER1X,EAAiB,SAACC,GACtB,IAAME,GAAmB3b,EAAAA,EAAAA,IAAgB,GAADvD,OACnCY,EAAU,KAAAZ,OAAIgf,EAAO5iB,KAAI,KAAA4D,QAAI,IAAIqJ,MAAO8V,UAAS,KAAAnf,OAAIof,KAAKC,WAGzDI,GAAKC,EAAAA,GAAAA,IAAO,GAEZC,GAAeC,EAAAA,EAAAA,IACnBhf,GACA2C,EAAAA,EAAAA,IAAgByb,EAAO5iB,MACvB4iB,EAAOlO,WACPkO,EAAOlE,KACP,KACA2E,GACA,SAACI,GACCplB,GACEqlB,EAAAA,EAAAA,IAAe,CACbC,WAAYb,EACZW,SAAUA,IAGhB,IACA,WACEplB,GAASulB,EAAAA,EAAAA,IAAed,GAC1B,IACA,SAACe,GACCxlB,GAASylB,EAAAA,EAAAA,IAAW,CAAEH,WAAYb,EAAkBe,IAAAA,IACtD,IACA,WACExlB,GAAS0lB,EAAAA,EAAAA,IAAmBjB,GAC9B,IACA,WACEzkB,GACEoD,EAAAA,EAAAA,IACE,0DAGN,KAEFuiB,EAAAA,GAAAA,IAAyBX,EAAIE,GAC7BllB,GACE4lB,EAAAA,EAAAA,IAAa,CACXZ,GAAAA,EACA7e,WAAAA,EACA2W,MAAM,EACNwI,WAAYb,EACZoB,WAAY,EACZvlB,OAAQikB,EAAO5iB,KACfgB,KAAM,WACNmjB,gBAAgB,EAChBC,QAAQ,EACRC,WAAW,EACXtC,aAAc,KAGpB,EAEmD,IAA/C9c,EAAMC,cAAcwyB,gBAAgBn1B,OAAY,CAAA8d,EAAAE,KAAA,SASlD,GARI+Z,EAAsC,GAEpCC,EAAiB,SAACpR,GAA2B,OACjDlkB,EAAMC,cAAcwyB,gBAAgB30B,SAASomB,EAAUnpB,KAAM,EAMhC,KAJ/Bs6B,EAAkBr1B,EAAMC,cAAcsyB,QAAQx0B,OAAOu3B,IAIjCh4B,OAAY,CAAA8d,EAAAE,KAAA,cAE5B+Z,EAAgB,GAAGt6B,KAAKuC,OAAS,MACjC4gB,EAAAA,EAAAA,MAAczI,cAAc3X,SAAS,QAAM,CAAAsd,EAAAE,KAAA,SAEU,OAArDliB,GAASo8B,EAAAA,EAAAA,IAAuBH,EAAgB,KAAKja,EAAAK,OAAA,kBAKzD4Z,EAAgBI,SAAQ,SAACC,GACvBhY,EAAegY,EACjB,IAAG,yBAAAta,EAAAO,OAAA,GAAAV,EAAA,KAEN,gBAAAW,EAAAwB,GAAA,OAAAvC,EAAAgB,MAAA,KAAAxe,UAAA,EArF+B,IAwFrBs4B,IAAcR,EAAAA,GAAAA,IACzB,4BAA2B,eAAA9Y,GAAAvB,EAAAA,GAAAA,IAAAC,EAAAA,GAAAA,KAAAC,MAC3B,SAAAsB,EAAOzU,EAACkU,GAAA,IAAAqZ,EAAAh8B,EAAA4G,EAAA41B,EAAAC,EAAA,OAAA9a,EAAAA,GAAAA,KAAAI,MAAA,SAAAwB,GAAA,cAAAA,EAAAtB,KAAAsB,EAAArB,MAAA,OAAI8Z,EAAQrZ,EAARqZ,SAAyBrZ,EAAfwZ,gBAAiBn8B,EAAQ2iB,EAAR3iB,SAGc,KAF7C4G,EAAQo1B,KAEJn1B,cAAcwyB,gBAAgBn1B,SAGhCu4B,EAAe,SAAC3R,GAA2B,OAC/ClkB,EAAMC,cAAcwyB,gBAAgB30B,SAASomB,EAAUnpB,KAAM,GAE/D66B,EAAa51B,EAAMC,cAAcsyB,QAAQn0B,KAAKy3B,MAG5Cz8B,GAAS08B,EAAAA,EAAAA,IAAmBF,IAC5Bx8B,GAASqpB,EAAAA,EAAAA,KAAe,MAE3B,wBAAA9F,EAAAhB,OAAA,GAAAW,EAAA,KACF,gBAAAyZ,EAAAC,GAAA,OAAA3Z,EAAAR,MAAA,KAAAxe,UAAA,EAjB0B,IAoBhB44B,IAAYd,EAAAA,GAAAA,IACvB,0BAAyB,eAAAe,GAAApb,EAAAA,GAAAA,IAAAC,EAAAA,GAAAA,KAAAC,MACzB,SAAAgB,EAAOnU,EAACsuB,GAAA,IAAAf,EAAAh8B,EAAA4G,EAAA41B,EAAAC,EAAA,OAAA9a,EAAAA,GAAAA,KAAAI,MAAA,SAAAiB,GAAA,cAAAA,EAAAf,KAAAe,EAAAd,MAAA,OAAI8Z,EAAQe,EAARf,SAAyBe,EAAfZ,gBAAiBn8B,EAAQ+8B,EAAR/8B,SAGc,KAF7C4G,EAAQo1B,KAEJn1B,cAAcwyB,gBAAgBn1B,SAGhCu4B,EAAe,SAAC3R,GAA2B,OAC/ClkB,EAAMC,cAAcwyB,gBAAgB30B,SAASomB,EAAUnpB,KAAM,GAE/D66B,EAAa51B,EAAMC,cAAcsyB,QAAQn0B,KAAKy3B,MAG5Cz8B,GAAS08B,EAAAA,EAAAA,IAAmBF,IAC5Bx8B,GAASynB,EAAAA,EAAAA,KAAsB,MAElC,wBAAAzE,EAAAT,OAAA,GAAAK,EAAA,KACF,gBAAAoa,EAAAC,GAAA,OAAAH,EAAAra,MAAA,KAAAxe,UAAA,EAjBwB,IAoBdi5B,IAAsBnB,EAAAA,GAAAA,IACjC,oCAAmC,eAAAoB,GAAAzb,EAAAA,GAAAA,IAAAC,EAAAA,GAAAA,KAAAC,MACnC,SAAAwb,EAAO3uB,EAAC4uB,GAAA,IAAArB,EAAAh8B,EAAA4G,EAAA,OAAA+a,EAAAA,GAAAA,KAAAI,MAAA,SAAAub,GAAA,cAAAA,EAAArb,KAAAqb,EAAApb,MAAA,OAAI8Z,EAAQqB,EAARrB,SAAUh8B,EAAQq9B,EAARr9B,SAI6B,KAH3C4G,EAAQo1B,KAGNn1B,cAAcwyB,gBAAgBn1B,QACpC0C,EAAMC,cAAcwyB,gBAAgB,GAAG3gB,SAAS,MAEhD1Y,GAASu9B,EAAAA,EAAAA,KAAuB,IACjC,wBAAAD,EAAA/a,OAAA,GAAA6a,EAAA,KACF,gBAAAI,EAAAC,GAAA,OAAAN,EAAA1a,MAAA,KAAAxe,UAAA,EAVkC,I,YClIrC,GAhBwB,WACtB,IAAMjE,GAAWC,EAAAA,EAAAA,MAEXm5B,GAAgBzyB,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMC,cAAcuyB,aAAa,IAExD,OACEv4B,EAAAA,EAAAA,KAAC68B,GAAAA,EAAS,CACR97B,YAAa,+CACbC,SAAU,SAACL,GACTxB,GAAS29B,EAAAA,EAAAA,IAAiBn8B,GAC5B,EACAA,MAAO43B,GAGb,E,YC8GMwE,IAAwBn4B,EAAAA,EAAAA,GAC5BC,EAAAA,MAAW,kBAAM,8BAAiC,KAE9CynB,IAAY1nB,EAAAA,EAAAA,GAChBC,EAAAA,MAAW,kBAAM,uCAAoC,KAEjDm4B,IAAep4B,EAAAA,EAAAA,GAAaC,EAAAA,MAAW,kBAAM,wDAAwB,KACrEmoB,IAAmBpoB,EAAAA,EAAAA,GACvBC,EAAAA,MAAW,kBAAM,uCAAqC,KAGlDC,IAAYC,EAAAA,EAAAA,IAAW,SAACC,GAAY,OACxCC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CACX+3B,aAAc,CACZ,oBAAqB,CACnB5vB,IAAK,GACLD,MAAO,EACP3D,MAAO,EACPC,OAAQ,EACRqD,SAAU,KAGX8lB,EAAAA,IACAvM,EAAAA,IACA4W,EAAAA,IAAW,IAEdA,aAAWh4B,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACNg4B,EAAAA,GAAYA,aAAW,IAC1BnN,SAAU,MAEZ4C,qBAAsB,CACpB7oB,OAAQ,oBACRwD,QAAS,SAEX6vB,WAAY,CACVtzB,MAAO,UACP2S,SAAU,QAEZ4gB,qBAAsB,CACpB9vB,QAAS,iBAEX+vB,cAAe,CACb5zB,MAAO,OACPmD,SAAU,WACV,gBAAiB,CACf,4BAA6B,CAC3BqF,QAAS,UAIfqrB,gBAAiB,CACf,4BAA6B,CAC3BrrB,QAAS,SAGbsrB,eAAgB,CACdtrB,QAAS,OACTM,eAAgB,gBAChB9I,MAAO,SAENqpB,EAAAA,IACA3tB,EAAAA,IACAigB,EAAAA,IACH,IAGEoY,GAAe,CACnBpxB,YAAa,EACbE,aAAc,EACdH,YAAa,UACbsxB,QAAS,QAGLC,GAAiB,CACrBrxB,YAAa,SACbkB,gBAAiB,UACjBpB,YAAa,WAGTwxB,GAAiB,CACrBtxB,YAAa,SACbkB,gBAAiB,UACjBpB,YAAa,WAwjCf,GArjCoB,WAAO,IAADyxB,EAClBh4B,EAAUd,KACV3F,GAAWC,EAAAA,EAAAA,MACXs4B,GAASC,EAAAA,EAAAA,MACTjyB,GAAWC,EAAAA,EAAAA,MACXk4B,GAAWC,EAAAA,EAAAA,MAEXj4B,GAAgBC,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMC,cAAcC,OAAOJ,aAAa,IAEzDk4B,GAAiBj4B,EAAAA,EAAAA,KACrB,SAACC,GAAe,OAAKA,EAAMC,cAAcC,OAAO83B,cAAc,IAE1D73B,GAAeJ,EAAAA,EAAAA,KACnB,SAACC,GAAe,OAAKA,EAAMC,cAAcE,YAAY,IAGjD83B,GAAcl4B,EAAAA,EAAAA,KAClB,SAACC,GAAe,OAAKA,EAAMC,cAAcg4B,WAAW,IAEhDhG,GAAclyB,EAAAA,EAAAA,KAClB,SAACC,GAAe,OAAKA,EAAMC,cAAciyB,iBAAiB,IAEtDgG,GAAwBn4B,EAAAA,EAAAA,KAC5B,SAACC,GAAe,OAAKA,EAAMC,cAAci4B,qBAAqB,IAE1D/F,GAAiBpyB,EAAAA,EAAAA,KACrB,SAACC,GAAe,OAAKA,EAAMC,cAAckyB,cAAc,IAEnDgG,GAAap4B,EAAAA,EAAAA,KACjB,SAACC,GAAe,OAAKA,EAAMC,cAAck4B,UAAU,IAG/CC,GAAmBr4B,EAAAA,EAAAA,KACvB,SAACC,GAAe,OAAKA,EAAMC,cAAciqB,WAAW,IAEhDmO,GAAiBt4B,EAAAA,EAAAA,KACrB,SAACC,GAAe,OAAKA,EAAMC,cAAco4B,cAAc,IAEnDC,GAAsBv4B,EAAAA,EAAAA,KAC1B,SAACC,GAAe,OAAKA,EAAMC,cAAcq4B,mBAAmB,IAExDC,GAAkBx4B,EAAAA,EAAAA,KACtB,SAACC,GAAe,OAAKA,EAAMC,cAAcs4B,eAAe,IAEpD3X,GAAqB7gB,EAAAA,EAAAA,KACzB,SAACC,GAAe,OAAKA,EAAMC,cAAc2gB,kBAAkB,IAEvD4B,GAAcziB,EAAAA,EAAAA,KAClB,SAACC,GAAe,OAAKA,EAAMC,cAAcuiB,WAAW,IAEhDlS,GAAiBvQ,EAAAA,EAAAA,KACrB,SAACC,GAAe,OAAKA,EAAMC,cAAcqQ,cAAc,IAEnDjQ,GAAgBN,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMM,OAAOD,aAAa,IAE3Cm4B,GAAsBz4B,EAAAA,EAAAA,KAC1B,SAACC,GAAe,OAAKA,EAAMC,cAAcu4B,mBAAmB,IAGxDC,GAAgB14B,EAAAA,EAAAA,IAAY24B,GAAAA,IAC5BC,GAAa54B,EAAAA,EAAAA,IAAY64B,GAAAA,IAE/Bt/B,GAAoDC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAArEu/B,EAAkBr/B,EAAA,GAAEs/B,GAAqBt/B,EAAA,GAChDI,IAAwCL,EAAAA,EAAAA,WAAkB,GAAMM,IAAAJ,EAAAA,EAAAA,GAAAG,GAAA,GAAzDm/B,GAAYl/B,GAAA,GAAEm/B,GAAen/B,GAAA,GACpCyP,IAA8B/P,EAAAA,EAAAA,WAAkB,GAAMgQ,IAAA9P,EAAAA,EAAAA,GAAA6P,GAAA,GAA/C2vB,GAAO1vB,GAAA,GAAE2vB,GAAU3vB,GAAA,GAC1BG,IAAwCnQ,EAAAA,EAAAA,WAAkB,GAAMoQ,IAAAlQ,EAAAA,EAAAA,GAAAiQ,GAAA,GAAzDyvB,GAAYxvB,GAAA,GAAEyvB,GAAezvB,GAAA,GACpC4D,IAA4ChU,EAAAA,EAAAA,WAAkB,GAAMiU,IAAA/T,EAAAA,EAAAA,GAAA8T,GAAA,GAA7D8rB,GAAc7rB,GAAA,GAAE8rB,GAAiB9rB,GAAA,GACxCG,IAA0BpU,EAAAA,EAAAA,UAA6B,MAAKqU,IAAAnU,EAAAA,EAAAA,GAAAkU,GAAA,GAArD4rB,GAAK3rB,GAAA,GAAE4rB,GAAQ5rB,GAAA,GAEtB2T,IAAgChoB,EAAAA,EAAAA,UAAc,MAAKioB,IAAA/nB,EAAAA,EAAAA,GAAA8nB,GAAA,GAA5CzO,GAAQ0O,GAAA,GAAE2B,GAAW3B,GAAA,GAC5BG,IAAgDpoB,EAAAA,EAAAA,WAAS,GAAMqoB,IAAAnoB,EAAAA,EAAAA,GAAAkoB,GAAA,GAAxD8X,GAAgB7X,GAAA,GAAE8X,GAAmB9X,GAAA,GAEtC+X,GAAsBxpB,GAAgBioB,EAAiBx1B,QACvDrD,GAAaoyB,EAAOpyB,YAAc,GAElCq6B,GAAc9B,EAAS+B,SAAS34B,MAAM,YAADvC,OAAaY,GAAU,MAC5DC,GAAuC,IAAvBo6B,GAAYt8B,OAAes8B,GAAY,GAAK,GAE5DE,IAAYjoB,EAAAA,EAAAA,IAAgBrS,IAC5Bu6B,GAAcD,GAAU54B,MAAM,KAAKnD,QAAO,SAACi8B,GAAS,MAAW,KAANA,CAAQ,IAEnE78B,GAAa,CAACoC,IACdw6B,GAAYz8B,OAAS,IACvBH,GAAaA,GAAWwB,OAAOo7B,KAGjC,IAAME,IAAazrB,EAAAA,EAAAA,QAAyB,MACtC0rB,IAAe1rB,EAAAA,EAAAA,QAAyB,MAExCtR,IAAgB6C,EAAAA,EAAAA,KAAY,SAACC,GAAe,OAChDA,EAAMa,QAAQC,SAAUd,EAAMa,QAAQC,QAAQC,aAAoB,CAAC,CAAC,IAGhEN,GAAsB,CAC1BC,EAAAA,GAAWC,cACXD,EAAAA,GAAWE,gBAGPu5B,GAAyBh9B,GAAW6E,KAAK,KACzCo4B,G5BzTsC,SAC5Cl9B,EACAC,GAEI,IAQEi9B,EAPwBn9B,EAC5BC,EACAC,EAJcE,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,IASiCM,QAClD,SAACC,EAAey8B,GACd,IAAMC,EAAoBx9B,EAAgBu9B,GAI1C,OAHIC,GACF18B,EAAIsxB,KAAK,IAADvwB,OAAK27B,IAER18B,CACT,GACA,IAIF,OADsB6D,EAAAA,EAAAA,GAAO,IAAI84B,IAAIH,IACbp4B,KAAK,IAC/B,C4BgSgCw4B,CAC5Bt9B,GACAi9B,GACA15B,IAGIa,GAAwBrE,EAC5BC,GACAi9B,GACA15B,IAGIg6B,IAAcj5B,EAAAA,EAAAA,GAAc,CAC/B24B,IAAsBx7B,QAAA8C,EAAAA,EAAAA,GAAKH,KAC5B,CAACZ,EAAAA,GAAW+kB,cAAe/kB,EAAAA,GAAWoY,iBAElC4M,IAAYlkB,EAAAA,EAAAA,GAAc,CAC7B24B,IAAsBx7B,QAAA8C,EAAAA,EAAAA,GAAKH,KAC5B,CAACZ,EAAAA,GAAWilB,mBAER+U,IACJl5B,EAAAA,EAAAA,GAAc,CACX24B,IAAsBx7B,QAAA8C,EAAAA,EAAAA,GAAKH,KAC5Bb,KACGJ,EAEDs6B,IAAwBn5B,EAAAA,EAAAA,GAAcjC,GAAY,CACtDmB,EAAAA,GAAWk6B,qBACXl6B,EAAAA,GAAWm6B,qBACXn6B,EAAAA,GAAWoY,eACXpY,EAAAA,GAAWE,iBAGP6xB,IAAkB1yB,EAAAA,EAAAA,KACtB,SAACC,GAAe,OAAKA,EAAMC,cAAcwyB,eAAe,IAGpDqI,IAAgBC,EAAAA,EAAAA,cAAY,WAChC,IAAMl4B,EAAa4vB,GAAgB,GAEnC,IAAKgH,GAAkB,CACrB,IAAMuB,GAAc94B,EAAAA,EAAAA,IAAgBW,GACpC1G,GAAAA,EAAIwT,QACD0U,kBAAkB9kB,GAAY,CAC7B7F,OAAQshC,IAET1+B,MAAK,SAACC,GACL,IAAI+nB,EAAWlS,IAAI7V,EAAIwnB,KAAM,iBAAkB,CAAC,GAChD2V,IAAoB,GACpBvW,GAAYmB,EACd,IACC7nB,OAAM,SAACC,GACNmE,QAAQkP,MACN,kCACArT,EACG,OAAHA,QAAG,IAAHA,OAAG,EAAHA,EAAKkU,eAEP8oB,IAAoB,EACtB,GACJ,CACF,GAAG,CAACn6B,GAAYkzB,GAAiBgH,MAEjCz/B,EAAAA,EAAAA,YAAU,WACJuF,IAAyC,IAA3BkzB,GAAgBn1B,QAChCw9B,IAEJ,GAAG,CAACv7B,GAAYkzB,GAAiBqI,MAEjC9gC,EAAAA,EAAAA,YAAU,WACRZ,GAAS29B,EAAAA,EAAAA,IAAiB,KAC1B39B,GAASu7B,EAAAA,EAAAA,KAAkB,IAC3Bv7B,GAASi6B,EAAAA,EAAAA,IAAmB,IAC9B,GAAG,CAAC8E,EAAY/+B,KAEhBY,EAAAA,EAAAA,YAAU,WACJ8F,GACEk4B,IAAmBz4B,IACrBnG,GAAS6hC,EAAAA,EAAAA,MAIf,GAAG,CAACn7B,EAAek4B,EAAgBz4B,GAAYnG,KAI/CY,EAAAA,EAAAA,YAAU,WACqB,OAAzBkgC,GAAaxrB,UACfwrB,GAAaxrB,QAAQwsB,aAAa,YAAa,IAC/ChB,GAAaxrB,QAAQwsB,aAAa,kBAAmB,IAEzD,GAAG,CAAChB,MAEJlgC,EAAAA,EAAAA,YAAU,WACR,GAA+B,IAA3By4B,GAAgBn1B,OAAc,CAChC,IAAMuF,EAAa4vB,GAAgB,GAC/B7M,GAA8BC,EAAAA,EAAAA,IAAkB/S,GAAUjQ,GAG5Dy2B,KADiB,SAAf1T,IAAyB6U,KAMzB53B,EAAWiP,SAAS,MAAQ2oB,GAC9BrB,IAAgB,GAEhBA,IAAgB,EAEpB,MACEA,IAAgB,GAChBE,IAAkB,EAEtB,GAAG,CAAC7G,GAAiBgI,GAAa3nB,MAElC9Y,EAAAA,EAAAA,YAAU,WACHu/B,IAAUl5B,GACblE,GAAAA,EAAIwT,QACDwrB,eAAe57B,IACfjD,MAAK,SAACC,GACL,IAAI6+B,EAAY,KAEZ7+B,EAAIwnB,KAAKwV,QACX6B,EAAY7+B,EAAIwnB,MAGlByV,GAAS4B,EACX,IACC3+B,OAAM,SAACC,GACNmE,QAAQkP,MACN,+BACArT,EAAIqT,MAAMsrB,iBAEZ7B,GAAS,KACX,GAEN,GAAG,CAACD,GAAOh6B,GAAYc,KAEvBrG,EAAAA,EAAAA,YAAU,WACJy4B,GAAgBn1B,OAAS,EAC3BlE,GAASk6B,EAAAA,EAAAA,KAAqB,IAKH,IAA3Bb,GAAgBn1B,QACU,OAA1B46B,GACC/F,GAED/4B,GAASk6B,EAAAA,EAAAA,KAAqB,GAElC,GAAG,CAACb,GAAiByF,EAAuB9+B,EAAU+4B,KAEtDn4B,EAAAA,EAAAA,YAAU,WACHi/B,KACH7/B,GAASkiC,EAAAA,GAAAA,KAAqB,IAC9BpC,IAAW,GAEf,GAAG,CAACD,GAAS7/B,EAAU8/B,MAGvBl/B,EAAAA,EAAAA,YAAU,YACHm4B,IAAkBsG,GAAmBp4B,GACxClE,GAAAA,EAAIwT,QACDgpB,WAAWp5B,IACXjD,MAAK,SAACC,GACLnD,GAASkiC,EAAAA,GAAAA,KAAqB,IAC9BliC,GAASmiC,EAAAA,GAAAA,IAAch/B,EAAIwnB,OAC3B3qB,GAASoiC,EAAAA,EAAAA,IAAkBj8B,IAC7B,IACC9C,OAAM,SAACC,GACNtD,GAASkiC,EAAAA,GAAAA,KAAqB,IAC9BliC,GAASuD,EAAAA,EAAAA,KAAqBC,EAAAA,GAAAA,GAAeF,IAC/C,GAEN,GAAG,CAAC6C,GAAYk5B,EAAer/B,EAAUiH,EAAe8xB,KAIxDn4B,EAAAA,EAAAA,YAAU,WACe,KAAnBsW,GACFnU,GAAAA,EAAIwT,QACD8rB,yBAAyBnrB,GACzBhU,MAAK,SAACC,GACLnD,GAASsiC,EAAAA,EAAAA,IAAmBn/B,EAAIwnB,MAClC,IACCtnB,OAAM,WACLrD,GAASsiC,EAAAA,EAAAA,IAAmB,MAC9B,GAEN,GAAG,CAACprB,EAAgBlX,IAEpB,IAUMuiC,GAAqB,SAACzgC,GAC1B,GACQ,OAANA,QACMqC,IAANrC,GACmB,OAAnBA,EAAEC,OAAOygC,YACUr+B,IAAnBrC,EAAEC,OAAOygC,MAJX,CAQA1gC,EAAE8T,iBAGF,IAFA,IAAI6sB,EAAmB,GAEd7B,EAAI,EAAGA,EAAI9+B,EAAEC,OAAOygC,MAAMt+B,OAAQ08B,IACzC6B,EAAS3M,KAAKh0B,EAAEC,OAAOygC,MAAM5B,IAE/B8B,GAAaD,EAAU,IAEvB3gC,EAAEC,OAAOP,MAAQ,EATjB,CAUF,EAEMkhC,IAAef,EAAAA,EAAAA,cACnB,SAACa,EAAeG,GACd,IAAIC,EAAa,GACb7D,IACF6D,EAAa7D,EAAWrmB,SAAS,KAAOqmB,EAAaA,EAAa,MAGrD,SACbyD,EACAr8B,EACA4B,EACA46B,GAEA,IAAIE,EAAgB,SAAChgB,GACnB,OAAO,IAAIigB,SAAQ,SAACC,EAASC,GAC3B,IAAIC,EAAS,kBAAA19B,OAAqBY,EAAU,mBACtCqU,EAAWqI,EAAKlhB,KAEhBuhC,EAAW,IAAIC,KAAK,CAACtgB,GAAO,CAAElgB,KAAMkgB,EAAKlgB,OAE3Ci/B,EAAc,GAEZwB,EAAWpqB,IAAI6J,EAAM,OAAQ,IAC7BwgB,EAAyBrqB,IAAI6J,EAAM,qBAAsB,IAE3DygB,EAAqBX,EACnB3d,GAAKC,EAAAA,GAAAA,IAAO,GAUlB,GAPiB,KAAbme,EACFE,EAAqBF,EACe,KAA3BC,IAETC,EAAqBD,GAGV,KAATt7B,GAAsC,KAAvBu7B,EAA2B,CAC5C,IAAMC,EAAkBD,EACrBx7B,MAAM,KACNa,MAAM,GAAI,GACVC,KAAK,KAEF46B,EAAYz7B,EAAK2Q,SAAS,KAAO3Q,EAAKY,MAAM,GAAI,GAAKZ,EAE3D65B,GAAc94B,EAAAA,EAAAA,IAAgB,GAADvD,OACxBi+B,GAASj+B,OACTi+B,EAAU9qB,SAAS,MACA,KAApB6qB,GACCA,EAAgBE,WAAW,KAExB,GADA,KACEl+B,OACLg+B,GAAeh+B,QACfg+B,EAAgB7qB,SAAS,MACE,KAA3B6qB,EAAgBzgC,SAAkBiF,EAAK2Q,SAAS,KAC7C,IACA,IAGV,CAEoB,KAAhBkpB,IACFqB,EAAS,GAAA19B,OAAM09B,EAAS,YAAA19B,OAAWq8B,IAGrC,IAAM8B,GAAW56B,EAAAA,EAAAA,IAAgB,GAADvD,OAC3BY,EAAU,KAAAZ,OAAIq8B,EAAW,KAAAr8B,QAAI,IAAIqJ,MAAO8V,UAAS,KAAAnf,OAAIof,KAAKC,WAG3D+e,EAAM,IAAIC,eACdD,EAAIr3B,KAAK,OAAQ22B,GAAW,GACxBh8B,GACF08B,EAAIE,iBAAiB,cAAe,KAItC,IAAMC,EAAmBtB,EAAMt+B,OAAS,EACpCwf,EAAY,6CAAAne,OACdu+B,EAAmB,IAAM,GAAE,KAGvBC,EAAqB,CACzB,IAAK,+BAGPJ,EAAIK,iBAAkB,EACtBL,EAAIM,OAAS,SAAU/3B,GAErB,GAAIy3B,EAAIn6B,QAAU,KAAOm6B,EAAIn6B,OAAS,IACpCxJ,GAASulB,EAAAA,EAAAA,IAAeme,IACxBX,EAAQ,CAAEv5B,OAAQm6B,EAAIn6B,UAEtB06B,EAAAA,GAAAA,IAAYlf,OACP,CAEL,GAAI+e,EAAcJ,EAAIn6B,QACpBka,EAAeqgB,EAAcJ,EAAIn6B,aAC5B,GAAIm6B,EAAIQ,SACb,IACE,IAAM7gC,EAAM8gC,KAAKtzB,MAAM6yB,EAAIQ,UAC3BzgB,EAAepgB,EAAI2+B,eACrB,CAAE,MAAOngC,GACP4hB,EAAe,sBACjB,CAGF1jB,GACEylB,EAAAA,EAAAA,IAAW,CACTH,WAAYoe,EACZle,IAAK9B,KAGTsf,EAAO,CAAEx5B,OAAQm6B,EAAIn6B,OAAQma,QAASD,KAEtCwgB,EAAAA,GAAAA,IAAYlf,EACd,CACF,EAEA2e,EAAIU,OAAOC,iBAAiB,SAAS,SAACp4B,GACpC82B,EAAOtf,GACP1jB,GACEylB,EAAAA,EAAAA,IAAW,CACTH,WAAYoe,EACZle,IAAK,8BAIX,IAEAme,EAAIU,OAAOC,iBAAiB,YAAY,SAACp4B,GACvC,IAAMkZ,EAAWT,KAAK4f,MAAsB,IAAfr4B,EAAMs4B,OAAgBt4B,EAAMu4B,OAEzDzkC,GACEqlB,EAAAA,EAAAA,IAAe,CACbC,WAAYoe,EACZte,SAAUA,IAGhB,IAEAue,EAAIe,QAAU,WACZ1B,EAAOtf,GACP1jB,GACEylB,EAAAA,EAAAA,IAAW,CACTH,WAAYoe,EACZle,IAAK,8BAIX,EACAme,EAAIgB,UAAY,WACO,IAAjBnC,EAAMt+B,QACRlE,GAASu7B,EAAAA,EAAAA,KAAkB,GAE/B,EACAoI,EAAIiB,QAAU,WACZ5kC,GAAS0lB,EAAAA,EAAAA,IAAmBge,GAC9B,EAEA,IAAMmB,EAAW,IAAIC,cACH3gC,IAAd0e,EAAKxC,OACPwkB,EAASE,OAAOliB,EAAKxC,KAAK3W,WAAYw5B,EAAU1oB,IAChDmL,EAAAA,GAAAA,IAAyBX,EAAI2e,GAC7B3jC,GACE4lB,EAAAA,EAAAA,IAAa,CACXZ,GAAAA,EACA7e,WAAAA,EACA2W,MAAM,EACNwI,WAAYoe,EACZ7d,WAAY,EACZvlB,OAAO,GAADiF,QAAKkT,EAAAA,EAAAA,IAAgBmpB,IAAYr8B,OAAGiV,GAC1C7X,KAAM,SACNmjB,gBAAgB,EAChBC,QAAQ,EACRC,WAAW,EACXtC,aAAc,OAGlBshB,EAAAA,GAAAA,IAAoBhgB,EAAI6f,GAE5B,GACF,EAEMI,EAA0B,GAEhCjlC,GAASklC,EAAAA,EAAAA,OACT,IAAK,IAAItE,EAAI,EAAGA,EAAI4B,EAAMt+B,OAAQ08B,IAAK,CACrC,IAAM/d,EAAO2f,EAAM5B,GACnBqE,EAAmBnP,KAAK+M,EAAchgB,GACxC,CACAigB,QAAQqC,WAAWF,GAAoB/hC,MAAK,SAACkiC,GAC3C,IAAMC,EAASD,EAAQzgC,QACrB,SAAC+lB,GAAM,MAAuB,aAAlBA,EAAOlhB,MAAqB,IAE1C,GAAI67B,EAAOnhC,OAAS,EAAG,CACrB,IAAMohC,EAAaL,EAAmB/gC,OAChCqhC,EACJN,EAAmB/gC,OAASmhC,EAAOnhC,OAC/BZ,EAA4B,CAChCogB,aAAc,4CACdlM,cAAc,kBAADjS,OAAoBggC,EAAoB,KAAAhgC,OAAI+/B,IAE3DtlC,GAASuD,EAAAA,EAAAA,IAAqBD,GAChC,CAEAtD,GAASu7B,EAAAA,EAAAA,KAAkB,IAC3Bv7B,GAASi6B,EAAAA,EAAAA,IAAmB,IAC9B,GACF,CAEAoK,CAAO7B,EAAOr8B,GAAYy8B,EAAYD,EACxC,GACA,CAACx8B,GAAYnG,EAAU++B,EAAY93B,IAG/Bu+B,IAAS7D,EAAAA,EAAAA,cACb,SAAC8D,GACC,GAAIA,GAAiBA,EAAcvhC,OAAS,GAAKo9B,GAAW,CAC1D,IAYyBoE,EAmBlBC,EA/BHC,EAAwBH,EAAc,GAAG19B,KAEzC89B,EAAe,GAUnB,IAREA,EADE7E,GAAsB98B,OAAS,EAClBuhC,EAAc9gC,QAAO,SAACke,GACnC,IAAMijB,EAAWpiC,EAAgBmf,EAAKlhB,MACtC,OAAOq/B,GAAsBt8B,SAASohC,EACxC,IAEeL,GAGAvhC,OACfw+B,GAAamD,EAAcD,IAC3BF,EAAAj+B,SAAQs+B,IAAGtjB,MAAAijB,EAAA,IAAAngC,OACNsgC,EAAa3hC,OAAM,oCAAAqB,OAAmCkgC,EAAcvhC,OAAM,KAC7E68B,IAAsBx7B,QAAA8C,EAAAA,EAAAA,GACnBH,MAGD29B,EAAa3hC,SAAWuhC,EAAcvhC,QACxClE,GACEuD,EAAAA,EAAAA,IAAqB,CACnBmgB,aAAc,wBACdlM,eAAe1M,EAAAA,EAAAA,IACb,CAACxD,EAAAA,GAAWC,cAAeD,EAAAA,GAAWE,gBACtC,2CAMRxH,GACEuD,EAAAA,EAAAA,IAAqB,CACnBmgB,aAAc,mCACdlM,eAAe1M,EAAAA,EAAAA,IACb,CAACxD,EAAAA,GAAWC,cAAeD,EAAAA,GAAWE,gBACtC,uCAKNm+B,EAAAl+B,SAAQkP,MAAK8L,MAAAkjB,EAAA,CACX,8DACA5E,IAAsBx7B,QAAA8C,EAAAA,EAAAA,GACnBH,KAGT,CACKo5B,IACHthC,GACEuD,EAAAA,EAAAA,IAAqB,CACnBmgB,aAAc,qBACdlM,eAAe1M,EAAAA,EAAAA,IACb,CAACxD,EAAAA,GAAWC,cAAeD,EAAAA,GAAWE,gBACtC,qCAKV,GAEA,CAACk7B,KAGHsD,IACEC,EAAAA,EAAAA,IAAY,CACVC,SAAS,EACTV,OAAAA,KAHIW,GAAYH,GAAZG,aAAcC,GAAaJ,GAAbI,cAAeC,GAAYL,GAAZK,aAAcC,GAAYN,GAAZM,aAM7CC,IAAYC,EAAAA,EAAAA,UAChB,kBAAAzgC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAD,EACKs4B,IACCgI,GAAe9H,GAAiB,CAAC,GACjC+H,GAAe9H,GAAiB,CAAC,EAAC,GAExC,CAAC6H,GAAcC,KAiBXhf,GAAe,SAACmf,GAGpB,GAFAzmC,GAASo6B,EAAAA,EAAAA,IAAsB,OAC/Bp6B,GAASuJ,EAAAA,EAAAA,IAAuB,CAAEC,QAAQ,KACtCqvB,GAAyC,OAA1BiG,EAAgC,CAGjD,IACM4H,GADcjuB,EAAAA,EAAAA,IAAgBrS,IACN0B,MAAM,KAGpC4+B,EAAU1nB,MAEV,IAAI2nB,EAAU,GAEVD,GAAaA,EAAUxiC,OAAS,IAClCyiC,EAAO,GAAAphC,OAAMmhC,EAAU99B,KAAK,KAAI,MAGlCrC,EAAS,YAADhB,OAAaY,GAAU,KAAAZ,QAAIuD,EAAAA,EAAAA,IAAgB69B,IACrD,CAEA3mC,GAASk6B,EAAAA,EAAAA,KAAqB,IAC9Bl6B,GAASi6B,EAAAA,EAAAA,IAAmB,KAExBwM,GACFzmC,GAASu7B,EAAAA,EAAAA,KAAkB,GAE/B,EAgBIqL,GAAchV,EAAAA,GAASC,MAEb,OAAV0N,QAAU,IAAVA,GAAAA,EAAYsH,gBACdD,GAAchV,EAAAA,GAASE,QAAQyN,EAAWsH,gBAG5C,IAAMna,GAAqB,CACzB,CACEC,OAAQ,WACN3sB,EAAS87B,GAAiB31B,IAC5B,EACA1E,MAAO,WACPU,UAAWk/B,IAA2C,KAAb,OAAfhI,SAAe,IAAfA,QAAe,EAAfA,GAAiBn1B,QAC3CkG,MAAMvJ,EAAAA,EAAAA,KAAC+rB,EAAAA,IAAY,IACnB5qB,QAASq/B,GACL,qBACAv2B,EAAAA,EAAAA,IACE,CAACxD,EAAAA,GAAW+kB,cAAe/kB,EAAAA,GAAWoY,gBACtC,sCAGR,CACEiN,OAAQ,WACN3sB,EAAS68B,KACX,EACAp7B,MAAO,QACPU,SAAqC,IAA3Bk3B,GAAgBn1B,SAAiB67B,GAC3C31B,MAAMvJ,EAAAA,EAAAA,KAACgsB,EAAAA,IAAS,IAChB7qB,QAAS+9B,GAAe,sBAAwB,uBAElD,CACEpT,OAAQ,WACN3sB,EAASu8B,KACX,EACA96B,MAAO,UACPU,SAAqC,IAA3Bk3B,GAAgBn1B,SAAiB+7B,GAC3C71B,MAAMvJ,EAAAA,EAAAA,KAACisB,EAAAA,IAAW,IAClB9qB,QAASi+B,GAAiB,wBAA0B,uBAEtD,CACEtT,OAAQ,WACN3sB,EAASk9B,KACX,EACAz7B,MAAO,mBACPU,SAC6B,IAA3Bk3B,GAAgBn1B,SACfm1B,GAAgB,GAAG3gB,SAAS,OAC5B6oB,GACHn3B,MAAMvJ,EAAAA,EAAAA,KAACimC,EAAAA,IAAc,IACrB9kC,QAC6B,IAA3Bq3B,GAAgBn1B,QAAgBm1B,GAAgB,GAAG3gB,SAAS,KACxD,sCACA,gCAER,CACEiU,OAAQ,WACN+S,IAAsB,EACxB,EACAj+B,MAAO,SACP2I,MAAMvJ,EAAAA,EAAAA,KAACytB,EAAAA,IAAU,IACjBnsB,UAAWmqB,IAAwC,IAA3B+M,GAAgBn1B,OACxClC,QAASsqB,GACL,yBACAxhB,EAAAA,EAAAA,IACE,CAACxD,EAAAA,GAAWilB,kBACZ,mCAKV,OACEprB,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,CACNsmB,GAAsB2X,IACrBt+B,EAAAA,EAAAA,KAACssB,GAAS,CACR7gB,KAAMkb,EACN/T,qBApIgB,WACtBzT,GAASynB,EAAAA,EAAAA,KAAsB,IAC/BznB,GAAS08B,EAAAA,EAAAA,IAAmB,MAC9B,EAkIQv2B,WAAYA,GACZinB,WAAY,CACVzrB,KAAMw9B,EAAgBx9B,KACtBmlB,cAAe,GACfzQ,WAAY8oB,EAAgB9oB,cAIjCopB,IACC5+B,EAAAA,EAAAA,KAAC+8B,GAAqB,CACpB3mB,WAAYwoB,EACZvoB,eAAgB/Q,GAChBkzB,gBAAiBA,GACjBriB,2BAzdmC,SAAC+vB,GAC1CrH,IAAsB,GAElBqH,IACF/mC,GAASoD,EAAAA,EAAAA,IAAmB,kCAC5BpD,GAASi6B,EAAAA,EAAAA,IAAmB,KAC5Bj6B,GAASu7B,EAAAA,EAAAA,KAAkB,IAE/B,EAkdQyL,WAAYhI,IAGfW,KACC9+B,EAAAA,EAAAA,KAACg9B,GAAY,CACXvxB,KAAMqzB,GACNlsB,qBApJiB,WACvBmsB,IAAgB,EAClB,EAmJQz5B,WAAYA,KAGfijB,IACCvoB,EAAAA,EAAAA,KAACgtB,GAAgB,CACfvhB,KAAM8c,EACNjjB,WAAYA,GACZoe,OAAQ4a,EACRpR,eAzJmB,WACzB/tB,GAASqpB,EAAAA,EAAAA,KAAe,IACxBrpB,GAAS08B,EAAAA,EAAAA,IAAmB,MAC9B,MAyJOwC,IACDr+B,EAAAA,EAAAA,KAACstB,GAAkB,CACjB7hB,OAAQ4yB,EACRhZ,WAvHiB,WACvBlmB,GAASo8B,EAAAA,EAAAA,IAAuB,MAClC,EAsHQrd,aAAgD,QAAnC0f,EAAAS,EAAoBv9B,KAAKmG,MAAM,YAAI,IAAA22B,OAAA,EAAnCA,EAAqCzf,QAAS,GAC3D7Y,WAAYA,GACZC,cAAeA,GACfyS,WAAY,CACVlX,KAAMu9B,EAAoBv9B,KAC1BmlB,cAAe,GACfzQ,WAAY6oB,EAAoB7oB,WAChCgK,KAAM6e,EAAoB7e,QAI/B+e,IACCv+B,EAAAA,EAAAA,KAAComC,GAAAA,QAAa,CACZpnC,QAjImB,WACzBG,GAASu9B,EAAAA,EAAAA,KAAuB,GAClC,EAgIQz9B,OAAQqG,GACRvG,UAAWw/B,EACXr/B,eAAc,GAAAwF,OAAK8zB,GAAgB,GAAE,QAIzCl4B,EAAAA,EAAAA,MAAC+lC,EAAAA,IAAU,CAACtkC,QAAS,OAAO1B,SAAA,CACzB+F,IACCpG,EAAAA,EAAAA,KAAA,OAAKoI,MAAO,CAAEoK,cAAe,IAAKnS,UAChCL,EAAAA,EAAAA,KAACsmC,GAAe,OAGpBtmC,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQ+sB,qBAAqBtyB,UACzDL,EAAAA,EAAAA,KAACy1B,EAAAA,IAAW,CACVlsB,MACEvJ,EAAAA,EAAAA,KAAA,QAAAK,UACEL,EAAAA,EAAAA,KAACumC,EAAAA,IAAW,CAACn+B,MAAO,CAAEqB,MAAO,QAGjCvJ,MAAOoF,GACPqwB,SACGvvB,EAyCG,MAxCF9F,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPC,EAAAA,EAAAA,MAAA,QAAM6H,UAAWvC,EAAQgwB,cAAcv1B,SAAA,CAAC,uBAEtCL,EAAAA,EAAAA,KAAA,UAAAK,SACa,OAAVq+B,QAAU,IAAVA,GAAAA,EAAYsH,cACTD,GAAYpU,SACV,oCAEF,SAGRrxB,EAAAA,EAAAA,MAAA,QAAM6H,UAAWvC,EAAQgwB,cAAcv1B,SAAA,CAAC,uBAEtCL,EAAAA,EAAAA,KAAA,UAAAK,UAAmB,OAAVq+B,QAAU,IAAVA,OAAU,EAAVA,EAAYt8B,SAAU,QAEhCs8B,IACC1+B,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UACPC,EAAAA,EAAAA,MAAA,QAAM6H,UAAWvC,EAAQgwB,cAAcv1B,SAAA,CACpCq+B,EAAWlf,OACVxf,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UAAE4tB,EAAAA,EAAAA,IAAayQ,EAAWlf,QAEpCkf,EAAWlf,MAAQ8f,KAClBh/B,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,CACN,IAAI,MACF4tB,EAAAA,EAAAA,IAAaqR,GAAMA,OAAS,MAGlCZ,EAAWlf,MAAQkf,EAAW3U,QAAU,MAAQ,GAChD2U,EAAW3U,UACVzpB,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,CACNq+B,EAAW3U,QAAQ,aACnB2U,EAAW3U,SAAkC,IAAvB2U,EAAW3U,QAC9B,IACA,cASpB8L,SACEv1B,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACL+F,IACApG,EAAAA,EAAAA,KAACoL,EAAAA,EAAc,CAACjK,QAAS,gBAAgBd,UACvCL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,sBACJD,MAAO,SACP2I,MACEvJ,EAAAA,EAAAA,KAACwmC,EAAAA,EAAK,CACJC,aAAa,IACb58B,MAAM,YACN9H,QAAQ,MACR2kC,WAAY7gC,EACZsC,UAAWvC,EAAQq3B,aACnBv7B,GAAI,CAAEgI,OAAQ,IAAKrJ,UAEnBL,EAAAA,EAAAA,KAAC2mC,EAAAA,IAAW,CACVv+B,MAAO,CACL2E,SAAU,GACV6M,UAAW,GACXnQ,MAAO,GACPC,OAAQ,GACRE,WAAY,OAKpB7H,QAAS,UACTC,QAAS,WACP+8B,IAAgB,EAClB,EACAz9B,UACGo+B,MACAn4B,EAAAA,EAAAA,GAAcjC,GAAY,CACzBmB,EAAAA,GAAW+kB,cACX/kB,EAAAA,GAAWoY,sBAMrB7e,EAAAA,EAAAA,KAACoL,EAAAA,EAAc,CAACjK,QAAS,cAAcd,UACrCL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,uBACJD,MAAO,UACP2I,MAAMvJ,EAAAA,EAAAA,KAAC4mC,EAAAA,IAAW,IAClB7kC,QAAS,UACTC,QAAS,WACHkE,EACF/G,GAASytB,EAAAA,EAAAA,KAAmB,KAE5BztB,GAAS0nC,EAAAA,EAAAA,OACT1nC,GAAS2nC,EAAAA,EAAAA,KAAkB,IAC3B3nC,GAASu7B,EAAAA,EAAAA,KAAkB,IAE/B,EACAp5B,UACE8E,MAEKmB,EAAAA,EAAAA,GAAcjC,GAAY,CACzBmB,EAAAA,GAAWkyB,eACXlyB,EAAAA,GAAWmyB,sBACP/yB,QAIhB7F,EAAAA,EAAAA,KAAA,SACE8B,KAAK,OACLilC,UAAQ,EACRC,OACE7G,SAAgD78B,EAElDtC,SAAU0gC,GACVt5B,MAAO,CAAE6J,QAAS,QAClB5D,IAAK2xB,MAEPhgC,EAAAA,EAAAA,KAAA,SACE8B,KAAK,OACLilC,UAAQ,EACR/lC,SAAU0gC,GACVt5B,MAAO,CAAE6J,QAAS,QAClB5D,IAAK4xB,MAEPjgC,EAAAA,EAAAA,KAACinC,EAAiB,CAChB3hC,WAAYA,GACZpC,WAAYg9B,GACZ11B,mBAAoB,SAAC08B,GACflH,IAAcA,GAAWvrB,SAC3BurB,GAAWvrB,QAAQ0yB,QAErBD,GACF,EACAz8B,qBAAsB,SAACy8B,GACjBjH,IAAgBA,GAAaxrB,SAC/BwrB,GAAaxrB,QAAQ0yB,QAEvBD,GACF,OAINjR,cAAc,OAGlB31B,EAAAA,EAAAA,MAAA,OAAA4E,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACErE,GAAG,uBACCykC,GAAa,CAAEl9B,OAAKlD,EAAAA,EAAAA,GAAA,GAAOwgC,OAAc,IAAArlC,SAAA,EAE7CL,EAAAA,EAAAA,KAAA,SAAAkF,EAAAA,EAAAA,GAAA,GAAWqgC,QACXjlC,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CACHC,MAAI,EACJC,GAAI,GACJ0G,UAAWvC,EAAQwhC,WACnB1lC,GAAI,CAAEoI,OAAQ,oBAAqBu9B,UAAW,GAAIhnC,SAAA,CAEjD6F,GACClG,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,SACoB,OAA1B49B,IACCj+B,EAAAA,EAAAA,KAACsnC,GAAiB,CAChB/hC,cAAe04B,EACf34B,WAAYA,QAKlBtF,EAAAA,EAAAA,KAAC2e,EAAAA,EAAe,CACdxb,OAAQ,CACNsD,EAAAA,GAAWkyB,eACXlyB,EAAAA,GAAWmyB,oBAEb9Z,SAAUxZ,GACV6Z,WAAY,CAAE7d,UAAU,GAAOjB,UAE/BC,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CACHC,MAAI,EACJC,GAAI,GACJ0G,UAAS,GAAAzD,OAAKkB,EAAQy3B,cAAa,KAAA34B,OACjCszB,EAAc,cAAgB,GAAE,KAC9B33B,SAAA,EAEF+F,IACApG,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQw3B,qBAAqB/8B,UACzDL,EAAAA,EAAAA,KAACw1B,EAAkB,CACjBlwB,WAAYA,GACZC,cAAes6B,GACfp6B,mBACGi6B,IAAuB75B,EAAgB,MACtC7F,EAAAA,EAAAA,KAAA,OAAAK,UACEL,EAAAA,EAAAA,KAACmxB,GAAAA,EAAe,CACdrwB,KAAM,kBACND,GAAI,qBACJF,MAAO,aACPC,MAAO,uBACPI,SArWL,WACvB7B,GAAS0nC,EAAAA,EAAAA,OACT1nC,GAASooC,EAAAA,EAAAA,KAAuBvJ,IAChCvX,IAAa,EACf,EAkW8B3U,QAASksB,EACTwJ,qBAAsB5hC,EAAQu3B,WAC9Bh1B,UAAWvC,EAAQ6hC,oBACnBlW,aAAW,MAKnB/rB,gBAAgB,OAItBxF,EAAAA,EAAAA,KAAC0nC,GAAgB,CAACniC,cAAe04B,UAIrC73B,IACApG,EAAAA,EAAAA,KAAC2e,EAAAA,EAAe,CACdxb,OAAQ,CACNsD,EAAAA,GAAWkyB,eACXlyB,EAAAA,GAAWmyB,oBAEb9Z,SAAUxZ,GACV6Z,WAAY,CAAE7d,UAAU,GAAOjB,UAE/BC,EAAAA,EAAAA,MAACqnC,EAAgB,CACfl8B,KAAMusB,EACN/qB,WAAY,WACVwZ,IAAa,EACf,EACAte,UAAS,GAAAzD,OAAKwB,EAAeN,EAAQ03B,gBAAkB,IAAKj9B,SAAA,CAE3Dm4B,GAAgBn1B,OAAS,IACxBrD,EAAAA,EAAAA,KAACutB,EAAAA,GAAW,CACVC,MAAO3B,GACP3rB,MAAO,sBAGgB,OAA1B+9B,IACCj+B,EAAAA,EAAAA,KAAC4nC,GAAiB,CAChBriC,cAAe04B,EACf34B,WAAYA,GACZmhB,aAAcA,GACdnQ,eAAgB6nB,EAChB3X,QAAS4X,qBAW/B,E,uEC3lCA,GApJiB,SAAHt/B,GAAmC,IAA7BwG,EAAUxG,EAAVwG,WACZnG,GAAWC,EAAAA,EAAAA,MACX+4B,GAAWryB,EAAAA,EAAAA,IAAYsyB,GAAAA,IAEvBlyB,GAAeJ,EAAAA,EAAAA,KACnB,SAACC,GAAe,OAAKA,EAAMC,cAAcE,YAAY,IAEjDC,GAAgBL,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMC,cAAcG,aAAa,IAElD4sB,GAAiBjtB,EAAAA,EAAAA,KACrB,SAACC,GAAe,OAAKA,EAAMC,cAAc+sB,cAAc,IAGnDsF,IAAmB,OAARF,QAAQ,IAARA,IAAAA,EAAUt0B,SAAS,wBAE9B6B,GAAWC,EAAAA,EAAAA,MAEXkiC,GAAyBtgC,EAAAA,GAAAA,GAAcjC,EAAY,CACvDmB,EAAAA,GAAWk6B,qBACXl6B,EAAAA,GAAWm6B,qBACXn6B,EAAAA,GAAW2kB,yBACX3kB,EAAAA,GAAW4kB,yBACX5kB,EAAAA,GAAWqhC,uCACXrhC,EAAAA,GAAWshC,uCACXthC,EAAAA,GAAWuhC,iBACXvhC,EAAAA,GAAWwhC,4BACXxhC,EAAAA,GAAWyhC,4BACXzhC,EAAAA,GAAW0hC,iCACX1hC,EAAAA,GAAW2hC,iCACX3hC,EAAAA,GAAW4hC,+BACX5hC,EAAAA,GAAW6hC,+BACX7hC,EAAAA,GAAW8hC,uBACX9hC,EAAAA,GAAW+hC,uBACX/hC,EAAAA,GAAWgiC,sBACXhiC,EAAAA,GAAWiiC,sBACXjiC,EAAAA,GAAWkiC,wBACXliC,EAAAA,GAAWmiC,4BACXniC,EAAAA,GAAWoiC,wBACXpiC,EAAAA,GAAWoY,eACXpY,EAAAA,GAAWE,iBAGPmiC,GACJ9oC,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,SACL6F,GASAlG,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UACPL,EAAAA,EAAAA,KAAC68B,GAAAA,EAAS,CACR97B,YAAW,sCAAA2D,OAAwCyB,GACnDnF,SAAU,SAACL,GACTxB,GAAS4pC,EAAAA,EAAAA,IAAkBpoC,GAC7B,EACAA,MAAOoyB,OAdX/yB,EAAAA,EAAAA,KAAC2e,EAAAA,EAAe,CACdxb,OAAQ,CAACsD,EAAAA,GAAWkyB,eAAgBlyB,EAAAA,GAAWmyB,oBAC/C9Z,SAAUxZ,EACV6Z,WAAY,CAAE7d,UAAU,GAAOjB,UAE/BL,EAAAA,EAAAA,KAACsmC,GAAe,QAqBxB,OALAvmC,EAAAA,EAAAA,YAAU,WACRZ,GAAS6pC,EAAAA,EAAAA,IAAY,kBAEvB,GAAG,KAGDhpC,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,SACLg4B,GAgDA/3B,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CACH+P,WAAS,EACT5P,GAAI,CACF4L,QAAS,eACTjN,SAAA,EAEFL,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAAAlB,UACHL,EAAAA,EAAAA,KAACipC,GAAAA,EAAa,CAACl/B,YAAa,GAAIH,UAAW,QAE7CtJ,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CACHC,MAAI,EACJC,IAAE,EACFC,GAAI,CACFuQ,QAAS,OACTC,IAAK,IACL7R,SAAA,CAEDyoC,GACD9oC,EAAAA,EAAAA,KAACkpC,GAAAA,EAAmB,WAjExBlpC,EAAAA,EAAAA,KAACmpC,GAAAA,EAAiB,CAChBvoC,OACEZ,EAAAA,EAAAA,KAACopC,EAAAA,IAAQ,CACPxoC,MAAO,iBACPoB,QAAS,WACP0D,EAAS2jC,EAAAA,GAAUC,oBACrB,IAGJzT,SACEv1B,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPL,EAAAA,EAAAA,KAAC2e,EAAAA,EAAe,CACdxb,OAAQomC,EAAAA,EAAgBC,EAAAA,GAAUC,cAClC3qB,SAAUxZ,EACV6Z,WAAY,CAAE7d,UAAU,GAAOjB,UAE/BL,EAAAA,EAAAA,KAACoL,EAAAA,EAAc,CACbjK,QACE0mC,EACI,mBACA,yHACA2B,EAAAA,GAAUC,aACV,eACLppC,UAEDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,wBACJgJ,MAAM,UACN,aAAW,mBACX7H,QAAS,kBAAM0D,EAAS,YAADhB,OAAaY,EAAU,UAAS,EACvDiE,MACEvJ,EAAAA,EAAAA,KAAC0pC,EAAAA,IAAY,CACXthC,MAAO,CAAEqB,MAAO,GAAIC,OAAQ,GAAIE,WAAY,KAGhDxB,MAAO,CACLkF,QAAS,iBAKjBtN,EAAAA,EAAAA,KAAC2pC,GAAAA,EAAQ,OAGbC,gBAAiBd,KA2B3B,E9B7HIe,GAA2B,EAC3BC,GAAuB,EACvBC,IAAsB,EAEpBC,GAAmB,SAAnBA,EACJC,EACAC,EACAC,GAEA,IAAIJ,GAAJ,CAGAA,IAAa,EACb,IAAM9oB,EAAM,IAAImpB,IAAIC,OAAOxM,SAASh1B,YAE9ByhC,EAAwBrpB,EAAIqpB,KAI5BC,EADe,IAAIH,IAAII,SAASC,SACT7K,SAEvB8K,GAASC,EAAAA,GAAAA,IAAW1pB,EAAI2pB,WAE9BhoC,EAAY,IAAIioC,UAAU,GAADnmC,OACpBgmC,EAAM,OAAAhmC,OAAMuc,EAAI6pB,SAAQ,KAAApmC,OAAI4lC,GAAI5lC,OAAG6lC,EAAO,sBAGrCQ,OAAS,WACjBhB,IAAa,EACTE,GACFA,IAEFH,GAAe,CACjB,EAEII,IACFtnC,EAAUooC,UAAYd,GAGxB,IAAMe,EAAc,WACdnB,IAAgB,GAClBE,GAAiB,WAAO,GAAGE,EAAmBC,GAC9CL,IAAgB,IAEhBljC,QAAQkP,MACN,qKAEEq0B,GACFA,EACE,4FAIR,EAEAvnC,EAAUsoC,QAAU,WAClBnB,IAAa,EACbnjC,QAAQukC,KAAK,sDAGbC,WAAWH,EAAa,IAC1B,EAEAroC,EAAUihC,QAAU,WAClBkG,IAAa,EACbnjC,QAAQkP,MAAM,4DAEhB,CAxDA,CAyDF,EA8XA,IAAe1L,EAAAA,EAAAA,IAxcA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,GAAC,CAAC,EACTkgB,EAAAA,IACF,GAqcL,EA5XuB,WACrB,IAAMjmB,GAAWC,EAAAA,EAAAA,MACXs4B,GAASC,EAAAA,EAAAA,MACTkG,GAAWC,EAAAA,EAAAA,MAEXuN,GAAoBvlC,EAAAA,EAAAA,KACxB,SAACC,GAAe,OAAKA,EAAMC,cAAcqlC,iBAAiB,IAGtDxlC,GAAgBC,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMC,cAAcC,OAAOJ,aAAa,IAEzDylC,GAAaxlC,EAAAA,EAAAA,KACjB,SAACC,GAAe,OAAKA,EAAMC,cAAcC,OAAOslC,YAAY,IAExDvN,GAAcl4B,EAAAA,EAAAA,KAClB,SAACC,GAAe,OAAKA,EAAMC,cAAcg4B,WAAW,IAEhDwN,GAAiB1lC,EAAAA,EAAAA,KACrB,SAACC,GAAe,OAAKA,EAAMa,QAAQC,QAAQ2kC,cAAc,IAErDtT,GAAiBpyB,EAAAA,EAAAA,KACrB,SAACC,GAAe,OAAKA,EAAMC,cAAckyB,cAAc,IAEnDuT,GAAiB3lC,EAAAA,EAAAA,KACrB,SAACC,GAAe,OAAKA,EAAMC,cAAcylC,cAAc,IAEnDC,GAAc5lC,EAAAA,EAAAA,KAClB,SAACC,GAAe,OAAKA,EAAMC,cAAc0lC,WAAW,IAEhDzN,GAAwBn4B,EAAAA,EAAAA,KAC5B,SAACC,GAAe,OAAKA,EAAMC,cAAci4B,qBAAqB,IAE1DC,GAAap4B,EAAAA,EAAAA,KACjB,SAACC,GAAe,OAAKA,EAAMC,cAAck4B,UAAU,IAE/CyN,GAAc7lC,EAAAA,EAAAA,KAClB,SAACC,GAAe,OAAKA,EAAMC,cAAc4lC,qBAAqB,IAE1DxlC,GAAgBN,EAAAA,EAAAA,KACpB,SAACC,GAAe,OAAKA,EAAMM,OAAOD,aAAa,IAG3Cd,EAAaoyB,EAAOpyB,YAAc,GAClCq6B,EAAc9B,EAAS+B,SAAS34B,MAAM,YAADvC,OAAaY,EAAU,MAC5DC,EAAuC,IAAvBo6B,EAAYt8B,OAAes8B,EAAY,GAAK,GAG5DkM,GAAoB/K,EAAAA,EAAAA,cACxB,SAAChe,GAEC3jB,GAASu7B,EAAAA,EAAAA,KAAkB,IAE3B,IAAM4I,EAA8BC,KAAKtzB,MAAM6S,EAAQgH,KAAKjhB,YAC5D,GAAIghC,KAAqBvG,EAASwI,WAAY,CAE5C,GAAIxI,EAASwI,aAAejC,GAC1B,OAGF,GAEE,kEADAvG,EAASxtB,MAITu0B,OAAOxM,SAAS9Q,cACX,GAAuB,mBAAnBuW,EAASxtB,MAA4B,CAC9C,IAAMi2B,EAAsBzI,EAAS7jC,OACjCsiC,EAAa,GAEjB,GAAIgK,EAAqB,CACvB,IAAMC,GAAcp0B,EAAAA,EAAAA,IAAgBm0B,GAEpChK,EAAaiK,EAAYn0B,SAAS,KAC9Bm0B,EACAA,EAAc,GACpB,CAEA,IAAMC,GAAcC,EAAAA,EAAAA,IAClB5I,EAASh+B,YAAcA,EACvBy8B,EACAyJ,GAAkB,IAcpB,YAXKS,GAAsC,IAAvBA,EAAY5oC,OAQ9BlE,GAASgtC,EAAAA,EAAAA,IAAWF,IAPpB9sC,GACEuD,EAAAA,EAAAA,IAAqB,CACnBmgB,aAAcygB,EAASxtB,MACvBa,cAAe2sB,EAASxtB,SAQhC,CAGA,GAAIwtB,EAAS8I,YAGX,OAFAjtC,GAASu7B,EAAAA,EAAAA,KAAkB,SAC3Bv7B,GAAS2nC,EAAAA,EAAAA,KAAkB,IAIzBxD,EAASxZ,MACX3qB,GAASktC,EAAAA,EAAAA,IAAW/I,EAASxZ,MAEjC,CACF,GACA,CAAC3qB,EAAUqsC,EAAgBlmC,IAGvBgnC,GAAgBxL,EAAAA,EAAAA,cACpB,SAAC55B,EAAcgM,GACb,GAAItQ,GAAsC,IAAzBA,EAAU2pC,WACzB,IACE,IAAMC,EAAe3C,GAAmB,EACxC1qC,GAAS0nC,EAAAA,EAAAA,OACT1nC,GAASstC,EAAAA,EAAAA,KAAkB,IAE3B,IAAMC,EAA4B,CAChCC,YAAarnC,EACb7F,QAAQwI,EAAAA,EAAAA,IAAgBf,GACxB6M,KAAMlO,GAAiBm4B,EAAc,SAAW,UAChD9qB,KAAMA,EAAK1C,cACXs7B,WAAYU,GAGd5pC,EAAUgqC,KAAKrJ,KAAKsJ,UAAUH,IAG9B7C,GAAmB2C,CACrB,CAAE,MAAOvrC,GACP2F,QAAQkP,MAAM7U,EAChB,KACK,CAgBL+oC,IAdmB,WACjBsC,EAAcplC,EAAMgM,EACtB,GAY6B24B,GAVR,SAAC/oB,GACpB3jB,GACEuD,EAAAA,EAAAA,IAAqB,CACnBmgB,aAAcC,EACdnM,cAAemM,KAGnB3jB,GAASstC,EAAAA,EAAAA,KAAkB,GAC7B,GAGF,CACF,GACA,CAACnnC,EAAYO,EAAem4B,EAAa7+B,EAAU0sC,KAGrD9rC,EAAAA,EAAAA,YAAU,WACR,OAAO,WACL,IAAM2sC,EAA4B,CAChC34B,KAAM,SACN+3B,WAAYjC,IAGVjnC,GAAsC,IAAzBA,EAAU2pC,YACzB3pC,EAAUgqC,KAAKrJ,KAAKsJ,UAAUH,GAElC,CACF,GAAG,KAEH3sC,EAAAA,EAAAA,YAAU,WACR,IAAM+sC,GAAgBl1B,EAAAA,EAAAA,IAAgBrS,GAEtCpG,GAAS4tC,EAAAA,EAAAA,KAAqB,IAE1BD,EAAcj1B,SAAS,MAA0B,KAAlBi1B,GACjC3tC,GAASk6B,EAAAA,EAAAA,KAAqB,IAC9Bl6B,GAASo6B,EAAAA,EAAAA,IAAsB,OAC/Bp6B,GACE6tC,EAAAA,EAAAA,IAAuC,KAAlBF,EAAuB,IAAMA,IAEpD3tC,GAAS8tC,EAAAA,EAAAA,KAAkB,MAE3B9tC,GAASgrB,EAAAA,EAAAA,KAAqB,IAC9BhrB,GAASk6B,EAAAA,EAAAA,KAAqB,IAC9Bl6B,GAASytB,EAAAA,EAAAA,KAAmB,IAC5BztB,GACEo6B,EAAAA,EAAAA,IAAsB,GAAD70B,OAChBooC,EAAa,GAAApoC,QAAMuD,EAAAA,EAAAA,IAAgB6kC,IAAc,MAGxD3tC,GACE6tC,EAAAA,EAAAA,IAAqB,GAADtoC,OACfooC,EAAc7lC,MAAM,KAAKa,MAAM,GAAI,GAAGC,KAAK,KAAI,OAI1D,GAAG,CAACzC,EAAYC,EAAe+lC,EAAYzlC,EAAe1G,KAG1DY,EAAAA,EAAAA,YAAU,WACR,IAAKm4B,IAAmBwT,IAAgB7lC,IAAkB8lC,EAAa,CAErE,IAAM5X,GAAuBnc,EAAAA,EAAAA,IAAgBrS,GAE7C,IACGwuB,EAAqBlc,SAAS,MAC/BqmB,IAAenK,GACU,KAAzBA,EACA,EACA+S,EAAAA,EAAAA,KAAkB,GAClB,IAAMoG,EAAU,GAAAxoC,OAAMqvB,EACnB9sB,MAAM,KACNa,MAAM,GAAI,GACVC,KAAK,KAAI,KAEZukC,EAAcY,EAAY,IAAIn/B,KAChC,CACF,CACA5O,GAASm6B,EAAAA,EAAAA,KAAe,GAE1B,GAAG,CACDpB,EACAwT,EACAvsC,EACAoG,EACA+mC,EACAzmC,EACAq4B,IAGF,IAAMxF,GACJnxB,EAAAA,GAAAA,GAAcjC,EAAY,CACxBmB,EAAAA,GAAWkyB,eACXlyB,EAAAA,GAAWmyB,sBACPxyB,EAwIR,OArIArG,EAAAA,EAAAA,YAAU,WAER,GAAIm4B,GAAkBQ,EAAoB,CACxC,IAAIqJ,EAAa,GACjB,GAAIx8B,EAAe,CACjB,IAAMymC,GAAcp0B,EAAAA,EAAAA,IAAgBrS,GAIlCw8B,EADE9D,IAA0B14B,EAClB,GAAAb,QAAMkT,EAAAA,EAAAA,IAAgBrS,GAC7B0B,MAAM,KACNa,MAAM,GAAI,GACVC,KAAK,KAAI,KAECikC,EAAYn0B,SAAS,KAC9Bm0B,EACAA,EAAc,GAEtB,CAEA,IAAImB,EAAc,IAAIp/B,KAElBlI,GAAiBylC,IACnB6B,EAAc,IAAIp/B,KAAKu9B,IAEzBgB,EAAcvK,EAAYoL,EAC5B,MACEhuC,GAASu7B,EAAAA,EAAAA,KAAkB,GAG/B,GAAG,CACDxC,EACA3yB,EACApG,EACAmsC,EACAzlC,EACA6yB,EACA4T,KAGFvsC,EAAAA,EAAAA,YAAU,WACRZ,GAASuJ,EAAAA,EAAAA,IAAuB,CAAEC,QAAQ,IAC5C,GAAG,CAACpD,EAAepG,KAEnBY,EAAAA,EAAAA,YAAU,WACJsrC,IAAsBjlC,IACpBsyB,EACFx2B,GAAAA,EAAIwT,QACD03B,oBAAoB9nC,GACpBjD,MAAK,SAACC,GACLnD,GAASkuC,EAAAA,EAAAA,IAAe/qC,EAAIwnB,OAC5B3qB,GAAS4tC,EAAAA,EAAAA,KAAqB,GAChC,IACCvqC,OAAM,SAACC,GACNmE,QAAQkP,MACN,2CACArT,EAAIqT,MAAMsrB,iBAEZjiC,GAAS4tC,EAAAA,EAAAA,KAAqB,GAChC,KAEF5tC,GAAS4tC,EAAAA,EAAAA,KAAqB,IAC9B5tC,GAAS0nC,EAAAA,EAAAA,QAGf,GAAG,CACDvhC,EACA+lC,EACAlsC,EACAu5B,EACAtyB,KAGFrG,EAAAA,EAAAA,YAAU,WACJ0rC,IACE/S,EACFx2B,GAAAA,EAAIwT,QACD43B,6BAA6BhoC,GAC7BjD,MAAK,SAACC,GACLnD,GAASouC,EAAAA,EAAAA,IAAkBjrC,EAAIwnB,KAAK0jB,yBACpCruC,GAAS8tC,EAAAA,EAAAA,KAAkB,GAC7B,IACCzqC,OAAM,SAACC,GACNmE,QAAQkP,MACN,wCACArT,EAAIqT,MAAMsrB,iBAEZjiC,GAAS8tC,EAAAA,EAAAA,KAAkB,GAC7B,KAEF9tC,GAAS0nC,EAAAA,EAAAA,OACT1nC,GAAS8tC,EAAAA,EAAAA,KAAkB,KAGjC,GAAG,CAAC3nC,EAAYmmC,EAAgBtsC,EAAUu5B,KAE1C34B,EAAAA,EAAAA,YAAU,WAER,IAAMksC,GAAcC,EAAAA,EAAAA,IAAgB5mC,EAAY,GAAIkmC,GAAkB,IAEtE,GAAIlmC,KAAgB2mC,GAAsC,IAAvBA,EAAY5oC,QAAe,CAC5DlE,GAAS0nC,EAAAA,EAAAA,OACT1nC,GAAS2nC,EAAAA,EAAAA,KAAkB,IAC3B3nC,GAASu7B,EAAAA,EAAAA,KAAkB,IAE3B,IAAIqH,EAAa,GACjB,GAAIx8B,EAAe,CACjB,IAAMymC,GAAcp0B,EAAAA,EAAAA,IAAgBrS,GAIlCw8B,EADE9D,IAA0B14B,EAClB,GAAAb,QAAMkT,EAAAA,EAAAA,IAAgBrS,GAC7B0B,MAAM,KACNa,MAAM,GAAI,GACVC,KAAK,KAAI,KAECikC,EAAYn0B,SAAS,KAC9Bm0B,EACAA,EAAc,GAEtB,CAEAM,EAAcvK,EAAY,IAAIh0B,KAChC,CACF,GAAG,CACDzI,EACAnG,EACAmtC,EACAd,EACAjmC,EACA04B,KAIA39B,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACL+F,IAAiBpG,EAAAA,EAAAA,KAACytC,GAAQ,CAACnoC,WAAYA,KACzCtF,EAAAA,EAAAA,KAAC0tC,GAAW,MAGlB,G,gO+B/NA,GAAetjC,EAAAA,EAAAA,IAhQA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTkN,EAAAA,IACAC,EAAAA,IAAa,IAChBhB,eAAgB,CACdY,QAAS,OACTK,WAAY,SACZG,aAAc,IAEhBvB,gBAAchM,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACTkN,EAAAA,GAAWlB,gBAAc,IAC5Be,QAAS,OACTK,WAAY,SACZC,eAAgB,gBAChBC,cAAe,GACf5I,UAAW,GACX6I,aAAc,IAEhBk7B,eAAgB,CACd17B,QAAS,OACTK,WAAY,aACZC,eAAgB,aAChBL,IAAK,IAGP07B,kBAAmB,CACjB37B,QAAS,OACTK,WAAY,SACZC,eAAgB,aAChB3I,UAAW,GACXkD,WAAY,IAEd+gC,oBAAqB,CACnBjkC,UAAW,GACXqI,QAAS,OACTpI,MAAO,MACP2S,SAAU,IAEZsxB,aAAc,CACZ/uB,SAAU,cACV,YAAa,CACXtC,WAAY,IACZ3P,WAAY,GACZ/C,YAAa,KAGjBgkC,aAAc,CACZvxB,SAAU,GACV5S,UAAW,GACXqI,QAAS,OACTK,WAAY,SACZC,eAAgB,SAChB,4BAA6B,CAC3BwM,SAAU,UAEZ,gBAAiB,CACflV,MAAO,UACPJ,MAAO,GACPC,OAAQ,GACRK,YAAa,KAGjBikC,UAAW,CACTvxB,WAAY,OACZ3P,WAAY,MAEb,GA8LL,EAnLqB,SAAHhO,GAQI,IAPpB8G,EAAO9G,EAAP8G,QACA/E,EAAE/B,EAAF+B,GACAotC,EAAWnvC,EAAXmvC,YACArtC,EAAK9B,EAAL8B,MACAstC,EAAOpvC,EAAPovC,QACAC,EAAMrvC,EAANqvC,OACAntC,EAAQlC,EAARkC,SAEA3B,GAAwCC,EAAAA,EAAAA,UAAiB,GAAEC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAApD+uC,EAAY7uC,EAAA,GAAE8uC,EAAe9uC,EAAA,GACpCI,GAA0CL,EAAAA,EAAAA,UAAiB,GAAEM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAtD2uC,EAAa1uC,EAAA,GAAE2uC,EAAgB3uC,EAAA,GACtCyP,GAA8C/P,EAAAA,EAAAA,UAAiB,GAAEgQ,GAAA9P,EAAAA,EAAAA,GAAA6P,EAAA,GAA1Dm/B,EAAel/B,EAAA,GAAEm/B,EAAkBn/B,EAAA,GAC1CG,GAAkCnQ,EAAAA,EAAAA,WAAkB,GAAKoQ,GAAAlQ,EAAAA,EAAAA,GAAAiQ,EAAA,GAAlDiB,EAAShB,EAAA,GAAEg/B,EAAYh/B,EAAA,GAC9B4D,GAAwChU,EAAAA,EAAAA,UAAmByxB,EAAAA,GAASC,OAAMzd,GAAA/T,EAAAA,EAAAA,GAAA8T,EAAA,GAAnEq7B,EAAYp7B,EAAA,GAAEq7B,EAAer7B,EAAA,IAEpCxT,EAAAA,EAAAA,YAAU,WAELmQ,MAAMo+B,IACNp+B,MAAMk+B,IACNl+B,MAAMs+B,IAEPI,EA9BmB,SACvBX,EACAxgC,EACAohC,EACAC,GAEA,OAAO/d,EAAAA,GAASge,WAAWd,GAAae,KAAK,CAAEvhC,KAAAA,EAAMohC,MAAAA,EAAOC,QAAAA,GAC9D,CAwBQG,CACEhB,EACAG,EACAE,EACAE,GAIR,GAAG,CAACP,EAAaG,EAAcE,EAAeE,KAE9CzuC,EAAAA,EAAAA,YAAU,WACR,GAAI2Q,EAAW,CACb,IAAMw+B,EAAgBP,EAAahd,SAAS,uBAC5C3wB,EAASkuC,EAAcjoC,MAAM,KAAKc,KAAK,MAAM,EAC/C,MACE/G,EAAS,cAAc,EAE3B,GAAG,CAAC2tC,EAAc3tC,EAAU0P,KAG5B3Q,EAAAA,EAAAA,YAAU,WACR,IAAIovC,GAAQ,GAEVf,EAAe,GACdF,GAAWE,EAAeF,GAC3Bh+B,MAAMk+B,MAENe,GAAQ,IAGNb,EAAgB,GAAKA,EAAgB,IAAMp+B,MAAMo+B,MACnDa,GAAQ,IAGNX,EAAkB,GAAKA,EAAkB,IAAMt+B,MAAMs+B,MACvDW,GAAQ,IAIRjB,GACAE,IAAiBF,GACE,IAAlBI,GAA2C,IAApBE,IAExBW,GAAQ,GAGNf,GAAgB,GAAKE,GAAiB,GAAKE,GAAmB,IAChEW,GAAQ,GAGVT,EAAaS,EACf,GAAG,CACDR,EACAT,EACAltC,EACAotC,EACAE,EACAE,IAGF,IAAMY,EAAc,CAClB,sBAAuB,CACrBriC,SAAU,GAEZ,UAAW,CACTyd,UAAW,SACX6kB,aAAc,GACd/d,YAAa,GACb7nB,MAAO,KAIX,OACEzJ,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UACPC,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CAAC+P,WAAS,EAACnJ,UAAWvC,EAAQsL,eAAe7Q,SAAA,EAChDL,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQyL,eAAehR,UACnDL,EAAAA,EAAAA,KAACuR,EAAAA,IAAU,CAACC,QAAS3Q,EAAGR,SAAEO,OAE5BN,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAI0G,UAAWvC,EAAQ+nC,eAAettC,SAAA,EACnDL,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,IAAE,EAAC0G,UAAWvC,EAAQ0pC,mBAAmBjvC,UAClDL,EAAAA,EAAAA,KAACU,EAAAA,IAAQ,CACPG,GAAIA,EACJsH,UAAS,GAAAzD,OAAKkB,EAAQkoC,aAAY,iBAClChsC,KAAK,SACLytC,IAAI,IACJC,IAAKtB,EAAUA,EAAQrlC,WAAa,MACpCjI,MAAM,OACNE,KAAMD,EACNG,SAAU,SAACC,GACTotC,EAAgBv+B,SAAS7O,EAAEC,OAAOP,OACpC,EACAA,MAAOytC,EAAavlC,WACpBnH,GAAI0tC,EACJpZ,iBAAe,OAGnBh2B,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,IAAE,EAAC0G,UAAWvC,EAAQ0pC,mBAAmBjvC,UAClDL,EAAAA,EAAAA,KAACU,EAAAA,IAAQ,CACPG,GAAIA,EACJsH,UAAS,GAAAzD,OAAKkB,EAAQkoC,aAAY,iBAClChsC,KAAK,SACLytC,IAAI,IACJC,IAAI,KACJ5uC,MAAM,QACNE,KAAMD,EACNG,SAAU,SAACC,GACTstC,EAAiBz+B,SAAS7O,EAAEC,OAAOP,OACrC,EACAA,MAAO2tC,EAAczlC,WACrBnH,GAAI0tC,EACJpZ,iBAAe,OAGnBh2B,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,IAAE,EAAC0G,UAAWvC,EAAQ0pC,mBAAmBjvC,UAClDL,EAAAA,EAAAA,KAACU,EAAAA,IAAQ,CACPG,GAAIA,EACJsH,UAAS,GAAAzD,OAAKkB,EAAQkoC,aAAY,iBAClChsC,KAAK,SACLytC,IAAI,IACJC,IAAI,KACJ5uC,MAAM,UACNE,KAAMD,EACNG,SAAU,SAACC,GACTwtC,EAAmB3+B,SAAS7O,EAAEC,OAAOP,OACvC,EACAA,MAAO6tC,EAAgB3lC,WACvBnH,GAAI0tC,EACJpZ,iBAAe,UAIrBh2B,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CACHC,MAAI,EACJC,GAAI,GACJ0G,UAAS,GAAAzD,OAAKkB,EAAQgoC,kBAAiB,KAAAlpC,OAAIkB,EAAQoP,cAAe3U,SAEjEqQ,GACCpQ,EAAAA,EAAAA,MAAA,OAAK6H,UAAWvC,EAAQmoC,aAAa1tC,SAAA,EACnCL,EAAAA,EAAAA,KAACyvC,EAAAA,IAAQ,KACTnvC,EAAAA,EAAAA,MAAA,OAAK6H,UAAWvC,EAAQ8pC,cAAcrvC,SAAA,CACnC8tC,EAAO,+BACH,KACPnuC,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQooC,UAAU3tC,SAC/BsuC,EAAahd,SAAS,6BAI3B3xB,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQioC,oBAAoBxtC,SAAC,0CAQzD,I,uDCxDA,EA9LkB,SAAHvB,GAKS,IAJtB2M,EAAI3M,EAAJ2M,KACAmH,EAAoB9T,EAApB8T,qBACAtN,EAAUxG,EAAVwG,WACAinB,EAAUztB,EAAVytB,WAEMptB,GAAWC,EAAAA,EAAAA,MACX4d,GAAmBlX,EAAAA,EAAAA,IAAYmX,EAAAA,IACrC5d,GAAgCC,EAAAA,EAAAA,UAAiB,IAAGC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA7CswC,EAAQpwC,EAAA,GAAEqwC,EAAWrwC,EAAA,GAC5BI,GAAgDL,EAAAA,EAAAA,WAAkB,GAAKM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAhEkwC,EAAgBjwC,EAAA,GAAEkwC,EAAmBlwC,EAAA,GAC5CyP,GAA0C/P,EAAAA,EAAAA,WAAkB,GAAMgQ,GAAA9P,EAAAA,EAAAA,GAAA6P,EAAA,GAA3D0gC,EAAazgC,EAAA,GAAE0gC,EAAgB1gC,EAAA,GACtCG,GAAwCnQ,EAAAA,EAAAA,UAAiB,IAAGoQ,GAAAlQ,EAAAA,EAAAA,GAAAiQ,EAAA,GAArDwgC,EAAYvgC,EAAA,GAAEwgC,EAAexgC,EAAA,GACpC4D,GAAkChU,EAAAA,EAAAA,WAAkB,GAAKiU,GAAA/T,EAAAA,EAAAA,GAAA8T,EAAA,GAAlD68B,EAAS58B,EAAA,GAAE68B,EAAY78B,EAAA,GAC9BG,GAAkCpU,EAAAA,EAAAA,UAAiB,QAAOqU,GAAAnU,EAAAA,EAAAA,GAAAkU,EAAA,GAAnD0e,EAASze,EAAA,GAAE08B,EAAY18B,EAAA,GAExBs6B,EAAc,IAAIlgC,KA8FxB,OAlFAhO,EAAAA,EAAAA,YAAU,WAER,QAA8BuD,IAA1BipB,EAAW/W,WAEb,OAAIwH,GACF9a,EAAAA,EAAIwT,QACDiU,YAAYrkB,EAAY,CACvB7F,QAAQwI,EAAAA,EAAAA,IAAgBskB,EAAWzrB,MAAQ,IAC3C8oB,cAAe5M,IAEhB3a,MAAK,SAACC,GACL,IAEMguC,GAFyBhuC,EAAIwnB,KAAKC,SAAW,IAEI5lB,MACrD,SAACosC,GAAkB,OAAKA,EAAKvqB,SAAS,IAItCqqB,EADEC,EACW,GAAD5rC,OAAI4rC,EAAc96B,YAKnB,OACf,IACChT,OAAM,SAACC,GACNtD,GAAS0W,EAAAA,EAAAA,KAA0BlT,EAAAA,EAAAA,GAAeF,EAAIqT,QACxD,SAEFg6B,GAAoB,KAGtBO,EAAa,aACbP,GAAoB,IAGtBO,EAAa9jB,EAAW/W,YAAc,QACtCs6B,GAAoB,EACtB,GAAG,CAACxqC,EAAYinB,EAAYvP,EAAkB7d,KAE9CY,EAAAA,EAAAA,YAAU,WACR,GAAIowC,IAAcN,EAAkB,CAClCG,GAAiB,GACjBJ,EAAY,IAEZ,IAAMY,EAAS,IAAIziC,KAAK,GAADrJ,OAAIurC,IACrBQ,EAAW,IAAI1iC,KAEf2iC,EAAW5sB,KAAK6sB,MACnBH,EAAO3sB,UAAY4sB,EAAS5sB,WAAa,KAGxC6sB,EAAW,GACbxuC,EAAAA,EAAIwT,QACDk7B,YAAYtrC,EAAY,CACvB7F,QAAQwI,EAAAA,EAAAA,IAAgBskB,EAAWzrB,MAAQ,IAC3C0U,WAAY4c,EACZxc,QAA0B,KAAjBq6B,EAAmB,GAAAvrC,OAAMgsC,EAAQ,KAAM,KAEjDruC,MAAK,SAACC,GACLstC,EAAYttC,EAAIwnB,MAChBkmB,GAAiB,EACnB,IACCxtC,OAAM,SAACC,GACNtD,GAAS0W,EAAAA,EAAAA,KAA0BlT,EAAAA,EAAAA,GAAeF,EAAIqT,SACtD85B,EAAY,IACZI,GAAiB,EACnB,GAEN,CACF,GAAG,CACDzjB,EACA0jB,EACA3qC,EACA6qC,EACAP,EACAzwC,EACA6d,EACA6yB,EACAzd,KAIApyB,EAAAA,EAAAA,KAAC6E,EAAAA,SAAc,CAAAxE,UACbC,EAAAA,EAAAA,MAACL,EAAAA,EAAY,CACXC,MAAM,aACNC,WAAWH,EAAAA,EAAAA,KAACgsB,EAAAA,IAAS,CAAC5jB,MAAO,CAAEuB,KAAM,aACrC5K,UAAW0M,EACXzM,QAAS,WACP4T,GACF,EAAEvS,SAAA,CAEDwvC,IACC7vC,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAGpB,UAChBL,EAAAA,EAAAA,KAACu1B,EAAAA,EAAc,OAGjBsa,IACAvvC,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,EACPC,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CACHC,MAAI,EACJC,GAAI,GACJC,GAAI,CACF8a,SAAU,GACVC,WAAY,KACZpc,SAAA,CACH,0GAGCL,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,SAAM,iEAGRA,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAGpB,UAChBL,EAAAA,EAAAA,KAAC6wC,EAAY,CACX5C,YAAaA,EACbptC,GAAG,OACHD,MAAM,aACNstC,QAAS,EACTltC,SAlIM,SAAC8vC,EAAiBlgC,GACpCw/B,EAAax/B,GACTA,EACFs/B,EAAgBY,IAGlBZ,EAAgB,IAChBN,EAAY,IACd,EA2HczB,OAAO,YAGXnuC,EAAAA,EAAAA,KAACuB,EAAAA,IAAI,CACHC,MAAI,EACJC,GAAI,GACJC,GAAI,CACF+Q,aAAc,IACdpS,UAEFL,EAAAA,EAAAA,KAAC+wC,EAAAA,IAAO,CACNC,cACEhxC,EAAAA,EAAAA,KAACqJ,IAAe,CAACC,KAAMqmC,EAAStvC,UAC9BL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,YACJkB,QAAQ,UACRC,QAAS,WACP7C,GACE8xC,EAAAA,EAAAA,IAAqB,iCAEzB,EACA3vC,SAAuB,KAAbquC,GAAmBI,EAC7B3nC,MAAO,CACLqB,MAAO,OACPC,OAAQ,OACR4D,QAAS,OAEX/D,MAAMvJ,EAAAA,EAAAA,KAACwJ,EAAAA,IAAQ,QAGpBnJ,SAEAsvC,aAQjB,C,sPCZA,GAAevlC,EAAAA,EAAAA,IA9LA,WAAH,OACVnF,EAAAA,EAAAA,GAAa,CACXisC,gBAAiB,CACfpnC,OAAQ,MACRqnC,KAAM,WACN1nC,MAAO,OACPC,OAAQ,IACR6D,gBAAiB,cACjBjB,aAAc,EAEd,UAAW,CACT5C,OAAQ,KAEV,SAAU,CACRA,OAAQ,KAEV,UAAW,CACTA,OAAQ,KAEV,UAAW,CACTA,OAAQ,KAEV,eAAgB,CACdA,OAAQ,wBAGZ0nC,WAAY,CACV7jC,gBAAiB,QAEnB8jC,aAAc,CACZp/B,QAAS,SAEV,GA8JL,EArJoB,SAAHnT,GAKS,IAJxBwG,EAAUxG,EAAVwG,WACAoe,EAAM5kB,EAAN4kB,OAAM4tB,EAAAxyC,EACNyyC,aAAAA,OAAY,IAAAD,GAAQA,EACpB1rC,EAAO9G,EAAP8G,QAEAvG,GAA8BC,EAAAA,EAAAA,WAAkB,GAAKC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA9CmyC,EAAOjyC,EAAA,GAAEkyC,EAAUlyC,EAAA,GAE1BI,GAAgCL,EAAAA,EAAAA,UAAc,MAAKM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAA5CkZ,EAAQjZ,EAAA,GAAEspB,EAAWtpB,EAAA,GAC5ByP,GAAgD/P,EAAAA,EAAAA,WAAS,GAAMgQ,GAAA9P,EAAAA,EAAAA,GAAA6P,EAAA,GAAxDmwB,EAAgBlwB,EAAA,GAAEmwB,EAAmBnwB,EAAA,GAEtC1G,GAAmB,OAAN8a,QAAM,IAANA,OAAM,EAANA,EAAQ5iB,OAAQ,GAE7B+/B,GAAgBC,EAAAA,EAAAA,cAAY,WAChC,IAAKtB,EAAkB,CACrB,IAAMuB,GAAc94B,EAAAA,EAAAA,IAAgBW,GACpC1G,EAAAA,EAAIwT,QACD0U,kBAAkB9kB,EAAY,CAC7B7F,OAAQshC,IAET1+B,MAAK,SAACC,GACL,IAAI+nB,EAAWlS,IAAI7V,EAAIwnB,KAAM,iBAAkB,CAAC,GAChD2V,GAAoB,GACpBvW,EAAYmB,EACd,IACC7nB,OAAM,SAACC,GACNmE,QAAQkP,MACN,kCACArT,EACG,OAAHA,QAAG,IAAHA,OAAG,EAAHA,EAAKkU,eAEP8oB,GAAoB,EACtB,GACJ,CACF,GAAG,CAACn6B,EAAYsD,EAAY42B,KAE5Bz/B,EAAAA,EAAAA,YAAU,WACJuF,GAAcsD,GAChBi4B,GAEJ,GAAG,CAACv7B,EAAYsD,EAAYi4B,IAE5B,IAAI35B,EAAO,GAEX,GAAIwc,EAAQ,CACV,IAAMqd,GAAc94B,EAAAA,EAAAA,IAAgByb,EAAO5iB,MACvC4wC,EAAWlH,SAASC,QAAQkH,QAAQtH,OAAOxM,SAAS+T,OAAQ,IAChE1qC,EAAI,GAAAxC,OAAM2lC,OAAOxM,SAAS+T,QAAMltC,OAAGgtC,EAAQ,mBAAAhtC,OAAkBY,EAAU,0CAAAZ,OAAyCq8B,GAC5Grd,EAAOlO,aACTtO,EAAOA,EAAKxC,OAAO,eAADA,OAAgBgf,EAAOlO,aAE7C,CAEA,IAAImW,GAA8BC,EAAAA,EAAAA,IAAkB/S,EAAUjQ,GAExDipC,EAAe,WACnBJ,GAAW,EACb,EAEA,OACEnxC,EAAAA,EAAAA,MAAC4H,EAAAA,SAAQ,CAAA7H,SAAA,CACS,SAAfsrB,GAAyB6lB,IACxBxxC,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAGpB,UAChBL,EAAAA,EAAAA,KAACu1B,EAAAA,EAAc,MAGlBiK,GACCl/B,EAAAA,EAAAA,MAAA,OAAK8H,MAAO,CAAEoiB,UAAW,UAAWnqB,SAAA,CAClB,UAAfsrB,IACC3rB,EAAAA,EAAAA,KAAA,SACEoI,MAAO,CACLqB,MAAO,OACPC,OAAQ,OACRqmB,SAAU,sBACV+hB,UAAW,uBAEbC,UAAU,EACVC,UAAU,EACVC,OAAO,EACPC,aAAa,EACbC,OAAQN,EAAaxxC,UAErBL,EAAAA,EAAAA,KAAA,UAAQoyC,IAAKlrC,EAAMpF,KAAK,gBAGZ,UAAf6pB,IACC3rB,EAAAA,EAAAA,KAAA,SACEoI,MAAO,CACLqB,MAAO,OACPC,OAAQ,QAEVqoC,UAAU,EACVC,UAAU,EACVC,OAAO,EACPC,aAAa,EACbC,OAAQN,EAAaxxC,UAErBL,EAAAA,EAAAA,KAAA,UAAQoyC,IAAKlrC,EAAMpF,KAAK,iBAGZ,UAAf6pB,IACC3rB,EAAAA,EAAAA,KAAA,OACEoI,MAAO,CACLqB,MAAO,OACPC,OAAQ,OACRqmB,SAAU,QACV+hB,UAAW,SAEbM,IAAKlrC,EACLmrC,IAAK,UACLC,OAAQT,IAGI,SAAflmB,IACC3rB,EAAAA,EAAAA,KAAA,OAAAK,UACEL,EAAAA,EAAAA,KAACuyC,EAAAA,EAAc,CACb3xC,MAAM,6FAENV,MAAM,2BAII,SAAfyrB,GACgB,UAAfA,GACe,UAAfA,GACe,UAAfA,IACE3rB,EAAAA,EAAAA,KAAA,OACEmI,WAAW8I,EAAAA,EAAAA,GAAKrL,EAAQwrC,YAAUjgC,EAAAA,EAAAA,GAAA,GAC/BvL,EAAQyrC,aAAeG,IACvBnxC,UAEHL,EAAAA,EAAAA,KAAA,UACEoyC,IAAKlrC,EACLhH,MAAM,eACNsyC,mBAAiB,EACjBrqC,UAAS,GAAAzD,OAAKkB,EAAQsrC,gBAAe,KAAAxsC,OACnC6sC,EAAe,aAAe5lB,GAEhC2mB,OAAQT,EAAaxxC,SACtB,8DAMP,OAGV,I,WCvKA,EArByB,SAAHvB,GAKI,IAJxB2M,EAAI3M,EAAJ2M,KACAnG,EAAUxG,EAAVwG,WACAoe,EAAM5kB,EAAN4kB,OACAwJ,EAAcpuB,EAAdouB,eAEA,OACEltB,EAAAA,EAAAA,KAACkI,EAAAA,SAAQ,CAAA7H,UACPL,EAAAA,EAAAA,KAACC,EAAAA,EAAY,CACXlB,UAAW0M,EACXvL,MAAK,aAAAwE,OAAqB,OAANgf,QAAM,IAANA,OAAM,EAANA,EAAQ5iB,MAC5B9B,QAASkuB,EACTulB,WAAW,EACXtyC,WAAWH,EAAAA,EAAAA,KAAC0yC,EAAAA,IAAiB,IAAIryC,UAEjCL,EAAAA,EAAAA,KAAC2yC,EAAkB,CAACrtC,WAAYA,EAAYoe,OAAQA,OAI5D,C,4LC1BaY,EAAW,SACtBhf,EACAypB,EACAqD,EACAwgB,GAQI,IAPJC,EAA+BzvC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,KAClCvC,EAAUuC,UAAAC,OAAA,EAAAD,UAAA,QAAAE,EACVwvC,EAA4C1vC,UAAAC,OAAA,EAAAD,UAAA,QAAAE,EAC5CyvC,EAA4B3vC,UAAAC,OAAA,EAAAD,UAAA,QAAAE,EAC5B0vC,EAAoC5vC,UAAAC,OAAA,EAAAD,UAAA,QAAAE,EACpC2vC,EAAyB7vC,UAAAC,OAAA,EAAAD,UAAA,QAAAE,EACzB4vC,EAAyB9vC,UAAAC,OAAA,GAAAD,UAAA,SAAAE,EAEnB6vC,EAAS3I,SAAS4I,cAAc,KACtC5I,SAAS6I,KAAKC,YAAYH,GAC1B,IAAIzB,EAAWlH,SAASC,QAAQkH,QAAQtH,OAAOxM,SAAS+T,OAAQ,IAE1DxrC,EADQmtC,EAAAA,GAAMpY,WACQ90B,OAAOD,cAE/Bc,EAAI,GAAAxC,OACN2lC,OAAOxM,SAAS+T,QAAMltC,OACrBgtC,EAAQ,mBAAAhtC,OAAkBY,EAAU,6BAAAZ,OAA4BqqB,GAAUrqB,OACtD,OAArBmuC,GAAyD,KAA5BA,EAAiB5wC,OAAa,uBAAAyC,QAChCuD,EAAAA,EAAAA,IAAgB4qC,GAAoB,KAC3D,IAON,GALIzgB,IACFlrB,EAAOA,EAAKxC,OAAO,eAADA,OAAgB0tB,KAIhCwgB,EAAW,YACb,OAAO,IAAIY,EAAgBtsC,EAAMrG,EAAIkyC,EAAkBG,GAGzD,IAAIO,EAAM,IAAI1Q,eAkEd,OAjEA0Q,EAAIhoC,KAAK,MAAOvE,GAAM,GAClBd,GACFqtC,EAAIzQ,iBAAiB,cAAe,KAEtCyQ,EAAIhQ,iBACF,YACA,SAAUiQ,GACR,IAAIC,EAAkB7vB,KAAK8vB,MAAOF,EAAI/P,OAASiP,EAAY,KAEvDE,GACFA,EAAiBa,EAErB,IACA,GAGFF,EAAII,aAAe,OACnBJ,EAAIK,mBAAqB,WACvB,GAAuB,IAAnBL,EAAIlH,WACN,GAAmB,MAAfkH,EAAI9qC,OAAgB,CACtB,IAAMorC,EAAYN,EAAIO,kBAAkB,uBAEpCxxB,EAAW,WACf,GAAIuxB,EAEFvxB,EADuByxB,mBAAmBF,GACd9sC,MAAM,KAAK,GAGrC8rC,GACFA,KAGF1P,EAAAA,EAAAA,IAAYxiC,GAEZ,IAAIqzC,EAAO1J,SAAS4I,cAAc,KAClCc,EAAKC,KAAO9J,OAAOD,IAAIgK,gBAAgBX,EAAInQ,UAC3C4Q,EAAK5vB,SAAW9B,EAChBgoB,SAAS6I,KAAKC,YAAYY,GAC1BA,EAAK/M,QACLqD,SAAS6I,KAAKgB,YAAYH,EAC5B,KAAO,CACL,GAA8C,qBAA1CT,EAAIO,kBAAkB,gBAAwC,CAChE,IAAMM,EAAwC/Q,KAAKtzB,MACjDwjC,EAAInQ,UAEN,GAAIgR,EAAQlT,gBAEV,YADA4R,EAAcsB,EAAQlT,gBAG1B,CACA4R,EAAc,oCAADtuC,OAAqC+uC,EAAI9qC,OAAM,MAC9D,CAEJ,EACA8qC,EAAI5P,QAAU,WACRmP,GACFA,EAAc,4BAElB,EACAS,EAAI1P,QAAU,WACRkP,GACFA,GAEJ,EAEOQ,CACT,EAEMD,EAAe,WAMnB,SAAAA,EACEtsC,EACArG,EACAkyC,EACAG,IACAqB,EAAAA,EAAAA,GAAA,KAAAf,GAAA,KAVFtsC,UAAI,OACJrG,QAAE,OACFkyC,sBAAgB,OAChBG,mBAAa,EAQXsB,KAAKttC,KAAOA,EACZstC,KAAK3zC,GAAKA,EACV2zC,KAAKzB,iBAAmBA,EACxByB,KAAKtB,cAAgBA,CACvB,CAWC,OAXAuB,EAAAA,EAAAA,GAAAjB,EAAA,EAAA7iB,IAAA,OAAAhwB,MAED,WACE6zC,KAAKtB,gBACL,IAAMgB,EAAO1J,SAAS4I,cAAc,KACpCc,EAAKC,KAAOK,KAAKttC,KACjBsjC,SAAS6I,KAAKC,YAAYY,GAC1BA,EAAK/M,QACLqD,SAAS6I,KAAKgB,YAAYH,GAC1BM,KAAKzB,oBACL1P,EAAAA,EAAAA,IAAYmR,KAAK3zC,GACnB,KAAC2yC,CAAA,CA3BkB,GAgHR5nB,EAAoB,SAC/B/S,EACAjQ,GAEA,IAAM8rC,GACH77B,GAAYA,EAAS,iBACtB,IACAhQ,WAEI8rC,EApEwB,SAACh7B,GAC/B,IA+BIi7B,EAAgBj7B,EAAS1S,MAAM,KAAKkX,MAExC,OAAKy2B,GAILA,EAAgBA,EAAcp5B,cArCN,CACtB,MACA,OACA,OACA,OACA,MACA,OACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,QAyBkB3X,SAAS+wC,GACpB,QAxBc,CAAC,OA2BL/wC,SAAS+wC,GACnB,OA3Be,CAAC,MAAO,MAAO,OAAQ,OAAQ,MAAO,OA8B1C/wC,SAAS+wC,GACpB,QA9Be,CACtB,MACA,MACA,MACA,OACA,MACA,MACA,MACA,MACA,QACA,UAuBkB/wC,SAAS+wC,GACpB,QAGF,QArBE,MAsBX,CAWwBC,CAAiBjsC,GAAc,IAC/CksC,EA3F0B,SAACA,GACjC,GAAIA,EAAa,CACf,IAAMC,GAAkBD,GAAe,IAAIt5B,cAE3C,GAAIu5B,EAAelxC,SAAS,SAC1B,MAAO,QAET,GAAIkxC,EAAelxC,SAAS,QAC1B,MAAO,OAET,GAAIkxC,EAAelxC,SAAS,SAC1B,MAAO,QAET,GAAIkxC,EAAelxC,SAAS,SAC1B,MAAO,OAEX,CAEA,MAAO,MACT,CAwEsBmxC,CAAmBN,GAEnC/oB,EAA8BgpB,EAUlC,OARIA,IAAkBG,EACpBnpB,EAAagpB,EACc,SAAlBA,GAA4C,SAAhBG,EACrCnpB,EAAampB,EACY,SAAhBA,GAA4C,SAAlBH,IACnChpB,EAAagpB,GAGRhpB,CACT,EACamN,EAAkB,SAACmc,GAC9B,OAAQA,GACN,IAAK,OACH,OAAO,SAACvgB,EAAqBC,GAAmB,OAC9CD,EAAE5zB,KAAKo0C,cAAcvgB,EAAE7zB,KAAM,EACjC,IAAK,gBACH,OAAO,SAAC4zB,EAAqBC,GAAmB,OAC9C,IAAI5mB,KAAK2mB,EAAEzO,eAAepC,UAC1B,IAAI9V,KAAK4mB,EAAE1O,eAAepC,SAAU,EACxC,IAAK,OACH,OAAO,SAAC6Q,EAAqBC,GAAmB,OAC7CD,EAAElV,OAAS,IAAMmV,EAAEnV,OAAS,EAAG,EAExC,EAEa0sB,EAAkB,SAC7B5mC,EACAw6B,EACAqV,GAEA,GAAgC,IAA5BA,EAAiB9xC,OACnB,OAAO,KAIT,IAAM+xC,EAA+BD,EAAiBrxC,QACpD,SAACuxC,GAAc,IAAAC,EAAAC,EAAA,OACU,QAAvBD,EAAAD,EAAev2B,gBAAQ,IAAAw2B,OAAA,EAAvBA,EAAyBz9B,SAAS,IAADnT,OAAKY,OACf,QAD4BiwC,EACnDF,EAAev2B,gBAAQ,IAAAy2B,OAAA,EAAvBA,EAAyB1xC,SAAS,IAADa,OAAKY,EAAU,MAAI,IAIxD,GAA4C,IAAxC8vC,EAA6B/xC,OAC/B,OAAO,KAGT,IAAImyC,EAAqC,GAGnCC,EAAmB3V,EAAY74B,MAAM,KA0F3C,GAxFAmuC,EAA6B5Z,SAAQ,SAACka,GAAuB,IAADC,EA6CxDC,EAzCIC,EAAqC,QAA7BF,EAAGD,EAAkB52B,gBAAQ,IAAA62B,OAAA,EAA1BA,EAA4B1uC,MAAM,KAK7C6uC,IAJiB,OAARD,QAAQ,IAARA,OAAQ,EAARA,EAAU13B,QAAS,IAIPlX,MAAM,MAG7B6uC,EAAYzyC,OAAS,GACvByyC,EAAYC,OAAM,SAACC,EAAsBpuC,GAEvC,MAA6B,MAAzBouC,MAMFP,EAAiB7tC,IACjB6tC,EAAiB7tC,KAAWouC,KAMzBP,EAAiB7tC,IACpB4tC,EAAevgB,KAAK,CAClBn0B,KAAK,GAAD4D,OAAKsxC,EAAoB,KAC7Bx2B,KAAM,EACNyG,cAAe,GACfzQ,WAAY,MAIT,GACT,IAKwC,iBAAxCkgC,EAAkBO,mBACsB,eAAxCP,EAAkBO,qBAEQ,QAA1BL,EAAAF,EAAkBQ,gBAAQ,IAAAN,GAA1BA,EAA4Bpa,SAAQ,SAAC2a,GAEnC,GAAmB,KAAfA,EAAmB,CACrB,IAAMC,EAAaD,EAAWlvC,MAAM,KAEhCovC,EAAgC,GAG9BC,EAAgBxW,EAAY6R,QAAQ,MAAO,IAEjD,IAAKwE,EAAWvT,WAAW0T,IAAkC,KAAhBxW,EAC3C,OAIFsW,EAAWL,OAAM,SAACQ,EAAc3uC,GAC9B,OAAK2uC,EAAa1yC,SAAS,MAAyB,KAAjB0yC,IAC7BA,IAAiBd,EAAiB7tC,IACpC4tC,EAAevgB,KAAK,CAClBn0B,KAAK,GAAD4D,OAAK2xC,EAAoBtuC,KAAK,MAAIrD,OACpC2xC,EAAoBhzC,OAAS,EAAI,IAAM,IAAEqB,OACxC6xC,EAAY,KACf/2B,KAAM,EACNyG,cAAe,GACfzQ,WAAY,MAEP,IAEY,KAAjB+gC,GACFF,EAAoBphB,KAAKshB,IAGpB,GAGX,GACF,CACF,IAEJ,IAGIf,EAAenyC,OAAS,EAAG,CAC7B,IAAImzC,EAAiC,GACjC/yC,EAAiB,GAErB+xC,EAAeha,SAAQ,SAACib,GACjBhzC,EAAKI,SAAS4yC,EAAI31C,QACrB01C,EAAWvhB,KAAKwhB,GAChBhzC,EAAKwxB,KAAKwhB,EAAI31C,MAElB,IAEA00C,EAAiBgB,CACnB,CAEA,OAAOhB,CACT,C,4DCrXA,IAfA,SACEkB,GAEC,IADDC,EAAmCvzC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,KAUtC,OARA,SAA+BwzC,GAC7B,OACE52C,EAAAA,EAAAA,KAAC62C,EAAAA,SAAQ,CAACF,SAAUA,EAASt2C,UAC3BL,EAAAA,EAAAA,KAAC02C,GAAgBxxC,EAAAA,EAAAA,GAAA,GAAM0xC,KAG7B,CAGF,C,oJCmGA,KAAexsC,EAAAA,EAAAA,IAtFA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTkN,EAAAA,IACAC,EAAAA,IACAykC,EAAAA,IAAa,IAChB5lC,gBAAchM,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACTkN,EAAAA,GAAWlB,gBAAc,IAC5Be,QAAS,OACTM,eAAgB,aAChBD,WAAY,SACZjN,OAAQ,SACRoN,aAAc,EACdskC,UAAW,UACXC,SAAU,WAEZzlB,YAAa,CACX3nB,UAAW,KAEZ,GAoEL,EAlEwB,SAAH9K,GAcC,IAbpB8B,EAAK9B,EAAL8B,MACAI,EAAQlC,EAARkC,SACAL,EAAK7B,EAAL6B,MACAE,EAAE/B,EAAF+B,GACAC,EAAIhC,EAAJgC,KAAIm2C,EAAAn4C,EACJgT,QAAAA,OAAO,IAAAmlC,GAAQA,EAAAC,EAAAp4C,EACfwC,SAAAA,OAAQ,IAAA41C,GAAQA,EAAAC,EAAAr4C,EAChByyB,YAAAA,OAAW,IAAA4lB,GAAQA,EAAAzoC,EAAA5P,EACnBqC,QAAAA,OAAO,IAAAuN,EAAG,GAAEA,EAAA0oC,EAAAt4C,EACZ0oC,qBAAAA,OAAoB,IAAA4P,EAAG,GAAEA,EACzB/lB,EAAsBvyB,EAAtBuyB,uBACAzrB,EAAO9G,EAAP8G,QACAuC,EAASrJ,EAATqJ,UAEA,OACEnI,EAAAA,EAAAA,KAAC6E,EAAAA,SAAc,CAAAxE,UACbC,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CACHC,MAAI,EACJC,GAAI,GACJ0G,UAAS,GAAAzD,OAAKkB,EAAQsL,eAAc,KAAAxM,OAClC6sB,EAAc3rB,EAAQ2rB,YAAc,GAAE,KAAA7sB,OACpCyD,GAAwB,IAAK9H,SAAA,EAEjCL,EAAAA,EAAAA,KAAA,OAAAK,UACEL,EAAAA,EAAAA,KAACq3C,EAAAA,EAAQ,CACPv2C,KAAMA,EACND,GAAIA,EACJF,MAAOA,EACPkJ,MAAM,UACNytC,WAAY,CAAE,aAAc,sBAC5BxlC,QAASA,EACT9Q,SAAUA,EACVu2C,aAAav3C,EAAAA,EAAAA,KAAA,QAAMmI,UAAWvC,EAAQ2xC,cACtChuC,MAAMvJ,EAAAA,EAAAA,KAAA,QAAMmI,UAAWvC,EAAQ4xC,gBAC/Bl2C,SAAUA,EACVm2C,eAAa,EACbC,oBAAkB,EAClBC,aAAa,EACbC,cAAc,EACdC,oBAAkB,EAClBzvC,MAAOipB,GAA0B,CAAC,MAG3B,KAAVzwB,IACCN,EAAAA,EAAAA,MAACiR,EAAAA,EAAU,CACTC,QAAS3Q,EACTsH,UAAS,GAAAzD,OAAKkB,EAAQkyC,gBAAe,KAAApzC,OAAI8iC,GAAuBnnC,SAAA,EAEhEL,EAAAA,EAAAA,KAAA,QAAAK,SAAOO,IACM,KAAZO,IACCnB,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQ6L,iBAAiBpR,UACvCL,EAAAA,EAAAA,KAACgK,EAAAA,EAAO,CAAC9J,MAAOiB,EAASuQ,UAAU,YAAWrR,UAC5CL,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQzE,QAAQd,UAC9BL,EAAAA,EAAAA,KAAC2R,EAAAA,IAAQ,iBAU7B,G,mLC9DMomC,GAAe3tC,EAAAA,EAAAA,IAAW,SAACpF,GAAK,MAAM,CAC1CgzC,KAAM,CACJvuC,MAAO,GACPC,OAAQ,GACR4D,QAAS,EACTjI,OAAQ,GAEV4yC,WAAY,CACV3qC,QAAS,EACT,YAAa,CACX4qC,UAAW,mBACXruC,MAAO7E,EAAMmzC,QAAQC,OAAOC,MAC5B,aAAc,CACZ9qC,gBAAiB,UACjB+qC,UAAW,oCACXzrC,QAAS,EACT/C,OAAQ,SAGZ,wBAAyB,CACvBD,MAAO,UACPC,OAAQ,mBAGZyuC,MAAO,CACL9uC,MAAO,GACPC,OAAQ,GACR6D,gBAAiB,UACjBzD,OAAQ,oBACRgD,WAAY,GAEd0rC,MAAO,CACLlsC,aAAc,GACdiB,gBAAiB,UACjB+qC,UAAW,oCACXzrC,QAAS,EACT4rC,WAAYzzC,EAAM0zC,YAAYC,OAAO,CAAC,mBAAoB,YAE5D7mC,QAAS,CAAC,EACV8mC,aAAc,CAAC,EACfC,gBAAiB,CACf5mC,QAAS,OACTK,WAAY,SACZC,eAAgB,YAEnB,GA7CoBnI,CA6CjBwH,EAAAA,GAqGJ,KAAexH,EAAAA,EAAAA,IAxKA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CACX4zC,iBAAkB,CAChBr8B,WAAY,OACZ5S,MAAO,sBAETkvC,eAAgB,CACdv8B,SAAU,GACV3S,MAAO,UACPxE,OAAQ,gBAEV2zC,iBAAkB,CAChBpvC,UAAW,EACXC,MAAO,WAET1I,QAAS,CACPqb,SAAU,KAET8J,EAAAA,IACAlU,EAAAA,IACF,GAoJL,EAnG0B,SAAHtT,GAcH,IAADm6C,EAAAn6C,EAbjB8B,MAAAA,OAAK,IAAAq4C,EAAG,GAAEA,EACVj4C,EAAQlC,EAARkC,SACAL,EAAK7B,EAAL6B,MACAE,EAAE/B,EAAF+B,GACAC,EAAIhC,EAAJgC,KAAIm2C,EAAAn4C,EACJgT,QAAAA,OAAO,IAAAmlC,GAAQA,EAAAC,EAAAp4C,EACfwC,SAAAA,OAAQ,IAAA41C,GAAQA,EAAAgC,EAAAp6C,EAChBiT,WAAAA,OAAU,IAAAmnC,GAAQA,EAAAxqC,EAAA5P,EAClBqC,QAAAA,OAAO,IAAAuN,EAAG,GAAEA,EAAAyqC,EAAAr6C,EACZiZ,YAAAA,OAAW,IAAAohC,EAAG,GAAEA,EAChBvzC,EAAO9G,EAAP8G,QACAiM,EAAe/S,EAAf+S,gBAAeunC,EAAAt6C,EACfu6C,gBAAAA,OAAe,IAAAD,EAAG,CAAC,EAACA,EAEdE,GACJh5C,EAAAA,EAAAA,MAACuE,EAAAA,SAAc,CAAAxE,SAAA,EACX0R,IACA/R,EAAAA,EAAAA,KAAA,QACEmI,WAAW8I,EAAAA,EAAAA,GAAKrL,EAAQmzC,gBAAc5nC,EAAAA,EAAAA,GAAA,GACnCvL,EAAQkzC,kBAAoBhnC,IAC5BzR,SAEFwR,GAAmBA,EAAgBxO,OAAS,EACzCwO,EAAgB,GAChB,SAGR7R,EAAAA,EAAAA,KAAC+3C,EAAY,CACXjmC,QAASA,EACT9Q,SAAUA,EACV6I,MAAM,UACN/I,KAAMA,EACNw2C,YAAUpyC,EAAAA,EAAAA,GAAA,CAAI,aAAc,oBAAuBm0C,GACnD/3C,SAAUA,EACVm2C,eAAa,EACbC,oBAAkB,EAClBG,oBAAkB,EAClBl3C,MAAOA,EACPE,GAAIA,KAEJkR,IACA/R,EAAAA,EAAAA,KAAA,QACEmI,WAAW8I,EAAAA,EAAAA,GAAKrL,EAAQmzC,gBAAc5nC,EAAAA,EAAAA,GAAA,GACnCvL,EAAQkzC,iBAAmBhnC,IAC3BzR,SAEFwR,EAAkBA,EAAgB,GAAK,UAMhD,OAAIE,EACKunC,GAIPt5C,EAAAA,EAAAA,KAAA,OAAAK,UACEC,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CAAC+P,WAAS,EAACgB,WAAY,SAASjS,SAAA,EACnCL,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI83C,GAAI,EAAGroB,GAAI,EAAE7wB,SACnB,KAAVO,IACCN,EAAAA,EAAAA,MAACiR,EAAAA,EAAU,CAACC,QAAS3Q,EAAIsH,UAAWvC,EAAQ4zC,WAAWn5C,SAAA,EACrDL,EAAAA,EAAAA,KAAA,QAAAK,SAAOO,IACM,KAAZO,IACCnB,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQ6L,iBAAiBpR,UACvCL,EAAAA,EAAAA,KAACgK,EAAAA,EAAO,CAAC9J,MAAOiB,EAASuQ,UAAU,YAAWrR,UAC5CL,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQzE,QAAQd,UAC9BL,EAAAA,EAAAA,KAAC2R,EAAAA,IAAQ,gBAQvB3R,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CACHC,MAAI,EACJC,GAAI,GACJ83C,GAAc,KAAV34C,EAAe,EAAI,GACvBswB,GAAc,KAAVtwB,EAAe,EAAI,GACvB4pB,UAAW,QACXjY,eAAgB,MAChBpK,UAAWvC,EAAQizC,gBAAgBx4C,SAElCi5C,IAEc,KAAhBvhC,IACC/X,EAAAA,EAAAA,KAACuB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAI+oB,UAAW,OAAOnqB,UACnCL,EAAAA,EAAAA,KAACy5C,EAAAA,EAAU,CAACjgC,UAAU,IAAIrR,UAAWvC,EAAQozC,iBAAiB34C,SAC3D0X,UAOf,G,qNCpHM2hC,GAAc30C,EAAAA,EAAAA,IAAW,SAACC,GAAY,OAC1CC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,GAAC,CAAC,EACTy0C,EAAAA,IACH,IAGJ,SAASC,EAAWhD,GAClB,IAAMhxC,EAAU8zC,IAEhB,OACE15C,EAAAA,EAAAA,KAAC65C,EAAAA,GAAS30C,EAAAA,EAAAA,GAAA,CACR40C,WAAY,CAAEl0C,QAAAA,IACVgxC,GAGV,CAwJA,KAAexsC,EAAAA,EAAAA,IA7LA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTkN,EAAAA,IACAC,EAAAA,IAAa,IAChB0nC,iBAAkB,CAChBrnB,SAAU,EACV9lB,SAAU,YAEZotC,cAAe,CACbptC,SAAU,WACVQ,MAAO,EACPC,IAAK,EACL,QAAS,CACP0iB,SAAU,GACV+hB,UAAW,IAEb,cAAe,CACbzkC,IAAK,MAGR,GAyKL,EAtJwB,SAAHvO,GA8BC,IA7BpB8B,EAAK9B,EAAL8B,MACAI,EAAQlC,EAARkC,SACAL,EAAK7B,EAAL6B,MACAE,EAAE/B,EAAF+B,GACAC,EAAIhC,EAAJgC,KAAIm5C,EAAAn7C,EACJgD,KAAAA,OAAI,IAAAm4C,EAAG,OAAMA,EAAAC,EAAAp7C,EACb+V,aAAAA,OAAY,IAAAqlC,EAAG,MAAKA,EAAAhD,EAAAp4C,EACpBwC,SAAAA,OAAQ,IAAA41C,GAAQA,EAAAiD,EAAAr7C,EAChBs7C,UAAAA,OAAS,IAAAD,GAAQA,EAAAzrC,EAAA5P,EACjBqC,QAAAA,OAAO,IAAAuN,EAAG,GAAEA,EAAA2rC,EAAAv7C,EACZ8I,MAAAA,OAAK,IAAAyyC,EAAG,EAACA,EAAAC,EAAAx7C,EACTgX,MAAAA,OAAK,IAAAwkC,EAAG,GAAEA,EAAAC,EAAAz7C,EACV07C,SAAAA,OAAQ,IAAAD,GAAQA,EAAAE,EAAA37C,EAChBiC,YAAAA,OAAW,IAAA05C,EAAG,GAAEA,EAChBlL,EAAGzwC,EAAHywC,IACAC,EAAG1wC,EAAH0wC,IACAkL,EAAS57C,EAAT47C,UAASC,EAAA77C,EACT87C,YAAAA,OAAW,IAAAD,EAAG,KAAIA,EAAAE,EAAA/7C,EAClBg8C,cAAAA,OAAa,IAAAD,EAAG,KAAIA,EAAAzB,EAAAt6C,EACpBu6C,gBAAAA,OAAe,IAAAD,EAAG,CAAC,EAACA,EACpBY,EAAal7C,EAAbk7C,cAAae,EAAAj8C,EACbk3B,gBAAAA,OAAe,IAAA+kB,GAAQA,EAAAC,EAAAl8C,EACvBm8C,QAAAA,OAAO,IAAAD,EAAG,GAAEA,EAAAE,EAAAp8C,EACZq8C,UAAAA,OAAS,IAAAD,GAAQA,EACjBt1C,EAAO9G,EAAP8G,QAAOsH,GAAApO,EACPqJ,UAAAA,QAAS,IAAA+E,GAAG,GAAEA,GACdkuC,GAAUt8C,EAAVs8C,WACAC,GAAOv8C,EAAPu8C,QACAC,GAAOx8C,EAAPw8C,QAEIhE,IAAepyC,EAAAA,EAAAA,GAAA,CAAK,aAAc0C,GAAUyxC,GAChDh6C,IAA8CC,EAAAA,EAAAA,WAAkB,GAAMC,IAAAC,EAAAA,EAAAA,GAAAH,GAAA,GAA/Dk8C,GAAeh8C,GAAA,GAAEi8C,GAAkBj8C,GAAA,GAE7B,WAATuC,GAAqBytC,IACvB+H,GAAgB,IAAI/H,GAGT,WAATztC,GAAqB0tC,IACvB8H,GAAgB,IAAI9H,GAGN,KAAZyL,IACF3D,GAAoB,QAAI2D,GAG1B,IAAIQ,GAAsBb,EACtBc,GAAsB55C,EAW1B,MATa,aAATA,GAAuC,OAAhB84C,IACzBa,GAAsBF,IACpBv7C,EAAAA,EAAAA,KAAC27C,EAAAA,EAAiB,KAElB37C,EAAAA,EAAAA,KAAC47C,EAAAA,EAAgB,IAEnBF,GAAsBH,GAAkB,OAAS,aAIjDv7C,EAAAA,EAAAA,KAAC6E,EAAAA,SAAc,CAAAxE,UACbC,EAAAA,EAAAA,MAACiB,EAAAA,GAAI,CACH+P,WAAS,EACTnJ,WAAW8I,EAAAA,EAAAA,GACK,KAAd9I,GAAmBA,GAAY,GACrB,KAAV2N,EAAelQ,EAAQi2C,aAAej2C,EAAQk2C,mBAC9Cz7C,SAAA,CAES,KAAVO,IACCN,EAAAA,EAAAA,MAACiR,EAAAA,EAAU,CACTC,QAAS3Q,EACTsH,UACE6tB,EAAkBpwB,EAAQkyC,gBAAkBlyC,EAAQ4zC,WACrDn5C,SAAA,EAEDC,EAAAA,EAAAA,MAAA,QAAAD,SAAA,CACGO,EACA45C,EAAW,IAAM,MAEP,KAAZr5C,IACCnB,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQ6L,iBAAiBpR,UACvCL,EAAAA,EAAAA,KAACgK,EAAAA,EAAO,CAAC9J,MAAOiB,EAASuQ,UAAU,YAAWrR,UAC5CL,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQzE,QAAQd,UAC9BL,EAAAA,EAAAA,KAAC2R,EAAAA,IAAQ,cAQrBrR,EAAAA,EAAAA,MAAA,OAAK6H,UAAWvC,EAAQm0C,iBAAiB15C,SAAA,EACvCL,EAAAA,EAAAA,KAAC45C,EAAU,CACT/4C,GAAIA,EACJC,KAAMA,EACN6sB,WAAS,EACThtB,MAAOA,EACPw6C,UAAWA,EACX75C,SAAUA,EACVN,SAAUA,EACVc,KAAM45C,GACNtB,UAAWA,EACXvlC,aAAcA,EACdyiC,WAAYA,GACZxhC,MAAiB,KAAVA,EACPimC,WAAYjmC,EACZ/U,YAAaA,EACboH,UAAWvC,EAAQo2C,YACnBZ,WAAYA,GACZC,QAASA,GACTC,QAASA,KAEVG,KACCz7C,EAAAA,EAAAA,KAAA,OACEmI,UAAS,GAAAzD,OAAKkB,EAAQo0C,cAAa,KAAAt1C,OACvB,KAAV9D,EAAe,YAAc,IAC5BP,UAEHL,EAAAA,EAAAA,KAAC0xB,EAAAA,EAAU,CACT1vB,QACEg4C,EACI,WACEA,GACF,EACA,kBAAMwB,IAAoBD,GAAgB,EAEhD16C,GAAI65C,EACJl7B,KAAM,QACNk4B,oBAAoB,EACpBD,eAAe,EACfI,oBAAoB,EAAMx3C,SAEzBo7C,OAINX,IACC96C,EAAAA,EAAAA,KAAA,OACEmI,UAAS,GAAAzD,OAAKkB,EAAQo0C,cAAa,KAAAt1C,OACvB,KAAV9D,EAAe,YAAc,IAC5BP,SAEFy6C,WAOf,G,sECzMA,KAAe1wC,EAAAA,EAAAA,IA/BA,SAACpF,GAAY,OAC1BC,EAAAA,EAAAA,GAAa,CACXg3C,gBAAiB,CACf1uC,gBAAiB,UACjBjB,aAAc,EACdmG,aAAc,GACdnF,QAAS,EACTkF,cAAe,IAEjB0pC,cAAe,CACbryC,MAAO,UACP2S,SAAU,GACV1P,WAAY,IAEdqvC,UAAW,CACTtyC,MAAO,UACP2S,SAAU,GACV1P,WAAY,GACZ/C,YAAa,KAEd,GAWL,EATuB,SAAHjL,GAAoD,IAA9C8G,EAAO9G,EAAP8G,QAAShF,EAAK9B,EAAL8B,MAAOV,EAAKpB,EAALoB,MACxC,OACEI,EAAAA,EAAAA,MAAA,OAAK6H,UAAWvC,EAAQq2C,gBAAgB57C,SAAA,EACtCL,EAAAA,EAAAA,KAAA,MAAImI,UAAWvC,EAAQs2C,cAAc77C,SAAEH,KACvCF,EAAAA,EAAAA,KAAA,OAAKmI,UAAWvC,EAAQu2C,UAAU97C,SAAEO,MAG1C,G,8FCOA,IA1CoB,SAAH9B,GAAsC,IAAhC6B,EAAK7B,EAAL6B,MACrBtB,GAA0BC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA3C+8C,EAAK78C,EAAA,GAAE88C,EAAQ98C,EAAA,GAEtB,OACEe,EAAAA,EAAAA,MAAC0R,EAAAA,EAAG,CACFtQ,GAAI,CACFuQ,QAAS,OACTK,WAAY,SACZyM,SAAU,CACRw6B,GAAI,MACJ93C,GAAI,WAENpB,SAAA,EAEFL,EAAAA,EAAAA,KAAC6lB,EAAAA,EAAe,CACdhlB,GAAG,kBACHC,KAAK,kBACLC,YAAY,GACZH,MAAM,GACNkB,KAAMs6C,EAAQ,OAAS,WACvBp7C,SAAU,WAAO,EACjBL,MAAOA,EACPi6C,aAAa56C,EAAAA,EAAAA,KAACwJ,EAAAA,IAAQ,IACtB6vC,gBAAiB,CACfiD,UAAU,GAEZtC,cAAe,kBAAMuC,UAAUC,UAAUC,UAAU97C,EAAM,KAG3DX,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,gBACJuH,MAAO,CACL0E,WAAY,QAEd/K,QAAQ,aACRC,QAAS,kBAAMq6C,GAAUD,EAAM,EAC/Bx7C,MAAO,gBAIf,C,iIC5CO,IAAM87C,EAAyB,KACzBC,EAAyB,KACzBC,EAA2B,KAE3BjS,EAAa,SAACC,GACzB,IAAID,EAAa,KAIjB,MAHiB,WAAbC,IACFD,EAAa,OAERA,CACT,C","sources":["screens/Console/Buckets/BucketDetails/AddAccessRule.tsx","screens/Console/Buckets/BucketDetails/BrowserHandler.tsx","screens/Console/Buckets/ListBuckets/UploadPermissionUtils.ts","screens/Console/ObjectBrowser/BrowserBreadcrumbs.tsx","screens/Console/Buckets/ListBuckets/UploadFilesButton.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DetailsListPanel.tsx","screens/Console/Common/FormComponents/DateSelector/utils.ts","screens/Console/Common/FormComponents/DateSelector/DateSelector.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SetRetention.tsx","utils/validationFunctions.ts","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DeleteObject.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SetLegalHoldModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/ObjectMetaData.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/IconWithLabel.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/utils.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/TagsModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/InspectObject.tsx","screens/Console/ObjectBrowser/utils.ts","screens/Console/ObjectBrowser/RenameLongFilename.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ObjectDetailPanel.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/RestoreFileVersion.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SpecificVersionPill.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/FileVersionItem.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DeleteNonCurrent.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/DeleteSelectedVersions.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/VersionsNavigator.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjectsHelpers.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjectsTable.tsx","screens/Console/ObjectBrowser/objectBrowserThunks.ts","screens/Console/ObjectBrowser/FilterObjectsSB.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjects.tsx","screens/Console/ObjectBrowser/OBHeader.tsx","screens/Console/Common/FormComponents/DaysSelector/DaysSelector.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/ShareFile.tsx","screens/Console/Buckets/ListBuckets/Objects/Preview/PreviewFileContent.tsx","screens/Console/Buckets/ListBuckets/Objects/Preview/PreviewFileModal.tsx","screens/Console/Buckets/ListBuckets/Objects/utils.ts","screens/Console/Common/Components/withSuspense.tsx","screens/Console/Common/FormComponents/CheckboxWrapper/CheckboxWrapper.tsx","screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Common/WarningMessage/WarningMessage.tsx","screens/Console/Tools/KeyRevealer.tsx","utils/wsUtils.ts"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport {\n AddAccessRuleIcon,\n Button,\n FormLayout,\n Grid,\n InputBox,\n Select,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport {\n setErrorSnackMessage,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IAddAccessRule {\n modalOpen: boolean;\n onClose: () => any;\n bucket: string;\n prefilledRoute?: string;\n}\n\nconst AddAccessRule = ({\n modalOpen,\n onClose,\n bucket,\n prefilledRoute,\n}: IAddAccessRule) => {\n const dispatch = useAppDispatch();\n\n const [prefix, setPrefix] = useState(\"\");\n const [selectedAccess, setSelectedAccess] = useState(\"readonly\");\n\n useEffect(() => {\n if (prefilledRoute) {\n setPrefix(prefilledRoute);\n }\n }, [prefilledRoute]);\n\n const accessOptions = [\n { label: \"readonly\", value: \"readonly\" },\n { label: \"writeonly\", value: \"writeonly\" },\n { label: \"readwrite\", value: \"readwrite\" },\n ];\n\n const resetForm = () => {\n setPrefix(\"\");\n setSelectedAccess(\"readonly\");\n };\n\n const createProcess = () => {\n api.bucket\n .setAccessRuleWithBucket(bucket, {\n prefix: prefix,\n access: selectedAccess,\n })\n .then((res: any) => {\n dispatch(setSnackBarMessage(\"Access Rule added successfully\"));\n onClose();\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n onClose();\n });\n };\n\n return (\n }\n >\n \n {\n setPrefix(e.target.value);\n }}\n tooltip={\n \"Enter '/' to apply the rule to all prefixes and objects at the bucket root. Do not include the wildcard asterisk '*' as part of the prefix *unless* it is an explicit part of the prefix name. The Console automatically appends an asterisk to the appropriate sections of the resulting IAM policy.\"\n }\n />\n {\n setSelectedAccess(value);\n }}\n label=\"Access\"\n value={selectedAccess}\n options={accessOptions}\n disabled={false}\n />\n \n \n\n \n \n \n \n );\n};\n\nexport default AddAccessRule;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useLocation, useParams } from \"react-router-dom\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport { containerForHeader } from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport ListObjects from \"../ListBuckets/Objects/ListObjects/ListObjects\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport {\n errorInConnection,\n newMessage,\n resetMessages,\n setIsOpeningOD,\n setIsVersioned,\n setLoadingLocking,\n setLoadingObjectInfo,\n setLoadingObjects,\n setLoadingRecords,\n setLoadingVersioning,\n setLoadingVersions,\n setLockingEnabled,\n setObjectDetailsView,\n setRecords,\n setSelectedObjectView,\n setSimplePathHandler,\n setVersionsModeEnabled,\n} from \"../../ObjectBrowser/objectBrowserSlice\";\nimport hasPermission from \"../../../../common/SecureComponent/accessControl\";\nimport { IMessageEvent } from \"websocket\";\nimport { wsProtocol } from \"../../../../utils/wsUtils\";\nimport {\n WebsocketRequest,\n WebsocketResponse,\n} from \"../ListBuckets/Objects/ListObjects/types\";\nimport { decodeURLString, encodeURLString } from \"../../../../common/utils\";\nimport { permissionItems } from \"../ListBuckets/Objects/utils\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport OBHeader from \"../../ObjectBrowser/OBHeader\";\nimport { api } from \"api\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...containerForHeader,\n });\n\nlet objectsWS: WebSocket;\nlet currentRequestID: number = 0;\nlet errorCounter: number = 0;\nlet wsInFlight: boolean = false;\n\nconst initWSConnection = (\n openCallback?: () => void,\n onMessageCallback?: (message: IMessageEvent) => void,\n connErrorCallback?: (message: string) => void,\n) => {\n if (wsInFlight) {\n return;\n }\n wsInFlight = true;\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n // check if we are using base path, if not this always is `/`\n const baseLocation = new URL(document.baseURI);\n const baseUrl = baseLocation.pathname;\n\n const wsProt = wsProtocol(url.protocol);\n\n objectsWS = new WebSocket(\n `${wsProt}://${url.hostname}:${port}${baseUrl}ws/objectManager`,\n );\n\n objectsWS.onopen = () => {\n wsInFlight = false;\n if (openCallback) {\n openCallback();\n }\n errorCounter = 0;\n };\n\n if (onMessageCallback) {\n objectsWS.onmessage = onMessageCallback;\n }\n\n const reconnectFn = () => {\n if (errorCounter <= 5) {\n initWSConnection(() => {}, onMessageCallback, connErrorCallback);\n errorCounter += 1;\n } else {\n console.error(\n \"Websocket not available. Please review that your environment settings are enabled to allow websocket connections and that requests are made from the same origin.\",\n );\n if (connErrorCallback) {\n connErrorCallback(\n \"Couldn't establish WebSocket connection. Please review your configuration and try again.\",\n );\n }\n }\n };\n\n objectsWS.onclose = () => {\n wsInFlight = false;\n console.warn(\"Websocket Disconnected. Attempting Reconnection...\");\n\n // We reconnect after 3 seconds\n setTimeout(reconnectFn, 3000);\n };\n\n objectsWS.onerror = () => {\n wsInFlight = false;\n console.error(\"Error in websocket connection. Attempting reconnection...\");\n // Onclose will be triggered by specification, reconnect function will be executed there to avoid duplicated requests\n };\n};\n\nconst BrowserHandler = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n const location = useLocation();\n\n const loadingVersioning = useSelector(\n (state: AppState) => state.objectBrowser.loadingVersioning,\n );\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const rewindDate = useSelector(\n (state: AppState) => state.objectBrowser.rewind.dateToRewind,\n );\n const showDeleted = useSelector(\n (state: AppState) => state.objectBrowser.showDeleted,\n );\n const allowResources = useSelector(\n (state: AppState) => state.console.session.allowResources,\n );\n const loadingObjects = useSelector(\n (state: AppState) => state.objectBrowser.loadingObjects,\n );\n const loadingLocking = useSelector(\n (state: AppState) => state.objectBrowser.loadingLocking,\n );\n const loadRecords = useSelector(\n (state: AppState) => state.objectBrowser.loadRecords,\n );\n const selectedInternalPaths = useSelector(\n (state: AppState) => state.objectBrowser.selectedInternalPaths,\n );\n const simplePath = useSelector(\n (state: AppState) => state.objectBrowser.simplePath,\n );\n const isOpeningOD = useSelector(\n (state: AppState) => state.objectBrowser.isOpeningObjectDetail,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const bucketName = params.bucketName || \"\";\n const pathSegment = location.pathname.split(`/browser/${bucketName}/`);\n const internalPaths = pathSegment.length === 2 ? pathSegment[1] : \"\";\n\n /*WS Request Handlers*/\n const onMessageCallBack = useCallback(\n (message: IMessageEvent) => {\n // reset start status\n dispatch(setLoadingObjects(false));\n\n const response: WebsocketResponse = JSON.parse(message.data.toString());\n if (currentRequestID === response.request_id) {\n // If response is not from current request, we can omit\n if (response.request_id !== currentRequestID) {\n return;\n }\n\n if (\n response.error ===\n \"The Access Key Id you provided does not exist in our records.\"\n ) {\n // Session expired.\n window.location.reload();\n } else if (response.error === \"Access Denied.\") {\n const internalPathsPrefix = response.prefix;\n let pathPrefix = \"\";\n\n if (internalPathsPrefix) {\n const decodedPath = decodeURLString(internalPathsPrefix);\n\n pathPrefix = decodedPath.endsWith(\"/\")\n ? decodedPath\n : decodedPath + \"/\";\n }\n\n const permitItems = permissionItems(\n response.bucketName || bucketName,\n pathPrefix,\n allowResources || [],\n );\n\n if (!permitItems || permitItems.length === 0) {\n dispatch(\n setErrorSnackMessage({\n errorMessage: response.error,\n detailedError: response.error,\n }),\n );\n } else {\n dispatch(setRecords(permitItems));\n }\n\n return;\n }\n\n // This indicates final messages is received.\n if (response.request_end) {\n dispatch(setLoadingObjects(false));\n dispatch(setLoadingRecords(false));\n return;\n }\n\n if (response.data) {\n dispatch(newMessage(response.data));\n }\n }\n },\n [dispatch, allowResources, bucketName],\n );\n\n const initWSRequest = useCallback(\n (path: string, date: Date) => {\n if (objectsWS && objectsWS.readyState === 1) {\n try {\n const newRequestID = currentRequestID + 1;\n dispatch(resetMessages());\n dispatch(errorInConnection(false));\n\n const request: WebsocketRequest = {\n bucket_name: bucketName,\n prefix: encodeURLString(path),\n mode: rewindEnabled || showDeleted ? \"rewind\" : \"objects\",\n date: date.toISOString(),\n request_id: newRequestID,\n };\n\n objectsWS.send(JSON.stringify(request));\n\n // We store the new ID for the requestID\n currentRequestID = newRequestID;\n } catch (e) {\n console.error(e);\n }\n } else {\n // Socket is disconnected, we request reconnection but will need to recreate call\n const dupRequest = () => {\n initWSRequest(path, date);\n };\n\n const fatalWSError = (message: string) => {\n dispatch(\n setErrorSnackMessage({\n errorMessage: message,\n detailedError: message,\n }),\n );\n dispatch(errorInConnection(true));\n };\n\n initWSConnection(dupRequest, onMessageCallBack, fatalWSError);\n }\n },\n [bucketName, rewindEnabled, showDeleted, dispatch, onMessageCallBack],\n );\n\n useEffect(() => {\n return () => {\n const request: WebsocketRequest = {\n mode: \"cancel\",\n request_id: currentRequestID,\n };\n\n if (objectsWS && objectsWS.readyState === 1) {\n objectsWS.send(JSON.stringify(request));\n }\n };\n }, []);\n\n useEffect(() => {\n const decodedIPaths = decodeURLString(internalPaths);\n\n dispatch(setLoadingVersioning(true));\n\n if (decodedIPaths.endsWith(\"/\") || decodedIPaths === \"\") {\n dispatch(setObjectDetailsView(false));\n dispatch(setSelectedObjectView(null));\n dispatch(\n setSimplePathHandler(decodedIPaths === \"\" ? \"/\" : decodedIPaths),\n );\n dispatch(setLoadingLocking(true));\n } else {\n dispatch(setLoadingObjectInfo(true));\n dispatch(setObjectDetailsView(true));\n dispatch(setLoadingVersions(true));\n dispatch(\n setSelectedObjectView(\n `${decodedIPaths ? `${encodeURLString(decodedIPaths)}` : ``}`,\n ),\n );\n dispatch(\n setSimplePathHandler(\n `${decodedIPaths.split(\"/\").slice(0, -1).join(\"/\")}/`,\n ),\n );\n }\n }, [bucketName, internalPaths, rewindDate, rewindEnabled, dispatch]);\n\n // Direct file access effect / prefix\n useEffect(() => {\n if (!loadingObjects && !loadRecords && !rewindEnabled && !isOpeningOD) {\n // No requests are in progress, We review current path, if it doesn't end in '/' and current list is empty then we trigger a new request.\n const decodedInternalPaths = decodeURLString(internalPaths);\n\n if (\n !decodedInternalPaths.endsWith(\"/\") &&\n simplePath !== decodedInternalPaths &&\n decodedInternalPaths !== \"\"\n ) {\n setLoadingRecords(true);\n const parentPath = `${decodedInternalPaths\n .split(\"/\")\n .slice(0, -1)\n .join(\"/\")}/`;\n\n initWSRequest(parentPath, new Date());\n }\n }\n dispatch(setIsOpeningOD(false));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n loadingObjects,\n loadRecords,\n dispatch,\n internalPaths,\n initWSRequest,\n rewindEnabled,\n simplePath,\n ]);\n\n const displayListObjects =\n hasPermission(bucketName, [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]) || anonymousMode;\n\n // Common objects list\n useEffect(() => {\n // begin watch if bucketName in bucketList and start pressed\n if (loadingObjects && displayListObjects) {\n let pathPrefix = \"\";\n if (internalPaths) {\n const decodedPath = decodeURLString(internalPaths);\n\n // internalPaths are selected (file details), we split and get parent folder\n if (selectedInternalPaths === internalPaths) {\n pathPrefix = `${decodeURLString(internalPaths)\n .split(\"/\")\n .slice(0, -1)\n .join(\"/\")}/`;\n } else {\n pathPrefix = decodedPath.endsWith(\"/\")\n ? decodedPath\n : decodedPath + \"/\";\n }\n }\n\n let requestDate = new Date();\n\n if (rewindEnabled && rewindDate) {\n requestDate = new Date(rewindDate);\n }\n initWSRequest(pathPrefix, requestDate);\n } else {\n dispatch(setLoadingObjects(false));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n loadingObjects,\n internalPaths,\n dispatch,\n rewindDate,\n rewindEnabled,\n displayListObjects,\n initWSRequest,\n ]);\n\n useEffect(() => {\n dispatch(setVersionsModeEnabled({ status: false }));\n }, [internalPaths, dispatch]);\n\n useEffect(() => {\n if (loadingVersioning && !anonymousMode) {\n if (displayListObjects) {\n api.buckets\n .getBucketVersioning(bucketName)\n .then((res) => {\n dispatch(setIsVersioned(res.data));\n dispatch(setLoadingVersioning(false));\n })\n .catch((err) => {\n console.error(\n \"Error Getting Object Versioning Status: \",\n err.error.detailedMessage,\n );\n dispatch(setLoadingVersioning(false));\n });\n } else {\n dispatch(setLoadingVersioning(false));\n dispatch(resetMessages());\n }\n }\n }, [\n bucketName,\n loadingVersioning,\n dispatch,\n displayListObjects,\n anonymousMode,\n ]);\n\n useEffect(() => {\n if (loadingLocking) {\n if (displayListObjects) {\n api.buckets\n .getBucketObjectLockingStatus(bucketName)\n .then((res) => {\n dispatch(setLockingEnabled(res.data.object_locking_enabled));\n dispatch(setLoadingLocking(false));\n })\n .catch((err) => {\n console.error(\n \"Error Getting Object Locking Status: \",\n err.error.detailedMessage,\n );\n dispatch(setLoadingLocking(false));\n });\n } else {\n dispatch(resetMessages());\n dispatch(setLoadingLocking(false));\n }\n }\n }, [bucketName, loadingLocking, dispatch, displayListObjects]);\n\n useEffect(() => {\n // when a bucket param changes, (i.e /browser/:bucketName), re-init e.g with KBar, this should not apply for resources prefixes.\n const permitItems = permissionItems(bucketName, \"\", allowResources || []);\n\n if (bucketName && (!permitItems || permitItems.length === 0)) {\n dispatch(resetMessages());\n dispatch(setLoadingRecords(true));\n dispatch(setLoadingObjects(true));\n\n let pathPrefix = \"\";\n if (internalPaths) {\n const decodedPath = decodeURLString(internalPaths);\n\n // internalPaths are selected (file details), we split and get parent folder\n if (selectedInternalPaths === internalPaths) {\n pathPrefix = `${decodeURLString(internalPaths)\n .split(\"/\")\n .slice(0, -1)\n .join(\"/\")}/`;\n } else {\n pathPrefix = decodedPath.endsWith(\"/\")\n ? decodedPath\n : decodedPath + \"/\";\n }\n }\n\n initWSRequest(pathPrefix, new Date());\n }\n }, [\n bucketName,\n dispatch,\n initWSRequest,\n allowResources,\n internalPaths,\n selectedInternalPaths,\n ]);\n\n return (\n \n {!anonymousMode && }\n \n \n );\n};\n\nexport default withStyles(styles)(BrowserHandler);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const extractFileExtn = (resourceStr: string) => {\n //file extensions may contain query string. so exclude query strings !\n return (resourceStr.match(/\\.([^.]*?)(?=\\?|#|$)/) || [])[1];\n};\nexport const getPolicyAllowedFileExtensions = (\n sessionGrants: Record,\n uploadPath: string,\n scopes: string[] = [],\n) => {\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n uploadPath,\n scopes,\n );\n\n //get acceptable files if any in the policy.\n const allowedFileExtensions = sessionGrantWildCards.reduce(\n (acc: string[], cv: string) => {\n const extension: string = extractFileExtn(cv);\n if (extension) {\n acc.push(`.${extension}`); //strict extension matching.\n }\n return acc;\n },\n [],\n );\n\n const uniqueExtensions = [...new Set(allowedFileExtensions)];\n return uniqueExtensions.join(\",\");\n};\n\n// The resource should not have the extensions (*.ext) for the hasPermission to work.\n// so sanitize this and also use to extract the allowed extensions outside of permission check.\nexport const getSessionGrantsWildCard = (\n sessionGrants: Record,\n uploadPath: string,\n scopes: string[] = [],\n) => {\n //get only the path matching grants to reduce processing.\n const grantsWithExtension = Object.keys(sessionGrants).reduce(\n (acc: Record, grantKey: string) => {\n if (extractFileExtn(grantKey) && grantKey.includes(uploadPath)) {\n acc[grantKey] = sessionGrants[grantKey];\n }\n return acc;\n },\n {},\n );\n\n const checkPathsForPermission = (sessionGrantKey: string) => {\n const grantActions = grantsWithExtension[sessionGrantKey];\n const hasScope = grantActions.some((actionKey) =>\n scopes.find((scopeKey) => {\n let wildCardMatch = false;\n const hasWildCard = scopeKey.indexOf(\"*\") !== -1;\n if (hasWildCard) {\n const scopeActionKey = scopeKey.substring(0, scopeKey.length - 1);\n\n wildCardMatch = actionKey.includes(scopeActionKey);\n }\n\n return wildCardMatch || actionKey === scopeKey;\n }),\n );\n\n const sessionGrantKeyPath = sessionGrantKey.substring(\n 0,\n sessionGrantKey.indexOf(\"/*.\"), //start of extension part.\n );\n const isUploadPathMatching =\n sessionGrantKeyPath === `arn:aws:s3:::${uploadPath}`;\n\n const hasGrant =\n isUploadPathMatching && sessionGrantKey !== \"arn:aws:s3:::*\";\n\n return hasScope && hasGrant;\n };\n\n return Object.keys(grantsWithExtension).filter(checkPathsForPermission);\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { Theme } from \"@mui/material/styles\";\nimport { Link, useNavigate } from \"react-router-dom\";\nimport { objectBrowserCommon } from \"../Common/FormComponents/common/styleLibrary\";\nimport { encodeURLString, safeDecodeURIComponent } from \"../../../common/utils\";\nimport { Button, CopyIcon, NewPathIcon, Tooltip, Breadcrumbs } from \"mds\";\nimport { hasPermission } from \"../../../common/SecureComponent\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../common/SecureComponent/permissions\";\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport { setSnackBarMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setVersionsModeEnabled } from \"./objectBrowserSlice\";\nimport { getSessionGrantsWildCard } from \"../Buckets/ListBuckets/UploadPermissionUtils\";\n\nconst CreatePathModal = withSuspense(\n React.lazy(\n () => import(\"../Buckets/ListBuckets/Objects/ListObjects/CreatePathModal\"),\n ),\n);\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...objectBrowserCommon,\n slashSpacingStyle: {\n margin: \"0 5px\",\n },\n }),\n);\n\ninterface IObjectBrowser {\n bucketName: string;\n internalPaths: string;\n hidePathButton?: boolean;\n additionalOptions?: React.ReactNode;\n}\n\nconst BrowserBreadcrumbs = ({\n bucketName,\n internalPaths,\n hidePathButton,\n additionalOptions,\n}: IObjectBrowser) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const classes = useStyles();\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const versionedFile = useSelector(\n (state: AppState) => state.objectBrowser.versionedFile,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const [createFolderOpen, setCreateFolderOpen] = useState(false);\n\n const putObjectPermScopes = [\n IAM_SCOPES.S3_PUT_OBJECT,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ];\n\n const sessionGrants = useSelector((state: AppState) =>\n state.console.session ? state.console.session.permissions || {} : {},\n );\n\n let paths = internalPaths;\n\n if (internalPaths !== \"\") {\n paths = `/${internalPaths}`;\n }\n\n const splitPaths = paths.split(\"/\").filter((path) => path !== \"\");\n const lastBreadcrumbsIndex = splitPaths.length - 1;\n\n const pathToCheckPerms = paths || bucketName;\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n pathToCheckPerms,\n putObjectPermScopes,\n );\n\n const canCreatePath =\n hasPermission(\n [pathToCheckPerms, ...sessionGrantWildCards],\n putObjectPermScopes,\n ) || anonymousMode;\n\n let breadcrumbsMap = splitPaths.map((objectItem: string, index: number) => {\n const subSplit = `${splitPaths.slice(0, index + 1).join(\"/\")}/`;\n const route = `/browser/${bucketName}/${\n subSplit ? `${encodeURLString(subSplit)}` : ``\n }`;\n\n if (index === lastBreadcrumbsIndex && objectItem === versionedFile) {\n return null;\n }\n\n return (\n \n /\n {index === lastBreadcrumbsIndex ? (\n \n {safeDecodeURIComponent(objectItem) /*Only for display*/}\n \n ) : (\n {\n dispatch(\n setVersionsModeEnabled({ status: false, objectName: \"\" }),\n );\n }}\n >\n {\n safeDecodeURIComponent(\n objectItem,\n ) /*Only for display to preserve */\n }\n \n )}\n \n );\n });\n\n let versionsItem: any[] = [];\n\n if (versionsMode) {\n versionsItem = [\n \n \n /\n {versionedFile} - Versions\n \n ,\n ];\n }\n\n const listBreadcrumbs: any[] = [\n \n {\n dispatch(setVersionsModeEnabled({ status: false, objectName: \"\" }));\n }}\n >\n {bucketName}\n \n ,\n ...breadcrumbsMap,\n ...versionsItem,\n ];\n\n const closeAddFolderModal = () => {\n setCreateFolderOpen(false);\n };\n\n const goBackFunction = () => {\n if (versionsMode) {\n dispatch(setVersionsModeEnabled({ status: false, objectName: \"\" }));\n } else {\n if (splitPaths.length === 0) {\n navigate(\"/browser\");\n\n return;\n }\n\n const prevPath = splitPaths.slice(0, -1);\n\n navigate(\n `/browser/${bucketName}${\n prevPath.length > 0\n ? `/${encodeURLString(`${prevPath.join(\"/\")}/`)}`\n : \"\"\n }`,\n );\n }\n };\n\n return (\n \n
\n {createFolderOpen && (\n \n )}\n \n \n \n }\n variant={\"regular\"}\n onClick={() => {\n dispatch(setSnackBarMessage(\"Path copied to clipboard\"));\n }}\n style={{\n width: \"28px\",\n height: \"28px\",\n color: \"#969FA8\",\n border: \"#969FA8 1px solid\",\n marginRight: 5,\n }}\n />\n \n
\n {additionalOptions}\n
\n \n }\n >\n {listBreadcrumbs}\n \n {!hidePathButton && (\n \n {\n setCreateFolderOpen(true);\n }}\n disabled={anonymousMode ? false : rewindEnabled || !canCreatePath}\n icon={}\n style={{\n whiteSpace: \"nowrap\",\n }}\n variant={\"regular\"}\n label={\"Create new path\"}\n />\n \n )}\n
\n
{additionalOptions}
\n
\n );\n};\n\nexport default BrowserBreadcrumbs;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport { CSSObject } from \"styled-components\";\nimport { Menu, MenuItem } from \"@mui/material\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport ListItemText from \"@mui/material/ListItemText\";\nimport ListItemIcon from \"@mui/material/ListItemIcon\";\nimport { Button, UploadFolderIcon, UploadIcon } from \"mds\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../common/SecureComponent/permissions\";\nimport { hasPermission } from \"../../../../common/SecureComponent\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport { useSelector } from \"react-redux\";\nimport { AppState } from \"../../../../store\";\nimport { getSessionGrantsWildCard } from \"./UploadPermissionUtils\";\n\ninterface IUploadFilesButton {\n uploadPath: string;\n bucketName: string;\n forceDisable?: boolean;\n uploadFileFunction: (closeFunction: () => void) => void;\n uploadFolderFunction: (closeFunction: () => void) => void;\n classes: any;\n overrideStyles?: CSSObject;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n listUploadIcons: {\n height: 20,\n \"& .min-icon\": {\n width: 18,\n fill: \"rgba(0,0,0,0.87)\",\n },\n },\n });\n\nconst UploadFilesButton = ({\n uploadPath,\n bucketName,\n forceDisable = false,\n uploadFileFunction,\n uploadFolderFunction,\n classes,\n overrideStyles = {},\n}: IUploadFilesButton) => {\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const sessionGrants = useSelector((state: AppState) =>\n state.console.session ? state.console.session.permissions || {} : {},\n );\n\n const putObjectPermScopes = [\n IAM_SCOPES.S3_PUT_OBJECT,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ];\n\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n uploadPath,\n putObjectPermScopes,\n );\n\n const [anchorEl, setAnchorEl] = useState(null);\n const openUploadMenu = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleCloseUpload = () => {\n setAnchorEl(null);\n };\n\n const uploadObjectAllowed =\n hasPermission(\n [uploadPath, ...sessionGrantWildCards],\n putObjectPermScopes,\n ) || anonymousMode;\n\n const uploadFolderAllowed = hasPermission(\n [bucketName, ...sessionGrantWildCards],\n putObjectPermScopes,\n false,\n true,\n );\n\n const uploadEnabled: boolean = uploadObjectAllowed || uploadFolderAllowed;\n\n return (\n \n \n }\n variant={\"callAction\"}\n disabled={forceDisable || !uploadEnabled}\n sx={overrideStyles}\n />\n \n {\n handleCloseUpload();\n }}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"center\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"center\",\n }}\n >\n {\n uploadFileFunction(handleCloseUpload);\n }}\n disabled={!uploadObjectAllowed || forceDisable}\n >\n \n \n \n Upload File\n \n {\n uploadFolderFunction(handleCloseUpload);\n }}\n disabled={!uploadFolderAllowed || forceDisable}\n >\n \n \n \n Upload Folder\n \n \n \n );\n};\n\nexport default withStyles(styles)(UploadFilesButton);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { Button, ClosePanelIcon, Grid } from \"mds\";\nimport makeStyles from \"@mui/styles/makeStyles\";\n\ninterface IDetailsListPanel {\n open: boolean;\n className?: string;\n closePanel: () => void;\n children: React.ReactNode;\n}\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n detailsList: {\n borderColor: \"#EAEDEE\",\n borderWidth: 0,\n borderStyle: \"solid\",\n borderRadius: 3,\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n width: 0,\n transitionDuration: \"0.3s\",\n overflowX: \"hidden\",\n overflowY: \"auto\",\n position: \"relative\",\n opacity: 0,\n marginLeft: -1,\n \"&.open\": {\n width: 300,\n minWidth: 300,\n borderLeftWidth: 1,\n opacity: 1,\n },\n \"@media (max-width: 799px)\": {\n \"&.open\": {\n width: \"100%\",\n minWidth: \"100%\",\n borderLeftWidth: 0,\n },\n },\n },\n }),\n);\n\nconst DetailsListPanel = ({\n open,\n closePanel,\n className = \"\",\n children,\n}: IDetailsListPanel) => {\n const classes = useStyles();\n\n return (\n \n }\n sx={{\n position: \"absolute\",\n right: 5,\n top: 18,\n padding: 0,\n height: 14,\n \"&:hover:not(:disabled)\": {\n backgroundColor: \"transparent\",\n },\n }}\n />\n {children}\n \n );\n};\n\nexport default DetailsListPanel;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const months = [\n { value: \"01\", label: \"January\" },\n { value: \"02\", label: \"February\" },\n { value: \"03\", label: \"March\" },\n { value: \"04\", label: \"April\" },\n { value: \"05\", label: \"May\" },\n { value: \"06\", label: \"June\" },\n { value: \"07\", label: \"July\" },\n { value: \"08\", label: \"August\" },\n { value: \"09\", label: \"September\" },\n { value: \"10\", label: \"October\" },\n { value: \"11\", label: \"November\" },\n { value: \"12\", label: \"December\" },\n];\n\nexport const days = Array.from(Array(31), (_, num) => ({\n value: (num + 1).toString(),\n label: (num + 1).toString(),\n}));\n\nconst currentYear = new Date().getFullYear();\n\nexport const years = Array.from(Array(50), (_, numYear) => ({\n value: (numYear + currentYear).toString(),\n label: (numYear + currentYear).toString(),\n}));\n\nexport const validDate = (year: string, month: string, day: string): any[] => {\n const currentDate = Date.parse(`${year}-${month}-${day}`);\n\n if (isNaN(currentDate)) {\n return [false, \"\"];\n }\n\n const parsedMonth = parseInt(month);\n const parsedDay = parseInt(day);\n\n const monthForString = parsedMonth < 10 ? `0${parsedMonth}` : parsedMonth;\n const dayForString = parsedDay < 10 ? `0${parsedDay}` : parsedDay;\n\n const parsedDate = new Date(currentDate).toISOString().split(\"T\")[0];\n const dateString = `${year}-${monthForString}-${dayForString}`;\n\n return [parsedDate === dateString, dateString];\n};\n\n// twoDigitDate gets a two digit string number used for months or days\n// returns \"NaN\" if number is NaN\nexport const twoDigitDate = (num: number): string => {\n return num < 10 ? `0${num}` : `${num}`;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useState,\n} from \"react\";\nimport clsx from \"clsx\";\nimport { Box, Grid, HelpIcon, InputLabel, Select, Switch, Tooltip } from \"mds\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { days, months, validDate, years } from \"./utils\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n fieldContainer: {\n ...fieldBasic.fieldContainer,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n paddingBottom: 10,\n marginTop: 11,\n marginBottom: 6,\n },\n });\n\ninterface IDateSelectorProps {\n classes: any;\n id: string;\n label: string;\n disableOptions?: boolean;\n addSwitch?: boolean;\n tooltip?: string;\n borderBottom?: boolean;\n value?: string;\n onDateChange: (date: string, isValid: boolean) => any;\n}\n\nconst DateSelector = forwardRef(\n (\n {\n classes,\n id,\n label,\n disableOptions = false,\n addSwitch = false,\n tooltip = \"\",\n borderBottom = false,\n onDateChange,\n value = \"\",\n }: IDateSelectorProps,\n ref: any,\n ) => {\n useImperativeHandle(ref, () => ({ resetDate }));\n\n const [dateEnabled, setDateEnabled] = useState(false);\n const [month, setMonth] = useState(\"\");\n const [day, setDay] = useState(\"\");\n const [year, setYear] = useState(\"\");\n\n useEffect(() => {\n // verify if there is a current value\n // assume is in the format \"2021-12-30\"\n if (value !== \"\") {\n const valueSplit = value.split(\"-\");\n\n setYear(valueSplit[0]);\n setMonth(valueSplit[1]);\n // Turn to single digit to be displayed on dropdown buttons\n setDay(`${parseInt(valueSplit[2])}`);\n }\n }, [value]);\n\n useEffect(() => {\n const [isValid, dateString] = validDate(year, month, day);\n onDateChange(dateString, isValid);\n }, [month, day, year, onDateChange]);\n\n const resetDate = () => {\n setMonth(\"\");\n setDay(\"\");\n setYear(\"\");\n };\n\n const isDateDisabled = () => {\n if (disableOptions) {\n return disableOptions;\n } else if (addSwitch) {\n return !dateEnabled;\n } else {\n return false;\n }\n };\n\n const monthForDropDown = [{ value: \"\", label: \"\" }, ...months];\n const daysForDrop = [{ value: \"\", label: \"\" }, ...days];\n const yearsForDrop = [{ value: \"\", label: \"\" }, ...years];\n\n return (\n \n
\n \n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n {addSwitch && (\n {\n setDateEnabled(e.target.checked);\n if (!e.target.checked) {\n onDateChange(\"\", true);\n }\n }}\n switchOnly\n />\n )}\n
\n
\n \n {\n setMonth(newValue);\n }}\n options={monthForDropDown}\n label={\"\"}\n disabled={isDateDisabled()}\n />\n\n {\n setDay(newValue);\n }}\n options={daysForDrop}\n label={\"\"}\n disabled={isDateDisabled()}\n />\n\n {\n setYear(newValue);\n }}\n options={yearsForDrop}\n label={\"\"}\n disabled={isDateDisabled()}\n />\n \n \n );\n },\n);\n\nexport default withStyles(styles)(DateSelector);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useRef, useState } from \"react\";\n\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Button, Grid, RadioGroup, Switch } from \"mds\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\n\nimport { twoDigitDate } from \"../../../../Common/FormComponents/DateSelector/utils\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport DateSelector from \"../../../../Common/FormComponents/DateSelector/DateSelector\";\nimport { setModalErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { useSelector } from \"react-redux\";\nimport { BucketObject, ObjectRetentionMode } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { encodeURLString } from \"common/utils\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...formFieldStyles,\n ...modalStyleUtils,\n ...spacingUtils,\n });\n\ninterface ISetRetentionProps {\n classes: any;\n open: boolean;\n closeModalAndRefresh: (updateInfo: boolean) => void;\n objectName: string;\n bucketName: string;\n objectInfo: BucketObject;\n}\n\ninterface IRefObject {\n resetDate: () => void;\n}\n\nconst SetRetention = ({\n classes,\n open,\n closeModalAndRefresh,\n objectName,\n objectInfo,\n bucketName,\n}: ISetRetentionProps) => {\n const dispatch = useAppDispatch();\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const [statusEnabled, setStatusEnabled] = useState(true);\n const [type, setType] = useState(\"\");\n const [date, setDate] = useState(\"\");\n const [isDateValid, setIsDateValid] = useState(false);\n const [isSaving, setIsSaving] = useState(false);\n const [alreadyConfigured, setAlreadyConfigured] = useState(false);\n\n useEffect(() => {\n if (objectInfo.retention_mode) {\n setType(retentionConfig?.mode || ObjectRetentionMode.Governance);\n setAlreadyConfigured(true);\n }\n // get retention_until_date if defined\n if (objectInfo.retention_until_date) {\n const valueDate = new Date(objectInfo.retention_until_date);\n if (valueDate.toString() !== \"Invalid Date\") {\n const year = valueDate.getFullYear();\n const month = twoDigitDate(valueDate.getMonth() + 1);\n const day = valueDate.getDate();\n if (!isNaN(day) && month !== \"NaN\" && !isNaN(year)) {\n setDate(`${year}-${month}-${day}`);\n }\n }\n setAlreadyConfigured(true);\n }\n }, [objectInfo, retentionConfig?.mode]);\n\n const dateElement = useRef(null);\n\n const dateFieldDisabled = () => {\n return !(statusEnabled && (type === \"governance\" || type === \"compliance\"));\n };\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n };\n\n const resetForm = () => {\n setStatusEnabled(false);\n setType(ObjectRetentionMode.Governance);\n if (dateElement.current) {\n dateElement.current.resetDate();\n }\n };\n\n const addRetention = (\n selectedObject: string,\n versionId: string | null,\n expireDate: string,\n ) => {\n api.buckets\n .putObjectRetention(\n bucketName,\n {\n prefix: encodeURLString(selectedObject),\n version_id: versionId || \"\",\n },\n {\n expires: expireDate,\n mode: type as ObjectRetentionMode,\n },\n )\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSaving(false);\n });\n };\n\n const disableRetention = (\n selectedObject: string,\n versionId: string | null,\n ) => {\n api.buckets\n .deleteObjectRetention(bucketName, {\n prefix: encodeURLString(selectedObject),\n version_id: versionId || \"\",\n })\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSaving(false);\n });\n };\n\n const saveNewRetentionPolicy = () => {\n setIsSaving(true);\n const selectedObject = objectInfo.name || \"\";\n const versionId = objectInfo.version_id || null;\n\n const expireDate =\n !statusEnabled && type === \"governance\" ? \"\" : `${date}T23:59:59Z`;\n\n if (!statusEnabled && type === \"governance\") {\n disableRetention(selectedObject, versionId);\n\n return;\n }\n\n addRetention(selectedObject, versionId, expireDate);\n };\n\n const showSwitcher =\n alreadyConfigured && (type === \"governance\" || type === \"\");\n\n return (\n {\n resetForm();\n closeModalAndRefresh(false);\n }}\n >\n
\n Selected Object: {objectName}\n
\n ) => {\n onSubmit(e);\n }}\n >\n {showSwitcher && (\n \n ) => {\n setStatusEnabled(!statusEnabled);\n }}\n label={\"Status\"}\n indicatorLabels={[\"Enabled\", \"Disabled\"]}\n />\n \n )}\n \n {\n setType(e.target.value as ObjectRetentionMode);\n }}\n selectorOptions={[\n { label: \"Governance\", value: ObjectRetentionMode.Governance },\n { label: \"Compliance\", value: ObjectRetentionMode.Compliance },\n ]}\n />\n \n \n {\n setIsDateValid(isValid);\n if (isValid) {\n setDate(date);\n }\n }}\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(SetRetention);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const isVersionedMode = (status: string | undefined) => {\n return status === \"Enabled\" || status === \"Suspended\";\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { ErrorResponseHandler } from \"../../../../../../common/types\";\nimport { decodeURLString } from \"../../../../../../common/utils\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport useApi from \"../../../../Common/Hooks/useApi\";\nimport { ConfirmDeleteIcon, Switch } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { useSelector } from \"react-redux\";\nimport { isVersionedMode } from \"../../../../../../utils/validationFunctions\";\nimport { BucketVersioningResponse } from \"api/consoleApi\";\n\ninterface IDeleteObjectProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedObject: string;\n selectedBucket: string;\n\n versioningInfo: BucketVersioningResponse | undefined;\n selectedVersion?: string;\n}\n\nconst DeleteObject = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedObject,\n versioningInfo,\n selectedVersion = \"\",\n}: IDeleteObjectProps) => {\n const dispatch = useAppDispatch();\n const onDelSuccess = () => closeDeleteModalAndRefresh(true);\n const onDelError = (err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n\n // We close the modal box on access denied.\n if (err.detailedError === \"Access Denied.\") {\n closeDeleteModalAndRefresh(true);\n }\n };\n const onClose = () => closeDeleteModalAndRefresh(false);\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n const [deleteVersions, setDeleteVersions] = useState(false);\n const [bypassGovernance, setBypassGovernance] = useState(false);\n\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const canBypass =\n hasPermission(\n [selectedBucket],\n [IAM_SCOPES.S3_BYPASS_GOVERNANCE_RETENTION],\n ) && retentionConfig?.mode === \"governance\";\n\n if (!selectedObject) {\n return null;\n }\n const onConfirmDelete = () => {\n const decodedSelectedObject = decodeURLString(selectedObject);\n const recursive = decodedSelectedObject.endsWith(\"/\");\n invokeDeleteApi(\n \"DELETE\",\n `/api/v1/buckets/${selectedBucket}/objects?path=${selectedObject}${\n selectedVersion !== \"\"\n ? `&version_id=${selectedVersion}`\n : `&recursive=${recursive}&all_versions=${deleteVersions}`\n }${bypassGovernance ? \"&bypass=true\" : \"\"}`,\n );\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete:
\n {decodeURLString(selectedObject)}{\" \"}\n {selectedVersion !== \"\" ? (\n \n
\n
\n Version ID:\n
\n {selectedVersion}\n
\n ) : (\n \"\"\n )}\n ?
\n
\n {isVersionedMode(versioningInfo?.status) &&\n selectedVersion === \"\" && (\n \n {\n setDeleteVersions(!deleteVersions);\n }}\n description=\"\"\n />\n \n )}\n {canBypass && (deleteVersions || selectedVersion !== \"\") && (\n \n \n {\n setBypassGovernance(!bypassGovernance);\n }}\n description=\"\"\n />\n
\n \n )}\n {deleteVersions && (\n \n \n This will remove the object as well as all of its versions,{\" \"}\n
\n This action is irreversible.\n \n
\n Are you sure you want to continue?\n
\n )}\n \n }\n />\n );\n};\n\nexport default DeleteObject;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport get from \"lodash/get\";\nimport { Button, Grid, Switch } from \"mds\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\n\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport { encodeURLString } from \"../../../../../../common/utils\";\n\nimport { setModalErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { BucketObject, ObjectLegalHoldStatus } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...formFieldStyles,\n ...modalStyleUtils,\n ...spacingUtils,\n });\n\ninterface ISetRetentionProps {\n classes: any;\n open: boolean;\n closeModalAndRefresh: (reload: boolean) => void;\n objectName: string;\n bucketName: string;\n actualInfo: BucketObject;\n}\n\nconst SetLegalHoldModal = ({\n classes,\n open,\n closeModalAndRefresh,\n objectName,\n bucketName,\n actualInfo,\n}: ISetRetentionProps) => {\n const dispatch = useAppDispatch();\n const [legalHoldEnabled, setLegalHoldEnabled] = useState(false);\n const [isSaving, setIsSaving] = useState(false);\n const versionId = actualInfo.version_id;\n\n useEffect(() => {\n const status = get(actualInfo, \"legal_hold_status\", \"OFF\");\n setLegalHoldEnabled(status === \"ON\");\n }, [actualInfo]);\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n setIsSaving(true);\n\n api.buckets\n .putObjectLegalHold(\n bucketName,\n {\n prefix: encodeURLString(objectName),\n version_id: versionId || \"\",\n },\n {\n status: legalHoldEnabled\n ? ObjectLegalHoldStatus.Enabled\n : ObjectLegalHoldStatus.Disabled,\n },\n )\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSaving(false);\n });\n };\n\n const resetForm = () => {\n setLegalHoldEnabled(false);\n };\n\n return (\n {\n resetForm();\n closeModalAndRefresh(false);\n }}\n >\n \n Object: {bucketName}\n \n\n ) => {\n onSubmit(e);\n }}\n >\n \n ) => {\n setLegalHoldEnabled(!legalHoldEnabled);\n }}\n label={\"Legal Hold Status\"}\n indicatorLabels={[\"Enabled\", \"Disabled\"]}\n tooltip={\n \"To enable this feature you need to enable versioning on the bucket before creation\"\n }\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(SetLegalHoldModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { withStyles } from \"@mui/styles\";\nimport Grid from \"@mui/material/Grid\";\nimport { Box, Table, TableBody, TableCell, TableRow } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport {\n detailsPanel,\n spacingUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { safeDecodeURIComponent } from \"../../../../../../common/utils\";\n\ninterface IObjectMetadata {\n metaData: any;\n classes?: any;\n linear?: boolean;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n titleItem: {\n width: \"35%\",\n },\n ...spacingUtils,\n ...detailsPanel,\n });\n\nconst itemRendererFn = (element: any) => {\n return Array.isArray(element)\n ? element.map(safeDecodeURIComponent).join(\", \")\n : safeDecodeURIComponent(element);\n};\n\nconst ObjectMetaData = ({\n metaData,\n classes,\n linear = false,\n}: IObjectMetadata) => {\n const metaKeys = Object.keys(metaData);\n\n if (linear) {\n return (\n \n {metaKeys.map((element: string, index: number) => {\n const renderItem = itemRendererFn(metaData[element]);\n return (\n \n {element}\n
\n {renderItem}\n \n );\n })}\n
\n );\n }\n\n return (\n \n \n \n Object Metadata\n \n \n\n \n \n \n {metaKeys.map((element: string, index: number) => {\n const renderItem = itemRendererFn(metaData[element]);\n return (\n \n \n {element}\n \n {renderItem}\n \n );\n })}\n \n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(ObjectMetaData);\n","import React from \"react\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Theme } from \"@mui/material/styles\";\nimport { replaceUnicodeChar } from \"../../../../../../common/utils\";\n\ninterface IIconWithLabel {\n classes: any;\n icon: JSX.Element;\n strings: string[];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n fileName: {\n display: \"flex\",\n alignItems: \"center\",\n \"& .min-icon\": {\n width: 16,\n height: 16,\n marginRight: 4,\n minWidth: 16,\n minHeight: 16,\n },\n },\n fileNameText: {\n whiteSpace: \"pre\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n },\n });\n\nconst IconWithLabel = ({ classes, icon, strings }: IIconWithLabel) => {\n return (\n
\n {icon}\n \n {replaceUnicodeChar(strings[strings.length - 1])}\n \n
\n );\n};\n\nexport default withStyles(styles)(IconWithLabel);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\n\nimport {\n FileBookIcon,\n FileCodeIcon,\n FileConfigIcon,\n FileDbIcon,\n FileFontIcon,\n FileImageIcon,\n FileLockIcon,\n FileMissingIcon,\n FileMusicIcon,\n FileNonType,\n FilePdfIcon,\n FilePptIcon,\n FileTxtIcon,\n FileVideoIcon,\n FileXlsIcon,\n FileZipIcon,\n FolderBrowserIcon,\n} from \"mds\";\nimport IconWithLabel from \"./IconWithLabel\";\n\ninterface IExtToIcon {\n icon: any;\n extensions: string[];\n}\n\nexport const extensionToIcon: IExtToIcon[] = [\n {\n icon: ,\n extensions: [\"mp4\", \"mov\", \"avi\", \"mpeg\", \"mpg\"],\n },\n {\n icon: ,\n extensions: [\"mp3\", \"m4a\", \"aac\"],\n },\n {\n icon: ,\n extensions: [\"pdf\"],\n },\n {\n icon: ,\n extensions: [\"ppt\", \"pptx\"],\n },\n {\n icon: ,\n extensions: [\"xls\", \"xlsx\"],\n },\n {\n icon: ,\n extensions: [\"cer\", \"crt\", \"pem\"],\n },\n {\n icon: ,\n extensions: [\"html\", \"xml\", \"css\", \"py\", \"go\", \"php\", \"cpp\", \"h\", \"java\"],\n },\n {\n icon: ,\n extensions: [\"cfg\", \"yaml\"],\n },\n {\n icon: ,\n extensions: [\"sql\"],\n },\n {\n icon: ,\n extensions: [\"ttf\", \"otf\"],\n },\n {\n icon: ,\n extensions: [\"doc\", \"docx\", \"txt\", \"rtf\"],\n },\n {\n icon: ,\n extensions: [\"zip\", \"rar\", \"tar\", \"gz\"],\n },\n {\n icon: ,\n extensions: [\"epub\", \"mobi\", \"azw\", \"azw3\"],\n },\n {\n icon: ,\n extensions: [\"jpeg\", \"jpg\", \"gif\", \"tiff\", \"png\", \"heic\", \"dng\"],\n },\n];\n\nexport const displayFileIconName = (\n element: string,\n returnOnlyIcon: boolean = false,\n) => {\n let elementString = element;\n let icon = ;\n // Element is a folder\n if (element.endsWith(\"/\")) {\n icon = ;\n elementString = element.slice(0, -1);\n }\n\n const lowercaseElement = element.toLowerCase();\n for (const etc of extensionToIcon) {\n for (const ext of etc.extensions) {\n if (lowercaseElement.endsWith(`.${ext}`)) {\n icon = etc.icon;\n }\n }\n }\n\n if (!element.endsWith(\"/\") && element.indexOf(\".\") < 0) {\n icon = ;\n }\n\n const splitItem = elementString.split(\"/\");\n\n if (returnOnlyIcon) {\n return icon;\n }\n\n return ;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { Box, Grid } from \"@mui/material\";\nimport {\n AddNewTagIcon,\n Button,\n DisabledIcon,\n EditTagIcon,\n InputBox,\n SectionTitle,\n} from \"mds\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { SecureComponent } from \"../../../../../../common/SecureComponent\";\nimport Chip from \"@mui/material/Chip\";\nimport CloseIcon from \"@mui/icons-material/Close\";\nimport {\n selDistSet,\n setModalErrorSnackMessage,\n} from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { encodeURLString } from \"common/utils\";\nimport { useSelector } from \"react-redux\";\n\ninterface ITagModal {\n modalOpen: boolean;\n bucketName: string;\n actualInfo: BucketObject;\n onCloseAndUpdate: (refresh: boolean) => void;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n newTileHeader: {\n fontSize: 18,\n fontWeight: \"bold\",\n color: \"#000\",\n margin: \"35px 0\",\n paddingBottom: 15,\n display: \"flex\",\n alignItems: \"center\",\n \"& > svg\": {\n marginRight: 10,\n },\n },\n tagsForLabel: {\n fontSize: 16,\n margin: \"20px 0 30px\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n width: \"100%\",\n },\n currentTagsContainer: {\n fontSize: 14,\n fontWeight: \"normal\",\n },\n noTagsForObject: {\n color: \"#858585\",\n },\n deleteTag: {\n color: \"#C83B51\",\n marginLeft: 5,\n },\n ...formFieldStyles,\n ...modalStyleUtils,\n ...spacingUtils,\n });\n\nconst AddTagModal = ({\n modalOpen,\n onCloseAndUpdate,\n bucketName,\n actualInfo,\n classes,\n}: ITagModal) => {\n const dispatch = useAppDispatch();\n const distributedSetup = useSelector(selDistSet);\n const [newKey, setNewKey] = useState(\"\");\n const [newLabel, setNewLabel] = useState(\"\");\n const [isSending, setIsSending] = useState(false);\n const [deleteEnabled, setDeleteEnabled] = useState(false);\n const [deleteKey, setDeleteKey] = useState(\"\");\n const [deleteLabel, setDeleteLabel] = useState(\"\");\n\n const selectedObject = encodeURLString(actualInfo.name || \"\");\n\n const currentTags = actualInfo.tags;\n const currTagKeys = Object.keys(currentTags || {});\n\n const allPathData = actualInfo.name?.split(\"/\");\n const currentItem = allPathData?.pop() || \"\";\n\n const resetForm = () => {\n setNewLabel(\"\");\n setNewKey(\"\");\n };\n\n const addTagProcess = () => {\n setIsSending(true);\n const newTag: any = {};\n\n newTag[newKey] = newLabel;\n const newTagList = { ...currentTags, ...newTag };\n\n const verID = distributedSetup ? actualInfo.version_id || \"\" : \"null\";\n\n api.buckets\n .putObjectTags(\n bucketName,\n { prefix: selectedObject, version_id: verID },\n { tags: newTagList },\n )\n .then(() => {\n onCloseAndUpdate(true);\n setIsSending(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSending(false);\n });\n };\n\n const deleteTagProcess = () => {\n const cleanObject: any = { ...currentTags };\n delete cleanObject[deleteKey];\n\n const verID = distributedSetup ? actualInfo.version_id || \"\" : \"null\";\n\n api.buckets\n .putObjectTags(\n bucketName,\n { prefix: selectedObject, version_id: verID },\n { tags: cleanObject },\n )\n .then(() => {\n onCloseAndUpdate(true);\n setIsSending(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSending(false);\n });\n };\n\n const onDeleteTag = (tagKey: string, tag: string) => {\n setDeleteKey(tagKey);\n setDeleteLabel(tag);\n setDeleteEnabled(true);\n };\n\n const cancelDelete = () => {\n setDeleteKey(\"\");\n setDeleteLabel(\"\");\n setDeleteEnabled(false);\n };\n\n const tagsFor = (plural: boolean) => (\n
\n Tag{plural ? \"s\" : \"\"} for: {currentItem}\n
\n );\n\n return (\n \n {\n onCloseAndUpdate(true);\n }}\n titleIcon={\n deleteEnabled ? (\n \n ) : (\n \n )\n }\n >\n {deleteEnabled ? (\n \n \n {tagsFor(false)}\n Are you sure you want to delete the tag{\" \"}\n \n {deleteKey} : {deleteLabel}\n {\" \"}\n ?\n \n \n \n \n \n \n ) : (\n \n \n \n {tagsFor(true)}\n
\n Current Tags:\n
\n {currTagKeys.length === 0 ? (\n \n There are no tags for this object\n \n ) : (\n \n )}\n \n {currTagKeys.map((tagKey: string, index: number) => {\n const tag = get(currentTags, `${tagKey}`, \"\");\n if (tag !== \"\") {\n return (\n \n }\n onDelete={() => {\n onDeleteTag(tagKey, tag);\n }}\n />\n \n );\n }\n return null;\n })}\n \n
\n \n \n \n \n } separator={false}>\n Add New Tag\n \n \n {\n setNewKey(e.target.value);\n }}\n />\n \n \n {\n setNewLabel(e.target.value);\n }}\n />\n \n \n \n \n \n \n \n
\n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(AddTagModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport {\n Button,\n InspectMenuIcon,\n PasswordKeyIcon,\n Switch,\n Grid,\n Box,\n} from \"mds\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n decodeURLString,\n deleteCookie,\n encodeURLString,\n getCookieValue,\n performDownload,\n} from \"../../../../../../common/utils\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { DialogContentText } from \"@mui/material\";\nimport KeyRevealer from \"../../../../Tools/KeyRevealer\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...formFieldStyles,\n ...modalStyleUtils,\n ...spacingUtils,\n });\n\ninterface IInspectObjectProps {\n classes: any;\n closeInspectModalAndRefresh: (refresh: boolean) => void;\n inspectOpen: boolean;\n inspectPath: string;\n volumeName: string;\n}\n\nconst InspectObject = ({\n classes,\n closeInspectModalAndRefresh,\n inspectOpen,\n inspectPath,\n volumeName,\n}: IInspectObjectProps) => {\n const dispatch = useAppDispatch();\n const onClose = () => closeInspectModalAndRefresh(false);\n const [isEncrypt, setIsEncrypt] = useState(true);\n const [decryptionKey, setDecryptionKey] = useState(\"\");\n const [insFileName, setInsFileName] = useState(\"\");\n\n if (!inspectPath) {\n return null;\n }\n const makeRequest = async (url: string) => {\n return await fetch(url, { method: \"GET\" });\n };\n\n const performInspect = async () => {\n const file = encodeURLString(inspectPath + \"/xl.meta\");\n const volume = encodeURLString(volumeName);\n\n const urlOfInspectApi = `/api/v1/admin/inspect?volume=${volume}&file=${file}&encrypt=${isEncrypt}`;\n\n makeRequest(urlOfInspectApi)\n .then(async (res) => {\n if (!res.ok) {\n const resErr: any = await res.json();\n\n dispatch(\n setErrorSnackMessage({\n errorMessage: resErr.message,\n detailedError: resErr.code,\n }),\n );\n }\n const blob: Blob = await res.blob();\n\n //@ts-ignore\n const filename = res.headers.get(\"content-disposition\").split('\"')[1];\n const decryptKey = getCookieValue(filename) || \"\";\n\n performDownload(blob, filename);\n setInsFileName(filename);\n if (decryptKey === \"\") {\n onClose();\n return;\n }\n setDecryptionKey(decryptKey);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(err));\n });\n };\n\n const onCloseDecKeyModal = () => {\n deleteCookie(insFileName);\n onClose();\n setDecryptionKey(\"\");\n };\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n };\n\n return (\n \n {!decryptionKey && (\n }\n title={`Inspect Object`}\n onClose={onClose}\n >\n ) => {\n onSubmit(e);\n }}\n >\n Would you like to encrypt {decodeURLString(inspectPath)}?{\" \"}\n
\n {\n setIsEncrypt(!isEncrypt);\n }}\n description=\"\"\n />\n \n \n \n \n \n )}\n {decryptionKey ? (\n }\n >\n \n \n This will be displayed only once. It cannot be recovered.\n
\n Use secure medium to share this key.\n
\n \n \n \n
\n \n ) : null}\n
\n );\n};\n\nexport default withStyles(styles)(InspectObject);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { encodeURLString, getClientOS } from \"../../../common/utils\";\nimport { makeid, storeCallForObjectWithID } from \"./transferManager\";\nimport { download } from \"../Buckets/ListBuckets/Objects/utils\";\nimport {\n cancelObjectInList,\n completeObject,\n failObject,\n setLongFileOpen,\n setNewObject,\n updateProgress,\n} from \"./objectBrowserSlice\";\nimport { AppDispatch } from \"../../../store\";\nimport { setSnackBarMessage } from \"../../../systemSlice\";\nimport { BucketObject } from \"api/consoleApi\";\n\nexport const downloadObject = (\n dispatch: AppDispatch,\n bucketName: string,\n internalPaths: string,\n object: BucketObject,\n) => {\n const identityDownload = encodeURLString(\n `${bucketName}-${object.name}-${new Date().getTime()}-${Math.random()}`,\n );\n\n const isWinOs = getClientOS().toLowerCase().includes(\"win\");\n\n if ((object.name?.length || 0) > 200 && isWinOs) {\n dispatch(setLongFileOpen(true));\n return;\n }\n\n const ID = makeid(8);\n\n const downloadCall = download(\n bucketName,\n internalPaths,\n object.version_id,\n object.size || 0,\n null,\n ID,\n (progress) => {\n dispatch(\n updateProgress({\n instanceID: identityDownload,\n progress: progress,\n }),\n );\n },\n () => {\n dispatch(completeObject(identityDownload));\n },\n (msg: string) => {\n dispatch(failObject({ instanceID: identityDownload, msg }));\n },\n () => {\n dispatch(cancelObjectInList(identityDownload));\n },\n () => {\n dispatch(\n setSnackBarMessage(\n \"File download will be handled directly by the browser.\",\n ),\n );\n },\n );\n\n storeCallForObjectWithID(ID, downloadCall);\n dispatch(\n setNewObject({\n ID,\n bucketName,\n done: false,\n instanceID: identityDownload,\n percentage: 0,\n prefix: object.name || \"\",\n type: \"download\",\n waitingForFile: true,\n failed: false,\n cancelled: false,\n errorMessage: \"\",\n }),\n );\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { Button, EditIcon } from \"mds\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { Theme } from \"@mui/material/styles\";\nimport {\n containerForHeader,\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport { useAppDispatch } from \"../../../store\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport FormSwitchWrapper from \"../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport { downloadObject } from \"./utils\";\nimport { BucketObject } from \"api/consoleApi\";\n\ninterface IRenameLongFilename {\n open: boolean;\n bucketName: string;\n internalPaths: string;\n currentItem: string;\n actualInfo: BucketObject;\n closeModal: () => void;\n}\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...modalStyleUtils,\n ...formFieldStyles,\n ...spacingUtils,\n ...containerForHeader,\n }),\n);\n\nconst RenameLongFileName = ({\n open,\n closeModal,\n currentItem,\n internalPaths,\n actualInfo,\n bucketName,\n}: IRenameLongFilename) => {\n const classes = useStyles();\n const dispatch = useAppDispatch();\n\n const [newFileName, setNewFileName] = useState(currentItem);\n const [acceptLongName, setAcceptLongName] = useState(false);\n\n const doDownload = (e: React.FormEvent) => {\n e.preventDefault();\n downloadObject(dispatch, bucketName, internalPaths, actualInfo);\n closeModal();\n };\n\n return (\n }\n >\n
\n The file you are trying to download has a long name.\n
\n This can cause issues on Windows Systems by trimming the file name after\n download.\n
\n
We recommend to rename the file download\n
\n ) => {\n doDownload(e);\n }}\n >\n \n \n \n ) => {\n setNewFileName(event.target.value);\n }}\n label=\"\"\n type={\"text\"}\n value={newFileName}\n error={\n newFileName.length > 200 && !acceptLongName\n ? \"Filename should be less than 200 characters long.\"\n : \"\"\n }\n />\n \n \n ) => {\n setAcceptLongName(event.target.checked);\n if (event.target.checked) {\n setNewFileName(currentItem);\n }\n }}\n label={\"Use Original Name\"}\n />\n \n \n \n 200 && !acceptLongName}\n label={\"Download File\"}\n />\n \n \n \n \n );\n};\n\nexport default RenameLongFileName;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { Box } from \"@mui/material\";\nimport { withStyles } from \"@mui/styles\";\nimport {\n ActionsList,\n Button,\n DeleteIcon,\n DownloadIcon,\n InspectMenuIcon,\n LegalHoldIcon,\n Loader,\n MetadataIcon,\n ObjectInfoIcon,\n PreviewIcon,\n RetentionIcon,\n ShareIcon,\n SimpleHeader,\n TagsIcon,\n VersionsIcon,\n} from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport get from \"lodash/get\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n actionsTray,\n detailsPanel,\n spacingUtils,\n textStyleUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { AllowedPreviews, previewObjectType } from \"../utils\";\n\nimport {\n decodeURLString,\n niceBytes,\n niceBytesInt,\n niceDaysInt,\n} from \"../../../../../../common/utils\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../../common/SecureComponent/permissions\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport ShareFile from \"../ObjectDetails/ShareFile\";\nimport SetRetention from \"../ObjectDetails/SetRetention\";\nimport DeleteObject from \"../ListObjects/DeleteObject\";\nimport SetLegalHoldModal from \"../ObjectDetails/SetLegalHoldModal\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../../../common/SecureComponent\";\nimport PreviewFileModal from \"../Preview/PreviewFileModal\";\nimport ObjectMetaData from \"../ObjectDetails/ObjectMetaData\";\nimport { displayFileIconName } from \"./utils\";\nimport TagsModal from \"../ObjectDetails/TagsModal\";\nimport InspectObject from \"./InspectObject\";\nimport { selDistSet } from \"../../../../../../systemSlice\";\nimport {\n setLoadingObjectInfo,\n setLoadingVersions,\n setSelectedVersion,\n setVersionsModeEnabled,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport RenameLongFileName from \"../../../../ObjectBrowser/RenameLongFilename\";\nimport TooltipWrapper from \"../../../../Common/TooltipWrapper/TooltipWrapper\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { BucketObject, BucketVersioningResponse } from \"api/consoleApi\";\nimport { api } from \"api\";\n\nconst styles = () =>\n createStyles({\n ObjectDetailsTitle: {\n display: \"flex\",\n alignItems: \"center\",\n \"& .min-icon\": {\n width: 26,\n height: 26,\n minWidth: 26,\n minHeight: 26,\n },\n },\n objectNameContainer: {\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n overflow: \"hidden\",\n alignItems: \"center\",\n marginLeft: 10,\n },\n capitalizeFirst: {\n textTransform: \"capitalize\",\n },\n\n ...actionsTray,\n ...spacingUtils,\n ...textStyleUtils,\n ...detailsPanel,\n });\n\nconst emptyFile: BucketObject = {\n is_latest: true,\n last_modified: \"\",\n legal_hold_status: \"\",\n name: \"\",\n retention_mode: \"\",\n retention_until_date: \"\",\n size: 0,\n tags: {},\n version_id: undefined,\n};\n\ninterface IObjectDetailPanelProps {\n classes: any;\n internalPaths: string;\n bucketName: string;\n versioningInfo: BucketVersioningResponse;\n locking: boolean | undefined;\n onClosePanel: (hardRefresh: boolean) => void;\n}\n\nconst ObjectDetailPanel = ({\n classes,\n internalPaths,\n bucketName,\n versioningInfo,\n locking,\n onClosePanel,\n}: IObjectDetailPanelProps) => {\n const dispatch = useAppDispatch();\n\n const distributedSetup = useSelector(selDistSet);\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const selectedVersion = useSelector(\n (state: AppState) => state.objectBrowser.selectedVersion,\n );\n const loadingObjectInfo = useSelector(\n (state: AppState) => state.objectBrowser.loadingObjectInfo,\n );\n\n const [shareFileModalOpen, setShareFileModalOpen] = useState(false);\n const [retentionModalOpen, setRetentionModalOpen] = useState(false);\n const [tagModalOpen, setTagModalOpen] = useState(false);\n const [legalholdOpen, setLegalholdOpen] = useState(false);\n const [inspectModalOpen, setInspectModalOpen] = useState(false);\n const [actualInfo, setActualInfo] = useState(null);\n const [allInfoElements, setAllInfoElements] = useState([]);\n const [objectToShare, setObjectToShare] = useState(null);\n const [versions, setVersions] = useState([]);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [previewOpen, setPreviewOpen] = useState(false);\n const [totalVersionsSize, setTotalVersionsSize] = useState(0);\n const [longFileOpen, setLongFileOpen] = useState(false);\n const [metaData, setMetaData] = useState(null);\n const [loadMetadata, setLoadingMetadata] = useState(false);\n\n const internalPathsDecoded = decodeURLString(internalPaths) || \"\";\n const allPathData = internalPathsDecoded.split(\"/\");\n const currentItem = allPathData.pop() || \"\";\n\n // calculate object name to display\n let objectNameArray: string[] = [];\n if (actualInfo && actualInfo.name) {\n objectNameArray = actualInfo.name.split(\"/\");\n }\n\n useEffect(() => {\n if (distributedSetup && allInfoElements && allInfoElements.length >= 1) {\n let infoElement =\n allInfoElements.find((el: BucketObject) => el.is_latest) || emptyFile;\n\n if (selectedVersion !== \"\") {\n infoElement =\n allInfoElements.find(\n (el: BucketObject) => el.version_id === selectedVersion,\n ) || emptyFile;\n }\n\n if (!infoElement.is_delete_marker) {\n setLoadingMetadata(true);\n }\n\n setActualInfo(infoElement);\n }\n }, [selectedVersion, distributedSetup, allInfoElements]);\n\n useEffect(() => {\n if (loadingObjectInfo && internalPaths !== \"\") {\n api.buckets\n .listObjects(bucketName, {\n prefix: internalPaths,\n with_versions: distributedSetup,\n })\n .then((res) => {\n const result: BucketObject[] = res.data.objects || [];\n if (distributedSetup) {\n setAllInfoElements(result);\n setVersions(result);\n\n const tVersionSize = result.reduce(\n (acc: number, currValue: BucketObject): number => {\n if (currValue?.size) {\n return acc + currValue.size;\n }\n return acc;\n },\n 0,\n );\n\n setTotalVersionsSize(tVersionSize);\n } else {\n const resInfo = result[0];\n\n setActualInfo(resInfo);\n setVersions([]);\n\n if (!resInfo.is_delete_marker) {\n setLoadingMetadata(true);\n }\n }\n\n dispatch(setLoadingObjectInfo(false));\n })\n .catch((err) => {\n console.error(\"Error loading object details\", err.error);\n dispatch(setLoadingObjectInfo(false));\n });\n }\n }, [\n loadingObjectInfo,\n bucketName,\n internalPaths,\n dispatch,\n distributedSetup,\n selectedVersion,\n ]);\n\n useEffect(() => {\n if (loadMetadata && internalPaths !== \"\") {\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: internalPaths,\n })\n .then((res) => {\n let metadata = get(res.data, \"objectMetadata\", {});\n\n setMetaData(metadata);\n setLoadingMetadata(false);\n })\n .catch((err) => {\n console.error(\"Error Getting Metadata Status: \", err.detailedError);\n setLoadingMetadata(false);\n });\n }\n }, [bucketName, internalPaths, loadMetadata]);\n\n let tagKeys: string[] = [];\n\n if (actualInfo && actualInfo.tags) {\n tagKeys = Object.keys(actualInfo.tags);\n }\n\n const openRetentionModal = () => {\n setRetentionModalOpen(true);\n };\n\n const closeRetentionModal = (updateInfo: boolean) => {\n setRetentionModalOpen(false);\n if (updateInfo) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const shareObject = () => {\n setShareFileModalOpen(true);\n };\n\n const closeShareModal = () => {\n setObjectToShare(null);\n setShareFileModalOpen(false);\n };\n\n const closeFileOpen = () => {\n setLongFileOpen(false);\n };\n\n const closeDeleteModal = (closeAndReload: boolean) => {\n setDeleteOpen(false);\n\n if (closeAndReload && selectedVersion === \"\") {\n onClosePanel(true);\n } else {\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedVersion(\"\"));\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeAddTagModal = (reloadObjectData: boolean) => {\n setTagModalOpen(false);\n if (reloadObjectData) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeInspectModal = (reloadObjectData: boolean) => {\n setInspectModalOpen(false);\n if (reloadObjectData) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeLegalholdModal = (reload: boolean) => {\n setLegalholdOpen(false);\n if (reload) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const loaderForContainer = (\n
\n \n
\n );\n\n if (!actualInfo) {\n if (loadingObjectInfo) {\n return loaderForContainer;\n }\n\n return null;\n }\n\n const objectName =\n objectNameArray.length > 0\n ? objectNameArray[objectNameArray.length - 1]\n : actualInfo.name;\n\n const objectResources = [\n bucketName,\n currentItem,\n [bucketName, actualInfo.name].join(\"/\"),\n ];\n const canSetLegalHold = hasPermission(bucketName, [\n IAM_SCOPES.S3_PUT_OBJECT_LEGAL_HOLD,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n const canSetTags = hasPermission(objectResources, [\n IAM_SCOPES.S3_PUT_OBJECT_TAGGING,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n const canChangeRetention = hasPermission(\n objectResources,\n [\n IAM_SCOPES.S3_GET_OBJECT_RETENTION,\n IAM_SCOPES.S3_PUT_OBJECT_RETENTION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n true,\n );\n const canInspect = hasPermission(objectResources, [\n IAM_SCOPES.ADMIN_INSPECT_DATA,\n ]);\n const canChangeVersioning = hasPermission(objectResources, [\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_GET_OBJECT_VERSION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n const canGetObject = hasPermission(objectResources, [\n IAM_SCOPES.S3_GET_OBJECT,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n const canDelete = hasPermission(\n [bucketName, currentItem, [bucketName, actualInfo.name].join(\"/\")],\n [IAM_SCOPES.S3_DELETE_OBJECT],\n );\n\n let objectType: AllowedPreviews = previewObjectType(metaData, currentItem);\n\n const multiActionButtons = [\n {\n action: () => {\n downloadObject(dispatch, bucketName, internalPaths, actualInfo);\n },\n label: \"Download\",\n disabled: !!actualInfo.is_delete_marker || !canGetObject,\n icon: ,\n tooltip: canGetObject\n ? \"Download this Object\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"download this object\",\n ),\n },\n {\n action: () => {\n shareObject();\n },\n label: \"Share\",\n disabled: !!actualInfo.is_delete_marker || !canGetObject,\n icon: ,\n tooltip: canGetObject\n ? \"Share this File\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"share this object\",\n ),\n },\n {\n action: () => {\n setPreviewOpen(true);\n },\n label: \"Preview\",\n disabled:\n !!actualInfo.is_delete_marker ||\n (objectType === \"none\" && !canGetObject),\n icon: ,\n tooltip: canGetObject\n ? \"Preview this File\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"preview this object\",\n ),\n },\n {\n action: () => {\n setLegalholdOpen(true);\n },\n label: \"Legal Hold\",\n disabled:\n !locking ||\n !distributedSetup ||\n !!actualInfo.is_delete_marker ||\n !canSetLegalHold ||\n selectedVersion !== \"\",\n icon: ,\n tooltip: canSetLegalHold\n ? locking\n ? \"Change Legal Hold rules for this File\"\n : \"Object Locking must be enabled on this bucket in order to set Legal Hold\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT_LEGAL_HOLD, IAM_SCOPES.S3_PUT_ACTIONS],\n \"change legal hold settings for this object\",\n ),\n },\n {\n action: openRetentionModal,\n label: \"Retention\",\n disabled:\n !distributedSetup ||\n !!actualInfo.is_delete_marker ||\n !canChangeRetention ||\n selectedVersion !== \"\" ||\n !locking,\n icon: ,\n tooltip: canChangeRetention\n ? locking\n ? \"Change Retention rules for this File\"\n : \"Object Locking must be enabled on this bucket in order to set Retention Rules\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_GET_OBJECT_RETENTION,\n IAM_SCOPES.S3_PUT_OBJECT_RETENTION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"change Retention Rules for this object\",\n ),\n },\n {\n action: () => {\n setTagModalOpen(true);\n },\n label: \"Tags\",\n disabled:\n !!actualInfo.is_delete_marker || selectedVersion !== \"\" || !canSetTags,\n icon: ,\n tooltip: canSetTags\n ? \"Change Tags for this File\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_PUT_OBJECT_TAGGING,\n IAM_SCOPES.S3_GET_OBJECT_TAGGING,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"set Tags on this object\",\n ),\n },\n {\n action: () => {\n setInspectModalOpen(true);\n },\n label: \"Inspect\",\n disabled:\n !distributedSetup ||\n !!actualInfo.is_delete_marker ||\n selectedVersion !== \"\" ||\n !canInspect,\n icon: ,\n tooltip: canInspect\n ? \"Inspect this file\"\n : permissionTooltipHelper(\n [IAM_SCOPES.ADMIN_INSPECT_DATA],\n \"inspect this file\",\n ),\n },\n {\n action: () => {\n dispatch(\n setVersionsModeEnabled({\n status: !versionsMode,\n objectName: objectName,\n }),\n );\n },\n label: versionsMode ? \"Hide Object Versions\" : \"Display Object Versions\",\n icon: ,\n disabled:\n !distributedSetup ||\n !(actualInfo.version_id && actualInfo.version_id !== \"null\") ||\n !canChangeVersioning,\n tooltip: canChangeVersioning\n ? actualInfo.version_id && actualInfo.version_id !== \"null\"\n ? \"Display Versions for this file\"\n : \"\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_GET_OBJECT_VERSION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"display all versions of this object\",\n ),\n },\n ];\n\n const calculateLastModifyTime = (lastModified: string) => {\n const currentTime = new Date();\n const modifiedTime = new Date(lastModified);\n\n const difTime = currentTime.getTime() - modifiedTime.getTime();\n\n const formatTime = niceDaysInt(difTime, \"ms\");\n\n return formatTime.trim() !== \"\" ? `${formatTime} ago` : \"Just now\";\n };\n\n return (\n \n {shareFileModalOpen && actualInfo && (\n \n )}\n {retentionModalOpen && actualInfo && (\n \n )}\n {deleteOpen && (\n \n )}\n {legalholdOpen && actualInfo && (\n \n )}\n {previewOpen && actualInfo && (\n {\n setPreviewOpen(false);\n }}\n />\n )}\n {tagModalOpen && actualInfo && (\n \n )}\n {inspectModalOpen && actualInfo && (\n \n )}\n {longFileOpen && actualInfo && (\n \n )}\n\n {loadingObjectInfo ? (\n {loaderForContainer}\n ) : (\n \n \n {displayFileIconName(objectName || \"\", true)}\n \n {objectName}\n \n \n }\n items={multiActionButtons}\n />\n \n \n \n }\n iconLocation={\"start\"}\n fullWidth\n variant={\"secondary\"}\n onClick={() => {\n setDeleteOpen(true);\n }}\n disabled={\n selectedVersion === \"\" && actualInfo.is_delete_marker\n }\n sx={{\n width: \"calc(100% - 44px)\",\n margin: \"8px 0\",\n }}\n label={`Delete${selectedVersion !== \"\" ? \" version\" : \"\"}`}\n />\n \n \n \n } label={\"Object Info\"} />\n \n Name:\n
\n
{objectName}
\n
\n {selectedVersion !== \"\" && (\n \n Version ID:\n
\n {selectedVersion}\n
\n )}\n \n Size:\n
\n {niceBytes(`${actualInfo.size || \"0\"}`)}\n
\n {actualInfo.version_id &&\n actualInfo.version_id !== \"null\" &&\n selectedVersion === \"\" && (\n \n Versions:\n
\n {versions.length} version{versions.length !== 1 ? \"s\" : \"\"},{\" \"}\n {niceBytesInt(totalVersionsSize)}\n
\n )}\n {selectedVersion === \"\" && (\n \n Last Modified:\n
\n {calculateLastModifyTime(actualInfo.last_modified || \"\")}\n
\n )}\n \n ETAG:\n
\n {actualInfo.etag || \"N/A\"}\n
\n \n Tags:\n
\n {tagKeys.length === 0\n ? \"N/A\"\n : tagKeys.map((tagKey, index) => {\n return (\n \n {tagKey}:{get(actualInfo, `tags.${tagKey}`, \"\")}\n {index < tagKeys.length - 1 ? \", \" : \"\"}\n \n );\n })}\n
\n \n \n \n Legal Hold:\n
\n {actualInfo.legal_hold_status ? \"On\" : \"Off\"}\n
\n \n
\n \n \n \n Retention Policy:\n
\n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" ? (\n \n {actualInfo.retention_mode\n ? actualInfo.retention_mode.toLowerCase()\n : \"None\"}\n \n ) : (\n \n {actualInfo.retention_mode\n ? actualInfo.retention_mode.toLowerCase()\n : \"None\"}\n \n )}\n \n
\n \n
\n {!actualInfo.is_delete_marker && (\n \n } />\n \n {actualInfo && metaData ? (\n \n ) : null}\n \n \n )}\n
\n )}\n
\n );\n};\n\nexport default withStyles(styles)(ObjectDetailPanel);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { encodeURLString } from \"../../../../../../common/utils\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport { Box, RecoverIcon } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { restoreLocalObjectList } from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IRestoreFileVersion {\n classes: any;\n restoreOpen: boolean;\n bucketName: string;\n versionToRestore: BucketObject;\n objectPath: string;\n onCloseAndUpdate: (refresh: boolean) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalBasic,\n });\n\nconst RestoreFileVersion = ({\n classes,\n versionToRestore,\n bucketName,\n objectPath,\n restoreOpen,\n onCloseAndUpdate,\n}: IRestoreFileVersion) => {\n const dispatch = useAppDispatch();\n const [restoreLoading, setRestoreLoading] = useState(false);\n\n const restoreVersion = () => {\n setRestoreLoading(true);\n\n api.buckets\n .putObjectRestore(bucketName, {\n prefix: encodeURLString(objectPath),\n version_id: versionToRestore.version_id || \"\",\n })\n .then(() => {\n setRestoreLoading(false);\n onCloseAndUpdate(true);\n dispatch(\n restoreLocalObjectList({\n prefix: objectPath,\n objectInfo: versionToRestore,\n }),\n );\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setRestoreLoading(false);\n });\n };\n\n return (\n }\n onConfirm={restoreVersion}\n confirmButtonProps={{\n variant: \"secondary\",\n disabled: restoreLoading,\n }}\n onClose={() => {\n onCloseAndUpdate(false);\n }}\n confirmationContent={\n \n Are you sure you want to restore
\n {objectPath}
with Version ID:\n
\n {versionToRestore.version_id}?\n
\n }\n />\n );\n};\n\nexport default withStyles(styles)(RestoreFileVersion);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\n\ninterface ISpecificVersionPillProps {\n type: \"null\" | \"current\" | \"deleted\";\n}\n\nconst SpecificVersionPill = ({ type }: ISpecificVersionPillProps) => {\n let bgColor = \"#000\";\n let message = \"\";\n\n switch (type) {\n case \"null\":\n bgColor = \"#07193E\";\n message = \"NULL VERSION\";\n break;\n case \"deleted\":\n bgColor = \"#868686\";\n message = \"DELETED\";\n break;\n default:\n bgColor = \"#174551\";\n message = \"CURRENT VERSION\";\n }\n\n return (\n \n {message}\n \n );\n};\n\nexport default SpecificVersionPill;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { DateTime } from \"luxon\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { displayFileIconName } from \"../ListObjects/utils\";\nimport {\n DownloadIcon,\n PreviewIcon,\n RecoverIcon,\n ShareIcon,\n IconButton,\n Tooltip,\n Grid,\n} from \"mds\";\nimport { niceBytes } from \"../../../../../../common/utils\";\nimport SpecificVersionPill from \"./SpecificVersionPill\";\nimport CheckboxWrapper from \"../../../../Common/FormComponents/CheckboxWrapper/CheckboxWrapper\";\nimport { BucketObject } from \"api/consoleApi\";\n\ninterface IFileVersionItem {\n fileName: string;\n versionInfo: BucketObject;\n index: number;\n isSelected?: boolean;\n checkable: boolean;\n isChecked: boolean;\n onCheck: (versionID: string) => void;\n onShare: (versionInfo: BucketObject) => void;\n onDownload: (versionInfo: BucketObject) => void;\n onRestore: (versionInfo: BucketObject) => void;\n onPreview: (versionInfo: BucketObject) => void;\n globalClick: (versionInfo: BucketObject) => void;\n key: any;\n style: any;\n}\n\nconst FileVersionStyled = styled.div(({ theme }) => {\n return {\n \"&:before\": {\n content: \"' '\",\n display: \"block\",\n position: \"absolute\",\n width: \"2px\",\n height: \"calc(100% + 2px)\",\n backgroundColor: get(theme, \"borderColor\", \"#F8F8F8\"),\n left: \"24px\",\n },\n \"& .mainFileVersionItem\": {\n borderBottom: `${get(theme, \"borderColor\", \"#F8F8F8\")} 1px solid`,\n padding: \"1rem 0\",\n margin: \"0 0.5rem 0 2.5rem\",\n cursor: \"pointer\",\n \"&.deleted\": {\n color: \"#868686\",\n },\n },\n \"& .intermediateLayer\": {\n margin: \"0 1.5rem 0 1.5rem\",\n \"&:hover, &.selected\": {\n backgroundColor: get(theme, \"boxBackground\", \"#F8F8F8\"),\n \"& > div\": {\n borderBottomColor: get(theme, \"boxBackground\", \"#F8F8F8\"),\n },\n },\n },\n \"& .versionContainer\": {\n fontSize: 16,\n fontWeight: \"bold\",\n display: \"flex\",\n alignItems: \"center\",\n \"& svg.min-icon\": {\n width: 18,\n height: 18,\n minWidth: 18,\n minHeight: 18,\n marginRight: 10,\n },\n },\n \"& .buttonContainer\": {\n textAlign: \"right\",\n \"& button\": {\n marginLeft: \"1.5rem\",\n },\n },\n \"& .versionID\": {\n fontSize: \"12px\",\n margin: \"2px 0\",\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n maxWidth: \"95%\",\n overflow: \"hidden\",\n },\n \"& .versionData\": {\n marginRight: \"10px\",\n fontSize: 12,\n color: \"#868686\",\n },\n \"@media (max-width: 600px)\": {\n \"& .buttonContainer\": {\n \"& button\": {\n marginLeft: \"5px\",\n },\n },\n },\n \"@media (max-width: 799px)\": {\n \"&:before\": {\n display: \"none\",\n },\n \"& .mainFileVersionItem\": {\n padding: \"5px 0px\",\n margin: 0,\n },\n \"& .intermediateLayer\": {\n margin: 0,\n \"&:hover, &.selected\": {\n backgroundColor: \"transparent\",\n \"& > div\": {\n borderBottomColor: get(theme, \"boxBackground\", \"#F8F8F8\"),\n },\n },\n },\n \"& .versionContainer\": {\n fontSize: 14,\n \"& svg.min-icon\": {\n display: \"none\",\n },\n },\n \"& .versionData\": {\n textOverflow: \"ellipsis\",\n maxWidth: \"95%\",\n overflow: \"hidden\",\n whiteSpace: \"nowrap\",\n },\n \"& .collapsableInfo\": {\n display: \"flex\",\n flexDirection: \"column\",\n },\n \"& .versionItem\": {\n display: \"none\",\n },\n },\n };\n});\n\nconst FileVersionItem = ({\n fileName,\n versionInfo,\n isSelected,\n checkable,\n isChecked,\n onCheck,\n onShare,\n onDownload,\n onRestore,\n onPreview,\n globalClick,\n index,\n key,\n style,\n}: IFileVersionItem) => {\n const disableButtons = versionInfo.is_delete_marker;\n\n const versionItemButtons = [\n {\n icon: ,\n action: onPreview,\n tooltip: \"Preview\",\n },\n {\n icon: ,\n action: onDownload,\n tooltip: \"Download this version\",\n },\n {\n icon: ,\n action: onShare,\n tooltip: \"Share this version\",\n },\n {\n icon: ,\n action: onRestore,\n tooltip: \"Restore this version\",\n },\n ];\n\n let pill: \"deleted\" | \"current\" | \"null\" | null = null;\n\n if (versionInfo.is_delete_marker) {\n pill = \"deleted\";\n } else if (versionInfo.is_latest) {\n pill = \"current\";\n } else if (versionInfo.version_id === \"null\") {\n pill = \"null\";\n }\n\n let lastModified = DateTime.now();\n\n if (versionInfo.last_modified) {\n lastModified = DateTime.fromISO(versionInfo.last_modified);\n }\n\n return (\n \n {\n globalClick(versionInfo);\n }}\n key={key}\n style={style}\n >\n \n \n \n \n \n {checkable && (\n {\n e.stopPropagation();\n e.preventDefault();\n onCheck(versionInfo.version_id || \"\");\n }}\n value={versionInfo.version_id || \"\"}\n disabled={versionInfo.is_delete_marker}\n overrideCheckboxStyles={{\n paddingLeft: 0,\n height: 34,\n width: 25,\n }}\n noTopMargin\n />\n )}\n {displayFileIconName(fileName, true)} v{index.toString()}\n \n {pill && }\n \n \n \n {versionItemButtons.map((button, index) => {\n return (\n \n {\n e.stopPropagation();\n if (!disableButtons) {\n button.action(versionInfo);\n } else {\n e.preventDefault();\n }\n }}\n sx={{\n backgroundColor: \"#F8F8F8\",\n borderRadius: \"100%\",\n width: \"28px\",\n height: \"28px\",\n padding: \"5px\",\n \"& .min-icon\": {\n width: \"14px\",\n height: \"14px\",\n },\n }}\n >\n {button.icon}\n \n \n );\n })}\n \n \n \n \n {versionInfo.version_id !== \"null\" ? versionInfo.version_id : \"-\"}\n \n \n \n Last modified:{\" \"}\n {lastModified.toFormat(\"ccc, LLL dd yyyy HH:mm:ss (ZZZZ)\")}\n \n \n Size: {niceBytes(`${versionInfo.size || \"0\"}`)}\n \n \n \n \n \n \n );\n};\n\nexport default FileVersionItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\n\nimport { decodeURLString } from \"../../../../../../common/utils\";\nimport { ConfirmDeleteIcon, Switch, Grid, InputBox } from \"mds\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IDeleteNonCurrentProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedObject: string;\n selectedBucket: string;\n}\n\nconst DeleteNonCurrentVersions = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedObject,\n}: IDeleteNonCurrentProps) => {\n const dispatch = useAppDispatch();\n const [deleteLoading, setDeleteLoading] = useState(false);\n const [typeConfirm, setTypeConfirm] = useState(\"\");\n const [bypassGovernance, setBypassGovernance] = useState(false);\n\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const canBypass =\n hasPermission(\n [selectedBucket],\n [IAM_SCOPES.S3_BYPASS_GOVERNANCE_RETENTION],\n ) && retentionConfig?.mode === \"governance\";\n\n useEffect(() => {\n if (deleteLoading) {\n api.buckets\n .deleteObject(selectedBucket, {\n path: selectedObject,\n non_current_versions: true,\n bypass: bypassGovernance,\n })\n .then(() => {\n closeDeleteModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setDeleteLoading(false);\n });\n }\n }, [\n deleteLoading,\n closeDeleteModalAndRefresh,\n dispatch,\n selectedObject,\n selectedBucket,\n bypassGovernance,\n ]);\n\n if (!selectedObject) {\n return null;\n }\n const onConfirmDelete = () => {\n setDeleteLoading(true);\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={() => closeDeleteModalAndRefresh(false)}\n confirmButtonProps={{\n disabled: typeConfirm !== \"YES, PROCEED\" || deleteLoading,\n }}\n confirmationContent={\n \n Are you sure you want to delete all the non-current versions for:{\" \"}\n {decodeURLString(selectedObject)}?
\n {canBypass && (\n \n \n {\n setBypassGovernance(!bypassGovernance);\n }}\n description=\"\"\n />\n \n \n )}\n
\n To continue please type YES, PROCEED in the box.\n
\n
\n \n ) => {\n setTypeConfirm(event.target.value);\n }}\n label=\"\"\n value={typeConfirm}\n />\n \n
\n }\n />\n );\n};\n\nexport default DeleteNonCurrentVersions;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmDeleteIcon, Switch } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IDeleteSelectedVersionsProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedVersions: string[];\n selectedObject: string;\n selectedBucket: string;\n}\n\nconst DeleteObject = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedVersions,\n selectedObject,\n}: IDeleteSelectedVersionsProps) => {\n const dispatch = useAppDispatch();\n const [deleteLoading, setDeleteLoading] = useState(false);\n const [bypassGovernance, setBypassGovernance] = useState(false);\n\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const canBypass =\n hasPermission(\n [selectedBucket],\n [IAM_SCOPES.S3_BYPASS_GOVERNANCE_RETENTION],\n ) && retentionConfig?.mode === \"governance\";\n\n const onClose = () => closeDeleteModalAndRefresh(false);\n const onConfirmDelete = () => {\n setDeleteLoading(true);\n };\n\n useEffect(() => {\n if (deleteLoading) {\n const selectedObjectsRequest = selectedVersions.map((versionID) => {\n return {\n path: selectedObject,\n versionID: versionID,\n recursive: false,\n };\n });\n\n if (selectedObjectsRequest.length > 0) {\n api.buckets\n .deleteMultipleObjects(selectedBucket, selectedObjectsRequest, {\n all_versions: false,\n bypass: bypassGovernance,\n })\n .then(() => {\n setDeleteLoading(false);\n closeDeleteModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setDeleteLoading(false);\n });\n }\n }\n }, [\n deleteLoading,\n closeDeleteModalAndRefresh,\n selectedBucket,\n selectedObject,\n selectedVersions,\n bypassGovernance,\n dispatch,\n ]);\n\n if (!selectedVersions) {\n return null;\n }\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete the selected {selectedVersions.length}{\" \"}\n versions for {selectedObject}?\n {canBypass && (\n \n \n {\n setBypassGovernance(!bypassGovernance);\n }}\n description=\"\"\n />\n \n \n )}\n \n }\n />\n );\n};\n\nexport default DeleteObject;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport { withStyles } from \"@mui/styles\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { LinearProgress } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport ShareFile from \"./ShareFile\";\nimport {\n actionsTray,\n containerForHeader,\n objectBrowserCommon,\n objectBrowserExtras,\n spacingUtils,\n tableStyles,\n textStyleUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\n\nimport { decodeURLString, niceBytesInt } from \"../../../../../../common/utils\";\nimport RestoreFileVersion from \"./RestoreFileVersion\";\n\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport {\n Button,\n DeleteIcon,\n DeleteNonCurrentIcon,\n Select,\n SelectMultipleIcon,\n VersionsIcon,\n ScreenTitle,\n} from \"mds\";\nimport FileVersionItem from \"./FileVersionItem\";\nimport PreviewFileModal from \"../Preview/PreviewFileModal\";\nimport DeleteNonCurrent from \"../ListObjects/DeleteNonCurrent\";\nimport BrowserBreadcrumbs from \"../../../../ObjectBrowser/BrowserBreadcrumbs\";\nimport DeleteSelectedVersions from \"./DeleteSelectedVersions\";\nimport {\n selDistSet,\n setErrorSnackMessage,\n} from \"../../../../../../systemSlice\";\nimport {\n setLoadingObjectInfo,\n setLoadingVersions,\n setSelectedVersion,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport { List, ListRowProps } from \"react-virtualized\";\nimport TooltipWrapper from \"../../../../Common/TooltipWrapper/TooltipWrapper\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n versionsContainer: {\n padding: 10,\n \"@media (max-width: 799px)\": {\n minHeight: 800,\n },\n },\n noBottomBorder: {\n borderBottom: 0,\n },\n versionsVirtualPanel: {\n flexGrow: 1,\n height: \"calc(100% - 120px)\",\n overflow: \"auto\",\n \"@media (max-width: 799px)\": {\n height: 600,\n },\n },\n screenTitleContainer: {\n position: \"relative\",\n \"@media (max-width: 799px)\": {\n \"&::before\": {\n display: \"none\",\n },\n },\n },\n sortByLabel: {\n color: \"#838383\",\n fontWeight: \"bold\",\n whiteSpace: \"nowrap\",\n marginRight: 12,\n fontSize: 14,\n \"@media (max-width: 600px)\": {\n display: \"none\",\n },\n },\n ...actionsTray,\n ...tableStyles,\n ...spacingUtils,\n ...textStyleUtils,\n ...objectBrowserCommon,\n ...objectBrowserExtras,\n ...containerForHeader,\n });\n\ninterface IVersionsNavigatorProps {\n classes: any;\n internalPaths: string;\n bucketName: string;\n}\n\nconst emptyFile: BucketObject = {\n is_latest: true,\n last_modified: \"\",\n legal_hold_status: \"\",\n name: \"\",\n retention_mode: \"\",\n retention_until_date: \"\",\n size: 0,\n tags: {},\n version_id: undefined,\n};\n\nconst VersionsNavigator = ({\n classes,\n internalPaths,\n bucketName,\n}: IVersionsNavigatorProps) => {\n const dispatch = useAppDispatch();\n\n const searchVersions = useSelector(\n (state: AppState) => state.objectBrowser.searchVersions,\n );\n const loadingVersions = useSelector(\n (state: AppState) => state.objectBrowser.loadingVersions,\n );\n const selectedVersion = useSelector(\n (state: AppState) => state.objectBrowser.selectedVersion,\n );\n\n const distributedSetup = useSelector(selDistSet);\n const [shareFileModalOpen, setShareFileModalOpen] = useState(false);\n const [actualInfo, setActualInfo] = useState(null);\n const [objectToShare, setObjectToShare] = useState(null);\n const [versions, setVersions] = useState([]);\n const [restoreVersionOpen, setRestoreVersionOpen] = useState(false);\n const [restoreVersion, setRestoreVersion] = useState(\n null,\n );\n const [sortValue, setSortValue] = useState(\"date\");\n const [previewOpen, setPreviewOpen] = useState(false);\n const [deleteNonCurrentOpen, setDeleteNonCurrentOpen] =\n useState(false);\n const [selectEnabled, setSelectEnabled] = useState(false);\n const [selectedItems, setSelectedItems] = useState([]);\n const [delSelectedVOpen, setDelSelectedVOpen] = useState(false);\n\n // calculate object name to display\n let objectNameArray: string[] = [];\n if (actualInfo && actualInfo.name) {\n objectNameArray = actualInfo.name.split(\"/\");\n }\n\n useEffect(() => {\n if (!loadingVersions && !actualInfo) {\n dispatch(setLoadingVersions(true));\n }\n }, [loadingVersions, actualInfo, dispatch]);\n\n useEffect(() => {\n if (loadingVersions && internalPaths !== \"\") {\n api.buckets\n .listObjects(bucketName, {\n prefix: internalPaths,\n with_versions: distributedSetup,\n })\n .then((res) => {\n const result = get(res.data, \"objects\", []);\n\n const decodedInternalPaths = decodeURLString(internalPaths);\n\n // Filter the results prefixes as API can return more files than expected.\n const filteredPrefixes = result.filter(\n (item: BucketObject) => item.name === decodedInternalPaths,\n );\n\n if (distributedSetup) {\n setActualInfo(\n filteredPrefixes.find((el: BucketObject) => el.is_latest) ||\n emptyFile,\n );\n setVersions(filteredPrefixes);\n } else {\n setActualInfo(filteredPrefixes[0]);\n setVersions([]);\n }\n\n dispatch(setLoadingVersions(false));\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n dispatch(setLoadingVersions(false));\n });\n }\n }, [loadingVersions, bucketName, internalPaths, dispatch, distributedSetup]);\n\n const shareObject = () => {\n setShareFileModalOpen(true);\n };\n\n const closeShareModal = () => {\n setObjectToShare(null);\n setShareFileModalOpen(false);\n setPreviewOpen(false);\n };\n\n const onShareItem = (item: BucketObject) => {\n setObjectToShare(item);\n shareObject();\n };\n\n const onPreviewItem = (item: BucketObject) => {\n setObjectToShare(item);\n setPreviewOpen(true);\n };\n\n const onRestoreItem = (item: BucketObject) => {\n setRestoreVersion(item);\n setRestoreVersionOpen(true);\n };\n\n const onDownloadItem = (item: BucketObject) => {\n downloadObject(dispatch, bucketName, internalPaths, item);\n };\n\n const onGlobalClick = (item: BucketObject) => {\n dispatch(setSelectedVersion(item.version_id || \"\"));\n };\n\n const filteredRecords = versions.filter((version) => {\n if (version.version_id) {\n return version.version_id.includes(searchVersions);\n }\n return false;\n });\n\n const closeRestoreModal = (reloadObjectData: boolean) => {\n setRestoreVersionOpen(false);\n setRestoreVersion(null);\n\n if (reloadObjectData) {\n dispatch(setLoadingVersions(true));\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeDeleteNonCurrent = (reloadAfterDelete: boolean) => {\n setDeleteNonCurrentOpen(false);\n\n if (reloadAfterDelete) {\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedVersion(\"\"));\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeSelectedVersions = (reloadOnComplete: boolean) => {\n setDelSelectedVOpen(false);\n\n if (reloadOnComplete) {\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedVersion(\"\"));\n dispatch(setLoadingObjectInfo(true));\n setSelectedItems([]);\n }\n };\n\n const totalSpace = versions.reduce((acc: number, currValue: BucketObject) => {\n if (currValue.size) {\n return acc + currValue.size;\n }\n return acc;\n }, 0);\n\n filteredRecords.sort((a, b) => {\n switch (sortValue) {\n case \"size\":\n if (a.size && b.size) {\n if (a.size < b.size) {\n return -1;\n }\n if (a.size > b.size) {\n return 1;\n }\n return 0;\n }\n return 0;\n default:\n const dateA = new Date(a.last_modified || \"\").getTime();\n const dateB = new Date(b.last_modified || \"\").getTime();\n\n if (dateA < dateB) {\n return 1;\n }\n if (dateA > dateB) {\n return -1;\n }\n return 0;\n }\n });\n\n const onCheckVersion = (selectedVersion: string) => {\n if (selectedItems.includes(selectedVersion)) {\n const filteredItems = selectedItems.filter(\n (element) => element !== selectedVersion,\n );\n\n setSelectedItems(filteredItems);\n\n return;\n }\n\n const cloneState = [...selectedItems];\n cloneState.push(selectedVersion);\n\n setSelectedItems(cloneState);\n };\n\n const rowRenderer = ({\n key, // Unique key within array of rows\n index, // Index of row within collection\n isScrolling, // The List is currently being scrolled\n isVisible, // This row is visible within the List (eg it is not an overscanned row)\n style, // Style object to be applied to row (to position it)\n }: ListRowProps) => {\n const versOrd = versions.length - index;\n return (\n \n );\n };\n\n return (\n \n {shareFileModalOpen && actualInfo && (\n \n )}\n {restoreVersionOpen && actualInfo && restoreVersion && (\n \n )}\n {previewOpen && actualInfo && (\n {\n setPreviewOpen(false);\n }}\n />\n )}\n {deleteNonCurrentOpen && (\n \n )}\n {delSelectedVOpen && (\n \n )}\n \n {!actualInfo && (\n \n \n \n )}\n\n {actualInfo && (\n \n \n \n \n \n \n \n \n }\n title={`${\n objectNameArray.length > 0\n ? objectNameArray[objectNameArray.length - 1]\n : actualInfo.name\n } Versions`}\n subTitle={\n \n \n \n {versions.length} Version\n {versions.length === 1 ? \"\" : \"s\"}   \n \n \n \n {niceBytesInt(totalSpace)}\n \n \n }\n actions={\n \n \n {\n setSelectEnabled(!selectEnabled);\n }}\n icon={}\n variant={selectEnabled ? \"callAction\" : \"regular\"}\n style={{ marginRight: 8 }}\n />\n \n {selectEnabled && (\n \n {\n setDelSelectedVOpen(true);\n }}\n icon={}\n variant={\"secondary\"}\n style={{ marginRight: 8 }}\n disabled={selectedItems.length === 0}\n />\n \n )}\n \n {\n setDeleteNonCurrentOpen(true);\n }}\n icon={}\n variant={\"secondary\"}\n style={{ marginRight: 15 }}\n disabled={versions.length <= 1}\n />\n \n {\n setSortValue(newValue);\n }}\n noLabelMinWidth\n />\n \n }\n bottomBorder={false}\n />\n \n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" && (\n // @ts-ignore\n \n )}\n \n \n )}\n \n \n );\n};\n\nexport default withStyles(styles)(VersionsNavigator);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { DateTime } from \"luxon\";\nimport { BucketObjectItem } from \"./types\";\nimport { niceBytes } from \"../../../../../../common/utils\";\nimport { displayFileIconName } from \"./utils\";\n\n// Functions\n\nexport const displayParsedDate = (object: BucketObjectItem) => {\n if (object.name.endsWith(\"/\")) {\n return \"\";\n }\n\n const currTime = DateTime.now();\n const objectTime = DateTime.fromISO(object.last_modified);\n\n const isToday =\n currTime.hasSame(objectTime, \"day\") &&\n currTime.hasSame(objectTime, \"month\") &&\n currTime.hasSame(objectTime, \"year\");\n\n if (isToday) {\n return `Today, ${objectTime.toFormat(\"HH:mm\")}`;\n }\n\n return objectTime.toFormat(\"ccc, LLL dd yyyy HH:mm (ZZZZ)\");\n};\n\nexport const displayNiceBytes = (object: BucketObjectItem) => {\n if (object.name.endsWith(\"/\") || !object.size) {\n return \"-\";\n }\n return niceBytes(String(object.size));\n};\n\nexport const displayDeleteFlag = (state: boolean) => {\n return state ? \"Yes\" : \"No\";\n};\n\n// Table Props\n\nexport const listModeColumns = [\n {\n label: \"Name\",\n elementKey: \"name\",\n renderFunction: displayFileIconName,\n enableSort: true,\n },\n {\n label: \"Last Modified\",\n elementKey: \"last_modified\",\n renderFunction: displayParsedDate,\n renderFullObject: true,\n enableSort: true,\n },\n {\n label: \"Size\",\n elementKey: \"size\",\n renderFunction: displayNiceBytes,\n renderFullObject: true,\n width: 100,\n enableSort: true,\n },\n];\n\nexport const rewindModeColumns = [\n {\n label: \"Name\",\n elementKey: \"name\",\n renderFunction: displayFileIconName,\n enableSort: true,\n },\n {\n label: \"Object Date\",\n elementKey: \"last_modified\",\n renderFunction: displayParsedDate,\n renderFullObject: true,\n enableSort: true,\n },\n {\n label: \"Size\",\n elementKey: \"size\",\n renderFunction: displayNiceBytes,\n renderFullObject: true,\n width: 100,\n enableSort: true,\n },\n {\n label: \"Deleted\",\n elementKey: \"delete_flag\",\n renderFunction: displayDeleteFlag,\n width: 60,\n },\n];\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { listModeColumns, rewindModeColumns } from \"./ListObjectsHelpers\";\nimport { ItemActions } from \"../../../../Common/TableWrapper/TableWrapper\";\nimport React, { useState } from \"react\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { selFeatures } from \"../../../../consoleSlice\";\nimport { encodeURLString } from \"../../../../../../common/utils\";\nimport {\n setIsOpeningOD,\n setLoadingObjects,\n setLoadingVersions,\n setObjectDetailsView,\n setSelectedObjects,\n setSelectedObjectView,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport { useNavigate, useParams } from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport { sortListObjects } from \"../utils\";\nimport { BucketObjectItem } from \"./types\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../../common/SecureComponent/permissions\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { DataTable } from \"mds\";\nimport { BucketObject } from \"api/consoleApi\";\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n browsePaper: {\n border: 0,\n \"@media (max-width: 800px)\": {\n width: 800,\n },\n },\n parentWrapper: {\n position: \"relative\",\n height: \"calc(100% - 60px)\",\n \"@media (max-width: 800px)\": {\n overflowX: \"auto\",\n },\n \"@media (max-width: 1060px)\": {\n height: \"calc(100% - 115px)\",\n },\n },\n \"@global\": {\n \".rowLine:hover .iconFileElm\": {\n backgroundImage: \"url(/images/ob_file_filled.svg)\",\n },\n \".rowLine:hover .iconFolderElm\": {\n backgroundImage: \"url(/images/ob_folder_filled.svg)\",\n },\n },\n }),\n);\n\ninterface IListObjectTable {\n internalPaths: string | null;\n}\n\nconst ListObjectsTable = ({ internalPaths }: IListObjectTable) => {\n const classes = useStyles();\n const dispatch = useAppDispatch();\n const params = useParams();\n const navigate = useNavigate();\n\n const [sortDirection, setSortDirection] = useState<\n \"ASC\" | \"DESC\" | undefined\n >(\"ASC\");\n const [currentSortField, setCurrentSortField] = useState(\"name\");\n\n const bucketName = params.bucketName || \"\";\n\n const detailsOpen = useSelector(\n (state: AppState) => state.objectBrowser.objectDetailsOpen,\n );\n\n const loadingObjects = useSelector(\n (state: AppState) => state.objectBrowser.loadingObjects,\n );\n\n const features = useSelector(selFeatures);\n const obOnly = !!features?.includes(\"object-browser-only\");\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const records = useSelector((state: AppState) => state.objectBrowser.records);\n const searchObjects = useSelector(\n (state: AppState) => state.objectBrowser.searchObjects,\n );\n const selectedObjects = useSelector(\n (state: AppState) => state.objectBrowser.selectedObjects,\n );\n const connectionError = useSelector(\n (state: AppState) => state.objectBrowser.connectionError,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const displayListObjects = hasPermission(bucketName, [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]);\n\n const filteredRecords = records.filter((b: BucketObjectItem) => {\n if (searchObjects === \"\") {\n return true;\n } else {\n const objectName = b.name.toLowerCase();\n if (objectName.indexOf(searchObjects.toLowerCase()) >= 0) {\n return true;\n } else {\n return false;\n }\n }\n });\n\n const plSelect = filteredRecords;\n const sortASC = plSelect.sort(sortListObjects(currentSortField));\n\n let payload: BucketObjectItem[] = [];\n\n if (sortDirection === \"ASC\") {\n payload = sortASC;\n } else {\n payload = sortASC.reverse();\n }\n\n const openPath = (object: BucketObject) => {\n const idElement = object.name || \"\";\n const newPath = `/browser/${bucketName}${\n idElement ? `/${encodeURLString(idElement)}` : ``\n }`;\n\n // for anonymous start download\n if (\n anonymousMode &&\n internalPaths !== null &&\n !object.name?.endsWith(\"/\")\n ) {\n downloadObject(\n dispatch,\n bucketName,\n `${encodeURLString(idElement)}`,\n object,\n );\n return;\n }\n dispatch(setSelectedObjects([]));\n\n navigate(newPath);\n\n if (!anonymousMode) {\n dispatch(setObjectDetailsView(true));\n dispatch(setLoadingVersions(true));\n dispatch(setIsOpeningOD(true));\n }\n dispatch(\n setSelectedObjectView(\n `${idElement ? `${encodeURLString(idElement)}` : ``}`,\n ),\n );\n };\n const tableActions: ItemActions[] = [\n {\n type: \"view\",\n label: \"View\",\n onClick: openPath,\n sendOnlyId: false,\n },\n ];\n\n const sortChange = (sortData: any) => {\n const newSortDirection = get(sortData, \"sortDirection\", \"DESC\");\n setCurrentSortField(sortData.sortBy);\n setSortDirection(newSortDirection);\n dispatch(setLoadingObjects(true));\n };\n\n const selectAllItems = () => {\n dispatch(setSelectedObjectView(null));\n\n if (selectedObjects.length === payload.length) {\n dispatch(setSelectedObjects([]));\n return;\n }\n\n const elements = payload.map((item) => item.name);\n dispatch(setSelectedObjects(elements));\n };\n\n const selectListObjects = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedObjects]; // We clone the selectedBuckets array\n\n if (checked) {\n // If the user has checked this field we need to push this to selectedBucketsList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n dispatch(setSelectedObjects(elements));\n dispatch(setSelectedObjectView(null));\n\n return elements;\n };\n\n let errorMessage =\n !displayListObjects && !anonymousMode\n ? permissionTooltipHelper(\n [IAM_SCOPES.S3_LIST_BUCKET, IAM_SCOPES.S3_ALL_LIST_BUCKET],\n \"view Objects in this bucket\",\n )\n : `This location is empty${\n !rewindEnabled ? \", please try uploading a new file\" : \"\"\n }`;\n\n if (connectionError) {\n errorMessage =\n \"Objects List unavailable. Please review your WebSockets configuration and try again\";\n }\n\n let customPaperHeight = \"calc(100vh - 290px)\";\n\n if (obOnly) {\n customPaperHeight = \"calc(100vh - 315px)\";\n }\n\n return (\n {\n if (payload[index]?.delete_flag) {\n return \"deleted\";\n }\n\n return \"\";\n }}\n parentClassName={classes.parentWrapper}\n sx={{\n minHeight: detailsOpen ? \"100%\" : \"initial\",\n }}\n noBackground\n />\n );\n};\nexport default ListObjectsTable;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { createAsyncThunk } from \"@reduxjs/toolkit\";\nimport { AppState } from \"../../../store\";\nimport { encodeURLString, getClientOS } from \"../../../common/utils\";\nimport { BucketObjectItem } from \"../Buckets/ListBuckets/Objects/ListObjects/types\";\nimport { makeid, storeCallForObjectWithID } from \"./transferManager\";\nimport { download } from \"../Buckets/ListBuckets/Objects/utils\";\nimport {\n cancelObjectInList,\n completeObject,\n failObject,\n setAnonymousAccessOpen,\n setDownloadRenameModal,\n setNewObject,\n setPreviewOpen,\n setSelectedPreview,\n setShareFileModalOpen,\n updateProgress,\n} from \"./objectBrowserSlice\";\nimport { setSnackBarMessage } from \"../../../systemSlice\";\n\nexport const downloadSelected = createAsyncThunk(\n \"objectBrowser/downloadSelected\",\n async (bucketName: string, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n const downloadObject = (object: BucketObjectItem) => {\n const identityDownload = encodeURLString(\n `${bucketName}-${object.name}-${new Date().getTime()}-${Math.random()}`,\n );\n\n const ID = makeid(8);\n\n const downloadCall = download(\n bucketName,\n encodeURLString(object.name),\n object.version_id,\n object.size,\n null,\n ID,\n (progress) => {\n dispatch(\n updateProgress({\n instanceID: identityDownload,\n progress: progress,\n }),\n );\n },\n () => {\n dispatch(completeObject(identityDownload));\n },\n (msg: string) => {\n dispatch(failObject({ instanceID: identityDownload, msg }));\n },\n () => {\n dispatch(cancelObjectInList(identityDownload));\n },\n () => {\n dispatch(\n setSnackBarMessage(\n \"File download will be handled directly by the browser.\",\n ),\n );\n },\n );\n storeCallForObjectWithID(ID, downloadCall);\n dispatch(\n setNewObject({\n ID,\n bucketName,\n done: false,\n instanceID: identityDownload,\n percentage: 0,\n prefix: object.name,\n type: \"download\",\n waitingForFile: true,\n failed: false,\n cancelled: false,\n errorMessage: \"\",\n }),\n );\n };\n\n if (state.objectBrowser.selectedObjects.length !== 0) {\n let itemsToDownload: BucketObjectItem[] = [];\n\n const filterFunction = (currValue: BucketObjectItem) =>\n state.objectBrowser.selectedObjects.includes(currValue.name);\n\n itemsToDownload = state.objectBrowser.records.filter(filterFunction);\n\n // I case just one element is selected, then we trigger download modal validation.\n // We are going to enforce zip download when multiple files are selected\n if (itemsToDownload.length === 1) {\n if (\n itemsToDownload[0].name.length > 200 &&\n getClientOS().toLowerCase().includes(\"win\")\n ) {\n dispatch(setDownloadRenameModal(itemsToDownload[0]));\n return;\n }\n }\n\n itemsToDownload.forEach((filteredItem) => {\n downloadObject(filteredItem);\n });\n }\n },\n);\n\nexport const openPreview = createAsyncThunk(\n \"objectBrowser/openPreview\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n if (state.objectBrowser.selectedObjects.length === 1) {\n let fileObject: BucketObjectItem | undefined;\n\n const findFunction = (currValue: BucketObjectItem) =>\n state.objectBrowser.selectedObjects.includes(currValue.name);\n\n fileObject = state.objectBrowser.records.find(findFunction);\n\n if (fileObject) {\n dispatch(setSelectedPreview(fileObject));\n dispatch(setPreviewOpen(true));\n }\n }\n },\n);\n\nexport const openShare = createAsyncThunk(\n \"objectBrowser/openShare\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n if (state.objectBrowser.selectedObjects.length === 1) {\n let fileObject: BucketObjectItem | undefined;\n\n const findFunction = (currValue: BucketObjectItem) =>\n state.objectBrowser.selectedObjects.includes(currValue.name);\n\n fileObject = state.objectBrowser.records.find(findFunction);\n\n if (fileObject) {\n dispatch(setSelectedPreview(fileObject));\n dispatch(setShareFileModalOpen(true));\n }\n }\n },\n);\n\nexport const openAnonymousAccess = createAsyncThunk(\n \"objectBrowser/openAnonymousAccess\",\n async (_, { getState, dispatch }) => {\n const state = getState() as AppState;\n\n if (\n state.objectBrowser.selectedObjects.length === 1 &&\n state.objectBrowser.selectedObjects[0].endsWith(\"/\")\n ) {\n dispatch(setAnonymousAccessOpen(true));\n }\n },\n);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { setSearchObjects } from \"./objectBrowserSlice\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { useSelector } from \"react-redux\";\n\nconst FilterObjectsSB = () => {\n const dispatch = useAppDispatch();\n\n const searchObjects = useSelector(\n (state: AppState) => state.objectBrowser.searchObjects,\n );\n return (\n {\n dispatch(setSearchObjects(value));\n }}\n value={searchObjects}\n />\n );\n};\nexport default FilterObjectsSB;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, {\n Fragment,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useLocation, useNavigate, useParams } from \"react-router-dom\";\nimport { useDropzone } from \"react-dropzone\";\nimport { Theme } from \"@mui/material/styles\";\nimport {\n AccessRuleIcon,\n ActionsList,\n BucketsIcon,\n Button,\n DeleteIcon,\n DownloadIcon,\n HistoryIcon,\n PageLayout,\n PreviewIcon,\n RefreshIcon,\n ScreenTitle,\n ShareIcon,\n} from \"mds\";\nimport { DateTime } from \"luxon\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport Grid from \"@mui/material/Grid\";\nimport get from \"lodash/get\";\nimport {\n decodeURLString,\n encodeURLString,\n niceBytesInt,\n} from \"../../../../../../common/utils\";\n\nimport {\n actionsTray,\n containerForHeader,\n objectBrowserCommon,\n objectBrowserExtras,\n searchField,\n tableStyles,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { Badge } from \"@mui/material\";\nimport BrowserBreadcrumbs from \"../../../../ObjectBrowser/BrowserBreadcrumbs\";\nimport { AllowedPreviews, previewObjectType } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../../common/types\";\n\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../../../common/SecureComponent\";\nimport withSuspense from \"../../../../Common/Components/withSuspense\";\nimport UploadFilesButton from \"../../UploadFilesButton\";\nimport DetailsListPanel from \"./DetailsListPanel\";\nimport ObjectDetailPanel from \"./ObjectDetailPanel\";\nimport VersionsNavigator from \"../ObjectDetails/VersionsNavigator\";\nimport CheckboxWrapper from \"../../../../Common/FormComponents/CheckboxWrapper/CheckboxWrapper\";\n\nimport {\n setErrorSnackMessage,\n setSnackBarMessage,\n} from \"../../../../../../systemSlice\";\n\nimport {\n makeid,\n removeTrace,\n storeCallForObjectWithID,\n storeFormDataWithID,\n} from \"../../../../ObjectBrowser/transferManager\";\nimport {\n cancelObjectInList,\n completeObject,\n failObject,\n openList,\n resetMessages,\n resetRewind,\n setAnonymousAccessOpen,\n setDownloadRenameModal,\n setLoadingObjects,\n setLoadingRecords,\n setLoadingVersions,\n setNewObject,\n setObjectDetailsView,\n setPreviewOpen,\n setRetentionConfig,\n setSearchObjects,\n setSelectedBucket,\n setSelectedObjects,\n setSelectedObjectView,\n setSelectedPreview,\n setShareFileModalOpen,\n setShowDeletedObjects,\n setVersionsModeEnabled,\n updateProgress,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport {\n selBucketDetailsInfo,\n selBucketDetailsLoading,\n setBucketDetailsLoad,\n setBucketInfo,\n} from \"../../../BucketDetails/bucketDetailsSlice\";\nimport RenameLongFileName from \"../../../../ObjectBrowser/RenameLongFilename\";\nimport TooltipWrapper from \"../../../../Common/TooltipWrapper/TooltipWrapper\";\nimport ListObjectsTable from \"./ListObjectsTable\";\nimport {\n downloadSelected,\n openAnonymousAccess,\n openPreview,\n openShare,\n} from \"../../../../ObjectBrowser/objectBrowserThunks\";\n\nimport FilterObjectsSB from \"../../../../ObjectBrowser/FilterObjectsSB\";\nimport AddAccessRule from \"../../../BucketDetails/AddAccessRule\";\nimport { isVersionedMode } from \"../../../../../../utils/validationFunctions\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { BucketQuota } from \"api/consoleApi\";\nimport {\n extractFileExtn,\n getPolicyAllowedFileExtensions,\n getSessionGrantsWildCard,\n} from \"../../UploadPermissionUtils\";\n\nconst DeleteMultipleObjects = withSuspense(\n React.lazy(() => import(\"./DeleteMultipleObjects\")),\n);\nconst ShareFile = withSuspense(\n React.lazy(() => import(\"../ObjectDetails/ShareFile\")),\n);\nconst RewindEnable = withSuspense(React.lazy(() => import(\"./RewindEnable\")));\nconst PreviewFileModal = withSuspense(\n React.lazy(() => import(\"../Preview/PreviewFileModal\")),\n);\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n badgeOverlap: {\n \"& .MuiBadge-badge\": {\n top: 10,\n right: 1,\n width: 5,\n height: 5,\n minWidth: 5,\n },\n },\n ...tableStyles,\n ...actionsTray,\n ...searchField,\n\n searchField: {\n ...searchField.searchField,\n maxWidth: 380,\n },\n screenTitleContainer: {\n border: \"#EAEDEE 1px solid\",\n padding: \"0 5px\",\n },\n labelStyle: {\n color: \"#969FA8\",\n fontSize: \"12px\",\n },\n breadcrumbsContainer: {\n padding: \"12px 14px 5px\",\n },\n fullContainer: {\n width: \"100%\",\n position: \"relative\",\n \"&.detailsOpen\": {\n \"@media (max-width: 799px)\": {\n display: \"none\",\n },\n },\n },\n hideListOnSmall: {\n \"@media (max-width: 799px)\": {\n display: \"none\",\n },\n },\n actionsSection: {\n display: \"flex\",\n justifyContent: \"space-between\",\n width: \"100%\",\n },\n ...objectBrowserExtras,\n ...objectBrowserCommon,\n ...containerForHeader,\n }),\n);\n\nconst baseDnDStyle = {\n borderWidth: 2,\n borderRadius: 2,\n borderColor: \"#eeeeee\",\n outline: \"none\",\n};\n\nconst activeDnDStyle = {\n borderStyle: \"dashed\",\n backgroundColor: \"#fafafa\",\n borderColor: \"#2196f3\",\n};\n\nconst acceptDnDStyle = {\n borderStyle: \"dashed\",\n backgroundColor: \"#fafafa\",\n borderColor: \"#00e676\",\n};\n\nconst ListObjects = () => {\n const classes = useStyles();\n const dispatch = useAppDispatch();\n const params = useParams();\n const navigate = useNavigate();\n const location = useLocation();\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const bucketToRewind = useSelector(\n (state: AppState) => state.objectBrowser.rewind.bucketToRewind,\n );\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n\n const showDeleted = useSelector(\n (state: AppState) => state.objectBrowser.showDeleted,\n );\n const detailsOpen = useSelector(\n (state: AppState) => state.objectBrowser.objectDetailsOpen,\n );\n const selectedInternalPaths = useSelector(\n (state: AppState) => state.objectBrowser.selectedInternalPaths,\n );\n const loadingObjects = useSelector(\n (state: AppState) => state.objectBrowser.loadingObjects,\n );\n const simplePath = useSelector(\n (state: AppState) => state.objectBrowser.simplePath,\n );\n\n const versioningConfig = useSelector(\n (state: AppState) => state.objectBrowser.versionInfo,\n );\n const lockingEnabled = useSelector(\n (state: AppState) => state.objectBrowser.lockingEnabled,\n );\n const downloadRenameModal = useSelector(\n (state: AppState) => state.objectBrowser.downloadRenameModal,\n );\n const selectedPreview = useSelector(\n (state: AppState) => state.objectBrowser.selectedPreview,\n );\n const shareFileModalOpen = useSelector(\n (state: AppState) => state.objectBrowser.shareFileModalOpen,\n );\n const previewOpen = useSelector(\n (state: AppState) => state.objectBrowser.previewOpen,\n );\n const selectedBucket = useSelector(\n (state: AppState) => state.objectBrowser.selectedBucket,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n const anonymousAccessOpen = useSelector(\n (state: AppState) => state.objectBrowser.anonymousAccessOpen,\n );\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n const bucketInfo = useSelector(selBucketDetailsInfo);\n\n const [deleteMultipleOpen, setDeleteMultipleOpen] = useState(false);\n const [rewindSelect, setRewindSelect] = useState(false);\n const [iniLoad, setIniLoad] = useState(false);\n const [canShareFile, setCanShareFile] = useState(false);\n const [canPreviewFile, setCanPreviewFile] = useState(false);\n const [quota, setQuota] = useState(null);\n\n const [metaData, setMetaData] = useState(null);\n const [isMetaDataLoaded, setIsMetaDataLoaded] = useState(false);\n\n const isVersioningApplied = isVersionedMode(versioningConfig.status);\n const bucketName = params.bucketName || \"\";\n\n const pathSegment = location.pathname.split(`/browser/${bucketName}/`);\n const internalPaths = pathSegment.length === 2 ? pathSegment[1] : \"\";\n\n const pageTitle = decodeURLString(internalPaths);\n const currentPath = pageTitle.split(\"/\").filter((i: string) => i !== \"\");\n\n let uploadPath = [bucketName];\n if (currentPath.length > 0) {\n uploadPath = uploadPath.concat(currentPath);\n }\n\n const fileUpload = useRef(null);\n const folderUpload = useRef(null);\n\n const sessionGrants = useSelector((state: AppState) =>\n state.console.session ? state.console.session.permissions || {} : {},\n );\n\n const putObjectPermScopes = [\n IAM_SCOPES.S3_PUT_OBJECT,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ];\n\n const pathAsResourceInPolicy = uploadPath.join(\"/\");\n const allowedFileExtensions = getPolicyAllowedFileExtensions(\n sessionGrants,\n pathAsResourceInPolicy,\n putObjectPermScopes,\n );\n\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n pathAsResourceInPolicy,\n putObjectPermScopes,\n );\n\n const canDownload = hasPermission(\n [pathAsResourceInPolicy, ...sessionGrantWildCards],\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n );\n const canDelete = hasPermission(\n [pathAsResourceInPolicy, ...sessionGrantWildCards],\n [IAM_SCOPES.S3_DELETE_OBJECT],\n );\n const canUpload =\n hasPermission(\n [pathAsResourceInPolicy, ...sessionGrantWildCards],\n putObjectPermScopes,\n ) || anonymousMode;\n\n const canSetAnonymousAccess = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_POLICY,\n IAM_SCOPES.S3_PUT_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n const selectedObjects = useSelector(\n (state: AppState) => state.objectBrowser.selectedObjects,\n );\n\n const fetchMetadata = useCallback(() => {\n const objectName = selectedObjects[0];\n\n if (!isMetaDataLoaded) {\n const encodedPath = encodeURLString(objectName);\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: encodedPath,\n })\n .then((res) => {\n let metadata = get(res.data, \"objectMetadata\", {});\n setIsMetaDataLoaded(true);\n setMetaData(metadata);\n })\n .catch((err) => {\n console.error(\n \"Error Getting Metadata Status: \",\n err,\n err?.detailedError,\n );\n setIsMetaDataLoaded(true);\n });\n }\n }, [bucketName, selectedObjects, isMetaDataLoaded]);\n\n useEffect(() => {\n if (bucketName && selectedObjects.length === 1) {\n fetchMetadata();\n }\n }, [bucketName, selectedObjects, fetchMetadata]);\n\n useEffect(() => {\n dispatch(setSearchObjects(\"\"));\n dispatch(setLoadingObjects(true));\n dispatch(setSelectedObjects([]));\n }, [simplePath, dispatch]);\n\n useEffect(() => {\n if (rewindEnabled) {\n if (bucketToRewind !== bucketName) {\n dispatch(resetRewind());\n return;\n }\n }\n }, [rewindEnabled, bucketToRewind, bucketName, dispatch]);\n\n // END OF WS HANDLERS\n\n useEffect(() => {\n if (folderUpload.current !== null) {\n folderUpload.current.setAttribute(\"directory\", \"\");\n folderUpload.current.setAttribute(\"webkitdirectory\", \"\");\n }\n }, [folderUpload]);\n\n useEffect(() => {\n if (selectedObjects.length === 1) {\n const objectName = selectedObjects[0];\n let objectType: AllowedPreviews = previewObjectType(metaData, objectName);\n\n if (objectType !== \"none\" && canDownload) {\n setCanPreviewFile(true);\n } else {\n setCanPreviewFile(false);\n }\n\n if (objectName.endsWith(\"/\") || canDownload) {\n setCanShareFile(true);\n } else {\n setCanShareFile(false);\n }\n } else {\n setCanShareFile(false);\n setCanPreviewFile(false);\n }\n }, [selectedObjects, canDownload, metaData]);\n\n useEffect(() => {\n if (!quota && !anonymousMode) {\n api.buckets\n .getBucketQuota(bucketName)\n .then((res) => {\n let quotaVals = null;\n\n if (res.data.quota) {\n quotaVals = res.data;\n }\n\n setQuota(quotaVals);\n })\n .catch((err) => {\n console.error(\n \"Error Getting Quota Status: \",\n err.error.detailedMessage,\n );\n setQuota(null);\n });\n }\n }, [quota, bucketName, anonymousMode]);\n\n useEffect(() => {\n if (selectedObjects.length > 0) {\n dispatch(setObjectDetailsView(true));\n return;\n }\n\n if (\n selectedObjects.length === 0 &&\n selectedInternalPaths === null &&\n !loadingObjects\n ) {\n dispatch(setObjectDetailsView(false));\n }\n }, [selectedObjects, selectedInternalPaths, dispatch, loadingObjects]);\n\n useEffect(() => {\n if (!iniLoad) {\n dispatch(setBucketDetailsLoad(true));\n setIniLoad(true);\n }\n }, [iniLoad, dispatch, setIniLoad]);\n\n // bucket info\n useEffect(() => {\n if ((loadingObjects || loadingBucket) && !anonymousMode) {\n api.buckets\n .bucketInfo(bucketName)\n .then((res) => {\n dispatch(setBucketDetailsLoad(false));\n dispatch(setBucketInfo(res.data));\n dispatch(setSelectedBucket(bucketName));\n })\n .catch((err) => {\n dispatch(setBucketDetailsLoad(false));\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n });\n }\n }, [bucketName, loadingBucket, dispatch, anonymousMode, loadingObjects]);\n\n // Load retention Config\n\n useEffect(() => {\n if (selectedBucket !== \"\") {\n api.buckets\n .getBucketRetentionConfig(selectedBucket)\n .then((res) => {\n dispatch(setRetentionConfig(res.data));\n })\n .catch(() => {\n dispatch(setRetentionConfig(null));\n });\n }\n }, [selectedBucket, dispatch]);\n\n const closeDeleteMultipleModalAndRefresh = (refresh: boolean) => {\n setDeleteMultipleOpen(false);\n\n if (refresh) {\n dispatch(setSnackBarMessage(`Objects deleted successfully.`));\n dispatch(setSelectedObjects([]));\n dispatch(setLoadingObjects(true));\n }\n };\n\n const handleUploadButton = (e: any) => {\n if (\n e === null ||\n e === undefined ||\n e.target.files === null ||\n e.target.files === undefined\n ) {\n return;\n }\n e.preventDefault();\n var newFiles: File[] = [];\n\n for (var i = 0; i < e.target.files.length; i++) {\n newFiles.push(e.target.files[i]);\n }\n uploadObject(newFiles, \"\");\n\n e.target.value = \"\";\n };\n\n const uploadObject = useCallback(\n (files: File[], folderPath: string): void => {\n let pathPrefix = \"\";\n if (simplePath) {\n pathPrefix = simplePath.endsWith(\"/\") ? simplePath : simplePath + \"/\";\n }\n\n const upload = (\n files: File[],\n bucketName: string,\n path: string,\n folderPath: string,\n ) => {\n let uploadPromise = (file: File) => {\n return new Promise((resolve, reject) => {\n let uploadUrl = `api/v1/buckets/${bucketName}/objects/upload`;\n const fileName = file.name;\n\n const blobFile = new Blob([file], { type: file.type });\n\n let encodedPath = \"\";\n\n const filePath = get(file, \"path\", \"\");\n const fileWebkitRelativePath = get(file, \"webkitRelativePath\", \"\");\n\n let relativeFolderPath = folderPath;\n const ID = makeid(8);\n\n // File was uploaded via drag & drop\n if (filePath !== \"\") {\n relativeFolderPath = filePath;\n } else if (fileWebkitRelativePath !== \"\") {\n // File was uploaded using upload button\n relativeFolderPath = fileWebkitRelativePath;\n }\n\n if (path !== \"\" || relativeFolderPath !== \"\") {\n const finalFolderPath = relativeFolderPath\n .split(\"/\")\n .slice(0, -1)\n .join(\"/\");\n\n const pathClean = path.endsWith(\"/\") ? path.slice(0, -1) : path;\n\n encodedPath = encodeURLString(\n `${pathClean}${\n !pathClean.endsWith(\"/\") &&\n finalFolderPath !== \"\" &&\n !finalFolderPath.startsWith(\"/\")\n ? \"/\"\n : \"\"\n }${finalFolderPath}${\n !finalFolderPath.endsWith(\"/\") ||\n (finalFolderPath.trim() === \"\" && !path.endsWith(\"/\"))\n ? \"/\"\n : \"\"\n }`,\n );\n }\n\n if (encodedPath !== \"\") {\n uploadUrl = `${uploadUrl}?prefix=${encodedPath}`;\n }\n\n const identity = encodeURLString(\n `${bucketName}-${encodedPath}-${new Date().getTime()}-${Math.random()}`,\n );\n\n let xhr = new XMLHttpRequest();\n xhr.open(\"POST\", uploadUrl, true);\n if (anonymousMode) {\n xhr.setRequestHeader(\"X-Anonymous\", \"1\");\n }\n // xhr.setRequestHeader(\"X-Anonymous\", \"1\");\n\n const areMultipleFiles = files.length > 1;\n let errorMessage = `An error occurred while uploading the file${\n areMultipleFiles ? \"s\" : \"\"\n }.`;\n\n const errorMessages: any = {\n 413: \"Error - File size too large\",\n };\n\n xhr.withCredentials = false;\n xhr.onload = function (event) {\n // resolve promise only when HTTP code is ok\n if (xhr.status >= 200 && xhr.status < 300) {\n dispatch(completeObject(identity));\n resolve({ status: xhr.status });\n\n removeTrace(ID);\n } else {\n // reject promise if there was a server error\n if (errorMessages[xhr.status]) {\n errorMessage = errorMessages[xhr.status];\n } else if (xhr.response) {\n try {\n const err = JSON.parse(xhr.response);\n errorMessage = err.detailedMessage;\n } catch (e) {\n errorMessage = \"something went wrong\";\n }\n }\n\n dispatch(\n failObject({\n instanceID: identity,\n msg: errorMessage,\n }),\n );\n reject({ status: xhr.status, message: errorMessage });\n\n removeTrace(ID);\n }\n };\n\n xhr.upload.addEventListener(\"error\", (event) => {\n reject(errorMessage);\n dispatch(\n failObject({\n instanceID: identity,\n msg: \"A network error occurred.\",\n }),\n );\n return;\n });\n\n xhr.upload.addEventListener(\"progress\", (event) => {\n const progress = Math.floor((event.loaded * 100) / event.total);\n\n dispatch(\n updateProgress({\n instanceID: identity,\n progress: progress,\n }),\n );\n });\n\n xhr.onerror = () => {\n reject(errorMessage);\n dispatch(\n failObject({\n instanceID: identity,\n msg: \"A network error occurred.\",\n }),\n );\n return;\n };\n xhr.onloadend = () => {\n if (files.length === 0) {\n dispatch(setLoadingObjects(true));\n }\n };\n xhr.onabort = () => {\n dispatch(cancelObjectInList(identity));\n };\n\n const formData = new FormData();\n if (file.size !== undefined) {\n formData.append(file.size.toString(), blobFile, fileName);\n storeCallForObjectWithID(ID, xhr);\n dispatch(\n setNewObject({\n ID,\n bucketName,\n done: false,\n instanceID: identity,\n percentage: 0,\n prefix: `${decodeURLString(encodedPath)}${fileName}`,\n type: \"upload\",\n waitingForFile: false,\n failed: false,\n cancelled: false,\n errorMessage: \"\",\n }),\n );\n storeFormDataWithID(ID, formData);\n }\n });\n };\n\n const uploadFilePromises: any = [];\n // open object manager\n dispatch(openList());\n for (let i = 0; i < files.length; i++) {\n const file = files[i];\n uploadFilePromises.push(uploadPromise(file));\n }\n Promise.allSettled(uploadFilePromises).then((results: Array) => {\n const errors = results.filter(\n (result) => result.status === \"rejected\",\n );\n if (errors.length > 0) {\n const totalFiles = uploadFilePromises.length;\n const successUploadedFiles =\n uploadFilePromises.length - errors.length;\n const err: ErrorResponseHandler = {\n errorMessage: \"There were some errors during file upload\",\n detailedError: `Uploaded files ${successUploadedFiles}/${totalFiles}`,\n };\n dispatch(setErrorSnackMessage(err));\n }\n // We force objects list reload after all promises were handled\n dispatch(setLoadingObjects(true));\n dispatch(setSelectedObjects([]));\n });\n };\n\n upload(files, bucketName, pathPrefix, folderPath);\n },\n [bucketName, dispatch, simplePath, anonymousMode],\n );\n\n const onDrop = useCallback(\n (acceptedFiles: any[]) => {\n if (acceptedFiles && acceptedFiles.length > 0 && canUpload) {\n let newFolderPath: string = acceptedFiles[0].path;\n //Should we filter by allowed file extensions if any?.\n let allowedFiles = [];\n if (allowedFileExtensions.length > 0) {\n allowedFiles = acceptedFiles.filter((file) => {\n const fileExtn = extractFileExtn(file.name);\n return allowedFileExtensions.includes(fileExtn);\n });\n } else {\n allowedFiles = acceptedFiles;\n }\n\n if (allowedFiles.length) {\n uploadObject(allowedFiles, newFolderPath);\n console.log(\n `${allowedFiles.length} Allowed Files Processed out of ${acceptedFiles.length}.`,\n pathAsResourceInPolicy,\n ...sessionGrantWildCards,\n );\n\n if (allowedFiles.length !== acceptedFiles.length) {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"Upload is restricted.\",\n detailedError: permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT, IAM_SCOPES.S3_PUT_ACTIONS],\n \"upload objects to this location\",\n ),\n }),\n );\n }\n } else {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"Could not process drag and drop.\",\n detailedError: permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT, IAM_SCOPES.S3_PUT_ACTIONS],\n \"upload objects to this location\",\n ),\n }),\n );\n\n console.error(\n \"Could not process drag and drop . upload may be restricted.\",\n pathAsResourceInPolicy,\n ...sessionGrantWildCards,\n );\n }\n }\n if (!canUpload) {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"Upload not allowed\",\n detailedError: permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT, IAM_SCOPES.S3_PUT_ACTIONS],\n \"upload objects to this location\",\n ),\n }),\n );\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [uploadObject],\n );\n\n const { getRootProps, getInputProps, isDragActive, isDragAccept } =\n useDropzone({\n noClick: true,\n onDrop,\n });\n\n const dndStyles = useMemo(\n () => ({\n ...baseDnDStyle,\n ...(isDragActive ? activeDnDStyle : {}),\n ...(isDragAccept ? acceptDnDStyle : {}),\n }),\n [isDragActive, isDragAccept],\n );\n\n const closeShareModal = () => {\n dispatch(setShareFileModalOpen(false));\n dispatch(setSelectedPreview(null));\n };\n\n const rewindCloseModal = () => {\n setRewindSelect(false);\n };\n\n const closePreviewWindow = () => {\n dispatch(setPreviewOpen(false));\n dispatch(setSelectedPreview(null));\n };\n\n const onClosePanel = (forceRefresh: boolean) => {\n dispatch(setSelectedObjectView(null));\n dispatch(setVersionsModeEnabled({ status: false }));\n if (detailsOpen && selectedInternalPaths !== null) {\n // We change URL to be the contained folder\n\n const decodedPath = decodeURLString(internalPaths);\n const splitURLS = decodedPath.split(\"/\");\n\n // We remove the last section of the URL as it should be a file\n splitURLS.pop();\n\n let URLItem = \"\";\n\n if (splitURLS && splitURLS.length > 0) {\n URLItem = `${splitURLS.join(\"/\")}/`;\n }\n\n navigate(`/browser/${bucketName}/${encodeURLString(URLItem)}`);\n }\n\n dispatch(setObjectDetailsView(false));\n dispatch(setSelectedObjects([]));\n\n if (forceRefresh) {\n dispatch(setLoadingObjects(true));\n }\n };\n\n const setDeletedAction = () => {\n dispatch(resetMessages());\n dispatch(setShowDeletedObjects(!showDeleted));\n onClosePanel(true);\n };\n\n const closeRenameModal = () => {\n dispatch(setDownloadRenameModal(null));\n };\n\n const closeAddAccessRule = () => {\n dispatch(setAnonymousAccessOpen(false));\n };\n\n let createdTime = DateTime.now();\n\n if (bucketInfo?.creation_date) {\n createdTime = DateTime.fromISO(bucketInfo.creation_date);\n }\n\n const multiActionButtons = [\n {\n action: () => {\n dispatch(downloadSelected(bucketName));\n },\n label: \"Download\",\n disabled: !canDownload || selectedObjects?.length === 0,\n icon: ,\n tooltip: canDownload\n ? \"Download Selected\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"download objects from this bucket\",\n ),\n },\n {\n action: () => {\n dispatch(openShare());\n },\n label: \"Share\",\n disabled: selectedObjects.length !== 1 || !canShareFile,\n icon: ,\n tooltip: canShareFile ? \"Share Selected File\" : \"Sharing unavailable\",\n },\n {\n action: () => {\n dispatch(openPreview());\n },\n label: \"Preview\",\n disabled: selectedObjects.length !== 1 || !canPreviewFile,\n icon: ,\n tooltip: canPreviewFile ? \"Preview Selected File\" : \"Preview unavailable\",\n },\n {\n action: () => {\n dispatch(openAnonymousAccess());\n },\n label: \"Anonymous Access\",\n disabled:\n selectedObjects.length !== 1 ||\n !selectedObjects[0].endsWith(\"/\") ||\n !canSetAnonymousAccess,\n icon: ,\n tooltip:\n selectedObjects.length === 1 && selectedObjects[0].endsWith(\"/\")\n ? \"Set Anonymous Access to this Folder\"\n : \"Anonymous Access unavailable\",\n },\n {\n action: () => {\n setDeleteMultipleOpen(true);\n },\n label: \"Delete\",\n icon: ,\n disabled: !canDelete || selectedObjects.length === 0,\n tooltip: canDelete\n ? \"Delete Selected Files\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_DELETE_OBJECT],\n \"delete objects in this bucket\",\n ),\n },\n ];\n\n return (\n \n {shareFileModalOpen && selectedPreview && (\n \n )}\n {deleteMultipleOpen && (\n \n )}\n {rewindSelect && (\n \n )}\n {previewOpen && (\n \n )}\n {!!downloadRenameModal && (\n \n )}\n {anonymousAccessOpen && (\n \n )}\n\n \n {anonymousMode && (\n
\n \n
\n )}\n \n \n \n \n }\n title={bucketName}\n subTitle={\n !anonymousMode ? (\n \n \n Created on:  \n \n {bucketInfo?.creation_date\n ? createdTime.toFormat(\n \"ccc, LLL dd yyyy HH:mm:ss (ZZZZ)\",\n )\n : \"\"}\n \n \n \n Access:   \n {bucketInfo?.access || \"\"}\n \n {bucketInfo && (\n \n \n {bucketInfo.size && (\n {niceBytesInt(bucketInfo.size)}\n )}\n {bucketInfo.size && quota && (\n \n {\" \"}\n / {niceBytesInt(quota.quota || 0)}\n \n )}\n {bucketInfo.size && bucketInfo.objects ? \" - \" : \"\"}\n {bucketInfo.objects && (\n \n {bucketInfo.objects} Object\n {bucketInfo.objects && bucketInfo.objects !== 1\n ? \"s\"\n : \"\"}\n \n )}\n \n \n )}\n \n ) : null\n }\n actions={\n \n {!anonymousMode && (\n \n \n \n \n }\n variant={\"regular\"}\n onClick={() => {\n setRewindSelect(true);\n }}\n disabled={\n !isVersioningApplied ||\n !hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_OBJECT,\n IAM_SCOPES.S3_GET_ACTIONS,\n ])\n }\n />\n \n )}\n \n }\n variant={\"regular\"}\n onClick={() => {\n if (versionsMode) {\n dispatch(setLoadingVersions(true));\n } else {\n dispatch(resetMessages());\n dispatch(setLoadingRecords(true));\n dispatch(setLoadingObjects(true));\n }\n }}\n disabled={\n anonymousMode\n ? false\n : !hasPermission(bucketName, [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]) || rewindEnabled\n }\n />\n \n \n \n {\n if (fileUpload && fileUpload.current) {\n fileUpload.current.click();\n }\n closeMenu();\n }}\n uploadFolderFunction={(closeMenu) => {\n if (folderUpload && folderUpload.current) {\n folderUpload.current.click();\n }\n closeMenu();\n }}\n />\n \n }\n bottomBorder={false}\n />\n \n \n \n \n {versionsMode ? (\n \n {selectedInternalPaths !== null && (\n \n )}\n \n ) : (\n \n \n {!anonymousMode && (\n \n \n \n \n )\n }\n hidePathButton={false}\n />\n \n )}\n \n \n \n )}\n {!anonymousMode && (\n \n {\n onClosePanel(false);\n }}\n className={`${versionsMode ? classes.hideListOnSmall : \"\"}`}\n >\n {selectedObjects.length > 0 && (\n \n )}\n {selectedInternalPaths !== null && (\n \n )}\n \n \n )}\n \n \n
\n
\n );\n};\n\nexport default ListObjects;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect } from \"react\";\nimport {\n IAM_PAGES,\n IAM_PERMISSIONS,\n IAM_ROLES,\n IAM_SCOPES,\n} from \"../../../common/SecureComponent/permissions\";\nimport { SecureComponent } from \"../../../common/SecureComponent\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport { BackLink, Button, SettingsIcon, Grid } from \"mds\";\nimport AutoColorIcon from \"../Common/Components/AutoColorIcon\";\nimport { useSelector } from \"react-redux\";\nimport { selFeatures } from \"../consoleSlice\";\nimport hasPermission from \"../../../common/SecureComponent/accessControl\";\nimport { useNavigate } from \"react-router-dom\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { setSearchVersions } from \"./objectBrowserSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport FilterObjectsSB from \"./FilterObjectsSB\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport ObjectManagerButton from \"../Common/ObjectManager/ObjectManagerButton\";\nimport HelpMenu from \"../HelpMenu\";\nimport { setHelpName } from \"../../../systemSlice\";\n\ninterface IOBHeader {\n bucketName: string;\n}\n\nconst OBHeader = ({ bucketName }: IOBHeader) => {\n const dispatch = useAppDispatch();\n const features = useSelector(selFeatures);\n\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const versionedFile = useSelector(\n (state: AppState) => state.objectBrowser.versionedFile,\n );\n const searchVersions = useSelector(\n (state: AppState) => state.objectBrowser.searchVersions,\n );\n\n const obOnly = !!features?.includes(\"object-browser-only\");\n\n const navigate = useNavigate();\n\n const configureBucketAllowed = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_POLICY,\n IAM_SCOPES.S3_PUT_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,\n IAM_SCOPES.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,\n IAM_SCOPES.S3_DELETE_BUCKET,\n IAM_SCOPES.S3_GET_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_PUT_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_GET_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_PUT_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_GET_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.S3_PUT_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.ADMIN_GET_BUCKET_QUOTA,\n IAM_SCOPES.ADMIN_SET_BUCKET_QUOTA,\n IAM_SCOPES.S3_PUT_BUCKET_TAGGING,\n IAM_SCOPES.S3_GET_BUCKET_TAGGING,\n IAM_SCOPES.S3_LIST_BUCKET_VERSIONS,\n IAM_SCOPES.S3_GET_BUCKET_POLICY_STATUS,\n IAM_SCOPES.S3_DELETE_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n const searchBar = (\n \n {!versionsMode ? (\n \n \n \n ) : (\n \n {\n dispatch(setSearchVersions(value));\n }}\n value={searchVersions}\n />\n \n )}\n \n );\n\n useEffect(() => {\n dispatch(setHelpName(\"object_browser\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n {!obOnly ? (\n {\n navigate(IAM_PAGES.OBJECT_BROWSER_VIEW);\n }}\n />\n }\n actions={\n \n \n \n navigate(`/buckets/${bucketName}/admin`)}\n icon={\n \n }\n style={{\n padding: \"0 10px\",\n }}\n />\n \n \n \n \n }\n middleComponent={searchBar}\n />\n ) : (\n \n \n \n \n \n {searchBar}\n \n \n \n )}\n \n );\n};\n\nexport default OBHeader;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { DateTime } from \"luxon\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { Grid, InputBox, InputLabel, LinkIcon } from \"mds\";\n\ninterface IDaysSelector {\n classes: any;\n id: string;\n initialDate: Date;\n maxDays?: number;\n label: string;\n entity: string;\n onChange: (newDate: string, isValid: boolean) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n labelContainer: {\n display: \"flex\",\n alignItems: \"center\",\n marginBottom: 15,\n },\n fieldContainer: {\n ...fieldBasic.fieldContainer,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n paddingBottom: 10,\n marginTop: 11,\n marginBottom: 6,\n },\n durationInputs: {\n display: \"flex\",\n alignItems: \"flex-start\",\n justifyContent: \"flex-start\",\n gap: 10,\n },\n\n validityIndicator: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-start\",\n marginTop: 25,\n marginLeft: 10,\n },\n invalidDurationText: {\n marginTop: 15,\n display: \"flex\",\n color: \"red\",\n fontSize: 11,\n },\n reverseInput: {\n flexFlow: \"row-reverse\",\n \"& > label\": {\n fontWeight: 400,\n marginLeft: 15,\n marginRight: 25,\n },\n },\n validityText: {\n fontSize: 14,\n marginTop: 15,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n \"@media (max-width: 900px)\": {\n flexFlow: \"column\",\n },\n \"& > .min-icon\": {\n color: \"#5E5E5E\",\n width: 15,\n height: 15,\n marginRight: 10,\n },\n },\n validTill: {\n fontWeight: \"bold\",\n marginLeft: 15,\n },\n });\n\nconst calculateNewTime = (\n initialDate: Date,\n days: number,\n hours: number,\n minutes: number,\n) => {\n return DateTime.fromJSDate(initialDate).plus({ days, hours, minutes });\n};\n\nconst DaysSelector = ({\n classes,\n id,\n initialDate,\n label,\n maxDays,\n entity,\n onChange,\n}: IDaysSelector) => {\n const [selectedDays, setSelectedDays] = useState(7);\n const [selectedHours, setSelectedHours] = useState(0);\n const [selectedMinutes, setSelectedMinutes] = useState(0);\n const [validDate, setValidDate] = useState(true);\n const [dateSelected, setDateSelected] = useState(DateTime.now());\n\n useEffect(() => {\n if (\n !isNaN(selectedHours) &&\n !isNaN(selectedDays) &&\n !isNaN(selectedMinutes)\n ) {\n setDateSelected(\n calculateNewTime(\n initialDate,\n selectedDays,\n selectedHours,\n selectedMinutes,\n ),\n );\n }\n }, [initialDate, selectedDays, selectedHours, selectedMinutes]);\n\n useEffect(() => {\n if (validDate) {\n const formattedDate = dateSelected.toFormat(\"yyyy-MM-dd HH:mm:ss\");\n onChange(formattedDate.split(\" \").join(\"T\"), true);\n } else {\n onChange(\"0000-00-00\", false);\n }\n }, [dateSelected, onChange, validDate]);\n\n // Basic validation for inputs\n useEffect(() => {\n let valid = true;\n if (\n selectedDays < 0 ||\n (maxDays && selectedDays > maxDays) ||\n isNaN(selectedDays)\n ) {\n valid = false;\n }\n\n if (selectedHours < 0 || selectedHours > 23 || isNaN(selectedHours)) {\n valid = false;\n }\n\n if (selectedMinutes < 0 || selectedMinutes > 59 || isNaN(selectedMinutes)) {\n valid = false;\n }\n\n if (\n maxDays &&\n selectedDays === maxDays &&\n (selectedHours !== 0 || selectedMinutes !== 0)\n ) {\n valid = false;\n }\n\n if (selectedDays <= 0 && selectedHours <= 0 && selectedMinutes <= 0) {\n valid = false;\n }\n\n setValidDate(valid);\n }, [\n dateSelected,\n maxDays,\n onChange,\n selectedDays,\n selectedHours,\n selectedMinutes,\n ]);\n\n const extraStyles = {\n \"& .textBoxContainer\": {\n minWidth: 0,\n },\n \"& input\": {\n textAlign: \"center\" as const,\n paddingRight: 10,\n paddingLeft: 10,\n width: 40,\n },\n };\n\n return (\n \n \n \n {label}\n \n \n \n {\n setSelectedDays(parseInt(e.target.value));\n }}\n value={selectedDays.toString()}\n sx={extraStyles}\n noLabelMinWidth\n />\n \n \n {\n setSelectedHours(parseInt(e.target.value));\n }}\n value={selectedHours.toString()}\n sx={extraStyles}\n noLabelMinWidth\n />\n \n \n {\n setSelectedMinutes(parseInt(e.target.value));\n }}\n value={selectedMinutes.toString()}\n sx={extraStyles}\n noLabelMinWidth\n />\n \n \n \n {validDate ? (\n
\n \n
\n {entity} will be available until:\n
{\" \"}\n
\n {dateSelected.toFormat(\"MM/dd/yyyy HH:mm:ss\")}\n
\n
\n ) : (\n
\n Please select a valid duration.\n
\n )}\n
\n \n
\n );\n};\n\nexport default withStyles(styles)(DaysSelector);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { Button, CopyIcon, ReadBox, ShareIcon, Grid } from \"mds\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport LinearProgress from \"@mui/material/LinearProgress\";\n\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport DaysSelector from \"../../../../Common/FormComponents/DaysSelector/DaysSelector\";\nimport { encodeURLString } from \"../../../../../../common/utils\";\nimport {\n selDistSet,\n setModalErrorSnackMessage,\n setModalSnackMessage,\n} from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IShareFileProps {\n open: boolean;\n bucketName: string;\n dataObject: BucketObject;\n closeModalAndRefresh: () => void;\n}\n\nconst ShareFile = ({\n open,\n closeModalAndRefresh,\n bucketName,\n dataObject,\n}: IShareFileProps) => {\n const dispatch = useAppDispatch();\n const distributedSetup = useSelector(selDistSet);\n const [shareURL, setShareURL] = useState(\"\");\n const [isLoadingVersion, setIsLoadingVersion] = useState(true);\n const [isLoadingFile, setIsLoadingFile] = useState(false);\n const [selectedDate, setSelectedDate] = useState(\"\");\n const [dateValid, setDateValid] = useState(true);\n const [versionID, setVersionID] = useState(\"null\");\n\n const initialDate = new Date();\n\n const dateChanged = (newDate: string, isValid: boolean) => {\n setDateValid(isValid);\n if (isValid) {\n setSelectedDate(newDate);\n return;\n }\n setSelectedDate(\"\");\n setShareURL(\"\");\n };\n\n useEffect(() => {\n // In case version is undefined, we get the latest version of the object\n if (dataObject.version_id === undefined) {\n // In case it is not distributed setup, then we default to \"null\";\n if (distributedSetup) {\n api.buckets\n .listObjects(bucketName, {\n prefix: encodeURLString(dataObject.name || \"\"),\n with_versions: distributedSetup,\n })\n .then((res) => {\n const result: BucketObject[] = res.data.objects || [];\n\n const latestVersion: BucketObject | undefined = result.find(\n (elem: BucketObject) => elem.is_latest,\n );\n\n if (latestVersion) {\n setVersionID(`${latestVersion.version_id}`);\n return;\n }\n\n // Version couldn't be retrieved, we default\n setVersionID(\"null\");\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n\n setIsLoadingVersion(false);\n return;\n }\n setVersionID(\"null\");\n setIsLoadingVersion(false);\n return;\n }\n setVersionID(dataObject.version_id || \"null\");\n setIsLoadingVersion(false);\n }, [bucketName, dataObject, distributedSetup, dispatch]);\n\n useEffect(() => {\n if (dateValid && !isLoadingVersion) {\n setIsLoadingFile(true);\n setShareURL(\"\");\n\n const slDate = new Date(`${selectedDate}`);\n const currDate = new Date();\n\n const diffDate = Math.ceil(\n (slDate.getTime() - currDate.getTime()) / 1000,\n );\n\n if (diffDate > 0) {\n api.buckets\n .shareObject(bucketName, {\n prefix: encodeURLString(dataObject.name || \"\"),\n version_id: versionID,\n expires: selectedDate !== \"\" ? `${diffDate}s` : \"\",\n })\n .then((res) => {\n setShareURL(res.data);\n setIsLoadingFile(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setShareURL(\"\");\n setIsLoadingFile(false);\n });\n }\n }\n }, [\n dataObject,\n selectedDate,\n bucketName,\n dateValid,\n setShareURL,\n dispatch,\n distributedSetup,\n isLoadingVersion,\n versionID,\n ]);\n\n return (\n \n }\n modalOpen={open}\n onClose={() => {\n closeModalAndRefresh();\n }}\n >\n {isLoadingVersion && (\n \n \n \n )}\n {!isLoadingVersion && (\n \n \n This is a temporary URL with integrated access credentials for\n sharing objects valid for up to 7 days.\n
\n
\n The temporary URL expires after the configured time limit.\n \n
\n \n \n \n \n \n {\n dispatch(\n setModalSnackMessage(\"Share URL Copied to clipboard\"),\n );\n }}\n disabled={shareURL === \"\" || isLoadingFile}\n style={{\n width: \"28px\",\n height: \"28px\",\n padding: \"0px\",\n }}\n icon={}\n />\n \n }\n >\n {shareURL}\n \n \n
\n )}\n \n
\n );\n};\n\nexport default ShareFile;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Grid, LinearProgress } from \"@mui/material\";\nimport { BucketObjectItem } from \"../ListObjects/types\";\nimport { AllowedPreviews, previewObjectType } from \"../utils\";\nimport { encodeURLString } from \"../../../../../../common/utils\";\nimport clsx from \"clsx\";\nimport WarningMessage from \"../../../../Common/WarningMessage/WarningMessage\";\nimport { api } from \"../../../../../../api\";\nimport get from \"lodash/get\";\n\nconst styles = () =>\n createStyles({\n iframeContainer: {\n border: \"0px\",\n flex: \"1 1 auto\",\n width: \"100%\",\n height: 250,\n backgroundColor: \"transparent\",\n borderRadius: 5,\n\n \"&.image\": {\n height: 500,\n },\n \"&.text\": {\n height: 700,\n },\n \"&.audio\": {\n height: 150,\n },\n \"&.video\": {\n height: 350,\n },\n \"&.fullHeight\": {\n height: \"calc(100vh - 185px)\",\n },\n },\n iframeBase: {\n backgroundColor: \"#fff\",\n },\n iframeHidden: {\n display: \"none\",\n },\n });\n\ninterface IPreviewFileProps {\n bucketName: string;\n object: BucketObjectItem | null;\n isFullscreen?: boolean;\n classes: any;\n}\n\nconst PreviewFile = ({\n bucketName,\n object,\n isFullscreen = false,\n classes,\n}: IPreviewFileProps) => {\n const [loading, setLoading] = useState(true);\n\n const [metaData, setMetaData] = useState(null);\n const [isMetaDataLoaded, setIsMetaDataLoaded] = useState(false);\n\n const objectName = object?.name || \"\";\n\n const fetchMetadata = useCallback(() => {\n if (!isMetaDataLoaded) {\n const encodedPath = encodeURLString(objectName);\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: encodedPath,\n })\n .then((res) => {\n let metadata = get(res.data, \"objectMetadata\", {});\n setIsMetaDataLoaded(true);\n setMetaData(metadata);\n })\n .catch((err) => {\n console.error(\n \"Error Getting Metadata Status: \",\n err,\n err?.detailedError,\n );\n setIsMetaDataLoaded(true);\n });\n }\n }, [bucketName, objectName, isMetaDataLoaded]);\n\n useEffect(() => {\n if (bucketName && objectName) {\n fetchMetadata();\n }\n }, [bucketName, objectName, fetchMetadata]);\n\n let path = \"\";\n\n if (object) {\n const encodedPath = encodeURLString(object.name);\n let basename = document.baseURI.replace(window.location.origin, \"\");\n path = `${window.location.origin}${basename}api/v1/buckets/${bucketName}/objects/download?preview=true&prefix=${encodedPath}`;\n if (object.version_id) {\n path = path.concat(`&version_id=${object.version_id}`);\n }\n }\n\n let objectType: AllowedPreviews = previewObjectType(metaData, objectName);\n\n const iframeLoaded = () => {\n setLoading(false);\n };\n\n return (\n \n {objectType !== \"none\" && loading && (\n \n \n \n )}\n {isMetaDataLoaded ? (\n
\n {objectType === \"video\" && (\n \n \n \n )}\n {objectType === \"audio\" && (\n \n \n \n )}\n {objectType === \"image\" && (\n \n )}\n {objectType === \"none\" && (\n
\n \n
\n )}\n {objectType !== \"none\" &&\n objectType !== \"video\" &&\n objectType !== \"audio\" &&\n objectType !== \"image\" && (\n \n \n File couldn't be loaded. Please try Download instead\n \n
\n )}\n \n ) : null}\n
\n );\n};\nexport default withStyles(styles)(PreviewFile);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport PreviewFileContent from \"./PreviewFileContent\";\nimport { BucketObjectItem } from \"../ListObjects/types\";\nimport { ObjectPreviewIcon } from \"mds\";\n\ninterface IPreviewFileProps {\n open: boolean;\n bucketName: string;\n object: BucketObjectItem | null;\n onClosePreview: () => void;\n}\n\nconst PreviewFileModal = ({\n open,\n bucketName,\n object,\n onClosePreview,\n}: IPreviewFileProps) => {\n return (\n \n }\n >\n \n \n \n );\n};\n\nexport default PreviewFileModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { BucketObjectItem } from \"./ListObjects/types\";\nimport { encodeURLString } from \"../../../../../common/utils\";\nimport { removeTrace } from \"../../../ObjectBrowser/transferManager\";\nimport store from \"../../../../../store\";\nimport { PermissionResource } from \"api/consoleApi\";\n\nexport const download = (\n bucketName: string,\n objectPath: string,\n versionID: any,\n fileSize: number,\n overrideFileName: string | null = null,\n id: string,\n progressCallback: (progress: number) => void,\n completeCallback: () => void,\n errorCallback: (msg: string) => void,\n abortCallback: () => void,\n toastCallback: () => void,\n) => {\n const anchor = document.createElement(\"a\");\n document.body.appendChild(anchor);\n let basename = document.baseURI.replace(window.location.origin, \"\");\n const state = store.getState();\n const anonymousMode = state.system.anonymousMode;\n\n let path = `${\n window.location.origin\n }${basename}api/v1/buckets/${bucketName}/objects/download?prefix=${objectPath}${\n overrideFileName !== null && overrideFileName.trim() !== \"\"\n ? `&override_file_name=${encodeURLString(overrideFileName || \"\")}`\n : \"\"\n }`;\n if (versionID) {\n path = path.concat(`&version_id=${versionID}`);\n }\n\n // If file is greater than 50GiB then we force browser download, if not then we use HTTP Request for Object Manager\n if (fileSize > 53687091200) {\n return new BrowserDownload(path, id, completeCallback, toastCallback);\n }\n\n let req = new XMLHttpRequest();\n req.open(\"GET\", path, true);\n if (anonymousMode) {\n req.setRequestHeader(\"X-Anonymous\", \"1\");\n }\n req.addEventListener(\n \"progress\",\n function (evt) {\n let percentComplete = Math.round((evt.loaded / fileSize) * 100);\n\n if (progressCallback) {\n progressCallback(percentComplete);\n }\n },\n false,\n );\n\n req.responseType = \"blob\";\n req.onreadystatechange = () => {\n if (req.readyState === 4) {\n if (req.status === 200) {\n const rspHeader = req.getResponseHeader(\"Content-Disposition\");\n\n let filename = \"download\";\n if (rspHeader) {\n let rspHeaderDecoded = decodeURIComponent(rspHeader);\n filename = rspHeaderDecoded.split('\"')[1];\n }\n\n if (completeCallback) {\n completeCallback();\n }\n\n removeTrace(id);\n\n var link = document.createElement(\"a\");\n link.href = window.URL.createObjectURL(req.response);\n link.download = filename;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n } else {\n if (req.getResponseHeader(\"Content-Type\") === \"application/json\") {\n const rspBody: { detailedMessage?: string } = JSON.parse(\n req.response,\n );\n if (rspBody.detailedMessage) {\n errorCallback(rspBody.detailedMessage);\n return;\n }\n }\n errorCallback(`Unexpected response status code (${req.status}).`);\n }\n }\n };\n req.onerror = () => {\n if (errorCallback) {\n errorCallback(\"A network error occurred.\");\n }\n };\n req.onabort = () => {\n if (abortCallback) {\n abortCallback();\n }\n };\n\n return req;\n};\n\nclass BrowserDownload {\n path: string;\n id: string;\n completeCallback: () => void;\n toastCallback: () => void;\n\n constructor(\n path: string,\n id: string,\n completeCallback: () => void,\n toastCallback: () => void,\n ) {\n this.path = path;\n this.id = id;\n this.completeCallback = completeCallback;\n this.toastCallback = toastCallback;\n }\n\n send(): void {\n this.toastCallback();\n const link = document.createElement(\"a\");\n link.href = this.path;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n this.completeCallback();\n removeTrace(this.id);\n }\n}\n\nexport type AllowedPreviews = \"image\" | \"text\" | \"audio\" | \"video\" | \"none\";\nexport const contentTypePreview = (contentType: string): AllowedPreviews => {\n if (contentType) {\n const mimeObjectType = (contentType || \"\").toLowerCase();\n\n if (mimeObjectType.includes(\"image\")) {\n return \"image\";\n }\n if (mimeObjectType.includes(\"text\")) {\n return \"text\";\n }\n if (mimeObjectType.includes(\"audio\")) {\n return \"audio\";\n }\n if (mimeObjectType.includes(\"video\")) {\n return \"video\";\n }\n }\n\n return \"none\";\n};\n\n// Review file extension by name & returns the type of preview browser that can be used\nexport const extensionPreview = (fileName: string): AllowedPreviews => {\n const imageExtensions = [\n \"jif\",\n \"jfif\",\n \"apng\",\n \"avif\",\n \"svg\",\n \"webp\",\n \"bmp\",\n \"ico\",\n \"jpg\",\n \"jpe\",\n \"jpeg\",\n \"gif\",\n \"png\",\n \"heic\",\n ];\n const textExtensions = [\"pdf\"];\n const audioExtensions = [\"wav\", \"mp3\", \"alac\", \"aiff\", \"dsd\", \"pcm\"];\n const videoExtensions = [\n \"mp4\",\n \"avi\",\n \"mpg\",\n \"webm\",\n \"mov\",\n \"flv\",\n \"mkv\",\n \"wmv\",\n \"avchd\",\n \"mpeg-4\",\n ];\n\n let fileExtension = fileName.split(\".\").pop();\n\n if (!fileExtension) {\n return \"none\";\n }\n\n fileExtension = fileExtension.toLowerCase();\n\n if (imageExtensions.includes(fileExtension)) {\n return \"image\";\n }\n\n if (textExtensions.includes(fileExtension)) {\n return \"text\";\n }\n\n if (audioExtensions.includes(fileExtension)) {\n return \"audio\";\n }\n\n if (videoExtensions.includes(fileExtension)) {\n return \"video\";\n }\n\n return \"none\";\n};\n\nexport const previewObjectType = (\n metaData: Record,\n objectName: string,\n) => {\n const metaContentType = (\n (metaData && metaData[\"Content-Type\"]) ||\n \"\"\n ).toString();\n\n const extensionType = extensionPreview(objectName || \"\");\n const contentType = contentTypePreview(metaContentType);\n\n let objectType: AllowedPreviews = extensionType;\n\n if (extensionType === contentType) {\n objectType = extensionType;\n } else if (extensionType === \"none\" && contentType !== \"none\") {\n objectType = contentType;\n } else if (contentType === \"none\" && extensionType !== \"none\") {\n objectType = extensionType;\n }\n\n return objectType;\n};\nexport const sortListObjects = (fieldSort: string) => {\n switch (fieldSort) {\n case \"name\":\n return (a: BucketObjectItem, b: BucketObjectItem) =>\n a.name.localeCompare(b.name);\n case \"last_modified\":\n return (a: BucketObjectItem, b: BucketObjectItem) =>\n new Date(a.last_modified).getTime() -\n new Date(b.last_modified).getTime();\n case \"size\":\n return (a: BucketObjectItem, b: BucketObjectItem) =>\n (a.size || -1) - (b.size || -1);\n }\n};\n\nexport const permissionItems = (\n bucketName: string,\n currentPath: string,\n permissionsArray: PermissionResource[],\n): BucketObjectItem[] | null => {\n if (permissionsArray.length === 0) {\n return null;\n }\n\n // We get permissions applied to the current bucket\n const filteredPermissionsForBucket = permissionsArray.filter(\n (permissionItem) =>\n permissionItem.resource?.endsWith(`:${bucketName}`) ||\n permissionItem.resource?.includes(`:${bucketName}/`),\n );\n\n // No permissions for this bucket. we can throw the error message at this point\n if (filteredPermissionsForBucket.length === 0) {\n return null;\n }\n\n let returnElements: BucketObjectItem[] = [];\n\n // We split current path\n const splitCurrentPath = currentPath.split(\"/\");\n\n filteredPermissionsForBucket.forEach((permissionElement) => {\n // We review paths in resource address\n\n // We split ARN & get the last item to check the URL\n const splitARN = permissionElement.resource?.split(\":\");\n const urlARN = splitARN?.pop() || \"\";\n\n // We split the paths of the URL & compare against current location to see if there are more items to include. In case current level is a wildcard or is the last one, we omit this validation\n\n const splitURLARN = urlARN.split(\"/\");\n\n // splitURL has more items than bucket name, we can continue validating\n if (splitURLARN.length > 1) {\n splitURLARN.every((currentElementInPath, index) => {\n // It is a wildcard element. We can store the verification as value should be included (?)\n if (currentElementInPath === \"*\") {\n return false;\n }\n\n // Element is not included in the path. The user is trying to browse something else.\n if (\n splitCurrentPath[index] &&\n splitCurrentPath[index] !== currentElementInPath\n ) {\n return false;\n }\n\n // This element is not included by index in the current paths list. We add it so user can browse into it\n if (!splitCurrentPath[index]) {\n returnElements.push({\n name: `${currentElementInPath}/`,\n size: 0,\n last_modified: \"\",\n version_id: \"\",\n });\n }\n\n return true;\n });\n }\n\n // We review prefixes in allow resources for StringEquals variant only.\n if (\n permissionElement.conditionOperator === \"StringEquals\" ||\n permissionElement.conditionOperator === \"StringLike\"\n ) {\n permissionElement.prefixes?.forEach((prefixItem) => {\n // Prefix Item is not empty?\n if (prefixItem !== \"\") {\n const splitItems = prefixItem.split(\"/\");\n\n let pathToRouteElements: string[] = [];\n\n // We verify if currentPath is contained in the path begin, if is not contained the user has no access to this subpath\n const cleanCurrPath = currentPath.replace(/\\/$/, \"\");\n\n if (!prefixItem.startsWith(cleanCurrPath) && currentPath !== \"\") {\n return;\n }\n\n // For every split element we iterate and check if we can construct a URL\n splitItems.every((splitElement, index) => {\n if (!splitElement.includes(\"*\") && splitElement !== \"\") {\n if (splitElement !== splitCurrentPath[index]) {\n returnElements.push({\n name: `${pathToRouteElements.join(\"/\")}${\n pathToRouteElements.length > 0 ? \"/\" : \"\"\n }${splitElement}/`,\n size: 0,\n last_modified: \"\",\n version_id: \"\",\n });\n return false;\n }\n if (splitElement !== \"\") {\n pathToRouteElements.push(splitElement);\n }\n\n return true;\n }\n return false;\n });\n }\n });\n }\n });\n\n // We clean duplicated name entries\n if (returnElements.length > 0) {\n let clElements: BucketObjectItem[] = [];\n let keys: string[] = [];\n\n returnElements.forEach((itm) => {\n if (!keys.includes(itm.name)) {\n clElements.push(itm);\n keys.push(itm.name);\n }\n });\n\n returnElements = clElements;\n }\n\n return returnElements;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport { Checkbox, Grid, InputLabel, Tooltip } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n checkboxIcons,\n fieldBasic,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\ninterface CheckBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n overrideLabelClasses?: string;\n overrideCheckboxStyles?: React.CSSProperties;\n index?: number;\n noTopMargin?: boolean;\n checked: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n ...checkboxIcons,\n fieldContainer: {\n ...fieldBasic.fieldContainer,\n display: \"flex\",\n justifyContent: \"flex-start\",\n alignItems: \"center\",\n margin: \"15px 0\",\n marginBottom: 0,\n flexBasis: \"initial\",\n flexWrap: \"nowrap\",\n },\n noTopMargin: {\n marginTop: 0,\n },\n });\n\nconst CheckboxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n noTopMargin = false,\n tooltip = \"\",\n overrideLabelClasses = \"\",\n overrideCheckboxStyles,\n classes,\n className,\n}: CheckBoxProps) => {\n return (\n \n \n

\n }\n icon={}\n disabled={disabled}\n disableRipple\n disableFocusRipple\n focusRipple={false}\n centerRipple={false}\n disableTouchRipple\n style={overrideCheckboxStyles || {}}\n />\n
\n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(CheckboxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input/Input\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n checked: boolean;\n switchOnly?: boolean;\n indicatorLabels?: string[];\n extraInputProps?: StandardInputProps[\"inputProps\"];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n indicatorLabelOn: {\n fontWeight: \"bold\",\n color: \"#081C42 !important\",\n },\n indicatorLabel: {\n fontSize: 12,\n color: \"#E2E2E2\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n tooltip: {\n fontSize: 16,\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles((theme) => ({\n root: {\n width: 50,\n height: 24,\n padding: 0,\n margin: 0,\n },\n switchBase: {\n padding: 1,\n \"&$checked\": {\n transform: \"translateX(24px)\",\n color: theme.palette.common.white,\n \"& + $track\": {\n backgroundColor: \"#4CCB92\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n border: \"none\",\n },\n },\n \"&$focusVisible $thumb\": {\n color: \"#4CCB92\",\n border: \"6px solid #fff\",\n },\n },\n thumb: {\n width: 22,\n height: 22,\n backgroundColor: \"#FAFAFA\",\n border: \"2px solid #FFFFFF\",\n marginLeft: 1,\n },\n track: {\n borderRadius: 24 / 2,\n backgroundColor: \"#E2E2E2\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n transition: theme.transitions.create([\"background-color\", \"border\"]),\n },\n checked: {},\n focusVisible: {},\n switchContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n}))(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n classes,\n indicatorLabels,\n extraInputProps = {},\n}: IFormSwitch) => {\n const switchComponent = (\n \n {!switchOnly && (\n \n {indicatorLabels && indicatorLabels.length > 1\n ? indicatorLabels[1]\n : \"OFF\"}\n \n )}\n \n {!switchOnly && (\n \n {indicatorLabels ? indicatorLabels[0] : \"ON\"}\n \n )}\n \n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n
\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n \n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\n\ninterface IWarningMessage {\n classes: any;\n label: any;\n title: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n headerContainer: {\n backgroundColor: \"#e78794\",\n borderRadius: 3,\n marginBottom: 20,\n padding: 1,\n paddingBottom: 15,\n },\n labelHeadline: {\n color: \"#000000\",\n fontSize: 14,\n marginLeft: 20,\n },\n labelText: {\n color: \"#000000\",\n fontSize: 14,\n marginLeft: 20,\n marginRight: 40,\n },\n });\n\nconst WarningMessage = ({ classes, label, title }: IWarningMessage) => {\n return (\n
\n

{title}

\n
{label}
\n
\n );\n};\n\nexport default withStyles(styles)(WarningMessage);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { Box } from \"@mui/material\";\nimport { Button, CopyIcon } from \"mds\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\n\nconst KeyRevealer = ({ value }: { value: string }) => {\n const [shown, setShown] = useState(false);\n\n return (\n \n {}}\n value={value}\n overlayIcon={}\n extraInputProps={{\n readOnly: true,\n }}\n overlayAction={() => navigator.clipboard.writeText(value)}\n />\n\n setShown(!shown)}\n label={\"Show/Hide\"}\n />\n \n );\n};\n\nexport default KeyRevealer;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\n// Close codes for websockets defined in RFC 6455\nexport const WSCloseAbnormalClosure = 1006;\nexport const WSClosePolicyViolation = 1008;\nexport const WSCloseInternalServerErr = 1011;\n\nexport const wsProtocol = (protocol: string): string => {\n let wsProtocol = \"ws\";\n if (protocol === \"https:\") {\n wsProtocol = \"wss\";\n }\n return wsProtocol;\n};\n"],"names":["_ref","modalOpen","onClose","bucket","prefilledRoute","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","prefix","setPrefix","_useState3","_useState4","selectedAccess","setSelectedAccess","useEffect","_jsx","ModalWrapper","title","titleIcon","AddAccessRuleIcon","children","_jsxs","FormLayout","withBorders","containerPadding","InputBox","value","label","id","name","placeholder","onChange","e","target","tooltip","Select","options","disabled","Grid","item","xs","sx","modalStyleUtils","modalButtonBar","Button","type","variant","onClick","trim","api","setAccessRuleWithBucket","access","then","res","setSnackBarMessage","catch","err","setErrorSnackMessage","errorToHandler","objectsWS","extractFileExtn","resourceStr","match","getSessionGrantsWildCard","sessionGrants","uploadPath","scopes","arguments","length","undefined","grantsWithExtension","Object","keys","reduce","acc","grantKey","includes","filter","sessionGrantKey","hasScope","some","actionKey","find","scopeKey","wildCardMatch","indexOf","scopeActionKey","substring","isUploadPathMatching","concat","CreatePathModal","withSuspense","React","useStyles","makeStyles","theme","createStyles","_objectSpread","objectBrowserCommon","slashSpacingStyle","margin","bucketName","internalPaths","hidePathButton","additionalOptions","navigate","useNavigate","classes","rewindEnabled","useSelector","state","objectBrowser","rewind","versionsMode","versionedFile","anonymousMode","system","createFolderOpen","setCreateFolderOpen","putObjectPermScopes","IAM_SCOPES","S3_PUT_OBJECT","S3_PUT_ACTIONS","console","session","permissions","paths","splitPaths","split","path","lastBreadcrumbsIndex","pathToCheckPerms","sessionGrantWildCards","canCreatePath","hasPermission","_toConsumableArray","breadcrumbsMap","map","objectItem","index","subSplit","slice","join","route","encodeURLString","Fragment","className","style","cursor","whiteSpace","safeDecodeURIComponent","Link","to","setVersionsModeEnabled","status","objectName","toString","versionsItem","listBreadcrumbs","breadcrumbsMain","folderName","Breadcrumbs","goBackFunction","prevPath","CopyToClipboard","text","icon","CopyIcon","width","height","fill","marginTop","color","border","marginRight","Tooltip","permissionTooltipHelper","NewPathIcon","breadcrumbsSecond","withStyles","listUploadIcons","_ref$forceDisable","forceDisable","uploadFileFunction","uploadFolderFunction","_ref$overrideStyles","overrideStyles","anchorEl","setAnchorEl","openUploadMenu","Boolean","handleCloseUpload","uploadObjectAllowed","uploadFolderAllowed","uploadEnabled","TooltipWrapper","event","currentTarget","UploadIcon","Menu","open","anchorOrigin","vertical","horizontal","transformOrigin","MenuItem","ListItemIcon","ListItemText","UploadFolderIcon","detailsList","borderColor","borderWidth","borderStyle","borderRadius","borderBottomLeftRadius","borderBottomRightRadius","transitionDuration","overflowX","overflowY","position","opacity","marginLeft","minWidth","borderLeftWidth","closePanel","_ref$className","ClosePanelIcon","right","top","padding","backgroundColor","months","days","Array","from","_","num","currentYear","Date","getFullYear","years","numYear","DateSelector","forwardRef","ref","_ref$disableOptions","disableOptions","_ref$addSwitch","addSwitch","_ref$tooltip","_ref$borderBottom","borderBottom","onDateChange","_ref$value","useImperativeHandle","resetDate","dateEnabled","setDateEnabled","month","setMonth","_useState5","_useState6","day","setDay","_useState7","_useState8","year","setYear","valueSplit","parseInt","_validDate","currentDate","parse","isNaN","parsedMonth","parsedDay","monthForString","dayForString","parsedDate","toISOString","dateString","validDate","_validDate2","isValid","isDateDisabled","monthForDropDown","daysForDrop","yearsForDrop","clsx","fieldContainer","_defineProperty","fieldContainerBorder","labelContainer","container","InputLabel","htmlFor","tooltipContainer","placement","HelpIcon","Switch","indicatorLabels","checked","switchOnly","Box","display","gap","newValue","fieldBasic","tooltipHelper","alignItems","justifyContent","paddingBottom","marginBottom","formFieldStyles","spacingUtils","closeModalAndRefresh","objectInfo","retentionConfig","statusEnabled","setStatusEnabled","setType","date","setDate","isDateValid","setIsDateValid","_useState9","_useState10","isSaving","setIsSaving","_useState11","_useState12","alreadyConfigured","setAlreadyConfigured","retention_mode","mode","ObjectRetentionMode","Governance","retention_until_date","valueDate","getMonth","getDate","dateElement","useRef","resetForm","current","showSwitcher","spacerBottom","noValidate","autoComplete","onSubmit","preventDefault","formFieldRow","RadioGroup","currentValue","selectorOptions","Compliance","dateSelector","selectedObject","versionId","version_id","expireDate","buckets","putObjectRetention","expires","setModalErrorSnackMessage","error","addRetention","deleteObjectRetention","disableRetention","isVersionedMode","closeDeleteModalAndRefresh","deleteOpen","selectedBucket","versioningInfo","_ref$selectedVersion","selectedVersion","_useApi","useApi","detailedError","_useApi2","deleteLoading","invokeDeleteApi","deleteVersions","setDeleteVersions","bypassGovernance","setBypassGovernance","canBypass","S3_BYPASS_GOVERNANCE_RETENTION","ConfirmDialog","confirmText","isOpen","ConfirmDeleteIcon","isLoading","onConfirm","recursive","decodeURLString","endsWith","confirmationContent","description","actualInfo","legalHoldEnabled","setLegalHoldEnabled","get","putObjectLegalHold","ObjectLegalHoldStatus","Enabled","Disabled","itemRendererFn","element","isArray","titleItem","detailsPanel","metaData","_ref$linear","linear","metaKeys","renderItem","metadataLinear","Table","table","TableBody","TableRow","TableCell","component","scope","align","fileName","minHeight","fileNameText","overflow","textOverflow","strings","replaceUnicodeChar","extensionToIcon","FileVideoIcon","extensions","FileMusicIcon","FilePdfIcon","FilePptIcon","FileXlsIcon","FileLockIcon","FileCodeIcon","FileConfigIcon","FileDbIcon","FileFontIcon","FileTxtIcon","FileZipIcon","FileBookIcon","FileImageIcon","displayFileIconName","returnOnlyIcon","elementString","FileNonType","FolderBrowserIcon","lowercaseElement","toLowerCase","_i","_extensionToIcon","_step","etc","_iterator","_createForOfIteratorHelper","s","n","done","ext","f","FileMissingIcon","splitItem","IconWithLabel","newTileHeader","fontSize","fontWeight","tagsForLabel","currentTagsContainer","noTagsForObject","deleteTag","_actualInfo$name","onCloseAndUpdate","distributedSetup","selDistSet","newKey","setNewKey","newLabel","setNewLabel","isSending","setIsSending","deleteEnabled","setDeleteEnabled","deleteKey","setDeleteKey","deleteLabel","setDeleteLabel","currentTags","tags","currTagKeys","allPathData","currentItem","pop","tagsFor","plural","DisabledIcon","EditTagIcon","cleanObject","verID","putObjectTags","SecureComponent","S3_GET_OBJECT_TAGGING","S3_GET_ACTIONS","resource","flexFlow","tagKey","tag","S3_DELETE_OBJECT_TAGGING","errorProps","deleteIcon","onDelete","Chip","textTransform","size","CloseIcon","onDeleteTag","S3_PUT_OBJECT_TAGGING","SectionTitle","AddNewTagIcon","separator","newTag","newTagList","closeInspectModalAndRefresh","inspectOpen","inspectPath","volumeName","isEncrypt","setIsEncrypt","decryptionKey","setDecryptionKey","insFileName","setInsFileName","makeRequest","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","url","wrap","_context","prev","next","fetch","method","abrupt","sent","stop","_x","apply","performInspect","_ref3","_callee3","file","volume","urlOfInspectApi","_context3","_ref4","_callee2","resErr","blob","filename","decryptKey","_context2","ok","json","errorMessage","message","code","headers","getCookieValue","performDownload","_x2","InspectMenuIcon","deleteCookie","PasswordKeyIcon","DialogContentText","KeyRevealer","downloadObject","object","_object$name","identityDownload","getTime","Math","random","isWinOs","getClientOS","setLongFileOpen","ID","makeid","downloadCall","download","progress","updateProgress","instanceID","completeObject","msg","failObject","cancelObjectInList","storeCallForObjectWithID","setNewObject","percentage","waitingForFile","failed","cancelled","containerForHeader","closeModal","newFileName","setNewFileName","acceptLongName","setAcceptLongName","EditIcon","doDownload","modalFormScrollable","InputBoxWrapper","FormSwitchWrapper","emptyFile","is_latest","last_modified","legal_hold_status","ObjectDetailsTitle","objectNameContainer","capitalizeFirst","actionsTray","textStyleUtils","locking","onClosePanel","loadingObjectInfo","shareFileModalOpen","setShareFileModalOpen","retentionModalOpen","setRetentionModalOpen","tagModalOpen","setTagModalOpen","legalholdOpen","setLegalholdOpen","inspectModalOpen","setInspectModalOpen","setActualInfo","_useState13","_useState14","allInfoElements","setAllInfoElements","_useState15","_useState16","objectToShare","setObjectToShare","_useState17","_useState18","versions","setVersions","_useState19","_useState20","setDeleteOpen","_useState21","_useState22","previewOpen","setPreviewOpen","_useState23","_useState24","totalVersionsSize","setTotalVersionsSize","_useState25","_useState26","longFileOpen","_useState27","_useState28","setMetaData","_useState29","_useState30","loadMetadata","setLoadingMetadata","objectNameArray","infoElement","el","is_delete_marker","listObjects","with_versions","result","data","objects","tVersionSize","currValue","resInfo","setLoadingObjectInfo","getObjectMetadata","metadata","tagKeys","loaderForContainer","textAlign","Loader","objectResources","canSetLegalHold","S3_PUT_OBJECT_LEGAL_HOLD","canSetTags","canChangeRetention","S3_GET_OBJECT_RETENTION","S3_PUT_OBJECT_RETENTION","canInspect","ADMIN_INSPECT_DATA","canChangeVersioning","S3_GET_BUCKET_VERSIONING","S3_PUT_BUCKET_VERSIONING","S3_GET_OBJECT_VERSION","canGetObject","S3_GET_OBJECT","canDelete","S3_DELETE_OBJECT","objectType","previewObjectType","multiActionButtons","action","DownloadIcon","ShareIcon","PreviewIcon","LegalHoldIcon","RetentionIcon","TagsIcon","VersionsIcon","ShareFile","dataObject","SetRetention","updateInfo","DeleteObject","closeAndReload","setLoadingVersions","setSelectedVersion","SetLegalHoldModal","reload","PreviewFileModal","content_type","onClosePreview","TagsModal","reloadObjectData","InspectObject","RenameLongFileName","ActionsList","items","DeleteIcon","iconLocation","fullWidth","SimpleHeader","ObjectInfoIcon","detailContainer","overflowWrap","niceBytes","niceBytesInt","lastModified","currentTime","modifiedTime","difTime","formatTime","niceDaysInt","calculateLastModifyTime","etag","S3_GET_OBJECT_LEGAL_HOLD","MetadataIcon","ObjectMetaData","modalBasic","versionToRestore","objectPath","restoreOpen","restoreLoading","setRestoreLoading","RecoverIcon","putObjectRestore","restoreLocalObjectList","confirmButtonProps","wrapText","bgColor","FileVersionStyled","styled","div","content","left","borderBottomColor","maxWidth","flexDirection","versionInfo","isSelected","checkable","isChecked","onCheck","onShare","onDownload","onRestore","onPreview","globalClick","key","disableButtons","versionItemButtons","pill","DateTime","now","fromISO","md","CheckboxWrapper","stopPropagation","overrideCheckboxStyles","paddingLeft","noTopMargin","SpecificVersionPill","button","IconButton","toFormat","setDeleteLoading","typeConfirm","setTypeConfirm","deleteObject","non_current_versions","bypass","selectedVersions","selectedObjectsRequest","versionID","deleteMultipleObjects","all_versions","versionsContainer","noBottomBorder","versionsVirtualPanel","flexGrow","screenTitleContainer","sortByLabel","tableStyles","objectBrowserExtras","searchVersions","loadingVersions","restoreVersionOpen","setRestoreVersionOpen","restoreVersion","setRestoreVersion","sortValue","setSortValue","deleteNonCurrentOpen","setDeleteNonCurrentOpen","selectEnabled","setSelectEnabled","selectedItems","setSelectedItems","delSelectedVOpen","setDelSelectedVOpen","decodedInternalPaths","filteredPrefixes","onShareItem","onPreviewItem","onRestoreItem","onDownloadItem","onGlobalClick","filteredRecords","version","totalSpace","sort","a","b","dateA","dateB","onCheckVersion","filteredItems","cloneState","push","RestoreFileVersion","DeleteNonCurrent","reloadAfterDelete","DeleteSelectedVersions","reloadOnComplete","LinearProgress","BrowserBreadcrumbs","ScreenTitle","listIcon","subTitle","detailsSpacer","actions","SelectMultipleIcon","DeleteNonCurrentIcon","noLabelMinWidth","bottomBorder","List","containerStyle","rowCount","rowHeight","rowRenderer","isScrolling","isVisible","versOrd","FileVersionItem","displayParsedDate","currTime","objectTime","hasSame","displayNiceBytes","String","listModeColumns","elementKey","renderFunction","enableSort","renderFullObject","rewindModeColumns","browsePaper","parentWrapper","backgroundImage","params","useParams","sortDirection","setSortDirection","currentSortField","setCurrentSortField","detailsOpen","objectDetailsOpen","loadingObjects","features","selFeatures","obOnly","records","searchObjects","selectedObjects","connectionError","displayListObjects","S3_LIST_BUCKET","S3_ALL_LIST_BUCKET","sortASC","sortListObjects","payload","reverse","tableActions","idElement","newPath","setSelectedObjects","setObjectDetailsView","setIsOpeningOD","setSelectedObjectView","sendOnlyId","customPaperHeight","DataTable","itemActions","columns","entityName","idField","onSelect","targetD","elements","customEmptyMessage","sortConfig","currentSort","currentDirection","triggerSort","sortData","newSortDirection","sortBy","setLoadingObjects","onSelectAll","rowStyle","_payload$index","delete_flag","parentClassName","noBackground","downloadSelected","createAsyncThunk","getState","itemsToDownload","filterFunction","rejectWithValue","setDownloadRenameModal","forEach","filteredItem","openPreview","fileObject","findFunction","setSelectedPreview","_x3","_x4","openShare","_ref6","_ref5","_x5","_x6","openAnonymousAccess","_ref8","_callee4","_ref7","_context4","setAnonymousAccessOpen","_x7","_x8","SearchBox","setSearchObjects","DeleteMultipleObjects","RewindEnable","badgeOverlap","searchField","labelStyle","breadcrumbsContainer","fullContainer","hideListOnSmall","actionsSection","baseDnDStyle","outline","activeDnDStyle","acceptDnDStyle","_downloadRenameModal$","location","useLocation","bucketToRewind","showDeleted","selectedInternalPaths","simplePath","versioningConfig","lockingEnabled","downloadRenameModal","selectedPreview","anonymousAccessOpen","loadingBucket","selBucketDetailsLoading","bucketInfo","selBucketDetailsInfo","deleteMultipleOpen","setDeleteMultipleOpen","rewindSelect","setRewindSelect","iniLoad","setIniLoad","canShareFile","setCanShareFile","canPreviewFile","setCanPreviewFile","quota","setQuota","isMetaDataLoaded","setIsMetaDataLoaded","isVersioningApplied","pathSegment","pathname","pageTitle","currentPath","i","fileUpload","folderUpload","pathAsResourceInPolicy","allowedFileExtensions","cv","extension","Set","getPolicyAllowedFileExtensions","canDownload","canUpload","canSetAnonymousAccess","S3_GET_BUCKET_POLICY","S3_PUT_BUCKET_POLICY","fetchMetadata","useCallback","encodedPath","resetRewind","setAttribute","getBucketQuota","quotaVals","detailedMessage","setBucketDetailsLoad","setBucketInfo","setSelectedBucket","getBucketRetentionConfig","setRetentionConfig","handleUploadButton","files","newFiles","uploadObject","folderPath","pathPrefix","uploadPromise","Promise","resolve","reject","uploadUrl","blobFile","Blob","filePath","fileWebkitRelativePath","relativeFolderPath","finalFolderPath","pathClean","startsWith","identity","xhr","XMLHttpRequest","setRequestHeader","areMultipleFiles","errorMessages","withCredentials","onload","removeTrace","response","JSON","upload","addEventListener","floor","loaded","total","onerror","onloadend","onabort","formData","FormData","append","storeFormDataWithID","uploadFilePromises","openList","allSettled","results","errors","totalFiles","successUploadedFiles","onDrop","acceptedFiles","_console","_console2","newFolderPath","allowedFiles","fileExtn","log","_useDropzone","useDropzone","noClick","getRootProps","getInputProps","isDragActive","isDragAccept","dndStyles","useMemo","forceRefresh","splitURLS","URLItem","createdTime","creation_date","AccessRuleIcon","refresh","versioning","AddAccessRule","PageLayout","FilterObjectsSB","BucketsIcon","Badge","badgeContent","invisible","HistoryIcon","RefreshIcon","resetMessages","setLoadingRecords","multiple","accept","UploadFilesButton","closeMenu","click","tableBlock","borderTop","VersionsNavigator","setShowDeletedObjects","overrideLabelClasses","overrideShowDeleted","ListObjectsTable","DetailsListPanel","ObjectDetailPanel","configureBucketAllowed","S3_GET_BUCKET_ENCRYPTION_CONFIGURATION","S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION","S3_DELETE_BUCKET","S3_GET_BUCKET_NOTIFICATIONS","S3_PUT_BUCKET_NOTIFICATIONS","S3_GET_REPLICATION_CONFIGURATION","S3_PUT_REPLICATION_CONFIGURATION","S3_GET_LIFECYCLE_CONFIGURATION","S3_PUT_LIFECYCLE_CONFIGURATION","ADMIN_GET_BUCKET_QUOTA","ADMIN_SET_BUCKET_QUOTA","S3_PUT_BUCKET_TAGGING","S3_GET_BUCKET_TAGGING","S3_LIST_BUCKET_VERSIONS","S3_GET_BUCKET_POLICY_STATUS","S3_DELETE_BUCKET_POLICY","searchBar","setSearchVersions","setHelpName","AutoColorIcon","ObjectManagerButton","PageHeaderWrapper","BackLink","IAM_PAGES","OBJECT_BROWSER_VIEW","IAM_PERMISSIONS","IAM_ROLES","BUCKET_ADMIN","SettingsIcon","HelpMenu","middleComponent","currentRequestID","errorCounter","wsInFlight","initWSConnection","openCallback","onMessageCallback","connErrorCallback","URL","window","port","baseUrl","document","baseURI","wsProt","wsProtocol","protocol","WebSocket","hostname","onopen","onmessage","reconnectFn","onclose","warn","setTimeout","loadingVersioning","rewindDate","dateToRewind","allowResources","loadingLocking","loadRecords","isOpeningOD","isOpeningObjectDetail","onMessageCallBack","request_id","internalPathsPrefix","decodedPath","permitItems","permissionItems","setRecords","request_end","newMessage","initWSRequest","readyState","newRequestID","errorInConnection","request","bucket_name","send","stringify","decodedIPaths","setLoadingVersioning","setSimplePathHandler","setLoadingLocking","parentPath","requestDate","getBucketVersioning","setIsVersioned","getBucketObjectLockingStatus","setLockingEnabled","object_locking_enabled","OBHeader","ListObjects","durationInputs","validityIndicator","invalidDurationText","reverseInput","validityText","validTill","initialDate","maxDays","entity","selectedDays","setSelectedDays","selectedHours","setSelectedHours","selectedMinutes","setSelectedMinutes","setValidDate","dateSelected","setDateSelected","hours","minutes","fromJSDate","plus","calculateNewTime","formattedDate","valid","extraStyles","paddingRight","dateInputContainer","min","max","LinkIcon","validityLabel","shareURL","setShareURL","isLoadingVersion","setIsLoadingVersion","isLoadingFile","setIsLoadingFile","selectedDate","setSelectedDate","dateValid","setDateValid","setVersionID","latestVersion","elem","slDate","currDate","diffDate","ceil","shareObject","DaysSelector","newDate","ReadBox","actionButton","setModalSnackMessage","iframeContainer","flex","iframeBase","iframeHidden","_ref$isFullscreen","isFullscreen","loading","setLoading","basename","replace","origin","iframeLoaded","maxHeight","autoPlay","controls","muted","playsInline","onPlay","src","alt","onLoad","WarningMessage","allowTransparency","wideLimit","ObjectPreviewIcon","PreviewFileContent","fileSize","overrideFileName","progressCallback","completeCallback","errorCallback","abortCallback","toastCallback","anchor","createElement","body","appendChild","store","BrowserDownload","req","evt","percentComplete","round","responseType","onreadystatechange","rspHeader","getResponseHeader","decodeURIComponent","link","href","createObjectURL","removeChild","rspBody","_classCallCheck","this","_createClass","metaContentType","extensionType","fileExtension","extensionPreview","contentType","mimeObjectType","contentTypePreview","fieldSort","localeCompare","permissionsArray","filteredPermissionsForBucket","permissionItem","_permissionItem$resou","_permissionItem$resou2","returnElements","splitCurrentPath","permissionElement","_permissionElement$re","_permissionElement$pr","splitARN","splitURLARN","every","currentElementInPath","conditionOperator","prefixes","prefixItem","splitItems","pathToRouteElements","cleanCurrPath","splitElement","clElements","itm","WrappedComponent","fallback","props","Suspense","checkboxIcons","flexBasis","flexWrap","_ref$checked","_ref$disabled","_ref$noTopMargin","_ref$overrideLabelCla","Checkbox","inputProps","checkedIcon","unCheckedIcon","disableRipple","disableFocusRipple","focusRipple","centerRipple","disableTouchRipple","noMinWidthLabel","StyledSwitch","root","switchBase","transform","palette","common","white","boxShadow","thumb","track","transition","transitions","create","focusVisible","switchContainer","indicatorLabelOn","indicatorLabel","fieldDescription","_ref$label","_ref$switchOnly","_ref$description","_ref$extraInputProps","extraInputProps","switchComponent","sm","inputLabel","Typography","inputStyles","inputFieldStyles","InputField","TextField","InputProps","textBoxContainer","overlayAction","_ref$type","_ref$autoComplete","_ref$multiline","multiline","_ref$index","_ref$error","_ref$required","required","_ref$placeholder","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","onKeyPress","onFocus","onPaste","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","errorInField","inputBoxContainer","helperText","inputRebase","headerContainer","labelHeadline","labelText","shown","setShown","readOnly","navigator","clipboard","writeText","WSCloseAbnormalClosure","WSClosePolicyViolation","WSCloseInternalServerErr"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2603.c555d98d.chunk.js b/portal-ui/build/static/js/2603.c555d98d.chunk.js deleted file mode 100644 index 248809b4d..000000000 --- a/portal-ui/build/static/js/2603.c555d98d.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2603],{94619:function(e,t,n){n.r(t);var i=n(29439),o=n(1413),r=n(72791),a=n(56028),s=n(61889),c=n(29945),l=n(21435),d=n(11135),u=n(25787),h=n(23814),f=n(90673),m=n(87995),p=n(81551),x=n(31776),b=n(82342),v=n(80184);t.default=(0,u.Z)((function(e){return(0,d.Z)((0,o.Z)((0,o.Z)({},h.DF),h.ID))}))((function(e){var t=e.modalOpen,n=e.onClose,o=e.classes,d=e.bucket,u=e.prefilledRoute,h=(0,p.TL)(),j=(0,r.useState)(""),g=(0,i.Z)(j,2),_=g[0],S=g[1],Z=(0,r.useState)("readonly"),C=(0,i.Z)(Z,2),w=C[0],y=C[1];(0,r.useEffect)((function(){u&&S(u)}),[u]);return(0,v.jsx)(a.Z,{modalOpen:t,title:"Add Anonymous Access Rule",onClose:n,titleIcon:(0,v.jsx)(c.sR0,{}),children:(0,v.jsxs)(s.ZP,{container:!0,children:[(0,v.jsx)(s.ZP,{item:!0,xs:12,className:o.formFieldRow,children:(0,v.jsx)(l.Z,{value:_,label:"Prefix",id:"prefix",name:"prefix",placeholder:"Enter Prefix",onChange:function(e){S(e.target.value)},tooltip:"Enter '/' to apply the rule to all prefixes and objects at the bucket root. Do not include the wildcard asterisk '*' as part of the prefix *unless* it is an explicit part of the prefix name. The Console automatically appends an asterisk to the appropriate sections of the resulting IAM policy."})}),(0,v.jsx)(s.ZP,{item:!0,xs:12,children:(0,v.jsx)(f.Z,{id:"access",name:"Access",onChange:function(e){y(e.target.value)},label:"Access",value:w,options:[{label:"readonly",value:"readonly"},{label:"writeonly",value:"writeonly"},{label:"readwrite",value:"readwrite"}],disabled:!1})}),(0,v.jsxs)(s.ZP,{item:!0,xs:12,className:o.modalButtonBar,children:[(0,v.jsx)(c.zxk,{id:"clear",type:"button",variant:"regular",onClick:function(){S(""),y("readonly")},label:"Clear"}),(0,v.jsx)(c.zxk,{id:"add-access-save",type:"submit",variant:"callAction",disabled:""===_.trim(),onClick:function(){x.h.bucket.setAccessRuleWithBucket(d,{prefix:_,access:w}).then((function(e){h((0,m.y1)("Access Rule added successfully")),n()})).catch((function(e){h((0,m.Ih)((0,b.g)(e))),n()}))},label:"Save"})]})]})})}))},32603:function(e,t,n){n.r(t),n.d(t,{default:function(){return Ot}});var i,o=n(1413),r=n(72791),a=n(78687),s=n(57689),c=n(11135),l=n(25787),d=n(81551),u=n(23814),h=n(93433),f=n(29439),m=n(43954),p=n(29945),x=n(99779),b=n(61889),v=n(26181),j=n.n(v),g=n(45248),_=n(63021),S=n(78029),Z=n.n(S),C=n(72455),w=n(11087),y=n(38442),T=n(56087),N=n(75578),F=n(87995),k=n(54756),E=function(e){return(e.match(/\.([^.]*?)(?=\?|#|$)/)||[])[1]},I=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],i=Object.keys(e).reduce((function(n,i){return E(i)&&i.includes(t)&&(n[i]=e[i]),n}),{});return Object.keys(i).filter((function(e){var o=i[e].some((function(e){return n.find((function(t){var n=!1;if(-1!==t.indexOf("*")){var i=t.substring(0,t.length-1);n=e.includes(i)}return n||e===t}))})),r=e.substring(0,e.indexOf("/*."))==="arn:aws:s3:::".concat(t);return o&&(r&&"arn:aws:s3:::*"!==e)}))},O=n(80184),L=(0,N.Z)(r.lazy((function(){return n.e(2185).then(n.bind(n,62185))}))),B=(0,C.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)({},u.cx),{},{slashSpacingStyle:{margin:"0 5px"}}))})),P=function(e){var t=e.bucketName,n=e.internalPaths,i=e.hidePathButton,o=e.additionalOptions,c=(0,d.TL)(),l=(0,s.s0)(),u=B(),m=(0,a.v9)((function(e){return e.objectBrowser.rewind.rewindEnabled})),x=(0,a.v9)((function(e){return e.objectBrowser.versionsMode})),b=(0,a.v9)((function(e){return e.objectBrowser.versionedFile})),v=(0,a.v9)((function(e){return e.system.anonymousMode})),j=(0,r.useState)(!1),_=(0,f.Z)(j,2),S=_[0],C=_[1],N=[T.Ft.S3_PUT_OBJECT,T.Ft.S3_PUT_ACTIONS],E=(0,a.v9)((function(e){return e.console.session&&e.console.session.permissions||{}})),P=n;""!==n&&(P="/".concat(n));var A=P.split("/").filter((function(e){return""!==e})),D=A.length-1,R=P||t,M=I(E,R,N),z=(0,y.F)([R].concat((0,h.Z)(M)),N)||v,U=A.map((function(e,n){var i="".concat(A.slice(0,n+1).join("/"),"/"),o="/browser/".concat(t,"/").concat(i?"".concat((0,g.LL)(i)):"");return n===D&&e===b?null:(0,O.jsxs)(r.Fragment,{children:[(0,O.jsx)("span",{className:u.slashSpacingStyle,children:"/"}),n===D?(0,O.jsx)("span",{style:{cursor:"default",whiteSpace:"pre"},children:(0,g.eC)(e)}):(0,O.jsx)(w.rU,{style:{whiteSpace:"pre"},to:o,onClick:function(){c((0,k.db)({status:!1,objectName:""}))},children:(0,g.eC)(e)})]},"breadcrumbs-".concat(n.toString()))})),G=[];x&&(G=[(0,O.jsx)(r.Fragment,{children:(0,O.jsxs)("span",{children:[(0,O.jsx)("span",{className:u.slashSpacingStyle,children:"/"}),b," - Versions"]})},"breadcrumbs-versionedItem")]);var W=[(0,O.jsx)(r.Fragment,{children:(0,O.jsx)(w.rU,{to:"/browser/".concat(t),onClick:function(){c((0,k.db)({status:!1,objectName:""}))},children:t})},"breadcrumbs-root-path")].concat((0,h.Z)(U),(0,h.Z)(G));return(0,O.jsxs)(r.Fragment,{children:[(0,O.jsxs)("div",{className:u.breadcrumbsMain,children:[S&&(0,O.jsx)(L,{modalOpen:S,bucketName:t,folderName:n,onClose:function(){C(!1)}}),(0,O.jsx)(p.OoM,{sx:{whiteSpace:"pre"},goBackFunction:function(){if(x)c((0,k.db)({status:!1,objectName:""}));else{if(0===A.length)return void l("/browser");var e=A.slice(0,-1);l("/browser/".concat(t).concat(e.length>0?"/".concat((0,g.LL)("".concat(e.join("/"),"/"))):""))}},additionalOptions:(0,O.jsxs)(r.Fragment,{children:[(0,O.jsx)(Z(),{text:"".concat(t,"/").concat(A.join("/")),children:(0,O.jsx)(p.zxk,{id:"copy-path",icon:(0,O.jsx)(p.TIy,{style:{width:"12px",height:"12px",fill:"#969FA8",marginTop:-1}}),variant:"regular",onClick:function(){c((0,F.y1)("Path copied to clipboard"))},style:{width:"28px",height:"28px",color:"#969FA8",border:"#969FA8 1px solid",marginRight:5}})}),(0,O.jsx)("div",{className:u.additionalOptions,children:o})]}),children:W}),!i&&(0,O.jsx)(p.ua7,{tooltip:z?"Choose or create a new path":(0,T.MK)([T.Ft.S3_PUT_OBJECT,T.Ft.S3_PUT_ACTIONS],"create a new path"),children:(0,O.jsx)(p.zxk,{id:"new-path",onClick:function(){C(!0)},disabled:!v&&(m||!z),icon:(0,O.jsx)(p.N$q,{style:{fill:"#969FA8"}}),style:{whiteSpace:"nowrap"},variant:"regular",label:"Create new path"})})]}),(0,O.jsx)("div",{className:u.breadcrumbsSecond,children:o})]})},A=n(47922),D=n(71715),R=n(77865),M=n(49900),z=n(57064),U=n(27454),G=(0,l.Z)((function(e){return(0,c.Z)({listUploadIcons:{height:20,"& .min-icon":{width:18,fill:"rgba(0,0,0,0.87)"}}})}))((function(e){var t=e.uploadPath,n=e.bucketName,i=e.forceDisable,o=void 0!==i&&i,s=e.uploadFileFunction,c=e.uploadFolderFunction,l=e.classes,d=e.overrideStyles,u=void 0===d?{}:d,m=(0,a.v9)((function(e){return e.system.anonymousMode})),x=(0,a.v9)((function(e){return e.console.session&&e.console.session.permissions||{}})),b=[T.Ft.S3_PUT_OBJECT,T.Ft.S3_PUT_ACTIONS],v=I(x,t,b),j=(0,r.useState)(null),g=(0,f.Z)(j,2),_=g[0],S=g[1],Z=Boolean(_),C=function(){S(null)},w=(0,y.F)([t].concat((0,h.Z)(v)),b)||m,N=(0,y.F)([n].concat((0,h.Z)(v)),b,!1,!0),F=w||N;return(0,O.jsxs)(r.Fragment,{children:[(0,O.jsx)(U.Z,{tooltip:F?"Upload Files":(0,T.MK)([T.Ft.S3_PUT_OBJECT,T.Ft.S3_PUT_ACTIONS],"upload files to this bucket"),children:(0,O.jsx)(p.zxk,{id:"upload-main","aria-controls":"upload-main-menu","aria-haspopup":"true","aria-expanded":Z?"true":void 0,onClick:function(e){S(e.currentTarget)},label:"Upload",icon:(0,O.jsx)(p.rG2,{}),variant:"callAction",disabled:o||!F,sx:u})}),(0,O.jsxs)(D.Z,{id:"upload-main-menu","aria-labelledby":"upload-main",anchorEl:_,open:Z,onClose:function(){C()},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:[(0,O.jsxs)(R.Z,{onClick:function(){s(C)},disabled:!w||o,children:[(0,O.jsx)(z.Z,{className:l.listUploadIcons,children:(0,O.jsx)(p.rG2,{})}),(0,O.jsx)(M.Z,{children:"Upload File"})]}),(0,O.jsxs)(R.Z,{onClick:function(){c(C)},disabled:!N||o,children:[(0,O.jsx)(z.Z,{className:l.listUploadIcons,children:(0,O.jsx)(p.oXh,{})}),(0,O.jsx)(M.Z,{children:"Upload Folder"})]})]})]})})),W=(0,C.Z)((function(e){return(0,c.Z)({detailsList:{borderColor:"#EAEDEE",borderWidth:0,borderStyle:"solid",borderRadius:3,borderBottomLeftRadius:0,borderBottomRightRadius:0,width:0,transitionDuration:"0.3s",overflowX:"hidden",overflowY:"auto",position:"relative",opacity:0,marginLeft:-1,"&.open":{width:300,minWidth:300,borderLeftWidth:1,opacity:1},"@media (max-width: 799px)":{"&.open":{width:"100%",minWidth:"100%",borderLeftWidth:0}}}})})),K=function(e){var t=e.open,n=e.closePanel,i=e.className,o=void 0===i?"":i,r=e.children,a=W();return(0,O.jsxs)(p.rjZ,{item:!0,className:"".concat(a.detailsList," ").concat(t?"open":""," ").concat(o),children:[(0,O.jsx)(p.zxk,{variant:"text",id:"close-details-list",onClick:n,icon:(0,O.jsx)(p.oto,{}),sx:{position:"absolute",right:5,top:18,padding:0,height:14,"&:hover:not(:disabled)":{backgroundColor:"transparent"}}}),r]})},H=n(64554),V=n(34433),J=[{value:"01",label:"January"},{value:"02",label:"February"},{value:"03",label:"March"},{value:"04",label:"April"},{value:"05",label:"May"},{value:"06",label:"June"},{value:"07",label:"July"},{value:"08",label:"August"},{value:"09",label:"September"},{value:"10",label:"October"},{value:"11",label:"November"},{value:"12",label:"December"}],Y=Array.from(Array(31),(function(e,t){return{value:(t+1).toString(),label:(t+1).toString()}})),q=(new Date).getFullYear(),$=Array.from(Array(50),(function(e,t){return{value:(t+q).toString(),label:(t+q).toString()}})),X=n(56028),Q=n(4942),ee=n(28182),te=(0,r.forwardRef)((function(e,t){var n=e.classes,i=e.id,o=e.label,a=e.disableOptions,s=void 0!==a&&a,c=e.addSwitch,l=void 0!==c&&c,d=e.tooltip,u=void 0===d?"":d,m=e.borderBottom,x=void 0!==m&&m,b=e.onDateChange,v=e.value,j=void 0===v?"":v;(0,r.useImperativeHandle)(t,(function(){return{resetDate:A}}));var g=(0,r.useState)(!1),_=(0,f.Z)(g,2),S=_[0],Z=_[1],C=(0,r.useState)(""),w=(0,f.Z)(C,2),y=w[0],T=w[1],N=(0,r.useState)(""),F=(0,f.Z)(N,2),k=F[0],E=F[1],I=(0,r.useState)(""),L=(0,f.Z)(I,2),B=L[0],P=L[1];(0,r.useEffect)((function(){if(""!==j){var e=j.split("-");P(e[0]),T(e[1]),E("".concat(parseInt(e[2])))}}),[j]),(0,r.useEffect)((function(){var e=function(e,t,n){var i=Date.parse("".concat(e,"-").concat(t,"-").concat(n));if(isNaN(i))return[!1,""];var o=parseInt(t),r=parseInt(n),a=o<10?"0".concat(o):o,s=r<10?"0".concat(r):r,c=new Date(i).toISOString().split("T")[0],l="".concat(e,"-").concat(a,"-").concat(s);return[c===l,l]}(B,y,k),t=(0,f.Z)(e,2),n=t[0],i=t[1];b(i,n)}),[y,k,B,b]);var A=function(){T(""),E(""),P("")},D=function(){return s||!!l&&!S},R=[{value:"",label:""}].concat((0,h.Z)(J)),M=[{value:"",label:""}].concat((0,h.Z)(Y)),z=[{value:"",label:""}].concat((0,h.Z)($));return(0,O.jsxs)(p.rjZ,{item:!0,xs:12,className:(0,ee.Z)(n.fieldContainer,(0,Q.Z)({},n.fieldContainerBorder,x)),children:[(0,O.jsx)("div",{className:n.labelContainer,children:(0,O.jsxs)(p.rjZ,{container:!0,children:[(0,O.jsxs)(p.AZs,{htmlFor:i,children:[(0,O.jsx)("span",{children:o}),""!==u&&(0,O.jsx)("div",{className:n.tooltipContainer,children:(0,O.jsx)(p.ua7,{tooltip:u,placement:"top",children:(0,O.jsx)("div",{className:n.tooltip,children:(0,O.jsx)(p.byK,{})})})})]}),l&&(0,O.jsx)(p.rsf,{indicatorLabels:["Specific Date","Default (7 Days)"],checked:S,value:"date_enabled",id:"date-status",name:"date-status",onChange:function(e){Z(e.target.checked),e.target.checked||b("",!0)},switchOnly:!0})]})}),(0,O.jsxs)(p.xuv,{sx:{display:"flex",gap:12},children:[(0,O.jsx)(p.PhF,{id:"".concat(i,"-month"),name:"".concat(i,"-month"),value:y,onChange:function(e){T(e)},options:R,label:"",disabled:D()}),(0,O.jsx)(p.PhF,{id:"".concat(i,"-day"),name:"".concat(i,"-day"),value:k,onChange:function(e){E(e)},options:M,label:"",disabled:D()}),(0,O.jsx)(p.PhF,{id:"".concat(i,"-year"),name:"".concat(i,"-year"),value:B,onChange:function(e){P(e)},options:z,label:"",disabled:D()})]})]})})),ne=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},u.YI),u.Hr),{},{fieldContainer:(0,o.Z)((0,o.Z)({},u.YI.fieldContainer),{},{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:10,marginTop:11,marginBottom:6})}))}))(te),ie=n(66315),oe=n(31776),re=n(82342),ae=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},u.DF),u.ID),u.bK))}))((function(e){var t=e.classes,n=e.open,i=e.closeModalAndRefresh,o=e.objectName,s=e.objectInfo,c=e.bucketName,l=(0,d.TL)(),u=(0,a.v9)((function(e){return e.objectBrowser.retentionConfig})),h=(0,r.useState)(!0),m=(0,f.Z)(h,2),x=m[0],b=m[1],v=(0,r.useState)(""),j=(0,f.Z)(v,2),_=j[0],S=j[1],Z=(0,r.useState)(""),C=(0,f.Z)(Z,2),w=C[0],y=C[1],T=(0,r.useState)(!1),N=(0,f.Z)(T,2),k=N[0],E=N[1],I=(0,r.useState)(!1),L=(0,f.Z)(I,2),B=L[0],P=L[1],A=(0,r.useState)(!1),D=(0,f.Z)(A,2),R=D[0],M=D[1];(0,r.useEffect)((function(){if(s.retention_mode&&(S((null===u||void 0===u?void 0:u.mode)||ie.oO.Governance),M(!0)),s.retention_until_date){var e=new Date(s.retention_until_date);if("Invalid Date"!==e.toString()){var t=e.getFullYear(),n=(o=e.getMonth()+1)<10?"0".concat(o):"".concat(o),i=e.getDate();isNaN(i)||"NaN"===n||isNaN(t)||y("".concat(t,"-").concat(n,"-").concat(i))}M(!0)}var o}),[s,null===u||void 0===u?void 0:u.mode]);var z=(0,r.useRef)(null),U=function(){b(!1),S(ie.oO.Governance),z.current&&z.current.resetDate()},G=R&&("governance"===_||""===_);return(0,O.jsxs)(X.Z,{title:"Set Retention Policy",modalOpen:n,onClose:function(){U(),i(!1)},children:[(0,O.jsxs)("div",{className:t.spacerBottom,children:[(0,O.jsx)("strong",{children:"Selected Object"}),": ",o]}),(0,O.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault()}(e)},children:[G&&(0,O.jsx)(p.rjZ,{item:!0,xs:12,className:t.formFieldRow,children:(0,O.jsx)(p.rsf,{value:"status",id:"status",name:"status",checked:x,onChange:function(e){b(!x)},label:"Status",indicatorLabels:["Enabled","Disabled"]})}),(0,O.jsx)(p.rjZ,{item:!0,xs:12,className:t.formFieldRow,children:(0,O.jsx)(p.Eep,{currentValue:_,id:"type",name:"type",label:"Type",disableOptions:!x||R&&""!==_,onChange:function(e){S(e.target.value)},selectorOptions:[{label:"Governance",value:ie.oO.Governance},{label:"Compliance",value:ie.oO.Compliance}]})}),(0,O.jsx)(p.rjZ,{item:!0,xs:12,className:"".concat(t.dateSelector," "),children:(0,O.jsx)(ne,{id:"date",label:"Date",disableOptions:!(x&&("governance"===_||"compliance"===_)),ref:z,value:w,borderBottom:!0,onDateChange:function(e,t){E(t),t&&y(e)}})}),(0,O.jsxs)(p.rjZ,{item:!0,xs:12,className:t.modalButtonBar,children:[(0,O.jsx)(p.zxk,{id:"reset",type:"button",variant:"regular",onClick:U,label:"Reset"}),(0,O.jsx)(p.zxk,{id:"save",type:"submit",variant:"callAction",disabled:x&&""===_||x&&!k||B,onClick:function(){P(!0);var e=s.name||"",t=s.version_id||null,n=x||"governance"!==_?"".concat(w,"T23:59:59Z"):"";x||"governance"!==_?function(e,t,n){oe.h.buckets.putObjectRetention(c,{prefix:(0,g.LL)(e),version_id:t||""},{expires:n,mode:_}).then((function(){P(!1),i(!0)})).catch((function(e){l((0,F.zb)((0,re.g)(e.error))),P(!1)}))}(e,t,n):function(e,t){oe.h.buckets.deleteObjectRetention(c,{prefix:(0,g.LL)(e),version_id:t||""}).then((function(){P(!1),i(!0)})).catch((function(e){l((0,F.zb)((0,re.g)(e.error))),P(!1)}))}(e,t)},label:"Save"})]})]})]})})),se=n(23508),ce=n(9505),le=function(e){return"Enabled"===e||"Suspended"===e},de=function(e){var t=e.closeDeleteModalAndRefresh,n=e.deleteOpen,i=e.selectedBucket,o=e.selectedObject,s=e.versioningInfo,c=e.selectedVersion,l=void 0===c?"":c,u=(0,d.TL)(),h=(0,ce.Z)((function(){return t(!0)}),(function(e){u((0,F.Ih)(e)),"Access Denied."===e.detailedError&&t(!0)})),m=(0,f.Z)(h,2),x=m[0],b=m[1],v=(0,r.useState)(!1),j=(0,f.Z)(v,2),_=j[0],S=j[1],Z=(0,r.useState)(!1),C=(0,f.Z)(Z,2),w=C[0],N=C[1],k=(0,a.v9)((function(e){return e.objectBrowser.retentionConfig})),E=(0,y.F)([i],[T.Ft.S3_BYPASS_GOVERNANCE_RETENTION])&&"governance"===(null===k||void 0===k?void 0:k.mode);if(!o)return null;return(0,O.jsx)(se.Z,{title:"Delete Object",confirmText:"Delete",isOpen:n,titleIcon:(0,O.jsx)(p.NvT,{}),isLoading:x,onConfirm:function(){var e=(0,g.IO)(o).endsWith("/");b("DELETE","/api/v1/buckets/".concat(i,"/objects?path=").concat(o).concat(""!==l?"&version_id=".concat(l):"&recursive=".concat(e,"&all_versions=").concat(_)).concat(w?"&bypass=true":""))},onClose:function(){return t(!1)},confirmationContent:(0,O.jsxs)(r.Fragment,{children:["Are you sure you want to delete: ",(0,O.jsx)("br",{}),(0,O.jsx)("b",{children:(0,g.IO)(o)})," ",""!==l?(0,O.jsxs)(r.Fragment,{children:[(0,O.jsx)("br",{}),(0,O.jsx)("br",{}),"Version ID:",(0,O.jsx)("br",{}),(0,O.jsx)("strong",{children:l})]}):"","? ",(0,O.jsx)("br",{}),(0,O.jsx)("br",{}),le(null===s||void 0===s?void 0:s.status)&&""===l&&(0,O.jsx)(r.Fragment,{children:(0,O.jsx)(p.rsf,{label:"Delete All Versions",indicatorLabels:["Yes","No"],checked:_,value:"delete_versions",id:"delete-versions",name:"delete-versions",onChange:function(e){S(!_)},description:""})}),E&&(_||""!==l)&&(0,O.jsx)(r.Fragment,{children:(0,O.jsx)("div",{style:{marginTop:10},children:(0,O.jsx)(p.rsf,{label:"Bypass Governance Mode",indicatorLabels:["Yes","No"],checked:w,value:"bypass_governance",id:"bypass_governance",name:"bypass_governance",onChange:function(e){N(!w)},description:""})})}),_&&(0,O.jsxs)(r.Fragment,{children:[(0,O.jsxs)("div",{style:{marginTop:10,border:"#c83b51 1px solid",borderRadius:3,padding:5,backgroundColor:"#c83b5120",color:"#c83b51"},children:["This will remove the object as well as all of its versions,"," ",(0,O.jsx)("br",{}),"This action is irreversible."]}),(0,O.jsx)("br",{}),"Are you sure you want to continue?"]})]})})},ue=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},u.DF),u.ID),u.bK))}))((function(e){var t=e.classes,n=e.open,i=e.closeModalAndRefresh,o=e.objectName,a=e.bucketName,s=e.actualInfo,c=(0,d.TL)(),l=(0,r.useState)(!1),u=(0,f.Z)(l,2),h=u[0],m=u[1],x=(0,r.useState)(!1),b=(0,f.Z)(x,2),v=b[0],_=b[1],S=s.version_id;(0,r.useEffect)((function(){var e=j()(s,"legal_hold_status","OFF");m("ON"===e)}),[s]);var Z=function(){m(!1)};return(0,O.jsxs)(X.Z,{title:"Set Legal Hold",modalOpen:n,onClose:function(){Z(),i(!1)},children:[(0,O.jsxs)(p.rjZ,{item:!0,xs:12,className:t.spacerBottom,children:["Object: ",a]}),(0,O.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault(),_(!0),oe.h.buckets.putObjectLegalHold(a,{prefix:(0,g.LL)(o),version_id:S||""},{status:h?ie.nY.Enabled:ie.nY.Disabled}).then((function(){_(!1),i(!0)})).catch((function(e){c((0,F.zb)((0,re.g)(e.error))),_(!1)}))}(e)},children:[(0,O.jsx)(p.rjZ,{item:!0,xs:12,className:t.formFieldRow,children:(0,O.jsx)(p.rsf,{value:"legalhold",id:"legalhold",name:"legalhold",checked:h,onChange:function(e){m(!h)},label:"Legal Hold Status",indicatorLabels:["Enabled","Disabled"],tooltip:"To enable this feature you need to enable versioning on the bucket before creation"})}),(0,O.jsxs)(p.rjZ,{item:!0,xs:12,className:t.modalButtonBar,children:[(0,O.jsx)(p.zxk,{id:"clear",type:"button",variant:"regular",onClick:Z,label:"Clear"}),(0,O.jsx)(p.zxk,{id:"save",type:"submit",variant:"callAction",disabled:v,label:" Save"})]})]})]})})),he=n(78562),fe=n(79836),me=n(53382),pe=n(35855),xe=n(53994),be=function(e){return Array.isArray(e)?e.map(g.eC).join(", "):(0,g.eC)(e)},ve=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)({titleItem:{width:"35%"}},u.bK),u.$b))}))((function(e){var t=e.metaData,n=e.classes,i=e.linear,o=void 0!==i&&i,a=Object.keys(t);return o?(0,O.jsx)(r.Fragment,{children:a.map((function(e,i){var o=be(t[e]);return(0,O.jsxs)(H.Z,{className:n.metadataLinear,children:[(0,O.jsx)("strong",{children:e}),(0,O.jsx)("br",{}),o]},"box-meta-".concat(e,"-").concat(i.toString()))}))}):(0,O.jsxs)(b.ZP,{container:!0,children:[(0,O.jsx)(b.ZP,{item:!0,xs:12,sx:{marginTop:"25px",marginBottom:"5px"},children:(0,O.jsx)("h3",{style:{marginTop:"0",marginBottom:"0"},children:"Object Metadata"})}),(0,O.jsx)(b.ZP,{item:!0,xs:12,children:(0,O.jsx)(fe.Z,{className:n.table,"aria-label":"simple table",children:(0,O.jsx)(me.Z,{children:a.map((function(e,i){var o=be(t[e]);return(0,O.jsxs)(pe.Z,{children:[(0,O.jsx)(xe.Z,{component:"th",scope:"row",className:n.titleItem,children:e}),(0,O.jsx)(xe.Z,{align:"right",children:o})]},"tRow-".concat(i.toString()))}))})})})]})})),je=n(37762),ge=(0,l.Z)((function(e){return(0,c.Z)({fileName:{display:"flex",alignItems:"center","& .min-icon":{width:16,height:16,marginRight:4,minWidth:16,minHeight:16}},fileNameText:{whiteSpace:"pre",overflow:"hidden",textOverflow:"ellipsis"}})}))((function(e){var t=e.classes,n=e.icon,i=e.strings;return(0,O.jsxs)("div",{className:t.fileName,children:[n,(0,O.jsx)("span",{className:t.fileNameText,children:(0,g.e3)(i[i.length-1])})]})})),_e=[{icon:(0,O.jsx)(p.n9O,{}),extensions:["mp4","mov","avi","mpeg","mpg"]},{icon:(0,O.jsx)(p.mYf,{}),extensions:["mp3","m4a","aac"]},{icon:(0,O.jsx)(p.UU9,{}),extensions:["pdf"]},{icon:(0,O.jsx)(p.hjP,{}),extensions:["ppt","pptx"]},{icon:(0,O.jsx)(p.hz9,{}),extensions:["xls","xlsx"]},{icon:(0,O.jsx)(p.xDw,{}),extensions:["cer","crt","pem"]},{icon:(0,O.jsx)(p.jG9,{}),extensions:["html","xml","css","py","go","php","cpp","h","java"]},{icon:(0,O.jsx)(p.NqG,{}),extensions:["cfg","yaml"]},{icon:(0,O.jsx)(p.OkY,{}),extensions:["sql"]},{icon:(0,O.jsx)(p.ZAy,{}),extensions:["ttf","otf"]},{icon:(0,O.jsx)(p.p2x,{}),extensions:["doc","docx","txt","rtf"]},{icon:(0,O.jsx)(p.xhr,{}),extensions:["zip","rar","tar","gz"]},{icon:(0,O.jsx)(p.rtI,{}),extensions:["epub","mobi","azw","azw3"]},{icon:(0,O.jsx)(p.q$4,{}),extensions:["jpeg","jpg","gif","tiff","png","heic","dng"]}],Se=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=e,i=(0,O.jsx)(p.MoH,{});e.endsWith("/")&&(i=(0,O.jsx)(p.BI,{}),n=e.slice(0,-1));for(var o=e.toLowerCase(),r=0,a=_e;r svg":{marginRight:10}},tagsForLabel:{fontSize:16,margin:"20px 0 30px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",width:"100%"},currentTagsContainer:{fontSize:14,fontWeight:"normal"},noTagsForObject:{color:"#858585"},deleteTag:{color:"#C83B51",marginLeft:5}},u.DF),u.ID),u.bK))}))((function(e){var t,n=e.modalOpen,i=e.onCloseAndUpdate,s=e.bucketName,c=e.actualInfo,l=e.classes,u=(0,d.TL)(),h=(0,a.v9)(F.N5),m=(0,r.useState)(""),x=(0,f.Z)(m,2),v=x[0],_=x[1],S=(0,r.useState)(""),Z=(0,f.Z)(S,2),C=Z[0],w=Z[1],N=(0,r.useState)(!1),k=(0,f.Z)(N,2),E=k[0],I=k[1],L=(0,r.useState)(!1),B=(0,f.Z)(L,2),P=B[0],A=B[1],D=(0,r.useState)(""),R=(0,f.Z)(D,2),M=R[0],z=R[1],U=(0,r.useState)(""),G=(0,f.Z)(U,2),W=G[0],K=G[1],V=(0,g.LL)(c.name||""),J=c.tags,Y=Object.keys(J||{}),q=null===(t=c.name)||void 0===t?void 0:t.split("/"),$=(null===q||void 0===q?void 0:q.pop())||"",Q=function(e){return(0,O.jsxs)("div",{className:l.tagsForLabel,children:["Tag",e?"s":""," for: ",(0,O.jsx)("strong",{children:$})]})};return(0,O.jsx)(r.Fragment,{children:(0,O.jsx)(X.Z,{modalOpen:n,title:P?"Delete Tag":"Edit Tags",onClose:function(){i(!0)},titleIcon:P?(0,O.jsx)(p.dRf,{style:{fill:"#C83B51"}}):(0,O.jsx)(p.T0F,{}),children:P?(0,O.jsx)(r.Fragment,{children:(0,O.jsxs)(b.ZP,{container:!0,children:[Q(!1),"Are you sure you want to delete the tag"," ",(0,O.jsxs)("b",{className:l.deleteTag,children:[M," : ",W]})," ","?",(0,O.jsxs)(b.ZP,{item:!0,xs:12,className:l.modalButtonBar,children:[(0,O.jsx)(p.zxk,{id:"cancel",type:"button",variant:"regular",onClick:function(){z(""),K(""),A(!1)},label:"Cancel"}),(0,O.jsx)(p.zxk,{type:"submit",variant:"secondary",onClick:function(){var e=(0,o.Z)({},J);delete e[M];var t=h?c.version_id||"":"null";oe.h.buckets.putObjectTags(s,{prefix:V,version_id:t},{tags:e}).then((function(){i(!0),I(!1)})).catch((function(e){u((0,F.zb)((0,re.g)(e.error))),I(!1)}))},id:"deleteTag",label:"Delete Tag"})]})]})}):(0,O.jsxs)(b.ZP,{container:!0,children:[(0,O.jsx)(y.s,{scopes:[T.Ft.S3_GET_OBJECT_TAGGING,T.Ft.S3_GET_ACTIONS],resource:s,children:(0,O.jsxs)(H.Z,{sx:{display:"flex",flexFlow:"column",width:"100%"},children:[Q(!0),(0,O.jsxs)("div",{className:l.currentTagsContainer,children:["Current Tags:",(0,O.jsx)("br",{}),0===Y.length?(0,O.jsx)("span",{className:l.noTagsForObject,children:"There are no tags for this object"}):(0,O.jsx)(r.Fragment,{}),(0,O.jsx)(H.Z,{sx:{marginTop:"5px",marginBottom:"15px"},children:Y.map((function(e,t){var n=j()(J,"".concat(e),"");return""!==n?(0,O.jsx)(y.s,{scopes:[T.Ft.S3_DELETE_OBJECT_TAGGING],resource:s,errorProps:{deleteIcon:null,onDelete:null},children:(0,O.jsx)(Ze.Z,{style:{textTransform:"none",marginRight:"5px",marginBottom:"5px"},size:"small",label:"".concat(e," : ").concat(n),color:"primary",deleteIcon:(0,O.jsx)(Ce.Z,{}),onDelete:function(){!function(e,t){z(e),K(t),A(!0)}(e,n)}})},"chip-".concat(t)):null}))})]})]})}),(0,O.jsx)(y.s,{scopes:[T.Ft.S3_PUT_OBJECT_TAGGING,T.Ft.S3_PUT_ACTIONS],resource:s,errorProps:{disabled:!0,onClick:null},children:(0,O.jsxs)(b.ZP,{container:!0,children:[(0,O.jsx)(p.NZf,{icon:(0,O.jsx)(p.OCT,{}),separator:!1,children:"Add New Tag"}),(0,O.jsx)(b.ZP,{item:!0,xs:12,className:l.formFieldRow,children:(0,O.jsx)(p.Wzg,{value:v,label:"Tag Key",id:"newTagKey",name:"newTagKey",placeholder:"Enter Tag Key",onChange:function(e){_(e.target.value)}})}),(0,O.jsx)(b.ZP,{item:!0,xs:12,className:l.formFieldRow,children:(0,O.jsx)(p.Wzg,{value:C,label:"Tag Label",id:"newTagLabel",name:"newTagLabel",placeholder:"Enter Tag Label",onChange:function(e){w(e.target.value)}})}),(0,O.jsxs)(b.ZP,{item:!0,xs:12,className:l.modalButtonBar,children:[(0,O.jsx)(p.zxk,{id:"clear",type:"button",variant:"regular",color:"primary",onClick:function(){w(""),_("")},label:"Clear"}),(0,O.jsx)(p.zxk,{type:"submit",variant:"callAction",disabled:""===C.trim()||""===v.trim()||E,onClick:function(){I(!0);var e={};e[v]=C;var t=(0,o.Z)((0,o.Z)({},J),e),n=h?c.version_id||"":"null";oe.h.buckets.putObjectTags(s,{prefix:V,version_id:n},{tags:t}).then((function(){i(!0),I(!1)})).catch((function(e){u((0,F.zb)((0,re.g)(e.error))),I(!1)}))},id:"saveTag",label:"Save"})]})]})})]})})})})),ye=n(74165),Te=n(15861),Ne=n(51691),Fe=n(73669),ke=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},u.DF),u.ID),u.bK))}))((function(e){var t=e.classes,n=e.closeInspectModalAndRefresh,i=e.inspectOpen,o=e.inspectPath,a=e.volumeName,s=(0,d.TL)(),c=function(){return n(!1)},l=(0,r.useState)(!0),u=(0,f.Z)(l,2),h=u[0],m=u[1],x=(0,r.useState)(""),b=(0,f.Z)(x,2),v=b[0],j=b[1],_=(0,r.useState)(""),S=(0,f.Z)(_,2),Z=S[0],C=S[1];if(!o)return null;var w=function(){var e=(0,Te.Z)((0,ye.Z)().mark((function e(t){return(0,ye.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,fetch(t,{method:"GET"});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),y=function(){var e=(0,Te.Z)((0,ye.Z)().mark((function e(){var t,n,i;return(0,ye.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=(0,g.LL)(o+"/xl.meta"),n=(0,g.LL)(a),i="/api/v1/admin/inspect?volume=".concat(n,"&file=").concat(t,"&encrypt=").concat(h),w(i).then(function(){var e=(0,Te.Z)((0,ye.Z)().mark((function e(t){var n,i,o,r;return(0,ye.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.ok){e.next=5;break}return e.next=3,t.json();case 3:n=e.sent,s((0,F.Ih)({errorMessage:n.message,detailedError:n.code}));case 5:return e.next=7,t.blob();case 7:if(i=e.sent,o=t.headers.get("content-disposition").split('"')[1],r=(0,g.Do)(o)||"",(0,g.zZ)(i,o),C(o),""!==r){e.next=15;break}return c(),e.abrupt("return");case 15:j(r);case 16:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){s((0,F.Ih)(e))}));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return(0,O.jsxs)(r.Fragment,{children:[!v&&(0,O.jsx)(X.Z,{modalOpen:i,titleIcon:(0,O.jsx)(p.Gp8,{}),title:"Inspect Object",onClose:c,children:(0,O.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault()}(e)},children:["Would you like to encrypt ",(0,O.jsx)("b",{children:(0,g.IO)(o)}),"?"," ",(0,O.jsx)("br",{}),(0,O.jsx)(p.rsf,{label:"Encrypt",indicatorLabels:["Yes","No"],checked:h,value:"encrypt",id:"encrypt",name:"encrypt",onChange:function(e){m(!h)},description:""}),(0,O.jsx)(p.rjZ,{item:!0,xs:12,className:t.modalButtonBar,children:(0,O.jsx)(p.zxk,{id:"inspect",type:"submit",variant:"callAction",color:"primary",onClick:y,label:"Inspect"})})]})}),v?(0,O.jsx)(X.Z,{modalOpen:i,title:"Inspect Decryption Key",onClose:function(){(0,g.kT)(Z),c(),j("")},titleIcon:(0,O.jsx)(p.tvm,{}),children:(0,O.jsxs)(Ne.Z,{children:[(0,O.jsxs)(p.xuv,{children:["This will be displayed only once. It cannot be recovered.",(0,O.jsx)("br",{}),"Use secure medium to share this key."]}),(0,O.jsx)(p.xuv,{children:(0,O.jsx)(Fe.Z,{value:v})})]})}):null]})})),Ee=n(21435),Ie=n(81159),Oe=n(76610),Le=function(e,t,n,i){var o,r=(0,g.LL)("".concat(t,"-").concat(i.name,"-").concat((new Date).getTime(),"-").concat(Math.random())),a=(0,g.mv)().toLowerCase().includes("win");if(((null===(o=i.name)||void 0===o?void 0:o.length)||0)>200&&a)e((0,k.Hg)(!0));else{var s=(0,Oe.YO)(8),c=(0,A.LR)(t,n,i.version_id,i.size||0,null,s,(function(t){e((0,k.RO)({instanceID:r,progress:t}))}),(function(){e((0,k.oK)(r))}),(function(t){e((0,k.qJ)({instanceID:r,msg:t}))}),(function(){e((0,k.Im)(r))}),(function(){e((0,F.y1)("File download will be handled directly by the browser."))}));(0,Oe.EN)(s,c),e((0,k.Mc)({ID:s,bucketName:t,done:!1,instanceID:r,percentage:0,prefix:i.name||"",type:"download",waitingForFile:!0,failed:!1,cancelled:!1,errorMessage:""}))}},Be=(0,C.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},u.ID),u.DF),u.bK),u.Bz))})),Pe=function(e){var t=e.open,n=e.closeModal,i=e.currentItem,o=e.internalPaths,a=e.actualInfo,s=e.bucketName,c=Be(),l=(0,d.TL)(),u=(0,r.useState)(i),h=(0,f.Z)(u,2),m=h[0],x=h[1],v=(0,r.useState)(!1),j=(0,f.Z)(v,2),g=j[0],_=j[1];return(0,O.jsxs)(X.Z,{title:"Rename Download",modalOpen:t,onClose:n,titleIcon:(0,O.jsx)(p.dY8,{}),children:[(0,O.jsxs)("div",{children:["The file you are trying to download has a long name.",(0,O.jsx)("br",{}),"This can cause issues on Windows Systems by trimming the file name after download.",(0,O.jsx)("br",{}),(0,O.jsx)("br",{})," We recommend to rename the file download"]}),(0,O.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault(),Le(l,s,o,a),n()}(e)},children:(0,O.jsxs)(b.ZP,{container:!0,children:[(0,O.jsxs)(b.ZP,{item:!0,xs:12,className:c.modalFormScrollable,children:[(0,O.jsx)(b.ZP,{item:!0,xs:12,className:c.formFieldRow,children:(0,O.jsx)(Ee.Z,{id:"download-filename",name:"download-filename",onChange:function(e){x(e.target.value)},label:"",type:"text",value:m,error:m.length>200&&!g?"Filename should be less than 200 characters long.":""})}),(0,O.jsx)(b.ZP,{item:!0,xs:12,className:c.formFieldRow,children:(0,O.jsx)(Ie.Z,{value:"acceptLongName",id:"acceptLongName",name:"acceptLongName",checked:g,onChange:function(e){_(e.target.checked),e.target.checked&&x(i)},label:"Use Original Name"})})]}),(0,O.jsx)(b.ZP,{item:!0,xs:12,className:c.modalButtonBar,children:(0,O.jsx)(p.zxk,{id:"download-file",type:"submit",variant:"callAction",color:"primary",disabled:m.length>200&&!g,label:"Download File"})})]})})]})},Ae={is_latest:!0,last_modified:"",legal_hold_status:"",name:"",retention_mode:"",retention_until_date:"",size:0,tags:{},version_id:void 0},De=(0,l.Z)((function(){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)({ObjectDetailsTitle:{display:"flex",alignItems:"center","& .min-icon":{width:26,height:26,minWidth:26,minHeight:26}},objectNameContainer:{whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",alignItems:"center",marginLeft:10},capitalizeFirst:{textTransform:"capitalize"}},u.OR),u.bK),u.VI),u.$b))}))((function(e){var t=e.classes,n=e.internalPaths,i=e.bucketName,o=e.versioningInfo,s=e.locking,c=e.onClosePanel,l=(0,d.TL)(),u=(0,a.v9)(F.N5),h=(0,a.v9)((function(e){return e.objectBrowser.versionsMode})),m=(0,a.v9)((function(e){return e.objectBrowser.selectedVersion})),x=(0,a.v9)((function(e){return e.objectBrowser.loadingObjectInfo})),v=(0,r.useState)(!1),_=(0,f.Z)(v,2),S=_[0],Z=_[1],C=(0,r.useState)(!1),w=(0,f.Z)(C,2),N=w[0],E=w[1],I=(0,r.useState)(!1),L=(0,f.Z)(I,2),B=L[0],P=L[1],D=(0,r.useState)(!1),R=(0,f.Z)(D,2),M=R[0],z=R[1],G=(0,r.useState)(!1),W=(0,f.Z)(G,2),K=W[0],J=W[1],Y=(0,r.useState)(null),q=(0,f.Z)(Y,2),$=q[0],X=q[1],Q=(0,r.useState)([]),ee=(0,f.Z)(Q,2),te=ee[0],ne=ee[1],ie=(0,r.useState)(null),re=(0,f.Z)(ie,2),se=re[0],ce=re[1],le=(0,r.useState)([]),fe=(0,f.Z)(le,2),me=fe[0],pe=fe[1],xe=(0,r.useState)(!1),be=(0,f.Z)(xe,2),je=be[0],ge=be[1],_e=(0,r.useState)(!1),Ze=(0,f.Z)(_e,2),Ce=Ze[0],ye=Ze[1],Te=(0,r.useState)(0),Ne=(0,f.Z)(Te,2),Fe=Ne[0],Ee=Ne[1],Ie=(0,r.useState)(!1),Oe=(0,f.Z)(Ie,2),Be=Oe[0],De=Oe[1],Re=(0,r.useState)(null),Me=(0,f.Z)(Re,2),ze=Me[0],Ue=Me[1],Ge=(0,r.useState)(!1),We=(0,f.Z)(Ge,2),Ke=We[0],He=We[1],Ve=((0,g.IO)(n)||"").split("/").pop()||"",Je=[];$&&$.name&&(Je=$.name.split("/")),(0,r.useEffect)((function(){if(u&&te&&te.length>=1){var e=te.find((function(e){return e.is_latest}))||Ae;""!==m&&(e=te.find((function(e){return e.version_id===m}))||Ae),e.is_delete_marker||He(!0),X(e)}}),[m,u,te]),(0,r.useEffect)((function(){x&&""!==n&&oe.h.buckets.listObjects(i,{prefix:n,with_versions:u}).then((function(e){var t=e.data.objects||[];if(u){ne(t),pe(t);var n=t.reduce((function(e,t){return null!==t&&void 0!==t&&t.size?e+t.size:e}),0);Ee(n)}else{var i=t[0];X(i),pe([]),i.is_delete_marker||He(!0)}l((0,k.vH)(!1))})).catch((function(e){console.error("Error loading object details",e.error),l((0,k.vH)(!1))}))}),[x,i,n,l,u,m]),(0,r.useEffect)((function(){Ke&&""!==n&&oe.h.buckets.getObjectMetadata(i,{prefix:n}).then((function(e){var t=j()(e.data,"objectMetadata",{});Ue(t),He(!1)})).catch((function(e){console.error("Error Getting Metadata Status: ",e.detailedError),He(!1)}))}),[i,n,Ke]);var Ye=[];$&&$.tags&&(Ye=Object.keys($.tags));var qe=(0,O.jsx)("div",{style:{textAlign:"center",marginTop:35},children:(0,O.jsx)(p.aNw,{})});if(!$)return x?qe:null;var $e=Je.length>0?Je[Je.length-1]:$.name,Xe=[i,Ve,[i,$.name].join("/")],Qe=(0,y.F)(i,[T.Ft.S3_PUT_OBJECT_LEGAL_HOLD,T.Ft.S3_PUT_ACTIONS]),et=(0,y.F)(Xe,[T.Ft.S3_PUT_OBJECT_TAGGING,T.Ft.S3_PUT_ACTIONS]),tt=(0,y.F)(Xe,[T.Ft.S3_GET_OBJECT_RETENTION,T.Ft.S3_PUT_OBJECT_RETENTION,T.Ft.S3_GET_ACTIONS,T.Ft.S3_PUT_ACTIONS],!0),nt=(0,y.F)(Xe,[T.Ft.ADMIN_INSPECT_DATA]),it=(0,y.F)(Xe,[T.Ft.S3_GET_BUCKET_VERSIONING,T.Ft.S3_PUT_BUCKET_VERSIONING,T.Ft.S3_GET_OBJECT_VERSION,T.Ft.S3_GET_ACTIONS,T.Ft.S3_PUT_ACTIONS]),ot=(0,y.F)(Xe,[T.Ft.S3_GET_OBJECT,T.Ft.S3_GET_ACTIONS]),rt=(0,y.F)([i,Ve,[i,$.name].join("/")],[T.Ft.S3_DELETE_OBJECT]),at=(0,A.s7)(ze,Ve),st=[{action:function(){Le(l,i,n,$)},label:"Download",disabled:!!$.is_delete_marker||!ot,icon:(0,O.jsx)(p._8t,{}),tooltip:ot?"Download this Object":(0,T.MK)([T.Ft.S3_GET_OBJECT,T.Ft.S3_GET_ACTIONS],"download this object")},{action:function(){Z(!0)},label:"Share",disabled:!!$.is_delete_marker||!ot,icon:(0,O.jsx)(p.aAc,{}),tooltip:ot?"Share this File":(0,T.MK)([T.Ft.S3_GET_OBJECT,T.Ft.S3_GET_ACTIONS],"share this object")},{action:function(){ye(!0)},label:"Preview",disabled:!!$.is_delete_marker||"none"===at&&!ot,icon:(0,O.jsx)(p.P99,{}),tooltip:ot?"Preview this File":(0,T.MK)([T.Ft.S3_GET_OBJECT,T.Ft.S3_GET_ACTIONS],"preview this object")},{action:function(){z(!0)},label:"Legal Hold",disabled:!s||!u||!!$.is_delete_marker||!Qe||""!==m,icon:(0,O.jsx)(p.fNL,{}),tooltip:Qe?s?"Change Legal Hold rules for this File":"Object Locking must be enabled on this bucket in order to set Legal Hold":(0,T.MK)([T.Ft.S3_PUT_OBJECT_LEGAL_HOLD,T.Ft.S3_PUT_ACTIONS],"change legal hold settings for this object")},{action:function(){E(!0)},label:"Retention",disabled:!u||!!$.is_delete_marker||!tt||""!==m||!s,icon:(0,O.jsx)(p.E9d,{}),tooltip:tt?s?"Change Retention rules for this File":"Object Locking must be enabled on this bucket in order to set Retention Rules":(0,T.MK)([T.Ft.S3_GET_OBJECT_RETENTION,T.Ft.S3_PUT_OBJECT_RETENTION,T.Ft.S3_GET_ACTIONS,T.Ft.S3_PUT_ACTIONS],"change Retention Rules for this object")},{action:function(){P(!0)},label:"Tags",disabled:!!$.is_delete_marker||""!==m||!et,icon:(0,O.jsx)(p.DgT,{}),tooltip:et?"Change Tags for this File":(0,T.MK)([T.Ft.S3_PUT_OBJECT_TAGGING,T.Ft.S3_GET_OBJECT_TAGGING,T.Ft.S3_GET_ACTIONS,T.Ft.S3_PUT_ACTIONS],"set Tags on this object")},{action:function(){J(!0)},label:"Inspect",disabled:!u||!!$.is_delete_marker||""!==m||!nt,icon:(0,O.jsx)(p.Gp8,{}),tooltip:nt?"Inspect this file":(0,T.MK)([T.Ft.ADMIN_INSPECT_DATA],"inspect this file")},{action:function(){l((0,k.db)({status:!h,objectName:$e}))},label:h?"Hide Object Versions":"Display Object Versions",icon:(0,O.jsx)(p.cRd,{}),disabled:!u||!($.version_id&&"null"!==$.version_id)||!it,tooltip:it?$.version_id&&"null"!==$.version_id?"Display Versions for this file":"":(0,T.MK)([T.Ft.S3_GET_BUCKET_VERSIONING,T.Ft.S3_PUT_BUCKET_VERSIONING,T.Ft.S3_GET_OBJECT_VERSION,T.Ft.S3_GET_ACTIONS,T.Ft.S3_PUT_ACTIONS],"display all versions of this object")}];return(0,O.jsxs)(r.Fragment,{children:[S&&$&&(0,O.jsx)(V.default,{open:S,closeModalAndRefresh:function(){ce(null),Z(!1)},bucketName:i,dataObject:se||$}),N&&$&&(0,O.jsx)(ae,{open:N,closeModalAndRefresh:function(e){E(!1),e&&l((0,k.vH)(!0))},objectName:Ve,objectInfo:$,bucketName:i}),je&&(0,O.jsx)(de,{deleteOpen:je,selectedBucket:i,selectedObject:n,closeDeleteModalAndRefresh:function(e){ge(!1),e&&""===m?c(!0):(l((0,k.Eq)(!0)),l((0,k.M3)("")),l((0,k.vH)(!0)))},versioningInfo:u?o:void 0,selectedVersion:m}),M&&$&&(0,O.jsx)(ue,{open:M,closeModalAndRefresh:function(e){z(!1),e&&l((0,k.vH)(!0))},objectName:$.name||"",bucketName:i,actualInfo:$}),Ce&&$&&(0,O.jsx)(he.default,{open:Ce,bucketName:i,object:{name:$.name||"",version_id:$.version_id||"null",size:$.size||0,content_type:"",last_modified:$.last_modified||""},onClosePreview:function(){ye(!1)}}),B&&$&&(0,O.jsx)(we,{modalOpen:B,bucketName:i,actualInfo:$,onCloseAndUpdate:function(e){P(!1),e&&l((0,k.vH)(!0))}}),K&&$&&(0,O.jsx)(ke,{inspectOpen:K,volumeName:i,inspectPath:$.name||"",closeInspectModalAndRefresh:function(e){J(!1),e&&l((0,k.vH)(!0))}}),Be&&$&&(0,O.jsx)(Pe,{open:Be,closeModal:function(){De(!1)},currentItem:Ve,bucketName:i,internalPaths:n,actualInfo:$}),x?(0,O.jsx)(r.Fragment,{children:qe}):(0,O.jsxs)(r.Fragment,{children:[(0,O.jsx)(p.Wk,{title:(0,O.jsxs)("div",{className:t.ObjectDetailsTitle,children:[Se($e||"",!0),(0,O.jsx)("span",{className:t.objectNameContainer,children:$e})]}),items:st}),(0,O.jsx)(U.Z,{tooltip:rt?"":(0,T.MK)([T.Ft.S3_DELETE_OBJECT],"delete this object"),children:(0,O.jsx)(b.ZP,{item:!0,xs:12,sx:{justifyContent:"center",display:"flex"},children:(0,O.jsx)(y.s,{resource:[i,Ve,[i,$.name].join("/")],scopes:[T.Ft.S3_DELETE_OBJECT],errorProps:{disabled:!0},children:(0,O.jsx)(p.zxk,{id:"delete-element-click",icon:(0,O.jsx)(p.pJl,{}),iconLocation:"start",fullWidth:!0,variant:"secondary",onClick:function(){ge(!0)},disabled:""===m&&$.is_delete_marker,sx:{width:"calc(100% - 44px)",margin:"8px 0"},label:"Delete".concat(""!==m?" version":"")})})})}),(0,O.jsx)(p.AG2,{icon:(0,O.jsx)(p.Gvh,{}),label:"Object Info"}),(0,O.jsxs)(H.Z,{className:t.detailContainer,children:[(0,O.jsx)("strong",{children:"Name:"}),(0,O.jsx)("br",{}),(0,O.jsx)("div",{style:{overflowWrap:"break-word"},children:$e})]}),""!==m&&(0,O.jsxs)(H.Z,{className:t.detailContainer,children:[(0,O.jsx)("strong",{children:"Version ID:"}),(0,O.jsx)("br",{}),m]}),(0,O.jsxs)(H.Z,{className:t.detailContainer,children:[(0,O.jsx)("strong",{children:"Size:"}),(0,O.jsx)("br",{}),(0,g.ae)("".concat($.size||"0"))]}),$.version_id&&"null"!==$.version_id&&""===m&&(0,O.jsxs)(H.Z,{className:t.detailContainer,children:[(0,O.jsx)("strong",{children:"Versions:"}),(0,O.jsx)("br",{}),me.length," version",1!==me.length?"s":"",","," ",(0,g.l5)(Fe)]}),""===m&&(0,O.jsxs)(H.Z,{className:t.detailContainer,children:[(0,O.jsx)("strong",{children:"Last Modified:"}),(0,O.jsx)("br",{}),function(e){var t=new Date,n=new Date(e),i=t.getTime()-n.getTime(),o=(0,g.nF)(i,"ms");return""!==o.trim()?"".concat(o," ago"):"Just now"}($.last_modified||"")]}),(0,O.jsxs)(H.Z,{className:t.detailContainer,children:[(0,O.jsx)("strong",{children:"ETAG:"}),(0,O.jsx)("br",{}),$.etag||"N/A"]}),(0,O.jsxs)(H.Z,{className:t.detailContainer,children:[(0,O.jsx)("strong",{children:"Tags:"}),(0,O.jsx)("br",{}),0===Ye.length?"N/A":Ye.map((function(e,t){return(0,O.jsxs)("span",{children:[e,":",j()($,"tags.".concat(e),""),t div":{borderBottomColor:j()(t,"boxBackground","#F8F8F8")}}},"& .versionContainer":{fontSize:16,fontWeight:"bold",display:"flex",alignItems:"center","& svg.min-icon":{width:18,height:18,minWidth:18,minHeight:18,marginRight:10}},"& .buttonContainer":{textAlign:"right","& button":{marginLeft:"1.5rem"}},"& .versionID":{fontSize:"12px",margin:"2px 0",whiteSpace:"nowrap",textOverflow:"ellipsis",maxWidth:"95%",overflow:"hidden"},"& .versionData":{marginRight:"10px",fontSize:12,color:"#868686"},"@media (max-width: 600px)":{"& .buttonContainer":{"& button":{marginLeft:"5px"}}},"@media (max-width: 799px)":{"&:before":{display:"none"},"& .mainFileVersionItem":{padding:"5px 0px",margin:0},"& .intermediateLayer":{margin:0,"&:hover, &.selected":{backgroundColor:"transparent","& > div":{borderBottomColor:j()(t,"boxBackground","#F8F8F8")}}},"& .versionContainer":{fontSize:14,"& svg.min-icon":{display:"none"}},"& .versionData":{textOverflow:"ellipsis",maxWidth:"95%",overflow:"hidden",whiteSpace:"nowrap"},"& .collapsableInfo":{display:"flex",flexDirection:"column"},"& .versionItem":{display:"none"}}}})),Ke=function(e){var t=e.fileName,n=e.versionInfo,i=e.isSelected,o=e.checkable,r=e.isChecked,a=e.onCheck,s=e.onShare,c=e.onDownload,l=e.onRestore,d=e.onPreview,u=e.globalClick,h=e.index,f=e.key,m=e.style,b=n.is_delete_marker,v=[{icon:(0,O.jsx)(p.P99,{}),action:d,tooltip:"Preview"},{icon:(0,O.jsx)(p._8t,{}),action:c,tooltip:"Download this version"},{icon:(0,O.jsx)(p.aAc,{}),action:s,tooltip:"Share this version"},{icon:(0,O.jsx)(p.D7Y,{}),action:l,tooltip:"Restore this version"}],j=null;n.is_delete_marker?j="deleted":n.is_latest?j="current":"null"===n.version_id&&(j="null");var _=x.ou.now();return n.last_modified&&(_=x.ou.fromISO(n.last_modified)),(0,O.jsx)(We,{children:(0,O.jsx)(p.rjZ,{container:!0,className:"ctrItem",onClick:function(){u(n)},style:m,children:(0,O.jsx)(p.rjZ,{item:!0,xs:12,className:"intermediateLayer".concat(" ",i?"selected":""),children:(0,O.jsxs)(p.rjZ,{item:!0,xs:!0,className:"mainFileVersionItem ".concat(n.is_delete_marker?"deleted":""),children:[(0,O.jsx)(p.rjZ,{item:!0,xs:12,children:(0,O.jsxs)(p.rjZ,{container:!0,children:[(0,O.jsxs)(p.rjZ,{item:!0,xs:!0,md:4,className:"versionContainer",children:[o&&(0,O.jsx)(Ge.Z,{checked:r,id:"select-".concat(n.version_id),label:"",name:"select-".concat(n.version_id),onChange:function(e){e.stopPropagation(),e.preventDefault(),a(n.version_id||"")},value:n.version_id||"",disabled:n.is_delete_marker,overrideCheckboxStyles:{paddingLeft:0,height:34,width:25},noTopMargin:!0}),Se(t,!0)," v",h.toString(),(0,O.jsx)("span",{className:"versionItem",children:j&&(0,O.jsx)(Ue,{type:j})})]}),(0,O.jsx)(p.rjZ,{item:!0,xs:10,md:8,className:"buttonContainer",children:v.map((function(e,t){return(0,O.jsx)(p.ua7,{tooltip:e.tooltip,children:(0,O.jsx)(p.hU,{size:"small",id:"version-action-".concat(e.tooltip,"-").concat(t.toString()),className:"spacing".concat(" ",b?"buttonDisabled":""),disabled:b,onClick:function(t){t.stopPropagation(),b?t.preventDefault():e.action(n)},sx:{backgroundColor:"#F8F8F8",borderRadius:"100%",width:"28px",height:"28px",padding:"5px","& .min-icon":{width:"14px",height:"14px"}},children:e.icon})},"version-action-".concat(e.tooltip,"-").concat(t.toString()))}))})]})}),(0,O.jsx)(p.rjZ,{item:!0,xs:12,className:"versionID",children:"null"!==n.version_id?n.version_id:"-"}),(0,O.jsxs)(p.rjZ,{item:!0,xs:12,className:"collapsableInfo",children:[(0,O.jsxs)("span",{className:"versionData",children:[(0,O.jsx)("strong",{children:"Last modified:"})," ",_.toFormat("ccc, LLL dd yyyy HH:mm:ss (ZZZZ)")]}),(0,O.jsxs)("span",{className:"versionData",children:[(0,O.jsx)("strong",{children:"Size:"})," ",(0,g.ae)("".concat(n.size||"0"))]})]})]})})},f)})},He=function(e){var t=e.closeDeleteModalAndRefresh,n=e.deleteOpen,i=e.selectedBucket,o=e.selectedObject,s=(0,d.TL)(),c=(0,r.useState)(!1),l=(0,f.Z)(c,2),u=l[0],h=l[1],m=(0,r.useState)(""),x=(0,f.Z)(m,2),b=x[0],v=x[1],j=(0,r.useState)(!1),_=(0,f.Z)(j,2),S=_[0],Z=_[1],C=(0,a.v9)((function(e){return e.objectBrowser.retentionConfig})),w=(0,y.F)([i],[T.Ft.S3_BYPASS_GOVERNANCE_RETENTION])&&"governance"===(null===C||void 0===C?void 0:C.mode);if((0,r.useEffect)((function(){u&&oe.h.buckets.deleteObject(i,{path:o,non_current_versions:!0,bypass:S}).then((function(){t(!0)})).catch((function(e){s((0,F.Ih)((0,re.g)(e.error))),h(!1)}))}),[u,t,s,o,i,S]),!o)return null;return(0,O.jsx)(se.Z,{title:"Delete Non-Current versions",confirmText:"Delete",isOpen:n,titleIcon:(0,O.jsx)(p.NvT,{}),isLoading:u,onConfirm:function(){h(!0)},onClose:function(){return t(!1)},confirmButtonProps:{disabled:"YES, PROCEED"!==b||u},confirmationContent:(0,O.jsxs)(r.Fragment,{children:["Are you sure you want to delete all the non-current versions for:"," ",(0,O.jsx)("b",{children:(0,g.IO)(o)}),"? ",(0,O.jsx)("br",{}),w&&(0,O.jsx)(r.Fragment,{children:(0,O.jsx)("div",{style:{marginTop:10},children:(0,O.jsx)(p.rsf,{label:"Bypass Governance Mode",indicatorLabels:["Yes","No"],checked:S,value:"bypass_governance",id:"bypass_governance",name:"bypass_governance",onChange:function(e){Z(!S)},description:""})})}),(0,O.jsx)("br",{}),"To continue please type ",(0,O.jsx)("b",{children:"YES, PROCEED"})," in the box.",(0,O.jsx)("br",{}),(0,O.jsx)("br",{}),(0,O.jsx)(p.rjZ,{item:!0,xs:12,children:(0,O.jsx)(p.Wzg,{id:"type-confirm",name:"retype-tenant",onChange:function(e){v(e.target.value)},label:"",value:b})})]})})},Ve=function(e){var t=e.closeDeleteModalAndRefresh,n=e.deleteOpen,i=e.selectedBucket,o=e.selectedVersions,s=e.selectedObject,c=(0,d.TL)(),l=(0,r.useState)(!1),u=(0,f.Z)(l,2),h=u[0],m=u[1],x=(0,r.useState)(!1),b=(0,f.Z)(x,2),v=b[0],j=b[1],g=(0,a.v9)((function(e){return e.objectBrowser.retentionConfig})),_=(0,y.F)([i],[T.Ft.S3_BYPASS_GOVERNANCE_RETENTION])&&"governance"===(null===g||void 0===g?void 0:g.mode);return(0,r.useEffect)((function(){if(h){var e=o.map((function(e){return{path:s,versionID:e,recursive:!1}}));e.length>0&&oe.h.buckets.deleteMultipleObjects(i,e,{all_versions:!1,bypass:v}).then((function(){m(!1),t(!0)})).catch((function(e){c((0,F.Ih)((0,re.g)(e.error))),m(!1)}))}}),[h,t,i,s,o,v,c]),o?(0,O.jsx)(se.Z,{title:"Delete Selected Versions",confirmText:"Delete",isOpen:n,titleIcon:(0,O.jsx)(p.NvT,{}),isLoading:h,onConfirm:function(){m(!0)},onClose:function(){return t(!1)},confirmationContent:(0,O.jsxs)(r.Fragment,{children:["Are you sure you want to delete the selected ",o.length," ","versions for ",(0,O.jsx)("strong",{children:s}),"?",_&&(0,O.jsx)(r.Fragment,{children:(0,O.jsx)("div",{style:{marginTop:10},children:(0,O.jsx)(p.rsf,{label:"Bypass Governance Mode",indicatorLabels:["Yes","No"],checked:v,value:"bypass_governance",id:"bypass_governance",name:"bypass_governance",onChange:function(e){j(!v)},description:""})})})]})}):null},Je=n(5171),Ye={is_latest:!0,last_modified:"",legal_hold_status:"",name:"",retention_mode:"",retention_until_date:"",size:0,tags:{},version_id:void 0},qe=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)({versionsContainer:{padding:10,"@media (max-width: 799px)":{minHeight:800}},noBottomBorder:{borderBottom:0},versionsVirtualPanel:{flexGrow:1,height:"calc(100% - 120px)",overflow:"auto","@media (max-width: 799px)":{height:600}},screenTitleContainer:{position:"relative","@media (max-width: 799px)":{"&::before":{display:"none"}}},sortByLabel:{color:"#838383",fontWeight:"bold",whiteSpace:"nowrap",marginRight:12,fontSize:14,"@media (max-width: 600px)":{display:"none"}}},u.OR),u.VX),u.bK),u.VI),u.cx),u.C4),u.Bz))}))((function(e){var t=e.classes,n=e.internalPaths,i=e.bucketName,o=(0,d.TL)(),s=(0,a.v9)((function(e){return e.objectBrowser.searchVersions})),c=(0,a.v9)((function(e){return e.objectBrowser.loadingVersions})),l=(0,a.v9)((function(e){return e.objectBrowser.selectedVersion})),u=(0,a.v9)(F.N5),m=(0,r.useState)(!1),x=(0,f.Z)(m,2),v=x[0],_=x[1],S=(0,r.useState)(null),Z=(0,f.Z)(S,2),C=Z[0],w=Z[1],y=(0,r.useState)(null),T=(0,f.Z)(y,2),N=T[0],E=T[1],I=(0,r.useState)([]),L=(0,f.Z)(I,2),B=L[0],A=L[1],D=(0,r.useState)(!1),R=(0,f.Z)(D,2),M=R[0],z=R[1],G=(0,r.useState)(null),W=(0,f.Z)(G,2),K=W[0],H=W[1],J=(0,r.useState)("date"),Y=(0,f.Z)(J,2),q=Y[0],$=Y[1],X=(0,r.useState)(!1),Q=(0,f.Z)(X,2),ee=Q[0],te=Q[1],ne=(0,r.useState)(!1),ie=(0,f.Z)(ne,2),ae=ie[0],se=ie[1],ce=(0,r.useState)(!1),le=(0,f.Z)(ce,2),de=le[0],ue=le[1],fe=(0,r.useState)([]),me=(0,f.Z)(fe,2),pe=me[0],xe=me[1],be=(0,r.useState)(!1),ve=(0,f.Z)(be,2),je=ve[0],ge=ve[1],_e=[];C&&C.name&&(_e=C.name.split("/")),(0,r.useEffect)((function(){c||C||o((0,k.Eq)(!0))}),[c,C,o]),(0,r.useEffect)((function(){c&&""!==n&&oe.h.buckets.listObjects(i,{prefix:n,with_versions:u}).then((function(e){var t=j()(e.data,"objects",[]),i=(0,g.IO)(n),r=t.filter((function(e){return e.name===i}));u?(w(r.find((function(e){return e.is_latest}))||Ye),A(r)):(w(r[0]),A([])),o((0,k.Eq)(!1))})).catch((function(e){o((0,F.Ih)((0,re.g)(e.error))),o((0,k.Eq)(!1))}))}),[c,i,n,o,u]);var Se=function(e){E(e),_(!0)},Ze=function(e){E(e),te(!0)},Ce=function(e){H(e),z(!0)},we=function(e){Le(o,i,n,e)},ye=function(e){o((0,k.M3)(e.version_id||""))},Te=B.filter((function(e){return!!e.version_id&&e.version_id.includes(s)})),Ne=B.reduce((function(e,t){return t.size?e+t.size:e}),0);Te.sort((function(e,t){if("size"===q)return e.size&&t.size?e.sizet.size?1:0:0;var n=new Date(e.last_modified||"").getTime(),i=new Date(t.last_modified||"").getTime();return ni?-1:0}));var Fe=function(e){if(pe.includes(e)){var t=pe.filter((function(t){return t!==e}));xe(t)}else{var n=(0,h.Z)(pe);n.push(e),xe(n)}};return(0,O.jsxs)(r.Fragment,{children:[v&&C&&(0,O.jsx)(V.default,{open:v,closeModalAndRefresh:function(){E(null),_(!1),te(!1)},bucketName:i,dataObject:N||C}),M&&C&&K&&(0,O.jsx)(Me,{restoreOpen:M,bucketName:i,versionToRestore:K,objectPath:C.name||"",onCloseAndUpdate:function(e){z(!1),H(null),e&&(o((0,k.Eq)(!0)),o((0,k.vH)(!0)))}}),ee&&C&&(0,O.jsx)(he.default,{open:ee,bucketName:i,object:{name:C.name||"",version_id:N&&N.version_id?N.version_id:"null",size:N&&N.size?N.size:0,content_type:"",last_modified:C.last_modified||""},onClosePreview:function(){te(!1)}}),ae&&(0,O.jsx)(He,{deleteOpen:ae,closeDeleteModalAndRefresh:function(e){se(!1),e&&(o((0,k.Eq)(!0)),o((0,k.M3)("")),o((0,k.vH)(!0)))},selectedBucket:i,selectedObject:n}),je&&(0,O.jsx)(Ve,{selectedBucket:i,selectedObject:(0,g.IO)(n),deleteOpen:je,selectedVersions:pe,closeDeleteModalAndRefresh:function(e){ge(!1),e&&(o((0,k.Eq)(!0)),o((0,k.M3)("")),o((0,k.vH)(!0)),xe([]))}}),(0,O.jsxs)(b.ZP,{container:!0,className:t.versionsContainer,children:[!C&&(0,O.jsx)(b.ZP,{item:!0,xs:12,children:(0,O.jsx)(Re.Z,{})}),C&&(0,O.jsxs)(r.Fragment,{children:[(0,O.jsx)(b.ZP,{item:!0,xs:12,children:(0,O.jsx)(P,{bucketName:i,internalPaths:(0,g.IO)(n),hidePathButton:!0})}),(0,O.jsx)(b.ZP,{item:!0,xs:12,className:t.screenTitleContainer,children:(0,O.jsx)(p.UHn,{icon:(0,O.jsx)("span",{className:t.listIcon,children:(0,O.jsx)(p.cRd,{})}),title:"".concat(_e.length>0?_e[_e.length-1]:C.name," Versions"),subTitle:(0,O.jsxs)(r.Fragment,{children:[(0,O.jsx)("span",{className:t.detailsSpacer,children:(0,O.jsxs)("strong",{children:[B.length," Version",1===B.length?"":"s","\xa0\xa0\xa0"]})}),(0,O.jsx)("span",{className:t.detailsSpacer,children:(0,O.jsx)("strong",{children:(0,g.l5)(Ne)})})]}),actions:(0,O.jsxs)(r.Fragment,{children:[(0,O.jsx)(U.Z,{tooltip:"Select Multiple Versions",children:(0,O.jsx)(p.zxk,{id:"select-multiple-versions",onClick:function(){ue(!de)},icon:(0,O.jsx)(p.amE,{}),variant:de?"callAction":"regular",style:{marginRight:8}})}),de&&(0,O.jsx)(U.Z,{tooltip:"Delete Selected Versions",children:(0,O.jsx)(p.zxk,{id:"delete-multiple-versions",onClick:function(){ge(!0)},icon:(0,O.jsx)(p.pJl,{}),variant:"secondary",style:{marginRight:8},disabled:0===pe.length})}),(0,O.jsx)(U.Z,{tooltip:"Delete Non Current Versions",children:(0,O.jsx)(p.zxk,{id:"delete-non-current",onClick:function(){se(!0)},icon:(0,O.jsx)(p.utM,{}),variant:"secondary",style:{marginRight:15},disabled:B.length<=1})}),(0,O.jsx)(p.PhF,{id:"sort-by",options:[{label:"Date",value:"date"},{label:"Size",value:"size"}],value:q,label:"Sort by",onChange:function(e){$(e)},noLabelMinWidth:!0})]}),bottomBorder:!1})}),(0,O.jsx)(b.ZP,{item:!0,xs:12,className:t.versionsVirtualPanel,children:C.version_id&&"null"!==C.version_id&&(0,O.jsx)(Je.aV,{style:{width:"100%"},containerStyle:{width:"100%",maxWidth:"100%"},width:1,height:800,rowCount:Te.length,rowHeight:108,rowRenderer:function(e){var t=e.key,n=e.index,i=(e.isScrolling,e.isVisible,e.style),o=B.length-n;return(0,O.jsx)(Ke,{style:i,fileName:(null===C||void 0===C?void 0:C.name)||"",versionInfo:Te[n],index:o,onDownload:we,onRestore:Ce,onShare:Se,onPreview:Ze,globalClick:ye,isSelected:l===Te[n].version_id,checkable:de,onCheck:Fe,isChecked:pe.includes(Te[n].version_id||"")},t)}})})]})]})]})})),$e=n(9859),Xe=function(e){if(e.name.endsWith("/"))return"";var t=x.ou.now(),n=x.ou.fromISO(e.last_modified);return t.hasSame(n,"day")&&t.hasSame(n,"month")&&t.hasSame(n,"year")?"Today, ".concat(n.toFormat("HH:mm")):n.toFormat("ccc, LLL dd yyyy HH:mm (ZZZZ)")},Qe=function(e){return e.name.endsWith("/")||!e.size?"-":(0,g.ae)(String(e.size))},et=[{label:"Name",elementKey:"name",renderFunction:Se,enableSort:!0},{label:"Last Modified",elementKey:"last_modified",renderFunction:Xe,renderFullObject:!0,enableSort:!0},{label:"Size",elementKey:"size",renderFunction:Qe,renderFullObject:!0,width:100,enableSort:!0}],tt=[{label:"Name",elementKey:"name",renderFunction:Se,enableSort:!0},{label:"Object Date",elementKey:"last_modified",renderFunction:Xe,renderFullObject:!0,enableSort:!0},{label:"Size",elementKey:"size",renderFunction:Qe,renderFullObject:!0,width:100,enableSort:!0},{label:"Deleted",elementKey:"delete_flag",renderFunction:function(e){return e?"Yes":"No"},width:60}],nt=n(46078),it=(0,C.Z)((function(e){return(0,c.Z)({browsePaper:{border:0,"@media (max-width: 800px)":{width:800}},parentWrapper:{position:"relative",height:"calc(100% - 60px)","@media (max-width: 800px)":{overflowX:"auto"},"@media (max-width: 1060px)":{height:"calc(100% - 115px)"}},"@global":{".rowLine:hover .iconFileElm":{backgroundImage:"url(/images/ob_file_filled.svg)"},".rowLine:hover .iconFolderElm":{backgroundImage:"url(/images/ob_folder_filled.svg)"}}})})),ot=function(e){var t=e.internalPaths,n=it(),i=(0,d.TL)(),o=(0,s.UO)(),c=(0,s.s0)(),l=(0,r.useState)("ASC"),u=(0,f.Z)(l,2),m=u[0],x=u[1],b=(0,r.useState)("name"),v=(0,f.Z)(b,2),_=v[0],S=v[1],Z=o.bucketName||"",C=(0,a.v9)((function(e){return e.objectBrowser.objectDetailsOpen})),w=(0,a.v9)((function(e){return e.objectBrowser.loadingObjects})),N=(0,a.v9)(nt.$4),F=!(null===N||void 0===N||!N.includes("object-browser-only")),E=(0,a.v9)((function(e){return e.objectBrowser.rewind.rewindEnabled})),I=(0,a.v9)((function(e){return e.objectBrowser.records})),L=(0,a.v9)((function(e){return e.objectBrowser.searchObjects})),B=(0,a.v9)((function(e){return e.objectBrowser.selectedObjects})),P=(0,a.v9)((function(e){return e.objectBrowser.connectionError})),D=(0,a.v9)((function(e){return e.system.anonymousMode})),R=(0,y.F)(Z,[T.Ft.S3_LIST_BUCKET,T.Ft.S3_ALL_LIST_BUCKET]),M=I.filter((function(e){return""===L||e.name.toLowerCase().indexOf(L.toLowerCase())>=0})).sort((0,A.P_)(_)),z=[];z="ASC"===m?M:M.reverse();var U=[{type:"view",label:"View",onClick:function(e){var n,o=e.name||"",r="/browser/".concat(Z).concat(o?"/".concat((0,g.LL)(o)):"");!D||null===t||null!==(n=e.name)&&void 0!==n&&n.endsWith("/")?(i((0,k.S2)([])),c(r),D||(i((0,k.vb)(!0)),i((0,k.Eq)(!0)),i((0,k.d_)(!0))),i((0,k.EE)("".concat(o?"".concat((0,g.LL)(o)):"")))):Le(i,Z,"".concat((0,g.LL)(o)),e)},sendOnlyId:!1}],G=R||D?"This location is empty".concat(E?"":", please try uploading a new file"):(0,T.MK)([T.Ft.S3_LIST_BUCKET,T.Ft.S3_ALL_LIST_BUCKET],"view Objects in this bucket");P&&(G="Objects List unavailable. Please review your WebSockets configuration and try again");var W="calc(100vh - 290px)";return F&&(W="calc(100vh - 315px)"),(0,O.jsx)(p.wQF,{itemActions:U,columns:E?tt:et,isLoading:w,entityName:"Objects",idField:"name",records:z,customPaperHeight:W,selectedItems:B,onSelect:D?void 0:function(e){var t=e.target,n=t.value,o=t.checked,r=(0,h.Z)(B);return o?r.push(n):r=r.filter((function(e){return e!==n})),i((0,k.S2)(r)),i((0,k.EE)(null)),r},customEmptyMessage:G,sortConfig:{currentSort:_,currentDirection:m,triggerSort:function(e){var t=j()(e,"sortDirection","DESC");S(e.sortBy),x(t),i((0,k.Cn)(!0))}},onSelectAll:function(){if(i((0,k.EE)(null)),B.length!==z.length){var e=z.map((function(e){return e.name}));i((0,k.S2)(e))}else i((0,k.S2)([]))},rowStyle:function(e){var t,n=e.index;return null!==(t=z[n])&&void 0!==t&&t.delete_flag?"deleted":""},parentClassName:n.parentWrapper,sx:{minHeight:C?"100%":"initial"},noBackground:!0})},rt=n(96382),at=(0,rt.hg)("objectBrowser/downloadSelected",function(){var e=(0,Te.Z)((0,ye.Z)().mark((function e(t,n){var i,o,r,a,s,c;return(0,ye.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=n.getState,n.rejectWithValue,o=n.dispatch,r=i(),a=function(e){var n=(0,g.LL)("".concat(t,"-").concat(e.name,"-").concat((new Date).getTime(),"-").concat(Math.random())),i=(0,Oe.YO)(8),r=(0,A.LR)(t,(0,g.LL)(e.name),e.version_id,e.size,null,i,(function(e){o((0,k.RO)({instanceID:n,progress:e}))}),(function(){o((0,k.oK)(n))}),(function(e){o((0,k.qJ)({instanceID:n,msg:e}))}),(function(){o((0,k.Im)(n))}),(function(){o((0,F.y1)("File download will be handled directly by the browser."))}));(0,Oe.EN)(i,r),o((0,k.Mc)({ID:i,bucketName:t,done:!1,instanceID:n,percentage:0,prefix:e.name,type:"download",waitingForFile:!0,failed:!1,cancelled:!1,errorMessage:""}))},0===r.objectBrowser.selectedObjects.length){e.next=12;break}if(s=[],c=function(e){return r.objectBrowser.selectedObjects.includes(e.name)},1!==(s=r.objectBrowser.records.filter(c)).length){e.next=11;break}if(!(s[0].name.length>200&&(0,g.mv)().toLowerCase().includes("win"))){e.next=11;break}return o((0,k.$y)(s[0])),e.abrupt("return");case 11:s.forEach((function(e){a(e)}));case 12:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),st=(0,rt.hg)("objectBrowser/openPreview",function(){var e=(0,Te.Z)((0,ye.Z)().mark((function e(t,n){var i,o,r,a,s;return(0,ye.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:i=n.getState,n.rejectWithValue,o=n.dispatch,1===(r=i()).objectBrowser.selectedObjects.length&&(s=function(e){return r.objectBrowser.selectedObjects.includes(e.name)},(a=r.objectBrowser.records.find(s))&&(o((0,k.eP)(a)),o((0,k.ei)(!0))));case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),ct=(0,rt.hg)("objectBrowser/openShare",function(){var e=(0,Te.Z)((0,ye.Z)().mark((function e(t,n){var i,o,r,a,s;return(0,ye.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:i=n.getState,n.rejectWithValue,o=n.dispatch,1===(r=i()).objectBrowser.selectedObjects.length&&(s=function(e){return r.objectBrowser.selectedObjects.includes(e.name)},(a=r.objectBrowser.records.find(s))&&(o((0,k.eP)(a)),o((0,k.Qf)(!0))));case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),lt=(0,rt.hg)("objectBrowser/openAnonymousAccess",function(){var e=(0,Te.Z)((0,ye.Z)().mark((function e(t,n){var i,o,r;return(0,ye.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:i=n.getState,o=n.dispatch,1===(r=i()).objectBrowser.selectedObjects.length&&r.objectBrowser.selectedObjects[0].endsWith("/")&&o((0,k.xV)(!0));case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),dt=n(59114),ut=function(){var e=(0,d.TL)(),t=(0,a.v9)((function(e){return e.objectBrowser.searchObjects}));return(0,O.jsx)(dt.Z,{placeholder:"Start typing to filter objects in the bucket",onChange:function(t){e((0,k.G4)(t))},value:t})},ht=n(94619),ft=(0,N.Z)(r.lazy((function(){return n.e(711).then(n.bind(n,50711))}))),mt=(0,N.Z)(r.lazy((function(){return Promise.resolve().then(n.bind(n,34433))}))),pt=(0,N.Z)(r.lazy((function(){return Promise.all([n.e(7847),n.e(6901)]).then(n.bind(n,26901))}))),xt=(0,N.Z)(r.lazy((function(){return Promise.resolve().then(n.bind(n,78562))}))),bt=(0,C.Z)((function(e){return(0,c.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)({badgeOverlap:{"& .MuiBadge-badge":{top:10,right:1,width:5,height:5,minWidth:5}}},u.VX),u.OR),u.qg),{},{searchField:(0,o.Z)((0,o.Z)({},u.qg.searchField),{},{maxWidth:380}),screenTitleContainer:{border:"#EAEDEE 1px solid",padding:"0 5px"},labelStyle:{color:"#969FA8",fontSize:"12px"},breadcrumbsContainer:{padding:"12px 14px 5px"},fullContainer:{width:"100%",position:"relative","&.detailsOpen":{"@media (max-width: 799px)":{display:"none"}}},hideListOnSmall:{"@media (max-width: 799px)":{display:"none"}},actionsSection:{display:"flex",justifyContent:"space-between",width:"100%"}},u.C4),u.cx),u.Bz))})),vt={borderWidth:2,borderRadius:2,borderColor:"#eeeeee",outline:"none"},jt={borderStyle:"dashed",backgroundColor:"#fafafa",borderColor:"#2196f3"},gt={borderStyle:"dashed",backgroundColor:"#fafafa",borderColor:"#00e676"},_t=function(){var e,t=bt(),n=(0,d.TL)(),i=(0,s.UO)(),c=(0,s.s0)(),l=(0,s.TH)(),u=(0,a.v9)((function(e){return e.objectBrowser.rewind.rewindEnabled})),v=(0,a.v9)((function(e){return e.objectBrowser.rewind.bucketToRewind})),S=(0,a.v9)((function(e){return e.objectBrowser.versionsMode})),Z=(0,a.v9)((function(e){return e.objectBrowser.showDeleted})),C=(0,a.v9)((function(e){return e.objectBrowser.objectDetailsOpen})),w=(0,a.v9)((function(e){return e.objectBrowser.selectedInternalPaths})),N=(0,a.v9)((function(e){return e.objectBrowser.loadingObjects})),L=(0,a.v9)((function(e){return e.objectBrowser.simplePath})),B=(0,a.v9)((function(e){return e.objectBrowser.versionInfo})),D=(0,a.v9)((function(e){return e.objectBrowser.lockingEnabled})),R=(0,a.v9)((function(e){return e.objectBrowser.downloadRenameModal})),M=(0,a.v9)((function(e){return e.objectBrowser.selectedPreview})),z=(0,a.v9)((function(e){return e.objectBrowser.shareFileModalOpen})),W=(0,a.v9)((function(e){return e.objectBrowser.previewOpen})),H=(0,a.v9)((function(e){return e.objectBrowser.selectedBucket})),V=(0,a.v9)((function(e){return e.system.anonymousMode})),J=(0,a.v9)((function(e){return e.objectBrowser.anonymousAccessOpen})),Y=(0,a.v9)($e.HQ),q=(0,a.v9)($e.G6),$=(0,r.useState)(!1),X=(0,f.Z)($,2),Q=X[0],ee=X[1],te=(0,r.useState)(!1),ne=(0,f.Z)(te,2),ie=ne[0],ae=ne[1],se=(0,r.useState)(!1),ce=(0,f.Z)(se,2),de=ce[0],ue=ce[1],he=(0,r.useState)(!1),fe=(0,f.Z)(he,2),me=fe[0],pe=fe[1],xe=(0,r.useState)(!1),be=(0,f.Z)(xe,2),ve=be[0],je=be[1],ge=(0,r.useState)(null),_e=(0,f.Z)(ge,2),Se=_e[0],Ze=_e[1],Ce=(0,r.useState)(null),we=(0,f.Z)(Ce,2),ye=we[0],Te=we[1],Ne=(0,r.useState)(!1),Fe=(0,f.Z)(Ne,2),ke=Fe[0],Ee=Fe[1],Ie=le(B.status),Le=i.bucketName||"",Be=l.pathname.split("/browser/".concat(Le,"/")),Ae=2===Be.length?Be[1]:"",Re=(0,g.IO)(Ae),Me=Re.split("/").filter((function(e){return""!==e})),ze=[Le];Me.length>0&&(ze=ze.concat(Me));var Ue=(0,r.useRef)(null),We=(0,r.useRef)(null),Ke=(0,a.v9)((function(e){return e.console.session&&e.console.session.permissions||{}})),He=[T.Ft.S3_PUT_OBJECT,T.Ft.S3_PUT_ACTIONS],Ve=ze.join("/"),Je=function(e,t){var n=I(e,t,arguments.length>2&&void 0!==arguments[2]?arguments[2]:[]).reduce((function(e,t){var n=E(t);return n&&e.push(".".concat(n)),e}),[]);return(0,h.Z)(new Set(n)).join(",")}(Ke,Ve,He),Ye=I(Ke,Ve,He),Xe=(0,y.F)([Ve].concat((0,h.Z)(Ye)),[T.Ft.S3_GET_OBJECT,T.Ft.S3_GET_ACTIONS]),Qe=(0,y.F)([Ve].concat((0,h.Z)(Ye)),[T.Ft.S3_DELETE_OBJECT]),et=(0,y.F)([Ve].concat((0,h.Z)(Ye)),He)||V,tt=(0,y.F)(Le,[T.Ft.S3_GET_BUCKET_POLICY,T.Ft.S3_PUT_BUCKET_POLICY,T.Ft.S3_GET_ACTIONS,T.Ft.S3_PUT_ACTIONS]),nt=(0,a.v9)((function(e){return e.objectBrowser.selectedObjects})),it=(0,r.useCallback)((function(){var e=nt[0];if(!ke){var t=(0,g.LL)(e);oe.h.buckets.getObjectMetadata(Le,{prefix:t}).then((function(e){var t=j()(e.data,"objectMetadata",{});Ee(!0),Te(t)})).catch((function(e){console.error("Error Getting Metadata Status: ",e,null===e||void 0===e?void 0:e.detailedError),Ee(!0)}))}}),[Le,nt,ke]);(0,r.useEffect)((function(){Le&&1===nt.length&&it()}),[Le,nt,it]),(0,r.useEffect)((function(){n((0,k.G4)("")),n((0,k.Cn)(!0)),n((0,k.S2)([]))}),[L,n]),(0,r.useEffect)((function(){u&&v!==Le&&n((0,k._w)())}),[u,v,Le,n]),(0,r.useEffect)((function(){null!==We.current&&(We.current.setAttribute("directory",""),We.current.setAttribute("webkitdirectory",""))}),[We]),(0,r.useEffect)((function(){if(1===nt.length){var e=nt[0],t=(0,A.s7)(ye,e);je(!("none"===t||!Xe)),e.endsWith("/")||Xe?pe(!0):pe(!1)}else pe(!1),je(!1)}),[nt,Xe,ye]),(0,r.useEffect)((function(){Se||V||oe.h.buckets.getBucketQuota(Le).then((function(e){var t=null;e.data.quota&&(t=e.data),Ze(t)})).catch((function(e){console.error("Error Getting Quota Status: ",e.error.detailedMessage),Ze(null)}))}),[Se,Le,V]),(0,r.useEffect)((function(){nt.length>0?n((0,k.vb)(!0)):0!==nt.length||null!==w||N||n((0,k.vb)(!1))}),[nt,w,n,N]),(0,r.useEffect)((function(){de||(n((0,$e.d5)(!0)),ue(!0))}),[de,n,ue]),(0,r.useEffect)((function(){!N&&!Y||V||oe.h.buckets.bucketInfo(Le).then((function(e){n((0,$e.d5)(!1)),n((0,$e.f4)(e.data)),n((0,k.RS)(Le))})).catch((function(e){n((0,$e.d5)(!1)),n((0,F.Ih)((0,re.g)(e)))}))}),[Le,Y,n,V,N]),(0,r.useEffect)((function(){""!==H&&oe.h.buckets.getBucketRetentionConfig(H).then((function(e){n((0,k.c8)(e.data))})).catch((function(){n((0,k.c8)(null))}))}),[H,n]);var rt=function(e){if(null!==e&&void 0!==e&&null!==e.target.files&&void 0!==e.target.files){e.preventDefault();for(var t=[],n=0;n1,Z="An error occurred while uploading the file".concat(S?"s":"","."),C={413:"Error - File size too large"};_.withCredentials=!1,_.onload=function(e){if(_.status>=200&&_.status<300)n((0,k.oK)(v)),a({status:_.status}),(0,Oe.GM)(p);else{if(C[_.status])Z=C[_.status];else if(_.response)try{var t=JSON.parse(_.response);Z=t.detailedMessage}catch(i){Z="something went wrong"}n((0,k.qJ)({instanceID:v,msg:Z})),s({status:_.status,message:Z}),(0,Oe.GM)(p)}},_.upload.addEventListener("error",(function(e){s(Z),n((0,k.qJ)({instanceID:v,msg:"A network error occurred."}))})),_.upload.addEventListener("progress",(function(e){var t=Math.floor(100*e.loaded/e.total);n((0,k.RO)({instanceID:v,progress:t}))})),_.onerror=function(){s(Z),n((0,k.qJ)({instanceID:v,msg:"A network error occurred."}))},_.onloadend=function(){0===e.length&&n((0,k.Cn)(!0))},_.onabort=function(){n((0,k.Im)(v))};var w=new FormData;void 0!==r.size&&(w.append(r.size.toString(),d,l),(0,Oe.EN)(p,_),n((0,k.Mc)({ID:p,bucketName:t,done:!1,instanceID:v,percentage:0,prefix:"".concat((0,g.IO)(u)).concat(l),type:"upload",waitingForFile:!1,failed:!1,cancelled:!1,errorMessage:""})),(0,Oe.N5)(p,w))}))},a=[];n((0,k.LD)());for(var s=0;s0){var i=a.length,o=a.length-t.length,r={errorMessage:"There were some errors during file upload",detailedError:"Uploaded files ".concat(o,"/").concat(i)};n((0,F.Ih)(r))}n((0,k.Cn)(!0)),n((0,k.S2)([]))}))}(e,Le,i,t)}),[Le,n,L,V]),_t=(0,r.useCallback)((function(e){if(e&&e.length>0&&et){var t,i,o=e[0].path,r=[];if((r=Je.length>0?e.filter((function(e){var t=E(e.name);return Je.includes(t)})):e).length)dt(r,o),(t=console).log.apply(t,["".concat(r.length," Allowed Files Processed out of ").concat(e.length,"."),Ve].concat((0,h.Z)(Ye))),r.length!==e.length&&n((0,F.Ih)({errorMessage:"Upload is restricted.",detailedError:(0,T.MK)([T.Ft.S3_PUT_OBJECT,T.Ft.S3_PUT_ACTIONS],"upload objects to this location")}));else n((0,F.Ih)({errorMessage:"Could not process drag and drop.",detailedError:(0,T.MK)([T.Ft.S3_PUT_OBJECT,T.Ft.S3_PUT_ACTIONS],"upload objects to this location")})),(i=console).error.apply(i,["Could not process drag and drop . upload may be restricted.",Ve].concat((0,h.Z)(Ye)))}et||n((0,F.Ih)({errorMessage:"Upload not allowed",detailedError:(0,T.MK)([T.Ft.S3_PUT_OBJECT,T.Ft.S3_PUT_ACTIONS],"upload objects to this location")}))}),[dt]),St=(0,m.uI)({noClick:!0,onDrop:_t}),Zt=St.getRootProps,Ct=St.getInputProps,wt=St.isDragActive,yt=St.isDragAccept,Tt=(0,r.useMemo)((function(){return(0,o.Z)((0,o.Z)((0,o.Z)({},vt),wt?jt:{}),yt?gt:{})}),[wt,yt]),Nt=function(e){if(n((0,k.EE)(null)),n((0,k.db)({status:!1})),C&&null!==w){var t=(0,g.IO)(Ae).split("/");t.pop();var i="";t&&t.length>0&&(i="".concat(t.join("/"),"/")),c("/browser/".concat(Le,"/").concat((0,g.LL)(i)))}n((0,k.vb)(!1)),n((0,k.S2)([])),e&&n((0,k.Cn)(!0))},Ft=x.ou.now();null!==q&&void 0!==q&&q.creation_date&&(Ft=x.ou.fromISO(q.creation_date));var kt=[{action:function(){n(at(Le))},label:"Download",disabled:!Xe||0===(null===nt||void 0===nt?void 0:nt.length),icon:(0,O.jsx)(p._8t,{}),tooltip:Xe?"Download Selected":(0,T.MK)([T.Ft.S3_GET_OBJECT,T.Ft.S3_GET_ACTIONS],"download objects from this bucket")},{action:function(){n(ct())},label:"Share",disabled:1!==nt.length||!me,icon:(0,O.jsx)(p.aAc,{}),tooltip:me?"Share Selected File":"Sharing unavailable"},{action:function(){n(st())},label:"Preview",disabled:1!==nt.length||!ve,icon:(0,O.jsx)(p.P99,{}),tooltip:ve?"Preview Selected File":"Preview unavailable"},{action:function(){n(lt())},label:"Anonymous Access",disabled:1!==nt.length||!nt[0].endsWith("/")||!tt,icon:(0,O.jsx)(p.cuP,{}),tooltip:1===nt.length&&nt[0].endsWith("/")?"Set Anonymous Access to this Folder":"Anonymous Access unavailable"},{action:function(){ee(!0)},label:"Delete",icon:(0,O.jsx)(p.pJl,{}),disabled:!Qe||0===nt.length,tooltip:Qe?"Delete Selected Files":(0,T.MK)([T.Ft.S3_DELETE_OBJECT],"delete objects in this bucket")}];return(0,O.jsxs)(r.Fragment,{children:[z&&M&&(0,O.jsx)(mt,{open:z,closeModalAndRefresh:function(){n((0,k.Qf)(!1)),n((0,k.eP)(null))},bucketName:Le,dataObject:{name:M.name,last_modified:"",version_id:M.version_id}}),Q&&(0,O.jsx)(ft,{deleteOpen:Q,selectedBucket:Le,selectedObjects:nt,closeDeleteModalAndRefresh:function(e){ee(!1),e&&(n((0,F.y1)("Objects deleted successfully.")),n((0,k.S2)([])),n((0,k.Cn)(!0)))},versioning:B}),ie&&(0,O.jsx)(pt,{open:ie,closeModalAndRefresh:function(){ae(!1)},bucketName:Le}),W&&(0,O.jsx)(xt,{open:W,bucketName:Le,object:M,onClosePreview:function(){n((0,k.ei)(!1)),n((0,k.eP)(null))}}),!!R&&(0,O.jsx)(Pe,{open:!!R,closeModal:function(){n((0,k.$y)(null))},currentItem:(null===(e=R.name.split("/"))||void 0===e?void 0:e.pop())||"",bucketName:Le,internalPaths:Ae,actualInfo:{name:R.name,last_modified:"",version_id:R.version_id,size:R.size}}),J&&(0,O.jsx)(ht.default,{onClose:function(){n((0,k.xV)(!1))},bucket:Le,modalOpen:J,prefilledRoute:"".concat(nt[0],"*")}),(0,O.jsxs)(p.Xgh,{variant:"full",children:[V&&(0,O.jsx)("div",{style:{paddingBottom:16},children:(0,O.jsx)(ut,{})}),(0,O.jsx)(b.ZP,{item:!0,xs:12,className:t.screenTitleContainer,children:(0,O.jsx)(p.UHn,{icon:(0,O.jsx)("span",{children:(0,O.jsx)(p.wNb,{style:{width:30}})}),title:Le,subTitle:V?null:(0,O.jsxs)(r.Fragment,{children:[(0,O.jsxs)("span",{className:t.detailsSpacer,children:["Created on:\xa0\xa0",(0,O.jsx)("strong",{children:null!==q&&void 0!==q&&q.creation_date?Ft.toFormat("ccc, LLL dd yyyy HH:mm:ss (ZZZZ)"):""})]}),(0,O.jsxs)("span",{className:t.detailsSpacer,children:["Access:\xa0\xa0\xa0",(0,O.jsx)("strong",{children:(null===q||void 0===q?void 0:q.access)||""})]}),q&&(0,O.jsx)(r.Fragment,{children:(0,O.jsxs)("span",{className:t.detailsSpacer,children:[q.size&&(0,O.jsx)(r.Fragment,{children:(0,g.l5)(q.size)}),q.size&&Se&&(0,O.jsxs)(r.Fragment,{children:[" ","/ ",(0,g.l5)(Se.quota||0)]}),q.size&&q.objects?" - ":"",q.objects&&(0,O.jsxs)(r.Fragment,{children:[q.objects,"\xa0Object",q.objects&&1!==q.objects?"s":""]})]})})]}),actions:(0,O.jsxs)(r.Fragment,{children:[!V&&(0,O.jsx)(U.Z,{tooltip:"Rewind Bucket",children:(0,O.jsx)(p.zxk,{id:"rewind-objects-list",label:"Rewind",icon:(0,O.jsx)(_.Z,{badgeContent:" ",color:"secondary",variant:"dot",invisible:!u,className:t.badgeOverlap,sx:{height:16},children:(0,O.jsx)(p.F_y,{style:{minWidth:16,minHeight:16,width:16,height:16,marginTop:-3}})}),variant:"regular",onClick:function(){ae(!0)},disabled:!Ie||!(0,y.F)(Le,[T.Ft.S3_GET_OBJECT,T.Ft.S3_GET_ACTIONS])})}),(0,O.jsx)(U.Z,{tooltip:"Reload List",children:(0,O.jsx)(p.zxk,{id:"refresh-objects-list",label:"Refresh",icon:(0,O.jsx)(p.DuK,{}),variant:"regular",onClick:function(){S?n((0,k.Eq)(!0)):(n((0,k.o_)()),n((0,k._D)(!0)),n((0,k.Cn)(!0)))},disabled:!V&&(!(0,y.F)(Le,[T.Ft.S3_LIST_BUCKET,T.Ft.S3_ALL_LIST_BUCKET])||u)})}),(0,O.jsx)("input",{type:"file",multiple:!0,accept:Je||void 0,onChange:rt,style:{display:"none"},ref:Ue}),(0,O.jsx)("input",{type:"file",multiple:!0,onChange:rt,style:{display:"none"},ref:We}),(0,O.jsx)(G,{bucketName:Le,uploadPath:Ve,uploadFileFunction:function(e){Ue&&Ue.current&&Ue.current.click(),e()},uploadFolderFunction:function(e){We&&We.current&&We.current.click(),e()}})]}),bottomBorder:!1})}),(0,O.jsxs)("div",(0,o.Z)((0,o.Z)({id:"object-list-wrapper"},Zt({style:(0,o.Z)({},Tt)})),{},{children:[(0,O.jsx)("input",(0,o.Z)({},Ct())),(0,O.jsxs)(b.ZP,{item:!0,xs:12,className:t.tableBlock,sx:{border:"#EAEDEE 1px solid",borderTop:0},children:[S?(0,O.jsx)(r.Fragment,{children:null!==w&&(0,O.jsx)(qe,{internalPaths:w,bucketName:Le})}):(0,O.jsx)(y.s,{scopes:[T.Ft.S3_LIST_BUCKET,T.Ft.S3_ALL_LIST_BUCKET],resource:Le,errorProps:{disabled:!0},children:(0,O.jsxs)(b.ZP,{item:!0,xs:12,className:"".concat(t.fullContainer," ").concat(C?"detailsOpen":""," "),children:[!V&&(0,O.jsx)(b.ZP,{item:!0,xs:12,className:t.breadcrumbsContainer,children:(0,O.jsx)(P,{bucketName:Le,internalPaths:Re,additionalOptions:!Ie||u?null:(0,O.jsx)("div",{children:(0,O.jsx)(Ge.Z,{name:"deleted_objects",id:"showDeletedObjects",value:"deleted_on",label:"Show deleted objects",onChange:function(){n((0,k.o_)()),n((0,k.mz)(!Z)),Nt(!0)},checked:Z,overrideLabelClasses:t.labelStyle,className:t.overrideShowDeleted,noTopMargin:!0})}),hidePathButton:!1})}),(0,O.jsx)(ot,{internalPaths:w})]})}),!V&&(0,O.jsx)(y.s,{scopes:[T.Ft.S3_LIST_BUCKET,T.Ft.S3_ALL_LIST_BUCKET],resource:Le,errorProps:{disabled:!0},children:(0,O.jsxs)(K,{open:C,closePanel:function(){Nt(!1)},className:"".concat(S?t.hideListOnSmall:""),children:[nt.length>0&&(0,O.jsx)(p.Wk,{items:kt,title:"Selected Objects:"}),null!==w&&(0,O.jsx)(De,{internalPaths:w,bucketName:Le,onClosePanel:Nt,versioningInfo:B,locking:D})]})})]})]}))]})]})},St=n(49535),Zt=n(26824),Ct=n(73996),wt=n(47974),yt=n(4677),Tt=n(99670),Nt=function(e){var t=e.bucketName,n=(0,d.TL)(),i=(0,a.v9)(nt.$4),o=(0,a.v9)((function(e){return e.objectBrowser.versionsMode})),c=(0,a.v9)((function(e){return e.objectBrowser.versionedFile})),l=(0,a.v9)((function(e){return e.objectBrowser.searchVersions})),u=!(null===i||void 0===i||!i.includes("object-browser-only")),h=(0,s.s0)(),f=(0,St.Z)(t,[T.Ft.S3_GET_BUCKET_POLICY,T.Ft.S3_PUT_BUCKET_POLICY,T.Ft.S3_GET_BUCKET_VERSIONING,T.Ft.S3_PUT_BUCKET_VERSIONING,T.Ft.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,T.Ft.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,T.Ft.S3_DELETE_BUCKET,T.Ft.S3_GET_BUCKET_NOTIFICATIONS,T.Ft.S3_PUT_BUCKET_NOTIFICATIONS,T.Ft.S3_GET_REPLICATION_CONFIGURATION,T.Ft.S3_PUT_REPLICATION_CONFIGURATION,T.Ft.S3_GET_LIFECYCLE_CONFIGURATION,T.Ft.S3_PUT_LIFECYCLE_CONFIGURATION,T.Ft.ADMIN_GET_BUCKET_QUOTA,T.Ft.ADMIN_SET_BUCKET_QUOTA,T.Ft.S3_PUT_BUCKET_TAGGING,T.Ft.S3_GET_BUCKET_TAGGING,T.Ft.S3_LIST_BUCKET_VERSIONS,T.Ft.S3_GET_BUCKET_POLICY_STATUS,T.Ft.S3_DELETE_BUCKET_POLICY,T.Ft.S3_GET_ACTIONS,T.Ft.S3_PUT_ACTIONS]),m=(0,O.jsx)(r.Fragment,{children:o?(0,O.jsx)(r.Fragment,{children:(0,O.jsx)(dt.Z,{placeholder:"Start typing to filter versions of ".concat(c),onChange:function(e){n((0,k.Pr)(e))},value:l})}):(0,O.jsx)(y.s,{scopes:[T.Ft.S3_LIST_BUCKET,T.Ft.S3_ALL_LIST_BUCKET],resource:t,errorProps:{disabled:!0},children:(0,O.jsx)(ut,{})})});return(0,r.useEffect)((function(){n((0,F.Sc)("object_browser"))}),[]),(0,O.jsx)(r.Fragment,{children:u?(0,O.jsxs)(p.rjZ,{container:!0,sx:{padding:"20px 32px 0"},children:[(0,O.jsx)(p.rjZ,{children:(0,O.jsx)(Ct.Z,{marginRight:30,marginTop:10})}),(0,O.jsxs)(p.rjZ,{item:!0,xs:!0,sx:{display:"flex",gap:10},children:[m,(0,O.jsx)(yt.Z,{})]})]}):(0,O.jsx)(wt.Z,{label:(0,O.jsx)(p.hbI,{label:"Object Browser",onClick:function(){h(T.gA.OBJECT_BROWSER_VIEW)}}),actions:(0,O.jsxs)(r.Fragment,{children:[(0,O.jsx)(y.s,{scopes:T.D[T.EI.BUCKET_ADMIN],resource:t,errorProps:{disabled:!0},children:(0,O.jsx)(U.Z,{tooltip:f?"Configure Bucket":"You do not have the required permissions to configure this bucket. Please contact your MinIO administrator to request "+T.EI.BUCKET_ADMIN+" permisions.",children:(0,O.jsx)(p.zxk,{id:"configure-bucket-main",color:"primary","aria-label":"Configure Bucket",onClick:function(){return h("/buckets/".concat(t,"/admin"))},icon:(0,O.jsx)(p.ewm,{style:{width:20,height:20,marginTop:-3}}),style:{padding:"0 10px"}})})}),(0,O.jsx)(Tt.Z,{})]}),middleComponent:m})})},Ft=0,kt=0,Et=!1,It=function e(t,n,o){if(!Et){Et=!0;var r=new URL(window.location.toString()),a=r.port,s=new URL(document.baseURI).pathname,c=(0,Zt.x2)(r.protocol);(i=new WebSocket("".concat(c,"://").concat(r.hostname,":").concat(a).concat(s,"ws/objectManager"))).onopen=function(){Et=!1,t&&t(),kt=0},n&&(i.onmessage=n);var l=function(){kt<=5?(e((function(){}),n,o),kt+=1):(console.error("Websocket not available. Please review that your environment settings are enabled to allow websocket connections and that requests are made from the same origin."),o&&o("Couldn't establish WebSocket connection. Please review your configuration and try again."))};i.onclose=function(){Et=!1,console.warn("Websocket Disconnected. Attempting Reconnection..."),setTimeout(l,3e3)},i.onerror=function(){Et=!1,console.error("Error in websocket connection. Attempting reconnection...")}}},Ot=(0,l.Z)((function(e){return(0,c.Z)((0,o.Z)({},u.Bz))}))((function(){var e=(0,d.TL)(),t=(0,s.UO)(),n=(0,s.TH)(),o=(0,a.v9)((function(e){return e.objectBrowser.loadingVersioning})),c=(0,a.v9)((function(e){return e.objectBrowser.rewind.rewindEnabled})),l=(0,a.v9)((function(e){return e.objectBrowser.rewind.dateToRewind})),u=(0,a.v9)((function(e){return e.objectBrowser.showDeleted})),h=(0,a.v9)((function(e){return e.console.session.allowResources})),f=(0,a.v9)((function(e){return e.objectBrowser.loadingObjects})),m=(0,a.v9)((function(e){return e.objectBrowser.loadingLocking})),p=(0,a.v9)((function(e){return e.objectBrowser.loadRecords})),x=(0,a.v9)((function(e){return e.objectBrowser.selectedInternalPaths})),b=(0,a.v9)((function(e){return e.objectBrowser.simplePath})),v=(0,a.v9)((function(e){return e.objectBrowser.isOpeningObjectDetail})),j=(0,a.v9)((function(e){return e.system.anonymousMode})),_=t.bucketName||"",S=n.pathname.split("/browser/".concat(_,"/")),Z=2===S.length?S[1]:"",C=(0,r.useCallback)((function(t){e((0,k.Cn)(!1));var n=JSON.parse(t.data.toString());if(Ft===n.request_id){if(n.request_id!==Ft)return;if("The Access Key Id you provided does not exist in our records."===n.error)window.location.reload();else if("Access Denied."===n.error){var i=n.prefix,o="";if(i){var r=(0,g.IO)(i);o=r.endsWith("/")?r:r+"/"}var a=(0,A.kh)(n.bucketName||_,o,h||[]);return void(a&&0!==a.length?e((0,k.ZJ)(a)):e((0,F.Ih)({errorMessage:n.error,detailedError:n.error})))}if(n.request_end)return e((0,k.Cn)(!1)),void e((0,k._D)(!1));n.data&&e((0,k.rW)(n.data))}}),[e,h,_]),w=(0,r.useCallback)((function(t,n){if(i&&1===i.readyState)try{var o=Ft+1;e((0,k.o_)()),e((0,k.ZR)(!1));var r={bucket_name:_,prefix:(0,g.LL)(t),mode:c||u?"rewind":"objects",date:n.toISOString(),request_id:o};i.send(JSON.stringify(r)),Ft=o}catch(a){console.error(a)}else{It((function(){w(t,n)}),C,(function(t){e((0,F.Ih)({errorMessage:t,detailedError:t})),e((0,k.ZR)(!0))}))}}),[_,c,u,e,C]);(0,r.useEffect)((function(){return function(){var e={mode:"cancel",request_id:Ft};i&&1===i.readyState&&i.send(JSON.stringify(e))}}),[]),(0,r.useEffect)((function(){var t=(0,g.IO)(Z);e((0,k.IJ)(!0)),t.endsWith("/")||""===t?(e((0,k.vb)(!1)),e((0,k.EE)(null)),e((0,k.Su)(""===t?"/":t)),e((0,k.Jn)(!0))):(e((0,k.vH)(!0)),e((0,k.vb)(!0)),e((0,k.Eq)(!0)),e((0,k.EE)("".concat(t?"".concat((0,g.LL)(t)):""))),e((0,k.Su)("".concat(t.split("/").slice(0,-1).join("/"),"/"))))}),[_,Z,l,c,e]),(0,r.useEffect)((function(){if(!f&&!p&&!c&&!v){var t=(0,g.IO)(Z);if(!t.endsWith("/")&&b!==t&&""!==t){(0,k._D)(!0);var n="".concat(t.split("/").slice(0,-1).join("/"),"/");w(n,new Date)}}e((0,k.d_)(!1))}),[f,p,e,Z,w,c,b]);var y=(0,St.Z)(_,[T.Ft.S3_LIST_BUCKET,T.Ft.S3_ALL_LIST_BUCKET])||j;return(0,r.useEffect)((function(){if(f&&y){var t="";if(Z){var n=(0,g.IO)(Z);t=x===Z?"".concat((0,g.IO)(Z).split("/").slice(0,-1).join("/"),"/"):n.endsWith("/")?n:n+"/"}var i=new Date;c&&l&&(i=new Date(l)),w(t,i)}else e((0,k.Cn)(!1))}),[f,Z,e,l,c,y,w]),(0,r.useEffect)((function(){e((0,k.db)({status:!1}))}),[Z,e]),(0,r.useEffect)((function(){o&&!j&&(y?oe.h.buckets.getBucketVersioning(_).then((function(t){e((0,k.lS)(t.data)),e((0,k.IJ)(!1))})).catch((function(t){console.error("Error Getting Object Versioning Status: ",t.error.detailedMessage),e((0,k.IJ)(!1))})):(e((0,k.IJ)(!1)),e((0,k.o_)())))}),[_,o,e,y,j]),(0,r.useEffect)((function(){m&&(y?oe.h.buckets.getBucketObjectLockingStatus(_).then((function(t){e((0,k.lY)(t.data.object_locking_enabled)),e((0,k.Jn)(!1))})).catch((function(t){console.error("Error Getting Object Locking Status: ",t.error.detailedMessage),e((0,k.Jn)(!1))})):(e((0,k.o_)()),e((0,k.Jn)(!1))))}),[_,m,e,y]),(0,r.useEffect)((function(){var t=(0,A.kh)(_,"",h||[]);if(_&&(!t||0===t.length)){e((0,k.o_)()),e((0,k._D)(!0)),e((0,k.Cn)(!0));var n="";if(Z){var i=(0,g.IO)(Z);n=x===Z?"".concat((0,g.IO)(Z).split("/").slice(0,-1).join("/"),"/"):i.endsWith("/")?i:i+"/"}w(n,new Date)}}),[_,e,w,h,Z,x]),(0,O.jsxs)(r.Fragment,{children:[!j&&(0,O.jsx)(Nt,{bucketName:_}),(0,O.jsx)(_t,{})]})}))},34433:function(e,t,n){n.r(t),n.d(t,{default:function(){return Z}});var i=n(29439),o=n(72791),r=n(78687),a=n(29945),s=n(78029),c=n.n(s),l=n(40986),d=n(56028),u=n(1413),h=n(99779),f=n(11135),m=n(25787),p=n(23814),x=n(80184),b=(0,m.Z)((function(e){return(0,f.Z)((0,u.Z)((0,u.Z)((0,u.Z)({},p.YI),p.Hr),{},{labelContainer:{display:"flex",alignItems:"center",marginBottom:15},fieldContainer:(0,u.Z)((0,u.Z)({},p.YI.fieldContainer),{},{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:10,marginTop:11,marginBottom:6}),durationInputs:{display:"flex",alignItems:"flex-start",justifyContent:"flex-start",gap:10},validityIndicator:{display:"flex",alignItems:"center",justifyContent:"flex-start",marginTop:25,marginLeft:10},invalidDurationText:{marginTop:15,display:"flex",color:"red",fontSize:11},reverseInput:{flexFlow:"row-reverse","& > label":{fontWeight:400,marginLeft:15,marginRight:25}},validityText:{fontSize:14,marginTop:15,display:"flex",alignItems:"center",justifyContent:"center","@media (max-width: 900px)":{flexFlow:"column"},"& > .min-icon":{color:"#5E5E5E",width:15,height:15,marginRight:10}},validTill:{fontWeight:"bold",marginLeft:15}}))}))((function(e){var t=e.classes,n=e.id,r=e.initialDate,s=e.label,c=e.maxDays,l=e.entity,d=e.onChange,u=(0,o.useState)(7),f=(0,i.Z)(u,2),m=f[0],p=f[1],b=(0,o.useState)(0),v=(0,i.Z)(b,2),j=v[0],g=v[1],_=(0,o.useState)(0),S=(0,i.Z)(_,2),Z=S[0],C=S[1],w=(0,o.useState)(!0),y=(0,i.Z)(w,2),T=y[0],N=y[1],F=(0,o.useState)(h.ou.now()),k=(0,i.Z)(F,2),E=k[0],I=k[1];(0,o.useEffect)((function(){isNaN(j)||isNaN(m)||isNaN(Z)||I(function(e,t,n,i){return h.ou.fromJSDate(e).plus({days:t,hours:n,minutes:i})}(r,m,j,Z))}),[r,m,j,Z]),(0,o.useEffect)((function(){if(T){var e=E.toFormat("yyyy-MM-dd HH:mm:ss");d(e.split(" ").join("T"),!0)}else d("0000-00-00",!1)}),[E,d,T]),(0,o.useEffect)((function(){var e=!0;(m<0||c&&m>c||isNaN(m))&&(e=!1),(j<0||j>23||isNaN(j))&&(e=!1),(Z<0||Z>59||isNaN(Z))&&(e=!1),!c||m!==c||0===j&&0===Z||(e=!1),m<=0&&j<=0&&Z<=0&&(e=!1),N(e)}),[E,c,d,m,j,Z]);var O={"& .textBoxContainer":{minWidth:0},"& input":{textAlign:"center",paddingRight:10,paddingLeft:10,width:40}};return(0,x.jsx)(o.Fragment,{children:(0,x.jsxs)(a.rjZ,{container:!0,className:t.fieldContainer,children:[(0,x.jsx)(a.rjZ,{item:!0,xs:12,className:t.labelContainer,children:(0,x.jsx)(a.AZs,{htmlFor:n,children:s})}),(0,x.jsxs)(a.rjZ,{item:!0,xs:12,className:t.durationInputs,children:[(0,x.jsx)(a.rjZ,{item:!0,xs:!0,className:t.dateInputContainer,children:(0,x.jsx)(a.Wzg,{id:n,className:"".concat(t.reverseInput," removeArrows"),type:"number",min:"0",max:c?c.toString():"999",label:"Days",name:n,onChange:function(e){p(parseInt(e.target.value))},value:m.toString(),sx:O,noLabelMinWidth:!0})}),(0,x.jsx)(a.rjZ,{item:!0,xs:!0,className:t.dateInputContainer,children:(0,x.jsx)(a.Wzg,{id:n,className:"".concat(t.reverseInput," removeArrows"),type:"number",min:"0",max:"23",label:"Hours",name:n,onChange:function(e){g(parseInt(e.target.value))},value:j.toString(),sx:O,noLabelMinWidth:!0})}),(0,x.jsx)(a.rjZ,{item:!0,xs:!0,className:t.dateInputContainer,children:(0,x.jsx)(a.Wzg,{id:n,className:"".concat(t.reverseInput," removeArrows"),type:"number",min:"0",max:"59",label:"Minutes",name:n,onChange:function(e){C(parseInt(e.target.value))},value:Z.toString(),sx:O,noLabelMinWidth:!0})})]}),(0,x.jsx)(a.rjZ,{item:!0,xs:12,className:"".concat(t.validityIndicator," ").concat(t.formFieldRow),children:T?(0,x.jsxs)("div",{className:t.validityText,children:[(0,x.jsx)(a.xPt,{}),(0,x.jsxs)("div",{className:t.validityLabel,children:[l," will be available until:"]})," ",(0,x.jsx)("div",{className:t.validTill,children:E.toFormat("MM/dd/yyyy HH:mm:ss")})]}):(0,x.jsx)("div",{className:t.invalidDurationText,children:"Please select a valid duration."})})]})})})),v=n(45248),j=n(87995),g=n(81551),_=n(31776),S=n(82342),Z=function(e){var t=e.open,n=e.closeModalAndRefresh,s=e.bucketName,u=e.dataObject,h=(0,g.TL)(),f=(0,r.v9)(j.N5),m=(0,o.useState)(""),p=(0,i.Z)(m,2),Z=p[0],C=p[1],w=(0,o.useState)(!0),y=(0,i.Z)(w,2),T=y[0],N=y[1],F=(0,o.useState)(!1),k=(0,i.Z)(F,2),E=k[0],I=k[1],O=(0,o.useState)(""),L=(0,i.Z)(O,2),B=L[0],P=L[1],A=(0,o.useState)(!0),D=(0,i.Z)(A,2),R=D[0],M=D[1],z=(0,o.useState)("null"),U=(0,i.Z)(z,2),G=U[0],W=U[1],K=new Date;return(0,o.useEffect)((function(){if(void 0===u.version_id)return f?(_.h.buckets.listObjects(s,{prefix:(0,v.LL)(u.name||""),with_versions:f}).then((function(e){var t=(e.data.objects||[]).find((function(e){return e.is_latest}));W(t?"".concat(t.version_id):"null")})).catch((function(e){h((0,j.zb)((0,S.g)(e.error)))})),void N(!1)):(W("null"),void N(!1));W(u.version_id||"null"),N(!1)}),[s,u,f,h]),(0,o.useEffect)((function(){if(R&&!T){I(!0),C("");var e=new Date("".concat(B)),t=new Date,n=Math.ceil((e.getTime()-t.getTime())/1e3);n>0&&_.h.buckets.shareObject(s,{prefix:(0,v.LL)(u.name||""),version_id:G,expires:""!==B?"".concat(n,"s"):""}).then((function(e){C(e.data),I(!1)})).catch((function(e){h((0,j.zb)((0,S.g)(e.error))),C(""),I(!1)}))}}),[u,B,s,R,C,h,f,T,G]),(0,x.jsx)(o.Fragment,{children:(0,x.jsxs)(d.Z,{title:"Share File",titleIcon:(0,x.jsx)(a.aAc,{style:{fill:"#4CCB92"}}),modalOpen:t,onClose:function(){n()},children:[T&&(0,x.jsx)(a.rjZ,{item:!0,xs:12,children:(0,x.jsx)(l.Z,{})}),!T&&(0,x.jsxs)(o.Fragment,{children:[(0,x.jsxs)(a.rjZ,{item:!0,xs:12,sx:{fontSize:14,fontWeight:400},children:["This is a temporary URL with integrated access credentials for sharing objects valid for up to 7 days.",(0,x.jsx)("br",{}),(0,x.jsx)("br",{}),"The temporary URL expires after the configured time limit."]}),(0,x.jsx)("br",{}),(0,x.jsx)(a.rjZ,{item:!0,xs:12,children:(0,x.jsx)(b,{initialDate:K,id:"date",label:"Active for",maxDays:7,onChange:function(e,t){M(t),t?P(e):(P(""),C(""))},entity:"Link"})}),(0,x.jsx)(a.rjZ,{item:!0,xs:12,sx:{marginBottom:10},children:(0,x.jsx)(a.bSr,{actionButton:(0,x.jsx)(c(),{text:Z,children:(0,x.jsx)(a.zxk,{id:"copy-path",variant:"regular",onClick:function(){h((0,j.MK)("Share URL Copied to clipboard"))},disabled:""===Z||E,style:{width:"28px",height:"28px",padding:"0px"},icon:(0,x.jsx)(a.TIy,{})})}),children:Z})})]})]})})}},78562:function(e,t,n){n.r(t),n.d(t,{default:function(){return _}});var i=n(72791),o=n(56028),r=n(4942),a=n(29439),s=n(11135),c=n(25787),l=n(61889),d=n(40986),u=n(47922),h=n(45248),f=n(28182),m=n(16502),p=n(31776),x=n(26181),b=n.n(x),v=n(80184),j=(0,c.Z)((function(){return(0,s.Z)({iframeContainer:{border:"0px",flex:"1 1 auto",width:"100%",height:250,backgroundColor:"transparent",borderRadius:5,"&.image":{height:500},"&.text":{height:700},"&.audio":{height:150},"&.video":{height:350},"&.fullHeight":{height:"calc(100vh - 185px)"}},iframeBase:{backgroundColor:"#fff"},iframeHidden:{display:"none"}})}))((function(e){var t=e.bucketName,n=e.object,o=e.isFullscreen,s=void 0!==o&&o,c=e.classes,x=(0,i.useState)(!0),j=(0,a.Z)(x,2),g=j[0],_=j[1],S=(0,i.useState)(null),Z=(0,a.Z)(S,2),C=Z[0],w=Z[1],y=(0,i.useState)(!1),T=(0,a.Z)(y,2),N=T[0],F=T[1],k=(null===n||void 0===n?void 0:n.name)||"",E=(0,i.useCallback)((function(){if(!N){var e=(0,h.LL)(k);p.h.buckets.getObjectMetadata(t,{prefix:e}).then((function(e){var t=b()(e.data,"objectMetadata",{});F(!0),w(t)})).catch((function(e){console.error("Error Getting Metadata Status: ",e,null===e||void 0===e?void 0:e.detailedError),F(!0)}))}}),[t,k,N]);(0,i.useEffect)((function(){t&&k&&E()}),[t,k,E]);var I="";if(n){var O=(0,h.LL)(n.name),L=document.baseURI.replace(window.location.origin,"");I="".concat(window.location.origin).concat(L,"api/v1/buckets/").concat(t,"/objects/download?preview=true&prefix=").concat(O),n.version_id&&(I=I.concat("&version_id=".concat(n.version_id)))}var B=(0,u.s7)(C,k),P=function(){_(!1)};return(0,v.jsxs)(i.Fragment,{children:["none"!==B&&g&&(0,v.jsx)(l.ZP,{item:!0,xs:12,children:(0,v.jsx)(d.Z,{})}),N?(0,v.jsxs)("div",{style:{textAlign:"center"},children:["video"===B&&(0,v.jsx)("video",{style:{width:"auto",height:"auto",maxWidth:"calc(100vw - 100px)",maxHeight:"calc(100vh - 200px)"},autoPlay:!0,controls:!0,muted:!1,playsInline:!0,onPlay:P,children:(0,v.jsx)("source",{src:I,type:"video/mp4"})}),"audio"===B&&(0,v.jsx)("audio",{style:{width:"100%",height:"auto"},autoPlay:!0,controls:!0,muted:!1,playsInline:!0,onPlay:P,children:(0,v.jsx)("source",{src:I,type:"audio/mpeg"})}),"image"===B&&(0,v.jsx)("img",{style:{width:"auto",height:"auto",maxWidth:"100vw",maxHeight:"100vh"},src:I,alt:"preview",onLoad:P}),"none"===B&&(0,v.jsx)("div",{children:(0,v.jsx)(m.Z,{label:" File couldn't be previewed using file extension or mime type. Please try Download instead",title:"Preview unavailable "})}),"none"!==B&&"video"!==B&&"audio"!==B&&"image"!==B&&(0,v.jsx)("div",{className:(0,f.Z)(c.iframeBase,(0,r.Z)({},c.iframeHidden,g)),children:(0,v.jsx)("iframe",{src:I,title:"File Preview",allowTransparency:!0,className:"".concat(c.iframeContainer," ").concat(s?"fullHeight":B),onLoad:P,children:"File couldn't be loaded. Please try Download instead"})})]}):null]})})),g=n(29945),_=function(e){var t=e.open,n=e.bucketName,r=e.object,a=e.onClosePreview;return(0,v.jsx)(i.Fragment,{children:(0,v.jsx)(o.Z,{modalOpen:t,title:"Preview - ".concat(null===r||void 0===r?void 0:r.name),onClose:a,wideLimit:!1,titleIcon:(0,v.jsx)(g.$30,{}),children:(0,v.jsx)(j,{bucketName:n,object:r})})})}},47922:function(e,t,n){n.d(t,{LR:function(){return f},P_:function(){return x},kh:function(){return b},s7:function(){return p}});var i=n(1413),o=n(74165),r=n(15861),a=n(15671),s=n(43144),c=n(45248),l=n(76610),d=n(90344),u=n.n(d),h=n(81551),f=function(e,t,n,i){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,r=arguments.length>5?arguments[5]:void 0,a=arguments.length>6?arguments[6]:void 0,s=arguments.length>7?arguments[7]:void 0,l=arguments.length>8?arguments[8]:void 0,d=arguments.length>9?arguments[9]:void 0,u=arguments.length>10?arguments[10]:void 0,f=document.createElement("a");document.body.appendChild(f);var p=document.baseURI.replace(window.location.origin,""),x=h.ZP.getState().system.anonymousMode,b="".concat(window.location.origin).concat(p,"api/v1/buckets/").concat(e,"/objects/download?prefix=").concat(t).concat(null!==o&&""!==o.trim()?"&override_file_name=".concat((0,c.LL)(o||"")):"");return n&&(b=b.concat("&version_id=".concat(n))),new m(b,r,x,i,a,s,l,d,u)},m=function(){function e(t,n,i,o,r,s,c,l,d){(0,a.Z)(this,e),this.aborter=void 0,this.path=void 0,this.id=void 0,this.filename="",this.anonymousMode=void 0,this.fileSize=0,this.writer=null,this.progressCallback=void 0,this.completeCallback=void 0,this.errorCallback=void 0,this.abortCallback=void 0,this.toastCallback=void 0,this.aborter=new AbortController,this.path=t,this.id=n,this.anonymousMode=i,this.fileSize=o,this.progressCallback=r,this.completeCallback=s,this.errorCallback=c,this.abortCallback=l,this.toastCallback=d}return(0,s.Z)(e,[{key:"abort",value:function(){this.aborter.abort(),this.abortCallback(),this.writer&&this.writer.abort()}},{key:"send",value:function(){/^((?!chrome|android).)*safari/i.test(navigator.userAgent)?(this.toastCallback(),this.downloadByBrowser()):this.fileSize?this.download({url:this.path,chunkSize:1610612736}):this.downloadByBrowser()}},{key:"getRangeContent",value:function(){var e=(0,r.Z)((0,o.Z)().mark((function e(t,n,i){var r,a,s,c,l,d;return(0,o.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.getRequestInfo(n,i),e.next=3,fetch(t,r);case 3:if(!(a=e.sent).ok||!a.body){e.next=22;break}this.filename||(this.filename=this.getFilename(a)),this.writer||(this.writer=u().createWriteStream(this.filename).getWriter()),s=a.body.getReader();case 8:if(c){e.next=20;break}return e.next=11,s.read();case 11:if(d=e.sent,l=d.value,!(c=d.done)){e.next=16;break}return e.abrupt("break",20);case 16:return e.next=18,this.writer.write(l);case 18:e.next=8;break;case 20:e.next=23;break;case 22:throw new Error("Unexpected response status code (".concat(a.status,")."));case 23:case"end":return e.stop()}}),e,this)})));return function(t,n,i){return e.apply(this,arguments)}}()},{key:"getRequestInfo",value:function(e,t){var n={signal:this.aborter.signal,headers:{range:"bytes=".concat(e,"-").concat(t)}};return this.anonymousMode&&(n.headers=(0,i.Z)((0,i.Z)({},n.headers),{},{"X-Anonymous":"1"})),n}},{key:"getFilename",value:function(e){var t=e.headers.get("Content-Disposition");return t?decodeURIComponent(t).split('"')[1]:"download"}},{key:"download",value:function(){var e=(0,r.Z)((0,o.Z)().mark((function e(t){var n,i,r,a,s,c,d;return(0,o.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=t.url,i=t.chunkSize,r=Math.ceil(this.fileSize/i),this.progressCallback(0),e.prev=3,a=0;case 5:if(!(a1&&s.every((function(e,t){return"*"!==e&&((!r[t]||r[t]===e)&&(r[t]||o.push({name:"".concat(e,"/"),size:0,last_modified:"",version_id:""}),!0))})),"StringEquals"===e.conditionOperator||"StringLike"===e.conditionOperator)&&(null===(i=e.prefixes)||void 0===i||i.forEach((function(e){if(""!==e){var n=e.split("/"),i=[],a=t.replace(/\/$/,"");if(!e.startsWith(a)&&""!==t)return;n.every((function(e,t){return!e.includes("*")&&""!==e&&(e!==r[t]?(o.push({name:"".concat(i.join("/")).concat(i.length>0?"/":"").concat(e,"/"),size:0,last_modified:"",version_id:""}),!1):(""!==e&&i.push(e),!0))}))}})))})),o.length>0){var a=[],s=[];o.forEach((function(e){s.includes(e.name)||(a.push(e),s.push(e.name))})),o=a}return o}},75578:function(e,t,n){var i=n(1413),o=n(72791),r=n(80184);t.Z=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(n){return(0,r.jsx)(o.Suspense,{fallback:t,children:(0,r.jsx)(e,(0,i.Z)({},n))})}}},34866:function(e,t,n){var i=n(1413),o=n(72791),r=n(61889),a=n(94454),s=n(30829),c=n(20068),l=n(11135),d=n(25787),u=n(23814),h=n(29945),f=n(80184);t.Z=(0,d.Z)((function(e){return(0,l.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},u.YI),u.Hr),u.lM),{},{fieldContainer:(0,i.Z)((0,i.Z)({},u.YI.fieldContainer),{},{display:"flex",justifyContent:"flex-start",alignItems:"center",margin:"15px 0",marginBottom:0,flexBasis:"initial",flexWrap:"nowrap"}),noTopMargin:{marginTop:0}}))}))((function(e){var t=e.label,n=e.onChange,i=e.value,l=e.id,d=e.name,u=e.checked,m=void 0!==u&&u,p=e.disabled,x=void 0!==p&&p,b=e.noTopMargin,v=void 0!==b&&b,j=e.tooltip,g=void 0===j?"":j,_=e.overrideLabelClasses,S=void 0===_?"":_,Z=e.overrideCheckboxStyles,C=e.classes,w=e.className;return(0,f.jsx)(o.Fragment,{children:(0,f.jsxs)(r.ZP,{item:!0,xs:12,className:"".concat(C.fieldContainer," ").concat(v?C.noTopMargin:""," ").concat(w||""),children:[(0,f.jsx)("div",{children:(0,f.jsx)(a.Z,{name:d,id:l,value:i,color:"primary",inputProps:{"aria-label":"secondary checkbox"},checked:m,onChange:n,checkedIcon:(0,f.jsx)("span",{className:C.checkedIcon}),icon:(0,f.jsx)("span",{className:C.unCheckedIcon}),disabled:x,disableRipple:!0,disableFocusRipple:!0,focusRipple:!1,centerRipple:!1,disableTouchRipple:!0,style:Z||{}})}),""!==t&&(0,f.jsxs)(s.Z,{htmlFor:l,className:"".concat(C.noMinWidthLabel," ").concat(S),children:[(0,f.jsx)("span",{children:t}),""!==g&&(0,f.jsx)("div",{className:C.tooltipContainer,children:(0,f.jsx)(c.Z,{title:g,placement:"top-start",children:(0,f.jsx)("div",{className:C.tooltip,children:(0,f.jsx)(h.byK,{})})})})]})]})})}))},81159:function(e,t,n){var i=n(4942),o=n(1413),r=n(72791),a=n(11135),s=n(25787),c=n(9955),l=n(30829),d=n(20068),u=n(20890),h=n(61889),f=n(23814),m=n(29945),p=n(28182),x=n(80184),b=(0,s.Z)((function(e){return{root:{width:50,height:24,padding:0,margin:0},switchBase:{padding:1,"&$checked":{transform:"translateX(24px)",color:e.palette.common.white,"& + $track":{backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,border:"none"}},"&$focusVisible $thumb":{color:"#4CCB92",border:"6px solid #fff"}},thumb:{width:22,height:22,backgroundColor:"#FAFAFA",border:"2px solid #FFFFFF",marginLeft:1},track:{borderRadius:12,backgroundColor:"#E2E2E2",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,transition:e.transitions.create(["background-color","border"])},checked:{},focusVisible:{},switchContainer:{display:"flex",alignItems:"center",justifyContent:"flex-end"}}}))(c.Z);t.Z=(0,s.Z)((function(e){return(0,a.Z)((0,o.Z)((0,o.Z)({indicatorLabelOn:{fontWeight:"bold",color:"#081C42 !important"},indicatorLabel:{fontSize:12,color:"#E2E2E2",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"},tooltip:{fontSize:16}},f.OR),f.YI))}))((function(e){var t=e.label,n=void 0===t?"":t,a=e.onChange,s=e.value,c=e.id,f=e.name,v=e.checked,j=void 0!==v&&v,g=e.disabled,_=void 0!==g&&g,S=e.switchOnly,Z=void 0!==S&&S,C=e.tooltip,w=void 0===C?"":C,y=e.description,T=void 0===y?"":y,N=e.classes,F=e.indicatorLabels,k=e.extraInputProps,E=void 0===k?{}:k,I=(0,x.jsxs)(r.Fragment,{children:[!Z&&(0,x.jsx)("span",{className:(0,p.Z)(N.indicatorLabel,(0,i.Z)({},N.indicatorLabelOn,!j)),children:F&&F.length>1?F[1]:"OFF"}),(0,x.jsx)(b,{checked:j,onChange:a,color:"primary",name:f,inputProps:(0,o.Z)({"aria-label":"primary checkbox"},E),disabled:_,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:s,id:c}),!Z&&(0,x.jsx)("span",{className:(0,p.Z)(N.indicatorLabel,(0,i.Z)({},N.indicatorLabelOn,j)),children:F?F[0]:"ON"})]});return Z?I:(0,x.jsx)("div",{children:(0,x.jsxs)(h.ZP,{container:!0,alignItems:"center",children:[(0,x.jsx)(h.ZP,{item:!0,xs:12,sm:8,md:8,children:""!==n&&(0,x.jsxs)(l.Z,{htmlFor:c,className:N.inputLabel,children:[(0,x.jsx)("span",{children:n}),""!==w&&(0,x.jsx)("div",{className:N.tooltipContainer,children:(0,x.jsx)(d.Z,{title:w,placement:"top-start",children:(0,x.jsx)("div",{className:N.tooltip,children:(0,x.jsx)(m.byK,{})})})})]})}),(0,x.jsx)(h.ZP,{item:!0,xs:12,sm:""!==n?4:12,md:""!==n?4:12,textAlign:"right",justifyContent:"end",className:N.switchContainer,children:I}),""!==T&&(0,x.jsx)(h.ZP,{item:!0,xs:12,textAlign:"left",children:(0,x.jsx)(u.Z,{component:"p",className:N.fieldDescription,children:T})})]})})}))},21435:function(e,t,n){var i=n(29439),o=n(1413),r=n(72791),a=n(27391),s=n(61889),c=n(30829),l=n(20068),d=n(13400),u=n(20165),h=n(3579),f=n(11135),m=n(72455),p=n(25787),x=n(23814),b=n(29945),v=n(28182),j=n(80184),g=(0,m.Z)((function(e){return(0,f.Z)((0,o.Z)({},x.gM))}));function _(e){var t=g();return(0,j.jsx)(a.Z,(0,o.Z)({InputProps:{classes:t}},e))}t.Z=(0,p.Z)((function(e){return(0,f.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},x.YI),x.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var t=e.label,n=e.onChange,a=e.value,f=e.id,m=e.name,p=e.type,x=void 0===p?"text":p,g=e.autoComplete,S=void 0===g?"off":g,Z=e.disabled,C=void 0!==Z&&Z,w=e.multiline,y=void 0!==w&&w,T=e.tooltip,N=void 0===T?"":T,F=e.index,k=void 0===F?0:F,E=e.error,I=void 0===E?"":E,O=e.required,L=void 0!==O&&O,B=e.placeholder,P=void 0===B?"":B,A=e.min,D=e.max,R=e.overlayId,M=e.overlayIcon,z=void 0===M?null:M,U=e.overlayObject,G=void 0===U?null:U,W=e.extraInputProps,K=void 0===W?{}:W,H=e.overlayAction,V=e.noLabelMinWidth,J=void 0!==V&&V,Y=e.pattern,q=void 0===Y?"":Y,$=e.autoFocus,X=void 0!==$&&$,Q=e.classes,ee=e.className,te=void 0===ee?"":ee,ne=e.onKeyPress,ie=e.onFocus,oe=e.onPaste,re=(0,o.Z)({"data-index":k},K),ae=(0,r.useState)(!1),se=(0,i.Z)(ae,2),ce=se[0],le=se[1];"number"===x&&A&&(re.min=A),"number"===x&&D&&(re.max=D),""!==q&&(re.pattern=q);var de=z,ue=x;return"password"===x&&null===z&&(de=ce?(0,j.jsx)(u.Z,{}):(0,j.jsx)(h.Z,{}),ue=ce?"text":"password"),(0,j.jsx)(r.Fragment,{children:(0,j.jsxs)(s.ZP,{container:!0,className:(0,v.Z)(""!==te?te:"",""!==I?Q.errorInField:Q.inputBoxContainer),children:[""!==t&&(0,j.jsxs)(c.Z,{htmlFor:f,className:J?Q.noMinWidthLabel:Q.inputLabel,children:[(0,j.jsxs)("span",{children:[t,L?"*":""]}),""!==N&&(0,j.jsx)("div",{className:Q.tooltipContainer,children:(0,j.jsx)(l.Z,{title:N,placement:"top-start",children:(0,j.jsx)("div",{className:Q.tooltip,children:(0,j.jsx)(b.byK,{})})})})]}),(0,j.jsxs)("div",{className:Q.textBoxContainer,children:[(0,j.jsx)(_,{id:f,name:m,fullWidth:!0,value:a,autoFocus:X,disabled:C,onChange:n,type:ue,multiline:y,autoComplete:S,inputProps:re,error:""!==I,helperText:I,placeholder:P,className:Q.inputRebase,onKeyPress:ne,onFocus:ie,onPaste:oe}),de&&(0,j.jsx)("div",{className:"".concat(Q.overlayAction," ").concat(""!==t?"withLabel":""),children:(0,j.jsx)(d.Z,{onClick:H?function(){H()}:function(){return le(!ce)},id:R,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:de})}),G&&(0,j.jsx)("div",{className:"".concat(Q.overlayAction," ").concat(""!==t?"withLabel":""),children:G})]})]})})}))},90673:function(e,t,n){var i=n(1413),o=n(72791),r=n(61889),a=n(886),s=n(30829),c=n(20068),l=n(68096),d=n(58406),u=n(77865),h=n(11135),f=n(25787),m=n(23814),p=n(29945),x=n(80184),b=(0,f.Z)((function(e){return(0,h.Z)({root:{height:38,lineHeight:1,"label + &":{marginTop:e.spacing(3)}},input:{height:38,position:"relative",color:"#07193E",fontSize:13,fontWeight:600,padding:"8px 20px 10px 10px",border:"#e5e5e5 1px solid",borderRadius:4,display:"flex",alignItems:"center","&:hover":{borderColor:"#393939"},"&:focus":{backgroundColor:"#fff"}}})}))(a.ZP);t.Z=(0,f.Z)((function(e){return(0,h.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},m.YI),m.Hr),{},{fieldContainer:{display:"flex","@media (max-width: 600px)":{flexFlow:"column"}}}))}))((function(e){var t=e.classes,n=e.id,i=e.name,a=e.onChange,h=e.options,f=e.label,m=e.tooltip,v=void 0===m?"":m,j=e.value,g=e.disabled,_=void 0!==g&&g;return(0,x.jsx)(o.Fragment,{children:(0,x.jsxs)(r.ZP,{item:!0,xs:12,className:t.fieldContainer,children:[""!==f&&(0,x.jsxs)(s.Z,{htmlFor:n,className:t.inputLabel,children:[(0,x.jsx)("span",{children:f}),""!==v&&(0,x.jsx)("div",{className:t.tooltipContainer,children:(0,x.jsx)(c.Z,{title:v,placement:"top-start",children:(0,x.jsx)("div",{className:t.tooltip,children:(0,x.jsx)(p.byK,{})})})})]}),(0,x.jsx)(l.Z,{fullWidth:!0,children:(0,x.jsx)(d.Z,{id:n,name:i,value:j,onChange:a,input:(0,x.jsx)(b,{}),disabled:_,children:h.map((function(e){return(0,x.jsx)(u.Z,{value:e.value,children:e.label},"select-".concat(i,"-").concat(e.label))}))})})]})})}))},16502:function(e,t,n){n(72791);var i=n(11135),o=n(25787),r=n(80184);t.Z=(0,o.Z)((function(e){return(0,i.Z)({headerContainer:{backgroundColor:"#e78794",borderRadius:3,marginBottom:20,padding:1,paddingBottom:15},labelHeadline:{color:"#000000",fontSize:14,marginLeft:20},labelText:{color:"#000000",fontSize:14,marginLeft:20,marginRight:40}})}))((function(e){var t=e.classes,n=e.label,i=e.title;return(0,r.jsxs)("div",{className:t.headerContainer,children:[(0,r.jsx)("h4",{className:t.labelHeadline,children:i}),(0,r.jsx)("div",{className:t.labelText,children:n})]})}))},73669:function(e,t,n){var i=n(29439),o=n(72791),r=n(64554),a=n(29945),s=n(21435),c=n(80184);t.Z=function(e){var t=e.value,n=(0,o.useState)(!1),l=(0,i.Z)(n,2),d=l[0],u=l[1];return(0,c.jsxs)(r.Z,{sx:{display:"flex",alignItems:"center",flexFlow:{sm:"row",xs:"column"}},children:[(0,c.jsx)(s.Z,{id:"inspect-dec-key",name:"inspect-dec-key",placeholder:"",label:"",type:d?"text":"password",onChange:function(){},value:t,overlayIcon:(0,c.jsx)(a.TIy,{}),extraInputProps:{readOnly:!0},overlayAction:function(){return navigator.clipboard.writeText(t)}}),(0,c.jsx)(a.zxk,{id:"show-hide-key",style:{marginLeft:"10px"},variant:"callAction",onClick:function(){return u(!d)},label:"Show/Hide"})]})}},26824:function(e,t,n){n.d(t,{HE:function(){return r},V9:function(){return i},ci:function(){return o},x2:function(){return a}});var i=1006,o=1008,r=1011,a=function(e){var t="ws";return"https:"===e&&(t="wss"),t}}}]); -//# sourceMappingURL=2603.c555d98d.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/2603.c555d98d.chunk.js.map b/portal-ui/build/static/js/2603.c555d98d.chunk.js.map deleted file mode 100644 index 5c6cda5b4..000000000 --- a/portal-ui/build/static/js/2603.c555d98d.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/2603.c555d98d.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AddAccessRule.tsx","screens/Console/Buckets/BucketDetails/BrowserHandler.tsx","screens/Console/Buckets/ListBuckets/UploadPermissionUtils.ts","screens/Console/ObjectBrowser/BrowserBreadcrumbs.tsx","screens/Console/Buckets/ListBuckets/UploadFilesButton.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DetailsListPanel.tsx","screens/Console/Common/FormComponents/DateSelector/utils.ts","screens/Console/Common/FormComponents/DateSelector/DateSelector.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SetRetention.tsx","utils/validationFunctions.ts","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DeleteObject.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SetLegalHoldModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/ObjectMetaData.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/IconWithLabel.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/utils.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/TagsModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/InspectObject.tsx","screens/Console/ObjectBrowser/utils.ts","screens/Console/ObjectBrowser/RenameLongFilename.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ObjectDetailPanel.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/RestoreFileVersion.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SpecificVersionPill.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/FileVersionItem.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DeleteNonCurrent.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/DeleteSelectedVersions.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/VersionsNavigator.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjectsHelpers.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjectsTable.tsx","screens/Console/ObjectBrowser/objectBrowserThunks.ts","screens/Console/ObjectBrowser/FilterObjectsSB.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjects.tsx","screens/Console/ObjectBrowser/OBHeader.tsx","screens/Console/Common/FormComponents/DaysSelector/DaysSelector.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/ShareFile.tsx","screens/Console/Buckets/ListBuckets/Objects/Preview/PreviewFileContent.tsx","screens/Console/Buckets/ListBuckets/Objects/Preview/PreviewFileModal.tsx","screens/Console/Buckets/ListBuckets/Objects/utils.ts","screens/Console/Common/Components/withSuspense.tsx","screens/Console/Common/FormComponents/CheckboxWrapper/CheckboxWrapper.tsx","screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Common/FormComponents/SelectWrapper/SelectWrapper.tsx","screens/Console/Common/WarningMessage/WarningMessage.tsx","screens/Console/Tools/KeyRevealer.tsx","utils/wsUtils.ts"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState, useEffect } from \"react\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { Grid } from \"@mui/material\";\nimport { AddAccessRuleIcon, Button } from \"mds\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport {\n setErrorSnackMessage,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IAddAccessRule {\n classes: any;\n modalOpen: boolean;\n onClose: () => any;\n bucket: string;\n prefilledRoute?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...formFieldStyles,\n ...modalStyleUtils,\n });\n\nconst AddAccessRule = ({\n modalOpen,\n onClose,\n classes,\n bucket,\n prefilledRoute,\n}: IAddAccessRule) => {\n const dispatch = useAppDispatch();\n\n const [prefix, setPrefix] = useState(\"\");\n const [selectedAccess, setSelectedAccess] = useState(\"readonly\");\n\n useEffect(() => {\n if (prefilledRoute) {\n setPrefix(prefilledRoute);\n }\n }, [prefilledRoute]);\n\n const accessOptions = [\n { label: \"readonly\", value: \"readonly\" },\n { label: \"writeonly\", value: \"writeonly\" },\n { label: \"readwrite\", value: \"readwrite\" },\n ];\n\n const resetForm = () => {\n setPrefix(\"\");\n setSelectedAccess(\"readonly\");\n };\n\n const createProcess = () => {\n api.bucket\n .setAccessRuleWithBucket(bucket, {\n prefix: prefix,\n access: selectedAccess,\n })\n .then((res: any) => {\n dispatch(setSnackBarMessage(\"Access Rule added successfully\"));\n onClose();\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n onClose();\n });\n };\n\n return (\n }\n >\n \n \n {\n setPrefix(e.target.value);\n }}\n tooltip={\n \"Enter '/' to apply the rule to all prefixes and objects at the bucket root. Do not include the wildcard asterisk '*' as part of the prefix *unless* it is an explicit part of the prefix name. The Console automatically appends an asterisk to the appropriate sections of the resulting IAM policy.\"\n }\n />\n \n \n {\n setSelectedAccess(e.target.value);\n }}\n label=\"Access\"\n value={selectedAccess}\n options={accessOptions}\n disabled={false}\n />\n \n \n \n\n \n \n \n \n );\n};\n\nexport default withStyles(styles)(AddAccessRule);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useLocation, useParams } from \"react-router-dom\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport { containerForHeader } from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport ListObjects from \"../ListBuckets/Objects/ListObjects/ListObjects\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport {\n errorInConnection,\n newMessage,\n resetMessages,\n setIsOpeningOD,\n setIsVersioned,\n setLoadingLocking,\n setLoadingObjectInfo,\n setLoadingObjects,\n setLoadingRecords,\n setLoadingVersioning,\n setLoadingVersions,\n setLockingEnabled,\n setObjectDetailsView,\n setRecords,\n setSelectedObjectView,\n setSimplePathHandler,\n setVersionsModeEnabled,\n} from \"../../ObjectBrowser/objectBrowserSlice\";\nimport hasPermission from \"../../../../common/SecureComponent/accessControl\";\nimport { IMessageEvent } from \"websocket\";\nimport { wsProtocol } from \"../../../../utils/wsUtils\";\nimport {\n WebsocketRequest,\n WebsocketResponse,\n} from \"../ListBuckets/Objects/ListObjects/types\";\nimport { decodeURLString, encodeURLString } from \"../../../../common/utils\";\nimport { permissionItems } from \"../ListBuckets/Objects/utils\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport OBHeader from \"../../ObjectBrowser/OBHeader\";\nimport { api } from \"api\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...containerForHeader,\n });\n\nlet objectsWS: WebSocket;\nlet currentRequestID: number = 0;\nlet errorCounter: number = 0;\nlet wsInFlight: boolean = false;\n\nconst initWSConnection = (\n openCallback?: () => void,\n onMessageCallback?: (message: IMessageEvent) => void,\n connErrorCallback?: (message: string) => void,\n) => {\n if (wsInFlight) {\n return;\n }\n wsInFlight = true;\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n // check if we are using base path, if not this always is `/`\n const baseLocation = new URL(document.baseURI);\n const baseUrl = baseLocation.pathname;\n\n const wsProt = wsProtocol(url.protocol);\n\n objectsWS = new WebSocket(\n `${wsProt}://${url.hostname}:${port}${baseUrl}ws/objectManager`,\n );\n\n objectsWS.onopen = () => {\n wsInFlight = false;\n if (openCallback) {\n openCallback();\n }\n errorCounter = 0;\n };\n\n if (onMessageCallback) {\n objectsWS.onmessage = onMessageCallback;\n }\n\n const reconnectFn = () => {\n if (errorCounter <= 5) {\n initWSConnection(() => {}, onMessageCallback, connErrorCallback);\n errorCounter += 1;\n } else {\n console.error(\n \"Websocket not available. Please review that your environment settings are enabled to allow websocket connections and that requests are made from the same origin.\",\n );\n if (connErrorCallback) {\n connErrorCallback(\n \"Couldn't establish WebSocket connection. Please review your configuration and try again.\",\n );\n }\n }\n };\n\n objectsWS.onclose = () => {\n wsInFlight = false;\n console.warn(\"Websocket Disconnected. Attempting Reconnection...\");\n\n // We reconnect after 3 seconds\n setTimeout(reconnectFn, 3000);\n };\n\n objectsWS.onerror = () => {\n wsInFlight = false;\n console.error(\"Error in websocket connection. Attempting reconnection...\");\n // Onclose will be triggered by specification, reconnect function will be executed there to avoid duplicated requests\n };\n};\n\nconst BrowserHandler = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n const location = useLocation();\n\n const loadingVersioning = useSelector(\n (state: AppState) => state.objectBrowser.loadingVersioning,\n );\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const rewindDate = useSelector(\n (state: AppState) => state.objectBrowser.rewind.dateToRewind,\n );\n const showDeleted = useSelector(\n (state: AppState) => state.objectBrowser.showDeleted,\n );\n const allowResources = useSelector(\n (state: AppState) => state.console.session.allowResources,\n );\n const loadingObjects = useSelector(\n (state: AppState) => state.objectBrowser.loadingObjects,\n );\n const loadingLocking = useSelector(\n (state: AppState) => state.objectBrowser.loadingLocking,\n );\n const loadRecords = useSelector(\n (state: AppState) => state.objectBrowser.loadRecords,\n );\n const selectedInternalPaths = useSelector(\n (state: AppState) => state.objectBrowser.selectedInternalPaths,\n );\n const simplePath = useSelector(\n (state: AppState) => state.objectBrowser.simplePath,\n );\n const isOpeningOD = useSelector(\n (state: AppState) => state.objectBrowser.isOpeningObjectDetail,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const bucketName = params.bucketName || \"\";\n const pathSegment = location.pathname.split(`/browser/${bucketName}/`);\n const internalPaths = pathSegment.length === 2 ? pathSegment[1] : \"\";\n\n /*WS Request Handlers*/\n const onMessageCallBack = useCallback(\n (message: IMessageEvent) => {\n // reset start status\n dispatch(setLoadingObjects(false));\n\n const response: WebsocketResponse = JSON.parse(message.data.toString());\n if (currentRequestID === response.request_id) {\n // If response is not from current request, we can omit\n if (response.request_id !== currentRequestID) {\n return;\n }\n\n if (\n response.error ===\n \"The Access Key Id you provided does not exist in our records.\"\n ) {\n // Session expired.\n window.location.reload();\n } else if (response.error === \"Access Denied.\") {\n const internalPathsPrefix = response.prefix;\n let pathPrefix = \"\";\n\n if (internalPathsPrefix) {\n const decodedPath = decodeURLString(internalPathsPrefix);\n\n pathPrefix = decodedPath.endsWith(\"/\")\n ? decodedPath\n : decodedPath + \"/\";\n }\n\n const permitItems = permissionItems(\n response.bucketName || bucketName,\n pathPrefix,\n allowResources || [],\n );\n\n if (!permitItems || permitItems.length === 0) {\n dispatch(\n setErrorSnackMessage({\n errorMessage: response.error,\n detailedError: response.error,\n }),\n );\n } else {\n dispatch(setRecords(permitItems));\n }\n\n return;\n }\n\n // This indicates final messages is received.\n if (response.request_end) {\n dispatch(setLoadingObjects(false));\n dispatch(setLoadingRecords(false));\n return;\n }\n\n if (response.data) {\n dispatch(newMessage(response.data));\n }\n }\n },\n [dispatch, allowResources, bucketName],\n );\n\n const initWSRequest = useCallback(\n (path: string, date: Date) => {\n if (objectsWS && objectsWS.readyState === 1) {\n try {\n const newRequestID = currentRequestID + 1;\n dispatch(resetMessages());\n dispatch(errorInConnection(false));\n\n const request: WebsocketRequest = {\n bucket_name: bucketName,\n prefix: encodeURLString(path),\n mode: rewindEnabled || showDeleted ? \"rewind\" : \"objects\",\n date: date.toISOString(),\n request_id: newRequestID,\n };\n\n objectsWS.send(JSON.stringify(request));\n\n // We store the new ID for the requestID\n currentRequestID = newRequestID;\n } catch (e) {\n console.error(e);\n }\n } else {\n // Socket is disconnected, we request reconnection but will need to recreate call\n const dupRequest = () => {\n initWSRequest(path, date);\n };\n\n const fatalWSError = (message: string) => {\n dispatch(\n setErrorSnackMessage({\n errorMessage: message,\n detailedError: message,\n }),\n );\n dispatch(errorInConnection(true));\n };\n\n initWSConnection(dupRequest, onMessageCallBack, fatalWSError);\n }\n },\n [bucketName, rewindEnabled, showDeleted, dispatch, onMessageCallBack],\n );\n\n useEffect(() => {\n return () => {\n const request: WebsocketRequest = {\n mode: \"cancel\",\n request_id: currentRequestID,\n };\n\n if (objectsWS && objectsWS.readyState === 1) {\n objectsWS.send(JSON.stringify(request));\n }\n };\n }, []);\n\n useEffect(() => {\n const decodedIPaths = decodeURLString(internalPaths);\n\n dispatch(setLoadingVersioning(true));\n\n if (decodedIPaths.endsWith(\"/\") || decodedIPaths === \"\") {\n dispatch(setObjectDetailsView(false));\n dispatch(setSelectedObjectView(null));\n dispatch(\n setSimplePathHandler(decodedIPaths === \"\" ? \"/\" : decodedIPaths),\n );\n dispatch(setLoadingLocking(true));\n } else {\n dispatch(setLoadingObjectInfo(true));\n dispatch(setObjectDetailsView(true));\n dispatch(setLoadingVersions(true));\n dispatch(\n setSelectedObjectView(\n `${decodedIPaths ? `${encodeURLString(decodedIPaths)}` : ``}`,\n ),\n );\n dispatch(\n setSimplePathHandler(\n `${decodedIPaths.split(\"/\").slice(0, -1).join(\"/\")}/`,\n ),\n );\n }\n }, [bucketName, internalPaths, rewindDate, rewindEnabled, dispatch]);\n\n // Direct file access effect / prefix\n useEffect(() => {\n if (!loadingObjects && !loadRecords && !rewindEnabled && !isOpeningOD) {\n // No requests are in progress, We review current path, if it doesn't end in '/' and current list is empty then we trigger a new request.\n const decodedInternalPaths = decodeURLString(internalPaths);\n\n if (\n !decodedInternalPaths.endsWith(\"/\") &&\n simplePath !== decodedInternalPaths &&\n decodedInternalPaths !== \"\"\n ) {\n setLoadingRecords(true);\n const parentPath = `${decodedInternalPaths\n .split(\"/\")\n .slice(0, -1)\n .join(\"/\")}/`;\n\n initWSRequest(parentPath, new Date());\n }\n }\n dispatch(setIsOpeningOD(false));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n loadingObjects,\n loadRecords,\n dispatch,\n internalPaths,\n initWSRequest,\n rewindEnabled,\n simplePath,\n ]);\n\n const displayListObjects =\n hasPermission(bucketName, [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]) || anonymousMode;\n\n // Common objects list\n useEffect(() => {\n // begin watch if bucketName in bucketList and start pressed\n if (loadingObjects && displayListObjects) {\n let pathPrefix = \"\";\n if (internalPaths) {\n const decodedPath = decodeURLString(internalPaths);\n\n // internalPaths are selected (file details), we split and get parent folder\n if (selectedInternalPaths === internalPaths) {\n pathPrefix = `${decodeURLString(internalPaths)\n .split(\"/\")\n .slice(0, -1)\n .join(\"/\")}/`;\n } else {\n pathPrefix = decodedPath.endsWith(\"/\")\n ? decodedPath\n : decodedPath + \"/\";\n }\n }\n\n let requestDate = new Date();\n\n if (rewindEnabled && rewindDate) {\n requestDate = new Date(rewindDate);\n }\n initWSRequest(pathPrefix, requestDate);\n } else {\n dispatch(setLoadingObjects(false));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n loadingObjects,\n internalPaths,\n dispatch,\n rewindDate,\n rewindEnabled,\n displayListObjects,\n initWSRequest,\n ]);\n\n useEffect(() => {\n dispatch(setVersionsModeEnabled({ status: false }));\n }, [internalPaths, dispatch]);\n\n useEffect(() => {\n if (loadingVersioning && !anonymousMode) {\n if (displayListObjects) {\n api.buckets\n .getBucketVersioning(bucketName)\n .then((res) => {\n dispatch(setIsVersioned(res.data));\n dispatch(setLoadingVersioning(false));\n })\n .catch((err) => {\n console.error(\n \"Error Getting Object Versioning Status: \",\n err.error.detailedMessage,\n );\n dispatch(setLoadingVersioning(false));\n });\n } else {\n dispatch(setLoadingVersioning(false));\n dispatch(resetMessages());\n }\n }\n }, [\n bucketName,\n loadingVersioning,\n dispatch,\n displayListObjects,\n anonymousMode,\n ]);\n\n useEffect(() => {\n if (loadingLocking) {\n if (displayListObjects) {\n api.buckets\n .getBucketObjectLockingStatus(bucketName)\n .then((res) => {\n dispatch(setLockingEnabled(res.data.object_locking_enabled));\n dispatch(setLoadingLocking(false));\n })\n .catch((err) => {\n console.error(\n \"Error Getting Object Locking Status: \",\n err.error.detailedMessage,\n );\n dispatch(setLoadingLocking(false));\n });\n } else {\n dispatch(resetMessages());\n dispatch(setLoadingLocking(false));\n }\n }\n }, [bucketName, loadingLocking, dispatch, displayListObjects]);\n\n useEffect(() => {\n // when a bucket param changes, (i.e /browser/:bucketName), re-init e.g with KBar, this should not apply for resources prefixes.\n const permitItems = permissionItems(bucketName, \"\", allowResources || []);\n\n if (bucketName && (!permitItems || permitItems.length === 0)) {\n dispatch(resetMessages());\n dispatch(setLoadingRecords(true));\n dispatch(setLoadingObjects(true));\n\n let pathPrefix = \"\";\n if (internalPaths) {\n const decodedPath = decodeURLString(internalPaths);\n\n // internalPaths are selected (file details), we split and get parent folder\n if (selectedInternalPaths === internalPaths) {\n pathPrefix = `${decodeURLString(internalPaths)\n .split(\"/\")\n .slice(0, -1)\n .join(\"/\")}/`;\n } else {\n pathPrefix = decodedPath.endsWith(\"/\")\n ? decodedPath\n : decodedPath + \"/\";\n }\n }\n\n initWSRequest(pathPrefix, new Date());\n }\n }, [\n bucketName,\n dispatch,\n initWSRequest,\n allowResources,\n internalPaths,\n selectedInternalPaths,\n ]);\n\n return (\n \n {!anonymousMode && }\n \n \n );\n};\n\nexport default withStyles(styles)(BrowserHandler);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const extractFileExtn = (resourceStr: string) => {\n //file extensions may contain query string. so exclude query strings !\n return (resourceStr.match(/\\.([^.]*?)(?=\\?|#|$)/) || [])[1];\n};\nexport const getPolicyAllowedFileExtensions = (\n sessionGrants: Record,\n uploadPath: string,\n scopes: string[] = [],\n) => {\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n uploadPath,\n scopes,\n );\n\n //get acceptable files if any in the policy.\n const allowedFileExtensions = sessionGrantWildCards.reduce(\n (acc: string[], cv: string) => {\n const extension: string = extractFileExtn(cv);\n if (extension) {\n acc.push(`.${extension}`); //strict extension matching.\n }\n return acc;\n },\n [],\n );\n\n const uniqueExtensions = [...new Set(allowedFileExtensions)];\n return uniqueExtensions.join(\",\");\n};\n\n// The resource should not have the extensions (*.ext) for the hasPermission to work.\n// so sanitize this and also use to extract the allowed extensions outside of permission check.\nexport const getSessionGrantsWildCard = (\n sessionGrants: Record,\n uploadPath: string,\n scopes: string[] = [],\n) => {\n //get only the path matching grants to reduce processing.\n const grantsWithExtension = Object.keys(sessionGrants).reduce(\n (acc: Record, grantKey: string) => {\n if (extractFileExtn(grantKey) && grantKey.includes(uploadPath)) {\n acc[grantKey] = sessionGrants[grantKey];\n }\n return acc;\n },\n {},\n );\n\n const checkPathsForPermission = (sessionGrantKey: string) => {\n const grantActions = grantsWithExtension[sessionGrantKey];\n const hasScope = grantActions.some((actionKey) =>\n scopes.find((scopeKey) => {\n let wildCardMatch = false;\n const hasWildCard = scopeKey.indexOf(\"*\") !== -1;\n if (hasWildCard) {\n const scopeActionKey = scopeKey.substring(0, scopeKey.length - 1);\n\n wildCardMatch = actionKey.includes(scopeActionKey);\n }\n\n return wildCardMatch || actionKey === scopeKey;\n }),\n );\n\n const sessionGrantKeyPath = sessionGrantKey.substring(\n 0,\n sessionGrantKey.indexOf(\"/*.\"), //start of extension part.\n );\n const isUploadPathMatching =\n sessionGrantKeyPath === `arn:aws:s3:::${uploadPath}`;\n\n const hasGrant =\n isUploadPathMatching && sessionGrantKey !== \"arn:aws:s3:::*\";\n\n return hasScope && hasGrant;\n };\n\n return Object.keys(grantsWithExtension).filter(checkPathsForPermission);\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { Theme } from \"@mui/material/styles\";\nimport { Link, useNavigate } from \"react-router-dom\";\nimport { objectBrowserCommon } from \"../Common/FormComponents/common/styleLibrary\";\nimport { encodeURLString, safeDecodeURIComponent } from \"../../../common/utils\";\nimport { Button, CopyIcon, NewPathIcon, Tooltip, Breadcrumbs } from \"mds\";\nimport { hasPermission } from \"../../../common/SecureComponent\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../common/SecureComponent/permissions\";\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport { setSnackBarMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setVersionsModeEnabled } from \"./objectBrowserSlice\";\nimport { getSessionGrantsWildCard } from \"../Buckets/ListBuckets/UploadPermissionUtils\";\n\nconst CreatePathModal = withSuspense(\n React.lazy(\n () => import(\"../Buckets/ListBuckets/Objects/ListObjects/CreatePathModal\"),\n ),\n);\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...objectBrowserCommon,\n slashSpacingStyle: {\n margin: \"0 5px\",\n },\n }),\n);\n\ninterface IObjectBrowser {\n bucketName: string;\n internalPaths: string;\n hidePathButton?: boolean;\n additionalOptions?: React.ReactNode;\n}\n\nconst BrowserBreadcrumbs = ({\n bucketName,\n internalPaths,\n hidePathButton,\n additionalOptions,\n}: IObjectBrowser) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const classes = useStyles();\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const versionedFile = useSelector(\n (state: AppState) => state.objectBrowser.versionedFile,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const [createFolderOpen, setCreateFolderOpen] = useState(false);\n\n const putObjectPermScopes = [\n IAM_SCOPES.S3_PUT_OBJECT,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ];\n\n const sessionGrants = useSelector((state: AppState) =>\n state.console.session ? state.console.session.permissions || {} : {},\n );\n\n let paths = internalPaths;\n\n if (internalPaths !== \"\") {\n paths = `/${internalPaths}`;\n }\n\n const splitPaths = paths.split(\"/\").filter((path) => path !== \"\");\n const lastBreadcrumbsIndex = splitPaths.length - 1;\n\n const pathToCheckPerms = paths || bucketName;\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n pathToCheckPerms,\n putObjectPermScopes,\n );\n\n const canCreatePath =\n hasPermission(\n [pathToCheckPerms, ...sessionGrantWildCards],\n putObjectPermScopes,\n ) || anonymousMode;\n\n let breadcrumbsMap = splitPaths.map((objectItem: string, index: number) => {\n const subSplit = `${splitPaths.slice(0, index + 1).join(\"/\")}/`;\n const route = `/browser/${bucketName}/${\n subSplit ? `${encodeURLString(subSplit)}` : ``\n }`;\n\n if (index === lastBreadcrumbsIndex && objectItem === versionedFile) {\n return null;\n }\n\n return (\n \n /\n {index === lastBreadcrumbsIndex ? (\n \n {safeDecodeURIComponent(objectItem) /*Only for display*/}\n \n ) : (\n {\n dispatch(\n setVersionsModeEnabled({ status: false, objectName: \"\" }),\n );\n }}\n >\n {\n safeDecodeURIComponent(\n objectItem,\n ) /*Only for display to preserve */\n }\n \n )}\n \n );\n });\n\n let versionsItem: any[] = [];\n\n if (versionsMode) {\n versionsItem = [\n \n \n /\n {versionedFile} - Versions\n \n ,\n ];\n }\n\n const listBreadcrumbs: any[] = [\n \n {\n dispatch(setVersionsModeEnabled({ status: false, objectName: \"\" }));\n }}\n >\n {bucketName}\n \n ,\n ...breadcrumbsMap,\n ...versionsItem,\n ];\n\n const closeAddFolderModal = () => {\n setCreateFolderOpen(false);\n };\n\n const goBackFunction = () => {\n if (versionsMode) {\n dispatch(setVersionsModeEnabled({ status: false, objectName: \"\" }));\n } else {\n if (splitPaths.length === 0) {\n navigate(\"/browser\");\n\n return;\n }\n\n const prevPath = splitPaths.slice(0, -1);\n\n navigate(\n `/browser/${bucketName}${\n prevPath.length > 0\n ? `/${encodeURLString(`${prevPath.join(\"/\")}/`)}`\n : \"\"\n }`,\n );\n }\n };\n\n return (\n \n
\n {createFolderOpen && (\n \n )}\n \n \n \n }\n variant={\"regular\"}\n onClick={() => {\n dispatch(setSnackBarMessage(\"Path copied to clipboard\"));\n }}\n style={{\n width: \"28px\",\n height: \"28px\",\n color: \"#969FA8\",\n border: \"#969FA8 1px solid\",\n marginRight: 5,\n }}\n />\n \n
\n {additionalOptions}\n
\n \n }\n >\n {listBreadcrumbs}\n \n {!hidePathButton && (\n \n {\n setCreateFolderOpen(true);\n }}\n disabled={anonymousMode ? false : rewindEnabled || !canCreatePath}\n icon={}\n style={{\n whiteSpace: \"nowrap\",\n }}\n variant={\"regular\"}\n label={\"Create new path\"}\n />\n \n )}\n
\n
{additionalOptions}
\n
\n );\n};\n\nexport default BrowserBreadcrumbs;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport { CSSObject } from \"styled-components\";\nimport { Menu, MenuItem } from \"@mui/material\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport ListItemText from \"@mui/material/ListItemText\";\nimport ListItemIcon from \"@mui/material/ListItemIcon\";\nimport { Button, UploadFolderIcon, UploadIcon } from \"mds\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../common/SecureComponent/permissions\";\nimport { hasPermission } from \"../../../../common/SecureComponent\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport { useSelector } from \"react-redux\";\nimport { AppState } from \"../../../../store\";\nimport { getSessionGrantsWildCard } from \"./UploadPermissionUtils\";\n\ninterface IUploadFilesButton {\n uploadPath: string;\n bucketName: string;\n forceDisable?: boolean;\n uploadFileFunction: (closeFunction: () => void) => void;\n uploadFolderFunction: (closeFunction: () => void) => void;\n classes: any;\n overrideStyles?: CSSObject;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n listUploadIcons: {\n height: 20,\n \"& .min-icon\": {\n width: 18,\n fill: \"rgba(0,0,0,0.87)\",\n },\n },\n });\n\nconst UploadFilesButton = ({\n uploadPath,\n bucketName,\n forceDisable = false,\n uploadFileFunction,\n uploadFolderFunction,\n classes,\n overrideStyles = {},\n}: IUploadFilesButton) => {\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const sessionGrants = useSelector((state: AppState) =>\n state.console.session ? state.console.session.permissions || {} : {},\n );\n\n const putObjectPermScopes = [\n IAM_SCOPES.S3_PUT_OBJECT,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ];\n\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n uploadPath,\n putObjectPermScopes,\n );\n\n const [anchorEl, setAnchorEl] = useState(null);\n const openUploadMenu = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleCloseUpload = () => {\n setAnchorEl(null);\n };\n\n const uploadObjectAllowed =\n hasPermission(\n [uploadPath, ...sessionGrantWildCards],\n putObjectPermScopes,\n ) || anonymousMode;\n\n const uploadFolderAllowed = hasPermission(\n [bucketName, ...sessionGrantWildCards],\n putObjectPermScopes,\n false,\n true,\n );\n\n const uploadEnabled: boolean = uploadObjectAllowed || uploadFolderAllowed;\n\n return (\n \n \n }\n variant={\"callAction\"}\n disabled={forceDisable || !uploadEnabled}\n sx={overrideStyles}\n />\n \n {\n handleCloseUpload();\n }}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"center\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"center\",\n }}\n >\n {\n uploadFileFunction(handleCloseUpload);\n }}\n disabled={!uploadObjectAllowed || forceDisable}\n >\n \n \n \n Upload File\n \n {\n uploadFolderFunction(handleCloseUpload);\n }}\n disabled={!uploadFolderAllowed || forceDisable}\n >\n \n \n \n Upload Folder\n \n \n \n );\n};\n\nexport default withStyles(styles)(UploadFilesButton);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { Button, ClosePanelIcon, Grid } from \"mds\";\nimport makeStyles from \"@mui/styles/makeStyles\";\n\ninterface IDetailsListPanel {\n open: boolean;\n className?: string;\n closePanel: () => void;\n children: React.ReactNode;\n}\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n detailsList: {\n borderColor: \"#EAEDEE\",\n borderWidth: 0,\n borderStyle: \"solid\",\n borderRadius: 3,\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n width: 0,\n transitionDuration: \"0.3s\",\n overflowX: \"hidden\",\n overflowY: \"auto\",\n position: \"relative\",\n opacity: 0,\n marginLeft: -1,\n \"&.open\": {\n width: 300,\n minWidth: 300,\n borderLeftWidth: 1,\n opacity: 1,\n },\n \"@media (max-width: 799px)\": {\n \"&.open\": {\n width: \"100%\",\n minWidth: \"100%\",\n borderLeftWidth: 0,\n },\n },\n },\n }),\n);\n\nconst DetailsListPanel = ({\n open,\n closePanel,\n className = \"\",\n children,\n}: IDetailsListPanel) => {\n const classes = useStyles();\n\n return (\n \n }\n sx={{\n position: \"absolute\",\n right: 5,\n top: 18,\n padding: 0,\n height: 14,\n \"&:hover:not(:disabled)\": {\n backgroundColor: \"transparent\",\n },\n }}\n />\n {children}\n \n );\n};\n\nexport default DetailsListPanel;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const months = [\n { value: \"01\", label: \"January\" },\n { value: \"02\", label: \"February\" },\n { value: \"03\", label: \"March\" },\n { value: \"04\", label: \"April\" },\n { value: \"05\", label: \"May\" },\n { value: \"06\", label: \"June\" },\n { value: \"07\", label: \"July\" },\n { value: \"08\", label: \"August\" },\n { value: \"09\", label: \"September\" },\n { value: \"10\", label: \"October\" },\n { value: \"11\", label: \"November\" },\n { value: \"12\", label: \"December\" },\n];\n\nexport const days = Array.from(Array(31), (_, num) => ({\n value: (num + 1).toString(),\n label: (num + 1).toString(),\n}));\n\nconst currentYear = new Date().getFullYear();\n\nexport const years = Array.from(Array(50), (_, numYear) => ({\n value: (numYear + currentYear).toString(),\n label: (numYear + currentYear).toString(),\n}));\n\nexport const validDate = (year: string, month: string, day: string): any[] => {\n const currentDate = Date.parse(`${year}-${month}-${day}`);\n\n if (isNaN(currentDate)) {\n return [false, \"\"];\n }\n\n const parsedMonth = parseInt(month);\n const parsedDay = parseInt(day);\n\n const monthForString = parsedMonth < 10 ? `0${parsedMonth}` : parsedMonth;\n const dayForString = parsedDay < 10 ? `0${parsedDay}` : parsedDay;\n\n const parsedDate = new Date(currentDate).toISOString().split(\"T\")[0];\n const dateString = `${year}-${monthForString}-${dayForString}`;\n\n return [parsedDate === dateString, dateString];\n};\n\n// twoDigitDate gets a two digit string number used for months or days\n// returns \"NaN\" if number is NaN\nexport const twoDigitDate = (num: number): string => {\n return num < 10 ? `0${num}` : `${num}`;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useState,\n} from \"react\";\nimport clsx from \"clsx\";\nimport { Box, Grid, HelpIcon, InputLabel, Select, Switch, Tooltip } from \"mds\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { days, months, validDate, years } from \"./utils\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n fieldContainer: {\n ...fieldBasic.fieldContainer,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n paddingBottom: 10,\n marginTop: 11,\n marginBottom: 6,\n },\n });\n\ninterface IDateSelectorProps {\n classes: any;\n id: string;\n label: string;\n disableOptions?: boolean;\n addSwitch?: boolean;\n tooltip?: string;\n borderBottom?: boolean;\n value?: string;\n onDateChange: (date: string, isValid: boolean) => any;\n}\n\nconst DateSelector = forwardRef(\n (\n {\n classes,\n id,\n label,\n disableOptions = false,\n addSwitch = false,\n tooltip = \"\",\n borderBottom = false,\n onDateChange,\n value = \"\",\n }: IDateSelectorProps,\n ref: any,\n ) => {\n useImperativeHandle(ref, () => ({ resetDate }));\n\n const [dateEnabled, setDateEnabled] = useState(false);\n const [month, setMonth] = useState(\"\");\n const [day, setDay] = useState(\"\");\n const [year, setYear] = useState(\"\");\n\n useEffect(() => {\n // verify if there is a current value\n // assume is in the format \"2021-12-30\"\n if (value !== \"\") {\n const valueSplit = value.split(\"-\");\n\n setYear(valueSplit[0]);\n setMonth(valueSplit[1]);\n // Turn to single digit to be displayed on dropdown buttons\n setDay(`${parseInt(valueSplit[2])}`);\n }\n }, [value]);\n\n useEffect(() => {\n const [isValid, dateString] = validDate(year, month, day);\n onDateChange(dateString, isValid);\n }, [month, day, year, onDateChange]);\n\n const resetDate = () => {\n setMonth(\"\");\n setDay(\"\");\n setYear(\"\");\n };\n\n const isDateDisabled = () => {\n if (disableOptions) {\n return disableOptions;\n } else if (addSwitch) {\n return !dateEnabled;\n } else {\n return false;\n }\n };\n\n const monthForDropDown = [{ value: \"\", label: \"\" }, ...months];\n const daysForDrop = [{ value: \"\", label: \"\" }, ...days];\n const yearsForDrop = [{ value: \"\", label: \"\" }, ...years];\n\n return (\n \n
\n \n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n {addSwitch && (\n {\n setDateEnabled(e.target.checked);\n if (!e.target.checked) {\n onDateChange(\"\", true);\n }\n }}\n switchOnly\n />\n )}\n
\n
\n \n {\n setMonth(newValue);\n }}\n options={monthForDropDown}\n label={\"\"}\n disabled={isDateDisabled()}\n />\n\n {\n setDay(newValue);\n }}\n options={daysForDrop}\n label={\"\"}\n disabled={isDateDisabled()}\n />\n\n {\n setYear(newValue);\n }}\n options={yearsForDrop}\n label={\"\"}\n disabled={isDateDisabled()}\n />\n \n \n );\n },\n);\n\nexport default withStyles(styles)(DateSelector);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useRef, useState } from \"react\";\n\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Button, Grid, RadioGroup, Switch } from \"mds\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\n\nimport { twoDigitDate } from \"../../../../Common/FormComponents/DateSelector/utils\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport DateSelector from \"../../../../Common/FormComponents/DateSelector/DateSelector\";\nimport { setModalErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { useSelector } from \"react-redux\";\nimport { BucketObject, ObjectRetentionMode } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { encodeURLString } from \"common/utils\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...formFieldStyles,\n ...modalStyleUtils,\n ...spacingUtils,\n });\n\ninterface ISetRetentionProps {\n classes: any;\n open: boolean;\n closeModalAndRefresh: (updateInfo: boolean) => void;\n objectName: string;\n bucketName: string;\n objectInfo: BucketObject;\n}\n\ninterface IRefObject {\n resetDate: () => void;\n}\n\nconst SetRetention = ({\n classes,\n open,\n closeModalAndRefresh,\n objectName,\n objectInfo,\n bucketName,\n}: ISetRetentionProps) => {\n const dispatch = useAppDispatch();\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const [statusEnabled, setStatusEnabled] = useState(true);\n const [type, setType] = useState(\"\");\n const [date, setDate] = useState(\"\");\n const [isDateValid, setIsDateValid] = useState(false);\n const [isSaving, setIsSaving] = useState(false);\n const [alreadyConfigured, setAlreadyConfigured] = useState(false);\n\n useEffect(() => {\n if (objectInfo.retention_mode) {\n setType(retentionConfig?.mode || ObjectRetentionMode.Governance);\n setAlreadyConfigured(true);\n }\n // get retention_until_date if defined\n if (objectInfo.retention_until_date) {\n const valueDate = new Date(objectInfo.retention_until_date);\n if (valueDate.toString() !== \"Invalid Date\") {\n const year = valueDate.getFullYear();\n const month = twoDigitDate(valueDate.getMonth() + 1);\n const day = valueDate.getDate();\n if (!isNaN(day) && month !== \"NaN\" && !isNaN(year)) {\n setDate(`${year}-${month}-${day}`);\n }\n }\n setAlreadyConfigured(true);\n }\n }, [objectInfo, retentionConfig?.mode]);\n\n const dateElement = useRef(null);\n\n const dateFieldDisabled = () => {\n return !(statusEnabled && (type === \"governance\" || type === \"compliance\"));\n };\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n };\n\n const resetForm = () => {\n setStatusEnabled(false);\n setType(ObjectRetentionMode.Governance);\n if (dateElement.current) {\n dateElement.current.resetDate();\n }\n };\n\n const addRetention = (\n selectedObject: string,\n versionId: string | null,\n expireDate: string,\n ) => {\n api.buckets\n .putObjectRetention(\n bucketName,\n {\n prefix: encodeURLString(selectedObject),\n version_id: versionId || \"\",\n },\n {\n expires: expireDate,\n mode: type as ObjectRetentionMode,\n },\n )\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSaving(false);\n });\n };\n\n const disableRetention = (\n selectedObject: string,\n versionId: string | null,\n ) => {\n api.buckets\n .deleteObjectRetention(bucketName, {\n prefix: encodeURLString(selectedObject),\n version_id: versionId || \"\",\n })\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSaving(false);\n });\n };\n\n const saveNewRetentionPolicy = () => {\n setIsSaving(true);\n const selectedObject = objectInfo.name || \"\";\n const versionId = objectInfo.version_id || null;\n\n const expireDate =\n !statusEnabled && type === \"governance\" ? \"\" : `${date}T23:59:59Z`;\n\n if (!statusEnabled && type === \"governance\") {\n disableRetention(selectedObject, versionId);\n\n return;\n }\n\n addRetention(selectedObject, versionId, expireDate);\n };\n\n const showSwitcher =\n alreadyConfigured && (type === \"governance\" || type === \"\");\n\n return (\n {\n resetForm();\n closeModalAndRefresh(false);\n }}\n >\n
\n Selected Object: {objectName}\n
\n ) => {\n onSubmit(e);\n }}\n >\n {showSwitcher && (\n \n ) => {\n setStatusEnabled(!statusEnabled);\n }}\n label={\"Status\"}\n indicatorLabels={[\"Enabled\", \"Disabled\"]}\n />\n \n )}\n \n {\n setType(e.target.value as ObjectRetentionMode);\n }}\n selectorOptions={[\n { label: \"Governance\", value: ObjectRetentionMode.Governance },\n { label: \"Compliance\", value: ObjectRetentionMode.Compliance },\n ]}\n />\n \n \n {\n setIsDateValid(isValid);\n if (isValid) {\n setDate(date);\n }\n }}\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(SetRetention);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const isVersionedMode = (status: string | undefined) => {\n return status === \"Enabled\" || status === \"Suspended\";\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { ErrorResponseHandler } from \"../../../../../../common/types\";\nimport { decodeURLString } from \"../../../../../../common/utils\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport useApi from \"../../../../Common/Hooks/useApi\";\nimport { ConfirmDeleteIcon, Switch } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { useSelector } from \"react-redux\";\nimport { isVersionedMode } from \"../../../../../../utils/validationFunctions\";\nimport { BucketVersioningResponse } from \"api/consoleApi\";\n\ninterface IDeleteObjectProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedObject: string;\n selectedBucket: string;\n\n versioningInfo: BucketVersioningResponse | undefined;\n selectedVersion?: string;\n}\n\nconst DeleteObject = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedObject,\n versioningInfo,\n selectedVersion = \"\",\n}: IDeleteObjectProps) => {\n const dispatch = useAppDispatch();\n const onDelSuccess = () => closeDeleteModalAndRefresh(true);\n const onDelError = (err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n\n // We close the modal box on access denied.\n if (err.detailedError === \"Access Denied.\") {\n closeDeleteModalAndRefresh(true);\n }\n };\n const onClose = () => closeDeleteModalAndRefresh(false);\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n const [deleteVersions, setDeleteVersions] = useState(false);\n const [bypassGovernance, setBypassGovernance] = useState(false);\n\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const canBypass =\n hasPermission(\n [selectedBucket],\n [IAM_SCOPES.S3_BYPASS_GOVERNANCE_RETENTION],\n ) && retentionConfig?.mode === \"governance\";\n\n if (!selectedObject) {\n return null;\n }\n const onConfirmDelete = () => {\n const decodedSelectedObject = decodeURLString(selectedObject);\n const recursive = decodedSelectedObject.endsWith(\"/\");\n invokeDeleteApi(\n \"DELETE\",\n `/api/v1/buckets/${selectedBucket}/objects?path=${selectedObject}${\n selectedVersion !== \"\"\n ? `&version_id=${selectedVersion}`\n : `&recursive=${recursive}&all_versions=${deleteVersions}`\n }${bypassGovernance ? \"&bypass=true\" : \"\"}`,\n );\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete:
\n {decodeURLString(selectedObject)}{\" \"}\n {selectedVersion !== \"\" ? (\n \n
\n
\n Version ID:\n
\n {selectedVersion}\n
\n ) : (\n \"\"\n )}\n ?
\n
\n {isVersionedMode(versioningInfo?.status) &&\n selectedVersion === \"\" && (\n \n {\n setDeleteVersions(!deleteVersions);\n }}\n description=\"\"\n />\n \n )}\n {canBypass && (deleteVersions || selectedVersion !== \"\") && (\n \n \n {\n setBypassGovernance(!bypassGovernance);\n }}\n description=\"\"\n />\n \n \n )}\n {deleteVersions && (\n \n \n This will remove the object as well as all of its versions,{\" \"}\n
\n This action is irreversible.\n \n
\n Are you sure you want to continue?\n
\n )}\n
\n }\n />\n );\n};\n\nexport default DeleteObject;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport get from \"lodash/get\";\nimport { Button, Grid, Switch } from \"mds\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\n\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport { encodeURLString } from \"../../../../../../common/utils\";\n\nimport { setModalErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { BucketObject, ObjectLegalHoldStatus } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...formFieldStyles,\n ...modalStyleUtils,\n ...spacingUtils,\n });\n\ninterface ISetRetentionProps {\n classes: any;\n open: boolean;\n closeModalAndRefresh: (reload: boolean) => void;\n objectName: string;\n bucketName: string;\n actualInfo: BucketObject;\n}\n\nconst SetLegalHoldModal = ({\n classes,\n open,\n closeModalAndRefresh,\n objectName,\n bucketName,\n actualInfo,\n}: ISetRetentionProps) => {\n const dispatch = useAppDispatch();\n const [legalHoldEnabled, setLegalHoldEnabled] = useState(false);\n const [isSaving, setIsSaving] = useState(false);\n const versionId = actualInfo.version_id;\n\n useEffect(() => {\n const status = get(actualInfo, \"legal_hold_status\", \"OFF\");\n setLegalHoldEnabled(status === \"ON\");\n }, [actualInfo]);\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n setIsSaving(true);\n\n api.buckets\n .putObjectLegalHold(\n bucketName,\n {\n prefix: encodeURLString(objectName),\n version_id: versionId || \"\",\n },\n {\n status: legalHoldEnabled\n ? ObjectLegalHoldStatus.Enabled\n : ObjectLegalHoldStatus.Disabled,\n },\n )\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSaving(false);\n });\n };\n\n const resetForm = () => {\n setLegalHoldEnabled(false);\n };\n\n return (\n {\n resetForm();\n closeModalAndRefresh(false);\n }}\n >\n \n Object: {bucketName}\n \n\n ) => {\n onSubmit(e);\n }}\n >\n \n ) => {\n setLegalHoldEnabled(!legalHoldEnabled);\n }}\n label={\"Legal Hold Status\"}\n indicatorLabels={[\"Enabled\", \"Disabled\"]}\n tooltip={\n \"To enable this feature you need to enable versioning on the bucket before creation\"\n }\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(SetLegalHoldModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { withStyles } from \"@mui/styles\";\nimport Grid from \"@mui/material/Grid\";\nimport { Box, Table, TableBody, TableCell, TableRow } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport {\n detailsPanel,\n spacingUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { safeDecodeURIComponent } from \"../../../../../../common/utils\";\n\ninterface IObjectMetadata {\n metaData: any;\n classes?: any;\n linear?: boolean;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n titleItem: {\n width: \"35%\",\n },\n ...spacingUtils,\n ...detailsPanel,\n });\n\nconst itemRendererFn = (element: any) => {\n return Array.isArray(element)\n ? element.map(safeDecodeURIComponent).join(\", \")\n : safeDecodeURIComponent(element);\n};\n\nconst ObjectMetaData = ({\n metaData,\n classes,\n linear = false,\n}: IObjectMetadata) => {\n const metaKeys = Object.keys(metaData);\n\n if (linear) {\n return (\n \n {metaKeys.map((element: string, index: number) => {\n const renderItem = itemRendererFn(metaData[element]);\n return (\n \n {element}\n
\n {renderItem}\n \n );\n })}\n
\n );\n }\n\n return (\n \n \n \n Object Metadata\n \n \n\n \n \n \n {metaKeys.map((element: string, index: number) => {\n const renderItem = itemRendererFn(metaData[element]);\n return (\n \n \n {element}\n \n {renderItem}\n \n );\n })}\n \n
\n
\n \n );\n};\n\nexport default withStyles(styles)(ObjectMetaData);\n","import React from \"react\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Theme } from \"@mui/material/styles\";\nimport { replaceUnicodeChar } from \"../../../../../../common/utils\";\n\ninterface IIconWithLabel {\n classes: any;\n icon: JSX.Element;\n strings: string[];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n fileName: {\n display: \"flex\",\n alignItems: \"center\",\n \"& .min-icon\": {\n width: 16,\n height: 16,\n marginRight: 4,\n minWidth: 16,\n minHeight: 16,\n },\n },\n fileNameText: {\n whiteSpace: \"pre\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n },\n });\n\nconst IconWithLabel = ({ classes, icon, strings }: IIconWithLabel) => {\n return (\n
\n {icon}\n \n {replaceUnicodeChar(strings[strings.length - 1])}\n \n
\n );\n};\n\nexport default withStyles(styles)(IconWithLabel);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\n\nimport {\n FileBookIcon,\n FileCodeIcon,\n FileConfigIcon,\n FileDbIcon,\n FileFontIcon,\n FileImageIcon,\n FileLockIcon,\n FileMissingIcon,\n FileMusicIcon,\n FileNonType,\n FilePdfIcon,\n FilePptIcon,\n FileTxtIcon,\n FileVideoIcon,\n FileXlsIcon,\n FileZipIcon,\n FolderBrowserIcon,\n} from \"mds\";\nimport IconWithLabel from \"./IconWithLabel\";\n\ninterface IExtToIcon {\n icon: any;\n extensions: string[];\n}\n\nexport const extensionToIcon: IExtToIcon[] = [\n {\n icon: ,\n extensions: [\"mp4\", \"mov\", \"avi\", \"mpeg\", \"mpg\"],\n },\n {\n icon: ,\n extensions: [\"mp3\", \"m4a\", \"aac\"],\n },\n {\n icon: ,\n extensions: [\"pdf\"],\n },\n {\n icon: ,\n extensions: [\"ppt\", \"pptx\"],\n },\n {\n icon: ,\n extensions: [\"xls\", \"xlsx\"],\n },\n {\n icon: ,\n extensions: [\"cer\", \"crt\", \"pem\"],\n },\n {\n icon: ,\n extensions: [\"html\", \"xml\", \"css\", \"py\", \"go\", \"php\", \"cpp\", \"h\", \"java\"],\n },\n {\n icon: ,\n extensions: [\"cfg\", \"yaml\"],\n },\n {\n icon: ,\n extensions: [\"sql\"],\n },\n {\n icon: ,\n extensions: [\"ttf\", \"otf\"],\n },\n {\n icon: ,\n extensions: [\"doc\", \"docx\", \"txt\", \"rtf\"],\n },\n {\n icon: ,\n extensions: [\"zip\", \"rar\", \"tar\", \"gz\"],\n },\n {\n icon: ,\n extensions: [\"epub\", \"mobi\", \"azw\", \"azw3\"],\n },\n {\n icon: ,\n extensions: [\"jpeg\", \"jpg\", \"gif\", \"tiff\", \"png\", \"heic\", \"dng\"],\n },\n];\n\nexport const displayFileIconName = (\n element: string,\n returnOnlyIcon: boolean = false,\n) => {\n let elementString = element;\n let icon = ;\n // Element is a folder\n if (element.endsWith(\"/\")) {\n icon = ;\n elementString = element.slice(0, -1);\n }\n\n const lowercaseElement = element.toLowerCase();\n for (const etc of extensionToIcon) {\n for (const ext of etc.extensions) {\n if (lowercaseElement.endsWith(`.${ext}`)) {\n icon = etc.icon;\n }\n }\n }\n\n if (!element.endsWith(\"/\") && element.indexOf(\".\") < 0) {\n icon = ;\n }\n\n const splitItem = elementString.split(\"/\");\n\n if (returnOnlyIcon) {\n return icon;\n }\n\n return ;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { Box, Grid } from \"@mui/material\";\nimport {\n AddNewTagIcon,\n Button,\n DisabledIcon,\n EditTagIcon,\n InputBox,\n SectionTitle,\n} from \"mds\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { SecureComponent } from \"../../../../../../common/SecureComponent\";\nimport Chip from \"@mui/material/Chip\";\nimport CloseIcon from \"@mui/icons-material/Close\";\nimport {\n selDistSet,\n setModalErrorSnackMessage,\n} from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { encodeURLString } from \"common/utils\";\nimport { useSelector } from \"react-redux\";\n\ninterface ITagModal {\n modalOpen: boolean;\n bucketName: string;\n actualInfo: BucketObject;\n onCloseAndUpdate: (refresh: boolean) => void;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n newTileHeader: {\n fontSize: 18,\n fontWeight: \"bold\",\n color: \"#000\",\n margin: \"35px 0\",\n paddingBottom: 15,\n display: \"flex\",\n alignItems: \"center\",\n \"& > svg\": {\n marginRight: 10,\n },\n },\n tagsForLabel: {\n fontSize: 16,\n margin: \"20px 0 30px\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n width: \"100%\",\n },\n currentTagsContainer: {\n fontSize: 14,\n fontWeight: \"normal\",\n },\n noTagsForObject: {\n color: \"#858585\",\n },\n deleteTag: {\n color: \"#C83B51\",\n marginLeft: 5,\n },\n ...formFieldStyles,\n ...modalStyleUtils,\n ...spacingUtils,\n });\n\nconst AddTagModal = ({\n modalOpen,\n onCloseAndUpdate,\n bucketName,\n actualInfo,\n classes,\n}: ITagModal) => {\n const dispatch = useAppDispatch();\n const distributedSetup = useSelector(selDistSet);\n const [newKey, setNewKey] = useState(\"\");\n const [newLabel, setNewLabel] = useState(\"\");\n const [isSending, setIsSending] = useState(false);\n const [deleteEnabled, setDeleteEnabled] = useState(false);\n const [deleteKey, setDeleteKey] = useState(\"\");\n const [deleteLabel, setDeleteLabel] = useState(\"\");\n\n const selectedObject = encodeURLString(actualInfo.name || \"\");\n\n const currentTags = actualInfo.tags;\n const currTagKeys = Object.keys(currentTags || {});\n\n const allPathData = actualInfo.name?.split(\"/\");\n const currentItem = allPathData?.pop() || \"\";\n\n const resetForm = () => {\n setNewLabel(\"\");\n setNewKey(\"\");\n };\n\n const addTagProcess = () => {\n setIsSending(true);\n const newTag: any = {};\n\n newTag[newKey] = newLabel;\n const newTagList = { ...currentTags, ...newTag };\n\n const verID = distributedSetup ? actualInfo.version_id || \"\" : \"null\";\n\n api.buckets\n .putObjectTags(\n bucketName,\n { prefix: selectedObject, version_id: verID },\n { tags: newTagList },\n )\n .then(() => {\n onCloseAndUpdate(true);\n setIsSending(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSending(false);\n });\n };\n\n const deleteTagProcess = () => {\n const cleanObject: any = { ...currentTags };\n delete cleanObject[deleteKey];\n\n const verID = distributedSetup ? actualInfo.version_id || \"\" : \"null\";\n\n api.buckets\n .putObjectTags(\n bucketName,\n { prefix: selectedObject, version_id: verID },\n { tags: cleanObject },\n )\n .then(() => {\n onCloseAndUpdate(true);\n setIsSending(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSending(false);\n });\n };\n\n const onDeleteTag = (tagKey: string, tag: string) => {\n setDeleteKey(tagKey);\n setDeleteLabel(tag);\n setDeleteEnabled(true);\n };\n\n const cancelDelete = () => {\n setDeleteKey(\"\");\n setDeleteLabel(\"\");\n setDeleteEnabled(false);\n };\n\n const tagsFor = (plural: boolean) => (\n
\n Tag{plural ? \"s\" : \"\"} for: {currentItem}\n
\n );\n\n return (\n \n {\n onCloseAndUpdate(true);\n }}\n titleIcon={\n deleteEnabled ? (\n \n ) : (\n \n )\n }\n >\n {deleteEnabled ? (\n \n \n {tagsFor(false)}\n Are you sure you want to delete the tag{\" \"}\n \n {deleteKey} : {deleteLabel}\n {\" \"}\n ?\n \n \n \n \n \n \n ) : (\n \n \n \n {tagsFor(true)}\n
\n Current Tags:\n
\n {currTagKeys.length === 0 ? (\n \n There are no tags for this object\n \n ) : (\n \n )}\n \n {currTagKeys.map((tagKey: string, index: number) => {\n const tag = get(currentTags, `${tagKey}`, \"\");\n if (tag !== \"\") {\n return (\n \n }\n onDelete={() => {\n onDeleteTag(tagKey, tag);\n }}\n />\n \n );\n }\n return null;\n })}\n \n
\n \n \n \n \n } separator={false}>\n Add New Tag\n \n \n {\n setNewKey(e.target.value);\n }}\n />\n \n \n {\n setNewLabel(e.target.value);\n }}\n />\n \n \n \n \n \n \n \n
\n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(AddTagModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport {\n Button,\n InspectMenuIcon,\n PasswordKeyIcon,\n Switch,\n Grid,\n Box,\n} from \"mds\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n decodeURLString,\n deleteCookie,\n encodeURLString,\n getCookieValue,\n performDownload,\n} from \"../../../../../../common/utils\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { DialogContentText } from \"@mui/material\";\nimport KeyRevealer from \"../../../../Tools/KeyRevealer\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...formFieldStyles,\n ...modalStyleUtils,\n ...spacingUtils,\n });\n\ninterface IInspectObjectProps {\n classes: any;\n closeInspectModalAndRefresh: (refresh: boolean) => void;\n inspectOpen: boolean;\n inspectPath: string;\n volumeName: string;\n}\n\nconst InspectObject = ({\n classes,\n closeInspectModalAndRefresh,\n inspectOpen,\n inspectPath,\n volumeName,\n}: IInspectObjectProps) => {\n const dispatch = useAppDispatch();\n const onClose = () => closeInspectModalAndRefresh(false);\n const [isEncrypt, setIsEncrypt] = useState(true);\n const [decryptionKey, setDecryptionKey] = useState(\"\");\n const [insFileName, setInsFileName] = useState(\"\");\n\n if (!inspectPath) {\n return null;\n }\n const makeRequest = async (url: string) => {\n return await fetch(url, { method: \"GET\" });\n };\n\n const performInspect = async () => {\n const file = encodeURLString(inspectPath + \"/xl.meta\");\n const volume = encodeURLString(volumeName);\n\n const urlOfInspectApi = `/api/v1/admin/inspect?volume=${volume}&file=${file}&encrypt=${isEncrypt}`;\n\n makeRequest(urlOfInspectApi)\n .then(async (res) => {\n if (!res.ok) {\n const resErr: any = await res.json();\n\n dispatch(\n setErrorSnackMessage({\n errorMessage: resErr.message,\n detailedError: resErr.code,\n }),\n );\n }\n const blob: Blob = await res.blob();\n\n //@ts-ignore\n const filename = res.headers.get(\"content-disposition\").split('\"')[1];\n const decryptKey = getCookieValue(filename) || \"\";\n\n performDownload(blob, filename);\n setInsFileName(filename);\n if (decryptKey === \"\") {\n onClose();\n return;\n }\n setDecryptionKey(decryptKey);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(err));\n });\n };\n\n const onCloseDecKeyModal = () => {\n deleteCookie(insFileName);\n onClose();\n setDecryptionKey(\"\");\n };\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n };\n\n return (\n \n {!decryptionKey && (\n }\n title={`Inspect Object`}\n onClose={onClose}\n >\n ) => {\n onSubmit(e);\n }}\n >\n Would you like to encrypt {decodeURLString(inspectPath)}?{\" \"}\n
\n {\n setIsEncrypt(!isEncrypt);\n }}\n description=\"\"\n />\n \n \n \n \n \n )}\n {decryptionKey ? (\n }\n >\n \n \n This will be displayed only once. It cannot be recovered.\n
\n Use secure medium to share this key.\n
\n \n \n \n
\n \n ) : null}\n
\n );\n};\n\nexport default withStyles(styles)(InspectObject);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { encodeURLString, getClientOS } from \"../../../common/utils\";\nimport { makeid, storeCallForObjectWithID } from \"./transferManager\";\nimport { download } from \"../Buckets/ListBuckets/Objects/utils\";\nimport {\n cancelObjectInList,\n completeObject,\n failObject,\n setLongFileOpen,\n setNewObject,\n updateProgress,\n} from \"./objectBrowserSlice\";\nimport { AppDispatch } from \"../../../store\";\nimport { setSnackBarMessage } from \"../../../systemSlice\";\nimport { BucketObject } from \"api/consoleApi\";\n\nexport const downloadObject = (\n dispatch: AppDispatch,\n bucketName: string,\n internalPaths: string,\n object: BucketObject,\n) => {\n const identityDownload = encodeURLString(\n `${bucketName}-${object.name}-${new Date().getTime()}-${Math.random()}`,\n );\n\n const isWinOs = getClientOS().toLowerCase().includes(\"win\");\n\n if ((object.name?.length || 0) > 200 && isWinOs) {\n dispatch(setLongFileOpen(true));\n return;\n }\n\n const ID = makeid(8);\n\n const downloadCall = download(\n bucketName,\n internalPaths,\n object.version_id,\n object.size || 0,\n null,\n ID,\n (progress) => {\n dispatch(\n updateProgress({\n instanceID: identityDownload,\n progress: progress,\n }),\n );\n },\n () => {\n dispatch(completeObject(identityDownload));\n },\n (msg: string) => {\n dispatch(failObject({ instanceID: identityDownload, msg }));\n },\n () => {\n dispatch(cancelObjectInList(identityDownload));\n },\n () => {\n dispatch(\n setSnackBarMessage(\n \"File download will be handled directly by the browser.\",\n ),\n );\n },\n );\n\n storeCallForObjectWithID(ID, downloadCall);\n dispatch(\n setNewObject({\n ID,\n bucketName,\n done: false,\n instanceID: identityDownload,\n percentage: 0,\n prefix: object.name || \"\",\n type: \"download\",\n waitingForFile: true,\n failed: false,\n cancelled: false,\n errorMessage: \"\",\n }),\n );\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { Button, EditIcon } from \"mds\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { Theme } from \"@mui/material/styles\";\nimport {\n containerForHeader,\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport { useAppDispatch } from \"../../../store\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport FormSwitchWrapper from \"../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport { downloadObject } from \"./utils\";\nimport { BucketObject } from \"api/consoleApi\";\n\ninterface IRenameLongFilename {\n open: boolean;\n bucketName: string;\n internalPaths: string;\n currentItem: string;\n actualInfo: BucketObject;\n closeModal: () => void;\n}\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...modalStyleUtils,\n ...formFieldStyles,\n ...spacingUtils,\n ...containerForHeader,\n }),\n);\n\nconst RenameLongFileName = ({\n open,\n closeModal,\n currentItem,\n internalPaths,\n actualInfo,\n bucketName,\n}: IRenameLongFilename) => {\n const classes = useStyles();\n const dispatch = useAppDispatch();\n\n const [newFileName, setNewFileName] = useState(currentItem);\n const [acceptLongName, setAcceptLongName] = useState(false);\n\n const doDownload = (e: React.FormEvent) => {\n e.preventDefault();\n downloadObject(dispatch, bucketName, internalPaths, actualInfo);\n closeModal();\n };\n\n return (\n }\n >\n
\n The file you are trying to download has a long name.\n
\n This can cause issues on Windows Systems by trimming the file name after\n download.\n
\n
We recommend to rename the file download\n
\n ) => {\n doDownload(e);\n }}\n >\n \n \n \n ) => {\n setNewFileName(event.target.value);\n }}\n label=\"\"\n type={\"text\"}\n value={newFileName}\n error={\n newFileName.length > 200 && !acceptLongName\n ? \"Filename should be less than 200 characters long.\"\n : \"\"\n }\n />\n \n \n ) => {\n setAcceptLongName(event.target.checked);\n if (event.target.checked) {\n setNewFileName(currentItem);\n }\n }}\n label={\"Use Original Name\"}\n />\n \n \n \n 200 && !acceptLongName}\n label={\"Download File\"}\n />\n \n \n \n \n );\n};\n\nexport default RenameLongFileName;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { Box } from \"@mui/material\";\nimport { withStyles } from \"@mui/styles\";\nimport {\n ActionsList,\n Button,\n DeleteIcon,\n DownloadIcon,\n InspectMenuIcon,\n LegalHoldIcon,\n Loader,\n MetadataIcon,\n ObjectInfoIcon,\n PreviewIcon,\n RetentionIcon,\n ShareIcon,\n SimpleHeader,\n TagsIcon,\n VersionsIcon,\n} from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport get from \"lodash/get\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n actionsTray,\n detailsPanel,\n spacingUtils,\n textStyleUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { AllowedPreviews, previewObjectType } from \"../utils\";\n\nimport {\n decodeURLString,\n niceBytes,\n niceBytesInt,\n niceDaysInt,\n} from \"../../../../../../common/utils\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../../common/SecureComponent/permissions\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport ShareFile from \"../ObjectDetails/ShareFile\";\nimport SetRetention from \"../ObjectDetails/SetRetention\";\nimport DeleteObject from \"../ListObjects/DeleteObject\";\nimport SetLegalHoldModal from \"../ObjectDetails/SetLegalHoldModal\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../../../common/SecureComponent\";\nimport PreviewFileModal from \"../Preview/PreviewFileModal\";\nimport ObjectMetaData from \"../ObjectDetails/ObjectMetaData\";\nimport { displayFileIconName } from \"./utils\";\nimport TagsModal from \"../ObjectDetails/TagsModal\";\nimport InspectObject from \"./InspectObject\";\nimport { selDistSet } from \"../../../../../../systemSlice\";\nimport {\n setLoadingObjectInfo,\n setLoadingVersions,\n setSelectedVersion,\n setVersionsModeEnabled,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport RenameLongFileName from \"../../../../ObjectBrowser/RenameLongFilename\";\nimport TooltipWrapper from \"../../../../Common/TooltipWrapper/TooltipWrapper\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { BucketObject, BucketVersioningResponse } from \"api/consoleApi\";\nimport { api } from \"api\";\n\nconst styles = () =>\n createStyles({\n ObjectDetailsTitle: {\n display: \"flex\",\n alignItems: \"center\",\n \"& .min-icon\": {\n width: 26,\n height: 26,\n minWidth: 26,\n minHeight: 26,\n },\n },\n objectNameContainer: {\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n overflow: \"hidden\",\n alignItems: \"center\",\n marginLeft: 10,\n },\n capitalizeFirst: {\n textTransform: \"capitalize\",\n },\n\n ...actionsTray,\n ...spacingUtils,\n ...textStyleUtils,\n ...detailsPanel,\n });\n\nconst emptyFile: BucketObject = {\n is_latest: true,\n last_modified: \"\",\n legal_hold_status: \"\",\n name: \"\",\n retention_mode: \"\",\n retention_until_date: \"\",\n size: 0,\n tags: {},\n version_id: undefined,\n};\n\ninterface IObjectDetailPanelProps {\n classes: any;\n internalPaths: string;\n bucketName: string;\n versioningInfo: BucketVersioningResponse;\n locking: boolean | undefined;\n onClosePanel: (hardRefresh: boolean) => void;\n}\n\nconst ObjectDetailPanel = ({\n classes,\n internalPaths,\n bucketName,\n versioningInfo,\n locking,\n onClosePanel,\n}: IObjectDetailPanelProps) => {\n const dispatch = useAppDispatch();\n\n const distributedSetup = useSelector(selDistSet);\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const selectedVersion = useSelector(\n (state: AppState) => state.objectBrowser.selectedVersion,\n );\n const loadingObjectInfo = useSelector(\n (state: AppState) => state.objectBrowser.loadingObjectInfo,\n );\n\n const [shareFileModalOpen, setShareFileModalOpen] = useState(false);\n const [retentionModalOpen, setRetentionModalOpen] = useState(false);\n const [tagModalOpen, setTagModalOpen] = useState(false);\n const [legalholdOpen, setLegalholdOpen] = useState(false);\n const [inspectModalOpen, setInspectModalOpen] = useState(false);\n const [actualInfo, setActualInfo] = useState(null);\n const [allInfoElements, setAllInfoElements] = useState([]);\n const [objectToShare, setObjectToShare] = useState(null);\n const [versions, setVersions] = useState([]);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [previewOpen, setPreviewOpen] = useState(false);\n const [totalVersionsSize, setTotalVersionsSize] = useState(0);\n const [longFileOpen, setLongFileOpen] = useState(false);\n const [metaData, setMetaData] = useState(null);\n const [loadMetadata, setLoadingMetadata] = useState(false);\n\n const internalPathsDecoded = decodeURLString(internalPaths) || \"\";\n const allPathData = internalPathsDecoded.split(\"/\");\n const currentItem = allPathData.pop() || \"\";\n\n // calculate object name to display\n let objectNameArray: string[] = [];\n if (actualInfo && actualInfo.name) {\n objectNameArray = actualInfo.name.split(\"/\");\n }\n\n useEffect(() => {\n if (distributedSetup && allInfoElements && allInfoElements.length >= 1) {\n let infoElement =\n allInfoElements.find((el: BucketObject) => el.is_latest) || emptyFile;\n\n if (selectedVersion !== \"\") {\n infoElement =\n allInfoElements.find(\n (el: BucketObject) => el.version_id === selectedVersion,\n ) || emptyFile;\n }\n\n if (!infoElement.is_delete_marker) {\n setLoadingMetadata(true);\n }\n\n setActualInfo(infoElement);\n }\n }, [selectedVersion, distributedSetup, allInfoElements]);\n\n useEffect(() => {\n if (loadingObjectInfo && internalPaths !== \"\") {\n api.buckets\n .listObjects(bucketName, {\n prefix: internalPaths,\n with_versions: distributedSetup,\n })\n .then((res) => {\n const result: BucketObject[] = res.data.objects || [];\n if (distributedSetup) {\n setAllInfoElements(result);\n setVersions(result);\n\n const tVersionSize = result.reduce(\n (acc: number, currValue: BucketObject): number => {\n if (currValue?.size) {\n return acc + currValue.size;\n }\n return acc;\n },\n 0,\n );\n\n setTotalVersionsSize(tVersionSize);\n } else {\n const resInfo = result[0];\n\n setActualInfo(resInfo);\n setVersions([]);\n\n if (!resInfo.is_delete_marker) {\n setLoadingMetadata(true);\n }\n }\n\n dispatch(setLoadingObjectInfo(false));\n })\n .catch((err) => {\n console.error(\"Error loading object details\", err.error);\n dispatch(setLoadingObjectInfo(false));\n });\n }\n }, [\n loadingObjectInfo,\n bucketName,\n internalPaths,\n dispatch,\n distributedSetup,\n selectedVersion,\n ]);\n\n useEffect(() => {\n if (loadMetadata && internalPaths !== \"\") {\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: internalPaths,\n })\n .then((res) => {\n let metadata = get(res.data, \"objectMetadata\", {});\n\n setMetaData(metadata);\n setLoadingMetadata(false);\n })\n .catch((err) => {\n console.error(\"Error Getting Metadata Status: \", err.detailedError);\n setLoadingMetadata(false);\n });\n }\n }, [bucketName, internalPaths, loadMetadata]);\n\n let tagKeys: string[] = [];\n\n if (actualInfo && actualInfo.tags) {\n tagKeys = Object.keys(actualInfo.tags);\n }\n\n const openRetentionModal = () => {\n setRetentionModalOpen(true);\n };\n\n const closeRetentionModal = (updateInfo: boolean) => {\n setRetentionModalOpen(false);\n if (updateInfo) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const shareObject = () => {\n setShareFileModalOpen(true);\n };\n\n const closeShareModal = () => {\n setObjectToShare(null);\n setShareFileModalOpen(false);\n };\n\n const closeFileOpen = () => {\n setLongFileOpen(false);\n };\n\n const closeDeleteModal = (closeAndReload: boolean) => {\n setDeleteOpen(false);\n\n if (closeAndReload && selectedVersion === \"\") {\n onClosePanel(true);\n } else {\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedVersion(\"\"));\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeAddTagModal = (reloadObjectData: boolean) => {\n setTagModalOpen(false);\n if (reloadObjectData) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeInspectModal = (reloadObjectData: boolean) => {\n setInspectModalOpen(false);\n if (reloadObjectData) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeLegalholdModal = (reload: boolean) => {\n setLegalholdOpen(false);\n if (reload) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const loaderForContainer = (\n
\n \n
\n );\n\n if (!actualInfo) {\n if (loadingObjectInfo) {\n return loaderForContainer;\n }\n\n return null;\n }\n\n const objectName =\n objectNameArray.length > 0\n ? objectNameArray[objectNameArray.length - 1]\n : actualInfo.name;\n\n const objectResources = [\n bucketName,\n currentItem,\n [bucketName, actualInfo.name].join(\"/\"),\n ];\n const canSetLegalHold = hasPermission(bucketName, [\n IAM_SCOPES.S3_PUT_OBJECT_LEGAL_HOLD,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n const canSetTags = hasPermission(objectResources, [\n IAM_SCOPES.S3_PUT_OBJECT_TAGGING,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n const canChangeRetention = hasPermission(\n objectResources,\n [\n IAM_SCOPES.S3_GET_OBJECT_RETENTION,\n IAM_SCOPES.S3_PUT_OBJECT_RETENTION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n true,\n );\n const canInspect = hasPermission(objectResources, [\n IAM_SCOPES.ADMIN_INSPECT_DATA,\n ]);\n const canChangeVersioning = hasPermission(objectResources, [\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_GET_OBJECT_VERSION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n const canGetObject = hasPermission(objectResources, [\n IAM_SCOPES.S3_GET_OBJECT,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n const canDelete = hasPermission(\n [bucketName, currentItem, [bucketName, actualInfo.name].join(\"/\")],\n [IAM_SCOPES.S3_DELETE_OBJECT],\n );\n\n let objectType: AllowedPreviews = previewObjectType(metaData, currentItem);\n\n const multiActionButtons = [\n {\n action: () => {\n downloadObject(dispatch, bucketName, internalPaths, actualInfo);\n },\n label: \"Download\",\n disabled: !!actualInfo.is_delete_marker || !canGetObject,\n icon: ,\n tooltip: canGetObject\n ? \"Download this Object\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"download this object\",\n ),\n },\n {\n action: () => {\n shareObject();\n },\n label: \"Share\",\n disabled: !!actualInfo.is_delete_marker || !canGetObject,\n icon: ,\n tooltip: canGetObject\n ? \"Share this File\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"share this object\",\n ),\n },\n {\n action: () => {\n setPreviewOpen(true);\n },\n label: \"Preview\",\n disabled:\n !!actualInfo.is_delete_marker ||\n (objectType === \"none\" && !canGetObject),\n icon: ,\n tooltip: canGetObject\n ? \"Preview this File\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"preview this object\",\n ),\n },\n {\n action: () => {\n setLegalholdOpen(true);\n },\n label: \"Legal Hold\",\n disabled:\n !locking ||\n !distributedSetup ||\n !!actualInfo.is_delete_marker ||\n !canSetLegalHold ||\n selectedVersion !== \"\",\n icon: ,\n tooltip: canSetLegalHold\n ? locking\n ? \"Change Legal Hold rules for this File\"\n : \"Object Locking must be enabled on this bucket in order to set Legal Hold\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT_LEGAL_HOLD, IAM_SCOPES.S3_PUT_ACTIONS],\n \"change legal hold settings for this object\",\n ),\n },\n {\n action: openRetentionModal,\n label: \"Retention\",\n disabled:\n !distributedSetup ||\n !!actualInfo.is_delete_marker ||\n !canChangeRetention ||\n selectedVersion !== \"\" ||\n !locking,\n icon: ,\n tooltip: canChangeRetention\n ? locking\n ? \"Change Retention rules for this File\"\n : \"Object Locking must be enabled on this bucket in order to set Retention Rules\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_GET_OBJECT_RETENTION,\n IAM_SCOPES.S3_PUT_OBJECT_RETENTION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"change Retention Rules for this object\",\n ),\n },\n {\n action: () => {\n setTagModalOpen(true);\n },\n label: \"Tags\",\n disabled:\n !!actualInfo.is_delete_marker || selectedVersion !== \"\" || !canSetTags,\n icon: ,\n tooltip: canSetTags\n ? \"Change Tags for this File\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_PUT_OBJECT_TAGGING,\n IAM_SCOPES.S3_GET_OBJECT_TAGGING,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"set Tags on this object\",\n ),\n },\n {\n action: () => {\n setInspectModalOpen(true);\n },\n label: \"Inspect\",\n disabled:\n !distributedSetup ||\n !!actualInfo.is_delete_marker ||\n selectedVersion !== \"\" ||\n !canInspect,\n icon: ,\n tooltip: canInspect\n ? \"Inspect this file\"\n : permissionTooltipHelper(\n [IAM_SCOPES.ADMIN_INSPECT_DATA],\n \"inspect this file\",\n ),\n },\n {\n action: () => {\n dispatch(\n setVersionsModeEnabled({\n status: !versionsMode,\n objectName: objectName,\n }),\n );\n },\n label: versionsMode ? \"Hide Object Versions\" : \"Display Object Versions\",\n icon: ,\n disabled:\n !distributedSetup ||\n !(actualInfo.version_id && actualInfo.version_id !== \"null\") ||\n !canChangeVersioning,\n tooltip: canChangeVersioning\n ? actualInfo.version_id && actualInfo.version_id !== \"null\"\n ? \"Display Versions for this file\"\n : \"\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_GET_OBJECT_VERSION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"display all versions of this object\",\n ),\n },\n ];\n\n const calculateLastModifyTime = (lastModified: string) => {\n const currentTime = new Date();\n const modifiedTime = new Date(lastModified);\n\n const difTime = currentTime.getTime() - modifiedTime.getTime();\n\n const formatTime = niceDaysInt(difTime, \"ms\");\n\n return formatTime.trim() !== \"\" ? `${formatTime} ago` : \"Just now\";\n };\n\n return (\n \n {shareFileModalOpen && actualInfo && (\n \n )}\n {retentionModalOpen && actualInfo && (\n \n )}\n {deleteOpen && (\n \n )}\n {legalholdOpen && actualInfo && (\n \n )}\n {previewOpen && actualInfo && (\n {\n setPreviewOpen(false);\n }}\n />\n )}\n {tagModalOpen && actualInfo && (\n \n )}\n {inspectModalOpen && actualInfo && (\n \n )}\n {longFileOpen && actualInfo && (\n \n )}\n\n {loadingObjectInfo ? (\n {loaderForContainer}\n ) : (\n \n \n {displayFileIconName(objectName || \"\", true)}\n \n {objectName}\n \n \n }\n items={multiActionButtons}\n />\n \n \n \n }\n iconLocation={\"start\"}\n fullWidth\n variant={\"secondary\"}\n onClick={() => {\n setDeleteOpen(true);\n }}\n disabled={\n selectedVersion === \"\" && actualInfo.is_delete_marker\n }\n sx={{\n width: \"calc(100% - 44px)\",\n margin: \"8px 0\",\n }}\n label={`Delete${selectedVersion !== \"\" ? \" version\" : \"\"}`}\n />\n \n \n \n } label={\"Object Info\"} />\n \n Name:\n
\n
{objectName}
\n
\n {selectedVersion !== \"\" && (\n \n Version ID:\n
\n {selectedVersion}\n
\n )}\n \n Size:\n
\n {niceBytes(`${actualInfo.size || \"0\"}`)}\n
\n {actualInfo.version_id &&\n actualInfo.version_id !== \"null\" &&\n selectedVersion === \"\" && (\n \n Versions:\n
\n {versions.length} version{versions.length !== 1 ? \"s\" : \"\"},{\" \"}\n {niceBytesInt(totalVersionsSize)}\n
\n )}\n {selectedVersion === \"\" && (\n \n Last Modified:\n
\n {calculateLastModifyTime(actualInfo.last_modified || \"\")}\n
\n )}\n \n ETAG:\n
\n {actualInfo.etag || \"N/A\"}\n
\n \n Tags:\n
\n {tagKeys.length === 0\n ? \"N/A\"\n : tagKeys.map((tagKey, index) => {\n return (\n \n {tagKey}:{get(actualInfo, `tags.${tagKey}`, \"\")}\n {index < tagKeys.length - 1 ? \", \" : \"\"}\n \n );\n })}\n
\n \n \n \n Legal Hold:\n
\n {actualInfo.legal_hold_status ? \"On\" : \"Off\"}\n
\n \n
\n \n \n \n Retention Policy:\n
\n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" ? (\n \n {actualInfo.retention_mode\n ? actualInfo.retention_mode.toLowerCase()\n : \"None\"}\n \n ) : (\n \n {actualInfo.retention_mode\n ? actualInfo.retention_mode.toLowerCase()\n : \"None\"}\n \n )}\n \n
\n \n
\n {!actualInfo.is_delete_marker && (\n \n } />\n \n {actualInfo && metaData ? (\n \n ) : null}\n \n \n )}\n
\n )}\n
\n );\n};\n\nexport default withStyles(styles)(ObjectDetailPanel);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { encodeURLString } from \"../../../../../../common/utils\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport { Box, RecoverIcon } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { restoreLocalObjectList } from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IRestoreFileVersion {\n classes: any;\n restoreOpen: boolean;\n bucketName: string;\n versionToRestore: BucketObject;\n objectPath: string;\n onCloseAndUpdate: (refresh: boolean) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalBasic,\n });\n\nconst RestoreFileVersion = ({\n classes,\n versionToRestore,\n bucketName,\n objectPath,\n restoreOpen,\n onCloseAndUpdate,\n}: IRestoreFileVersion) => {\n const dispatch = useAppDispatch();\n const [restoreLoading, setRestoreLoading] = useState(false);\n\n const restoreVersion = () => {\n setRestoreLoading(true);\n\n api.buckets\n .putObjectRestore(bucketName, {\n prefix: encodeURLString(objectPath),\n version_id: versionToRestore.version_id || \"\",\n })\n .then(() => {\n setRestoreLoading(false);\n onCloseAndUpdate(true);\n dispatch(\n restoreLocalObjectList({\n prefix: objectPath,\n objectInfo: versionToRestore,\n }),\n );\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setRestoreLoading(false);\n });\n };\n\n return (\n }\n onConfirm={restoreVersion}\n confirmButtonProps={{\n variant: \"secondary\",\n disabled: restoreLoading,\n }}\n onClose={() => {\n onCloseAndUpdate(false);\n }}\n confirmationContent={\n \n Are you sure you want to restore
\n {objectPath}
with Version ID:\n
\n {versionToRestore.version_id}?\n
\n }\n />\n );\n};\n\nexport default withStyles(styles)(RestoreFileVersion);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\n\ninterface ISpecificVersionPillProps {\n type: \"null\" | \"current\" | \"deleted\";\n}\n\nconst SpecificVersionPill = ({ type }: ISpecificVersionPillProps) => {\n let bgColor = \"#000\";\n let message = \"\";\n\n switch (type) {\n case \"null\":\n bgColor = \"#07193E\";\n message = \"NULL VERSION\";\n break;\n case \"deleted\":\n bgColor = \"#868686\";\n message = \"DELETED\";\n break;\n default:\n bgColor = \"#174551\";\n message = \"CURRENT VERSION\";\n }\n\n return (\n \n {message}\n \n );\n};\n\nexport default SpecificVersionPill;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { DateTime } from \"luxon\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { displayFileIconName } from \"../ListObjects/utils\";\nimport {\n DownloadIcon,\n PreviewIcon,\n RecoverIcon,\n ShareIcon,\n IconButton,\n Tooltip,\n Grid,\n} from \"mds\";\nimport { niceBytes } from \"../../../../../../common/utils\";\nimport SpecificVersionPill from \"./SpecificVersionPill\";\nimport CheckboxWrapper from \"../../../../Common/FormComponents/CheckboxWrapper/CheckboxWrapper\";\nimport { BucketObject } from \"api/consoleApi\";\n\ninterface IFileVersionItem {\n fileName: string;\n versionInfo: BucketObject;\n index: number;\n isSelected?: boolean;\n checkable: boolean;\n isChecked: boolean;\n onCheck: (versionID: string) => void;\n onShare: (versionInfo: BucketObject) => void;\n onDownload: (versionInfo: BucketObject) => void;\n onRestore: (versionInfo: BucketObject) => void;\n onPreview: (versionInfo: BucketObject) => void;\n globalClick: (versionInfo: BucketObject) => void;\n key: any;\n style: any;\n}\n\nconst FileVersionStyled = styled.div(({ theme }) => {\n return {\n \"&:before\": {\n content: \"' '\",\n display: \"block\",\n position: \"absolute\",\n width: \"2px\",\n height: \"calc(100% + 2px)\",\n backgroundColor: get(theme, \"borderColor\", \"#F8F8F8\"),\n left: \"24px\",\n },\n \"& .mainFileVersionItem\": {\n borderBottom: `${get(theme, \"borderColor\", \"#F8F8F8\")} 1px solid`,\n padding: \"1rem 0\",\n margin: \"0 0.5rem 0 2.5rem\",\n cursor: \"pointer\",\n \"&.deleted\": {\n color: \"#868686\",\n },\n },\n \"& .intermediateLayer\": {\n margin: \"0 1.5rem 0 1.5rem\",\n \"&:hover, &.selected\": {\n backgroundColor: get(theme, \"boxBackground\", \"#F8F8F8\"),\n \"& > div\": {\n borderBottomColor: get(theme, \"boxBackground\", \"#F8F8F8\"),\n },\n },\n },\n \"& .versionContainer\": {\n fontSize: 16,\n fontWeight: \"bold\",\n display: \"flex\",\n alignItems: \"center\",\n \"& svg.min-icon\": {\n width: 18,\n height: 18,\n minWidth: 18,\n minHeight: 18,\n marginRight: 10,\n },\n },\n \"& .buttonContainer\": {\n textAlign: \"right\",\n \"& button\": {\n marginLeft: \"1.5rem\",\n },\n },\n \"& .versionID\": {\n fontSize: \"12px\",\n margin: \"2px 0\",\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n maxWidth: \"95%\",\n overflow: \"hidden\",\n },\n \"& .versionData\": {\n marginRight: \"10px\",\n fontSize: 12,\n color: \"#868686\",\n },\n \"@media (max-width: 600px)\": {\n \"& .buttonContainer\": {\n \"& button\": {\n marginLeft: \"5px\",\n },\n },\n },\n \"@media (max-width: 799px)\": {\n \"&:before\": {\n display: \"none\",\n },\n \"& .mainFileVersionItem\": {\n padding: \"5px 0px\",\n margin: 0,\n },\n \"& .intermediateLayer\": {\n margin: 0,\n \"&:hover, &.selected\": {\n backgroundColor: \"transparent\",\n \"& > div\": {\n borderBottomColor: get(theme, \"boxBackground\", \"#F8F8F8\"),\n },\n },\n },\n \"& .versionContainer\": {\n fontSize: 14,\n \"& svg.min-icon\": {\n display: \"none\",\n },\n },\n \"& .versionData\": {\n textOverflow: \"ellipsis\",\n maxWidth: \"95%\",\n overflow: \"hidden\",\n whiteSpace: \"nowrap\",\n },\n \"& .collapsableInfo\": {\n display: \"flex\",\n flexDirection: \"column\",\n },\n \"& .versionItem\": {\n display: \"none\",\n },\n },\n };\n});\n\nconst FileVersionItem = ({\n fileName,\n versionInfo,\n isSelected,\n checkable,\n isChecked,\n onCheck,\n onShare,\n onDownload,\n onRestore,\n onPreview,\n globalClick,\n index,\n key,\n style,\n}: IFileVersionItem) => {\n const disableButtons = versionInfo.is_delete_marker;\n\n const versionItemButtons = [\n {\n icon: ,\n action: onPreview,\n tooltip: \"Preview\",\n },\n {\n icon: ,\n action: onDownload,\n tooltip: \"Download this version\",\n },\n {\n icon: ,\n action: onShare,\n tooltip: \"Share this version\",\n },\n {\n icon: ,\n action: onRestore,\n tooltip: \"Restore this version\",\n },\n ];\n\n let pill: \"deleted\" | \"current\" | \"null\" | null = null;\n\n if (versionInfo.is_delete_marker) {\n pill = \"deleted\";\n } else if (versionInfo.is_latest) {\n pill = \"current\";\n } else if (versionInfo.version_id === \"null\") {\n pill = \"null\";\n }\n\n let lastModified = DateTime.now();\n\n if (versionInfo.last_modified) {\n lastModified = DateTime.fromISO(versionInfo.last_modified);\n }\n\n return (\n \n {\n globalClick(versionInfo);\n }}\n key={key}\n style={style}\n >\n \n \n \n \n \n {checkable && (\n {\n e.stopPropagation();\n e.preventDefault();\n onCheck(versionInfo.version_id || \"\");\n }}\n value={versionInfo.version_id || \"\"}\n disabled={versionInfo.is_delete_marker}\n overrideCheckboxStyles={{\n paddingLeft: 0,\n height: 34,\n width: 25,\n }}\n noTopMargin\n />\n )}\n {displayFileIconName(fileName, true)} v{index.toString()}\n \n {pill && }\n \n \n \n {versionItemButtons.map((button, index) => {\n return (\n \n {\n e.stopPropagation();\n if (!disableButtons) {\n button.action(versionInfo);\n } else {\n e.preventDefault();\n }\n }}\n sx={{\n backgroundColor: \"#F8F8F8\",\n borderRadius: \"100%\",\n width: \"28px\",\n height: \"28px\",\n padding: \"5px\",\n \"& .min-icon\": {\n width: \"14px\",\n height: \"14px\",\n },\n }}\n >\n {button.icon}\n \n \n );\n })}\n \n \n \n \n {versionInfo.version_id !== \"null\" ? versionInfo.version_id : \"-\"}\n \n \n \n Last modified:{\" \"}\n {lastModified.toFormat(\"ccc, LLL dd yyyy HH:mm:ss (ZZZZ)\")}\n \n \n Size: {niceBytes(`${versionInfo.size || \"0\"}`)}\n \n \n \n \n \n \n );\n};\n\nexport default FileVersionItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\n\nimport { decodeURLString } from \"../../../../../../common/utils\";\nimport { ConfirmDeleteIcon, Switch, Grid, InputBox } from \"mds\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IDeleteNonCurrentProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedObject: string;\n selectedBucket: string;\n}\n\nconst DeleteNonCurrentVersions = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedObject,\n}: IDeleteNonCurrentProps) => {\n const dispatch = useAppDispatch();\n const [deleteLoading, setDeleteLoading] = useState(false);\n const [typeConfirm, setTypeConfirm] = useState(\"\");\n const [bypassGovernance, setBypassGovernance] = useState(false);\n\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const canBypass =\n hasPermission(\n [selectedBucket],\n [IAM_SCOPES.S3_BYPASS_GOVERNANCE_RETENTION],\n ) && retentionConfig?.mode === \"governance\";\n\n useEffect(() => {\n if (deleteLoading) {\n api.buckets\n .deleteObject(selectedBucket, {\n path: selectedObject,\n non_current_versions: true,\n bypass: bypassGovernance,\n })\n .then(() => {\n closeDeleteModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setDeleteLoading(false);\n });\n }\n }, [\n deleteLoading,\n closeDeleteModalAndRefresh,\n dispatch,\n selectedObject,\n selectedBucket,\n bypassGovernance,\n ]);\n\n if (!selectedObject) {\n return null;\n }\n const onConfirmDelete = () => {\n setDeleteLoading(true);\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={() => closeDeleteModalAndRefresh(false)}\n confirmButtonProps={{\n disabled: typeConfirm !== \"YES, PROCEED\" || deleteLoading,\n }}\n confirmationContent={\n \n Are you sure you want to delete all the non-current versions for:{\" \"}\n {decodeURLString(selectedObject)}?
\n {canBypass && (\n \n \n {\n setBypassGovernance(!bypassGovernance);\n }}\n description=\"\"\n />\n \n \n )}\n
\n To continue please type YES, PROCEED in the box.\n
\n
\n \n ) => {\n setTypeConfirm(event.target.value);\n }}\n label=\"\"\n value={typeConfirm}\n />\n \n
\n }\n />\n );\n};\n\nexport default DeleteNonCurrentVersions;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmDeleteIcon, Switch } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IDeleteSelectedVersionsProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedVersions: string[];\n selectedObject: string;\n selectedBucket: string;\n}\n\nconst DeleteObject = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedVersions,\n selectedObject,\n}: IDeleteSelectedVersionsProps) => {\n const dispatch = useAppDispatch();\n const [deleteLoading, setDeleteLoading] = useState(false);\n const [bypassGovernance, setBypassGovernance] = useState(false);\n\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const canBypass =\n hasPermission(\n [selectedBucket],\n [IAM_SCOPES.S3_BYPASS_GOVERNANCE_RETENTION],\n ) && retentionConfig?.mode === \"governance\";\n\n const onClose = () => closeDeleteModalAndRefresh(false);\n const onConfirmDelete = () => {\n setDeleteLoading(true);\n };\n\n useEffect(() => {\n if (deleteLoading) {\n const selectedObjectsRequest = selectedVersions.map((versionID) => {\n return {\n path: selectedObject,\n versionID: versionID,\n recursive: false,\n };\n });\n\n if (selectedObjectsRequest.length > 0) {\n api.buckets\n .deleteMultipleObjects(selectedBucket, selectedObjectsRequest, {\n all_versions: false,\n bypass: bypassGovernance,\n })\n .then(() => {\n setDeleteLoading(false);\n closeDeleteModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setDeleteLoading(false);\n });\n }\n }\n }, [\n deleteLoading,\n closeDeleteModalAndRefresh,\n selectedBucket,\n selectedObject,\n selectedVersions,\n bypassGovernance,\n dispatch,\n ]);\n\n if (!selectedVersions) {\n return null;\n }\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete the selected {selectedVersions.length}{\" \"}\n versions for {selectedObject}?\n {canBypass && (\n \n \n {\n setBypassGovernance(!bypassGovernance);\n }}\n description=\"\"\n />\n \n \n )}\n \n }\n />\n );\n};\n\nexport default DeleteObject;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport { withStyles } from \"@mui/styles\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { LinearProgress } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport ShareFile from \"./ShareFile\";\nimport {\n actionsTray,\n containerForHeader,\n objectBrowserCommon,\n objectBrowserExtras,\n spacingUtils,\n tableStyles,\n textStyleUtils,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\n\nimport { decodeURLString, niceBytesInt } from \"../../../../../../common/utils\";\nimport RestoreFileVersion from \"./RestoreFileVersion\";\n\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport {\n Button,\n DeleteIcon,\n DeleteNonCurrentIcon,\n Select,\n SelectMultipleIcon,\n VersionsIcon,\n ScreenTitle,\n} from \"mds\";\nimport FileVersionItem from \"./FileVersionItem\";\nimport PreviewFileModal from \"../Preview/PreviewFileModal\";\nimport DeleteNonCurrent from \"../ListObjects/DeleteNonCurrent\";\nimport BrowserBreadcrumbs from \"../../../../ObjectBrowser/BrowserBreadcrumbs\";\nimport DeleteSelectedVersions from \"./DeleteSelectedVersions\";\nimport {\n selDistSet,\n setErrorSnackMessage,\n} from \"../../../../../../systemSlice\";\nimport {\n setLoadingObjectInfo,\n setLoadingVersions,\n setSelectedVersion,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport { List, ListRowProps } from \"react-virtualized\";\nimport TooltipWrapper from \"../../../../Common/TooltipWrapper/TooltipWrapper\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n versionsContainer: {\n padding: 10,\n \"@media (max-width: 799px)\": {\n minHeight: 800,\n },\n },\n noBottomBorder: {\n borderBottom: 0,\n },\n versionsVirtualPanel: {\n flexGrow: 1,\n height: \"calc(100% - 120px)\",\n overflow: \"auto\",\n \"@media (max-width: 799px)\": {\n height: 600,\n },\n },\n screenTitleContainer: {\n position: \"relative\",\n \"@media (max-width: 799px)\": {\n \"&::before\": {\n display: \"none\",\n },\n },\n },\n sortByLabel: {\n color: \"#838383\",\n fontWeight: \"bold\",\n whiteSpace: \"nowrap\",\n marginRight: 12,\n fontSize: 14,\n \"@media (max-width: 600px)\": {\n display: \"none\",\n },\n },\n ...actionsTray,\n ...tableStyles,\n ...spacingUtils,\n ...textStyleUtils,\n ...objectBrowserCommon,\n ...objectBrowserExtras,\n ...containerForHeader,\n });\n\ninterface IVersionsNavigatorProps {\n classes: any;\n internalPaths: string;\n bucketName: string;\n}\n\nconst emptyFile: BucketObject = {\n is_latest: true,\n last_modified: \"\",\n legal_hold_status: \"\",\n name: \"\",\n retention_mode: \"\",\n retention_until_date: \"\",\n size: 0,\n tags: {},\n version_id: undefined,\n};\n\nconst VersionsNavigator = ({\n classes,\n internalPaths,\n bucketName,\n}: IVersionsNavigatorProps) => {\n const dispatch = useAppDispatch();\n\n const searchVersions = useSelector(\n (state: AppState) => state.objectBrowser.searchVersions,\n );\n const loadingVersions = useSelector(\n (state: AppState) => state.objectBrowser.loadingVersions,\n );\n const selectedVersion = useSelector(\n (state: AppState) => state.objectBrowser.selectedVersion,\n );\n\n const distributedSetup = useSelector(selDistSet);\n const [shareFileModalOpen, setShareFileModalOpen] = useState(false);\n const [actualInfo, setActualInfo] = useState(null);\n const [objectToShare, setObjectToShare] = useState(null);\n const [versions, setVersions] = useState([]);\n const [restoreVersionOpen, setRestoreVersionOpen] = useState(false);\n const [restoreVersion, setRestoreVersion] = useState(\n null,\n );\n const [sortValue, setSortValue] = useState(\"date\");\n const [previewOpen, setPreviewOpen] = useState(false);\n const [deleteNonCurrentOpen, setDeleteNonCurrentOpen] =\n useState(false);\n const [selectEnabled, setSelectEnabled] = useState(false);\n const [selectedItems, setSelectedItems] = useState([]);\n const [delSelectedVOpen, setDelSelectedVOpen] = useState(false);\n\n // calculate object name to display\n let objectNameArray: string[] = [];\n if (actualInfo && actualInfo.name) {\n objectNameArray = actualInfo.name.split(\"/\");\n }\n\n useEffect(() => {\n if (!loadingVersions && !actualInfo) {\n dispatch(setLoadingVersions(true));\n }\n }, [loadingVersions, actualInfo, dispatch]);\n\n useEffect(() => {\n if (loadingVersions && internalPaths !== \"\") {\n api.buckets\n .listObjects(bucketName, {\n prefix: internalPaths,\n with_versions: distributedSetup,\n })\n .then((res) => {\n const result = get(res.data, \"objects\", []);\n\n const decodedInternalPaths = decodeURLString(internalPaths);\n\n // Filter the results prefixes as API can return more files than expected.\n const filteredPrefixes = result.filter(\n (item: BucketObject) => item.name === decodedInternalPaths,\n );\n\n if (distributedSetup) {\n setActualInfo(\n filteredPrefixes.find((el: BucketObject) => el.is_latest) ||\n emptyFile,\n );\n setVersions(filteredPrefixes);\n } else {\n setActualInfo(filteredPrefixes[0]);\n setVersions([]);\n }\n\n dispatch(setLoadingVersions(false));\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n dispatch(setLoadingVersions(false));\n });\n }\n }, [loadingVersions, bucketName, internalPaths, dispatch, distributedSetup]);\n\n const shareObject = () => {\n setShareFileModalOpen(true);\n };\n\n const closeShareModal = () => {\n setObjectToShare(null);\n setShareFileModalOpen(false);\n setPreviewOpen(false);\n };\n\n const onShareItem = (item: BucketObject) => {\n setObjectToShare(item);\n shareObject();\n };\n\n const onPreviewItem = (item: BucketObject) => {\n setObjectToShare(item);\n setPreviewOpen(true);\n };\n\n const onRestoreItem = (item: BucketObject) => {\n setRestoreVersion(item);\n setRestoreVersionOpen(true);\n };\n\n const onDownloadItem = (item: BucketObject) => {\n downloadObject(dispatch, bucketName, internalPaths, item);\n };\n\n const onGlobalClick = (item: BucketObject) => {\n dispatch(setSelectedVersion(item.version_id || \"\"));\n };\n\n const filteredRecords = versions.filter((version) => {\n if (version.version_id) {\n return version.version_id.includes(searchVersions);\n }\n return false;\n });\n\n const closeRestoreModal = (reloadObjectData: boolean) => {\n setRestoreVersionOpen(false);\n setRestoreVersion(null);\n\n if (reloadObjectData) {\n dispatch(setLoadingVersions(true));\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeDeleteNonCurrent = (reloadAfterDelete: boolean) => {\n setDeleteNonCurrentOpen(false);\n\n if (reloadAfterDelete) {\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedVersion(\"\"));\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeSelectedVersions = (reloadOnComplete: boolean) => {\n setDelSelectedVOpen(false);\n\n if (reloadOnComplete) {\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedVersion(\"\"));\n dispatch(setLoadingObjectInfo(true));\n setSelectedItems([]);\n }\n };\n\n const totalSpace = versions.reduce((acc: number, currValue: BucketObject) => {\n if (currValue.size) {\n return acc + currValue.size;\n }\n return acc;\n }, 0);\n\n filteredRecords.sort((a, b) => {\n switch (sortValue) {\n case \"size\":\n if (a.size && b.size) {\n if (a.size < b.size) {\n return -1;\n }\n if (a.size > b.size) {\n return 1;\n }\n return 0;\n }\n return 0;\n default:\n const dateA = new Date(a.last_modified || \"\").getTime();\n const dateB = new Date(b.last_modified || \"\").getTime();\n\n if (dateA < dateB) {\n return 1;\n }\n if (dateA > dateB) {\n return -1;\n }\n return 0;\n }\n });\n\n const onCheckVersion = (selectedVersion: string) => {\n if (selectedItems.includes(selectedVersion)) {\n const filteredItems = selectedItems.filter(\n (element) => element !== selectedVersion,\n );\n\n setSelectedItems(filteredItems);\n\n return;\n }\n\n const cloneState = [...selectedItems];\n cloneState.push(selectedVersion);\n\n setSelectedItems(cloneState);\n };\n\n const rowRenderer = ({\n key, // Unique key within array of rows\n index, // Index of row within collection\n isScrolling, // The List is currently being scrolled\n isVisible, // This row is visible within the List (eg it is not an overscanned row)\n style, // Style object to be applied to row (to position it)\n }: ListRowProps) => {\n const versOrd = versions.length - index;\n return (\n \n );\n };\n\n return (\n \n {shareFileModalOpen && actualInfo && (\n \n )}\n {restoreVersionOpen && actualInfo && restoreVersion && (\n \n )}\n {previewOpen && actualInfo && (\n {\n setPreviewOpen(false);\n }}\n />\n )}\n {deleteNonCurrentOpen && (\n \n )}\n {delSelectedVOpen && (\n \n )}\n \n {!actualInfo && (\n \n \n \n )}\n\n {actualInfo && (\n \n \n \n \n \n \n \n \n }\n title={`${\n objectNameArray.length > 0\n ? objectNameArray[objectNameArray.length - 1]\n : actualInfo.name\n } Versions`}\n subTitle={\n \n \n \n {versions.length} Version\n {versions.length === 1 ? \"\" : \"s\"}   \n \n \n \n {niceBytesInt(totalSpace)}\n \n \n }\n actions={\n \n \n {\n setSelectEnabled(!selectEnabled);\n }}\n icon={}\n variant={selectEnabled ? \"callAction\" : \"regular\"}\n style={{ marginRight: 8 }}\n />\n \n {selectEnabled && (\n \n {\n setDelSelectedVOpen(true);\n }}\n icon={}\n variant={\"secondary\"}\n style={{ marginRight: 8 }}\n disabled={selectedItems.length === 0}\n />\n \n )}\n \n {\n setDeleteNonCurrentOpen(true);\n }}\n icon={}\n variant={\"secondary\"}\n style={{ marginRight: 15 }}\n disabled={versions.length <= 1}\n />\n \n {\n setSortValue(newValue);\n }}\n noLabelMinWidth\n />\n \n }\n bottomBorder={false}\n />\n \n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" && (\n // @ts-ignore\n \n )}\n \n \n )}\n \n \n );\n};\n\nexport default withStyles(styles)(VersionsNavigator);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { DateTime } from \"luxon\";\nimport { BucketObjectItem } from \"./types\";\nimport { niceBytes } from \"../../../../../../common/utils\";\nimport { displayFileIconName } from \"./utils\";\n\n// Functions\n\nexport const displayParsedDate = (object: BucketObjectItem) => {\n if (object.name.endsWith(\"/\")) {\n return \"\";\n }\n\n const currTime = DateTime.now();\n const objectTime = DateTime.fromISO(object.last_modified);\n\n const isToday =\n currTime.hasSame(objectTime, \"day\") &&\n currTime.hasSame(objectTime, \"month\") &&\n currTime.hasSame(objectTime, \"year\");\n\n if (isToday) {\n return `Today, ${objectTime.toFormat(\"HH:mm\")}`;\n }\n\n return objectTime.toFormat(\"ccc, LLL dd yyyy HH:mm (ZZZZ)\");\n};\n\nexport const displayNiceBytes = (object: BucketObjectItem) => {\n if (object.name.endsWith(\"/\") || !object.size) {\n return \"-\";\n }\n return niceBytes(String(object.size));\n};\n\nexport const displayDeleteFlag = (state: boolean) => {\n return state ? \"Yes\" : \"No\";\n};\n\n// Table Props\n\nexport const listModeColumns = [\n {\n label: \"Name\",\n elementKey: \"name\",\n renderFunction: displayFileIconName,\n enableSort: true,\n },\n {\n label: \"Last Modified\",\n elementKey: \"last_modified\",\n renderFunction: displayParsedDate,\n renderFullObject: true,\n enableSort: true,\n },\n {\n label: \"Size\",\n elementKey: \"size\",\n renderFunction: displayNiceBytes,\n renderFullObject: true,\n width: 100,\n enableSort: true,\n },\n];\n\nexport const rewindModeColumns = [\n {\n label: \"Name\",\n elementKey: \"name\",\n renderFunction: displayFileIconName,\n enableSort: true,\n },\n {\n label: \"Object Date\",\n elementKey: \"last_modified\",\n renderFunction: displayParsedDate,\n renderFullObject: true,\n enableSort: true,\n },\n {\n label: \"Size\",\n elementKey: \"size\",\n renderFunction: displayNiceBytes,\n renderFullObject: true,\n width: 100,\n enableSort: true,\n },\n {\n label: \"Deleted\",\n elementKey: \"delete_flag\",\n renderFunction: displayDeleteFlag,\n width: 60,\n },\n];\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { listModeColumns, rewindModeColumns } from \"./ListObjectsHelpers\";\nimport { ItemActions } from \"../../../../Common/TableWrapper/TableWrapper\";\nimport React, { useState } from \"react\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { selFeatures } from \"../../../../consoleSlice\";\nimport { encodeURLString } from \"../../../../../../common/utils\";\nimport {\n setIsOpeningOD,\n setLoadingObjects,\n setLoadingVersions,\n setObjectDetailsView,\n setSelectedObjects,\n setSelectedObjectView,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport { useNavigate, useParams } from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport { sortListObjects } from \"../utils\";\nimport { BucketObjectItem } from \"./types\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../../common/SecureComponent/permissions\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { DataTable } from \"mds\";\nimport { BucketObject } from \"api/consoleApi\";\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n browsePaper: {\n border: 0,\n \"@media (max-width: 800px)\": {\n width: 800,\n },\n },\n parentWrapper: {\n position: \"relative\",\n height: \"calc(100% - 60px)\",\n \"@media (max-width: 800px)\": {\n overflowX: \"auto\",\n },\n \"@media (max-width: 1060px)\": {\n height: \"calc(100% - 115px)\",\n },\n },\n \"@global\": {\n \".rowLine:hover .iconFileElm\": {\n backgroundImage: \"url(/images/ob_file_filled.svg)\",\n },\n \".rowLine:hover .iconFolderElm\": {\n backgroundImage: \"url(/images/ob_folder_filled.svg)\",\n },\n },\n }),\n);\n\ninterface IListObjectTable {\n internalPaths: string | null;\n}\n\nconst ListObjectsTable = ({ internalPaths }: IListObjectTable) => {\n const classes = useStyles();\n const dispatch = useAppDispatch();\n const params = useParams();\n const navigate = useNavigate();\n\n const [sortDirection, setSortDirection] = useState<\n \"ASC\" | \"DESC\" | undefined\n >(\"ASC\");\n const [currentSortField, setCurrentSortField] = useState(\"name\");\n\n const bucketName = params.bucketName || \"\";\n\n const detailsOpen = useSelector(\n (state: AppState) => state.objectBrowser.objectDetailsOpen,\n );\n\n const loadingObjects = useSelector(\n (state: AppState) => state.objectBrowser.loadingObjects,\n );\n\n const features = useSelector(selFeatures);\n const obOnly = !!features?.includes(\"object-browser-only\");\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const records = useSelector((state: AppState) => state.objectBrowser.records);\n const searchObjects = useSelector(\n (state: AppState) => state.objectBrowser.searchObjects,\n );\n const selectedObjects = useSelector(\n (state: AppState) => state.objectBrowser.selectedObjects,\n );\n const connectionError = useSelector(\n (state: AppState) => state.objectBrowser.connectionError,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const displayListObjects = hasPermission(bucketName, [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]);\n\n const filteredRecords = records.filter((b: BucketObjectItem) => {\n if (searchObjects === \"\") {\n return true;\n } else {\n const objectName = b.name.toLowerCase();\n if (objectName.indexOf(searchObjects.toLowerCase()) >= 0) {\n return true;\n } else {\n return false;\n }\n }\n });\n\n const plSelect = filteredRecords;\n const sortASC = plSelect.sort(sortListObjects(currentSortField));\n\n let payload: BucketObjectItem[] = [];\n\n if (sortDirection === \"ASC\") {\n payload = sortASC;\n } else {\n payload = sortASC.reverse();\n }\n\n const openPath = (object: BucketObject) => {\n const idElement = object.name || \"\";\n const newPath = `/browser/${bucketName}${\n idElement ? `/${encodeURLString(idElement)}` : ``\n }`;\n\n // for anonymous start download\n if (\n anonymousMode &&\n internalPaths !== null &&\n !object.name?.endsWith(\"/\")\n ) {\n downloadObject(\n dispatch,\n bucketName,\n `${encodeURLString(idElement)}`,\n object,\n );\n return;\n }\n dispatch(setSelectedObjects([]));\n\n navigate(newPath);\n\n if (!anonymousMode) {\n dispatch(setObjectDetailsView(true));\n dispatch(setLoadingVersions(true));\n dispatch(setIsOpeningOD(true));\n }\n dispatch(\n setSelectedObjectView(\n `${idElement ? `${encodeURLString(idElement)}` : ``}`,\n ),\n );\n };\n const tableActions: ItemActions[] = [\n {\n type: \"view\",\n label: \"View\",\n onClick: openPath,\n sendOnlyId: false,\n },\n ];\n\n const sortChange = (sortData: any) => {\n const newSortDirection = get(sortData, \"sortDirection\", \"DESC\");\n setCurrentSortField(sortData.sortBy);\n setSortDirection(newSortDirection);\n dispatch(setLoadingObjects(true));\n };\n\n const selectAllItems = () => {\n dispatch(setSelectedObjectView(null));\n\n if (selectedObjects.length === payload.length) {\n dispatch(setSelectedObjects([]));\n return;\n }\n\n const elements = payload.map((item) => item.name);\n dispatch(setSelectedObjects(elements));\n };\n\n const selectListObjects = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedObjects]; // We clone the selectedBuckets array\n\n if (checked) {\n // If the user has checked this field we need to push this to selectedBucketsList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n dispatch(setSelectedObjects(elements));\n dispatch(setSelectedObjectView(null));\n\n return elements;\n };\n\n let errorMessage =\n !displayListObjects && !anonymousMode\n ? permissionTooltipHelper(\n [IAM_SCOPES.S3_LIST_BUCKET, IAM_SCOPES.S3_ALL_LIST_BUCKET],\n \"view Objects in this bucket\",\n )\n : `This location is empty${\n !rewindEnabled ? \", please try uploading a new file\" : \"\"\n }`;\n\n if (connectionError) {\n errorMessage =\n \"Objects List unavailable. Please review your WebSockets configuration and try again\";\n }\n\n let customPaperHeight = \"calc(100vh - 290px)\";\n\n if (obOnly) {\n customPaperHeight = \"calc(100vh - 315px)\";\n }\n\n return (\n {\n if (payload[index]?.delete_flag) {\n return \"deleted\";\n }\n\n return \"\";\n }}\n parentClassName={classes.parentWrapper}\n sx={{\n minHeight: detailsOpen ? \"100%\" : \"initial\",\n }}\n noBackground\n />\n );\n};\nexport default ListObjectsTable;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { createAsyncThunk } from \"@reduxjs/toolkit\";\nimport { AppState } from \"../../../store\";\nimport { encodeURLString, getClientOS } from \"../../../common/utils\";\nimport { BucketObjectItem } from \"../Buckets/ListBuckets/Objects/ListObjects/types\";\nimport { makeid, storeCallForObjectWithID } from \"./transferManager\";\nimport { download } from \"../Buckets/ListBuckets/Objects/utils\";\nimport {\n cancelObjectInList,\n completeObject,\n failObject,\n setAnonymousAccessOpen,\n setDownloadRenameModal,\n setNewObject,\n setPreviewOpen,\n setSelectedPreview,\n setShareFileModalOpen,\n updateProgress,\n} from \"./objectBrowserSlice\";\nimport { setSnackBarMessage } from \"../../../systemSlice\";\n\nexport const downloadSelected = createAsyncThunk(\n \"objectBrowser/downloadSelected\",\n async (bucketName: string, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n const downloadObject = (object: BucketObjectItem) => {\n const identityDownload = encodeURLString(\n `${bucketName}-${object.name}-${new Date().getTime()}-${Math.random()}`,\n );\n\n const ID = makeid(8);\n\n const downloadCall = download(\n bucketName,\n encodeURLString(object.name),\n object.version_id,\n object.size,\n null,\n ID,\n (progress) => {\n dispatch(\n updateProgress({\n instanceID: identityDownload,\n progress: progress,\n }),\n );\n },\n () => {\n dispatch(completeObject(identityDownload));\n },\n (msg: string) => {\n dispatch(failObject({ instanceID: identityDownload, msg }));\n },\n () => {\n dispatch(cancelObjectInList(identityDownload));\n },\n () => {\n dispatch(\n setSnackBarMessage(\n \"File download will be handled directly by the browser.\",\n ),\n );\n },\n );\n storeCallForObjectWithID(ID, downloadCall);\n dispatch(\n setNewObject({\n ID,\n bucketName,\n done: false,\n instanceID: identityDownload,\n percentage: 0,\n prefix: object.name,\n type: \"download\",\n waitingForFile: true,\n failed: false,\n cancelled: false,\n errorMessage: \"\",\n }),\n );\n };\n\n if (state.objectBrowser.selectedObjects.length !== 0) {\n let itemsToDownload: BucketObjectItem[] = [];\n\n const filterFunction = (currValue: BucketObjectItem) =>\n state.objectBrowser.selectedObjects.includes(currValue.name);\n\n itemsToDownload = state.objectBrowser.records.filter(filterFunction);\n\n // I case just one element is selected, then we trigger download modal validation.\n // We are going to enforce zip download when multiple files are selected\n if (itemsToDownload.length === 1) {\n if (\n itemsToDownload[0].name.length > 200 &&\n getClientOS().toLowerCase().includes(\"win\")\n ) {\n dispatch(setDownloadRenameModal(itemsToDownload[0]));\n return;\n }\n }\n\n itemsToDownload.forEach((filteredItem) => {\n downloadObject(filteredItem);\n });\n }\n },\n);\n\nexport const openPreview = createAsyncThunk(\n \"objectBrowser/openPreview\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n if (state.objectBrowser.selectedObjects.length === 1) {\n let fileObject: BucketObjectItem | undefined;\n\n const findFunction = (currValue: BucketObjectItem) =>\n state.objectBrowser.selectedObjects.includes(currValue.name);\n\n fileObject = state.objectBrowser.records.find(findFunction);\n\n if (fileObject) {\n dispatch(setSelectedPreview(fileObject));\n dispatch(setPreviewOpen(true));\n }\n }\n },\n);\n\nexport const openShare = createAsyncThunk(\n \"objectBrowser/openShare\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n if (state.objectBrowser.selectedObjects.length === 1) {\n let fileObject: BucketObjectItem | undefined;\n\n const findFunction = (currValue: BucketObjectItem) =>\n state.objectBrowser.selectedObjects.includes(currValue.name);\n\n fileObject = state.objectBrowser.records.find(findFunction);\n\n if (fileObject) {\n dispatch(setSelectedPreview(fileObject));\n dispatch(setShareFileModalOpen(true));\n }\n }\n },\n);\n\nexport const openAnonymousAccess = createAsyncThunk(\n \"objectBrowser/openAnonymousAccess\",\n async (_, { getState, dispatch }) => {\n const state = getState() as AppState;\n\n if (\n state.objectBrowser.selectedObjects.length === 1 &&\n state.objectBrowser.selectedObjects[0].endsWith(\"/\")\n ) {\n dispatch(setAnonymousAccessOpen(true));\n }\n },\n);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { setSearchObjects } from \"./objectBrowserSlice\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { useSelector } from \"react-redux\";\n\nconst FilterObjectsSB = () => {\n const dispatch = useAppDispatch();\n\n const searchObjects = useSelector(\n (state: AppState) => state.objectBrowser.searchObjects,\n );\n return (\n {\n dispatch(setSearchObjects(value));\n }}\n value={searchObjects}\n />\n );\n};\nexport default FilterObjectsSB;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, {\n Fragment,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useLocation, useNavigate, useParams } from \"react-router-dom\";\nimport { useDropzone } from \"react-dropzone\";\nimport { Theme } from \"@mui/material/styles\";\nimport {\n AccessRuleIcon,\n ActionsList,\n BucketsIcon,\n Button,\n DeleteIcon,\n DownloadIcon,\n HistoryIcon,\n PageLayout,\n PreviewIcon,\n RefreshIcon,\n ScreenTitle,\n ShareIcon,\n} from \"mds\";\nimport { DateTime } from \"luxon\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport Grid from \"@mui/material/Grid\";\nimport get from \"lodash/get\";\nimport {\n decodeURLString,\n encodeURLString,\n niceBytesInt,\n} from \"../../../../../../common/utils\";\n\nimport {\n actionsTray,\n containerForHeader,\n objectBrowserCommon,\n objectBrowserExtras,\n searchField,\n tableStyles,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { Badge } from \"@mui/material\";\nimport BrowserBreadcrumbs from \"../../../../ObjectBrowser/BrowserBreadcrumbs\";\nimport { AllowedPreviews, previewObjectType } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../../common/types\";\n\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../../../common/SecureComponent\";\nimport withSuspense from \"../../../../Common/Components/withSuspense\";\nimport UploadFilesButton from \"../../UploadFilesButton\";\nimport DetailsListPanel from \"./DetailsListPanel\";\nimport ObjectDetailPanel from \"./ObjectDetailPanel\";\nimport VersionsNavigator from \"../ObjectDetails/VersionsNavigator\";\nimport CheckboxWrapper from \"../../../../Common/FormComponents/CheckboxWrapper/CheckboxWrapper\";\n\nimport {\n setErrorSnackMessage,\n setSnackBarMessage,\n} from \"../../../../../../systemSlice\";\n\nimport {\n makeid,\n removeTrace,\n storeCallForObjectWithID,\n storeFormDataWithID,\n} from \"../../../../ObjectBrowser/transferManager\";\nimport {\n cancelObjectInList,\n completeObject,\n failObject,\n openList,\n resetMessages,\n resetRewind,\n setAnonymousAccessOpen,\n setDownloadRenameModal,\n setLoadingObjects,\n setLoadingRecords,\n setLoadingVersions,\n setNewObject,\n setObjectDetailsView,\n setPreviewOpen,\n setRetentionConfig,\n setSearchObjects,\n setSelectedBucket,\n setSelectedObjects,\n setSelectedObjectView,\n setSelectedPreview,\n setShareFileModalOpen,\n setShowDeletedObjects,\n setVersionsModeEnabled,\n updateProgress,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport {\n selBucketDetailsInfo,\n selBucketDetailsLoading,\n setBucketDetailsLoad,\n setBucketInfo,\n} from \"../../../BucketDetails/bucketDetailsSlice\";\nimport RenameLongFileName from \"../../../../ObjectBrowser/RenameLongFilename\";\nimport TooltipWrapper from \"../../../../Common/TooltipWrapper/TooltipWrapper\";\nimport ListObjectsTable from \"./ListObjectsTable\";\nimport {\n downloadSelected,\n openAnonymousAccess,\n openPreview,\n openShare,\n} from \"../../../../ObjectBrowser/objectBrowserThunks\";\n\nimport FilterObjectsSB from \"../../../../ObjectBrowser/FilterObjectsSB\";\nimport AddAccessRule from \"../../../BucketDetails/AddAccessRule\";\nimport { isVersionedMode } from \"../../../../../../utils/validationFunctions\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { BucketQuota } from \"api/consoleApi\";\nimport {\n extractFileExtn,\n getPolicyAllowedFileExtensions,\n getSessionGrantsWildCard,\n} from \"../../UploadPermissionUtils\";\n\nconst DeleteMultipleObjects = withSuspense(\n React.lazy(() => import(\"./DeleteMultipleObjects\")),\n);\nconst ShareFile = withSuspense(\n React.lazy(() => import(\"../ObjectDetails/ShareFile\")),\n);\nconst RewindEnable = withSuspense(React.lazy(() => import(\"./RewindEnable\")));\nconst PreviewFileModal = withSuspense(\n React.lazy(() => import(\"../Preview/PreviewFileModal\")),\n);\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n badgeOverlap: {\n \"& .MuiBadge-badge\": {\n top: 10,\n right: 1,\n width: 5,\n height: 5,\n minWidth: 5,\n },\n },\n ...tableStyles,\n ...actionsTray,\n ...searchField,\n\n searchField: {\n ...searchField.searchField,\n maxWidth: 380,\n },\n screenTitleContainer: {\n border: \"#EAEDEE 1px solid\",\n padding: \"0 5px\",\n },\n labelStyle: {\n color: \"#969FA8\",\n fontSize: \"12px\",\n },\n breadcrumbsContainer: {\n padding: \"12px 14px 5px\",\n },\n fullContainer: {\n width: \"100%\",\n position: \"relative\",\n \"&.detailsOpen\": {\n \"@media (max-width: 799px)\": {\n display: \"none\",\n },\n },\n },\n hideListOnSmall: {\n \"@media (max-width: 799px)\": {\n display: \"none\",\n },\n },\n actionsSection: {\n display: \"flex\",\n justifyContent: \"space-between\",\n width: \"100%\",\n },\n ...objectBrowserExtras,\n ...objectBrowserCommon,\n ...containerForHeader,\n }),\n);\n\nconst baseDnDStyle = {\n borderWidth: 2,\n borderRadius: 2,\n borderColor: \"#eeeeee\",\n outline: \"none\",\n};\n\nconst activeDnDStyle = {\n borderStyle: \"dashed\",\n backgroundColor: \"#fafafa\",\n borderColor: \"#2196f3\",\n};\n\nconst acceptDnDStyle = {\n borderStyle: \"dashed\",\n backgroundColor: \"#fafafa\",\n borderColor: \"#00e676\",\n};\n\nconst ListObjects = () => {\n const classes = useStyles();\n const dispatch = useAppDispatch();\n const params = useParams();\n const navigate = useNavigate();\n const location = useLocation();\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const bucketToRewind = useSelector(\n (state: AppState) => state.objectBrowser.rewind.bucketToRewind,\n );\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n\n const showDeleted = useSelector(\n (state: AppState) => state.objectBrowser.showDeleted,\n );\n const detailsOpen = useSelector(\n (state: AppState) => state.objectBrowser.objectDetailsOpen,\n );\n const selectedInternalPaths = useSelector(\n (state: AppState) => state.objectBrowser.selectedInternalPaths,\n );\n const loadingObjects = useSelector(\n (state: AppState) => state.objectBrowser.loadingObjects,\n );\n const simplePath = useSelector(\n (state: AppState) => state.objectBrowser.simplePath,\n );\n\n const versioningConfig = useSelector(\n (state: AppState) => state.objectBrowser.versionInfo,\n );\n const lockingEnabled = useSelector(\n (state: AppState) => state.objectBrowser.lockingEnabled,\n );\n const downloadRenameModal = useSelector(\n (state: AppState) => state.objectBrowser.downloadRenameModal,\n );\n const selectedPreview = useSelector(\n (state: AppState) => state.objectBrowser.selectedPreview,\n );\n const shareFileModalOpen = useSelector(\n (state: AppState) => state.objectBrowser.shareFileModalOpen,\n );\n const previewOpen = useSelector(\n (state: AppState) => state.objectBrowser.previewOpen,\n );\n const selectedBucket = useSelector(\n (state: AppState) => state.objectBrowser.selectedBucket,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n const anonymousAccessOpen = useSelector(\n (state: AppState) => state.objectBrowser.anonymousAccessOpen,\n );\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n const bucketInfo = useSelector(selBucketDetailsInfo);\n\n const [deleteMultipleOpen, setDeleteMultipleOpen] = useState(false);\n const [rewindSelect, setRewindSelect] = useState(false);\n const [iniLoad, setIniLoad] = useState(false);\n const [canShareFile, setCanShareFile] = useState(false);\n const [canPreviewFile, setCanPreviewFile] = useState(false);\n const [quota, setQuota] = useState(null);\n\n const [metaData, setMetaData] = useState(null);\n const [isMetaDataLoaded, setIsMetaDataLoaded] = useState(false);\n\n const isVersioningApplied = isVersionedMode(versioningConfig.status);\n const bucketName = params.bucketName || \"\";\n\n const pathSegment = location.pathname.split(`/browser/${bucketName}/`);\n const internalPaths = pathSegment.length === 2 ? pathSegment[1] : \"\";\n\n const pageTitle = decodeURLString(internalPaths);\n const currentPath = pageTitle.split(\"/\").filter((i: string) => i !== \"\");\n\n let uploadPath = [bucketName];\n if (currentPath.length > 0) {\n uploadPath = uploadPath.concat(currentPath);\n }\n\n const fileUpload = useRef(null);\n const folderUpload = useRef(null);\n\n const sessionGrants = useSelector((state: AppState) =>\n state.console.session ? state.console.session.permissions || {} : {},\n );\n\n const putObjectPermScopes = [\n IAM_SCOPES.S3_PUT_OBJECT,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ];\n\n const pathAsResourceInPolicy = uploadPath.join(\"/\");\n const allowedFileExtensions = getPolicyAllowedFileExtensions(\n sessionGrants,\n pathAsResourceInPolicy,\n putObjectPermScopes,\n );\n\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n pathAsResourceInPolicy,\n putObjectPermScopes,\n );\n\n const canDownload = hasPermission(\n [pathAsResourceInPolicy, ...sessionGrantWildCards],\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n );\n const canDelete = hasPermission(\n [pathAsResourceInPolicy, ...sessionGrantWildCards],\n [IAM_SCOPES.S3_DELETE_OBJECT],\n );\n const canUpload =\n hasPermission(\n [pathAsResourceInPolicy, ...sessionGrantWildCards],\n putObjectPermScopes,\n ) || anonymousMode;\n\n const canSetAnonymousAccess = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_POLICY,\n IAM_SCOPES.S3_PUT_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n const selectedObjects = useSelector(\n (state: AppState) => state.objectBrowser.selectedObjects,\n );\n\n const fetchMetadata = useCallback(() => {\n const objectName = selectedObjects[0];\n\n if (!isMetaDataLoaded) {\n const encodedPath = encodeURLString(objectName);\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: encodedPath,\n })\n .then((res) => {\n let metadata = get(res.data, \"objectMetadata\", {});\n setIsMetaDataLoaded(true);\n setMetaData(metadata);\n })\n .catch((err) => {\n console.error(\n \"Error Getting Metadata Status: \",\n err,\n err?.detailedError,\n );\n setIsMetaDataLoaded(true);\n });\n }\n }, [bucketName, selectedObjects, isMetaDataLoaded]);\n\n useEffect(() => {\n if (bucketName && selectedObjects.length === 1) {\n fetchMetadata();\n }\n }, [bucketName, selectedObjects, fetchMetadata]);\n\n useEffect(() => {\n dispatch(setSearchObjects(\"\"));\n dispatch(setLoadingObjects(true));\n dispatch(setSelectedObjects([]));\n }, [simplePath, dispatch]);\n\n useEffect(() => {\n if (rewindEnabled) {\n if (bucketToRewind !== bucketName) {\n dispatch(resetRewind());\n return;\n }\n }\n }, [rewindEnabled, bucketToRewind, bucketName, dispatch]);\n\n // END OF WS HANDLERS\n\n useEffect(() => {\n if (folderUpload.current !== null) {\n folderUpload.current.setAttribute(\"directory\", \"\");\n folderUpload.current.setAttribute(\"webkitdirectory\", \"\");\n }\n }, [folderUpload]);\n\n useEffect(() => {\n if (selectedObjects.length === 1) {\n const objectName = selectedObjects[0];\n let objectType: AllowedPreviews = previewObjectType(metaData, objectName);\n\n if (objectType !== \"none\" && canDownload) {\n setCanPreviewFile(true);\n } else {\n setCanPreviewFile(false);\n }\n\n if (objectName.endsWith(\"/\") || canDownload) {\n setCanShareFile(true);\n } else {\n setCanShareFile(false);\n }\n } else {\n setCanShareFile(false);\n setCanPreviewFile(false);\n }\n }, [selectedObjects, canDownload, metaData]);\n\n useEffect(() => {\n if (!quota && !anonymousMode) {\n api.buckets\n .getBucketQuota(bucketName)\n .then((res) => {\n let quotaVals = null;\n\n if (res.data.quota) {\n quotaVals = res.data;\n }\n\n setQuota(quotaVals);\n })\n .catch((err) => {\n console.error(\n \"Error Getting Quota Status: \",\n err.error.detailedMessage,\n );\n setQuota(null);\n });\n }\n }, [quota, bucketName, anonymousMode]);\n\n useEffect(() => {\n if (selectedObjects.length > 0) {\n dispatch(setObjectDetailsView(true));\n return;\n }\n\n if (\n selectedObjects.length === 0 &&\n selectedInternalPaths === null &&\n !loadingObjects\n ) {\n dispatch(setObjectDetailsView(false));\n }\n }, [selectedObjects, selectedInternalPaths, dispatch, loadingObjects]);\n\n useEffect(() => {\n if (!iniLoad) {\n dispatch(setBucketDetailsLoad(true));\n setIniLoad(true);\n }\n }, [iniLoad, dispatch, setIniLoad]);\n\n // bucket info\n useEffect(() => {\n if ((loadingObjects || loadingBucket) && !anonymousMode) {\n api.buckets\n .bucketInfo(bucketName)\n .then((res) => {\n dispatch(setBucketDetailsLoad(false));\n dispatch(setBucketInfo(res.data));\n dispatch(setSelectedBucket(bucketName));\n })\n .catch((err) => {\n dispatch(setBucketDetailsLoad(false));\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n });\n }\n }, [bucketName, loadingBucket, dispatch, anonymousMode, loadingObjects]);\n\n // Load retention Config\n\n useEffect(() => {\n if (selectedBucket !== \"\") {\n api.buckets\n .getBucketRetentionConfig(selectedBucket)\n .then((res) => {\n dispatch(setRetentionConfig(res.data));\n })\n .catch(() => {\n dispatch(setRetentionConfig(null));\n });\n }\n }, [selectedBucket, dispatch]);\n\n const closeDeleteMultipleModalAndRefresh = (refresh: boolean) => {\n setDeleteMultipleOpen(false);\n\n if (refresh) {\n dispatch(setSnackBarMessage(`Objects deleted successfully.`));\n dispatch(setSelectedObjects([]));\n dispatch(setLoadingObjects(true));\n }\n };\n\n const handleUploadButton = (e: any) => {\n if (\n e === null ||\n e === undefined ||\n e.target.files === null ||\n e.target.files === undefined\n ) {\n return;\n }\n e.preventDefault();\n var newFiles: File[] = [];\n\n for (var i = 0; i < e.target.files.length; i++) {\n newFiles.push(e.target.files[i]);\n }\n uploadObject(newFiles, \"\");\n\n e.target.value = \"\";\n };\n\n const uploadObject = useCallback(\n (files: File[], folderPath: string): void => {\n let pathPrefix = \"\";\n if (simplePath) {\n pathPrefix = simplePath.endsWith(\"/\") ? simplePath : simplePath + \"/\";\n }\n\n const upload = (\n files: File[],\n bucketName: string,\n path: string,\n folderPath: string,\n ) => {\n let uploadPromise = (file: File) => {\n return new Promise((resolve, reject) => {\n let uploadUrl = `api/v1/buckets/${bucketName}/objects/upload`;\n const fileName = file.name;\n\n const blobFile = new Blob([file], { type: file.type });\n\n let encodedPath = \"\";\n\n const filePath = get(file, \"path\", \"\");\n const fileWebkitRelativePath = get(file, \"webkitRelativePath\", \"\");\n\n let relativeFolderPath = folderPath;\n const ID = makeid(8);\n\n // File was uploaded via drag & drop\n if (filePath !== \"\") {\n relativeFolderPath = filePath;\n } else if (fileWebkitRelativePath !== \"\") {\n // File was uploaded using upload button\n relativeFolderPath = fileWebkitRelativePath;\n }\n\n if (path !== \"\" || relativeFolderPath !== \"\") {\n const finalFolderPath = relativeFolderPath\n .split(\"/\")\n .slice(0, -1)\n .join(\"/\");\n\n const pathClean = path.endsWith(\"/\") ? path.slice(0, -1) : path;\n\n encodedPath = encodeURLString(\n `${pathClean}${\n !pathClean.endsWith(\"/\") &&\n finalFolderPath !== \"\" &&\n !finalFolderPath.startsWith(\"/\")\n ? \"/\"\n : \"\"\n }${finalFolderPath}${\n !finalFolderPath.endsWith(\"/\") ||\n (finalFolderPath.trim() === \"\" && !path.endsWith(\"/\"))\n ? \"/\"\n : \"\"\n }`,\n );\n }\n\n if (encodedPath !== \"\") {\n uploadUrl = `${uploadUrl}?prefix=${encodedPath}`;\n }\n\n const identity = encodeURLString(\n `${bucketName}-${encodedPath}-${new Date().getTime()}-${Math.random()}`,\n );\n\n let xhr = new XMLHttpRequest();\n xhr.open(\"POST\", uploadUrl, true);\n if (anonymousMode) {\n xhr.setRequestHeader(\"X-Anonymous\", \"1\");\n }\n // xhr.setRequestHeader(\"X-Anonymous\", \"1\");\n\n const areMultipleFiles = files.length > 1;\n let errorMessage = `An error occurred while uploading the file${\n areMultipleFiles ? \"s\" : \"\"\n }.`;\n\n const errorMessages: any = {\n 413: \"Error - File size too large\",\n };\n\n xhr.withCredentials = false;\n xhr.onload = function (event) {\n // resolve promise only when HTTP code is ok\n if (xhr.status >= 200 && xhr.status < 300) {\n dispatch(completeObject(identity));\n resolve({ status: xhr.status });\n\n removeTrace(ID);\n } else {\n // reject promise if there was a server error\n if (errorMessages[xhr.status]) {\n errorMessage = errorMessages[xhr.status];\n } else if (xhr.response) {\n try {\n const err = JSON.parse(xhr.response);\n errorMessage = err.detailedMessage;\n } catch (e) {\n errorMessage = \"something went wrong\";\n }\n }\n\n dispatch(\n failObject({\n instanceID: identity,\n msg: errorMessage,\n }),\n );\n reject({ status: xhr.status, message: errorMessage });\n\n removeTrace(ID);\n }\n };\n\n xhr.upload.addEventListener(\"error\", (event) => {\n reject(errorMessage);\n dispatch(\n failObject({\n instanceID: identity,\n msg: \"A network error occurred.\",\n }),\n );\n return;\n });\n\n xhr.upload.addEventListener(\"progress\", (event) => {\n const progress = Math.floor((event.loaded * 100) / event.total);\n\n dispatch(\n updateProgress({\n instanceID: identity,\n progress: progress,\n }),\n );\n });\n\n xhr.onerror = () => {\n reject(errorMessage);\n dispatch(\n failObject({\n instanceID: identity,\n msg: \"A network error occurred.\",\n }),\n );\n return;\n };\n xhr.onloadend = () => {\n if (files.length === 0) {\n dispatch(setLoadingObjects(true));\n }\n };\n xhr.onabort = () => {\n dispatch(cancelObjectInList(identity));\n };\n\n const formData = new FormData();\n if (file.size !== undefined) {\n formData.append(file.size.toString(), blobFile, fileName);\n storeCallForObjectWithID(ID, xhr);\n dispatch(\n setNewObject({\n ID,\n bucketName,\n done: false,\n instanceID: identity,\n percentage: 0,\n prefix: `${decodeURLString(encodedPath)}${fileName}`,\n type: \"upload\",\n waitingForFile: false,\n failed: false,\n cancelled: false,\n errorMessage: \"\",\n }),\n );\n storeFormDataWithID(ID, formData);\n }\n });\n };\n\n const uploadFilePromises: any = [];\n // open object manager\n dispatch(openList());\n for (let i = 0; i < files.length; i++) {\n const file = files[i];\n uploadFilePromises.push(uploadPromise(file));\n }\n Promise.allSettled(uploadFilePromises).then((results: Array) => {\n const errors = results.filter(\n (result) => result.status === \"rejected\",\n );\n if (errors.length > 0) {\n const totalFiles = uploadFilePromises.length;\n const successUploadedFiles =\n uploadFilePromises.length - errors.length;\n const err: ErrorResponseHandler = {\n errorMessage: \"There were some errors during file upload\",\n detailedError: `Uploaded files ${successUploadedFiles}/${totalFiles}`,\n };\n dispatch(setErrorSnackMessage(err));\n }\n // We force objects list reload after all promises were handled\n dispatch(setLoadingObjects(true));\n dispatch(setSelectedObjects([]));\n });\n };\n\n upload(files, bucketName, pathPrefix, folderPath);\n },\n [bucketName, dispatch, simplePath, anonymousMode],\n );\n\n const onDrop = useCallback(\n (acceptedFiles: any[]) => {\n if (acceptedFiles && acceptedFiles.length > 0 && canUpload) {\n let newFolderPath: string = acceptedFiles[0].path;\n //Should we filter by allowed file extensions if any?.\n let allowedFiles = [];\n if (allowedFileExtensions.length > 0) {\n allowedFiles = acceptedFiles.filter((file) => {\n const fileExtn = extractFileExtn(file.name);\n return allowedFileExtensions.includes(fileExtn);\n });\n } else {\n allowedFiles = acceptedFiles;\n }\n\n if (allowedFiles.length) {\n uploadObject(allowedFiles, newFolderPath);\n console.log(\n `${allowedFiles.length} Allowed Files Processed out of ${acceptedFiles.length}.`,\n pathAsResourceInPolicy,\n ...sessionGrantWildCards,\n );\n\n if (allowedFiles.length !== acceptedFiles.length) {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"Upload is restricted.\",\n detailedError: permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT, IAM_SCOPES.S3_PUT_ACTIONS],\n \"upload objects to this location\",\n ),\n }),\n );\n }\n } else {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"Could not process drag and drop.\",\n detailedError: permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT, IAM_SCOPES.S3_PUT_ACTIONS],\n \"upload objects to this location\",\n ),\n }),\n );\n\n console.error(\n \"Could not process drag and drop . upload may be restricted.\",\n pathAsResourceInPolicy,\n ...sessionGrantWildCards,\n );\n }\n }\n if (!canUpload) {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"Upload not allowed\",\n detailedError: permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT, IAM_SCOPES.S3_PUT_ACTIONS],\n \"upload objects to this location\",\n ),\n }),\n );\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [uploadObject],\n );\n\n const { getRootProps, getInputProps, isDragActive, isDragAccept } =\n useDropzone({\n noClick: true,\n onDrop,\n });\n\n const dndStyles = useMemo(\n () => ({\n ...baseDnDStyle,\n ...(isDragActive ? activeDnDStyle : {}),\n ...(isDragAccept ? acceptDnDStyle : {}),\n }),\n [isDragActive, isDragAccept],\n );\n\n const closeShareModal = () => {\n dispatch(setShareFileModalOpen(false));\n dispatch(setSelectedPreview(null));\n };\n\n const rewindCloseModal = () => {\n setRewindSelect(false);\n };\n\n const closePreviewWindow = () => {\n dispatch(setPreviewOpen(false));\n dispatch(setSelectedPreview(null));\n };\n\n const onClosePanel = (forceRefresh: boolean) => {\n dispatch(setSelectedObjectView(null));\n dispatch(setVersionsModeEnabled({ status: false }));\n if (detailsOpen && selectedInternalPaths !== null) {\n // We change URL to be the contained folder\n\n const decodedPath = decodeURLString(internalPaths);\n const splitURLS = decodedPath.split(\"/\");\n\n // We remove the last section of the URL as it should be a file\n splitURLS.pop();\n\n let URLItem = \"\";\n\n if (splitURLS && splitURLS.length > 0) {\n URLItem = `${splitURLS.join(\"/\")}/`;\n }\n\n navigate(`/browser/${bucketName}/${encodeURLString(URLItem)}`);\n }\n\n dispatch(setObjectDetailsView(false));\n dispatch(setSelectedObjects([]));\n\n if (forceRefresh) {\n dispatch(setLoadingObjects(true));\n }\n };\n\n const setDeletedAction = () => {\n dispatch(resetMessages());\n dispatch(setShowDeletedObjects(!showDeleted));\n onClosePanel(true);\n };\n\n const closeRenameModal = () => {\n dispatch(setDownloadRenameModal(null));\n };\n\n const closeAddAccessRule = () => {\n dispatch(setAnonymousAccessOpen(false));\n };\n\n let createdTime = DateTime.now();\n\n if (bucketInfo?.creation_date) {\n createdTime = DateTime.fromISO(bucketInfo.creation_date);\n }\n\n const multiActionButtons = [\n {\n action: () => {\n dispatch(downloadSelected(bucketName));\n },\n label: \"Download\",\n disabled: !canDownload || selectedObjects?.length === 0,\n icon: ,\n tooltip: canDownload\n ? \"Download Selected\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"download objects from this bucket\",\n ),\n },\n {\n action: () => {\n dispatch(openShare());\n },\n label: \"Share\",\n disabled: selectedObjects.length !== 1 || !canShareFile,\n icon: ,\n tooltip: canShareFile ? \"Share Selected File\" : \"Sharing unavailable\",\n },\n {\n action: () => {\n dispatch(openPreview());\n },\n label: \"Preview\",\n disabled: selectedObjects.length !== 1 || !canPreviewFile,\n icon: ,\n tooltip: canPreviewFile ? \"Preview Selected File\" : \"Preview unavailable\",\n },\n {\n action: () => {\n dispatch(openAnonymousAccess());\n },\n label: \"Anonymous Access\",\n disabled:\n selectedObjects.length !== 1 ||\n !selectedObjects[0].endsWith(\"/\") ||\n !canSetAnonymousAccess,\n icon: ,\n tooltip:\n selectedObjects.length === 1 && selectedObjects[0].endsWith(\"/\")\n ? \"Set Anonymous Access to this Folder\"\n : \"Anonymous Access unavailable\",\n },\n {\n action: () => {\n setDeleteMultipleOpen(true);\n },\n label: \"Delete\",\n icon: ,\n disabled: !canDelete || selectedObjects.length === 0,\n tooltip: canDelete\n ? \"Delete Selected Files\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_DELETE_OBJECT],\n \"delete objects in this bucket\",\n ),\n },\n ];\n\n return (\n \n {shareFileModalOpen && selectedPreview && (\n \n )}\n {deleteMultipleOpen && (\n \n )}\n {rewindSelect && (\n \n )}\n {previewOpen && (\n \n )}\n {!!downloadRenameModal && (\n \n )}\n {anonymousAccessOpen && (\n \n )}\n\n \n {anonymousMode && (\n
\n \n
\n )}\n \n \n \n \n }\n title={bucketName}\n subTitle={\n !anonymousMode ? (\n \n \n Created on:  \n \n {bucketInfo?.creation_date\n ? createdTime.toFormat(\n \"ccc, LLL dd yyyy HH:mm:ss (ZZZZ)\",\n )\n : \"\"}\n \n \n \n Access:   \n {bucketInfo?.access || \"\"}\n \n {bucketInfo && (\n \n \n {bucketInfo.size && (\n {niceBytesInt(bucketInfo.size)}\n )}\n {bucketInfo.size && quota && (\n \n {\" \"}\n / {niceBytesInt(quota.quota || 0)}\n \n )}\n {bucketInfo.size && bucketInfo.objects ? \" - \" : \"\"}\n {bucketInfo.objects && (\n \n {bucketInfo.objects} Object\n {bucketInfo.objects && bucketInfo.objects !== 1\n ? \"s\"\n : \"\"}\n \n )}\n \n \n )}\n \n ) : null\n }\n actions={\n \n {!anonymousMode && (\n \n \n \n \n }\n variant={\"regular\"}\n onClick={() => {\n setRewindSelect(true);\n }}\n disabled={\n !isVersioningApplied ||\n !hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_OBJECT,\n IAM_SCOPES.S3_GET_ACTIONS,\n ])\n }\n />\n \n )}\n \n }\n variant={\"regular\"}\n onClick={() => {\n if (versionsMode) {\n dispatch(setLoadingVersions(true));\n } else {\n dispatch(resetMessages());\n dispatch(setLoadingRecords(true));\n dispatch(setLoadingObjects(true));\n }\n }}\n disabled={\n anonymousMode\n ? false\n : !hasPermission(bucketName, [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]) || rewindEnabled\n }\n />\n \n \n \n {\n if (fileUpload && fileUpload.current) {\n fileUpload.current.click();\n }\n closeMenu();\n }}\n uploadFolderFunction={(closeMenu) => {\n if (folderUpload && folderUpload.current) {\n folderUpload.current.click();\n }\n closeMenu();\n }}\n />\n \n }\n bottomBorder={false}\n />\n \n \n \n \n {versionsMode ? (\n \n {selectedInternalPaths !== null && (\n \n )}\n \n ) : (\n \n \n {!anonymousMode && (\n \n \n \n \n )\n }\n hidePathButton={false}\n />\n \n )}\n \n \n \n )}\n {!anonymousMode && (\n \n {\n onClosePanel(false);\n }}\n className={`${versionsMode ? classes.hideListOnSmall : \"\"}`}\n >\n {selectedObjects.length > 0 && (\n \n )}\n {selectedInternalPaths !== null && (\n \n )}\n \n \n )}\n \n \n
\n
\n );\n};\n\nexport default ListObjects;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect } from \"react\";\nimport {\n IAM_PAGES,\n IAM_PERMISSIONS,\n IAM_ROLES,\n IAM_SCOPES,\n} from \"../../../common/SecureComponent/permissions\";\nimport { SecureComponent } from \"../../../common/SecureComponent\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport { BackLink, Button, SettingsIcon, Grid } from \"mds\";\nimport AutoColorIcon from \"../Common/Components/AutoColorIcon\";\nimport { useSelector } from \"react-redux\";\nimport { selFeatures } from \"../consoleSlice\";\nimport hasPermission from \"../../../common/SecureComponent/accessControl\";\nimport { useNavigate } from \"react-router-dom\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { setSearchVersions } from \"./objectBrowserSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport FilterObjectsSB from \"./FilterObjectsSB\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport ObjectManagerButton from \"../Common/ObjectManager/ObjectManagerButton\";\nimport HelpMenu from \"../HelpMenu\";\nimport { setHelpName } from \"../../../systemSlice\";\n\ninterface IOBHeader {\n bucketName: string;\n}\n\nconst OBHeader = ({ bucketName }: IOBHeader) => {\n const dispatch = useAppDispatch();\n const features = useSelector(selFeatures);\n\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const versionedFile = useSelector(\n (state: AppState) => state.objectBrowser.versionedFile,\n );\n const searchVersions = useSelector(\n (state: AppState) => state.objectBrowser.searchVersions,\n );\n\n const obOnly = !!features?.includes(\"object-browser-only\");\n\n const navigate = useNavigate();\n\n const configureBucketAllowed = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_POLICY,\n IAM_SCOPES.S3_PUT_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,\n IAM_SCOPES.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,\n IAM_SCOPES.S3_DELETE_BUCKET,\n IAM_SCOPES.S3_GET_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_PUT_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_GET_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_PUT_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_GET_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.S3_PUT_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.ADMIN_GET_BUCKET_QUOTA,\n IAM_SCOPES.ADMIN_SET_BUCKET_QUOTA,\n IAM_SCOPES.S3_PUT_BUCKET_TAGGING,\n IAM_SCOPES.S3_GET_BUCKET_TAGGING,\n IAM_SCOPES.S3_LIST_BUCKET_VERSIONS,\n IAM_SCOPES.S3_GET_BUCKET_POLICY_STATUS,\n IAM_SCOPES.S3_DELETE_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n const searchBar = (\n \n {!versionsMode ? (\n \n \n \n ) : (\n \n {\n dispatch(setSearchVersions(value));\n }}\n value={searchVersions}\n />\n \n )}\n \n );\n\n useEffect(() => {\n dispatch(setHelpName(\"object_browser\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n {!obOnly ? (\n {\n navigate(IAM_PAGES.OBJECT_BROWSER_VIEW);\n }}\n />\n }\n actions={\n \n \n \n navigate(`/buckets/${bucketName}/admin`)}\n icon={\n \n }\n style={{\n padding: \"0 10px\",\n }}\n />\n \n \n \n \n }\n middleComponent={searchBar}\n />\n ) : (\n \n \n \n \n \n {searchBar}\n \n \n \n )}\n \n );\n};\n\nexport default OBHeader;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { DateTime } from \"luxon\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { Grid, InputBox, InputLabel, LinkIcon } from \"mds\";\n\ninterface IDaysSelector {\n classes: any;\n id: string;\n initialDate: Date;\n maxDays?: number;\n label: string;\n entity: string;\n onChange: (newDate: string, isValid: boolean) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n labelContainer: {\n display: \"flex\",\n alignItems: \"center\",\n marginBottom: 15,\n },\n fieldContainer: {\n ...fieldBasic.fieldContainer,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n paddingBottom: 10,\n marginTop: 11,\n marginBottom: 6,\n },\n durationInputs: {\n display: \"flex\",\n alignItems: \"flex-start\",\n justifyContent: \"flex-start\",\n gap: 10,\n },\n\n validityIndicator: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-start\",\n marginTop: 25,\n marginLeft: 10,\n },\n invalidDurationText: {\n marginTop: 15,\n display: \"flex\",\n color: \"red\",\n fontSize: 11,\n },\n reverseInput: {\n flexFlow: \"row-reverse\",\n \"& > label\": {\n fontWeight: 400,\n marginLeft: 15,\n marginRight: 25,\n },\n },\n validityText: {\n fontSize: 14,\n marginTop: 15,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n \"@media (max-width: 900px)\": {\n flexFlow: \"column\",\n },\n \"& > .min-icon\": {\n color: \"#5E5E5E\",\n width: 15,\n height: 15,\n marginRight: 10,\n },\n },\n validTill: {\n fontWeight: \"bold\",\n marginLeft: 15,\n },\n });\n\nconst calculateNewTime = (\n initialDate: Date,\n days: number,\n hours: number,\n minutes: number,\n) => {\n return DateTime.fromJSDate(initialDate).plus({ days, hours, minutes });\n};\n\nconst DaysSelector = ({\n classes,\n id,\n initialDate,\n label,\n maxDays,\n entity,\n onChange,\n}: IDaysSelector) => {\n const [selectedDays, setSelectedDays] = useState(7);\n const [selectedHours, setSelectedHours] = useState(0);\n const [selectedMinutes, setSelectedMinutes] = useState(0);\n const [validDate, setValidDate] = useState(true);\n const [dateSelected, setDateSelected] = useState(DateTime.now());\n\n useEffect(() => {\n if (\n !isNaN(selectedHours) &&\n !isNaN(selectedDays) &&\n !isNaN(selectedMinutes)\n ) {\n setDateSelected(\n calculateNewTime(\n initialDate,\n selectedDays,\n selectedHours,\n selectedMinutes,\n ),\n );\n }\n }, [initialDate, selectedDays, selectedHours, selectedMinutes]);\n\n useEffect(() => {\n if (validDate) {\n const formattedDate = dateSelected.toFormat(\"yyyy-MM-dd HH:mm:ss\");\n onChange(formattedDate.split(\" \").join(\"T\"), true);\n } else {\n onChange(\"0000-00-00\", false);\n }\n }, [dateSelected, onChange, validDate]);\n\n // Basic validation for inputs\n useEffect(() => {\n let valid = true;\n if (\n selectedDays < 0 ||\n (maxDays && selectedDays > maxDays) ||\n isNaN(selectedDays)\n ) {\n valid = false;\n }\n\n if (selectedHours < 0 || selectedHours > 23 || isNaN(selectedHours)) {\n valid = false;\n }\n\n if (selectedMinutes < 0 || selectedMinutes > 59 || isNaN(selectedMinutes)) {\n valid = false;\n }\n\n if (\n maxDays &&\n selectedDays === maxDays &&\n (selectedHours !== 0 || selectedMinutes !== 0)\n ) {\n valid = false;\n }\n\n if (selectedDays <= 0 && selectedHours <= 0 && selectedMinutes <= 0) {\n valid = false;\n }\n\n setValidDate(valid);\n }, [\n dateSelected,\n maxDays,\n onChange,\n selectedDays,\n selectedHours,\n selectedMinutes,\n ]);\n\n const extraStyles = {\n \"& .textBoxContainer\": {\n minWidth: 0,\n },\n \"& input\": {\n textAlign: \"center\" as const,\n paddingRight: 10,\n paddingLeft: 10,\n width: 40,\n },\n };\n\n return (\n \n \n \n {label}\n \n \n \n {\n setSelectedDays(parseInt(e.target.value));\n }}\n value={selectedDays.toString()}\n sx={extraStyles}\n noLabelMinWidth\n />\n \n \n {\n setSelectedHours(parseInt(e.target.value));\n }}\n value={selectedHours.toString()}\n sx={extraStyles}\n noLabelMinWidth\n />\n \n \n {\n setSelectedMinutes(parseInt(e.target.value));\n }}\n value={selectedMinutes.toString()}\n sx={extraStyles}\n noLabelMinWidth\n />\n \n \n \n {validDate ? (\n
\n \n
\n {entity} will be available until:\n
{\" \"}\n
\n {dateSelected.toFormat(\"MM/dd/yyyy HH:mm:ss\")}\n
\n
\n ) : (\n
\n Please select a valid duration.\n
\n )}\n
\n \n
\n );\n};\n\nexport default withStyles(styles)(DaysSelector);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { Button, CopyIcon, ReadBox, ShareIcon, Grid } from \"mds\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport LinearProgress from \"@mui/material/LinearProgress\";\n\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport DaysSelector from \"../../../../Common/FormComponents/DaysSelector/DaysSelector\";\nimport { encodeURLString } from \"../../../../../../common/utils\";\nimport {\n selDistSet,\n setModalErrorSnackMessage,\n setModalSnackMessage,\n} from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IShareFileProps {\n open: boolean;\n bucketName: string;\n dataObject: BucketObject;\n closeModalAndRefresh: () => void;\n}\n\nconst ShareFile = ({\n open,\n closeModalAndRefresh,\n bucketName,\n dataObject,\n}: IShareFileProps) => {\n const dispatch = useAppDispatch();\n const distributedSetup = useSelector(selDistSet);\n const [shareURL, setShareURL] = useState(\"\");\n const [isLoadingVersion, setIsLoadingVersion] = useState(true);\n const [isLoadingFile, setIsLoadingFile] = useState(false);\n const [selectedDate, setSelectedDate] = useState(\"\");\n const [dateValid, setDateValid] = useState(true);\n const [versionID, setVersionID] = useState(\"null\");\n\n const initialDate = new Date();\n\n const dateChanged = (newDate: string, isValid: boolean) => {\n setDateValid(isValid);\n if (isValid) {\n setSelectedDate(newDate);\n return;\n }\n setSelectedDate(\"\");\n setShareURL(\"\");\n };\n\n useEffect(() => {\n // In case version is undefined, we get the latest version of the object\n if (dataObject.version_id === undefined) {\n // In case it is not distributed setup, then we default to \"null\";\n if (distributedSetup) {\n api.buckets\n .listObjects(bucketName, {\n prefix: encodeURLString(dataObject.name || \"\"),\n with_versions: distributedSetup,\n })\n .then((res) => {\n const result: BucketObject[] = res.data.objects || [];\n\n const latestVersion: BucketObject | undefined = result.find(\n (elem: BucketObject) => elem.is_latest,\n );\n\n if (latestVersion) {\n setVersionID(`${latestVersion.version_id}`);\n return;\n }\n\n // Version couldn't be retrieved, we default\n setVersionID(\"null\");\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n\n setIsLoadingVersion(false);\n return;\n }\n setVersionID(\"null\");\n setIsLoadingVersion(false);\n return;\n }\n setVersionID(dataObject.version_id || \"null\");\n setIsLoadingVersion(false);\n }, [bucketName, dataObject, distributedSetup, dispatch]);\n\n useEffect(() => {\n if (dateValid && !isLoadingVersion) {\n setIsLoadingFile(true);\n setShareURL(\"\");\n\n const slDate = new Date(`${selectedDate}`);\n const currDate = new Date();\n\n const diffDate = Math.ceil(\n (slDate.getTime() - currDate.getTime()) / 1000,\n );\n\n if (diffDate > 0) {\n api.buckets\n .shareObject(bucketName, {\n prefix: encodeURLString(dataObject.name || \"\"),\n version_id: versionID,\n expires: selectedDate !== \"\" ? `${diffDate}s` : \"\",\n })\n .then((res) => {\n setShareURL(res.data);\n setIsLoadingFile(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setShareURL(\"\");\n setIsLoadingFile(false);\n });\n }\n }\n }, [\n dataObject,\n selectedDate,\n bucketName,\n dateValid,\n setShareURL,\n dispatch,\n distributedSetup,\n isLoadingVersion,\n versionID,\n ]);\n\n return (\n \n }\n modalOpen={open}\n onClose={() => {\n closeModalAndRefresh();\n }}\n >\n {isLoadingVersion && (\n \n \n \n )}\n {!isLoadingVersion && (\n \n \n This is a temporary URL with integrated access credentials for\n sharing objects valid for up to 7 days.\n
\n
\n The temporary URL expires after the configured time limit.\n \n
\n \n \n \n \n \n {\n dispatch(\n setModalSnackMessage(\"Share URL Copied to clipboard\"),\n );\n }}\n disabled={shareURL === \"\" || isLoadingFile}\n style={{\n width: \"28px\",\n height: \"28px\",\n padding: \"0px\",\n }}\n icon={}\n />\n \n }\n >\n {shareURL}\n \n \n
\n )}\n \n
\n );\n};\n\nexport default ShareFile;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Grid, LinearProgress } from \"@mui/material\";\nimport { BucketObjectItem } from \"../ListObjects/types\";\nimport { AllowedPreviews, previewObjectType } from \"../utils\";\nimport { encodeURLString } from \"../../../../../../common/utils\";\nimport clsx from \"clsx\";\nimport WarningMessage from \"../../../../Common/WarningMessage/WarningMessage\";\nimport { api } from \"../../../../../../api\";\nimport get from \"lodash/get\";\n\nconst styles = () =>\n createStyles({\n iframeContainer: {\n border: \"0px\",\n flex: \"1 1 auto\",\n width: \"100%\",\n height: 250,\n backgroundColor: \"transparent\",\n borderRadius: 5,\n\n \"&.image\": {\n height: 500,\n },\n \"&.text\": {\n height: 700,\n },\n \"&.audio\": {\n height: 150,\n },\n \"&.video\": {\n height: 350,\n },\n \"&.fullHeight\": {\n height: \"calc(100vh - 185px)\",\n },\n },\n iframeBase: {\n backgroundColor: \"#fff\",\n },\n iframeHidden: {\n display: \"none\",\n },\n });\n\ninterface IPreviewFileProps {\n bucketName: string;\n object: BucketObjectItem | null;\n isFullscreen?: boolean;\n classes: any;\n}\n\nconst PreviewFile = ({\n bucketName,\n object,\n isFullscreen = false,\n classes,\n}: IPreviewFileProps) => {\n const [loading, setLoading] = useState(true);\n\n const [metaData, setMetaData] = useState(null);\n const [isMetaDataLoaded, setIsMetaDataLoaded] = useState(false);\n\n const objectName = object?.name || \"\";\n\n const fetchMetadata = useCallback(() => {\n if (!isMetaDataLoaded) {\n const encodedPath = encodeURLString(objectName);\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: encodedPath,\n })\n .then((res) => {\n let metadata = get(res.data, \"objectMetadata\", {});\n setIsMetaDataLoaded(true);\n setMetaData(metadata);\n })\n .catch((err) => {\n console.error(\n \"Error Getting Metadata Status: \",\n err,\n err?.detailedError,\n );\n setIsMetaDataLoaded(true);\n });\n }\n }, [bucketName, objectName, isMetaDataLoaded]);\n\n useEffect(() => {\n if (bucketName && objectName) {\n fetchMetadata();\n }\n }, [bucketName, objectName, fetchMetadata]);\n\n let path = \"\";\n\n if (object) {\n const encodedPath = encodeURLString(object.name);\n let basename = document.baseURI.replace(window.location.origin, \"\");\n path = `${window.location.origin}${basename}api/v1/buckets/${bucketName}/objects/download?preview=true&prefix=${encodedPath}`;\n if (object.version_id) {\n path = path.concat(`&version_id=${object.version_id}`);\n }\n }\n\n let objectType: AllowedPreviews = previewObjectType(metaData, objectName);\n\n const iframeLoaded = () => {\n setLoading(false);\n };\n\n return (\n \n {objectType !== \"none\" && loading && (\n \n \n \n )}\n {isMetaDataLoaded ? (\n
\n {objectType === \"video\" && (\n \n \n \n )}\n {objectType === \"audio\" && (\n \n \n \n )}\n {objectType === \"image\" && (\n \n )}\n {objectType === \"none\" && (\n
\n \n
\n )}\n {objectType !== \"none\" &&\n objectType !== \"video\" &&\n objectType !== \"audio\" &&\n objectType !== \"image\" && (\n \n \n File couldn't be loaded. Please try Download instead\n \n
\n )}\n \n ) : null}\n
\n );\n};\nexport default withStyles(styles)(PreviewFile);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport PreviewFileContent from \"./PreviewFileContent\";\nimport { BucketObjectItem } from \"../ListObjects/types\";\nimport { ObjectPreviewIcon } from \"mds\";\n\ninterface IPreviewFileProps {\n open: boolean;\n bucketName: string;\n object: BucketObjectItem | null;\n onClosePreview: () => void;\n}\n\nconst PreviewFileModal = ({\n open,\n bucketName,\n object,\n onClosePreview,\n}: IPreviewFileProps) => {\n return (\n \n }\n >\n \n \n \n );\n};\n\nexport default PreviewFileModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { BucketObjectItem } from \"./ListObjects/types\";\nimport { encodeURLString } from \"../../../../../common/utils\";\nimport { removeTrace } from \"../../../ObjectBrowser/transferManager\";\nimport streamSaver from \"streamsaver\";\nimport store from \"../../../../../store\";\nimport { PermissionResource } from \"api/consoleApi\";\n\nexport const download = (\n bucketName: string,\n objectPath: string,\n versionID: any,\n fileSize: number,\n overrideFileName: string | null = null,\n id: string,\n progressCallback: (progress: number) => void,\n completeCallback: () => void,\n errorCallback: (msg: string) => void,\n abortCallback: () => void,\n toastCallback: () => void,\n) => {\n const anchor = document.createElement(\"a\");\n document.body.appendChild(anchor);\n let basename = document.baseURI.replace(window.location.origin, \"\");\n const state = store.getState();\n const anonymousMode = state.system.anonymousMode;\n\n let path = `${\n window.location.origin\n }${basename}api/v1/buckets/${bucketName}/objects/download?prefix=${objectPath}${\n overrideFileName !== null && overrideFileName.trim() !== \"\"\n ? `&override_file_name=${encodeURLString(overrideFileName || \"\")}`\n : \"\"\n }`;\n if (versionID) {\n path = path.concat(`&version_id=${versionID}`);\n }\n return new DownloadHelper(\n path,\n id,\n anonymousMode,\n fileSize,\n progressCallback,\n completeCallback,\n errorCallback,\n abortCallback,\n toastCallback,\n );\n};\n\nclass DownloadHelper {\n aborter: AbortController;\n path: string;\n id: string;\n filename: string = \"\";\n anonymousMode: boolean;\n fileSize: number = 0;\n writer: any = null;\n progressCallback: (progress: number) => void;\n completeCallback: () => void;\n errorCallback: (msg: string) => void;\n abortCallback: () => void;\n toastCallback: () => void;\n\n constructor(\n path: string,\n id: string,\n anonymousMode: boolean,\n fileSize: number,\n progressCallback: (progress: number) => void,\n completeCallback: () => void,\n errorCallback: (msg: string) => void,\n abortCallback: () => void,\n toastCallback: () => void,\n ) {\n this.aborter = new AbortController();\n this.path = path;\n this.id = id;\n this.anonymousMode = anonymousMode;\n this.fileSize = fileSize;\n this.progressCallback = progressCallback;\n this.completeCallback = completeCallback;\n this.errorCallback = errorCallback;\n this.abortCallback = abortCallback;\n this.toastCallback = toastCallback;\n }\n\n abort(): void {\n this.aborter.abort();\n this.abortCallback();\n if (this.writer) {\n this.writer.abort();\n }\n }\n\n send(): void {\n let isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);\n if (isSafari) {\n this.toastCallback();\n this.downloadByBrowser();\n } else if (!this.fileSize) {\n this.downloadByBrowser();\n } else {\n this.download({\n url: this.path,\n chunkSize: 1024 * 1024 * 1024 * 1.5,\n });\n }\n }\n\n async getRangeContent(url: string, start: number, end: number) {\n const info = this.getRequestInfo(start, end);\n const response = await fetch(url, info);\n if (response.ok && response.body) {\n if (!this.filename) {\n this.filename = this.getFilename(response);\n }\n if (!this.writer) {\n this.writer = streamSaver.createWriteStream(this.filename).getWriter();\n }\n const reader = response.body.getReader();\n let done, value;\n while (!done) {\n ({ value, done } = await reader.read());\n if (done) {\n break;\n }\n await this.writer.write(value);\n }\n } else {\n throw new Error(`Unexpected response status code (${response.status}).`);\n }\n }\n\n getRequestInfo(start: number, end: number) {\n const info: RequestInit = {\n signal: this.aborter.signal,\n headers: { range: `bytes=${start}-${end}` },\n };\n if (this.anonymousMode) {\n info.headers = { ...info.headers, \"X-Anonymous\": \"1\" };\n }\n return info;\n }\n\n getFilename(response: Response) {\n const rspHeader = response.headers.get(\"Content-Disposition\");\n if (rspHeader) {\n let rspHeaderDecoded = decodeURIComponent(rspHeader);\n return rspHeaderDecoded.split('\"')[1];\n }\n return \"download\";\n }\n\n async download({ url, chunkSize }: any) {\n const numberOfChunks = Math.ceil(this.fileSize / chunkSize);\n this.progressCallback(0);\n try {\n for (let i = 0; i < numberOfChunks; i++) {\n let start = i * chunkSize;\n let end =\n i + 1 === numberOfChunks\n ? this.fileSize - 1\n : (i + 1) * chunkSize - 1;\n await this.getRangeContent(url, start, end);\n let percentComplete = Math.round(((i + 1) / numberOfChunks) * 100);\n this.progressCallback(percentComplete);\n }\n this.writer.close();\n this.completeCallback();\n removeTrace(this.id);\n } catch (e: any) {\n this.errorCallback(e.message);\n }\n }\n\n downloadByBrowser() {\n const link = document.createElement(\"a\");\n link.href = this.path;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n this.completeCallback();\n removeTrace(this.id);\n }\n}\n\nexport type AllowedPreviews = \"image\" | \"text\" | \"audio\" | \"video\" | \"none\";\nexport const contentTypePreview = (contentType: string): AllowedPreviews => {\n if (contentType) {\n const mimeObjectType = (contentType || \"\").toLowerCase();\n\n if (mimeObjectType.includes(\"image\")) {\n return \"image\";\n }\n if (mimeObjectType.includes(\"text\")) {\n return \"text\";\n }\n if (mimeObjectType.includes(\"audio\")) {\n return \"audio\";\n }\n if (mimeObjectType.includes(\"video\")) {\n return \"video\";\n }\n }\n\n return \"none\";\n};\n\n// Review file extension by name & returns the type of preview browser that can be used\nexport const extensionPreview = (fileName: string): AllowedPreviews => {\n const imageExtensions = [\n \"jif\",\n \"jfif\",\n \"apng\",\n \"avif\",\n \"svg\",\n \"webp\",\n \"bmp\",\n \"ico\",\n \"jpg\",\n \"jpe\",\n \"jpeg\",\n \"gif\",\n \"png\",\n \"heic\",\n ];\n const textExtensions = [\"pdf\"];\n const audioExtensions = [\"wav\", \"mp3\", \"alac\", \"aiff\", \"dsd\", \"pcm\"];\n const videoExtensions = [\n \"mp4\",\n \"avi\",\n \"mpg\",\n \"webm\",\n \"mov\",\n \"flv\",\n \"mkv\",\n \"wmv\",\n \"avchd\",\n \"mpeg-4\",\n ];\n\n let fileExtension = fileName.split(\".\").pop();\n\n if (!fileExtension) {\n return \"none\";\n }\n\n fileExtension = fileExtension.toLowerCase();\n\n if (imageExtensions.includes(fileExtension)) {\n return \"image\";\n }\n\n if (textExtensions.includes(fileExtension)) {\n return \"text\";\n }\n\n if (audioExtensions.includes(fileExtension)) {\n return \"audio\";\n }\n\n if (videoExtensions.includes(fileExtension)) {\n return \"video\";\n }\n\n return \"none\";\n};\n\nexport const previewObjectType = (\n metaData: Record,\n objectName: string,\n) => {\n const metaContentType = (\n (metaData && metaData[\"Content-Type\"]) ||\n \"\"\n ).toString();\n\n const extensionType = extensionPreview(objectName || \"\");\n const contentType = contentTypePreview(metaContentType);\n\n let objectType: AllowedPreviews = extensionType;\n\n if (extensionType === contentType) {\n objectType = extensionType;\n } else if (extensionType === \"none\" && contentType !== \"none\") {\n objectType = contentType;\n } else if (contentType === \"none\" && extensionType !== \"none\") {\n objectType = extensionType;\n }\n\n return objectType;\n};\nexport const sortListObjects = (fieldSort: string) => {\n switch (fieldSort) {\n case \"name\":\n return (a: BucketObjectItem, b: BucketObjectItem) =>\n a.name.localeCompare(b.name);\n case \"last_modified\":\n return (a: BucketObjectItem, b: BucketObjectItem) =>\n new Date(a.last_modified).getTime() -\n new Date(b.last_modified).getTime();\n case \"size\":\n return (a: BucketObjectItem, b: BucketObjectItem) =>\n (a.size || -1) - (b.size || -1);\n }\n};\n\nexport const permissionItems = (\n bucketName: string,\n currentPath: string,\n permissionsArray: PermissionResource[],\n): BucketObjectItem[] | null => {\n if (permissionsArray.length === 0) {\n return null;\n }\n\n // We get permissions applied to the current bucket\n const filteredPermissionsForBucket = permissionsArray.filter(\n (permissionItem) =>\n permissionItem.resource?.endsWith(`:${bucketName}`) ||\n permissionItem.resource?.includes(`:${bucketName}/`),\n );\n\n // No permissions for this bucket. we can throw the error message at this point\n if (filteredPermissionsForBucket.length === 0) {\n return null;\n }\n\n let returnElements: BucketObjectItem[] = [];\n\n // We split current path\n const splitCurrentPath = currentPath.split(\"/\");\n\n filteredPermissionsForBucket.forEach((permissionElement) => {\n // We review paths in resource address\n\n // We split ARN & get the last item to check the URL\n const splitARN = permissionElement.resource?.split(\":\");\n const urlARN = splitARN?.pop() || \"\";\n\n // We split the paths of the URL & compare against current location to see if there are more items to include. In case current level is a wildcard or is the last one, we omit this validation\n\n const splitURLARN = urlARN.split(\"/\");\n\n // splitURL has more items than bucket name, we can continue validating\n if (splitURLARN.length > 1) {\n splitURLARN.every((currentElementInPath, index) => {\n // It is a wildcard element. We can store the verification as value should be included (?)\n if (currentElementInPath === \"*\") {\n return false;\n }\n\n // Element is not included in the path. The user is trying to browse something else.\n if (\n splitCurrentPath[index] &&\n splitCurrentPath[index] !== currentElementInPath\n ) {\n return false;\n }\n\n // This element is not included by index in the current paths list. We add it so user can browse into it\n if (!splitCurrentPath[index]) {\n returnElements.push({\n name: `${currentElementInPath}/`,\n size: 0,\n last_modified: \"\",\n version_id: \"\",\n });\n }\n\n return true;\n });\n }\n\n // We review prefixes in allow resources for StringEquals variant only.\n if (\n permissionElement.conditionOperator === \"StringEquals\" ||\n permissionElement.conditionOperator === \"StringLike\"\n ) {\n permissionElement.prefixes?.forEach((prefixItem) => {\n // Prefix Item is not empty?\n if (prefixItem !== \"\") {\n const splitItems = prefixItem.split(\"/\");\n\n let pathToRouteElements: string[] = [];\n\n // We verify if currentPath is contained in the path begin, if is not contained the user has no access to this subpath\n const cleanCurrPath = currentPath.replace(/\\/$/, \"\");\n\n if (!prefixItem.startsWith(cleanCurrPath) && currentPath !== \"\") {\n return;\n }\n\n // For every split element we iterate and check if we can construct a URL\n splitItems.every((splitElement, index) => {\n if (!splitElement.includes(\"*\") && splitElement !== \"\") {\n if (splitElement !== splitCurrentPath[index]) {\n returnElements.push({\n name: `${pathToRouteElements.join(\"/\")}${\n pathToRouteElements.length > 0 ? \"/\" : \"\"\n }${splitElement}/`,\n size: 0,\n last_modified: \"\",\n version_id: \"\",\n });\n return false;\n }\n if (splitElement !== \"\") {\n pathToRouteElements.push(splitElement);\n }\n\n return true;\n }\n return false;\n });\n }\n });\n }\n });\n\n // We clean duplicated name entries\n if (returnElements.length > 0) {\n let clElements: BucketObjectItem[] = [];\n let keys: string[] = [];\n\n returnElements.forEach((itm) => {\n if (!keys.includes(itm.name)) {\n clElements.push(itm);\n keys.push(itm.name);\n }\n });\n\n returnElements = clElements;\n }\n\n return returnElements;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport { Checkbox, Grid, InputLabel, Tooltip } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n checkboxIcons,\n fieldBasic,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\ninterface CheckBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n overrideLabelClasses?: string;\n overrideCheckboxStyles?: React.CSSProperties;\n index?: number;\n noTopMargin?: boolean;\n checked: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n ...checkboxIcons,\n fieldContainer: {\n ...fieldBasic.fieldContainer,\n display: \"flex\",\n justifyContent: \"flex-start\",\n alignItems: \"center\",\n margin: \"15px 0\",\n marginBottom: 0,\n flexBasis: \"initial\",\n flexWrap: \"nowrap\",\n },\n noTopMargin: {\n marginTop: 0,\n },\n });\n\nconst CheckboxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n noTopMargin = false,\n tooltip = \"\",\n overrideLabelClasses = \"\",\n overrideCheckboxStyles,\n classes,\n className,\n}: CheckBoxProps) => {\n return (\n \n \n

\n }\n icon={}\n disabled={disabled}\n disableRipple\n disableFocusRipple\n focusRipple={false}\n centerRipple={false}\n disableTouchRipple\n style={overrideCheckboxStyles || {}}\n />\n
\n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n \n \n );\n};\n\nexport default withStyles(styles)(CheckboxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input/Input\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n checked: boolean;\n switchOnly?: boolean;\n indicatorLabels?: string[];\n extraInputProps?: StandardInputProps[\"inputProps\"];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n indicatorLabelOn: {\n fontWeight: \"bold\",\n color: \"#081C42 !important\",\n },\n indicatorLabel: {\n fontSize: 12,\n color: \"#E2E2E2\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n tooltip: {\n fontSize: 16,\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles((theme) => ({\n root: {\n width: 50,\n height: 24,\n padding: 0,\n margin: 0,\n },\n switchBase: {\n padding: 1,\n \"&$checked\": {\n transform: \"translateX(24px)\",\n color: theme.palette.common.white,\n \"& + $track\": {\n backgroundColor: \"#4CCB92\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n border: \"none\",\n },\n },\n \"&$focusVisible $thumb\": {\n color: \"#4CCB92\",\n border: \"6px solid #fff\",\n },\n },\n thumb: {\n width: 22,\n height: 22,\n backgroundColor: \"#FAFAFA\",\n border: \"2px solid #FFFFFF\",\n marginLeft: 1,\n },\n track: {\n borderRadius: 24 / 2,\n backgroundColor: \"#E2E2E2\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n transition: theme.transitions.create([\"background-color\", \"border\"]),\n },\n checked: {},\n focusVisible: {},\n switchContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n}))(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n classes,\n indicatorLabels,\n extraInputProps = {},\n}: IFormSwitch) => {\n const switchComponent = (\n \n {!switchOnly && (\n \n {indicatorLabels && indicatorLabels.length > 1\n ? indicatorLabels[1]\n : \"OFF\"}\n \n )}\n \n {!switchOnly && (\n \n {indicatorLabels ? indicatorLabels[0] : \"ON\"}\n \n )}\n \n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n
\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n \n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n FormControl,\n InputBase,\n InputLabel,\n MenuItem,\n Select,\n SelectChangeEvent,\n Tooltip,\n} from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\nexport interface selectorTypes {\n label: string;\n value: string;\n}\n\ninterface SelectProps {\n options: selectorTypes[];\n value: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n onChange: (e: SelectChangeEvent) => void;\n disabled?: boolean;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n fieldContainer: {\n display: \"flex\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n height: 38,\n lineHeight: 1,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n },\n input: {\n height: 38,\n position: \"relative\",\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n padding: \"8px 20px 10px 10px\",\n border: \"#e5e5e5 1px solid\",\n borderRadius: 4,\n display: \"flex\",\n alignItems: \"center\",\n \"&:hover\": {\n borderColor: \"#393939\",\n },\n \"&:focus\": {\n backgroundColor: \"#fff\",\n },\n },\n }),\n)(InputBase);\n\nconst SelectWrapper = ({\n classes,\n id,\n name,\n onChange,\n options,\n label,\n tooltip = \"\",\n value,\n disabled = false,\n}: SelectProps) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n \n }\n disabled={disabled}\n >\n {options.map((option) => (\n \n {option.label}\n \n ))}\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(SelectWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\n\ninterface IWarningMessage {\n classes: any;\n label: any;\n title: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n headerContainer: {\n backgroundColor: \"#e78794\",\n borderRadius: 3,\n marginBottom: 20,\n padding: 1,\n paddingBottom: 15,\n },\n labelHeadline: {\n color: \"#000000\",\n fontSize: 14,\n marginLeft: 20,\n },\n labelText: {\n color: \"#000000\",\n fontSize: 14,\n marginLeft: 20,\n marginRight: 40,\n },\n });\n\nconst WarningMessage = ({ classes, label, title }: IWarningMessage) => {\n return (\n
\n

{title}

\n
{label}
\n
\n );\n};\n\nexport default withStyles(styles)(WarningMessage);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { Box } from \"@mui/material\";\nimport { Button, CopyIcon } from \"mds\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\n\nconst KeyRevealer = ({ value }: { value: string }) => {\n const [shown, setShown] = useState(false);\n\n return (\n \n {}}\n value={value}\n overlayIcon={}\n extraInputProps={{\n readOnly: true,\n }}\n overlayAction={() => navigator.clipboard.writeText(value)}\n />\n\n setShown(!shown)}\n label={\"Show/Hide\"}\n />\n \n );\n};\n\nexport default KeyRevealer;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\n// Close codes for websockets defined in RFC 6455\nexport const WSCloseAbnormalClosure = 1006;\nexport const WSClosePolicyViolation = 1008;\nexport const WSCloseInternalServerErr = 1011;\n\nexport const wsProtocol = (protocol: string): string => {\n let wsProtocol = \"ws\";\n if (protocol === \"https:\") {\n wsProtocol = \"wss\";\n }\n return wsProtocol;\n};\n"],"names":["withStyles","theme","createStyles","_objectSpread","formFieldStyles","modalStyleUtils","_ref","modalOpen","onClose","classes","bucket","prefilledRoute","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","prefix","setPrefix","_useState3","_useState4","selectedAccess","setSelectedAccess","useEffect","_jsx","ModalWrapper","title","titleIcon","AddAccessRuleIcon","children","_jsxs","Grid","container","item","xs","className","formFieldRow","InputBoxWrapper","value","label","id","name","placeholder","onChange","e","target","tooltip","SelectWrapper","options","disabled","modalButtonBar","Button","type","variant","onClick","trim","api","setAccessRuleWithBucket","access","then","res","setSnackBarMessage","catch","err","setErrorSnackMessage","errorToHandler","objectsWS","extractFileExtn","resourceStr","match","getSessionGrantsWildCard","sessionGrants","uploadPath","scopes","arguments","length","undefined","grantsWithExtension","Object","keys","reduce","acc","grantKey","includes","filter","sessionGrantKey","hasScope","some","actionKey","find","scopeKey","wildCardMatch","indexOf","scopeActionKey","substring","isUploadPathMatching","concat","CreatePathModal","withSuspense","React","useStyles","makeStyles","objectBrowserCommon","slashSpacingStyle","margin","bucketName","internalPaths","hidePathButton","additionalOptions","navigate","useNavigate","rewindEnabled","useSelector","state","objectBrowser","rewind","versionsMode","versionedFile","anonymousMode","system","createFolderOpen","setCreateFolderOpen","putObjectPermScopes","IAM_SCOPES","S3_PUT_OBJECT","S3_PUT_ACTIONS","console","session","permissions","paths","splitPaths","split","path","lastBreadcrumbsIndex","pathToCheckPerms","sessionGrantWildCards","canCreatePath","hasPermission","_toConsumableArray","breadcrumbsMap","map","objectItem","index","subSplit","slice","join","route","encodeURLString","Fragment","style","cursor","whiteSpace","safeDecodeURIComponent","Link","to","setVersionsModeEnabled","status","objectName","toString","versionsItem","listBreadcrumbs","breadcrumbsMain","folderName","Breadcrumbs","sx","goBackFunction","prevPath","CopyToClipboard","text","icon","CopyIcon","width","height","fill","marginTop","color","border","marginRight","Tooltip","permissionTooltipHelper","NewPathIcon","breadcrumbsSecond","listUploadIcons","_ref$forceDisable","forceDisable","uploadFileFunction","uploadFolderFunction","_ref$overrideStyles","overrideStyles","anchorEl","setAnchorEl","openUploadMenu","Boolean","handleCloseUpload","uploadObjectAllowed","uploadFolderAllowed","uploadEnabled","TooltipWrapper","event","currentTarget","UploadIcon","Menu","open","anchorOrigin","vertical","horizontal","transformOrigin","MenuItem","ListItemIcon","ListItemText","UploadFolderIcon","detailsList","borderColor","borderWidth","borderStyle","borderRadius","borderBottomLeftRadius","borderBottomRightRadius","transitionDuration","overflowX","overflowY","position","opacity","marginLeft","minWidth","borderLeftWidth","closePanel","_ref$className","ClosePanelIcon","right","top","padding","backgroundColor","months","days","Array","from","_","num","currentYear","Date","getFullYear","years","numYear","DateSelector","forwardRef","ref","_ref$disableOptions","disableOptions","_ref$addSwitch","addSwitch","_ref$tooltip","_ref$borderBottom","borderBottom","onDateChange","_ref$value","useImperativeHandle","resetDate","dateEnabled","setDateEnabled","month","setMonth","_useState5","_useState6","day","setDay","_useState7","_useState8","year","setYear","valueSplit","parseInt","_validDate","currentDate","parse","isNaN","parsedMonth","parsedDay","monthForString","dayForString","parsedDate","toISOString","dateString","validDate","_validDate2","isValid","isDateDisabled","monthForDropDown","daysForDrop","yearsForDrop","clsx","fieldContainer","_defineProperty","fieldContainerBorder","labelContainer","InputLabel","htmlFor","tooltipContainer","placement","HelpIcon","Switch","indicatorLabels","checked","switchOnly","Box","display","gap","Select","newValue","fieldBasic","tooltipHelper","alignItems","justifyContent","paddingBottom","marginBottom","spacingUtils","closeModalAndRefresh","objectInfo","retentionConfig","statusEnabled","setStatusEnabled","setType","date","setDate","isDateValid","setIsDateValid","_useState9","_useState10","isSaving","setIsSaving","_useState11","_useState12","alreadyConfigured","setAlreadyConfigured","retention_mode","mode","ObjectRetentionMode","Governance","retention_until_date","valueDate","getMonth","getDate","dateElement","useRef","resetForm","current","showSwitcher","spacerBottom","noValidate","autoComplete","onSubmit","preventDefault","RadioGroup","currentValue","selectorOptions","Compliance","dateSelector","selectedObject","versionId","version_id","expireDate","buckets","putObjectRetention","expires","setModalErrorSnackMessage","error","addRetention","deleteObjectRetention","disableRetention","isVersionedMode","closeDeleteModalAndRefresh","deleteOpen","selectedBucket","versioningInfo","_ref$selectedVersion","selectedVersion","_useApi","useApi","detailedError","_useApi2","deleteLoading","invokeDeleteApi","deleteVersions","setDeleteVersions","bypassGovernance","setBypassGovernance","canBypass","S3_BYPASS_GOVERNANCE_RETENTION","ConfirmDialog","confirmText","isOpen","ConfirmDeleteIcon","isLoading","onConfirm","recursive","decodeURLString","endsWith","confirmationContent","description","actualInfo","legalHoldEnabled","setLegalHoldEnabled","get","putObjectLegalHold","ObjectLegalHoldStatus","Enabled","Disabled","itemRendererFn","element","isArray","titleItem","detailsPanel","metaData","_ref$linear","linear","metaKeys","renderItem","metadataLinear","Table","table","TableBody","TableRow","TableCell","component","scope","align","fileName","minHeight","fileNameText","overflow","textOverflow","strings","replaceUnicodeChar","extensionToIcon","FileVideoIcon","extensions","FileMusicIcon","FilePdfIcon","FilePptIcon","FileXlsIcon","FileLockIcon","FileCodeIcon","FileConfigIcon","FileDbIcon","FileFontIcon","FileTxtIcon","FileZipIcon","FileBookIcon","FileImageIcon","displayFileIconName","returnOnlyIcon","elementString","FileNonType","FolderBrowserIcon","lowercaseElement","toLowerCase","_i","_extensionToIcon","_step","etc","_iterator","_createForOfIteratorHelper","s","n","done","ext","f","FileMissingIcon","splitItem","IconWithLabel","newTileHeader","fontSize","fontWeight","tagsForLabel","currentTagsContainer","noTagsForObject","deleteTag","_actualInfo$name","onCloseAndUpdate","distributedSetup","selDistSet","newKey","setNewKey","newLabel","setNewLabel","isSending","setIsSending","deleteEnabled","setDeleteEnabled","deleteKey","setDeleteKey","deleteLabel","setDeleteLabel","currentTags","tags","currTagKeys","allPathData","currentItem","pop","tagsFor","plural","DisabledIcon","EditTagIcon","cleanObject","verID","putObjectTags","SecureComponent","S3_GET_OBJECT_TAGGING","S3_GET_ACTIONS","resource","flexFlow","tagKey","tag","S3_DELETE_OBJECT_TAGGING","errorProps","deleteIcon","onDelete","Chip","textTransform","size","CloseIcon","onDeleteTag","S3_PUT_OBJECT_TAGGING","SectionTitle","AddNewTagIcon","separator","InputBox","newTag","newTagList","closeInspectModalAndRefresh","inspectOpen","inspectPath","volumeName","isEncrypt","setIsEncrypt","decryptionKey","setDecryptionKey","insFileName","setInsFileName","makeRequest","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","url","wrap","_context","prev","next","fetch","method","abrupt","sent","stop","_x","apply","performInspect","_ref3","_callee3","file","volume","urlOfInspectApi","_context3","_ref4","_callee2","resErr","blob","filename","decryptKey","_context2","ok","json","errorMessage","message","code","headers","getCookieValue","performDownload","_x2","InspectMenuIcon","deleteCookie","PasswordKeyIcon","DialogContentText","KeyRevealer","downloadObject","object","_object$name","identityDownload","getTime","Math","random","isWinOs","getClientOS","setLongFileOpen","ID","makeid","downloadCall","download","progress","updateProgress","instanceID","completeObject","msg","failObject","cancelObjectInList","storeCallForObjectWithID","setNewObject","percentage","waitingForFile","failed","cancelled","containerForHeader","closeModal","newFileName","setNewFileName","acceptLongName","setAcceptLongName","EditIcon","doDownload","modalFormScrollable","FormSwitchWrapper","emptyFile","is_latest","last_modified","legal_hold_status","ObjectDetailsTitle","objectNameContainer","capitalizeFirst","actionsTray","textStyleUtils","locking","onClosePanel","loadingObjectInfo","shareFileModalOpen","setShareFileModalOpen","retentionModalOpen","setRetentionModalOpen","tagModalOpen","setTagModalOpen","legalholdOpen","setLegalholdOpen","inspectModalOpen","setInspectModalOpen","setActualInfo","_useState13","_useState14","allInfoElements","setAllInfoElements","_useState15","_useState16","objectToShare","setObjectToShare","_useState17","_useState18","versions","setVersions","_useState19","_useState20","setDeleteOpen","_useState21","_useState22","previewOpen","setPreviewOpen","_useState23","_useState24","totalVersionsSize","setTotalVersionsSize","_useState25","_useState26","longFileOpen","_useState27","_useState28","setMetaData","_useState29","_useState30","loadMetadata","setLoadingMetadata","objectNameArray","infoElement","el","is_delete_marker","listObjects","with_versions","result","data","objects","tVersionSize","currValue","resInfo","setLoadingObjectInfo","getObjectMetadata","metadata","tagKeys","loaderForContainer","textAlign","Loader","objectResources","canSetLegalHold","S3_PUT_OBJECT_LEGAL_HOLD","canSetTags","canChangeRetention","S3_GET_OBJECT_RETENTION","S3_PUT_OBJECT_RETENTION","canInspect","ADMIN_INSPECT_DATA","canChangeVersioning","S3_GET_BUCKET_VERSIONING","S3_PUT_BUCKET_VERSIONING","S3_GET_OBJECT_VERSION","canGetObject","S3_GET_OBJECT","canDelete","S3_DELETE_OBJECT","objectType","previewObjectType","multiActionButtons","action","DownloadIcon","ShareIcon","PreviewIcon","LegalHoldIcon","RetentionIcon","TagsIcon","VersionsIcon","ShareFile","dataObject","SetRetention","updateInfo","DeleteObject","closeAndReload","setLoadingVersions","setSelectedVersion","SetLegalHoldModal","reload","PreviewFileModal","content_type","onClosePreview","TagsModal","reloadObjectData","InspectObject","RenameLongFileName","ActionsList","items","DeleteIcon","iconLocation","fullWidth","SimpleHeader","ObjectInfoIcon","detailContainer","overflowWrap","niceBytes","niceBytesInt","lastModified","currentTime","modifiedTime","difTime","formatTime","niceDaysInt","calculateLastModifyTime","etag","S3_GET_OBJECT_LEGAL_HOLD","MetadataIcon","ObjectMetaData","modalBasic","versionToRestore","objectPath","restoreOpen","restoreLoading","setRestoreLoading","RecoverIcon","putObjectRestore","restoreLocalObjectList","confirmButtonProps","wrapText","bgColor","FileVersionStyled","styled","div","content","left","borderBottomColor","maxWidth","flexDirection","versionInfo","isSelected","checkable","isChecked","onCheck","onShare","onDownload","onRestore","onPreview","globalClick","key","disableButtons","versionItemButtons","pill","DateTime","now","fromISO","md","CheckboxWrapper","stopPropagation","overrideCheckboxStyles","paddingLeft","noTopMargin","SpecificVersionPill","button","IconButton","toFormat","setDeleteLoading","typeConfirm","setTypeConfirm","deleteObject","non_current_versions","bypass","selectedVersions","selectedObjectsRequest","versionID","deleteMultipleObjects","all_versions","versionsContainer","noBottomBorder","versionsVirtualPanel","flexGrow","screenTitleContainer","sortByLabel","tableStyles","objectBrowserExtras","searchVersions","loadingVersions","restoreVersionOpen","setRestoreVersionOpen","restoreVersion","setRestoreVersion","sortValue","setSortValue","deleteNonCurrentOpen","setDeleteNonCurrentOpen","selectEnabled","setSelectEnabled","selectedItems","setSelectedItems","delSelectedVOpen","setDelSelectedVOpen","decodedInternalPaths","filteredPrefixes","onShareItem","onPreviewItem","onRestoreItem","onDownloadItem","onGlobalClick","filteredRecords","version","totalSpace","sort","a","b","dateA","dateB","onCheckVersion","filteredItems","cloneState","push","RestoreFileVersion","DeleteNonCurrent","reloadAfterDelete","DeleteSelectedVersions","reloadOnComplete","LinearProgress","BrowserBreadcrumbs","ScreenTitle","listIcon","subTitle","detailsSpacer","actions","SelectMultipleIcon","DeleteNonCurrentIcon","noLabelMinWidth","bottomBorder","List","containerStyle","rowCount","rowHeight","rowRenderer","isScrolling","isVisible","versOrd","FileVersionItem","displayParsedDate","currTime","objectTime","hasSame","displayNiceBytes","String","listModeColumns","elementKey","renderFunction","enableSort","renderFullObject","rewindModeColumns","browsePaper","parentWrapper","backgroundImage","params","useParams","sortDirection","setSortDirection","currentSortField","setCurrentSortField","detailsOpen","objectDetailsOpen","loadingObjects","features","selFeatures","obOnly","records","searchObjects","selectedObjects","connectionError","displayListObjects","S3_LIST_BUCKET","S3_ALL_LIST_BUCKET","sortASC","sortListObjects","payload","reverse","tableActions","idElement","newPath","setSelectedObjects","setObjectDetailsView","setIsOpeningOD","setSelectedObjectView","sendOnlyId","customPaperHeight","DataTable","itemActions","columns","entityName","idField","onSelect","targetD","elements","customEmptyMessage","sortConfig","currentSort","currentDirection","triggerSort","sortData","newSortDirection","sortBy","setLoadingObjects","onSelectAll","rowStyle","_payload$index","delete_flag","parentClassName","noBackground","downloadSelected","createAsyncThunk","getState","itemsToDownload","filterFunction","rejectWithValue","setDownloadRenameModal","forEach","filteredItem","openPreview","fileObject","findFunction","setSelectedPreview","_x3","_x4","openShare","_ref6","_ref5","_x5","_x6","openAnonymousAccess","_ref8","_callee4","_ref7","_context4","setAnonymousAccessOpen","_x7","_x8","SearchBox","setSearchObjects","DeleteMultipleObjects","RewindEnable","badgeOverlap","searchField","labelStyle","breadcrumbsContainer","fullContainer","hideListOnSmall","actionsSection","baseDnDStyle","outline","activeDnDStyle","acceptDnDStyle","_downloadRenameModal$","location","useLocation","bucketToRewind","showDeleted","selectedInternalPaths","simplePath","versioningConfig","lockingEnabled","downloadRenameModal","selectedPreview","anonymousAccessOpen","loadingBucket","selBucketDetailsLoading","bucketInfo","selBucketDetailsInfo","deleteMultipleOpen","setDeleteMultipleOpen","rewindSelect","setRewindSelect","iniLoad","setIniLoad","canShareFile","setCanShareFile","canPreviewFile","setCanPreviewFile","quota","setQuota","isMetaDataLoaded","setIsMetaDataLoaded","isVersioningApplied","pathSegment","pathname","pageTitle","currentPath","i","fileUpload","folderUpload","pathAsResourceInPolicy","allowedFileExtensions","cv","extension","Set","getPolicyAllowedFileExtensions","canDownload","canUpload","canSetAnonymousAccess","S3_GET_BUCKET_POLICY","S3_PUT_BUCKET_POLICY","fetchMetadata","useCallback","encodedPath","resetRewind","setAttribute","getBucketQuota","quotaVals","detailedMessage","setBucketDetailsLoad","setBucketInfo","setSelectedBucket","getBucketRetentionConfig","setRetentionConfig","handleUploadButton","files","newFiles","uploadObject","folderPath","pathPrefix","uploadPromise","Promise","resolve","reject","uploadUrl","blobFile","Blob","filePath","fileWebkitRelativePath","relativeFolderPath","finalFolderPath","pathClean","startsWith","identity","xhr","XMLHttpRequest","setRequestHeader","areMultipleFiles","errorMessages","withCredentials","onload","removeTrace","response","JSON","upload","addEventListener","floor","loaded","total","onerror","onloadend","onabort","formData","FormData","append","storeFormDataWithID","uploadFilePromises","openList","allSettled","results","errors","totalFiles","successUploadedFiles","onDrop","acceptedFiles","_console","_console2","newFolderPath","allowedFiles","fileExtn","log","_useDropzone","useDropzone","noClick","getRootProps","getInputProps","isDragActive","isDragAccept","dndStyles","useMemo","forceRefresh","splitURLS","URLItem","createdTime","creation_date","AccessRuleIcon","refresh","versioning","AddAccessRule","PageLayout","FilterObjectsSB","BucketsIcon","Badge","badgeContent","invisible","HistoryIcon","RefreshIcon","resetMessages","setLoadingRecords","multiple","accept","UploadFilesButton","closeMenu","click","tableBlock","borderTop","VersionsNavigator","setShowDeletedObjects","overrideLabelClasses","overrideShowDeleted","ListObjectsTable","DetailsListPanel","ObjectDetailPanel","configureBucketAllowed","S3_GET_BUCKET_ENCRYPTION_CONFIGURATION","S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION","S3_DELETE_BUCKET","S3_GET_BUCKET_NOTIFICATIONS","S3_PUT_BUCKET_NOTIFICATIONS","S3_GET_REPLICATION_CONFIGURATION","S3_PUT_REPLICATION_CONFIGURATION","S3_GET_LIFECYCLE_CONFIGURATION","S3_PUT_LIFECYCLE_CONFIGURATION","ADMIN_GET_BUCKET_QUOTA","ADMIN_SET_BUCKET_QUOTA","S3_PUT_BUCKET_TAGGING","S3_GET_BUCKET_TAGGING","S3_LIST_BUCKET_VERSIONS","S3_GET_BUCKET_POLICY_STATUS","S3_DELETE_BUCKET_POLICY","searchBar","setSearchVersions","setHelpName","AutoColorIcon","ObjectManagerButton","PageHeaderWrapper","BackLink","IAM_PAGES","OBJECT_BROWSER_VIEW","IAM_PERMISSIONS","IAM_ROLES","BUCKET_ADMIN","SettingsIcon","HelpMenu","middleComponent","currentRequestID","errorCounter","wsInFlight","initWSConnection","openCallback","onMessageCallback","connErrorCallback","URL","window","port","baseUrl","document","baseURI","wsProt","wsProtocol","protocol","WebSocket","hostname","onopen","onmessage","reconnectFn","onclose","warn","setTimeout","loadingVersioning","rewindDate","dateToRewind","allowResources","loadingLocking","loadRecords","isOpeningOD","isOpeningObjectDetail","onMessageCallBack","request_id","internalPathsPrefix","decodedPath","permitItems","permissionItems","setRecords","request_end","newMessage","initWSRequest","readyState","newRequestID","errorInConnection","request","bucket_name","send","stringify","decodedIPaths","setLoadingVersioning","setSimplePathHandler","setLoadingLocking","parentPath","requestDate","getBucketVersioning","setIsVersioned","getBucketObjectLockingStatus","setLockingEnabled","object_locking_enabled","OBHeader","ListObjects","durationInputs","validityIndicator","invalidDurationText","reverseInput","validityText","validTill","initialDate","maxDays","entity","selectedDays","setSelectedDays","selectedHours","setSelectedHours","selectedMinutes","setSelectedMinutes","setValidDate","dateSelected","setDateSelected","hours","minutes","fromJSDate","plus","calculateNewTime","formattedDate","valid","extraStyles","paddingRight","dateInputContainer","min","max","LinkIcon","validityLabel","shareURL","setShareURL","isLoadingVersion","setIsLoadingVersion","isLoadingFile","setIsLoadingFile","selectedDate","setSelectedDate","dateValid","setDateValid","setVersionID","latestVersion","elem","slDate","currDate","diffDate","ceil","shareObject","DaysSelector","newDate","ReadBox","actionButton","setModalSnackMessage","iframeContainer","flex","iframeBase","iframeHidden","_ref$isFullscreen","isFullscreen","loading","setLoading","basename","replace","origin","iframeLoaded","maxHeight","autoPlay","controls","muted","playsInline","onPlay","src","alt","onLoad","WarningMessage","allowTransparency","wideLimit","ObjectPreviewIcon","PreviewFileContent","fileSize","overrideFileName","progressCallback","completeCallback","errorCallback","abortCallback","toastCallback","anchor","createElement","body","appendChild","store","DownloadHelper","_classCallCheck","aborter","writer","this","AbortController","_createClass","abort","test","navigator","userAgent","downloadByBrowser","chunkSize","_getRangeContent","start","end","info","reader","_yield$reader$read","getRequestInfo","getFilename","streamSaver","getWriter","getReader","read","write","Error","signal","range","rspHeader","decodeURIComponent","_download","numberOfChunks","percentComplete","getRangeContent","round","close","t0","link","href","removeChild","metaContentType","extensionType","fileExtension","extensionPreview","contentType","mimeObjectType","contentTypePreview","fieldSort","localeCompare","permissionsArray","filteredPermissionsForBucket","permissionItem","_permissionItem$resou","_permissionItem$resou2","returnElements","splitCurrentPath","permissionElement","_permissionElement$re","_permissionElement$pr","splitARN","splitURLARN","every","currentElementInPath","conditionOperator","prefixes","prefixItem","splitItems","pathToRouteElements","cleanCurrPath","splitElement","clElements","itm","WrappedComponent","fallback","props","Suspense","checkboxIcons","flexBasis","flexWrap","_ref$checked","_ref$disabled","_ref$noTopMargin","_ref$overrideLabelCla","Checkbox","inputProps","checkedIcon","unCheckedIcon","disableRipple","disableFocusRipple","focusRipple","centerRipple","disableTouchRipple","noMinWidthLabel","StyledSwitch","root","switchBase","transform","palette","common","white","boxShadow","thumb","track","transition","transitions","create","focusVisible","switchContainer","indicatorLabelOn","indicatorLabel","fieldDescription","_ref$label","_ref$switchOnly","_ref$description","_ref$extraInputProps","extraInputProps","switchComponent","sm","inputLabel","Typography","inputStyles","inputFieldStyles","InputField","TextField","InputProps","textBoxContainer","overlayAction","_ref$type","_ref$autoComplete","_ref$multiline","multiline","_ref$index","_ref$error","_ref$required","required","_ref$placeholder","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","onKeyPress","onFocus","onPaste","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","errorInField","inputBoxContainer","helperText","inputRebase","SelectStyled","lineHeight","spacing","input","InputBase","FormControl","option","headerContainer","labelHeadline","labelText","shown","setShown","readOnly","clipboard","writeText","WSCloseAbnormalClosure","WSClosePolicyViolation","WSCloseInternalServerErr"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2763.8a8f4e01.chunk.js b/portal-ui/build/static/js/2763.8a8f4e01.chunk.js new file mode 100644 index 000000000..146ec010a --- /dev/null +++ b/portal-ui/build/static/js/2763.8a8f4e01.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2763],{22763:function(e,t,n){n.r(t);var r=n(1413),a=n(29439),o=n(72791),u=n(9505),i=n(23508),s=n(29945),c=n(87995),l=n(81551),d=n(80184);t.default=function(e){var t=e.deleteOpen,n=e.currentTags,f=e.selectedTag,p=e.onCloseAndUpdate,h=e.bucketName,g=(0,l.TL)(),k=(0,a.Z)(f,2),m=k[0],T=k[1],b=(0,u.Z)((function(){return p(!0)}),(function(e){return g((0,c.Ih)(e))})),w=(0,a.Z)(b,2),x=w[0],C=w[1];if(!f)return null;return(0,d.jsx)(i.Z,{title:"Delete Tag",confirmText:"Delete",isOpen:t,titleIcon:(0,d.jsx)(s.NvT,{}),isLoading:x,onConfirm:function(){var e=(0,r.Z)({},n);delete e[m],C("PUT","/api/v1/buckets/".concat(h,"/tags"),{tags:e})},onClose:function(){return p(!1)},confirmationContent:(0,d.jsxs)(o.Fragment,{children:["Are you sure you want to delete the tag"," ",(0,d.jsxs)("b",{style:{maxWidth:200,whiteSpace:"normal",wordWrap:"break-word"},children:[m," : ",T]})," ","?"]})})}}}]); +//# sourceMappingURL=2763.8a8f4e01.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/2763.8a8f4e01.chunk.js.map b/portal-ui/build/static/js/2763.8a8f4e01.chunk.js.map new file mode 100644 index 000000000..373c5b562 --- /dev/null +++ b/portal-ui/build/static/js/2763.8a8f4e01.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/2763.8a8f4e01.chunk.js","mappings":"yNA0FA,UA1D6B,SAAHA,GAMI,IAL5BC,EAAUD,EAAVC,WACAC,EAAWF,EAAXE,YACAC,EAAWH,EAAXG,YACAC,EAAgBJ,EAAhBI,iBACAC,EAAUL,EAAVK,WAEMC,GAAWC,EAAAA,EAAAA,MACjBC,GAAAC,EAAAA,EAAAA,GAA2BN,EAAW,GAA/BO,EAAMF,EAAA,GAAEG,EAAQH,EAAA,GAOvBI,GAAyCC,EAAAA,EAAAA,IALpB,WAAH,OAAST,GAAiB,EAAM,IAC/B,SAACU,GAAyB,OAC3CR,GAASS,EAAAA,EAAAA,IAAqBD,GAAM,IAGmCE,GAAAP,EAAAA,EAAAA,GAAAG,EAAA,GAAlEK,EAAaD,EAAA,GAAEE,EAAeF,EAAA,GAErC,IAAKb,EACH,OAAO,KAYT,OACEgB,EAAAA,EAAAA,KAACC,EAAAA,EAAa,CACZC,MAAK,aACLC,YAAa,SACbC,OAAQtB,EACRuB,WAAWL,EAAAA,EAAAA,KAACM,EAAAA,IAAiB,IAC7BC,UAAWT,EACXU,UAhBoB,WACtB,IAAMC,GAAWC,EAAAA,EAAAA,GAAA,GAAQ3B,UAClB0B,EAAYlB,GAEnBQ,EAAgB,MAAM,mBAADY,OAAqBzB,EAAU,SAAS,CAC3D0B,KAAMH,GAEV,EAUII,QAzBY,WAAH,OAAS5B,GAAiB,EAAO,EA0B1C6B,qBACEC,EAAAA,EAAAA,MAACC,EAAAA,SAAQ,CAAAC,SAAA,CAAC,0CACgC,KACxCF,EAAAA,EAAAA,MAAA,KACEG,MAAO,CACLC,SAAU,IACVC,WAAY,SACZC,SAAU,cACVJ,SAAA,CAED1B,EAAO,MAAIC,KACT,IAAI,QAMnB,C","sources":["screens/Console/Buckets/BucketDetails/DeleteBucketTagModal.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IDeleteBucketTagModal {\n deleteOpen: boolean;\n currentTags: any;\n bucketName: string;\n selectedTag: string[];\n onCloseAndUpdate: (refresh: boolean) => void;\n}\n\nconst DeleteBucketTagModal = ({\n deleteOpen,\n currentTags,\n selectedTag,\n onCloseAndUpdate,\n bucketName,\n}: IDeleteBucketTagModal) => {\n const dispatch = useAppDispatch();\n const [tagKey, tagLabel] = selectedTag;\n\n const onDelSuccess = () => onCloseAndUpdate(true);\n const onDelError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n const onClose = () => onCloseAndUpdate(false);\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n\n if (!selectedTag) {\n return null;\n }\n\n const onConfirmDelete = () => {\n const cleanObject = { ...currentTags };\n delete cleanObject[tagKey];\n\n invokeDeleteApi(\"PUT\", `/api/v1/buckets/${bucketName}/tags`, {\n tags: cleanObject,\n });\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete the tag{\" \"}\n \n {tagKey} : {tagLabel}\n {\" \"}\n ?\n \n }\n />\n );\n};\n\nexport default DeleteBucketTagModal;\n"],"names":["_ref","deleteOpen","currentTags","selectedTag","onCloseAndUpdate","bucketName","dispatch","useAppDispatch","_selectedTag","_slicedToArray","tagKey","tagLabel","_useApi","useApi","err","setErrorSnackMessage","_useApi2","deleteLoading","invokeDeleteApi","_jsx","ConfirmDialog","title","confirmText","isOpen","titleIcon","ConfirmDeleteIcon","isLoading","onConfirm","cleanObject","_objectSpread","concat","tags","onClose","confirmationContent","_jsxs","Fragment","children","style","maxWidth","whiteSpace","wordWrap"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2763.94aac2f6.chunk.js b/portal-ui/build/static/js/2763.94aac2f6.chunk.js deleted file mode 100644 index 895aadd10..000000000 --- a/portal-ui/build/static/js/2763.94aac2f6.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2763],{22763:function(e,t,n){n.r(t);var r=n(29439),u=n(1413),o=(n(72791),n(51691)),s=n(11135),a=n(25787),c=n(23814),i=n(9505),l=n(23508),f=n(29945),d=n(87995),p=n(81551),Z=n(80184);t.default=(0,a.Z)((function(e){return(0,s.Z)((0,u.Z)({},c.oO))}))((function(e){var t=e.deleteOpen,n=e.currentTags,s=e.selectedTag,a=e.onCloseAndUpdate,c=e.bucketName,T=e.classes,g=(0,p.TL)(),h=(0,r.Z)(s,2),k=h[0],x=h[1],C=(0,i.Z)((function(){return a(!0)}),(function(e){return g((0,d.Ih)(e))})),b=(0,r.Z)(C,2),m=b[0],v=b[1];if(!s)return null;return(0,Z.jsx)(l.Z,{title:"Delete Tag",confirmText:"Delete",isOpen:t,titleIcon:(0,Z.jsx)(f.NvT,{}),isLoading:m,onConfirm:function(){var e=(0,u.Z)({},n);delete e[k],v("PUT","/api/v1/buckets/".concat(c,"/tags"),{tags:e})},onClose:function(){return a(!1)},confirmationContent:(0,Z.jsxs)(o.Z,{children:["Are you sure you want to delete the tag"," ",(0,Z.jsxs)("b",{className:T.wrapText,children:[k," : ",x]})," ","?"]})})}))}}]); -//# sourceMappingURL=2763.94aac2f6.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/2763.94aac2f6.chunk.js.map b/portal-ui/build/static/js/2763.94aac2f6.chunk.js.map deleted file mode 100644 index 0cae0eb39..000000000 --- a/portal-ui/build/static/js/2763.94aac2f6.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/2763.94aac2f6.chunk.js","mappings":"qQAiGA,WAAeA,EAAAA,EAAAA,IA1DA,SAACC,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,GAAC,CAAC,EACTC,EAAAA,IACF,GAuDL,EArD6B,SAAHC,GAOI,IAN5BC,EAAUD,EAAVC,WACAC,EAAWF,EAAXE,YACAC,EAAWH,EAAXG,YACAC,EAAgBJ,EAAhBI,iBACAC,EAAUL,EAAVK,WACAC,EAAON,EAAPM,QAEMC,GAAWC,EAAAA,EAAAA,MACjBC,GAAAC,EAAAA,EAAAA,GAA2BP,EAAW,GAA/BQ,EAAMF,EAAA,GAAEG,EAAQH,EAAA,GAOvBI,GAAyCC,EAAAA,EAAAA,IALpB,WAAH,OAASV,GAAiB,EAAM,IAC/B,SAACW,GAAyB,OAC3CR,GAASS,EAAAA,EAAAA,IAAqBD,GAAM,IAGmCE,GAAAP,EAAAA,EAAAA,GAAAG,EAAA,GAAlEK,EAAaD,EAAA,GAAEE,EAAeF,EAAA,GAErC,IAAKd,EACH,OAAO,KAYT,OACEiB,EAAAA,EAAAA,KAACC,EAAAA,EAAa,CACZC,MAAK,aACLC,YAAa,SACbC,OAAQvB,EACRwB,WAAWL,EAAAA,EAAAA,KAACM,EAAAA,IAAiB,IAC7BC,UAAWT,EACXU,UAhBoB,WACtB,IAAMC,GAAW/B,EAAAA,EAAAA,GAAA,GAAQI,UAClB2B,EAAYlB,GAEnBQ,EAAgB,MAAM,mBAADW,OAAqBzB,EAAU,SAAS,CAC3D0B,KAAMF,GAEV,EAUIG,QAzBY,WAAH,OAAS5B,GAAiB,EAAO,EA0B1C6B,qBACEC,EAAAA,EAAAA,MAACC,EAAAA,EAAiB,CAAAC,SAAA,CAAC,0CACuB,KACxCF,EAAAA,EAAAA,MAAA,KAAGG,UAAW/B,EAAQgC,SAASF,SAAA,CAC5BzB,EAAO,MAAIC,KACT,IAAI,QAMnB,G","sources":["screens/Console/Buckets/BucketDetails/DeleteBucketTagModal.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\n\nimport { DialogContentText } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { modalBasic } from \"../../Common/FormComponents/common/styleLibrary\";\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IDeleteBucketTagModal {\n deleteOpen: boolean;\n currentTags: any;\n bucketName: string;\n selectedTag: string[];\n onCloseAndUpdate: (refresh: boolean) => void;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalBasic,\n });\n\nconst DeleteBucketTagModal = ({\n deleteOpen,\n currentTags,\n selectedTag,\n onCloseAndUpdate,\n bucketName,\n classes,\n}: IDeleteBucketTagModal) => {\n const dispatch = useAppDispatch();\n const [tagKey, tagLabel] = selectedTag;\n\n const onDelSuccess = () => onCloseAndUpdate(true);\n const onDelError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n const onClose = () => onCloseAndUpdate(false);\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n\n if (!selectedTag) {\n return null;\n }\n\n const onConfirmDelete = () => {\n const cleanObject = { ...currentTags };\n delete cleanObject[tagKey];\n\n invokeDeleteApi(\"PUT\", `/api/v1/buckets/${bucketName}/tags`, {\n tags: cleanObject,\n });\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete the tag{\" \"}\n \n {tagKey} : {tagLabel}\n {\" \"}\n ?\n \n }\n />\n );\n};\n\nexport default withStyles(styles)(DeleteBucketTagModal);\n"],"names":["withStyles","theme","createStyles","_objectSpread","modalBasic","_ref","deleteOpen","currentTags","selectedTag","onCloseAndUpdate","bucketName","classes","dispatch","useAppDispatch","_selectedTag","_slicedToArray","tagKey","tagLabel","_useApi","useApi","err","setErrorSnackMessage","_useApi2","deleteLoading","invokeDeleteApi","_jsx","ConfirmDialog","title","confirmText","isOpen","titleIcon","ConfirmDeleteIcon","isLoading","onConfirm","cleanObject","concat","tags","onClose","confirmationContent","_jsxs","DialogContentText","children","className","wrapText"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2791.35d976a5.chunk.js b/portal-ui/build/static/js/2791.35d976a5.chunk.js deleted file mode 100644 index 77738e85d..000000000 --- a/portal-ui/build/static/js/2791.35d976a5.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2791,4882,7981,9581,6662],{3579:function(e,t,r){"use strict";var n=r(64836);t.Z=void 0;var a=n(r(45649)),o=r(80184),i=(0,a.default)((0,o.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=i},20165:function(e,t,r){"use strict";var n=r(64836);t.Z=void 0;var a=n(r(45649)),o=r(80184),i=(0,a.default)((0,o.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=i},45649:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=r(28610)},93840:function(e,t,r){"use strict";var n=r(72791).createContext(void 0);t.Z=n},76147:function(e,t,r){"use strict";function n(e){var t=e.props,r=e.states,n=e.muiFormControl;return r.reduce((function(e,r){return e[r]=t[r],n&&"undefined"===typeof t[r]&&(e[r]=n[r]),e}),{})}r.d(t,{Z:function(){return n}})},52930:function(e,t,r){"use strict";r.d(t,{Z:function(){return o}});var n=r(72791),a=r(93840);function o(){return n.useContext(a.Z)}},17133:function(e,t,r){"use strict";var n=r(4942),a=r(63366),o=r(87462),i=r(72791),s=r(28182),c=r(94419),l=r(76147),u=r(52930),d=r(14036),f=r(31402),p=r(66934),m=r(10843),v=r(80184),Z=["children","className","color","component","disabled","error","filled","focused","required"],b=(0,p.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return(0,o.Z)({},t.root,"secondary"===r.color&&t.colorSecondary,r.filled&&t.filled)}})((function(e){var t,r=e.theme,a=e.ownerState;return(0,o.Z)({color:(r.vars||r).palette.text.secondary},r.typography.body1,(t={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(t,"&.".concat(m.Z.focused),{color:(r.vars||r).palette[a.color].main}),(0,n.Z)(t,"&.".concat(m.Z.disabled),{color:(r.vars||r).palette.text.disabled}),(0,n.Z)(t,"&.".concat(m.Z.error),{color:(r.vars||r).palette.error.main}),t))})),h=(0,p.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,t){return t.asterisk}})((function(e){var t=e.theme;return(0,n.Z)({},"&.".concat(m.Z.error),{color:(t.vars||t).palette.error.main})})),x=i.forwardRef((function(e,t){var r=(0,f.Z)({props:e,name:"MuiFormLabel"}),n=r.children,i=r.className,p=r.component,x=void 0===p?"label":p,g=(0,a.Z)(r,Z),y=(0,u.Z)(),k=(0,l.Z)({props:r,muiFormControl:y,states:["color","required","focused","disabled","error","filled"]}),C=(0,o.Z)({},r,{color:k.color||"primary",component:x,disabled:k.disabled,error:k.error,filled:k.filled,focused:k.focused,required:k.required}),w=function(e){var t=e.classes,r=e.color,n=e.focused,a=e.disabled,o=e.error,i=e.filled,s=e.required,l={root:["root","color".concat((0,d.Z)(r)),a&&"disabled",o&&"error",i&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",o&&"error"]};return(0,c.Z)(l,m.M,t)}(C);return(0,v.jsxs)(b,(0,o.Z)({as:x,ownerState:C,className:(0,s.Z)(w.root,i),ref:t},g,{children:[n,k.required&&(0,v.jsxs)(h,{ownerState:C,"aria-hidden":!0,className:w.asterisk,children:["\u2009","*"]})]}))}));t.Z=x},10843:function(e,t,r){"use strict";r.d(t,{M:function(){return o}});var n=r(75878),a=r(21217);function o(e){return(0,a.Z)("MuiFormLabel",e)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);t.Z=i},30829:function(e,t,r){"use strict";r.d(t,{Z:function(){return y}});var n=r(4942),a=r(63366),o=r(87462),i=r(72791),s=r(94419),c=r(28182),l=r(76147),u=r(52930),d=r(17133),f=r(10843),p=r(31402),m=r(66934),v=r(75878),Z=r(21217);function b(e){return(0,Z.Z)("MuiInputLabel",e)}(0,v.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var h=r(80184),x=["disableAnimation","margin","shrink","variant","className"],g=(0,m.ZP)(d.Z,{shouldForwardProp:function(e){return(0,m.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),t.asterisk),t.root,r.formControl&&t.formControl,"small"===r.size&&t.sizeSmall,r.shrink&&t.shrink,!r.disableAnimation&&t.animated,t[r.variant]]}})((function(e){var t=e.theme,r=e.ownerState;return(0,o.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},r.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===r.size&&{transform:"translate(0, 17px) scale(1)"},r.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!r.disableAnimation&&{transition:t.transitions.create(["color","transform","max-width"],{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut})},"filled"===r.variant&&(0,o.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(12px, 13px) scale(1)"},r.shrink&&(0,o.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===r.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===r.variant&&(0,o.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(14px, 9px) scale(1)"},r.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),y=i.forwardRef((function(e,t){var r=(0,p.Z)({name:"MuiInputLabel",props:e}),n=r.disableAnimation,i=void 0!==n&&n,d=r.shrink,f=r.className,m=(0,a.Z)(r,x),v=(0,u.Z)(),Z=d;"undefined"===typeof Z&&v&&(Z=v.filled||v.focused||v.adornedStart);var y=(0,l.Z)({props:r,muiFormControl:v,states:["size","variant","required"]}),k=(0,o.Z)({},r,{disableAnimation:i,formControl:v,shrink:Z,size:y.size,variant:y.variant,required:y.required}),C=function(e){var t=e.classes,r=e.formControl,n=e.size,a=e.shrink,i={root:["root",r&&"formControl",!e.disableAnimation&&"animated",a&&"shrink","small"===n&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},c=(0,s.Z)(i,b,t);return(0,o.Z)({},t,c)}(k);return(0,h.jsx)(g,(0,o.Z)({"data-shrink":Z,ownerState:k,ref:t,className:(0,c.Z)(C.root,f)},m,{classes:C}))}))},76278:function(e,t,r){"use strict";var n=r(4942),a=r(63366),o=r(87462),i=r(72791),s=r(28182),c=r(94419),l=r(12065),u=r(66934),d=r(31402),f=r(95080),p=r(40162),m=r(42071),v=r(66199),Z=r(34065),b=r(80184),h=["alignItems","autoFocus","component","children","dense","disableGutters","divider","focusVisibleClassName","selected","className"],x=(0,u.ZP)(f.Z,{shouldForwardProp:function(e){return(0,u.FO)(e)||"classes"===e},name:"MuiListItemButton",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[t.root,r.dense&&t.dense,"flex-start"===r.alignItems&&t.alignItemsFlexStart,r.divider&&t.divider,!r.disableGutters&&t.gutters]}})((function(e){var t,r=e.theme,a=e.ownerState;return(0,o.Z)((t={display:"flex",flexGrow:1,justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",minWidth:0,boxSizing:"border-box",textAlign:"left",paddingTop:8,paddingBottom:8,transition:r.transitions.create("background-color",{duration:r.transitions.duration.shortest}),"&:hover":{textDecoration:"none",backgroundColor:(r.vars||r).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}}},(0,n.Z)(t,"&.".concat(Z.Z.selected),(0,n.Z)({backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / ").concat(r.vars.palette.action.selectedOpacity,")"):(0,l.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity)},"&.".concat(Z.Z.focusVisible),{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / calc(").concat(r.vars.palette.action.selectedOpacity," + ").concat(r.vars.palette.action.focusOpacity,"))"):(0,l.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity+r.palette.action.focusOpacity)})),(0,n.Z)(t,"&.".concat(Z.Z.selected,":hover"),{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / calc(").concat(r.vars.palette.action.selectedOpacity," + ").concat(r.vars.palette.action.hoverOpacity,"))"):(0,l.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity+r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / ").concat(r.vars.palette.action.selectedOpacity,")"):(0,l.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity)}}),(0,n.Z)(t,"&.".concat(Z.Z.focusVisible),{backgroundColor:(r.vars||r).palette.action.focus}),(0,n.Z)(t,"&.".concat(Z.Z.disabled),{opacity:(r.vars||r).palette.action.disabledOpacity}),t),a.divider&&{borderBottom:"1px solid ".concat((r.vars||r).palette.divider),backgroundClip:"padding-box"},"flex-start"===a.alignItems&&{alignItems:"flex-start"},!a.disableGutters&&{paddingLeft:16,paddingRight:16},a.dense&&{paddingTop:4,paddingBottom:4})})),g=i.forwardRef((function(e,t){var r=(0,d.Z)({props:e,name:"MuiListItemButton"}),n=r.alignItems,l=void 0===n?"center":n,u=r.autoFocus,f=void 0!==u&&u,g=r.component,y=void 0===g?"div":g,k=r.children,C=r.dense,w=void 0!==C&&C,I=r.disableGutters,F=void 0!==I&&I,M=r.divider,S=void 0!==M&&M,z=r.focusVisibleClassName,O=r.selected,q=void 0!==O&&O,R=r.className,L=(0,a.Z)(r,h),N=i.useContext(v.Z),P=i.useMemo((function(){return{dense:w||N.dense||!1,alignItems:l,disableGutters:F}}),[l,N.dense,w,F]),_=i.useRef(null);(0,p.Z)((function(){f&&_.current&&_.current.focus()}),[f]);var j=(0,o.Z)({},r,{alignItems:l,dense:P.dense,disableGutters:F,divider:S,selected:q}),A=function(e){var t=e.alignItems,r=e.classes,n=e.dense,a=e.disabled,i={root:["root",n&&"dense",!e.disableGutters&&"gutters",e.divider&&"divider",a&&"disabled","flex-start"===t&&"alignItemsFlexStart",e.selected&&"selected"]},s=(0,c.Z)(i,Z.t,r);return(0,o.Z)({},r,s)}(j),E=(0,m.Z)(_,t);return(0,b.jsx)(v.Z.Provider,{value:P,children:(0,b.jsx)(x,(0,o.Z)({ref:E,href:L.href||L.to,component:(L.href||L.to)&&"div"===y?"button":y,focusVisibleClassName:(0,s.Z)(A.focusVisible,z),ownerState:j,className:(0,s.Z)(A.root,R)},L,{classes:A,children:k}))})}));t.Z=g},34065:function(e,t,r){"use strict";r.d(t,{t:function(){return o}});var n=r(75878),a=r(21217);function o(e){return(0,a.Z)("MuiListItemButton",e)}var i=(0,n.Z)("MuiListItemButton",["root","focusVisible","dense","alignItemsFlexStart","disabled","divider","gutters","selected"]);t.Z=i},31260:function(e,t,r){"use strict";var n=r(78949);t.Z=n.Z},28610:function(e,t,r){"use strict";r.r(t),r.d(t,{capitalize:function(){return a.Z},createChainedFunction:function(){return o.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return c},isMuiElement:function(){return l.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return p},unstable_ClassNameGenerator:function(){return y},unstable_useEnhancedEffect:function(){return m.Z},unstable_useId:function(){return v.Z},unsupportedProp:function(){return Z},useControlled:function(){return b.Z},useEventCallback:function(){return h.Z},useForkRef:function(){return x.Z},useIsFocusVisible:function(){return g.Z}});var n=r(55902),a=r(14036),o=r(31260),i=r(76189),s=r(83199);var c=function(e,t){return function(){return null}},l=r(19103),u=r(98301),d=r(17602);r(87462);var f=function(e,t){return function(){return null}},p=r(62971).Z,m=r(40162),v=r(67384);var Z=function(e,t,r,n,a){return null},b=r(98278),h=r(89683),x=r(42071),g=r(23031),y={configure:function(e){n.Z.configure(e)}}},19103:function(e,t,r){"use strict";r.d(t,{Z:function(){return a}});var n=r(72791);var a=function(e,t){return n.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}},78949:function(e,t,r){"use strict";function n(){for(var e=arguments.length,t=new Array(e),r=0;r {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"alignItems\", \"autoFocus\", \"component\", \"children\", \"dense\", \"disableGutters\", \"divider\", \"focusVisibleClassName\", \"selected\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport ButtonBase from '../ButtonBase';\nimport useEnhancedEffect from '../utils/useEnhancedEffect';\nimport useForkRef from '../utils/useForkRef';\nimport ListContext from '../List/ListContext';\nimport listItemButtonClasses, { getListItemButtonUtilityClass } from './listItemButtonClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const overridesResolver = (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.dense && styles.dense, ownerState.alignItems === 'flex-start' && styles.alignItemsFlexStart, ownerState.divider && styles.divider, !ownerState.disableGutters && styles.gutters];\n};\nconst useUtilityClasses = ownerState => {\n const {\n alignItems,\n classes,\n dense,\n disabled,\n disableGutters,\n divider,\n selected\n } = ownerState;\n const slots = {\n root: ['root', dense && 'dense', !disableGutters && 'gutters', divider && 'divider', disabled && 'disabled', alignItems === 'flex-start' && 'alignItemsFlexStart', selected && 'selected']\n };\n const composedClasses = composeClasses(slots, getListItemButtonUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst ListItemButtonRoot = styled(ButtonBase, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiListItemButton',\n slot: 'Root',\n overridesResolver\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'flex',\n flexGrow: 1,\n justifyContent: 'flex-start',\n alignItems: 'center',\n position: 'relative',\n textDecoration: 'none',\n minWidth: 0,\n boxSizing: 'border-box',\n textAlign: 'left',\n paddingTop: 8,\n paddingBottom: 8,\n transition: theme.transitions.create('background-color', {\n duration: theme.transitions.duration.shortest\n }),\n '&:hover': {\n textDecoration: 'none',\n backgroundColor: (theme.vars || theme).palette.action.hover,\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n [`&.${listItemButtonClasses.selected}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity),\n [`&.${listItemButtonClasses.focusVisible}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)\n }\n },\n [`&.${listItemButtonClasses.selected}:hover`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity)\n }\n },\n [`&.${listItemButtonClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette.action.focus\n },\n [`&.${listItemButtonClasses.disabled}`]: {\n opacity: (theme.vars || theme).palette.action.disabledOpacity\n }\n}, ownerState.divider && {\n borderBottom: `1px solid ${(theme.vars || theme).palette.divider}`,\n backgroundClip: 'padding-box'\n}, ownerState.alignItems === 'flex-start' && {\n alignItems: 'flex-start'\n}, !ownerState.disableGutters && {\n paddingLeft: 16,\n paddingRight: 16\n}, ownerState.dense && {\n paddingTop: 4,\n paddingBottom: 4\n}));\nconst ListItemButton = /*#__PURE__*/React.forwardRef(function ListItemButton(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItemButton'\n });\n const {\n alignItems = 'center',\n autoFocus = false,\n component = 'div',\n children,\n dense = false,\n disableGutters = false,\n divider = false,\n focusVisibleClassName,\n selected = false,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const context = React.useContext(ListContext);\n const childContext = React.useMemo(() => ({\n dense: dense || context.dense || false,\n alignItems,\n disableGutters\n }), [alignItems, context.dense, dense, disableGutters]);\n const listItemRef = React.useRef(null);\n useEnhancedEffect(() => {\n if (autoFocus) {\n if (listItemRef.current) {\n listItemRef.current.focus();\n } else if (process.env.NODE_ENV !== 'production') {\n console.error('MUI: Unable to set focus to a ListItemButton whose component has not been rendered.');\n }\n }\n }, [autoFocus]);\n const ownerState = _extends({}, props, {\n alignItems,\n dense: childContext.dense,\n disableGutters,\n divider,\n selected\n });\n const classes = useUtilityClasses(ownerState);\n const handleRef = useForkRef(listItemRef, ref);\n return /*#__PURE__*/_jsx(ListContext.Provider, {\n value: childContext,\n children: /*#__PURE__*/_jsx(ListItemButtonRoot, _extends({\n ref: handleRef,\n href: other.href || other.to\n // `ButtonBase` processes `href` or `to` if `component` is set to 'button'\n ,\n component: (other.href || other.to) && component === 'div' ? 'button' : component,\n focusVisibleClassName: clsx(classes.focusVisible, focusVisibleClassName),\n ownerState: ownerState,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes,\n children: children\n }))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemButton.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Defines the `align-items` style property.\n * @default 'center'\n */\n alignItems: PropTypes.oneOf(['center', 'flex-start']),\n /**\n * If `true`, the list item is focused during the first mount.\n * Focus will also be triggered if the value changes from false to true.\n * @default false\n */\n autoFocus: PropTypes.bool,\n /**\n * The content of the component if a `ListItemSecondaryAction` is used it must\n * be the last child.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, compact vertical padding designed for keyboard and mouse input is used.\n * The prop defaults to the value inherited from the parent List component.\n * @default false\n */\n dense: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the left and right padding is removed.\n * @default false\n */\n disableGutters: PropTypes.bool,\n /**\n * If `true`, a 1px light border is added to the bottom of the list item.\n * @default false\n */\n divider: PropTypes.bool,\n /**\n * This prop can help identify which element has keyboard focus.\n * The class name will be applied when the element gains the focus through keyboard interaction.\n * It's a polyfill for the [CSS :focus-visible selector](https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo).\n * The rationale for using this feature [is explained here](https://github.com/WICG/focus-visible/blob/HEAD/explainer.md).\n * A [polyfill can be used](https://github.com/WICG/focus-visible) to apply a `focus-visible` class to other components\n * if needed.\n */\n focusVisibleClassName: PropTypes.string,\n /**\n * @ignore\n */\n href: PropTypes.string,\n /**\n * Use to apply selected styling.\n * @default false\n */\n selected: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListItemButton;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getListItemButtonUtilityClass(slot) {\n return generateUtilityClass('MuiListItemButton', slot);\n}\nconst listItemButtonClasses = generateUtilityClasses('MuiListItemButton', ['root', 'focusVisible', 'dense', 'alignItemsFlexStart', 'disabled', 'divider', 'gutters', 'selected']);\nexport default listItemButtonClasses;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","ListItemButtonRoot","ButtonBase","dense","alignItems","alignItemsFlexStart","divider","disableGutters","gutters","flexGrow","justifyContent","textDecoration","minWidth","boxSizing","textAlign","paddingTop","paddingBottom","shortest","backgroundColor","action","hover","listItemButtonClasses","selected","primary","mainChannel","selectedOpacity","alpha","focusVisible","focusOpacity","hoverOpacity","focus","opacity","disabledOpacity","borderBottom","backgroundClip","paddingLeft","paddingRight","ListItemButton","_props$alignItems","_props$autoFocus","autoFocus","_props$dense","_props$disableGutters","_props$divider","focusVisibleClassName","_props$selected","context","ListContext","childContext","listItemRef","useEnhancedEffect","current","getListItemButtonUtilityClass","handleRef","useForkRef","Provider","href","to","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","type","muiName","_len","arguments","length","funcs","Array","_key","func","_len2","args","_key2","apply","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2791.a64fa77e.chunk.js b/portal-ui/build/static/js/2791.a64fa77e.chunk.js new file mode 100644 index 000000000..4fe9930f6 --- /dev/null +++ b/portal-ui/build/static/js/2791.a64fa77e.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2791,4882,7981,9581],{3579:function(e,t,r){"use strict";var n=r(64836);t.Z=void 0;var a=n(r(45649)),o=r(80184),i=(0,a.default)((0,o.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=i},20165:function(e,t,r){"use strict";var n=r(64836);t.Z=void 0;var a=n(r(45649)),o=r(80184),i=(0,a.default)((0,o.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=i},45649:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=r(28610)},93840:function(e,t,r){"use strict";var n=r(72791).createContext(void 0);t.Z=n},76147:function(e,t,r){"use strict";function n(e){var t=e.props,r=e.states,n=e.muiFormControl;return r.reduce((function(e,r){return e[r]=t[r],n&&"undefined"===typeof t[r]&&(e[r]=n[r]),e}),{})}r.d(t,{Z:function(){return n}})},52930:function(e,t,r){"use strict";r.d(t,{Z:function(){return o}});var n=r(72791),a=r(93840);function o(){return n.useContext(a.Z)}},17133:function(e,t,r){"use strict";var n=r(4942),a=r(63366),o=r(87462),i=r(72791),s=r(28182),c=r(94419),l=r(76147),u=r(52930),d=r(14036),f=r(31402),p=r(66934),m=r(10843),v=r(80184),Z=["children","className","color","component","disabled","error","filled","focused","required"],b=(0,p.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return(0,o.Z)({},t.root,"secondary"===r.color&&t.colorSecondary,r.filled&&t.filled)}})((function(e){var t,r=e.theme,a=e.ownerState;return(0,o.Z)({color:(r.vars||r).palette.text.secondary},r.typography.body1,(t={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(t,"&.".concat(m.Z.focused),{color:(r.vars||r).palette[a.color].main}),(0,n.Z)(t,"&.".concat(m.Z.disabled),{color:(r.vars||r).palette.text.disabled}),(0,n.Z)(t,"&.".concat(m.Z.error),{color:(r.vars||r).palette.error.main}),t))})),x=(0,p.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,t){return t.asterisk}})((function(e){var t=e.theme;return(0,n.Z)({},"&.".concat(m.Z.error),{color:(t.vars||t).palette.error.main})})),h=i.forwardRef((function(e,t){var r=(0,f.Z)({props:e,name:"MuiFormLabel"}),n=r.children,i=r.className,p=r.component,h=void 0===p?"label":p,g=(0,a.Z)(r,Z),y=(0,u.Z)(),k=(0,l.Z)({props:r,muiFormControl:y,states:["color","required","focused","disabled","error","filled"]}),C=(0,o.Z)({},r,{color:k.color||"primary",component:h,disabled:k.disabled,error:k.error,filled:k.filled,focused:k.focused,required:k.required}),w=function(e){var t=e.classes,r=e.color,n=e.focused,a=e.disabled,o=e.error,i=e.filled,s=e.required,l={root:["root","color".concat((0,d.Z)(r)),a&&"disabled",o&&"error",i&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",o&&"error"]};return(0,c.Z)(l,m.M,t)}(C);return(0,v.jsxs)(b,(0,o.Z)({as:h,ownerState:C,className:(0,s.Z)(w.root,i),ref:t},g,{children:[n,k.required&&(0,v.jsxs)(x,{ownerState:C,"aria-hidden":!0,className:w.asterisk,children:["\u2009","*"]})]}))}));t.Z=h},10843:function(e,t,r){"use strict";r.d(t,{M:function(){return o}});var n=r(75878),a=r(21217);function o(e){return(0,a.Z)("MuiFormLabel",e)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);t.Z=i},30829:function(e,t,r){"use strict";r.d(t,{Z:function(){return y}});var n=r(4942),a=r(63366),o=r(87462),i=r(72791),s=r(94419),c=r(28182),l=r(76147),u=r(52930),d=r(17133),f=r(10843),p=r(31402),m=r(66934),v=r(75878),Z=r(21217);function b(e){return(0,Z.Z)("MuiInputLabel",e)}(0,v.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var x=r(80184),h=["disableAnimation","margin","shrink","variant","className"],g=(0,m.ZP)(d.Z,{shouldForwardProp:function(e){return(0,m.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),t.asterisk),t.root,r.formControl&&t.formControl,"small"===r.size&&t.sizeSmall,r.shrink&&t.shrink,!r.disableAnimation&&t.animated,t[r.variant]]}})((function(e){var t=e.theme,r=e.ownerState;return(0,o.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},r.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===r.size&&{transform:"translate(0, 17px) scale(1)"},r.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!r.disableAnimation&&{transition:t.transitions.create(["color","transform","max-width"],{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut})},"filled"===r.variant&&(0,o.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(12px, 13px) scale(1)"},r.shrink&&(0,o.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===r.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===r.variant&&(0,o.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(14px, 9px) scale(1)"},r.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),y=i.forwardRef((function(e,t){var r=(0,p.Z)({name:"MuiInputLabel",props:e}),n=r.disableAnimation,i=void 0!==n&&n,d=r.shrink,f=r.className,m=(0,a.Z)(r,h),v=(0,u.Z)(),Z=d;"undefined"===typeof Z&&v&&(Z=v.filled||v.focused||v.adornedStart);var y=(0,l.Z)({props:r,muiFormControl:v,states:["size","variant","required"]}),k=(0,o.Z)({},r,{disableAnimation:i,formControl:v,shrink:Z,size:y.size,variant:y.variant,required:y.required}),C=function(e){var t=e.classes,r=e.formControl,n=e.size,a=e.shrink,i={root:["root",r&&"formControl",!e.disableAnimation&&"animated",a&&"shrink","small"===n&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},c=(0,s.Z)(i,b,t);return(0,o.Z)({},t,c)}(k);return(0,x.jsx)(g,(0,o.Z)({"data-shrink":Z,ownerState:k,ref:t,className:(0,c.Z)(C.root,f)},m,{classes:C}))}))},76278:function(e,t,r){"use strict";var n=r(4942),a=r(63366),o=r(87462),i=r(72791),s=r(28182),c=r(94419),l=r(12065),u=r(66934),d=r(31402),f=r(95080),p=r(40162),m=r(42071),v=r(66199),Z=r(34065),b=r(80184),x=["alignItems","autoFocus","component","children","dense","disableGutters","divider","focusVisibleClassName","selected","className"],h=(0,u.ZP)(f.Z,{shouldForwardProp:function(e){return(0,u.FO)(e)||"classes"===e},name:"MuiListItemButton",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[t.root,r.dense&&t.dense,"flex-start"===r.alignItems&&t.alignItemsFlexStart,r.divider&&t.divider,!r.disableGutters&&t.gutters]}})((function(e){var t,r=e.theme,a=e.ownerState;return(0,o.Z)((t={display:"flex",flexGrow:1,justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",minWidth:0,boxSizing:"border-box",textAlign:"left",paddingTop:8,paddingBottom:8,transition:r.transitions.create("background-color",{duration:r.transitions.duration.shortest}),"&:hover":{textDecoration:"none",backgroundColor:(r.vars||r).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}}},(0,n.Z)(t,"&.".concat(Z.Z.selected),(0,n.Z)({backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / ").concat(r.vars.palette.action.selectedOpacity,")"):(0,l.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity)},"&.".concat(Z.Z.focusVisible),{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / calc(").concat(r.vars.palette.action.selectedOpacity," + ").concat(r.vars.palette.action.focusOpacity,"))"):(0,l.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity+r.palette.action.focusOpacity)})),(0,n.Z)(t,"&.".concat(Z.Z.selected,":hover"),{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / calc(").concat(r.vars.palette.action.selectedOpacity," + ").concat(r.vars.palette.action.hoverOpacity,"))"):(0,l.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity+r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / ").concat(r.vars.palette.action.selectedOpacity,")"):(0,l.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity)}}),(0,n.Z)(t,"&.".concat(Z.Z.focusVisible),{backgroundColor:(r.vars||r).palette.action.focus}),(0,n.Z)(t,"&.".concat(Z.Z.disabled),{opacity:(r.vars||r).palette.action.disabledOpacity}),t),a.divider&&{borderBottom:"1px solid ".concat((r.vars||r).palette.divider),backgroundClip:"padding-box"},"flex-start"===a.alignItems&&{alignItems:"flex-start"},!a.disableGutters&&{paddingLeft:16,paddingRight:16},a.dense&&{paddingTop:4,paddingBottom:4})})),g=i.forwardRef((function(e,t){var r=(0,d.Z)({props:e,name:"MuiListItemButton"}),n=r.alignItems,l=void 0===n?"center":n,u=r.autoFocus,f=void 0!==u&&u,g=r.component,y=void 0===g?"div":g,k=r.children,C=r.dense,w=void 0!==C&&C,I=r.disableGutters,F=void 0!==I&&I,M=r.divider,S=void 0!==M&&M,z=r.focusVisibleClassName,O=r.selected,q=void 0!==O&&O,R=r.className,L=(0,a.Z)(r,x),N=i.useContext(v.Z),P=i.useMemo((function(){return{dense:w||N.dense||!1,alignItems:l,disableGutters:F}}),[l,N.dense,w,F]),_=i.useRef(null);(0,p.Z)((function(){f&&_.current&&_.current.focus()}),[f]);var j=(0,o.Z)({},r,{alignItems:l,dense:P.dense,disableGutters:F,divider:S,selected:q}),E=function(e){var t=e.alignItems,r=e.classes,n=e.dense,a=e.disabled,i={root:["root",n&&"dense",!e.disableGutters&&"gutters",e.divider&&"divider",a&&"disabled","flex-start"===t&&"alignItemsFlexStart",e.selected&&"selected"]},s=(0,c.Z)(i,Z.t,r);return(0,o.Z)({},r,s)}(j),V=(0,m.Z)(_,t);return(0,b.jsx)(v.Z.Provider,{value:P,children:(0,b.jsx)(h,(0,o.Z)({ref:V,href:L.href||L.to,component:(L.href||L.to)&&"div"===y?"button":y,focusVisibleClassName:(0,s.Z)(E.focusVisible,z),ownerState:j,className:(0,s.Z)(E.root,R)},L,{classes:E,children:k}))})}));t.Z=g},34065:function(e,t,r){"use strict";r.d(t,{t:function(){return o}});var n=r(75878),a=r(21217);function o(e){return(0,a.Z)("MuiListItemButton",e)}var i=(0,n.Z)("MuiListItemButton",["root","focusVisible","dense","alignItemsFlexStart","disabled","divider","gutters","selected"]);t.Z=i},31260:function(e,t,r){"use strict";var n=r(78949);t.Z=n.Z},28610:function(e,t,r){"use strict";r.r(t),r.d(t,{capitalize:function(){return a.Z},createChainedFunction:function(){return o.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return c},isMuiElement:function(){return l.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return p},unstable_ClassNameGenerator:function(){return y},unstable_useEnhancedEffect:function(){return m.Z},unstable_useId:function(){return v.Z},unsupportedProp:function(){return Z},useControlled:function(){return b.Z},useEventCallback:function(){return x.Z},useForkRef:function(){return h.Z},useIsFocusVisible:function(){return g.Z}});var n=r(55902),a=r(14036),o=r(31260),i=r(76189),s=r(83199);var c=function(e,t){return function(){return null}},l=r(19103),u=r(98301),d=r(17602);r(87462);var f=function(e,t){return function(){return null}},p=r(62971).Z,m=r(40162),v=r(67384);var Z=function(e,t,r,n,a){return null},b=r(98278),x=r(89683),h=r(42071),g=r(23031),y={configure:function(e){n.Z.configure(e)}}},19103:function(e,t,r){"use strict";r.d(t,{Z:function(){return a}});var n=r(72791);var a=function(e,t){return n.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}},64836:function(e){e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports}}]); +//# sourceMappingURL=2791.a64fa77e.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/2791.a64fa77e.chunk.js.map b/portal-ui/build/static/js/2791.a64fa77e.chunk.js.map new file mode 100644 index 000000000..dc6d2d6f6 --- /dev/null +++ b/portal-ui/build/static/js/2791.a64fa77e.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/2791.a64fa77e.chunk.js","mappings":"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","sources":["../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/ListItemButton/ListItemButton.js","../node_modules/@mui/material/ListItemButton/listItemButtonClasses.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"alignItems\", \"autoFocus\", \"component\", \"children\", \"dense\", \"disableGutters\", \"divider\", \"focusVisibleClassName\", \"selected\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport ButtonBase from '../ButtonBase';\nimport useEnhancedEffect from '../utils/useEnhancedEffect';\nimport useForkRef from '../utils/useForkRef';\nimport ListContext from '../List/ListContext';\nimport listItemButtonClasses, { getListItemButtonUtilityClass } from './listItemButtonClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const overridesResolver = (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.dense && styles.dense, ownerState.alignItems === 'flex-start' && styles.alignItemsFlexStart, ownerState.divider && styles.divider, !ownerState.disableGutters && styles.gutters];\n};\nconst useUtilityClasses = ownerState => {\n const {\n alignItems,\n classes,\n dense,\n disabled,\n disableGutters,\n divider,\n selected\n } = ownerState;\n const slots = {\n root: ['root', dense && 'dense', !disableGutters && 'gutters', divider && 'divider', disabled && 'disabled', alignItems === 'flex-start' && 'alignItemsFlexStart', selected && 'selected']\n };\n const composedClasses = composeClasses(slots, getListItemButtonUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst ListItemButtonRoot = styled(ButtonBase, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiListItemButton',\n slot: 'Root',\n overridesResolver\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'flex',\n flexGrow: 1,\n justifyContent: 'flex-start',\n alignItems: 'center',\n position: 'relative',\n textDecoration: 'none',\n minWidth: 0,\n boxSizing: 'border-box',\n textAlign: 'left',\n paddingTop: 8,\n paddingBottom: 8,\n transition: theme.transitions.create('background-color', {\n duration: theme.transitions.duration.shortest\n }),\n '&:hover': {\n textDecoration: 'none',\n backgroundColor: (theme.vars || theme).palette.action.hover,\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n [`&.${listItemButtonClasses.selected}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity),\n [`&.${listItemButtonClasses.focusVisible}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)\n }\n },\n [`&.${listItemButtonClasses.selected}:hover`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity)\n }\n },\n [`&.${listItemButtonClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette.action.focus\n },\n [`&.${listItemButtonClasses.disabled}`]: {\n opacity: (theme.vars || theme).palette.action.disabledOpacity\n }\n}, ownerState.divider && {\n borderBottom: `1px solid ${(theme.vars || theme).palette.divider}`,\n backgroundClip: 'padding-box'\n}, ownerState.alignItems === 'flex-start' && {\n alignItems: 'flex-start'\n}, !ownerState.disableGutters && {\n paddingLeft: 16,\n paddingRight: 16\n}, ownerState.dense && {\n paddingTop: 4,\n paddingBottom: 4\n}));\nconst ListItemButton = /*#__PURE__*/React.forwardRef(function ListItemButton(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItemButton'\n });\n const {\n alignItems = 'center',\n autoFocus = false,\n component = 'div',\n children,\n dense = false,\n disableGutters = false,\n divider = false,\n focusVisibleClassName,\n selected = false,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const context = React.useContext(ListContext);\n const childContext = React.useMemo(() => ({\n dense: dense || context.dense || false,\n alignItems,\n disableGutters\n }), [alignItems, context.dense, dense, disableGutters]);\n const listItemRef = React.useRef(null);\n useEnhancedEffect(() => {\n if (autoFocus) {\n if (listItemRef.current) {\n listItemRef.current.focus();\n } else if (process.env.NODE_ENV !== 'production') {\n console.error('MUI: Unable to set focus to a ListItemButton whose component has not been rendered.');\n }\n }\n }, [autoFocus]);\n const ownerState = _extends({}, props, {\n alignItems,\n dense: childContext.dense,\n disableGutters,\n divider,\n selected\n });\n const classes = useUtilityClasses(ownerState);\n const handleRef = useForkRef(listItemRef, ref);\n return /*#__PURE__*/_jsx(ListContext.Provider, {\n value: childContext,\n children: /*#__PURE__*/_jsx(ListItemButtonRoot, _extends({\n ref: handleRef,\n href: other.href || other.to\n // `ButtonBase` processes `href` or `to` if `component` is set to 'button'\n ,\n component: (other.href || other.to) && component === 'div' ? 'button' : component,\n focusVisibleClassName: clsx(classes.focusVisible, focusVisibleClassName),\n ownerState: ownerState,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes,\n children: children\n }))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemButton.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Defines the `align-items` style property.\n * @default 'center'\n */\n alignItems: PropTypes.oneOf(['center', 'flex-start']),\n /**\n * If `true`, the list item is focused during the first mount.\n * Focus will also be triggered if the value changes from false to true.\n * @default false\n */\n autoFocus: PropTypes.bool,\n /**\n * The content of the component if a `ListItemSecondaryAction` is used it must\n * be the last child.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, compact vertical padding designed for keyboard and mouse input is used.\n * The prop defaults to the value inherited from the parent List component.\n * @default false\n */\n dense: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the left and right padding is removed.\n * @default false\n */\n disableGutters: PropTypes.bool,\n /**\n * If `true`, a 1px light border is added to the bottom of the list item.\n * @default false\n */\n divider: PropTypes.bool,\n /**\n * This prop can help identify which element has keyboard focus.\n * The class name will be applied when the element gains the focus through keyboard interaction.\n * It's a polyfill for the [CSS :focus-visible selector](https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo).\n * The rationale for using this feature [is explained here](https://github.com/WICG/focus-visible/blob/HEAD/explainer.md).\n * A [polyfill can be used](https://github.com/WICG/focus-visible) to apply a `focus-visible` class to other components\n * if needed.\n */\n focusVisibleClassName: PropTypes.string,\n /**\n * @ignore\n */\n href: PropTypes.string,\n /**\n * Use to apply selected styling.\n * @default false\n */\n selected: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListItemButton;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getListItemButtonUtilityClass(slot) {\n return generateUtilityClass('MuiListItemButton', slot);\n}\nconst listItemButtonClasses = generateUtilityClasses('MuiListItemButton', ['root', 'focusVisible', 'dense', 'alignItemsFlexStart', 'disabled', 'divider', 'gutters', 'selected']);\nexport default listItemButtonClasses;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","ListItemButtonRoot","ButtonBase","dense","alignItems","alignItemsFlexStart","divider","disableGutters","gutters","flexGrow","justifyContent","textDecoration","minWidth","boxSizing","textAlign","paddingTop","paddingBottom","shortest","backgroundColor","action","hover","listItemButtonClasses","selected","primary","mainChannel","selectedOpacity","alpha","focusVisible","focusOpacity","hoverOpacity","focus","opacity","disabledOpacity","borderBottom","backgroundClip","paddingLeft","paddingRight","ListItemButton","_props$alignItems","_props$autoFocus","autoFocus","_props$dense","_props$disableGutters","_props$divider","focusVisibleClassName","_props$selected","context","ListContext","childContext","listItemRef","useEnhancedEffect","current","getListItemButtonUtilityClass","handleRef","useForkRef","Provider","href","to","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","type","muiName","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/2909.e78ef785.chunk.js b/portal-ui/build/static/js/2909.e78ef785.chunk.js deleted file mode 100644 index 9f3c86feb..000000000 --- a/portal-ui/build/static/js/2909.e78ef785.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[2909],{93840:function(e,r,t){var n=t(72791).createContext(void 0);r.Z=n},76147:function(e,r,t){function n(e){var r=e.props,t=e.states,n=e.muiFormControl;return t.reduce((function(e,t){return e[t]=r[t],n&&"undefined"===typeof r[t]&&(e[t]=n[t]),e}),{})}t.d(r,{Z:function(){return n}})},52930:function(e,r,t){t.d(r,{Z:function(){return i}});var n=t(72791),o=t(93840);function i(){return n.useContext(o.Z)}},17133:function(e,r,t){var n=t(4942),o=t(63366),i=t(87462),a=t(72791),s=t(28182),l=t(94419),c=t(76147),u=t(52930),d=t(14036),f=t(31402),h=t(66934),p=t(10843),m=t(80184),v=["children","className","color","component","disabled","error","filled","focused","required"],b=(0,h.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,r){var t=e.ownerState;return(0,i.Z)({},r.root,"secondary"===t.color&&r.colorSecondary,t.filled&&r.filled)}})((function(e){var r,t=e.theme,o=e.ownerState;return(0,i.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(r={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(r,"&.".concat(p.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(r,"&.".concat(p.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,n.Z)(r,"&.".concat(p.Z.error),{color:(t.vars||t).palette.error.main}),r))})),y=(0,h.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,r){return r.asterisk}})((function(e){var r=e.theme;return(0,n.Z)({},"&.".concat(p.Z.error),{color:(r.vars||r).palette.error.main})})),g=a.forwardRef((function(e,r){var t=(0,f.Z)({props:e,name:"MuiFormLabel"}),n=t.children,a=t.className,h=t.component,g=void 0===h?"label":h,w=(0,o.Z)(t,v),Z=(0,u.Z)(),x=(0,c.Z)({props:t,muiFormControl:Z,states:["color","required","focused","disabled","error","filled"]}),O=(0,i.Z)({},t,{color:x.color||"primary",component:g,disabled:x.disabled,error:x.error,filled:x.filled,focused:x.focused,required:x.required}),k=function(e){var r=e.classes,t=e.color,n=e.focused,o=e.disabled,i=e.error,a=e.filled,s=e.required,c={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",i&&"error",a&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",i&&"error"]};return(0,l.Z)(c,p.M,r)}(O);return(0,m.jsxs)(b,(0,i.Z)({as:g,ownerState:O,className:(0,s.Z)(k.root,a),ref:r},w,{children:[n,x.required&&(0,m.jsxs)(y,{ownerState:O,"aria-hidden":!0,className:k.asterisk,children:["\u2009","*"]})]}))}));r.Z=g},10843:function(e,r,t){t.d(r,{M:function(){return i}});var n=t(75878),o=t(21217);function i(e){return(0,o.Z)("MuiFormLabel",e)}var a=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);r.Z=a},30829:function(e,r,t){t.d(r,{Z:function(){return Z}});var n=t(4942),o=t(63366),i=t(87462),a=t(72791),s=t(94419),l=t(28182),c=t(76147),u=t(52930),d=t(17133),f=t(10843),h=t(31402),p=t(66934),m=t(75878),v=t(21217);function b(e){return(0,v.Z)("MuiInputLabel",e)}(0,m.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var y=t(80184),g=["disableAnimation","margin","shrink","variant","className"],w=(0,p.ZP)(d.Z,{shouldForwardProp:function(e){return(0,p.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,r){var t=e.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),r.asterisk),r.root,t.formControl&&r.formControl,"small"===t.size&&r.sizeSmall,t.shrink&&r.shrink,!t.disableAnimation&&r.animated,r[t.variant]]}})((function(e){var r=e.theme,t=e.ownerState;return(0,i.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:r.transitions.create(["color","transform","max-width"],{duration:r.transitions.duration.shorter,easing:r.transitions.easing.easeOut})},"filled"===t.variant&&(0,i.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,i.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,i.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),Z=a.forwardRef((function(e,r){var t=(0,h.Z)({name:"MuiInputLabel",props:e}),n=t.disableAnimation,a=void 0!==n&&n,d=t.shrink,f=t.className,p=(0,o.Z)(t,g),m=(0,u.Z)(),v=d;"undefined"===typeof v&&m&&(v=m.filled||m.focused||m.adornedStart);var Z=(0,c.Z)({props:t,muiFormControl:m,states:["size","variant","required"]}),x=(0,i.Z)({},t,{disableAnimation:a,formControl:m,shrink:v,size:Z.size,variant:Z.variant,required:Z.required}),O=function(e){var r=e.classes,t=e.formControl,n=e.size,o=e.shrink,a={root:["root",t&&"formControl",!e.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},l=(0,s.Z)(a,b,r);return(0,i.Z)({},r,l)}(x);return(0,y.jsx)(w,(0,i.Z)({"data-shrink":v,ownerState:x,ref:r,className:(0,l.Z)(O.root,f)},p,{classes:O}))}))},19103:function(e,r,t){t.d(r,{Z:function(){return o}});var n=t(72791);var o=function(e,r){return n.isValidElement(e)&&-1!==r.indexOf(e.type.muiName)}},78949:function(e,r,t){function n(){for(var e=arguments.length,r=new Array(e),t=0;te.length)&&(r=e.length);for(var t=0,n=new Array(r);t0,"The aspect(%s) must be greater than zero.",t);var n=(0,w.hU)(l)?e:l,o=(0,w.hU)(u)?r:u;return t&&t>0&&(n?o=n/t:o&&(n=o*t),p&&o>p&&(o=p)),(0,Z.Z)(n>0||o>0,"The width(%s) and height(%s) of chart should be greater than 0,\n please check the style of container, or the props width(%s) and height(%s),\n or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the\n height and width.",n,o,l,u,f,h,t),(0,i.cloneElement)(m,{width:n,height:o})}),[t,m,u,p,h,f,E,l]);(0,i.useEffect)((function(){var e=M();e&&H(e)}),[M]);var W={width:l,height:u,minWidth:f,minHeight:h,maxHeight:p};return i.createElement(g,{handleWidth:!0,handleHeight:!0,onResize:A,targetRef:S,refreshMode:b>0?"debounce":void 0,refreshRate:b},i.createElement("div",x({},null!=y?{id:"".concat(y)}:{},{className:o()("recharts-responsive-container",k),style:W,ref:S}),C))}))}}]); -//# sourceMappingURL=2909.e78ef785.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/2909.e78ef785.chunk.js.map b/portal-ui/build/static/js/2909.e78ef785.chunk.js.map deleted file mode 100644 index 05b7dc82f..000000000 --- a/portal-ui/build/static/js/2909.e78ef785.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/2909.e78ef785.chunk.js","mappings":"iHAIMA,E,SAAkCC,mBAAoBC,GAI5D,K,wBCRe,SAASC,EAAgBC,GAIrC,IAHDC,EAAKD,EAALC,MACAC,EAAMF,EAANE,OACAC,EAAcH,EAAdG,eAEA,OAAOD,EAAOE,QAAO,SAACC,EAAKC,GAOzB,OANAD,EAAIC,GAASL,EAAMK,GACfH,GAC0B,qBAAjBF,EAAMK,KACfD,EAAIC,GAASH,EAAeG,IAGzBD,CACT,GAAG,CAAC,EACN,C,iHCZe,SAASE,IACtB,OAAOV,EAAAA,WAAiBD,EAAAA,EAC1B,C,0KCFMY,EAAY,CAAC,WAAY,YAAa,QAAS,YAAa,WAAY,QAAS,SAAU,UAAW,YA4B/FC,GAAgBC,EAAAA,EAAAA,IAAO,QAAS,CAC3CC,KAAM,eACNC,KAAM,OACNC,kBAAmB,SAAAb,EAEhBc,GAAW,IADZC,EAAUf,EAAVe,WAEA,OAAOC,EAAAA,EAAAA,GAAS,CAAC,EAAGF,EAAOG,KAA2B,cAArBF,EAAWG,OAAyBJ,EAAOK,eAAgBJ,EAAWK,QAAUN,EAAOM,OAC1H,GAP2BV,EAQ1B,SAAAW,GAAA,IAAAC,EACDC,EAAKF,EAALE,MACAR,EAAUM,EAAVN,WAAU,OACNC,EAAAA,EAAAA,GAAS,CACbE,OAAQK,EAAMC,MAAQD,GAAOE,QAAQC,KAAKC,WACzCJ,EAAMK,WAAWC,OAAKP,EAAA,CACvBQ,WAAY,WACZC,QAAS,EACTC,SAAU,aAAUC,EAAAA,EAAAA,GAAAX,EAAA,KAAAY,OACdC,EAAAA,EAAiBC,SAAY,CACjClB,OAAQK,EAAMC,MAAQD,GAAOE,QAAQV,EAAWG,OAAOmB,QACxDJ,EAAAA,EAAAA,GAAAX,EAAA,KAAAY,OACKC,EAAAA,EAAiBG,UAAa,CAClCpB,OAAQK,EAAMC,MAAQD,GAAOE,QAAQC,KAAKY,YAC3CL,EAAAA,EAAAA,GAAAX,EAAA,KAAAY,OACKC,EAAAA,EAAiBI,OAAU,CAC/BrB,OAAQK,EAAMC,MAAQD,GAAOE,QAAQc,MAAMF,OAC5Cf,GACD,IACIkB,GAAoB9B,EAAAA,EAAAA,IAAO,OAAQ,CACvCC,KAAM,eACNC,KAAM,WACNC,kBAAmB,SAACZ,EAAOa,GAAM,OAAKA,EAAO2B,QAAQ,GAH7B/B,EAIvB,SAAAgC,GAAA,IACDnB,EAAKmB,EAALnB,MAAK,OAAAU,EAAAA,EAAAA,GAAA,QAAAC,OAECC,EAAAA,EAAiBI,OAAU,CAC/BrB,OAAQK,EAAMC,MAAQD,GAAOE,QAAQc,MAAMF,MAC5C,IAEGM,EAAyB9C,EAAAA,YAAiB,SAAmB+C,EAASC,GAC1E,IAAM5C,GAAQ6C,EAAAA,EAAAA,GAAc,CAC1B7C,MAAO2C,EACPjC,KAAM,iBAGJoC,EAGE9C,EAHF8C,SACAC,EAEE/C,EAFF+C,UAASC,EAEPhD,EADFiD,UAAAA,OAAS,IAAAD,EAAG,QAAOA,EAErBE,GAAQC,EAAAA,EAAAA,GAA8BnD,EAAOO,GACzCL,GAAiBI,EAAAA,EAAAA,KACjB8C,GAAMtD,EAAAA,EAAAA,GAAiB,CAC3BE,MAAAA,EACAE,eAAAA,EACAD,OAAQ,CAAC,QAAS,WAAY,UAAW,WAAY,QAAS,YAE1Da,GAAaC,EAAAA,EAAAA,GAAS,CAAC,EAAGf,EAAO,CACrCiB,MAAOmC,EAAInC,OAAS,UACpBgC,UAAAA,EACAZ,SAAUe,EAAIf,SACdC,MAAOc,EAAId,MACXnB,OAAQiC,EAAIjC,OACZgB,QAASiB,EAAIjB,QACbkB,SAAUD,EAAIC,WAEVC,EAhFkB,SAAAxC,GACxB,IACEwC,EAOExC,EAPFwC,QACArC,EAMEH,EANFG,MACAkB,EAKErB,EALFqB,QACAE,EAIEvB,EAJFuB,SACAC,EAGExB,EAHFwB,MACAnB,EAEEL,EAFFK,OACAkC,EACEvC,EADFuC,SAEIE,EAAQ,CACZvC,KAAM,CAAC,OAAQ,QAAFiB,QAAUuB,EAAAA,EAAAA,GAAWvC,IAAUoB,GAAY,WAAYC,GAAS,QAASnB,GAAU,SAAUgB,GAAW,UAAWkB,GAAY,YAC5Ib,SAAU,CAAC,WAAYF,GAAS,UAElC,OAAOmB,EAAAA,EAAAA,GAAeF,EAAOG,EAAAA,EAA4BJ,EAC3D,CAiEkBK,CAAkB7C,GAClC,OAAoB8C,EAAAA,EAAAA,MAAMpD,GAAeO,EAAAA,EAAAA,GAAS,CAChD8C,GAAIZ,EACJnC,WAAYA,EACZiC,WAAWe,EAAAA,EAAAA,GAAKR,EAAQtC,KAAM+B,GAC9BH,IAAKA,GACJM,EAAO,CACRJ,SAAU,CAACA,EAAUM,EAAIC,WAAyBO,EAAAA,EAAAA,MAAMrB,EAAmB,CACzEzB,WAAYA,EACZ,eAAe,EACfiC,UAAWO,EAAQd,SACnBM,SAAU,CAAC,SAAU,UAG3B,IAsDA,K,kFChKO,SAASY,EAA2B/C,GACzC,OAAOoD,EAAAA,EAAAA,GAAqB,eAAgBpD,EAC9C,CACA,IAAMuB,GAAmB8B,EAAAA,EAAAA,GAAuB,eAAgB,CAAC,OAAQ,iBAAkB,UAAW,WAAY,QAAS,SAAU,WAAY,aACjJ,K,qNCJO,SAASC,EAA4BtD,GAC1C,OAAOoD,EAAAA,EAAAA,GAAqB,gBAAiBpD,EAC/C,EAC0BqD,EAAAA,EAAAA,GAAuB,gBAAiB,CAAC,OAAQ,UAAW,WAAY,QAAS,WAAY,WAAY,cAAe,YAAa,SAAU,WAAY,WAAY,SAAU,aAA3M,I,WCHMzD,EAAY,CAAC,mBAAoB,SAAU,SAAU,UAAW,aA6BhE2D,GAAiBzD,EAAAA,EAAAA,IAAOiC,EAAAA,EAAW,CACvCyB,kBAAmB,SAAAC,GAAI,OAAIC,EAAAA,EAAAA,IAAsBD,IAAkB,YAATA,CAAkB,EAC5E1D,KAAM,gBACNC,KAAM,OACNC,kBAAmB,SAACZ,EAAOa,GACzB,IACEC,EACEd,EADFc,WAEF,MAAO,EAAAkB,EAAAA,EAAAA,GAAA,SAAAC,OACEC,EAAAA,EAAiBM,UAAa3B,EAAO2B,UAC3C3B,EAAOG,KAAMF,EAAWwD,aAAezD,EAAOyD,YAAiC,UAApBxD,EAAWyD,MAAoB1D,EAAO2D,UAAW1D,EAAW2D,QAAU5D,EAAO4D,QAAS3D,EAAW4D,kBAAoB7D,EAAO8D,SAAU9D,EAAOC,EAAW8D,SACxN,GAXqBnE,EAYpB,SAAAW,GAAA,IACDE,EAAKF,EAALE,MACAR,EAAUM,EAAVN,WAAU,OACNC,EAAAA,EAAAA,GAAS,CACb8D,QAAS,QACTC,gBAAiB,WACjBC,WAAY,SACZC,SAAU,SACVC,aAAc,WACdC,SAAU,QACTpE,EAAWwD,aAAe,CAC3BvC,SAAU,WACVoD,KAAM,EACNC,IAAK,EAELC,UAAW,+BACU,UAApBvE,EAAWyD,MAAoB,CAEhCc,UAAW,+BACVvE,EAAW2D,QAAU,CACtBY,UAAW,mCACXP,gBAAiB,WACjBI,SAAU,SACRpE,EAAW4D,kBAAoB,CACjCY,WAAYhE,EAAMiE,YAAYC,OAAO,CAAC,QAAS,YAAa,aAAc,CACxEC,SAAUnE,EAAMiE,YAAYE,SAASC,QACrCC,OAAQrE,EAAMiE,YAAYI,OAAOC,WAEX,WAAvB9E,EAAW8D,UAAwB7D,EAAAA,EAAAA,GAAS,CAK7C8E,OAAQ,EACRC,cAAe,OACfT,UAAW,iCACXH,SAAU,qBACW,UAApBpE,EAAWyD,MAAoB,CAChCc,UAAW,kCACVvE,EAAW2D,SAAU1D,EAAAA,EAAAA,GAAS,CAC/BgF,WAAY,OACZD,cAAe,OACfT,UAAW,mCACXH,SAAU,qBACW,UAApBpE,EAAWyD,MAAoB,CAChCc,UAAW,sCACe,aAAvBvE,EAAW8D,UAA0B7D,EAAAA,EAAAA,GAAS,CAEjD8E,OAAQ,EACRC,cAAe,OACfT,UAAW,iCACXH,SAAU,qBACW,UAApBpE,EAAWyD,MAAoB,CAChCc,UAAW,iCACVvE,EAAW2D,QAAU,CACtBsB,WAAY,OACZD,cAAe,OAGfZ,SAAU,oBACVG,UAAW,sCACV,IA2GH,EA1GgCzF,EAAAA,YAAiB,SAAoB+C,EAASC,GAC5E,IAAM5C,GAAQ6C,EAAAA,EAAAA,GAAc,CAC1BnC,KAAM,gBACNV,MAAO2C,IAETqD,EAIMhG,EAHF0E,iBAAAA,OAAgB,IAAAsB,GAAQA,EAChBC,EAENjG,EAFFyE,OACA1B,EACE/C,EADF+C,UAEFG,GAAQC,EAAAA,EAAAA,GAA8BnD,EAAOO,GACzCL,GAAiBI,EAAAA,EAAAA,KACnBmE,EAASwB,EACS,qBAAXxB,GAA0BvE,IACnCuE,EAASvE,EAAeiB,QAAUjB,EAAeiC,SAAWjC,EAAegG,cAE7E,IAAM9C,GAAMtD,EAAAA,EAAAA,GAAiB,CAC3BE,MAAAA,EACAE,eAAAA,EACAD,OAAQ,CAAC,OAAQ,UAAW,cAExBa,GAAaC,EAAAA,EAAAA,GAAS,CAAC,EAAGf,EAAO,CACrC0E,iBAAAA,EACAJ,YAAapE,EACbuE,OAAAA,EACAF,KAAMnB,EAAImB,KACVK,QAASxB,EAAIwB,QACbvB,SAAUD,EAAIC,WAEVC,EAxHkB,SAAAxC,GACxB,IACEwC,EAOExC,EAPFwC,QACAgB,EAMExD,EANFwD,YACAC,EAKEzD,EALFyD,KACAE,EAIE3D,EAJF2D,OAKIlB,EAAQ,CACZvC,KAAM,CAAC,OAAQsD,GAAe,eAF5BxD,EAHF4D,kBAKkE,WAAYD,GAAU,SAAmB,UAATF,GAAoB,YAFpHzD,EAFF8D,SAKApC,SAAU,CAHR1B,EADFuC,UAIuB,aAEnB8C,GAAkB1C,EAAAA,EAAAA,GAAeF,EAAOU,EAA6BX,GAC3E,OAAOvC,EAAAA,EAAAA,GAAS,CAAC,EAAGuC,EAAS6C,EAC/B,CAwGkBxC,CAAkB7C,GAClC,OAAoBsF,EAAAA,EAAAA,KAAKlC,GAAgBnD,EAAAA,EAAAA,GAAS,CAChD,cAAe0D,EACf3D,WAAYA,EACZ8B,IAAKA,EACLG,WAAWe,EAAAA,EAAAA,GAAKR,EAAQtC,KAAM+B,IAC7BG,EAAO,CACRI,QAASA,IAEb,G,uEC9IA,MCAe,SAAsB+C,EAASC,GAC5C,OAAoB1G,EAAAA,eAAqByG,KAAwD,IAA5CC,EAASC,QAAQF,EAAQG,KAAKC,QACrF,C,wBCGe,SAASC,IAAgC,QAAAC,EAAAC,UAAAC,OAAPC,EAAK,IAAAC,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAALF,EAAKE,GAAAJ,UAAAI,GACpD,OAAOF,EAAM3G,QAAO,SAACC,EAAK6G,GACxB,OAAY,MAARA,EACK7G,EAEF,WAAkC,QAAA8G,EAAAN,UAAAC,OAANM,EAAI,IAAAJ,MAAAG,GAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAAJD,EAAIC,GAAAR,UAAAQ,GACrChH,EAAIiH,MAAMC,KAAMH,GAChBF,EAAKI,MAAMC,KAAMH,EACnB,CACF,IAAG,WAAO,GACZ,C,6KCAII,EAAgB,SAASC,EAAGC,GAI5B,OAHAF,EAAgBG,OAAOC,gBAClB,CAAEC,UAAW,cAAgBb,OAAS,SAAUS,EAAGC,GAAKD,EAAEI,UAAYH,CAAE,GACzE,SAAUD,EAAGC,GAAK,IAAK,IAAII,KAAKJ,EAAOA,EAAEK,eAAeD,KAAIL,EAAEK,GAAKJ,EAAEI,GAAG,EACrEN,EAAcC,EAAGC,EAC5B,EAEO,SAASM,EAAUP,EAAGC,GAEzB,SAASO,IAAOV,KAAKW,YAAcT,CAAE,CADrCD,EAAcC,EAAGC,GAEjBD,EAAEU,UAAkB,OAANT,EAAaC,OAAOlC,OAAOiC,IAAMO,EAAGE,UAAYT,EAAES,UAAW,IAAIF,EACnF,CAaO,SAASG,EAAOC,EAAGC,GACtB,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIT,KAAKO,EAAOV,OAAOQ,UAAUJ,eAAeS,KAAKH,EAAGP,IAAMQ,EAAE9B,QAAQsB,GAAK,IAC9ES,EAAET,GAAKO,EAAEP,IACb,GAAS,MAALO,GAAqD,oBAAjCV,OAAOc,sBACtB,KAAIC,EAAI,EAAb,IAAgBZ,EAAIH,OAAOc,sBAAsBJ,GAAIK,EAAIZ,EAAEhB,OAAQ4B,IAC3DJ,EAAE9B,QAAQsB,EAAEY,IAAM,GAAKf,OAAOQ,UAAUQ,qBAAqBH,KAAKH,EAAGP,EAAEY,MACvEH,EAAET,EAAEY,IAAML,EAAEP,EAAEY,IAF4B,CAItD,OAAOH,CACX,CC1CO,IAAMK,EAAqB,SAChCC,EACAC,EACAC,EACAC,GAEA,OAAQF,GACN,IAAK,WACH,OAAOG,IAASJ,EAAgBE,EAAaC,GAC/C,IAAK,WACH,OAAOE,IAASL,EAAgBE,EAAaC,GAC/C,QACE,OAAOH,EAEb,EAEaM,EAAa,SAACC,GAAyB,MAAc,oBAAPA,CAAiB,EAE/DC,EAAQ,WAAe,MAAkB,qBAAXC,MAAP,EAEvBC,EAAe,SAACjD,GAC3B,OAAAA,aAAmBkD,SAAWlD,aAAmBmD,YAAjD,EAEWC,EACX,SACEC,EACAC,EACAC,GAEF,gBAACC,G,IAAEC,EAAKD,EAAAC,MAAEC,EAAMF,EAAAE,OACdL,GAAQ,SAAAM,GACN,OAAIA,EAAKF,QAAUA,GAASE,EAAKD,SAAWA,GAKvCC,EAAKF,QAAUA,IAAUF,GAAkBI,EAAKD,SAAWA,IAAWJ,EAHlEK,EAQF,CAAEF,MAAKA,EAAEC,OAAMA,EACxB,G,CAbF,EC/BFE,EAAA,SAAAC,GASE,SAAAD,EAAYjK,GAAZ,IACEmK,EAAAD,EAAA3B,KAAA,KAAMvI,IAmBP,KAmBDmK,EAAAC,cAAgB,WACVD,EAAKE,eAAiBF,EAAKE,cAAcC,SAE3CH,EAAKE,cAAcC,SACnBH,EAAKE,cAAgB,KAEzB,EAEAF,EAAAI,eAAiB,WACT,IAAAV,EAAiCM,EAAKnK,MAApCwK,EAASX,EAAAW,UAAEC,EAAeZ,EAAAY,gBAElC,IAAIrB,IAAJ,CAIIoB,GAAaA,EAAUE,UACzBP,EAAKK,UAAUE,QAAUF,EAAUE,SAGrC,IAAMrE,EAAU8D,EAAKQ,aAChBtE,IAKD8D,EAAKS,mBAAqBT,EAAKS,oBAAsBvE,IAKzD8D,EAAKS,kBAAoBvE,EACzB8D,EAAKU,eAAeC,QAAQzE,EAASoE,IAlBpC,CAmBH,EAEAN,EAAAQ,WAAa,WACL,IAAAd,EAAiCM,EAAKnK,MAApC+K,EAAalB,EAAAkB,cAAEC,EAAWnB,EAAAmB,YAElC,GAAI5B,IAAS,OAAO,KAGpB,GAAI2B,EAAe,OAAOE,SAASF,cAAcA,GAEjD,GAAIC,GAAe1B,EAAa0B,GAAc,OAAOA,EAErD,GAAIb,EAAKK,WAAalB,EAAaa,EAAKK,UAAUE,SAAU,OAAOP,EAAKK,UAAUE,QAIlF,IAAMQ,GAAiBC,EAAAA,EAAAA,aAAYhB,GAEnC,IAAKe,EAAgB,OAAO,KAG5B,OADmBf,EAAKiB,iBAEtB,IAAK,aAEL,IAAK,gBAEL,IAAK,QAEL,IAAK,aACH,OAAOF,EACT,QACE,OAAOA,EAAeG,cAE5B,EAEAlB,EAAmBmB,oBAA2B,SAACC,GACvC,IAAA1B,EAAwDM,EAAKnK,MAA3DwL,EAAkB3B,EAAAF,YAAlBA,OAAc,IAAA6B,GAAIA,EAAEC,EAAA5B,EAAAD,aAAAA,OAAY,IAAA6B,GAAOA,EAAEC,EAAQ7B,EAAA6B,SAEzD,GAAK/B,GAAgBC,EAArB,CAEA,IAAM+B,EAAelC,GACnB,SAAAmC,GAAgB,OAAAzB,EAAK0B,SAASD,GAAc,WAAM,cAAAF,QAAQ,IAARA,OAAQ,EAARA,EAAWvB,EAAK9J,MAAMyJ,MAAOK,EAAK9J,MAAM0J,OAAO,GAAC,GAClGJ,EACAC,GAGF2B,EAAQO,SAAQ,SAAAC,GACR,IAAAlC,EAAqBkC,GAASA,EAAMC,aAAgB,CAAC,EAAnDlC,EAAKD,EAAAC,MAAEC,EAAMF,EAAAE,QAEEI,EAAK8B,cAAgB7C,KAE1CuC,EAAa,CAAE7B,MAAKA,EAAEC,OAAMA,IAG9BI,EAAK8B,aAAc,CACrB,GAjByC,CAkB3C,EAEA9B,EAAAiB,cAAgB,WACR,IAAAvB,EAAuBM,EAAKnK,MAA1BkM,EAAMrC,EAAAqC,OAAEpJ,EAAQ+G,EAAA/G,SACxB,OAAIoG,EAAWgD,GAEN,aAGLhD,EAAWpG,GACN,iBAGLqJ,EAAAA,EAAAA,gBAAerJ,GACV,QAGLiE,MAAMqF,QAAQtJ,GAET,aAIF,QACT,EApJU,IAAAmJ,EAAiEjM,EAAKiM,YAAzDpD,EAAoD7I,EAAK6I,YAA5CgB,EAAuC7J,EAArB8I,YAAlBA,OAAW,IAAAe,EAAG,IAAIA,EAAEd,EAAmB/I,EAAK+I,eAW9E,OATAoB,EAAK9J,MAAQ,CACXyJ,WAAOjK,EACPkK,YAAQlK,GAGVsK,EAAK8B,YAAcA,EACnB9B,EAAKK,WAAY6B,EAAAA,EAAAA,aACjBlC,EAAKS,kBAAoB,KAErBxB,MAIJe,EAAKE,cAAgB1B,EAAmBwB,EAAKmB,oBAAqBzC,EAAaC,EAAaC,GAC5FoB,EAAKU,eAAiB,IAAIxB,OAAOiD,eAAenC,EAAKE,gB,EAwKzD,OApMyEtC,EAGxEkC,EAAAC,GA4BCD,EAAA/B,UAAAqE,kBAAA,WACEjF,KAAKiD,gB,EAGPN,EAAA/B,UAAAsE,mBAAA,WACElF,KAAKiD,gB,EAGPN,EAAA/B,UAAAuE,qBAAA,WACMrD,MAGJ9B,KAAKsD,kBAAoB,KACzBtD,KAAKuD,eAAe6B,aACpBpF,KAAK8C,gB,EAqHPH,EAAA/B,UAAAgE,OAAA,WACQ,IAAArC,EAAqDvC,KAAKtH,MAAxDkM,EAAMrC,EAAAqC,OAAEpJ,EAAQ+G,EAAA/G,SAAE0I,EAA4B3B,EAAA8C,SAAlBC,OAAa,IAAApB,EAAA,MAAKA,EAChDC,EAAoBnE,KAAKjH,MAEzBwM,EAAa,CAAE/C,MAFR2B,EAAA3B,MAEeC,OAFP0B,EAAA1B,OAEeS,UAAWlD,KAAKkD,WAGpD,OAFmBlD,KAAK8D,iBAGtB,IAAK,aACH,OAAa,OAANc,QAAM,IAANA,OAAM,EAANA,EAASW,GAClB,IAAK,gBAEH,OAAoB,OADE/J,QACF,IADEA,OACF,EADEA,EACC+J,GAEzB,IAAK,QAEH,IAAMC,EAAQhK,EACd,GAAIgK,EAAMtG,MAA8B,kBAAfsG,EAAMtG,KAAmB,CAG/B,IAAKuG,EAAW5E,EAAK0E,EAAhC,CAA6B,cACnC,OAAOG,EAAAA,EAAAA,cAAaF,EAAOC,EAC5B,CAED,OAAOC,EAAAA,EAAAA,cAAaF,EAAOD,GAE7B,IAAK,aAEH,OADmB/J,EACDmK,KAAI,SAAAC,GAAM,QAAEA,IAAMF,EAAAA,EAAAA,cAAaE,EAAIL,EAAW,IAElE,QACE,OAAOjN,EAAAA,cAACgN,EAAU,M,EAGzB3C,CAAD,CApMA,CAAyEkD,EAAAA,eCG/C/D,IAAUgE,EAAAA,UAAYC,EAAAA,gB,0BCThD,SAAStM,IAAiS,OAApRA,EAAW2G,OAAO4F,OAAS5F,OAAO4F,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAI/E,EAAI,EAAGA,EAAI7B,UAAUC,OAAQ4B,IAAK,CAAE,IAAIgF,EAAS7G,UAAU6B,GAAI,IAAK,IAAIiF,KAAOD,EAAc/F,OAAOQ,UAAUJ,eAAeS,KAAKkF,EAAQC,KAAQF,EAAOE,GAAOD,EAAOC,GAAU,CAAE,OAAOF,CAAQ,EAAUzM,EAASsG,MAAMC,KAAMV,UAAY,CAClV,SAAS+G,EAAeC,EAAKnF,GAAK,OAKlC,SAAyBmF,GAAO,GAAI7G,MAAMqF,QAAQwB,GAAM,OAAOA,CAAK,CAL3BC,CAAgBD,IAIzD,SAA+BA,EAAKnF,GAAK,IAAIqF,EAAK,MAAQF,EAAM,KAAO,oBAAsBG,QAAUH,EAAIG,OAAOC,WAAaJ,EAAI,cAAe,GAAI,MAAQE,EAAI,CAAE,IAAIG,EAAIC,EAAIC,EAAIC,EAAIC,EAAO,GAAIC,GAAK,EAAIC,GAAK,EAAI,IAAM,GAAIJ,GAAML,EAAKA,EAAGvF,KAAKqF,IAAMY,KAAM,IAAM/F,EAAG,CAAE,GAAIf,OAAOoG,KAAQA,EAAI,OAAQQ,GAAK,CAAI,MAAO,OAASA,GAAML,EAAKE,EAAG5F,KAAKuF,IAAKW,QAAUJ,EAAKK,KAAKT,EAAGU,OAAQN,EAAKxH,SAAW4B,GAAI6F,GAAK,GAAK,CAAE,MAAOM,GAAOL,GAAK,EAAIL,EAAKU,CAAK,CAAE,QAAU,IAAM,IAAKN,GAAM,MAAQR,EAAW,SAAMM,EAAKN,EAAW,SAAKpG,OAAO0G,KAAQA,GAAK,MAAQ,CAAE,QAAU,GAAIG,EAAI,MAAML,CAAI,CAAE,CAAE,OAAOG,CAAM,CAAE,CAJhhBQ,CAAsBjB,EAAKnF,IAE5F,SAAqCqG,EAAGC,GAAU,IAAKD,EAAG,OAAQ,GAAiB,kBAANA,EAAgB,OAAOE,EAAkBF,EAAGC,GAAS,IAAIE,EAAIvH,OAAOQ,UAAUgH,SAAS3G,KAAKuG,GAAGK,MAAM,GAAI,GAAc,WAANF,GAAkBH,EAAE7G,cAAagH,EAAIH,EAAE7G,YAAYvH,MAAM,GAAU,QAANuO,GAAqB,QAANA,EAAa,OAAOlI,MAAMqI,KAAKN,GAAI,GAAU,cAANG,GAAqB,2CAA2CI,KAAKJ,GAAI,OAAOD,EAAkBF,EAAGC,EAAS,CAF7TO,CAA4B1B,EAAKnF,IACnI,WAA8B,MAAM,IAAI8G,UAAU,4IAA8I,CADvDC,EAAoB,CAG7J,SAASR,EAAkBpB,EAAK6B,IAAkB,MAAPA,GAAeA,EAAM7B,EAAI/G,UAAQ4I,EAAM7B,EAAI/G,QAAQ,IAAK,IAAI4B,EAAI,EAAGiH,EAAO,IAAI3I,MAAM0I,GAAMhH,EAAIgH,EAAKhH,IAAKiH,EAAKjH,GAAKmF,EAAInF,GAAI,OAAOiH,CAAM,CAW3K,IAAIC,GAAmCC,EAAAA,EAAAA,aAAW,SAAU7P,EAAM6C,GACvE,IAAIiN,EAAS9P,EAAK8P,OAChBC,EAAwB/P,EAAKgQ,iBAC7BA,OAA6C,IAA1BD,EAAmC,CACpDhG,OAAQ,EACRC,QAAS,GACP+F,EACJE,EAAajQ,EAAK+J,MAClBA,OAAuB,IAAfkG,EAAwB,OAASA,EACzCC,EAAclQ,EAAKgK,OACnBA,OAAyB,IAAhBkG,EAAyB,OAASA,EAC3CC,EAAgBnQ,EAAKoQ,SACrBA,OAA6B,IAAlBD,EAA2B,EAAIA,EAC1CE,EAAYrQ,EAAKqQ,UACjBC,EAAYtQ,EAAKsQ,UACjBvN,EAAW/C,EAAK+C,SAChBwN,EAAgBvQ,EAAKiJ,SACrBA,OAA6B,IAAlBsH,EAA2B,EAAIA,EAC1CC,EAAKxQ,EAAKwQ,GACVxN,EAAYhD,EAAKgD,UACjB2I,EAAW3L,EAAK2L,SAKhB8E,EAAa7C,GAJC8C,EAAAA,EAAAA,UAAS,CACrBC,eAAgBX,EAAiBjG,MACjC6G,gBAAiBZ,EAAiBhG,SAEG,GACvC6G,EAAQJ,EAAW,GACnBK,EAAWL,EAAW,GACpBM,GAAeC,EAAAA,EAAAA,QAAO,OAC1BC,EAAAA,EAAAA,qBAAoBpO,GAAK,WACvB,OAAOkO,CACT,GAAG,CAACA,IACJ,IAAIG,GAAmBC,EAAAA,EAAAA,cAAY,WACjC,OAAKJ,EAAapG,QAGX,CACLgG,eAAgBI,EAAapG,QAAQyG,YACrCR,gBAAiBG,EAAapG,QAAQ0G,cAJ/B,IAMX,GAAG,IACCC,GAA4BH,EAAAA,EAAAA,cAAY,WAC1C,IAAII,EAAUL,IACd,GAAIK,EAAS,CACX,IAAIZ,EAAiBY,EAAQZ,eAC3BC,EAAkBW,EAAQX,gBACxBjF,GAAUA,EAASgF,EAAgBC,GACvCE,GAAS,SAAUU,GACjB,IAAIC,EAAWD,EAAab,eAC1Be,EAAYF,EAAaZ,gBAC3B,OAAID,IAAmBc,GAAYb,IAAoBc,EAC9C,CACLf,eAAgBA,EAChBC,gBAAiBA,GAGdY,CACT,GACF,CACF,GAAG,CAACN,EAAkBvF,IAClBgG,GAAeC,EAAAA,EAAAA,UAAQ,WACzB,IAAIjB,EAAiBE,EAAMF,eACzBC,EAAkBC,EAAMD,gBAC1B,GAAID,EAAiB,GAAKC,EAAkB,EAC1C,OAAO,MAETiB,EAAAA,EAAAA,IAAKC,EAAAA,EAAAA,IAAU/H,KAAU+H,EAAAA,EAAAA,IAAU9H,GAAS,kHAAmHD,EAAOC,IACtK6H,EAAAA,EAAAA,IAAM/B,GAAUA,EAAS,EAAG,4CAA6CA,GACzE,IAAIiC,GAAkBD,EAAAA,EAAAA,IAAU/H,GAAS4G,EAAiB5G,EACtDiI,GAAmBF,EAAAA,EAAAA,IAAU9H,GAAU4G,EAAkB5G,EAiB7D,OAhBI8F,GAAUA,EAAS,IAEjBiC,EAEFC,EAAmBD,EAAkBjC,EAC5BkC,IAETD,EAAkBC,EAAmBlC,GAInCQ,GAAa0B,EAAmB1B,IAClC0B,EAAmB1B,KAGvBuB,EAAAA,EAAAA,GAAKE,EAAkB,GAAKC,EAAmB,EAAG,gQAAiQD,EAAiBC,EAAkBjI,EAAOC,EAAQoG,EAAUC,EAAWP,IACtW7C,EAAAA,EAAAA,cAAalK,EAAU,CACzCgH,MAAOgI,EACP/H,OAAQgI,GAEZ,GAAG,CAAClC,EAAQ/M,EAAUiH,EAAQsG,EAAWD,EAAWD,EAAUS,EAAO9G,KACrEsD,EAAAA,EAAAA,YAAU,WACR,IAAI7I,EAAO0M,IACP1M,GACFsM,EAAStM,EAEb,GAAG,CAAC0M,IACJ,IAAIe,EAAQ,CACVlI,MAAOA,EACPC,OAAQA,EACRoG,SAAUA,EACVC,UAAWA,EACXC,UAAWA,GAEb,OAAoBzQ,EAAAA,cAAoBqS,EAAqB,CAC3DtI,aAAa,EACbC,cAAc,EACd8B,SAAU2F,EACV7G,UAAWsG,EACXjI,YAAaG,EAAW,EAAI,gBAAanJ,EACzCiJ,YAAaE,GACCpJ,EAAAA,cAAoB,MAAOmB,EAAS,CAAC,EAAS,MAANwP,EAAa,CACnEA,GAAI,GAAGtO,OAAOsO,IACZ,CAAC,EAAG,CACNxN,UAAWmP,IAAW,gCAAiCnP,GACvDiP,MAAOA,EACPpP,IAAKkO,IACHY,GACN,G","sources":["../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@mui/utils/esm/createChainedFunction.js","../node_modules/react-resize-detector/node_modules/tslib/tslib.es6.js","../node_modules/react-resize-detector/src/utils.ts","../node_modules/react-resize-detector/src/ResizeDetector.tsx","../node_modules/react-resize-detector/src/useResizeDetector.ts","../node_modules/recharts/es6/component/ResponsiveContainer.js"],"sourcesContent":["import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import debounce from 'lodash/debounce';\nimport throttle from 'lodash/throttle';\nimport type { DebouncedFunc } from 'lodash';\n\nimport { Props, ReactResizeDetectorDimensions } from './types';\n\nexport type PatchedResizeObserverCallback = DebouncedFunc | ResizeObserverCallback;\n\nexport const patchResizeHandler = (\n resizeCallback: ResizeObserverCallback,\n refreshMode: Props['refreshMode'],\n refreshRate: Props['refreshRate'],\n refreshOptions: Props['refreshOptions']\n): PatchedResizeObserverCallback => {\n switch (refreshMode) {\n case 'debounce':\n return debounce(resizeCallback, refreshRate, refreshOptions);\n case 'throttle':\n return throttle(resizeCallback, refreshRate, refreshOptions);\n default:\n return resizeCallback;\n }\n};\n\nexport const isFunction = (fn: unknown): boolean => typeof fn === 'function';\n\nexport const isSSR = (): boolean => typeof window === 'undefined';\n\nexport const isDOMElement = (element: unknown): boolean =>\n element instanceof Element || element instanceof HTMLDocument;\n\nexport const createNotifier =\n (\n setSize: React.Dispatch>,\n handleWidth: boolean,\n handleHeight: boolean\n ) =>\n ({ width, height }: ReactResizeDetectorDimensions): void => {\n setSize(prev => {\n if (prev.width === width && prev.height === height) {\n // skip if dimensions haven't changed\n return prev;\n }\n\n if ((prev.width === width && !handleHeight) || (prev.height === height && !handleWidth)) {\n // process `handleHeight/handleWidth` props\n return prev;\n }\n\n return { width, height };\n });\n };\n","import React, { PureComponent, isValidElement, cloneElement, createRef, ReactNode, ReactElement } from 'react';\nimport { findDOMNode } from 'react-dom';\n\nimport { patchResizeHandler, isFunction, isSSR, isDOMElement, createNotifier } from './utils';\nimport { ReactResizeDetectorDimensions, ResizeDetectorProps, ChildFunctionProps } from './types';\n\nclass ResizeDetector extends PureComponent<\n ResizeDetectorProps,\n ReactResizeDetectorDimensions\n> {\n skipOnMount: boolean | undefined;\n targetRef;\n observableElement;\n resizeHandler;\n resizeObserver;\n constructor(props: ResizeDetectorProps) {\n super(props);\n\n const { skipOnMount, refreshMode, refreshRate = 1000, refreshOptions } = props;\n\n this.state = {\n width: undefined,\n height: undefined\n };\n\n this.skipOnMount = skipOnMount;\n this.targetRef = createRef();\n this.observableElement = null;\n\n if (isSSR()) {\n return;\n }\n\n this.resizeHandler = patchResizeHandler(this.createResizeHandler, refreshMode, refreshRate, refreshOptions);\n this.resizeObserver = new window.ResizeObserver(this.resizeHandler);\n }\n\n componentDidMount(): void {\n this.attachObserver();\n }\n\n componentDidUpdate(): void {\n this.attachObserver();\n }\n\n componentWillUnmount(): void {\n if (isSSR()) {\n return;\n }\n this.observableElement = null;\n this.resizeObserver.disconnect();\n this.cancelHandler();\n }\n\n cancelHandler = (): void => {\n if (this.resizeHandler && this.resizeHandler.cancel) {\n // cancel debounced handler\n this.resizeHandler.cancel();\n this.resizeHandler = null;\n }\n };\n\n attachObserver = (): void => {\n const { targetRef, observerOptions } = this.props;\n\n if (isSSR()) {\n return;\n }\n\n if (targetRef && targetRef.current) {\n this.targetRef.current = targetRef.current;\n }\n\n const element = this.getElement();\n if (!element) {\n // can't find element to observe\n return;\n }\n\n if (this.observableElement && this.observableElement === element) {\n // element is already observed\n return;\n }\n\n this.observableElement = element;\n this.resizeObserver.observe(element, observerOptions);\n };\n\n getElement = (): Element | Text | null => {\n const { querySelector, targetDomEl } = this.props;\n\n if (isSSR()) return null;\n\n // in case we pass a querySelector\n if (querySelector) return document.querySelector(querySelector);\n // in case we pass a DOM element\n if (targetDomEl && isDOMElement(targetDomEl)) return targetDomEl;\n // in case we pass a React ref using React.createRef()\n if (this.targetRef && isDOMElement(this.targetRef.current)) return this.targetRef.current;\n\n // the worse case when we don't receive any information from the parent and the library doesn't add any wrappers\n // we have to use a deprecated `findDOMNode` method in order to find a DOM element to attach to\n const currentElement = findDOMNode(this);\n\n if (!currentElement) return null;\n\n const renderType = this.getRenderType();\n switch (renderType) {\n case 'renderProp':\n return currentElement;\n case 'childFunction':\n return currentElement;\n case 'child':\n return currentElement;\n case 'childArray':\n return currentElement;\n default:\n return currentElement.parentElement;\n }\n };\n\n createResizeHandler: ResizeObserverCallback = (entries: ResizeObserverEntry[]): void => {\n const { handleWidth = true, handleHeight = true, onResize } = this.props;\n\n if (!handleWidth && !handleHeight) return;\n\n const notifyResize = createNotifier(\n setStateFunc => this.setState(setStateFunc, () => onResize?.(this.state.width, this.state.height)),\n handleWidth,\n handleHeight\n );\n\n entries.forEach(entry => {\n const { width, height } = (entry && entry.contentRect) || {};\n\n const shouldSetSize = !this.skipOnMount && !isSSR();\n if (shouldSetSize) {\n notifyResize({ width, height });\n }\n\n this.skipOnMount = false;\n });\n };\n\n getRenderType = (): string => {\n const { render, children } = this.props;\n if (isFunction(render)) {\n // DEPRECATED. Use `Child Function Pattern` instead\n return 'renderProp';\n }\n\n if (isFunction(children)) {\n return 'childFunction';\n }\n\n if (isValidElement(children)) {\n return 'child';\n }\n\n if (Array.isArray(children)) {\n // DEPRECATED. Wrap children with a single parent\n return 'childArray';\n }\n\n // DEPRECATED. Use `Child Function Pattern` instead\n return 'parent';\n };\n\n render() {\n const { render, children, nodeType: WrapperTag = 'div' } = this.props;\n const { width, height } = this.state;\n\n const childProps = { width, height, targetRef: this.targetRef };\n const renderType = this.getRenderType();\n\n switch (renderType) {\n case 'renderProp':\n return render?.(childProps);\n case 'childFunction': {\n const childFunction = children as (props: ChildFunctionProps) => ReactNode;\n return childFunction?.(childProps);\n }\n case 'child': {\n // @TODO bug prone logic\n const child = children as ReactElement;\n if (child.type && typeof child.type === 'string') {\n // child is a native DOM elements such as div, span etc\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { targetRef, ...nativeProps } = childProps;\n return cloneElement(child, nativeProps);\n }\n // class or functional component otherwise\n return cloneElement(child, childProps);\n }\n case 'childArray': {\n const childArray = children as ReactElement[];\n return childArray.map(el => !!el && cloneElement(el, childProps));\n }\n default:\n return ;\n }\n }\n}\n\nexport default ResizeDetector;\n","import { useLayoutEffect, useEffect, useState, useRef } from 'react';\nimport type { MutableRefObject } from 'react';\nimport type { DebouncedFunc } from 'lodash';\n\nimport { patchResizeHandler, createNotifier, isSSR } from './utils';\n\nimport type { PatchedResizeObserverCallback } from './utils';\nimport type { Props, ReactResizeDetectorDimensions } from './types';\n\nconst useEnhancedEffect = isSSR() ? useEffect : useLayoutEffect;\n\nexport interface useResizeDetectorProps extends Props {\n targetRef?: MutableRefObject;\n}\n\nfunction useResizeDetector({\n skipOnMount = false,\n refreshMode,\n refreshRate = 1000,\n refreshOptions,\n handleWidth = true,\n handleHeight = true,\n targetRef,\n observerOptions,\n onResize\n}: useResizeDetectorProps = {}): UseResizeDetectorReturn {\n const skipResize = useRef(skipOnMount);\n const localRef = useRef(null);\n const resizeHandler = useRef();\n\n const ref = targetRef ?? localRef;\n\n const [size, setSize] = useState({\n width: undefined,\n height: undefined\n });\n\n useEnhancedEffect(() => {\n if (!handleWidth && !handleHeight) return;\n\n const notifyResize = createNotifier(setSize, handleWidth, handleHeight);\n\n const resizeCallback: ResizeObserverCallback = (entries: ResizeObserverEntry[]) => {\n if (!handleWidth && !handleHeight) return;\n\n entries.forEach(entry => {\n const { width, height } = (entry && entry.contentRect) || {};\n\n const shouldSetSize = !skipResize.current;\n if (shouldSetSize) {\n notifyResize({ width, height });\n }\n\n skipResize.current = false;\n });\n };\n\n resizeHandler.current = patchResizeHandler(resizeCallback, refreshMode, refreshRate, refreshOptions);\n\n const resizeObserver = new window.ResizeObserver(resizeHandler.current);\n\n if (ref.current) {\n resizeObserver.observe(ref.current, observerOptions);\n }\n\n return () => {\n resizeObserver.disconnect();\n (resizeHandler.current as DebouncedFunc).cancel?.();\n };\n }, [refreshMode, refreshRate, refreshOptions, handleWidth, handleHeight, observerOptions, ref.current]);\n\n useEffect(() => {\n onResize?.(size.width, size.height);\n }, [size]);\n\n return { ref, ...size };\n}\n\nexport default useResizeDetector;\n\nexport interface UseResizeDetectorReturn extends ReactResizeDetectorDimensions {\n ref: MutableRefObject;\n}\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/**\n * @fileOverview Wrapper component to make charts adapt to the size of parent * DOM\n */\nimport classNames from 'classnames';\nimport React, { forwardRef, cloneElement, useState, useImperativeHandle, useRef, useEffect, useCallback, useMemo } from 'react';\nimport ReactResizeDetector from 'react-resize-detector';\nimport { isPercent } from '../util/DataUtils';\nimport { warn } from '../util/LogUtils';\nexport var ResponsiveContainer = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var aspect = _ref.aspect,\n _ref$initialDimension = _ref.initialDimension,\n initialDimension = _ref$initialDimension === void 0 ? {\n width: -1,\n height: -1\n } : _ref$initialDimension,\n _ref$width = _ref.width,\n width = _ref$width === void 0 ? '100%' : _ref$width,\n _ref$height = _ref.height,\n height = _ref$height === void 0 ? '100%' : _ref$height,\n _ref$minWidth = _ref.minWidth,\n minWidth = _ref$minWidth === void 0 ? 0 : _ref$minWidth,\n minHeight = _ref.minHeight,\n maxHeight = _ref.maxHeight,\n children = _ref.children,\n _ref$debounce = _ref.debounce,\n debounce = _ref$debounce === void 0 ? 0 : _ref$debounce,\n id = _ref.id,\n className = _ref.className,\n onResize = _ref.onResize;\n var _useState = useState({\n containerWidth: initialDimension.width,\n containerHeight: initialDimension.height\n }),\n _useState2 = _slicedToArray(_useState, 2),\n sizes = _useState2[0],\n setSizes = _useState2[1];\n var containerRef = useRef(null);\n useImperativeHandle(ref, function () {\n return containerRef;\n }, [containerRef]);\n var getContainerSize = useCallback(function () {\n if (!containerRef.current) {\n return null;\n }\n return {\n containerWidth: containerRef.current.clientWidth,\n containerHeight: containerRef.current.clientHeight\n };\n }, []);\n var updateDimensionsImmediate = useCallback(function () {\n var newSize = getContainerSize();\n if (newSize) {\n var containerWidth = newSize.containerWidth,\n containerHeight = newSize.containerHeight;\n if (onResize) onResize(containerWidth, containerHeight);\n setSizes(function (currentSizes) {\n var oldWidth = currentSizes.containerWidth,\n oldHeight = currentSizes.containerHeight;\n if (containerWidth !== oldWidth || containerHeight !== oldHeight) {\n return {\n containerWidth: containerWidth,\n containerHeight: containerHeight\n };\n }\n return currentSizes;\n });\n }\n }, [getContainerSize, onResize]);\n var chartContent = useMemo(function () {\n var containerWidth = sizes.containerWidth,\n containerHeight = sizes.containerHeight;\n if (containerWidth < 0 || containerHeight < 0) {\n return null;\n }\n warn(isPercent(width) || isPercent(height), \"The width(%s) and height(%s) are both fixed numbers,\\n maybe you don't need to use a ResponsiveContainer.\", width, height);\n warn(!aspect || aspect > 0, 'The aspect(%s) must be greater than zero.', aspect);\n var calculatedWidth = isPercent(width) ? containerWidth : width;\n var calculatedHeight = isPercent(height) ? containerHeight : height;\n if (aspect && aspect > 0) {\n // Preserve the desired aspect ratio\n if (calculatedWidth) {\n // Will default to using width for aspect ratio\n calculatedHeight = calculatedWidth / aspect;\n } else if (calculatedHeight) {\n // But we should also take height into consideration\n calculatedWidth = calculatedHeight * aspect;\n }\n\n // if maxHeight is set, overwrite if calculatedHeight is greater than maxHeight\n if (maxHeight && calculatedHeight > maxHeight) {\n calculatedHeight = maxHeight;\n }\n }\n warn(calculatedWidth > 0 || calculatedHeight > 0, \"The width(%s) and height(%s) of chart should be greater than 0,\\n please check the style of container, or the props width(%s) and height(%s),\\n or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the\\n height and width.\", calculatedWidth, calculatedHeight, width, height, minWidth, minHeight, aspect);\n return /*#__PURE__*/cloneElement(children, {\n width: calculatedWidth,\n height: calculatedHeight\n });\n }, [aspect, children, height, maxHeight, minHeight, minWidth, sizes, width]);\n useEffect(function () {\n var size = getContainerSize();\n if (size) {\n setSizes(size);\n }\n }, [getContainerSize]);\n var style = {\n width: width,\n height: height,\n minWidth: minWidth,\n minHeight: minHeight,\n maxHeight: maxHeight\n };\n return /*#__PURE__*/React.createElement(ReactResizeDetector, {\n handleWidth: true,\n handleHeight: true,\n onResize: updateDimensionsImmediate,\n targetRef: containerRef,\n refreshMode: debounce > 0 ? 'debounce' : undefined,\n refreshRate: debounce\n }, /*#__PURE__*/React.createElement(\"div\", _extends({}, id != null ? {\n id: \"\".concat(id)\n } : {}, {\n className: classNames('recharts-responsive-container', className),\n style: style,\n ref: containerRef\n }), chartContent));\n});"],"names":["FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","element","muiNames","indexOf","type","muiName","createChainedFunction","_len","arguments","length","funcs","Array","_key","func","_len2","args","_key2","apply","this","extendStatics","d","b","Object","setPrototypeOf","__proto__","p","hasOwnProperty","__extends","__","constructor","prototype","__rest","s","e","t","call","getOwnPropertySymbols","i","propertyIsEnumerable","patchResizeHandler","resizeCallback","refreshMode","refreshRate","refreshOptions","debounce","throttle","isFunction","fn","isSSR","window","isDOMElement","Element","HTMLDocument","createNotifier","setSize","handleWidth","handleHeight","_a","width","height","prev","ResizeDetector","_super","_this","cancelHandler","resizeHandler","cancel","attachObserver","targetRef","observerOptions","current","getElement","observableElement","resizeObserver","observe","querySelector","targetDomEl","document","currentElement","findDOMNode","getRenderType","parentElement","createResizeHandler","entries","_b","_c","onResize","notifyResize","setStateFunc","setState","forEach","entry","contentRect","skipOnMount","render","isValidElement","isArray","createRef","ResizeObserver","componentDidMount","componentDidUpdate","componentWillUnmount","disconnect","nodeType","WrapperTag","childProps","child","nativeProps","cloneElement","map","el","PureComponent","useEffect","useLayoutEffect","assign","bind","target","source","key","_slicedToArray","arr","_arrayWithHoles","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","_iterableToArrayLimit","o","minLen","_arrayLikeToArray","n","toString","slice","from","test","_unsupportedIterableToArray","TypeError","_nonIterableRest","len","arr2","ResponsiveContainer","forwardRef","aspect","_ref$initialDimension","initialDimension","_ref$width","_ref$height","_ref$minWidth","minWidth","minHeight","maxHeight","_ref$debounce","id","_useState2","useState","containerWidth","containerHeight","sizes","setSizes","containerRef","useRef","useImperativeHandle","getContainerSize","useCallback","clientWidth","clientHeight","updateDimensionsImmediate","newSize","currentSizes","oldWidth","oldHeight","chartContent","useMemo","warn","isPercent","calculatedWidth","calculatedHeight","style","ReactResizeDetector","classNames"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/3019.15fe418e.chunk.js b/portal-ui/build/static/js/3019.15fe418e.chunk.js deleted file mode 100644 index 1ce1ce3d9..000000000 --- a/portal-ui/build/static/js/3019.15fe418e.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[3019],{68096:function(e,r,n){n.d(r,{Z:function(){return k}});var o=n(29439),t=n(63366),i=n(87462),a=n(72791),d=n(28182),u=n(94419),l=n(31402),c=n(66934),s=n(35470),f=n(14036),p=n(19103),v=n(93840),m=n(75878),Z=n(21217);function h(e){return(0,Z.Z)("MuiFormControl",e)}(0,m.Z)("MuiFormControl",["root","marginNone","marginNormal","marginDense","fullWidth","disabled"]);var b=n(80184),g=["children","className","color","component","disabled","error","focused","fullWidth","hiddenLabel","margin","required","size","variant"],y=(0,c.ZP)("div",{name:"MuiFormControl",slot:"Root",overridesResolver:function(e,r){var n=e.ownerState;return(0,i.Z)({},r.root,r["margin".concat((0,f.Z)(n.margin))],n.fullWidth&&r.fullWidth)}})((function(e){var r=e.ownerState;return(0,i.Z)({display:"inline-flex",flexDirection:"column",position:"relative",minWidth:0,padding:0,margin:0,border:0,verticalAlign:"top"},"normal"===r.margin&&{marginTop:16,marginBottom:8},"dense"===r.margin&&{marginTop:8,marginBottom:4},r.fullWidth&&{width:"100%"})})),k=a.forwardRef((function(e,r){var n=(0,l.Z)({props:e,name:"MuiFormControl"}),c=n.children,m=n.className,Z=n.color,k=void 0===Z?"primary":Z,F=n.component,S=void 0===F?"div":F,w=n.disabled,x=void 0!==w&&w,C=n.error,R=void 0!==C&&C,q=n.focused,B=n.fullWidth,N=void 0!==B&&B,M=n.hiddenLabel,P=void 0!==M&&M,W=n.margin,L=void 0===W?"none":W,I=n.required,A=void 0!==I&&I,z=n.size,E=void 0===z?"medium":z,j=n.variant,O=void 0===j?"outlined":j,V=(0,t.Z)(n,g),D=(0,i.Z)({},n,{color:k,component:S,disabled:x,error:R,fullWidth:N,hiddenLabel:P,margin:L,required:A,size:E,variant:O}),T=function(e){var r=e.classes,n=e.margin,o=e.fullWidth,t={root:["root","none"!==n&&"margin".concat((0,f.Z)(n)),o&&"fullWidth"]};return(0,u.Z)(t,h,r)}(D),_=a.useState((function(){var e=!1;return c&&a.Children.forEach(c,(function(r){if((0,p.Z)(r,["Input","Select"])){var n=(0,p.Z)(r,["Select"])?r.props.input:r;n&&(0,s.B7)(n.props)&&(e=!0)}})),e})),H=(0,o.Z)(_,2),G=H[0],J=H[1],K=a.useState((function(){var e=!1;return c&&a.Children.forEach(c,(function(r){(0,p.Z)(r,["Input","Select"])&&((0,s.vd)(r.props,!0)||(0,s.vd)(r.props.inputProps,!0))&&(e=!0)})),e})),Q=(0,o.Z)(K,2),U=Q[0],X=Q[1],Y=a.useState(!1),$=(0,o.Z)(Y,2),ee=$[0],re=$[1];x&&ee&&re(!1);var ne,oe=void 0===q||x?ee:q,te=a.useMemo((function(){return{adornedStart:G,setAdornedStart:J,color:k,disabled:x,error:R,filled:U,focused:oe,fullWidth:N,hiddenLabel:P,size:E,onBlur:function(){re(!1)},onEmpty:function(){X(!1)},onFilled:function(){X(!0)},onFocus:function(){re(!0)},registerEffect:ne,required:A,variant:O}}),[G,k,x,R,U,oe,N,P,ne,A,E,O]);return(0,b.jsx)(v.Z.Provider,{value:te,children:(0,b.jsx)(y,(0,i.Z)({as:S,ownerState:D,className:(0,d.Z)(T.root,m),ref:r},V,{children:c}))})}))},93840:function(e,r,n){var o=n(72791).createContext(void 0);r.Z=o},76147:function(e,r,n){function o(e){var r=e.props,n=e.states,o=e.muiFormControl;return n.reduce((function(e,n){return e[n]=r[n],o&&"undefined"===typeof r[n]&&(e[n]=o[n]),e}),{})}n.d(r,{Z:function(){return o}})},52930:function(e,r,n){n.d(r,{Z:function(){return i}});var o=n(72791),t=n(93840);function i(){return o.useContext(t.Z)}},17133:function(e,r,n){var o=n(4942),t=n(63366),i=n(87462),a=n(72791),d=n(28182),u=n(94419),l=n(76147),c=n(52930),s=n(14036),f=n(31402),p=n(66934),v=n(10843),m=n(80184),Z=["children","className","color","component","disabled","error","filled","focused","required"],h=(0,p.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,r){var n=e.ownerState;return(0,i.Z)({},r.root,"secondary"===n.color&&r.colorSecondary,n.filled&&r.filled)}})((function(e){var r,n=e.theme,t=e.ownerState;return(0,i.Z)({color:(n.vars||n).palette.text.secondary},n.typography.body1,(r={lineHeight:"1.4375em",padding:0,position:"relative"},(0,o.Z)(r,"&.".concat(v.Z.focused),{color:(n.vars||n).palette[t.color].main}),(0,o.Z)(r,"&.".concat(v.Z.disabled),{color:(n.vars||n).palette.text.disabled}),(0,o.Z)(r,"&.".concat(v.Z.error),{color:(n.vars||n).palette.error.main}),r))})),b=(0,p.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,r){return r.asterisk}})((function(e){var r=e.theme;return(0,o.Z)({},"&.".concat(v.Z.error),{color:(r.vars||r).palette.error.main})})),g=a.forwardRef((function(e,r){var n=(0,f.Z)({props:e,name:"MuiFormLabel"}),o=n.children,a=n.className,p=n.component,g=void 0===p?"label":p,y=(0,t.Z)(n,Z),k=(0,c.Z)(),F=(0,l.Z)({props:n,muiFormControl:k,states:["color","required","focused","disabled","error","filled"]}),S=(0,i.Z)({},n,{color:F.color||"primary",component:g,disabled:F.disabled,error:F.error,filled:F.filled,focused:F.focused,required:F.required}),w=function(e){var r=e.classes,n=e.color,o=e.focused,t=e.disabled,i=e.error,a=e.filled,d=e.required,l={root:["root","color".concat((0,s.Z)(n)),t&&"disabled",i&&"error",a&&"filled",o&&"focused",d&&"required"],asterisk:["asterisk",i&&"error"]};return(0,u.Z)(l,v.M,r)}(S);return(0,m.jsxs)(h,(0,i.Z)({as:g,ownerState:S,className:(0,d.Z)(w.root,a),ref:r},y,{children:[o,F.required&&(0,m.jsxs)(b,{ownerState:S,"aria-hidden":!0,className:w.asterisk,children:["\u2009","*"]})]}))}));r.Z=g},10843:function(e,r,n){n.d(r,{M:function(){return i}});var o=n(75878),t=n(21217);function i(e){return(0,t.Z)("MuiFormLabel",e)}var a=(0,o.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);r.Z=a},35470:function(e,r,n){function o(e){return null!=e&&!(Array.isArray(e)&&0===e.length)}function t(e){var r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return e&&(o(e.value)&&""!==e.value||r&&o(e.defaultValue)&&""!==e.defaultValue)}function i(e){return e.startAdornment}n.d(r,{B7:function(){return i},vd:function(){return t}})},97278:function(e,r,n){n.d(r,{Z:function(){return k}});var o=n(29439),t=n(63366),i=n(87462),a=n(72791),d=n(28182),u=n(94419),l=n(14036),c=n(66934),s=n(98278),f=n(52930),p=n(95080),v=n(75878),m=n(21217);function Z(e){return(0,m.Z)("PrivateSwitchBase",e)}(0,v.Z)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var h=n(80184),b=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],g=(0,c.ZP)(p.Z)((function(e){var r=e.ownerState;return(0,i.Z)({padding:9,borderRadius:"50%"},"start"===r.edge&&{marginLeft:"small"===r.size?-3:-12},"end"===r.edge&&{marginRight:"small"===r.size?-3:-12})})),y=(0,c.ZP)("input")({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),k=a.forwardRef((function(e,r){var n=e.autoFocus,a=e.checked,c=e.checkedIcon,p=e.className,v=e.defaultChecked,m=e.disabled,k=e.disableFocusRipple,F=void 0!==k&&k,S=e.edge,w=void 0!==S&&S,x=e.icon,C=e.id,R=e.inputProps,q=e.inputRef,B=e.name,N=e.onBlur,M=e.onChange,P=e.onFocus,W=e.readOnly,L=e.required,I=void 0!==L&&L,A=e.tabIndex,z=e.type,E=e.value,j=(0,t.Z)(e,b),O=(0,s.Z)({controlled:a,default:Boolean(v),name:"SwitchBase",state:"checked"}),V=(0,o.Z)(O,2),D=V[0],T=V[1],_=(0,f.Z)(),H=m;_&&"undefined"===typeof H&&(H=_.disabled);var G="checkbox"===z||"radio"===z,J=(0,i.Z)({},e,{checked:D,disabled:H,disableFocusRipple:F,edge:w}),K=function(e){var r=e.classes,n=e.checked,o=e.disabled,t=e.edge,i={root:["root",n&&"checked",o&&"disabled",t&&"edge".concat((0,l.Z)(t))],input:["input"]};return(0,u.Z)(i,Z,r)}(J);return(0,h.jsxs)(g,(0,i.Z)({component:"span",className:(0,d.Z)(K.root,p),centerRipple:!0,focusRipple:!F,disabled:H,tabIndex:null,role:void 0,onFocus:function(e){P&&P(e),_&&_.onFocus&&_.onFocus(e)},onBlur:function(e){N&&N(e),_&&_.onBlur&&_.onBlur(e)},ownerState:J,ref:r},j,{children:[(0,h.jsx)(y,(0,i.Z)({autoFocus:n,checked:a,defaultChecked:v,className:K.input,disabled:H,id:G?C:void 0,name:B,onChange:function(e){if(!e.nativeEvent.defaultPrevented){var r=e.target.checked;T(r),M&&M(e,r)}},readOnly:W,ref:q,required:I,ownerState:J,tabIndex:A,type:z},"checkbox"===z&&void 0===E?{}:{value:E},R)),D?c:x]}))}))},31260:function(e,r,n){var o=n(78949);r.Z=o.Z},19103:function(e,r,n){n.d(r,{Z:function(){return t}});var o=n(72791);var t=function(e,r){return o.isValidElement(e)&&-1!==r.indexOf(e.type.muiName)}},78949:function(e,r,n){function o(){for(var e=arguments.length,r=new Array(e),n=0;n {\n const {\n classes,\n margin,\n fullWidth\n } = ownerState;\n const slots = {\n root: ['root', margin !== 'none' && `margin${capitalize(margin)}`, fullWidth && 'fullWidth']\n };\n return composeClasses(slots, getFormControlUtilityClasses, classes);\n};\nconst FormControlRoot = styled('div', {\n name: 'MuiFormControl',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, styles[`margin${capitalize(ownerState.margin)}`], ownerState.fullWidth && styles.fullWidth);\n }\n})(({\n ownerState\n}) => _extends({\n display: 'inline-flex',\n flexDirection: 'column',\n position: 'relative',\n // Reset fieldset default style.\n minWidth: 0,\n padding: 0,\n margin: 0,\n border: 0,\n verticalAlign: 'top'\n}, ownerState.margin === 'normal' && {\n marginTop: 16,\n marginBottom: 8\n}, ownerState.margin === 'dense' && {\n marginTop: 8,\n marginBottom: 4\n}, ownerState.fullWidth && {\n width: '100%'\n}));\n\n/**\n * Provides context such as filled/focused/error/required for form inputs.\n * Relying on the context provides high flexibility and ensures that the state always stays\n * consistent across the children of the `FormControl`.\n * This context is used by the following components:\n *\n * - FormLabel\n * - FormHelperText\n * - Input\n * - InputLabel\n *\n * You can find one composition example below and more going to [the demos](/material-ui/react-text-field/#components).\n *\n * ```jsx\n * \n * Email address\n * \n * We'll never share your email.\n * \n * ```\n *\n * ⚠️ Only one `InputBase` can be used within a FormControl because it creates visual inconsistencies.\n * For instance, only one input can be focused at the same time, the state shouldn't be shared.\n */\nconst FormControl = /*#__PURE__*/React.forwardRef(function FormControl(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormControl'\n });\n const {\n children,\n className,\n color = 'primary',\n component = 'div',\n disabled = false,\n error = false,\n focused: visuallyFocused,\n fullWidth = false,\n hiddenLabel = false,\n margin = 'none',\n required = false,\n size = 'medium',\n variant = 'outlined'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n component,\n disabled,\n error,\n fullWidth,\n hiddenLabel,\n margin,\n required,\n size,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n const [adornedStart, setAdornedStart] = React.useState(() => {\n // We need to iterate through the children and find the Input in order\n // to fully support server-side rendering.\n let initialAdornedStart = false;\n if (children) {\n React.Children.forEach(children, child => {\n if (!isMuiElement(child, ['Input', 'Select'])) {\n return;\n }\n const input = isMuiElement(child, ['Select']) ? child.props.input : child;\n if (input && isAdornedStart(input.props)) {\n initialAdornedStart = true;\n }\n });\n }\n return initialAdornedStart;\n });\n const [filled, setFilled] = React.useState(() => {\n // We need to iterate through the children and find the Input in order\n // to fully support server-side rendering.\n let initialFilled = false;\n if (children) {\n React.Children.forEach(children, child => {\n if (!isMuiElement(child, ['Input', 'Select'])) {\n return;\n }\n if (isFilled(child.props, true) || isFilled(child.props.inputProps, true)) {\n initialFilled = true;\n }\n });\n }\n return initialFilled;\n });\n const [focusedState, setFocused] = React.useState(false);\n if (disabled && focusedState) {\n setFocused(false);\n }\n const focused = visuallyFocused !== undefined && !disabled ? visuallyFocused : focusedState;\n let registerEffect;\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const registeredInput = React.useRef(false);\n registerEffect = () => {\n if (registeredInput.current) {\n console.error(['MUI: There are multiple `InputBase` components inside a FormControl.', 'This creates visual inconsistencies, only use one `InputBase`.'].join('\\n'));\n }\n registeredInput.current = true;\n return () => {\n registeredInput.current = false;\n };\n };\n }\n const childContext = React.useMemo(() => {\n return {\n adornedStart,\n setAdornedStart,\n color,\n disabled,\n error,\n filled,\n focused,\n fullWidth,\n hiddenLabel,\n size,\n onBlur: () => {\n setFocused(false);\n },\n onEmpty: () => {\n setFilled(false);\n },\n onFilled: () => {\n setFilled(true);\n },\n onFocus: () => {\n setFocused(true);\n },\n registerEffect,\n required,\n variant\n };\n }, [adornedStart, color, disabled, error, filled, focused, fullWidth, hiddenLabel, registerEffect, required, size, variant]);\n return /*#__PURE__*/_jsx(FormControlContext.Provider, {\n value: childContext,\n children: /*#__PURE__*/_jsx(FormControlRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: children\n }))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? FormControl.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label, input and helper text should be displayed in a disabled state.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n * @default false\n */\n error: PropTypes.bool,\n /**\n * If `true`, the component is displayed in focused state.\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the component will take up the full width of its container.\n * @default false\n */\n fullWidth: PropTypes.bool,\n /**\n * If `true`, the label is hidden.\n * This is used to increase density for a `FilledInput`.\n * Be sure to add `aria-label` to the `input` element.\n * @default false\n */\n hiddenLabel: PropTypes.bool,\n /**\n * If `dense` or `normal`, will adjust vertical spacing of this and contained components.\n * @default 'none'\n */\n margin: PropTypes.oneOf(['dense', 'none', 'normal']),\n /**\n * If `true`, the label will indicate that the `input` is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n * @default 'outlined'\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default FormControl;","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","// Supports determination of isControlled().\n// Controlled input accepts its current value as a prop.\n//\n// @see https://facebook.github.io/react/docs/forms.html#controlled-components\n// @param value\n// @returns {boolean} true if string (including '') or number (including zero)\nexport function hasValue(value) {\n return value != null && !(Array.isArray(value) && value.length === 0);\n}\n\n// Determine if field is empty or filled.\n// Response determines if label is presented above field or as placeholder.\n//\n// @param obj\n// @param SSR\n// @returns {boolean} False when not present or empty string.\n// True when any number or string with length.\nexport function isFilled(obj, SSR = false) {\n return obj && (hasValue(obj.value) && obj.value !== '' || SSR && hasValue(obj.defaultValue) && obj.defaultValue !== '');\n}\n\n// Determine if an Input is adorned on start.\n// It's corresponding to the left with LTR.\n//\n// @param obj\n// @returns {boolean} False when no adornments.\n// True when adorned at the start.\nexport function isAdornedStart(obj) {\n return obj.startAdornment;\n}","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchBaseUtilityClass(slot) {\n return generateUtilityClass('PrivateSwitchBase', slot);\n}\nconst switchBaseClasses = generateUtilityClasses('PrivateSwitchBase', ['root', 'checked', 'disabled', 'input', 'edgeStart', 'edgeEnd']);\nexport default switchBaseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"checked\", \"checkedIcon\", \"className\", \"defaultChecked\", \"disabled\", \"disableFocusRipple\", \"edge\", \"icon\", \"id\", \"inputProps\", \"inputRef\", \"name\", \"onBlur\", \"onChange\", \"onFocus\", \"readOnly\", \"required\", \"tabIndex\", \"type\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useControlled from '../utils/useControlled';\nimport useFormControl from '../FormControl/useFormControl';\nimport ButtonBase from '../ButtonBase';\nimport { getSwitchBaseUtilityClass } from './switchBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n checked,\n disabled,\n edge\n } = ownerState;\n const slots = {\n root: ['root', checked && 'checked', disabled && 'disabled', edge && `edge${capitalize(edge)}`],\n input: ['input']\n };\n return composeClasses(slots, getSwitchBaseUtilityClass, classes);\n};\nconst SwitchBaseRoot = styled(ButtonBase)(({\n ownerState\n}) => _extends({\n padding: 9,\n borderRadius: '50%'\n}, ownerState.edge === 'start' && {\n marginLeft: ownerState.size === 'small' ? -3 : -12\n}, ownerState.edge === 'end' && {\n marginRight: ownerState.size === 'small' ? -3 : -12\n}));\nconst SwitchBaseInput = styled('input')({\n cursor: 'inherit',\n position: 'absolute',\n opacity: 0,\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n zIndex: 1\n});\n\n/**\n * @ignore - internal component.\n */\nconst SwitchBase = /*#__PURE__*/React.forwardRef(function SwitchBase(props, ref) {\n const {\n autoFocus,\n checked: checkedProp,\n checkedIcon,\n className,\n defaultChecked,\n disabled: disabledProp,\n disableFocusRipple = false,\n edge = false,\n icon,\n id,\n inputProps,\n inputRef,\n name,\n onBlur,\n onChange,\n onFocus,\n readOnly,\n required = false,\n tabIndex,\n type,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [checked, setCheckedState] = useControlled({\n controlled: checkedProp,\n default: Boolean(defaultChecked),\n name: 'SwitchBase',\n state: 'checked'\n });\n const muiFormControl = useFormControl();\n const handleFocus = event => {\n if (onFocus) {\n onFocus(event);\n }\n if (muiFormControl && muiFormControl.onFocus) {\n muiFormControl.onFocus(event);\n }\n };\n const handleBlur = event => {\n if (onBlur) {\n onBlur(event);\n }\n if (muiFormControl && muiFormControl.onBlur) {\n muiFormControl.onBlur(event);\n }\n };\n const handleInputChange = event => {\n // Workaround for https://github.com/facebook/react/issues/9023\n if (event.nativeEvent.defaultPrevented) {\n return;\n }\n const newChecked = event.target.checked;\n setCheckedState(newChecked);\n if (onChange) {\n // TODO v6: remove the second argument.\n onChange(event, newChecked);\n }\n };\n let disabled = disabledProp;\n if (muiFormControl) {\n if (typeof disabled === 'undefined') {\n disabled = muiFormControl.disabled;\n }\n }\n const hasLabelFor = type === 'checkbox' || type === 'radio';\n const ownerState = _extends({}, props, {\n checked,\n disabled,\n disableFocusRipple,\n edge\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(SwitchBaseRoot, _extends({\n component: \"span\",\n className: clsx(classes.root, className),\n centerRipple: true,\n focusRipple: !disableFocusRipple,\n disabled: disabled,\n tabIndex: null,\n role: undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/_jsx(SwitchBaseInput, _extends({\n autoFocus: autoFocus,\n checked: checkedProp,\n defaultChecked: defaultChecked,\n className: classes.input,\n disabled: disabled,\n id: hasLabelFor ? id : undefined,\n name: name,\n onChange: handleInputChange,\n readOnly: readOnly,\n ref: inputRef,\n required: required,\n ownerState: ownerState,\n tabIndex: tabIndex,\n type: type\n }, type === 'checkbox' && value === undefined ? {} : {\n value\n }, inputProps)), checked ? checkedIcon : icon]\n }));\n});\n\n// NB: If changed, please update Checkbox, Switch and Radio\n// so that the API documentation is updated.\nprocess.env.NODE_ENV !== \"production\" ? SwitchBase.propTypes = {\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node.isRequired,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * @ignore\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the keyboard focus ripple is disabled.\n * @default false\n */\n disableFocusRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node.isRequired,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /*\n * @ignore\n */\n name: PropTypes.string,\n /**\n * @ignore\n */\n onBlur: PropTypes.func,\n /**\n * Callback fired when the state is changed.\n *\n * @param {object} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.object,\n /**\n * @ignore\n */\n tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The input component prop `type`.\n */\n type: PropTypes.string.isRequired,\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default SwitchBase;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}"],"names":["getFormControlUtilityClasses","slot","generateUtilityClass","generateUtilityClasses","_excluded","FormControlRoot","styled","name","overridesResolver","_ref","styles","ownerState","_extends","root","concat","capitalize","margin","fullWidth","_ref2","display","flexDirection","position","minWidth","padding","border","verticalAlign","marginTop","marginBottom","width","React","inProps","ref","props","useThemeProps","children","className","_props$color","color","_props$component","component","_props$disabled","disabled","_props$error","error","visuallyFocused","focused","_props$fullWidth","_props$hiddenLabel","hiddenLabel","_props$margin","_props$required","required","_props$size","size","_props$variant","variant","other","_objectWithoutPropertiesLoose","classes","slots","composeClasses","useUtilityClasses","_React$useState","initialAdornedStart","forEach","child","isMuiElement","input","isAdornedStart","_React$useState2","_slicedToArray","adornedStart","setAdornedStart","_React$useState3","initialFilled","isFilled","inputProps","_React$useState4","filled","setFilled","_React$useState5","_React$useState6","focusedState","setFocused","registerEffect","undefined","childContext","onBlur","onEmpty","onFilled","onFocus","_jsx","FormControlContext","Provider","value","as","clsx","formControlState","states","muiFormControl","reduce","acc","state","useFormControl","FormLabelRoot","colorSecondary","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","_defineProperty","formLabelClasses","main","AsteriskComponent","asterisk","_ref3","FormLabel","fcs","getFormLabelUtilityClasses","_jsxs","hasValue","Array","isArray","length","obj","SSR","arguments","defaultValue","startAdornment","getSwitchBaseUtilityClass","SwitchBaseRoot","ButtonBase","borderRadius","edge","marginLeft","marginRight","SwitchBaseInput","cursor","opacity","height","top","left","zIndex","autoFocus","checkedProp","checked","checkedIcon","defaultChecked","disabledProp","_props$disableFocusRi","disableFocusRipple","_props$edge","icon","id","inputRef","onChange","readOnly","tabIndex","type","_useControlled","useControlled","controlled","default","Boolean","_useControlled2","setCheckedState","hasLabelFor","centerRipple","focusRipple","role","event","nativeEvent","defaultPrevented","newChecked","target","createChainedFunction","element","muiNames","indexOf","muiName","_len","funcs","_key","func","_len2","args","_key2","apply","this"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/3034.18978581.chunk.js b/portal-ui/build/static/js/3034.18978581.chunk.js new file mode 100644 index 000000000..fb195da6d --- /dev/null +++ b/portal-ui/build/static/js/3034.18978581.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[3034,4882,7981,9581],{21435:function(e,r,n){"use strict";var t=n(29439),o=n(1413),i=n(72791),a=n(27391),s=n(61889),l=n(30829),c=n(20068),u=n(13400),d=n(20165),f=n(3579),p=n(11135),m=n(72455),v=n(25787),x=n(23814),Z=n(29945),h=n(28182),b=n(80184),y=(0,m.Z)((function(e){return(0,p.Z)((0,o.Z)({},x.gM))}));function j(e){var r=y();return(0,b.jsx)(a.Z,(0,o.Z)({InputProps:{classes:r}},e))}r.Z=(0,v.Z)((function(e){return(0,p.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},x.YI),x.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var r=e.label,n=e.onChange,a=e.value,p=e.id,m=e.name,v=e.type,x=void 0===v?"text":v,y=e.autoComplete,k=void 0===y?"off":y,C=e.disabled,g=void 0!==C&&C,S=e.multiline,M=void 0!==S&&S,w=e.tooltip,z=void 0===w?"":w,F=e.index,P=void 0===F?0:F,I=e.error,N=void 0===I?"":I,L=e.required,A=void 0!==L&&L,E=e.placeholder,R=void 0===E?"":E,q=e.min,K=e.max,O=e.overlayId,_=e.overlayIcon,W=void 0===_?null:_,T=e.overlayObject,B=void 0===T?null:T,V=e.extraInputProps,Y=void 0===V?{}:V,H=e.overlayAction,D=e.noLabelMinWidth,G=void 0!==D&&D,X=e.pattern,J=void 0===X?"":X,Q=e.autoFocus,U=void 0!==Q&&Q,$=e.classes,ee=e.className,re=void 0===ee?"":ee,ne=e.onKeyPress,te=e.onFocus,oe=e.onPaste,ie=(0,o.Z)({"data-index":P},Y),ae=(0,i.useState)(!1),se=(0,t.Z)(ae,2),le=se[0],ce=se[1];"number"===x&&q&&(ie.min=q),"number"===x&&K&&(ie.max=K),""!==J&&(ie.pattern=J);var ue=W,de=x;return"password"===x&&null===W&&(ue=le?(0,b.jsx)(d.Z,{}):(0,b.jsx)(f.Z,{}),de=le?"text":"password"),(0,b.jsx)(i.Fragment,{children:(0,b.jsxs)(s.ZP,{container:!0,className:(0,h.Z)(""!==re?re:"",""!==N?$.errorInField:$.inputBoxContainer),children:[""!==r&&(0,b.jsxs)(l.Z,{htmlFor:p,className:G?$.noMinWidthLabel:$.inputLabel,children:[(0,b.jsxs)("span",{children:[r,A?"*":""]}),""!==z&&(0,b.jsx)("div",{className:$.tooltipContainer,children:(0,b.jsx)(c.Z,{title:z,placement:"top-start",children:(0,b.jsx)("div",{className:$.tooltip,children:(0,b.jsx)(Z.byK,{})})})})]}),(0,b.jsxs)("div",{className:$.textBoxContainer,children:[(0,b.jsx)(j,{id:p,name:m,fullWidth:!0,value:a,autoFocus:U,disabled:g,onChange:n,type:de,multiline:M,autoComplete:k,inputProps:ie,error:""!==N,helperText:N,placeholder:R,className:$.inputRebase,onKeyPress:ne,onFocus:te,onPaste:oe}),ue&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==r?"withLabel":""),children:(0,b.jsx)(u.Z,{onClick:H?function(){H()}:function(){return ce(!le)},id:O,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:ue})}),B&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==r?"withLabel":""),children:B})]})]})})}))},33034:function(e,r,n){"use strict";n.r(r),n.d(r,{default:function(){return b}});var t=n(72791),o=n(61889),i=n(56087),a=n(87995),s=n(57689),l=n(81551),c=n(29439),u=n(64554),d=n(29945),f=n(21435),p=n(9505),m=n(40214),v=n(80184),x=function(e){var r=e.onSuccess,n=e.onError,i=(0,p.Z)(r,n),a=(0,c.Z)(i,2),s=a[0],l=a[1],x=(0,t.useState)(""),Z=(0,c.Z)(x,2),h=Z[0],b=Z[1],y=""!==h.trim()&&-1===h.indexOf(" ");return(0,v.jsx)(d.Xgh,{children:(0,v.jsx)(d.ltY,{title:"Create Key",icon:(0,v.jsx)(d.sR0,{}),helpBox:(0,v.jsx)(m.Z,{helpText:"Encryption Key",contents:["Create a new cryptographic key in the Key Management Service server connected to MINIO."]}),children:(0,v.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),l("POST","/api/v1/kms/keys/",{key:h})},children:(0,v.jsxs)(o.ZP,{container:!0,item:!0,spacing:1,children:[(0,v.jsx)(o.ZP,{item:!0,xs:12,children:(0,v.jsx)(f.Z,{id:"key-name",name:"key-name",label:"Key Name",autoFocus:!0,value:h,error:function(e){return-1!==e.indexOf(" ")?"Key name cannot contain spaces":""}(h),onChange:function(e){b(e.target.value)}})}),(0,v.jsx)(o.ZP,{item:!0,xs:12,textAlign:"right",children:(0,v.jsxs)(u.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",marginTop:"20px",gap:"15px"},children:[(0,v.jsx)(d.zxk,{id:"clear",type:"button",variant:"regular",onClick:function(){b("")},label:"Clear"}),(0,v.jsx)(d.zxk,{id:"save-key",type:"submit",variant:"callAction",color:"primary",disabled:s||!y,label:"Save"})]})})]})})})})},Z=n(47974),h=n(99670),b=function(){var e=(0,l.TL)(),r=(0,s.s0)();return(0,t.useEffect)((function(){e((0,a.Sc)("add_key"))}),[]),(0,v.jsx)(t.Fragment,{children:(0,v.jsxs)(o.ZP,{item:!0,xs:12,children:[(0,v.jsx)(Z.Z,{label:(0,v.jsx)(d.hbI,{label:"Keys",onClick:function(){return r(i.gA.KMS_KEYS)}}),actions:(0,v.jsx)(h.Z,{})}),(0,v.jsx)(x,{onError:function(r){return e((0,a.Ih)(r))},onSuccess:function(){return r("".concat(i.gA.KMS_KEYS))}})]})})}},40214:function(e,r,n){"use strict";var t=n(72791),o=n(29945),i=n(80184);r.Z=function(e){var r=e.helpText,n=e.contents;return(0,i.jsx)(o.KfX,{iconComponent:(0,i.jsx)(o.M9A,{}),title:r,help:(0,i.jsx)(t.Fragment,{children:n.map((function(e){return(0,i.jsx)(o.xuv,{sx:{paddingBottom:"20px"},children:e})}))})})}},3579:function(e,r,n){"use strict";var t=n(64836);r.Z=void 0;var o=t(n(45649)),i=n(80184),a=(0,o.default)((0,i.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");r.Z=a},20165:function(e,r,n){"use strict";var t=n(64836);r.Z=void 0;var o=t(n(45649)),i=n(80184),a=(0,o.default)((0,i.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");r.Z=a},45649:function(e,r,n){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return t.createSvgIcon}});var t=n(28610)},93840:function(e,r,n){"use strict";var t=n(72791).createContext(void 0);r.Z=t},76147:function(e,r,n){"use strict";function t(e){var r=e.props,n=e.states,t=e.muiFormControl;return n.reduce((function(e,n){return e[n]=r[n],t&&"undefined"===typeof r[n]&&(e[n]=t[n]),e}),{})}n.d(r,{Z:function(){return t}})},52930:function(e,r,n){"use strict";n.d(r,{Z:function(){return i}});var t=n(72791),o=n(93840);function i(){return t.useContext(o.Z)}},17133:function(e,r,n){"use strict";var t=n(4942),o=n(63366),i=n(87462),a=n(72791),s=n(28182),l=n(94419),c=n(76147),u=n(52930),d=n(14036),f=n(31402),p=n(66934),m=n(10843),v=n(80184),x=["children","className","color","component","disabled","error","filled","focused","required"],Z=(0,p.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,r){var n=e.ownerState;return(0,i.Z)({},r.root,"secondary"===n.color&&r.colorSecondary,n.filled&&r.filled)}})((function(e){var r,n=e.theme,o=e.ownerState;return(0,i.Z)({color:(n.vars||n).palette.text.secondary},n.typography.body1,(r={lineHeight:"1.4375em",padding:0,position:"relative"},(0,t.Z)(r,"&.".concat(m.Z.focused),{color:(n.vars||n).palette[o.color].main}),(0,t.Z)(r,"&.".concat(m.Z.disabled),{color:(n.vars||n).palette.text.disabled}),(0,t.Z)(r,"&.".concat(m.Z.error),{color:(n.vars||n).palette.error.main}),r))})),h=(0,p.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,r){return r.asterisk}})((function(e){var r=e.theme;return(0,t.Z)({},"&.".concat(m.Z.error),{color:(r.vars||r).palette.error.main})})),b=a.forwardRef((function(e,r){var n=(0,f.Z)({props:e,name:"MuiFormLabel"}),t=n.children,a=n.className,p=n.component,b=void 0===p?"label":p,y=(0,o.Z)(n,x),j=(0,u.Z)(),k=(0,c.Z)({props:n,muiFormControl:j,states:["color","required","focused","disabled","error","filled"]}),C=(0,i.Z)({},n,{color:k.color||"primary",component:b,disabled:k.disabled,error:k.error,filled:k.filled,focused:k.focused,required:k.required}),g=function(e){var r=e.classes,n=e.color,t=e.focused,o=e.disabled,i=e.error,a=e.filled,s=e.required,c={root:["root","color".concat((0,d.Z)(n)),o&&"disabled",i&&"error",a&&"filled",t&&"focused",s&&"required"],asterisk:["asterisk",i&&"error"]};return(0,l.Z)(c,m.M,r)}(C);return(0,v.jsxs)(Z,(0,i.Z)({as:b,ownerState:C,className:(0,s.Z)(g.root,a),ref:r},y,{children:[t,k.required&&(0,v.jsxs)(h,{ownerState:C,"aria-hidden":!0,className:g.asterisk,children:["\u2009","*"]})]}))}));r.Z=b},10843:function(e,r,n){"use strict";n.d(r,{M:function(){return i}});var t=n(75878),o=n(21217);function i(e){return(0,o.Z)("MuiFormLabel",e)}var a=(0,t.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);r.Z=a},30829:function(e,r,n){"use strict";n.d(r,{Z:function(){return j}});var t=n(4942),o=n(63366),i=n(87462),a=n(72791),s=n(94419),l=n(28182),c=n(76147),u=n(52930),d=n(17133),f=n(10843),p=n(31402),m=n(66934),v=n(75878),x=n(21217);function Z(e){return(0,x.Z)("MuiInputLabel",e)}(0,v.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var h=n(80184),b=["disableAnimation","margin","shrink","variant","className"],y=(0,m.ZP)(d.Z,{shouldForwardProp:function(e){return(0,m.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,r){var n=e.ownerState;return[(0,t.Z)({},"& .".concat(f.Z.asterisk),r.asterisk),r.root,n.formControl&&r.formControl,"small"===n.size&&r.sizeSmall,n.shrink&&r.shrink,!n.disableAnimation&&r.animated,r[n.variant]]}})((function(e){var r=e.theme,n=e.ownerState;return(0,i.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},n.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===n.size&&{transform:"translate(0, 17px) scale(1)"},n.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!n.disableAnimation&&{transition:r.transitions.create(["color","transform","max-width"],{duration:r.transitions.duration.shorter,easing:r.transitions.easing.easeOut})},"filled"===n.variant&&(0,i.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===n.size&&{transform:"translate(12px, 13px) scale(1)"},n.shrink&&(0,i.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===n.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===n.variant&&(0,i.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===n.size&&{transform:"translate(14px, 9px) scale(1)"},n.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),j=a.forwardRef((function(e,r){var n=(0,p.Z)({name:"MuiInputLabel",props:e}),t=n.disableAnimation,a=void 0!==t&&t,d=n.shrink,f=n.className,m=(0,o.Z)(n,b),v=(0,u.Z)(),x=d;"undefined"===typeof x&&v&&(x=v.filled||v.focused||v.adornedStart);var j=(0,c.Z)({props:n,muiFormControl:v,states:["size","variant","required"]}),k=(0,i.Z)({},n,{disableAnimation:a,formControl:v,shrink:x,size:j.size,variant:j.variant,required:j.required}),C=function(e){var r=e.classes,n=e.formControl,t=e.size,o=e.shrink,a={root:["root",n&&"formControl",!e.disableAnimation&&"animated",o&&"shrink","small"===t&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},l=(0,s.Z)(a,Z,r);return(0,i.Z)({},r,l)}(k);return(0,h.jsx)(y,(0,i.Z)({"data-shrink":x,ownerState:k,ref:r,className:(0,l.Z)(C.root,f)},m,{classes:C}))}))},31260:function(e,r,n){"use strict";var t=n(78949);r.Z=t.Z},28610:function(e,r,n){"use strict";n.r(r),n.d(r,{capitalize:function(){return o.Z},createChainedFunction:function(){return i.Z},createSvgIcon:function(){return a.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return l},isMuiElement:function(){return c.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return p},unstable_ClassNameGenerator:function(){return j},unstable_useEnhancedEffect:function(){return m.Z},unstable_useId:function(){return v.Z},unsupportedProp:function(){return x},useControlled:function(){return Z.Z},useEventCallback:function(){return h.Z},useForkRef:function(){return b.Z},useIsFocusVisible:function(){return y.Z}});var t=n(55902),o=n(14036),i=n(31260),a=n(76189),s=n(83199);var l=function(e,r){return function(){return null}},c=n(19103),u=n(98301),d=n(17602);n(87462);var f=function(e,r){return function(){return null}},p=n(62971).Z,m=n(40162),v=n(67384);var x=function(e,r,n,t,o){return null},Z=n(98278),h=n(89683),b=n(42071),y=n(23031),j={configure:function(e){t.Z.configure(e)}}},19103:function(e,r,n){"use strict";n.d(r,{Z:function(){return o}});var t=n(72791);var o=function(e,r){return t.isValidElement(e)&&-1!==r.indexOf(e.type.muiName)}},64836:function(e){e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports}}]); +//# sourceMappingURL=3034.18978581.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/3034.18978581.chunk.js.map b/portal-ui/build/static/js/3034.18978581.chunk.js.map new file mode 100644 index 000000000..73605607b --- /dev/null +++ b/portal-ui/build/static/js/3034.18978581.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/3034.18978581.chunk.js","mappings":"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","sources":["screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/KMS/AddKeyForm.tsx","screens/Console/KMS/AddKey.tsx","screens/Console/KMS/KMSHelpbox.tsx","../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { Box } from \"@mui/material\";\n\nimport Grid from \"@mui/material/Grid\";\nimport { AddAccessRuleIcon, Button, FormLayout, PageLayout } from \"mds\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport useApi from \"../Common/Hooks/useApi\";\nimport KMSHelpBox from \"./KMSHelpbox\";\n\ninterface IAddKeyFormProps {\n onSuccess: () => void;\n onError: (err: ErrorResponseHandler) => void;\n}\n\nconst AddKeyForm = ({ onSuccess, onError }: IAddKeyFormProps) => {\n const [loading, invokeApi] = useApi(onSuccess, onError);\n const [keyName, setKeyName] = useState(\"\");\n\n const addRecord = (event: React.FormEvent) => {\n event.preventDefault();\n invokeApi(\"POST\", \"/api/v1/kms/keys/\", { key: keyName });\n };\n\n const resetForm = () => {\n setKeyName(\"\");\n };\n\n const validateKeyName = (keyName: string) => {\n if (keyName.indexOf(\" \") !== -1) {\n return \"Key name cannot contain spaces\";\n } else return \"\";\n };\n\n const validSave = keyName.trim() !== \"\" && keyName.indexOf(\" \") === -1;\n\n return (\n \n }\n helpBox={\n \n }\n >\n ) => {\n addRecord(e);\n }}\n >\n \n \n ) => {\n setKeyName(e.target.value);\n }}\n />\n \n \n \n \n\n \n \n \n \n \n \n \n );\n};\n\nexport default AddKeyForm;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect } from \"react\";\n\nimport Grid from \"@mui/material/Grid\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { useNavigate } from \"react-router-dom\";\nimport { useAppDispatch } from \"../../../store\";\nimport AddKeyForm from \"./AddKeyForm\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport { BackLink } from \"mds\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst AddKey = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const onSuccess = () => navigate(`${IAM_PAGES.KMS_KEYS}`);\n\n const onError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n\n useEffect(() => {\n dispatch(setHelpName(\"add_key\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n \n navigate(IAM_PAGES.KMS_KEYS)}\n />\n }\n actions={}\n />\n \n \n \n );\n};\n\nexport default AddKey;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { HelpBox, HelpIconFilled, Box } from \"mds\";\n\ninterface IKMSHelpBoxProps {\n helpText: string;\n contents: string[];\n}\n\nconst KMSHelpBox = ({ helpText, contents }: IKMSHelpBoxProps) => {\n return (\n }\n title={helpText}\n help={\n \n {contents.map((content) => (\n {content}\n ))}\n \n }\n />\n );\n};\n\nexport default KMSHelpBox;\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["inputStyles","makeStyles","theme","createStyles","_objectSpread","inputFieldStyles","InputField","props","classes","_jsx","TextField","InputProps","withStyles","fieldBasic","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","_ref","label","onChange","value","id","name","_ref$type","type","_ref$autoComplete","autoComplete","_ref$disabled","disabled","_ref$multiline","multiline","_ref$tooltip","tooltip","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","placeholder","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","className","onKeyPress","onFocus","onPaste","inputProps","_useState","useState","_useState2","_slicedToArray","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","React","children","_jsxs","Grid","container","clsx","errorInField","inputBoxContainer","InputLabel","htmlFor","noMinWidthLabel","inputLabel","tooltipContainer","Tooltip","title","placement","HelpIcon","fullWidth","helperText","inputRebase","concat","IconButton","onClick","size","disableFocusRipple","disableRipple","disableTouchRipple","onSuccess","onError","_useApi","useApi","_useApi2","loading","invokeApi","keyName","setKeyName","validSave","trim","indexOf","PageLayout","FormLayout","icon","AddAccessRuleIcon","helpBox","KMSHelpBox","helpText","contents","noValidate","onSubmit","e","preventDefault","key","item","spacing","xs","InputBoxWrapper","validateKeyName","target","textAlign","Box","sx","display","alignItems","justifyContent","marginTop","gap","Button","variant","color","dispatch","useAppDispatch","navigate","useNavigate","useEffect","setHelpName","Fragment","PageHeaderWrapper","BackLink","IAM_PAGES","KMS_KEYS","actions","HelpMenu","AddKeyForm","err","setErrorSnackMessage","HelpBox","iconComponent","HelpIconFilled","help","map","content","paddingBottom","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","enumerable","get","_utils","createSvgIcon","FormControlContext","undefined","formControlState","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","slot","overridesResolver","styles","ownerState","_extends","root","colorSecondary","filled","_ref2","_extends2","vars","palette","text","secondary","typography","body1","lineHeight","padding","_defineProperty","formLabelClasses","focused","main","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","as","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","sizeSmall","shrink","disableAnimation","animated","transformOrigin","whiteSpace","overflow","textOverflow","left","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","muiName","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/3034.ce980176.chunk.js b/portal-ui/build/static/js/3034.ce980176.chunk.js deleted file mode 100644 index fd7d8d358..000000000 --- a/portal-ui/build/static/js/3034.ce980176.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[3034],{21435:function(e,n,t){var i=t(29439),o=t(1413),a=t(72791),r=t(27391),s=t(61889),l=t(30829),c=t(20068),d=t(13400),x=t(20165),u=t(3579),p=t(11135),h=t(72455),m=t(25787),v=t(23814),f=t(29945),j=t(28182),Z=t(80184),y=(0,h.Z)((function(e){return(0,p.Z)((0,o.Z)({},v.gM))}));function b(e){var n=y();return(0,Z.jsx)(r.Z,(0,o.Z)({InputProps:{classes:n}},e))}n.Z=(0,m.Z)((function(e){return(0,p.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},v.YI),v.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var n=e.label,t=e.onChange,r=e.value,p=e.id,h=e.name,m=e.type,v=void 0===m?"text":m,y=e.autoComplete,g=void 0===y?"off":y,C=e.disabled,k=void 0!==C&&C,S=e.multiline,K=void 0!==S&&S,P=e.tooltip,I=void 0===P?"":P,w=e.index,F=void 0===w?0:w,N=e.error,A=void 0===N?"":N,B=e.required,M=void 0!==B&&B,L=e.placeholder,R=void 0===L?"":L,T=e.min,E=e.max,z=e.overlayId,O=e.overlayIcon,W=void 0===O?null:O,_=e.overlayObject,Y=void 0===_?null:_,H=e.extraInputProps,q=void 0===H?{}:H,D=e.overlayAction,G=e.noLabelMinWidth,V=void 0!==G&&G,X=e.pattern,J=void 0===X?"":X,Q=e.autoFocus,U=void 0!==Q&&Q,$=e.classes,ee=e.className,ne=void 0===ee?"":ee,te=e.onKeyPress,ie=e.onFocus,oe=e.onPaste,ae=(0,o.Z)({"data-index":F},q),re=(0,a.useState)(!1),se=(0,i.Z)(re,2),le=se[0],ce=se[1];"number"===v&&T&&(ae.min=T),"number"===v&&E&&(ae.max=E),""!==J&&(ae.pattern=J);var de=W,xe=v;return"password"===v&&null===W&&(de=le?(0,Z.jsx)(x.Z,{}):(0,Z.jsx)(u.Z,{}),xe=le?"text":"password"),(0,Z.jsx)(a.Fragment,{children:(0,Z.jsxs)(s.ZP,{container:!0,className:(0,j.Z)(""!==ne?ne:"",""!==A?$.errorInField:$.inputBoxContainer),children:[""!==n&&(0,Z.jsxs)(l.Z,{htmlFor:p,className:V?$.noMinWidthLabel:$.inputLabel,children:[(0,Z.jsxs)("span",{children:[n,M?"*":""]}),""!==I&&(0,Z.jsx)("div",{className:$.tooltipContainer,children:(0,Z.jsx)(c.Z,{title:I,placement:"top-start",children:(0,Z.jsx)("div",{className:$.tooltip,children:(0,Z.jsx)(f.byK,{})})})})]}),(0,Z.jsxs)("div",{className:$.textBoxContainer,children:[(0,Z.jsx)(b,{id:p,name:h,fullWidth:!0,value:r,autoFocus:U,disabled:k,onChange:t,type:xe,multiline:K,autoComplete:g,inputProps:ae,error:""!==A,helperText:A,placeholder:R,className:$.inputRebase,onKeyPress:te,onFocus:ie,onPaste:oe}),de&&(0,Z.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==n?"withLabel":""),children:(0,Z.jsx)(d.Z,{onClick:D?function(){D()}:function(){return ce(!le)},id:z,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:de})}),Y&&(0,Z.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==n?"withLabel":""),children:Y})]})]})})}))},33034:function(e,n,t){t.r(n),t.d(n,{default:function(){return Z}});var i=t(72791),o=t(61889),a=t(56087),r=t(87995),s=t(57689),l=t(81551),c=t(29439),d=t(64554),x=t(29945),u=t(21435),p=t(9505),h=t(40214),m=t(80184),v=function(e){var n=e.onSuccess,t=e.onError,a=(0,p.Z)(n,t),r=(0,c.Z)(a,2),s=r[0],l=r[1],v=(0,i.useState)(""),f=(0,c.Z)(v,2),j=f[0],Z=f[1],y=""!==j.trim()&&-1===j.indexOf(" ");return(0,m.jsx)(x.Xgh,{children:(0,m.jsx)(x.ltY,{title:"Create Key",icon:(0,m.jsx)(x.sR0,{}),helpBox:(0,m.jsx)(h.Z,{helpText:"Encryption Key",contents:["Create a new cryptographic key in the Key Management Service server connected to MINIO."]}),children:(0,m.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),l("POST","/api/v1/kms/keys/",{key:j})},children:(0,m.jsxs)(o.ZP,{container:!0,item:!0,spacing:1,children:[(0,m.jsx)(o.ZP,{item:!0,xs:12,children:(0,m.jsx)(u.Z,{id:"key-name",name:"key-name",label:"Key Name",autoFocus:!0,value:j,error:function(e){return-1!==e.indexOf(" ")?"Key name cannot contain spaces":""}(j),onChange:function(e){Z(e.target.value)}})}),(0,m.jsx)(o.ZP,{item:!0,xs:12,textAlign:"right",children:(0,m.jsxs)(d.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",marginTop:"20px",gap:"15px"},children:[(0,m.jsx)(x.zxk,{id:"clear",type:"button",variant:"regular",onClick:function(){Z("")},label:"Clear"}),(0,m.jsx)(x.zxk,{id:"save-key",type:"submit",variant:"callAction",color:"primary",disabled:s||!y,label:"Save"})]})})]})})})})},f=t(47974),j=t(99670),Z=function(){var e=(0,l.TL)(),n=(0,s.s0)();return(0,i.useEffect)((function(){e((0,r.Sc)("add_key"))}),[]),(0,m.jsx)(i.Fragment,{children:(0,m.jsxs)(o.ZP,{item:!0,xs:12,children:[(0,m.jsx)(f.Z,{label:(0,m.jsx)(x.hbI,{label:"Keys",onClick:function(){return n(a.gA.KMS_KEYS)}}),actions:(0,m.jsx)(j.Z,{})}),(0,m.jsx)(v,{onError:function(n){return e((0,r.Ih)(n))},onSuccess:function(){return n("".concat(a.gA.KMS_KEYS))}})]})})}},40214:function(e,n,t){t(72791);var i=t(64554),o=t(29945),a=t(80184);n.Z=function(e){var n=e.helpText,t=e.contents;return(0,a.jsxs)(i.Z,{sx:{flex:1,border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"20px"},children:[(0,a.jsxs)(i.Z,{sx:{fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center",marginBottom:"16px",paddingBottom:"20px","& .min-icon":{height:"21px",width:"21px",marginRight:"15px"}},children:[(0,a.jsx)(o.M9A,{}),(0,a.jsx)("div",{children:n})]}),(0,a.jsx)(i.Z,{sx:{fontSize:"14px",marginBottom:"15px"},children:t.map((function(e){return(0,a.jsx)(i.Z,{sx:{paddingBottom:"20px"},children:e})}))})]})}}}]); -//# sourceMappingURL=3034.ce980176.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/3034.ce980176.chunk.js.map b/portal-ui/build/static/js/3034.ce980176.chunk.js.map deleted file mode 100644 index 911486f7e..000000000 --- a/portal-ui/build/static/js/3034.ce980176.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/3034.ce980176.chunk.js","mappings":"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","sources":["screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/KMS/AddKeyForm.tsx","screens/Console/KMS/AddKey.tsx","screens/Console/KMS/KMSHelpbox.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { Box } from \"@mui/material\";\n\nimport Grid from \"@mui/material/Grid\";\nimport { AddAccessRuleIcon, Button, FormLayout, PageLayout } from \"mds\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport useApi from \"../Common/Hooks/useApi\";\nimport KMSHelpBox from \"./KMSHelpbox\";\n\ninterface IAddKeyFormProps {\n onSuccess: () => void;\n onError: (err: ErrorResponseHandler) => void;\n}\n\nconst AddKeyForm = ({ onSuccess, onError }: IAddKeyFormProps) => {\n const [loading, invokeApi] = useApi(onSuccess, onError);\n const [keyName, setKeyName] = useState(\"\");\n\n const addRecord = (event: React.FormEvent) => {\n event.preventDefault();\n invokeApi(\"POST\", \"/api/v1/kms/keys/\", { key: keyName });\n };\n\n const resetForm = () => {\n setKeyName(\"\");\n };\n\n const validateKeyName = (keyName: string) => {\n if (keyName.indexOf(\" \") !== -1) {\n return \"Key name cannot contain spaces\";\n } else return \"\";\n };\n\n const validSave = keyName.trim() !== \"\" && keyName.indexOf(\" \") === -1;\n\n return (\n \n }\n helpBox={\n \n }\n >\n ) => {\n addRecord(e);\n }}\n >\n \n \n ) => {\n setKeyName(e.target.value);\n }}\n />\n \n \n \n \n\n \n \n \n \n \n \n \n );\n};\n\nexport default AddKeyForm;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect } from \"react\";\n\nimport Grid from \"@mui/material/Grid\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { useNavigate } from \"react-router-dom\";\nimport { useAppDispatch } from \"../../../store\";\nimport AddKeyForm from \"./AddKeyForm\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport { BackLink } from \"mds\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst AddKey = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const onSuccess = () => navigate(`${IAM_PAGES.KMS_KEYS}`);\n\n const onError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n\n useEffect(() => {\n dispatch(setHelpName(\"add_key\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n \n navigate(IAM_PAGES.KMS_KEYS)}\n />\n }\n actions={}\n />\n \n \n \n );\n};\n\nexport default AddKey;\n","import React from \"react\";\n\nimport { Box } from \"@mui/material\";\nimport { HelpIconFilled } from \"mds\";\n\ninterface IKMSHelpBoxProps {\n helpText: string;\n contents: string[];\n}\n\nconst KMSHelpBox = ({ helpText, contents }: IKMSHelpBoxProps) => {\n return (\n \n \n \n
{helpText}
\n \n \n {contents.map((content) => (\n {content}\n ))}\n \n \n );\n};\n\nexport default KMSHelpBox;\n"],"names":["inputStyles","makeStyles","theme","createStyles","_objectSpread","inputFieldStyles","InputField","props","classes","_jsx","TextField","InputProps","withStyles","fieldBasic","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","_ref","label","onChange","value","id","name","_ref$type","type","_ref$autoComplete","autoComplete","_ref$disabled","disabled","_ref$multiline","multiline","_ref$tooltip","tooltip","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","placeholder","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","className","onKeyPress","onFocus","onPaste","inputProps","_useState","useState","_useState2","_slicedToArray","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","React","children","_jsxs","Grid","container","clsx","errorInField","inputBoxContainer","InputLabel","htmlFor","noMinWidthLabel","inputLabel","tooltipContainer","Tooltip","title","placement","HelpIcon","fullWidth","helperText","inputRebase","concat","IconButton","onClick","size","disableFocusRipple","disableRipple","disableTouchRipple","onSuccess","onError","_useApi","useApi","_useApi2","loading","invokeApi","keyName","setKeyName","validSave","trim","indexOf","PageLayout","FormLayout","icon","AddAccessRuleIcon","helpBox","KMSHelpBox","helpText","contents","noValidate","onSubmit","e","preventDefault","key","item","spacing","xs","InputBoxWrapper","validateKeyName","target","textAlign","Box","sx","display","alignItems","justifyContent","marginTop","gap","Button","variant","color","dispatch","useAppDispatch","navigate","useNavigate","useEffect","setHelpName","Fragment","PageHeaderWrapper","BackLink","IAM_PAGES","KMS_KEYS","actions","HelpMenu","AddKeyForm","err","setErrorSnackMessage","flex","border","borderRadius","flexFlow","padding","fontSize","fontWeight","marginBottom","paddingBottom","height","width","marginRight","HelpIconFilled","map","content"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/3067.1b1cbcb7.chunk.js b/portal-ui/build/static/js/3067.10ab217f.chunk.js similarity index 94% rename from portal-ui/build/static/js/3067.1b1cbcb7.chunk.js rename to portal-ui/build/static/js/3067.10ab217f.chunk.js index 2a700fd37..75050c965 100644 --- a/portal-ui/build/static/js/3067.1b1cbcb7.chunk.js +++ b/portal-ui/build/static/js/3067.10ab217f.chunk.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[3067],{75578:function(e,t,i){var n=i(1413),s=i(72791),l=i(80184);t.Z=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(i){return(0,l.jsx)(s.Suspense,{fallback:t,children:(0,l.jsx)(e,(0,n.Z)({},i))})}}},81159:function(e,t,i){var n=i(4942),s=i(1413),l=i(72791),a=i(11135),o=i(25787),r=i(9955),c=i(30829),d=i(20068),x=i(20890),p=i(61889),u=i(23814),h=i(29945),m=i(28182),g=i(80184),f=(0,o.Z)((function(e){return{root:{width:50,height:24,padding:0,margin:0},switchBase:{padding:1,"&$checked":{transform:"translateX(24px)",color:e.palette.common.white,"& + $track":{backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,border:"none"}},"&$focusVisible $thumb":{color:"#4CCB92",border:"6px solid #fff"}},thumb:{width:22,height:22,backgroundColor:"#FAFAFA",border:"2px solid #FFFFFF",marginLeft:1},track:{borderRadius:12,backgroundColor:"#E2E2E2",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,transition:e.transitions.create(["background-color","border"])},checked:{},focusVisible:{},switchContainer:{display:"flex",alignItems:"center",justifyContent:"flex-end"}}}))(r.Z);t.Z=(0,o.Z)((function(e){return(0,a.Z)((0,s.Z)((0,s.Z)({indicatorLabelOn:{fontWeight:"bold",color:"#081C42 !important"},indicatorLabel:{fontSize:12,color:"#E2E2E2",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"},tooltip:{fontSize:16}},u.OR),u.YI))}))((function(e){var t=e.label,i=void 0===t?"":t,a=e.onChange,o=e.value,r=e.id,u=e.name,j=e.checked,b=void 0!==j&&j,y=e.disabled,Z=void 0!==y&&y,C=e.switchOnly,v=void 0!==C&&C,w=e.tooltip,k=void 0===w?"":w,S=e.description,I=void 0===S?"":S,F=e.classes,E=e.indicatorLabels,L=e.extraInputProps,B=void 0===L?{}:L,A=(0,g.jsxs)(l.Fragment,{children:[!v&&(0,g.jsx)("span",{className:(0,m.Z)(F.indicatorLabel,(0,n.Z)({},F.indicatorLabelOn,!b)),children:E&&E.length>1?E[1]:"OFF"}),(0,g.jsx)(f,{checked:b,onChange:a,color:"primary",name:u,inputProps:(0,s.Z)({"aria-label":"primary checkbox"},B),disabled:Z,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:o,id:r}),!v&&(0,g.jsx)("span",{className:(0,m.Z)(F.indicatorLabel,(0,n.Z)({},F.indicatorLabelOn,b)),children:E?E[0]:"ON"})]});return v?A:(0,g.jsx)("div",{children:(0,g.jsxs)(p.ZP,{container:!0,alignItems:"center",children:[(0,g.jsx)(p.ZP,{item:!0,xs:12,sm:8,md:8,children:""!==i&&(0,g.jsxs)(c.Z,{htmlFor:r,className:F.inputLabel,children:[(0,g.jsx)("span",{children:i}),""!==k&&(0,g.jsx)("div",{className:F.tooltipContainer,children:(0,g.jsx)(d.Z,{title:k,placement:"top-start",children:(0,g.jsx)("div",{className:F.tooltip,children:(0,g.jsx)(h.byK,{})})})})]})}),(0,g.jsx)(p.ZP,{item:!0,xs:12,sm:""!==i?4:12,md:""!==i?4:12,textAlign:"right",justifyContent:"end",className:F.switchContainer,children:A}),""!==I&&(0,g.jsx)(p.ZP,{item:!0,xs:12,textAlign:"left",children:(0,g.jsx)(x.Z,{component:"p",className:F.fieldDescription,children:I})})]})})}))},31460:function(e,t,i){var n=i(72791),s=i(57689),l=i(64554),a=i(29945),o=i(80184);t.Z=function(e){var t=e.compactMode,i=void 0!==t&&t,r=(0,s.s0)(),c=(0,o.jsx)(a.zxk,{id:"go-to-register",type:"submit",variant:"callAction",color:"primary",onClick:function(){return r("/support/register")},children:"Register your Cluster"}),d="Use your MinIO Subscription Network login credentials to register this cluster.";return i?(0,o.jsxs)(n.Fragment,{children:[(0,o.jsx)(a.rjZ,{sx:{"& div.leftItems":{marginBottom:0}},children:(0,o.jsx)(a.KfX,{title:(0,o.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",flexGrow:1},children:[(0,o.jsx)("span",{children:d})," ",c]}),iconComponent:(0,o.jsx)(a.e6P,{}),help:(0,o.jsx)(n.Fragment,{})})}),(0,o.jsx)("br",{})]}):(0,o.jsx)(l.Z,{sx:{padding:"25px",border:"1px solid #eaeaea",display:"flex",alignItems:"center",justifyContent:"center",flexFlow:{sm:"row",xs:"column"},marginBottom:"15px"},children:(0,o.jsxs)(a.rjZ,{container:!0,children:[(0,o.jsx)(a.rjZ,{item:!0,xs:12,children:(0,o.jsx)(l.Z,{sx:{marginRight:"8px",fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center","& .min-icon":{width:"83px",height:"14px",marginLeft:"5px",marginRight:"5px"}},children:"Register your cluster"})}),(0,o.jsx)(a.rjZ,{item:!0,xs:12,children:(0,o.jsx)(l.Z,{sx:{display:"flex",flexFlow:{xs:"column",md:"row"}},children:(0,o.jsxs)(l.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,o.jsx)(l.Z,{sx:{fontSize:"16px",display:"flex",flexFlow:"column",marginTop:"15px",marginBottom:"15px"},children:d}),(0,o.jsx)(l.Z,{sx:{flex:"1"},children:(0,o.jsx)(l.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:c})})]})})})]})})}},73067:function(e,t,i){i.r(t),i.d(t,{default:function(){return F}});var n=i(72791),s=i(57689),l=i(75578),a=i(50099),o=i(29439),r=i(64554),c=i(29945),d=i(11087),x=i(81207),p=i(87995),u=i(81551),h=i(9478),m=i(40986),g=i(56028),f=i(80184),j=function(e){var t=e.onClose,i=e.diagStatus,s=e.logsStatus,l=e.open,a=e.disable,r=void 0!==a&&a,d=(0,u.TL)(),h=(0,n.useState)(!1),j=(0,o.Z)(h,2),b=j[0],y=j[1],Z=function(){y(!0),x.Z.invoke("PUT","/api/v1/support/callhome",{diagState:!r&&i,logsState:!r&&s}).then((function(e){d((0,p.y1)("Configuration saved successfully")),y(!1),t(!0)})).catch((function(e){y(!1),d((0,p.Ih)(e))}))};return(0,f.jsx)(g.Z,{modalOpen:l,title:r?"Disable Call Home":"Edit Call Home Configurations",onClose:function(){return t(!1)},titleIcon:(0,f.jsx)(c.o0P,{}),children:r?(0,f.jsxs)(n.Fragment,{children:["Please Acknowledge that after doing this action, we will no longer receive updated cluster information automatically, losing the potential benefits that Call Home provides to your MinIO cluster.",(0,f.jsx)(c.rjZ,{item:!0,xs:12,sx:{margin:"15px 0"},children:"Are you sure you want to disable SUBNET Call Home?"}),(0,f.jsx)("br",{}),b&&(0,f.jsx)(c.rjZ,{item:!0,xs:12,sx:{marginBottom:10},children:(0,f.jsx)(m.Z,{})}),(0,f.jsxs)(c.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end"},children:[(0,f.jsx)(c.zxk,{id:"reset",type:"button",variant:"regular",disabled:b,onClick:function(){return t(!1)},label:"Cancel",sx:{marginRight:10}}),(0,f.jsx)(c.zxk,{id:"save-lifecycle",type:"submit",variant:"secondary",color:"primary",disabled:b,label:"Yes, Disable Call Home",onClick:Z})]})]}):(0,f.jsxs)(n.Fragment,{children:["Are you sure you want to change the following configurations for SUBNET Call Home:",(0,f.jsxs)(c.rjZ,{item:!0,sx:{margin:"20px 0",display:"flex",flexDirection:"column",gap:15},children:[(0,f.jsxs)(c.rjZ,{item:!0,sx:{display:"flex",alignItems:"center",gap:10},children:[(0,f.jsx)(c.J$M,{style:{fill:i?"#4CCB92":"#C83B51",width:20}}),(0,f.jsxs)("span",{children:[(0,f.jsx)("strong",{children:i?"Enable":"Disable"})," - Send Diagnostics Information to SUBNET"]})]}),(0,f.jsxs)(c.rjZ,{item:!0,sx:{display:"flex",alignItems:"center",gap:10},children:[(0,f.jsx)(c.J$M,{style:{fill:s?"#4CCB92":"#C83B51",width:20}}),(0,f.jsxs)("span",{children:[(0,f.jsx)("strong",{children:s?"Enable":"Disable"})," - Send Logs Information to SUBNET"]})]})]}),(0,f.jsx)(c.rjZ,{item:!0,xs:12,sx:{margin:"15px 0"},children:"Please Acknowledge that the information provided will only be available in your SUBNET Account and it will not be shared to other persons or entities besides MinIO team and you."}),b&&(0,f.jsx)(c.rjZ,{item:!0,xs:12,sx:{marginBottom:10},children:(0,f.jsx)(m.Z,{})}),(0,f.jsxs)(c.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end"},children:[(0,f.jsx)(c.zxk,{id:"reset",type:"button",variant:"regular",disabled:b,onClick:function(){return t(!1)},label:"Cancel",sx:{marginRight:10}}),(0,f.jsx)(c.zxk,{id:"save-lifecycle",type:"submit",variant:"callAction",color:"primary",disabled:b,label:"Yes, Save this Configuration",onClick:Z})]})]})})},b=i(31460),y=i(81159),Z=i(47974),C=i(99670),v=function(e){var t=e.title,i=e.text;return(0,f.jsxs)("div",{style:{marginTop:15},children:[(0,f.jsx)("div",{style:{marginBottom:10,fontWeight:"bold"},children:t}),(0,f.jsx)("div",{style:{color:"#969696",fontSize:12,marginBottom:40},children:i})]})},w=function(){var e=(0,u.TL)(),t=(0,s.s0)(),i=(0,n.useState)(!0),l=(0,o.Z)(i,2),a=l[0],m=l[1],g=(0,n.useState)(!1),w=(0,o.Z)(g,2),k=w[0],S=w[1],I=(0,n.useState)(!1),F=(0,o.Z)(I,2),E=F[0],L=F[1],B=(0,n.useState)(!1),A=(0,o.Z)(B,2),N=A[0],T=A[1],z=(0,n.useState)(!1),O=(0,o.Z)(z,2),R=O[0],D=O[1],P=(0,n.useState)(!1),W=(0,o.Z)(P,2),H=W[0],M=W[1],U=(0,n.useState)(!1),$=(0,o.Z)(U,2),Y=$[0],X=$[1],K=(0,h.Yc)();(0,n.useEffect)((function(){a&&x.Z.invoke("GET","/api/v1/support/callhome").then((function(e){m(!1),L(!!e.diagnosticsStatus),M(!!e.logsStatus),T(!!e.diagnosticsStatus),D(!!e.logsStatus)})).catch((function(t){m(!1),e((0,p.Ih)(t))}))}),[a,e]);var _="regular";return!K||E===N&&H===R||(_="callAction"),(0,n.useEffect)((function(){e((0,p.Sc)("call_home"))}),[]),(0,f.jsxs)(n.Fragment,{children:[k&&(0,f.jsx)(j,{onClose:function(e){e&&m(!0),S(!1)},open:k,logsStatus:H,diagStatus:E,disable:Y}),(0,f.jsx)(Z.Z,{label:"Call Home",actions:(0,f.jsx)(C.Z,{})}),(0,f.jsxs)(c.Xgh,{children:[!K&&(0,f.jsx)(b.Z,{compactMode:!0}),(0,f.jsxs)(r.Z,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"flex-start",border:"1px solid #eaeaea",padding:{lg:"40px",xs:"15px"},flexWrap:"wrap",gap:{lg:"55px",xs:"20px"},height:{md:"calc(100vh - 120px)",xs:"100%"},flexFlow:{lg:"row",xs:"column"}},children:[(0,f.jsx)(r.Z,{sx:{border:"1px solid #eaeaea",flex:{md:2,xs:1},width:{lg:"auto",xs:"100%"},padding:{lg:"40px",xs:"15px"}},children:a?(0,f.jsx)("span",{style:{marginLeft:5},children:(0,f.jsx)(c.aNw,{style:{width:16,height:16}})}):(0,f.jsxs)(n.Fragment,{children:[(0,f.jsxs)("div",{style:{marginBottom:25},children:[(0,f.jsx)(y.Z,{value:"enableDiag",id:"enableDiag",name:"enableDiag",checked:E,onChange:function(e){L(e.target.checked)},label:"Daily Health Report",disabled:!K}),(0,f.jsx)(v,{title:"When you enable diagnostics",text:"Daily Health Report enables you to proactively identify potential issues in your deployment before they escalate."})]}),(0,f.jsxs)("div",{children:[(0,f.jsx)(y.Z,{value:"enableLogs",id:"enableLogs",name:"enableLogs",checked:H,onChange:function(e){M(e.target.checked)},label:"Live Error Logs",disabled:!K}),(0,f.jsx)(v,{title:"When you enable logs",text:"Live Error Logs will enable MinIO's support team and automatic diagnostics system to catch failures early."})]}),(0,f.jsxs)(r.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",marginTop:"55px",gap:"0px 10px"},children:[(N||R)&&(0,f.jsx)(c.zxk,{id:"callhome-action",variant:"secondary","data-test-id":"call-home-toggle-button",onClick:function(){X(!0),S(!0)},disabled:a,children:"Disable Call Home"}),(0,f.jsx)(c.zxk,{id:"callhome-action",type:"button",variant:_,"data-test-id":"call-home-toggle-button",onClick:function(){K?(X(!1),S(!0)):t("/support/register")},disabled:a,children:"Save Configuration"})]})]})}),(0,f.jsx)(r.Z,{sx:{flex:1,minWidth:{md:"365px",xs:"100%"},width:"100%"},children:(0,f.jsx)(c.KfX,{title:"",iconComponent:null,help:(0,f.jsxs)(n.Fragment,{children:[(0,f.jsxs)(r.Z,{sx:{marginTop:"-25px",fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center",justifyContent:"flex-start",padding:"2px"},children:[(0,f.jsx)(r.Z,{sx:{backgroundColor:"#07193E",height:"15px",width:"15px",display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"50%",marginRight:"18px",padding:"3px","& .min-icon":{height:"11px",width:"11px",fill:"#ffffff"}},children:(0,f.jsx)(c.o0P,{})}),"Learn more about Call Home"]}),(0,f.jsx)(r.Z,{sx:{display:"flex",flexFlow:"column",fontSize:"14px",flex:"2",marginTop:"10px"},children:(0,f.jsxs)(r.Z,{children:["Enabling Call Home sends cluster health & status to your registered MinIO Subscription Network account every 24 hours.",(0,f.jsx)("br",{}),(0,f.jsx)("br",{}),"This helps the MinIO support team to provide quick incident responses along with suggestions for possible improvements that can be made to your MinIO instances.",(0,f.jsx)("br",{}),(0,f.jsx)("br",{}),"Your cluster must be"," ",(0,f.jsx)(d.rU,{to:"/support/register",children:"registered"})," in the MinIO Subscription Network (SUBNET) before enabling this feature."]})})]})})})]})]})]})},k=(0,l.Z)(n.lazy((function(){return Promise.all([i.e(5994),i.e(5473),i.e(7391),i.e(8833)]).then(i.bind(i,58833))}))),S=(0,l.Z)(n.lazy((function(){return Promise.all([i.e(5994),i.e(5473),i.e(7391),i.e(4670),i.e(1516)]).then(i.bind(i,51516))}))),I=(0,l.Z)(n.lazy((function(){return i.e(483).then(i.bind(i,70483))}))),F=function(){return(0,f.jsxs)(s.Z5,{children:[(0,f.jsx)(s.AW,{path:"register",element:(0,f.jsx)(S,{})}),(0,f.jsx)(s.AW,{path:"profile",element:(0,f.jsx)(I,{})}),(0,f.jsx)(s.AW,{path:"call-home",element:(0,f.jsx)(w,{})}),(0,f.jsx)(s.AW,{path:"inspect",element:(0,f.jsx)(k,{})}),(0,f.jsx)(s.AW,{path:"*",element:(0,f.jsx)(a.Z,{})})]})}}}]); -//# sourceMappingURL=3067.1b1cbcb7.chunk.js.map \ No newline at end of file +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[3067],{75578:function(e,t,i){var n=i(1413),s=i(72791),l=i(80184);t.Z=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(i){return(0,l.jsx)(s.Suspense,{fallback:t,children:(0,l.jsx)(e,(0,n.Z)({},i))})}}},81159:function(e,t,i){var n=i(4942),s=i(1413),l=i(72791),a=i(11135),o=i(25787),r=i(9955),c=i(30829),d=i(20068),x=i(20890),p=i(61889),u=i(23814),h=i(29945),m=i(28182),g=i(80184),f=(0,o.Z)((function(e){return{root:{width:50,height:24,padding:0,margin:0},switchBase:{padding:1,"&$checked":{transform:"translateX(24px)",color:e.palette.common.white,"& + $track":{backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,border:"none"}},"&$focusVisible $thumb":{color:"#4CCB92",border:"6px solid #fff"}},thumb:{width:22,height:22,backgroundColor:"#FAFAFA",border:"2px solid #FFFFFF",marginLeft:1},track:{borderRadius:12,backgroundColor:"#E2E2E2",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,transition:e.transitions.create(["background-color","border"])},checked:{},focusVisible:{},switchContainer:{display:"flex",alignItems:"center",justifyContent:"flex-end"}}}))(r.Z);t.Z=(0,o.Z)((function(e){return(0,a.Z)((0,s.Z)((0,s.Z)({indicatorLabelOn:{fontWeight:"bold",color:"#081C42 !important"},indicatorLabel:{fontSize:12,color:"#E2E2E2",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"},tooltip:{fontSize:16}},u.OR),u.YI))}))((function(e){var t=e.label,i=void 0===t?"":t,a=e.onChange,o=e.value,r=e.id,u=e.name,j=e.checked,b=void 0!==j&&j,y=e.disabled,Z=void 0!==y&&y,C=e.switchOnly,v=void 0!==C&&C,w=e.tooltip,k=void 0===w?"":w,S=e.description,I=void 0===S?"":S,F=e.classes,E=e.indicatorLabels,L=e.extraInputProps,B=void 0===L?{}:L,A=(0,g.jsxs)(l.Fragment,{children:[!v&&(0,g.jsx)("span",{className:(0,m.Z)(F.indicatorLabel,(0,n.Z)({},F.indicatorLabelOn,!b)),children:E&&E.length>1?E[1]:"OFF"}),(0,g.jsx)(f,{checked:b,onChange:a,color:"primary",name:u,inputProps:(0,s.Z)({"aria-label":"primary checkbox"},B),disabled:Z,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:o,id:r}),!v&&(0,g.jsx)("span",{className:(0,m.Z)(F.indicatorLabel,(0,n.Z)({},F.indicatorLabelOn,b)),children:E?E[0]:"ON"})]});return v?A:(0,g.jsx)("div",{children:(0,g.jsxs)(p.ZP,{container:!0,alignItems:"center",children:[(0,g.jsx)(p.ZP,{item:!0,xs:12,sm:8,md:8,children:""!==i&&(0,g.jsxs)(c.Z,{htmlFor:r,className:F.inputLabel,children:[(0,g.jsx)("span",{children:i}),""!==k&&(0,g.jsx)("div",{className:F.tooltipContainer,children:(0,g.jsx)(d.Z,{title:k,placement:"top-start",children:(0,g.jsx)("div",{className:F.tooltip,children:(0,g.jsx)(h.byK,{})})})})]})}),(0,g.jsx)(p.ZP,{item:!0,xs:12,sm:""!==i?4:12,md:""!==i?4:12,textAlign:"right",justifyContent:"end",className:F.switchContainer,children:A}),""!==I&&(0,g.jsx)(p.ZP,{item:!0,xs:12,textAlign:"left",children:(0,g.jsx)(x.Z,{component:"p",className:F.fieldDescription,children:I})})]})})}))},31460:function(e,t,i){var n=i(72791),s=i(57689),l=i(64554),a=i(29945),o=i(80184);t.Z=function(e){var t=e.compactMode,i=void 0!==t&&t,r=(0,s.s0)(),c=(0,o.jsx)(a.zxk,{id:"go-to-register",type:"submit",variant:"callAction",color:"primary",onClick:function(){return r("/support/register")},children:"Register your Cluster"}),d="Use your MinIO Subscription Network login credentials to register this cluster.";return i?(0,o.jsxs)(n.Fragment,{children:[(0,o.jsx)(a.rjZ,{sx:{"& div.leftItems":{marginBottom:0}},children:(0,o.jsx)(a.KfX,{title:(0,o.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",flexGrow:1},children:[(0,o.jsx)("span",{children:d})," ",c]}),iconComponent:(0,o.jsx)(a.e6P,{}),help:(0,o.jsx)(n.Fragment,{})})}),(0,o.jsx)("br",{})]}):(0,o.jsx)(l.Z,{sx:{padding:"25px",border:"1px solid #eaeaea",display:"flex",alignItems:"center",justifyContent:"center",flexFlow:{sm:"row",xs:"column"},marginBottom:"15px"},children:(0,o.jsxs)(a.rjZ,{container:!0,children:[(0,o.jsx)(a.rjZ,{item:!0,xs:12,children:(0,o.jsx)(l.Z,{sx:{marginRight:"8px",fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center","& .min-icon":{width:"83px",height:"14px",marginLeft:"5px",marginRight:"5px"}},children:"Register your cluster"})}),(0,o.jsx)(a.rjZ,{item:!0,xs:12,children:(0,o.jsx)(l.Z,{sx:{display:"flex",flexFlow:{xs:"column",md:"row"}},children:(0,o.jsxs)(l.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,o.jsx)(l.Z,{sx:{fontSize:"16px",display:"flex",flexFlow:"column",marginTop:"15px",marginBottom:"15px"},children:d}),(0,o.jsx)(l.Z,{sx:{flex:"1"},children:(0,o.jsx)(l.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:c})})]})})})]})})}},73067:function(e,t,i){i.r(t),i.d(t,{default:function(){return F}});var n=i(72791),s=i(57689),l=i(75578),a=i(50099),o=i(29439),r=i(64554),c=i(29945),d=i(11087),x=i(81207),p=i(87995),u=i(81551),h=i(9478),m=i(40986),g=i(56028),f=i(80184),j=function(e){var t=e.onClose,i=e.diagStatus,s=e.logsStatus,l=e.open,a=e.disable,r=void 0!==a&&a,d=(0,u.TL)(),h=(0,n.useState)(!1),j=(0,o.Z)(h,2),b=j[0],y=j[1],Z=function(){y(!0),x.Z.invoke("PUT","/api/v1/support/callhome",{diagState:!r&&i,logsState:!r&&s}).then((function(e){d((0,p.y1)("Configuration saved successfully")),y(!1),t(!0)})).catch((function(e){y(!1),d((0,p.Ih)(e))}))};return(0,f.jsx)(g.Z,{modalOpen:l,title:r?"Disable Call Home":"Edit Call Home Configurations",onClose:function(){return t(!1)},titleIcon:(0,f.jsx)(c.o0P,{}),children:r?(0,f.jsxs)(n.Fragment,{children:["Please Acknowledge that after doing this action, we will no longer receive updated cluster information automatically, losing the potential benefits that Call Home provides to your MinIO cluster.",(0,f.jsx)(c.rjZ,{item:!0,xs:12,sx:{margin:"15px 0"},children:"Are you sure you want to disable SUBNET Call Home?"}),(0,f.jsx)("br",{}),b&&(0,f.jsx)(c.rjZ,{item:!0,xs:12,sx:{marginBottom:10},children:(0,f.jsx)(m.Z,{})}),(0,f.jsxs)(c.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end"},children:[(0,f.jsx)(c.zxk,{id:"reset",type:"button",variant:"regular",disabled:b,onClick:function(){return t(!1)},label:"Cancel",sx:{marginRight:10}}),(0,f.jsx)(c.zxk,{id:"save-lifecycle",type:"submit",variant:"secondary",color:"primary",disabled:b,label:"Yes, Disable Call Home",onClick:Z})]})]}):(0,f.jsxs)(n.Fragment,{children:["Are you sure you want to change the following configurations for SUBNET Call Home:",(0,f.jsxs)(c.rjZ,{item:!0,sx:{margin:"20px 0",display:"flex",flexDirection:"column",gap:15},children:[(0,f.jsxs)(c.rjZ,{item:!0,sx:{display:"flex",alignItems:"center",gap:10},children:[(0,f.jsx)(c.J$M,{style:{fill:i?"#4CCB92":"#C83B51",width:20}}),(0,f.jsxs)("span",{children:[(0,f.jsx)("strong",{children:i?"Enable":"Disable"})," - Send Diagnostics Information to SUBNET"]})]}),(0,f.jsxs)(c.rjZ,{item:!0,sx:{display:"flex",alignItems:"center",gap:10},children:[(0,f.jsx)(c.J$M,{style:{fill:s?"#4CCB92":"#C83B51",width:20}}),(0,f.jsxs)("span",{children:[(0,f.jsx)("strong",{children:s?"Enable":"Disable"})," - Send Logs Information to SUBNET"]})]})]}),(0,f.jsx)(c.rjZ,{item:!0,xs:12,sx:{margin:"15px 0"},children:"Please Acknowledge that the information provided will only be available in your SUBNET Account and it will not be shared to other persons or entities besides MinIO team and you."}),b&&(0,f.jsx)(c.rjZ,{item:!0,xs:12,sx:{marginBottom:10},children:(0,f.jsx)(m.Z,{})}),(0,f.jsxs)(c.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end"},children:[(0,f.jsx)(c.zxk,{id:"reset",type:"button",variant:"regular",disabled:b,onClick:function(){return t(!1)},label:"Cancel",sx:{marginRight:10}}),(0,f.jsx)(c.zxk,{id:"save-lifecycle",type:"submit",variant:"callAction",color:"primary",disabled:b,label:"Yes, Save this Configuration",onClick:Z})]})]})})},b=i(31460),y=i(81159),Z=i(47974),C=i(99670),v=function(e){var t=e.title,i=e.text;return(0,f.jsxs)("div",{style:{marginTop:15},children:[(0,f.jsx)("div",{style:{marginBottom:10,fontWeight:"bold"},children:t}),(0,f.jsx)("div",{style:{color:"#969696",fontSize:12,marginBottom:40},children:i})]})},w=function(){var e=(0,u.TL)(),t=(0,s.s0)(),i=(0,n.useState)(!0),l=(0,o.Z)(i,2),a=l[0],m=l[1],g=(0,n.useState)(!1),w=(0,o.Z)(g,2),k=w[0],S=w[1],I=(0,n.useState)(!1),F=(0,o.Z)(I,2),E=F[0],L=F[1],B=(0,n.useState)(!1),A=(0,o.Z)(B,2),N=A[0],T=A[1],z=(0,n.useState)(!1),O=(0,o.Z)(z,2),R=O[0],D=O[1],P=(0,n.useState)(!1),W=(0,o.Z)(P,2),H=W[0],M=W[1],U=(0,n.useState)(!1),$=(0,o.Z)(U,2),Y=$[0],X=$[1],K=(0,h.Yc)();(0,n.useEffect)((function(){a&&x.Z.invoke("GET","/api/v1/support/callhome").then((function(e){m(!1),L(!!e.diagnosticsStatus),M(!!e.logsStatus),T(!!e.diagnosticsStatus),D(!!e.logsStatus)})).catch((function(t){m(!1),e((0,p.Ih)(t))}))}),[a,e]);var _="regular";return!K||E===N&&H===R||(_="callAction"),(0,n.useEffect)((function(){e((0,p.Sc)("call_home"))}),[]),(0,f.jsxs)(n.Fragment,{children:[k&&(0,f.jsx)(j,{onClose:function(e){e&&m(!0),S(!1)},open:k,logsStatus:H,diagStatus:E,disable:Y}),(0,f.jsx)(Z.Z,{label:"Call Home",actions:(0,f.jsx)(C.Z,{})}),(0,f.jsxs)(c.Xgh,{children:[!K&&(0,f.jsx)(b.Z,{compactMode:!0}),(0,f.jsxs)(r.Z,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"flex-start",border:"1px solid #eaeaea",padding:{lg:"40px",xs:"15px"},flexWrap:"wrap",gap:{lg:"55px",xs:"20px"},height:{md:"calc(100vh - 120px)",xs:"100%"},flexFlow:{lg:"row",xs:"column"}},children:[(0,f.jsx)(r.Z,{sx:{border:"1px solid #eaeaea",flex:{md:2,xs:1},width:{lg:"auto",xs:"100%"},padding:{lg:"40px",xs:"15px"}},children:a?(0,f.jsx)("span",{style:{marginLeft:5},children:(0,f.jsx)(c.aNw,{style:{width:16,height:16}})}):(0,f.jsxs)(n.Fragment,{children:[(0,f.jsxs)("div",{style:{marginBottom:25},children:[(0,f.jsx)(y.Z,{value:"enableDiag",id:"enableDiag",name:"enableDiag",checked:E,onChange:function(e){L(e.target.checked)},label:"Daily Health Report",disabled:!K}),(0,f.jsx)(v,{title:"When you enable diagnostics",text:"Daily Health Report enables you to proactively identify potential issues in your deployment before they escalate."})]}),(0,f.jsxs)("div",{children:[(0,f.jsx)(y.Z,{value:"enableLogs",id:"enableLogs",name:"enableLogs",checked:H,onChange:function(e){M(e.target.checked)},label:"Live Error Logs",disabled:!K}),(0,f.jsx)(v,{title:"When you enable logs",text:"Live Error Logs will enable MinIO's support team and automatic diagnostics system to catch failures early."})]}),(0,f.jsxs)(r.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",marginTop:"55px",gap:"0px 10px"},children:[(N||R)&&(0,f.jsx)(c.zxk,{id:"callhome-action",variant:"secondary","data-test-id":"call-home-toggle-button",onClick:function(){X(!0),S(!0)},disabled:a,children:"Disable Call Home"}),(0,f.jsx)(c.zxk,{id:"callhome-action",type:"button",variant:_,"data-test-id":"call-home-toggle-button",onClick:function(){K?(X(!1),S(!0)):t("/support/register")},disabled:a,children:"Save Configuration"})]})]})}),(0,f.jsx)(r.Z,{sx:{flex:1,minWidth:{md:"365px",xs:"100%"},width:"100%"},children:(0,f.jsx)(c.KfX,{title:"",iconComponent:null,help:(0,f.jsxs)(n.Fragment,{children:[(0,f.jsxs)(r.Z,{sx:{marginTop:"-25px",fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center",justifyContent:"flex-start",padding:"2px"},children:[(0,f.jsx)(r.Z,{sx:{backgroundColor:"#07193E",height:"15px",width:"15px",display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"50%",marginRight:"18px",padding:"3px","& .min-icon":{height:"11px",width:"11px",fill:"#ffffff"}},children:(0,f.jsx)(c.o0P,{})}),"Learn more about Call Home"]}),(0,f.jsx)(r.Z,{sx:{display:"flex",flexFlow:"column",fontSize:"14px",flex:"2",marginTop:"10px"},children:(0,f.jsxs)(r.Z,{children:["Enabling Call Home sends cluster health & status to your registered MinIO Subscription Network account every 24 hours.",(0,f.jsx)("br",{}),(0,f.jsx)("br",{}),"This helps the MinIO support team to provide quick incident responses along with suggestions for possible improvements that can be made to your MinIO instances.",(0,f.jsx)("br",{}),(0,f.jsx)("br",{}),"Your cluster must be"," ",(0,f.jsx)(d.rU,{to:"/support/register",children:"registered"})," in the MinIO Subscription Network (SUBNET) before enabling this feature."]})})]})})})]})]})]})},k=(0,l.Z)(n.lazy((function(){return Promise.all([i.e(5473),i.e(1715),i.e(5994),i.e(7391),i.e(8833)]).then(i.bind(i,58833))}))),S=(0,l.Z)(n.lazy((function(){return Promise.all([i.e(5473),i.e(1715),i.e(5994),i.e(7391),i.e(1516)]).then(i.bind(i,51516))}))),I=(0,l.Z)(n.lazy((function(){return i.e(483).then(i.bind(i,70483))}))),F=function(){return(0,f.jsxs)(s.Z5,{children:[(0,f.jsx)(s.AW,{path:"register",element:(0,f.jsx)(S,{})}),(0,f.jsx)(s.AW,{path:"profile",element:(0,f.jsx)(I,{})}),(0,f.jsx)(s.AW,{path:"call-home",element:(0,f.jsx)(w,{})}),(0,f.jsx)(s.AW,{path:"inspect",element:(0,f.jsx)(k,{})}),(0,f.jsx)(s.AW,{path:"*",element:(0,f.jsx)(a.Z,{})})]})}}}]); +//# sourceMappingURL=3067.10ab217f.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/3067.1b1cbcb7.chunk.js.map b/portal-ui/build/static/js/3067.10ab217f.chunk.js.map similarity index 99% rename from portal-ui/build/static/js/3067.1b1cbcb7.chunk.js.map rename to portal-ui/build/static/js/3067.10ab217f.chunk.js.map index 8eb76bead..3be794619 100644 --- a/portal-ui/build/static/js/3067.1b1cbcb7.chunk.js.map +++ b/portal-ui/build/static/js/3067.10ab217f.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/3067.1b1cbcb7.chunk.js","mappings":"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","sources":["screens/Console/Common/Components/withSuspense.tsx","screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Support/RegisterCluster.tsx","screens/Console/Support/CallHomeConfirmation.tsx","screens/Console/Support/CallHome.tsx","screens/Console/Tools/Tools.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input/Input\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n checked: boolean;\n switchOnly?: boolean;\n indicatorLabels?: string[];\n extraInputProps?: StandardInputProps[\"inputProps\"];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n indicatorLabelOn: {\n fontWeight: \"bold\",\n color: \"#081C42 !important\",\n },\n indicatorLabel: {\n fontSize: 12,\n color: \"#E2E2E2\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n tooltip: {\n fontSize: 16,\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles((theme) => ({\n root: {\n width: 50,\n height: 24,\n padding: 0,\n margin: 0,\n },\n switchBase: {\n padding: 1,\n \"&$checked\": {\n transform: \"translateX(24px)\",\n color: theme.palette.common.white,\n \"& + $track\": {\n backgroundColor: \"#4CCB92\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n border: \"none\",\n },\n },\n \"&$focusVisible $thumb\": {\n color: \"#4CCB92\",\n border: \"6px solid #fff\",\n },\n },\n thumb: {\n width: 22,\n height: 22,\n backgroundColor: \"#FAFAFA\",\n border: \"2px solid #FFFFFF\",\n marginLeft: 1,\n },\n track: {\n borderRadius: 24 / 2,\n backgroundColor: \"#E2E2E2\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n transition: theme.transitions.create([\"background-color\", \"border\"]),\n },\n checked: {},\n focusVisible: {},\n switchContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n}))(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n classes,\n indicatorLabels,\n extraInputProps = {},\n}: IFormSwitch) => {\n const switchComponent = (\n \n {!switchOnly && (\n \n {indicatorLabels && indicatorLabels.length > 1\n ? indicatorLabels[1]\n : \"OFF\"}\n \n )}\n \n {!switchOnly && (\n \n {indicatorLabels ? indicatorLabels[0] : \"ON\"}\n \n )}\n \n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n

\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n \n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { Box } from \"@mui/material\";\nimport { Button, Grid, HelpBox, WarnIcon } from \"mds\";\n\ninterface IRegisterCluster {\n compactMode?: boolean;\n}\n\nconst RegisterCluster = ({ compactMode = false }: IRegisterCluster) => {\n const navigate = useNavigate();\n\n const redirectButton = (\n navigate(\"/support/register\")}\n >\n Register your Cluster\n \n );\n\n const registerMessage =\n \"Use your MinIO Subscription Network login credentials to register this cluster.\";\n\n if (compactMode) {\n return (\n \n \n \n {registerMessage} {redirectButton}\n \n }\n iconComponent={}\n help={}\n />\n \n
\n
\n );\n }\n\n return (\n \n \n \n \n Register your cluster\n \n \n \n \n \n \n {registerMessage}\n \n \n \n {redirectButton}\n \n \n \n \n \n \n \n );\n};\n\nexport default RegisterCluster;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Button, CallHomeMenuIcon, CircleIcon, Grid } from \"mds\";\nimport { LinearProgress } from \"@mui/material\";\nimport api from \"../../../common/api\";\nimport { ICallHomeResponse } from \"./types\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { setErrorSnackMessage, setSnackBarMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\n\ninterface ICallHomeConfirmation {\n onClose: (refresh: boolean) => any;\n open: boolean;\n diagStatus: boolean;\n logsStatus: boolean;\n disable?: boolean;\n}\n\nconst CallHomeConfirmation = ({\n onClose,\n diagStatus,\n logsStatus,\n open,\n disable = false,\n}: ICallHomeConfirmation) => {\n const dispatch = useAppDispatch();\n\n const [loading, setLoading] = useState(false);\n\n const onConfirmAction = () => {\n setLoading(true);\n api\n .invoke(\"PUT\", `/api/v1/support/callhome`, {\n diagState: disable ? false : diagStatus,\n logsState: disable ? false : logsStatus,\n })\n .then((res: ICallHomeResponse) => {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n setLoading(false);\n onClose(true);\n })\n .catch((err: ErrorResponseHandler) => {\n setLoading(false);\n dispatch(setErrorSnackMessage(err));\n });\n };\n\n return (\n onClose(false)}\n titleIcon={}\n >\n {disable ? (\n \n Please Acknowledge that after doing this action, we will no longer\n receive updated cluster information automatically, losing the\n potential benefits that Call Home provides to your MinIO cluster.\n \n Are you sure you want to disable SUBNET Call Home?\n \n
\n {loading && (\n \n \n \n )}\n \n onClose(false)}\n label={\"Cancel\"}\n sx={{\n marginRight: 10,\n }}\n />\n \n \n
\n ) : (\n \n Are you sure you want to change the following configurations for\n SUBNET Call Home:\n \n \n \n \n {diagStatus ? \"Enable\" : \"Disable\"} - Send\n Diagnostics Information to SUBNET\n \n \n \n \n \n {logsStatus ? \"Enable\" : \"Disable\"} - Send Logs\n Information to SUBNET\n \n \n \n \n Please Acknowledge that the information provided will only be\n available in your SUBNET Account and it will not be shared to other\n persons or entities besides MinIO team and you.\n \n {loading && (\n \n \n \n )}\n \n onClose(false)}\n label={\"Cancel\"}\n sx={{\n marginRight: 10,\n }}\n />\n \n \n \n )}\n \n );\n};\n\nexport default CallHomeConfirmation;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Box } from \"@mui/material\";\nimport { Button, CallHomeMenuIcon, HelpBox, Loader, PageLayout } from \"mds\";\nimport { Link, useNavigate } from \"react-router-dom\";\nimport api from \"../../../common/api\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { ICallHomeResponse } from \"./types\";\nimport { registeredCluster } from \"../../../config\";\nimport CallHomeConfirmation from \"./CallHomeConfirmation\";\nimport RegisterCluster from \"./RegisterCluster\";\nimport FormSwitchWrapper from \"../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst PromoLabels = ({ title, text }: { title: string; text: string }) => {\n return (\n
\n
{title}
\n
\n {text}\n
\n
\n );\n};\n\nconst CallHome = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const [loading, setLoading] = useState(true);\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [diagEnabled, setDiagEnabled] = useState(false);\n const [oDiagEnabled, setODiagEnabled] = useState(false);\n const [oLogsEnabled, setOLogsEnabled] = useState(false);\n const [logsEnabled, setLogsEnabled] = useState(false);\n const [disableMode, setDisableMode] = useState(false);\n\n const clusterRegistered = registeredCluster();\n\n useEffect(() => {\n if (loading) {\n api\n .invoke(\"GET\", `/api/v1/support/callhome`)\n .then((res: ICallHomeResponse) => {\n setLoading(false);\n\n setDiagEnabled(!!res.diagnosticsStatus);\n setLogsEnabled(!!res.logsStatus);\n\n setODiagEnabled(!!res.diagnosticsStatus);\n setOLogsEnabled(!!res.logsStatus);\n })\n .catch((err: ErrorResponseHandler) => {\n setLoading(false);\n dispatch(setErrorSnackMessage(err));\n });\n }\n }, [loading, dispatch]);\n\n const callHomeClose = (refresh: boolean) => {\n if (refresh) {\n setLoading(true);\n }\n setShowConfirmation(false);\n };\n\n const confirmCallHomeAction = () => {\n if (!clusterRegistered) {\n navigate(\"/support/register\");\n return;\n }\n setDisableMode(false);\n setShowConfirmation(true);\n };\n\n const disableCallHomeAction = () => {\n setDisableMode(true);\n setShowConfirmation(true);\n };\n\n let mainVariant: \"regular\" | \"callAction\" = \"regular\";\n\n if (\n clusterRegistered &&\n (diagEnabled !== oDiagEnabled || logsEnabled !== oLogsEnabled)\n ) {\n mainVariant = \"callAction\";\n }\n\n useEffect(() => {\n dispatch(setHelpName(\"call_home\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n {showConfirmation && (\n \n )}\n } />\n \n {!clusterRegistered && }\n \n \n {loading ? (\n \n \n \n ) : (\n \n
\n ) => {\n setDiagEnabled(event.target.checked);\n }}\n label={\"Daily Health Report\"}\n disabled={!clusterRegistered}\n />\n \n
\n
\n ) => {\n setLogsEnabled(event.target.checked);\n }}\n label={\"Live Error Logs\"}\n disabled={!clusterRegistered}\n />\n \n
\n \n {(oDiagEnabled || oLogsEnabled) && (\n \n Disable Call Home\n \n )}\n \n Save Configuration\n \n \n
\n )}\n \n \n \n \n \n \n \n Learn more about Call Home\n \n\n \n \n Enabling Call Home sends cluster health & status to your\n registered MinIO Subscription Network account every 24\n hours.\n
\n
\n This helps the MinIO support team to provide quick\n incident responses along with suggestions for possible\n improvements that can be made to your MinIO instances.\n
\n
\n Your cluster must be{\" \"}\n registered in the\n MinIO Subscription Network (SUBNET) before enabling this\n feature.\n
\n \n
\n }\n />\n \n \n \n
\n );\n};\n\nexport default CallHome;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Route, Routes } from \"react-router-dom\";\n\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport NotFoundPage from \"../../NotFoundPage\";\nimport CallHome from \"../Support/CallHome\";\n\nconst Inspect = withSuspense(React.lazy(() => import(\"./Inspect\")));\nconst Register = withSuspense(React.lazy(() => import(\"../Support/Register\")));\nconst Profile = withSuspense(React.lazy(() => import(\"../Support/Profile\")));\n\nconst Tools = () => {\n return (\n \n } />\n } />\n } />\n } />\n } />\n \n );\n};\n\nexport default Tools;\n"],"names":["WrappedComponent","fallback","arguments","length","undefined","props","_jsx","Suspense","children","_objectSpread","StyledSwitch","withStyles","theme","root","width","height","padding","margin","switchBase","transform","color","palette","common","white","backgroundColor","boxShadow","opacity","border","thumb","marginLeft","track","borderRadius","transition","transitions","create","checked","focusVisible","switchContainer","display","alignItems","justifyContent","Switch","createStyles","indicatorLabelOn","fontWeight","indicatorLabel","fontSize","fieldDescription","marginTop","tooltip","actionsTray","fieldBasic","_ref","_ref$label","label","onChange","value","id","name","_ref$checked","_ref$disabled","disabled","_ref$switchOnly","switchOnly","_ref$tooltip","_ref$description","description","classes","indicatorLabels","_ref$extraInputProps","extraInputProps","switchComponent","_jsxs","React","className","clsx","_defineProperty","inputProps","disableRipple","disableFocusRipple","disableTouchRipple","Grid","container","item","xs","sm","md","InputLabel","htmlFor","inputLabel","tooltipContainer","Tooltip","title","placement","HelpIcon","textAlign","Typography","component","_ref$compactMode","compactMode","navigate","useNavigate","redirectButton","Button","type","variant","onClick","registerMessage","Fragment","sx","marginBottom","HelpBox","style","flexGrow","iconComponent","WarnIcon","help","Box","flexFlow","marginRight","flex","onClose","diagStatus","logsStatus","open","_ref$disable","disable","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","loading","setLoading","onConfirmAction","api","invoke","diagState","logsState","then","res","setSnackBarMessage","catch","err","setErrorSnackMessage","ModalWrapper","modalOpen","titleIcon","CallHomeMenuIcon","LinearProgress","flexDirection","gap","CircleIcon","fill","PromoLabels","text","_useState3","_useState4","showConfirmation","setShowConfirmation","_useState5","_useState6","diagEnabled","setDiagEnabled","_useState7","_useState8","oDiagEnabled","setODiagEnabled","_useState9","_useState10","oLogsEnabled","setOLogsEnabled","_useState11","_useState12","logsEnabled","setLogsEnabled","_useState13","_useState14","disableMode","setDisableMode","clusterRegistered","registeredCluster","useEffect","diagnosticsStatus","mainVariant","setHelpName","CallHomeConfirmation","refresh","PageHeaderWrapper","actions","HelpMenu","PageLayout","RegisterCluster","lg","flexWrap","Loader","FormSwitchWrapper","event","target","minWidth","Link","to","Inspect","withSuspense","Register","Profile","Routes","Route","path","element","CallHome","NotFoundPage"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/3067.10ab217f.chunk.js","mappings":"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","sources":["screens/Console/Common/Components/withSuspense.tsx","screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Support/RegisterCluster.tsx","screens/Console/Support/CallHomeConfirmation.tsx","screens/Console/Support/CallHome.tsx","screens/Console/Tools/Tools.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input/Input\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n checked: boolean;\n switchOnly?: boolean;\n indicatorLabels?: string[];\n extraInputProps?: StandardInputProps[\"inputProps\"];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n indicatorLabelOn: {\n fontWeight: \"bold\",\n color: \"#081C42 !important\",\n },\n indicatorLabel: {\n fontSize: 12,\n color: \"#E2E2E2\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n tooltip: {\n fontSize: 16,\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles((theme) => ({\n root: {\n width: 50,\n height: 24,\n padding: 0,\n margin: 0,\n },\n switchBase: {\n padding: 1,\n \"&$checked\": {\n transform: \"translateX(24px)\",\n color: theme.palette.common.white,\n \"& + $track\": {\n backgroundColor: \"#4CCB92\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n border: \"none\",\n },\n },\n \"&$focusVisible $thumb\": {\n color: \"#4CCB92\",\n border: \"6px solid #fff\",\n },\n },\n thumb: {\n width: 22,\n height: 22,\n backgroundColor: \"#FAFAFA\",\n border: \"2px solid #FFFFFF\",\n marginLeft: 1,\n },\n track: {\n borderRadius: 24 / 2,\n backgroundColor: \"#E2E2E2\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n transition: theme.transitions.create([\"background-color\", \"border\"]),\n },\n checked: {},\n focusVisible: {},\n switchContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n}))(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n classes,\n indicatorLabels,\n extraInputProps = {},\n}: IFormSwitch) => {\n const switchComponent = (\n \n {!switchOnly && (\n \n {indicatorLabels && indicatorLabels.length > 1\n ? indicatorLabels[1]\n : \"OFF\"}\n \n )}\n \n {!switchOnly && (\n \n {indicatorLabels ? indicatorLabels[0] : \"ON\"}\n \n )}\n \n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n

\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n \n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { Box } from \"@mui/material\";\nimport { Button, Grid, HelpBox, WarnIcon } from \"mds\";\n\ninterface IRegisterCluster {\n compactMode?: boolean;\n}\n\nconst RegisterCluster = ({ compactMode = false }: IRegisterCluster) => {\n const navigate = useNavigate();\n\n const redirectButton = (\n navigate(\"/support/register\")}\n >\n Register your Cluster\n \n );\n\n const registerMessage =\n \"Use your MinIO Subscription Network login credentials to register this cluster.\";\n\n if (compactMode) {\n return (\n \n \n \n {registerMessage} {redirectButton}\n \n }\n iconComponent={}\n help={}\n />\n \n
\n
\n );\n }\n\n return (\n \n \n \n \n Register your cluster\n \n \n \n \n \n \n {registerMessage}\n \n \n \n {redirectButton}\n \n \n \n \n \n \n \n );\n};\n\nexport default RegisterCluster;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Button, CallHomeMenuIcon, CircleIcon, Grid } from \"mds\";\nimport { LinearProgress } from \"@mui/material\";\nimport api from \"../../../common/api\";\nimport { ICallHomeResponse } from \"./types\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { setErrorSnackMessage, setSnackBarMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\n\ninterface ICallHomeConfirmation {\n onClose: (refresh: boolean) => any;\n open: boolean;\n diagStatus: boolean;\n logsStatus: boolean;\n disable?: boolean;\n}\n\nconst CallHomeConfirmation = ({\n onClose,\n diagStatus,\n logsStatus,\n open,\n disable = false,\n}: ICallHomeConfirmation) => {\n const dispatch = useAppDispatch();\n\n const [loading, setLoading] = useState(false);\n\n const onConfirmAction = () => {\n setLoading(true);\n api\n .invoke(\"PUT\", `/api/v1/support/callhome`, {\n diagState: disable ? false : diagStatus,\n logsState: disable ? false : logsStatus,\n })\n .then((res: ICallHomeResponse) => {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n setLoading(false);\n onClose(true);\n })\n .catch((err: ErrorResponseHandler) => {\n setLoading(false);\n dispatch(setErrorSnackMessage(err));\n });\n };\n\n return (\n onClose(false)}\n titleIcon={}\n >\n {disable ? (\n \n Please Acknowledge that after doing this action, we will no longer\n receive updated cluster information automatically, losing the\n potential benefits that Call Home provides to your MinIO cluster.\n \n Are you sure you want to disable SUBNET Call Home?\n \n
\n {loading && (\n \n \n \n )}\n \n onClose(false)}\n label={\"Cancel\"}\n sx={{\n marginRight: 10,\n }}\n />\n \n \n
\n ) : (\n \n Are you sure you want to change the following configurations for\n SUBNET Call Home:\n \n \n \n \n {diagStatus ? \"Enable\" : \"Disable\"} - Send\n Diagnostics Information to SUBNET\n \n \n \n \n \n {logsStatus ? \"Enable\" : \"Disable\"} - Send Logs\n Information to SUBNET\n \n \n \n \n Please Acknowledge that the information provided will only be\n available in your SUBNET Account and it will not be shared to other\n persons or entities besides MinIO team and you.\n \n {loading && (\n \n \n \n )}\n \n onClose(false)}\n label={\"Cancel\"}\n sx={{\n marginRight: 10,\n }}\n />\n \n \n \n )}\n \n );\n};\n\nexport default CallHomeConfirmation;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Box } from \"@mui/material\";\nimport { Button, CallHomeMenuIcon, HelpBox, Loader, PageLayout } from \"mds\";\nimport { Link, useNavigate } from \"react-router-dom\";\nimport api from \"../../../common/api\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { ICallHomeResponse } from \"./types\";\nimport { registeredCluster } from \"../../../config\";\nimport CallHomeConfirmation from \"./CallHomeConfirmation\";\nimport RegisterCluster from \"./RegisterCluster\";\nimport FormSwitchWrapper from \"../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst PromoLabels = ({ title, text }: { title: string; text: string }) => {\n return (\n
\n
{title}
\n
\n {text}\n
\n
\n );\n};\n\nconst CallHome = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const [loading, setLoading] = useState(true);\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [diagEnabled, setDiagEnabled] = useState(false);\n const [oDiagEnabled, setODiagEnabled] = useState(false);\n const [oLogsEnabled, setOLogsEnabled] = useState(false);\n const [logsEnabled, setLogsEnabled] = useState(false);\n const [disableMode, setDisableMode] = useState(false);\n\n const clusterRegistered = registeredCluster();\n\n useEffect(() => {\n if (loading) {\n api\n .invoke(\"GET\", `/api/v1/support/callhome`)\n .then((res: ICallHomeResponse) => {\n setLoading(false);\n\n setDiagEnabled(!!res.diagnosticsStatus);\n setLogsEnabled(!!res.logsStatus);\n\n setODiagEnabled(!!res.diagnosticsStatus);\n setOLogsEnabled(!!res.logsStatus);\n })\n .catch((err: ErrorResponseHandler) => {\n setLoading(false);\n dispatch(setErrorSnackMessage(err));\n });\n }\n }, [loading, dispatch]);\n\n const callHomeClose = (refresh: boolean) => {\n if (refresh) {\n setLoading(true);\n }\n setShowConfirmation(false);\n };\n\n const confirmCallHomeAction = () => {\n if (!clusterRegistered) {\n navigate(\"/support/register\");\n return;\n }\n setDisableMode(false);\n setShowConfirmation(true);\n };\n\n const disableCallHomeAction = () => {\n setDisableMode(true);\n setShowConfirmation(true);\n };\n\n let mainVariant: \"regular\" | \"callAction\" = \"regular\";\n\n if (\n clusterRegistered &&\n (diagEnabled !== oDiagEnabled || logsEnabled !== oLogsEnabled)\n ) {\n mainVariant = \"callAction\";\n }\n\n useEffect(() => {\n dispatch(setHelpName(\"call_home\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n {showConfirmation && (\n \n )}\n } />\n \n {!clusterRegistered && }\n \n \n {loading ? (\n \n \n \n ) : (\n \n
\n ) => {\n setDiagEnabled(event.target.checked);\n }}\n label={\"Daily Health Report\"}\n disabled={!clusterRegistered}\n />\n \n
\n
\n ) => {\n setLogsEnabled(event.target.checked);\n }}\n label={\"Live Error Logs\"}\n disabled={!clusterRegistered}\n />\n \n
\n \n {(oDiagEnabled || oLogsEnabled) && (\n \n Disable Call Home\n \n )}\n \n Save Configuration\n \n \n
\n )}\n \n \n \n \n \n \n \n Learn more about Call Home\n \n\n \n \n Enabling Call Home sends cluster health & status to your\n registered MinIO Subscription Network account every 24\n hours.\n
\n
\n This helps the MinIO support team to provide quick\n incident responses along with suggestions for possible\n improvements that can be made to your MinIO instances.\n
\n
\n Your cluster must be{\" \"}\n registered in the\n MinIO Subscription Network (SUBNET) before enabling this\n feature.\n
\n \n
\n }\n />\n \n \n \n
\n );\n};\n\nexport default CallHome;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Route, Routes } from \"react-router-dom\";\n\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport NotFoundPage from \"../../NotFoundPage\";\nimport CallHome from \"../Support/CallHome\";\n\nconst Inspect = withSuspense(React.lazy(() => import(\"./Inspect\")));\nconst Register = withSuspense(React.lazy(() => import(\"../Support/Register\")));\nconst Profile = withSuspense(React.lazy(() => import(\"../Support/Profile\")));\n\nconst Tools = () => {\n return (\n \n } />\n } />\n } />\n } />\n } />\n \n );\n};\n\nexport default Tools;\n"],"names":["WrappedComponent","fallback","arguments","length","undefined","props","_jsx","Suspense","children","_objectSpread","StyledSwitch","withStyles","theme","root","width","height","padding","margin","switchBase","transform","color","palette","common","white","backgroundColor","boxShadow","opacity","border","thumb","marginLeft","track","borderRadius","transition","transitions","create","checked","focusVisible","switchContainer","display","alignItems","justifyContent","Switch","createStyles","indicatorLabelOn","fontWeight","indicatorLabel","fontSize","fieldDescription","marginTop","tooltip","actionsTray","fieldBasic","_ref","_ref$label","label","onChange","value","id","name","_ref$checked","_ref$disabled","disabled","_ref$switchOnly","switchOnly","_ref$tooltip","_ref$description","description","classes","indicatorLabels","_ref$extraInputProps","extraInputProps","switchComponent","_jsxs","React","className","clsx","_defineProperty","inputProps","disableRipple","disableFocusRipple","disableTouchRipple","Grid","container","item","xs","sm","md","InputLabel","htmlFor","inputLabel","tooltipContainer","Tooltip","title","placement","HelpIcon","textAlign","Typography","component","_ref$compactMode","compactMode","navigate","useNavigate","redirectButton","Button","type","variant","onClick","registerMessage","Fragment","sx","marginBottom","HelpBox","style","flexGrow","iconComponent","WarnIcon","help","Box","flexFlow","marginRight","flex","onClose","diagStatus","logsStatus","open","_ref$disable","disable","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","loading","setLoading","onConfirmAction","api","invoke","diagState","logsState","then","res","setSnackBarMessage","catch","err","setErrorSnackMessage","ModalWrapper","modalOpen","titleIcon","CallHomeMenuIcon","LinearProgress","flexDirection","gap","CircleIcon","fill","PromoLabels","text","_useState3","_useState4","showConfirmation","setShowConfirmation","_useState5","_useState6","diagEnabled","setDiagEnabled","_useState7","_useState8","oDiagEnabled","setODiagEnabled","_useState9","_useState10","oLogsEnabled","setOLogsEnabled","_useState11","_useState12","logsEnabled","setLogsEnabled","_useState13","_useState14","disableMode","setDisableMode","clusterRegistered","registeredCluster","useEffect","diagnosticsStatus","mainVariant","setHelpName","CallHomeConfirmation","refresh","PageHeaderWrapper","actions","HelpMenu","PageLayout","RegisterCluster","lg","flexWrap","Loader","FormSwitchWrapper","event","target","minWidth","Link","to","Inspect","withSuspense","Register","Profile","Routes","Route","path","element","CallHome","NotFoundPage"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/3115.eecd6da1.chunk.js b/portal-ui/build/static/js/3115.3b6b6959.chunk.js similarity index 76% rename from portal-ui/build/static/js/3115.eecd6da1.chunk.js rename to portal-ui/build/static/js/3115.3b6b6959.chunk.js index d698d8191..743c9956a 100644 --- a/portal-ui/build/static/js/3115.eecd6da1.chunk.js +++ b/portal-ui/build/static/js/3115.3b6b6959.chunk.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[3115],{75578:function(e,n,t){var l=t(1413),r=t(72791),s=t(80184);n.Z=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(t){return(0,s.jsx)(r.Suspense,{fallback:n,children:(0,s.jsx)(e,(0,l.Z)({},t))})}}},93115:function(e,n,t){t.r(n);var l=t(72791),r=t(57689),s=t(75578),u=t(50099),a=t(80184),i=(0,s.Z)(l.lazy((function(){return Promise.all([t.e(9518),t.e(5661)]).then(t.bind(t,35661))}))),o=(0,s.Z)(l.lazy((function(){return Promise.all([t.e(5473),t.e(5004),t.e(2983),t.e(7134)]).then(t.bind(t,17134))}))),c=(0,s.Z)(l.lazy((function(){return Promise.all([t.e(5994),t.e(5473),t.e(7391),t.e(4882),t.e(3034)]).then(t.bind(t,33034))}))),h=(0,s.Z)(l.lazy((function(){return Promise.all([t.e(5994),t.e(5473),t.e(7391),t.e(4882),t.e(3138)]).then(t.bind(t,53138))})));n.default=function(){return(0,a.jsxs)(r.Z5,{children:[(0,a.jsx)(r.AW,{path:"status",element:(0,a.jsx)(i,{})}),(0,a.jsx)(r.AW,{path:"keys",element:(0,a.jsx)(o,{})}),(0,a.jsx)(r.AW,{path:"add-key",element:(0,a.jsx)(c,{})}),(0,a.jsx)(r.AW,{path:"import-key",element:(0,a.jsx)(h,{})}),(0,a.jsx)(r.AW,{path:"*",element:(0,a.jsx)(u.Z,{})})]})}}}]); -//# sourceMappingURL=3115.eecd6da1.chunk.js.map \ No newline at end of file +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[3115],{75578:function(e,n,t){var l=t(1413),r=t(72791),s=t(80184);n.Z=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(t){return(0,s.jsx)(r.Suspense,{fallback:n,children:(0,s.jsx)(e,(0,l.Z)({},t))})}}},93115:function(e,n,t){t.r(n);var l=t(72791),r=t(57689),s=t(75578),u=t(50099),a=t(80184),i=(0,s.Z)(l.lazy((function(){return Promise.all([t.e(9518),t.e(5661)]).then(t.bind(t,35661))}))),o=(0,s.Z)(l.lazy((function(){return Promise.all([t.e(5473),t.e(5004),t.e(2983),t.e(7134)]).then(t.bind(t,17134))}))),c=(0,s.Z)(l.lazy((function(){return Promise.all([t.e(5473),t.e(1715),t.e(5994),t.e(7391),t.e(3034)]).then(t.bind(t,33034))}))),h=(0,s.Z)(l.lazy((function(){return Promise.all([t.e(5473),t.e(1715),t.e(5994),t.e(7391),t.e(3138)]).then(t.bind(t,53138))})));n.default=function(){return(0,a.jsxs)(r.Z5,{children:[(0,a.jsx)(r.AW,{path:"status",element:(0,a.jsx)(i,{})}),(0,a.jsx)(r.AW,{path:"keys",element:(0,a.jsx)(o,{})}),(0,a.jsx)(r.AW,{path:"add-key",element:(0,a.jsx)(c,{})}),(0,a.jsx)(r.AW,{path:"import-key",element:(0,a.jsx)(h,{})}),(0,a.jsx)(r.AW,{path:"*",element:(0,a.jsx)(u.Z,{})})]})}}}]); +//# sourceMappingURL=3115.3b6b6959.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/3115.eecd6da1.chunk.js.map b/portal-ui/build/static/js/3115.3b6b6959.chunk.js.map similarity index 98% rename from portal-ui/build/static/js/3115.eecd6da1.chunk.js.map rename to portal-ui/build/static/js/3115.3b6b6959.chunk.js.map index eff53a8cd..b7926b9f4 100644 --- a/portal-ui/build/static/js/3115.eecd6da1.chunk.js.map +++ b/portal-ui/build/static/js/3115.3b6b6959.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/3115.eecd6da1.chunk.js","mappings":"iJAiCA,IAfA,SACEA,GAEC,IADDC,EAAmCC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,KAUtC,OARA,SAA+BG,GAC7B,OACEC,EAAAA,EAAAA,KAACC,EAAAA,SAAQ,CAACN,SAAUA,EAASO,UAC3BF,EAAAA,EAAAA,KAACN,GAAgBS,EAAAA,EAAAA,GAAA,GAAMJ,KAG7B,CAGF,C,0FCTMK,GAASC,EAAAA,EAAAA,GAAaC,EAAAA,MAAW,kBAAM,wDAAkB,KACzDC,GAAWF,EAAAA,EAAAA,GAAaC,EAAAA,MAAW,kBAAM,4EAAoB,KAC7DE,GAASH,EAAAA,EAAAA,GAAaC,EAAAA,MAAW,kBAAM,sFAAkB,KACzDG,GAAYJ,EAAAA,EAAAA,GAAaC,EAAAA,MAAW,kBAAM,sFAAqB,KAcrE,UAZkB,WAChB,OACEI,EAAAA,EAAAA,MAACC,EAAAA,GAAM,CAAAT,SAAA,EACLF,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAACC,KAAM,SAAUC,SAASd,EAAAA,EAAAA,KAACI,EAAM,OACvCJ,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAACC,KAAM,OAAQC,SAASd,EAAAA,EAAAA,KAACO,EAAQ,OACvCP,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAACC,KAAM,UAAWC,SAASd,EAAAA,EAAAA,KAACQ,EAAM,OACxCR,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAACC,KAAM,aAAcC,SAASd,EAAAA,EAAAA,KAACS,EAAS,OAC9CT,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAACC,KAAM,IAAKC,SAASd,EAAAA,EAAAA,KAACe,EAAAA,EAAY,QAG9C,C","sources":["screens/Console/Common/Components/withSuspense.tsx","screens/Console/KMS/KMSRoutes.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Route, Routes } from \"react-router-dom\";\n\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport NotFoundPage from \"../../NotFoundPage\";\n\nconst Status = withSuspense(React.lazy(() => import(\"./Status\")));\nconst ListKeys = withSuspense(React.lazy(() => import(\"./ListKeys\")));\nconst AddKey = withSuspense(React.lazy(() => import(\"./AddKey\")));\nconst ImportKey = withSuspense(React.lazy(() => import(\"./ImportKey\")));\n\nconst KMSRoutes = () => {\n return (\n \n } />\n } />\n } />\n } />\n } />\n \n );\n};\n\nexport default KMSRoutes;\n"],"names":["WrappedComponent","fallback","arguments","length","undefined","props","_jsx","Suspense","children","_objectSpread","Status","withSuspense","React","ListKeys","AddKey","ImportKey","_jsxs","Routes","Route","path","element","NotFoundPage"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/3115.3b6b6959.chunk.js","mappings":"iJAiCA,IAfA,SACEA,GAEC,IADDC,EAAmCC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,KAUtC,OARA,SAA+BG,GAC7B,OACEC,EAAAA,EAAAA,KAACC,EAAAA,SAAQ,CAACN,SAAUA,EAASO,UAC3BF,EAAAA,EAAAA,KAACN,GAAgBS,EAAAA,EAAAA,GAAA,GAAMJ,KAG7B,CAGF,C,0FCTMK,GAASC,EAAAA,EAAAA,GAAaC,EAAAA,MAAW,kBAAM,wDAAkB,KACzDC,GAAWF,EAAAA,EAAAA,GAAaC,EAAAA,MAAW,kBAAM,4EAAoB,KAC7DE,GAASH,EAAAA,EAAAA,GAAaC,EAAAA,MAAW,kBAAM,sFAAkB,KACzDG,GAAYJ,EAAAA,EAAAA,GAAaC,EAAAA,MAAW,kBAAM,sFAAqB,KAcrE,UAZkB,WAChB,OACEI,EAAAA,EAAAA,MAACC,EAAAA,GAAM,CAAAT,SAAA,EACLF,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAACC,KAAM,SAAUC,SAASd,EAAAA,EAAAA,KAACI,EAAM,OACvCJ,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAACC,KAAM,OAAQC,SAASd,EAAAA,EAAAA,KAACO,EAAQ,OACvCP,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAACC,KAAM,UAAWC,SAASd,EAAAA,EAAAA,KAACQ,EAAM,OACxCR,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAACC,KAAM,aAAcC,SAASd,EAAAA,EAAAA,KAACS,EAAS,OAC9CT,EAAAA,EAAAA,KAACY,EAAAA,GAAK,CAACC,KAAM,IAAKC,SAASd,EAAAA,EAAAA,KAACe,EAAAA,EAAY,QAG9C,C","sources":["screens/Console/Common/Components/withSuspense.tsx","screens/Console/KMS/KMSRoutes.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Route, Routes } from \"react-router-dom\";\n\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport NotFoundPage from \"../../NotFoundPage\";\n\nconst Status = withSuspense(React.lazy(() => import(\"./Status\")));\nconst ListKeys = withSuspense(React.lazy(() => import(\"./ListKeys\")));\nconst AddKey = withSuspense(React.lazy(() => import(\"./AddKey\")));\nconst ImportKey = withSuspense(React.lazy(() => import(\"./ImportKey\")));\n\nconst KMSRoutes = () => {\n return (\n \n } />\n } />\n } />\n } />\n } />\n \n );\n};\n\nexport default KMSRoutes;\n"],"names":["WrappedComponent","fallback","arguments","length","undefined","props","_jsx","Suspense","children","_objectSpread","Status","withSuspense","React","ListKeys","AddKey","ImportKey","_jsxs","Routes","Route","path","element","NotFoundPage"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/3138.314a2ab9.chunk.js b/portal-ui/build/static/js/3138.314a2ab9.chunk.js deleted file mode 100644 index 867dec743..000000000 --- a/portal-ui/build/static/js/3138.314a2ab9.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[3138],{92217:function(e,t,n){"use strict";var o=n(72791),r=n(29945),i=n(78029),a=n.n(i),c=n(27454),l=n(80184);t.Z=function(e){var t=e.value,n=e.label,i=void 0===n?"":n,s=e.tooltip,u=void 0===s?"":s,p=e.mode,d=void 0===p?"json":p,f=e.onChange,y=e.editorHeight,x=void 0===y?250:y;return(0,l.jsx)(r.pq4,{value:t,onChange:function(e){return f(e)},mode:d,tooltip:u,editorHeight:x,label:i,helpTools:(0,l.jsx)(o.Fragment,{children:(0,l.jsx)(c.Z,{tooltip:"Copy to Clipboard",children:(0,l.jsx)(a(),{text:t,children:(0,l.jsx)(r.zxk,{type:"button",id:"copy-code-mirror",icon:(0,l.jsx)(r.TIy,{}),color:"primary",variant:"regular"})})})})})}},21435:function(e,t,n){"use strict";var o=n(29439),r=n(1413),i=n(72791),a=n(27391),c=n(61889),l=n(30829),s=n(20068),u=n(13400),p=n(20165),d=n(3579),f=n(11135),y=n(72455),x=n(25787),m=n(23814),b=n(29945),h=n(28182),v=n(80184),g=(0,y.Z)((function(e){return(0,f.Z)((0,r.Z)({},m.gM))}));function j(e){var t=g();return(0,v.jsx)(a.Z,(0,r.Z)({InputProps:{classes:t}},e))}t.Z=(0,x.Z)((function(e){return(0,f.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},m.YI),m.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var t=e.label,n=e.onChange,a=e.value,f=e.id,y=e.name,x=e.type,m=void 0===x?"text":x,g=e.autoComplete,C=void 0===g?"off":g,w=e.disabled,O=void 0!==w&&w,Z=e.multiline,P=void 0!==Z&&Z,k=e.tooltip,S=void 0===k?"":k,D=e.index,R=void 0===D?0:D,E=e.error,T=void 0===E?"":E,I=e.required,A=void 0!==I&&I,_=e.placeholder,N=void 0===_?"":_,K=e.min,F=e.max,M=e.overlayId,B=e.overlayIcon,L=void 0===B?null:B,z=e.overlayObject,H=void 0===z?null:z,U=e.extraInputProps,W=void 0===U?{}:U,Y=e.overlayAction,q=e.noLabelMinWidth,X=void 0!==q&&q,G=e.pattern,J=void 0===G?"":G,V=e.autoFocus,Q=void 0!==V&&V,$=e.classes,ee=e.className,te=void 0===ee?"":ee,ne=e.onKeyPress,oe=e.onFocus,re=e.onPaste,ie=(0,r.Z)({"data-index":R},W),ae=(0,i.useState)(!1),ce=(0,o.Z)(ae,2),le=ce[0],se=ce[1];"number"===m&&K&&(ie.min=K),"number"===m&&F&&(ie.max=F),""!==J&&(ie.pattern=J);var ue=L,pe=m;return"password"===m&&null===L&&(ue=le?(0,v.jsx)(p.Z,{}):(0,v.jsx)(d.Z,{}),pe=le?"text":"password"),(0,v.jsx)(i.Fragment,{children:(0,v.jsxs)(c.ZP,{container:!0,className:(0,h.Z)(""!==te?te:"",""!==T?$.errorInField:$.inputBoxContainer),children:[""!==t&&(0,v.jsxs)(l.Z,{htmlFor:f,className:X?$.noMinWidthLabel:$.inputLabel,children:[(0,v.jsxs)("span",{children:[t,A?"*":""]}),""!==S&&(0,v.jsx)("div",{className:$.tooltipContainer,children:(0,v.jsx)(s.Z,{title:S,placement:"top-start",children:(0,v.jsx)("div",{className:$.tooltip,children:(0,v.jsx)(b.byK,{})})})})]}),(0,v.jsxs)("div",{className:$.textBoxContainer,children:[(0,v.jsx)(j,{id:f,name:y,fullWidth:!0,value:a,autoFocus:Q,disabled:O,onChange:n,type:pe,multiline:P,autoComplete:C,inputProps:ie,error:""!==T,helperText:T,placeholder:N,className:$.inputRebase,onKeyPress:ne,onFocus:oe,onPaste:re}),ue&&(0,v.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==t?"withLabel":""),children:(0,v.jsx)(u.Z,{onClick:Y?function(){Y()}:function(){return se(!le)},id:M,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:ue})}),H&&(0,v.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==t?"withLabel":""),children:H})]})]})})}))},53138:function(e,t,n){"use strict";n.r(t),n.d(t,{emptyContent:function(){return v}});var o=n(29439),r=n(72791),i=n(64554),a=n(61889),c=n(29945),l=n(21435),s=n(56087),u=n(87995),p=n(57689),d=n(81551),f=n(9505),y=n(40214),x=n(92217),m=n(47974),b=n(99670),h=n(80184),v='{\n "bytes": ""\n}';t.default=function(){var e=(0,d.TL)(),t=(0,p.s0)(),n=(0,f.Z)((function(){return t("".concat(s.gA.KMS_KEYS))}),(function(t){return e((0,u.Ih)(t))})),g=(0,o.Z)(n,2),j=g[0],C=g[1],w=(0,r.useState)(""),O=(0,o.Z)(w,2),Z=O[0],P=O[1],k=(0,r.useState)(v),S=(0,o.Z)(k,2),D=S[0],R=S[1],E=""!==Z.trim()&&-1===Z.indexOf(" ");return(0,r.useEffect)((function(){e((0,u.Sc)("import_key"))}),[]),(0,h.jsx)(r.Fragment,{children:(0,h.jsxs)(a.ZP,{item:!0,xs:12,children:[(0,h.jsx)(m.Z,{label:(0,h.jsx)(c.hbI,{onClick:function(){return t(s.gA.KMS_KEYS)},label:"Keys"}),actions:(0,h.jsx)(b.Z,{})}),(0,h.jsx)(c.Xgh,{children:(0,h.jsx)(c.ltY,{title:"Import Key",icon:(0,h.jsx)(c.sR0,{}),helpBox:(0,h.jsx)(y.Z,{helpText:"Encryption Key",contents:["Import a cryptographic key in the Key Management Service server connected to MINIO."]}),children:(0,h.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault();var t=JSON.parse(D);C("POST","/api/v1/kms/keys/".concat(Z,"/import"),t)}(e)},children:(0,h.jsxs)(a.ZP,{container:!0,item:!0,spacing:1,children:[(0,h.jsx)(a.ZP,{item:!0,xs:12,children:(0,h.jsx)(l.Z,{id:"key-name",name:"key-name",label:"Key Name",autoFocus:!0,value:Z,error:function(e){return-1!==e.indexOf(" ")?"Key name cannot contain spaces":""}(Z),onChange:function(e){P(e.target.value)}})}),(0,h.jsx)(a.ZP,{item:!0,xs:12,children:(0,h.jsx)(x.Z,{label:"Set key Content",value:D,onChange:function(e){R(e)},editorHeight:"350px"})}),(0,h.jsx)(a.ZP,{item:!0,xs:12,textAlign:"right",children:(0,h.jsxs)(i.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",marginTop:"20px",gap:"15px"},children:[(0,h.jsx)(c.zxk,{id:"clear",type:"button",variant:"regular",onClick:function(){P(""),R("")},label:"Clear"}),(0,h.jsx)(c.zxk,{id:"import-key",type:"submit",variant:"callAction",color:"primary",disabled:j||!E,label:"Import"})]})})]})})})})]})})}},40214:function(e,t,n){"use strict";n(72791);var o=n(64554),r=n(29945),i=n(80184);t.Z=function(e){var t=e.helpText,n=e.contents;return(0,i.jsxs)(o.Z,{sx:{flex:1,border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"20px"},children:[(0,i.jsxs)(o.Z,{sx:{fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center",marginBottom:"16px",paddingBottom:"20px","& .min-icon":{height:"21px",width:"21px",marginRight:"15px"}},children:[(0,i.jsx)(r.M9A,{}),(0,i.jsx)("div",{children:t})]}),(0,i.jsx)(o.Z,{sx:{fontSize:"14px",marginBottom:"15px"},children:n.map((function(e){return(0,i.jsx)(o.Z,{sx:{paddingBottom:"20px"},children:e})}))})]})}},76998:function(e,t,n){"use strict";var o=n(42458),r={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var n,i,a,c,l,s,u=!1;t||(t={}),n=t.debug||!1;try{if(a=o(),c=document.createRange(),l=document.getSelection(),(s=document.createElement("span")).textContent=e,s.ariaHidden="true",s.style.all="unset",s.style.position="fixed",s.style.top=0,s.style.clip="rect(0, 0, 0, 0)",s.style.whiteSpace="pre",s.style.webkitUserSelect="text",s.style.MozUserSelect="text",s.style.msUserSelect="text",s.style.userSelect="text",s.addEventListener("copy",(function(o){if(o.stopPropagation(),t.format)if(o.preventDefault(),"undefined"===typeof o.clipboardData){n&&console.warn("unable to use e.clipboardData"),n&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var i=r[t.format]||r.default;window.clipboardData.setData(i,e)}else o.clipboardData.clearData(),o.clipboardData.setData(t.format,e);t.onCopy&&(o.preventDefault(),t.onCopy(o.clipboardData))})),document.body.appendChild(s),c.selectNodeContents(s),l.addRange(c),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");u=!0}catch(p){n&&console.error("unable to copy using execCommand: ",p),n&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),u=!0}catch(p){n&&console.error("unable to copy using clipboardData: ",p),n&&console.error("falling back to prompt"),i=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(i,e)}}finally{l&&("function"==typeof l.removeRange?l.removeRange(c):l.removeAllRanges()),s&&document.body.removeChild(s),a()}return u}},568:function(e,t,n){"use strict";function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var r=c(n(72791)),i=c(n(76998)),a=["text","onCopy","options","children"];function c(e){return e&&e.__esModule?e:{default:e}}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function s(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function p(e,t){for(var n=0;n.\n\nimport React, { Fragment } from \"react\";\nimport { Button, CodeEditor, CopyIcon } from \"mds\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport TooltipWrapper from \"../../TooltipWrapper/TooltipWrapper\";\n\ninterface ICodeWrapper {\n value: string;\n label?: string;\n mode?: string;\n tooltip?: string;\n onChange: (value: string) => any;\n editorHeight?: string | number;\n}\n\nconst CodeMirrorWrapper = ({\n value,\n label = \"\",\n tooltip = \"\",\n mode = \"json\",\n onChange,\n editorHeight = 250,\n}: ICodeWrapper) => {\n return (\n onChange(value)}\n mode={mode}\n tooltip={tooltip}\n editorHeight={editorHeight}\n label={label}\n helpTools={\n \n \n \n }\n color={\"primary\"}\n variant={\"regular\"}\n />\n \n \n \n }\n />\n );\n};\n\nexport default CodeMirrorWrapper;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n

\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n \n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Box } from \"@mui/material\";\n\nimport Grid from \"@mui/material/Grid\";\nimport {\n AddAccessRuleIcon,\n BackLink,\n Button,\n FormLayout,\n PageLayout,\n} from \"mds\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { useNavigate } from \"react-router-dom\";\nimport { useAppDispatch } from \"../../../store\";\nimport useApi from \"../Common/Hooks/useApi\";\nimport KMSHelpBox from \"./KMSHelpbox\";\nimport CodeMirrorWrapper from \"../Common/FormComponents/CodeMirrorWrapper/CodeMirrorWrapper\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nexport const emptyContent = '{\\n \"bytes\": \"\"\\n}';\n\nconst ImportKey = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const onSuccess = () => navigate(`${IAM_PAGES.KMS_KEYS}`);\n\n const onError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n\n const [loading, invokeApi] = useApi(onSuccess, onError);\n const [keyName, setKeyName] = useState(\"\");\n const [keyContent, setKeyContent] = useState(emptyContent);\n\n const importRecord = (event: React.FormEvent) => {\n event.preventDefault();\n let data = JSON.parse(keyContent);\n invokeApi(\"POST\", `/api/v1/kms/keys/${keyName}/import`, data);\n };\n\n const resetForm = () => {\n setKeyName(\"\");\n setKeyContent(\"\");\n };\n\n const validateKeyName = (keyName: string) => {\n if (keyName.indexOf(\" \") !== -1) {\n return \"Key name cannot contain spaces\";\n } else return \"\";\n };\n\n const validSave = keyName.trim() !== \"\" && keyName.indexOf(\" \") === -1;\n\n useEffect(() => {\n dispatch(setHelpName(\"import_key\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n \n navigate(IAM_PAGES.KMS_KEYS)}\n label={\"Keys\"}\n />\n }\n actions={}\n />\n \n }\n helpBox={\n \n }\n >\n ) => {\n importRecord(e);\n }}\n >\n \n \n ) => {\n setKeyName(e.target.value);\n }}\n />\n \n \n {\n setKeyContent(value);\n }}\n editorHeight={\"350px\"}\n />\n \n \n \n \n\n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default ImportKey;\n","import React from \"react\";\n\nimport { Box } from \"@mui/material\";\nimport { HelpIconFilled } from \"mds\";\n\ninterface IKMSHelpBoxProps {\n helpText: string;\n contents: string[];\n}\n\nconst KMSHelpBox = ({ helpText, contents }: IKMSHelpBoxProps) => {\n return (\n \n \n \n
{helpText}
\n \n \n {contents.map((content) => (\n {content}\n ))}\n \n \n );\n};\n\nexport default KMSHelpBox;\n","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n"],"names":["_ref","value","_ref$label","label","_ref$tooltip","tooltip","_ref$mode","mode","onChange","_ref$editorHeight","editorHeight","_jsx","CodeEditor","helpTools","Fragment","children","TooltipWrapper","CopyToClipboard","text","Button","type","id","icon","CopyIcon","color","variant","inputStyles","makeStyles","theme","createStyles","_objectSpread","inputFieldStyles","InputField","props","classes","TextField","InputProps","withStyles","fieldBasic","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","name","_ref$type","_ref$autoComplete","autoComplete","_ref$disabled","disabled","_ref$multiline","multiline","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","placeholder","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","className","onKeyPress","onFocus","onPaste","inputProps","_useState","useState","_useState2","_slicedToArray","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","React","_jsxs","Grid","container","clsx","errorInField","inputBoxContainer","InputLabel","htmlFor","noMinWidthLabel","inputLabel","tooltipContainer","Tooltip","title","placement","HelpIcon","fullWidth","helperText","inputRebase","concat","IconButton","onClick","size","disableFocusRipple","disableRipple","disableTouchRipple","emptyContent","dispatch","useAppDispatch","navigate","useNavigate","_useApi","useApi","IAM_PAGES","KMS_KEYS","err","setErrorSnackMessage","_useApi2","loading","invokeApi","keyName","setKeyName","_useState3","_useState4","keyContent","setKeyContent","validSave","trim","indexOf","useEffect","setHelpName","item","xs","PageHeaderWrapper","BackLink","actions","HelpMenu","PageLayout","FormLayout","AddAccessRuleIcon","helpBox","KMSHelpBox","helpText","contents","noValidate","onSubmit","e","event","preventDefault","data","JSON","parse","importRecord","spacing","InputBoxWrapper","validateKeyName","target","CodeMirrorWrapper","textAlign","Box","sx","display","alignItems","justifyContent","marginTop","gap","flex","border","borderRadius","flexFlow","padding","fontSize","fontWeight","marginBottom","paddingBottom","height","width","marginRight","HelpIconFilled","map","content","deselectCurrent","require","clipboardToIE11Formatting","module","exports","options","debug","message","reselectPrevious","range","selection","mark","success","document","createRange","getSelection","createElement","textContent","ariaHidden","style","all","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","addEventListener","stopPropagation","format","clipboardData","console","warn","window","clearData","setData","onCopy","body","appendChild","selectNodeContents","addRange","execCommand","Error","copyKey","test","navigator","userAgent","replace","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","Object","defineProperty","_react","_interopRequireDefault","_copyToClipboard","_excluded","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","call","_defineProperties","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","this","self","TypeError","_assertThisInitialized","_possibleConstructorReturn","ReferenceError","getPrototypeOf","_React$PureComponent","subClass","superClass","create","_inherits","Constructor","protoProps","staticProps","_super","_this","instance","_classCallCheck","_len","args","Array","_key","_this$props","elem","Children","only","_this$props2","cloneElement","PureComponent","undefined","rangeCount","active","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","focus"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/3138.36694643.chunk.js b/portal-ui/build/static/js/3138.36694643.chunk.js new file mode 100644 index 000000000..dfbbf0290 --- /dev/null +++ b/portal-ui/build/static/js/3138.36694643.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[3138,4882,7981,9581],{92217:function(e,t,r){"use strict";var n=r(72791),o=r(29945),i=r(78029),a=r.n(i),s=r(27454),l=r(80184);t.Z=function(e){var t=e.value,r=e.label,i=void 0===r?"":r,c=e.tooltip,u=void 0===c?"":c,d=e.mode,f=void 0===d?"json":d,p=e.onChange,m=e.editorHeight,v=void 0===m?250:m;return(0,l.jsx)(o.pq4,{value:t,onChange:function(e){return p(e)},mode:f,tooltip:u,editorHeight:v,label:i,helpTools:(0,l.jsx)(n.Fragment,{children:(0,l.jsx)(s.Z,{tooltip:"Copy to Clipboard",children:(0,l.jsx)(a(),{text:t,children:(0,l.jsx)(o.zxk,{type:"button",id:"copy-code-mirror",icon:(0,l.jsx)(o.TIy,{}),color:"primary",variant:"regular"})})})})})}},21435:function(e,t,r){"use strict";var n=r(29439),o=r(1413),i=r(72791),a=r(27391),s=r(61889),l=r(30829),c=r(20068),u=r(13400),d=r(20165),f=r(3579),p=r(11135),m=r(72455),v=r(25787),y=r(23814),b=r(29945),x=r(28182),h=r(80184),Z=(0,m.Z)((function(e){return(0,p.Z)((0,o.Z)({},y.gM))}));function g(e){var t=Z();return(0,h.jsx)(a.Z,(0,o.Z)({InputProps:{classes:t}},e))}t.Z=(0,v.Z)((function(e){return(0,p.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},y.YI),y.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var t=e.label,r=e.onChange,a=e.value,p=e.id,m=e.name,v=e.type,y=void 0===v?"text":v,Z=e.autoComplete,C=void 0===Z?"off":Z,j=e.disabled,w=void 0!==j&&j,k=e.multiline,O=void 0!==k&&k,S=e.tooltip,P=void 0===S?"":S,E=e.index,R=void 0===E?0:E,M=e.error,I=void 0===M?"":M,z=e.required,F=void 0!==z&&z,_=e.placeholder,A=void 0===_?"":_,D=e.min,N=e.max,T=e.overlayId,L=e.overlayIcon,q=void 0===L?null:L,K=e.overlayObject,W=void 0===K?null:K,B=e.extraInputProps,H=void 0===B?{}:B,U=e.overlayAction,V=e.noLabelMinWidth,Y=void 0!==V&&V,X=e.pattern,G=void 0===X?"":X,J=e.autoFocus,Q=void 0!==J&&J,$=e.classes,ee=e.className,te=void 0===ee?"":ee,re=e.onKeyPress,ne=e.onFocus,oe=e.onPaste,ie=(0,o.Z)({"data-index":R},H),ae=(0,i.useState)(!1),se=(0,n.Z)(ae,2),le=se[0],ce=se[1];"number"===y&&D&&(ie.min=D),"number"===y&&N&&(ie.max=N),""!==G&&(ie.pattern=G);var ue=q,de=y;return"password"===y&&null===q&&(ue=le?(0,h.jsx)(d.Z,{}):(0,h.jsx)(f.Z,{}),de=le?"text":"password"),(0,h.jsx)(i.Fragment,{children:(0,h.jsxs)(s.ZP,{container:!0,className:(0,x.Z)(""!==te?te:"",""!==I?$.errorInField:$.inputBoxContainer),children:[""!==t&&(0,h.jsxs)(l.Z,{htmlFor:p,className:Y?$.noMinWidthLabel:$.inputLabel,children:[(0,h.jsxs)("span",{children:[t,F?"*":""]}),""!==P&&(0,h.jsx)("div",{className:$.tooltipContainer,children:(0,h.jsx)(c.Z,{title:P,placement:"top-start",children:(0,h.jsx)("div",{className:$.tooltip,children:(0,h.jsx)(b.byK,{})})})})]}),(0,h.jsxs)("div",{className:$.textBoxContainer,children:[(0,h.jsx)(g,{id:p,name:m,fullWidth:!0,value:a,autoFocus:Q,disabled:w,onChange:r,type:de,multiline:O,autoComplete:C,inputProps:ie,error:""!==I,helperText:I,placeholder:A,className:$.inputRebase,onKeyPress:re,onFocus:ne,onPaste:oe}),ue&&(0,h.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==t?"withLabel":""),children:(0,h.jsx)(u.Z,{onClick:U?function(){U()}:function(){return ce(!le)},id:T,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:ue})}),W&&(0,h.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==t?"withLabel":""),children:W})]})]})})}))},53138:function(e,t,r){"use strict";r.r(t),r.d(t,{emptyContent:function(){return h}});var n=r(29439),o=r(72791),i=r(64554),a=r(61889),s=r(29945),l=r(21435),c=r(56087),u=r(87995),d=r(57689),f=r(81551),p=r(9505),m=r(40214),v=r(92217),y=r(47974),b=r(99670),x=r(80184),h='{\n "bytes": ""\n}';t.default=function(){var e=(0,f.TL)(),t=(0,d.s0)(),r=(0,p.Z)((function(){return t("".concat(c.gA.KMS_KEYS))}),(function(t){return e((0,u.Ih)(t))})),Z=(0,n.Z)(r,2),g=Z[0],C=Z[1],j=(0,o.useState)(""),w=(0,n.Z)(j,2),k=w[0],O=w[1],S=(0,o.useState)(h),P=(0,n.Z)(S,2),E=P[0],R=P[1],M=""!==k.trim()&&-1===k.indexOf(" ");return(0,o.useEffect)((function(){e((0,u.Sc)("import_key"))}),[]),(0,x.jsx)(o.Fragment,{children:(0,x.jsxs)(a.ZP,{item:!0,xs:12,children:[(0,x.jsx)(y.Z,{label:(0,x.jsx)(s.hbI,{onClick:function(){return t(c.gA.KMS_KEYS)},label:"Keys"}),actions:(0,x.jsx)(b.Z,{})}),(0,x.jsx)(s.Xgh,{children:(0,x.jsx)(s.ltY,{title:"Import Key",icon:(0,x.jsx)(s.sR0,{}),helpBox:(0,x.jsx)(m.Z,{helpText:"Encryption Key",contents:["Import a cryptographic key in the Key Management Service server connected to MINIO."]}),children:(0,x.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault();var t=JSON.parse(E);C("POST","/api/v1/kms/keys/".concat(k,"/import"),t)}(e)},children:(0,x.jsxs)(a.ZP,{container:!0,item:!0,spacing:1,children:[(0,x.jsx)(a.ZP,{item:!0,xs:12,children:(0,x.jsx)(l.Z,{id:"key-name",name:"key-name",label:"Key Name",autoFocus:!0,value:k,error:function(e){return-1!==e.indexOf(" ")?"Key name cannot contain spaces":""}(k),onChange:function(e){O(e.target.value)}})}),(0,x.jsx)(a.ZP,{item:!0,xs:12,children:(0,x.jsx)(v.Z,{label:"Set key Content",value:E,onChange:function(e){R(e)},editorHeight:"350px"})}),(0,x.jsx)(a.ZP,{item:!0,xs:12,textAlign:"right",children:(0,x.jsxs)(i.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",marginTop:"20px",gap:"15px"},children:[(0,x.jsx)(s.zxk,{id:"clear",type:"button",variant:"regular",onClick:function(){O(""),R("")},label:"Clear"}),(0,x.jsx)(s.zxk,{id:"import-key",type:"submit",variant:"callAction",color:"primary",disabled:g||!M,label:"Import"})]})})]})})})})]})})}},40214:function(e,t,r){"use strict";var n=r(72791),o=r(29945),i=r(80184);t.Z=function(e){var t=e.helpText,r=e.contents;return(0,i.jsx)(o.KfX,{iconComponent:(0,i.jsx)(o.M9A,{}),title:t,help:(0,i.jsx)(n.Fragment,{children:r.map((function(e){return(0,i.jsx)(o.xuv,{sx:{paddingBottom:"20px"},children:e})}))})})}},3579:function(e,t,r){"use strict";var n=r(64836);t.Z=void 0;var o=n(r(45649)),i=r(80184),a=(0,o.default)((0,i.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=a},20165:function(e,t,r){"use strict";var n=r(64836);t.Z=void 0;var o=n(r(45649)),i=r(80184),a=(0,o.default)((0,i.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=a},45649:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=r(28610)},93840:function(e,t,r){"use strict";var n=r(72791).createContext(void 0);t.Z=n},76147:function(e,t,r){"use strict";function n(e){var t=e.props,r=e.states,n=e.muiFormControl;return r.reduce((function(e,r){return e[r]=t[r],n&&"undefined"===typeof t[r]&&(e[r]=n[r]),e}),{})}r.d(t,{Z:function(){return n}})},52930:function(e,t,r){"use strict";r.d(t,{Z:function(){return i}});var n=r(72791),o=r(93840);function i(){return n.useContext(o.Z)}},17133:function(e,t,r){"use strict";var n=r(4942),o=r(63366),i=r(87462),a=r(72791),s=r(28182),l=r(94419),c=r(76147),u=r(52930),d=r(14036),f=r(31402),p=r(66934),m=r(10843),v=r(80184),y=["children","className","color","component","disabled","error","filled","focused","required"],b=(0,p.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return(0,i.Z)({},t.root,"secondary"===r.color&&t.colorSecondary,r.filled&&t.filled)}})((function(e){var t,r=e.theme,o=e.ownerState;return(0,i.Z)({color:(r.vars||r).palette.text.secondary},r.typography.body1,(t={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(t,"&.".concat(m.Z.focused),{color:(r.vars||r).palette[o.color].main}),(0,n.Z)(t,"&.".concat(m.Z.disabled),{color:(r.vars||r).palette.text.disabled}),(0,n.Z)(t,"&.".concat(m.Z.error),{color:(r.vars||r).palette.error.main}),t))})),x=(0,p.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,t){return t.asterisk}})((function(e){var t=e.theme;return(0,n.Z)({},"&.".concat(m.Z.error),{color:(t.vars||t).palette.error.main})})),h=a.forwardRef((function(e,t){var r=(0,f.Z)({props:e,name:"MuiFormLabel"}),n=r.children,a=r.className,p=r.component,h=void 0===p?"label":p,Z=(0,o.Z)(r,y),g=(0,u.Z)(),C=(0,c.Z)({props:r,muiFormControl:g,states:["color","required","focused","disabled","error","filled"]}),j=(0,i.Z)({},r,{color:C.color||"primary",component:h,disabled:C.disabled,error:C.error,filled:C.filled,focused:C.focused,required:C.required}),w=function(e){var t=e.classes,r=e.color,n=e.focused,o=e.disabled,i=e.error,a=e.filled,s=e.required,c={root:["root","color".concat((0,d.Z)(r)),o&&"disabled",i&&"error",a&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",i&&"error"]};return(0,l.Z)(c,m.M,t)}(j);return(0,v.jsxs)(b,(0,i.Z)({as:h,ownerState:j,className:(0,s.Z)(w.root,a),ref:t},Z,{children:[n,C.required&&(0,v.jsxs)(x,{ownerState:j,"aria-hidden":!0,className:w.asterisk,children:["\u2009","*"]})]}))}));t.Z=h},10843:function(e,t,r){"use strict";r.d(t,{M:function(){return i}});var n=r(75878),o=r(21217);function i(e){return(0,o.Z)("MuiFormLabel",e)}var a=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);t.Z=a},30829:function(e,t,r){"use strict";r.d(t,{Z:function(){return g}});var n=r(4942),o=r(63366),i=r(87462),a=r(72791),s=r(94419),l=r(28182),c=r(76147),u=r(52930),d=r(17133),f=r(10843),p=r(31402),m=r(66934),v=r(75878),y=r(21217);function b(e){return(0,y.Z)("MuiInputLabel",e)}(0,v.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var x=r(80184),h=["disableAnimation","margin","shrink","variant","className"],Z=(0,m.ZP)(d.Z,{shouldForwardProp:function(e){return(0,m.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),t.asterisk),t.root,r.formControl&&t.formControl,"small"===r.size&&t.sizeSmall,r.shrink&&t.shrink,!r.disableAnimation&&t.animated,t[r.variant]]}})((function(e){var t=e.theme,r=e.ownerState;return(0,i.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},r.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===r.size&&{transform:"translate(0, 17px) scale(1)"},r.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!r.disableAnimation&&{transition:t.transitions.create(["color","transform","max-width"],{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut})},"filled"===r.variant&&(0,i.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(12px, 13px) scale(1)"},r.shrink&&(0,i.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===r.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===r.variant&&(0,i.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(14px, 9px) scale(1)"},r.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),g=a.forwardRef((function(e,t){var r=(0,p.Z)({name:"MuiInputLabel",props:e}),n=r.disableAnimation,a=void 0!==n&&n,d=r.shrink,f=r.className,m=(0,o.Z)(r,h),v=(0,u.Z)(),y=d;"undefined"===typeof y&&v&&(y=v.filled||v.focused||v.adornedStart);var g=(0,c.Z)({props:r,muiFormControl:v,states:["size","variant","required"]}),C=(0,i.Z)({},r,{disableAnimation:a,formControl:v,shrink:y,size:g.size,variant:g.variant,required:g.required}),j=function(e){var t=e.classes,r=e.formControl,n=e.size,o=e.shrink,a={root:["root",r&&"formControl",!e.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},l=(0,s.Z)(a,b,t);return(0,i.Z)({},t,l)}(C);return(0,x.jsx)(Z,(0,i.Z)({"data-shrink":y,ownerState:C,ref:t,className:(0,l.Z)(j.root,f)},m,{classes:j}))}))},31260:function(e,t,r){"use strict";var n=r(78949);t.Z=n.Z},28610:function(e,t,r){"use strict";r.r(t),r.d(t,{capitalize:function(){return o.Z},createChainedFunction:function(){return i.Z},createSvgIcon:function(){return a.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return l},isMuiElement:function(){return c.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return p},unstable_ClassNameGenerator:function(){return g},unstable_useEnhancedEffect:function(){return m.Z},unstable_useId:function(){return v.Z},unsupportedProp:function(){return y},useControlled:function(){return b.Z},useEventCallback:function(){return x.Z},useForkRef:function(){return h.Z},useIsFocusVisible:function(){return Z.Z}});var n=r(55902),o=r(14036),i=r(31260),a=r(76189),s=r(83199);var l=function(e,t){return function(){return null}},c=r(19103),u=r(98301),d=r(17602);r(87462);var f=function(e,t){return function(){return null}},p=r(62971).Z,m=r(40162),v=r(67384);var y=function(e,t,r,n,o){return null},b=r(98278),x=r(89683),h=r(42071),Z=r(23031),g={configure:function(e){n.Z.configure(e)}}},19103:function(e,t,r){"use strict";r.d(t,{Z:function(){return o}});var n=r(72791);var o=function(e,t){return n.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}},76998:function(e,t,r){"use strict";var n=r(42458),o={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var r,i,a,s,l,c,u=!1;t||(t={}),r=t.debug||!1;try{if(a=n(),s=document.createRange(),l=document.getSelection(),(c=document.createElement("span")).textContent=e,c.ariaHidden="true",c.style.all="unset",c.style.position="fixed",c.style.top=0,c.style.clip="rect(0, 0, 0, 0)",c.style.whiteSpace="pre",c.style.webkitUserSelect="text",c.style.MozUserSelect="text",c.style.msUserSelect="text",c.style.userSelect="text",c.addEventListener("copy",(function(n){if(n.stopPropagation(),t.format)if(n.preventDefault(),"undefined"===typeof n.clipboardData){r&&console.warn("unable to use e.clipboardData"),r&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var i=o[t.format]||o.default;window.clipboardData.setData(i,e)}else n.clipboardData.clearData(),n.clipboardData.setData(t.format,e);t.onCopy&&(n.preventDefault(),t.onCopy(n.clipboardData))})),document.body.appendChild(c),s.selectNodeContents(c),l.addRange(s),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");u=!0}catch(d){r&&console.error("unable to copy using execCommand: ",d),r&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),u=!0}catch(d){r&&console.error("unable to copy using clipboardData: ",d),r&&console.error("falling back to prompt"),i=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(i,e)}}finally{l&&("function"==typeof l.removeRange?l.removeRange(s):l.removeAllRanges()),c&&document.body.removeChild(c),a()}return u}},568:function(e,t,r){"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var o=s(r(72791)),i=s(r(76998)),a=["text","onCopy","options","children"];function s(e){return e&&e.__esModule?e:{default:e}}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function d(e,t){for(var r=0;r.\n\nimport React, { Fragment } from \"react\";\nimport { Button, CodeEditor, CopyIcon } from \"mds\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport TooltipWrapper from \"../../TooltipWrapper/TooltipWrapper\";\n\ninterface ICodeWrapper {\n value: string;\n label?: string;\n mode?: string;\n tooltip?: string;\n onChange: (value: string) => any;\n editorHeight?: string | number;\n}\n\nconst CodeMirrorWrapper = ({\n value,\n label = \"\",\n tooltip = \"\",\n mode = \"json\",\n onChange,\n editorHeight = 250,\n}: ICodeWrapper) => {\n return (\n onChange(value)}\n mode={mode}\n tooltip={tooltip}\n editorHeight={editorHeight}\n label={label}\n helpTools={\n \n \n \n }\n color={\"primary\"}\n variant={\"regular\"}\n />\n \n \n \n }\n />\n );\n};\n\nexport default CodeMirrorWrapper;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Box } from \"@mui/material\";\n\nimport Grid from \"@mui/material/Grid\";\nimport {\n AddAccessRuleIcon,\n BackLink,\n Button,\n FormLayout,\n PageLayout,\n} from \"mds\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { useNavigate } from \"react-router-dom\";\nimport { useAppDispatch } from \"../../../store\";\nimport useApi from \"../Common/Hooks/useApi\";\nimport KMSHelpBox from \"./KMSHelpbox\";\nimport CodeMirrorWrapper from \"../Common/FormComponents/CodeMirrorWrapper/CodeMirrorWrapper\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nexport const emptyContent = '{\\n \"bytes\": \"\"\\n}';\n\nconst ImportKey = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const onSuccess = () => navigate(`${IAM_PAGES.KMS_KEYS}`);\n\n const onError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n\n const [loading, invokeApi] = useApi(onSuccess, onError);\n const [keyName, setKeyName] = useState(\"\");\n const [keyContent, setKeyContent] = useState(emptyContent);\n\n const importRecord = (event: React.FormEvent) => {\n event.preventDefault();\n let data = JSON.parse(keyContent);\n invokeApi(\"POST\", `/api/v1/kms/keys/${keyName}/import`, data);\n };\n\n const resetForm = () => {\n setKeyName(\"\");\n setKeyContent(\"\");\n };\n\n const validateKeyName = (keyName: string) => {\n if (keyName.indexOf(\" \") !== -1) {\n return \"Key name cannot contain spaces\";\n } else return \"\";\n };\n\n const validSave = keyName.trim() !== \"\" && keyName.indexOf(\" \") === -1;\n\n useEffect(() => {\n dispatch(setHelpName(\"import_key\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n \n navigate(IAM_PAGES.KMS_KEYS)}\n label={\"Keys\"}\n />\n }\n actions={}\n />\n \n }\n helpBox={\n \n }\n >\n ) => {\n importRecord(e);\n }}\n >\n \n \n ) => {\n setKeyName(e.target.value);\n }}\n />\n \n \n {\n setKeyContent(value);\n }}\n editorHeight={\"350px\"}\n />\n \n \n \n \n\n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default ImportKey;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { HelpBox, HelpIconFilled, Box } from \"mds\";\n\ninterface IKMSHelpBoxProps {\n helpText: string;\n contents: string[];\n}\n\nconst KMSHelpBox = ({ helpText, contents }: IKMSHelpBoxProps) => {\n return (\n }\n title={helpText}\n help={\n \n {contents.map((content) => (\n {content}\n ))}\n \n }\n />\n );\n};\n\nexport default KMSHelpBox;\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_ref","value","_ref$label","label","_ref$tooltip","tooltip","_ref$mode","mode","onChange","_ref$editorHeight","editorHeight","_jsx","CodeEditor","helpTools","Fragment","children","TooltipWrapper","CopyToClipboard","text","Button","type","id","icon","CopyIcon","color","variant","inputStyles","makeStyles","theme","createStyles","_objectSpread","inputFieldStyles","InputField","props","classes","TextField","InputProps","withStyles","fieldBasic","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","name","_ref$type","_ref$autoComplete","autoComplete","_ref$disabled","disabled","_ref$multiline","multiline","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","placeholder","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","className","onKeyPress","onFocus","onPaste","inputProps","_useState","useState","_useState2","_slicedToArray","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","React","_jsxs","Grid","container","clsx","errorInField","inputBoxContainer","InputLabel","htmlFor","noMinWidthLabel","inputLabel","tooltipContainer","Tooltip","title","placement","HelpIcon","fullWidth","helperText","inputRebase","concat","IconButton","onClick","size","disableFocusRipple","disableRipple","disableTouchRipple","emptyContent","dispatch","useAppDispatch","navigate","useNavigate","_useApi","useApi","IAM_PAGES","KMS_KEYS","err","setErrorSnackMessage","_useApi2","loading","invokeApi","keyName","setKeyName","_useState3","_useState4","keyContent","setKeyContent","validSave","trim","indexOf","useEffect","setHelpName","item","xs","PageHeaderWrapper","BackLink","actions","HelpMenu","PageLayout","FormLayout","AddAccessRuleIcon","helpBox","KMSHelpBox","helpText","contents","noValidate","onSubmit","e","event","preventDefault","data","JSON","parse","importRecord","spacing","InputBoxWrapper","validateKeyName","target","CodeMirrorWrapper","textAlign","Box","sx","display","alignItems","justifyContent","marginTop","gap","HelpBox","iconComponent","HelpIconFilled","help","map","content","paddingBottom","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","enumerable","get","_utils","createSvgIcon","FormControlContext","undefined","formControlState","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","slot","overridesResolver","styles","ownerState","_extends","root","colorSecondary","filled","_ref2","_extends2","vars","palette","secondary","typography","body1","lineHeight","padding","_defineProperty","formLabelClasses","focused","main","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","as","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","sizeSmall","shrink","disableAnimation","animated","transformOrigin","whiteSpace","overflow","textOverflow","left","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","muiName","deselectCurrent","clipboardToIE11Formatting","module","options","debug","message","reselectPrevious","range","selection","mark","success","document","createRange","getSelection","createElement","textContent","ariaHidden","style","all","clip","webkitUserSelect","MozUserSelect","msUserSelect","addEventListener","stopPropagation","format","clipboardData","console","warn","window","clearData","setData","onCopy","body","appendChild","selectNodeContents","addRange","execCommand","Error","copyKey","test","navigator","userAgent","replace","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","_react","_copyToClipboard","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","apply","i","arguments","length","source","forEach","key","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","sourceKeys","sourceSymbolKeys","propertyIsEnumerable","call","_defineProperties","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","this","self","TypeError","_assertThisInitialized","_possibleConstructorReturn","ReferenceError","getPrototypeOf","_React$PureComponent","subClass","superClass","_inherits","Constructor","protoProps","staticProps","_super","_this","instance","_classCallCheck","_len","args","Array","_key","_this$props","elem","Children","only","_this$props2","cloneElement","PureComponent","rangeCount","active","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","focus"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/3509.f3bae3cd.chunk.js b/portal-ui/build/static/js/3509.f3bae3cd.chunk.js new file mode 100644 index 000000000..30d2ba0bb --- /dev/null +++ b/portal-ui/build/static/js/3509.f3bae3cd.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[3509],{83509:function(e,t,a){a.r(t);var n=a(29439),i=a(1413),r=a(72791),l=a(29945),c=a(11135),s=a(25787),o=a(56028),d=a(17420),u=a(23814),h=a(87995),p=a(81551),f=a(31776),g=a(82342),x=a(80184);t.default=(0,s.Z)((function(e){return(0,c.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},u.bK),u.QV),u.DF),u.ID),{},{modalFormScrollable:(0,i.Z)((0,i.Z)({},u.ID.modalFormScrollable),{},{paddingRight:10})}))}))((function(e){var t=e.closeModalAndRefresh,a=e.open,i=(e.classes,e.bucketName),c=e.ruleID,s=(0,p.TL)(),v=(0,r.useState)(!0),m=(0,n.Z)(v,2),j=m[0],b=m[1],S=(0,r.useState)(!1),Z=(0,n.Z)(S,2),k=Z[0],y=Z[1],C=(0,r.useState)("1"),D=(0,n.Z)(C,2),I=D[0],R=D[1],E=(0,r.useState)(""),w=(0,n.Z)(E,2),B=w[0],z=w[1],M=(0,r.useState)(""),A=(0,n.Z)(M,2),N=A[0],P=A[1],_=(0,r.useState)(!1),O=(0,n.Z)(_,2),T=O[0],W=O[1],F=(0,r.useState)(!1),V=(0,n.Z)(F,2),q=V[0],K=V[1],L=(0,r.useState)(""),Y=(0,n.Z)(L,2),U=Y[0],Q=Y[1],G=(0,r.useState)(""),H=(0,n.Z)(G,2),J=H[0],X=H[1],$=(0,r.useState)(""),ee=(0,n.Z)($,2),te=ee[0],ae=ee[1],ne=(0,r.useState)(!1),ie=(0,n.Z)(ne,2),re=ie[0],le=ie[1],ce=(0,r.useState)(!1),se=(0,n.Z)(ce,2),oe=se[0],de=se[1],ue=(0,r.useState)(!1),he=(0,n.Z)(ue,2),pe=he[0],fe=he[1];return(0,r.useEffect)((function(){j&&f.h.buckets.getBucketReplicationRule(i,c).then((function(e){var t;R(e.data.priority?e.data.priority.toString():"");var a=e.data.prefix||"",n=e.data.tags||"";P(a),Q(n),X(n),z((null===(t=e.data.destination)||void 0===t?void 0:t.bucket)||""),W(e.data.delete_marker_replication||!1),ae(e.data.storageClass||""),le(!!e.data.existingObjects),de(!!e.data.deletes_replication),fe("Enabled"===e.data.status),K(!!e.data.metadata_replication),b(!1)})).catch((function(e){s((0,h.zb)((0,g.g)(e.error))),b(!1)}))}),[j,s,i,c]),(0,r.useEffect)((function(){if(k){var e={arn:B,ruleState:pe,prefix:N,tags:J,replicateDeleteMarkers:T,replicateDeletes:oe,replicateExistingObjects:re,replicateMetadata:q,priority:parseInt(I),storageClass:te};f.h.buckets.updateMultiBucketReplication(i,c,e).then((function(){y(!1),t(!0)})).catch((function(e){s((0,h.zb)((0,g.g)(e.error))),y(!1)}))}}),[k,i,c,B,N,J,T,I,oe,re,pe,q,te,t,s]),(0,x.jsx)(o.Z,{modalOpen:a,onClose:function(){t(!1)},title:"Edit Bucket Replication",titleIcon:(0,x.jsx)(l.xRg,{}),children:(0,x.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),y(!0)},children:(0,x.jsxs)(l.ltY,{containerPadding:!1,withBorders:!1,children:[(0,x.jsx)(l.rsf,{checked:pe,id:"ruleState",name:"ruleState",label:"Rule State",onChange:function(e){fe(e.target.checked)}}),(0,x.jsx)(l.bSr,{label:"Destination",sx:{width:"100%"},children:B}),(0,x.jsx)(l.Wzg,{id:"priority",name:"priority",onChange:function(e){e.target.validity.valid&&R(e.target.value)},label:"Priority",value:I,pattern:"[0-9]*"}),(0,x.jsx)(l.Wzg,{id:"storageClass",name:"storageClass",onChange:function(e){ae(e.target.value)},placeholder:"STANDARD_IA,REDUCED_REDUNDANCY etc",label:"Storage Class",value:te}),(0,x.jsxs)("fieldset",{className:"inputItem",children:[(0,x.jsx)("legend",{children:"Object Filters"}),(0,x.jsx)(l.Wzg,{id:"prefix",name:"prefix",onChange:function(e){P(e.target.value)},placeholder:"prefix",label:"Prefix",value:N}),(0,x.jsx)(d.Z,{name:"tags",label:"Tags",elements:U,onChange:function(e){X(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})]}),(0,x.jsxs)("fieldset",{className:"inputItem",children:[(0,x.jsx)("legend",{children:"Replication Options"}),(0,x.jsx)(l.rsf,{checked:re,id:"repExisting",name:"repExisting",label:"Existing Objects",onChange:function(e){le(e.target.checked)},description:"Replicate existing objects"}),(0,x.jsx)(l.rsf,{checked:q,id:"metadatataSync",name:"metadatataSync",label:"Metadata Sync",onChange:function(e){K(e.target.checked)},description:"Metadata Sync"}),(0,x.jsx)(l.rsf,{checked:T,id:"deleteMarker",name:"deleteMarker",label:"Delete Marker",onChange:function(e){W(e.target.checked)},description:"Replicate soft deletes"}),(0,x.jsx)(l.rsf,{checked:oe,id:"repDelete",name:"repDelete",label:"Deletes",onChange:function(e){de(e.target.checked)},description:"Replicate versioned deletes"})]}),(0,x.jsxs)(l.rjZ,{item:!0,xs:12,sx:u.ID.modalButtonBar,children:[(0,x.jsx)(l.zxk,{id:"cancel-edit-replication",type:"button",variant:"regular",disabled:j||k,onClick:function(){t(!1)},label:"Cancel"}),(0,x.jsx)(l.zxk,{id:"save-replication",type:"submit",variant:"callAction",disabled:j||k,label:"Save"})]})]})})})}))},17420:function(e,t,a){var n=a(93433),i=a(29439),r=a(72791),l=a(26181),c=a.n(l),s=a(48573),o=a.n(s),d=a(29945),u=a(80184);t.Z=function(e){var t=e.elements,a=e.name,l=e.label,s=e.tooltip,h=void 0===s?"":s,p=e.keyPlaceholder,f=void 0===p?"":p,g=e.valuePlaceholder,x=void 0===g?"":g,v=e.onChange,m=e.withBorder,j=void 0!==m&&m,b=(0,r.useState)([""]),S=(0,i.Z)(b,2),Z=S[0],k=S[1],y=(0,r.useState)([""]),C=(0,i.Z)(y,2),D=C[0],I=C[1],R=(0,r.createRef)();(0,r.useEffect)((function(){if(1===Z.length&&""===Z[0]&&1===D.length&&""===D[0]&&t&&""!==t){var e=t.split("&"),a=[],n=[];e.forEach((function(e){var t=e.split("=");2===t.length&&(a.push(t[0]),n.push(t[1]))})),a.push(""),n.push(""),k(a),I(n)}}),[Z,D,t]),(0,r.useEffect)((function(){var e=R.current;e&&Z.length>1&&e.scrollIntoView(!1)}),[Z]);var E=(0,r.useRef)(!0);(0,r.useLayoutEffect)((function(){E.current?E.current=!1:z()}),[Z,D]);var w=function(e){e.persist();var t=(0,n.Z)(Z),a=c()(e.target,"dataset.index","0");t[parseInt(a)]=e.target.value,k(t)},B=function(e){e.persist();var t=(0,n.Z)(D),a=c()(e.target,"dataset.index","0");t[parseInt(a)]=e.target.value,I(t)},z=o()((function(){var e="";Z.forEach((function(t,a){if(Z[a]&&D[a]){var n="".concat(t,"=").concat(D[a]);0!==a&&(n="&".concat(n)),e="".concat(e).concat(n)}})),v(e)}),500),M=D.map((function(e,t){return(0,u.jsxs)(d.rjZ,{item:!0,xs:12,className:"lineInputBoxes inputItem",children:[(0,u.jsx)(d.Wzg,{id:"".concat(a,"-key-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:Z[t],onChange:w,index:t,placeholder:f}),(0,u.jsx)("span",{className:"queryDiv",children:":"}),(0,u.jsx)(d.Wzg,{id:"".concat(a,"-value-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:D[t],onChange:B,index:t,placeholder:x,overlayIcon:t===D.length-1?(0,u.jsx)(d.dtP,{}):null,overlayAction:function(){!function(){if(""!==Z[Z.length-1].trim()&&""!==D[D.length-1].trim()){var e=(0,n.Z)(Z),t=(0,n.Z)(D);e.push(""),t.push(""),k(e),I(t)}}()}})]},"query-pair-".concat(a,"-").concat(t.toString()))}));return(0,u.jsx)(r.Fragment,{children:(0,u.jsxs)(d.rjZ,{item:!0,xs:12,sx:{"& .lineInputBoxes":{display:"flex"},"& .queryDiv":{alignSelf:"center",margin:"-15px 4px 0",fontWeight:600}},children:[(0,u.jsxs)(d.AZs,{children:[l,""!==h&&(0,u.jsx)(d.xuv,{sx:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},children:(0,u.jsx)(d.ua7,{tooltip:h,placement:"top",children:(0,u.jsx)(d.byK,{style:{width:13,height:13}})})})]}),(0,u.jsxs)(d.xuv,{withBorders:j,sx:{padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},children:[M,(0,u.jsx)("div",{ref:R})]})]})})}}}]); +//# sourceMappingURL=3509.f3bae3cd.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/3509.f3bae3cd.chunk.js.map b/portal-ui/build/static/js/3509.f3bae3cd.chunk.js.map new file mode 100644 index 000000000..285144999 --- /dev/null +++ b/portal-ui/build/static/js/3509.f3bae3cd.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/3509.f3bae3cd.chunk.js","mappings":"iRAgTA,WAAeA,EAAAA,EAAAA,IA9PA,SAACC,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTC,EAAAA,IACAC,EAAAA,IACAC,EAAAA,IACAC,EAAAA,IAAe,IAClBC,qBAAmBL,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACdI,EAAAA,GAAgBC,qBAAmB,IACtCC,aAAc,OAEf,GAoPL,EAlP6B,SAAHC,GAMI,IAL5BC,EAAoBD,EAApBC,qBACAC,EAAIF,EAAJE,KAEAC,GADOH,EAAPI,QACUJ,EAAVG,YACAE,EAAML,EAANK,OAEMC,GAAWC,EAAAA,EAAAA,MACjBC,GAAsCC,EAAAA,EAAAA,WAAkB,GAAKC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAtDI,EAAWF,EAAA,GAAEG,EAAcH,EAAA,GAClCI,GAAgCL,EAAAA,EAAAA,WAAkB,GAAMM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAjDE,EAAQD,EAAA,GAAEE,EAAWF,EAAA,GAC5BG,GAAgCT,EAAAA,EAAAA,UAAiB,KAAIU,GAAAR,EAAAA,EAAAA,GAAAO,EAAA,GAA9CE,EAAQD,EAAA,GAAEE,EAAWF,EAAA,GAC5BG,GAAsCb,EAAAA,EAAAA,UAAiB,IAAGc,GAAAZ,EAAAA,EAAAA,GAAAW,EAAA,GAAnDE,EAAWD,EAAA,GAAEE,EAAcF,EAAA,GAClCG,GAA4BjB,EAAAA,EAAAA,UAAiB,IAAGkB,GAAAhB,EAAAA,EAAAA,GAAAe,EAAA,GAAzCE,EAAMD,EAAA,GAAEE,EAASF,EAAA,GACxBG,GAA8CrB,EAAAA,EAAAA,WAAkB,GAAMsB,GAAApB,EAAAA,EAAAA,GAAAmB,EAAA,GAA/DE,EAAeD,EAAA,GAAEE,EAAkBF,EAAA,GAC1CG,GAAwCzB,EAAAA,EAAAA,WAAkB,GAAM0B,GAAAxB,EAAAA,EAAAA,GAAAuB,EAAA,GAAzDE,EAAYD,EAAA,GAAEE,EAAeF,EAAA,GACpCG,GAAsC7B,EAAAA,EAAAA,UAAiB,IAAG8B,GAAA5B,EAAAA,EAAAA,GAAA2B,EAAA,GAAnDE,EAAWD,EAAA,GAAEE,EAAcF,EAAA,GAClCG,GAAwBjC,EAAAA,EAAAA,UAAiB,IAAGkC,GAAAhC,EAAAA,EAAAA,GAAA+B,EAAA,GAArCE,EAAID,EAAA,GAAEE,EAAOF,EAAA,GACpBG,GAAoDrC,EAAAA,EAAAA,UAAiB,IAAGsC,IAAApC,EAAAA,EAAAA,GAAAmC,EAAA,GAAjEE,GAAkBD,GAAA,GAAEE,GAAqBF,GAAA,GAChDG,IAAsCzC,EAAAA,EAAAA,WAAkB,GAAM0C,IAAAxC,EAAAA,EAAAA,GAAAuC,GAAA,GAAvDE,GAAWD,GAAA,GAAEE,GAAcF,GAAA,GAClCG,IAAkC7C,EAAAA,EAAAA,WAAkB,GAAM8C,IAAA5C,EAAAA,EAAAA,GAAA2C,GAAA,GAAnDE,GAASD,GAAA,GAAEE,GAAYF,GAAA,GAC9BG,IAAkCjD,EAAAA,EAAAA,WAAkB,GAAMkD,IAAAhD,EAAAA,EAAAA,GAAA+C,GAAA,GAAnDE,GAASD,GAAA,GAAEE,GAAYF,GAAA,GA0E9B,OAxEAG,EAAAA,EAAAA,YAAU,WACJlD,GACFmD,EAAAA,EAAIC,QACDC,yBAAyB9D,EAAYE,GACrC6D,MAAK,SAACC,GAAS,IAADC,EACb/C,EAAY8C,EAAIE,KAAKjD,SAAW+C,EAAIE,KAAKjD,SAASkD,WAAa,IAC/D,IAAMC,EAAOJ,EAAIE,KAAKzC,QAAU,GAC1B4C,EAAML,EAAIE,KAAKzB,MAAQ,GAC7Bf,EAAU0C,GACV9B,EAAe+B,GACf3B,EAAQ2B,GACR/C,GAAmC,QAApB2C,EAAAD,EAAIE,KAAK7C,mBAAW,IAAA4C,OAAA,EAApBA,EAAsBK,SAAU,IAC/CxC,EAAmBkC,EAAIE,KAAKK,4BAA6B,GACzDzB,GAAsBkB,EAAIE,KAAKM,cAAgB,IAC/CtB,KAAiBc,EAAIE,KAAKO,iBAC1BnB,KAAeU,EAAIE,KAAKQ,qBACxBhB,GAAiC,YAApBM,EAAIE,KAAKS,QACtBzC,IAAkB8B,EAAIE,KAAKU,sBAE3BlE,GAAe,EACjB,IACCmE,OAAM,SAACC,GACN3E,GAAS4E,EAAAA,EAAAA,KAA0BC,EAAAA,EAAAA,GAAeF,EAAIG,SACtDvE,GAAe,EACjB,GAEN,GAAG,CAACD,EAAaN,EAAUH,EAAYE,KAEvCyD,EAAAA,EAAAA,YAAU,WACR,GAAI9C,EAAU,CACZ,IAAMqE,EAAoB,CACxBC,IAAK9D,EACLoC,UAAWA,GACXhC,OAAQA,EACRgB,KAAMA,EACN2C,uBAAwBvD,EACxBwD,iBAAkBhC,GAClBiC,yBAA0BrC,GAC1BsC,kBAAmBtD,EACnBhB,SAAUuE,SAASvE,GACnBuD,aAAc3B,IAGhBe,EAAAA,EAAIC,QACD4B,6BAA6BzF,EAAYE,EAAQgF,GACjDnB,MAAK,WACJjD,GAAY,GACZhB,GAAqB,EACvB,IACC+E,OAAM,SAACC,GACN3E,GAAS4E,EAAAA,EAAAA,KAA0BC,EAAAA,EAAAA,GAAeF,EAAIG,SACtDnE,GAAY,EACd,GACJ,CACF,GAAG,CACDD,EACAb,EACAE,EACAmB,EACAI,EACAgB,EACAZ,EACAZ,EACAoC,GACAJ,GACAQ,GACAxB,EACAY,GACA/C,EACAK,KAIAuF,EAAAA,EAAAA,KAACC,EAAAA,EAAY,CACXC,UAAW7F,EACX8F,QAAS,WACP/F,GAAqB,EACvB,EACAgG,MAAM,0BACNC,WAAWL,EAAAA,EAAAA,KAACM,EAAAA,IAAqB,IAAIC,UAErCP,EAAAA,EAAAA,KAAA,QACEQ,YAAU,EACVC,aAAa,MACbC,SAAU,SAACC,GACTA,EAAEC,iBACFxF,GAAY,EACd,EAAEmF,UAEFM,EAAAA,EAAAA,MAACC,EAAAA,IAAU,CAACC,kBAAkB,EAAOC,aAAa,EAAMT,SAAA,EACtDP,EAAAA,EAAAA,KAACiB,EAAAA,IAAM,CACLC,QAASnD,GACToD,GAAG,YACHC,KAAK,YACLC,MAAM,aACNC,SAAU,SAACX,GACT3C,GAAa2C,EAAEY,OAAOL,QACxB,KAEFlB,EAAAA,EAAAA,KAACwB,EAAAA,IAAO,CAACH,MAAO,cAAeI,GAAI,CAAEC,MAAO,QAASnB,SAClD5E,KAGHqE,EAAAA,EAAAA,KAAC2B,EAAAA,IAAQ,CACPR,GAAG,WACHC,KAAK,WACLE,SAAU,SAACX,GACLA,EAAEY,OAAOK,SAASC,OACpBrG,EAAYmF,EAAEY,OAAOO,MAEzB,EACAT,MAAM,WACNS,MAAOvG,EACPwG,QAAS,YAEX/B,EAAAA,EAAAA,KAAC2B,EAAAA,IAAQ,CACPR,GAAG,eACHC,KAAK,eACLE,SAAU,SAACX,GACTvD,GAAsBuD,EAAEY,OAAOO,MACjC,EACAE,YAAY,qCACZX,MAAM,gBACNS,MAAO3E,MAET0D,EAAAA,EAAAA,MAAA,YAAUoB,UAAW,YAAY1B,SAAA,EAC/BP,EAAAA,EAAAA,KAAA,UAAAO,SAAQ,oBACRP,EAAAA,EAAAA,KAAC2B,EAAAA,IAAQ,CACPR,GAAG,SACHC,KAAK,SACLE,SAAU,SAACX,GACT3E,EAAU2E,EAAEY,OAAOO,MACrB,EACAE,YAAY,SACZX,MAAM,SACNS,MAAO/F,KAETiE,EAAAA,EAAAA,KAACkC,EAAAA,EAAkB,CACjBd,KAAK,OACLC,MAAM,OACNc,SAAUxF,EACV2E,SAAU,SAACc,GACTpF,EAAQoF,EACV,EACAC,eAAe,UACfC,iBAAiB,YACjBC,YAAU,QAGd1B,EAAAA,EAAAA,MAAA,YAAUoB,UAAW,YAAY1B,SAAA,EAC/BP,EAAAA,EAAAA,KAAA,UAAAO,SAAQ,yBAERP,EAAAA,EAAAA,KAACiB,EAAAA,IAAM,CACLC,QAAS3D,GACT4D,GAAG,cACHC,KAAK,cACLC,MAAM,mBACNC,SAAU,SAACX,GACTnD,GAAemD,EAAEY,OAAOL,QAC1B,EACAsB,YAAa,gCAGfxC,EAAAA,EAAAA,KAACiB,EAAAA,IAAM,CACLC,QAAS3E,EACT4E,GAAG,iBACHC,KAAK,iBACLC,MAAM,gBACNC,SAAU,SAACX,GACTnE,EAAgBmE,EAAEY,OAAOL,QAC3B,EACAsB,YAAa,mBAGfxC,EAAAA,EAAAA,KAACiB,EAAAA,IAAM,CACLC,QAAS/E,EACTgF,GAAG,eACHC,KAAK,eACLC,MAAM,gBACNC,SAAU,SAACX,GACTvE,EAAmBuE,EAAEY,OAAOL,QAC9B,EACAsB,YAAa,4BAEfxC,EAAAA,EAAAA,KAACiB,EAAAA,IAAM,CACLC,QAASvD,GACTwD,GAAG,YACHC,KAAK,YACLC,MAAM,UACNC,SAAU,SAACX,GACT/C,GAAa+C,EAAEY,OAAOL,QACxB,EACAsB,YAAa,oCAGjB3B,EAAAA,EAAAA,MAAC4B,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIlB,GAAIzH,EAAAA,GAAgB4I,eAAerC,SAAA,EACpDP,EAAAA,EAAAA,KAAC6C,EAAAA,IAAM,CACL1B,GAAI,0BACJ2B,KAAK,SACLC,QAAQ,UACRC,SAAUjI,GAAeI,EACzB8H,QAAS,WACP7I,GAAqB,EACvB,EACAiH,MAAO,YAETrB,EAAAA,EAAAA,KAAC6C,EAAAA,IAAM,CACL1B,GAAI,mBACJ2B,KAAK,SACLC,QAAQ,aACRC,SAAUjI,GAAeI,EACzBkG,MAAO,kBAOrB,G,2HC/CA,IAhN2B,SAAHlH,GASI,IAR1BgI,EAAQhI,EAARgI,SACAf,EAAIjH,EAAJiH,KACAC,EAAKlH,EAALkH,MAAK6B,EAAA/I,EACLgJ,QAAAA,OAAO,IAAAD,EAAG,GAAEA,EAAAE,EAAAjJ,EACZkI,eAAAA,OAAc,IAAAe,EAAG,GAAEA,EAAAC,EAAAlJ,EACnBmI,iBAAAA,OAAgB,IAAAe,EAAG,GAAEA,EACrB/B,EAAQnH,EAARmH,SAAQgC,EAAAnJ,EACRoI,WAAAA,OAAU,IAAAe,GAAQA,EAElB3I,GAAsCC,EAAAA,EAAAA,UAAmB,CAAC,KAAIC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAvD4I,EAAW1I,EAAA,GAAE2I,EAAc3I,EAAA,GAClCI,GAA0CL,EAAAA,EAAAA,UAAmB,CAAC,KAAIM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAA3DwI,EAAavI,EAAA,GAAEwI,EAAgBxI,EAAA,GAChCyI,GAAaC,EAAAA,EAAAA,cAGnB3F,EAAAA,EAAAA,YAAU,WACR,GACyB,IAAvBsF,EAAYM,QACO,KAAnBN,EAAY,IACa,IAAzBE,EAAcI,QACO,KAArBJ,EAAc,IACdtB,GACa,KAAbA,EACA,CACA,IAAM2B,EAAgB3B,EAAS4B,MAAM,KACjCC,EAAO,GACPC,EAAS,GAEbH,EAAcI,SAAQ,SAACC,GACrB,IAAMC,EAAeD,EAAQJ,MAAM,KACP,IAAxBK,EAAaP,SACfG,EAAKK,KAAKD,EAAa,IACvBH,EAAOI,KAAKD,EAAa,IAE7B,IAEAJ,EAAKK,KAAK,IACVJ,EAAOI,KAAK,IAEZb,EAAeQ,GACfN,EAAiBO,EACnB,CACF,GAAG,CAACV,EAAaE,EAAetB,KAGhClE,EAAAA,EAAAA,YAAU,WACR,IAAMqG,EAAYX,EAAWY,QACzBD,GAAaf,EAAYM,OAAS,GACpCS,EAAUE,gBAAe,EAG7B,GAAG,CAACjB,IAGJ,IAAMkB,GAAcC,EAAAA,EAAAA,SAAO,IAC3BC,EAAAA,EAAAA,kBAAgB,WACVF,EAAYF,QACdE,EAAYF,SAAU,EAGxBK,GAEF,GAAG,CAACrB,EAAaE,IAGjB,IAiBMoB,EAAc,SAAClE,GACnBA,EAAEmE,UAEF,IAAIC,GAAcC,EAAAA,EAAAA,GAAOzB,GACnB0B,EAAQC,IAAIvE,EAAEY,OAAQ,gBAAiB,KAE7CwD,EADiBjF,SAASmF,IACCtE,EAAEY,OAAOO,MAEpC0B,EAAeuB,EACjB,EAEMI,EAAgB,SAACxE,GACrBA,EAAEmE,UAEF,IAAIC,GAAcC,EAAAA,EAAAA,GAAOvB,GACnBwB,EAAQC,IAAIvE,EAAEY,OAAQ,gBAAiB,KAE7CwD,EADiBjF,SAASmF,IACCtE,EAAEY,OAAOO,MAEpC4B,EAAiBqB,EACnB,EAGMH,EAAoBQ,KAAS,WACjC,IAAIC,EAAc,GAElB9B,EAAYW,SAAQ,SAACoB,EAAQL,GAC3B,GAAI1B,EAAY0B,IAAUxB,EAAcwB,GAAQ,CAC9C,IAAIM,EAAY,GAAAC,OAAMF,EAAM,KAAAE,OAAI/B,EAAcwB,IAChC,IAAVA,IACFM,EAAY,IAAAC,OAAOD,IAErBF,EAAW,GAAAG,OAAMH,GAAWG,OAAGD,EACjC,CACF,IAEAjE,EAAS+D,EACX,GAAG,KAEGI,EAAShC,EAAciC,KAAI,SAACvB,EAASc,GACzC,OACEpE,EAAAA,EAAAA,MAAC4B,EAAAA,IAAI,CACHC,MAAI,EACJC,GAAI,GACJV,UAAW,2BAA2B1B,SAAA,EAGtCP,EAAAA,EAAAA,KAAC2B,EAAAA,IAAQ,CACPR,GAAE,GAAAqE,OAAKpE,EAAI,SAAAoE,OAAQP,EAAMxG,YACzB4C,MAAO,GACPD,KAAI,GAAAoE,OAAKpE,EAAI,KAAAoE,OAAIP,EAAMxG,YACvBqD,MAAOyB,EAAY0B,GACnB3D,SAAUuD,EACVI,MAAOA,EACPjD,YAAaK,KAEfrC,EAAAA,EAAAA,KAAA,QAAMiC,UAAW,WAAW1B,SAAC,OAC7BP,EAAAA,EAAAA,KAAC2B,EAAAA,IAAQ,CACPR,GAAE,GAAAqE,OAAKpE,EAAI,WAAAoE,OAAUP,EAAMxG,YAC3B4C,MAAO,GACPD,KAAI,GAAAoE,OAAKpE,EAAI,KAAAoE,OAAIP,EAAMxG,YACvBqD,MAAO2B,EAAcwB,GACrB3D,SAAU6D,EACVF,MAAOA,EACPjD,YAAaM,EACbqD,YAAaV,IAAUxB,EAAcI,OAAS,GAAI7D,EAAAA,EAAAA,KAAC4F,EAAAA,IAAO,IAAM,KAChEC,cAAe,YAnFF,WACnB,GACiD,KAA/CtC,EAAYA,EAAYM,OAAS,GAAGiC,QACe,KAAnDrC,EAAcA,EAAcI,OAAS,GAAGiC,OACxC,CACA,IAAMC,GAAQf,EAAAA,EAAAA,GAAOzB,GACfyC,GAAUhB,EAAAA,EAAAA,GAAOvB,GAEvBsC,EAAS1B,KAAK,IACd2B,EAAW3B,KAAK,IAEhBb,EAAeuC,GACfrC,EAAiBsC,EACnB,CACF,CAsEUC,EACF,MACA,cAAAT,OAxBiBpE,EAAI,KAAAoE,OAAIP,EAAMxG,YA2BvC,IAEA,OACEuB,EAAAA,EAAAA,KAACkG,EAAAA,SAAQ,CAAA3F,UACPM,EAAAA,EAAAA,MAAC4B,EAAAA,IAAI,CACHC,MAAI,EACJC,GAAI,GACJlB,GAAI,CACF,oBAAqB,CACnB0E,QAAS,QAEX,cAAe,CACbC,UAAW,SACXC,OAAQ,cACRC,WAAY,MAEd/F,SAAA,EAEFM,EAAAA,EAAAA,MAAC0F,EAAAA,IAAU,CAAAhG,SAAA,CACRc,EACY,KAAZ8B,IACCnD,EAAAA,EAAAA,KAACwG,EAAAA,IAAG,CACF/E,GAAI,CACFgF,WAAY,EACZN,QAAS,OACTO,WAAY,SACZ,cAAe,CACbhF,MAAO,KAETnB,UAEFP,EAAAA,EAAAA,KAAC2G,EAAAA,IAAO,CAACxD,QAASA,EAASyD,UAAU,MAAKrG,UACxCP,EAAAA,EAAAA,KAAC6G,EAAAA,IAAQ,CAACC,MAAO,CAAEpF,MAAO,GAAIqF,OAAQ,cAK9ClG,EAAAA,EAAAA,MAAC2F,EAAAA,IAAG,CACFxF,YAAauB,EACbd,GAAI,CACFuF,QAAS,GACTD,OAAQ,IACRE,UAAW,OACXC,SAAU,WACVC,UAAW,IACX5G,SAAA,CAEDkF,GACDzF,EAAAA,EAAAA,KAAA,OAAKoH,IAAKzD,WAKpB,C","sources":["screens/Console/Buckets/BucketDetails/EditReplicationModal.tsx","screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport {\n BucketReplicationIcon,\n Button,\n FormLayout,\n InputBox,\n ReadBox,\n Switch,\n Grid,\n} from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport QueryMultiSelector from \"../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector\";\nimport {\n createTenantCommon,\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IEditReplicationModal {\n closeModalAndRefresh: (refresh: boolean) => void;\n open: boolean;\n classes: any;\n bucketName: string;\n ruleID: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...spacingUtils,\n ...createTenantCommon,\n ...formFieldStyles,\n ...modalStyleUtils,\n modalFormScrollable: {\n ...modalStyleUtils.modalFormScrollable,\n paddingRight: 10,\n },\n });\n\nconst EditReplicationModal = ({\n closeModalAndRefresh,\n open,\n classes,\n bucketName,\n ruleID,\n}: IEditReplicationModal) => {\n const dispatch = useAppDispatch();\n const [editLoading, setEditLoading] = useState(true);\n const [saveEdit, setSaveEdit] = useState(false);\n const [priority, setPriority] = useState(\"1\");\n const [destination, setDestination] = useState(\"\");\n const [prefix, setPrefix] = useState(\"\");\n const [repDeleteMarker, setRepDeleteMarker] = useState(false);\n const [metadataSync, setMetadataSync] = useState(false);\n const [initialTags, setInitialTags] = useState(\"\");\n const [tags, setTags] = useState(\"\");\n const [targetStorageClass, setTargetStorageClass] = useState(\"\");\n const [repExisting, setRepExisting] = useState(false);\n const [repDelete, setRepDelete] = useState(false);\n const [ruleState, setRuleState] = useState(false);\n\n useEffect(() => {\n if (editLoading) {\n api.buckets\n .getBucketReplicationRule(bucketName, ruleID)\n .then((res) => {\n setPriority(res.data.priority ? res.data.priority.toString() : \"\");\n const pref = res.data.prefix || \"\";\n const tag = res.data.tags || \"\";\n setPrefix(pref);\n setInitialTags(tag);\n setTags(tag);\n setDestination(res.data.destination?.bucket || \"\");\n setRepDeleteMarker(res.data.delete_marker_replication || false);\n setTargetStorageClass(res.data.storageClass || \"\");\n setRepExisting(!!res.data.existingObjects);\n setRepDelete(!!res.data.deletes_replication);\n setRuleState(res.data.status === \"Enabled\");\n setMetadataSync(!!res.data.metadata_replication);\n\n setEditLoading(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setEditLoading(false);\n });\n }\n }, [editLoading, dispatch, bucketName, ruleID]);\n\n useEffect(() => {\n if (saveEdit) {\n const remoteBucketsInfo = {\n arn: destination,\n ruleState: ruleState,\n prefix: prefix,\n tags: tags,\n replicateDeleteMarkers: repDeleteMarker,\n replicateDeletes: repDelete,\n replicateExistingObjects: repExisting,\n replicateMetadata: metadataSync,\n priority: parseInt(priority),\n storageClass: targetStorageClass,\n };\n\n api.buckets\n .updateMultiBucketReplication(bucketName, ruleID, remoteBucketsInfo)\n .then(() => {\n setSaveEdit(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setSaveEdit(false);\n });\n }\n }, [\n saveEdit,\n bucketName,\n ruleID,\n destination,\n prefix,\n tags,\n repDeleteMarker,\n priority,\n repDelete,\n repExisting,\n ruleState,\n metadataSync,\n targetStorageClass,\n closeModalAndRefresh,\n dispatch,\n ]);\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n title=\"Edit Bucket Replication\"\n titleIcon={}\n >\n ) => {\n e.preventDefault();\n setSaveEdit(true);\n }}\n >\n \n {\n setRuleState(e.target.checked);\n }}\n />\n \n {destination}\n \n\n ) => {\n if (e.target.validity.valid) {\n setPriority(e.target.value);\n }\n }}\n label=\"Priority\"\n value={priority}\n pattern={\"[0-9]*\"}\n />\n ) => {\n setTargetStorageClass(e.target.value);\n }}\n placeholder=\"STANDARD_IA,REDUCED_REDUNDANCY etc\"\n label=\"Storage Class\"\n value={targetStorageClass}\n />\n
\n Object Filters\n ) => {\n setPrefix(e.target.value);\n }}\n placeholder=\"prefix\"\n label=\"Prefix\"\n value={prefix}\n />\n {\n setTags(vl);\n }}\n keyPlaceholder=\"Tag Key\"\n valuePlaceholder=\"Tag Value\"\n withBorder\n />\n
\n
\n Replication Options\n\n {\n setRepExisting(e.target.checked);\n }}\n description={\"Replicate existing objects\"}\n />\n\n {\n setMetadataSync(e.target.checked);\n }}\n description={\"Metadata Sync\"}\n />\n\n {\n setRepDeleteMarker(e.target.checked);\n }}\n description={\"Replicate soft deletes\"}\n />\n {\n setRepDelete(e.target.checked);\n }}\n description={\"Replicate versioned deletes\"}\n />\n
\n \n {\n closeModalAndRefresh(false);\n }}\n label={\"Cancel\"}\n />\n \n \n
\n \n \n );\n};\n\nexport default withStyles(styles)(EditReplicationModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, {\n ChangeEvent,\n createRef,\n Fragment,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport get from \"lodash/get\";\nimport debounce from \"lodash/debounce\";\nimport {\n AddIcon,\n Box,\n Grid,\n HelpIcon,\n InputBox,\n InputLabel,\n Tooltip,\n} from \"mds\";\n\ninterface IQueryMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n keyPlaceholder?: string;\n valuePlaceholder?: string;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst QueryMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n keyPlaceholder = \"\",\n valuePlaceholder = \"\",\n onChange,\n withBorder = false,\n}: IQueryMultiSelector) => {\n const [currentKeys, setCurrentKeys] = useState([\"\"]);\n const [currentValues, setCurrentValues] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentKeys.length === 1 &&\n currentKeys[0] === \"\" &&\n currentValues.length === 1 &&\n currentValues[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\"&\");\n let keys = [];\n let values = [];\n\n elementsSplit.forEach((element: string) => {\n const splittedVals = element.split(\"=\");\n if (splittedVals.length === 2) {\n keys.push(splittedVals[0]);\n values.push(splittedVals[1]);\n }\n });\n\n keys.push(\"\");\n values.push(\"\");\n\n setCurrentKeys(keys);\n setCurrentValues(values);\n }\n }, [currentKeys, currentValues, elements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n const refScroll = bottomList.current;\n if (refScroll && currentKeys.length > 1) {\n refScroll.scrollIntoView(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys]);\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useLayoutEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n debouncedOnChange();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys, currentValues]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = () => {\n if (\n currentKeys[currentKeys.length - 1].trim() !== \"\" &&\n currentValues[currentValues.length - 1].trim() !== \"\"\n ) {\n const keysList = [...currentKeys];\n const valuesList = [...currentValues];\n\n keysList.push(\"\");\n valuesList.push(\"\");\n\n setCurrentKeys(keysList);\n setCurrentValues(valuesList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeKey = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentKeys];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentKeys(updatedElement);\n };\n\n const onChangeValue = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentValues];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentValues(updatedElement);\n };\n\n // Debounce for On Change\n const debouncedOnChange = debounce(() => {\n let queryString = \"\";\n\n currentKeys.forEach((keyVal, index) => {\n if (currentKeys[index] && currentValues[index]) {\n let insertString = `${keyVal}=${currentValues[index]}`;\n if (index !== 0) {\n insertString = `&${insertString}`;\n }\n queryString = `${queryString}${insertString}`;\n }\n });\n\n onChange(queryString);\n }, 500);\n\n const inputs = currentValues.map((element, index) => {\n return (\n \n \n :\n : null}\n overlayAction={() => {\n addEmptyLine();\n }}\n />\n \n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n \n \n \n \n \n )}\n \n \n {inputs}\n
\n \n \n \n );\n};\nexport default QueryMultiSelector;\n"],"names":["withStyles","theme","createStyles","_objectSpread","spacingUtils","createTenantCommon","formFieldStyles","modalStyleUtils","modalFormScrollable","paddingRight","_ref","closeModalAndRefresh","open","bucketName","classes","ruleID","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","editLoading","setEditLoading","_useState3","_useState4","saveEdit","setSaveEdit","_useState5","_useState6","priority","setPriority","_useState7","_useState8","destination","setDestination","_useState9","_useState10","prefix","setPrefix","_useState11","_useState12","repDeleteMarker","setRepDeleteMarker","_useState13","_useState14","metadataSync","setMetadataSync","_useState15","_useState16","initialTags","setInitialTags","_useState17","_useState18","tags","setTags","_useState19","_useState20","targetStorageClass","setTargetStorageClass","_useState21","_useState22","repExisting","setRepExisting","_useState23","_useState24","repDelete","setRepDelete","_useState25","_useState26","ruleState","setRuleState","useEffect","api","buckets","getBucketReplicationRule","then","res","_res$data$destination","data","toString","pref","tag","bucket","delete_marker_replication","storageClass","existingObjects","deletes_replication","status","metadata_replication","catch","err","setModalErrorSnackMessage","errorToHandler","error","remoteBucketsInfo","arn","replicateDeleteMarkers","replicateDeletes","replicateExistingObjects","replicateMetadata","parseInt","updateMultiBucketReplication","_jsx","ModalWrapper","modalOpen","onClose","title","titleIcon","BucketReplicationIcon","children","noValidate","autoComplete","onSubmit","e","preventDefault","_jsxs","FormLayout","containerPadding","withBorders","Switch","checked","id","name","label","onChange","target","ReadBox","sx","width","InputBox","validity","valid","value","pattern","placeholder","className","QueryMultiSelector","elements","vl","keyPlaceholder","valuePlaceholder","withBorder","description","Grid","item","xs","modalButtonBar","Button","type","variant","disabled","onClick","_ref$tooltip","tooltip","_ref$keyPlaceholder","_ref$valuePlaceholder","_ref$withBorder","currentKeys","setCurrentKeys","currentValues","setCurrentValues","bottomList","createRef","length","elementsSplit","split","keys","values","forEach","element","splittedVals","push","refScroll","current","scrollIntoView","firstUpdate","useRef","useLayoutEffect","debouncedOnChange","onChangeKey","persist","updatedElement","_toConsumableArray","index","get","onChangeValue","debounce","queryString","keyVal","insertString","concat","inputs","map","overlayIcon","AddIcon","overlayAction","trim","keysList","valuesList","addEmptyLine","Fragment","display","alignSelf","margin","fontWeight","InputLabel","Box","marginLeft","alignItems","Tooltip","placement","HelpIcon","style","height","padding","overflowY","position","marginTop","ref"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/3690.b6d7d3b6.chunk.js b/portal-ui/build/static/js/3690.b6d7d3b6.chunk.js new file mode 100644 index 000000000..c5f804dff --- /dev/null +++ b/portal-ui/build/static/js/3690.b6d7d3b6.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[3690],{33690:function(e,t,n){"use strict";n.r(t);var o=n(29439),r=n(72791),i=n(31776),a=n(66315),c=n(82342),l=n(29945),u=n(23814),s=n(87995),f=n(81551),p=n(19859),d=n(56028),y=n(92217),b=n(80184);t.default=function(e){var t=e.open,n=e.bucketName,m=e.actualPolicy,v=e.actualDefinition,h=e.closeModalAndRefresh,g=(0,f.TL)(),C=(0,r.useState)(!1),x=(0,o.Z)(C,2),j=x[0],w=x[1],O=(0,r.useState)(""),P=(0,o.Z)(O,2),S=P[0],k=P[1],D=(0,r.useState)(p.L),E=(0,o.Z)(D,2),T=E[0],R=E[1];return(0,r.useEffect)((function(){k(m),R(v?JSON.stringify(JSON.parse(v),null,4):p.L)}),[k,m,R,v]),(0,b.jsx)(d.Z,{title:"Change Access Policy",modalOpen:t,onClose:function(){h()},titleIcon:(0,b.jsx)(l.QXQ,{}),children:(0,b.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),!j&&S&&(w(!0),i.h.buckets.bucketSetPolicy(n,{access:S,definition:T}).then((function(){w(!1),h()})).catch((function(e){w(!1),g((0,s.zb)((0,c.g)(e.error)))})))},children:[(0,b.jsxs)(l.ltY,{withBorders:!1,containerPadding:!1,children:[(0,b.jsx)(l.PhF,{value:S,label:"Access Policy",id:"select-access-policy",name:"select-access-policy",onChange:function(e){k(e)},options:[{value:a.cv.PRIVATE,label:"Private"},{value:a.cv.PUBLIC,label:"Public"},{value:a.cv.CUSTOM,label:"Custom"}]}),"PUBLIC"===S&&(0,b.jsx)(l.xuv,{className:"muted",style:{marginTop:"25px",fontSize:"14px",fontStyle:"italic"},children:"* Warning: With Public access anyone will be able to upload, download and delete files from this Bucket *"}),"CUSTOM"===S&&(0,b.jsx)(l.rjZ,{item:!0,xs:12,children:(0,b.jsx)(y.Z,{label:"Write Policy",value:T,onChange:function(e){R(e)},editorHeight:"300px"})})]}),(0,b.jsxs)(l.xuv,{sx:u.ID.modalButtonBar,children:[(0,b.jsx)(l.zxk,{id:"cancel",type:"button",variant:"regular",onClick:function(){h()},disabled:j,label:"Cancel"}),(0,b.jsx)(l.zxk,{id:"set",type:"submit",variant:"callAction",disabled:j||"CUSTOM"===S&&!T,label:"Set"})]})]})})}},92217:function(e,t,n){"use strict";var o=n(72791),r=n(29945),i=n(78029),a=n.n(i),c=n(27454),l=n(80184);t.Z=function(e){var t=e.value,n=e.label,i=void 0===n?"":n,u=e.tooltip,s=void 0===u?"":u,f=e.mode,p=void 0===f?"json":f,d=e.onChange,y=e.editorHeight,b=void 0===y?250:y;return(0,l.jsx)(r.pq4,{value:t,onChange:function(e){return d(e)},mode:p,tooltip:s,editorHeight:b,label:i,helpTools:(0,l.jsx)(o.Fragment,{children:(0,l.jsx)(c.Z,{tooltip:"Copy to Clipboard",children:(0,l.jsx)(a(),{text:t,children:(0,l.jsx)(r.zxk,{type:"button",id:"copy-code-mirror",icon:(0,l.jsx)(r.TIy,{}),color:"primary",variant:"regular"})})})})})}},19859:function(e,t,n){"use strict";n.d(t,{L:function(){return o}});var o='{\n "Version": "2012-10-17",\n "Statement": [\n \n ]\n}'},76998:function(e,t,n){"use strict";var o=n(42458),r={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var n,i,a,c,l,u,s=!1;t||(t={}),n=t.debug||!1;try{if(a=o(),c=document.createRange(),l=document.getSelection(),(u=document.createElement("span")).textContent=e,u.ariaHidden="true",u.style.all="unset",u.style.position="fixed",u.style.top=0,u.style.clip="rect(0, 0, 0, 0)",u.style.whiteSpace="pre",u.style.webkitUserSelect="text",u.style.MozUserSelect="text",u.style.msUserSelect="text",u.style.userSelect="text",u.addEventListener("copy",(function(o){if(o.stopPropagation(),t.format)if(o.preventDefault(),"undefined"===typeof o.clipboardData){n&&console.warn("unable to use e.clipboardData"),n&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var i=r[t.format]||r.default;window.clipboardData.setData(i,e)}else o.clipboardData.clearData(),o.clipboardData.setData(t.format,e);t.onCopy&&(o.preventDefault(),t.onCopy(o.clipboardData))})),document.body.appendChild(u),c.selectNodeContents(u),l.addRange(c),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");s=!0}catch(f){n&&console.error("unable to copy using execCommand: ",f),n&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),s=!0}catch(f){n&&console.error("unable to copy using clipboardData: ",f),n&&console.error("falling back to prompt"),i=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(i,e)}}finally{l&&("function"==typeof l.removeRange?l.removeRange(c):l.removeAllRanges()),u&&document.body.removeChild(u),a()}return s}},568:function(e,t,n){"use strict";function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var r=c(n(72791)),i=c(n(76998)),a=["text","onCopy","options","children"];function c(e){return e&&e.__esModule?e:{default:e}}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function u(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function f(e,t){for(var n=0;n.\n\nimport React, { useEffect, useState } from \"react\";\nimport { api } from \"api\";\nimport { BucketAccess } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport {\n Box,\n Button,\n ChangeAccessPolicyIcon,\n FormLayout,\n Grid,\n Select,\n} from \"mds\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { emptyPolicy } from \"../../Policies/utils\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport CodeMirrorWrapper from \"../../Common/FormComponents/CodeMirrorWrapper/CodeMirrorWrapper\";\n\ninterface ISetAccessPolicyProps {\n open: boolean;\n bucketName: string;\n actualPolicy: BucketAccess | string;\n actualDefinition: string;\n closeModalAndRefresh: () => void;\n}\n\nconst SetAccessPolicy = ({\n open,\n bucketName,\n actualPolicy,\n actualDefinition,\n closeModalAndRefresh,\n}: ISetAccessPolicyProps) => {\n const dispatch = useAppDispatch();\n const [addLoading, setAddLoading] = useState(false);\n const [accessPolicy, setAccessPolicy] = useState(\"\");\n const [policyDefinition, setPolicyDefinition] = useState(emptyPolicy);\n const addRecord = (event: React.FormEvent) => {\n event.preventDefault();\n if (addLoading || !accessPolicy) {\n return;\n }\n setAddLoading(true);\n api.buckets\n .bucketSetPolicy(bucketName, {\n access: accessPolicy as BucketAccess,\n definition: policyDefinition,\n })\n .then(() => {\n setAddLoading(false);\n closeModalAndRefresh();\n })\n .catch((err) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n useEffect(() => {\n setAccessPolicy(actualPolicy);\n setPolicyDefinition(\n actualDefinition\n ? JSON.stringify(JSON.parse(actualDefinition), null, 4)\n : emptyPolicy,\n );\n }, [setAccessPolicy, actualPolicy, setPolicyDefinition, actualDefinition]);\n\n return (\n {\n closeModalAndRefresh();\n }}\n titleIcon={}\n >\n ) => {\n addRecord(e);\n }}\n >\n \n {\n setAccessPolicy(value as BucketAccess);\n }}\n options={[\n { value: BucketAccess.PRIVATE, label: \"Private\" },\n { value: BucketAccess.PUBLIC, label: \"Public\" },\n { value: BucketAccess.CUSTOM, label: \"Custom\" },\n ]}\n />\n {accessPolicy === \"PUBLIC\" && (\n \n * Warning: With Public access anyone will be able to upload,\n download and delete files from this Bucket *\n \n )}\n {accessPolicy === \"CUSTOM\" && (\n \n {\n setPolicyDefinition(value);\n }}\n editorHeight={\"300px\"}\n />\n \n )}\n \n \n {\n closeModalAndRefresh();\n }}\n disabled={addLoading}\n label={\"Cancel\"}\n />\n \n \n \n \n );\n};\n\nexport default SetAccessPolicy;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Button, CodeEditor, CopyIcon } from \"mds\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport TooltipWrapper from \"../../TooltipWrapper/TooltipWrapper\";\n\ninterface ICodeWrapper {\n value: string;\n label?: string;\n mode?: string;\n tooltip?: string;\n onChange: (value: string) => any;\n editorHeight?: string | number;\n}\n\nconst CodeMirrorWrapper = ({\n value,\n label = \"\",\n tooltip = \"\",\n mode = \"json\",\n onChange,\n editorHeight = 250,\n}: ICodeWrapper) => {\n return (\n onChange(value)}\n mode={mode}\n tooltip={tooltip}\n editorHeight={editorHeight}\n label={label}\n helpTools={\n \n \n \n }\n color={\"primary\"}\n variant={\"regular\"}\n />\n \n \n \n }\n />\n );\n};\n\nexport default CodeMirrorWrapper;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const emptyPolicy =\n \"{\\n\" +\n ' \"Version\": \"2012-10-17\",\\n' +\n ' \"Statement\": [\\n' +\n \" \\n\" +\n \" ]\\n\" +\n \"}\";\n","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n"],"names":["_ref","open","bucketName","actualPolicy","actualDefinition","closeModalAndRefresh","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","addLoading","setAddLoading","_useState3","_useState4","accessPolicy","setAccessPolicy","_useState5","emptyPolicy","_useState6","policyDefinition","setPolicyDefinition","useEffect","JSON","stringify","parse","_jsx","ModalWrapper","title","modalOpen","onClose","titleIcon","ChangeAccessPolicyIcon","children","_jsxs","noValidate","autoComplete","onSubmit","e","preventDefault","api","buckets","bucketSetPolicy","access","definition","then","catch","err","setModalErrorSnackMessage","errorToHandler","error","FormLayout","withBorders","containerPadding","Select","value","label","id","name","onChange","options","BucketAccess","PRIVATE","PUBLIC","CUSTOM","Box","className","style","marginTop","fontSize","fontStyle","Grid","item","xs","CodeMirrorWrapper","editorHeight","sx","modalStyleUtils","modalButtonBar","Button","type","variant","onClick","disabled","_ref$label","_ref$tooltip","tooltip","_ref$mode","mode","_ref$editorHeight","CodeEditor","helpTools","Fragment","TooltipWrapper","CopyToClipboard","text","icon","CopyIcon","color","deselectCurrent","require","clipboardToIE11Formatting","module","exports","debug","message","reselectPrevious","range","selection","mark","success","document","createRange","getSelection","createElement","textContent","ariaHidden","all","position","top","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","addEventListener","stopPropagation","format","clipboardData","console","warn","window","clearData","setData","onCopy","body","appendChild","selectNodeContents","addRange","execCommand","Error","copyKey","test","navigator","userAgent","replace","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","Object","defineProperty","_react","_interopRequireDefault","_copyToClipboard","_excluded","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","call","_defineProperties","props","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","this","self","TypeError","_assertThisInitialized","_possibleConstructorReturn","ReferenceError","getPrototypeOf","_React$PureComponent","subClass","superClass","create","_inherits","Constructor","protoProps","staticProps","_super","_this","instance","_classCallCheck","_len","args","Array","_key","concat","event","_this$props","elem","Children","only","_this$props2","cloneElement","PureComponent","undefined","rangeCount","active","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","focus"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/3801.e125737d.chunk.js b/portal-ui/build/static/js/3801.e125737d.chunk.js new file mode 100644 index 000000000..a2e284e31 --- /dev/null +++ b/portal-ui/build/static/js/3801.e125737d.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[3801],{79836:function(e,t,a){a.d(t,{Z:function(){return h}});var o=a(63366),r=a(87462),n=a(72791),i=a(28182),l=a(94419),c=a(46646),d=a(31402),s=a(66934),p=a(75878),u=a(21217);function v(e){return(0,u.Z)("MuiTable",e)}(0,p.Z)("MuiTable",["root","stickyHeader"]);var g=a(80184),f=["className","component","padding","size","stickyHeader"],m=(0,s.ZP)("table",{name:"MuiTable",slot:"Root",overridesResolver:function(e,t){var a=e.ownerState;return[t.root,a.stickyHeader&&t.stickyHeader]}})((function(e){var t=e.theme,a=e.ownerState;return(0,r.Z)({display:"table",width:"100%",borderCollapse:"collapse",borderSpacing:0,"& caption":(0,r.Z)({},t.typography.body2,{padding:t.spacing(2),color:(t.vars||t).palette.text.secondary,textAlign:"left",captionSide:"bottom"})},a.stickyHeader&&{borderCollapse:"separate"})})),y="table",h=n.forwardRef((function(e,t){var a=(0,d.Z)({props:e,name:"MuiTable"}),s=a.className,p=a.component,u=void 0===p?y:p,h=a.padding,Z=void 0===h?"normal":h,b=a.size,x=void 0===b?"medium":b,k=a.stickyHeader,w=void 0!==k&&k,C=(0,o.Z)(a,f),H=(0,r.Z)({},a,{component:u,padding:Z,size:x,stickyHeader:w}),R=function(e){var t=e.classes,a={root:["root",e.stickyHeader&&"stickyHeader"]};return(0,l.Z)(a,v,t)}(H),T=n.useMemo((function(){return{padding:Z,size:x,stickyHeader:w}}),[Z,x,w]);return(0,g.jsx)(c.Z.Provider,{value:T,children:(0,g.jsx)(m,(0,r.Z)({as:u,role:u===y?null:"table",ref:t,className:(0,i.Z)(R.root,s),ownerState:H},C))})}))},46646:function(e,t,a){var o=a(72791).createContext();t.Z=o},829:function(e,t,a){var o=a(72791).createContext();t.Z=o},53382:function(e,t,a){a.d(t,{Z:function(){return Z}});var o=a(87462),r=a(63366),n=a(72791),i=a(28182),l=a(94419),c=a(829),d=a(31402),s=a(66934),p=a(75878),u=a(21217);function v(e){return(0,u.Z)("MuiTableBody",e)}(0,p.Z)("MuiTableBody",["root"]);var g=a(80184),f=["className","component"],m=(0,s.ZP)("tbody",{name:"MuiTableBody",slot:"Root",overridesResolver:function(e,t){return t.root}})({display:"table-row-group"}),y={variant:"body"},h="tbody",Z=n.forwardRef((function(e,t){var a=(0,d.Z)({props:e,name:"MuiTableBody"}),n=a.className,s=a.component,p=void 0===s?h:s,u=(0,r.Z)(a,f),Z=(0,o.Z)({},a,{component:p}),b=function(e){var t=e.classes;return(0,l.Z)({root:["root"]},v,t)}(Z);return(0,g.jsx)(c.Z.Provider,{value:y,children:(0,g.jsx)(m,(0,o.Z)({className:(0,i.Z)(b.root,n),as:p,ref:t,role:p===h?null:"rowgroup",ownerState:Z},u))})}))},53994:function(e,t,a){a.d(t,{Z:function(){return k}});var o=a(4942),r=a(63366),n=a(87462),i=a(72791),l=a(28182),c=a(94419),d=a(12065),s=a(14036),p=a(46646),u=a(829),v=a(31402),g=a(66934),f=a(75878),m=a(21217);function y(e){return(0,m.Z)("MuiTableCell",e)}var h=(0,f.Z)("MuiTableCell",["root","head","body","footer","sizeSmall","sizeMedium","paddingCheckbox","paddingNone","alignLeft","alignCenter","alignRight","alignJustify","stickyHeader"]),Z=a(80184),b=["align","className","component","padding","scope","size","sortDirection","variant"],x=(0,g.ZP)("td",{name:"MuiTableCell",slot:"Root",overridesResolver:function(e,t){var a=e.ownerState;return[t.root,t[a.variant],t["size".concat((0,s.Z)(a.size))],"normal"!==a.padding&&t["padding".concat((0,s.Z)(a.padding))],"inherit"!==a.align&&t["align".concat((0,s.Z)(a.align))],a.stickyHeader&&t.stickyHeader]}})((function(e){var t=e.theme,a=e.ownerState;return(0,n.Z)({},t.typography.body2,{display:"table-cell",verticalAlign:"inherit",borderBottom:t.vars?"1px solid ".concat(t.vars.palette.TableCell.border):"1px solid\n ".concat("light"===t.palette.mode?(0,d.$n)((0,d.Fq)(t.palette.divider,1),.88):(0,d._j)((0,d.Fq)(t.palette.divider,1),.68)),textAlign:"left",padding:16},"head"===a.variant&&{color:(t.vars||t).palette.text.primary,lineHeight:t.typography.pxToRem(24),fontWeight:t.typography.fontWeightMedium},"body"===a.variant&&{color:(t.vars||t).palette.text.primary},"footer"===a.variant&&{color:(t.vars||t).palette.text.secondary,lineHeight:t.typography.pxToRem(21),fontSize:t.typography.pxToRem(12)},"small"===a.size&&(0,o.Z)({padding:"6px 16px"},"&.".concat(h.paddingCheckbox),{width:24,padding:"0 12px 0 16px","& > *":{padding:0}}),"checkbox"===a.padding&&{width:48,padding:"0 0 0 4px"},"none"===a.padding&&{padding:0},"left"===a.align&&{textAlign:"left"},"center"===a.align&&{textAlign:"center"},"right"===a.align&&{textAlign:"right",flexDirection:"row-reverse"},"justify"===a.align&&{textAlign:"justify"},a.stickyHeader&&{position:"sticky",top:0,zIndex:2,backgroundColor:(t.vars||t).palette.background.default})})),k=i.forwardRef((function(e,t){var a,o=(0,v.Z)({props:e,name:"MuiTableCell"}),d=o.align,g=void 0===d?"inherit":d,f=o.className,m=o.component,h=o.padding,k=o.scope,w=o.size,C=o.sortDirection,H=o.variant,R=(0,r.Z)(o,b),T=i.useContext(p.Z),M=i.useContext(u.Z),z=M&&"head"===M.variant,N=k;"td"===(a=m||(z?"th":"td"))?N=void 0:!N&&z&&(N="col");var S=H||M&&M.variant,j=(0,n.Z)({},o,{align:g,component:a,padding:h||(T&&T.padding?T.padding:"normal"),size:w||(T&&T.size?T.size:"medium"),sortDirection:C,stickyHeader:"head"===S&&T&&T.stickyHeader,variant:S}),A=function(e){var t=e.classes,a=e.variant,o=e.align,r=e.padding,n=e.size,i={root:["root",a,e.stickyHeader&&"stickyHeader","inherit"!==o&&"align".concat((0,s.Z)(o)),"normal"!==r&&"padding".concat((0,s.Z)(r)),"size".concat((0,s.Z)(n))]};return(0,c.Z)(i,y,t)}(j),O=null;return C&&(O="asc"===C?"ascending":"descending"),(0,Z.jsx)(x,(0,n.Z)({as:a,ref:t,className:(0,l.Z)(A.root,f),"aria-sort":O,scope:N,ownerState:j},R))}))},35855:function(e,t,a){a.d(t,{Z:function(){return b}});var o=a(4942),r=a(87462),n=a(63366),i=a(72791),l=a(28182),c=a(94419),d=a(12065),s=a(829),p=a(31402),u=a(66934),v=a(75878),g=a(21217);function f(e){return(0,g.Z)("MuiTableRow",e)}var m=(0,v.Z)("MuiTableRow",["root","selected","hover","head","footer"]),y=a(80184),h=["className","component","hover","selected"],Z=(0,u.ZP)("tr",{name:"MuiTableRow",slot:"Root",overridesResolver:function(e,t){var a=e.ownerState;return[t.root,a.head&&t.head,a.footer&&t.footer]}})((function(e){var t,a=e.theme;return t={color:"inherit",display:"table-row",verticalAlign:"middle",outline:0},(0,o.Z)(t,"&.".concat(m.hover,":hover"),{backgroundColor:(a.vars||a).palette.action.hover}),(0,o.Z)(t,"&.".concat(m.selected),{backgroundColor:a.vars?"rgba(".concat(a.vars.palette.primary.mainChannel," / ").concat(a.vars.palette.action.selectedOpacity,")"):(0,d.Fq)(a.palette.primary.main,a.palette.action.selectedOpacity),"&:hover":{backgroundColor:a.vars?"rgba(".concat(a.vars.palette.primary.mainChannel," / calc(").concat(a.vars.palette.action.selectedOpacity," + ").concat(a.vars.palette.action.hoverOpacity,"))"):(0,d.Fq)(a.palette.primary.main,a.palette.action.selectedOpacity+a.palette.action.hoverOpacity)}}),t})),b=i.forwardRef((function(e,t){var a=(0,p.Z)({props:e,name:"MuiTableRow"}),o=a.className,d=a.component,u=void 0===d?"tr":d,v=a.hover,g=void 0!==v&&v,m=a.selected,b=void 0!==m&&m,x=(0,n.Z)(a,h),k=i.useContext(s.Z),w=(0,r.Z)({},a,{component:u,hover:g,selected:b,head:k&&"head"===k.variant,footer:k&&"footer"===k.variant}),C=function(e){var t=e.classes,a={root:["root",e.selected&&"selected",e.hover&&"hover",e.head&&"head",e.footer&&"footer"]};return(0,c.Z)(a,f,t)}(w);return(0,y.jsx)(Z,(0,r.Z)({as:u,ref:t,className:(0,l.Z)(C.root,o),role:"tr"===u?null:"row",ownerState:w},x))}))}}]); +//# sourceMappingURL=3801.e125737d.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/3801.e125737d.chunk.js.map b/portal-ui/build/static/js/3801.e125737d.chunk.js.map new file mode 100644 index 000000000..8e4b3c7eb --- /dev/null +++ b/portal-ui/build/static/js/3801.e125737d.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/3801.e125737d.chunk.js","mappings":"+PAEO,SAASA,EAAqBC,GACnC,OAAOC,EAAAA,EAAAA,GAAqB,WAAYD,EAC1C,EACqBE,EAAAA,EAAAA,GAAuB,WAAY,CAAC,OAAQ,iBAAjE,I,WCHMC,EAAY,CAAC,YAAa,YAAa,UAAW,OAAQ,gBAoB1DC,GAAYC,EAAAA,EAAAA,IAAO,QAAS,CAChCC,KAAM,WACNN,KAAM,OACNO,kBAAmB,SAACC,EAAOC,GACzB,IACEC,EACEF,EADFE,WAEF,MAAO,CAACD,EAAOE,KAAMD,EAAWE,cAAgBH,EAAOG,aACzD,GARgBP,EASf,SAAAQ,GAAA,IACDC,EAAKD,EAALC,MACAJ,EAAUG,EAAVH,WAAU,OACNK,EAAAA,EAAAA,GAAS,CACbC,QAAS,QACTC,MAAO,OACPC,eAAgB,WAChBC,cAAe,EACf,aAAaJ,EAAAA,EAAAA,GAAS,CAAC,EAAGD,EAAMM,WAAWC,MAAO,CAChDC,QAASR,EAAMS,QAAQ,GACvBC,OAAQV,EAAMW,MAAQX,GAAOY,QAAQC,KAAKC,UAC1CC,UAAW,OACXC,YAAa,YAEdpB,EAAWE,cAAgB,CAC5BM,eAAgB,YAChB,IACIa,EAAmB,QAiFzB,EAhF2BC,EAAAA,YAAiB,SAAeC,EAASC,GAClE,IAAM1B,GAAQ2B,EAAAA,EAAAA,GAAc,CAC1B3B,MAAOyB,EACP3B,KAAM,aAGJ8B,EAKE5B,EALF4B,UAASC,EAKP7B,EAJF8B,UAAAA,OAAS,IAAAD,EAAGN,EAAgBM,EAAAE,EAI1B/B,EAHFc,QAAAA,OAAO,IAAAiB,EAAG,SAAQA,EAAAC,EAGhBhC,EAFFiC,KAAAA,OAAI,IAAAD,EAAG,SAAQA,EAAAE,EAEblC,EADFI,aAAAA,OAAY,IAAA8B,GAAQA,EAEtBC,GAAQC,EAAAA,EAAAA,GAA8BpC,EAAOL,GACzCO,GAAaK,EAAAA,EAAAA,GAAS,CAAC,EAAGP,EAAO,CACrC8B,UAAAA,EACAhB,QAAAA,EACAmB,KAAAA,EACA7B,aAAAA,IAEIiC,EAxDkB,SAAAnC,GACxB,IACEmC,EAEEnC,EAFFmC,QAGIC,EAAQ,CACZnC,KAAM,CAAC,OAFLD,EADFE,cAG+B,iBAEjC,OAAOmC,EAAAA,EAAAA,GAAeD,EAAO/C,EAAsB8C,EACrD,CA+CkBG,CAAkBtC,GAC5BuC,EAAQjB,EAAAA,SAAc,iBAAO,CACjCV,QAAAA,EACAmB,KAAAA,EACA7B,aAAAA,EACD,GAAG,CAACU,EAASmB,EAAM7B,IACpB,OAAoBsC,EAAAA,EAAAA,KAAKC,EAAAA,EAAaC,SAAU,CAC9CC,MAAOJ,EACPK,UAAuBJ,EAAAA,EAAAA,KAAK9C,GAAWW,EAAAA,EAAAA,GAAS,CAC9CwC,GAAIjB,EACJkB,KAAMlB,IAAcP,EAAmB,KAAO,QAC9CG,IAAKA,EACLE,WAAWqB,EAAAA,EAAAA,GAAKZ,EAAQlC,KAAMyB,GAC9B1B,WAAYA,GACXiC,KAEP,G,4BC/EMQ,E,SAA4BnB,gBAIlC,K,0BCJM0B,E,SAAgC1B,gBAItC,K,wKCPO,SAAS2B,EAAyB3D,GACvC,OAAOC,EAAAA,EAAAA,GAAqB,eAAgBD,EAC9C,EACyBE,EAAAA,EAAAA,GAAuB,eAAgB,CAAC,SAAjE,I,WCHMC,EAAY,CAAC,YAAa,aAmB1ByD,GAAgBvD,EAAAA,EAAAA,IAAO,QAAS,CACpCC,KAAM,eACNN,KAAM,OACNO,kBAAmB,SAACC,EAAOC,GAAM,OAAKA,EAAOE,IAAI,GAH7BN,CAInB,CACDW,QAAS,oBAEL6C,EAAY,CAChBC,QAAS,QAEL/B,EAAmB,QAqDzB,EApD+BC,EAAAA,YAAiB,SAAmBC,EAASC,GAC1E,IAAM1B,GAAQ2B,EAAAA,EAAAA,GAAc,CAC1B3B,MAAOyB,EACP3B,KAAM,iBAGJ8B,EAEE5B,EAFF4B,UAASC,EAEP7B,EADF8B,UAAAA,OAAS,IAAAD,EAAGN,EAAgBM,EAE9BM,GAAQC,EAAAA,EAAAA,GAA8BpC,EAAOL,GACzCO,GAAaK,EAAAA,EAAAA,GAAS,CAAC,EAAGP,EAAO,CACrC8B,UAAAA,IAEIO,EAjCkB,SAAAnC,GACxB,IACEmC,EACEnC,EADFmC,QAKF,OAAOE,EAAAA,EAAAA,GAHO,CACZpC,KAAM,CAAC,SAEoBgD,EAA0Bd,EACzD,CAyBkBG,CAAkBtC,GAClC,OAAoBwC,EAAAA,EAAAA,KAAKQ,EAAAA,EAAiBN,SAAU,CAClDC,MAAOQ,EACPP,UAAuBJ,EAAAA,EAAAA,KAAKU,GAAe7C,EAAAA,EAAAA,GAAS,CAClDqB,WAAWqB,EAAAA,EAAAA,GAAKZ,EAAQlC,KAAMyB,GAC9BmB,GAAIjB,EACJJ,IAAKA,EACLsB,KAAMlB,IAAcP,EAAmB,KAAO,WAC9CrB,WAAYA,GACXiC,KAEP,G,mNCtDO,SAASoB,EAAyB/D,GACvC,OAAOC,EAAAA,EAAAA,GAAqB,eAAgBD,EAC9C,CACA,IACA,GADyBE,EAAAA,EAAAA,GAAuB,eAAgB,CAAC,OAAQ,OAAQ,OAAQ,SAAU,YAAa,aAAc,kBAAmB,cAAe,YAAa,cAAe,aAAc,eAAgB,iB,WCHpNC,EAAY,CAAC,QAAS,YAAa,YAAa,UAAW,QAAS,OAAQ,gBAAiB,WA2B7F6D,GAAgB3D,EAAAA,EAAAA,IAAO,KAAM,CACjCC,KAAM,eACNN,KAAM,OACNO,kBAAmB,SAACC,EAAOC,GACzB,IACEC,EACEF,EADFE,WAEF,MAAO,CAACD,EAAOE,KAAMF,EAAOC,EAAWoD,SAAUrD,EAAO,OAADwD,QAAQC,EAAAA,EAAAA,GAAWxD,EAAW+B,QAAiC,WAAvB/B,EAAWY,SAAwBb,EAAO,UAADwD,QAAWC,EAAAA,EAAAA,GAAWxD,EAAWY,WAAkC,YAArBZ,EAAWyD,OAAuB1D,EAAO,QAADwD,QAASC,EAAAA,EAAAA,GAAWxD,EAAWyD,SAAWzD,EAAWE,cAAgBH,EAAOG,aAC5S,GARoBP,EASnB,SAAAQ,GAAA,IACDC,EAAKD,EAALC,MACAJ,EAAUG,EAAVH,WAAU,OACNK,EAAAA,EAAAA,GAAS,CAAC,EAAGD,EAAMM,WAAWC,MAAO,CACzCL,QAAS,aACToD,cAAe,UAGfC,aAAcvD,EAAMW,KAAO,aAAHwC,OAAgBnD,EAAMW,KAAKC,QAAQ4C,UAAUC,QAAM,kBAAAN,OAChD,UAAvBnD,EAAMY,QAAQ8C,MAAmBC,EAAAA,EAAAA,KAAQC,EAAAA,EAAAA,IAAM5D,EAAMY,QAAQiD,QAAS,GAAI,MAAQC,EAAAA,EAAAA,KAAOF,EAAAA,EAAAA,IAAM5D,EAAMY,QAAQiD,QAAS,GAAI,MAC9H9C,UAAW,OACXP,QAAS,IACe,SAAvBZ,EAAWoD,SAAsB,CAClCtC,OAAQV,EAAMW,MAAQX,GAAOY,QAAQC,KAAKkD,QAC1CC,WAAYhE,EAAMM,WAAW2D,QAAQ,IACrCC,WAAYlE,EAAMM,WAAW6D,kBACL,SAAvBvE,EAAWoD,SAAsB,CAClCtC,OAAQV,EAAMW,MAAQX,GAAOY,QAAQC,KAAKkD,SAClB,WAAvBnE,EAAWoD,SAAwB,CACpCtC,OAAQV,EAAMW,MAAQX,GAAOY,QAAQC,KAAKC,UAC1CkD,WAAYhE,EAAMM,WAAW2D,QAAQ,IACrCG,SAAUpE,EAAMM,WAAW2D,QAAQ,KACd,UAApBrE,EAAW+B,OAAgB0C,EAAAA,EAAAA,GAAA,CAC5B7D,QAAS,YAAU,KAAA2C,OACbmB,EAAiBC,iBAAoB,CACzCpE,MAAO,GAEPK,QAAS,gBACT,QAAS,CACPA,QAAS,KAGW,aAAvBZ,EAAWY,SAA0B,CACtCL,MAAO,GAEPK,QAAS,aACe,SAAvBZ,EAAWY,SAAsB,CAClCA,QAAS,GACa,SAArBZ,EAAWyD,OAAoB,CAChCtC,UAAW,QACW,WAArBnB,EAAWyD,OAAsB,CAClCtC,UAAW,UACW,UAArBnB,EAAWyD,OAAqB,CACjCtC,UAAW,QACXyD,cAAe,eACO,YAArB5E,EAAWyD,OAAuB,CACnCtC,UAAW,WACVnB,EAAWE,cAAgB,CAC5B2E,SAAU,SACVC,IAAK,EACLC,OAAQ,EACRC,iBAAkB5E,EAAMW,MAAQX,GAAOY,QAAQiE,WAAWC,SAC1D,IAyHF,EAnH+B5D,EAAAA,YAAiB,SAAmBC,EAASC,GAC1E,IAkBII,EAlBE9B,GAAQ2B,EAAAA,EAAAA,GAAc,CAC1B3B,MAAOyB,EACP3B,KAAM,iBAERuF,EASMrF,EARF2D,MAAAA,OAAK,IAAA0B,EAAG,UAASA,EACjBzD,EAOE5B,EAPF4B,UACW0D,EAMTtF,EANF8B,UACSyD,EAKPvF,EALFc,QACO0E,EAILxF,EAJFyF,MACMC,EAGJ1F,EAHFiC,KACA0D,EAEE3F,EAFF2F,cACSC,EACP5F,EADFsD,QAEFnB,GAAQC,EAAAA,EAAAA,GAA8BpC,EAAOL,GACzC8C,EAAQjB,EAAAA,WAAiBmB,EAAAA,GACzBU,EAAY7B,EAAAA,WAAiB0B,EAAAA,GAC7B2C,EAAaxC,GAAmC,SAAtBA,EAAUC,QAOtCmC,EAAQD,EAGM,QAPhB1D,EADEwD,IAGUO,EAAa,KAAO,OAMhCJ,OAAQK,GACEL,GAASI,IACnBJ,EAAQ,OAEV,IAAMnC,EAAUsC,GAAevC,GAAaA,EAAUC,QAChDpD,GAAaK,EAAAA,EAAAA,GAAS,CAAC,EAAGP,EAAO,CACrC2D,MAAAA,EACA7B,UAAAA,EACAhB,QAASyE,IAAgB9C,GAASA,EAAM3B,QAAU2B,EAAM3B,QAAU,UAClEmB,KAAMyD,IAAajD,GAASA,EAAMR,KAAOQ,EAAMR,KAAO,UACtD0D,cAAAA,EACAvF,aAA0B,SAAZkD,GAAsBb,GAASA,EAAMrC,aACnDkD,QAAAA,IAEIjB,EA5HkB,SAAAnC,GACxB,IACEmC,EAMEnC,EANFmC,QACAiB,EAKEpD,EALFoD,QACAK,EAIEzD,EAJFyD,MACA7C,EAGEZ,EAHFY,QACAmB,EAEE/B,EAFF+B,KAGIK,EAAQ,CACZnC,KAAM,CAAC,OAAQmD,EAFbpD,EADFE,cAGwC,eAA0B,YAAVuD,GAAuB,QAAJF,QAAYC,EAAAA,EAAAA,GAAWC,IAAsB,WAAZ7C,GAAwB,UAAJ2C,QAAcC,EAAAA,EAAAA,GAAW5C,IAAY,OAAF2C,QAASC,EAAAA,EAAAA,GAAWzB,MAEzL,OAAOM,EAAAA,EAAAA,GAAeD,EAAOiB,EAA0BlB,EACzD,CA+GkBG,CAAkBtC,GAC9B6F,EAAW,KAIf,OAHIJ,IACFI,EAA6B,QAAlBJ,EAA0B,YAAc,eAEjCjD,EAAAA,EAAAA,KAAKc,GAAejD,EAAAA,EAAAA,GAAS,CAC/CwC,GAAIjB,EACJJ,IAAKA,EACLE,WAAWqB,EAAAA,EAAAA,GAAKZ,EAAQlC,KAAMyB,GAC9B,YAAamE,EACbN,MAAOA,EACPvF,WAAYA,GACXiC,GACL,G,6LCtJO,SAAS6D,EAAwBxG,GACtC,OAAOC,EAAAA,EAAAA,GAAqB,cAAeD,EAC7C,CACA,IACA,GADwBE,EAAAA,EAAAA,GAAuB,cAAe,CAAC,OAAQ,WAAY,QAAS,OAAQ,W,WCH9FC,EAAY,CAAC,YAAa,YAAa,QAAS,YAwBhDsG,GAAepG,EAAAA,EAAAA,IAAO,KAAM,CAChCC,KAAM,cACNN,KAAM,OACNO,kBAAmB,SAACC,EAAOC,GACzB,IACEC,EACEF,EADFE,WAEF,MAAO,CAACD,EAAOE,KAAMD,EAAWgG,MAAQjG,EAAOiG,KAAMhG,EAAWiG,QAAUlG,EAAOkG,OACnF,GARmBtG,EASlB,SAAAQ,GAAA,IAAA+F,EACD9F,EAAKD,EAALC,MAAK,OAAA8F,EAAA,CAELpF,MAAO,UACPR,QAAS,YACToD,cAAe,SAEfyC,QAAS,IAAC1B,EAAAA,EAAAA,GAAAyB,EAAA,KAAA3C,OACJ6C,EAAgBC,MAAK,UAAW,CACpCrB,iBAAkB5E,EAAMW,MAAQX,GAAOY,QAAQsF,OAAOD,SACvD5B,EAAAA,EAAAA,GAAAyB,EAAA,KAAA3C,OACK6C,EAAgBG,UAAa,CACjCvB,gBAAiB5E,EAAMW,KAAO,QAAHwC,OAAWnD,EAAMW,KAAKC,QAAQmD,QAAQqC,YAAW,OAAAjD,OAAMnD,EAAMW,KAAKC,QAAQsF,OAAOG,gBAAe,MAAMzC,EAAAA,EAAAA,IAAM5D,EAAMY,QAAQmD,QAAQuC,KAAMtG,EAAMY,QAAQsF,OAAOG,iBACxL,UAAW,CACTzB,gBAAiB5E,EAAMW,KAAO,QAAHwC,OAAWnD,EAAMW,KAAKC,QAAQmD,QAAQqC,YAAW,YAAAjD,OAAWnD,EAAMW,KAAKC,QAAQsF,OAAOG,gBAAe,OAAAlD,OAAMnD,EAAMW,KAAKC,QAAQsF,OAAOK,aAAY,OAAO3C,EAAAA,EAAAA,IAAM5D,EAAMY,QAAQmD,QAAQuC,KAAMtG,EAAMY,QAAQsF,OAAOG,gBAAkBrG,EAAMY,QAAQsF,OAAOK,iBAEpRT,CAAA,IAyEH,EAlE8B5E,EAAAA,YAAiB,SAAkBC,EAASC,GACxE,IAAM1B,GAAQ2B,EAAAA,EAAAA,GAAc,CAC1B3B,MAAOyB,EACP3B,KAAM,gBAGJ8B,EAIE5B,EAJF4B,UAASC,EAIP7B,EAHF8B,UAAAA,OAAS,IAAAD,EAZU,KAYSA,EAAAiF,EAG1B9G,EAFFuG,MAAAA,OAAK,IAAAO,GAAQA,EAAAC,EAEX/G,EADFyG,SAAAA,OAAQ,IAAAM,GAAQA,EAElB5E,GAAQC,EAAAA,EAAAA,GAA8BpC,EAAOL,GACzC0D,EAAY7B,EAAAA,WAAiB0B,EAAAA,GAC7BhD,GAAaK,EAAAA,EAAAA,GAAS,CAAC,EAAGP,EAAO,CACrC8B,UAAAA,EACAyE,MAAAA,EACAE,SAAAA,EACAP,KAAM7C,GAAmC,SAAtBA,EAAUC,QAC7B6C,OAAQ9C,GAAmC,WAAtBA,EAAUC,UAE3BjB,EAjEkB,SAAAnC,GACxB,IACEmC,EAKEnC,EALFmC,QAMIC,EAAQ,CACZnC,KAAM,CAAC,OAFLD,EAJFuG,UAM2B,WAFzBvG,EAHFqG,OAKgD,QAF9CrG,EAFFgG,MAIiE,OAF/DhG,EADFiG,QAGmF,WAErF,OAAO5D,EAAAA,EAAAA,GAAeD,EAAO0D,EAAyB3D,EACxD,CAqDkBG,CAAkBtC,GAClC,OAAoBwC,EAAAA,EAAAA,KAAKuD,GAAc1F,EAAAA,EAAAA,GAAS,CAC9CwC,GAAIjB,EACJJ,IAAKA,EACLE,WAAWqB,EAAAA,EAAAA,GAAKZ,EAAQlC,KAAMyB,GAC9BoB,KA9BqB,OA8BflB,EAAiC,KAAO,MAC9C5B,WAAYA,GACXiC,GACL,G","sources":["../node_modules/@mui/material/Table/tableClasses.js","../node_modules/@mui/material/Table/Table.js","../node_modules/@mui/material/Table/TableContext.js","../node_modules/@mui/material/Table/Tablelvl2Context.js","../node_modules/@mui/material/TableBody/tableBodyClasses.js","../node_modules/@mui/material/TableBody/TableBody.js","../node_modules/@mui/material/TableCell/tableCellClasses.js","../node_modules/@mui/material/TableCell/TableCell.js","../node_modules/@mui/material/TableRow/tableRowClasses.js","../node_modules/@mui/material/TableRow/TableRow.js"],"sourcesContent":["import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getTableUtilityClass(slot) {\n return generateUtilityClass('MuiTable', slot);\n}\nconst tableClasses = generateUtilityClasses('MuiTable', ['root', 'stickyHeader']);\nexport default tableClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"component\", \"padding\", \"size\", \"stickyHeader\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport TableContext from './TableContext';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport { getTableUtilityClass } from './tableClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n stickyHeader\n } = ownerState;\n const slots = {\n root: ['root', stickyHeader && 'stickyHeader']\n };\n return composeClasses(slots, getTableUtilityClass, classes);\n};\nconst TableRoot = styled('table', {\n name: 'MuiTable',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.stickyHeader && styles.stickyHeader];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'table',\n width: '100%',\n borderCollapse: 'collapse',\n borderSpacing: 0,\n '& caption': _extends({}, theme.typography.body2, {\n padding: theme.spacing(2),\n color: (theme.vars || theme).palette.text.secondary,\n textAlign: 'left',\n captionSide: 'bottom'\n })\n}, ownerState.stickyHeader && {\n borderCollapse: 'separate'\n}));\nconst defaultComponent = 'table';\nconst Table = /*#__PURE__*/React.forwardRef(function Table(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTable'\n });\n const {\n className,\n component = defaultComponent,\n padding = 'normal',\n size = 'medium',\n stickyHeader = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n component,\n padding,\n size,\n stickyHeader\n });\n const classes = useUtilityClasses(ownerState);\n const table = React.useMemo(() => ({\n padding,\n size,\n stickyHeader\n }), [padding, size, stickyHeader]);\n return /*#__PURE__*/_jsx(TableContext.Provider, {\n value: table,\n children: /*#__PURE__*/_jsx(TableRoot, _extends({\n as: component,\n role: component === defaultComponent ? null : 'table',\n ref: ref,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, other))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Table.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the table, normally `TableHead` and `TableBody`.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Allows TableCells to inherit padding of the Table.\n * @default 'normal'\n */\n padding: PropTypes.oneOf(['checkbox', 'none', 'normal']),\n /**\n * Allows TableCells to inherit size of the Table.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * Set the header sticky.\n *\n * ⚠️ It doesn't work with IE11.\n * @default false\n */\n stickyHeader: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default Table;","import * as React from 'react';\n\n/**\n * @ignore - internal component.\n */\nconst TableContext = /*#__PURE__*/React.createContext();\nif (process.env.NODE_ENV !== 'production') {\n TableContext.displayName = 'TableContext';\n}\nexport default TableContext;","import * as React from 'react';\n\n/**\n * @ignore - internal component.\n */\nconst Tablelvl2Context = /*#__PURE__*/React.createContext();\nif (process.env.NODE_ENV !== 'production') {\n Tablelvl2Context.displayName = 'Tablelvl2Context';\n}\nexport default Tablelvl2Context;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getTableBodyUtilityClass(slot) {\n return generateUtilityClass('MuiTableBody', slot);\n}\nconst tableBodyClasses = generateUtilityClasses('MuiTableBody', ['root']);\nexport default tableBodyClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"className\", \"component\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport Tablelvl2Context from '../Table/Tablelvl2Context';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport { getTableBodyUtilityClass } from './tableBodyClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getTableBodyUtilityClass, classes);\n};\nconst TableBodyRoot = styled('tbody', {\n name: 'MuiTableBody',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n display: 'table-row-group'\n});\nconst tablelvl2 = {\n variant: 'body'\n};\nconst defaultComponent = 'tbody';\nconst TableBody = /*#__PURE__*/React.forwardRef(function TableBody(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTableBody'\n });\n const {\n className,\n component = defaultComponent\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n component\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(Tablelvl2Context.Provider, {\n value: tablelvl2,\n children: /*#__PURE__*/_jsx(TableBodyRoot, _extends({\n className: clsx(classes.root, className),\n as: component,\n ref: ref,\n role: component === defaultComponent ? null : 'rowgroup',\n ownerState: ownerState\n }, other))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? TableBody.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component, normally `TableRow`.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default TableBody;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getTableCellUtilityClass(slot) {\n return generateUtilityClass('MuiTableCell', slot);\n}\nconst tableCellClasses = generateUtilityClasses('MuiTableCell', ['root', 'head', 'body', 'footer', 'sizeSmall', 'sizeMedium', 'paddingCheckbox', 'paddingNone', 'alignLeft', 'alignCenter', 'alignRight', 'alignJustify', 'stickyHeader']);\nexport default tableCellClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"align\", \"className\", \"component\", \"padding\", \"scope\", \"size\", \"sortDirection\", \"variant\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { darken, alpha, lighten } from '@mui/system';\nimport capitalize from '../utils/capitalize';\nimport TableContext from '../Table/TableContext';\nimport Tablelvl2Context from '../Table/Tablelvl2Context';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport tableCellClasses, { getTableCellUtilityClass } from './tableCellClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n variant,\n align,\n padding,\n size,\n stickyHeader\n } = ownerState;\n const slots = {\n root: ['root', variant, stickyHeader && 'stickyHeader', align !== 'inherit' && `align${capitalize(align)}`, padding !== 'normal' && `padding${capitalize(padding)}`, `size${capitalize(size)}`]\n };\n return composeClasses(slots, getTableCellUtilityClass, classes);\n};\nconst TableCellRoot = styled('td', {\n name: 'MuiTableCell',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[ownerState.variant], styles[`size${capitalize(ownerState.size)}`], ownerState.padding !== 'normal' && styles[`padding${capitalize(ownerState.padding)}`], ownerState.align !== 'inherit' && styles[`align${capitalize(ownerState.align)}`], ownerState.stickyHeader && styles.stickyHeader];\n }\n})(({\n theme,\n ownerState\n}) => _extends({}, theme.typography.body2, {\n display: 'table-cell',\n verticalAlign: 'inherit',\n // Workaround for a rendering bug with spanned columns in Chrome 62.0.\n // Removes the alpha (sets it to 1), and lightens or darkens the theme color.\n borderBottom: theme.vars ? `1px solid ${theme.vars.palette.TableCell.border}` : `1px solid\n ${theme.palette.mode === 'light' ? lighten(alpha(theme.palette.divider, 1), 0.88) : darken(alpha(theme.palette.divider, 1), 0.68)}`,\n textAlign: 'left',\n padding: 16\n}, ownerState.variant === 'head' && {\n color: (theme.vars || theme).palette.text.primary,\n lineHeight: theme.typography.pxToRem(24),\n fontWeight: theme.typography.fontWeightMedium\n}, ownerState.variant === 'body' && {\n color: (theme.vars || theme).palette.text.primary\n}, ownerState.variant === 'footer' && {\n color: (theme.vars || theme).palette.text.secondary,\n lineHeight: theme.typography.pxToRem(21),\n fontSize: theme.typography.pxToRem(12)\n}, ownerState.size === 'small' && {\n padding: '6px 16px',\n [`&.${tableCellClasses.paddingCheckbox}`]: {\n width: 24,\n // prevent the checkbox column from growing\n padding: '0 12px 0 16px',\n '& > *': {\n padding: 0\n }\n }\n}, ownerState.padding === 'checkbox' && {\n width: 48,\n // prevent the checkbox column from growing\n padding: '0 0 0 4px'\n}, ownerState.padding === 'none' && {\n padding: 0\n}, ownerState.align === 'left' && {\n textAlign: 'left'\n}, ownerState.align === 'center' && {\n textAlign: 'center'\n}, ownerState.align === 'right' && {\n textAlign: 'right',\n flexDirection: 'row-reverse'\n}, ownerState.align === 'justify' && {\n textAlign: 'justify'\n}, ownerState.stickyHeader && {\n position: 'sticky',\n top: 0,\n zIndex: 2,\n backgroundColor: (theme.vars || theme).palette.background.default\n}));\n\n/**\n * The component renders a `` element when the parent context is a header\n * or otherwise a `` element.\n */\nconst TableCell = /*#__PURE__*/React.forwardRef(function TableCell(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTableCell'\n });\n const {\n align = 'inherit',\n className,\n component: componentProp,\n padding: paddingProp,\n scope: scopeProp,\n size: sizeProp,\n sortDirection,\n variant: variantProp\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const table = React.useContext(TableContext);\n const tablelvl2 = React.useContext(Tablelvl2Context);\n const isHeadCell = tablelvl2 && tablelvl2.variant === 'head';\n let component;\n if (componentProp) {\n component = componentProp;\n } else {\n component = isHeadCell ? 'th' : 'td';\n }\n let scope = scopeProp;\n // scope is not a valid attribute for elements.\n // source: https://html.spec.whatwg.org/multipage/tables.html#the-td-element\n if (component === 'td') {\n scope = undefined;\n } else if (!scope && isHeadCell) {\n scope = 'col';\n }\n const variant = variantProp || tablelvl2 && tablelvl2.variant;\n const ownerState = _extends({}, props, {\n align,\n component,\n padding: paddingProp || (table && table.padding ? table.padding : 'normal'),\n size: sizeProp || (table && table.size ? table.size : 'medium'),\n sortDirection,\n stickyHeader: variant === 'head' && table && table.stickyHeader,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n let ariaSort = null;\n if (sortDirection) {\n ariaSort = sortDirection === 'asc' ? 'ascending' : 'descending';\n }\n return /*#__PURE__*/_jsx(TableCellRoot, _extends({\n as: component,\n ref: ref,\n className: clsx(classes.root, className),\n \"aria-sort\": ariaSort,\n scope: scope,\n ownerState: ownerState\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? TableCell.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Set the text-align on the table cell content.\n *\n * Monetary or generally number fields **should be right aligned** as that allows\n * you to add them up quickly in your head without having to worry about decimals.\n * @default 'inherit'\n */\n align: PropTypes.oneOf(['center', 'inherit', 'justify', 'left', 'right']),\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Sets the padding applied to the cell.\n * The prop defaults to the value (`'default'`) inherited from the parent Table component.\n */\n padding: PropTypes.oneOf(['checkbox', 'none', 'normal']),\n /**\n * Set scope attribute.\n */\n scope: PropTypes.string,\n /**\n * Specify the size of the cell.\n * The prop defaults to the value (`'medium'`) inherited from the parent Table component.\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * Set aria-sort direction.\n */\n sortDirection: PropTypes.oneOf(['asc', 'desc', false]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * Specify the cell type.\n * The prop defaults to the value inherited from the parent TableHead, TableBody, or TableFooter components.\n */\n variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['body', 'footer', 'head']), PropTypes.string])\n} : void 0;\nexport default TableCell;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getTableRowUtilityClass(slot) {\n return generateUtilityClass('MuiTableRow', slot);\n}\nconst tableRowClasses = generateUtilityClasses('MuiTableRow', ['root', 'selected', 'hover', 'head', 'footer']);\nexport default tableRowClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"className\", \"component\", \"hover\", \"selected\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport Tablelvl2Context from '../Table/Tablelvl2Context';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport tableRowClasses, { getTableRowUtilityClass } from './tableRowClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n selected,\n hover,\n head,\n footer\n } = ownerState;\n const slots = {\n root: ['root', selected && 'selected', hover && 'hover', head && 'head', footer && 'footer']\n };\n return composeClasses(slots, getTableRowUtilityClass, classes);\n};\nconst TableRowRoot = styled('tr', {\n name: 'MuiTableRow',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.head && styles.head, ownerState.footer && styles.footer];\n }\n})(({\n theme\n}) => ({\n color: 'inherit',\n display: 'table-row',\n verticalAlign: 'middle',\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0,\n [`&.${tableRowClasses.hover}:hover`]: {\n backgroundColor: (theme.vars || theme).palette.action.hover\n },\n [`&.${tableRowClasses.selected}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity),\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity)\n }\n }\n}));\nconst defaultComponent = 'tr';\n/**\n * Will automatically set dynamic row height\n * based on the material table element parent (head, body, etc).\n */\nconst TableRow = /*#__PURE__*/React.forwardRef(function TableRow(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTableRow'\n });\n const {\n className,\n component = defaultComponent,\n hover = false,\n selected = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const tablelvl2 = React.useContext(Tablelvl2Context);\n const ownerState = _extends({}, props, {\n component,\n hover,\n selected,\n head: tablelvl2 && tablelvl2.variant === 'head',\n footer: tablelvl2 && tablelvl2.variant === 'footer'\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(TableRowRoot, _extends({\n as: component,\n ref: ref,\n className: clsx(classes.root, className),\n role: component === defaultComponent ? null : 'row',\n ownerState: ownerState\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? TableRow.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Should be valid children such as `TableCell`.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the table row will shade on hover.\n * @default false\n */\n hover: PropTypes.bool,\n /**\n * If `true`, the table row will have the selected shading.\n * @default false\n */\n selected: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default TableRow;"],"names":["getTableUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","TableRoot","styled","name","overridesResolver","props","styles","ownerState","root","stickyHeader","_ref","theme","_extends","display","width","borderCollapse","borderSpacing","typography","body2","padding","spacing","color","vars","palette","text","secondary","textAlign","captionSide","defaultComponent","React","inProps","ref","useThemeProps","className","_props$component","component","_props$padding","_props$size","size","_props$stickyHeader","other","_objectWithoutPropertiesLoose","classes","slots","composeClasses","useUtilityClasses","table","_jsx","TableContext","Provider","value","children","as","role","clsx","Tablelvl2Context","getTableBodyUtilityClass","TableBodyRoot","tablelvl2","variant","getTableCellUtilityClass","TableCellRoot","concat","capitalize","align","verticalAlign","borderBottom","TableCell","border","mode","lighten","alpha","divider","darken","primary","lineHeight","pxToRem","fontWeight","fontWeightMedium","fontSize","_defineProperty","tableCellClasses","paddingCheckbox","flexDirection","position","top","zIndex","backgroundColor","background","default","_props$align","componentProp","paddingProp","scopeProp","scope","sizeProp","sortDirection","variantProp","isHeadCell","undefined","ariaSort","getTableRowUtilityClass","TableRowRoot","head","footer","_ref2","outline","tableRowClasses","hover","action","selected","mainChannel","selectedOpacity","main","hoverOpacity","_props$hover","_props$selected"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/402.75cd5b25.chunk.js b/portal-ui/build/static/js/402.75cd5b25.chunk.js new file mode 100644 index 000000000..aa9c62b4f --- /dev/null +++ b/portal-ui/build/static/js/402.75cd5b25.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[402],{70402:function(n,e,t){t.r(e);var i=t(29439),o=t(72791),s=t(29945),r=t(31776),c=t(82342),u=t(87995),l=t(81551),a=t(91685),d=t(23508),f=t(80184);e.default=function(n){var e=n.closeVersioningModalAndRefresh,t=n.modalOpen,x=n.selectedBucket,g=n.versioningInfo,h=void 0===g?{}:g,p="Enabled"===h.status,j=(0,l.TL)(),v=(0,o.useState)(!1),b=(0,i.Z)(v,2),k=b[0],m=b[1];return(0,f.jsx)(d.Z,{title:"Versioning on Bucket",confirmText:p?"Suspend":"Enable",isOpen:t,isLoading:k,titleIcon:(0,f.jsx)(s.EjK,{}),onConfirm:function(){k||(m(!0),r.h.buckets.setBucketVersioning(x,{versioning:!p}).then((function(){m(!1),e(!0)})).catch((function(n){m(!1),j((0,u.Ih)((0,c.g)(n.error)))})))},confirmButtonProps:{variant:"callAction"},onClose:function(){e(!1)},confirmationContent:(0,f.jsxs)(s.xuv,{id:"alert-dialog-description",children:["Are you sure you want to"," ",(0,f.jsx)("strong",{children:p?"suspend":"enable"})," ","versioning for this bucket?",p&&(0,f.jsxs)(o.Fragment,{children:[(0,f.jsx)("br",{}),(0,f.jsx)("br",{}),(0,f.jsx)("strong",{children:"File versions won't be automatically deleted."})]}),(0,f.jsx)(s.xuv,{sx:{paddingTop:"20px"},children:p?(0,f.jsx)(a.Z,{versioningState:h}):null})]})})}}}]); +//# sourceMappingURL=402.75cd5b25.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/402.75cd5b25.chunk.js.map b/portal-ui/build/static/js/402.75cd5b25.chunk.js.map new file mode 100644 index 000000000..c56016b57 --- /dev/null +++ b/portal-ui/build/static/js/402.75cd5b25.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/402.75cd5b25.chunk.js","mappings":"qOAyGA,UAxE8B,SAAHA,GAKG,IAJ5BC,EAA8BD,EAA9BC,+BACAC,EAASF,EAATE,UACAC,EAAcH,EAAdG,eAAcC,EAAAJ,EACdK,eAAAA,OAAc,IAAAD,EAAG,CAAC,EAACA,EAEbE,EAAgD,YAA1BD,EAAeE,OAErCC,GAAWC,EAAAA,EAAAA,MACjBC,GAAkDC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAnEI,EAAiBF,EAAA,GAAEG,EAAoBH,EAAA,GAsB9C,OACEI,EAAAA,EAAAA,KAACC,EAAAA,EAAa,CACZC,MAAK,uBACLC,YAAab,EAAsB,UAAY,SAC/Cc,OAAQlB,EACRmB,UAAWP,EACXQ,WAAWN,EAAAA,EAAAA,KAACO,EAAAA,IAAgB,IAC5BC,UA3BqB,WACnBV,IAGJC,GAAqB,GAErBU,EAAAA,EAAIC,QACDC,oBAAoBxB,EAAgB,CACnCyB,YAAatB,IAEduB,MAAK,WACJd,GAAqB,GACrBd,GAA+B,EACjC,IACC6B,OAAM,SAACC,GACNhB,GAAqB,GACrBP,GAASwB,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,EAAIG,QACnD,IACJ,EAUIC,mBAAoB,CAClBC,QAAS,cAEXC,QAAS,WACPpC,GAA+B,EACjC,EACAqC,qBACEC,EAAAA,EAAAA,MAACC,EAAAA,IAAG,CAACC,GAAG,2BAA0BC,SAAA,CAAC,2BACR,KACzB1B,EAAAA,EAAAA,KAAA,UAAA0B,SAASpC,EAAsB,UAAY,WAAmB,IAAI,8BAEjEA,IACCiC,EAAAA,EAAAA,MAACI,EAAAA,SAAQ,CAAAD,SAAA,EACP1B,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,UAAA0B,SAAQ,sDAGZ1B,EAAAA,EAAAA,KAACwB,EAAAA,IAAG,CACFI,GAAI,CACFC,WAAY,QACZH,SAEDpC,GACCU,EAAAA,EAAAA,KAAC8B,EAAAA,EAAc,CAACC,gBAAiB1C,IAC/B,WAMhB,C","sources":["screens/Console/Buckets/BucketDetails/EnableVersioningModal.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Box, ConfirmModalIcon } from \"mds\";\nimport { BucketVersioningResponse } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport VersioningInfo from \"../VersioningInfo\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\n\ninterface IVersioningEventProps {\n closeVersioningModalAndRefresh: (refresh: boolean) => void;\n modalOpen: boolean;\n selectedBucket: string;\n versioningInfo: BucketVersioningResponse | undefined;\n}\n\nconst EnableVersioningModal = ({\n closeVersioningModalAndRefresh,\n modalOpen,\n selectedBucket,\n versioningInfo = {},\n}: IVersioningEventProps) => {\n const isVersioningEnabled = versioningInfo.status === \"Enabled\";\n\n const dispatch = useAppDispatch();\n const [versioningLoading, setVersioningLoading] = useState(false);\n\n const enableVersioning = () => {\n if (versioningLoading) {\n return;\n }\n setVersioningLoading(true);\n\n api.buckets\n .setBucketVersioning(selectedBucket, {\n versioning: !isVersioningEnabled,\n })\n .then(() => {\n setVersioningLoading(false);\n closeVersioningModalAndRefresh(true);\n })\n .catch((err) => {\n setVersioningLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n return (\n }\n onConfirm={enableVersioning}\n confirmButtonProps={{\n variant: \"callAction\",\n }}\n onClose={() => {\n closeVersioningModalAndRefresh(false);\n }}\n confirmationContent={\n \n Are you sure you want to{\" \"}\n {isVersioningEnabled ? \"suspend\" : \"enable\"}{\" \"}\n versioning for this bucket?\n {isVersioningEnabled && (\n \n
\n
\n File versions won't be automatically deleted.\n
\n )}\n \n {isVersioningEnabled ? (\n \n ) : null}\n
\n \n }\n />\n );\n};\n\nexport default EnableVersioningModal;\n"],"names":["_ref","closeVersioningModalAndRefresh","modalOpen","selectedBucket","_ref$versioningInfo","versioningInfo","isVersioningEnabled","status","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","versioningLoading","setVersioningLoading","_jsx","ConfirmDialog","title","confirmText","isOpen","isLoading","titleIcon","ConfirmModalIcon","onConfirm","api","buckets","setBucketVersioning","versioning","then","catch","err","setErrorSnackMessage","errorToHandler","error","confirmButtonProps","variant","onClose","confirmationContent","_jsxs","Box","id","children","Fragment","sx","paddingTop","VersioningInfo","versioningState"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/402.b4ce85d2.chunk.js b/portal-ui/build/static/js/402.b4ce85d2.chunk.js deleted file mode 100644 index d9dcc14fc..000000000 --- a/portal-ui/build/static/js/402.b4ce85d2.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[402],{70402:function(n,e,t){t.r(e);var i=t(29439),o=t(72791),s=t(51691),r=t(23508),c=t(29945),l=t(87995),a=t(81551),u=t(91685),d=t(31776),f=t(82342),g=t(80184);e.default=function(n){var e=n.closeVersioningModalAndRefresh,t=n.modalOpen,h=n.selectedBucket,p=n.versioningInfo,x=void 0===p?{}:p,j="Enabled"===x.status,b=(0,a.TL)(),v=(0,o.useState)(!1),k=(0,i.Z)(v,2),m=k[0],C=k[1];return(0,g.jsx)(r.Z,{title:"Versioning on Bucket",confirmText:j?"Suspend":"Enable",isOpen:t,isLoading:m,titleIcon:(0,g.jsx)(c.EjK,{}),onConfirm:function(){m||(C(!0),d.h.buckets.setBucketVersioning(h,{versioning:!j}).then((function(){C(!1),e(!0)})).catch((function(n){C(!1),b((0,l.Ih)((0,f.g)(n.error)))})))},confirmButtonProps:{variant:"callAction"},onClose:function(){e(!1)},confirmationContent:(0,g.jsxs)(s.Z,{id:"alert-dialog-description",children:["Are you sure you want to"," ",(0,g.jsx)("strong",{children:j?"suspend":"enable"})," ","versioning for this bucket?",j&&(0,g.jsxs)(o.Fragment,{children:[(0,g.jsx)("br",{}),(0,g.jsx)("br",{}),(0,g.jsx)("strong",{children:"File versions won't be automatically deleted."})]}),(0,g.jsx)("div",{style:{paddingTop:"20px"},children:j?(0,g.jsx)(u.Z,{versioningState:x}):null})]})})}}}]); -//# sourceMappingURL=402.b4ce85d2.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/402.b4ce85d2.chunk.js.map b/portal-ui/build/static/js/402.b4ce85d2.chunk.js.map deleted file mode 100644 index 1ceab5b57..000000000 --- a/portal-ui/build/static/js/402.b4ce85d2.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/402.b4ce85d2.chunk.js","mappings":"gPA4GA,UAxE8B,SAAHA,GAKG,IAJ5BC,EAA8BD,EAA9BC,+BACAC,EAASF,EAATE,UACAC,EAAcH,EAAdG,eAAcC,EAAAJ,EACdK,eAAAA,OAAc,IAAAD,EAAG,CAAC,EAACA,EAEbE,EAAgD,YAA1BD,EAAeE,OAErCC,GAAWC,EAAAA,EAAAA,MACjBC,GAAkDC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAnEI,EAAiBF,EAAA,GAAEG,EAAoBH,EAAA,GAsB9C,OACEI,EAAAA,EAAAA,KAACC,EAAAA,EAAa,CACZC,MAAK,uBACLC,YAAab,EAAsB,UAAY,SAC/Cc,OAAQlB,EACRmB,UAAWP,EACXQ,WAAWN,EAAAA,EAAAA,KAACO,EAAAA,IAAgB,IAC5BC,UA3BqB,WACnBV,IAGJC,GAAqB,GAErBU,EAAAA,EAAIC,QACDC,oBAAoBxB,EAAgB,CACnCyB,YAAatB,IAEduB,MAAK,WACJd,GAAqB,GACrBd,GAA+B,EACjC,IACC6B,OAAM,SAACC,GACNhB,GAAqB,GACrBP,GAASwB,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,EAAIG,QACnD,IACJ,EAUIC,mBAAoB,CAClBC,QAAS,cAEXC,QAAS,WACPpC,GAA+B,EACjC,EACAqC,qBACEC,EAAAA,EAAAA,MAACC,EAAAA,EAAiB,CAACC,GAAG,2BAA0BC,SAAA,CAAC,2BACtB,KACzB1B,EAAAA,EAAAA,KAAA,UAAA0B,SAASpC,EAAsB,UAAY,WAAmB,IAAI,8BAEjEA,IACCiC,EAAAA,EAAAA,MAACI,EAAAA,SAAQ,CAAAD,SAAA,EACP1B,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,UAAA0B,SAAQ,sDAGZ1B,EAAAA,EAAAA,KAAA,OACE4B,MAAO,CACLC,WAAY,QACZH,SAEDpC,GACCU,EAAAA,EAAAA,KAAC8B,EAAAA,EAAc,CAACC,gBAAiB1C,IAC/B,WAMhB,C","sources":["screens/Console/Buckets/BucketDetails/EnableVersioningModal.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { DialogContentText } from \"@mui/material\";\n\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmModalIcon } from \"mds\";\n\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport VersioningInfo from \"../VersioningInfo\";\nimport { BucketVersioningResponse } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IVersioningEventProps {\n closeVersioningModalAndRefresh: (refresh: boolean) => void;\n modalOpen: boolean;\n selectedBucket: string;\n versioningInfo: BucketVersioningResponse | undefined;\n}\n\nconst EnableVersioningModal = ({\n closeVersioningModalAndRefresh,\n modalOpen,\n selectedBucket,\n versioningInfo = {},\n}: IVersioningEventProps) => {\n const isVersioningEnabled = versioningInfo.status === \"Enabled\";\n\n const dispatch = useAppDispatch();\n const [versioningLoading, setVersioningLoading] = useState(false);\n\n const enableVersioning = () => {\n if (versioningLoading) {\n return;\n }\n setVersioningLoading(true);\n\n api.buckets\n .setBucketVersioning(selectedBucket, {\n versioning: !isVersioningEnabled,\n })\n .then(() => {\n setVersioningLoading(false);\n closeVersioningModalAndRefresh(true);\n })\n .catch((err) => {\n setVersioningLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n return (\n }\n onConfirm={enableVersioning}\n confirmButtonProps={{\n variant: \"callAction\",\n }}\n onClose={() => {\n closeVersioningModalAndRefresh(false);\n }}\n confirmationContent={\n \n Are you sure you want to{\" \"}\n {isVersioningEnabled ? \"suspend\" : \"enable\"}{\" \"}\n versioning for this bucket?\n {isVersioningEnabled && (\n \n
\n
\n File versions won't be automatically deleted.\n
\n )}\n \n {isVersioningEnabled ? (\n \n ) : null}\n
\n \n }\n />\n );\n};\n\nexport default EnableVersioningModal;\n"],"names":["_ref","closeVersioningModalAndRefresh","modalOpen","selectedBucket","_ref$versioningInfo","versioningInfo","isVersioningEnabled","status","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","versioningLoading","setVersioningLoading","_jsx","ConfirmDialog","title","confirmText","isOpen","isLoading","titleIcon","ConfirmModalIcon","onConfirm","api","buckets","setBucketVersioning","versioning","then","catch","err","setErrorSnackMessage","errorToHandler","error","confirmButtonProps","variant","onClose","confirmationContent","_jsxs","DialogContentText","id","children","Fragment","style","paddingTop","VersioningInfo","versioningState"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/4619.1535ff32.chunk.js b/portal-ui/build/static/js/4619.1535ff32.chunk.js new file mode 100644 index 000000000..e15cb458b --- /dev/null +++ b/portal-ui/build/static/js/4619.1535ff32.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[4619],{94619:function(e,t,a){a.r(t);var l=a(29439),n=a(72791),s=a(56028),i=a(29945),o=a(31776),r=a(82342),c=a(23814),u=a(87995),d=a(81551),p=a(80184);t.default=function(e){var t=e.modalOpen,a=e.onClose,f=e.bucket,h=e.prefilledRoute,x=(0,d.TL)(),b=(0,n.useState)(""),k=(0,l.Z)(b,2),y=k[0],v=k[1],m=(0,n.useState)("readonly"),j=(0,l.Z)(m,2),C=j[0],A=j[1];(0,n.useEffect)((function(){h&&v(h)}),[h]);return(0,p.jsx)(s.Z,{modalOpen:t,title:"Add Anonymous Access Rule",onClose:a,titleIcon:(0,p.jsx)(i.sR0,{}),children:(0,p.jsxs)(i.ltY,{withBorders:!1,containerPadding:!1,children:[(0,p.jsx)(i.Wzg,{value:y,label:"Prefix",id:"prefix",name:"prefix",placeholder:"Enter Prefix",onChange:function(e){v(e.target.value)},tooltip:"Enter '/' to apply the rule to all prefixes and objects at the bucket root. Do not include the wildcard asterisk '*' as part of the prefix *unless* it is an explicit part of the prefix name. The Console automatically appends an asterisk to the appropriate sections of the resulting IAM policy."}),(0,p.jsx)(i.PhF,{id:"access",name:"Access",onChange:function(e){A(e)},label:"Access",value:C,options:[{label:"readonly",value:"readonly"},{label:"writeonly",value:"writeonly"},{label:"readwrite",value:"readwrite"}],disabled:!1}),(0,p.jsxs)(i.rjZ,{item:!0,xs:12,sx:c.ID.modalButtonBar,children:[(0,p.jsx)(i.zxk,{id:"clear",type:"button",variant:"regular",onClick:function(){v(""),A("readonly")},label:"Clear"}),(0,p.jsx)(i.zxk,{id:"add-access-save",type:"submit",variant:"callAction",disabled:""===y.trim(),onClick:function(){o.h.bucket.setAccessRuleWithBucket(f,{prefix:y,access:C}).then((function(e){x((0,u.y1)("Access Rule added successfully")),a()})).catch((function(e){x((0,u.Ih)((0,r.g)(e))),a()}))},label:"Save"})]})]})})}}}]); +//# sourceMappingURL=4619.1535ff32.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/4619.1535ff32.chunk.js.map b/portal-ui/build/static/js/4619.1535ff32.chunk.js.map new file mode 100644 index 000000000..fbf6ed082 --- /dev/null +++ b/portal-ui/build/static/js/4619.1535ff32.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/4619.1535ff32.chunk.js","mappings":"sOA6IA,UAnGsB,SAAHA,GAKI,IAJrBC,EAASD,EAATC,UACAC,EAAOF,EAAPE,QACAC,EAAMH,EAANG,OACAC,EAAcJ,EAAdI,eAEMC,GAAWC,EAAAA,EAAAA,MAEjBC,GAA4BC,EAAAA,EAAAA,UAAS,IAAGC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAjCI,EAAMF,EAAA,GAAEG,EAASH,EAAA,GACxBI,GAA4CL,EAAAA,EAAAA,UAAc,YAAWM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAA9DE,EAAcD,EAAA,GAAEE,EAAiBF,EAAA,IAExCG,EAAAA,EAAAA,YAAU,WACJb,GACFQ,EAAUR,EAEd,GAAG,CAACA,IA6BJ,OACEc,EAAAA,EAAAA,KAACC,EAAAA,EAAY,CACXlB,UAAWA,EACXmB,MAAM,4BACNlB,QAASA,EACTmB,WAAWH,EAAAA,EAAAA,KAACI,EAAAA,IAAiB,IAAIC,UAEjCC,EAAAA,EAAAA,MAACC,EAAAA,IAAU,CAACC,aAAa,EAAOC,kBAAkB,EAAMJ,SAAA,EACtDL,EAAAA,EAAAA,KAACU,EAAAA,IAAQ,CACPC,MAAOlB,EACPmB,MAAO,SACPC,GAAI,SACJC,KAAM,SACNC,YAAa,eACbC,SAAU,SAACC,GACTvB,EAAUuB,EAAEC,OAAOP,MACrB,EACAQ,QACE,2SAGJnB,EAAAA,EAAAA,KAACoB,EAAAA,IAAM,CACLP,GAAG,SACHC,KAAK,SACLE,SAAU,SAACL,GACTb,EAAkBa,EACpB,EACAC,MAAM,SACND,MAAOd,EACPwB,QAxDc,CACpB,CAAET,MAAO,WAAYD,MAAO,YAC5B,CAAEC,MAAO,YAAaD,MAAO,aAC7B,CAAEC,MAAO,YAAaD,MAAO,cAsDvBW,UAAU,KAEZhB,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,GAAIC,EAAAA,GAAgBC,eAAevB,SAAA,EACpDL,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,QACJiB,KAAK,SACLC,QAAQ,UACRC,QA1DQ,WAChBtC,EAAU,IACVI,EAAkB,WACpB,EAwDUc,MAAO,WAGTZ,EAAAA,EAAAA,KAAC6B,EAAAA,IAAM,CACLhB,GAAI,kBACJiB,KAAK,SACLC,QAAQ,aACRT,SAA4B,KAAlB7B,EAAOwC,OACjBD,QA9DY,WACpBE,EAAAA,EAAIjD,OACDkD,wBAAwBlD,EAAQ,CAC/BQ,OAAQA,EACR2C,OAAQvC,IAETwC,MAAK,SAACC,GACLnD,GAASoD,EAAAA,EAAAA,IAAmB,mCAC5BvD,GACF,IACCwD,OAAM,SAACC,GACNtD,GAASuD,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,KAC7CzD,GACF,GACJ,EAiDU4B,MAAO,gBAMnB,C","sources":["screens/Console/Buckets/BucketDetails/AddAccessRule.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport {\n AddAccessRuleIcon,\n Button,\n FormLayout,\n Grid,\n InputBox,\n Select,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport {\n setErrorSnackMessage,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IAddAccessRule {\n modalOpen: boolean;\n onClose: () => any;\n bucket: string;\n prefilledRoute?: string;\n}\n\nconst AddAccessRule = ({\n modalOpen,\n onClose,\n bucket,\n prefilledRoute,\n}: IAddAccessRule) => {\n const dispatch = useAppDispatch();\n\n const [prefix, setPrefix] = useState(\"\");\n const [selectedAccess, setSelectedAccess] = useState(\"readonly\");\n\n useEffect(() => {\n if (prefilledRoute) {\n setPrefix(prefilledRoute);\n }\n }, [prefilledRoute]);\n\n const accessOptions = [\n { label: \"readonly\", value: \"readonly\" },\n { label: \"writeonly\", value: \"writeonly\" },\n { label: \"readwrite\", value: \"readwrite\" },\n ];\n\n const resetForm = () => {\n setPrefix(\"\");\n setSelectedAccess(\"readonly\");\n };\n\n const createProcess = () => {\n api.bucket\n .setAccessRuleWithBucket(bucket, {\n prefix: prefix,\n access: selectedAccess,\n })\n .then((res: any) => {\n dispatch(setSnackBarMessage(\"Access Rule added successfully\"));\n onClose();\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n onClose();\n });\n };\n\n return (\n }\n >\n \n {\n setPrefix(e.target.value);\n }}\n tooltip={\n \"Enter '/' to apply the rule to all prefixes and objects at the bucket root. Do not include the wildcard asterisk '*' as part of the prefix *unless* it is an explicit part of the prefix name. The Console automatically appends an asterisk to the appropriate sections of the resulting IAM policy.\"\n }\n />\n {\n setSelectedAccess(value);\n }}\n label=\"Access\"\n value={selectedAccess}\n options={accessOptions}\n disabled={false}\n />\n \n \n\n \n \n \n \n );\n};\n\nexport default AddAccessRule;\n"],"names":["_ref","modalOpen","onClose","bucket","prefilledRoute","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","prefix","setPrefix","_useState3","_useState4","selectedAccess","setSelectedAccess","useEffect","_jsx","ModalWrapper","title","titleIcon","AddAccessRuleIcon","children","_jsxs","FormLayout","withBorders","containerPadding","InputBox","value","label","id","name","placeholder","onChange","e","target","tooltip","Select","options","disabled","Grid","item","xs","sx","modalStyleUtils","modalButtonBar","Button","type","variant","onClick","trim","api","setAccessRuleWithBucket","access","then","res","setSnackBarMessage","catch","err","setErrorSnackMessage","errorToHandler"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/4619.56a4fe9f.chunk.js b/portal-ui/build/static/js/4619.56a4fe9f.chunk.js deleted file mode 100644 index 3d402b887..000000000 --- a/portal-ui/build/static/js/4619.56a4fe9f.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[4619],{94619:function(e,t,i){i.r(t);var a=i(29439),l=i(1413),n=i(72791),o=i(56028),s=i(61889),r=i(29945),c=i(21435),d=i(11135),u=i(25787),p=i(23814),x=i(90673),h=i(87995),v=i(81551),f=i(31776),m=i(82342),Z=i(80184);t.default=(0,u.Z)((function(e){return(0,d.Z)((0,l.Z)((0,l.Z)({},p.DF),p.ID))}))((function(e){var t=e.modalOpen,i=e.onClose,l=e.classes,d=e.bucket,u=e.prefilledRoute,p=(0,v.TL)(),b=(0,n.useState)(""),j=(0,a.Z)(b,2),y=j[0],C=j[1],g=(0,n.useState)("readonly"),k=(0,a.Z)(g,2),w=k[0],P=k[1];(0,n.useEffect)((function(){u&&C(u)}),[u]);return(0,Z.jsx)(o.Z,{modalOpen:t,title:"Add Anonymous Access Rule",onClose:i,titleIcon:(0,Z.jsx)(r.sR0,{}),children:(0,Z.jsxs)(s.ZP,{container:!0,children:[(0,Z.jsx)(s.ZP,{item:!0,xs:12,className:l.formFieldRow,children:(0,Z.jsx)(c.Z,{value:y,label:"Prefix",id:"prefix",name:"prefix",placeholder:"Enter Prefix",onChange:function(e){C(e.target.value)},tooltip:"Enter '/' to apply the rule to all prefixes and objects at the bucket root. Do not include the wildcard asterisk '*' as part of the prefix *unless* it is an explicit part of the prefix name. The Console automatically appends an asterisk to the appropriate sections of the resulting IAM policy."})}),(0,Z.jsx)(s.ZP,{item:!0,xs:12,children:(0,Z.jsx)(x.Z,{id:"access",name:"Access",onChange:function(e){P(e.target.value)},label:"Access",value:w,options:[{label:"readonly",value:"readonly"},{label:"writeonly",value:"writeonly"},{label:"readwrite",value:"readwrite"}],disabled:!1})}),(0,Z.jsxs)(s.ZP,{item:!0,xs:12,className:l.modalButtonBar,children:[(0,Z.jsx)(r.zxk,{id:"clear",type:"button",variant:"regular",onClick:function(){C(""),P("readonly")},label:"Clear"}),(0,Z.jsx)(r.zxk,{id:"add-access-save",type:"submit",variant:"callAction",disabled:""===y.trim(),onClick:function(){f.h.bucket.setAccessRuleWithBucket(d,{prefix:y,access:w}).then((function(e){p((0,h.y1)("Access Rule added successfully")),i()})).catch((function(e){p((0,h.Ih)((0,m.g)(e))),i()}))},label:"Save"})]})]})})}))},21435:function(e,t,i){var a=i(29439),l=i(1413),n=i(72791),o=i(27391),s=i(61889),r=i(30829),c=i(20068),d=i(13400),u=i(20165),p=i(3579),x=i(11135),h=i(72455),v=i(25787),f=i(23814),m=i(29945),Z=i(28182),b=i(80184),j=(0,h.Z)((function(e){return(0,x.Z)((0,l.Z)({},f.gM))}));function y(e){var t=j();return(0,b.jsx)(o.Z,(0,l.Z)({InputProps:{classes:t}},e))}t.Z=(0,v.Z)((function(e){return(0,x.Z)((0,l.Z)((0,l.Z)((0,l.Z)({},f.YI),f.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var t=e.label,i=e.onChange,o=e.value,x=e.id,h=e.name,v=e.type,f=void 0===v?"text":v,j=e.autoComplete,C=void 0===j?"off":j,g=e.disabled,k=void 0!==g&&g,w=e.multiline,P=void 0!==w&&w,N=e.tooltip,A=void 0===N?"":N,F=e.index,R=void 0===F?0:F,I=e.error,z=void 0===I?"":I,L=e.required,M=void 0!==L&&L,W=e.placeholder,B=void 0===W?"":W,E=e.min,S=e.max,T=e.overlayId,H=e.overlayIcon,K=void 0===H?null:H,O=e.overlayObject,D=void 0===O?null:O,Y=e.extraInputProps,_=void 0===Y?{}:Y,q=e.overlayAction,G=e.noLabelMinWidth,V=void 0!==G&&G,J=e.pattern,Q=void 0===J?"":J,U=e.autoFocus,X=void 0!==U&&U,$=e.classes,ee=e.className,te=void 0===ee?"":ee,ie=e.onKeyPress,ae=e.onFocus,le=e.onPaste,ne=(0,l.Z)({"data-index":R},_),oe=(0,n.useState)(!1),se=(0,a.Z)(oe,2),re=se[0],ce=se[1];"number"===f&&E&&(ne.min=E),"number"===f&&S&&(ne.max=S),""!==Q&&(ne.pattern=Q);var de=K,ue=f;return"password"===f&&null===K&&(de=re?(0,b.jsx)(u.Z,{}):(0,b.jsx)(p.Z,{}),ue=re?"text":"password"),(0,b.jsx)(n.Fragment,{children:(0,b.jsxs)(s.ZP,{container:!0,className:(0,Z.Z)(""!==te?te:"",""!==z?$.errorInField:$.inputBoxContainer),children:[""!==t&&(0,b.jsxs)(r.Z,{htmlFor:x,className:V?$.noMinWidthLabel:$.inputLabel,children:[(0,b.jsxs)("span",{children:[t,M?"*":""]}),""!==A&&(0,b.jsx)("div",{className:$.tooltipContainer,children:(0,b.jsx)(c.Z,{title:A,placement:"top-start",children:(0,b.jsx)("div",{className:$.tooltip,children:(0,b.jsx)(m.byK,{})})})})]}),(0,b.jsxs)("div",{className:$.textBoxContainer,children:[(0,b.jsx)(y,{id:x,name:h,fullWidth:!0,value:o,autoFocus:X,disabled:k,onChange:i,type:ue,multiline:P,autoComplete:C,inputProps:ne,error:""!==z,helperText:z,placeholder:B,className:$.inputRebase,onKeyPress:ie,onFocus:ae,onPaste:le}),de&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==t?"withLabel":""),children:(0,b.jsx)(d.Z,{onClick:q?function(){q()}:function(){return ce(!re)},id:T,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:de})}),D&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==t?"withLabel":""),children:D})]})]})})}))},90673:function(e,t,i){var a=i(1413),l=i(72791),n=i(61889),o=i(886),s=i(30829),r=i(20068),c=i(68096),d=i(58406),u=i(77865),p=i(11135),x=i(25787),h=i(23814),v=i(29945),f=i(80184),m=(0,x.Z)((function(e){return(0,p.Z)({root:{height:38,lineHeight:1,"label + &":{marginTop:e.spacing(3)}},input:{height:38,position:"relative",color:"#07193E",fontSize:13,fontWeight:600,padding:"8px 20px 10px 10px",border:"#e5e5e5 1px solid",borderRadius:4,display:"flex",alignItems:"center","&:hover":{borderColor:"#393939"},"&:focus":{backgroundColor:"#fff"}}})}))(o.ZP);t.Z=(0,x.Z)((function(e){return(0,p.Z)((0,a.Z)((0,a.Z)((0,a.Z)({},h.YI),h.Hr),{},{fieldContainer:{display:"flex","@media (max-width: 600px)":{flexFlow:"column"}}}))}))((function(e){var t=e.classes,i=e.id,a=e.name,o=e.onChange,p=e.options,x=e.label,h=e.tooltip,Z=void 0===h?"":h,b=e.value,j=e.disabled,y=void 0!==j&&j;return(0,f.jsx)(l.Fragment,{children:(0,f.jsxs)(n.ZP,{item:!0,xs:12,className:t.fieldContainer,children:[""!==x&&(0,f.jsxs)(s.Z,{htmlFor:i,className:t.inputLabel,children:[(0,f.jsx)("span",{children:x}),""!==Z&&(0,f.jsx)("div",{className:t.tooltipContainer,children:(0,f.jsx)(r.Z,{title:Z,placement:"top-start",children:(0,f.jsx)("div",{className:t.tooltip,children:(0,f.jsx)(v.byK,{})})})})]}),(0,f.jsx)(c.Z,{fullWidth:!0,children:(0,f.jsx)(d.Z,{id:i,name:a,value:b,onChange:o,input:(0,f.jsx)(m,{}),disabled:y,children:p.map((function(e){return(0,f.jsx)(u.Z,{value:e.value,children:e.label},"select-".concat(a,"-").concat(e.label))}))})})]})})}))},3579:function(e,t,i){var a=i(64836);t.Z=void 0;var l=a(i(45649)),n=i(80184),o=(0,l.default)((0,n.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=o},20165:function(e,t,i){var a=i(64836);t.Z=void 0;var l=a(i(45649)),n=i(80184),o=(0,l.default)((0,n.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=o}}]); -//# sourceMappingURL=4619.56a4fe9f.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/4619.56a4fe9f.chunk.js.map b/portal-ui/build/static/js/4619.56a4fe9f.chunk.js.map deleted file mode 100644 index c6a7d7912..000000000 --- a/portal-ui/build/static/js/4619.56a4fe9f.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/4619.56a4fe9f.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AddAccessRule.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Common/FormComponents/SelectWrapper/SelectWrapper.tsx","../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState, useEffect } from \"react\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { Grid } from \"@mui/material\";\nimport { AddAccessRuleIcon, Button } from \"mds\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport {\n setErrorSnackMessage,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IAddAccessRule {\n classes: any;\n modalOpen: boolean;\n onClose: () => any;\n bucket: string;\n prefilledRoute?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...formFieldStyles,\n ...modalStyleUtils,\n });\n\nconst AddAccessRule = ({\n modalOpen,\n onClose,\n classes,\n bucket,\n prefilledRoute,\n}: IAddAccessRule) => {\n const dispatch = useAppDispatch();\n\n const [prefix, setPrefix] = useState(\"\");\n const [selectedAccess, setSelectedAccess] = useState(\"readonly\");\n\n useEffect(() => {\n if (prefilledRoute) {\n setPrefix(prefilledRoute);\n }\n }, [prefilledRoute]);\n\n const accessOptions = [\n { label: \"readonly\", value: \"readonly\" },\n { label: \"writeonly\", value: \"writeonly\" },\n { label: \"readwrite\", value: \"readwrite\" },\n ];\n\n const resetForm = () => {\n setPrefix(\"\");\n setSelectedAccess(\"readonly\");\n };\n\n const createProcess = () => {\n api.bucket\n .setAccessRuleWithBucket(bucket, {\n prefix: prefix,\n access: selectedAccess,\n })\n .then((res: any) => {\n dispatch(setSnackBarMessage(\"Access Rule added successfully\"));\n onClose();\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n onClose();\n });\n };\n\n return (\n }\n >\n \n \n {\n setPrefix(e.target.value);\n }}\n tooltip={\n \"Enter '/' to apply the rule to all prefixes and objects at the bucket root. Do not include the wildcard asterisk '*' as part of the prefix *unless* it is an explicit part of the prefix name. The Console automatically appends an asterisk to the appropriate sections of the resulting IAM policy.\"\n }\n />\n \n \n {\n setSelectedAccess(e.target.value);\n }}\n label=\"Access\"\n value={selectedAccess}\n options={accessOptions}\n disabled={false}\n />\n \n \n \n\n \n \n \n \n );\n};\n\nexport default withStyles(styles)(AddAccessRule);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n FormControl,\n InputBase,\n InputLabel,\n MenuItem,\n Select,\n SelectChangeEvent,\n Tooltip,\n} from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\nexport interface selectorTypes {\n label: string;\n value: string;\n}\n\ninterface SelectProps {\n options: selectorTypes[];\n value: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n onChange: (e: SelectChangeEvent) => void;\n disabled?: boolean;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n fieldContainer: {\n display: \"flex\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n height: 38,\n lineHeight: 1,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n },\n input: {\n height: 38,\n position: \"relative\",\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n padding: \"8px 20px 10px 10px\",\n border: \"#e5e5e5 1px solid\",\n borderRadius: 4,\n display: \"flex\",\n alignItems: \"center\",\n \"&:hover\": {\n borderColor: \"#393939\",\n },\n \"&:focus\": {\n backgroundColor: \"#fff\",\n },\n },\n }),\n)(InputBase);\n\nconst SelectWrapper = ({\n classes,\n id,\n name,\n onChange,\n options,\n label,\n tooltip = \"\",\n value,\n disabled = false,\n}: SelectProps) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n \n }\n disabled={disabled}\n >\n {options.map((option) => (\n \n {option.label}\n \n ))}\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(SelectWrapper);\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;"],"names":["withStyles","theme","createStyles","_objectSpread","formFieldStyles","modalStyleUtils","_ref","modalOpen","onClose","classes","bucket","prefilledRoute","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","prefix","setPrefix","_useState3","_useState4","selectedAccess","setSelectedAccess","useEffect","_jsx","ModalWrapper","title","titleIcon","AddAccessRuleIcon","children","_jsxs","Grid","container","item","xs","className","formFieldRow","InputBoxWrapper","value","label","id","name","placeholder","onChange","e","target","tooltip","SelectWrapper","options","disabled","modalButtonBar","Button","type","variant","onClick","trim","api","setAccessRuleWithBucket","access","then","res","setSnackBarMessage","catch","err","setErrorSnackMessage","errorToHandler","inputStyles","makeStyles","inputFieldStyles","InputField","props","TextField","InputProps","fieldBasic","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","_ref$type","_ref$autoComplete","autoComplete","_ref$disabled","_ref$multiline","multiline","_ref$tooltip","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","onKeyPress","onFocus","onPaste","inputProps","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","React","clsx","errorInField","inputBoxContainer","InputLabel","htmlFor","noMinWidthLabel","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","fullWidth","helperText","inputRebase","concat","IconButton","size","disableFocusRipple","disableRipple","disableTouchRipple","SelectStyled","root","height","lineHeight","marginTop","spacing","input","color","fontSize","fontWeight","padding","border","borderRadius","display","alignItems","borderColor","backgroundColor","InputBase","fieldContainer","flexFlow","FormControl","Select","map","option","MenuItem","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/4670.9cad71d4.chunk.js b/portal-ui/build/static/js/4670.9cad71d4.chunk.js deleted file mode 100644 index bf7e1ce74..000000000 --- a/portal-ui/build/static/js/4670.9cad71d4.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[4670],{30403:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var o=r(n(45649)),u=n(80184),c=(0,o.default)((0,u.jsx)("path",{d:"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6zm9 14H6V10h12v10zm-6-3c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"}),"LockOutlined");t.Z=c},3579:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var o=r(n(45649)),u=n(80184),c=(0,o.default)((0,u.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=c},20165:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var o=r(n(45649)),u=n(80184),c=(0,o.default)((0,u.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=c},45649:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return r.createSvgIcon}});var r=n(28610)},31260:function(e,t,n){"use strict";var r=n(78949);t.Z=r.Z},28610:function(e,t,n){"use strict";n.r(t),n.d(t,{capitalize:function(){return o.Z},createChainedFunction:function(){return u.Z},createSvgIcon:function(){return c.Z},debounce:function(){return i.Z},deprecatedPropType:function(){return a},isMuiElement:function(){return l.Z},ownerDocument:function(){return f.Z},ownerWindow:function(){return s.Z},requirePropFactory:function(){return p},setRef:function(){return d},unstable_ClassNameGenerator:function(){return C},unstable_useEnhancedEffect:function(){return y.Z},unstable_useId:function(){return b.Z},unsupportedProp:function(){return v},useControlled:function(){return m.Z},useEventCallback:function(){return h.Z},useForkRef:function(){return g.Z},useIsFocusVisible:function(){return w.Z}});var r=n(55902),o=n(14036),u=n(31260),c=n(76189),i=n(83199);var a=function(e,t){return function(){return null}},l=n(19103),f=n(98301),s=n(17602);n(87462);var p=function(e,t){return function(){return null}},d=n(62971).Z,y=n(40162),b=n(67384);var v=function(e,t,n,r,o){return null},m=n(98278),h=n(89683),g=n(42071),w=n(23031),C={configure:function(e){r.Z.configure(e)}}},19103:function(e,t,n){"use strict";n.d(t,{Z:function(){return o}});var r=n(72791);var o=function(e,t){return r.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}},78949:function(e,t,n){"use strict";function r(){for(var e=arguments.length,t=new Array(e),n=0;n=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function s(e,t){for(var n=0;n null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","createChainedFunction","validator","reason","componentNameInError","Component","props","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","React","indexOf","type","muiName","_len","arguments","length","funcs","Array","_key","reduce","acc","func","_len2","args","_key2","apply","this","deselectCurrent","clipboardToIE11Formatting","module","text","options","debug","message","reselectPrevious","range","selection","mark","success","document","createRange","getSelection","createElement","textContent","ariaHidden","style","all","position","top","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","addEventListener","e","stopPropagation","format","preventDefault","clipboardData","console","warn","window","clearData","setData","onCopy","body","appendChild","selectNodeContents","addRange","execCommand","Error","err","error","copyKey","test","navigator","userAgent","replace","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","CopyToClipboard","_react","_copyToClipboard","_excluded","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","_objectSpread","target","i","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","call","_defineProperties","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","self","TypeError","_assertThisInitialized","_possibleConstructorReturn","ReferenceError","getPrototypeOf","_React$PureComponent","subClass","superClass","create","_inherits","Constructor","protoProps","staticProps","_super","_this","instance","_classCallCheck","concat","event","_this$props","children","elem","Children","only","onClick","_this$props2","cloneElement","PureComponent","undefined","rangeCount","active","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","focus"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/4738.079312e2.chunk.js b/portal-ui/build/static/js/4738.079312e2.chunk.js deleted file mode 100644 index a795625b9..000000000 --- a/portal-ui/build/static/js/4738.079312e2.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[4738],{84738:function(e,t,n){n.r(t);var c=n(1413),s=n(29439),i=n(72791),a=n(78687),o=n(57689),r=n(35527),l=n(18073),u=n(43896),d=n(19847),S=n(92983),f=n(56087),I=n(60680),_=n(38442),h=n(45248),m=n(87995),F=n(9859),L=n(81551),A=n(31776),b=n(82342),p=n(80184);function x(e){return{id:"simple-tab-".concat(e),"aria-controls":"simple-tabpanel-".concat(e)}}t.default=function(){var e=(0,L.TL)(),t=(0,o.s0)(),n=(0,o.UO)(),E=(0,a.v9)(F.HQ),N=(0,i.useState)(0),Z=(0,s.Z)(N,2),U=Z[0],C=Z[1],P=(0,i.useState)(!0),k=(0,s.Z)(P,2),T=k[0],j=k[1],g=(0,i.useState)([]),v=(0,s.Z)(g,2),D=v[0],M=v[1],y=(0,i.useState)(!0),O=(0,s.Z)(y,2),R=O[0],B=O[1],G=(0,i.useState)([]),w=(0,s.Z)(G,2),K=w[0],Y=w[1],W=n.bucketName||"",z=(0,_.F)(W,[f.Ft.ADMIN_LIST_USER_POLICIES]),H=(0,_.F)(W,[f.Ft.ADMIN_GET_POLICY,f.Ft.ADMIN_LIST_USERS,f.Ft.ADMIN_LIST_GROUPS],!0),Q=(0,_.F)(f.C3,[f.Ft.ADMIN_GET_USER]),q=(0,_.F)(f.C3,[f.Ft.ADMIN_GET_POLICY,f.Ft.ADMIN_LIST_USERS,f.Ft.ADMIN_LIST_GROUPS]);(0,i.useEffect)((function(){E&&(B(!0),j(!0))}),[E,B,j]);var J=[{type:"view",disableButtonFunction:function(){return!q},onClick:function(e){t("".concat(f.gA.POLICIES,"/").concat((0,h.LL)(e.name)))}}],V=[{type:"view",disableButtonFunction:function(){return!Q},onClick:function(e){t("".concat(f.gA.USERS,"/").concat((0,h.LL)(e)))}}];return(0,i.useEffect)((function(){R&&(H?A.h.bucketUsers.listUsersWithAccessToBucket(W).then((function(e){Y(e.data),B(!1)})).catch((function(t){e((0,m.Ih)((0,b.g)(t))),B(!1)})):B(!1))}),[R,e,W,H]),(0,i.useEffect)((function(){e((0,m.Sc)("bucket_detail_access"))}),[]),(0,i.useEffect)((function(){T&&(z?A.h.bucketPolicy.listPoliciesWithBucket(W).then((function(e){M(e.data.policies),j(!1)})).catch((function(t){e((0,m.Ih)((0,b.g)(t))),j(!1)})):j(!1))}),[T,e,W,z]),(0,p.jsxs)(i.Fragment,{children:[(0,p.jsx)(I.Z,{children:"Access Audit"}),(0,p.jsxs)(l.Z,{value:U,onChange:function(e,t){C(t)},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[z&&(0,p.jsx)(u.Z,(0,c.Z)({label:"Policies"},x(0))),H&&(0,p.jsx)(u.Z,(0,c.Z)({label:"Users"},x(1)))]}),(0,p.jsxs)(r.Z,{children:[(0,p.jsx)(d.x,{index:0,value:U,children:(0,p.jsx)(_.s,{scopes:[f.Ft.ADMIN_LIST_USER_POLICIES],resource:W,errorProps:{disabled:!0},children:D&&(0,p.jsx)(S.Z,{noBackground:!0,itemActions:J,columns:[{label:"Name",elementKey:"name"}],isLoading:T,records:D,entityName:"Policies",idField:"name"})})}),(0,p.jsx)(d.x,{index:1,value:U,children:(0,p.jsx)(_.s,{scopes:[f.Ft.ADMIN_GET_POLICY,f.Ft.ADMIN_LIST_USERS,f.Ft.ADMIN_LIST_GROUPS],resource:W,matchAll:!0,errorProps:{disabled:!0},children:(0,p.jsx)(S.Z,{noBackground:!0,itemActions:V,columns:[{label:"User",elementKey:"accessKey"}],isLoading:R,records:K,entityName:"Users",idField:"accessKey"})})})]})]})}},60680:function(e,t,n){n(72791);var c=n(11135),s=n(25787),i=n(80184);t.Z=(0,s.Z)((function(e){return(0,c.Z)({root:{padding:0,margin:0,fontSize:".9rem"}})}))((function(e){var t=e.classes,n=e.children;return(0,i.jsx)("h1",{className:t.root,children:n})}))}}]); -//# sourceMappingURL=4738.079312e2.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/4738.079312e2.chunk.js.map b/portal-ui/build/static/js/4738.079312e2.chunk.js.map deleted file mode 100644 index 90d728834..000000000 --- a/portal-ui/build/static/js/4738.079312e2.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/4738.079312e2.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AccessDetailsPanel.tsx","screens/Console/Common/PanelTitle/PanelTitle.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useNavigate, useParams } from \"react-router-dom\";\nimport { Paper } from \"@mui/material\";\nimport Tabs from \"@mui/material/Tabs\";\nimport Tab from \"@mui/material/Tab\";\n\nimport { TabPanel } from \"../../../shared/tabs\";\nimport TableWrapper from \"../../Common/TableWrapper/TableWrapper\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_PAGES,\n IAM_SCOPES,\n} from \"../../../../common/SecureComponent/permissions\";\nimport PanelTitle from \"../../Common/PanelTitle/PanelTitle\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\nimport { encodeURLString } from \"../../../../common/utils\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { selBucketDetailsLoading } from \"./bucketDetailsSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { Policy, ServiceAccounts } from \"../../../../api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\nfunction a11yProps(index: any) {\n return {\n id: `simple-tab-${index}`,\n \"aria-controls\": `simple-tabpanel-${index}`,\n };\n}\n\nconst AccessDetails = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const params = useParams();\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n\n const [curTab, setCurTab] = useState(0);\n const [loadingPolicies, setLoadingPolicies] = useState(true);\n const [bucketPolicy, setBucketPolicy] = useState([]);\n const [loadingUsers, setLoadingUsers] = useState(true);\n const [bucketUsers, setBucketUsers] = useState([]);\n\n const bucketName = params.bucketName || \"\";\n\n const displayPoliciesList = hasPermission(bucketName, [\n IAM_SCOPES.ADMIN_LIST_USER_POLICIES,\n ]);\n\n const displayUsersList = hasPermission(\n bucketName,\n [\n IAM_SCOPES.ADMIN_GET_POLICY,\n IAM_SCOPES.ADMIN_LIST_USERS,\n IAM_SCOPES.ADMIN_LIST_GROUPS,\n ],\n true,\n );\n\n const viewUser = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.ADMIN_GET_USER,\n ]);\n const viewPolicy = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.ADMIN_GET_POLICY,\n IAM_SCOPES.ADMIN_LIST_USERS,\n IAM_SCOPES.ADMIN_LIST_GROUPS,\n ]);\n\n useEffect(() => {\n if (loadingBucket) {\n setLoadingUsers(true);\n setLoadingPolicies(true);\n }\n }, [loadingBucket, setLoadingUsers, setLoadingPolicies]);\n\n const PolicyActions = [\n {\n type: \"view\",\n disableButtonFunction: () => !viewPolicy,\n onClick: (policy: any) => {\n navigate(`${IAM_PAGES.POLICIES}/${encodeURLString(policy.name)}`);\n },\n },\n ];\n\n const userTableActions = [\n {\n type: \"view\",\n disableButtonFunction: () => !viewUser,\n onClick: (user: any) => {\n navigate(`${IAM_PAGES.USERS}/${encodeURLString(user)}`);\n },\n },\n ];\n\n useEffect(() => {\n if (loadingUsers) {\n if (displayUsersList) {\n api.bucketUsers\n .listUsersWithAccessToBucket(bucketName)\n .then((res) => {\n setBucketUsers(res.data);\n setLoadingUsers(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n setLoadingUsers(false);\n });\n } else {\n setLoadingUsers(false);\n }\n }\n }, [loadingUsers, dispatch, bucketName, displayUsersList]);\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_detail_access\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (loadingPolicies) {\n if (displayPoliciesList) {\n api.bucketPolicy\n .listPoliciesWithBucket(bucketName)\n .then((res) => {\n setBucketPolicy(res.data.policies);\n setLoadingPolicies(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n setLoadingPolicies(false);\n });\n } else {\n setLoadingPolicies(false);\n }\n }\n }, [loadingPolicies, dispatch, bucketName, displayPoliciesList]);\n\n return (\n \n Access Audit\n , newValue: number) => {\n setCurTab(newValue);\n }}\n indicatorColor=\"primary\"\n textColor=\"primary\"\n aria-label=\"cluster-tabs\"\n variant=\"scrollable\"\n scrollButtons=\"auto\"\n >\n {displayPoliciesList && }\n {displayUsersList && }\n \n \n \n \n {bucketPolicy && (\n \n )}\n \n \n\n \n \n \n \n \n \n \n );\n};\n\nexport default AccessDetails;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { IconButtonProps } from \"@mui/material\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n root: {\n padding: 0,\n margin: 0,\n fontSize: \".9rem\",\n },\n });\n\ninterface IPanelTitle extends IconButtonProps {\n classes: any;\n children: any;\n}\n\nconst PanelTitle = ({ classes, children }: IPanelTitle) => {\n return

{children}

;\n};\n\nexport default withStyles(styles)(PanelTitle);\n"],"names":["a11yProps","index","id","concat","dispatch","useAppDispatch","navigate","useNavigate","params","useParams","loadingBucket","useSelector","selBucketDetailsLoading","_useState","useState","_useState2","_slicedToArray","curTab","setCurTab","_useState3","_useState4","loadingPolicies","setLoadingPolicies","_useState5","_useState6","bucketPolicy","setBucketPolicy","_useState7","_useState8","loadingUsers","setLoadingUsers","_useState9","_useState10","bucketUsers","setBucketUsers","bucketName","displayPoliciesList","hasPermission","IAM_SCOPES","ADMIN_LIST_USER_POLICIES","displayUsersList","ADMIN_GET_POLICY","ADMIN_LIST_USERS","ADMIN_LIST_GROUPS","viewUser","CONSOLE_UI_RESOURCE","ADMIN_GET_USER","viewPolicy","useEffect","PolicyActions","type","disableButtonFunction","onClick","policy","IAM_PAGES","POLICIES","encodeURLString","name","userTableActions","user","USERS","api","listUsersWithAccessToBucket","then","res","data","catch","err","setErrorSnackMessage","errorToHandler","setHelpName","listPoliciesWithBucket","policies","_jsxs","Fragment","children","_jsx","PanelTitle","Tabs","value","onChange","e","newValue","indicatorColor","textColor","variant","scrollButtons","Tab","_objectSpread","label","Paper","TabPanel","SecureComponent","scopes","resource","errorProps","disabled","TableWrapper","noBackground","itemActions","columns","elementKey","isLoading","records","entityName","idField","matchAll","withStyles","theme","createStyles","root","padding","margin","fontSize","_ref","classes","className"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/4738.0bbac05c.chunk.js b/portal-ui/build/static/js/4738.0bbac05c.chunk.js new file mode 100644 index 000000000..d8babeb12 --- /dev/null +++ b/portal-ui/build/static/js/4738.0bbac05c.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[4738],{84738:function(e,t,c){c.r(t);var n=c(29439),s=c(72791),i=c(78687),o=c(57689),a=c(29945),u=c(31776),r=c(82342),l=c(56087),I=c(38442),S=c(45248),_=c(87995),f=c(9859),d=c(81551),F=c(80184);t.default=function(){var e=(0,d.TL)(),t=(0,o.s0)(),c=(0,o.UO)(),b=(0,i.v9)(f.HQ),L=(0,s.useState)("simple-tab-0"),h=(0,n.Z)(L,2),A=h[0],m=h[1],E=(0,s.useState)(!0),p=(0,n.Z)(E,2),N=p[0],P=p[1],T=(0,s.useState)([]),U=(0,n.Z)(T,2),k=U[0],C=U[1],D=(0,s.useState)(!0),M=(0,n.Z)(D,2),g=M[0],O=M[1],R=(0,s.useState)([]),y=(0,n.Z)(R,2),j=y[0],x=y[1],G=c.bucketName||"",v=(0,I.F)(G,[l.Ft.ADMIN_LIST_USER_POLICIES]),w=(0,I.F)(G,[l.Ft.ADMIN_GET_POLICY,l.Ft.ADMIN_LIST_USERS,l.Ft.ADMIN_LIST_GROUPS],!0),B=(0,I.F)(l.C3,[l.Ft.ADMIN_GET_USER]),Z=(0,I.F)(l.C3,[l.Ft.ADMIN_GET_POLICY,l.Ft.ADMIN_LIST_USERS,l.Ft.ADMIN_LIST_GROUPS]);(0,s.useEffect)((function(){b&&(O(!0),P(!0))}),[b,O,P]);var K=[{type:"view",disableButtonFunction:function(){return!Z},onClick:function(e){t("".concat(l.gA.POLICIES,"/").concat((0,S.LL)(e.name)))}}],Q=[{type:"view",disableButtonFunction:function(){return!B},onClick:function(e){t("".concat(l.gA.USERS,"/").concat((0,S.LL)(e)))}}];return(0,s.useEffect)((function(){g&&(w?u.h.bucketUsers.listUsersWithAccessToBucket(G).then((function(e){x(e.data),O(!1)})).catch((function(t){e((0,_.Ih)((0,r.g)(t))),O(!1)})):O(!1))}),[g,e,G,w]),(0,s.useEffect)((function(){e((0,_.Sc)("bucket_detail_access"))}),[]),(0,s.useEffect)((function(){N&&(v?u.h.bucketPolicy.listPoliciesWithBucket(G).then((function(e){C(e.data.policies),P(!1)})).catch((function(t){e((0,_.Ih)((0,r.g)(t))),P(!1)})):P(!1))}),[N,e,G,v]),(0,F.jsxs)(s.Fragment,{children:[(0,F.jsx)(a.NZf,{separator:!0,children:"Access Audit"}),(0,F.jsx)(a.mQc,{currentTabOrPath:A,onTabClick:function(e){m(e)},horizontal:!0,options:[{tabConfig:{label:"Policies",id:"simple-tab-0"},content:(0,F.jsx)(I.s,{scopes:[l.Ft.ADMIN_LIST_USER_POLICIES],resource:G,errorProps:{disabled:!0},children:k&&(0,F.jsx)(a.wQF,{noBackground:!0,itemActions:K,columns:[{label:"Name",elementKey:"name"}],isLoading:N,records:k,entityName:"Policies",idField:"name"})})},{tabConfig:{label:"Users",id:"simple-tab-1"},content:(0,F.jsx)(I.s,{scopes:[l.Ft.ADMIN_GET_POLICY,l.Ft.ADMIN_LIST_USERS,l.Ft.ADMIN_LIST_GROUPS],resource:G,matchAll:!0,errorProps:{disabled:!0},children:(0,F.jsx)(a.wQF,{noBackground:!0,itemActions:Q,columns:[{label:"User",elementKey:"accessKey"}],isLoading:g,records:j,entityName:"Users",idField:"accessKey"})})}]})]})}}}]); +//# sourceMappingURL=4738.0bbac05c.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/4738.0bbac05c.chunk.js.map b/portal-ui/build/static/js/4738.0bbac05c.chunk.js.map new file mode 100644 index 000000000..62d321456 --- /dev/null +++ b/portal-ui/build/static/js/4738.0bbac05c.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/4738.0bbac05c.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AccessDetailsPanel.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useNavigate, useParams } from \"react-router-dom\";\nimport { DataTable, SectionTitle, Tabs } from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_PAGES,\n IAM_SCOPES,\n} from \"../../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\nimport { encodeURLString } from \"../../../../common/utils\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { selBucketDetailsLoading } from \"./bucketDetailsSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { Policy, ServiceAccounts } from \"../../../../api/consoleApi\";\n\nconst AccessDetails = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const params = useParams();\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n\n const [curTab, setCurTab] = useState(\"simple-tab-0\");\n const [loadingPolicies, setLoadingPolicies] = useState(true);\n const [bucketPolicy, setBucketPolicy] = useState([]);\n const [loadingUsers, setLoadingUsers] = useState(true);\n const [bucketUsers, setBucketUsers] = useState([]);\n\n const bucketName = params.bucketName || \"\";\n\n const displayPoliciesList = hasPermission(bucketName, [\n IAM_SCOPES.ADMIN_LIST_USER_POLICIES,\n ]);\n\n const displayUsersList = hasPermission(\n bucketName,\n [\n IAM_SCOPES.ADMIN_GET_POLICY,\n IAM_SCOPES.ADMIN_LIST_USERS,\n IAM_SCOPES.ADMIN_LIST_GROUPS,\n ],\n true,\n );\n\n const viewUser = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.ADMIN_GET_USER,\n ]);\n const viewPolicy = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.ADMIN_GET_POLICY,\n IAM_SCOPES.ADMIN_LIST_USERS,\n IAM_SCOPES.ADMIN_LIST_GROUPS,\n ]);\n\n useEffect(() => {\n if (loadingBucket) {\n setLoadingUsers(true);\n setLoadingPolicies(true);\n }\n }, [loadingBucket, setLoadingUsers, setLoadingPolicies]);\n\n const PolicyActions = [\n {\n type: \"view\",\n disableButtonFunction: () => !viewPolicy,\n onClick: (policy: any) => {\n navigate(`${IAM_PAGES.POLICIES}/${encodeURLString(policy.name)}`);\n },\n },\n ];\n\n const userTableActions = [\n {\n type: \"view\",\n disableButtonFunction: () => !viewUser,\n onClick: (user: any) => {\n navigate(`${IAM_PAGES.USERS}/${encodeURLString(user)}`);\n },\n },\n ];\n\n useEffect(() => {\n if (loadingUsers) {\n if (displayUsersList) {\n api.bucketUsers\n .listUsersWithAccessToBucket(bucketName)\n .then((res) => {\n setBucketUsers(res.data);\n setLoadingUsers(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n setLoadingUsers(false);\n });\n } else {\n setLoadingUsers(false);\n }\n }\n }, [loadingUsers, dispatch, bucketName, displayUsersList]);\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_detail_access\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (loadingPolicies) {\n if (displayPoliciesList) {\n api.bucketPolicy\n .listPoliciesWithBucket(bucketName)\n .then((res) => {\n setBucketPolicy(res.data.policies);\n setLoadingPolicies(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n setLoadingPolicies(false);\n });\n } else {\n setLoadingPolicies(false);\n }\n }\n }, [loadingPolicies, dispatch, bucketName, displayPoliciesList]);\n\n return (\n \n Access Audit\n {\n setCurTab(newValue);\n }}\n horizontal\n options={[\n {\n tabConfig: { label: \"Policies\", id: \"simple-tab-0\" },\n content: (\n \n {bucketPolicy && (\n \n )}\n \n ),\n },\n {\n tabConfig: { label: \"Users\", id: \"simple-tab-1\" },\n content: (\n \n \n \n ),\n },\n ]}\n />\n \n );\n};\n\nexport default AccessDetails;\n"],"names":["dispatch","useAppDispatch","navigate","useNavigate","params","useParams","loadingBucket","useSelector","selBucketDetailsLoading","_useState","useState","_useState2","_slicedToArray","curTab","setCurTab","_useState3","_useState4","loadingPolicies","setLoadingPolicies","_useState5","_useState6","bucketPolicy","setBucketPolicy","_useState7","_useState8","loadingUsers","setLoadingUsers","_useState9","_useState10","bucketUsers","setBucketUsers","bucketName","displayPoliciesList","hasPermission","IAM_SCOPES","ADMIN_LIST_USER_POLICIES","displayUsersList","ADMIN_GET_POLICY","ADMIN_LIST_USERS","ADMIN_LIST_GROUPS","viewUser","CONSOLE_UI_RESOURCE","ADMIN_GET_USER","viewPolicy","useEffect","PolicyActions","type","disableButtonFunction","onClick","policy","concat","IAM_PAGES","POLICIES","encodeURLString","name","userTableActions","user","USERS","api","listUsersWithAccessToBucket","then","res","data","catch","err","setErrorSnackMessage","errorToHandler","setHelpName","listPoliciesWithBucket","policies","_jsxs","Fragment","children","_jsx","SectionTitle","separator","Tabs","currentTabOrPath","onTabClick","newValue","horizontal","options","tabConfig","label","id","content","SecureComponent","scopes","resource","errorProps","disabled","DataTable","noBackground","itemActions","columns","elementKey","isLoading","records","entityName","idField","matchAll"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/4874.157a2b95.chunk.js b/portal-ui/build/static/js/4874.157a2b95.chunk.js new file mode 100644 index 000000000..bcc3cd0ae --- /dev/null +++ b/portal-ui/build/static/js/4874.157a2b95.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[4874],{94874:function(e,n,t){t.r(n);var i=t(29439),o=t(72791),s=t(29945),c=t(57689),a=t(23814),r=t(56087),l=t(38442),u=t(45248),d=t(87995),h=t(81551),f=t(31776),m=t(59114),x=t(75578),p=t(27454),j=t(47974),C=t(99670),b=t(80184),I=(0,x.Z)(o.lazy((function(){return t.e(312).then(t.bind(t,312))})));n.default=function(){var e=(0,h.TL)(),n=(0,c.s0)(),t=(0,o.useState)([]),x=(0,i.Z)(t,2),A=x[0],P=x[1],y=(0,o.useState)(!1),M=(0,i.Z)(y,2),v=M[0],Z=M[1],F=(0,o.useState)(!1),S=(0,i.Z)(F,2),g=S[0],E=S[1],L=(0,o.useState)(""),O=(0,i.Z)(L,2),_=O[0],k=O[1],D=(0,o.useState)(""),w=(0,i.Z)(D,2),T=w[0],B=w[1],K=(0,l.F)(r.C3,[r.Ft.ADMIN_GET_POLICY]),N=(0,l.F)(r.C3,r.bE),R=(0,l.F)(r.C3,r.K$),X=(0,l.F)(r.C3,r.XM),Y=(0,l.F)(r.C3,r.GD);(0,o.useEffect)((function(){z()}),[]),(0,o.useEffect)((function(){v&&(R?f.h.policies.listPolicies().then((function(e){var n,t=null!==(n=e.data.policies)&&void 0!==n?n:[];t.sort((function(e,n){return e.name>n.name?1:e.name.\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport {\n AddIcon,\n Button,\n DataTable,\n Grid,\n HelpBox,\n IAMPoliciesIcon,\n PageLayout,\n} from \"mds\";\nimport { useNavigate } from \"react-router-dom\";\nimport { actionsTray } from \"../Common/FormComponents/common/styleLibrary\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport {\n CONSOLE_UI_RESOURCE,\n createPolicyPermissions,\n deletePolicyPermissions,\n IAM_PAGES,\n IAM_SCOPES,\n listPolicyPermissions,\n permissionTooltipHelper,\n viewPolicyPermissions,\n} from \"../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../common/SecureComponent\";\nimport {\n Error,\n HttpResponse,\n ListPoliciesResponse,\n Policy,\n} from \"../../../api/consoleApi\";\nimport { encodeURLString } from \"../../../common/utils\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { api } from \"../../../api\";\nimport SearchBox from \"../Common/SearchBox\";\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst DeletePolicy = withSuspense(React.lazy(() => import(\"./DeletePolicy\")));\n\nconst ListPolicies = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const [records, setRecords] = useState([]);\n const [loading, setLoading] = useState(false);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [selectedPolicy, setSelectedPolicy] = useState(\"\");\n const [filterPolicies, setFilterPolicies] = useState(\"\");\n const viewPolicy = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.ADMIN_GET_POLICY,\n ]);\n\n const canDeletePolicy = hasPermission(\n CONSOLE_UI_RESOURCE,\n deletePolicyPermissions,\n );\n\n const canDisplayPolicies = hasPermission(\n CONSOLE_UI_RESOURCE,\n listPolicyPermissions,\n );\n\n const canCreatePolicy = hasPermission(\n CONSOLE_UI_RESOURCE,\n createPolicyPermissions,\n );\n\n const canViewPolicy = hasPermission(\n CONSOLE_UI_RESOURCE,\n viewPolicyPermissions,\n );\n\n useEffect(() => {\n fetchRecords();\n }, []);\n\n useEffect(() => {\n if (loading) {\n if (canDisplayPolicies) {\n api.policies\n .listPolicies()\n .then((res: HttpResponse) => {\n const policies = res.data.policies ?? [];\n\n policies.sort((pa, pb) => {\n if (pa.name! > pb.name!) {\n return 1;\n }\n\n if (pa.name! < pb.name!) {\n return -1;\n }\n\n return 0;\n });\n\n setLoading(false);\n setRecords(policies);\n })\n .catch((err: ErrorResponseHandler) => {\n setLoading(false);\n dispatch(setErrorSnackMessage(err));\n });\n } else {\n setLoading(false);\n }\n }\n }, [loading, setLoading, setRecords, dispatch, canDisplayPolicies]);\n\n const fetchRecords = () => {\n setLoading(true);\n };\n\n const closeDeleteModalAndRefresh = (refresh: boolean) => {\n setDeleteOpen(false);\n\n if (refresh) {\n fetchRecords();\n }\n };\n\n const confirmDeletePolicy = (policy: string) => {\n setDeleteOpen(true);\n setSelectedPolicy(policy);\n };\n\n const viewAction = (policy: any) => {\n navigate(`${IAM_PAGES.POLICIES}/${encodeURLString(policy.name)}`);\n };\n\n const tableActions = [\n {\n type: \"view\",\n onClick: viewAction,\n disableButtonFunction: () => !viewPolicy,\n },\n {\n type: \"delete\",\n onClick: confirmDeletePolicy,\n sendOnlyId: true,\n disableButtonFunction: () => !canDeletePolicy,\n },\n ];\n\n const filteredRecords = records.filter(\n (elementItem) => elementItem.name?.includes(filterPolicies),\n );\n\n useEffect(() => {\n dispatch(setHelpName(\"list_policies\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n {deleteOpen && (\n \n )}\n } />\n\n \n \n \n \n\n \n \n }\n onClick={() => {\n navigate(`${IAM_PAGES.POLICY_ADD}`);\n }}\n disabled={!canCreatePolicy}\n />\n \n \n \n \n \n \n \n \n \n \n \n }\n help={\n \n MinIO uses Policy-Based Access Control (PBAC) to define the\n authorized actions and resources to which an authenticated\n user has access. Each policy describes one or more actions and\n conditions that outline the permissions of a user or group of\n users.\n
\n
\n MinIO PBAC is built for compatibility with AWS IAM policy\n syntax, structure, and behavior. The MinIO documentation makes\n a best-effort to cover IAM-specific behavior and\n functionality. Consider deferring to the IAM documentation for\n more complete documentation on AWS IAM-specific topics.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n
\n
\n
\n );\n};\n\nexport default ListPolicies;\n"],"names":["DeletePolicy","withSuspense","React","dispatch","useAppDispatch","navigate","useNavigate","_useState","useState","_useState2","_slicedToArray","records","setRecords","_useState3","_useState4","loading","setLoading","_useState5","_useState6","deleteOpen","setDeleteOpen","_useState7","_useState8","selectedPolicy","setSelectedPolicy","_useState9","_useState10","filterPolicies","setFilterPolicies","viewPolicy","hasPermission","CONSOLE_UI_RESOURCE","IAM_SCOPES","ADMIN_GET_POLICY","canDeletePolicy","deletePolicyPermissions","canDisplayPolicies","listPolicyPermissions","canCreatePolicy","createPolicyPermissions","canViewPolicy","viewPolicyPermissions","useEffect","fetchRecords","api","policies","listPolicies","then","res","_res$data$policies","data","sort","pa","pb","name","catch","err","setErrorSnackMessage","tableActions","type","onClick","policy","concat","IAM_PAGES","POLICIES","encodeURLString","disableButtonFunction","sendOnlyId","filteredRecords","filter","elementItem","_elementItem$name","includes","setHelpName","_jsxs","Fragment","children","_jsx","closeDeleteModalAndRefresh","refresh","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","Grid","container","item","xs","sx","actionsTray","SearchBox","onChange","placeholder","value","maxWidth","SecureComponent","scopes","ADMIN_CREATE_POLICY","resource","errorProps","disabled","TooltipWrapper","tooltip","permissionTooltipHelper","Button","id","variant","icon","AddIcon","POLICY_ADD","ADMIN_LIST_USER_POLICIES","DataTable","itemActions","columns","elementKey","isLoading","entityName","idField","marginTop","HelpBox","title","iconComponent","IAMPoliciesIcon","help","href","target","rel"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/4874.1901748a.chunk.js b/portal-ui/build/static/js/4874.1901748a.chunk.js deleted file mode 100644 index 281166325..000000000 --- a/portal-ui/build/static/js/4874.1901748a.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[4874],{94874:function(e,n,t){t.r(n);var i=t(29439),o=t(72791),s=t(29945),c=t(57689),a=t(23814),r=t(56087),l=t(38442),u=t(45248),d=t(87995),h=t(81551),f=t(31776),m=t(59114),x=t(75578),p=t(27454),j=t(47974),C=t(99670),b=t(80184),I=(0,x.Z)(o.lazy((function(){return t.e(312).then(t.bind(t,312))})));n.default=function(){var e=(0,h.TL)(),n=(0,c.s0)(),t=(0,o.useState)([]),x=(0,i.Z)(t,2),A=x[0],P=x[1],y=(0,o.useState)(!1),M=(0,i.Z)(y,2),v=M[0],Z=M[1],g=(0,o.useState)(!1),F=(0,i.Z)(g,2),S=F[0],E=F[1],L=(0,o.useState)(""),O=(0,i.Z)(L,2),_=O[0],k=O[1],D=(0,o.useState)(""),w=(0,i.Z)(D,2),T=w[0],B=w[1],K=(0,l.F)(r.C3,[r.Ft.ADMIN_GET_POLICY]),N=(0,l.F)(r.C3,r.bE),R=(0,l.F)(r.C3,r.K$),X=(0,l.F)(r.C3,r.XM),Y=(0,l.F)(r.C3,r.GD);(0,o.useEffect)((function(){z()}),[]),(0,o.useEffect)((function(){v&&(R?f.h.policies.listPolicies().then((function(e){var n,t=null!==(n=e.data.policies)&&void 0!==n?n:[];t.sort((function(e,n){return e.name>n.name?1:e.name.\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport {\n AddIcon,\n Button,\n DataTable,\n Grid,\n HelpBox,\n IAMPoliciesIcon,\n PageLayout,\n} from \"mds\";\nimport { useNavigate } from \"react-router-dom\";\nimport { actionsTray } from \"../Common/FormComponents/common/styleLibrary\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport {\n CONSOLE_UI_RESOURCE,\n createPolicyPermissions,\n deletePolicyPermissions,\n IAM_PAGES,\n IAM_SCOPES,\n listPolicyPermissions,\n permissionTooltipHelper,\n viewPolicyPermissions,\n} from \"../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../common/SecureComponent\";\nimport {\n Error,\n HttpResponse,\n ListPoliciesResponse,\n Policy,\n} from \"../../../api/consoleApi\";\nimport { encodeURLString } from \"../../../common/utils\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { api } from \"../../../api\";\nimport SearchBox from \"../Common/SearchBox\";\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst DeletePolicy = withSuspense(React.lazy(() => import(\"./DeletePolicy\")));\n\nconst ListPolicies = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const [records, setRecords] = useState([]);\n const [loading, setLoading] = useState(false);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [selectedPolicy, setSelectedPolicy] = useState(\"\");\n const [filterPolicies, setFilterPolicies] = useState(\"\");\n const viewPolicy = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.ADMIN_GET_POLICY,\n ]);\n\n const canDeletePolicy = hasPermission(\n CONSOLE_UI_RESOURCE,\n deletePolicyPermissions,\n );\n\n const canDisplayPolicies = hasPermission(\n CONSOLE_UI_RESOURCE,\n listPolicyPermissions,\n );\n\n const canCreatePolicy = hasPermission(\n CONSOLE_UI_RESOURCE,\n createPolicyPermissions,\n );\n\n const canViewPolicy = hasPermission(\n CONSOLE_UI_RESOURCE,\n viewPolicyPermissions,\n );\n\n useEffect(() => {\n fetchRecords();\n }, []);\n\n useEffect(() => {\n if (loading) {\n if (canDisplayPolicies) {\n api.policies\n .listPolicies()\n .then((res: HttpResponse) => {\n const policies = res.data.policies ?? [];\n\n policies.sort((pa, pb) => {\n if (pa.name! > pb.name!) {\n return 1;\n }\n\n if (pa.name! < pb.name!) {\n return -1;\n }\n\n return 0;\n });\n\n setLoading(false);\n setRecords(policies);\n })\n .catch((err: ErrorResponseHandler) => {\n setLoading(false);\n dispatch(setErrorSnackMessage(err));\n });\n } else {\n setLoading(false);\n }\n }\n }, [loading, setLoading, setRecords, dispatch, canDisplayPolicies]);\n\n const fetchRecords = () => {\n setLoading(true);\n };\n\n const closeDeleteModalAndRefresh = (refresh: boolean) => {\n setDeleteOpen(false);\n\n if (refresh) {\n fetchRecords();\n }\n };\n\n const confirmDeletePolicy = (policy: string) => {\n setDeleteOpen(true);\n setSelectedPolicy(policy);\n };\n\n const viewAction = (policy: any) => {\n navigate(`${IAM_PAGES.POLICIES}/${encodeURLString(policy.name)}`);\n };\n\n const tableActions = [\n {\n type: \"view\",\n onClick: viewAction,\n disableButtonFunction: () => !viewPolicy,\n },\n {\n type: \"delete\",\n onClick: confirmDeletePolicy,\n sendOnlyId: true,\n disableButtonFunction: () => !canDeletePolicy,\n },\n ];\n\n const filteredRecords = records.filter(\n (elementItem) => elementItem.name?.includes(filterPolicies),\n );\n\n useEffect(() => {\n dispatch(setHelpName(\"list_policies\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n {deleteOpen && (\n \n )}\n } />\n\n \n \n \n \n\n \n \n }\n onClick={() => {\n navigate(`${IAM_PAGES.POLICY_ADD}`);\n }}\n disabled={!canCreatePolicy}\n />\n \n \n \n \n \n \n \n \n \n \n \n }\n help={\n \n MinIO uses Policy-Based Access Control (PBAC) to define the\n authorized actions and resources to which an authenticated\n user has access. Each policy describes one or more actions and\n conditions that outline the permissions of a user or group of\n users.\n
\n
\n MinIO PBAC is built for compatibility with AWS IAM policy\n syntax, structure, and behavior. The MinIO documentation makes\n a best-effort to cover IAM-specific behavior and\n functionality. Consider deferring to the IAM documentation for\n more complete documentation on AWS IAM-specific topics.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n
\n
\n
\n );\n};\n\nexport default ListPolicies;\n"],"names":["DeletePolicy","withSuspense","React","dispatch","useAppDispatch","navigate","useNavigate","_useState","useState","_useState2","_slicedToArray","records","setRecords","_useState3","_useState4","loading","setLoading","_useState5","_useState6","deleteOpen","setDeleteOpen","_useState7","_useState8","selectedPolicy","setSelectedPolicy","_useState9","_useState10","filterPolicies","setFilterPolicies","viewPolicy","hasPermission","CONSOLE_UI_RESOURCE","IAM_SCOPES","ADMIN_GET_POLICY","canDeletePolicy","deletePolicyPermissions","canDisplayPolicies","listPolicyPermissions","canCreatePolicy","createPolicyPermissions","canViewPolicy","viewPolicyPermissions","useEffect","fetchRecords","api","policies","listPolicies","then","res","_res$data$policies","data","sort","pa","pb","name","catch","err","setErrorSnackMessage","tableActions","type","onClick","policy","concat","IAM_PAGES","POLICIES","encodeURLString","disableButtonFunction","sendOnlyId","filteredRecords","filter","elementItem","_elementItem$name","includes","setHelpName","_jsxs","Fragment","children","_jsx","closeDeleteModalAndRefresh","refresh","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","Grid","container","sx","gap","item","xs","actionsTray","SearchBox","onChange","placeholder","value","maxWidth","SecureComponent","scopes","ADMIN_CREATE_POLICY","resource","errorProps","disabled","TooltipWrapper","tooltip","permissionTooltipHelper","Button","id","variant","icon","AddIcon","POLICY_ADD","ADMIN_LIST_USER_POLICIES","DataTable","itemActions","columns","elementKey","isLoading","entityName","idField","marginTop","HelpBox","title","iconComponent","IAMPoliciesIcon","help","href","target","rel"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/4882.6b280860.chunk.js b/portal-ui/build/static/js/4882.6b280860.chunk.js deleted file mode 100644 index 4eb35c602..000000000 --- a/portal-ui/build/static/js/4882.6b280860.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[4882,7981,9581,6662],{3579:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");e.Z=i},20165:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");e.Z=i},45649:function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=t(28610)},93840:function(r,e,t){"use strict";var n=t(72791).createContext(void 0);e.Z=n},76147:function(r,e,t){"use strict";function n(r){var e=r.props,t=r.states,n=r.muiFormControl;return t.reduce((function(r,t){return r[t]=e[t],n&&"undefined"===typeof e[t]&&(r[t]=n[t]),r}),{})}t.d(e,{Z:function(){return n}})},52930:function(r,e,t){"use strict";t.d(e,{Z:function(){return a}});var n=t(72791),o=t(93840);function a(){return n.useContext(o.Z)}},17133:function(r,e,t){"use strict";var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(28182),u=t(94419),l=t(76147),c=t(52930),d=t(14036),f=t(31402),m=t(66934),p=t(10843),Z=t(80184),v=["children","className","color","component","disabled","error","filled","focused","required"],x=(0,m.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return(0,a.Z)({},e.root,"secondary"===t.color&&e.colorSecondary,t.filled&&e.filled)}})((function(r){var e,t=r.theme,o=r.ownerState;return(0,a.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(e={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(e,"&.".concat(p.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(e,"&.".concat(p.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,n.Z)(e,"&.".concat(p.Z.error),{color:(t.vars||t).palette.error.main}),e))})),h=(0,m.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(r,e){return e.asterisk}})((function(r){var e=r.theme;return(0,n.Z)({},"&.".concat(p.Z.error),{color:(e.vars||e).palette.error.main})})),b=i.forwardRef((function(r,e){var t=(0,f.Z)({props:r,name:"MuiFormLabel"}),n=t.children,i=t.className,m=t.component,b=void 0===m?"label":m,k=(0,o.Z)(t,v),w=(0,c.Z)(),y=(0,l.Z)({props:t,muiFormControl:w,states:["color","required","focused","disabled","error","filled"]}),z=(0,a.Z)({},t,{color:y.color||"primary",component:b,disabled:y.disabled,error:y.error,filled:y.filled,focused:y.focused,required:y.required}),C=function(r){var e=r.classes,t=r.color,n=r.focused,o=r.disabled,a=r.error,i=r.filled,s=r.required,l={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",a&&"error"]};return(0,u.Z)(l,p.M,e)}(z);return(0,Z.jsxs)(x,(0,a.Z)({as:b,ownerState:z,className:(0,s.Z)(C.root,i),ref:e},k,{children:[n,y.required&&(0,Z.jsxs)(h,{ownerState:z,"aria-hidden":!0,className:C.asterisk,children:["\u2009","*"]})]}))}));e.Z=b},10843:function(r,e,t){"use strict";t.d(e,{M:function(){return a}});var n=t(75878),o=t(21217);function a(r){return(0,o.Z)("MuiFormLabel",r)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);e.Z=i},30829:function(r,e,t){"use strict";t.d(e,{Z:function(){return w}});var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(94419),u=t(28182),l=t(76147),c=t(52930),d=t(17133),f=t(10843),m=t(31402),p=t(66934),Z=t(75878),v=t(21217);function x(r){return(0,v.Z)("MuiInputLabel",r)}(0,Z.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var h=t(80184),b=["disableAnimation","margin","shrink","variant","className"],k=(0,p.ZP)(d.Z,{shouldForwardProp:function(r){return(0,p.FO)(r)||"classes"===r},name:"MuiInputLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),e.asterisk),e.root,t.formControl&&e.formControl,"small"===t.size&&e.sizeSmall,t.shrink&&e.shrink,!t.disableAnimation&&e.animated,e[t.variant]]}})((function(r){var e=r.theme,t=r.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:e.transitions.create(["color","transform","max-width"],{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut})},"filled"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),w=i.forwardRef((function(r,e){var t=(0,m.Z)({name:"MuiInputLabel",props:r}),n=t.disableAnimation,i=void 0!==n&&n,d=t.shrink,f=t.className,p=(0,o.Z)(t,b),Z=(0,c.Z)(),v=d;"undefined"===typeof v&&Z&&(v=Z.filled||Z.focused||Z.adornedStart);var w=(0,l.Z)({props:t,muiFormControl:Z,states:["size","variant","required"]}),y=(0,a.Z)({},t,{disableAnimation:i,formControl:Z,shrink:v,size:w.size,variant:w.variant,required:w.required}),z=function(r){var e=r.classes,t=r.formControl,n=r.size,o=r.shrink,i={root:["root",t&&"formControl",!r.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",r.variant],asterisk:[r.required&&"asterisk"]},u=(0,s.Z)(i,x,e);return(0,a.Z)({},e,u)}(y);return(0,h.jsx)(k,(0,a.Z)({"data-shrink":v,ownerState:y,ref:e,className:(0,u.Z)(z.root,f)},p,{classes:z}))}))},31260:function(r,e,t){"use strict";var n=t(78949);e.Z=n.Z},28610:function(r,e,t){"use strict";t.r(e),t.d(e,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return u},isMuiElement:function(){return l.Z},ownerDocument:function(){return c.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return m},unstable_ClassNameGenerator:function(){return w},unstable_useEnhancedEffect:function(){return p.Z},unstable_useId:function(){return Z.Z},unsupportedProp:function(){return v},useControlled:function(){return x.Z},useEventCallback:function(){return h.Z},useForkRef:function(){return b.Z},useIsFocusVisible:function(){return k.Z}});var n=t(55902),o=t(14036),a=t(31260),i=t(76189),s=t(83199);var u=function(r,e){return function(){return null}},l=t(19103),c=t(98301),d=t(17602);t(87462);var f=function(r,e){return function(){return null}},m=t(62971).Z,p=t(40162),Z=t(67384);var v=function(r,e,t,n,o){return null},x=t(98278),h=t(89683),b=t(42071),k=t(23031),w={configure:function(r){n.Z.configure(r)}}},19103:function(r,e,t){"use strict";t.d(e,{Z:function(){return o}});var n=t(72791);var o=function(r,e){return n.isValidElement(r)&&-1!==e.indexOf(r.type.muiName)}},78949:function(r,e,t){"use strict";function n(){for(var r=arguments.length,e=new Array(r),t=0;t {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","type","muiName","_len","arguments","length","funcs","Array","_key","func","_len2","args","_key2","apply","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/4882.9c5a4b90.chunk.js b/portal-ui/build/static/js/4882.9c5a4b90.chunk.js new file mode 100644 index 000000000..0781ceea1 --- /dev/null +++ b/portal-ui/build/static/js/4882.9c5a4b90.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[4882,7981,9581],{3579:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");e.Z=i},20165:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");e.Z=i},45649:function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=t(28610)},93840:function(r,e,t){"use strict";var n=t(72791).createContext(void 0);e.Z=n},76147:function(r,e,t){"use strict";function n(r){var e=r.props,t=r.states,n=r.muiFormControl;return t.reduce((function(r,t){return r[t]=e[t],n&&"undefined"===typeof e[t]&&(r[t]=n[t]),r}),{})}t.d(e,{Z:function(){return n}})},52930:function(r,e,t){"use strict";t.d(e,{Z:function(){return a}});var n=t(72791),o=t(93840);function a(){return n.useContext(o.Z)}},17133:function(r,e,t){"use strict";var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(28182),u=t(94419),l=t(76147),c=t(52930),d=t(14036),f=t(31402),m=t(66934),p=t(10843),Z=t(80184),v=["children","className","color","component","disabled","error","filled","focused","required"],x=(0,m.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return(0,a.Z)({},e.root,"secondary"===t.color&&e.colorSecondary,t.filled&&e.filled)}})((function(r){var e,t=r.theme,o=r.ownerState;return(0,a.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(e={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(e,"&.".concat(p.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(e,"&.".concat(p.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,n.Z)(e,"&.".concat(p.Z.error),{color:(t.vars||t).palette.error.main}),e))})),b=(0,m.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(r,e){return e.asterisk}})((function(r){var e=r.theme;return(0,n.Z)({},"&.".concat(p.Z.error),{color:(e.vars||e).palette.error.main})})),h=i.forwardRef((function(r,e){var t=(0,f.Z)({props:r,name:"MuiFormLabel"}),n=t.children,i=t.className,m=t.component,h=void 0===m?"label":m,k=(0,o.Z)(t,v),z=(0,c.Z)(),C=(0,l.Z)({props:t,muiFormControl:z,states:["color","required","focused","disabled","error","filled"]}),w=(0,a.Z)({},t,{color:C.color||"primary",component:h,disabled:C.disabled,error:C.error,filled:C.filled,focused:C.focused,required:C.required}),M=function(r){var e=r.classes,t=r.color,n=r.focused,o=r.disabled,a=r.error,i=r.filled,s=r.required,l={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",a&&"error"]};return(0,u.Z)(l,p.M,e)}(w);return(0,Z.jsxs)(x,(0,a.Z)({as:h,ownerState:w,className:(0,s.Z)(M.root,i),ref:e},k,{children:[n,C.required&&(0,Z.jsxs)(b,{ownerState:w,"aria-hidden":!0,className:M.asterisk,children:["\u2009","*"]})]}))}));e.Z=h},10843:function(r,e,t){"use strict";t.d(e,{M:function(){return a}});var n=t(75878),o=t(21217);function a(r){return(0,o.Z)("MuiFormLabel",r)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);e.Z=i},30829:function(r,e,t){"use strict";t.d(e,{Z:function(){return z}});var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(94419),u=t(28182),l=t(76147),c=t(52930),d=t(17133),f=t(10843),m=t(31402),p=t(66934),Z=t(75878),v=t(21217);function x(r){return(0,v.Z)("MuiInputLabel",r)}(0,Z.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var b=t(80184),h=["disableAnimation","margin","shrink","variant","className"],k=(0,p.ZP)(d.Z,{shouldForwardProp:function(r){return(0,p.FO)(r)||"classes"===r},name:"MuiInputLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),e.asterisk),e.root,t.formControl&&e.formControl,"small"===t.size&&e.sizeSmall,t.shrink&&e.shrink,!t.disableAnimation&&e.animated,e[t.variant]]}})((function(r){var e=r.theme,t=r.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:e.transitions.create(["color","transform","max-width"],{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut})},"filled"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),z=i.forwardRef((function(r,e){var t=(0,m.Z)({name:"MuiInputLabel",props:r}),n=t.disableAnimation,i=void 0!==n&&n,d=t.shrink,f=t.className,p=(0,o.Z)(t,h),Z=(0,c.Z)(),v=d;"undefined"===typeof v&&Z&&(v=Z.filled||Z.focused||Z.adornedStart);var z=(0,l.Z)({props:t,muiFormControl:Z,states:["size","variant","required"]}),C=(0,a.Z)({},t,{disableAnimation:i,formControl:Z,shrink:v,size:z.size,variant:z.variant,required:z.required}),w=function(r){var e=r.classes,t=r.formControl,n=r.size,o=r.shrink,i={root:["root",t&&"formControl",!r.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",r.variant],asterisk:[r.required&&"asterisk"]},u=(0,s.Z)(i,x,e);return(0,a.Z)({},e,u)}(C);return(0,b.jsx)(k,(0,a.Z)({"data-shrink":v,ownerState:C,ref:e,className:(0,u.Z)(w.root,f)},p,{classes:w}))}))},31260:function(r,e,t){"use strict";var n=t(78949);e.Z=n.Z},28610:function(r,e,t){"use strict";t.r(e),t.d(e,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return u},isMuiElement:function(){return l.Z},ownerDocument:function(){return c.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return m},unstable_ClassNameGenerator:function(){return z},unstable_useEnhancedEffect:function(){return p.Z},unstable_useId:function(){return Z.Z},unsupportedProp:function(){return v},useControlled:function(){return x.Z},useEventCallback:function(){return b.Z},useForkRef:function(){return h.Z},useIsFocusVisible:function(){return k.Z}});var n=t(55902),o=t(14036),a=t(31260),i=t(76189),s=t(83199);var u=function(r,e){return function(){return null}},l=t(19103),c=t(98301),d=t(17602);t(87462);var f=function(r,e){return function(){return null}},m=t(62971).Z,p=t(40162),Z=t(67384);var v=function(r,e,t,n,o){return null},x=t(98278),b=t(89683),h=t(42071),k=t(23031),z={configure:function(r){n.Z.configure(r)}}},19103:function(r,e,t){"use strict";t.d(e,{Z:function(){return o}});var n=t(72791);var o=function(r,e){return n.isValidElement(r)&&-1!==e.indexOf(r.type.muiName)}},64836:function(r){r.exports=function(r){return r&&r.__esModule?r:{default:r}},r.exports.__esModule=!0,r.exports.default=r.exports}}]); +//# sourceMappingURL=4882.9c5a4b90.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/4882.9c5a4b90.chunk.js.map b/portal-ui/build/static/js/4882.9c5a4b90.chunk.js.map new file mode 100644 index 000000000..8ab53008c --- /dev/null +++ b/portal-ui/build/static/js/4882.9c5a4b90.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/4882.9c5a4b90.chunk.js","mappings":"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","sources":["../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","type","muiName","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/5004.72346a14.chunk.js b/portal-ui/build/static/js/5004.594e3211.chunk.js similarity index 83% rename from portal-ui/build/static/js/5004.72346a14.chunk.js rename to portal-ui/build/static/js/5004.594e3211.chunk.js index e67c15fee..49523c2b8 100644 --- a/portal-ui/build/static/js/5004.72346a14.chunk.js +++ b/portal-ui/build/static/js/5004.594e3211.chunk.js @@ -1,2 +1,2 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[5004],{26759:function(e,r,t){"use strict";var n=t(64836);r.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"m7 10 5 5 5-5z"}),"ArrowDropDown");r.Z=i},70366:function(e,r,t){"use strict";var n=t(64836);r.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"m7 14 5-5 5 5z"}),"ArrowDropUp");r.Z=i},97911:function(e,r,t){"use strict";var n=t(64836);r.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M14.67 5v14H9.33V5h5.34zm1 14H21V5h-5.33v14zm-7.34 0V5H3v14h5.33z"}),"ViewColumn");r.Z=i},45649:function(e,r,t){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=t(28610)},94454:function(e,r,t){"use strict";t.d(r,{Z:function(){return I}});var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(28182),c=t(94419),u=t(12065),l=t(97278),d=t(76189),f=t(80184),p=(0,d.Z)((0,f.jsx)("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}),"CheckBoxOutlineBlank"),m=(0,d.Z)((0,f.jsx)("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"}),"CheckBox"),v=(0,d.Z)((0,f.jsx)("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z"}),"IndeterminateCheckBox"),Z=t(14036),h=t(31402),b=t(66934),x=t(75878),k=t(21217);function g(e){return(0,k.Z)("MuiCheckbox",e)}var w=(0,x.Z)("MuiCheckbox",["root","checked","disabled","indeterminate","colorPrimary","colorSecondary"]),y=["checkedIcon","color","icon","indeterminate","indeterminateIcon","inputProps","size","className"],C=(0,b.ZP)(l.Z,{shouldForwardProp:function(e){return(0,b.FO)(e)||"classes"===e},name:"MuiCheckbox",slot:"Root",overridesResolver:function(e,r){var t=e.ownerState;return[r.root,t.indeterminate&&r.indeterminate,"default"!==t.color&&r["color".concat((0,Z.Z)(t.color))]]}})((function(e){var r,t=e.theme,o=e.ownerState;return(0,a.Z)({color:(t.vars||t).palette.text.secondary},!o.disableRipple&&{"&:hover":{backgroundColor:t.vars?"rgba(".concat("default"===o.color?t.vars.palette.action.activeChannel:t.vars.palette.primary.mainChannel," / ").concat(t.vars.palette.action.hoverOpacity,")"):(0,u.Fq)("default"===o.color?t.palette.action.active:t.palette[o.color].main,t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==o.color&&(r={},(0,n.Z)(r,"&.".concat(w.checked,", &.").concat(w.indeterminate),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(r,"&.".concat(w.disabled),{color:(t.vars||t).palette.action.disabled}),r))})),z=(0,f.jsx)(m,{}),S=(0,f.jsx)(p,{}),F=(0,f.jsx)(v,{}),I=i.forwardRef((function(e,r){var t,n,u=(0,h.Z)({props:e,name:"MuiCheckbox"}),l=u.checkedIcon,d=void 0===l?z:l,p=u.color,m=void 0===p?"primary":p,v=u.icon,b=void 0===v?S:v,x=u.indeterminate,k=void 0!==x&&x,w=u.indeterminateIcon,I=void 0===w?F:w,M=u.inputProps,R=u.size,P=void 0===R?"medium":R,j=u.className,q=(0,o.Z)(u,y),N=k?I:b,O=k?I:d,B=(0,a.Z)({},u,{color:m,indeterminate:k,size:P}),E=function(e){var r=e.classes,t=e.indeterminate,n=e.color,o={root:["root",t&&"indeterminate","color".concat((0,Z.Z)(n))]},i=(0,c.Z)(o,g,r);return(0,a.Z)({},r,i)}(B);return(0,f.jsx)(C,(0,a.Z)({type:"checkbox",inputProps:(0,a.Z)({"data-indeterminate":k},M),icon:i.cloneElement(N,{fontSize:null!=(t=N.props.fontSize)?t:P}),checkedIcon:i.cloneElement(O,{fontSize:null!=(n=O.props.fontSize)?n:P}),ownerState:B,ref:r,className:(0,s.Z)(E.root,j)},q,{classes:E}))}))},93840:function(e,r,t){"use strict";var n=t(72791).createContext(void 0);r.Z=n},76147:function(e,r,t){"use strict";function n(e){var r=e.props,t=e.states,n=e.muiFormControl;return t.reduce((function(e,t){return e[t]=r[t],n&&"undefined"===typeof r[t]&&(e[t]=n[t]),e}),{})}t.d(r,{Z:function(){return n}})},52930:function(e,r,t){"use strict";t.d(r,{Z:function(){return a}});var n=t(72791),o=t(93840);function a(){return n.useContext(o.Z)}},17133:function(e,r,t){"use strict";var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(28182),c=t(94419),u=t(76147),l=t(52930),d=t(14036),f=t(31402),p=t(66934),m=t(10843),v=t(80184),Z=["children","className","color","component","disabled","error","filled","focused","required"],h=(0,p.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,r){var t=e.ownerState;return(0,a.Z)({},r.root,"secondary"===t.color&&r.colorSecondary,t.filled&&r.filled)}})((function(e){var r,t=e.theme,o=e.ownerState;return(0,a.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(r={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(r,"&.".concat(m.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(r,"&.".concat(m.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,n.Z)(r,"&.".concat(m.Z.error),{color:(t.vars||t).palette.error.main}),r))})),b=(0,p.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,r){return r.asterisk}})((function(e){var r=e.theme;return(0,n.Z)({},"&.".concat(m.Z.error),{color:(r.vars||r).palette.error.main})})),x=i.forwardRef((function(e,r){var t=(0,f.Z)({props:e,name:"MuiFormLabel"}),n=t.children,i=t.className,p=t.component,x=void 0===p?"label":p,k=(0,o.Z)(t,Z),g=(0,l.Z)(),w=(0,u.Z)({props:t,muiFormControl:g,states:["color","required","focused","disabled","error","filled"]}),y=(0,a.Z)({},t,{color:w.color||"primary",component:x,disabled:w.disabled,error:w.error,filled:w.filled,focused:w.focused,required:w.required}),C=function(e){var r=e.classes,t=e.color,n=e.focused,o=e.disabled,a=e.error,i=e.filled,s=e.required,u={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",a&&"error"]};return(0,c.Z)(u,m.M,r)}(y);return(0,v.jsxs)(h,(0,a.Z)({as:x,ownerState:y,className:(0,s.Z)(C.root,i),ref:r},k,{children:[n,w.required&&(0,v.jsxs)(b,{ownerState:y,"aria-hidden":!0,className:C.asterisk,children:["\u2009","*"]})]}))}));r.Z=x},10843:function(e,r,t){"use strict";t.d(r,{M:function(){return a}});var n=t(75878),o=t(21217);function a(e){return(0,o.Z)("MuiFormLabel",e)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);r.Z=i},30829:function(e,r,t){"use strict";t.d(r,{Z:function(){return g}});var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(94419),c=t(28182),u=t(76147),l=t(52930),d=t(17133),f=t(10843),p=t(31402),m=t(66934),v=t(75878),Z=t(21217);function h(e){return(0,Z.Z)("MuiInputLabel",e)}(0,v.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var b=t(80184),x=["disableAnimation","margin","shrink","variant","className"],k=(0,m.ZP)(d.Z,{shouldForwardProp:function(e){return(0,m.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,r){var t=e.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),r.asterisk),r.root,t.formControl&&r.formControl,"small"===t.size&&r.sizeSmall,t.shrink&&r.shrink,!t.disableAnimation&&r.animated,r[t.variant]]}})((function(e){var r=e.theme,t=e.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:r.transitions.create(["color","transform","max-width"],{duration:r.transitions.duration.shorter,easing:r.transitions.easing.easeOut})},"filled"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),g=i.forwardRef((function(e,r){var t=(0,p.Z)({name:"MuiInputLabel",props:e}),n=t.disableAnimation,i=void 0!==n&&n,d=t.shrink,f=t.className,m=(0,o.Z)(t,x),v=(0,l.Z)(),Z=d;"undefined"===typeof Z&&v&&(Z=v.filled||v.focused||v.adornedStart);var g=(0,u.Z)({props:t,muiFormControl:v,states:["size","variant","required"]}),w=(0,a.Z)({},t,{disableAnimation:i,formControl:v,shrink:Z,size:g.size,variant:g.variant,required:g.required}),y=function(e){var r=e.classes,t=e.formControl,n=e.size,o=e.shrink,i={root:["root",t&&"formControl",!e.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},c=(0,s.Z)(i,h,r);return(0,a.Z)({},r,c)}(w);return(0,b.jsx)(k,(0,a.Z)({"data-shrink":Z,ownerState:w,ref:r,className:(0,c.Z)(y.root,f)},m,{classes:y}))}))},97278:function(e,r,t){"use strict";t.d(r,{Z:function(){return g}});var n=t(29439),o=t(63366),a=t(87462),i=t(72791),s=t(28182),c=t(94419),u=t(14036),l=t(66934),d=t(98278),f=t(52930),p=t(95080),m=t(75878),v=t(21217);function Z(e){return(0,v.Z)("PrivateSwitchBase",e)}(0,m.Z)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var h=t(80184),b=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],x=(0,l.ZP)(p.Z)((function(e){var r=e.ownerState;return(0,a.Z)({padding:9,borderRadius:"50%"},"start"===r.edge&&{marginLeft:"small"===r.size?-3:-12},"end"===r.edge&&{marginRight:"small"===r.size?-3:-12})})),k=(0,l.ZP)("input")({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),g=i.forwardRef((function(e,r){var t=e.autoFocus,i=e.checked,l=e.checkedIcon,p=e.className,m=e.defaultChecked,v=e.disabled,g=e.disableFocusRipple,w=void 0!==g&&g,y=e.edge,C=void 0!==y&&y,z=e.icon,S=e.id,F=e.inputProps,I=e.inputRef,M=e.name,R=e.onBlur,P=e.onChange,j=e.onFocus,q=e.readOnly,N=e.required,O=void 0!==N&&N,B=e.tabIndex,E=e.type,L=e.value,A=(0,o.Z)(e,b),_=(0,d.Z)({controlled:i,default:Boolean(m),name:"SwitchBase",state:"checked"}),V=(0,n.Z)(_,2),H=V[0],W=V[1],D=(0,f.Z)(),G=v;D&&"undefined"===typeof G&&(G=D.disabled);var T="checkbox"===E||"radio"===E,U=(0,a.Z)({},e,{checked:H,disabled:G,disableFocusRipple:w,edge:C}),J=function(e){var r=e.classes,t=e.checked,n=e.disabled,o=e.edge,a={root:["root",t&&"checked",n&&"disabled",o&&"edge".concat((0,u.Z)(o))],input:["input"]};return(0,c.Z)(a,Z,r)}(U);return(0,h.jsxs)(x,(0,a.Z)({component:"span",className:(0,s.Z)(J.root,p),centerRipple:!0,focusRipple:!w,disabled:G,tabIndex:null,role:void 0,onFocus:function(e){j&&j(e),D&&D.onFocus&&D.onFocus(e)},onBlur:function(e){R&&R(e),D&&D.onBlur&&D.onBlur(e)},ownerState:U,ref:r},A,{children:[(0,h.jsx)(k,(0,a.Z)({autoFocus:t,checked:i,defaultChecked:m,className:J.input,disabled:G,id:T?S:void 0,name:M,onChange:function(e){if(!e.nativeEvent.defaultPrevented){var r=e.target.checked;W(r),P&&P(e,r)}},readOnly:q,ref:I,required:O,ownerState:U,tabIndex:B,type:E},"checkbox"===E&&void 0===L?{}:{value:L},F)),H?l:z]}))}))},31260:function(e,r,t){"use strict";var n=t(78949);r.Z=n.Z},28610:function(e,r,t){"use strict";t.r(r),t.d(r,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return c},isMuiElement:function(){return u.Z},ownerDocument:function(){return l.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return p},unstable_ClassNameGenerator:function(){return g},unstable_useEnhancedEffect:function(){return m.Z},unstable_useId:function(){return v.Z},unsupportedProp:function(){return Z},useControlled:function(){return h.Z},useEventCallback:function(){return b.Z},useForkRef:function(){return x.Z},useIsFocusVisible:function(){return k.Z}});var n=t(55902),o=t(14036),a=t(31260),i=t(76189),s=t(83199);var c=function(e,r){return function(){return null}},u=t(19103),l=t(98301),d=t(17602);t(87462);var f=function(e,r){return function(){return null}},p=t(62971).Z,m=t(40162),v=t(67384);var Z=function(e,r,t,n,o){return null},h=t(98278),b=t(89683),x=t(42071),k=t(23031),g={configure:function(e){n.Z.configure(e)}}},19103:function(e,r,t){"use strict";t.d(r,{Z:function(){return o}});var n=t(72791);var o=function(e,r){return n.isValidElement(e)&&-1!==r.indexOf(e.type.muiName)}},78949:function(e,r,t){"use strict";function n(){for(var e=arguments.length,r=new Array(e),t=0;t {\n const {\n classes,\n indeterminate,\n color\n } = ownerState;\n const slots = {\n root: ['root', indeterminate && 'indeterminate', `color${capitalize(color)}`]\n };\n const composedClasses = composeClasses(slots, getCheckboxUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst CheckboxRoot = styled(SwitchBase, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiCheckbox',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.indeterminate && styles.indeterminate, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, !ownerState.disableRipple && {\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${ownerState.color === 'default' ? theme.vars.palette.action.activeChannel : theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(ownerState.color === 'default' ? theme.palette.action.active : theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${checkboxClasses.checked}, &.${checkboxClasses.indeterminate}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${checkboxClasses.disabled}`]: {\n color: (theme.vars || theme).palette.action.disabled\n }\n}));\nconst defaultCheckedIcon = /*#__PURE__*/_jsx(CheckBoxIcon, {});\nconst defaultIcon = /*#__PURE__*/_jsx(CheckBoxOutlineBlankIcon, {});\nconst defaultIndeterminateIcon = /*#__PURE__*/_jsx(IndeterminateCheckBoxIcon, {});\nconst Checkbox = /*#__PURE__*/React.forwardRef(function Checkbox(inProps, ref) {\n var _icon$props$fontSize, _indeterminateIcon$pr;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiCheckbox'\n });\n const {\n checkedIcon = defaultCheckedIcon,\n color = 'primary',\n icon: iconProp = defaultIcon,\n indeterminate = false,\n indeterminateIcon: indeterminateIconProp = defaultIndeterminateIcon,\n inputProps,\n size = 'medium',\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const icon = indeterminate ? indeterminateIconProp : iconProp;\n const indeterminateIcon = indeterminate ? indeterminateIconProp : checkedIcon;\n const ownerState = _extends({}, props, {\n color,\n indeterminate,\n size\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(CheckboxRoot, _extends({\n type: \"checkbox\",\n inputProps: _extends({\n 'data-indeterminate': indeterminate\n }, inputProps),\n icon: /*#__PURE__*/React.cloneElement(icon, {\n fontSize: (_icon$props$fontSize = icon.props.fontSize) != null ? _icon$props$fontSize : size\n }),\n checkedIcon: /*#__PURE__*/React.cloneElement(indeterminateIcon, {\n fontSize: (_indeterminateIcon$pr = indeterminateIcon.props.fontSize) != null ? _indeterminateIcon$pr : size\n }),\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Checkbox.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n * @default \n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The default checked state. Use when the component is not controlled.\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * The icon to display when the component is unchecked.\n * @default \n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * If `true`, the component appears indeterminate.\n * This does not set the native input element to indeterminate due\n * to inconsistent behavior across browsers.\n * However, we set a `data-indeterminate` attribute on the `input`.\n * @default false\n */\n indeterminate: PropTypes.bool,\n /**\n * The icon to display when the component is indeterminate.\n * @default \n */\n indeterminateIcon: PropTypes.node,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense checkbox styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n */\n value: PropTypes.any\n} : void 0;\nexport default Checkbox;","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchBaseUtilityClass(slot) {\n return generateUtilityClass('PrivateSwitchBase', slot);\n}\nconst switchBaseClasses = generateUtilityClasses('PrivateSwitchBase', ['root', 'checked', 'disabled', 'input', 'edgeStart', 'edgeEnd']);\nexport default switchBaseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"checked\", \"checkedIcon\", \"className\", \"defaultChecked\", \"disabled\", \"disableFocusRipple\", \"edge\", \"icon\", \"id\", \"inputProps\", \"inputRef\", \"name\", \"onBlur\", \"onChange\", \"onFocus\", \"readOnly\", \"required\", \"tabIndex\", \"type\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useControlled from '../utils/useControlled';\nimport useFormControl from '../FormControl/useFormControl';\nimport ButtonBase from '../ButtonBase';\nimport { getSwitchBaseUtilityClass } from './switchBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n checked,\n disabled,\n edge\n } = ownerState;\n const slots = {\n root: ['root', checked && 'checked', disabled && 'disabled', edge && `edge${capitalize(edge)}`],\n input: ['input']\n };\n return composeClasses(slots, getSwitchBaseUtilityClass, classes);\n};\nconst SwitchBaseRoot = styled(ButtonBase)(({\n ownerState\n}) => _extends({\n padding: 9,\n borderRadius: '50%'\n}, ownerState.edge === 'start' && {\n marginLeft: ownerState.size === 'small' ? -3 : -12\n}, ownerState.edge === 'end' && {\n marginRight: ownerState.size === 'small' ? -3 : -12\n}));\nconst SwitchBaseInput = styled('input')({\n cursor: 'inherit',\n position: 'absolute',\n opacity: 0,\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n zIndex: 1\n});\n\n/**\n * @ignore - internal component.\n */\nconst SwitchBase = /*#__PURE__*/React.forwardRef(function SwitchBase(props, ref) {\n const {\n autoFocus,\n checked: checkedProp,\n checkedIcon,\n className,\n defaultChecked,\n disabled: disabledProp,\n disableFocusRipple = false,\n edge = false,\n icon,\n id,\n inputProps,\n inputRef,\n name,\n onBlur,\n onChange,\n onFocus,\n readOnly,\n required = false,\n tabIndex,\n type,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [checked, setCheckedState] = useControlled({\n controlled: checkedProp,\n default: Boolean(defaultChecked),\n name: 'SwitchBase',\n state: 'checked'\n });\n const muiFormControl = useFormControl();\n const handleFocus = event => {\n if (onFocus) {\n onFocus(event);\n }\n if (muiFormControl && muiFormControl.onFocus) {\n muiFormControl.onFocus(event);\n }\n };\n const handleBlur = event => {\n if (onBlur) {\n onBlur(event);\n }\n if (muiFormControl && muiFormControl.onBlur) {\n muiFormControl.onBlur(event);\n }\n };\n const handleInputChange = event => {\n // Workaround for https://github.com/facebook/react/issues/9023\n if (event.nativeEvent.defaultPrevented) {\n return;\n }\n const newChecked = event.target.checked;\n setCheckedState(newChecked);\n if (onChange) {\n // TODO v6: remove the second argument.\n onChange(event, newChecked);\n }\n };\n let disabled = disabledProp;\n if (muiFormControl) {\n if (typeof disabled === 'undefined') {\n disabled = muiFormControl.disabled;\n }\n }\n const hasLabelFor = type === 'checkbox' || type === 'radio';\n const ownerState = _extends({}, props, {\n checked,\n disabled,\n disableFocusRipple,\n edge\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(SwitchBaseRoot, _extends({\n component: \"span\",\n className: clsx(classes.root, className),\n centerRipple: true,\n focusRipple: !disableFocusRipple,\n disabled: disabled,\n tabIndex: null,\n role: undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/_jsx(SwitchBaseInput, _extends({\n autoFocus: autoFocus,\n checked: checkedProp,\n defaultChecked: defaultChecked,\n className: classes.input,\n disabled: disabled,\n id: hasLabelFor ? id : undefined,\n name: name,\n onChange: handleInputChange,\n readOnly: readOnly,\n ref: inputRef,\n required: required,\n ownerState: ownerState,\n tabIndex: tabIndex,\n type: type\n }, type === 'checkbox' && value === undefined ? {} : {\n value\n }, inputProps)), checked ? checkedIcon : icon]\n }));\n});\n\n// NB: If changed, please update Checkbox, Switch and Radio\n// so that the API documentation is updated.\nprocess.env.NODE_ENV !== \"production\" ? SwitchBase.propTypes = {\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node.isRequired,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * @ignore\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the keyboard focus ripple is disabled.\n * @default false\n */\n disableFocusRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node.isRequired,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /*\n * @ignore\n */\n name: PropTypes.string,\n /**\n * @ignore\n */\n onBlur: PropTypes.func,\n /**\n * Callback fired when the state is changed.\n *\n * @param {object} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.object,\n /**\n * @ignore\n */\n tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The input component prop `type`.\n */\n type: PropTypes.string.isRequired,\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default SwitchBase;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","var baseGetTag = require('./_baseGetTag'),\n isArray = require('./isArray'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar stringTag = '[object String]';\n\n/**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\nfunction isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n}\n\nmodule.exports = isString;\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","_jsx","getCheckboxUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","CheckboxRoot","styled","SwitchBase","shouldForwardProp","prop","rootShouldForwardProp","name","overridesResolver","props","styles","ownerState","root","indeterminate","color","concat","capitalize","_ref","_ref2","theme","_extends","vars","palette","text","secondary","disableRipple","backgroundColor","action","activeChannel","primary","mainChannel","hoverOpacity","alpha","active","main","_defineProperty","checkboxClasses","checked","disabled","defaultCheckedIcon","CheckBoxIcon","defaultIcon","CheckBoxOutlineBlankIcon","defaultIndeterminateIcon","IndeterminateCheckBoxIcon","React","inProps","ref","_icon$props$fontSize","_indeterminateIcon$pr","useThemeProps","_props$checkedIcon","checkedIcon","_props$color","_props$icon","icon","iconProp","_props$indeterminate","_props$indeterminateI","indeterminateIcon","indeterminateIconProp","inputProps","_props$size","size","className","other","_objectWithoutPropertiesLoose","classes","slots","composedClasses","composeClasses","useUtilityClasses","type","fontSize","clsx","FormControlContext","undefined","formControlState","states","muiFormControl","reduce","acc","state","useFormControl","FormLabelRoot","colorSecondary","filled","_extends2","typography","body1","lineHeight","padding","position","formLabelClasses","focused","error","AsteriskComponent","asterisk","_ref3","FormLabel","children","_props$component","component","fcs","required","getFormLabelUtilityClasses","_jsxs","as","getInputLabelUtilityClasses","InputLabelRoot","formControl","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","getSwitchBaseUtilityClass","SwitchBaseRoot","ButtonBase","borderRadius","edge","marginLeft","marginRight","SwitchBaseInput","cursor","opacity","width","height","margin","autoFocus","checkedProp","defaultChecked","disabledProp","_props$disableFocusRi","disableFocusRipple","_props$edge","id","inputRef","onBlur","onChange","onFocus","readOnly","_props$required","tabIndex","_useControlled","useControlled","controlled","Boolean","_useControlled2","_slicedToArray","setCheckedState","hasLabelFor","input","centerRipple","focusRipple","role","event","nativeEvent","defaultPrevented","newChecked","target","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","muiName","baseGetTag","isArray","isObjectLike","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/5004.72346a14.chunk.js.map b/portal-ui/build/static/js/5004.72346a14.chunk.js.map deleted file mode 100644 index c090ddda3..000000000 --- a/portal-ui/build/static/js/5004.72346a14.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/5004.72346a14.chunk.js","mappings":"iHAEIA,EAAyBC,EAAQ,OAIrCC,EAAQ,OAAU,EAClB,IAAIC,EAAiBH,EAAuBC,EAAQ,QAChDG,EAAcH,EAAQ,OACtBI,GAAW,EAAIF,EAAeG,UAAuB,EAAIF,EAAYG,KAAK,OAAQ,CACpFC,EAAG,mBACD,iBACJN,EAAQ,EAAUG,C,yCCVdL,EAAyBC,EAAQ,OAIrCC,EAAQ,OAAU,EAClB,IAAIC,EAAiBH,EAAuBC,EAAQ,QAChDG,EAAcH,EAAQ,OACtBI,GAAW,EAAIF,EAAeG,UAAuB,EAAIF,EAAYG,KAAK,OAAQ,CACpFC,EAAG,mBACD,eACJN,EAAQ,EAAUG,C,yCCVdL,EAAyBC,EAAQ,OAIrCC,EAAQ,OAAU,EAClB,IAAIC,EAAiBH,EAAuBC,EAAQ,QAChDG,EAAcH,EAAQ,OACtBI,GAAW,EAAIF,EAAeG,UAAuB,EAAIF,EAAYG,KAAK,OAAQ,CACpFC,EAAG,sEACD,cACJN,EAAQ,EAAUG,C,qCCVlBI,OAAOC,eAAeR,EAAS,aAAc,CAC3CS,OAAO,IAETF,OAAOC,eAAeR,EAAS,UAAW,CACxCU,YAAY,EACZC,IAAK,WACH,OAAOC,EAAOC,aAChB,IAEF,IAAID,EAASb,EAAQ,M,sLCJrB,GAAec,EAAAA,EAAAA,IAA4BC,EAAAA,EAAAA,KAAK,OAAQ,CACtDR,EAAG,+FACD,wBCFJ,GAAeO,EAAAA,EAAAA,IAA4BC,EAAAA,EAAAA,KAAK,OAAQ,CACtDR,EAAG,wIACD,YCFJ,GAAeO,EAAAA,EAAAA,IAA4BC,EAAAA,EAAAA,KAAK,OAAQ,CACtDR,EAAG,kGACD,yB,uDCPG,SAASS,EAAwBC,GACtC,OAAOC,EAAAA,EAAAA,GAAqB,cAAeD,EAC7C,CACA,IACA,GADwBE,EAAAA,EAAAA,GAAuB,cAAe,CAAC,OAAQ,UAAW,WAAY,gBAAiB,eAAgB,mBCHzHC,EAAY,CAAC,cAAe,QAAS,OAAQ,gBAAiB,oBAAqB,aAAc,OAAQ,aA4BzGC,GAAeC,EAAAA,EAAAA,IAAOC,EAAAA,EAAY,CACtCC,kBAAmB,SAAAC,GAAI,OAAIC,EAAAA,EAAAA,IAAsBD,IAAkB,YAATA,CAAkB,EAC5EE,KAAM,cACNV,KAAM,OACNW,kBAAmB,SAACC,EAAOC,GACzB,IACEC,EACEF,EADFE,WAEF,MAAO,CAACD,EAAOE,KAAMD,EAAWE,eAAiBH,EAAOG,cAAoC,YAArBF,EAAWG,OAAuBJ,EAAO,QAADK,QAASC,EAAAA,EAAAA,GAAWL,EAAWG,SAChJ,GATmBZ,EAUlB,SAAAe,GAAA,IAAAC,EACDC,EAAKF,EAALE,MACAR,EAAUM,EAAVN,WAAU,OACNS,EAAAA,EAAAA,GAAS,CACbN,OAAQK,EAAME,MAAQF,GAAOG,QAAQC,KAAKC,YACxCb,EAAWc,eAAiB,CAC9B,UAAW,CACTC,gBAAiBP,EAAME,KAAO,QAAHN,OAAgC,YAArBJ,EAAWG,MAAsBK,EAAME,KAAKC,QAAQK,OAAOC,cAAgBT,EAAME,KAAKC,QAAQO,QAAQC,YAAW,OAAAf,OAAMI,EAAME,KAAKC,QAAQK,OAAOI,aAAY,MAAMC,EAAAA,EAAAA,IAA2B,YAArBrB,EAAWG,MAAsBK,EAAMG,QAAQK,OAAOM,OAASd,EAAMG,QAAQX,EAAWG,OAAOoB,KAAMf,EAAMG,QAAQK,OAAOI,cAEzU,uBAAwB,CACtBL,gBAAiB,iBAGC,YAArBf,EAAWG,QAAmBI,EAAA,IAAAiB,EAAAA,EAAAA,GAAAjB,EAAA,KAAAH,OACzBqB,EAAgBC,QAAO,QAAAtB,OAAOqB,EAAgBvB,eAAkB,CACpEC,OAAQK,EAAME,MAAQF,GAAOG,QAAQX,EAAWG,OAAOoB,QACxDC,EAAAA,EAAAA,GAAAjB,EAAA,KAAAH,OACKqB,EAAgBE,UAAa,CACjCxB,OAAQK,EAAME,MAAQF,GAAOG,QAAQK,OAAOW,WAC7CpB,GACD,IACIqB,GAAkC5C,EAAAA,EAAAA,KAAK6C,EAAc,CAAC,GACtDC,GAA2B9C,EAAAA,EAAAA,KAAK+C,EAA0B,CAAC,GAC3DC,GAAwChD,EAAAA,EAAAA,KAAKiD,EAA2B,CAAC,GAiJ/E,EAhJ8BC,EAAAA,YAAiB,SAAkBC,EAASC,GACxE,IAAIC,EAAsBC,EACpBxC,GAAQyC,EAAAA,EAAAA,GAAc,CAC1BzC,MAAOqC,EACPvC,KAAM,gBAER4C,EASM1C,EARF2C,YAAAA,OAAW,IAAAD,EAAGZ,EAAkBY,EAAAE,EAQ9B5C,EAPFK,MAAAA,OAAK,IAAAuC,EAAG,UAASA,EAAAC,EAOf7C,EANF8C,KAAMC,OAAQ,IAAAF,EAAGb,EAAWa,EAAAG,EAM1BhD,EALFI,cAAAA,OAAa,IAAA4C,GAAQA,EAAAC,EAKnBjD,EAJFkD,kBAAmBC,OAAqB,IAAAF,EAAGf,EAAwBe,EACnEG,EAGEpD,EAHFoD,WAAUC,EAGRrD,EAFFsD,KAAAA,OAAI,IAAAD,EAAG,SAAQA,EACfE,EACEvD,EADFuD,UAEFC,GAAQC,EAAAA,EAAAA,GAA8BzD,EAAOT,GACzCuD,EAAO1C,EAAgB+C,EAAwBJ,EAC/CG,EAAoB9C,EAAgB+C,EAAwBR,EAC5DzC,GAAaS,EAAAA,EAAAA,GAAS,CAAC,EAAGX,EAAO,CACrCK,MAAAA,EACAD,cAAAA,EACAkD,KAAAA,IAEII,EAtEkB,SAAAxD,GACxB,IACEwD,EAGExD,EAHFwD,QACAtD,EAEEF,EAFFE,cACAC,EACEH,EADFG,MAEIsD,EAAQ,CACZxD,KAAM,CAAC,OAAQC,GAAiB,gBAAiB,QAAFE,QAAUC,EAAAA,EAAAA,GAAWF,MAEhEuD,GAAkBC,EAAAA,EAAAA,GAAeF,EAAOxE,EAAyBuE,GACvE,OAAO/C,EAAAA,EAAAA,GAAS,CAAC,EAAG+C,EAASE,EAC/B,CA2DkBE,CAAkB5D,GAClC,OAAoBhB,EAAAA,EAAAA,KAAKM,GAAcmB,EAAAA,EAAAA,GAAS,CAC9CoD,KAAM,WACNX,YAAYzC,EAAAA,EAAAA,GAAS,CACnB,qBAAsBP,GACrBgD,GACHN,KAAmBV,EAAAA,aAAmBU,EAAM,CAC1CkB,SAA0D,OAA/CzB,EAAuBO,EAAK9C,MAAMgE,UAAoBzB,EAAuBe,IAE1FX,YAA0BP,EAAAA,aAAmBc,EAAmB,CAC9Dc,SAAwE,OAA7DxB,EAAwBU,EAAkBlD,MAAMgE,UAAoBxB,EAAwBc,IAEzGpD,WAAYA,EACZoC,IAAKA,EACLiB,WAAWU,EAAAA,EAAAA,GAAKP,EAAQvD,KAAMoD,IAC7BC,EAAO,CACRE,QAASA,IAEb,G,yCCtGMQ,E,SAAkC9B,mBAAoB+B,GAI5D,K,qCCRe,SAASC,EAAgB5D,GAIrC,IAHDR,EAAKQ,EAALR,MACAqE,EAAM7D,EAAN6D,OACAC,EAAc9D,EAAd8D,eAEA,OAAOD,EAAOE,QAAO,SAACC,EAAKC,GAOzB,OANAD,EAAIC,GAASzE,EAAMyE,GACfH,GAC0B,qBAAjBtE,EAAMyE,KACfD,EAAIC,GAASH,EAAeG,IAGzBD,CACT,GAAG,CAAC,EACN,C,8HCZe,SAASE,IACtB,OAAOtC,EAAAA,WAAiB8B,EAAAA,EAC1B,C,uLCFM3E,EAAY,CAAC,WAAY,YAAa,QAAS,YAAa,WAAY,QAAS,SAAU,UAAW,YA4B/FoF,GAAgBlF,EAAAA,EAAAA,IAAO,QAAS,CAC3CK,KAAM,eACNV,KAAM,OACNW,kBAAmB,SAAAS,EAEhBP,GAAW,IADZC,EAAUM,EAAVN,WAEA,OAAOS,EAAAA,EAAAA,GAAS,CAAC,EAAGV,EAAOE,KAA2B,cAArBD,EAAWG,OAAyBJ,EAAO2E,eAAgB1E,EAAW2E,QAAU5E,EAAO4E,OAC1H,GAP2BpF,EAQ1B,SAAAgB,GAAA,IAAAqE,EACDpE,EAAKD,EAALC,MACAR,EAAUO,EAAVP,WAAU,OACNS,EAAAA,EAAAA,GAAS,CACbN,OAAQK,EAAME,MAAQF,GAAOG,QAAQC,KAAKC,WACzCL,EAAMqE,WAAWC,OAAKF,EAAA,CACvBG,WAAY,WACZC,QAAS,EACTC,SAAU,aAAUzD,EAAAA,EAAAA,GAAAoD,EAAA,KAAAxE,OACd8E,EAAAA,EAAiBC,SAAY,CACjChF,OAAQK,EAAME,MAAQF,GAAOG,QAAQX,EAAWG,OAAOoB,QACxDC,EAAAA,EAAAA,GAAAoD,EAAA,KAAAxE,OACK8E,EAAAA,EAAiBvD,UAAa,CAClCxB,OAAQK,EAAME,MAAQF,GAAOG,QAAQC,KAAKe,YAC3CH,EAAAA,EAAAA,GAAAoD,EAAA,KAAAxE,OACK8E,EAAAA,EAAiBE,OAAU,CAC/BjF,OAAQK,EAAME,MAAQF,GAAOG,QAAQyE,MAAM7D,OAC5CqD,GACD,IACIS,GAAoB9F,EAAAA,EAAAA,IAAO,OAAQ,CACvCK,KAAM,eACNV,KAAM,WACNW,kBAAmB,SAACC,EAAOC,GAAM,OAAKA,EAAOuF,QAAQ,GAH7B/F,EAIvB,SAAAgG,GAAA,IACD/E,EAAK+E,EAAL/E,MAAK,OAAAgB,EAAAA,EAAAA,GAAA,QAAApB,OAEC8E,EAAAA,EAAiBE,OAAU,CAC/BjF,OAAQK,EAAME,MAAQF,GAAOG,QAAQyE,MAAM7D,MAC5C,IAEGiE,EAAyBtD,EAAAA,YAAiB,SAAmBC,EAASC,GAC1E,IAAMtC,GAAQyC,EAAAA,EAAAA,GAAc,CAC1BzC,MAAOqC,EACPvC,KAAM,iBAGJ6F,EAGE3F,EAHF2F,SACApC,EAEEvD,EAFFuD,UAASqC,EAEP5F,EADF6F,UAAAA,OAAS,IAAAD,EAAG,QAAOA,EAErBpC,GAAQC,EAAAA,EAAAA,GAA8BzD,EAAOT,GACzC+E,GAAiBI,EAAAA,EAAAA,KACjBoB,GAAM1B,EAAAA,EAAAA,GAAiB,CAC3BpE,MAAAA,EACAsE,eAAAA,EACAD,OAAQ,CAAC,QAAS,WAAY,UAAW,WAAY,QAAS,YAE1DnE,GAAaS,EAAAA,EAAAA,GAAS,CAAC,EAAGX,EAAO,CACrCK,MAAOyF,EAAIzF,OAAS,UACpBwF,UAAAA,EACAhE,SAAUiE,EAAIjE,SACdyD,MAAOQ,EAAIR,MACXT,OAAQiB,EAAIjB,OACZQ,QAASS,EAAIT,QACbU,SAAUD,EAAIC,WAEVrC,EAhFkB,SAAAxD,GACxB,IACEwD,EAOExD,EAPFwD,QACArD,EAMEH,EANFG,MACAgF,EAKEnF,EALFmF,QACAxD,EAIE3B,EAJF2B,SACAyD,EAGEpF,EAHFoF,MACAT,EAEE3E,EAFF2E,OACAkB,EACE7F,EADF6F,SAEIpC,EAAQ,CACZxD,KAAM,CAAC,OAAQ,QAAFG,QAAUC,EAAAA,EAAAA,GAAWF,IAAUwB,GAAY,WAAYyD,GAAS,QAAST,GAAU,SAAUQ,GAAW,UAAWU,GAAY,YAC5IP,SAAU,CAAC,WAAYF,GAAS,UAElC,OAAOzB,EAAAA,EAAAA,GAAeF,EAAOqC,EAAAA,EAA4BtC,EAC3D,CAiEkBI,CAAkB5D,GAClC,OAAoB+F,EAAAA,EAAAA,MAAMtB,GAAehE,EAAAA,EAAAA,GAAS,CAChDuF,GAAIL,EACJ3F,WAAYA,EACZqD,WAAWU,EAAAA,EAAAA,GAAKP,EAAQvD,KAAMoD,GAC9BjB,IAAKA,GACJkB,EAAO,CACRmC,SAAU,CAACA,EAAUG,EAAIC,WAAyBE,EAAAA,EAAAA,MAAMV,EAAmB,CACzErF,WAAYA,EACZ,eAAe,EACfqD,UAAWG,EAAQ8B,SACnBG,SAAU,CAAC,SAAU,UAG3B,IAsDA,K,+FChKO,SAASK,EAA2B5G,GACzC,OAAOC,EAAAA,EAAAA,GAAqB,eAAgBD,EAC9C,CACA,IAAMgG,GAAmB9F,EAAAA,EAAAA,GAAuB,eAAgB,CAAC,OAAQ,iBAAkB,UAAW,WAAY,QAAS,SAAU,WAAY,aACjJ,K,kOCJO,SAAS6G,EAA4B/G,GAC1C,OAAOC,EAAAA,EAAAA,GAAqB,gBAAiBD,EAC/C,EAC0BE,EAAAA,EAAAA,GAAuB,gBAAiB,CAAC,OAAQ,UAAW,WAAY,QAAS,WAAY,WAAY,cAAe,YAAa,SAAU,WAAY,WAAY,SAAU,aAA3M,I,WCHMC,EAAY,CAAC,mBAAoB,SAAU,SAAU,UAAW,aA6BhE6G,GAAiB3G,EAAAA,EAAAA,IAAOiG,EAAAA,EAAW,CACvC/F,kBAAmB,SAAAC,GAAI,OAAIC,EAAAA,EAAAA,IAAsBD,IAAkB,YAATA,CAAkB,EAC5EE,KAAM,gBACNV,KAAM,OACNW,kBAAmB,SAACC,EAAOC,GACzB,IACEC,EACEF,EADFE,WAEF,MAAO,EAAAwB,EAAAA,EAAAA,GAAA,SAAApB,OACE8E,EAAAA,EAAiBI,UAAavF,EAAOuF,UAC3CvF,EAAOE,KAAMD,EAAWmG,aAAepG,EAAOoG,YAAiC,UAApBnG,EAAWoD,MAAoBrD,EAAOqG,UAAWpG,EAAWqG,QAAUtG,EAAOsG,QAASrG,EAAWsG,kBAAoBvG,EAAOwG,SAAUxG,EAAOC,EAAWwG,SACxN,GAXqBjH,EAYpB,SAAAgB,GAAA,IACDC,EAAKD,EAALC,MACAR,EAAUO,EAAVP,WAAU,OACNS,EAAAA,EAAAA,GAAS,CACbgG,QAAS,QACTC,gBAAiB,WACjBC,WAAY,SACZC,SAAU,SACVC,aAAc,WACdC,SAAU,QACT9G,EAAWmG,aAAe,CAC3BlB,SAAU,WACV8B,KAAM,EACNC,IAAK,EAELC,UAAW,+BACU,UAApBjH,EAAWoD,MAAoB,CAEhC6D,UAAW,+BACVjH,EAAWqG,QAAU,CACtBY,UAAW,mCACXP,gBAAiB,WACjBI,SAAU,SACR9G,EAAWsG,kBAAoB,CACjCY,WAAY1G,EAAM2G,YAAYC,OAAO,CAAC,QAAS,YAAa,aAAc,CACxEC,SAAU7G,EAAM2G,YAAYE,SAASC,QACrCC,OAAQ/G,EAAM2G,YAAYI,OAAOC,WAEX,WAAvBxH,EAAWwG,UAAwB/F,EAAAA,EAAAA,GAAS,CAK7CgH,OAAQ,EACRC,cAAe,OACfT,UAAW,iCACXH,SAAU,qBACW,UAApB9G,EAAWoD,MAAoB,CAChC6D,UAAW,kCACVjH,EAAWqG,SAAU5F,EAAAA,EAAAA,GAAS,CAC/BkH,WAAY,OACZD,cAAe,OACfT,UAAW,mCACXH,SAAU,qBACW,UAApB9G,EAAWoD,MAAoB,CAChC6D,UAAW,sCACe,aAAvBjH,EAAWwG,UAA0B/F,EAAAA,EAAAA,GAAS,CAEjDgH,OAAQ,EACRC,cAAe,OACfT,UAAW,iCACXH,SAAU,qBACW,UAApB9G,EAAWoD,MAAoB,CAChC6D,UAAW,iCACVjH,EAAWqG,QAAU,CACtBsB,WAAY,OACZD,cAAe,OAGfZ,SAAU,oBACVG,UAAW,sCACV,IA2GH,EA1GgC/E,EAAAA,YAAiB,SAAoBC,EAASC,GAC5E,IAAMtC,GAAQyC,EAAAA,EAAAA,GAAc,CAC1B3C,KAAM,gBACNE,MAAOqC,IAETyF,EAIM9H,EAHFwG,iBAAAA,OAAgB,IAAAsB,GAAQA,EAChBC,EAEN/H,EAFFuG,OACAhD,EACEvD,EADFuD,UAEFC,GAAQC,EAAAA,EAAAA,GAA8BzD,EAAOT,GACzC+E,GAAiBI,EAAAA,EAAAA,KACnB6B,EAASwB,EACS,qBAAXxB,GAA0BjC,IACnCiC,EAASjC,EAAeO,QAAUP,EAAee,SAAWf,EAAe0D,cAE7E,IAAMlC,GAAM1B,EAAAA,EAAAA,GAAiB,CAC3BpE,MAAAA,EACAsE,eAAAA,EACAD,OAAQ,CAAC,OAAQ,UAAW,cAExBnE,GAAaS,EAAAA,EAAAA,GAAS,CAAC,EAAGX,EAAO,CACrCwG,iBAAAA,EACAH,YAAa/B,EACbiC,OAAAA,EACAjD,KAAMwC,EAAIxC,KACVoD,QAASZ,EAAIY,QACbX,SAAUD,EAAIC,WAEVrC,EAxHkB,SAAAxD,GACxB,IACEwD,EAOExD,EAPFwD,QACA2C,EAMEnG,EANFmG,YACA/C,EAKEpD,EALFoD,KACAiD,EAIErG,EAJFqG,OAKI5C,EAAQ,CACZxD,KAAM,CAAC,OAAQkG,GAAe,eAF5BnG,EAHFsG,kBAKkE,WAAYD,GAAU,SAAmB,UAATjD,GAAoB,YAFpHpD,EAFFwG,SAKAlB,SAAU,CAHRtF,EADF6F,UAIuB,aAEnBnC,GAAkBC,EAAAA,EAAAA,GAAeF,EAAOwC,EAA6BzC,GAC3E,OAAO/C,EAAAA,EAAAA,GAAS,CAAC,EAAG+C,EAASE,EAC/B,CAwGkBE,CAAkB5D,GAClC,OAAoBhB,EAAAA,EAAAA,KAAKkH,GAAgBzF,EAAAA,EAAAA,GAAS,CAChD,cAAe4F,EACfrG,WAAYA,EACZoC,IAAKA,EACLiB,WAAWU,EAAAA,EAAAA,GAAKP,EAAQvD,KAAMoD,IAC7BC,EAAO,CACRE,QAASA,IAEb,G,wNC7IO,SAASuE,EAA0B7I,GACxC,OAAOC,EAAAA,EAAAA,GAAqB,oBAAqBD,EACnD,EAC0BE,EAAAA,EAAAA,GAAuB,oBAAqB,CAAC,OAAQ,UAAW,WAAY,QAAS,YAAa,YAA5H,I,WCHMC,EAAY,CAAC,YAAa,UAAW,cAAe,YAAa,iBAAkB,WAAY,qBAAsB,OAAQ,OAAQ,KAAM,aAAc,WAAY,OAAQ,SAAU,WAAY,UAAW,WAAY,WAAY,WAAY,OAAQ,SA2B1P2I,GAAiBzI,EAAAA,EAAAA,IAAO0I,EAAAA,EAAP1I,EAAmB,SAAAe,GAAA,IACxCN,EAAUM,EAAVN,WAAU,OACNS,EAAAA,EAAAA,GAAS,CACbuE,QAAS,EACTkD,aAAc,OACO,UAApBlI,EAAWmI,MAAoB,CAChCC,WAAgC,UAApBpI,EAAWoD,MAAoB,GAAK,IAC3B,QAApBpD,EAAWmI,MAAkB,CAC9BE,YAAiC,UAApBrI,EAAWoD,MAAoB,GAAK,IACjD,IACIkF,GAAkB/I,EAAAA,EAAAA,IAAO,QAAPA,CAAgB,CACtCgJ,OAAQ,UACRtD,SAAU,WACVuD,QAAS,EACTC,MAAO,OACPC,OAAQ,OACR1B,IAAK,EACLD,KAAM,EACN4B,OAAQ,EACR3D,QAAS,EACTyC,OAAQ,IA4NV,EAtNgCvF,EAAAA,YAAiB,SAAoBpC,EAAOsC,GAC1E,IACIwG,EAqBE9I,EArBF8I,UACSC,EAoBP/I,EApBF4B,QACAe,EAmBE3C,EAnBF2C,YACAY,EAkBEvD,EAlBFuD,UACAyF,EAiBEhJ,EAjBFgJ,eACUC,EAgBRjJ,EAhBF6B,SAAQqH,EAgBNlJ,EAfFmJ,mBAAAA,OAAkB,IAAAD,GAAQA,EAAAE,EAexBpJ,EAdFqI,KAAAA,OAAI,IAAAe,GAAQA,EACZtG,EAaE9C,EAbF8C,KACAuG,EAYErJ,EAZFqJ,GACAjG,EAWEpD,EAXFoD,WACAkG,EAUEtJ,EAVFsJ,SACAxJ,EASEE,EATFF,KACAyJ,EAQEvJ,EARFuJ,OACAC,EAOExJ,EAPFwJ,SACAC,EAMEzJ,EANFyJ,QACAC,EAKE1J,EALF0J,SAAQC,EAKN3J,EAJF+F,SAAAA,OAAQ,IAAA4D,GAAQA,EAChBC,EAGE5J,EAHF4J,SACA7F,EAEE/D,EAFF+D,KACAlF,EACEmB,EADFnB,MAEF2E,GAAQC,EAAAA,EAAAA,GAA8BzD,EAAOT,GAC/CsK,GAAmCC,EAAAA,EAAAA,GAAc,CAC/CC,WAAYhB,EACZvK,QAASwL,QAAQhB,GACjBlJ,KAAM,aACN2E,MAAO,YACPwF,GAAAC,EAAAA,EAAAA,GAAAL,EAAA,GALKjI,EAAOqI,EAAA,GAAEE,EAAeF,EAAA,GAMzB3F,GAAiBI,EAAAA,EAAAA,KA6BnB7C,EAAWoH,EACX3E,GACsB,qBAAbzC,IACTA,EAAWyC,EAAezC,UAG9B,IAAMuI,EAAuB,aAATrG,GAAgC,UAATA,EACrC7D,GAAaS,EAAAA,EAAAA,GAAS,CAAC,EAAGX,EAAO,CACrC4B,QAAAA,EACAC,SAAAA,EACAsH,mBAAAA,EACAd,KAAAA,IAEI3E,EAhHkB,SAAAxD,GACxB,IACEwD,EAIExD,EAJFwD,QACA9B,EAGE1B,EAHF0B,QACAC,EAEE3B,EAFF2B,SACAwG,EACEnI,EADFmI,KAEI1E,EAAQ,CACZxD,KAAM,CAAC,OAAQyB,GAAW,UAAWC,GAAY,WAAYwG,GAAQ,OAAJ/H,QAAWC,EAAAA,EAAAA,GAAW8H,KACvFgC,MAAO,CAAC,UAEV,OAAOxG,EAAAA,EAAAA,GAAeF,EAAOsE,EAA2BvE,EAC1D,CAoGkBI,CAAkB5D,GAClC,OAAoB+F,EAAAA,EAAAA,MAAMiC,GAAgBvH,EAAAA,EAAAA,GAAS,CACjDkF,UAAW,OACXtC,WAAWU,EAAAA,EAAAA,GAAKP,EAAQvD,KAAMoD,GAC9B+G,cAAc,EACdC,aAAcpB,EACdtH,SAAUA,EACV+H,SAAU,KACVY,UAAMrG,EACNsF,QAlDkB,SAAAgB,GACdhB,GACFA,EAAQgB,GAENnG,GAAkBA,EAAemF,SACnCnF,EAAemF,QAAQgB,EAE3B,EA4CElB,OA3CiB,SAAAkB,GACblB,GACFA,EAAOkB,GAELnG,GAAkBA,EAAeiF,QACnCjF,EAAeiF,OAAOkB,EAE1B,EAqCEvK,WAAYA,EACZoC,IAAKA,GACJkB,EAAO,CACRmC,SAAU,EAAczG,EAAAA,EAAAA,KAAKsJ,GAAiB7H,EAAAA,EAAAA,GAAS,CACrDmI,UAAWA,EACXlH,QAASmH,EACTC,eAAgBA,EAChBzF,UAAWG,EAAQ2G,MACnBxI,SAAUA,EACVwH,GAAIe,EAAcf,OAAKlF,EACvBrE,KAAMA,EACN0J,SA/CsB,SAAAiB,GAExB,IAAIA,EAAMC,YAAYC,iBAAtB,CAGA,IAAMC,EAAaH,EAAMI,OAAOjJ,QAChCuI,EAAgBS,GACZpB,GAEFA,EAASiB,EAAOG,EALlB,CAOF,EAqCIlB,SAAUA,EACVpH,IAAKgH,EACLvD,SAAUA,EACV7F,WAAYA,EACZ0J,SAAUA,EACV7F,KAAMA,GACI,aAATA,QAAiCI,IAAVtF,EAAsB,CAAC,EAAI,CACnDA,MAAAA,GACCuE,IAAcxB,EAAUe,EAAcG,KAE7C,G,oDChKA,IAAegI,EAAqB,C,kyBCApC,MCDe,SAA4BC,EAAWC,GAElD,OAAO,kBAAM,IAAI,CAUrB,E,0CCXA,MCAe,SAA4BC,EAAsBC,GAE7D,OAAO,kBAAM,IAAI,CAoBrB,ECtBA,E,SAAqB,E,sBCArB,MCDe,SAAyBlL,EAAOmL,EAAUC,EAAeC,EAAUC,GAE9E,OAAO,IAOX,E,4CCWaC,EAA8B,CACzCC,UAAW,SAAAC,GAITC,EAAAA,EAAmBF,UAAUC,EAC/B,E,oFCzBF,MCAe,SAAsBE,EAASC,GAC5C,OAAoBxJ,EAAAA,eAAqBuJ,KAAwD,IAA5CC,EAASC,QAAQF,EAAQ5H,KAAK+H,QACrF,C,qCCGe,SAAShB,IAAgC,QAAAiB,EAAAC,UAAAC,OAAPC,EAAK,IAAAC,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAALF,EAAKE,GAAAJ,UAAAI,GACpD,OAAOF,EAAM3H,QAAO,SAACC,EAAK6H,GACxB,OAAY,MAARA,EACK7H,EAEF,WAAkC,QAAA8H,EAAAN,UAAAC,OAANM,EAAI,IAAAJ,MAAAG,GAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAAJD,EAAIC,GAAAR,UAAAQ,GACrChI,EAAIiI,MAAMC,KAAMH,GAChBF,EAAKI,MAAMC,KAAMH,EACnB,CACF,IAAG,WAAO,GACZ,C,uDChBA,IAAII,EAAaxO,EAAQ,OACrByO,EAAUzO,EAAQ,OAClB0O,EAAe1O,EAAQ,OA2B3B2O,EAAO1O,QALP,SAAkBS,GAChB,MAAuB,iBAATA,IACV+N,EAAQ/N,IAAUgO,EAAahO,IArBrB,mBAqB+B8N,EAAW9N,EAC1D,C,oBCtBAiO,EAAO1O,QALP,SAAgC2O,GAC9B,OAAOA,GAAOA,EAAIC,WAAaD,EAAM,CACnC,QAAWA,EAEf,EACyCD,EAAO1O,QAAQ4O,YAAa,EAAMF,EAAO1O,QAAiB,QAAI0O,EAAO1O,O","sources":["../node_modules/@mui/icons-material/ArrowDropDown.js","../node_modules/@mui/icons-material/ArrowDropUp.js","../node_modules/@mui/icons-material/ViewColumn.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/internal/svg-icons/CheckBoxOutlineBlank.js","../node_modules/@mui/material/internal/svg-icons/CheckBox.js","../node_modules/@mui/material/internal/svg-icons/IndeterminateCheckBox.js","../node_modules/@mui/material/Checkbox/checkboxClasses.js","../node_modules/@mui/material/Checkbox/Checkbox.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/internal/switchBaseClasses.js","../node_modules/@mui/material/internal/SwitchBase.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@mui/utils/esm/createChainedFunction.js","../node_modules/lodash/isString.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"m7 10 5 5 5-5z\"\n}), 'ArrowDropDown');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"m7 14 5-5 5 5z\"\n}), 'ArrowDropUp');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M14.67 5v14H9.33V5h5.34zm1 14H21V5h-5.33v14zm-7.34 0V5H3v14h5.33z\"\n}), 'ViewColumn');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z\"\n}), 'CheckBoxOutlineBlank');","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z\"\n}), 'CheckBox');","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z\"\n}), 'IndeterminateCheckBox');","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getCheckboxUtilityClass(slot) {\n return generateUtilityClass('MuiCheckbox', slot);\n}\nconst checkboxClasses = generateUtilityClasses('MuiCheckbox', ['root', 'checked', 'disabled', 'indeterminate', 'colorPrimary', 'colorSecondary']);\nexport default checkboxClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"checkedIcon\", \"color\", \"icon\", \"indeterminate\", \"indeterminateIcon\", \"inputProps\", \"size\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport SwitchBase from '../internal/SwitchBase';\nimport CheckBoxOutlineBlankIcon from '../internal/svg-icons/CheckBoxOutlineBlank';\nimport CheckBoxIcon from '../internal/svg-icons/CheckBox';\nimport IndeterminateCheckBoxIcon from '../internal/svg-icons/IndeterminateCheckBox';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport checkboxClasses, { getCheckboxUtilityClass } from './checkboxClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n indeterminate,\n color\n } = ownerState;\n const slots = {\n root: ['root', indeterminate && 'indeterminate', `color${capitalize(color)}`]\n };\n const composedClasses = composeClasses(slots, getCheckboxUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst CheckboxRoot = styled(SwitchBase, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiCheckbox',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.indeterminate && styles.indeterminate, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, !ownerState.disableRipple && {\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${ownerState.color === 'default' ? theme.vars.palette.action.activeChannel : theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(ownerState.color === 'default' ? theme.palette.action.active : theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${checkboxClasses.checked}, &.${checkboxClasses.indeterminate}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${checkboxClasses.disabled}`]: {\n color: (theme.vars || theme).palette.action.disabled\n }\n}));\nconst defaultCheckedIcon = /*#__PURE__*/_jsx(CheckBoxIcon, {});\nconst defaultIcon = /*#__PURE__*/_jsx(CheckBoxOutlineBlankIcon, {});\nconst defaultIndeterminateIcon = /*#__PURE__*/_jsx(IndeterminateCheckBoxIcon, {});\nconst Checkbox = /*#__PURE__*/React.forwardRef(function Checkbox(inProps, ref) {\n var _icon$props$fontSize, _indeterminateIcon$pr;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiCheckbox'\n });\n const {\n checkedIcon = defaultCheckedIcon,\n color = 'primary',\n icon: iconProp = defaultIcon,\n indeterminate = false,\n indeterminateIcon: indeterminateIconProp = defaultIndeterminateIcon,\n inputProps,\n size = 'medium',\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const icon = indeterminate ? indeterminateIconProp : iconProp;\n const indeterminateIcon = indeterminate ? indeterminateIconProp : checkedIcon;\n const ownerState = _extends({}, props, {\n color,\n indeterminate,\n size\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(CheckboxRoot, _extends({\n type: \"checkbox\",\n inputProps: _extends({\n 'data-indeterminate': indeterminate\n }, inputProps),\n icon: /*#__PURE__*/React.cloneElement(icon, {\n fontSize: (_icon$props$fontSize = icon.props.fontSize) != null ? _icon$props$fontSize : size\n }),\n checkedIcon: /*#__PURE__*/React.cloneElement(indeterminateIcon, {\n fontSize: (_indeterminateIcon$pr = indeterminateIcon.props.fontSize) != null ? _indeterminateIcon$pr : size\n }),\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Checkbox.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n * @default \n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The default checked state. Use when the component is not controlled.\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * The icon to display when the component is unchecked.\n * @default \n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * If `true`, the component appears indeterminate.\n * This does not set the native input element to indeterminate due\n * to inconsistent behavior across browsers.\n * However, we set a `data-indeterminate` attribute on the `input`.\n * @default false\n */\n indeterminate: PropTypes.bool,\n /**\n * The icon to display when the component is indeterminate.\n * @default \n */\n indeterminateIcon: PropTypes.node,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense checkbox styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n */\n value: PropTypes.any\n} : void 0;\nexport default Checkbox;","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchBaseUtilityClass(slot) {\n return generateUtilityClass('PrivateSwitchBase', slot);\n}\nconst switchBaseClasses = generateUtilityClasses('PrivateSwitchBase', ['root', 'checked', 'disabled', 'input', 'edgeStart', 'edgeEnd']);\nexport default switchBaseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"checked\", \"checkedIcon\", \"className\", \"defaultChecked\", \"disabled\", \"disableFocusRipple\", \"edge\", \"icon\", \"id\", \"inputProps\", \"inputRef\", \"name\", \"onBlur\", \"onChange\", \"onFocus\", \"readOnly\", \"required\", \"tabIndex\", \"type\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useControlled from '../utils/useControlled';\nimport useFormControl from '../FormControl/useFormControl';\nimport ButtonBase from '../ButtonBase';\nimport { getSwitchBaseUtilityClass } from './switchBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n checked,\n disabled,\n edge\n } = ownerState;\n const slots = {\n root: ['root', checked && 'checked', disabled && 'disabled', edge && `edge${capitalize(edge)}`],\n input: ['input']\n };\n return composeClasses(slots, getSwitchBaseUtilityClass, classes);\n};\nconst SwitchBaseRoot = styled(ButtonBase)(({\n ownerState\n}) => _extends({\n padding: 9,\n borderRadius: '50%'\n}, ownerState.edge === 'start' && {\n marginLeft: ownerState.size === 'small' ? -3 : -12\n}, ownerState.edge === 'end' && {\n marginRight: ownerState.size === 'small' ? -3 : -12\n}));\nconst SwitchBaseInput = styled('input')({\n cursor: 'inherit',\n position: 'absolute',\n opacity: 0,\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n zIndex: 1\n});\n\n/**\n * @ignore - internal component.\n */\nconst SwitchBase = /*#__PURE__*/React.forwardRef(function SwitchBase(props, ref) {\n const {\n autoFocus,\n checked: checkedProp,\n checkedIcon,\n className,\n defaultChecked,\n disabled: disabledProp,\n disableFocusRipple = false,\n edge = false,\n icon,\n id,\n inputProps,\n inputRef,\n name,\n onBlur,\n onChange,\n onFocus,\n readOnly,\n required = false,\n tabIndex,\n type,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [checked, setCheckedState] = useControlled({\n controlled: checkedProp,\n default: Boolean(defaultChecked),\n name: 'SwitchBase',\n state: 'checked'\n });\n const muiFormControl = useFormControl();\n const handleFocus = event => {\n if (onFocus) {\n onFocus(event);\n }\n if (muiFormControl && muiFormControl.onFocus) {\n muiFormControl.onFocus(event);\n }\n };\n const handleBlur = event => {\n if (onBlur) {\n onBlur(event);\n }\n if (muiFormControl && muiFormControl.onBlur) {\n muiFormControl.onBlur(event);\n }\n };\n const handleInputChange = event => {\n // Workaround for https://github.com/facebook/react/issues/9023\n if (event.nativeEvent.defaultPrevented) {\n return;\n }\n const newChecked = event.target.checked;\n setCheckedState(newChecked);\n if (onChange) {\n // TODO v6: remove the second argument.\n onChange(event, newChecked);\n }\n };\n let disabled = disabledProp;\n if (muiFormControl) {\n if (typeof disabled === 'undefined') {\n disabled = muiFormControl.disabled;\n }\n }\n const hasLabelFor = type === 'checkbox' || type === 'radio';\n const ownerState = _extends({}, props, {\n checked,\n disabled,\n disableFocusRipple,\n edge\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(SwitchBaseRoot, _extends({\n component: \"span\",\n className: clsx(classes.root, className),\n centerRipple: true,\n focusRipple: !disableFocusRipple,\n disabled: disabled,\n tabIndex: null,\n role: undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/_jsx(SwitchBaseInput, _extends({\n autoFocus: autoFocus,\n checked: checkedProp,\n defaultChecked: defaultChecked,\n className: classes.input,\n disabled: disabled,\n id: hasLabelFor ? id : undefined,\n name: name,\n onChange: handleInputChange,\n readOnly: readOnly,\n ref: inputRef,\n required: required,\n ownerState: ownerState,\n tabIndex: tabIndex,\n type: type\n }, type === 'checkbox' && value === undefined ? {} : {\n value\n }, inputProps)), checked ? checkedIcon : icon]\n }));\n});\n\n// NB: If changed, please update Checkbox, Switch and Radio\n// so that the API documentation is updated.\nprocess.env.NODE_ENV !== \"production\" ? SwitchBase.propTypes = {\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node.isRequired,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * @ignore\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the keyboard focus ripple is disabled.\n * @default false\n */\n disableFocusRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node.isRequired,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /*\n * @ignore\n */\n name: PropTypes.string,\n /**\n * @ignore\n */\n onBlur: PropTypes.func,\n /**\n * Callback fired when the state is changed.\n *\n * @param {object} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.object,\n /**\n * @ignore\n */\n tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The input component prop `type`.\n */\n type: PropTypes.string.isRequired,\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default SwitchBase;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","var baseGetTag = require('./_baseGetTag'),\n isArray = require('./isArray'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar stringTag = '[object String]';\n\n/**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\nfunction isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n}\n\nmodule.exports = isString;\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","_jsx","getCheckboxUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","CheckboxRoot","styled","SwitchBase","shouldForwardProp","prop","rootShouldForwardProp","name","overridesResolver","props","styles","ownerState","root","indeterminate","color","concat","capitalize","_ref","_ref2","theme","_extends","vars","palette","text","secondary","disableRipple","backgroundColor","action","activeChannel","primary","mainChannel","hoverOpacity","alpha","active","main","_defineProperty","checkboxClasses","checked","disabled","defaultCheckedIcon","CheckBoxIcon","defaultIcon","CheckBoxOutlineBlankIcon","defaultIndeterminateIcon","IndeterminateCheckBoxIcon","React","inProps","ref","_icon$props$fontSize","_indeterminateIcon$pr","useThemeProps","_props$checkedIcon","checkedIcon","_props$color","_props$icon","icon","iconProp","_props$indeterminate","_props$indeterminateI","indeterminateIcon","indeterminateIconProp","inputProps","_props$size","size","className","other","_objectWithoutPropertiesLoose","classes","slots","composedClasses","composeClasses","useUtilityClasses","type","fontSize","clsx","FormControlContext","undefined","formControlState","states","muiFormControl","reduce","acc","state","useFormControl","FormLabelRoot","colorSecondary","filled","_extends2","typography","body1","lineHeight","padding","position","formLabelClasses","focused","error","AsteriskComponent","asterisk","_ref3","FormLabel","children","_props$component","component","fcs","required","getFormLabelUtilityClasses","_jsxs","as","getInputLabelUtilityClasses","InputLabelRoot","formControl","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","getSwitchBaseUtilityClass","SwitchBaseRoot","ButtonBase","borderRadius","edge","marginLeft","marginRight","SwitchBaseInput","cursor","opacity","width","height","margin","autoFocus","checkedProp","defaultChecked","disabledProp","_props$disableFocusRi","disableFocusRipple","_props$edge","id","inputRef","onBlur","onChange","onFocus","readOnly","_props$required","tabIndex","_useControlled","useControlled","controlled","Boolean","_useControlled2","_slicedToArray","setCheckedState","hasLabelFor","input","centerRipple","focusRipple","role","event","nativeEvent","defaultPrevented","newChecked","target","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","muiName","_len","arguments","length","funcs","Array","_key","func","_len2","args","_key2","apply","this","baseGetTag","isArray","isObjectLike","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/5088.bae6da67.chunk.js b/portal-ui/build/static/js/5088.a07c0273.chunk.js similarity index 51% rename from portal-ui/build/static/js/5088.bae6da67.chunk.js rename to portal-ui/build/static/js/5088.a07c0273.chunk.js index 26ffed9b0..77159b569 100644 --- a/portal-ui/build/static/js/5088.bae6da67.chunk.js +++ b/portal-ui/build/static/js/5088.a07c0273.chunk.js @@ -1,2 +1,2 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[5088],{75088:function(e,n,t){"use strict";t.r(n),t.d(n,{default:function(){return D}});var r=t(29439),o=t(1413),i=t(72791),s=t(95087),a=t(81551),c=t(78687),l=t(57689),u=t(29945),d="error",f="success",x="inProgress",g=t(11135),p=t(25787),h=t(26824),m=t(23814),v=t(61889),j=t(93385),b=t(31776),w=t(80184),y=(0,p.Z)((function(e){return(0,g.Z)({titleBar:{borderBottom:"#E5E5E5 1px solid",padding:"30px 25px",fontSize:20,color:"#07193E",fontWeight:"bold",borderRadius:"10px 10px 0px 0px",paddingTop:0},divisorContainer:{padding:25},serversData:{color:"#07193E",fontSize:18,display:"flex",alignItems:"center","& svg":{marginRight:10}},minioVersionContainer:{fontSize:12,color:"#07193E",justifyContent:"center",alignSelf:"center",alignItems:"center",display:"flex"},versionIcon:{color:"#07193E",marginRight:20},loaderAlign:{textAlign:"center"},advancedContainer:{justifyContent:"flex-end",display:"flex"},optionsContainer:{padding:0,marginBottom:25},advancedConfiguration:{color:"#2781B0",fontSize:10,textDecoration:"underline",border:"none",backgroundColor:"transparent",cursor:"pointer",alignItems:"center",display:"flex","&:hover":{color:"#07193E"},"& svg":{width:10,alignSelf:"center",marginLeft:5}},advancedOpen:{transform:"rotateZ(-90deg) translateX(-4px) translateY(2px)"},advancedClosed:{transform:"rotateZ(90deg)"},advancedContent:{backgroundColor:"#F5F7F9",maxHeight:0,transitionDuration:"0.3s",overflow:"hidden",padding:"0 15px","&.open":{maxHeight:400,padding:15}}})}))((function(e){var n=e.title,t=e.children,o=e.classes,s=e.advancedVisible,a=e.advancedContent,c=(0,i.useState)("N/A"),l=(0,r.Z)(c,2),d=l[0],f=l[1],x=(0,i.useState)(0),g=(0,r.Z)(x,2),p=g[0],h=g[1],m=(0,i.useState)(0),y=(0,r.Z)(m,2),Z=y[0],C=y[1],S=(0,i.useState)(!0),N=(0,r.Z)(S,2),I=N[0],E=N[1],D=(0,i.useState)(!1),k=(0,r.Z)(D,2),_=k[0],P=k[1];return(0,i.useEffect)((function(){I&&b.h.admin.adminInfo({defaultOnly:!0}).then((function(e){var n,t=null===(n=e.data.servers)||void 0===n?void 0:n.length;if(h(t||0),e.data.servers&&e.data.servers.length>0){f(e.data.servers[0].version||"N/A");var r=e.data.servers.reduce((function(e,n){return e+(n.drives?n.drives.length:0)}),0);C(r)}E(!1)})).catch((function(){E(!1)}))}),[I]),(0,w.jsxs)(v.ZP,{item:!0,xs:12,children:[(0,w.jsx)(v.ZP,{item:!0,xs:12,className:o.titleBar,children:n}),(0,w.jsxs)(v.ZP,{item:!0,xs:12,children:[(0,w.jsxs)(v.ZP,{item:!0,xs:12,className:o.optionsContainer,children:[(0,w.jsx)(v.ZP,{container:!0,className:o.divisorContainer,children:I?(0,w.jsx)(i.Fragment,{children:(0,w.jsx)(v.ZP,{item:!0,xs:12,className:o.loaderAlign,children:(0,w.jsx)(u.aNw,{style:{width:25,height:25}})})}):(0,w.jsxs)(i.Fragment,{children:[(0,w.jsxs)(v.ZP,{item:!0,xs:12,md:4,className:o.serversData,children:[(0,w.jsx)(u.FU8,{})," ",(0,w.jsx)("strong",{children:p}),"\xa0nodes,\xa0",(0,w.jsx)("strong",{children:Z}),"\xa0 drives"]}),(0,w.jsxs)(v.ZP,{item:!0,xs:12,md:4,className:o.minioVersionContainer,children:[(0,w.jsx)("span",{className:o.versionIcon,children:(0,w.jsx)(u.Dbk,{})})," ","MinIO VERSION\xa0",(0,w.jsx)("strong",{children:d})]}),(0,w.jsx)(v.ZP,{item:!0,xs:12,md:4,className:o.advancedContainer,children:s&&(0,w.jsxs)("button",{onClick:function(){P(!_)},className:o.advancedConfiguration,children:["Advanced configurations"," ",(0,w.jsx)("span",{className:_?o.advancedOpen:o.advancedClosed,children:(0,w.jsx)(j.Z,{})})]})})]})}),a&&(0,w.jsx)(v.ZP,{xs:12,className:"".concat(o.advancedContent," ").concat(_?"open":""),children:a})]}),t]})]})})),Z=t(87995),C=t(12808),S=t(31460),N=t(47974),I=t(9478),E=t(99670),D=(0,p.Z)((function(e){return(0,g.Z)((0,o.Z)((0,o.Z)({loading:{paddingTop:8,paddingLeft:40},buttons:{justifyContent:"flex-start",gap:20},localMessage:{fontSize:24,color:"#07193E",fontWeight:"bold",textAlign:"center",marginBottom:20},progressResult:{textAlign:"center",marginBottom:25},startDiagnostic:{display:"flex",justifyContent:"flex-end",margin:25,marginBottom:0},startDiagnosticCenter:{textAlign:"center",marginTop:0}},m.OR),m.Bz))}))((function(e){var n=e.classes,t=(0,a.TL)(),o=(0,l.s0)(),g=(0,c.v9)((function(e){return e.healthInfo.message})),p=(0,c.v9)((function(e){return e.system.serverDiagnosticStatus})),m=(0,i.useState)(!1),v=(0,r.Z)(m,2),j=v[0],b=v[1],D=(0,i.useState)(!0),k=(0,r.Z)(D,2),_=k[0],P=k[1],R=(0,i.useState)(""),A=(0,r.Z)(R,2),F=A[0],O=A[1],z=(0,i.useState)("Start Diagnostic"),H=(0,r.Z)(z,2),B=H[0],L=H[1],M=(0,i.useState)("New Diagnostic"),T=(0,r.Z)(M,2),V=T[0],W=T[1],K=(0,i.useState)(""),U=(0,r.Z)(K,2),Y=U[0],X=U[1],G=(0,i.useState)(""),q=(0,r.Z)(G,2),J=q[0],Q=q[1],$=(0,I.Yc)();(0,i.useEffect)((function(){return p===x?(W("Diagnostic in progress..."),void O("Diagnostic started. Please do not refresh page during diagnosis.")):p===f?(W("Diagnostic complete"),O("Diagnostic file is ready to be downloaded."),void L("Start New Diagnostic")):p===d?(W("Error"),O("An error occurred while getting the Diagnostic file."),void L("Retry Diagnostic")):void 0}),[p,j]),(0,i.useEffect)((function(){p===f&&g!=={}&&P(!1),p===x&&P(!0),b(!1)}),[p,g]),(0,i.useEffect)((function(){if(j){t((0,C.Xp)()),X("");var e=new URL(window.location.toString()),n=e.port,r=(0,h.x2)(e.protocol),o=new URL(document.baseURI).pathname,i=new s.w3cwebsocket("".concat(r,"://").concat(e.hostname,":").concat(n).concat(o,"ws/health-info?deadline=1h")),a=null;null!==i&&(i.onopen=function(){console.log("WebSocket Client Connected"),i.send("ok"),a=setInterval((function(){i.send("ok")}),1e4),O("Diagnostic started. Please do not refresh page during diagnosis."),t((0,Z.KY)(x))},i.onmessage=function(e){var n=JSON.parse(e.data.toString());n.serverHealthInfo&&(n.serverHealthInfo.timestamp=new Date(n.serverHealthInfo.timestamp.toString()),t((0,C.ec)(n.serverHealthInfo))),""!==n.encoded&&X(n.encoded),n.subnetResponse&&Q(n.subnetResponse)},i.onerror=function(e){console.log("error closing websocket:",e.message),i.close(1e3),clearInterval(a),t((0,Z.KY)(d))},i.onclose=function(e){clearInterval(a),e.code===h.HE||e.code===h.ci||e.code===h.V9?(console.log("connection closed by server with code:",e.code),O("An error occurred while getting the Diagnostic file."),t((0,Z.KY)(d))):(console.log("connection closed by server"),O("Diagnostic file is ready to be downloaded."),t((0,Z.KY)(f)))})}else b(!1)}),[j,t]);return(0,i.useEffect)((function(){t((0,Z.Sc)("health_info"))}),[t]),(0,w.jsxs)(i.Fragment,{children:[(0,w.jsx)(N.Z,{label:"Health",actions:(0,w.jsx)(E.Z,{})}),(0,w.jsxs)(u.Xgh,{children:[!$&&(0,w.jsx)(S.Z,{compactMode:!0}),(0,w.jsx)(u.rjZ,{item:!0,xs:12,className:n.boxy,children:(0,w.jsx)(y,{title:V,advancedVisible:!1,children:(0,w.jsx)(u.rjZ,{container:!0,className:n.buttons,children:(0,w.jsxs)(u.rjZ,{item:!0,xs:12,className:n.progressResult,children:[(0,w.jsx)("div",{className:n.localMessage,children:F}),(0,w.jsxs)("div",{className:n.progressResult,children:[" ",""!==J&&!J.toLowerCase().includes("error")&&(0,w.jsxs)(u.rjZ,{item:!0,xs:12,className:n.serversData,children:[(0,w.jsx)("strong",{children:"Health report uploaded to Subnet successfully!"}),"\xa0"," ",(0,w.jsxs)("strong",{children:["See the results on your"," ",(0,w.jsx)("a",{href:J,children:"Subnet Dashboard"})," "]})]}),(""===J||J.toLowerCase().includes("error"))&&p===f&&(0,w.jsxs)(u.rjZ,{item:!0,xs:12,className:n.serversData,children:[(0,w.jsx)("strong",{children:"Something went wrong uploading your Health report to Subnet."}),"\xa0"," ",(0,w.jsxs)("strong",{children:["Log into your"," ",(0,w.jsx)("a",{href:"https://subnet.min.io",children:"Subnet Account"})," to manually upload your Health report."]})]})]}),p===x?(0,w.jsx)("div",{className:n.loading,children:(0,w.jsx)(u.aNw,{style:{width:25,height:25}})}):(0,w.jsx)(i.Fragment,{children:(0,w.jsxs)(u.xuv,{sx:{display:"flex",gap:10,alignItems:"center",justifyContent:"center"},children:[(0,w.jsx)(u.xuv,{children:p!==d&&!_&&(0,w.jsx)(u.zxk,{id:"download",type:"submit",variant:"callAction",onClick:function(){return function(){var e=document.createElement("a");e.setAttribute("href","data:application/gzip;base64,".concat(Y)),e.setAttribute("download","diagnostic.json.gz"),e.style.display="none",document.body.appendChild(e),e.click(),document.body.removeChild(e)}()},disabled:_,label:"Download"})}),(0,w.jsx)(u.xuv,{children:(0,w.jsx)(u.zxk,{id:"start-new-diagnostic",type:"submit",variant:$?"callAction":"regular",disabled:j,onClick:function(){$?b(!0):o("/support/register")},label:B})})]})})]},"start-download")})})}),!j&&$&&(0,w.jsxs)(i.Fragment,{children:[(0,w.jsx)("br",{}),(0,w.jsx)(u.KfX,{title:"Cluster Health Report will be uploaded to Subnet, and is viewable from your Subnet Diagnostics dashboard.",iconComponent:(0,w.jsx)(u.szr,{}),help:""})]})]})]})}))},31460:function(e,n,t){"use strict";var r=t(72791),o=t(57689),i=t(64554),s=t(29945),a=t(80184);n.Z=function(e){var n=e.compactMode,t=void 0!==n&&n,c=(0,o.s0)(),l=(0,a.jsx)(s.zxk,{id:"go-to-register",type:"submit",variant:"callAction",color:"primary",onClick:function(){return c("/support/register")},children:"Register your Cluster"}),u="Use your MinIO Subscription Network login credentials to register this cluster.";return t?(0,a.jsxs)(r.Fragment,{children:[(0,a.jsx)(s.rjZ,{sx:{"& div.leftItems":{marginBottom:0}},children:(0,a.jsx)(s.KfX,{title:(0,a.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",flexGrow:1},children:[(0,a.jsx)("span",{children:u})," ",l]}),iconComponent:(0,a.jsx)(s.e6P,{}),help:(0,a.jsx)(r.Fragment,{})})}),(0,a.jsx)("br",{})]}):(0,a.jsx)(i.Z,{sx:{padding:"25px",border:"1px solid #eaeaea",display:"flex",alignItems:"center",justifyContent:"center",flexFlow:{sm:"row",xs:"column"},marginBottom:"15px"},children:(0,a.jsxs)(s.rjZ,{container:!0,children:[(0,a.jsx)(s.rjZ,{item:!0,xs:12,children:(0,a.jsx)(i.Z,{sx:{marginRight:"8px",fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center","& .min-icon":{width:"83px",height:"14px",marginLeft:"5px",marginRight:"5px"}},children:"Register your cluster"})}),(0,a.jsx)(s.rjZ,{item:!0,xs:12,children:(0,a.jsx)(i.Z,{sx:{display:"flex",flexFlow:{xs:"column",md:"row"}},children:(0,a.jsxs)(i.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,a.jsx)(i.Z,{sx:{fontSize:"16px",display:"flex",flexFlow:"column",marginTop:"15px",marginBottom:"15px"},children:u}),(0,a.jsx)(i.Z,{sx:{flex:"1"},children:(0,a.jsx)(i.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:l})})]})})})]})})}},26824:function(e,n,t){"use strict";t.d(n,{HE:function(){return i},V9:function(){return r},ci:function(){return o},x2:function(){return s}});var r=1006,o=1008,i=1011,s=function(e){var n="ws";return"https:"===e&&(n="wss"),n}},93385:function(e,n,t){"use strict";var r=t(64836);n.Z=void 0;var o=r(t(45649)),i=t(80184),s=(0,o.default)((0,i.jsx)("path",{d:"M6.23 20.23 8 22l10-10L8 2 6.23 3.77 14.46 12z"}),"ArrowForwardIos");n.Z=s},45649:function(e,n,t){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"default",{enumerable:!0,get:function(){return r.createSvgIcon}});var r=t(28610)},31260:function(e,n,t){"use strict";var r=t(78949);n.Z=r.Z},28610:function(e,n,t){"use strict";t.r(n),t.d(n,{capitalize:function(){return o.Z},createChainedFunction:function(){return i.Z},createSvgIcon:function(){return s.Z},debounce:function(){return a.Z},deprecatedPropType:function(){return c},isMuiElement:function(){return l.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return x},unstable_ClassNameGenerator:function(){return w},unstable_useEnhancedEffect:function(){return g.Z},unstable_useId:function(){return p.Z},unsupportedProp:function(){return h},useControlled:function(){return m.Z},useEventCallback:function(){return v.Z},useForkRef:function(){return j.Z},useIsFocusVisible:function(){return b.Z}});var r=t(55902),o=t(14036),i=t(31260),s=t(76189),a=t(83199);var c=function(e,n){return function(){return null}},l=t(19103),u=t(98301),d=t(17602);t(87462);var f=function(e,n){return function(){return null}},x=t(62971).Z,g=t(40162),p=t(67384);var h=function(e,n,t,r,o){return null},m=t(98278),v=t(89683),j=t(42071),b=t(23031),w={configure:function(e){r.Z.configure(e)}}},19103:function(e,n,t){"use strict";t.d(n,{Z:function(){return o}});var r=t(72791);var o=function(e,n){return r.isValidElement(e)&&-1!==n.indexOf(e.type.muiName)}},78949:function(e,n,t){"use strict";function r(){for(var e=arguments.length,n=new Array(e),t=0;t0){f(e.data.servers[0].version||"N/A");var r=e.data.servers.reduce((function(e,n){return e+(n.drives?n.drives.length:0)}),0);C(r)}E(!1)})).catch((function(){E(!1)}))}),[I]),(0,w.jsxs)(v.ZP,{item:!0,xs:12,children:[(0,w.jsx)(v.ZP,{item:!0,xs:12,className:o.titleBar,children:n}),(0,w.jsxs)(v.ZP,{item:!0,xs:12,children:[(0,w.jsxs)(v.ZP,{item:!0,xs:12,className:o.optionsContainer,children:[(0,w.jsx)(v.ZP,{container:!0,className:o.divisorContainer,children:I?(0,w.jsx)(i.Fragment,{children:(0,w.jsx)(v.ZP,{item:!0,xs:12,className:o.loaderAlign,children:(0,w.jsx)(d.aNw,{style:{width:25,height:25}})})}):(0,w.jsxs)(i.Fragment,{children:[(0,w.jsxs)(v.ZP,{item:!0,xs:12,md:4,className:o.serversData,children:[(0,w.jsx)(d.FU8,{})," ",(0,w.jsx)("strong",{children:p}),"\xa0nodes,\xa0",(0,w.jsx)("strong",{children:Z}),"\xa0 drives"]}),(0,w.jsxs)(v.ZP,{item:!0,xs:12,md:4,className:o.minioVersionContainer,children:[(0,w.jsx)("span",{className:o.versionIcon,children:(0,w.jsx)(d.Dbk,{})})," ","MinIO VERSION\xa0",(0,w.jsx)("strong",{children:u})]}),(0,w.jsx)(v.ZP,{item:!0,xs:12,md:4,className:o.advancedContainer,children:s&&(0,w.jsxs)("button",{onClick:function(){P(!_)},className:o.advancedConfiguration,children:["Advanced configurations"," ",(0,w.jsx)("span",{className:_?o.advancedOpen:o.advancedClosed,children:(0,w.jsx)(j.Z,{})})]})})]})}),a&&(0,w.jsx)(v.ZP,{xs:12,className:"".concat(o.advancedContent," ").concat(_?"open":""),children:a})]}),t]})]})})),Z=t(87995),C=t(12808),S=t(31460),N=t(47974),I=t(9478),E=t(99670),D=(0,p.Z)((function(e){return(0,g.Z)((0,o.Z)((0,o.Z)({loading:{paddingTop:8,paddingLeft:40},buttons:{justifyContent:"flex-start",gap:20},localMessage:{fontSize:24,color:"#07193E",fontWeight:"bold",textAlign:"center",marginBottom:20},progressResult:{textAlign:"center",marginBottom:25},startDiagnostic:{display:"flex",justifyContent:"flex-end",margin:25,marginBottom:0},startDiagnosticCenter:{textAlign:"center",marginTop:0}},m.OR),m.Bz))}))((function(e){var n=e.classes,t=(0,a.TL)(),o=(0,l.s0)(),g=(0,c.v9)((function(e){return e.healthInfo.message})),p=(0,c.v9)((function(e){return e.system.serverDiagnosticStatus})),m=(0,i.useState)(!1),v=(0,r.Z)(m,2),j=v[0],b=v[1],D=(0,i.useState)(!0),k=(0,r.Z)(D,2),_=k[0],P=k[1],R=(0,i.useState)(""),A=(0,r.Z)(R,2),F=A[0],O=A[1],z=(0,i.useState)("Start Diagnostic"),H=(0,r.Z)(z,2),B=H[0],L=H[1],M=(0,i.useState)("New Diagnostic"),T=(0,r.Z)(M,2),V=T[0],W=T[1],K=(0,i.useState)(""),U=(0,r.Z)(K,2),Y=U[0],X=U[1],G=(0,i.useState)(""),q=(0,r.Z)(G,2),J=q[0],Q=q[1],$=(0,I.Yc)();(0,i.useEffect)((function(){return p===x?(W("Diagnostic in progress..."),void O("Diagnostic started. Please do not refresh page during diagnosis.")):p===f?(W("Diagnostic complete"),O("Diagnostic file is ready to be downloaded."),void L("Start New Diagnostic")):p===u?(W("Error"),O("An error occurred while getting the Diagnostic file."),void L("Retry Diagnostic")):void 0}),[p,j]),(0,i.useEffect)((function(){p===f&&g!=={}&&P(!1),p===x&&P(!0),b(!1)}),[p,g]),(0,i.useEffect)((function(){if(j){t((0,C.Xp)()),X("");var e=new URL(window.location.toString()),n=e.port,r=(0,h.x2)(e.protocol),o=new URL(document.baseURI).pathname,i=new s.w3cwebsocket("".concat(r,"://").concat(e.hostname,":").concat(n).concat(o,"ws/health-info?deadline=1h")),a=null;null!==i&&(i.onopen=function(){console.log("WebSocket Client Connected"),i.send("ok"),a=setInterval((function(){i.send("ok")}),1e4),O("Diagnostic started. Please do not refresh page during diagnosis."),t((0,Z.KY)(x))},i.onmessage=function(e){var n=JSON.parse(e.data.toString());n.serverHealthInfo&&(n.serverHealthInfo.timestamp=new Date(n.serverHealthInfo.timestamp.toString()),t((0,C.ec)(n.serverHealthInfo))),""!==n.encoded&&X(n.encoded),n.subnetResponse&&Q(n.subnetResponse)},i.onerror=function(e){console.log("error closing websocket:",e.message),i.close(1e3),clearInterval(a),t((0,Z.KY)(u))},i.onclose=function(e){clearInterval(a),e.code===h.HE||e.code===h.ci||e.code===h.V9?(console.log("connection closed by server with code:",e.code),O("An error occurred while getting the Diagnostic file."),t((0,Z.KY)(u))):(console.log("connection closed by server"),O("Diagnostic file is ready to be downloaded."),t((0,Z.KY)(f)))})}else b(!1)}),[j,t]);return(0,i.useEffect)((function(){t((0,Z.Sc)("health_info"))}),[t]),(0,w.jsxs)(i.Fragment,{children:[(0,w.jsx)(N.Z,{label:"Health",actions:(0,w.jsx)(E.Z,{})}),(0,w.jsxs)(d.Xgh,{children:[!$&&(0,w.jsx)(S.Z,{compactMode:!0}),(0,w.jsx)(d.rjZ,{item:!0,xs:12,className:n.boxy,children:(0,w.jsx)(y,{title:V,advancedVisible:!1,children:(0,w.jsx)(d.rjZ,{container:!0,className:n.buttons,children:(0,w.jsxs)(d.rjZ,{item:!0,xs:12,className:n.progressResult,children:[(0,w.jsx)("div",{className:n.localMessage,children:F}),(0,w.jsxs)("div",{className:n.progressResult,children:[" ",""!==J&&!J.toLowerCase().includes("error")&&(0,w.jsxs)(d.rjZ,{item:!0,xs:12,className:n.serversData,children:[(0,w.jsx)("strong",{children:"Health report uploaded to Subnet successfully!"}),"\xa0"," ",(0,w.jsxs)("strong",{children:["See the results on your"," ",(0,w.jsx)("a",{href:J,children:"Subnet Dashboard"})," "]})]}),(""===J||J.toLowerCase().includes("error"))&&p===f&&(0,w.jsxs)(d.rjZ,{item:!0,xs:12,className:n.serversData,children:[(0,w.jsx)("strong",{children:"Something went wrong uploading your Health report to Subnet."}),"\xa0"," ",(0,w.jsxs)("strong",{children:["Log into your"," ",(0,w.jsx)("a",{href:"https://subnet.min.io",children:"Subnet Account"})," to manually upload your Health report."]})]})]}),p===x?(0,w.jsx)("div",{className:n.loading,children:(0,w.jsx)(d.aNw,{style:{width:25,height:25}})}):(0,w.jsx)(i.Fragment,{children:(0,w.jsxs)(d.xuv,{sx:{display:"flex",gap:10,alignItems:"center",justifyContent:"center"},children:[(0,w.jsx)(d.xuv,{children:p!==u&&!_&&(0,w.jsx)(d.zxk,{id:"download",type:"submit",variant:"callAction",onClick:function(){return function(){var e=document.createElement("a");e.setAttribute("href","data:application/gzip;base64,".concat(Y)),e.setAttribute("download","diagnostic.json.gz"),e.style.display="none",document.body.appendChild(e),e.click(),document.body.removeChild(e)}()},disabled:_,label:"Download"})}),(0,w.jsx)(d.xuv,{children:(0,w.jsx)(d.zxk,{id:"start-new-diagnostic",type:"submit",variant:$?"callAction":"regular",disabled:j,onClick:function(){$?b(!0):o("/support/register")},label:B})})]})})]},"start-download")})})}),!j&&$&&(0,w.jsxs)(i.Fragment,{children:[(0,w.jsx)("br",{}),(0,w.jsx)(d.KfX,{title:"Cluster Health Report will be uploaded to Subnet, and is viewable from your Subnet Diagnostics dashboard.",iconComponent:(0,w.jsx)(d.szr,{}),help:"If the Health report cannot be generated at this time, please wait a moment and try again."})]})]})]})}))},31460:function(e,n,t){"use strict";var r=t(72791),o=t(57689),i=t(64554),s=t(29945),a=t(80184);n.Z=function(e){var n=e.compactMode,t=void 0!==n&&n,c=(0,o.s0)(),l=(0,a.jsx)(s.zxk,{id:"go-to-register",type:"submit",variant:"callAction",color:"primary",onClick:function(){return c("/support/register")},children:"Register your Cluster"}),d="Use your MinIO Subscription Network login credentials to register this cluster.";return t?(0,a.jsxs)(r.Fragment,{children:[(0,a.jsx)(s.rjZ,{sx:{"& div.leftItems":{marginBottom:0}},children:(0,a.jsx)(s.KfX,{title:(0,a.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",flexGrow:1},children:[(0,a.jsx)("span",{children:d})," ",l]}),iconComponent:(0,a.jsx)(s.e6P,{}),help:(0,a.jsx)(r.Fragment,{})})}),(0,a.jsx)("br",{})]}):(0,a.jsx)(i.Z,{sx:{padding:"25px",border:"1px solid #eaeaea",display:"flex",alignItems:"center",justifyContent:"center",flexFlow:{sm:"row",xs:"column"},marginBottom:"15px"},children:(0,a.jsxs)(s.rjZ,{container:!0,children:[(0,a.jsx)(s.rjZ,{item:!0,xs:12,children:(0,a.jsx)(i.Z,{sx:{marginRight:"8px",fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center","& .min-icon":{width:"83px",height:"14px",marginLeft:"5px",marginRight:"5px"}},children:"Register your cluster"})}),(0,a.jsx)(s.rjZ,{item:!0,xs:12,children:(0,a.jsx)(i.Z,{sx:{display:"flex",flexFlow:{xs:"column",md:"row"}},children:(0,a.jsxs)(i.Z,{sx:{display:"flex",flexFlow:"column",flex:"2"},children:[(0,a.jsx)(i.Z,{sx:{fontSize:"16px",display:"flex",flexFlow:"column",marginTop:"15px",marginBottom:"15px"},children:d}),(0,a.jsx)(i.Z,{sx:{flex:"1"},children:(0,a.jsx)(i.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:l})})]})})})]})})}},26824:function(e,n,t){"use strict";t.d(n,{HE:function(){return i},V9:function(){return r},ci:function(){return o},x2:function(){return s}});var r=1006,o=1008,i=1011,s=function(e){var n="ws";return"https:"===e&&(n="wss"),n}},93385:function(e,n,t){"use strict";var r=t(64836);n.Z=void 0;var o=r(t(45649)),i=t(80184),s=(0,o.default)((0,i.jsx)("path",{d:"M6.23 20.23 8 22l10-10L8 2 6.23 3.77 14.46 12z"}),"ArrowForwardIos");n.Z=s},45649:function(e,n,t){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"default",{enumerable:!0,get:function(){return r.createSvgIcon}});var r=t(28610)},31260:function(e,n,t){"use strict";var r=t(78949);n.Z=r.Z},28610:function(e,n,t){"use strict";t.r(n),t.d(n,{capitalize:function(){return o.Z},createChainedFunction:function(){return i.Z},createSvgIcon:function(){return s.Z},debounce:function(){return a.Z},deprecatedPropType:function(){return c},isMuiElement:function(){return l.Z},ownerDocument:function(){return d.Z},ownerWindow:function(){return u.Z},requirePropFactory:function(){return f},setRef:function(){return x},unstable_ClassNameGenerator:function(){return w},unstable_useEnhancedEffect:function(){return g.Z},unstable_useId:function(){return p.Z},unsupportedProp:function(){return h},useControlled:function(){return m.Z},useEventCallback:function(){return v.Z},useForkRef:function(){return j.Z},useIsFocusVisible:function(){return b.Z}});var r=t(55902),o=t(14036),i=t(31260),s=t(76189),a=t(83199);var c=function(e,n){return function(){return null}},l=t(19103),d=t(98301),u=t(17602);t(87462);var f=function(e,n){return function(){return null}},x=t(62971).Z,g=t(40162),p=t(67384);var h=function(e,n,t,r,o){return null},m=t(98278),v=t(89683),j=t(42071),b=t(23031),w={configure:function(e){r.Z.configure(e)}}},19103:function(e,n,t){"use strict";t.d(n,{Z:function(){return o}});var r=t(72791);var o=function(e,n){return r.isValidElement(e)&&-1!==n.indexOf(e.type.muiName)}},78949:function(e,n,t){"use strict";function r(){for(var e=arguments.length,n=new Array(e),t=0;t.\n\nexport const DiagStatError = \"error\";\nexport const DiagStatSuccess = \"success\";\nexport const DiagStatInProgress = \"inProgress\";\n\nexport interface HealthInfoMessage {\n timestamp: Date;\n error: string;\n perf: perfInfo;\n minio: minioHealthInfo;\n sys: sysHealthInfo;\n}\n\nexport interface ReportMessage {\n encoded: string;\n serverHealthInfo: HealthInfoMessage;\n subnetResponse: string;\n}\n\nexport interface perfInfo {\n drives: serverDrivesInfo[];\n net: serverNetHealthInfo[];\n net_parallel: serverNetHealthInfo;\n error: string;\n}\n\nexport interface serverDrivesInfo {\n addr: string;\n serial: drivePerfInfo[];\n parallel: drivePerfInfo[];\n error: string;\n}\n\nexport interface drivePerfInfo {\n endpoint: string;\n latency: diskLatency;\n throughput: diskThroughput;\n error: string;\n}\n\nexport interface diskLatency {\n avg_secs: number;\n percentile50_secs: number;\n percentile90_secs: number;\n percentile99_secs: number;\n min_secs: number;\n max_secs: number;\n}\n\nexport interface diskThroughput {\n avg_bytes_per_sec: number;\n percentile50_bytes_per_sec: number;\n percentile90_bytes_per_sec: number;\n percentile99_bytes_per_sec: number;\n min_bytes_per_sec: number;\n max_bytes_per_sec: number;\n}\n\nexport interface serverNetHealthInfo {\n addr: string;\n net: netPerfInfo[];\n error: string;\n}\n\nexport interface netPerfInfo {\n remote: string;\n latency: netLatency;\n throughput: netThroughput;\n error: string;\n}\n\nexport interface netLatency {\n avg_secs: number;\n percentile50_secs: number;\n percentile90_secs: number;\n percentile99_secs: number;\n min_secs: number;\n max_secs: number;\n}\n\nexport interface netThroughput {\n avg_bytes_per_sec: number;\n percentile50_bytes_per_sec: number;\n percentile90_bytes_per_sec: number;\n percentile99_bytes_per_sec: number;\n min_bytes_per_sec: number;\n max_bytes_per_sec: number;\n}\n\nexport interface minioHealthInfo {\n info: infoMessage;\n config: any;\n error: string;\n}\n\nexport interface infoMessage {\n mode: string;\n domain: string[];\n region: string;\n sqsARN: string[];\n deploymentID: string;\n buckets: buckets;\n objects: objects;\n usage: usage;\n services: services;\n backend: any;\n servers: serverProperties[];\n}\n\nexport interface buckets {\n count: number;\n}\n\nexport interface objects {\n count: number;\n}\n\nexport interface usage {\n size: number;\n}\n\nexport interface services {\n vault: vault;\n ldap: ldap;\n logger: Map[];\n audit: Map[];\n notifications: Map[]>;\n}\n\nexport interface vault {\n status: string;\n encrypt: string;\n decrypt: string;\n}\n\nexport interface ldap {\n status: string;\n}\n\nexport interface status {\n status: string;\n}\n\nexport interface serverProperties {\n state: string;\n endpoint: string;\n uptime: number;\n version: string;\n commitID: string;\n network: Map;\n drives: disk[];\n}\n\nexport interface disk {\n endpoint: string;\n rootDisk: boolean;\n path: string;\n healing: boolean;\n state: string;\n uuid: string;\n model: string;\n totalspace: number;\n usedspace: number;\n availspace: number;\n readthroughput: number;\n writethroughput: number;\n readlatency: number;\n writelatency: number;\n utilization: number;\n}\n\nexport interface sysHealthInfo {\n cpus: serverCpuInfo[];\n drives: serverDiskHwInfo[];\n osinfos: serverOsInfo[];\n meminfos: serverMemInfo[];\n procinfos: serverProcInfo[];\n error: string;\n}\n\nexport interface serverCpuInfo {\n addr: string;\n cpu: cpuInfoStat[];\n time: cpuTimeStat[];\n error: string;\n}\n\nexport interface cpuInfoStat {\n cpu: number;\n vendorId: string;\n family: string;\n model: string;\n stepping: number;\n physicalId: string;\n coreId: string;\n cores: number;\n modelName: string;\n mhz: number;\n cacheSize: number;\n flags: string[];\n microcode: string;\n}\n\nexport interface cpuTimeStat {\n cpu: string;\n user: number;\n system: number;\n idle: number;\n nice: number;\n iowait: number;\n irq: number;\n softirq: number;\n steal: number;\n guest: number;\n guestNice: number;\n}\n\nexport interface serverDiskHwInfo {\n addr: string;\n usages: diskUsageStat[];\n partitions: partitionStat[];\n counters: Map;\n error: string;\n}\n\nexport interface diskUsageStat {\n path: string;\n fstype: string;\n total: number;\n free: number;\n used: number;\n usedPercent: number;\n inodesTotal: number;\n inodesUsed: number;\n inodesFree: number;\n inodesUsedPercent: number;\n}\n\nexport interface partitionStat {\n device: string;\n mountpoint: string;\n fstype: string;\n opts: string;\n smartInfo: smartInfo;\n}\n\nexport interface smartInfo {\n device: string;\n scsi: scsiInfo;\n nvme: nvmeInfo;\n ata: ataInfo;\n error: string;\n}\n\nexport interface scsiInfo {\n scsiCapacityBytes: number;\n scsiModeSenseBuf: string;\n scsirespLen: number;\n scsiBdLen: number;\n scsiOffset: number;\n sciRpm: number;\n}\n\nexport interface nvmeInfo {\n serialNum: string;\n vendorId: string;\n firmwareVersion: string;\n modelNum: string;\n spareAvailable: string;\n spareThreshold: string;\n temperature: string;\n criticalWarning: string;\n maxDataTransferPages: number;\n controllerBusyTime: number;\n powerOnHours: number;\n powerCycles: number;\n unsafeShutdowns: number;\n mediaAndDataIntgerityErrors: number;\n dataUnitsReadBytes: number;\n dataUnitsWrittenBytes: number;\n hostReadCommands: number;\n hostWriteCommands: number;\n}\n\nexport interface ataInfo {\n scsiLuWWNDeviceID: string;\n serialNum: string;\n modelNum: string;\n firmwareRevision: string;\n RotationRate: string;\n MajorVersion: string;\n MinorVersion: string;\n smartSupportAvailable: boolean;\n smartSupportEnabled: boolean;\n smartErrorLog: string;\n transport: string;\n}\n\nexport interface diskIOCountersStat {\n readCount: number;\n mergedReadCount: number;\n DriteCount: number;\n mergedWriteCount: number;\n readBytes: number;\n writeBytes: number;\n readTime: number;\n writeTime: number;\n iopsInProgress: number;\n ioTime: number;\n weightedIO: number;\n name: string;\n serialNumber: string;\n label: string;\n}\n\nexport interface serverOsInfo {\n addr: string;\n info: infoStat;\n sensors: temperatureStat[];\n users: userStat[];\n error: string;\n}\n\nexport interface infoStat {\n hostname: string;\n uptime: number;\n bootTime: number;\n procs: number;\n os: string;\n platform: string;\n platformFamily: string;\n platformVersion: string;\n kernelVersion: string;\n kernelArch: string;\n virtualizationSystem: string;\n virtualizationRole: string;\n hostid: string;\n}\n\nexport interface temperatureStat {\n sensorKey: string;\n sensorTemperature: number;\n}\n\nexport interface userStat {\n user: string;\n terminal: string;\n host: string;\n started: number;\n}\n\nexport interface serverMemInfo {\n addr: string;\n swap: swapMemoryStat;\n virtualmem: virtualMemoryStat;\n error: string;\n}\n\nexport interface swapMemoryStat {\n total: number;\n used: number;\n free: number;\n usedPercent: number;\n sin: number;\n sout: number;\n pgin: number;\n pgout: number;\n pgfault: number;\n pgmajfault: number;\n}\n\nexport interface virtualMemoryStat {\n total: number;\n available: number;\n used: number;\n usedPercent: number;\n free: number;\n active: number;\n inactive: number;\n wired: number;\n laundry: number;\n buffers: number;\n cached: number;\n writeback: number;\n dirty: number;\n writebacktmp: number;\n shared: number;\n slab: number;\n sreclaimable: number;\n sunreclaim: number;\n pagetables: number;\n swapcached: number;\n commitlimit: number;\n committedas: number;\n hightotal: number;\n highfree: number;\n lowtotal: number;\n lowfree: number;\n swaptotal: number;\n swapfree: number;\n mapped: number;\n vmalloctotal: number;\n vmallocused: number;\n vmallocchunk: number;\n hugepagestotal: number;\n hugepagesfree: number;\n hugepagesize: number;\n}\n\nexport interface serverProcInfo {\n addr: string;\n processes: sysProcess[];\n error: string;\n}\n\nexport interface sysProcess {\n pid: number;\n background: boolean;\n cpupercent: number;\n children: number[];\n cmd: string;\n connections: nethwConnectionStat[];\n createtime: number;\n cwd: string;\n exe: string;\n gids: number[];\n iocounters: processIOCountersStat;\n isrunning: boolean;\n meminfo: memoryInfoStat;\n memmaps: any[];\n mempercent: number;\n name: string;\n netiocounters: nethwIOCounterStat[];\n nice: number;\n numctxswitches: processNmCtxSwitchesStat;\n numfds: number;\n numthreads: number;\n pagefaults: processPageFaultsStat;\n parent: number;\n ppid: number;\n rlimit: processRLimitStat[];\n status: string;\n tgid: number;\n cputimes: cpuTimeStat;\n uids: number[];\n username: string;\n}\n\nexport interface nethwConnectionStat {\n fd: number;\n family: number;\n type: number;\n localaddr: netAddr;\n remoteaddr: netAddr;\n status: string;\n uids: number[];\n pid: number;\n}\n\nexport interface netAddr {\n ip: string;\n port: number;\n}\n\nexport interface processIOCountersStat {\n readCount: number;\n writeCount: number;\n readBytes: number;\n writeBytes: number;\n}\n\nexport interface memoryInfoStat {\n rss: number;\n vms: number;\n hwm: number;\n data: number;\n stack: number;\n locked: number;\n swap: number;\n}\n\nexport interface nethwIOCounterStat {\n name: string;\n bytesSent: number;\n bytesRecv: number;\n packetsSent: number;\n packetsRecv: number;\n errin: number;\n errout: number;\n dropin: number;\n dropout: number;\n fifoin: number;\n fifoout: number;\n}\n\nexport interface processNmCtxSwitchesStat {\n voluntary: number;\n involuntary: number;\n}\n\nexport interface processPageFaultsStat {\n minorFaults: number;\n majorFaults: number;\n childMinorFaults: number;\n childMajorFaults: number;\n}\n\nexport interface processRLimitStat {\n resource: number;\n soft: number;\n hard: number;\n used: number;\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Grid } from \"@mui/material\";\nimport ArrowForwardIosIcon from \"@mui/icons-material/ArrowForwardIos\";\nimport { DrivesIcon, Loader, VersionIcon } from \"mds\";\nimport { api } from \"api\";\nimport { ServerProperties } from \"api/consoleApi\";\n\ninterface ITestWrapper {\n title: any;\n children: any;\n classes: any;\n advancedVisible: boolean;\n advancedContent?: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n titleBar: {\n borderBottom: \"#E5E5E5 1px solid\",\n padding: \"30px 25px\",\n fontSize: 20,\n color: \"#07193E\",\n fontWeight: \"bold\",\n borderRadius: \"10px 10px 0px 0px\",\n paddingTop: 0,\n },\n divisorContainer: {\n padding: 25,\n },\n serversData: {\n color: \"#07193E\",\n fontSize: 18,\n display: \"flex\",\n alignItems: \"center\",\n \"& svg\": {\n marginRight: 10,\n },\n },\n minioVersionContainer: {\n fontSize: 12,\n color: \"#07193E\",\n justifyContent: \"center\",\n alignSelf: \"center\",\n alignItems: \"center\",\n display: \"flex\",\n },\n versionIcon: {\n color: \"#07193E\",\n marginRight: 20,\n },\n loaderAlign: {\n textAlign: \"center\",\n },\n advancedContainer: {\n justifyContent: \"flex-end\",\n display: \"flex\",\n },\n optionsContainer: {\n padding: 0,\n marginBottom: 25,\n },\n advancedConfiguration: {\n color: \"#2781B0\",\n fontSize: 10,\n textDecoration: \"underline\",\n border: \"none\",\n backgroundColor: \"transparent\",\n cursor: \"pointer\",\n alignItems: \"center\",\n display: \"flex\",\n\n \"&:hover\": {\n color: \"#07193E\",\n },\n\n \"& svg\": {\n width: 10,\n alignSelf: \"center\",\n marginLeft: 5,\n },\n },\n advancedOpen: {\n transform: \"rotateZ(-90deg) translateX(-4px) translateY(2px)\",\n },\n advancedClosed: {\n transform: \"rotateZ(90deg)\",\n },\n advancedContent: {\n backgroundColor: \"#F5F7F9\",\n maxHeight: 0,\n transitionDuration: \"0.3s\",\n overflow: \"hidden\",\n padding: \"0 15px\",\n \"&.open\": {\n maxHeight: 400,\n padding: 15,\n },\n },\n });\n\nconst TestWrapper = ({\n title,\n children,\n classes,\n advancedVisible,\n advancedContent,\n}: ITestWrapper) => {\n const [version, setVersion] = useState(\"N/A\");\n const [totalNodes, setTotalNodes] = useState(0);\n const [totalDrives, setTotalDrives] = useState(0);\n const [loading, setLoading] = useState(true);\n const [advancedOpen, setAdvancedOpen] = useState(false);\n\n useEffect(() => {\n if (loading) {\n api.admin\n .adminInfo({\n defaultOnly: true,\n })\n .then((res) => {\n const totalServers = res.data.servers?.length;\n setTotalNodes(totalServers || 0);\n\n if (res.data.servers && res.data.servers.length > 0) {\n setVersion(res.data.servers[0].version || \"N/A\");\n\n const totalServers = res.data.servers.reduce(\n (prevTotal: number, currentElement: ServerProperties) => {\n let c = currentElement.drives\n ? currentElement.drives.length\n : 0;\n return prevTotal + c;\n },\n 0,\n );\n setTotalDrives(totalServers);\n }\n\n setLoading(false);\n })\n .catch(() => {\n setLoading(false);\n });\n }\n }, [loading]);\n\n return (\n \n \n {title}\n \n \n \n \n {!loading ? (\n \n \n {totalNodes}\n  nodes, \n {totalDrives}  drives\n \n \n \n \n {\" \"}\n MinIO VERSION {version}\n \n \n {advancedVisible && (\n {\n setAdvancedOpen(!advancedOpen);\n }}\n className={classes.advancedConfiguration}\n >\n Advanced configurations{\" \"}\n \n \n \n \n )}\n \n
\n ) : (\n \n \n \n \n \n )}\n \n {advancedContent && (\n \n {advancedContent}\n \n )}\n \n {children}\n \n \n );\n};\n\nexport default withStyles(styles)(TestWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { Fragment, useEffect, useState } from \"react\";\n\nimport {\n ICloseEvent,\n IMessageEvent,\n w3cwebsocket as W3CWebSocket,\n} from \"websocket\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { useSelector } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport { Box, Button, Grid, HelpBox, InfoIcon, Loader, PageLayout } from \"mds\";\nimport {\n DiagStatError,\n DiagStatInProgress,\n DiagStatSuccess,\n HealthInfoMessage,\n ReportMessage,\n} from \"./types\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n WSCloseAbnormalClosure,\n WSCloseInternalServerErr,\n WSClosePolicyViolation,\n wsProtocol,\n} from \"../../../utils/wsUtils\";\nimport {\n actionsTray,\n containerForHeader,\n} from \"../Common/FormComponents/common/styleLibrary\";\n\nimport TestWrapper from \"../Common/TestWrapper/TestWrapper\";\nimport { setHelpName, setServerDiagStat } from \"../../../systemSlice\";\nimport {\n healthInfoMessageReceived,\n healthInfoResetMessage,\n} from \"./healthInfoSlice\";\nimport RegisterCluster from \"../Support/RegisterCluster\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport { registeredCluster } from \"../../../config\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n loading: {\n paddingTop: 8,\n paddingLeft: 40,\n },\n buttons: {\n justifyContent: \"flex-start\",\n gap: 20,\n },\n localMessage: {\n fontSize: 24,\n color: \"#07193E\",\n fontWeight: \"bold\",\n textAlign: \"center\",\n marginBottom: 20,\n },\n progressResult: {\n textAlign: \"center\",\n marginBottom: 25,\n },\n startDiagnostic: {\n display: \"flex\",\n justifyContent: \"flex-end\",\n margin: 25,\n marginBottom: 0,\n },\n startDiagnosticCenter: {\n textAlign: \"center\",\n marginTop: 0,\n },\n ...actionsTray,\n ...containerForHeader,\n });\n\ninterface IHealthInfo {\n classes: any;\n}\n\nconst HealthInfo = ({ classes }: IHealthInfo) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const message = useSelector((state: AppState) => state.healthInfo.message);\n\n const serverDiagnosticStatus = useSelector(\n (state: AppState) => state.system.serverDiagnosticStatus,\n );\n const [startDiagnostic, setStartDiagnostic] = useState(false);\n\n const [downloadDisabled, setDownloadDisabled] = useState(true);\n const [localMessage, setMessage] = useState(\"\");\n const [buttonStartText, setButtonStartText] =\n useState(\"Start Diagnostic\");\n const [title, setTitle] = useState(\"New Diagnostic\");\n const [diagFileContent, setDiagFileContent] = useState(\"\");\n const [subnetResponse, setSubnetResponse] = useState(\"\");\n const clusterRegistered = registeredCluster();\n\n const download = () => {\n let element = document.createElement(\"a\");\n element.setAttribute(\n \"href\",\n `data:application/gzip;base64,${diagFileContent}`,\n );\n element.setAttribute(\"download\", \"diagnostic.json.gz\");\n\n element.style.display = \"none\";\n document.body.appendChild(element);\n\n element.click();\n\n document.body.removeChild(element);\n };\n\n useEffect(() => {\n if (serverDiagnosticStatus === DiagStatInProgress) {\n setTitle(\"Diagnostic in progress...\");\n setMessage(\n \"Diagnostic started. Please do not refresh page during diagnosis.\",\n );\n return;\n }\n\n if (serverDiagnosticStatus === DiagStatSuccess) {\n setTitle(\"Diagnostic complete\");\n setMessage(\"Diagnostic file is ready to be downloaded.\");\n setButtonStartText(\"Start New Diagnostic\");\n return;\n }\n\n if (serverDiagnosticStatus === DiagStatError) {\n setTitle(\"Error\");\n setMessage(\"An error occurred while getting the Diagnostic file.\");\n setButtonStartText(\"Retry Diagnostic\");\n return;\n }\n }, [serverDiagnosticStatus, startDiagnostic]);\n\n useEffect(() => {\n if (\n serverDiagnosticStatus === DiagStatSuccess &&\n message !== ({} as HealthInfoMessage)\n ) {\n // Allow download of diagnostics file only when\n // it succeded fetching all the results and info is not empty.\n setDownloadDisabled(false);\n }\n if (serverDiagnosticStatus === DiagStatInProgress) {\n // Disable Start Diagnotic and Disable Download buttons\n // if a Diagnosis is in progress.\n setDownloadDisabled(true);\n }\n setStartDiagnostic(false);\n }, [serverDiagnosticStatus, message]);\n\n useEffect(() => {\n if (startDiagnostic) {\n dispatch(healthInfoResetMessage());\n setDiagFileContent(\"\");\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n\n // check if we are using base path, if not this always is `/`\n const baseLocation = new URL(document.baseURI);\n const baseUrl = baseLocation.pathname;\n\n const c = new W3CWebSocket(\n `${wsProt}://${url.hostname}:${port}${baseUrl}ws/health-info?deadline=1h`,\n );\n let interval: any | null = null;\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n c.send(\"ok\");\n interval = setInterval(() => {\n c.send(\"ok\");\n }, 10 * 1000);\n setMessage(\n \"Diagnostic started. Please do not refresh page during diagnosis.\",\n );\n dispatch(setServerDiagStat(DiagStatInProgress));\n };\n c.onmessage = (message: IMessageEvent) => {\n let m: ReportMessage = JSON.parse(message.data.toString());\n if (m.serverHealthInfo) {\n m.serverHealthInfo.timestamp = new Date(\n m.serverHealthInfo.timestamp.toString(),\n );\n dispatch(healthInfoMessageReceived(m.serverHealthInfo));\n }\n if (m.encoded !== \"\") {\n setDiagFileContent(m.encoded);\n }\n if (m.subnetResponse) {\n setSubnetResponse(m.subnetResponse);\n }\n };\n c.onerror = (error: Error) => {\n console.log(\"error closing websocket:\", error.message);\n c.close(1000);\n clearInterval(interval);\n dispatch(setServerDiagStat(DiagStatError));\n };\n c.onclose = (event: ICloseEvent) => {\n clearInterval(interval);\n if (\n event.code === WSCloseInternalServerErr ||\n event.code === WSClosePolicyViolation ||\n event.code === WSCloseAbnormalClosure\n ) {\n // handle close with error\n console.log(\"connection closed by server with code:\", event.code);\n setMessage(\"An error occurred while getting the Diagnostic file.\");\n dispatch(setServerDiagStat(DiagStatError));\n } else {\n console.log(\"connection closed by server\");\n\n setMessage(\"Diagnostic file is ready to be downloaded.\");\n dispatch(setServerDiagStat(DiagStatSuccess));\n }\n };\n }\n } else {\n // reset start status\n setStartDiagnostic(false);\n }\n }, [startDiagnostic, dispatch]);\n\n const startDiagnosticAction = () => {\n if (!clusterRegistered) {\n navigate(\"/support/register\");\n return;\n }\n setStartDiagnostic(true);\n };\n\n useEffect(() => {\n dispatch(setHelpName(\"health_info\"));\n }, [dispatch]);\n\n return (\n \n } />\n\n \n {!clusterRegistered && }\n \n \n \n \n
{localMessage}
\n
\n {\" \"}\n {subnetResponse !== \"\" &&\n !subnetResponse.toLowerCase().includes(\"error\") && (\n \n \n Health report uploaded to Subnet successfully!\n \n  {\" \"}\n \n See the results on your{\" \"}\n Subnet Dashboard{\" \"}\n \n \n )}\n {(subnetResponse === \"\" ||\n subnetResponse.toLowerCase().includes(\"error\")) &&\n serverDiagnosticStatus === DiagStatSuccess && (\n \n \n Something went wrong uploading your Health report to\n Subnet.\n \n  {\" \"}\n \n Log into your{\" \"}\n Subnet Account to\n manually upload your Health report.\n \n \n )}\n
\n {serverDiagnosticStatus === DiagStatInProgress ? (\n
\n \n
\n ) : (\n \n \n \n {serverDiagnosticStatus !== DiagStatError &&\n !downloadDisabled && (\n download()}\n disabled={downloadDisabled}\n label={\"Download\"}\n />\n )}\n \n \n \n \n \n \n )}\n
\n
\n \n \n {!startDiagnostic && clusterRegistered && (\n \n
\n }\n help={\n \"If the Health report cannot be generated at this time, please wait a moment and try again.\"\n }\n />\n
\n )}\n
\n
\n );\n};\n\nexport default withStyles(styles)(HealthInfo);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { Box } from \"@mui/material\";\nimport { Button, Grid, HelpBox, WarnIcon } from \"mds\";\n\ninterface IRegisterCluster {\n compactMode?: boolean;\n}\n\nconst RegisterCluster = ({ compactMode = false }: IRegisterCluster) => {\n const navigate = useNavigate();\n\n const redirectButton = (\n navigate(\"/support/register\")}\n >\n Register your Cluster\n \n );\n\n const registerMessage =\n \"Use your MinIO Subscription Network login credentials to register this cluster.\";\n\n if (compactMode) {\n return (\n \n \n \n {registerMessage} {redirectButton}\n \n }\n iconComponent={}\n help={}\n />\n \n
\n
\n );\n }\n\n return (\n \n \n \n \n Register your cluster\n \n \n \n \n \n \n {registerMessage}\n \n \n \n {redirectButton}\n \n \n \n \n \n \n \n );\n};\n\nexport default RegisterCluster;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\n// Close codes for websockets defined in RFC 6455\nexport const WSCloseAbnormalClosure = 1006;\nexport const WSClosePolicyViolation = 1008;\nexport const WSCloseInternalServerErr = 1011;\n\nexport const wsProtocol = (protocol: string): string => {\n let wsProtocol = \"ws\";\n if (protocol === \"https:\") {\n wsProtocol = \"wss\";\n }\n return wsProtocol;\n};\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M6.23 20.23 8 22l10-10L8 2 6.23 3.77 14.46 12z\"\n}), 'ArrowForwardIos');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","var naiveFallback = function () {\n\tif (typeof self === \"object\" && self) return self;\n\tif (typeof window === \"object\" && window) return window;\n\tthrow new Error(\"Unable to resolve global `this`\");\n};\n\nmodule.exports = (function () {\n\tif (this) return this;\n\n\t// Unexpected strict mode (may happen if e.g. bundled into ESM module)\n\n\t// Fallback to standard globalThis if available\n\tif (typeof globalThis === \"object\" && globalThis) return globalThis;\n\n\t// Thanks @mathiasbynens -> https://mathiasbynens.be/notes/globalthis\n\t// In all ES5+ engines global object inherits from Object.prototype\n\t// (if you approached one that doesn't please report)\n\ttry {\n\t\tObject.defineProperty(Object.prototype, \"__global__\", {\n\t\t\tget: function () { return this; },\n\t\t\tconfigurable: true\n\t\t});\n\t} catch (error) {\n\t\t// Unfortunate case of updates to Object.prototype being restricted\n\t\t// via preventExtensions, seal or freeze\n\t\treturn naiveFallback();\n\t}\n\ttry {\n\t\t// Safari case (window.__global__ works, but __global__ does not)\n\t\tif (!__global__) return naiveFallback();\n\t\treturn __global__;\n\t} finally {\n\t\tdelete Object.prototype.__global__;\n\t}\n})();\n","var _globalThis;\nif (typeof globalThis === 'object') {\n\t_globalThis = globalThis;\n} else {\n\ttry {\n\t\t_globalThis = require('es5-ext/global');\n\t} catch (error) {\n\t} finally {\n\t\tif (!_globalThis && typeof window !== 'undefined') { _globalThis = window; }\n\t\tif (!_globalThis) { throw new Error('Could not determine global this'); }\n\t}\n}\n\nvar NativeWebSocket = _globalThis.WebSocket || _globalThis.MozWebSocket;\nvar websocket_version = require('./version');\n\n\n/**\n * Expose a W3C WebSocket class with just one or two arguments.\n */\nfunction W3CWebSocket(uri, protocols) {\n\tvar native_instance;\n\n\tif (protocols) {\n\t\tnative_instance = new NativeWebSocket(uri, protocols);\n\t}\n\telse {\n\t\tnative_instance = new NativeWebSocket(uri);\n\t}\n\n\t/**\n\t * 'native_instance' is an instance of nativeWebSocket (the browser's WebSocket\n\t * class). Since it is an Object it will be returned as it is when creating an\n\t * instance of W3CWebSocket via 'new W3CWebSocket()'.\n\t *\n\t * ECMAScript 5: http://bclary.com/2004/11/07/#a-13.2.2\n\t */\n\treturn native_instance;\n}\nif (NativeWebSocket) {\n\t['CONNECTING', 'OPEN', 'CLOSING', 'CLOSED'].forEach(function(prop) {\n\t\tObject.defineProperty(W3CWebSocket, prop, {\n\t\t\tget: function() { return NativeWebSocket[prop]; }\n\t\t});\n\t});\n}\n\n/**\n * Module exports.\n */\nmodule.exports = {\n 'w3cwebsocket' : NativeWebSocket ? W3CWebSocket : null,\n 'version' : websocket_version\n};\n","module.exports = require('../package.json').version;\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["DiagStatError","DiagStatSuccess","DiagStatInProgress","withStyles","theme","createStyles","titleBar","borderBottom","padding","fontSize","color","fontWeight","borderRadius","paddingTop","divisorContainer","serversData","display","alignItems","marginRight","minioVersionContainer","justifyContent","alignSelf","versionIcon","loaderAlign","textAlign","advancedContainer","optionsContainer","marginBottom","advancedConfiguration","textDecoration","border","backgroundColor","cursor","width","marginLeft","advancedOpen","transform","advancedClosed","advancedContent","maxHeight","transitionDuration","overflow","_ref","title","children","classes","advancedVisible","_useState","useState","_useState2","_slicedToArray","version","setVersion","_useState3","_useState4","totalNodes","setTotalNodes","_useState5","_useState6","totalDrives","setTotalDrives","_useState7","_useState8","loading","setLoading","_useState9","_useState10","setAdvancedOpen","useEffect","api","admin","adminInfo","defaultOnly","then","res","_res$data$servers","totalServers","data","servers","length","reduce","prevTotal","currentElement","drives","catch","_jsxs","Grid","item","xs","_jsx","className","container","Fragment","Loader","style","height","md","DrivesIcon","VersionIcon","onClick","ArrowForwardIosIcon","concat","_objectSpread","paddingLeft","buttons","gap","localMessage","progressResult","startDiagnostic","margin","startDiagnosticCenter","marginTop","actionsTray","containerForHeader","dispatch","useAppDispatch","navigate","useNavigate","message","useSelector","state","healthInfo","serverDiagnosticStatus","system","setStartDiagnostic","downloadDisabled","setDownloadDisabled","setMessage","buttonStartText","setButtonStartText","setTitle","_useState11","_useState12","diagFileContent","setDiagFileContent","_useState13","_useState14","subnetResponse","setSubnetResponse","clusterRegistered","registeredCluster","healthInfoResetMessage","url","URL","window","location","toString","port","wsProt","wsProtocol","protocol","baseUrl","document","baseURI","pathname","c","W3CWebSocket","hostname","interval","onopen","console","log","send","setInterval","setServerDiagStat","onmessage","m","JSON","parse","serverHealthInfo","timestamp","Date","healthInfoMessageReceived","encoded","onerror","error","close","clearInterval","onclose","event","code","WSCloseInternalServerErr","WSClosePolicyViolation","WSCloseAbnormalClosure","setHelpName","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","RegisterCluster","compactMode","boxy","TestWrapper","toLowerCase","includes","href","Box","sx","Button","id","type","variant","element","createElement","setAttribute","body","appendChild","click","removeChild","download","disabled","HelpBox","iconComponent","InfoIcon","help","_ref$compactMode","redirectButton","registerMessage","flexGrow","WarnIcon","flexFlow","sm","flex","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","createChainedFunction","validator","reason","componentNameInError","Component","props","propName","componentName","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","muiNames","React","indexOf","muiName","_len","arguments","funcs","Array","_key","acc","func","_len2","args","_key2","apply","this","naiveFallback","self","Error","module","globalThis","prototype","configurable","__global__","_globalThis","NativeWebSocket","WebSocket","MozWebSocket","websocket_version","uri","protocols","forEach","prop","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/5088.bae6da67.chunk.js.map b/portal-ui/build/static/js/5088.bae6da67.chunk.js.map deleted file mode 100644 index 20f3800f7..000000000 --- a/portal-ui/build/static/js/5088.bae6da67.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/5088.bae6da67.chunk.js","mappings":"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","sources":["screens/Console/HealthInfo/types.ts","screens/Console/Common/TestWrapper/TestWrapper.tsx","screens/Console/HealthInfo/HealthInfo.tsx","screens/Console/Support/RegisterCluster.tsx","utils/wsUtils.ts","../node_modules/@mui/icons-material/ArrowForwardIos.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@mui/utils/esm/createChainedFunction.js","../node_modules/es5-ext/global.js","../node_modules/websocket/lib/browser.js","../node_modules/websocket/lib/version.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const DiagStatError = \"error\";\nexport const DiagStatSuccess = \"success\";\nexport const DiagStatInProgress = \"inProgress\";\n\nexport interface HealthInfoMessage {\n timestamp: Date;\n error: string;\n perf: perfInfo;\n minio: minioHealthInfo;\n sys: sysHealthInfo;\n}\n\nexport interface ReportMessage {\n encoded: string;\n serverHealthInfo: HealthInfoMessage;\n subnetResponse: string;\n}\n\nexport interface perfInfo {\n drives: serverDrivesInfo[];\n net: serverNetHealthInfo[];\n net_parallel: serverNetHealthInfo;\n error: string;\n}\n\nexport interface serverDrivesInfo {\n addr: string;\n serial: drivePerfInfo[];\n parallel: drivePerfInfo[];\n error: string;\n}\n\nexport interface drivePerfInfo {\n endpoint: string;\n latency: diskLatency;\n throughput: diskThroughput;\n error: string;\n}\n\nexport interface diskLatency {\n avg_secs: number;\n percentile50_secs: number;\n percentile90_secs: number;\n percentile99_secs: number;\n min_secs: number;\n max_secs: number;\n}\n\nexport interface diskThroughput {\n avg_bytes_per_sec: number;\n percentile50_bytes_per_sec: number;\n percentile90_bytes_per_sec: number;\n percentile99_bytes_per_sec: number;\n min_bytes_per_sec: number;\n max_bytes_per_sec: number;\n}\n\nexport interface serverNetHealthInfo {\n addr: string;\n net: netPerfInfo[];\n error: string;\n}\n\nexport interface netPerfInfo {\n remote: string;\n latency: netLatency;\n throughput: netThroughput;\n error: string;\n}\n\nexport interface netLatency {\n avg_secs: number;\n percentile50_secs: number;\n percentile90_secs: number;\n percentile99_secs: number;\n min_secs: number;\n max_secs: number;\n}\n\nexport interface netThroughput {\n avg_bytes_per_sec: number;\n percentile50_bytes_per_sec: number;\n percentile90_bytes_per_sec: number;\n percentile99_bytes_per_sec: number;\n min_bytes_per_sec: number;\n max_bytes_per_sec: number;\n}\n\nexport interface minioHealthInfo {\n info: infoMessage;\n config: any;\n error: string;\n}\n\nexport interface infoMessage {\n mode: string;\n domain: string[];\n region: string;\n sqsARN: string[];\n deploymentID: string;\n buckets: buckets;\n objects: objects;\n usage: usage;\n services: services;\n backend: any;\n servers: serverProperties[];\n}\n\nexport interface buckets {\n count: number;\n}\n\nexport interface objects {\n count: number;\n}\n\nexport interface usage {\n size: number;\n}\n\nexport interface services {\n vault: vault;\n ldap: ldap;\n logger: Map[];\n audit: Map[];\n notifications: Map[]>;\n}\n\nexport interface vault {\n status: string;\n encrypt: string;\n decrypt: string;\n}\n\nexport interface ldap {\n status: string;\n}\n\nexport interface status {\n status: string;\n}\n\nexport interface serverProperties {\n state: string;\n endpoint: string;\n uptime: number;\n version: string;\n commitID: string;\n network: Map;\n drives: disk[];\n}\n\nexport interface disk {\n endpoint: string;\n rootDisk: boolean;\n path: string;\n healing: boolean;\n state: string;\n uuid: string;\n model: string;\n totalspace: number;\n usedspace: number;\n availspace: number;\n readthroughput: number;\n writethroughput: number;\n readlatency: number;\n writelatency: number;\n utilization: number;\n}\n\nexport interface sysHealthInfo {\n cpus: serverCpuInfo[];\n drives: serverDiskHwInfo[];\n osinfos: serverOsInfo[];\n meminfos: serverMemInfo[];\n procinfos: serverProcInfo[];\n error: string;\n}\n\nexport interface serverCpuInfo {\n addr: string;\n cpu: cpuInfoStat[];\n time: cpuTimeStat[];\n error: string;\n}\n\nexport interface cpuInfoStat {\n cpu: number;\n vendorId: string;\n family: string;\n model: string;\n stepping: number;\n physicalId: string;\n coreId: string;\n cores: number;\n modelName: string;\n mhz: number;\n cacheSize: number;\n flags: string[];\n microcode: string;\n}\n\nexport interface cpuTimeStat {\n cpu: string;\n user: number;\n system: number;\n idle: number;\n nice: number;\n iowait: number;\n irq: number;\n softirq: number;\n steal: number;\n guest: number;\n guestNice: number;\n}\n\nexport interface serverDiskHwInfo {\n addr: string;\n usages: diskUsageStat[];\n partitions: partitionStat[];\n counters: Map;\n error: string;\n}\n\nexport interface diskUsageStat {\n path: string;\n fstype: string;\n total: number;\n free: number;\n used: number;\n usedPercent: number;\n inodesTotal: number;\n inodesUsed: number;\n inodesFree: number;\n inodesUsedPercent: number;\n}\n\nexport interface partitionStat {\n device: string;\n mountpoint: string;\n fstype: string;\n opts: string;\n smartInfo: smartInfo;\n}\n\nexport interface smartInfo {\n device: string;\n scsi: scsiInfo;\n nvme: nvmeInfo;\n ata: ataInfo;\n error: string;\n}\n\nexport interface scsiInfo {\n scsiCapacityBytes: number;\n scsiModeSenseBuf: string;\n scsirespLen: number;\n scsiBdLen: number;\n scsiOffset: number;\n sciRpm: number;\n}\n\nexport interface nvmeInfo {\n serialNum: string;\n vendorId: string;\n firmwareVersion: string;\n modelNum: string;\n spareAvailable: string;\n spareThreshold: string;\n temperature: string;\n criticalWarning: string;\n maxDataTransferPages: number;\n controllerBusyTime: number;\n powerOnHours: number;\n powerCycles: number;\n unsafeShutdowns: number;\n mediaAndDataIntgerityErrors: number;\n dataUnitsReadBytes: number;\n dataUnitsWrittenBytes: number;\n hostReadCommands: number;\n hostWriteCommands: number;\n}\n\nexport interface ataInfo {\n scsiLuWWNDeviceID: string;\n serialNum: string;\n modelNum: string;\n firmwareRevision: string;\n RotationRate: string;\n MajorVersion: string;\n MinorVersion: string;\n smartSupportAvailable: boolean;\n smartSupportEnabled: boolean;\n smartErrorLog: string;\n transport: string;\n}\n\nexport interface diskIOCountersStat {\n readCount: number;\n mergedReadCount: number;\n DriteCount: number;\n mergedWriteCount: number;\n readBytes: number;\n writeBytes: number;\n readTime: number;\n writeTime: number;\n iopsInProgress: number;\n ioTime: number;\n weightedIO: number;\n name: string;\n serialNumber: string;\n label: string;\n}\n\nexport interface serverOsInfo {\n addr: string;\n info: infoStat;\n sensors: temperatureStat[];\n users: userStat[];\n error: string;\n}\n\nexport interface infoStat {\n hostname: string;\n uptime: number;\n bootTime: number;\n procs: number;\n os: string;\n platform: string;\n platformFamily: string;\n platformVersion: string;\n kernelVersion: string;\n kernelArch: string;\n virtualizationSystem: string;\n virtualizationRole: string;\n hostid: string;\n}\n\nexport interface temperatureStat {\n sensorKey: string;\n sensorTemperature: number;\n}\n\nexport interface userStat {\n user: string;\n terminal: string;\n host: string;\n started: number;\n}\n\nexport interface serverMemInfo {\n addr: string;\n swap: swapMemoryStat;\n virtualmem: virtualMemoryStat;\n error: string;\n}\n\nexport interface swapMemoryStat {\n total: number;\n used: number;\n free: number;\n usedPercent: number;\n sin: number;\n sout: number;\n pgin: number;\n pgout: number;\n pgfault: number;\n pgmajfault: number;\n}\n\nexport interface virtualMemoryStat {\n total: number;\n available: number;\n used: number;\n usedPercent: number;\n free: number;\n active: number;\n inactive: number;\n wired: number;\n laundry: number;\n buffers: number;\n cached: number;\n writeback: number;\n dirty: number;\n writebacktmp: number;\n shared: number;\n slab: number;\n sreclaimable: number;\n sunreclaim: number;\n pagetables: number;\n swapcached: number;\n commitlimit: number;\n committedas: number;\n hightotal: number;\n highfree: number;\n lowtotal: number;\n lowfree: number;\n swaptotal: number;\n swapfree: number;\n mapped: number;\n vmalloctotal: number;\n vmallocused: number;\n vmallocchunk: number;\n hugepagestotal: number;\n hugepagesfree: number;\n hugepagesize: number;\n}\n\nexport interface serverProcInfo {\n addr: string;\n processes: sysProcess[];\n error: string;\n}\n\nexport interface sysProcess {\n pid: number;\n background: boolean;\n cpupercent: number;\n children: number[];\n cmd: string;\n connections: nethwConnectionStat[];\n createtime: number;\n cwd: string;\n exe: string;\n gids: number[];\n iocounters: processIOCountersStat;\n isrunning: boolean;\n meminfo: memoryInfoStat;\n memmaps: any[];\n mempercent: number;\n name: string;\n netiocounters: nethwIOCounterStat[];\n nice: number;\n numctxswitches: processNmCtxSwitchesStat;\n numfds: number;\n numthreads: number;\n pagefaults: processPageFaultsStat;\n parent: number;\n ppid: number;\n rlimit: processRLimitStat[];\n status: string;\n tgid: number;\n cputimes: cpuTimeStat;\n uids: number[];\n username: string;\n}\n\nexport interface nethwConnectionStat {\n fd: number;\n family: number;\n type: number;\n localaddr: netAddr;\n remoteaddr: netAddr;\n status: string;\n uids: number[];\n pid: number;\n}\n\nexport interface netAddr {\n ip: string;\n port: number;\n}\n\nexport interface processIOCountersStat {\n readCount: number;\n writeCount: number;\n readBytes: number;\n writeBytes: number;\n}\n\nexport interface memoryInfoStat {\n rss: number;\n vms: number;\n hwm: number;\n data: number;\n stack: number;\n locked: number;\n swap: number;\n}\n\nexport interface nethwIOCounterStat {\n name: string;\n bytesSent: number;\n bytesRecv: number;\n packetsSent: number;\n packetsRecv: number;\n errin: number;\n errout: number;\n dropin: number;\n dropout: number;\n fifoin: number;\n fifoout: number;\n}\n\nexport interface processNmCtxSwitchesStat {\n voluntary: number;\n involuntary: number;\n}\n\nexport interface processPageFaultsStat {\n minorFaults: number;\n majorFaults: number;\n childMinorFaults: number;\n childMajorFaults: number;\n}\n\nexport interface processRLimitStat {\n resource: number;\n soft: number;\n hard: number;\n used: number;\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Grid } from \"@mui/material\";\nimport ArrowForwardIosIcon from \"@mui/icons-material/ArrowForwardIos\";\nimport { DrivesIcon, Loader, VersionIcon } from \"mds\";\nimport { api } from \"api\";\nimport { ServerProperties } from \"api/consoleApi\";\n\ninterface ITestWrapper {\n title: any;\n children: any;\n classes: any;\n advancedVisible: boolean;\n advancedContent?: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n titleBar: {\n borderBottom: \"#E5E5E5 1px solid\",\n padding: \"30px 25px\",\n fontSize: 20,\n color: \"#07193E\",\n fontWeight: \"bold\",\n borderRadius: \"10px 10px 0px 0px\",\n paddingTop: 0,\n },\n divisorContainer: {\n padding: 25,\n },\n serversData: {\n color: \"#07193E\",\n fontSize: 18,\n display: \"flex\",\n alignItems: \"center\",\n \"& svg\": {\n marginRight: 10,\n },\n },\n minioVersionContainer: {\n fontSize: 12,\n color: \"#07193E\",\n justifyContent: \"center\",\n alignSelf: \"center\",\n alignItems: \"center\",\n display: \"flex\",\n },\n versionIcon: {\n color: \"#07193E\",\n marginRight: 20,\n },\n loaderAlign: {\n textAlign: \"center\",\n },\n advancedContainer: {\n justifyContent: \"flex-end\",\n display: \"flex\",\n },\n optionsContainer: {\n padding: 0,\n marginBottom: 25,\n },\n advancedConfiguration: {\n color: \"#2781B0\",\n fontSize: 10,\n textDecoration: \"underline\",\n border: \"none\",\n backgroundColor: \"transparent\",\n cursor: \"pointer\",\n alignItems: \"center\",\n display: \"flex\",\n\n \"&:hover\": {\n color: \"#07193E\",\n },\n\n \"& svg\": {\n width: 10,\n alignSelf: \"center\",\n marginLeft: 5,\n },\n },\n advancedOpen: {\n transform: \"rotateZ(-90deg) translateX(-4px) translateY(2px)\",\n },\n advancedClosed: {\n transform: \"rotateZ(90deg)\",\n },\n advancedContent: {\n backgroundColor: \"#F5F7F9\",\n maxHeight: 0,\n transitionDuration: \"0.3s\",\n overflow: \"hidden\",\n padding: \"0 15px\",\n \"&.open\": {\n maxHeight: 400,\n padding: 15,\n },\n },\n });\n\nconst TestWrapper = ({\n title,\n children,\n classes,\n advancedVisible,\n advancedContent,\n}: ITestWrapper) => {\n const [version, setVersion] = useState(\"N/A\");\n const [totalNodes, setTotalNodes] = useState(0);\n const [totalDrives, setTotalDrives] = useState(0);\n const [loading, setLoading] = useState(true);\n const [advancedOpen, setAdvancedOpen] = useState(false);\n\n useEffect(() => {\n if (loading) {\n api.admin\n .adminInfo({\n defaultOnly: true,\n })\n .then((res) => {\n const totalServers = res.data.servers?.length;\n setTotalNodes(totalServers || 0);\n\n if (res.data.servers && res.data.servers.length > 0) {\n setVersion(res.data.servers[0].version || \"N/A\");\n\n const totalServers = res.data.servers.reduce(\n (prevTotal: number, currentElement: ServerProperties) => {\n let c = currentElement.drives\n ? currentElement.drives.length\n : 0;\n return prevTotal + c;\n },\n 0,\n );\n setTotalDrives(totalServers);\n }\n\n setLoading(false);\n })\n .catch(() => {\n setLoading(false);\n });\n }\n }, [loading]);\n\n return (\n \n \n {title}\n \n \n \n \n {!loading ? (\n \n \n {totalNodes}\n  nodes, \n {totalDrives}  drives\n \n \n \n \n {\" \"}\n MinIO VERSION {version}\n \n \n {advancedVisible && (\n {\n setAdvancedOpen(!advancedOpen);\n }}\n className={classes.advancedConfiguration}\n >\n Advanced configurations{\" \"}\n \n \n \n \n )}\n \n
\n ) : (\n \n \n \n \n \n )}\n \n {advancedContent && (\n \n {advancedContent}\n \n )}\n \n {children}\n \n \n );\n};\n\nexport default withStyles(styles)(TestWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { Fragment, useEffect, useState } from \"react\";\n\nimport {\n ICloseEvent,\n IMessageEvent,\n w3cwebsocket as W3CWebSocket,\n} from \"websocket\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { useSelector } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport { Box, Button, Grid, HelpBox, InfoIcon, Loader, PageLayout } from \"mds\";\nimport {\n DiagStatError,\n DiagStatInProgress,\n DiagStatSuccess,\n HealthInfoMessage,\n ReportMessage,\n} from \"./types\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n WSCloseAbnormalClosure,\n WSCloseInternalServerErr,\n WSClosePolicyViolation,\n wsProtocol,\n} from \"../../../utils/wsUtils\";\nimport {\n actionsTray,\n containerForHeader,\n} from \"../Common/FormComponents/common/styleLibrary\";\n\nimport TestWrapper from \"../Common/TestWrapper/TestWrapper\";\nimport { setHelpName, setServerDiagStat } from \"../../../systemSlice\";\nimport {\n healthInfoMessageReceived,\n healthInfoResetMessage,\n} from \"./healthInfoSlice\";\nimport RegisterCluster from \"../Support/RegisterCluster\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport { registeredCluster } from \"../../../config\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n loading: {\n paddingTop: 8,\n paddingLeft: 40,\n },\n buttons: {\n justifyContent: \"flex-start\",\n gap: 20,\n },\n localMessage: {\n fontSize: 24,\n color: \"#07193E\",\n fontWeight: \"bold\",\n textAlign: \"center\",\n marginBottom: 20,\n },\n progressResult: {\n textAlign: \"center\",\n marginBottom: 25,\n },\n startDiagnostic: {\n display: \"flex\",\n justifyContent: \"flex-end\",\n margin: 25,\n marginBottom: 0,\n },\n startDiagnosticCenter: {\n textAlign: \"center\",\n marginTop: 0,\n },\n ...actionsTray,\n ...containerForHeader,\n });\n\ninterface IHealthInfo {\n classes: any;\n}\n\nconst HealthInfo = ({ classes }: IHealthInfo) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const message = useSelector((state: AppState) => state.healthInfo.message);\n\n const serverDiagnosticStatus = useSelector(\n (state: AppState) => state.system.serverDiagnosticStatus,\n );\n const [startDiagnostic, setStartDiagnostic] = useState(false);\n\n const [downloadDisabled, setDownloadDisabled] = useState(true);\n const [localMessage, setMessage] = useState(\"\");\n const [buttonStartText, setButtonStartText] =\n useState(\"Start Diagnostic\");\n const [title, setTitle] = useState(\"New Diagnostic\");\n const [diagFileContent, setDiagFileContent] = useState(\"\");\n const [subnetResponse, setSubnetResponse] = useState(\"\");\n const clusterRegistered = registeredCluster();\n\n const download = () => {\n let element = document.createElement(\"a\");\n element.setAttribute(\n \"href\",\n `data:application/gzip;base64,${diagFileContent}`,\n );\n element.setAttribute(\"download\", \"diagnostic.json.gz\");\n\n element.style.display = \"none\";\n document.body.appendChild(element);\n\n element.click();\n\n document.body.removeChild(element);\n };\n\n useEffect(() => {\n if (serverDiagnosticStatus === DiagStatInProgress) {\n setTitle(\"Diagnostic in progress...\");\n setMessage(\n \"Diagnostic started. Please do not refresh page during diagnosis.\",\n );\n return;\n }\n\n if (serverDiagnosticStatus === DiagStatSuccess) {\n setTitle(\"Diagnostic complete\");\n setMessage(\"Diagnostic file is ready to be downloaded.\");\n setButtonStartText(\"Start New Diagnostic\");\n return;\n }\n\n if (serverDiagnosticStatus === DiagStatError) {\n setTitle(\"Error\");\n setMessage(\"An error occurred while getting the Diagnostic file.\");\n setButtonStartText(\"Retry Diagnostic\");\n return;\n }\n }, [serverDiagnosticStatus, startDiagnostic]);\n\n useEffect(() => {\n if (\n serverDiagnosticStatus === DiagStatSuccess &&\n message !== ({} as HealthInfoMessage)\n ) {\n // Allow download of diagnostics file only when\n // it succeded fetching all the results and info is not empty.\n setDownloadDisabled(false);\n }\n if (serverDiagnosticStatus === DiagStatInProgress) {\n // Disable Start Diagnotic and Disable Download buttons\n // if a Diagnosis is in progress.\n setDownloadDisabled(true);\n }\n setStartDiagnostic(false);\n }, [serverDiagnosticStatus, message]);\n\n useEffect(() => {\n if (startDiagnostic) {\n dispatch(healthInfoResetMessage());\n setDiagFileContent(\"\");\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n\n // check if we are using base path, if not this always is `/`\n const baseLocation = new URL(document.baseURI);\n const baseUrl = baseLocation.pathname;\n\n const c = new W3CWebSocket(\n `${wsProt}://${url.hostname}:${port}${baseUrl}ws/health-info?deadline=1h`,\n );\n let interval: any | null = null;\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n c.send(\"ok\");\n interval = setInterval(() => {\n c.send(\"ok\");\n }, 10 * 1000);\n setMessage(\n \"Diagnostic started. Please do not refresh page during diagnosis.\",\n );\n dispatch(setServerDiagStat(DiagStatInProgress));\n };\n c.onmessage = (message: IMessageEvent) => {\n let m: ReportMessage = JSON.parse(message.data.toString());\n if (m.serverHealthInfo) {\n m.serverHealthInfo.timestamp = new Date(\n m.serverHealthInfo.timestamp.toString(),\n );\n dispatch(healthInfoMessageReceived(m.serverHealthInfo));\n }\n if (m.encoded !== \"\") {\n setDiagFileContent(m.encoded);\n }\n if (m.subnetResponse) {\n setSubnetResponse(m.subnetResponse);\n }\n };\n c.onerror = (error: Error) => {\n console.log(\"error closing websocket:\", error.message);\n c.close(1000);\n clearInterval(interval);\n dispatch(setServerDiagStat(DiagStatError));\n };\n c.onclose = (event: ICloseEvent) => {\n clearInterval(interval);\n if (\n event.code === WSCloseInternalServerErr ||\n event.code === WSClosePolicyViolation ||\n event.code === WSCloseAbnormalClosure\n ) {\n // handle close with error\n console.log(\"connection closed by server with code:\", event.code);\n setMessage(\"An error occurred while getting the Diagnostic file.\");\n dispatch(setServerDiagStat(DiagStatError));\n } else {\n console.log(\"connection closed by server\");\n\n setMessage(\"Diagnostic file is ready to be downloaded.\");\n dispatch(setServerDiagStat(DiagStatSuccess));\n }\n };\n }\n } else {\n // reset start status\n setStartDiagnostic(false);\n }\n }, [startDiagnostic, dispatch]);\n\n const startDiagnosticAction = () => {\n if (!clusterRegistered) {\n navigate(\"/support/register\");\n return;\n }\n setStartDiagnostic(true);\n };\n\n useEffect(() => {\n dispatch(setHelpName(\"health_info\"));\n }, [dispatch]);\n\n return (\n \n } />\n\n \n {!clusterRegistered && }\n \n \n \n \n
{localMessage}
\n
\n {\" \"}\n {subnetResponse !== \"\" &&\n !subnetResponse.toLowerCase().includes(\"error\") && (\n \n \n Health report uploaded to Subnet successfully!\n \n  {\" \"}\n \n See the results on your{\" \"}\n Subnet Dashboard{\" \"}\n \n \n )}\n {(subnetResponse === \"\" ||\n subnetResponse.toLowerCase().includes(\"error\")) &&\n serverDiagnosticStatus === DiagStatSuccess && (\n \n \n Something went wrong uploading your Health report to\n Subnet.\n \n  {\" \"}\n \n Log into your{\" \"}\n Subnet Account to\n manually upload your Health report.\n \n \n )}\n
\n {serverDiagnosticStatus === DiagStatInProgress ? (\n
\n \n
\n ) : (\n \n \n \n {serverDiagnosticStatus !== DiagStatError &&\n !downloadDisabled && (\n download()}\n disabled={downloadDisabled}\n label={\"Download\"}\n />\n )}\n \n \n \n \n \n \n )}\n
\n
\n \n \n {!startDiagnostic && clusterRegistered && (\n \n
\n }\n help={\"\"}\n />\n
\n )}\n
\n
\n );\n};\n\nexport default withStyles(styles)(HealthInfo);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { Box } from \"@mui/material\";\nimport { Button, Grid, HelpBox, WarnIcon } from \"mds\";\n\ninterface IRegisterCluster {\n compactMode?: boolean;\n}\n\nconst RegisterCluster = ({ compactMode = false }: IRegisterCluster) => {\n const navigate = useNavigate();\n\n const redirectButton = (\n navigate(\"/support/register\")}\n >\n Register your Cluster\n \n );\n\n const registerMessage =\n \"Use your MinIO Subscription Network login credentials to register this cluster.\";\n\n if (compactMode) {\n return (\n \n \n \n {registerMessage} {redirectButton}\n \n }\n iconComponent={}\n help={}\n />\n \n
\n
\n );\n }\n\n return (\n \n \n \n \n Register your cluster\n \n \n \n \n \n \n {registerMessage}\n \n \n \n {redirectButton}\n \n \n \n \n \n \n \n );\n};\n\nexport default RegisterCluster;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\n// Close codes for websockets defined in RFC 6455\nexport const WSCloseAbnormalClosure = 1006;\nexport const WSClosePolicyViolation = 1008;\nexport const WSCloseInternalServerErr = 1011;\n\nexport const wsProtocol = (protocol: string): string => {\n let wsProtocol = \"ws\";\n if (protocol === \"https:\") {\n wsProtocol = \"wss\";\n }\n return wsProtocol;\n};\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M6.23 20.23 8 22l10-10L8 2 6.23 3.77 14.46 12z\"\n}), 'ArrowForwardIos');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","var naiveFallback = function () {\n\tif (typeof self === \"object\" && self) return self;\n\tif (typeof window === \"object\" && window) return window;\n\tthrow new Error(\"Unable to resolve global `this`\");\n};\n\nmodule.exports = (function () {\n\tif (this) return this;\n\n\t// Unexpected strict mode (may happen if e.g. bundled into ESM module)\n\n\t// Fallback to standard globalThis if available\n\tif (typeof globalThis === \"object\" && globalThis) return globalThis;\n\n\t// Thanks @mathiasbynens -> https://mathiasbynens.be/notes/globalthis\n\t// In all ES5+ engines global object inherits from Object.prototype\n\t// (if you approached one that doesn't please report)\n\ttry {\n\t\tObject.defineProperty(Object.prototype, \"__global__\", {\n\t\t\tget: function () { return this; },\n\t\t\tconfigurable: true\n\t\t});\n\t} catch (error) {\n\t\t// Unfortunate case of updates to Object.prototype being restricted\n\t\t// via preventExtensions, seal or freeze\n\t\treturn naiveFallback();\n\t}\n\ttry {\n\t\t// Safari case (window.__global__ works, but __global__ does not)\n\t\tif (!__global__) return naiveFallback();\n\t\treturn __global__;\n\t} finally {\n\t\tdelete Object.prototype.__global__;\n\t}\n})();\n","var _globalThis;\nif (typeof globalThis === 'object') {\n\t_globalThis = globalThis;\n} else {\n\ttry {\n\t\t_globalThis = require('es5-ext/global');\n\t} catch (error) {\n\t} finally {\n\t\tif (!_globalThis && typeof window !== 'undefined') { _globalThis = window; }\n\t\tif (!_globalThis) { throw new Error('Could not determine global this'); }\n\t}\n}\n\nvar NativeWebSocket = _globalThis.WebSocket || _globalThis.MozWebSocket;\nvar websocket_version = require('./version');\n\n\n/**\n * Expose a W3C WebSocket class with just one or two arguments.\n */\nfunction W3CWebSocket(uri, protocols) {\n\tvar native_instance;\n\n\tif (protocols) {\n\t\tnative_instance = new NativeWebSocket(uri, protocols);\n\t}\n\telse {\n\t\tnative_instance = new NativeWebSocket(uri);\n\t}\n\n\t/**\n\t * 'native_instance' is an instance of nativeWebSocket (the browser's WebSocket\n\t * class). Since it is an Object it will be returned as it is when creating an\n\t * instance of W3CWebSocket via 'new W3CWebSocket()'.\n\t *\n\t * ECMAScript 5: http://bclary.com/2004/11/07/#a-13.2.2\n\t */\n\treturn native_instance;\n}\nif (NativeWebSocket) {\n\t['CONNECTING', 'OPEN', 'CLOSING', 'CLOSED'].forEach(function(prop) {\n\t\tObject.defineProperty(W3CWebSocket, prop, {\n\t\t\tget: function() { return NativeWebSocket[prop]; }\n\t\t});\n\t});\n}\n\n/**\n * Module exports.\n */\nmodule.exports = {\n 'w3cwebsocket' : NativeWebSocket ? W3CWebSocket : null,\n 'version' : websocket_version\n};\n","module.exports = require('../package.json').version;\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["DiagStatError","DiagStatSuccess","DiagStatInProgress","withStyles","theme","createStyles","titleBar","borderBottom","padding","fontSize","color","fontWeight","borderRadius","paddingTop","divisorContainer","serversData","display","alignItems","marginRight","minioVersionContainer","justifyContent","alignSelf","versionIcon","loaderAlign","textAlign","advancedContainer","optionsContainer","marginBottom","advancedConfiguration","textDecoration","border","backgroundColor","cursor","width","marginLeft","advancedOpen","transform","advancedClosed","advancedContent","maxHeight","transitionDuration","overflow","_ref","title","children","classes","advancedVisible","_useState","useState","_useState2","_slicedToArray","version","setVersion","_useState3","_useState4","totalNodes","setTotalNodes","_useState5","_useState6","totalDrives","setTotalDrives","_useState7","_useState8","loading","setLoading","_useState9","_useState10","setAdvancedOpen","useEffect","api","admin","adminInfo","defaultOnly","then","res","_res$data$servers","totalServers","data","servers","length","reduce","prevTotal","currentElement","drives","catch","_jsxs","Grid","item","xs","_jsx","className","container","Fragment","Loader","style","height","md","DrivesIcon","VersionIcon","onClick","ArrowForwardIosIcon","concat","_objectSpread","paddingLeft","buttons","gap","localMessage","progressResult","startDiagnostic","margin","startDiagnosticCenter","marginTop","actionsTray","containerForHeader","dispatch","useAppDispatch","navigate","useNavigate","message","useSelector","state","healthInfo","serverDiagnosticStatus","system","setStartDiagnostic","downloadDisabled","setDownloadDisabled","setMessage","buttonStartText","setButtonStartText","setTitle","_useState11","_useState12","diagFileContent","setDiagFileContent","_useState13","_useState14","subnetResponse","setSubnetResponse","clusterRegistered","registeredCluster","healthInfoResetMessage","url","URL","window","location","toString","port","wsProt","wsProtocol","protocol","baseUrl","document","baseURI","pathname","c","W3CWebSocket","hostname","interval","onopen","console","log","send","setInterval","setServerDiagStat","onmessage","m","JSON","parse","serverHealthInfo","timestamp","Date","healthInfoMessageReceived","encoded","onerror","error","close","clearInterval","onclose","event","code","WSCloseInternalServerErr","WSClosePolicyViolation","WSCloseAbnormalClosure","setHelpName","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","RegisterCluster","compactMode","boxy","TestWrapper","toLowerCase","includes","href","Box","sx","Button","id","type","variant","element","createElement","setAttribute","body","appendChild","click","removeChild","download","disabled","HelpBox","iconComponent","InfoIcon","help","_ref$compactMode","redirectButton","registerMessage","flexGrow","WarnIcon","flexFlow","sm","flex","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","createChainedFunction","validator","reason","componentNameInError","Component","props","propName","componentName","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","muiNames","React","indexOf","muiName","_len","arguments","funcs","Array","_key","acc","func","_len2","args","_key2","apply","this","naiveFallback","self","Error","module","globalThis","prototype","configurable","__global__","_globalThis","NativeWebSocket","WebSocket","MozWebSocket","websocket_version","uri","protocols","forEach","prop","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/51.2c941d38.chunk.js b/portal-ui/build/static/js/51.2c941d38.chunk.js deleted file mode 100644 index ac1fea108..000000000 --- a/portal-ui/build/static/js/51.2c941d38.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[51],{51:function(e,n,t){t.r(n),t.d(n,{default:function(){return K}});var i=t(29439),r=t(1413),a=t(72791),o=t(78687),s=t(11135),l=t(25787),c=t(26181),d=t.n(c),u=t(61889),x=t(29945),p=t(23814),h=t(89673),f=t(55818),m=t(20890),v=t(3721),Z=t(40986),j=t(56028),b=t(21435),g=t(81159),y=t(17420),_=t(90673),C=t(83679),S=t(87995),F=t(81551),P=t(31776),k=t(80184),N=(0,l.Z)((function(e){return(0,s.Z)((0,r.Z)((0,r.Z)((0,r.Z)((0,r.Z)({formFieldRowAccordion:{"& .MuiPaper-root":{padding:0}}},p.bK),p.ID),p.DF),p.QV))}))((function(e){var n,t,o,s,l,c=e.classes,p=e.closeModalAndRefresh,N=e.selectedBucket,I=e.lifecycleRule,L=e.open,T=(0,F.TL)(),E=(0,a.useState)(!0),O=(0,i.Z)(E,2),A=O[0],R=O[1],w=(0,a.useState)(!1),B=(0,i.Z)(w,2),V=B[0],D=B[1],z=(0,a.useState)(""),M=(0,i.Z)(z,2),K=M[0],H=M[1],W=(0,a.useState)(!1),Y=(0,i.Z)(W,2),U=Y[0],G=Y[1],q=(0,a.useState)([]),Q=(0,i.Z)(q,2),$=Q[0],X=Q[1],J=(0,a.useState)(""),ee=(0,i.Z)(J,2),ne=ee[0],te=ee[1],ie=(0,a.useState)(""),re=(0,i.Z)(ie,2),ae=re[0],oe=re[1],se=(0,a.useState)(""),le=(0,i.Z)(se,2),ce=le[0],de=le[1],ue=(0,a.useState)(!1),xe=(0,i.Z)(ue,2),pe=xe[0],he=xe[1],fe=(0,a.useState)("0"),me=(0,i.Z)(fe,2),ve=me[0],Ze=me[1],je=(0,a.useState)("0"),be=(0,i.Z)(je,2),ge=be[0],ye=be[1],_e=(0,a.useState)("expiry"),Ce=(0,i.Z)(_e,2),Se=Ce[0],Fe=Ce[1],Pe=(0,a.useState)("0"),ke=(0,i.Z)(Pe,2),Ne=ke[0],Ie=ke[1],Le=(0,a.useState)("0"),Te=(0,i.Z)(Le,2),Ee=Te[0],Oe=Te[1],Ae=(0,a.useState)(!1),Re=(0,i.Z)(Ae,2),we=Re[0],Be=Re[1];(0,a.useEffect)((function(){A&&P.h.admin.tiersList().then((function(e){var n=d()(e.data,"items",[]);if(null!==n&&n.length>=1){var t=n.map((function(e){var n=e.type,t=d()(e,"".concat(n,".name"),"");return{label:t,value:t}}));X(t),t.length>0&&oe(t[0].value)}R(!1)})).catch((function(){R(!1)}))}),[A]),(0,a.useEffect)((function(){var e=!0;"expiry"!==Se&&""===ae&&(e=!1),Be(e)}),[Se,Ne,Ee,ae]),(0,a.useEffect)((function(){var e;"Enabled"===I.status&&G(!0);var n,t,i,r,a,o,s=!1;(I.transition&&(I.transition.days&&0!==I.transition.days&&(Oe(I.transition.days.toString()),Fe("transition"),s=!0),I.transition.noncurrent_transition_days&&0!==I.transition.noncurrent_transition_days&&(ye(I.transition.noncurrent_transition_days.toString()),Fe("transition"),s=!0),I.transition.date&&"0001-01-01T00:00:00Z"!==I.transition.date&&(Fe("transition"),s=!0)),I.expiration&&(I.expiration.days&&0!==I.expiration.days&&(Ie(I.expiration.days.toString()),Fe("expiry"),s=!1),I.expiration.noncurrent_expiration_days&&0!==I.expiration.noncurrent_expiration_days&&(Ze(I.expiration.noncurrent_expiration_days.toString()),Fe("expiry"),s=!1),I.expiration.date&&"0001-01-01T00:00:00Z"!==I.expiration.date&&(Fe("expiry"),s=!1)),s)?(oe((null===(n=I.transition)||void 0===n?void 0:n.storage_class)||""),ye((null===(t=I.transition)||void 0===t||null===(i=t.noncurrent_transition_days)||void 0===i?void 0:i.toString())||"0"),de((null===(r=I.transition)||void 0===r?void 0:r.noncurrent_storage_class)||"")):Ze((null===(a=I.expiration)||void 0===a||null===(o=a.noncurrent_expiration_days)||void 0===o?void 0:o.toString())||"0");if(he(!(null===(e=I.expiration)||void 0===e||!e.delete_marker)),te(I.prefix||""),I.tags){var l=I.tags.reduce((function(e,n,t){return"".concat(e).concat(0!==t?"&":"").concat(n.key,"=").concat(n.value)}),"");H(l)}}),[I]);var Ve="";return I.expiration&&(I.expiration.days>0?Ve="Current Version":I.expiration.noncurrent_expiration_days&&(Ve="Non-Current Version")),I.transition&&(I.transition.days>0?Ve="Current Version":I.transition.noncurrent_transition_days&&(Ve="Non-Current Version")),(0,k.jsx)(j.Z,{onClose:function(){p(!1)},modalOpen:L,title:"Edit Lifecycle Configuration",titleIcon:(0,k.jsx)(x.QIv,{}),children:(0,k.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){if(e.preventDefault(),!V&&(D(!0),null!==N&&null!==I)){var n={};if("expiry"===Se){var t,i,a,o={};null!==(t=I.expiration)&&void 0!==t&&t.days&&(null===(i=I.expiration)||void 0===i?void 0:i.days)>0&&(o.expiry_days=parseInt(Ne)),null!==(a=I.expiration)&&void 0!==a&&a.noncurrent_expiration_days&&(o.noncurrentversion_expiration_days=parseInt(ve)),n=(0,r.Z)({},o)}else{var s,l,c,d={};null!==(s=I.expiration)&&void 0!==s&&s.days&&(null===(l=I.expiration)||void 0===l?void 0:l.days)>0&&(d.transition_days=parseInt(Ne),d.storage_class=ae),null!==(c=I.expiration)&&void 0!==c&&c.noncurrent_expiration_days&&(d.noncurrentversion_transition_days=parseInt(ve),d.noncurrentversion_transition_storage_class=ce),n=(0,r.Z)({},d)}var u=(0,r.Z)({type:Se,disable:!U,prefix:ne,tags:K,expired_object_delete_marker:pe},n);P.h.buckets.updateBucketLifecycle(N,I.id,u).then((function(e){D(!1),p(!0)})).catch((function(e){D(!1),T((0,S.zb)(e))}))}}(e)},children:(0,k.jsxs)(u.ZP,{container:!0,children:[(0,k.jsx)(u.ZP,{item:!0,xs:12,className:c.formScrollable,children:(0,k.jsxs)(u.ZP,{container:!0,spacing:1,children:[(0,k.jsx)(u.ZP,{item:!0,xs:12,sx:{marginTop:"5px"},children:(0,k.jsx)(g.Z,{label:"Status",indicatorLabels:["Enabled","Disabled"],checked:U,value:"user_enabled",id:"rule_status",name:"rule_status",onChange:function(e){G(e.target.checked)}})}),(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(b.Z,{id:"id",name:"id",label:"Id",value:I.id,onChange:function(){},disabled:!0})}),(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(C.Z,{currentSelection:Se,id:"rule_type",name:"rule_type",label:"Rule Type",selectorOptions:[{value:"expiry",label:"Expiry"},{value:"transition",label:"Transition"}],onChange:function(){},disableOptions:!0})}),(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(b.Z,{id:"object-version",name:"object-version",label:"Object Version",value:Ve,onChange:function(){},disabled:!0})}),"expiry"===Se&&(null===(n=I.expiration)||void 0===n?void 0:n.days)&&(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(b.Z,{type:"number",id:"expiry_days",name:"expiry_days",onChange:function(e){Ie(e.target.value)},label:"Expiry Days",value:Ne,min:"0"})}),"expiry"===Se&&(null===(t=I.expiration)||void 0===t?void 0:t.noncurrent_expiration_days)&&(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(b.Z,{type:"number",id:"noncurrentversion_expiration_days",name:"noncurrentversion_expiration_days",onChange:function(e){Ze(e.target.value)},label:"Non-current Expiration Days",value:ve,min:"0"})}),"transition"===Se&&(null===(o=I.transition)||void 0===o?void 0:o.days)&&(0,k.jsxs)(a.Fragment,{children:[(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(b.Z,{type:"number",id:"transition_days",name:"transition_days",onChange:function(e){Oe(e.target.value)},label:"Transition Days",value:Ee,min:"0"})}),(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(_.Z,{label:"Storage Class",id:"storage_class",name:"storage_class",value:ae,onChange:function(e){oe(e.target.value)},options:$})})]}),"transition"===Se&&(null===(s=I.transition)||void 0===s?void 0:s.noncurrent_transition_days)&&(0,k.jsxs)(a.Fragment,{children:[(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(b.Z,{type:"number",id:"noncurrentversion_transition_days",name:"noncurrentversion_transition_days",onChange:function(e){ye(e.target.value)},label:"Non-current Transition Days",value:ge,min:"0"})}),(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(b.Z,{id:"noncurrentversion_t_SC",name:"noncurrentversion_t_SC",onChange:function(e){de(e.target.value)},placeholder:"Set Non-current Version Transition Storage Class",label:"Non-current Version Transition Storage Class",value:ce})})]}),(0,k.jsx)(u.ZP,{item:!0,xs:12,className:c.formFieldRowAccordion,children:(0,k.jsxs)(h.Z,{children:[(0,k.jsx)(f.Z,{children:(0,k.jsx)(m.Z,{children:"Filters"})}),(0,k.jsxs)(v.Z,{children:[(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(b.Z,{id:"prefix",name:"prefix",onChange:function(e){te(e.target.value)},label:"Prefix",value:ne})}),(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(y.Z,{name:"tags",label:"Tags",elements:K,onChange:function(e){H(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})})]})]})}),"expiry"===Se&&(null===(l=I.expiration)||void 0===l?void 0:l.noncurrent_expiration_days)&&(0,k.jsx)(u.ZP,{item:!0,xs:12,className:c.formFieldRowAccordion,children:(0,k.jsxs)(h.Z,{children:[(0,k.jsx)(f.Z,{children:(0,k.jsx)(m.Z,{children:"Advanced"})}),(0,k.jsx)(v.Z,{children:(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(g.Z,{value:"expired_delete_marker",id:"expired_delete_marker",name:"expired_delete_marker",checked:pe,onChange:function(e){he(e.target.checked)},label:"Expired Object Delete Marker"})})})]})})]})}),(0,k.jsxs)(u.ZP,{item:!0,xs:12,className:c.modalButtonBar,children:[(0,k.jsx)(x.zxk,{id:"cancel",type:"button",variant:"regular",disabled:V,onClick:function(){p(!1)},label:"Cancel"}),(0,k.jsx)(x.zxk,{id:"save",type:"submit",variant:"callAction",color:"primary",disabled:V||!we,label:"Save"})]}),V&&(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(Z.Z,{})})]})})})})),I=t(84741),L=t(82342),T=(0,l.Z)((function(e){return(0,s.Z)((0,r.Z)((0,r.Z)((0,r.Z)((0,r.Z)({formFieldRowFilter:{"& .MuiPaper-root":{padding:0}}},p.bK),p.ID),p.DF),p.QV))}))((function(e){var n=e.open,t=e.closeModalAndRefresh,s=e.classes,l=e.bucketName,c=(0,F.TL)(),p=(0,o.v9)(S.N5),N=(0,a.useState)(!0),T=(0,i.Z)(N,2),E=T[0],O=T[1],A=(0,a.useState)([]),R=(0,i.Z)(A,2),w=R[0],B=R[1],V=(0,a.useState)(!1),D=(0,i.Z)(V,2),z=D[0],M=D[1],K=(0,a.useState)(null),H=(0,i.Z)(K,2),W=H[0],Y=H[1],U=(0,a.useState)(""),G=(0,i.Z)(U,2),q=G[0],Q=G[1],$=(0,a.useState)(""),X=(0,i.Z)($,2),J=X[0],ee=X[1],ne=(0,a.useState)(""),te=(0,i.Z)(ne,2),ie=te[0],re=te[1],ae=(0,a.useState)("expiry"),oe=(0,i.Z)(ae,2),se=oe[0],le=oe[1],ce=(0,a.useState)("current"),de=(0,i.Z)(ce,2),ue=de[0],xe=de[1],pe=(0,a.useState)(""),he=(0,i.Z)(pe,2),fe=he[0],me=he[1],ve=(0,a.useState)(!1),Ze=(0,i.Z)(ve,2),je=Ze[0],be=Ze[1],ge=(0,a.useState)(!1),ye=(0,i.Z)(ge,2),_e=ye[0],Ce=ye[1],Se=(0,a.useState)(!0),Fe=(0,i.Z)(Se,2),Pe=Fe[0],ke=Fe[1];(0,a.useEffect)((function(){E&&P.h.admin.tiersList().then((function(e){var n=d()(e.data,"items",[]);if(null!==n&&n.length>=1){var t=n.map((function(e){var n=e.type,t=d()(e,"".concat(n,".name"),"");return{label:t,value:t}}));B(t),t.length>0&&re(t[0].value)}O(!1)})).catch((function(){O(!1)}))}),[E]),(0,a.useEffect)((function(){var e=!0;"expiry"!==se&&""===ie&&(e=!1),be(e)}),[se,fe,ie]),(0,a.useEffect)((function(){Pe&&p&&P.h.buckets.getBucketVersioning(l).then((function(e){Y(e.data),ke(!1)})).catch((function(e){c((0,S.zb)((0,L.g)(e))),ke(!1)}))}),[Pe,c,l,p]);return(0,k.jsxs)(j.Z,{modalOpen:n,onClose:function(){t(!1)},title:"Add Lifecycle Rule",titleIcon:(0,k.jsx)(x.QIv,{}),children:[E&&(0,k.jsx)(u.ZP,{container:!0,className:s.loadingBox,children:(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(Z.Z,{})})}),!E&&(0,k.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),M(!0),function(){var e={};if("expiry"===se){var n={};"current"===ue?n.expiry_days=parseInt(fe):n.noncurrentversion_expiration_days=parseInt(fe),e=(0,r.Z)({},n)}else{var i={};"current"===ue?(i.transition_days=parseInt(fe),i.storage_class=ie):(i.noncurrentversion_transition_days=parseInt(fe),i.noncurrentversion_transition_storage_class=ie),e=(0,r.Z)({},i)}var a=(0,r.Z)({type:se,prefix:q,tags:J,expired_object_delete_marker:_e},e);P.h.buckets.addBucketLifecycle(l,a).then((function(){M(!1),t(!0)})).catch((function(e){M(!1),c((0,S.zb)((0,L.g)(e)))}))}()},children:(0,k.jsxs)(u.ZP,{container:!0,children:[(0,k.jsx)(u.ZP,{item:!0,xs:12,className:s.formScrollable,children:(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsxs)(u.ZP,{container:!0,spacing:1,children:[(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(C.Z,{currentSelection:se,id:"ilm_type",name:"ilm_type",label:"Type of lifecycle",onChange:function(e){le(e.target.value)},selectorOptions:[{value:"expiry",label:"Expiry"},{value:"transition",label:"Transition"}]})}),"Enabled"===(null===W||void 0===W?void 0:W.status)&&(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(_.Z,{value:ue,id:"object_version",name:"object_version",label:"Object Version",onChange:function(e){xe(e.target.value)},options:[{value:"current",label:"Current Version"},{value:"noncurrent",label:"Non-Current Version"}]})}),(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(b.Z,{id:"expiry_days",name:"expiry_days",onChange:function(e){e.target.validity.valid&&me(e.target.value)},pattern:"[0-9]*",label:"After",value:fe,overlayObject:(0,k.jsx)(I.Z,{id:"expire-current-unit",unitSelected:"days",unitsList:[{label:"Days",value:"days"}],disabled:!0})})}),"expiry"===se?(0,k.jsx)(a.Fragment,{}):(0,k.jsx)(a.Fragment,{children:(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(_.Z,{label:"To Tier",id:"storage_class",name:"storage_class",value:ie,onChange:function(e){re(e.target.value)},options:w})})}),(0,k.jsx)(u.ZP,{item:!0,xs:12,className:s.formFieldRowFilter,children:(0,k.jsxs)(h.Z,{children:[(0,k.jsx)(f.Z,{children:(0,k.jsx)(m.Z,{children:"Filters"})}),(0,k.jsxs)(v.Z,{children:[(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(b.Z,{id:"prefix",name:"prefix",onChange:function(e){Q(e.target.value)},label:"Prefix",value:q})}),(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(y.Z,{name:"tags",label:"Tags",elements:"",onChange:function(e){ee(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})})]})]})}),"expiry"===se&&"noncurrent"===ue&&(0,k.jsx)(u.ZP,{item:!0,xs:12,className:s.formFieldRowFilter,children:(0,k.jsxs)(h.Z,{children:[(0,k.jsx)(f.Z,{children:(0,k.jsx)(m.Z,{children:"Advanced"})}),(0,k.jsx)(v.Z,{children:(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(g.Z,{value:"expired_delete_marker",id:"expired_delete_marker",name:"expired_delete_marker",checked:_e,onChange:function(e){Ce(e.target.checked)},label:"Expire Delete Marker",description:"Remove the reference to the object if no versions are left"})})})]})})]})})}),(0,k.jsxs)(u.ZP,{item:!0,xs:12,className:s.modalButtonBar,children:[(0,k.jsx)(x.zxk,{id:"reset",type:"button",variant:"regular",disabled:z,onClick:function(){t(!1)},label:"Cancel"}),(0,k.jsx)(x.zxk,{id:"save-lifecycle",type:"submit",variant:"callAction",color:"primary",disabled:z||!je,label:"Save"})]}),z&&(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(Z.Z,{})})]})})]})})),E=t(92983),O=t(60680),A=t(38442),R=t(56087),w=t(51691),B=t(23508),V=(0,l.Z)((function(e){return(0,s.Z)((0,r.Z)({},p.oO))}))((function(e){var n=e.onCloseAndRefresh,t=e.deleteOpen,r=e.bucket,o=e.id,s=(0,F.TL)(),l=(0,a.useState)(!1),c=(0,i.Z)(l,2),d=c[0],u=c[1];(0,a.useEffect)((function(){d&&P.h.buckets.deleteBucketLifecycleRule(r,o).then((function(){u(!1),n(!0)})).catch((function(e){u(!1),s((0,S.Ih)((0,L.g)(e.error)))}))}),[d,r,o,n,s]);return(0,k.jsx)(B.Z,{title:"Delete Lifecycle Rule",confirmText:"Delete",isOpen:t,isLoading:d,onConfirm:function(){u(!0)},titleIcon:(0,k.jsx)(x.NvT,{}),onClose:function(){return n(!1)},confirmationContent:(0,k.jsxs)(w.Z,{children:["Are you sure you want to delete the ",(0,k.jsx)("strong",{children:o})," rule?"]})})})),D=t(9859),z=t(57689),M=t(27454),K=(0,l.Z)((function(e){return(0,s.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},p.qg),p.OR),{},{twHeight:{minHeight:400}}))}))((function(e){var n=e.classes,t=(0,o.v9)(D.HQ),r=(0,z.UO)(),s=(0,a.useState)(!0),l=(0,i.Z)(s,2),c=l[0],p=l[1],h=(0,a.useState)([]),f=(0,i.Z)(h,2),m=f[0],v=f[1],Z=(0,a.useState)(!1),j=(0,i.Z)(Z,2),b=j[0],g=j[1],y=(0,a.useState)(!1),_=(0,i.Z)(y,2),C=_[0],I=_[1],L=(0,a.useState)(null),w=(0,i.Z)(L,2),B=w[0],K=w[1],H=(0,a.useState)(!1),W=(0,i.Z)(H,2),Y=W[0],U=W[1],G=(0,a.useState)(null),q=(0,i.Z)(G,2),Q=q[0],$=q[1],X=(0,F.TL)(),J=r.bucketName||"",ee=(0,A.F)(J,[R.Ft.S3_GET_LIFECYCLE_CONFIGURATION,R.Ft.S3_GET_ACTIONS]);(0,a.useEffect)((function(){t&&p(!0)}),[t,p]),(0,a.useEffect)((function(){X((0,S.Sc)("bucket_detail_lifecycle"))}),[]),(0,a.useEffect)((function(){c&&(ee?P.h.buckets.getBucketLifecycle(J).then((function(e){var n=d()(e.data,"lifecycle",[]);v(n||[]),p(!1)})).catch((function(e){console.error(e.error),v([]),p(!1)})):p(!1))}),[c,p,J,ee]);var ne=[{label:"Type",renderFullObject:!0,renderFunction:function(e){return e?e.expiration&&(e.expiration.days>0||e.expiration.noncurrent_expiration_days)?(0,k.jsx)("span",{children:"Expiry"}):e.transition&&(e.transition.days>0||e.transition.noncurrent_transition_days)?(0,k.jsx)("span",{children:"Transition"}):(0,k.jsx)(a.Fragment,{}):(0,k.jsx)(a.Fragment,{})}},{label:"Version",renderFullObject:!0,renderFunction:function(e){if(!e)return(0,k.jsx)(a.Fragment,{});if(e.expiration){if(e.expiration.days>0)return(0,k.jsx)("span",{children:"Current"});if(e.expiration.noncurrent_expiration_days)return(0,k.jsx)("span",{children:"Non-Current"})}if(e.transition){if(e.transition.days>0)return(0,k.jsx)("span",{children:"Current"});if(e.transition.noncurrent_transition_days)return(0,k.jsx)("span",{children:"Non-Current"})}}},{label:"Tier",elementKey:"storage_class",renderFunction:function(e){var n=d()(e,"transition.storage_class","");return n=d()(e,"transition.noncurrent_storage_class",n)},renderFullObject:!0},{label:"Prefix",elementKey:"prefix"},{label:"After",renderFullObject:!0,renderFunction:function(e){if(!e)return(0,k.jsx)(a.Fragment,{});if(e.expiration){if(e.expiration.days>0)return(0,k.jsxs)("span",{children:[e.expiration.days," days"]});if(e.expiration.noncurrent_expiration_days)return(0,k.jsxs)("span",{children:[e.expiration.noncurrent_expiration_days," days"]})}if(e.transition){if(e.transition.days>0)return(0,k.jsxs)("span",{children:[e.transition.days," days"]});if(e.transition.noncurrent_transition_days)return(0,k.jsxs)("span",{children:[e.transition.noncurrent_transition_days," days"]})}}},{label:"Status",elementKey:"status"}],te=[{type:"view",onClick:function(e){K(e),I(!0)}},{type:"delete",onClick:function(e){$(e),U(!0)},sendOnlyId:!0}];return(0,k.jsxs)(a.Fragment,{children:[C&&B&&(0,k.jsx)(N,{open:C,closeModalAndRefresh:function(e){I(!1),K(null),e&&p(!0)},selectedBucket:J,lifecycleRule:B}),b&&(0,k.jsx)(T,{open:b,bucketName:J,closeModalAndRefresh:function(e){g(!1),e&&p(!0)}}),Y&&Q&&(0,k.jsx)(V,{id:Q,bucket:J,deleteOpen:Y,onCloseAndRefresh:function(e){U(!1),$(null),e&&p(!0)}}),(0,k.jsxs)(u.ZP,{container:!0,children:[(0,k.jsxs)(u.ZP,{item:!0,xs:12,className:n.actionsTray,children:[(0,k.jsx)(O.Z,{children:"Lifecycle Rules"}),(0,k.jsx)(A.s,{scopes:[R.Ft.S3_PUT_LIFECYCLE_CONFIGURATION,R.Ft.S3_PUT_ACTIONS],resource:J,matchAll:!0,errorProps:{disabled:!0},children:(0,k.jsx)(M.Z,{tooltip:"Add Lifecycle Rule",children:(0,k.jsx)(x.zxk,{id:"add-bucket-lifecycle-rule",onClick:function(){g(!0)},label:"Add Lifecycle Rule",icon:(0,k.jsx)(x.dtP,{}),variant:"callAction"})})})]}),(0,k.jsx)(u.ZP,{item:!0,xs:12,children:(0,k.jsx)(A.s,{scopes:[R.Ft.S3_GET_LIFECYCLE_CONFIGURATION,R.Ft.S3_GET_ACTIONS],resource:J,errorProps:{disabled:!0},children:(0,k.jsx)(E.Z,{itemActions:te,columns:ne,isLoading:c,records:m,entityName:"Lifecycle",customEmptyMessage:"There are no Lifecycle rules yet",idField:"id",customPaperHeight:n.twHeight})})}),!c&&(0,k.jsxs)(u.ZP,{item:!0,xs:12,children:[(0,k.jsx)("br",{}),(0,k.jsx)(x.KfX,{title:"Lifecycle Rules",iconComponent:(0,k.jsx)(x.y2Y,{}),help:(0,k.jsxs)(a.Fragment,{children:["MinIO Object Lifecycle Management allows creating rules for time or date based automatic transition or expiry of objects. For object transition, MinIO automatically moves the object to a configured remote storage tier.",(0,k.jsx)("br",{}),(0,k.jsx)("br",{}),"You can learn more at our"," ",(0,k.jsx)("a",{href:"https://min.io/docs/minio/linux/administration/object-management/object-lifecycle-management.html?ref=con",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})]})]})]})}))},81159:function(e,n,t){var i=t(4942),r=t(1413),a=t(72791),o=t(11135),s=t(25787),l=t(9955),c=t(30829),d=t(20068),u=t(20890),x=t(61889),p=t(23814),h=t(29945),f=t(28182),m=t(80184),v=(0,s.Z)((function(e){return{root:{width:50,height:24,padding:0,margin:0},switchBase:{padding:1,"&$checked":{transform:"translateX(24px)",color:e.palette.common.white,"& + $track":{backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,border:"none"}},"&$focusVisible $thumb":{color:"#4CCB92",border:"6px solid #fff"}},thumb:{width:22,height:22,backgroundColor:"#FAFAFA",border:"2px solid #FFFFFF",marginLeft:1},track:{borderRadius:12,backgroundColor:"#E2E2E2",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,transition:e.transitions.create(["background-color","border"])},checked:{},focusVisible:{},switchContainer:{display:"flex",alignItems:"center",justifyContent:"flex-end"}}}))(l.Z);n.Z=(0,s.Z)((function(e){return(0,o.Z)((0,r.Z)((0,r.Z)({indicatorLabelOn:{fontWeight:"bold",color:"#081C42 !important"},indicatorLabel:{fontSize:12,color:"#E2E2E2",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"},tooltip:{fontSize:16}},p.OR),p.YI))}))((function(e){var n=e.label,t=void 0===n?"":n,o=e.onChange,s=e.value,l=e.id,p=e.name,Z=e.checked,j=void 0!==Z&&Z,b=e.disabled,g=void 0!==b&&b,y=e.switchOnly,_=void 0!==y&&y,C=e.tooltip,S=void 0===C?"":C,F=e.description,P=void 0===F?"":F,k=e.classes,N=e.indicatorLabels,I=e.extraInputProps,L=void 0===I?{}:I,T=(0,m.jsxs)(a.Fragment,{children:[!_&&(0,m.jsx)("span",{className:(0,f.Z)(k.indicatorLabel,(0,i.Z)({},k.indicatorLabelOn,!j)),children:N&&N.length>1?N[1]:"OFF"}),(0,m.jsx)(v,{checked:j,onChange:o,color:"primary",name:p,inputProps:(0,r.Z)({"aria-label":"primary checkbox"},L),disabled:g,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:s,id:l}),!_&&(0,m.jsx)("span",{className:(0,f.Z)(k.indicatorLabel,(0,i.Z)({},k.indicatorLabelOn,j)),children:N?N[0]:"ON"})]});return _?T:(0,m.jsx)("div",{children:(0,m.jsxs)(x.ZP,{container:!0,alignItems:"center",children:[(0,m.jsx)(x.ZP,{item:!0,xs:12,sm:8,md:8,children:""!==t&&(0,m.jsxs)(c.Z,{htmlFor:l,className:k.inputLabel,children:[(0,m.jsx)("span",{children:t}),""!==S&&(0,m.jsx)("div",{className:k.tooltipContainer,children:(0,m.jsx)(d.Z,{title:S,placement:"top-start",children:(0,m.jsx)("div",{className:k.tooltip,children:(0,m.jsx)(h.byK,{})})})})]})}),(0,m.jsx)(x.ZP,{item:!0,xs:12,sm:""!==t?4:12,md:""!==t?4:12,textAlign:"right",justifyContent:"end",className:k.switchContainer,children:T}),""!==P&&(0,m.jsx)(x.ZP,{item:!0,xs:12,textAlign:"left",children:(0,m.jsx)(u.Z,{component:"p",className:k.fieldDescription,children:P})})]})})}))},21435:function(e,n,t){var i=t(29439),r=t(1413),a=t(72791),o=t(27391),s=t(61889),l=t(30829),c=t(20068),d=t(13400),u=t(20165),x=t(3579),p=t(11135),h=t(72455),f=t(25787),m=t(23814),v=t(29945),Z=t(28182),j=t(80184),b=(0,h.Z)((function(e){return(0,p.Z)((0,r.Z)({},m.gM))}));function g(e){var n=b();return(0,j.jsx)(o.Z,(0,r.Z)({InputProps:{classes:n}},e))}n.Z=(0,f.Z)((function(e){return(0,p.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},m.YI),m.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var n=e.label,t=e.onChange,o=e.value,p=e.id,h=e.name,f=e.type,m=void 0===f?"text":f,b=e.autoComplete,y=void 0===b?"off":b,_=e.disabled,C=void 0!==_&&_,S=e.multiline,F=void 0!==S&&S,P=e.tooltip,k=void 0===P?"":P,N=e.index,I=void 0===N?0:N,L=e.error,T=void 0===L?"":L,E=e.required,O=void 0!==E&&E,A=e.placeholder,R=void 0===A?"":A,w=e.min,B=e.max,V=e.overlayId,D=e.overlayIcon,z=void 0===D?null:D,M=e.overlayObject,K=void 0===M?null:M,H=e.extraInputProps,W=void 0===H?{}:H,Y=e.overlayAction,U=e.noLabelMinWidth,G=void 0!==U&&U,q=e.pattern,Q=void 0===q?"":q,$=e.autoFocus,X=void 0!==$&&$,J=e.classes,ee=e.className,ne=void 0===ee?"":ee,te=e.onKeyPress,ie=e.onFocus,re=e.onPaste,ae=(0,r.Z)({"data-index":I},W),oe=(0,a.useState)(!1),se=(0,i.Z)(oe,2),le=se[0],ce=se[1];"number"===m&&w&&(ae.min=w),"number"===m&&B&&(ae.max=B),""!==Q&&(ae.pattern=Q);var de=z,ue=m;return"password"===m&&null===z&&(de=le?(0,j.jsx)(u.Z,{}):(0,j.jsx)(x.Z,{}),ue=le?"text":"password"),(0,j.jsx)(a.Fragment,{children:(0,j.jsxs)(s.ZP,{container:!0,className:(0,Z.Z)(""!==ne?ne:"",""!==T?J.errorInField:J.inputBoxContainer),children:[""!==n&&(0,j.jsxs)(l.Z,{htmlFor:p,className:G?J.noMinWidthLabel:J.inputLabel,children:[(0,j.jsxs)("span",{children:[n,O?"*":""]}),""!==k&&(0,j.jsx)("div",{className:J.tooltipContainer,children:(0,j.jsx)(c.Z,{title:k,placement:"top-start",children:(0,j.jsx)("div",{className:J.tooltip,children:(0,j.jsx)(v.byK,{})})})})]}),(0,j.jsxs)("div",{className:J.textBoxContainer,children:[(0,j.jsx)(g,{id:p,name:h,fullWidth:!0,value:o,autoFocus:X,disabled:C,onChange:t,type:ue,multiline:F,autoComplete:y,inputProps:ae,error:""!==T,helperText:T,placeholder:R,className:J.inputRebase,onKeyPress:te,onFocus:ie,onPaste:re}),de&&(0,j.jsx)("div",{className:"".concat(J.overlayAction," ").concat(""!==n?"withLabel":""),children:(0,j.jsx)(d.Z,{onClick:Y?function(){Y()}:function(){return ce(!le)},id:V,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:de})}),K&&(0,j.jsx)("div",{className:"".concat(J.overlayAction," ").concat(""!==n?"withLabel":""),children:K})]})]})})}))},84741:function(e,n,t){var i=t(29439),r=t(72791),a=t(11135),o=t(25787),s=t(71715),l=t(77865),c=t(80184);n.Z=(0,o.Z)((function(e){return(0,a.Z)({buttonTrigger:{border:"#F0F2F2 1px solid",borderRadius:3,color:"#838383",backgroundColor:"#fff",fontSize:12}})}))((function(e){var n=e.classes,t=e.id,a=e.unitSelected,o=e.unitsList,d=e.disabled,u=void 0!==d&&d,x=e.onUnitChange,p=r.useState(null),h=(0,i.Z)(p,2),f=h[0],m=h[1],v=Boolean(f),Z=function(e){m(null),""!==e&&x&&x(e)};return(0,c.jsxs)(r.Fragment,{children:[(0,c.jsx)("button",{id:"".concat(t,"-button"),"aria-controls":"".concat(t,"-menu"),"aria-haspopup":"true","aria-expanded":v?"true":void 0,onClick:function(e){m(e.currentTarget)},className:n.buttonTrigger,disabled:u,type:"button",children:a}),(0,c.jsx)(s.Z,{id:"".concat(t,"-menu"),"aria-labelledby":"".concat(t,"-button"),anchorEl:f,open:v,onClose:function(){Z("")},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:o.map((function(e){return(0,c.jsx)(l.Z,{onClick:function(){return Z(e.value)},children:e.label},"itemUnit-".concat(e.value,"-").concat(e.label))}))})]})}))},17420:function(e,n,t){var i=t(93433),r=t(29439),a=t(1413),o=t(72791),s=t(26181),l=t.n(s),c=t(48573),d=t.n(c),u=t(11135),x=t(25787),p=t(61889),h=t(77961),f=t(30829),m=t(20068),v=t(23814),Z=t(21435),j=t(29945),b=t(80184);n.Z=(0,x.Z)((function(e){return(0,u.Z)((0,a.Z)((0,a.Z)((0,a.Z)({},v.YI),v.Hr),{},{inputWithBorder:{border:"1px solid #EAEAEA",padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},lineInputBoxes:{display:"flex",marginBottom:10},queryDiv:{alignSelf:"center",margin:"0 4px",fontWeight:600}}))}))((function(e){var n=e.elements,t=e.name,a=e.label,s=e.tooltip,c=void 0===s?"":s,u=e.keyPlaceholder,x=void 0===u?"":u,v=e.valuePlaceholder,g=void 0===v?"":v,y=e.onChange,_=e.withBorder,C=void 0!==_&&_,S=e.classes,F=(0,o.useState)([""]),P=(0,r.Z)(F,2),k=P[0],N=P[1],I=(0,o.useState)([""]),L=(0,r.Z)(I,2),T=L[0],E=L[1],O=(0,o.createRef)();(0,o.useEffect)((function(){if(1===k.length&&""===k[0]&&1===T.length&&""===T[0]&&n&&""!==n){var e=n.split("&"),t=[],i=[];e.forEach((function(e){var n=e.split("=");2===n.length&&(t.push(n[0]),i.push(n[1]))})),t.push(""),i.push(""),N(t),E(i)}}),[k,T,n]),(0,o.useEffect)((function(){var e=O.current;e&&k.length>1&&e.scrollIntoView(!1)}),[k]);var A=(0,o.useRef)(!0);(0,o.useLayoutEffect)((function(){A.current?A.current=!1:B()}),[k,T]);var R=function(e){e.persist();var n=(0,i.Z)(k),t=l()(e.target,"dataset.index","0");n[parseInt(t)]=e.target.value,N(n)},w=function(e){e.persist();var n=(0,i.Z)(T),t=l()(e.target,"dataset.index","0");n[parseInt(t)]=e.target.value,E(n)},B=d()((function(){var e="";k.forEach((function(n,t){if(k[t]&&T[t]){var i="".concat(n,"=").concat(T[t]);0!==t&&(i="&".concat(i)),e="".concat(e).concat(i)}})),y(e)}),500),V=T.map((function(e,n){return(0,b.jsxs)(p.ZP,{item:!0,xs:12,className:S.lineInputBoxes,children:[(0,b.jsx)(Z.Z,{id:"".concat(t,"-key-").concat(n.toString()),label:"",name:"".concat(t,"-").concat(n.toString()),value:k[n],onChange:R,index:n,placeholder:x}),(0,b.jsx)("span",{className:S.queryDiv,children:":"}),(0,b.jsx)(Z.Z,{id:"".concat(t,"-value-").concat(n.toString()),label:"",name:"".concat(t,"-").concat(n.toString()),value:T[n],onChange:w,index:n,placeholder:g,overlayIcon:n===T.length-1?(0,b.jsx)(j.dtP,{}):null,overlayAction:function(){!function(){if(""!==k[k.length-1].trim()&&""!==T[T.length-1].trim()){var e=(0,i.Z)(k),n=(0,i.Z)(T);e.push(""),n.push(""),N(e),E(n)}}()}})]},"query-pair-".concat(t,"-").concat(n.toString()))}));return(0,b.jsx)(o.Fragment,{children:(0,b.jsxs)(p.ZP,{item:!0,xs:12,className:S.fieldContainer,children:[(0,b.jsxs)(f.Z,{className:S.inputLabel,children:[(0,b.jsx)("span",{children:a}),""!==c&&(0,b.jsx)("div",{className:S.tooltipContainer,children:(0,b.jsx)(m.Z,{title:c,placement:"top-start",children:(0,b.jsx)(h.Z,{className:S.tooltip})})})]}),(0,b.jsxs)(p.ZP,{item:!0,xs:12,className:"".concat(C?S.inputWithBorder:""),children:[V,(0,b.jsx)("div",{ref:O})]})]})})}))},83679:function(e,n,t){var i=t(4942),r=t(1413),a=(t(72791),t(28182)),o=t(61889),s=t(10765),l=t(85523),c=t(61419),d=t(30829),u=t(20068),x=t(11135),p=t(25787),h=t(72455),f=t(23814),m=t(29945),v=t(80184),Z=(0,h.Z)((0,r.Z)({root:{"&:hover":{backgroundColor:"transparent"}}},f.FU)),j=function(e){var n=Z();return(0,v.jsx)(c.Z,(0,r.Z)({className:n.root,disableRipple:!0,color:"default",checkedIcon:(0,v.jsx)("span",{className:n.radioSelectedIcon}),icon:(0,v.jsx)("span",{className:n.radioUnselectedIcon})},e))};n.Z=(0,p.Z)((function(e){return(0,x.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},f.YI),f.Hr),{},{optionLabel:{"&.Mui-disabled":{"& .MuiFormControlLabel-label":{color:"#9c9c9c"}},"&:last-child":{marginRight:0},"& .MuiFormControlLabel-label":{fontSize:12,color:"#07193E"}},checkedOption:{"& .MuiFormControlLabel-label":{fontSize:12,color:"#07193E",fontWeight:700}}}))}))((function(e){var n=e.selectorOptions,t=void 0===n?[]:n,r=e.currentSelection,c=e.label,x=e.id,p=e.name,h=e.onChange,f=e.tooltip,Z=void 0===f?"":f,b=e.disableOptions,g=void 0!==b&&b,y=e.classes,_=e.displayInColumn,C=void 0!==_&&_;return(0,v.jsxs)(o.ZP,{container:!0,spacing:1,children:[(0,v.jsx)(o.ZP,{item:!0,fontSize:60,children:(0,v.jsxs)(d.Z,{htmlFor:x,className:y.inputLabel,children:[(0,v.jsx)("span",{children:c}),""!==Z&&(0,v.jsx)("div",{className:y.tooltipContainer,children:(0,v.jsx)(u.Z,{title:Z,placement:"top-start",children:(0,v.jsx)("div",{children:(0,v.jsx)(m.byK,{})})})})]})}),(0,v.jsx)(o.ZP,{item:!0,children:(0,v.jsx)(s.Z,{"aria-label":x,id:x,name:p,value:r,onChange:h,row:!C,style:{display:"flex",textAlign:"right"},children:t.map((function(e){return(0,v.jsx)(l.Z,{value:e.value,control:(0,v.jsx)(j,{}),label:e.label,disabled:g,className:(0,a.Z)(y.optionLabel,(0,i.Z)({},y.checkedOption,e.value===r))},"rd-".concat(p,"-").concat(e.value))}))})})]})}))},90673:function(e,n,t){var i=t(1413),r=t(72791),a=t(61889),o=t(886),s=t(30829),l=t(20068),c=t(68096),d=t(58406),u=t(77865),x=t(11135),p=t(25787),h=t(23814),f=t(29945),m=t(80184),v=(0,p.Z)((function(e){return(0,x.Z)({root:{height:38,lineHeight:1,"label + &":{marginTop:e.spacing(3)}},input:{height:38,position:"relative",color:"#07193E",fontSize:13,fontWeight:600,padding:"8px 20px 10px 10px",border:"#e5e5e5 1px solid",borderRadius:4,display:"flex",alignItems:"center","&:hover":{borderColor:"#393939"},"&:focus":{backgroundColor:"#fff"}}})}))(o.ZP);n.Z=(0,p.Z)((function(e){return(0,x.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},h.YI),h.Hr),{},{fieldContainer:{display:"flex","@media (max-width: 600px)":{flexFlow:"column"}}}))}))((function(e){var n=e.classes,t=e.id,i=e.name,o=e.onChange,x=e.options,p=e.label,h=e.tooltip,Z=void 0===h?"":h,j=e.value,b=e.disabled,g=void 0!==b&&b;return(0,m.jsx)(r.Fragment,{children:(0,m.jsxs)(a.ZP,{item:!0,xs:12,className:n.fieldContainer,children:[""!==p&&(0,m.jsxs)(s.Z,{htmlFor:t,className:n.inputLabel,children:[(0,m.jsx)("span",{children:p}),""!==Z&&(0,m.jsx)("div",{className:n.tooltipContainer,children:(0,m.jsx)(l.Z,{title:Z,placement:"top-start",children:(0,m.jsx)("div",{className:n.tooltip,children:(0,m.jsx)(f.byK,{})})})})]}),(0,m.jsx)(c.Z,{fullWidth:!0,children:(0,m.jsx)(d.Z,{id:t,name:i,value:j,onChange:o,input:(0,m.jsx)(v,{}),disabled:g,children:x.map((function(e){return(0,m.jsx)(u.Z,{value:e.value,children:e.label},"select-".concat(i,"-").concat(e.label))}))})})]})})}))},60680:function(e,n,t){t(72791);var i=t(11135),r=t(25787),a=t(80184);n.Z=(0,r.Z)((function(e){return(0,i.Z)({root:{padding:0,margin:0,fontSize:".9rem"}})}))((function(e){var n=e.classes,t=e.children;return(0,a.jsx)("h1",{className:n.root,children:t})}))}}]); -//# sourceMappingURL=51.2c941d38.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/51.2c941d38.chunk.js.map b/portal-ui/build/static/js/51.2c941d38.chunk.js.map deleted file mode 100644 index dd1dccfdb..000000000 --- a/portal-ui/build/static/js/51.2c941d38.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/51.2c941d38.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/EditLifecycleConfiguration.tsx","screens/Console/Buckets/BucketDetails/AddLifecycleModal.tsx","screens/Console/Buckets/BucketDetails/DeleteBucketLifecycleRule.tsx","screens/Console/Buckets/BucketDetails/BucketLifecyclePanel.tsx","screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu.tsx","screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector.tsx","screens/Console/Common/FormComponents/RadioGroupSelector/RadioGroupSelector.tsx","screens/Console/Common/FormComponents/SelectWrapper/SelectWrapper.tsx","screens/Console/Common/PanelTitle/PanelTitle.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport {\n Accordion,\n AccordionDetails,\n AccordionSummary,\n LinearProgress,\n SelectChangeEvent,\n Typography,\n} from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport { Button, LifecycleConfigIcon } from \"mds\";\nimport get from \"lodash/get\";\nimport Grid from \"@mui/material/Grid\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n createTenantCommon,\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport { ITiersDropDown, LifeCycleItem } from \"../types\";\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport QueryMultiSelector from \"../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector\";\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport RadioGroupSelector from \"../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector\";\n\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { Tier } from \"api/consoleApi\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n formFieldRowAccordion: {\n \"& .MuiPaper-root\": { padding: 0 },\n },\n ...spacingUtils,\n ...modalStyleUtils,\n ...formFieldStyles,\n ...createTenantCommon,\n });\n\ninterface IAddUserContentProps {\n classes: any;\n closeModalAndRefresh: (reload: boolean) => void;\n selectedBucket: string;\n lifecycleRule: LifeCycleItem;\n open: boolean;\n}\n\nconst EditLifecycleConfiguration = ({\n classes,\n closeModalAndRefresh,\n selectedBucket,\n lifecycleRule,\n open,\n}: IAddUserContentProps) => {\n const dispatch = useAppDispatch();\n const [loadingTiers, setLoadingTiers] = useState(true);\n const [addLoading, setAddLoading] = useState(false);\n const [tags, setTags] = useState(\"\");\n const [enabled, setEnabled] = useState(false);\n const [tiersList, setTiersList] = useState([]);\n const [prefix, setPrefix] = useState(\"\");\n const [storageClass, setStorageClass] = useState(\"\");\n const [NCTransitionSC, setNCTransitionSC] = useState(\"\");\n const [expiredObjectDM, setExpiredObjectDM] = useState(false);\n const [NCExpirationDays, setNCExpirationDays] = useState(\"0\");\n const [NCTransitionDays, setNCTransitionDays] = useState(\"0\");\n const [ilmType, setIlmType] = useState<\"transition\" | \"expiry\">(\"expiry\");\n const [expiryDays, setExpiryDays] = useState(\"0\");\n const [transitionDays, setTransitionDays] = useState(\"0\");\n const [isFormValid, setIsFormValid] = useState(false);\n\n useEffect(() => {\n if (loadingTiers) {\n api.admin\n .tiersList()\n .then((res) => {\n const tiersList: Tier[] | null = get(res.data, \"items\", []);\n\n if (tiersList !== null && tiersList.length >= 1) {\n const objList = tiersList.map((tier: Tier) => {\n const tierType = tier.type;\n const value = get(tier, `${tierType}.name`, \"\");\n\n return { label: value, value: value };\n });\n\n setTiersList(objList);\n if (objList.length > 0) {\n setStorageClass(objList[0].value);\n }\n }\n setLoadingTiers(false);\n })\n .catch(() => {\n setLoadingTiers(false);\n });\n }\n }, [loadingTiers]);\n\n useEffect(() => {\n let valid = true;\n\n if (ilmType !== \"expiry\") {\n if (storageClass === \"\") {\n valid = false;\n }\n }\n setIsFormValid(valid);\n }, [ilmType, expiryDays, transitionDays, storageClass]);\n\n useEffect(() => {\n if (lifecycleRule.status === \"Enabled\") {\n setEnabled(true);\n }\n\n let transitionMode = false;\n\n if (lifecycleRule.transition) {\n if (\n lifecycleRule.transition.days &&\n lifecycleRule.transition.days !== 0\n ) {\n setTransitionDays(lifecycleRule.transition.days.toString());\n setIlmType(\"transition\");\n transitionMode = true;\n }\n if (\n lifecycleRule.transition.noncurrent_transition_days &&\n lifecycleRule.transition.noncurrent_transition_days !== 0\n ) {\n setNCTransitionDays(\n lifecycleRule.transition.noncurrent_transition_days.toString(),\n );\n setIlmType(\"transition\");\n transitionMode = true;\n }\n\n // Fallback to old rules by date\n if (\n lifecycleRule.transition.date &&\n lifecycleRule.transition.date !== \"0001-01-01T00:00:00Z\"\n ) {\n setIlmType(\"transition\");\n transitionMode = true;\n }\n }\n\n if (lifecycleRule.expiration) {\n if (\n lifecycleRule.expiration.days &&\n lifecycleRule.expiration.days !== 0\n ) {\n setExpiryDays(lifecycleRule.expiration.days.toString());\n setIlmType(\"expiry\");\n transitionMode = false;\n }\n if (\n lifecycleRule.expiration.noncurrent_expiration_days &&\n lifecycleRule.expiration.noncurrent_expiration_days !== 0\n ) {\n setNCExpirationDays(\n lifecycleRule.expiration.noncurrent_expiration_days.toString(),\n );\n setIlmType(\"expiry\");\n transitionMode = false;\n }\n\n // Fallback to old rules by date\n if (\n lifecycleRule.expiration.date &&\n lifecycleRule.expiration.date !== \"0001-01-01T00:00:00Z\"\n ) {\n setIlmType(\"expiry\");\n transitionMode = false;\n }\n }\n\n // Transition fields\n if (transitionMode) {\n setStorageClass(lifecycleRule.transition?.storage_class || \"\");\n setNCTransitionDays(\n lifecycleRule.transition?.noncurrent_transition_days?.toString() || \"0\",\n );\n setNCTransitionSC(\n lifecycleRule.transition?.noncurrent_storage_class || \"\",\n );\n } else {\n // Expiry fields\n setNCExpirationDays(\n lifecycleRule.expiration?.noncurrent_expiration_days?.toString() || \"0\",\n );\n }\n\n setExpiredObjectDM(!!lifecycleRule.expiration?.delete_marker);\n setPrefix(lifecycleRule.prefix || \"\");\n\n if (lifecycleRule.tags) {\n const tgs = lifecycleRule.tags.reduce(\n (stringLab: string, currItem: any, index: number) => {\n return `${stringLab}${index !== 0 ? \"&\" : \"\"}${currItem.key}=${\n currItem.value\n }`;\n },\n \"\",\n );\n\n setTags(tgs);\n }\n }, [lifecycleRule]);\n\n const saveRecord = (event: React.FormEvent) => {\n event.preventDefault();\n\n if (addLoading) {\n return;\n }\n setAddLoading(true);\n if (selectedBucket !== null && lifecycleRule !== null) {\n let rules = {};\n\n if (ilmType === \"expiry\") {\n let expiry: { [key: string]: number } = {};\n\n if (\n lifecycleRule.expiration?.days &&\n lifecycleRule.expiration?.days > 0\n ) {\n expiry[\"expiry_days\"] = parseInt(expiryDays);\n }\n if (lifecycleRule.expiration?.noncurrent_expiration_days) {\n expiry[\"noncurrentversion_expiration_days\"] =\n parseInt(NCExpirationDays);\n }\n\n rules = {\n ...expiry,\n };\n } else {\n let transition: { [key: string]: number | string } = {};\n\n if (\n lifecycleRule.expiration?.days &&\n lifecycleRule.expiration?.days > 0\n ) {\n transition[\"transition_days\"] = parseInt(expiryDays);\n transition[\"storage_class\"] = storageClass;\n }\n if (lifecycleRule.expiration?.noncurrent_expiration_days) {\n transition[\"noncurrentversion_transition_days\"] =\n parseInt(NCExpirationDays);\n transition[\"noncurrentversion_transition_storage_class\"] =\n NCTransitionSC;\n }\n\n rules = {\n ...transition,\n };\n }\n\n const lifecycleUpdate = {\n type: ilmType,\n disable: !enabled,\n prefix,\n tags,\n expired_object_delete_marker: expiredObjectDM,\n ...rules,\n };\n\n api.buckets\n .updateBucketLifecycle(\n selectedBucket,\n lifecycleRule.id,\n lifecycleUpdate,\n )\n .then((res) => {\n setAddLoading(false);\n closeModalAndRefresh(true);\n })\n .catch((err: ErrorResponseHandler) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(err));\n });\n }\n };\n\n let objectVersion = \"\";\n\n if (lifecycleRule.expiration) {\n if (lifecycleRule.expiration.days > 0) {\n objectVersion = \"Current Version\";\n } else if (lifecycleRule.expiration.noncurrent_expiration_days) {\n objectVersion = \"Non-Current Version\";\n }\n }\n\n if (lifecycleRule.transition) {\n if (lifecycleRule.transition.days > 0) {\n objectVersion = \"Current Version\";\n } else if (lifecycleRule.transition.noncurrent_transition_days) {\n objectVersion = \"Non-Current Version\";\n }\n }\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n modalOpen={open}\n title={\"Edit Lifecycle Configuration\"}\n titleIcon={}\n >\n ) => {\n saveRecord(e);\n }}\n >\n \n \n \n \n {\n setEnabled(e.target.checked);\n }}\n />\n \n \n {}}\n disabled\n />\n \n \n {}}\n disableOptions\n />\n \n \n {}}\n disabled\n />\n \n {ilmType === \"expiry\" && lifecycleRule.expiration?.days && (\n \n ) => {\n setExpiryDays(e.target.value);\n }}\n label=\"Expiry Days\"\n value={expiryDays}\n min=\"0\"\n />\n \n )}\n\n {ilmType === \"expiry\" &&\n lifecycleRule.expiration?.noncurrent_expiration_days && (\n \n ) => {\n setNCExpirationDays(e.target.value);\n }}\n label=\"Non-current Expiration Days\"\n value={NCExpirationDays}\n min=\"0\"\n />\n \n )}\n {ilmType === \"transition\" && lifecycleRule.transition?.days && (\n \n \n ) => {\n setTransitionDays(e.target.value);\n }}\n label=\"Transition Days\"\n value={transitionDays}\n min=\"0\"\n />\n \n\n \n ) => {\n setStorageClass(e.target.value as string);\n }}\n options={tiersList}\n />\n \n \n )}\n\n {ilmType === \"transition\" &&\n lifecycleRule.transition?.noncurrent_transition_days && (\n \n \n ) => {\n setNCTransitionDays(e.target.value);\n }}\n label=\"Non-current Transition Days\"\n value={NCTransitionDays}\n min=\"0\"\n />\n \n\n \n ) => {\n setNCTransitionSC(e.target.value);\n }}\n placeholder=\"Set Non-current Version Transition Storage Class\"\n label=\"Non-current Version Transition Storage Class\"\n value={NCTransitionSC}\n />\n \n \n )}\n \n \n \n Filters\n \n\n \n \n ) => {\n setPrefix(e.target.value);\n }}\n label=\"Prefix\"\n value={prefix}\n />\n \n \n {\n setTags(vl);\n }}\n keyPlaceholder=\"Tag Key\"\n valuePlaceholder=\"Tag Value\"\n withBorder\n />\n \n \n \n \n {ilmType === \"expiry\" &&\n lifecycleRule.expiration?.noncurrent_expiration_days && (\n \n \n \n Advanced\n \n\n \n \n ,\n ) => {\n setExpiredObjectDM(event.target.checked);\n }}\n label={\"Expired Object Delete Marker\"}\n />\n \n \n \n \n )}\n \n \n \n {\n closeModalAndRefresh(false);\n }}\n label={\"Cancel\"}\n />\n \n \n {addLoading && (\n \n \n \n )}\n \n \n \n );\n};\n\nexport default withStyles(styles)(EditLifecycleConfiguration);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { Button, LifecycleConfigIcon } from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n Accordion,\n AccordionDetails,\n AccordionSummary,\n LinearProgress,\n SelectChangeEvent,\n Typography,\n} from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\n\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport QueryMultiSelector from \"../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector\";\nimport RadioGroupSelector from \"../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector\";\nimport {\n createTenantCommon,\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport InputUnitMenu from \"../../Common/FormComponents/InputUnitMenu/InputUnitMenu\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport { selDistSet, setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { ITiersDropDown } from \"../types\";\nimport { api } from \"api\";\nimport { BucketVersioningResponse, Tier } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IReplicationModal {\n open: boolean;\n closeModalAndRefresh: (refresh: boolean) => any;\n classes: any;\n bucketName: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n formFieldRowFilter: {\n \"& .MuiPaper-root\": { padding: 0 },\n },\n ...spacingUtils,\n ...modalStyleUtils,\n ...formFieldStyles,\n ...createTenantCommon,\n });\n\nconst AddLifecycleModal = ({\n open,\n closeModalAndRefresh,\n classes,\n bucketName,\n}: IReplicationModal) => {\n const dispatch = useAppDispatch();\n const distributedSetup = useSelector(selDistSet);\n const [loadingTiers, setLoadingTiers] = useState(true);\n const [tiersList, setTiersList] = useState([]);\n const [addLoading, setAddLoading] = useState(false);\n const [versioningInfo, setVersioningInfo] =\n useState(null);\n const [prefix, setPrefix] = useState(\"\");\n const [tags, setTags] = useState(\"\");\n const [storageClass, setStorageClass] = useState(\"\");\n\n const [ilmType, setIlmType] = useState<\"expiry\" | \"transition\">(\"expiry\");\n const [targetVersion, setTargetVersion] = useState<\"current\" | \"noncurrent\">(\n \"current\",\n );\n\n const [lifecycleDays, setLifecycleDays] = useState(\"\");\n const [isFormValid, setIsFormValid] = useState(false);\n const [expiredObjectDM, setExpiredObjectDM] = useState(false);\n const [loadingVersioning, setLoadingVersioning] = useState(true);\n\n useEffect(() => {\n if (loadingTiers) {\n api.admin\n .tiersList()\n .then((res) => {\n const tiersList: Tier[] | null = get(res.data, \"items\", []);\n\n if (tiersList !== null && tiersList.length >= 1) {\n const objList = tiersList.map((tier: Tier) => {\n const tierType = tier.type;\n const value = get(tier, `${tierType}.name`, \"\");\n\n return { label: value, value: value };\n });\n\n setTiersList(objList);\n if (objList.length > 0) {\n setStorageClass(objList[0].value);\n }\n }\n setLoadingTiers(false);\n })\n .catch(() => {\n setLoadingTiers(false);\n });\n }\n }, [loadingTiers]);\n\n useEffect(() => {\n let valid = true;\n\n if (ilmType !== \"expiry\") {\n if (storageClass === \"\") {\n valid = false;\n }\n }\n setIsFormValid(valid);\n }, [ilmType, lifecycleDays, storageClass]);\n\n useEffect(() => {\n if (loadingVersioning && distributedSetup) {\n api.buckets\n .getBucketVersioning(bucketName)\n .then((res) => {\n setVersioningInfo(res.data);\n setLoadingVersioning(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err)));\n setLoadingVersioning(false);\n });\n }\n }, [loadingVersioning, dispatch, bucketName, distributedSetup]);\n\n const addRecord = () => {\n let rules = {};\n\n if (ilmType === \"expiry\") {\n let expiry: { [key: string]: number } = {};\n\n if (targetVersion === \"current\") {\n expiry[\"expiry_days\"] = parseInt(lifecycleDays);\n } else {\n expiry[\"noncurrentversion_expiration_days\"] = parseInt(lifecycleDays);\n }\n\n rules = {\n ...expiry,\n };\n } else {\n let transition: { [key: string]: number | string } = {};\n if (targetVersion === \"current\") {\n transition[\"transition_days\"] = parseInt(lifecycleDays);\n transition[\"storage_class\"] = storageClass;\n } else {\n transition[\"noncurrentversion_transition_days\"] =\n parseInt(lifecycleDays);\n transition[\"noncurrentversion_transition_storage_class\"] = storageClass;\n }\n\n rules = {\n ...transition,\n };\n }\n\n const lifecycleInsert = {\n type: ilmType,\n prefix,\n tags,\n expired_object_delete_marker: expiredObjectDM,\n ...rules,\n };\n\n api.buckets\n .addBucketLifecycle(bucketName, lifecycleInsert)\n .then(() => {\n setAddLoading(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err)));\n });\n };\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n title=\"Add Lifecycle Rule\"\n titleIcon={}\n >\n {loadingTiers && (\n \n \n \n \n \n )}\n\n {!loadingTiers && (\n ) => {\n e.preventDefault();\n setAddLoading(true);\n addRecord();\n }}\n >\n \n \n \n \n \n {\n setIlmType(e.target.value as \"expiry\" | \"transition\");\n }}\n selectorOptions={[\n { value: \"expiry\", label: \"Expiry\" },\n { value: \"transition\", label: \"Transition\" },\n ]}\n />\n \n {versioningInfo?.status === \"Enabled\" && (\n \n {\n setTargetVersion(\n e.target.value as \"current\" | \"noncurrent\",\n );\n }}\n options={[\n { value: \"current\", label: \"Current Version\" },\n { value: \"noncurrent\", label: \"Non-Current Version\" },\n ]}\n />\n \n )}\n\n \n ) => {\n if (e.target.validity.valid) {\n setLifecycleDays(e.target.value);\n }\n }}\n pattern={\"[0-9]*\"}\n label=\"After\"\n value={lifecycleDays}\n overlayObject={\n \n }\n />\n \n\n {ilmType === \"expiry\" ? (\n \n ) : (\n \n \n ) => {\n setStorageClass(e.target.value as string);\n }}\n options={tiersList}\n />\n \n \n )}\n \n \n \n Filters\n \n \n \n ,\n ) => {\n setPrefix(e.target.value);\n }}\n label=\"Prefix\"\n value={prefix}\n />\n \n \n {\n setTags(vl);\n }}\n keyPlaceholder=\"Tag Key\"\n valuePlaceholder=\"Tag Value\"\n withBorder\n />\n \n \n \n \n {ilmType === \"expiry\" && targetVersion === \"noncurrent\" && (\n \n \n \n Advanced\n \n \n \n ,\n ) => {\n setExpiredObjectDM(event.target.checked);\n }}\n label={\"Expire Delete Marker\"}\n description={\n \"Remove the reference to the object if no versions are left\"\n }\n />\n \n \n \n \n )}\n \n \n \n \n {\n closeModalAndRefresh(false);\n }}\n label={\"Cancel\"}\n />\n \n \n {addLoading && (\n \n \n \n )}\n \n \n )}\n \n );\n};\n\nexport default withStyles(styles)(AddLifecycleModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport { DialogContentText } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { modalBasic } from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport { ConfirmDeleteIcon } from \"mds\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\n\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IDeleteLifecycleRule {\n deleteOpen: boolean;\n onCloseAndRefresh: (refresh: boolean) => any;\n bucket: string;\n id: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalBasic,\n });\n\nconst DeleteBucketLifecycleRule = ({\n onCloseAndRefresh,\n deleteOpen,\n bucket,\n id,\n}: IDeleteLifecycleRule) => {\n const dispatch = useAppDispatch();\n const [deletingRule, setDeletingRule] = useState(false);\n\n useEffect(() => {\n if (deletingRule) {\n api.buckets\n .deleteBucketLifecycleRule(bucket, id)\n .then(() => {\n setDeletingRule(false);\n onCloseAndRefresh(true);\n })\n .catch((err) => {\n setDeletingRule(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [deletingRule, bucket, id, onCloseAndRefresh, dispatch]);\n\n const onConfirmDelete = () => {\n setDeletingRule(true);\n };\n\n return (\n }\n onClose={() => onCloseAndRefresh(false)}\n confirmationContent={\n \n Are you sure you want to delete the {id} rule?\n \n }\n />\n );\n};\n\nexport default withStyles(styles)(DeleteBucketLifecycleRule);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport get from \"lodash/get\";\nimport Grid from \"@mui/material/Grid\";\nimport { LifeCycleItem } from \"../types\";\nimport { AddIcon, Button, HelpBox, TiersIcon } from \"mds\";\nimport {\n actionsTray,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport EditLifecycleConfiguration from \"./EditLifecycleConfiguration\";\nimport AddLifecycleModal from \"./AddLifecycleModal\";\nimport TableWrapper from \"../../Common/TableWrapper/TableWrapper\";\nimport PanelTitle from \"../../Common/PanelTitle/PanelTitle\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport DeleteBucketLifecycleRule from \"./DeleteBucketLifecycleRule\";\nimport { selBucketDetailsLoading } from \"./bucketDetailsSlice\";\nimport { useParams } from \"react-router-dom\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport { setHelpName } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { ObjectBucketLifecycle } from \"api/consoleApi\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...searchField,\n ...actionsTray,\n twHeight: {\n minHeight: 400,\n },\n });\n\ninterface IBucketLifecyclePanelProps {\n classes: any;\n}\n\nconst BucketLifecyclePanel = ({ classes }: IBucketLifecyclePanelProps) => {\n const loadingBucket = useSelector(selBucketDetailsLoading);\n const params = useParams();\n\n const [loadingLifecycle, setLoadingLifecycle] = useState(true);\n const [lifecycleRecords, setLifecycleRecords] = useState<\n ObjectBucketLifecycle[]\n >([]);\n const [addLifecycleOpen, setAddLifecycleOpen] = useState(false);\n const [editLifecycleOpen, setEditLifecycleOpen] = useState(false);\n const [selectedLifecycleRule, setSelectedLifecycleRule] =\n useState(null);\n const [deleteLifecycleOpen, setDeleteLifecycleOpen] =\n useState(false);\n const [selectedID, setSelectedID] = useState(null);\n const dispatch = useAppDispatch();\n\n const bucketName = params.bucketName || \"\";\n\n const displayLifeCycleRules = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n\n useEffect(() => {\n if (loadingBucket) {\n setLoadingLifecycle(true);\n }\n }, [loadingBucket, setLoadingLifecycle]);\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_detail_lifecycle\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (loadingLifecycle) {\n if (displayLifeCycleRules) {\n api.buckets\n .getBucketLifecycle(bucketName)\n .then((res) => {\n const records = get(res.data, \"lifecycle\", []);\n\n setLifecycleRecords(records || []);\n setLoadingLifecycle(false);\n })\n .catch((err) => {\n console.error(err.error);\n setLifecycleRecords([]);\n setLoadingLifecycle(false);\n });\n } else {\n setLoadingLifecycle(false);\n }\n }\n }, [\n loadingLifecycle,\n setLoadingLifecycle,\n bucketName,\n displayLifeCycleRules,\n ]);\n\n const closeEditLCAndRefresh = (refresh: boolean) => {\n setEditLifecycleOpen(false);\n setSelectedLifecycleRule(null);\n if (refresh) {\n setLoadingLifecycle(true);\n }\n };\n\n const closeAddLCAndRefresh = (refresh: boolean) => {\n setAddLifecycleOpen(false);\n if (refresh) {\n setLoadingLifecycle(true);\n }\n };\n\n const closeDelLCRefresh = (refresh: boolean) => {\n setDeleteLifecycleOpen(false);\n setSelectedID(null);\n\n if (refresh) {\n setLoadingLifecycle(true);\n }\n };\n\n const renderStorageClass = (objectST: any) => {\n let stClass = get(objectST, \"transition.storage_class\", \"\");\n stClass = get(objectST, \"transition.noncurrent_storage_class\", stClass);\n\n return stClass;\n };\n\n const lifecycleColumns = [\n {\n label: \"Type\",\n renderFullObject: true,\n renderFunction: (el: LifeCycleItem) => {\n if (!el) {\n return ;\n }\n if (\n el.expiration &&\n (el.expiration.days > 0 || el.expiration.noncurrent_expiration_days)\n ) {\n return Expiry;\n }\n if (\n el.transition &&\n (el.transition.days > 0 || el.transition.noncurrent_transition_days)\n ) {\n return Transition;\n }\n return ;\n },\n },\n {\n label: \"Version\",\n renderFullObject: true,\n renderFunction: (el: LifeCycleItem) => {\n if (!el) {\n return ;\n }\n if (el.expiration) {\n if (el.expiration.days > 0) {\n return Current;\n } else if (el.expiration.noncurrent_expiration_days) {\n return Non-Current;\n }\n }\n if (el.transition) {\n if (el.transition.days > 0) {\n return Current;\n } else if (el.transition.noncurrent_transition_days) {\n return Non-Current;\n }\n }\n },\n },\n {\n label: \"Tier\",\n elementKey: \"storage_class\",\n renderFunction: renderStorageClass,\n renderFullObject: true,\n },\n {\n label: \"Prefix\",\n elementKey: \"prefix\",\n },\n {\n label: \"After\",\n renderFullObject: true,\n renderFunction: (el: LifeCycleItem) => {\n if (!el) {\n return ;\n }\n if (el.expiration) {\n if (el.expiration.days > 0) {\n return {el.expiration.days} days;\n } else if (el.expiration.noncurrent_expiration_days) {\n return {el.expiration.noncurrent_expiration_days} days;\n }\n }\n if (el.transition) {\n if (el.transition.days > 0) {\n return {el.transition.days} days;\n } else if (el.transition.noncurrent_transition_days) {\n return {el.transition.noncurrent_transition_days} days;\n }\n }\n },\n },\n {\n label: \"Status\",\n elementKey: \"status\",\n },\n ];\n\n const lifecycleActions = [\n {\n type: \"view\",\n\n onClick(valueToSend: any): any {\n setSelectedLifecycleRule(valueToSend);\n setEditLifecycleOpen(true);\n },\n },\n {\n type: \"delete\",\n onClick(valueToDelete: string): any {\n setSelectedID(valueToDelete);\n setDeleteLifecycleOpen(true);\n },\n sendOnlyId: true,\n },\n ];\n\n return (\n \n {editLifecycleOpen && selectedLifecycleRule && (\n \n )}\n {addLifecycleOpen && (\n \n )}\n {deleteLifecycleOpen && selectedID && (\n \n )}\n \n \n Lifecycle Rules\n \n \n {\n setAddLifecycleOpen(true);\n }}\n label={\"Add Lifecycle Rule\"}\n icon={}\n variant={\"callAction\"}\n />\n \n \n \n \n \n \n \n \n {!loadingLifecycle && (\n \n
\n }\n help={\n \n MinIO Object Lifecycle Management allows creating rules for\n time or date based automatic transition or expiry of objects.\n For object transition, MinIO automatically moves the object to\n a configured remote storage tier.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n )}\n
\n
\n );\n};\n\nexport default withStyles(styles)(BucketLifecyclePanel);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input/Input\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n checked: boolean;\n switchOnly?: boolean;\n indicatorLabels?: string[];\n extraInputProps?: StandardInputProps[\"inputProps\"];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n indicatorLabelOn: {\n fontWeight: \"bold\",\n color: \"#081C42 !important\",\n },\n indicatorLabel: {\n fontSize: 12,\n color: \"#E2E2E2\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n tooltip: {\n fontSize: 16,\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles((theme) => ({\n root: {\n width: 50,\n height: 24,\n padding: 0,\n margin: 0,\n },\n switchBase: {\n padding: 1,\n \"&$checked\": {\n transform: \"translateX(24px)\",\n color: theme.palette.common.white,\n \"& + $track\": {\n backgroundColor: \"#4CCB92\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n border: \"none\",\n },\n },\n \"&$focusVisible $thumb\": {\n color: \"#4CCB92\",\n border: \"6px solid #fff\",\n },\n },\n thumb: {\n width: 22,\n height: 22,\n backgroundColor: \"#FAFAFA\",\n border: \"2px solid #FFFFFF\",\n marginLeft: 1,\n },\n track: {\n borderRadius: 24 / 2,\n backgroundColor: \"#E2E2E2\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n transition: theme.transitions.create([\"background-color\", \"border\"]),\n },\n checked: {},\n focusVisible: {},\n switchContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n}))(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n classes,\n indicatorLabels,\n extraInputProps = {},\n}: IFormSwitch) => {\n const switchComponent = (\n \n {!switchOnly && (\n \n {indicatorLabels && indicatorLabels.length > 1\n ? indicatorLabels[1]\n : \"OFF\"}\n \n )}\n \n {!switchOnly && (\n \n {indicatorLabels ? indicatorLabels[0] : \"ON\"}\n \n )}\n \n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n
\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n \n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { selectorTypes } from \"../SelectWrapper/SelectWrapper\";\nimport { Menu, MenuItem } from \"@mui/material\";\n\ninterface IInputUnitBox {\n classes: any;\n id: string;\n unitSelected: string;\n unitsList: selectorTypes[];\n disabled?: boolean;\n onUnitChange?: (newValue: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonTrigger: {\n border: \"#F0F2F2 1px solid\",\n borderRadius: 3,\n color: \"#838383\",\n backgroundColor: \"#fff\",\n fontSize: 12,\n },\n });\n\nconst InputUnitMenu = ({\n classes,\n id,\n unitSelected,\n unitsList,\n disabled = false,\n onUnitChange,\n}: IInputUnitBox) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (newUnit: string) => {\n setAnchorEl(null);\n if (newUnit !== \"\" && onUnitChange) {\n onUnitChange(newUnit);\n }\n };\n\n return (\n \n \n {unitSelected}\n \n {\n handleClose(\"\");\n }}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"center\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"center\",\n }}\n >\n {unitsList.map((unit) => (\n handleClose(unit.value)}\n key={`itemUnit-${unit.value}-${unit.label}`}\n >\n {unit.label}\n \n ))}\n \n \n );\n};\n\nexport default withStyles(styles)(InputUnitMenu);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, {\n ChangeEvent,\n createRef,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport get from \"lodash/get\";\nimport debounce from \"lodash/debounce\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport Grid from \"@mui/material/Grid\";\nimport HelpIcon from \"@mui/icons-material/Help\";\nimport { InputLabel, Tooltip } from \"@mui/material\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport InputBoxWrapper from \"../InputBoxWrapper/InputBoxWrapper\";\nimport { AddIcon } from \"mds\";\n\ninterface IQueryMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n keyPlaceholder?: string;\n valuePlaceholder?: string;\n classes: any;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n inputWithBorder: {\n border: \"1px solid #EAEAEA\",\n padding: 15,\n height: 150,\n overflowY: \"auto\",\n position: \"relative\",\n marginTop: 15,\n },\n lineInputBoxes: {\n display: \"flex\",\n marginBottom: 10,\n },\n queryDiv: {\n alignSelf: \"center\",\n margin: \"0 4px\",\n fontWeight: 600,\n },\n });\n\nconst QueryMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n keyPlaceholder = \"\",\n valuePlaceholder = \"\",\n onChange,\n withBorder = false,\n classes,\n}: IQueryMultiSelector) => {\n const [currentKeys, setCurrentKeys] = useState([\"\"]);\n const [currentValues, setCurrentValues] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentKeys.length === 1 &&\n currentKeys[0] === \"\" &&\n currentValues.length === 1 &&\n currentValues[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\"&\");\n let keys = [];\n let values = [];\n\n elementsSplit.forEach((element: string) => {\n const splittedVals = element.split(\"=\");\n if (splittedVals.length === 2) {\n keys.push(splittedVals[0]);\n values.push(splittedVals[1]);\n }\n });\n\n keys.push(\"\");\n values.push(\"\");\n\n setCurrentKeys(keys);\n setCurrentValues(values);\n }\n }, [currentKeys, currentValues, elements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n const refScroll = bottomList.current;\n if (refScroll && currentKeys.length > 1) {\n refScroll.scrollIntoView(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys]);\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useLayoutEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n debouncedOnChange();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys, currentValues]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = () => {\n if (\n currentKeys[currentKeys.length - 1].trim() !== \"\" &&\n currentValues[currentValues.length - 1].trim() !== \"\"\n ) {\n const keysList = [...currentKeys];\n const valuesList = [...currentValues];\n\n keysList.push(\"\");\n valuesList.push(\"\");\n\n setCurrentKeys(keysList);\n setCurrentValues(valuesList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeKey = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentKeys];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentKeys(updatedElement);\n };\n\n const onChangeValue = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentValues];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentValues(updatedElement);\n };\n\n // Debounce for On Change\n const debouncedOnChange = debounce(() => {\n let queryString = \"\";\n\n currentKeys.forEach((keyVal, index) => {\n if (currentKeys[index] && currentValues[index]) {\n let insertString = `${keyVal}=${currentValues[index]}`;\n if (index !== 0) {\n insertString = `&${insertString}`;\n }\n queryString = `${queryString}${insertString}`;\n }\n });\n\n onChange(queryString);\n }, 500);\n\n const inputs = currentValues.map((element, index) => {\n return (\n \n \n :\n : null}\n overlayAction={() => {\n addEmptyLine();\n }}\n />\n \n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n
\n \n \n \n
\n )}\n
\n \n {inputs}\n
\n \n \n \n );\n};\nexport default withStyles(styles)(QueryMultiSelector);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport clsx from \"clsx\";\nimport Grid from \"@mui/material/Grid\";\nimport RadioGroup from \"@mui/material/RadioGroup\";\nimport FormControlLabel from \"@mui/material/FormControlLabel\";\nimport Radio, { RadioProps } from \"@mui/material/Radio\";\nimport { InputLabel, Tooltip } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { fieldBasic, radioIcons, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport { ObjectRetentionMode, ObjectRetentionUnit } from \"api/consoleApi\";\n\nexport interface SelectorTypes {\n label: any;\n value: string;\n}\n\ninterface RadioGroupProps {\n selectorOptions: SelectorTypes[];\n currentSelection:\n | ObjectRetentionMode\n | ObjectRetentionUnit\n | undefined\n | \"expiry\"\n | \"transition\";\n label: any;\n id: string;\n name: string;\n tooltip?: string;\n disableOptions?: boolean;\n onChange: (e: React.ChangeEvent) => void;\n classes: any;\n displayInColumn?: boolean;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n optionLabel: {\n \"&.Mui-disabled\": {\n \"& .MuiFormControlLabel-label\": {\n color: \"#9c9c9c\",\n },\n },\n \"&:last-child\": {\n marginRight: 0,\n },\n \"& .MuiFormControlLabel-label\": {\n fontSize: 12,\n color: \"#07193E\",\n },\n },\n checkedOption: {\n \"& .MuiFormControlLabel-label\": {\n fontSize: 12,\n color: \"#07193E\",\n fontWeight: 700,\n },\n },\n });\n\nconst radioStyles = makeStyles({\n root: {\n \"&:hover\": {\n backgroundColor: \"transparent\",\n },\n },\n ...radioIcons,\n});\n\nconst RadioButton = (props: RadioProps) => {\n const classes = radioStyles();\n\n return (\n }\n icon={}\n {...props}\n />\n );\n};\n\nexport const RadioGroupSelector = ({\n selectorOptions = [],\n currentSelection,\n label,\n id,\n name,\n onChange,\n tooltip = \"\",\n disableOptions = false,\n classes,\n displayInColumn = false,\n}: RadioGroupProps) => {\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n
\n \n \n {selectorOptions.map((selectorOption) => {\n return (\n }\n label={selectorOption.label}\n disabled={disableOptions}\n className={clsx(classes.optionLabel, {\n [classes.checkedOption]:\n selectorOption.value === currentSelection,\n })}\n />\n );\n })}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(RadioGroupSelector);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n FormControl,\n InputBase,\n InputLabel,\n MenuItem,\n Select,\n SelectChangeEvent,\n Tooltip,\n} from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\nexport interface selectorTypes {\n label: string;\n value: string;\n}\n\ninterface SelectProps {\n options: selectorTypes[];\n value: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n onChange: (e: SelectChangeEvent) => void;\n disabled?: boolean;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n fieldContainer: {\n display: \"flex\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n height: 38,\n lineHeight: 1,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n },\n input: {\n height: 38,\n position: \"relative\",\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n padding: \"8px 20px 10px 10px\",\n border: \"#e5e5e5 1px solid\",\n borderRadius: 4,\n display: \"flex\",\n alignItems: \"center\",\n \"&:hover\": {\n borderColor: \"#393939\",\n },\n \"&:focus\": {\n backgroundColor: \"#fff\",\n },\n },\n }),\n)(InputBase);\n\nconst SelectWrapper = ({\n classes,\n id,\n name,\n onChange,\n options,\n label,\n tooltip = \"\",\n value,\n disabled = false,\n}: SelectProps) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n \n }\n disabled={disabled}\n >\n {options.map((option) => (\n \n {option.label}\n \n ))}\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(SelectWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { IconButtonProps } from \"@mui/material\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n root: {\n padding: 0,\n margin: 0,\n fontSize: \".9rem\",\n },\n });\n\ninterface IPanelTitle extends IconButtonProps {\n classes: any;\n children: any;\n}\n\nconst PanelTitle = ({ classes, children }: IPanelTitle) => {\n return

{children}

;\n};\n\nexport default withStyles(styles)(PanelTitle);\n"],"names":["withStyles","theme","createStyles","_objectSpread","formFieldRowAccordion","padding","spacingUtils","modalStyleUtils","formFieldStyles","createTenantCommon","_ref","_lifecycleRule$expira10","_lifecycleRule$expira11","_lifecycleRule$transi5","_lifecycleRule$transi6","_lifecycleRule$expira12","classes","closeModalAndRefresh","selectedBucket","lifecycleRule","open","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","loadingTiers","setLoadingTiers","_useState3","_useState4","addLoading","setAddLoading","_useState5","_useState6","tags","setTags","_useState7","_useState8","enabled","setEnabled","_useState9","_useState10","tiersList","setTiersList","_useState11","_useState12","prefix","setPrefix","_useState13","_useState14","storageClass","setStorageClass","_useState15","_useState16","NCTransitionSC","setNCTransitionSC","_useState17","_useState18","expiredObjectDM","setExpiredObjectDM","_useState19","_useState20","NCExpirationDays","setNCExpirationDays","_useState21","_useState22","NCTransitionDays","setNCTransitionDays","_useState23","_useState24","ilmType","setIlmType","_useState25","_useState26","expiryDays","setExpiryDays","_useState27","_useState28","transitionDays","setTransitionDays","_useState29","_useState30","isFormValid","setIsFormValid","useEffect","api","admin","then","res","get","data","length","objList","map","tier","tierType","type","value","concat","label","catch","valid","_lifecycleRule$expira3","status","_lifecycleRule$transi","_lifecycleRule$transi2","_lifecycleRule$transi3","_lifecycleRule$transi4","_lifecycleRule$expira","_lifecycleRule$expira2","transitionMode","transition","days","toString","noncurrent_transition_days","date","expiration","noncurrent_expiration_days","storage_class","noncurrent_storage_class","delete_marker","tgs","reduce","stringLab","currItem","index","key","objectVersion","_jsx","ModalWrapper","onClose","modalOpen","title","titleIcon","LifecycleConfigIcon","children","noValidate","autoComplete","onSubmit","e","event","preventDefault","rules","_lifecycleRule$expira4","_lifecycleRule$expira5","_lifecycleRule$expira6","expiry","parseInt","_lifecycleRule$expira7","_lifecycleRule$expira8","_lifecycleRule$expira9","lifecycleUpdate","disable","expired_object_delete_marker","buckets","updateBucketLifecycle","id","err","setModalErrorSnackMessage","saveRecord","_jsxs","Grid","container","item","xs","className","formScrollable","spacing","sx","marginTop","FormSwitchWrapper","indicatorLabels","checked","name","onChange","target","InputBoxWrapper","disabled","RadioGroupSelector","currentSelection","selectorOptions","disableOptions","min","Fragment","SelectWrapper","options","placeholder","Accordion","AccordionSummary","Typography","AccordionDetails","QueryMultiSelector","elements","vl","keyPlaceholder","valuePlaceholder","withBorder","modalButtonBar","Button","variant","onClick","color","LinearProgress","formFieldRowFilter","bucketName","distributedSetup","useSelector","selDistSet","versioningInfo","setVersioningInfo","targetVersion","setTargetVersion","lifecycleDays","setLifecycleDays","loadingVersioning","setLoadingVersioning","getBucketVersioning","errorToHandler","loadingBox","lifecycleInsert","addBucketLifecycle","addRecord","validity","pattern","overlayObject","InputUnitMenu","unitSelected","unitsList","description","modalBasic","onCloseAndRefresh","deleteOpen","bucket","deletingRule","setDeletingRule","deleteBucketLifecycleRule","setErrorSnackMessage","error","ConfirmDialog","confirmText","isOpen","isLoading","onConfirm","ConfirmDeleteIcon","confirmationContent","DialogContentText","searchField","actionsTray","twHeight","minHeight","loadingBucket","selBucketDetailsLoading","params","useParams","loadingLifecycle","setLoadingLifecycle","lifecycleRecords","setLifecycleRecords","addLifecycleOpen","setAddLifecycleOpen","editLifecycleOpen","setEditLifecycleOpen","selectedLifecycleRule","setSelectedLifecycleRule","deleteLifecycleOpen","setDeleteLifecycleOpen","selectedID","setSelectedID","displayLifeCycleRules","hasPermission","IAM_SCOPES","S3_GET_LIFECYCLE_CONFIGURATION","S3_GET_ACTIONS","setHelpName","getBucketLifecycle","records","console","lifecycleColumns","renderFullObject","renderFunction","el","elementKey","objectST","stClass","lifecycleActions","valueToSend","valueToDelete","sendOnlyId","EditLifecycleConfiguration","refresh","AddLifecycleModal","DeleteBucketLifecycleRule","PanelTitle","SecureComponent","scopes","S3_PUT_LIFECYCLE_CONFIGURATION","S3_PUT_ACTIONS","resource","matchAll","errorProps","TooltipWrapper","tooltip","icon","AddIcon","TableWrapper","itemActions","columns","entityName","customEmptyMessage","idField","customPaperHeight","HelpBox","iconComponent","TiersIcon","help","href","rel","StyledSwitch","root","width","height","margin","switchBase","transform","palette","common","white","backgroundColor","boxShadow","opacity","border","thumb","marginLeft","track","borderRadius","transitions","create","focusVisible","switchContainer","display","alignItems","justifyContent","Switch","indicatorLabelOn","fontWeight","indicatorLabel","fontSize","fieldDescription","fieldBasic","_ref$label","_ref$checked","_ref$disabled","_ref$switchOnly","switchOnly","_ref$tooltip","_ref$description","_ref$extraInputProps","extraInputProps","switchComponent","React","clsx","_defineProperty","inputProps","disableRipple","disableFocusRipple","disableTouchRipple","sm","md","InputLabel","htmlFor","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","textAlign","component","inputStyles","makeStyles","inputFieldStyles","InputField","props","TextField","InputProps","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","_ref$type","_ref$autoComplete","_ref$multiline","multiline","_ref$index","_ref$error","_ref$required","required","_ref$placeholder","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","_ref$autoFocus","autoFocus","_ref$className","onKeyPress","onFocus","onPaste","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","errorInField","inputBoxContainer","noMinWidthLabel","fullWidth","helperText","inputRebase","IconButton","size","buttonTrigger","onUnitChange","_React$useState","_React$useState2","anchorEl","setAnchorEl","Boolean","handleClose","newUnit","undefined","currentTarget","Menu","anchorOrigin","vertical","horizontal","transformOrigin","unit","MenuItem","inputWithBorder","overflowY","lineInputBoxes","marginBottom","queryDiv","alignSelf","_ref$keyPlaceholder","_ref$valuePlaceholder","_ref$withBorder","currentKeys","setCurrentKeys","currentValues","setCurrentValues","bottomList","createRef","elementsSplit","split","keys","values","forEach","element","splittedVals","push","refScroll","current","scrollIntoView","firstUpdate","useRef","useLayoutEffect","debouncedOnChange","onChangeKey","persist","updatedElement","_toConsumableArray","onChangeValue","debounce","queryString","keyVal","insertString","inputs","trim","keysList","valuesList","addEmptyLine","fieldContainer","ref","radioStyles","radioIcons","RadioButton","Radio","checkedIcon","radioSelectedIcon","radioUnselectedIcon","optionLabel","marginRight","checkedOption","_ref$selectorOptions","_ref$disableOptions","_ref$displayInColumn","displayInColumn","RadioGroup","row","style","selectorOption","FormControlLabel","control","SelectStyled","lineHeight","input","borderColor","InputBase","flexFlow","FormControl","Select","option"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/51.8430c021.chunk.js b/portal-ui/build/static/js/51.8430c021.chunk.js new file mode 100644 index 000000000..595d54dc0 --- /dev/null +++ b/portal-ui/build/static/js/51.8430c021.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[51],{51:function(e,n,t){t.r(n),t.d(n,{default:function(){return A}});var i=t(29439),r=t(72791),a=t(26181),o=t.n(a),s=t(29945),l=t(78687),c=t(31776),u=t(38442),d=t(56087),x=t(9859),p=t(57689),f=t(87995),h=t(81551),v=t(82342),y=t(23508),m=t(80184),g=function(e){var n=e.onCloseAndRefresh,t=e.deleteOpen,a=e.bucket,o=e.id,l=(0,h.TL)(),u=(0,r.useState)(!1),d=(0,i.Z)(u,2),x=d[0],p=d[1];(0,r.useEffect)((function(){x&&c.h.buckets.deleteBucketLifecycleRule(a,o).then((function(){p(!1),n(!0)})).catch((function(e){p(!1),l((0,f.Ih)((0,v.g)(e.error)))}))}),[x,a,o,n,l]);return(0,m.jsx)(y.Z,{title:"Delete Lifecycle Rule",confirmText:"Delete",isOpen:t,isLoading:x,onConfirm:function(){p(!0)},titleIcon:(0,m.jsx)(s.NvT,{}),onClose:function(){return n(!1)},confirmationContent:(0,m.jsxs)(r.Fragment,{children:["Are you sure you want to delete the ",(0,m.jsx)("strong",{children:o})," rule?"]})})},j=t(1413),b=t(89673),_=t(55818),Z=t(20890),C=t(3721),S=t(40986),k=t(23814),F=t(56028),E=t(17420),T=function(e){var n,t,a,l,u,d=e.closeModalAndRefresh,x=e.selectedBucket,p=e.lifecycleRule,v=e.open,y=(0,h.TL)(),g=(0,r.useState)(!0),T=(0,i.Z)(g,2),I=T[0],L=T[1],O=(0,r.useState)(!1),N=(0,i.Z)(O,2),A=N[0],P=N[1],R=(0,r.useState)(""),w=(0,i.Z)(R,2),z=w[0],B=w[1],V=(0,r.useState)(!1),D=(0,i.Z)(V,2),W=D[0],M=D[1],Y=(0,r.useState)([]),K=(0,i.Z)(Y,2),U=K[0],G=K[1],Q=(0,r.useState)(""),$=(0,i.Z)(Q,2),q=$[0],H=$[1],X=(0,r.useState)(""),J=(0,i.Z)(X,2),ee=J[0],ne=J[1],te=(0,r.useState)(""),ie=(0,i.Z)(te,2),re=ie[0],ae=ie[1],oe=(0,r.useState)(!1),se=(0,i.Z)(oe,2),le=se[0],ce=se[1],ue=(0,r.useState)("0"),de=(0,i.Z)(ue,2),xe=de[0],pe=de[1],fe=(0,r.useState)("0"),he=(0,i.Z)(fe,2),ve=he[0],ye=he[1],me=(0,r.useState)("expiry"),ge=(0,i.Z)(me,2),je=ge[0],be=ge[1],_e=(0,r.useState)("0"),Ze=(0,i.Z)(_e,2),Ce=Ze[0],Se=Ze[1],ke=(0,r.useState)("0"),Fe=(0,i.Z)(ke,2),Ee=Fe[0],Te=Fe[1],Ie=(0,r.useState)(!1),Le=(0,i.Z)(Ie,2),Oe=Le[0],Ne=Le[1],Ae={"& .MuiPaper-root":{padding:0}};(0,r.useEffect)((function(){I&&c.h.admin.tiersList().then((function(e){var n=o()(e.data,"items",[]);if(null!==n&&n.length>=1){var t=n.map((function(e){var n=e.type,t=o()(e,"".concat(n,".name"),"");return{label:t,value:t}}));G(t),t.length>0&&ne(t[0].value)}L(!1)})).catch((function(){L(!1)}))}),[I]),(0,r.useEffect)((function(){var e=!0;"expiry"!==je&&""===ee&&(e=!1),Ne(e)}),[je,Ce,Ee,ee]),(0,r.useEffect)((function(){var e;"Enabled"===p.status&&M(!0);var n,t,i,r,a,o,s=!1;(p.transition&&(p.transition.days&&0!==p.transition.days&&(Te(p.transition.days.toString()),be("transition"),s=!0),p.transition.noncurrent_transition_days&&0!==p.transition.noncurrent_transition_days&&(ye(p.transition.noncurrent_transition_days.toString()),be("transition"),s=!0),p.transition.date&&"0001-01-01T00:00:00Z"!==p.transition.date&&(be("transition"),s=!0)),p.expiration&&(p.expiration.days&&0!==p.expiration.days&&(Se(p.expiration.days.toString()),be("expiry"),s=!1),p.expiration.noncurrent_expiration_days&&0!==p.expiration.noncurrent_expiration_days&&(pe(p.expiration.noncurrent_expiration_days.toString()),be("expiry"),s=!1),p.expiration.date&&"0001-01-01T00:00:00Z"!==p.expiration.date&&(be("expiry"),s=!1)),s)?(ne((null===(n=p.transition)||void 0===n?void 0:n.storage_class)||""),ye((null===(t=p.transition)||void 0===t||null===(i=t.noncurrent_transition_days)||void 0===i?void 0:i.toString())||"0"),ae((null===(r=p.transition)||void 0===r?void 0:r.noncurrent_storage_class)||"")):pe((null===(a=p.expiration)||void 0===a||null===(o=a.noncurrent_expiration_days)||void 0===o?void 0:o.toString())||"0");if(ce(!(null===(e=p.expiration)||void 0===e||!e.delete_marker)),H(p.prefix||""),p.tags){var l=p.tags.reduce((function(e,n,t){return"".concat(e).concat(0!==t?"&":"").concat(n.key,"=").concat(n.value)}),"");B(l)}}),[p]);var Pe="";return p.expiration&&(p.expiration.days>0?Pe="Current Version":p.expiration.noncurrent_expiration_days&&(Pe="Non-Current Version")),p.transition&&(p.transition.days>0?Pe="Current Version":p.transition.noncurrent_transition_days&&(Pe="Non-Current Version")),(0,m.jsx)(F.Z,{onClose:function(){d(!1)},modalOpen:v,title:"Edit Lifecycle Configuration",titleIcon:(0,m.jsx)(s.QIv,{}),children:(0,m.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){if(e.preventDefault(),!A&&(P(!0),null!==x&&null!==p)){var n={};if("expiry"===je){var t,i,r,a={};null!==(t=p.expiration)&&void 0!==t&&t.days&&(null===(i=p.expiration)||void 0===i?void 0:i.days)>0&&(a.expiry_days=parseInt(Ce)),null!==(r=p.expiration)&&void 0!==r&&r.noncurrent_expiration_days&&(a.noncurrentversion_expiration_days=parseInt(xe)),n=(0,j.Z)({},a)}else{var o,s,l,u={};null!==(o=p.expiration)&&void 0!==o&&o.days&&(null===(s=p.expiration)||void 0===s?void 0:s.days)>0&&(u.transition_days=parseInt(Ce),u.storage_class=ee),null!==(l=p.expiration)&&void 0!==l&&l.noncurrent_expiration_days&&(u.noncurrentversion_transition_days=parseInt(xe),u.noncurrentversion_transition_storage_class=re),n=(0,j.Z)({},u)}var h=(0,j.Z)({type:je,disable:!W,prefix:q,tags:z,expired_object_delete_marker:le},n);c.h.buckets.updateBucketLifecycle(x,p.id,h).then((function(e){P(!1),d(!0)})).catch((function(e){P(!1),y((0,f.zb)(e))}))}}(e)},children:(0,m.jsxs)(s.ltY,{containerPadding:!1,withBorders:!1,children:[(0,m.jsx)(s.rsf,{label:"Status",indicatorLabels:["Enabled","Disabled"],checked:W,value:"user_enabled",id:"rule_status",name:"rule_status",onChange:function(e){M(e.target.checked)}}),(0,m.jsx)(s.Wzg,{id:"id",name:"id",label:"Id",value:p.id,onChange:function(){},disabled:!0}),(0,m.jsx)(s.Eep,{currentValue:je,id:"rule_type",name:"rule_type",label:"Rule Type",selectorOptions:[{value:"expiry",label:"Expiry"},{value:"transition",label:"Transition"}],onChange:function(){},disableOptions:!0}),(0,m.jsx)(s.Wzg,{id:"object-version",name:"object-version",label:"Object Version",value:Pe,onChange:function(){},disabled:!0}),"expiry"===je&&(null===(n=p.expiration)||void 0===n?void 0:n.days)&&(0,m.jsx)(s.Wzg,{type:"number",id:"expiry_days",name:"expiry_days",onChange:function(e){Se(e.target.value)},label:"Expiry Days",value:Ce,min:"0"}),"expiry"===je&&(null===(t=p.expiration)||void 0===t?void 0:t.noncurrent_expiration_days)&&(0,m.jsx)(s.Wzg,{type:"number",id:"noncurrentversion_expiration_days",name:"noncurrentversion_expiration_days",onChange:function(e){pe(e.target.value)},label:"Non-current Expiration Days",value:xe,min:"0"}),"transition"===je&&(null===(a=p.transition)||void 0===a?void 0:a.days)&&(0,m.jsxs)(r.Fragment,{children:[(0,m.jsx)(s.Wzg,{type:"number",id:"transition_days",name:"transition_days",onChange:function(e){Te(e.target.value)},label:"Transition Days",value:Ee,min:"0"}),(0,m.jsx)(s.PhF,{label:"Storage Class",id:"storage_class",name:"storage_class",value:ee,onChange:function(e){ne(e)},options:U})]}),"transition"===je&&(null===(l=p.transition)||void 0===l?void 0:l.noncurrent_transition_days)&&(0,m.jsxs)(r.Fragment,{children:[(0,m.jsx)(s.Wzg,{type:"number",id:"noncurrentversion_transition_days",name:"noncurrentversion_transition_days",onChange:function(e){ye(e.target.value)},label:"Non-current Transition Days",value:ve,min:"0"}),(0,m.jsx)(s.Wzg,{id:"noncurrentversion_t_SC",name:"noncurrentversion_t_SC",onChange:function(e){ae(e.target.value)},placeholder:"Set Non-current Version Transition Storage Class",label:"Non-current Version Transition Storage Class",value:re})]}),(0,m.jsx)(s.rjZ,{item:!0,xs:12,sx:Ae,children:(0,m.jsxs)(b.Z,{children:[(0,m.jsx)(_.Z,{children:(0,m.jsx)(Z.Z,{children:"Filters"})}),(0,m.jsxs)(C.Z,{children:[(0,m.jsx)(s.Wzg,{id:"prefix",name:"prefix",onChange:function(e){H(e.target.value)},label:"Prefix",value:q}),(0,m.jsx)(E.Z,{name:"tags",label:"Tags",elements:z,onChange:function(e){B(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})]})]})}),"expiry"===je&&(null===(u=p.expiration)||void 0===u?void 0:u.noncurrent_expiration_days)&&(0,m.jsx)(s.rjZ,{item:!0,xs:12,sx:Ae,children:(0,m.jsxs)(b.Z,{children:[(0,m.jsx)(_.Z,{children:(0,m.jsx)(Z.Z,{children:"Advanced"})}),(0,m.jsx)(C.Z,{children:(0,m.jsx)(s.rsf,{value:"expired_delete_marker",id:"expired_delete_marker",name:"expired_delete_marker",checked:le,onChange:function(e){ce(e.target.checked)},label:"Expired Object Delete Marker"})})]})}),(0,m.jsxs)(s.rjZ,{item:!0,xs:12,sx:k.ID.modalButtonBar,children:[(0,m.jsx)(s.zxk,{id:"cancel",type:"button",variant:"regular",disabled:A,onClick:function(){d(!1)},label:"Cancel"}),(0,m.jsx)(s.zxk,{id:"save",type:"submit",variant:"callAction",color:"primary",disabled:A||!Oe,label:"Save"})]}),A&&(0,m.jsx)(s.rjZ,{item:!0,xs:12,children:(0,m.jsx)(S.Z,{})})]})})})},I=t(84741),L=t(81159),O=function(e){var n=e.open,t=e.closeModalAndRefresh,a=e.bucketName,u=(0,h.TL)(),d=(0,l.v9)(f.N5),x=(0,r.useState)(!0),p=(0,i.Z)(x,2),y=p[0],g=p[1],T=(0,r.useState)([]),O=(0,i.Z)(T,2),N=O[0],A=O[1],P=(0,r.useState)(!1),R=(0,i.Z)(P,2),w=R[0],z=R[1],B=(0,r.useState)(null),V=(0,i.Z)(B,2),D=V[0],W=V[1],M=(0,r.useState)(""),Y=(0,i.Z)(M,2),K=Y[0],U=Y[1],G=(0,r.useState)(""),Q=(0,i.Z)(G,2),$=Q[0],q=Q[1],H=(0,r.useState)(""),X=(0,i.Z)(H,2),J=X[0],ee=X[1],ne=(0,r.useState)("expiry"),te=(0,i.Z)(ne,2),ie=te[0],re=te[1],ae=(0,r.useState)("current"),oe=(0,i.Z)(ae,2),se=oe[0],le=oe[1],ce=(0,r.useState)(""),ue=(0,i.Z)(ce,2),de=ue[0],xe=ue[1],pe=(0,r.useState)(!1),fe=(0,i.Z)(pe,2),he=fe[0],ve=fe[1],ye=(0,r.useState)(!1),me=(0,i.Z)(ye,2),ge=me[0],je=me[1],be=(0,r.useState)(!0),_e=(0,i.Z)(be,2),Ze=_e[0],Ce=_e[1],Se={"& .MuiPaper-root":{padding:0}};(0,r.useEffect)((function(){y&&c.h.admin.tiersList().then((function(e){var n=o()(e.data,"items",[]);if(null!==n&&n.length>=1){var t=n.map((function(e){var n=e.type,t=o()(e,"".concat(n,".name"),"");return{label:t,value:t}}));A(t),t.length>0&&ee(t[0].value)}g(!1)})).catch((function(){g(!1)}))}),[y]),(0,r.useEffect)((function(){var e=!0;"expiry"!==ie&&""===J&&(e=!1),ve(e)}),[ie,de,J]),(0,r.useEffect)((function(){Ze&&d&&c.h.buckets.getBucketVersioning(a).then((function(e){W(e.data),Ce(!1)})).catch((function(e){u((0,f.zb)((0,v.g)(e))),Ce(!1)}))}),[Ze,u,a,d]);return(0,m.jsxs)(F.Z,{modalOpen:n,onClose:function(){t(!1)},title:"Add Lifecycle Rule",titleIcon:(0,m.jsx)(s.QIv,{}),children:[y&&(0,m.jsx)(s.rjZ,{container:!0,children:(0,m.jsx)(s.rjZ,{item:!0,xs:12,children:(0,m.jsx)(S.Z,{})})}),!y&&(0,m.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),z(!0),function(){var e={};if("expiry"===ie){var n={};"current"===se?n.expiry_days=parseInt(de):n.noncurrentversion_expiration_days=parseInt(de),e=(0,j.Z)({},n)}else{var i={};"current"===se?(i.transition_days=parseInt(de),i.storage_class=J):(i.noncurrentversion_transition_days=parseInt(de),i.noncurrentversion_transition_storage_class=J),e=(0,j.Z)({},i)}var r=(0,j.Z)({type:ie,prefix:K,tags:$,expired_object_delete_marker:ge},e);c.h.buckets.addBucketLifecycle(a,r).then((function(){z(!1),t(!0)})).catch((function(e){z(!1),u((0,f.zb)((0,v.g)(e)))}))}()},children:(0,m.jsxs)(s.ltY,{withBorders:!1,containerPadding:!1,children:[(0,m.jsx)(s.Eep,{currentValue:ie,id:"ilm_type",name:"ilm_type",label:"Type of lifecycle",onChange:function(e){re(e.target.value)},selectorOptions:[{value:"expiry",label:"Expiry"},{value:"transition",label:"Transition"}]}),"Enabled"===(null===D||void 0===D?void 0:D.status)&&(0,m.jsx)(s.PhF,{value:se,id:"object_version",name:"object_version",label:"Object Version",onChange:function(e){le(e)},options:[{value:"current",label:"Current Version"},{value:"noncurrent",label:"Non-Current Version"}]}),(0,m.jsx)(s.Wzg,{id:"expiry_days",name:"expiry_days",onChange:function(e){e.target.validity.valid&&xe(e.target.value)},pattern:"[0-9]*",label:"After",value:de,overlayObject:(0,m.jsx)(I.Z,{id:"expire-current-unit",unitSelected:"days",unitsList:[{label:"Days",value:"days"}],disabled:!0})}),"expiry"===ie?(0,m.jsx)(r.Fragment,{}):(0,m.jsx)(s.PhF,{label:"To Tier",id:"storage_class",name:"storage_class",value:J,onChange:function(e){ee(e)},options:N}),(0,m.jsx)(s.rjZ,{item:!0,xs:12,sx:Se,children:(0,m.jsxs)(b.Z,{children:[(0,m.jsx)(_.Z,{children:(0,m.jsx)(Z.Z,{children:"Filters"})}),(0,m.jsxs)(C.Z,{children:[(0,m.jsx)(s.rjZ,{item:!0,xs:12,children:(0,m.jsx)(s.Wzg,{id:"prefix",name:"prefix",onChange:function(e){U(e.target.value)},label:"Prefix",value:K})}),(0,m.jsx)(s.rjZ,{item:!0,xs:12,children:(0,m.jsx)(E.Z,{name:"tags",label:"Tags",elements:"",onChange:function(e){q(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})})]})]})}),"expiry"===ie&&"noncurrent"===se&&(0,m.jsx)(s.rjZ,{item:!0,xs:12,sx:Se,children:(0,m.jsxs)(b.Z,{children:[(0,m.jsx)(_.Z,{children:(0,m.jsx)(Z.Z,{children:"Advanced"})}),(0,m.jsx)(C.Z,{children:(0,m.jsx)(s.rjZ,{item:!0,xs:12,children:(0,m.jsx)(L.Z,{value:"expired_delete_marker",id:"expired_delete_marker",name:"expired_delete_marker",checked:ge,onChange:function(e){je(e.target.checked)},label:"Expire Delete Marker",description:"Remove the reference to the object if no versions are left"})})})]})}),(0,m.jsxs)(s.rjZ,{item:!0,xs:12,sx:k.ID.modalButtonBar,children:[(0,m.jsx)(s.zxk,{id:"reset",type:"button",variant:"regular",disabled:w,onClick:function(){t(!1)},label:"Cancel"}),(0,m.jsx)(s.zxk,{id:"save-lifecycle",type:"submit",variant:"callAction",color:"primary",disabled:w||!he,label:"Save"})]}),w&&(0,m.jsx)(s.rjZ,{item:!0,xs:12,children:(0,m.jsx)(S.Z,{})})]})})]})},N=t(27454),A=function(){var e=(0,l.v9)(x.HQ),n=(0,p.UO)(),t=(0,r.useState)(!0),a=(0,i.Z)(t,2),v=a[0],y=a[1],j=(0,r.useState)([]),b=(0,i.Z)(j,2),_=b[0],Z=b[1],C=(0,r.useState)(!1),S=(0,i.Z)(C,2),k=S[0],F=S[1],E=(0,r.useState)(!1),I=(0,i.Z)(E,2),L=I[0],A=I[1],P=(0,r.useState)(null),R=(0,i.Z)(P,2),w=R[0],z=R[1],B=(0,r.useState)(!1),V=(0,i.Z)(B,2),D=V[0],W=V[1],M=(0,r.useState)(null),Y=(0,i.Z)(M,2),K=Y[0],U=Y[1],G=(0,h.TL)(),Q=n.bucketName||"",$=(0,u.F)(Q,[d.Ft.S3_GET_LIFECYCLE_CONFIGURATION,d.Ft.S3_GET_ACTIONS]);(0,r.useEffect)((function(){e&&y(!0)}),[e,y]),(0,r.useEffect)((function(){G((0,f.Sc)("bucket_detail_lifecycle"))}),[]),(0,r.useEffect)((function(){v&&($?c.h.buckets.getBucketLifecycle(Q).then((function(e){var n=o()(e.data,"lifecycle",[]);Z(n||[]),y(!1)})).catch((function(e){console.error(e.error),Z([]),y(!1)})):y(!1))}),[v,y,Q,$]);var q=[{label:"Type",renderFullObject:!0,renderFunction:function(e){return e?e.expiration&&(e.expiration.days>0||e.expiration.noncurrent_expiration_days)?(0,m.jsx)("span",{children:"Expiry"}):e.transition&&(e.transition.days>0||e.transition.noncurrent_transition_days)?(0,m.jsx)("span",{children:"Transition"}):(0,m.jsx)(r.Fragment,{}):(0,m.jsx)(r.Fragment,{})}},{label:"Version",renderFullObject:!0,renderFunction:function(e){if(!e)return(0,m.jsx)(r.Fragment,{});if(e.expiration){if(e.expiration.days>0)return(0,m.jsx)("span",{children:"Current"});if(e.expiration.noncurrent_expiration_days)return(0,m.jsx)("span",{children:"Non-Current"})}if(e.transition){if(e.transition.days>0)return(0,m.jsx)("span",{children:"Current"});if(e.transition.noncurrent_transition_days)return(0,m.jsx)("span",{children:"Non-Current"})}}},{label:"Tier",elementKey:"storage_class",renderFunction:function(e){var n=o()(e,"transition.storage_class","");return n=o()(e,"transition.noncurrent_storage_class",n)},renderFullObject:!0},{label:"Prefix",elementKey:"prefix"},{label:"After",renderFullObject:!0,renderFunction:function(e){if(!e)return(0,m.jsx)(r.Fragment,{});if(e.expiration){if(e.expiration.days>0)return(0,m.jsxs)("span",{children:[e.expiration.days," days"]});if(e.expiration.noncurrent_expiration_days)return(0,m.jsxs)("span",{children:[e.expiration.noncurrent_expiration_days," days"]})}if(e.transition){if(e.transition.days>0)return(0,m.jsxs)("span",{children:[e.transition.days," days"]});if(e.transition.noncurrent_transition_days)return(0,m.jsxs)("span",{children:[e.transition.noncurrent_transition_days," days"]})}}},{label:"Status",elementKey:"status"}],H=[{type:"view",onClick:function(e){z(e),A(!0)}},{type:"delete",onClick:function(e){U(e),W(!0)},sendOnlyId:!0}];return(0,m.jsxs)(r.Fragment,{children:[L&&w&&(0,m.jsx)(T,{open:L,closeModalAndRefresh:function(e){A(!1),z(null),e&&y(!0)},selectedBucket:Q,lifecycleRule:w}),k&&(0,m.jsx)(O,{open:k,bucketName:Q,closeModalAndRefresh:function(e){F(!1),e&&y(!0)}}),D&&K&&(0,m.jsx)(g,{id:K,bucket:Q,deleteOpen:D,onCloseAndRefresh:function(e){W(!1),U(null),e&&y(!0)}}),(0,m.jsx)(s.NZf,{separator:!0,sx:{marginBottom:15},actions:(0,m.jsx)(u.s,{scopes:[d.Ft.S3_PUT_LIFECYCLE_CONFIGURATION,d.Ft.S3_PUT_ACTIONS],resource:Q,matchAll:!0,errorProps:{disabled:!0},children:(0,m.jsx)(N.Z,{tooltip:"Add Lifecycle Rule",children:(0,m.jsx)(s.zxk,{id:"add-bucket-lifecycle-rule",onClick:function(){F(!0)},label:"Add Lifecycle Rule",icon:(0,m.jsx)(s.dtP,{}),variant:"callAction"})})}),children:"Lifecycle Rules"}),(0,m.jsxs)(s.rjZ,{container:!0,children:[(0,m.jsx)(s.rjZ,{item:!0,xs:12,children:(0,m.jsx)(u.s,{scopes:[d.Ft.S3_GET_LIFECYCLE_CONFIGURATION,d.Ft.S3_GET_ACTIONS],resource:Q,errorProps:{disabled:!0},children:(0,m.jsx)(s.wQF,{itemActions:H,columns:q,isLoading:v,records:_,entityName:"Lifecycle",customEmptyMessage:"There are no Lifecycle rules yet",idField:"id",customPaperHeight:"400px"})})}),!v&&(0,m.jsxs)(s.rjZ,{item:!0,xs:12,children:[(0,m.jsx)("br",{}),(0,m.jsx)(s.KfX,{title:"Lifecycle Rules",iconComponent:(0,m.jsx)(s.y2Y,{}),help:(0,m.jsxs)(r.Fragment,{children:["MinIO Object Lifecycle Management allows creating rules for time or date based automatic transition or expiry of objects. For object transition, MinIO automatically moves the object to a configured remote storage tier.",(0,m.jsx)("br",{}),(0,m.jsx)("br",{}),"You can learn more at our"," ",(0,m.jsx)("a",{href:"https://min.io/docs/minio/linux/administration/object-management/object-lifecycle-management.html?ref=con",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})]})]})]})}},81159:function(e,n,t){var i=t(4942),r=t(1413),a=t(72791),o=t(11135),s=t(25787),l=t(9955),c=t(30829),u=t(20068),d=t(20890),x=t(61889),p=t(23814),f=t(29945),h=t(28182),v=t(80184),y=(0,s.Z)((function(e){return{root:{width:50,height:24,padding:0,margin:0},switchBase:{padding:1,"&$checked":{transform:"translateX(24px)",color:e.palette.common.white,"& + $track":{backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,border:"none"}},"&$focusVisible $thumb":{color:"#4CCB92",border:"6px solid #fff"}},thumb:{width:22,height:22,backgroundColor:"#FAFAFA",border:"2px solid #FFFFFF",marginLeft:1},track:{borderRadius:12,backgroundColor:"#E2E2E2",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,transition:e.transitions.create(["background-color","border"])},checked:{},focusVisible:{},switchContainer:{display:"flex",alignItems:"center",justifyContent:"flex-end"}}}))(l.Z);n.Z=(0,s.Z)((function(e){return(0,o.Z)((0,r.Z)((0,r.Z)({indicatorLabelOn:{fontWeight:"bold",color:"#081C42 !important"},indicatorLabel:{fontSize:12,color:"#E2E2E2",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"},tooltip:{fontSize:16}},p.OR),p.YI))}))((function(e){var n=e.label,t=void 0===n?"":n,o=e.onChange,s=e.value,l=e.id,p=e.name,m=e.checked,g=void 0!==m&&m,j=e.disabled,b=void 0!==j&&j,_=e.switchOnly,Z=void 0!==_&&_,C=e.tooltip,S=void 0===C?"":C,k=e.description,F=void 0===k?"":k,E=e.classes,T=e.indicatorLabels,I=e.extraInputProps,L=void 0===I?{}:I,O=(0,v.jsxs)(a.Fragment,{children:[!Z&&(0,v.jsx)("span",{className:(0,h.Z)(E.indicatorLabel,(0,i.Z)({},E.indicatorLabelOn,!g)),children:T&&T.length>1?T[1]:"OFF"}),(0,v.jsx)(y,{checked:g,onChange:o,color:"primary",name:p,inputProps:(0,r.Z)({"aria-label":"primary checkbox"},L),disabled:b,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:s,id:l}),!Z&&(0,v.jsx)("span",{className:(0,h.Z)(E.indicatorLabel,(0,i.Z)({},E.indicatorLabelOn,g)),children:T?T[0]:"ON"})]});return Z?O:(0,v.jsx)("div",{children:(0,v.jsxs)(x.ZP,{container:!0,alignItems:"center",children:[(0,v.jsx)(x.ZP,{item:!0,xs:12,sm:8,md:8,children:""!==t&&(0,v.jsxs)(c.Z,{htmlFor:l,className:E.inputLabel,children:[(0,v.jsx)("span",{children:t}),""!==S&&(0,v.jsx)("div",{className:E.tooltipContainer,children:(0,v.jsx)(u.Z,{title:S,placement:"top-start",children:(0,v.jsx)("div",{className:E.tooltip,children:(0,v.jsx)(f.byK,{})})})})]})}),(0,v.jsx)(x.ZP,{item:!0,xs:12,sm:""!==t?4:12,md:""!==t?4:12,textAlign:"right",justifyContent:"end",className:E.switchContainer,children:O}),""!==F&&(0,v.jsx)(x.ZP,{item:!0,xs:12,textAlign:"left",children:(0,v.jsx)(d.Z,{component:"p",className:E.fieldDescription,children:F})})]})})}))},84741:function(e,n,t){var i=t(29439),r=t(72791),a=t(11135),o=t(25787),s=t(71715),l=t(77865),c=t(80184);n.Z=(0,o.Z)((function(e){return(0,a.Z)({buttonTrigger:{border:"#F0F2F2 1px solid",borderRadius:3,color:"#838383",backgroundColor:"#fff",fontSize:12}})}))((function(e){var n=e.classes,t=e.id,a=e.unitSelected,o=e.unitsList,u=e.disabled,d=void 0!==u&&u,x=e.onUnitChange,p=r.useState(null),f=(0,i.Z)(p,2),h=f[0],v=f[1],y=Boolean(h),m=function(e){v(null),""!==e&&x&&x(e)};return(0,c.jsxs)(r.Fragment,{children:[(0,c.jsx)("button",{id:"".concat(t,"-button"),"aria-controls":"".concat(t,"-menu"),"aria-haspopup":"true","aria-expanded":y?"true":void 0,onClick:function(e){v(e.currentTarget)},className:n.buttonTrigger,disabled:d,type:"button",children:a}),(0,c.jsx)(s.Z,{id:"".concat(t,"-menu"),"aria-labelledby":"".concat(t,"-button"),anchorEl:h,open:y,onClose:function(){m("")},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:o.map((function(e){return(0,c.jsx)(l.Z,{onClick:function(){return m(e.value)},children:e.label},"itemUnit-".concat(e.value,"-").concat(e.label))}))})]})}))},17420:function(e,n,t){var i=t(93433),r=t(29439),a=t(72791),o=t(26181),s=t.n(o),l=t(48573),c=t.n(l),u=t(29945),d=t(80184);n.Z=function(e){var n=e.elements,t=e.name,o=e.label,l=e.tooltip,x=void 0===l?"":l,p=e.keyPlaceholder,f=void 0===p?"":p,h=e.valuePlaceholder,v=void 0===h?"":h,y=e.onChange,m=e.withBorder,g=void 0!==m&&m,j=(0,a.useState)([""]),b=(0,r.Z)(j,2),_=b[0],Z=b[1],C=(0,a.useState)([""]),S=(0,r.Z)(C,2),k=S[0],F=S[1],E=(0,a.createRef)();(0,a.useEffect)((function(){if(1===_.length&&""===_[0]&&1===k.length&&""===k[0]&&n&&""!==n){var e=n.split("&"),t=[],i=[];e.forEach((function(e){var n=e.split("=");2===n.length&&(t.push(n[0]),i.push(n[1]))})),t.push(""),i.push(""),Z(t),F(i)}}),[_,k,n]),(0,a.useEffect)((function(){var e=E.current;e&&_.length>1&&e.scrollIntoView(!1)}),[_]);var T=(0,a.useRef)(!0);(0,a.useLayoutEffect)((function(){T.current?T.current=!1:O()}),[_,k]);var I=function(e){e.persist();var n=(0,i.Z)(_),t=s()(e.target,"dataset.index","0");n[parseInt(t)]=e.target.value,Z(n)},L=function(e){e.persist();var n=(0,i.Z)(k),t=s()(e.target,"dataset.index","0");n[parseInt(t)]=e.target.value,F(n)},O=c()((function(){var e="";_.forEach((function(n,t){if(_[t]&&k[t]){var i="".concat(n,"=").concat(k[t]);0!==t&&(i="&".concat(i)),e="".concat(e).concat(i)}})),y(e)}),500),N=k.map((function(e,n){return(0,d.jsxs)(u.rjZ,{item:!0,xs:12,className:"lineInputBoxes inputItem",children:[(0,d.jsx)(u.Wzg,{id:"".concat(t,"-key-").concat(n.toString()),label:"",name:"".concat(t,"-").concat(n.toString()),value:_[n],onChange:I,index:n,placeholder:f}),(0,d.jsx)("span",{className:"queryDiv",children:":"}),(0,d.jsx)(u.Wzg,{id:"".concat(t,"-value-").concat(n.toString()),label:"",name:"".concat(t,"-").concat(n.toString()),value:k[n],onChange:L,index:n,placeholder:v,overlayIcon:n===k.length-1?(0,d.jsx)(u.dtP,{}):null,overlayAction:function(){!function(){if(""!==_[_.length-1].trim()&&""!==k[k.length-1].trim()){var e=(0,i.Z)(_),n=(0,i.Z)(k);e.push(""),n.push(""),Z(e),F(n)}}()}})]},"query-pair-".concat(t,"-").concat(n.toString()))}));return(0,d.jsx)(a.Fragment,{children:(0,d.jsxs)(u.rjZ,{item:!0,xs:12,sx:{"& .lineInputBoxes":{display:"flex"},"& .queryDiv":{alignSelf:"center",margin:"-15px 4px 0",fontWeight:600}},children:[(0,d.jsxs)(u.AZs,{children:[o,""!==x&&(0,d.jsx)(u.xuv,{sx:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},children:(0,d.jsx)(u.ua7,{tooltip:x,placement:"top",children:(0,d.jsx)(u.byK,{style:{width:13,height:13}})})})]}),(0,d.jsxs)(u.xuv,{withBorders:g,sx:{padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},children:[N,(0,d.jsx)("div",{ref:E})]})]})})}}}]); +//# sourceMappingURL=51.8430c021.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/51.8430c021.chunk.js.map b/portal-ui/build/static/js/51.8430c021.chunk.js.map new file mode 100644 index 000000000..c3613d41e --- /dev/null +++ b/portal-ui/build/static/js/51.8430c021.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/51.8430c021.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/DeleteBucketLifecycleRule.tsx","screens/Console/Buckets/BucketDetails/EditLifecycleConfiguration.tsx","screens/Console/Buckets/BucketDetails/AddLifecycleModal.tsx","screens/Console/Buckets/BucketDetails/BucketLifecyclePanel.tsx","screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu.tsx","screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState, Fragment } from \"react\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\n\ninterface IDeleteLifecycleRule {\n deleteOpen: boolean;\n onCloseAndRefresh: (refresh: boolean) => any;\n bucket: string;\n id: string;\n}\n\nconst DeleteBucketLifecycleRule = ({\n onCloseAndRefresh,\n deleteOpen,\n bucket,\n id,\n}: IDeleteLifecycleRule) => {\n const dispatch = useAppDispatch();\n const [deletingRule, setDeletingRule] = useState(false);\n\n useEffect(() => {\n if (deletingRule) {\n api.buckets\n .deleteBucketLifecycleRule(bucket, id)\n .then(() => {\n setDeletingRule(false);\n onCloseAndRefresh(true);\n })\n .catch((err) => {\n setDeletingRule(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [deletingRule, bucket, id, onCloseAndRefresh, dispatch]);\n\n const onConfirmDelete = () => {\n setDeletingRule(true);\n };\n\n return (\n }\n onClose={() => onCloseAndRefresh(false)}\n confirmationContent={\n \n Are you sure you want to delete the {id} rule?\n \n }\n />\n );\n};\n\nexport default DeleteBucketLifecycleRule;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport {\n Button,\n FormLayout,\n Grid,\n InputBox,\n LifecycleConfigIcon,\n RadioGroup,\n Select,\n Switch,\n} from \"mds\";\nimport {\n Accordion,\n AccordionDetails,\n AccordionSummary,\n LinearProgress,\n Typography,\n} from \"@mui/material\";\nimport { api } from \"api\";\nimport { Tier } from \"api/consoleApi\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport { ITiersDropDown, LifeCycleItem } from \"../types\";\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport QueryMultiSelector from \"../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector\";\n\ninterface IAddUserContentProps {\n closeModalAndRefresh: (reload: boolean) => void;\n selectedBucket: string;\n lifecycleRule: LifeCycleItem;\n open: boolean;\n}\n\nconst EditLifecycleConfiguration = ({\n closeModalAndRefresh,\n selectedBucket,\n lifecycleRule,\n open,\n}: IAddUserContentProps) => {\n const dispatch = useAppDispatch();\n const [loadingTiers, setLoadingTiers] = useState(true);\n const [addLoading, setAddLoading] = useState(false);\n const [tags, setTags] = useState(\"\");\n const [enabled, setEnabled] = useState(false);\n const [tiersList, setTiersList] = useState([]);\n const [prefix, setPrefix] = useState(\"\");\n const [storageClass, setStorageClass] = useState(\"\");\n const [NCTransitionSC, setNCTransitionSC] = useState(\"\");\n const [expiredObjectDM, setExpiredObjectDM] = useState(false);\n const [NCExpirationDays, setNCExpirationDays] = useState(\"0\");\n const [NCTransitionDays, setNCTransitionDays] = useState(\"0\");\n const [ilmType, setIlmType] = useState<\"transition\" | \"expiry\">(\"expiry\");\n const [expiryDays, setExpiryDays] = useState(\"0\");\n const [transitionDays, setTransitionDays] = useState(\"0\");\n const [isFormValid, setIsFormValid] = useState(false);\n\n /*To be removed on component replacement*/\n const formFieldRowFilter = {\n \"& .MuiPaper-root\": { padding: 0 },\n };\n\n useEffect(() => {\n if (loadingTiers) {\n api.admin\n .tiersList()\n .then((res) => {\n const tiersList: Tier[] | null = get(res.data, \"items\", []);\n\n if (tiersList !== null && tiersList.length >= 1) {\n const objList = tiersList.map((tier: Tier) => {\n const tierType = tier.type;\n const value = get(tier, `${tierType}.name`, \"\");\n\n return { label: value, value: value };\n });\n\n setTiersList(objList);\n if (objList.length > 0) {\n setStorageClass(objList[0].value);\n }\n }\n setLoadingTiers(false);\n })\n .catch(() => {\n setLoadingTiers(false);\n });\n }\n }, [loadingTiers]);\n\n useEffect(() => {\n let valid = true;\n\n if (ilmType !== \"expiry\") {\n if (storageClass === \"\") {\n valid = false;\n }\n }\n setIsFormValid(valid);\n }, [ilmType, expiryDays, transitionDays, storageClass]);\n\n useEffect(() => {\n if (lifecycleRule.status === \"Enabled\") {\n setEnabled(true);\n }\n\n let transitionMode = false;\n\n if (lifecycleRule.transition) {\n if (\n lifecycleRule.transition.days &&\n lifecycleRule.transition.days !== 0\n ) {\n setTransitionDays(lifecycleRule.transition.days.toString());\n setIlmType(\"transition\");\n transitionMode = true;\n }\n if (\n lifecycleRule.transition.noncurrent_transition_days &&\n lifecycleRule.transition.noncurrent_transition_days !== 0\n ) {\n setNCTransitionDays(\n lifecycleRule.transition.noncurrent_transition_days.toString(),\n );\n setIlmType(\"transition\");\n transitionMode = true;\n }\n\n // Fallback to old rules by date\n if (\n lifecycleRule.transition.date &&\n lifecycleRule.transition.date !== \"0001-01-01T00:00:00Z\"\n ) {\n setIlmType(\"transition\");\n transitionMode = true;\n }\n }\n\n if (lifecycleRule.expiration) {\n if (\n lifecycleRule.expiration.days &&\n lifecycleRule.expiration.days !== 0\n ) {\n setExpiryDays(lifecycleRule.expiration.days.toString());\n setIlmType(\"expiry\");\n transitionMode = false;\n }\n if (\n lifecycleRule.expiration.noncurrent_expiration_days &&\n lifecycleRule.expiration.noncurrent_expiration_days !== 0\n ) {\n setNCExpirationDays(\n lifecycleRule.expiration.noncurrent_expiration_days.toString(),\n );\n setIlmType(\"expiry\");\n transitionMode = false;\n }\n\n // Fallback to old rules by date\n if (\n lifecycleRule.expiration.date &&\n lifecycleRule.expiration.date !== \"0001-01-01T00:00:00Z\"\n ) {\n setIlmType(\"expiry\");\n transitionMode = false;\n }\n }\n\n // Transition fields\n if (transitionMode) {\n setStorageClass(lifecycleRule.transition?.storage_class || \"\");\n setNCTransitionDays(\n lifecycleRule.transition?.noncurrent_transition_days?.toString() || \"0\",\n );\n setNCTransitionSC(\n lifecycleRule.transition?.noncurrent_storage_class || \"\",\n );\n } else {\n // Expiry fields\n setNCExpirationDays(\n lifecycleRule.expiration?.noncurrent_expiration_days?.toString() || \"0\",\n );\n }\n\n setExpiredObjectDM(!!lifecycleRule.expiration?.delete_marker);\n setPrefix(lifecycleRule.prefix || \"\");\n\n if (lifecycleRule.tags) {\n const tgs = lifecycleRule.tags.reduce(\n (stringLab: string, currItem: any, index: number) => {\n return `${stringLab}${index !== 0 ? \"&\" : \"\"}${currItem.key}=${\n currItem.value\n }`;\n },\n \"\",\n );\n\n setTags(tgs);\n }\n }, [lifecycleRule]);\n\n const saveRecord = (event: React.FormEvent) => {\n event.preventDefault();\n\n if (addLoading) {\n return;\n }\n setAddLoading(true);\n if (selectedBucket !== null && lifecycleRule !== null) {\n let rules = {};\n\n if (ilmType === \"expiry\") {\n let expiry: { [key: string]: number } = {};\n\n if (\n lifecycleRule.expiration?.days &&\n lifecycleRule.expiration?.days > 0\n ) {\n expiry[\"expiry_days\"] = parseInt(expiryDays);\n }\n if (lifecycleRule.expiration?.noncurrent_expiration_days) {\n expiry[\"noncurrentversion_expiration_days\"] =\n parseInt(NCExpirationDays);\n }\n\n rules = {\n ...expiry,\n };\n } else {\n let transition: { [key: string]: number | string } = {};\n\n if (\n lifecycleRule.expiration?.days &&\n lifecycleRule.expiration?.days > 0\n ) {\n transition[\"transition_days\"] = parseInt(expiryDays);\n transition[\"storage_class\"] = storageClass;\n }\n if (lifecycleRule.expiration?.noncurrent_expiration_days) {\n transition[\"noncurrentversion_transition_days\"] =\n parseInt(NCExpirationDays);\n transition[\"noncurrentversion_transition_storage_class\"] =\n NCTransitionSC;\n }\n\n rules = {\n ...transition,\n };\n }\n\n const lifecycleUpdate = {\n type: ilmType,\n disable: !enabled,\n prefix,\n tags,\n expired_object_delete_marker: expiredObjectDM,\n ...rules,\n };\n\n api.buckets\n .updateBucketLifecycle(\n selectedBucket,\n lifecycleRule.id,\n lifecycleUpdate,\n )\n .then((res) => {\n setAddLoading(false);\n closeModalAndRefresh(true);\n })\n .catch((err: ErrorResponseHandler) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(err));\n });\n }\n };\n\n let objectVersion = \"\";\n\n if (lifecycleRule.expiration) {\n if (lifecycleRule.expiration.days > 0) {\n objectVersion = \"Current Version\";\n } else if (lifecycleRule.expiration.noncurrent_expiration_days) {\n objectVersion = \"Non-Current Version\";\n }\n }\n\n if (lifecycleRule.transition) {\n if (lifecycleRule.transition.days > 0) {\n objectVersion = \"Current Version\";\n } else if (lifecycleRule.transition.noncurrent_transition_days) {\n objectVersion = \"Non-Current Version\";\n }\n }\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n modalOpen={open}\n title={\"Edit Lifecycle Configuration\"}\n titleIcon={}\n >\n ) => {\n saveRecord(e);\n }}\n >\n \n {\n setEnabled(e.target.checked);\n }}\n />\n {}}\n disabled\n />\n {}}\n disableOptions\n />\n\n {}}\n disabled\n />\n\n {ilmType === \"expiry\" && lifecycleRule.expiration?.days && (\n ) => {\n setExpiryDays(e.target.value);\n }}\n label=\"Expiry Days\"\n value={expiryDays}\n min=\"0\"\n />\n )}\n\n {ilmType === \"expiry\" &&\n lifecycleRule.expiration?.noncurrent_expiration_days && (\n ) => {\n setNCExpirationDays(e.target.value);\n }}\n label=\"Non-current Expiration Days\"\n value={NCExpirationDays}\n min=\"0\"\n />\n )}\n {ilmType === \"transition\" && lifecycleRule.transition?.days && (\n \n ) => {\n setTransitionDays(e.target.value);\n }}\n label=\"Transition Days\"\n value={transitionDays}\n min=\"0\"\n />\n {\n setStorageClass(value);\n }}\n options={tiersList}\n />\n \n )}\n\n {ilmType === \"transition\" &&\n lifecycleRule.transition?.noncurrent_transition_days && (\n \n ) => {\n setNCTransitionDays(e.target.value);\n }}\n label=\"Non-current Transition Days\"\n value={NCTransitionDays}\n min=\"0\"\n />\n ) => {\n setNCTransitionSC(e.target.value);\n }}\n placeholder=\"Set Non-current Version Transition Storage Class\"\n label=\"Non-current Version Transition Storage Class\"\n value={NCTransitionSC}\n />\n \n )}\n \n \n \n Filters\n \n\n \n ) => {\n setPrefix(e.target.value);\n }}\n label=\"Prefix\"\n value={prefix}\n />\n {\n setTags(vl);\n }}\n keyPlaceholder=\"Tag Key\"\n valuePlaceholder=\"Tag Value\"\n withBorder\n />\n \n \n \n {ilmType === \"expiry\" &&\n lifecycleRule.expiration?.noncurrent_expiration_days && (\n \n \n \n Advanced\n \n\n \n ,\n ) => {\n setExpiredObjectDM(event.target.checked);\n }}\n label={\"Expired Object Delete Marker\"}\n />\n \n \n \n )}\n \n {\n closeModalAndRefresh(false);\n }}\n label={\"Cancel\"}\n />\n \n \n {addLoading && (\n \n \n \n )}\n \n \n \n );\n};\n\nexport default EditLifecycleConfiguration;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport {\n Button,\n FormLayout,\n InputBox,\n LifecycleConfigIcon,\n RadioGroup,\n Select,\n Grid,\n} from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { BucketVersioningResponse, Tier } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport {\n Accordion,\n AccordionDetails,\n AccordionSummary,\n LinearProgress,\n Typography,\n} from \"@mui/material\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport { selDistSet, setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { ITiersDropDown } from \"../types\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport QueryMultiSelector from \"../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector\";\nimport InputUnitMenu from \"../../Common/FormComponents/InputUnitMenu/InputUnitMenu\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\n\ninterface IReplicationModal {\n open: boolean;\n closeModalAndRefresh: (refresh: boolean) => any;\n bucketName: string;\n}\n\nconst AddLifecycleModal = ({\n open,\n closeModalAndRefresh,\n bucketName,\n}: IReplicationModal) => {\n const dispatch = useAppDispatch();\n const distributedSetup = useSelector(selDistSet);\n const [loadingTiers, setLoadingTiers] = useState(true);\n const [tiersList, setTiersList] = useState([]);\n const [addLoading, setAddLoading] = useState(false);\n const [versioningInfo, setVersioningInfo] =\n useState(null);\n const [prefix, setPrefix] = useState(\"\");\n const [tags, setTags] = useState(\"\");\n const [storageClass, setStorageClass] = useState(\"\");\n\n const [ilmType, setIlmType] = useState<\"expiry\" | \"transition\">(\"expiry\");\n const [targetVersion, setTargetVersion] = useState<\"current\" | \"noncurrent\">(\n \"current\",\n );\n const [lifecycleDays, setLifecycleDays] = useState(\"\");\n const [isFormValid, setIsFormValid] = useState(false);\n const [expiredObjectDM, setExpiredObjectDM] = useState(false);\n const [loadingVersioning, setLoadingVersioning] = useState(true);\n\n /*To be removed on component replacement*/\n const formFieldRowFilter = {\n \"& .MuiPaper-root\": { padding: 0 },\n };\n\n useEffect(() => {\n if (loadingTiers) {\n api.admin\n .tiersList()\n .then((res) => {\n const tiersList: Tier[] | null = get(res.data, \"items\", []);\n\n if (tiersList !== null && tiersList.length >= 1) {\n const objList = tiersList.map((tier: Tier) => {\n const tierType = tier.type;\n const value = get(tier, `${tierType}.name`, \"\");\n\n return { label: value, value: value };\n });\n\n setTiersList(objList);\n if (objList.length > 0) {\n setStorageClass(objList[0].value);\n }\n }\n setLoadingTiers(false);\n })\n .catch(() => {\n setLoadingTiers(false);\n });\n }\n }, [loadingTiers]);\n\n useEffect(() => {\n let valid = true;\n\n if (ilmType !== \"expiry\") {\n if (storageClass === \"\") {\n valid = false;\n }\n }\n setIsFormValid(valid);\n }, [ilmType, lifecycleDays, storageClass]);\n\n useEffect(() => {\n if (loadingVersioning && distributedSetup) {\n api.buckets\n .getBucketVersioning(bucketName)\n .then((res) => {\n setVersioningInfo(res.data);\n setLoadingVersioning(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err)));\n setLoadingVersioning(false);\n });\n }\n }, [loadingVersioning, dispatch, bucketName, distributedSetup]);\n\n const addRecord = () => {\n let rules = {};\n\n if (ilmType === \"expiry\") {\n let expiry: { [key: string]: number } = {};\n\n if (targetVersion === \"current\") {\n expiry[\"expiry_days\"] = parseInt(lifecycleDays);\n } else {\n expiry[\"noncurrentversion_expiration_days\"] = parseInt(lifecycleDays);\n }\n\n rules = {\n ...expiry,\n };\n } else {\n let transition: { [key: string]: number | string } = {};\n if (targetVersion === \"current\") {\n transition[\"transition_days\"] = parseInt(lifecycleDays);\n transition[\"storage_class\"] = storageClass;\n } else {\n transition[\"noncurrentversion_transition_days\"] =\n parseInt(lifecycleDays);\n transition[\"noncurrentversion_transition_storage_class\"] = storageClass;\n }\n\n rules = {\n ...transition,\n };\n }\n\n const lifecycleInsert = {\n type: ilmType,\n prefix,\n tags,\n expired_object_delete_marker: expiredObjectDM,\n ...rules,\n };\n\n api.buckets\n .addBucketLifecycle(bucketName, lifecycleInsert)\n .then(() => {\n setAddLoading(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err)));\n });\n };\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n title=\"Add Lifecycle Rule\"\n titleIcon={}\n >\n {loadingTiers && (\n \n \n \n \n \n )}\n\n {!loadingTiers && (\n ) => {\n e.preventDefault();\n setAddLoading(true);\n addRecord();\n }}\n >\n \n {\n setIlmType(e.target.value as \"expiry\" | \"transition\");\n }}\n selectorOptions={[\n { value: \"expiry\", label: \"Expiry\" },\n { value: \"transition\", label: \"Transition\" },\n ]}\n />\n {versioningInfo?.status === \"Enabled\" && (\n {\n setTargetVersion(value as \"current\" | \"noncurrent\");\n }}\n options={[\n { value: \"current\", label: \"Current Version\" },\n { value: \"noncurrent\", label: \"Non-Current Version\" },\n ]}\n />\n )}\n\n ) => {\n if (e.target.validity.valid) {\n setLifecycleDays(e.target.value);\n }\n }}\n pattern={\"[0-9]*\"}\n label=\"After\"\n value={lifecycleDays}\n overlayObject={\n \n }\n />\n\n {ilmType === \"expiry\" ? (\n \n ) : (\n {\n setStorageClass(value as string);\n }}\n options={tiersList}\n />\n )}\n \n \n \n Filters\n \n \n \n ) => {\n setPrefix(e.target.value);\n }}\n label=\"Prefix\"\n value={prefix}\n />\n \n \n {\n setTags(vl);\n }}\n keyPlaceholder=\"Tag Key\"\n valuePlaceholder=\"Tag Value\"\n withBorder\n />\n \n \n \n \n {ilmType === \"expiry\" && targetVersion === \"noncurrent\" && (\n \n \n \n Advanced\n \n \n \n ,\n ) => {\n setExpiredObjectDM(event.target.checked);\n }}\n label={\"Expire Delete Marker\"}\n description={\n \"Remove the reference to the object if no versions are left\"\n }\n />\n \n \n \n \n )}\n\n \n {\n closeModalAndRefresh(false);\n }}\n label={\"Cancel\"}\n />\n \n \n {addLoading && (\n \n \n \n )}\n \n \n )}\n \n );\n};\n\nexport default AddLifecycleModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport {\n AddIcon,\n Button,\n DataTable,\n Grid,\n HelpBox,\n SectionTitle,\n TiersIcon,\n} from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { ObjectBucketLifecycle } from \"api/consoleApi\";\nimport { LifeCycleItem } from \"../types\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport { selBucketDetailsLoading } from \"./bucketDetailsSlice\";\nimport { useParams } from \"react-router-dom\";\nimport { setHelpName } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport DeleteBucketLifecycleRule from \"./DeleteBucketLifecycleRule\";\nimport EditLifecycleConfiguration from \"./EditLifecycleConfiguration\";\nimport AddLifecycleModal from \"./AddLifecycleModal\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst BucketLifecyclePanel = () => {\n const loadingBucket = useSelector(selBucketDetailsLoading);\n const params = useParams();\n\n const [loadingLifecycle, setLoadingLifecycle] = useState(true);\n const [lifecycleRecords, setLifecycleRecords] = useState<\n ObjectBucketLifecycle[]\n >([]);\n const [addLifecycleOpen, setAddLifecycleOpen] = useState(false);\n const [editLifecycleOpen, setEditLifecycleOpen] = useState(false);\n const [selectedLifecycleRule, setSelectedLifecycleRule] =\n useState(null);\n const [deleteLifecycleOpen, setDeleteLifecycleOpen] =\n useState(false);\n const [selectedID, setSelectedID] = useState(null);\n const dispatch = useAppDispatch();\n\n const bucketName = params.bucketName || \"\";\n\n const displayLifeCycleRules = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n\n useEffect(() => {\n if (loadingBucket) {\n setLoadingLifecycle(true);\n }\n }, [loadingBucket, setLoadingLifecycle]);\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_detail_lifecycle\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (loadingLifecycle) {\n if (displayLifeCycleRules) {\n api.buckets\n .getBucketLifecycle(bucketName)\n .then((res) => {\n const records = get(res.data, \"lifecycle\", []);\n\n setLifecycleRecords(records || []);\n setLoadingLifecycle(false);\n })\n .catch((err) => {\n console.error(err.error);\n setLifecycleRecords([]);\n setLoadingLifecycle(false);\n });\n } else {\n setLoadingLifecycle(false);\n }\n }\n }, [\n loadingLifecycle,\n setLoadingLifecycle,\n bucketName,\n displayLifeCycleRules,\n ]);\n\n const closeEditLCAndRefresh = (refresh: boolean) => {\n setEditLifecycleOpen(false);\n setSelectedLifecycleRule(null);\n if (refresh) {\n setLoadingLifecycle(true);\n }\n };\n\n const closeAddLCAndRefresh = (refresh: boolean) => {\n setAddLifecycleOpen(false);\n if (refresh) {\n setLoadingLifecycle(true);\n }\n };\n\n const closeDelLCRefresh = (refresh: boolean) => {\n setDeleteLifecycleOpen(false);\n setSelectedID(null);\n\n if (refresh) {\n setLoadingLifecycle(true);\n }\n };\n\n const renderStorageClass = (objectST: any) => {\n let stClass = get(objectST, \"transition.storage_class\", \"\");\n stClass = get(objectST, \"transition.noncurrent_storage_class\", stClass);\n\n return stClass;\n };\n\n const lifecycleColumns = [\n {\n label: \"Type\",\n renderFullObject: true,\n renderFunction: (el: LifeCycleItem) => {\n if (!el) {\n return ;\n }\n if (\n el.expiration &&\n (el.expiration.days > 0 || el.expiration.noncurrent_expiration_days)\n ) {\n return Expiry;\n }\n if (\n el.transition &&\n (el.transition.days > 0 || el.transition.noncurrent_transition_days)\n ) {\n return Transition;\n }\n return ;\n },\n },\n {\n label: \"Version\",\n renderFullObject: true,\n renderFunction: (el: LifeCycleItem) => {\n if (!el) {\n return ;\n }\n if (el.expiration) {\n if (el.expiration.days > 0) {\n return Current;\n } else if (el.expiration.noncurrent_expiration_days) {\n return Non-Current;\n }\n }\n if (el.transition) {\n if (el.transition.days > 0) {\n return Current;\n } else if (el.transition.noncurrent_transition_days) {\n return Non-Current;\n }\n }\n },\n },\n {\n label: \"Tier\",\n elementKey: \"storage_class\",\n renderFunction: renderStorageClass,\n renderFullObject: true,\n },\n {\n label: \"Prefix\",\n elementKey: \"prefix\",\n },\n {\n label: \"After\",\n renderFullObject: true,\n renderFunction: (el: LifeCycleItem) => {\n if (!el) {\n return ;\n }\n if (el.expiration) {\n if (el.expiration.days > 0) {\n return {el.expiration.days} days;\n } else if (el.expiration.noncurrent_expiration_days) {\n return {el.expiration.noncurrent_expiration_days} days;\n }\n }\n if (el.transition) {\n if (el.transition.days > 0) {\n return {el.transition.days} days;\n } else if (el.transition.noncurrent_transition_days) {\n return {el.transition.noncurrent_transition_days} days;\n }\n }\n },\n },\n {\n label: \"Status\",\n elementKey: \"status\",\n },\n ];\n\n const lifecycleActions = [\n {\n type: \"view\",\n\n onClick(valueToSend: any): any {\n setSelectedLifecycleRule(valueToSend);\n setEditLifecycleOpen(true);\n },\n },\n {\n type: \"delete\",\n onClick(valueToDelete: string): any {\n setSelectedID(valueToDelete);\n setDeleteLifecycleOpen(true);\n },\n sendOnlyId: true,\n },\n ];\n\n return (\n \n {editLifecycleOpen && selectedLifecycleRule && (\n \n )}\n {addLifecycleOpen && (\n \n )}\n {deleteLifecycleOpen && selectedID && (\n \n )}\n \n \n {\n setAddLifecycleOpen(true);\n }}\n label={\"Add Lifecycle Rule\"}\n icon={}\n variant={\"callAction\"}\n />\n \n \n }\n >\n Lifecycle Rules\n \n \n \n \n \n \n \n {!loadingLifecycle && (\n \n
\n }\n help={\n \n MinIO Object Lifecycle Management allows creating rules for\n time or date based automatic transition or expiry of objects.\n For object transition, MinIO automatically moves the object to\n a configured remote storage tier.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n )}\n
\n
\n );\n};\n\nexport default BucketLifecyclePanel;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input/Input\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n checked: boolean;\n switchOnly?: boolean;\n indicatorLabels?: string[];\n extraInputProps?: StandardInputProps[\"inputProps\"];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n indicatorLabelOn: {\n fontWeight: \"bold\",\n color: \"#081C42 !important\",\n },\n indicatorLabel: {\n fontSize: 12,\n color: \"#E2E2E2\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n tooltip: {\n fontSize: 16,\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles((theme) => ({\n root: {\n width: 50,\n height: 24,\n padding: 0,\n margin: 0,\n },\n switchBase: {\n padding: 1,\n \"&$checked\": {\n transform: \"translateX(24px)\",\n color: theme.palette.common.white,\n \"& + $track\": {\n backgroundColor: \"#4CCB92\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n border: \"none\",\n },\n },\n \"&$focusVisible $thumb\": {\n color: \"#4CCB92\",\n border: \"6px solid #fff\",\n },\n },\n thumb: {\n width: 22,\n height: 22,\n backgroundColor: \"#FAFAFA\",\n border: \"2px solid #FFFFFF\",\n marginLeft: 1,\n },\n track: {\n borderRadius: 24 / 2,\n backgroundColor: \"#E2E2E2\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n transition: theme.transitions.create([\"background-color\", \"border\"]),\n },\n checked: {},\n focusVisible: {},\n switchContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n}))(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n classes,\n indicatorLabels,\n extraInputProps = {},\n}: IFormSwitch) => {\n const switchComponent = (\n \n {!switchOnly && (\n \n {indicatorLabels && indicatorLabels.length > 1\n ? indicatorLabels[1]\n : \"OFF\"}\n
\n )}\n \n {!switchOnly && (\n \n {indicatorLabels ? indicatorLabels[0] : \"ON\"}\n \n )}\n \n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n
\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n \n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { selectorTypes } from \"../SelectWrapper/SelectWrapper\";\nimport { Menu, MenuItem } from \"@mui/material\";\n\ninterface IInputUnitBox {\n classes: any;\n id: string;\n unitSelected: string;\n unitsList: selectorTypes[];\n disabled?: boolean;\n onUnitChange?: (newValue: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonTrigger: {\n border: \"#F0F2F2 1px solid\",\n borderRadius: 3,\n color: \"#838383\",\n backgroundColor: \"#fff\",\n fontSize: 12,\n },\n });\n\nconst InputUnitMenu = ({\n classes,\n id,\n unitSelected,\n unitsList,\n disabled = false,\n onUnitChange,\n}: IInputUnitBox) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (newUnit: string) => {\n setAnchorEl(null);\n if (newUnit !== \"\" && onUnitChange) {\n onUnitChange(newUnit);\n }\n };\n\n return (\n \n \n {unitSelected}\n \n {\n handleClose(\"\");\n }}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"center\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"center\",\n }}\n >\n {unitsList.map((unit) => (\n handleClose(unit.value)}\n key={`itemUnit-${unit.value}-${unit.label}`}\n >\n {unit.label}\n \n ))}\n \n \n );\n};\n\nexport default withStyles(styles)(InputUnitMenu);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, {\n ChangeEvent,\n createRef,\n Fragment,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport get from \"lodash/get\";\nimport debounce from \"lodash/debounce\";\nimport {\n AddIcon,\n Box,\n Grid,\n HelpIcon,\n InputBox,\n InputLabel,\n Tooltip,\n} from \"mds\";\n\ninterface IQueryMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n keyPlaceholder?: string;\n valuePlaceholder?: string;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst QueryMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n keyPlaceholder = \"\",\n valuePlaceholder = \"\",\n onChange,\n withBorder = false,\n}: IQueryMultiSelector) => {\n const [currentKeys, setCurrentKeys] = useState([\"\"]);\n const [currentValues, setCurrentValues] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentKeys.length === 1 &&\n currentKeys[0] === \"\" &&\n currentValues.length === 1 &&\n currentValues[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\"&\");\n let keys = [];\n let values = [];\n\n elementsSplit.forEach((element: string) => {\n const splittedVals = element.split(\"=\");\n if (splittedVals.length === 2) {\n keys.push(splittedVals[0]);\n values.push(splittedVals[1]);\n }\n });\n\n keys.push(\"\");\n values.push(\"\");\n\n setCurrentKeys(keys);\n setCurrentValues(values);\n }\n }, [currentKeys, currentValues, elements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n const refScroll = bottomList.current;\n if (refScroll && currentKeys.length > 1) {\n refScroll.scrollIntoView(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys]);\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useLayoutEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n debouncedOnChange();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys, currentValues]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = () => {\n if (\n currentKeys[currentKeys.length - 1].trim() !== \"\" &&\n currentValues[currentValues.length - 1].trim() !== \"\"\n ) {\n const keysList = [...currentKeys];\n const valuesList = [...currentValues];\n\n keysList.push(\"\");\n valuesList.push(\"\");\n\n setCurrentKeys(keysList);\n setCurrentValues(valuesList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeKey = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentKeys];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentKeys(updatedElement);\n };\n\n const onChangeValue = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentValues];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentValues(updatedElement);\n };\n\n // Debounce for On Change\n const debouncedOnChange = debounce(() => {\n let queryString = \"\";\n\n currentKeys.forEach((keyVal, index) => {\n if (currentKeys[index] && currentValues[index]) {\n let insertString = `${keyVal}=${currentValues[index]}`;\n if (index !== 0) {\n insertString = `&${insertString}`;\n }\n queryString = `${queryString}${insertString}`;\n }\n });\n\n onChange(queryString);\n }, 500);\n\n const inputs = currentValues.map((element, index) => {\n return (\n \n \n :\n : null}\n overlayAction={() => {\n addEmptyLine();\n }}\n />\n \n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n \n \n \n \n \n )}\n \n \n {inputs}\n
\n \n \n \n );\n};\nexport default QueryMultiSelector;\n"],"names":["_ref","onCloseAndRefresh","deleteOpen","bucket","id","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","deletingRule","setDeletingRule","useEffect","api","buckets","deleteBucketLifecycleRule","then","catch","err","setErrorSnackMessage","errorToHandler","error","_jsx","ConfirmDialog","title","confirmText","isOpen","isLoading","onConfirm","titleIcon","ConfirmDeleteIcon","onClose","confirmationContent","_jsxs","Fragment","children","_lifecycleRule$expira10","_lifecycleRule$expira11","_lifecycleRule$transi5","_lifecycleRule$transi6","_lifecycleRule$expira12","closeModalAndRefresh","selectedBucket","lifecycleRule","open","loadingTiers","setLoadingTiers","_useState3","_useState4","addLoading","setAddLoading","_useState5","_useState6","tags","setTags","_useState7","_useState8","enabled","setEnabled","_useState9","_useState10","tiersList","setTiersList","_useState11","_useState12","prefix","setPrefix","_useState13","_useState14","storageClass","setStorageClass","_useState15","_useState16","NCTransitionSC","setNCTransitionSC","_useState17","_useState18","expiredObjectDM","setExpiredObjectDM","_useState19","_useState20","NCExpirationDays","setNCExpirationDays","_useState21","_useState22","NCTransitionDays","setNCTransitionDays","_useState23","_useState24","ilmType","setIlmType","_useState25","_useState26","expiryDays","setExpiryDays","_useState27","_useState28","transitionDays","setTransitionDays","_useState29","_useState30","isFormValid","setIsFormValid","formFieldRowFilter","padding","admin","res","get","data","length","objList","map","tier","tierType","type","value","concat","label","valid","_lifecycleRule$expira3","status","_lifecycleRule$transi","_lifecycleRule$transi2","_lifecycleRule$transi3","_lifecycleRule$transi4","_lifecycleRule$expira","_lifecycleRule$expira2","transitionMode","transition","days","toString","noncurrent_transition_days","date","expiration","noncurrent_expiration_days","storage_class","noncurrent_storage_class","delete_marker","tgs","reduce","stringLab","currItem","index","key","objectVersion","ModalWrapper","modalOpen","LifecycleConfigIcon","noValidate","autoComplete","onSubmit","e","event","preventDefault","rules","_lifecycleRule$expira4","_lifecycleRule$expira5","_lifecycleRule$expira6","expiry","parseInt","_objectSpread","_lifecycleRule$expira7","_lifecycleRule$expira8","_lifecycleRule$expira9","lifecycleUpdate","disable","expired_object_delete_marker","updateBucketLifecycle","setModalErrorSnackMessage","saveRecord","FormLayout","containerPadding","withBorders","Switch","indicatorLabels","checked","name","onChange","target","InputBox","disabled","RadioGroup","currentValue","selectorOptions","disableOptions","min","Select","options","placeholder","Grid","item","xs","sx","Accordion","AccordionSummary","Typography","AccordionDetails","QueryMultiSelector","elements","vl","keyPlaceholder","valuePlaceholder","withBorder","modalStyleUtils","modalButtonBar","Button","variant","onClick","color","LinearProgress","bucketName","distributedSetup","useSelector","selDistSet","versioningInfo","setVersioningInfo","targetVersion","setTargetVersion","lifecycleDays","setLifecycleDays","loadingVersioning","setLoadingVersioning","getBucketVersioning","container","lifecycleInsert","addBucketLifecycle","addRecord","validity","pattern","overlayObject","InputUnitMenu","unitSelected","unitsList","FormSwitchWrapper","description","loadingBucket","selBucketDetailsLoading","params","useParams","loadingLifecycle","setLoadingLifecycle","lifecycleRecords","setLifecycleRecords","addLifecycleOpen","setAddLifecycleOpen","editLifecycleOpen","setEditLifecycleOpen","selectedLifecycleRule","setSelectedLifecycleRule","deleteLifecycleOpen","setDeleteLifecycleOpen","selectedID","setSelectedID","displayLifeCycleRules","hasPermission","IAM_SCOPES","S3_GET_LIFECYCLE_CONFIGURATION","S3_GET_ACTIONS","setHelpName","getBucketLifecycle","records","console","lifecycleColumns","renderFullObject","renderFunction","el","elementKey","objectST","stClass","lifecycleActions","valueToSend","valueToDelete","sendOnlyId","EditLifecycleConfiguration","refresh","AddLifecycleModal","DeleteBucketLifecycleRule","SectionTitle","separator","marginBottom","actions","SecureComponent","scopes","S3_PUT_LIFECYCLE_CONFIGURATION","S3_PUT_ACTIONS","resource","matchAll","errorProps","TooltipWrapper","tooltip","icon","AddIcon","DataTable","itemActions","columns","entityName","customEmptyMessage","idField","customPaperHeight","HelpBox","iconComponent","TiersIcon","help","href","rel","StyledSwitch","withStyles","theme","root","width","height","margin","switchBase","transform","palette","common","white","backgroundColor","boxShadow","opacity","border","thumb","marginLeft","track","borderRadius","transitions","create","focusVisible","switchContainer","display","alignItems","justifyContent","createStyles","indicatorLabelOn","fontWeight","indicatorLabel","fontSize","fieldDescription","marginTop","actionsTray","fieldBasic","_ref$label","_ref$checked","_ref$disabled","_ref$switchOnly","switchOnly","_ref$tooltip","_ref$description","classes","_ref$extraInputProps","extraInputProps","switchComponent","React","className","clsx","_defineProperty","inputProps","disableRipple","disableFocusRipple","disableTouchRipple","sm","md","InputLabel","htmlFor","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","textAlign","component","buttonTrigger","onUnitChange","_React$useState","_React$useState2","anchorEl","setAnchorEl","Boolean","handleClose","newUnit","undefined","currentTarget","Menu","anchorOrigin","vertical","horizontal","transformOrigin","unit","MenuItem","_ref$keyPlaceholder","_ref$valuePlaceholder","_ref$withBorder","currentKeys","setCurrentKeys","currentValues","setCurrentValues","bottomList","createRef","elementsSplit","split","keys","values","forEach","element","splittedVals","push","refScroll","current","scrollIntoView","firstUpdate","useRef","useLayoutEffect","debouncedOnChange","onChangeKey","persist","updatedElement","_toConsumableArray","onChangeValue","debounce","queryString","keyVal","insertString","inputs","overlayIcon","overlayAction","trim","keysList","valuesList","addEmptyLine","alignSelf","Box","style","overflowY","position","ref"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/5473.e6936445.chunk.js b/portal-ui/build/static/js/5473.bbfe723a.chunk.js similarity index 70% rename from portal-ui/build/static/js/5473.e6936445.chunk.js rename to portal-ui/build/static/js/5473.bbfe723a.chunk.js index 24f11ad04..0d4f0345e 100644 --- a/portal-ui/build/static/js/5473.e6936445.chunk.js +++ b/portal-ui/build/static/js/5473.bbfe723a.chunk.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[5473],{52739:function(e,n,o){o.d(n,{Z:function(){return b}});var t=o(63366),r=o(87462),i=o(72791),a=o(28182),l=o(94419),s=o(66934),c=o(31402),u=o(60627),d=o(75878),f=o(21217);function p(e){return(0,f.Z)("MuiBackdrop",e)}(0,d.Z)("MuiBackdrop",["root","invisible"]);var v=o(80184),m=["children","className","component","components","componentsProps","invisible","open","slotProps","slots","TransitionComponent","transitionDuration"],h=(0,s.ZP)("div",{name:"MuiBackdrop",slot:"Root",overridesResolver:function(e,n){var o=e.ownerState;return[n.root,o.invisible&&n.invisible]}})((function(e){var n=e.ownerState;return(0,r.Z)({position:"fixed",display:"flex",alignItems:"center",justifyContent:"center",right:0,bottom:0,top:0,left:0,backgroundColor:"rgba(0, 0, 0, 0.5)",WebkitTapHighlightColor:"transparent"},n.invisible&&{backgroundColor:"transparent"})})),b=i.forwardRef((function(e,n){var o,i,s,d=(0,c.Z)({props:e,name:"MuiBackdrop"}),f=d.children,b=d.className,Z=d.component,g=void 0===Z?"div":Z,E=d.components,y=void 0===E?{}:E,x=d.componentsProps,k=void 0===x?{}:x,P=d.invisible,R=void 0!==P&&P,T=d.open,w=d.slotProps,C=void 0===w?{}:w,S=d.slots,N=void 0===S?{}:S,M=d.TransitionComponent,A=void 0===M?u.Z:M,F=d.transitionDuration,I=(0,t.Z)(d,m),O=(0,r.Z)({},d,{component:g,invisible:R}),L=function(e){var n=e.classes,o={root:["root",e.invisible&&"invisible"]};return(0,l.Z)(o,p,n)}(O),B=null!=(o=C.root)?o:k.root;return(0,v.jsx)(A,(0,r.Z)({in:T,timeout:F},I,{children:(0,v.jsx)(h,(0,r.Z)({"aria-hidden":!0},B,{as:null!=(i=null!=(s=N.root)?s:y.Root)?i:g,className:(0,a.Z)(L.root,b,null==B?void 0:B.className),ownerState:(0,r.Z)({},O,null==B?void 0:B.ownerState),classes:L,ref:n,children:f}))}))}))},60627:function(e,n,o){var t=o(87462),r=o(63366),i=o(72791),a=o(18875),l=o(13967),s=o(4999),c=o(42071),u=o(80184),d=["addEndListener","appear","children","easing","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","style","timeout","TransitionComponent"],f={entering:{opacity:1},entered:{opacity:1}},p=i.forwardRef((function(e,n){var o=(0,l.Z)(),p={enter:o.transitions.duration.enteringScreen,exit:o.transitions.duration.leavingScreen},v=e.addEndListener,m=e.appear,h=void 0===m||m,b=e.children,Z=e.easing,g=e.in,E=e.onEnter,y=e.onEntered,x=e.onEntering,k=e.onExit,P=e.onExited,R=e.onExiting,T=e.style,w=e.timeout,C=void 0===w?p:w,S=e.TransitionComponent,N=void 0===S?a.ZP:S,M=(0,r.Z)(e,d),A=i.useRef(null),F=(0,c.Z)(A,b.ref,n),I=function(e){return function(n){if(e){var o=A.current;void 0===n?e(o):e(o,n)}}},O=I(x),L=I((function(e,n){(0,s.n)(e);var t=(0,s.C)({style:T,timeout:C,easing:Z},{mode:"enter"});e.style.webkitTransition=o.transitions.create("opacity",t),e.style.transition=o.transitions.create("opacity",t),E&&E(e,n)})),B=I(y),D=I(R),j=I((function(e){var n=(0,s.C)({style:T,timeout:C,easing:Z},{mode:"exit"});e.style.webkitTransition=o.transitions.create("opacity",n),e.style.transition=o.transitions.create("opacity",n),k&&k(e)})),z=I(P);return(0,u.jsx)(N,(0,t.Z)({appear:h,in:g,nodeRef:A,onEnter:L,onEntered:B,onEntering:O,onExit:j,onExited:z,onExiting:D,addEndListener:function(e){v&&v(A.current,e)},timeout:C},M,{children:function(e,n){return i.cloneElement(b,(0,t.Z)({style:(0,t.Z)({opacity:0,visibility:"exited"!==e||g?void 0:"hidden"},f[e],T,b.props.style),ref:F},n))}}))}));n.Z=p},13827:function(e,n,o){o.d(n,{Z:function(){return W}});var t=o(29439),r=o(63366),i=o(87462),a=o(72791),l=o(28182),s=o(6117),c=o(84913),u=o(97054),d=o(78949),f=o(94419),p=o(50209),v=o(15671),m=o(43144),h=o(93433),b=o(65202),Z=o(57137);function g(e,n){n?e.setAttribute("aria-hidden","true"):e.removeAttribute("aria-hidden")}function E(e){return parseInt((0,b.Z)(e).getComputedStyle(e).paddingRight,10)||0}function y(e,n,o,t,r){var i=[n,o].concat((0,h.Z)(t));[].forEach.call(e.children,(function(e){var n=-1===i.indexOf(e),o=!function(e){var n=-1!==["TEMPLATE","SCRIPT","STYLE","LINK","MAP","META","NOSCRIPT","PICTURE","COL","COLGROUP","PARAM","SLOT","SOURCE","TRACK"].indexOf(e.tagName),o="INPUT"===e.tagName&&"hidden"===e.getAttribute("type");return n||o}(e);n&&o&&g(e,r)}))}function x(e,n){var o=-1;return e.some((function(e,t){return!!n(e)&&(o=t,!0)})),o}function k(e,n){var o=[],t=e.container;if(!n.disableScrollLock){if(function(e){var n=(0,c.Z)(e);return n.body===e?(0,b.Z)(e).innerWidth>n.documentElement.clientWidth:e.scrollHeight>e.clientHeight}(t)){var r=(0,Z.Z)((0,c.Z)(t));o.push({value:t.style.paddingRight,property:"padding-right",el:t}),t.style.paddingRight="".concat(E(t)+r,"px");var i=(0,c.Z)(t).querySelectorAll(".mui-fixed");[].forEach.call(i,(function(e){o.push({value:e.style.paddingRight,property:"padding-right",el:e}),e.style.paddingRight="".concat(E(e)+r,"px")}))}var a;if(t.parentNode instanceof DocumentFragment)a=(0,c.Z)(t).body;else{var l=t.parentElement,s=(0,b.Z)(t);a="HTML"===(null==l?void 0:l.nodeName)&&"scroll"===s.getComputedStyle(l).overflowY?l:t}o.push({value:a.style.overflow,property:"overflow",el:a},{value:a.style.overflowX,property:"overflow-x",el:a},{value:a.style.overflowY,property:"overflow-y",el:a}),a.style.overflow="hidden"}return function(){o.forEach((function(e){var n=e.value,o=e.el,t=e.property;n?o.style.setProperty(t,n):o.style.removeProperty(t)}))}}var P=function(){function e(){(0,v.Z)(this,e),this.containers=void 0,this.modals=void 0,this.modals=[],this.containers=[]}return(0,m.Z)(e,[{key:"add",value:function(e,n){var o=this.modals.indexOf(e);if(-1!==o)return o;o=this.modals.length,this.modals.push(e),e.modalRef&&g(e.modalRef,!1);var t=function(e){var n=[];return[].forEach.call(e.children,(function(e){"true"===e.getAttribute("aria-hidden")&&n.push(e)})),n}(n);y(n,e.mount,e.modalRef,t,!0);var r=x(this.containers,(function(e){return e.container===n}));return-1!==r?(this.containers[r].modals.push(e),o):(this.containers.push({modals:[e],container:n,restore:null,hiddenSiblings:t}),o)}},{key:"mount",value:function(e,n){var o=x(this.containers,(function(n){return-1!==n.modals.indexOf(e)})),t=this.containers[o];t.restore||(t.restore=k(t,n))}},{key:"remove",value:function(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=this.modals.indexOf(e);if(-1===o)return o;var t=x(this.containers,(function(n){return-1!==n.modals.indexOf(e)})),r=this.containers[t];if(r.modals.splice(r.modals.indexOf(e),1),this.modals.splice(o,1),0===r.modals.length)r.restore&&r.restore(),e.modalRef&&g(e.modalRef,n),y(r.container,e.mount,e.modalRef,r.hiddenSiblings,!1),this.containers.splice(t,1);else{var i=r.modals[r.modals.length-1];i.modalRef&&g(i.modalRef,!1)}return o}},{key:"isTopModal",value:function(e){return this.modals.length>0&&this.modals[this.modals.length-1]===e}}]),e}(),R=o(76469),T=o(75878),w=o(21217);function C(e){return(0,w.Z)("MuiModal",e)}(0,T.Z)("MuiModal",["root","hidden","backdrop"]);var S=o(21607),N=o(42871),M=o(80184),A=["children","closeAfterTransition","container","disableAutoFocus","disableEnforceFocus","disableEscapeKeyDown","disablePortal","disableRestoreFocus","disableScrollLock","hideBackdrop","keepMounted","manager","onBackdropClick","onClose","onKeyDown","open","onTransitionEnter","onTransitionExited","slotProps","slots"];var F=new P,I=a.forwardRef((function(e,n){var o,l,v=e.children,m=e.closeAfterTransition,h=void 0!==m&&m,b=e.container,Z=e.disableAutoFocus,E=void 0!==Z&&Z,y=e.disableEnforceFocus,x=void 0!==y&&y,k=e.disableEscapeKeyDown,P=void 0!==k&&k,T=e.disablePortal,w=void 0!==T&&T,I=e.disableRestoreFocus,O=void 0!==I&&I,L=e.disableScrollLock,B=void 0!==L&&L,D=e.hideBackdrop,j=void 0!==D&&D,z=e.keepMounted,K=void 0!==z&&z,H=e.manager,W=void 0===H?F:H,U=e.onBackdropClick,Y=e.onClose,q=e.onKeyDown,X=e.open,_=e.onTransitionEnter,G=e.onTransitionExited,V=e.slotProps,J=void 0===V?{}:V,Q=e.slots,$=void 0===Q?{}:Q,ee=(0,r.Z)(e,A),ne=W,oe=a.useState(!X),te=(0,t.Z)(oe,2),re=te[0],ie=te[1],ae=a.useRef({}),le=a.useRef(null),se=a.useRef(null),ce=(0,s.Z)(se,n),ue=function(e){return!!e&&e.props.hasOwnProperty("in")}(v),de=null==(o=e["aria-hidden"])||o,fe=function(){return ae.current.modalRef=se.current,ae.current.mountNode=le.current,ae.current},pe=function(){ne.mount(fe(),{disableScrollLock:B}),se.current&&(se.current.scrollTop=0)},ve=(0,u.Z)((function(){var e=function(e){return"function"===typeof e?e():e}(b)||(0,c.Z)(le.current).body;ne.add(fe(),e),se.current&&pe()})),me=a.useCallback((function(){return ne.isTopModal(fe())}),[ne]),he=(0,u.Z)((function(e){le.current=e,e&&se.current&&(X&&me()?pe():g(se.current,de))})),be=a.useCallback((function(){ne.remove(fe(),de)}),[ne,de]);a.useEffect((function(){return function(){be()}}),[be]),a.useEffect((function(){X?ve():ue&&h||be()}),[X,be,ue,h,ve]);var Ze=(0,i.Z)({},e,{closeAfterTransition:h,disableAutoFocus:E,disableEnforceFocus:x,disableEscapeKeyDown:P,disablePortal:w,disableRestoreFocus:O,disableScrollLock:B,exited:re,hideBackdrop:j,keepMounted:K}),ge=function(e){var n=e.open,o=e.exited,t={root:["root",!n&&o&&"hidden"],backdrop:["backdrop"]};return(0,f.Z)(t,(0,N.T)(C))}(Ze),Ee={};void 0===v.props.tabIndex&&(Ee.tabIndex="-1"),ue&&(Ee.onEnter=(0,d.Z)((function(){ie(!1),_&&_()}),v.props.onEnter),Ee.onExited=(0,d.Z)((function(){ie(!0),G&&G(),h&&be()}),v.props.onExited));var ye=null!=(l=$.root)?l:"div",xe=(0,S.Z)({elementType:ye,externalSlotProps:J.root,externalForwardedProps:ee,additionalProps:{ref:ce,role:"presentation",onKeyDown:function(e){q&&q(e),"Escape"===e.key&&me()&&(P||(e.stopPropagation(),Y&&Y(e,"escapeKeyDown")))}},className:ge.root,ownerState:Ze}),ke=$.backdrop,Pe=(0,S.Z)({elementType:ke,externalSlotProps:J.backdrop,additionalProps:{"aria-hidden":!0,onClick:function(e){e.target===e.currentTarget&&(U&&U(e),Y&&Y(e,"backdropClick"))},open:X},className:ge.backdrop,ownerState:Ze});return K||X||ue&&!re?(0,M.jsx)(p.Z,{ref:he,container:b,disablePortal:w,children:(0,M.jsxs)(ye,(0,i.Z)({},xe,{children:[!j&&ke?(0,M.jsx)(ke,(0,i.Z)({},Pe)):null,(0,M.jsx)(R.Z,{disableEnforceFocus:x,disableAutoFocus:E,disableRestoreFocus:O,isEnabled:me,open:X,children:a.cloneElement(v,Ee)})]}))}):null})),O=o(96605),L=o(52474),B=o(66934),D=o(31402),j=o(52739),z=["BackdropComponent","BackdropProps","classes","className","closeAfterTransition","children","container","component","components","componentsProps","disableAutoFocus","disableEnforceFocus","disableEscapeKeyDown","disablePortal","disableRestoreFocus","disableScrollLock","hideBackdrop","keepMounted","onBackdropClick","onClose","open","slotProps","slots","theme"],K=(0,B.ZP)("div",{name:"MuiModal",slot:"Root",overridesResolver:function(e,n){var o=e.ownerState;return[n.root,!o.open&&o.exited&&n.hidden]}})((function(e){var n=e.theme,o=e.ownerState;return(0,i.Z)({position:"fixed",zIndex:(n.vars||n).zIndex.modal,right:0,bottom:0,top:0,left:0},!o.open&&o.exited&&{visibility:"hidden"})})),H=(0,B.ZP)(j.Z,{name:"MuiModal",slot:"Backdrop",overridesResolver:function(e,n){return n.backdrop}})({zIndex:-1}),W=a.forwardRef((function(e,n){var o,s,c,u,d,f,p=(0,D.Z)({name:"MuiModal",props:e}),v=p.BackdropComponent,m=void 0===v?H:v,h=p.BackdropProps,b=p.classes,Z=p.className,g=p.closeAfterTransition,E=void 0!==g&&g,y=p.children,x=p.container,k=p.component,P=p.components,R=void 0===P?{}:P,T=p.componentsProps,w=void 0===T?{}:T,C=p.disableAutoFocus,S=void 0!==C&&C,N=p.disableEnforceFocus,A=void 0!==N&&N,F=p.disableEscapeKeyDown,B=void 0!==F&&F,j=p.disablePortal,W=void 0!==j&&j,U=p.disableRestoreFocus,Y=void 0!==U&&U,q=p.disableScrollLock,X=void 0!==q&&q,_=p.hideBackdrop,G=void 0!==_&&_,V=p.keepMounted,J=void 0!==V&&V,Q=p.onBackdropClick,$=p.onClose,ee=p.open,ne=p.slotProps,oe=p.slots,te=p.theme,re=(0,r.Z)(p,z),ie=a.useState(!0),ae=(0,t.Z)(ie,2),le=ae[0],se=ae[1],ce={container:x,closeAfterTransition:E,disableAutoFocus:S,disableEnforceFocus:A,disableEscapeKeyDown:B,disablePortal:W,disableRestoreFocus:Y,disableScrollLock:X,hideBackdrop:G,keepMounted:J,onBackdropClick:Q,onClose:$,open:ee},ue=(0,i.Z)({},p,ce,{exited:le}),de=null!=(o=null!=(s=null==oe?void 0:oe.root)?s:R.Root)?o:K,fe=null!=(c=null!=(u=null==oe?void 0:oe.backdrop)?u:R.Backdrop)?c:m,pe=null!=(d=null==ne?void 0:ne.root)?d:w.root,ve=null!=(f=null==ne?void 0:ne.backdrop)?f:w.backdrop;return(0,M.jsx)(I,(0,i.Z)({slots:{root:de,backdrop:fe},slotProps:{root:function(){return(0,i.Z)({},(0,O.Z)(pe,ue),!(0,L.Z)(de)&&{as:k,theme:te},{className:(0,l.Z)(Z,null==pe?void 0:pe.className,null==b?void 0:b.root,!ue.open&&ue.exited&&(null==b?void 0:b.hidden))})},backdrop:function(){return(0,i.Z)({},h,(0,O.Z)(ve,ue),{className:(0,l.Z)(null==ve?void 0:ve.className,null==h?void 0:h.className,null==b?void 0:b.backdrop)})}},onTransitionEnter:function(){return se(!1)},onTransitionExited:function(){return se(!0)},ref:n},re,ce,{children:y}))}))},15473:function(e,n,o){o.d(n,{XS:function(){return A},ZP:function(){return F}});var t=o(29439),r=o(87462),i=o(63366),a=o(72791),l=o(28182),s=o(94419),c=o(21607),u=o(52474),d=o(66934),f=o(31402),p=o(83199),v=o(98301),m=o(17602),h=o(42071),b=o(13208),Z=o(13827),g=o(35527),E=o(75878),y=o(21217);function x(e){return(0,y.Z)("MuiPopover",e)}(0,E.Z)("MuiPopover",["root","paper"]);var k=o(80184),P=["onEntering"],R=["action","anchorEl","anchorOrigin","anchorPosition","anchorReference","children","className","container","elevation","marginThreshold","open","PaperProps","slots","slotProps","transformOrigin","TransitionComponent","transitionDuration","TransitionProps"],T=["slotProps"];function w(e,n){var o=0;return"number"===typeof n?o=n:"center"===n?o=e.height/2:"bottom"===n&&(o=e.height),o}function C(e,n){var o=0;return"number"===typeof n?o=n:"center"===n?o=e.width/2:"right"===n&&(o=e.width),o}function S(e){return[e.horizontal,e.vertical].map((function(e){return"number"===typeof e?"".concat(e,"px"):e})).join(" ")}function N(e){return"function"===typeof e?e():e}var M=(0,d.ZP)(Z.Z,{name:"MuiPopover",slot:"Root",overridesResolver:function(e,n){return n.root}})({}),A=(0,d.ZP)(g.Z,{name:"MuiPopover",slot:"Paper",overridesResolver:function(e,n){return n.paper}})({position:"absolute",overflowY:"auto",overflowX:"hidden",minWidth:16,minHeight:16,maxWidth:"calc(100% - 32px)",maxHeight:"calc(100% - 32px)",outline:0}),F=a.forwardRef((function(e,n){var o,d,Z,g=(0,f.Z)({props:e,name:"MuiPopover"}),E=g.action,y=g.anchorEl,F=g.anchorOrigin,I=void 0===F?{vertical:"top",horizontal:"left"}:F,O=g.anchorPosition,L=g.anchorReference,B=void 0===L?"anchorEl":L,D=g.children,j=g.className,z=g.container,K=g.elevation,H=void 0===K?8:K,W=g.marginThreshold,U=void 0===W?16:W,Y=g.open,q=g.PaperProps,X=void 0===q?{}:q,_=g.slots,G=g.slotProps,V=g.transformOrigin,J=void 0===V?{vertical:"top",horizontal:"left"}:V,Q=g.TransitionComponent,$=void 0===Q?b.Z:Q,ee=g.transitionDuration,ne=void 0===ee?"auto":ee,oe=g.TransitionProps,te=(void 0===oe?{}:oe).onEntering,re=(0,i.Z)(g.TransitionProps,P),ie=(0,i.Z)(g,R),ae=null!=(o=null==G?void 0:G.paper)?o:X,le=a.useRef(),se=(0,h.Z)(le,ae.ref),ce=(0,r.Z)({},g,{anchorOrigin:I,anchorReference:B,elevation:H,marginThreshold:U,externalPaperSlotProps:ae,transformOrigin:J,TransitionComponent:$,transitionDuration:ne,TransitionProps:re}),ue=function(e){var n=e.classes;return(0,s.Z)({root:["root"],paper:["paper"]},x,n)}(ce),de=a.useCallback((function(){if("anchorPosition"===B)return O;var e=N(y),n=(e&&1===e.nodeType?e:(0,v.Z)(le.current).body).getBoundingClientRect();return{top:n.top+w(n,I.vertical),left:n.left+C(n,I.horizontal)}}),[y,I.horizontal,I.vertical,O,B]),fe=a.useCallback((function(e){return{vertical:w(e,J.vertical),horizontal:C(e,J.horizontal)}}),[J.horizontal,J.vertical]),pe=a.useCallback((function(e){var n={width:e.offsetWidth,height:e.offsetHeight},o=fe(n);if("none"===B)return{top:null,left:null,transformOrigin:S(o)};var t=de(),r=t.top-o.vertical,i=t.left-o.horizontal,a=r+n.height,l=i+n.width,s=(0,m.Z)(N(y)),c=s.innerHeight-U,u=s.innerWidth-U;if(rc){var f=a-c;r-=f,o.vertical+=f}if(iu){var v=l-u;i-=v,o.horizontal+=v}return{top:"".concat(Math.round(r),"px"),left:"".concat(Math.round(i),"px"),transformOrigin:S(o)}}),[y,B,de,fe,U]),ve=a.useState(Y),me=(0,t.Z)(ve,2),he=me[0],be=me[1],Ze=a.useCallback((function(){var e=le.current;if(e){var n=pe(e);null!==n.top&&(e.style.top=n.top),null!==n.left&&(e.style.left=n.left),e.style.transformOrigin=n.transformOrigin,be(!0)}}),[pe]);a.useEffect((function(){Y&&Ze()})),a.useImperativeHandle(E,(function(){return Y?{updatePosition:function(){Ze()}}:null}),[Y,Ze]),a.useEffect((function(){if(Y){var e=(0,p.Z)((function(){Ze()})),n=(0,m.Z)(y);return n.addEventListener("resize",e),function(){e.clear(),n.removeEventListener("resize",e)}}}),[y,Y,Ze]);var ge=ne;"auto"!==ne||$.muiSupportAuto||(ge=void 0);var Ee=z||(y?(0,v.Z)(N(y)).body:void 0),ye=null!=(d=null==_?void 0:_.root)?d:M,xe=null!=(Z=null==_?void 0:_.paper)?Z:A,ke=(0,c.Z)({elementType:xe,externalSlotProps:(0,r.Z)({},ae,{style:he?ae.style:(0,r.Z)({},ae.style,{opacity:0})}),additionalProps:{elevation:H,ref:se},ownerState:ce,className:(0,l.Z)(ue.paper,null==ae?void 0:ae.className)}),Pe=(0,c.Z)({elementType:ye,externalSlotProps:(null==G?void 0:G.root)||{},externalForwardedProps:ie,additionalProps:{ref:n,slotProps:{backdrop:{invisible:!0}},container:Ee,open:Y},ownerState:ce,className:(0,l.Z)(ue.root,j)}),Re=Pe.slotProps,Te=(0,i.Z)(Pe,T);return(0,k.jsx)(ye,(0,r.Z)({},Te,!(0,u.Z)(ye)&&{slotProps:Re},{children:(0,k.jsx)($,(0,r.Z)({appear:!0,in:Y,onEntering:function(e,n){te&&te(e,n),Ze()},onExited:function(){be(!1)},timeout:ge},re,{children:(0,k.jsx)(xe,(0,r.Z)({},ke,{children:D}))}))}))}))},76469:function(e,n,o){var t=o(72791),r=o(6117),i=o(84913),a=o(80184),l=["input","select","textarea","a[href]","button","[tabindex]","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable="false"])'].join(",");function s(e){var n=[],o=[];return Array.from(e.querySelectorAll(l)).forEach((function(e,t){var r=function(e){var n=parseInt(e.getAttribute("tabindex")||"",10);return Number.isNaN(n)?"true"===e.contentEditable||("AUDIO"===e.nodeName||"VIDEO"===e.nodeName||"DETAILS"===e.nodeName)&&null===e.getAttribute("tabindex")?0:e.tabIndex:n}(e);-1!==r&&function(e){return!(e.disabled||"INPUT"===e.tagName&&"hidden"===e.type||function(e){if("INPUT"!==e.tagName||"radio"!==e.type)return!1;if(!e.name)return!1;var n=function(n){return e.ownerDocument.querySelector('input[type="radio"]'.concat(n))},o=n('[name="'.concat(e.name,'"]:checked'));return o||(o=n('[name="'.concat(e.name,'"]'))),o!==e}(e))}(e)&&(0===r?n.push(e):o.push({documentOrder:t,tabIndex:r,node:e}))})),o.sort((function(e,n){return e.tabIndex===n.tabIndex?e.documentOrder-n.documentOrder:e.tabIndex-n.tabIndex})).map((function(e){return e.node})).concat(n)}function c(){return!0}n.Z=function(e){var n=e.children,o=e.disableAutoFocus,l=void 0!==o&&o,u=e.disableEnforceFocus,d=void 0!==u&&u,f=e.disableRestoreFocus,p=void 0!==f&&f,v=e.getTabbable,m=void 0===v?s:v,h=e.isEnabled,b=void 0===h?c:h,Z=e.open,g=t.useRef(!1),E=t.useRef(null),y=t.useRef(null),x=t.useRef(null),k=t.useRef(null),P=t.useRef(!1),R=t.useRef(null),T=(0,r.Z)(n.ref,R),w=t.useRef(null);t.useEffect((function(){Z&&R.current&&(P.current=!l)}),[l,Z]),t.useEffect((function(){if(Z&&R.current){var e=(0,i.Z)(R.current);return R.current.contains(e.activeElement)||(R.current.hasAttribute("tabIndex")||R.current.setAttribute("tabIndex","-1"),P.current&&R.current.focus()),function(){p||(x.current&&x.current.focus&&(g.current=!0,x.current.focus()),x.current=null)}}}),[Z]),t.useEffect((function(){if(Z&&R.current){var e=(0,i.Z)(R.current),n=function(n){var o=R.current;if(null!==o)if(e.hasFocus()&&!d&&b()&&!g.current){if(!o.contains(e.activeElement)){if(n&&k.current!==n.target||e.activeElement!==k.current)k.current=null;else if(null!==k.current)return;if(!P.current)return;var t=[];if(e.activeElement!==E.current&&e.activeElement!==y.current||(t=m(R.current)),t.length>0){var r,i,a=Boolean((null==(r=w.current)?void 0:r.shiftKey)&&"Tab"===(null==(i=w.current)?void 0:i.key)),l=t[0],s=t[t.length-1];"string"!==typeof l&&"string"!==typeof s&&(a?s.focus():l.focus())}else o.focus()}}else g.current=!1},o=function(n){w.current=n,!d&&b()&&"Tab"===n.key&&e.activeElement===R.current&&n.shiftKey&&(g.current=!0,y.current&&y.current.focus())};e.addEventListener("focusin",n),e.addEventListener("keydown",o,!0);var t=setInterval((function(){e.activeElement&&"BODY"===e.activeElement.tagName&&n(null)}),50);return function(){clearInterval(t),e.removeEventListener("focusin",n),e.removeEventListener("keydown",o,!0)}}}),[l,d,p,b,Z,m]);var C=function(e){null===x.current&&(x.current=e.relatedTarget),P.current=!0};return(0,a.jsxs)(t.Fragment,{children:[(0,a.jsx)("div",{tabIndex:Z?0:-1,onFocus:C,ref:E,"data-testid":"sentinelStart"}),t.cloneElement(n,{ref:T,onFocus:function(e){null===x.current&&(x.current=e.relatedTarget),P.current=!0,k.current=e.target;var o=n.props.onFocus;o&&o(e)}}),(0,a.jsx)("div",{tabIndex:Z?0:-1,onFocus:C,ref:y,"data-testid":"sentinelEnd"})]})}},57137:function(e,n,o){function t(e){var n=e.documentElement.clientWidth;return Math.abs(window.innerWidth-n)}o.d(n,{Z:function(){return t}})}}]); -//# sourceMappingURL=5473.e6936445.chunk.js.map \ No newline at end of file +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[5473],{52739:function(e,n,o){o.d(n,{Z:function(){return b}});var t=o(63366),r=o(87462),i=o(72791),a=o(28182),l=o(94419),s=o(66934),c=o(31402),u=o(60627),d=o(75878),f=o(21217);function p(e){return(0,f.Z)("MuiBackdrop",e)}(0,d.Z)("MuiBackdrop",["root","invisible"]);var v=o(80184),h=["children","className","component","components","componentsProps","invisible","open","slotProps","slots","TransitionComponent","transitionDuration"],m=(0,s.ZP)("div",{name:"MuiBackdrop",slot:"Root",overridesResolver:function(e,n){var o=e.ownerState;return[n.root,o.invisible&&n.invisible]}})((function(e){var n=e.ownerState;return(0,r.Z)({position:"fixed",display:"flex",alignItems:"center",justifyContent:"center",right:0,bottom:0,top:0,left:0,backgroundColor:"rgba(0, 0, 0, 0.5)",WebkitTapHighlightColor:"transparent"},n.invisible&&{backgroundColor:"transparent"})})),b=i.forwardRef((function(e,n){var o,i,s,d=(0,c.Z)({props:e,name:"MuiBackdrop"}),f=d.children,b=d.className,Z=d.component,g=void 0===Z?"div":Z,y=d.components,E=void 0===y?{}:y,x=d.componentsProps,k=void 0===x?{}:x,P=d.invisible,R=void 0!==P&&P,T=d.open,w=d.slotProps,C=void 0===w?{}:w,S=d.slots,N=void 0===S?{}:S,A=d.TransitionComponent,M=void 0===A?u.Z:A,F=d.transitionDuration,I=(0,t.Z)(d,h),O=(0,r.Z)({},d,{component:g,invisible:R}),L=function(e){var n=e.classes,o={root:["root",e.invisible&&"invisible"]};return(0,l.Z)(o,p,n)}(O),B=null!=(o=C.root)?o:k.root;return(0,v.jsx)(M,(0,r.Z)({in:T,timeout:F},I,{children:(0,v.jsx)(m,(0,r.Z)({"aria-hidden":!0},B,{as:null!=(i=null!=(s=N.root)?s:E.Root)?i:g,className:(0,a.Z)(L.root,b,null==B?void 0:B.className),ownerState:(0,r.Z)({},O,null==B?void 0:B.ownerState),classes:L,ref:n,children:f}))}))}))},60627:function(e,n,o){var t=o(87462),r=o(63366),i=o(72791),a=o(18875),l=o(13967),s=o(4999),c=o(42071),u=o(80184),d=["addEndListener","appear","children","easing","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","style","timeout","TransitionComponent"],f={entering:{opacity:1},entered:{opacity:1}},p=i.forwardRef((function(e,n){var o=(0,l.Z)(),p={enter:o.transitions.duration.enteringScreen,exit:o.transitions.duration.leavingScreen},v=e.addEndListener,h=e.appear,m=void 0===h||h,b=e.children,Z=e.easing,g=e.in,y=e.onEnter,E=e.onEntered,x=e.onEntering,k=e.onExit,P=e.onExited,R=e.onExiting,T=e.style,w=e.timeout,C=void 0===w?p:w,S=e.TransitionComponent,N=void 0===S?a.ZP:S,A=(0,r.Z)(e,d),M=i.useRef(null),F=(0,c.Z)(M,b.ref,n),I=function(e){return function(n){if(e){var o=M.current;void 0===n?e(o):e(o,n)}}},O=I(x),L=I((function(e,n){(0,s.n)(e);var t=(0,s.C)({style:T,timeout:C,easing:Z},{mode:"enter"});e.style.webkitTransition=o.transitions.create("opacity",t),e.style.transition=o.transitions.create("opacity",t),y&&y(e,n)})),B=I(E),D=I(R),j=I((function(e){var n=(0,s.C)({style:T,timeout:C,easing:Z},{mode:"exit"});e.style.webkitTransition=o.transitions.create("opacity",n),e.style.transition=o.transitions.create("opacity",n),k&&k(e)})),z=I(P);return(0,u.jsx)(N,(0,t.Z)({appear:m,in:g,nodeRef:M,onEnter:L,onEntered:B,onEntering:O,onExit:j,onExited:z,onExiting:D,addEndListener:function(e){v&&v(M.current,e)},timeout:C},A,{children:function(e,n){return i.cloneElement(b,(0,t.Z)({style:(0,t.Z)({opacity:0,visibility:"exited"!==e||g?void 0:"hidden"},f[e],T,b.props.style),ref:F},n))}}))}));n.Z=p},13827:function(e,n,o){o.d(n,{Z:function(){return W}});var t=o(29439),r=o(63366),i=o(87462),a=o(72791),l=o(28182),s=o(6117),c=o(84913),u=o(97054),d=o(78949),f=o(94419),p=o(50209),v=o(15671),h=o(43144),m=o(93433),b=o(65202),Z=o(57137);function g(e,n){n?e.setAttribute("aria-hidden","true"):e.removeAttribute("aria-hidden")}function y(e){return parseInt((0,b.Z)(e).getComputedStyle(e).paddingRight,10)||0}function E(e,n,o,t,r){var i=[n,o].concat((0,m.Z)(t));[].forEach.call(e.children,(function(e){var n=-1===i.indexOf(e),o=!function(e){var n=-1!==["TEMPLATE","SCRIPT","STYLE","LINK","MAP","META","NOSCRIPT","PICTURE","COL","COLGROUP","PARAM","SLOT","SOURCE","TRACK"].indexOf(e.tagName),o="INPUT"===e.tagName&&"hidden"===e.getAttribute("type");return n||o}(e);n&&o&&g(e,r)}))}function x(e,n){var o=-1;return e.some((function(e,t){return!!n(e)&&(o=t,!0)})),o}function k(e,n){var o=[],t=e.container;if(!n.disableScrollLock){if(function(e){var n=(0,c.Z)(e);return n.body===e?(0,b.Z)(e).innerWidth>n.documentElement.clientWidth:e.scrollHeight>e.clientHeight}(t)){var r=(0,Z.Z)((0,c.Z)(t));o.push({value:t.style.paddingRight,property:"padding-right",el:t}),t.style.paddingRight="".concat(y(t)+r,"px");var i=(0,c.Z)(t).querySelectorAll(".mui-fixed");[].forEach.call(i,(function(e){o.push({value:e.style.paddingRight,property:"padding-right",el:e}),e.style.paddingRight="".concat(y(e)+r,"px")}))}var a;if(t.parentNode instanceof DocumentFragment)a=(0,c.Z)(t).body;else{var l=t.parentElement,s=(0,b.Z)(t);a="HTML"===(null==l?void 0:l.nodeName)&&"scroll"===s.getComputedStyle(l).overflowY?l:t}o.push({value:a.style.overflow,property:"overflow",el:a},{value:a.style.overflowX,property:"overflow-x",el:a},{value:a.style.overflowY,property:"overflow-y",el:a}),a.style.overflow="hidden"}return function(){o.forEach((function(e){var n=e.value,o=e.el,t=e.property;n?o.style.setProperty(t,n):o.style.removeProperty(t)}))}}var P=function(){function e(){(0,v.Z)(this,e),this.containers=void 0,this.modals=void 0,this.modals=[],this.containers=[]}return(0,h.Z)(e,[{key:"add",value:function(e,n){var o=this.modals.indexOf(e);if(-1!==o)return o;o=this.modals.length,this.modals.push(e),e.modalRef&&g(e.modalRef,!1);var t=function(e){var n=[];return[].forEach.call(e.children,(function(e){"true"===e.getAttribute("aria-hidden")&&n.push(e)})),n}(n);E(n,e.mount,e.modalRef,t,!0);var r=x(this.containers,(function(e){return e.container===n}));return-1!==r?(this.containers[r].modals.push(e),o):(this.containers.push({modals:[e],container:n,restore:null,hiddenSiblings:t}),o)}},{key:"mount",value:function(e,n){var o=x(this.containers,(function(n){return-1!==n.modals.indexOf(e)})),t=this.containers[o];t.restore||(t.restore=k(t,n))}},{key:"remove",value:function(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=this.modals.indexOf(e);if(-1===o)return o;var t=x(this.containers,(function(n){return-1!==n.modals.indexOf(e)})),r=this.containers[t];if(r.modals.splice(r.modals.indexOf(e),1),this.modals.splice(o,1),0===r.modals.length)r.restore&&r.restore(),e.modalRef&&g(e.modalRef,n),E(r.container,e.mount,e.modalRef,r.hiddenSiblings,!1),this.containers.splice(t,1);else{var i=r.modals[r.modals.length-1];i.modalRef&&g(i.modalRef,!1)}return o}},{key:"isTopModal",value:function(e){return this.modals.length>0&&this.modals[this.modals.length-1]===e}}]),e}(),R=o(76469),T=o(75878),w=o(21217);function C(e){return(0,w.Z)("MuiModal",e)}(0,T.Z)("MuiModal",["root","hidden","backdrop"]);var S=o(21607),N=o(42871),A=o(80184),M=["children","closeAfterTransition","container","disableAutoFocus","disableEnforceFocus","disableEscapeKeyDown","disablePortal","disableRestoreFocus","disableScrollLock","hideBackdrop","keepMounted","manager","onBackdropClick","onClose","onKeyDown","open","onTransitionEnter","onTransitionExited","slotProps","slots"];var F=new P,I=a.forwardRef((function(e,n){var o,l,v=e.children,h=e.closeAfterTransition,m=void 0!==h&&h,b=e.container,Z=e.disableAutoFocus,y=void 0!==Z&&Z,E=e.disableEnforceFocus,x=void 0!==E&&E,k=e.disableEscapeKeyDown,P=void 0!==k&&k,T=e.disablePortal,w=void 0!==T&&T,I=e.disableRestoreFocus,O=void 0!==I&&I,L=e.disableScrollLock,B=void 0!==L&&L,D=e.hideBackdrop,j=void 0!==D&&D,z=e.keepMounted,K=void 0!==z&&z,H=e.manager,W=void 0===H?F:H,U=e.onBackdropClick,Y=e.onClose,q=e.onKeyDown,X=e.open,_=e.onTransitionEnter,G=e.onTransitionExited,V=e.slotProps,J=void 0===V?{}:V,Q=e.slots,$=void 0===Q?{}:Q,ee=(0,r.Z)(e,M),ne=W,oe=a.useState(!X),te=(0,t.Z)(oe,2),re=te[0],ie=te[1],ae=a.useRef({}),le=a.useRef(null),se=a.useRef(null),ce=(0,s.Z)(se,n),ue=function(e){return!!e&&e.props.hasOwnProperty("in")}(v),de=null==(o=e["aria-hidden"])||o,fe=function(){return ae.current.modalRef=se.current,ae.current.mountNode=le.current,ae.current},pe=function(){ne.mount(fe(),{disableScrollLock:B}),se.current&&(se.current.scrollTop=0)},ve=(0,u.Z)((function(){var e=function(e){return"function"===typeof e?e():e}(b)||(0,c.Z)(le.current).body;ne.add(fe(),e),se.current&&pe()})),he=a.useCallback((function(){return ne.isTopModal(fe())}),[ne]),me=(0,u.Z)((function(e){le.current=e,e&&se.current&&(X&&he()?pe():g(se.current,de))})),be=a.useCallback((function(){ne.remove(fe(),de)}),[ne,de]);a.useEffect((function(){return function(){be()}}),[be]),a.useEffect((function(){X?ve():ue&&m||be()}),[X,be,ue,m,ve]);var Ze=(0,i.Z)({},e,{closeAfterTransition:m,disableAutoFocus:y,disableEnforceFocus:x,disableEscapeKeyDown:P,disablePortal:w,disableRestoreFocus:O,disableScrollLock:B,exited:re,hideBackdrop:j,keepMounted:K}),ge=function(e){var n=e.open,o=e.exited,t={root:["root",!n&&o&&"hidden"],backdrop:["backdrop"]};return(0,f.Z)(t,(0,N.T)(C))}(Ze),ye={};void 0===v.props.tabIndex&&(ye.tabIndex="-1"),ue&&(ye.onEnter=(0,d.Z)((function(){ie(!1),_&&_()}),v.props.onEnter),ye.onExited=(0,d.Z)((function(){ie(!0),G&&G(),m&&be()}),v.props.onExited));var Ee=null!=(l=$.root)?l:"div",xe=(0,S.Z)({elementType:Ee,externalSlotProps:J.root,externalForwardedProps:ee,additionalProps:{ref:ce,role:"presentation",onKeyDown:function(e){q&&q(e),"Escape"===e.key&&he()&&(P||(e.stopPropagation(),Y&&Y(e,"escapeKeyDown")))}},className:ge.root,ownerState:Ze}),ke=$.backdrop,Pe=(0,S.Z)({elementType:ke,externalSlotProps:J.backdrop,additionalProps:{"aria-hidden":!0,onClick:function(e){e.target===e.currentTarget&&(U&&U(e),Y&&Y(e,"backdropClick"))},open:X},className:ge.backdrop,ownerState:Ze});return K||X||ue&&!re?(0,A.jsx)(p.Z,{ref:me,container:b,disablePortal:w,children:(0,A.jsxs)(Ee,(0,i.Z)({},xe,{children:[!j&&ke?(0,A.jsx)(ke,(0,i.Z)({},Pe)):null,(0,A.jsx)(R.Z,{disableEnforceFocus:x,disableAutoFocus:y,disableRestoreFocus:O,isEnabled:he,open:X,children:a.cloneElement(v,ye)})]}))}):null})),O=o(96605),L=o(52474),B=o(66934),D=o(31402),j=o(52739),z=["BackdropComponent","BackdropProps","classes","className","closeAfterTransition","children","container","component","components","componentsProps","disableAutoFocus","disableEnforceFocus","disableEscapeKeyDown","disablePortal","disableRestoreFocus","disableScrollLock","hideBackdrop","keepMounted","onBackdropClick","onClose","open","slotProps","slots","theme"],K=(0,B.ZP)("div",{name:"MuiModal",slot:"Root",overridesResolver:function(e,n){var o=e.ownerState;return[n.root,!o.open&&o.exited&&n.hidden]}})((function(e){var n=e.theme,o=e.ownerState;return(0,i.Z)({position:"fixed",zIndex:(n.vars||n).zIndex.modal,right:0,bottom:0,top:0,left:0},!o.open&&o.exited&&{visibility:"hidden"})})),H=(0,B.ZP)(j.Z,{name:"MuiModal",slot:"Backdrop",overridesResolver:function(e,n){return n.backdrop}})({zIndex:-1}),W=a.forwardRef((function(e,n){var o,s,c,u,d,f,p=(0,D.Z)({name:"MuiModal",props:e}),v=p.BackdropComponent,h=void 0===v?H:v,m=p.BackdropProps,b=p.classes,Z=p.className,g=p.closeAfterTransition,y=void 0!==g&&g,E=p.children,x=p.container,k=p.component,P=p.components,R=void 0===P?{}:P,T=p.componentsProps,w=void 0===T?{}:T,C=p.disableAutoFocus,S=void 0!==C&&C,N=p.disableEnforceFocus,M=void 0!==N&&N,F=p.disableEscapeKeyDown,B=void 0!==F&&F,j=p.disablePortal,W=void 0!==j&&j,U=p.disableRestoreFocus,Y=void 0!==U&&U,q=p.disableScrollLock,X=void 0!==q&&q,_=p.hideBackdrop,G=void 0!==_&&_,V=p.keepMounted,J=void 0!==V&&V,Q=p.onBackdropClick,$=p.onClose,ee=p.open,ne=p.slotProps,oe=p.slots,te=p.theme,re=(0,r.Z)(p,z),ie=a.useState(!0),ae=(0,t.Z)(ie,2),le=ae[0],se=ae[1],ce={container:x,closeAfterTransition:y,disableAutoFocus:S,disableEnforceFocus:M,disableEscapeKeyDown:B,disablePortal:W,disableRestoreFocus:Y,disableScrollLock:X,hideBackdrop:G,keepMounted:J,onBackdropClick:Q,onClose:$,open:ee},ue=(0,i.Z)({},p,ce,{exited:le}),de=null!=(o=null!=(s=null==oe?void 0:oe.root)?s:R.Root)?o:K,fe=null!=(c=null!=(u=null==oe?void 0:oe.backdrop)?u:R.Backdrop)?c:h,pe=null!=(d=null==ne?void 0:ne.root)?d:w.root,ve=null!=(f=null==ne?void 0:ne.backdrop)?f:w.backdrop;return(0,A.jsx)(I,(0,i.Z)({slots:{root:de,backdrop:fe},slotProps:{root:function(){return(0,i.Z)({},(0,O.Z)(pe,ue),!(0,L.Z)(de)&&{as:k,theme:te},{className:(0,l.Z)(Z,null==pe?void 0:pe.className,null==b?void 0:b.root,!ue.open&&ue.exited&&(null==b?void 0:b.hidden))})},backdrop:function(){return(0,i.Z)({},m,(0,O.Z)(ve,ue),{className:(0,l.Z)(null==ve?void 0:ve.className,null==m?void 0:m.className,null==b?void 0:b.backdrop)})}},onTransitionEnter:function(){return se(!1)},onTransitionExited:function(){return se(!0)},ref:n},re,ce,{children:E}))}))},15473:function(e,n,o){o.d(n,{XS:function(){return M},ZP:function(){return F}});var t=o(29439),r=o(87462),i=o(63366),a=o(72791),l=o(28182),s=o(94419),c=o(21607),u=o(52474),d=o(66934),f=o(31402),p=o(83199),v=o(98301),h=o(17602),m=o(42071),b=o(13208),Z=o(13827),g=o(35527),y=o(75878),E=o(21217);function x(e){return(0,E.Z)("MuiPopover",e)}(0,y.Z)("MuiPopover",["root","paper"]);var k=o(80184),P=["onEntering"],R=["action","anchorEl","anchorOrigin","anchorPosition","anchorReference","children","className","container","elevation","marginThreshold","open","PaperProps","slots","slotProps","transformOrigin","TransitionComponent","transitionDuration","TransitionProps"],T=["slotProps"];function w(e,n){var o=0;return"number"===typeof n?o=n:"center"===n?o=e.height/2:"bottom"===n&&(o=e.height),o}function C(e,n){var o=0;return"number"===typeof n?o=n:"center"===n?o=e.width/2:"right"===n&&(o=e.width),o}function S(e){return[e.horizontal,e.vertical].map((function(e){return"number"===typeof e?"".concat(e,"px"):e})).join(" ")}function N(e){return"function"===typeof e?e():e}var A=(0,d.ZP)(Z.Z,{name:"MuiPopover",slot:"Root",overridesResolver:function(e,n){return n.root}})({}),M=(0,d.ZP)(g.Z,{name:"MuiPopover",slot:"Paper",overridesResolver:function(e,n){return n.paper}})({position:"absolute",overflowY:"auto",overflowX:"hidden",minWidth:16,minHeight:16,maxWidth:"calc(100% - 32px)",maxHeight:"calc(100% - 32px)",outline:0}),F=a.forwardRef((function(e,n){var o,d,Z,g=(0,f.Z)({props:e,name:"MuiPopover"}),y=g.action,E=g.anchorEl,F=g.anchorOrigin,I=void 0===F?{vertical:"top",horizontal:"left"}:F,O=g.anchorPosition,L=g.anchorReference,B=void 0===L?"anchorEl":L,D=g.children,j=g.className,z=g.container,K=g.elevation,H=void 0===K?8:K,W=g.marginThreshold,U=void 0===W?16:W,Y=g.open,q=g.PaperProps,X=void 0===q?{}:q,_=g.slots,G=g.slotProps,V=g.transformOrigin,J=void 0===V?{vertical:"top",horizontal:"left"}:V,Q=g.TransitionComponent,$=void 0===Q?b.Z:Q,ee=g.transitionDuration,ne=void 0===ee?"auto":ee,oe=g.TransitionProps,te=(void 0===oe?{}:oe).onEntering,re=(0,i.Z)(g.TransitionProps,P),ie=(0,i.Z)(g,R),ae=null!=(o=null==G?void 0:G.paper)?o:X,le=a.useRef(),se=(0,m.Z)(le,ae.ref),ce=(0,r.Z)({},g,{anchorOrigin:I,anchorReference:B,elevation:H,marginThreshold:U,externalPaperSlotProps:ae,transformOrigin:J,TransitionComponent:$,transitionDuration:ne,TransitionProps:re}),ue=function(e){var n=e.classes;return(0,s.Z)({root:["root"],paper:["paper"]},x,n)}(ce),de=a.useCallback((function(){if("anchorPosition"===B)return O;var e=N(E),n=(e&&1===e.nodeType?e:(0,v.Z)(le.current).body).getBoundingClientRect();return{top:n.top+w(n,I.vertical),left:n.left+C(n,I.horizontal)}}),[E,I.horizontal,I.vertical,O,B]),fe=a.useCallback((function(e){return{vertical:w(e,J.vertical),horizontal:C(e,J.horizontal)}}),[J.horizontal,J.vertical]),pe=a.useCallback((function(e){var n={width:e.offsetWidth,height:e.offsetHeight},o=fe(n);if("none"===B)return{top:null,left:null,transformOrigin:S(o)};var t=de(),r=t.top-o.vertical,i=t.left-o.horizontal,a=r+n.height,l=i+n.width,s=(0,h.Z)(N(E)),c=s.innerHeight-U,u=s.innerWidth-U;if(rc){var f=a-c;r-=f,o.vertical+=f}if(iu){var v=l-u;i-=v,o.horizontal+=v}return{top:"".concat(Math.round(r),"px"),left:"".concat(Math.round(i),"px"),transformOrigin:S(o)}}),[E,B,de,fe,U]),ve=a.useState(Y),he=(0,t.Z)(ve,2),me=he[0],be=he[1],Ze=a.useCallback((function(){var e=le.current;if(e){var n=pe(e);null!==n.top&&(e.style.top=n.top),null!==n.left&&(e.style.left=n.left),e.style.transformOrigin=n.transformOrigin,be(!0)}}),[pe]);a.useEffect((function(){Y&&Ze()})),a.useImperativeHandle(y,(function(){return Y?{updatePosition:function(){Ze()}}:null}),[Y,Ze]),a.useEffect((function(){if(Y){var e=(0,p.Z)((function(){Ze()})),n=(0,h.Z)(E);return n.addEventListener("resize",e),function(){e.clear(),n.removeEventListener("resize",e)}}}),[E,Y,Ze]);var ge=ne;"auto"!==ne||$.muiSupportAuto||(ge=void 0);var ye=z||(E?(0,v.Z)(N(E)).body:void 0),Ee=null!=(d=null==_?void 0:_.root)?d:A,xe=null!=(Z=null==_?void 0:_.paper)?Z:M,ke=(0,c.Z)({elementType:xe,externalSlotProps:(0,r.Z)({},ae,{style:me?ae.style:(0,r.Z)({},ae.style,{opacity:0})}),additionalProps:{elevation:H,ref:se},ownerState:ce,className:(0,l.Z)(ue.paper,null==ae?void 0:ae.className)}),Pe=(0,c.Z)({elementType:Ee,externalSlotProps:(null==G?void 0:G.root)||{},externalForwardedProps:ie,additionalProps:{ref:n,slotProps:{backdrop:{invisible:!0}},container:ye,open:Y},ownerState:ce,className:(0,l.Z)(ue.root,j)}),Re=Pe.slotProps,Te=(0,i.Z)(Pe,T);return(0,k.jsx)(Ee,(0,r.Z)({},Te,!(0,u.Z)(Ee)&&{slotProps:Re},{children:(0,k.jsx)($,(0,r.Z)({appear:!0,in:Y,onEntering:function(e,n){te&&te(e,n),Ze()},onExited:function(){be(!1)},timeout:ge},re,{children:(0,k.jsx)(xe,(0,r.Z)({},ke,{children:D}))}))}))}))},76469:function(e,n,o){var t=o(72791),r=o(6117),i=o(84913),a=o(80184),l=["input","select","textarea","a[href]","button","[tabindex]","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable="false"])'].join(",");function s(e){var n=[],o=[];return Array.from(e.querySelectorAll(l)).forEach((function(e,t){var r=function(e){var n=parseInt(e.getAttribute("tabindex")||"",10);return Number.isNaN(n)?"true"===e.contentEditable||("AUDIO"===e.nodeName||"VIDEO"===e.nodeName||"DETAILS"===e.nodeName)&&null===e.getAttribute("tabindex")?0:e.tabIndex:n}(e);-1!==r&&function(e){return!(e.disabled||"INPUT"===e.tagName&&"hidden"===e.type||function(e){if("INPUT"!==e.tagName||"radio"!==e.type)return!1;if(!e.name)return!1;var n=function(n){return e.ownerDocument.querySelector('input[type="radio"]'.concat(n))},o=n('[name="'.concat(e.name,'"]:checked'));return o||(o=n('[name="'.concat(e.name,'"]'))),o!==e}(e))}(e)&&(0===r?n.push(e):o.push({documentOrder:t,tabIndex:r,node:e}))})),o.sort((function(e,n){return e.tabIndex===n.tabIndex?e.documentOrder-n.documentOrder:e.tabIndex-n.tabIndex})).map((function(e){return e.node})).concat(n)}function c(){return!0}n.Z=function(e){var n=e.children,o=e.disableAutoFocus,l=void 0!==o&&o,u=e.disableEnforceFocus,d=void 0!==u&&u,f=e.disableRestoreFocus,p=void 0!==f&&f,v=e.getTabbable,h=void 0===v?s:v,m=e.isEnabled,b=void 0===m?c:m,Z=e.open,g=t.useRef(!1),y=t.useRef(null),E=t.useRef(null),x=t.useRef(null),k=t.useRef(null),P=t.useRef(!1),R=t.useRef(null),T=(0,r.Z)(n.ref,R),w=t.useRef(null);t.useEffect((function(){Z&&R.current&&(P.current=!l)}),[l,Z]),t.useEffect((function(){if(Z&&R.current){var e=(0,i.Z)(R.current);return R.current.contains(e.activeElement)||(R.current.hasAttribute("tabIndex")||R.current.setAttribute("tabIndex","-1"),P.current&&R.current.focus()),function(){p||(x.current&&x.current.focus&&(g.current=!0,x.current.focus()),x.current=null)}}}),[Z]),t.useEffect((function(){if(Z&&R.current){var e=(0,i.Z)(R.current),n=function(n){var o=R.current;if(null!==o)if(e.hasFocus()&&!d&&b()&&!g.current){if(!o.contains(e.activeElement)){if(n&&k.current!==n.target||e.activeElement!==k.current)k.current=null;else if(null!==k.current)return;if(!P.current)return;var t=[];if(e.activeElement!==y.current&&e.activeElement!==E.current||(t=h(R.current)),t.length>0){var r,i,a=Boolean((null==(r=w.current)?void 0:r.shiftKey)&&"Tab"===(null==(i=w.current)?void 0:i.key)),l=t[0],s=t[t.length-1];"string"!==typeof l&&"string"!==typeof s&&(a?s.focus():l.focus())}else o.focus()}}else g.current=!1},o=function(n){w.current=n,!d&&b()&&"Tab"===n.key&&e.activeElement===R.current&&n.shiftKey&&(g.current=!0,E.current&&E.current.focus())};e.addEventListener("focusin",n),e.addEventListener("keydown",o,!0);var t=setInterval((function(){e.activeElement&&"BODY"===e.activeElement.tagName&&n(null)}),50);return function(){clearInterval(t),e.removeEventListener("focusin",n),e.removeEventListener("keydown",o,!0)}}}),[l,d,p,b,Z,h]);var C=function(e){null===x.current&&(x.current=e.relatedTarget),P.current=!0};return(0,a.jsxs)(t.Fragment,{children:[(0,a.jsx)("div",{tabIndex:Z?0:-1,onFocus:C,ref:y,"data-testid":"sentinelStart"}),t.cloneElement(n,{ref:T,onFocus:function(e){null===x.current&&(x.current=e.relatedTarget),P.current=!0,k.current=e.target;var o=n.props.onFocus;o&&o(e)}}),(0,a.jsx)("div",{tabIndex:Z?0:-1,onFocus:C,ref:E,"data-testid":"sentinelEnd"})]})}},78949:function(e,n,o){function t(){for(var e=arguments.length,n=new Array(e),o=0;o {\n const {\n classes,\n invisible\n } = ownerState;\n const slots = {\n root: ['root', invisible && 'invisible']\n };\n return composeClasses(slots, getBackdropUtilityClass, classes);\n};\nconst BackdropRoot = styled('div', {\n name: 'MuiBackdrop',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.invisible && styles.invisible];\n }\n})(({\n ownerState\n}) => _extends({\n position: 'fixed',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n right: 0,\n bottom: 0,\n top: 0,\n left: 0,\n backgroundColor: 'rgba(0, 0, 0, 0.5)',\n WebkitTapHighlightColor: 'transparent'\n}, ownerState.invisible && {\n backgroundColor: 'transparent'\n}));\nconst Backdrop = /*#__PURE__*/React.forwardRef(function Backdrop(inProps, ref) {\n var _slotProps$root, _ref, _slots$root;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiBackdrop'\n });\n const {\n children,\n className,\n component = 'div',\n components = {},\n componentsProps = {},\n invisible = false,\n open,\n slotProps = {},\n slots = {},\n TransitionComponent = Fade,\n transitionDuration\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n component,\n invisible\n });\n const classes = useUtilityClasses(ownerState);\n const rootSlotProps = (_slotProps$root = slotProps.root) != null ? _slotProps$root : componentsProps.root;\n return /*#__PURE__*/_jsx(TransitionComponent, _extends({\n in: open,\n timeout: transitionDuration\n }, other, {\n children: /*#__PURE__*/_jsx(BackdropRoot, _extends({\n \"aria-hidden\": true\n }, rootSlotProps, {\n as: (_ref = (_slots$root = slots.root) != null ? _slots$root : components.Root) != null ? _ref : component,\n className: clsx(classes.root, className, rootSlotProps == null ? void 0 : rootSlotProps.className),\n ownerState: _extends({}, ownerState, rootSlotProps == null ? void 0 : rootSlotProps.ownerState),\n classes: classes,\n ref: ref,\n children: children\n }))\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Backdrop.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `slots` prop.\n * It's recommended to use the `slots` prop instead.\n *\n * @default {}\n */\n components: PropTypes.shape({\n Root: PropTypes.elementType\n }),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `slotProps` prop.\n * It's recommended to use the `slotProps` prop instead, as `componentsProps` will be deprecated in the future.\n *\n * @default {}\n */\n componentsProps: PropTypes.shape({\n root: PropTypes.object\n }),\n /**\n * If `true`, the backdrop is invisible.\n * It can be used when rendering a popover or a custom select component.\n * @default false\n */\n invisible: PropTypes.bool,\n /**\n * If `true`, the component is shown.\n */\n open: PropTypes.bool.isRequired,\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slotProps: PropTypes.shape({\n root: PropTypes.object\n }),\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `components` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slots: PropTypes.shape({\n root: PropTypes.elementType\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The component used for the transition.\n * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.\n * @default Fade\n */\n TransitionComponent: PropTypes.elementType,\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n */\n transitionDuration: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })])\n} : void 0;\nexport default Backdrop;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"addEndListener\", \"appear\", \"children\", \"easing\", \"in\", \"onEnter\", \"onEntered\", \"onEntering\", \"onExit\", \"onExited\", \"onExiting\", \"style\", \"timeout\", \"TransitionComponent\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { Transition } from 'react-transition-group';\nimport { elementAcceptingRef } from '@mui/utils';\nimport useTheme from '../styles/useTheme';\nimport { reflow, getTransitionProps } from '../transitions/utils';\nimport useForkRef from '../utils/useForkRef';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst styles = {\n entering: {\n opacity: 1\n },\n entered: {\n opacity: 1\n }\n};\n\n/**\n * The Fade transition is used by the [Modal](/material-ui/react-modal/) component.\n * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.\n */\nconst Fade = /*#__PURE__*/React.forwardRef(function Fade(props, ref) {\n const theme = useTheme();\n const defaultTimeout = {\n enter: theme.transitions.duration.enteringScreen,\n exit: theme.transitions.duration.leavingScreen\n };\n const {\n addEndListener,\n appear = true,\n children,\n easing,\n in: inProp,\n onEnter,\n onEntered,\n onEntering,\n onExit,\n onExited,\n onExiting,\n style,\n timeout = defaultTimeout,\n // eslint-disable-next-line react/prop-types\n TransitionComponent = Transition\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const enableStrictModeCompat = true;\n const nodeRef = React.useRef(null);\n const handleRef = useForkRef(nodeRef, children.ref, ref);\n const normalizedTransitionCallback = callback => maybeIsAppearing => {\n if (callback) {\n const node = nodeRef.current;\n\n // onEnterXxx and onExitXxx callbacks have a different arguments.length value.\n if (maybeIsAppearing === undefined) {\n callback(node);\n } else {\n callback(node, maybeIsAppearing);\n }\n }\n };\n const handleEntering = normalizedTransitionCallback(onEntering);\n const handleEnter = normalizedTransitionCallback((node, isAppearing) => {\n reflow(node); // So the animation always start from the start.\n\n const transitionProps = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'enter'\n });\n node.style.webkitTransition = theme.transitions.create('opacity', transitionProps);\n node.style.transition = theme.transitions.create('opacity', transitionProps);\n if (onEnter) {\n onEnter(node, isAppearing);\n }\n });\n const handleEntered = normalizedTransitionCallback(onEntered);\n const handleExiting = normalizedTransitionCallback(onExiting);\n const handleExit = normalizedTransitionCallback(node => {\n const transitionProps = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'exit'\n });\n node.style.webkitTransition = theme.transitions.create('opacity', transitionProps);\n node.style.transition = theme.transitions.create('opacity', transitionProps);\n if (onExit) {\n onExit(node);\n }\n });\n const handleExited = normalizedTransitionCallback(onExited);\n const handleAddEndListener = next => {\n if (addEndListener) {\n // Old call signature before `react-transition-group` implemented `nodeRef`\n addEndListener(nodeRef.current, next);\n }\n };\n return /*#__PURE__*/_jsx(TransitionComponent, _extends({\n appear: appear,\n in: inProp,\n nodeRef: enableStrictModeCompat ? nodeRef : undefined,\n onEnter: handleEnter,\n onEntered: handleEntered,\n onEntering: handleEntering,\n onExit: handleExit,\n onExited: handleExited,\n onExiting: handleExiting,\n addEndListener: handleAddEndListener,\n timeout: timeout\n }, other, {\n children: (state, childProps) => {\n return /*#__PURE__*/React.cloneElement(children, _extends({\n style: _extends({\n opacity: 0,\n visibility: state === 'exited' && !inProp ? 'hidden' : undefined\n }, styles[state], style, children.props.style),\n ref: handleRef\n }, childProps));\n }\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Fade.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Add a custom transition end trigger. Called with the transitioning DOM\n * node and a done callback. Allows for more fine grained transition end\n * logic. Note: Timeouts are still used as a fallback if provided.\n */\n addEndListener: PropTypes.func,\n /**\n * Perform the enter transition when it first mounts if `in` is also `true`.\n * Set this to `false` to disable this behavior.\n * @default true\n */\n appear: PropTypes.bool,\n /**\n * A single child content element.\n */\n children: elementAcceptingRef.isRequired,\n /**\n * The transition timing function.\n * You may specify a single easing or a object containing enter and exit values.\n */\n easing: PropTypes.oneOfType([PropTypes.shape({\n enter: PropTypes.string,\n exit: PropTypes.string\n }), PropTypes.string]),\n /**\n * If `true`, the component will transition in.\n */\n in: PropTypes.bool,\n /**\n * @ignore\n */\n onEnter: PropTypes.func,\n /**\n * @ignore\n */\n onEntered: PropTypes.func,\n /**\n * @ignore\n */\n onEntering: PropTypes.func,\n /**\n * @ignore\n */\n onExit: PropTypes.func,\n /**\n * @ignore\n */\n onExited: PropTypes.func,\n /**\n * @ignore\n */\n onExiting: PropTypes.func,\n /**\n * @ignore\n */\n style: PropTypes.object,\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n * @default {\n * enter: theme.transitions.duration.enteringScreen,\n * exit: theme.transitions.duration.leavingScreen,\n * }\n */\n timeout: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })])\n} : void 0;\nexport default Fade;","import { unstable_ownerWindow as ownerWindow, unstable_ownerDocument as ownerDocument, unstable_getScrollbarSize as getScrollbarSize } from '@mui/utils';\n// Is a vertical scrollbar displayed?\nfunction isOverflowing(container) {\n const doc = ownerDocument(container);\n if (doc.body === container) {\n return ownerWindow(container).innerWidth > doc.documentElement.clientWidth;\n }\n return container.scrollHeight > container.clientHeight;\n}\nexport function ariaHidden(element, show) {\n if (show) {\n element.setAttribute('aria-hidden', 'true');\n } else {\n element.removeAttribute('aria-hidden');\n }\n}\nfunction getPaddingRight(element) {\n return parseInt(ownerWindow(element).getComputedStyle(element).paddingRight, 10) || 0;\n}\nfunction isAriaHiddenForbiddenOnElement(element) {\n // The forbidden HTML tags are the ones from ARIA specification that\n // can be children of body and can't have aria-hidden attribute.\n // cf. https://www.w3.org/TR/html-aria/#docconformance\n const forbiddenTagNames = ['TEMPLATE', 'SCRIPT', 'STYLE', 'LINK', 'MAP', 'META', 'NOSCRIPT', 'PICTURE', 'COL', 'COLGROUP', 'PARAM', 'SLOT', 'SOURCE', 'TRACK'];\n const isForbiddenTagName = forbiddenTagNames.indexOf(element.tagName) !== -1;\n const isInputHidden = element.tagName === 'INPUT' && element.getAttribute('type') === 'hidden';\n return isForbiddenTagName || isInputHidden;\n}\nfunction ariaHiddenSiblings(container, mountElement, currentElement, elementsToExclude, show) {\n const blacklist = [mountElement, currentElement, ...elementsToExclude];\n [].forEach.call(container.children, element => {\n const isNotExcludedElement = blacklist.indexOf(element) === -1;\n const isNotForbiddenElement = !isAriaHiddenForbiddenOnElement(element);\n if (isNotExcludedElement && isNotForbiddenElement) {\n ariaHidden(element, show);\n }\n });\n}\nfunction findIndexOf(items, callback) {\n let idx = -1;\n items.some((item, index) => {\n if (callback(item)) {\n idx = index;\n return true;\n }\n return false;\n });\n return idx;\n}\nfunction handleContainer(containerInfo, props) {\n const restoreStyle = [];\n const container = containerInfo.container;\n if (!props.disableScrollLock) {\n if (isOverflowing(container)) {\n // Compute the size before applying overflow hidden to avoid any scroll jumps.\n const scrollbarSize = getScrollbarSize(ownerDocument(container));\n restoreStyle.push({\n value: container.style.paddingRight,\n property: 'padding-right',\n el: container\n });\n // Use computed style, here to get the real padding to add our scrollbar width.\n container.style.paddingRight = `${getPaddingRight(container) + scrollbarSize}px`;\n\n // .mui-fixed is a global helper.\n const fixedElements = ownerDocument(container).querySelectorAll('.mui-fixed');\n [].forEach.call(fixedElements, element => {\n restoreStyle.push({\n value: element.style.paddingRight,\n property: 'padding-right',\n el: element\n });\n element.style.paddingRight = `${getPaddingRight(element) + scrollbarSize}px`;\n });\n }\n let scrollContainer;\n if (container.parentNode instanceof DocumentFragment) {\n scrollContainer = ownerDocument(container).body;\n } else {\n // Improve Gatsby support\n // https://css-tricks.com/snippets/css/force-vertical-scrollbar/\n const parent = container.parentElement;\n const containerWindow = ownerWindow(container);\n scrollContainer = (parent == null ? void 0 : parent.nodeName) === 'HTML' && containerWindow.getComputedStyle(parent).overflowY === 'scroll' ? parent : container;\n }\n\n // Block the scroll even if no scrollbar is visible to account for mobile keyboard\n // screensize shrink.\n restoreStyle.push({\n value: scrollContainer.style.overflow,\n property: 'overflow',\n el: scrollContainer\n }, {\n value: scrollContainer.style.overflowX,\n property: 'overflow-x',\n el: scrollContainer\n }, {\n value: scrollContainer.style.overflowY,\n property: 'overflow-y',\n el: scrollContainer\n });\n scrollContainer.style.overflow = 'hidden';\n }\n const restore = () => {\n restoreStyle.forEach(({\n value,\n el,\n property\n }) => {\n if (value) {\n el.style.setProperty(property, value);\n } else {\n el.style.removeProperty(property);\n }\n });\n };\n return restore;\n}\nfunction getHiddenSiblings(container) {\n const hiddenSiblings = [];\n [].forEach.call(container.children, element => {\n if (element.getAttribute('aria-hidden') === 'true') {\n hiddenSiblings.push(element);\n }\n });\n return hiddenSiblings;\n}\n/**\n * @ignore - do not document.\n *\n * Proper state management for containers and the modals in those containers.\n * Simplified, but inspired by react-overlay's ModalManager class.\n * Used by the Modal to ensure proper styling of containers.\n */\nexport default class ModalManager {\n constructor() {\n this.containers = void 0;\n this.modals = void 0;\n this.modals = [];\n this.containers = [];\n }\n add(modal, container) {\n let modalIndex = this.modals.indexOf(modal);\n if (modalIndex !== -1) {\n return modalIndex;\n }\n modalIndex = this.modals.length;\n this.modals.push(modal);\n\n // If the modal we are adding is already in the DOM.\n if (modal.modalRef) {\n ariaHidden(modal.modalRef, false);\n }\n const hiddenSiblings = getHiddenSiblings(container);\n ariaHiddenSiblings(container, modal.mount, modal.modalRef, hiddenSiblings, true);\n const containerIndex = findIndexOf(this.containers, item => item.container === container);\n if (containerIndex !== -1) {\n this.containers[containerIndex].modals.push(modal);\n return modalIndex;\n }\n this.containers.push({\n modals: [modal],\n container,\n restore: null,\n hiddenSiblings\n });\n return modalIndex;\n }\n mount(modal, props) {\n const containerIndex = findIndexOf(this.containers, item => item.modals.indexOf(modal) !== -1);\n const containerInfo = this.containers[containerIndex];\n if (!containerInfo.restore) {\n containerInfo.restore = handleContainer(containerInfo, props);\n }\n }\n remove(modal, ariaHiddenState = true) {\n const modalIndex = this.modals.indexOf(modal);\n if (modalIndex === -1) {\n return modalIndex;\n }\n const containerIndex = findIndexOf(this.containers, item => item.modals.indexOf(modal) !== -1);\n const containerInfo = this.containers[containerIndex];\n containerInfo.modals.splice(containerInfo.modals.indexOf(modal), 1);\n this.modals.splice(modalIndex, 1);\n\n // If that was the last modal in a container, clean up the container.\n if (containerInfo.modals.length === 0) {\n // The modal might be closed before it had the chance to be mounted in the DOM.\n if (containerInfo.restore) {\n containerInfo.restore();\n }\n if (modal.modalRef) {\n // In case the modal wasn't in the DOM yet.\n ariaHidden(modal.modalRef, ariaHiddenState);\n }\n ariaHiddenSiblings(containerInfo.container, modal.mount, modal.modalRef, containerInfo.hiddenSiblings, false);\n this.containers.splice(containerIndex, 1);\n } else {\n // Otherwise make sure the next top modal is visible to a screen reader.\n const nextTop = containerInfo.modals[containerInfo.modals.length - 1];\n // as soon as a modal is adding its modalRef is undefined. it can't set\n // aria-hidden because the dom element doesn't exist either\n // when modal was unmounted before modalRef gets null\n if (nextTop.modalRef) {\n ariaHidden(nextTop.modalRef, false);\n }\n }\n return modalIndex;\n }\n isTopModal(modal) {\n return this.modals.length > 0 && this.modals[this.modals.length - 1] === modal;\n }\n}","import generateUtilityClasses from '../generateUtilityClasses';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getModalUtilityClass(slot) {\n return generateUtilityClass('MuiModal', slot);\n}\nconst modalClasses = generateUtilityClasses('MuiModal', ['root', 'hidden', 'backdrop']);\nexport default modalClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"children\", \"closeAfterTransition\", \"container\", \"disableAutoFocus\", \"disableEnforceFocus\", \"disableEscapeKeyDown\", \"disablePortal\", \"disableRestoreFocus\", \"disableScrollLock\", \"hideBackdrop\", \"keepMounted\", \"manager\", \"onBackdropClick\", \"onClose\", \"onKeyDown\", \"open\", \"onTransitionEnter\", \"onTransitionExited\", \"slotProps\", \"slots\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { elementAcceptingRef, HTMLElementType, unstable_ownerDocument as ownerDocument, unstable_useForkRef as useForkRef, unstable_createChainedFunction as createChainedFunction, unstable_useEventCallback as useEventCallback } from '@mui/utils';\nimport composeClasses from '../composeClasses';\nimport Portal from '../Portal';\nimport ModalManager, { ariaHidden } from './ModalManager';\nimport FocusTrap from '../FocusTrap';\nimport { getModalUtilityClass } from './modalClasses';\nimport { useSlotProps } from '../utils';\nimport { useClassNamesOverride } from '../utils/ClassNameConfigurator';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n open,\n exited\n } = ownerState;\n const slots = {\n root: ['root', !open && exited && 'hidden'],\n backdrop: ['backdrop']\n };\n return composeClasses(slots, useClassNamesOverride(getModalUtilityClass));\n};\nfunction getContainer(container) {\n return typeof container === 'function' ? container() : container;\n}\nfunction getHasTransition(children) {\n return children ? children.props.hasOwnProperty('in') : false;\n}\n\n// A modal manager used to track and manage the state of open Modals.\n// Modals don't open on the server so this won't conflict with concurrent requests.\nconst defaultManager = new ModalManager();\n\n/**\n * Modal is a lower-level construct that is leveraged by the following components:\n *\n * * [Dialog](https://mui.com/material-ui/api/dialog/)\n * * [Drawer](https://mui.com/material-ui/api/drawer/)\n * * [Menu](https://mui.com/material-ui/api/menu/)\n * * [Popover](https://mui.com/material-ui/api/popover/)\n *\n * If you are creating a modal dialog, you probably want to use the [Dialog](https://mui.com/material-ui/api/dialog/) component\n * rather than directly using Modal.\n *\n * This component shares many concepts with [react-overlays](https://react-bootstrap.github.io/react-overlays/#modals).\n *\n * Demos:\n *\n * - [Modal](https://mui.com/base-ui/react-modal/)\n *\n * API:\n *\n * - [Modal API](https://mui.com/base-ui/react-modal/components-api/#modal)\n */\nconst Modal = /*#__PURE__*/React.forwardRef(function Modal(props, forwardedRef) {\n var _props$ariaHidden, _slots$root;\n const {\n children,\n closeAfterTransition = false,\n container,\n disableAutoFocus = false,\n disableEnforceFocus = false,\n disableEscapeKeyDown = false,\n disablePortal = false,\n disableRestoreFocus = false,\n disableScrollLock = false,\n hideBackdrop = false,\n keepMounted = false,\n // private\n manager: managerProp = defaultManager,\n onBackdropClick,\n onClose,\n onKeyDown,\n open,\n onTransitionEnter,\n onTransitionExited,\n slotProps = {},\n slots = {}\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n // TODO: `modal`` must change its type in this file to match the type of methods\n // provided by `ModalManager`\n const manager = managerProp;\n const [exited, setExited] = React.useState(!open);\n const modal = React.useRef({});\n const mountNodeRef = React.useRef(null);\n const modalRef = React.useRef(null);\n const handleRef = useForkRef(modalRef, forwardedRef);\n const hasTransition = getHasTransition(children);\n const ariaHiddenProp = (_props$ariaHidden = props['aria-hidden']) != null ? _props$ariaHidden : true;\n const getDoc = () => ownerDocument(mountNodeRef.current);\n const getModal = () => {\n modal.current.modalRef = modalRef.current;\n modal.current.mountNode = mountNodeRef.current;\n return modal.current;\n };\n const handleMounted = () => {\n manager.mount(getModal(), {\n disableScrollLock\n });\n\n // Fix a bug on Chrome where the scroll isn't initially 0.\n if (modalRef.current) {\n modalRef.current.scrollTop = 0;\n }\n };\n const handleOpen = useEventCallback(() => {\n const resolvedContainer = getContainer(container) || getDoc().body;\n manager.add(getModal(), resolvedContainer);\n\n // The element was already mounted.\n if (modalRef.current) {\n handleMounted();\n }\n });\n const isTopModal = React.useCallback(() => manager.isTopModal(getModal()), [manager]);\n const handlePortalRef = useEventCallback(node => {\n mountNodeRef.current = node;\n if (!node || !modalRef.current) {\n return;\n }\n if (open && isTopModal()) {\n handleMounted();\n } else {\n ariaHidden(modalRef.current, ariaHiddenProp);\n }\n });\n const handleClose = React.useCallback(() => {\n manager.remove(getModal(), ariaHiddenProp);\n }, [manager, ariaHiddenProp]);\n React.useEffect(() => {\n return () => {\n handleClose();\n };\n }, [handleClose]);\n React.useEffect(() => {\n if (open) {\n handleOpen();\n } else if (!hasTransition || !closeAfterTransition) {\n handleClose();\n }\n }, [open, handleClose, hasTransition, closeAfterTransition, handleOpen]);\n const ownerState = _extends({}, props, {\n closeAfterTransition,\n disableAutoFocus,\n disableEnforceFocus,\n disableEscapeKeyDown,\n disablePortal,\n disableRestoreFocus,\n disableScrollLock,\n exited,\n hideBackdrop,\n keepMounted\n });\n const classes = useUtilityClasses(ownerState);\n const handleEnter = () => {\n setExited(false);\n if (onTransitionEnter) {\n onTransitionEnter();\n }\n };\n const handleExited = () => {\n setExited(true);\n if (onTransitionExited) {\n onTransitionExited();\n }\n if (closeAfterTransition) {\n handleClose();\n }\n };\n const handleBackdropClick = event => {\n if (event.target !== event.currentTarget) {\n return;\n }\n if (onBackdropClick) {\n onBackdropClick(event);\n }\n if (onClose) {\n onClose(event, 'backdropClick');\n }\n };\n const handleKeyDown = event => {\n if (onKeyDown) {\n onKeyDown(event);\n }\n\n // The handler doesn't take event.defaultPrevented into account:\n //\n // event.preventDefault() is meant to stop default behaviors like\n // clicking a checkbox to check it, hitting a button to submit a form,\n // and hitting left arrow to move the cursor in a text input etc.\n // Only special HTML elements have these default behaviors.\n if (event.key !== 'Escape' || !isTopModal()) {\n return;\n }\n if (!disableEscapeKeyDown) {\n // Swallow the event, in case someone is listening for the escape key on the body.\n event.stopPropagation();\n if (onClose) {\n onClose(event, 'escapeKeyDown');\n }\n }\n };\n const childProps = {};\n if (children.props.tabIndex === undefined) {\n childProps.tabIndex = '-1';\n }\n\n // It's a Transition like component\n if (hasTransition) {\n childProps.onEnter = createChainedFunction(handleEnter, children.props.onEnter);\n childProps.onExited = createChainedFunction(handleExited, children.props.onExited);\n }\n const Root = (_slots$root = slots.root) != null ? _slots$root : 'div';\n const rootProps = useSlotProps({\n elementType: Root,\n externalSlotProps: slotProps.root,\n externalForwardedProps: other,\n additionalProps: {\n ref: handleRef,\n role: 'presentation',\n onKeyDown: handleKeyDown\n },\n className: classes.root,\n ownerState\n });\n const BackdropComponent = slots.backdrop;\n const backdropProps = useSlotProps({\n elementType: BackdropComponent,\n externalSlotProps: slotProps.backdrop,\n additionalProps: {\n 'aria-hidden': true,\n onClick: handleBackdropClick,\n open\n },\n className: classes.backdrop,\n ownerState\n });\n if (!keepMounted && !open && (!hasTransition || exited)) {\n return null;\n }\n return /*#__PURE__*/_jsx(Portal\n // @ts-expect-error TODO: include ref to Base UI Portal props\n , {\n ref: handlePortalRef,\n container: container,\n disablePortal: disablePortal,\n children: /*#__PURE__*/_jsxs(Root, _extends({}, rootProps, {\n children: [!hideBackdrop && BackdropComponent ? /*#__PURE__*/_jsx(BackdropComponent, _extends({}, backdropProps)) : null, /*#__PURE__*/_jsx(FocusTrap, {\n disableEnforceFocus: disableEnforceFocus,\n disableAutoFocus: disableAutoFocus,\n disableRestoreFocus: disableRestoreFocus,\n isEnabled: isTopModal,\n open: open,\n children: /*#__PURE__*/React.cloneElement(children, childProps)\n })]\n }))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Modal.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * A single child content element.\n */\n children: elementAcceptingRef.isRequired,\n /**\n * When set to true the Modal waits until a nested Transition is completed before closing.\n * @default false\n */\n closeAfterTransition: PropTypes.bool,\n /**\n * An HTML element or function that returns one.\n * The `container` will have the portal children appended to it.\n *\n * By default, it uses the body of the top-level document object,\n * so it's simply `document.body` most of the time.\n */\n container: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([HTMLElementType, PropTypes.func]),\n /**\n * If `true`, the modal will not automatically shift focus to itself when it opens, and\n * replace it to the last focused element when it closes.\n * This also works correctly with any modal children that have the `disableAutoFocus` prop.\n *\n * Generally this should never be set to `true` as it makes the modal less\n * accessible to assistive technologies, like screen readers.\n * @default false\n */\n disableAutoFocus: PropTypes.bool,\n /**\n * If `true`, the modal will not prevent focus from leaving the modal while open.\n *\n * Generally this should never be set to `true` as it makes the modal less\n * accessible to assistive technologies, like screen readers.\n * @default false\n */\n disableEnforceFocus: PropTypes.bool,\n /**\n * If `true`, hitting escape will not fire the `onClose` callback.\n * @default false\n */\n disableEscapeKeyDown: PropTypes.bool,\n /**\n * The `children` will be under the DOM hierarchy of the parent component.\n * @default false\n */\n disablePortal: PropTypes.bool,\n /**\n * If `true`, the modal will not restore focus to previously focused element once\n * modal is hidden or unmounted.\n * @default false\n */\n disableRestoreFocus: PropTypes.bool,\n /**\n * Disable the scroll lock behavior.\n * @default false\n */\n disableScrollLock: PropTypes.bool,\n /**\n * If `true`, the backdrop is not rendered.\n * @default false\n */\n hideBackdrop: PropTypes.bool,\n /**\n * Always keep the children in the DOM.\n * This prop can be useful in SEO situation or\n * when you want to maximize the responsiveness of the Modal.\n * @default false\n */\n keepMounted: PropTypes.bool,\n /**\n * Callback fired when the backdrop is clicked.\n * @deprecated Use the `onClose` prop with the `reason` argument to handle the `backdropClick` events.\n */\n onBackdropClick: PropTypes.func,\n /**\n * Callback fired when the component requests to be closed.\n * The `reason` parameter can optionally be used to control the response to `onClose`.\n *\n * @param {object} event The event source of the callback.\n * @param {string} reason Can be: `\"escapeKeyDown\"`, `\"backdropClick\"`.\n */\n onClose: PropTypes.func,\n /**\n * A function called when a transition enters.\n */\n onTransitionEnter: PropTypes.func,\n /**\n * A function called when a transition has exited.\n */\n onTransitionExited: PropTypes.func,\n /**\n * If `true`, the component is shown.\n */\n open: PropTypes.bool.isRequired,\n /**\n * The props used for each slot inside the Modal.\n * @default {}\n */\n slotProps: PropTypes.shape({\n backdrop: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n root: PropTypes.oneOfType([PropTypes.func, PropTypes.object])\n }),\n /**\n * The components used for each slot inside the Modal.\n * Either a string to use a HTML element or a component.\n * @default {}\n */\n slots: PropTypes.shape({\n backdrop: PropTypes.elementType,\n root: PropTypes.elementType\n })\n} : void 0;\nexport default Modal;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"BackdropComponent\", \"BackdropProps\", \"classes\", \"className\", \"closeAfterTransition\", \"children\", \"container\", \"component\", \"components\", \"componentsProps\", \"disableAutoFocus\", \"disableEnforceFocus\", \"disableEscapeKeyDown\", \"disablePortal\", \"disableRestoreFocus\", \"disableScrollLock\", \"hideBackdrop\", \"keepMounted\", \"onBackdropClick\", \"onClose\", \"open\", \"slotProps\", \"slots\", \"theme\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport ModalUnstyled, { modalClasses as modalUnstyledClasses } from '@mui/base/Modal';\nimport { isHostComponent, resolveComponentProps } from '@mui/base/utils';\nimport { elementAcceptingRef, HTMLElementType } from '@mui/utils';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport Backdrop from '../Backdrop';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const modalClasses = modalUnstyledClasses;\nconst ModalRoot = styled('div', {\n name: 'MuiModal',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, !ownerState.open && ownerState.exited && styles.hidden];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n position: 'fixed',\n zIndex: (theme.vars || theme).zIndex.modal,\n right: 0,\n bottom: 0,\n top: 0,\n left: 0\n}, !ownerState.open && ownerState.exited && {\n visibility: 'hidden'\n}));\nconst ModalBackdrop = styled(Backdrop, {\n name: 'MuiModal',\n slot: 'Backdrop',\n overridesResolver: (props, styles) => {\n return styles.backdrop;\n }\n})({\n zIndex: -1\n});\n\n/**\n * Modal is a lower-level construct that is leveraged by the following components:\n *\n * - [Dialog](/material-ui/api/dialog/)\n * - [Drawer](/material-ui/api/drawer/)\n * - [Menu](/material-ui/api/menu/)\n * - [Popover](/material-ui/api/popover/)\n *\n * If you are creating a modal dialog, you probably want to use the [Dialog](/material-ui/api/dialog/) component\n * rather than directly using Modal.\n *\n * This component shares many concepts with [react-overlays](https://react-bootstrap.github.io/react-overlays/#modals).\n */\nconst Modal = /*#__PURE__*/React.forwardRef(function Modal(inProps, ref) {\n var _ref, _slots$root, _ref2, _slots$backdrop, _slotProps$root, _slotProps$backdrop;\n const props = useThemeProps({\n name: 'MuiModal',\n props: inProps\n });\n const {\n BackdropComponent = ModalBackdrop,\n BackdropProps,\n classes,\n className,\n closeAfterTransition = false,\n children,\n container,\n component,\n components = {},\n componentsProps = {},\n disableAutoFocus = false,\n disableEnforceFocus = false,\n disableEscapeKeyDown = false,\n disablePortal = false,\n disableRestoreFocus = false,\n disableScrollLock = false,\n hideBackdrop = false,\n keepMounted = false,\n onBackdropClick,\n onClose,\n open,\n slotProps,\n slots,\n // eslint-disable-next-line react/prop-types\n theme\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [exited, setExited] = React.useState(true);\n const commonProps = {\n container,\n closeAfterTransition,\n disableAutoFocus,\n disableEnforceFocus,\n disableEscapeKeyDown,\n disablePortal,\n disableRestoreFocus,\n disableScrollLock,\n hideBackdrop,\n keepMounted,\n onBackdropClick,\n onClose,\n open\n };\n const ownerState = _extends({}, props, commonProps, {\n exited\n });\n const RootSlot = (_ref = (_slots$root = slots == null ? void 0 : slots.root) != null ? _slots$root : components.Root) != null ? _ref : ModalRoot;\n const BackdropSlot = (_ref2 = (_slots$backdrop = slots == null ? void 0 : slots.backdrop) != null ? _slots$backdrop : components.Backdrop) != null ? _ref2 : BackdropComponent;\n const rootSlotProps = (_slotProps$root = slotProps == null ? void 0 : slotProps.root) != null ? _slotProps$root : componentsProps.root;\n const backdropSlotProps = (_slotProps$backdrop = slotProps == null ? void 0 : slotProps.backdrop) != null ? _slotProps$backdrop : componentsProps.backdrop;\n return /*#__PURE__*/_jsx(ModalUnstyled, _extends({\n slots: {\n root: RootSlot,\n backdrop: BackdropSlot\n },\n slotProps: {\n root: () => _extends({}, resolveComponentProps(rootSlotProps, ownerState), !isHostComponent(RootSlot) && {\n as: component,\n theme\n }, {\n className: clsx(className, rootSlotProps == null ? void 0 : rootSlotProps.className, classes == null ? void 0 : classes.root, !ownerState.open && ownerState.exited && (classes == null ? void 0 : classes.hidden))\n }),\n backdrop: () => _extends({}, BackdropProps, resolveComponentProps(backdropSlotProps, ownerState), {\n className: clsx(backdropSlotProps == null ? void 0 : backdropSlotProps.className, BackdropProps == null ? void 0 : BackdropProps.className, classes == null ? void 0 : classes.backdrop)\n })\n },\n onTransitionEnter: () => setExited(false),\n onTransitionExited: () => setExited(true),\n ref: ref\n }, other, commonProps, {\n children: children\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Modal.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * A backdrop component. This prop enables custom backdrop rendering.\n * @deprecated Use `slots.backdrop` instead. While this prop currently works, it will be removed in the next major version.\n * Use the `slots.backdrop` prop to make your application ready for the next version of Material UI.\n * @default styled(Backdrop, {\n * name: 'MuiModal',\n * slot: 'Backdrop',\n * overridesResolver: (props, styles) => {\n * return styles.backdrop;\n * },\n * })({\n * zIndex: -1,\n * })\n */\n BackdropComponent: PropTypes.elementType,\n /**\n * Props applied to the [`Backdrop`](/material-ui/api/backdrop/) element.\n * @deprecated Use `slotProps.backdrop` instead.\n */\n BackdropProps: PropTypes.object,\n /**\n * A single child content element.\n */\n children: elementAcceptingRef.isRequired,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * When set to true the Modal waits until a nested Transition is completed before closing.\n * @default false\n */\n closeAfterTransition: PropTypes.bool,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `slots` prop.\n * It's recommended to use the `slots` prop instead.\n *\n * @default {}\n */\n components: PropTypes.shape({\n Backdrop: PropTypes.elementType,\n Root: PropTypes.elementType\n }),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `slotProps` prop.\n * It's recommended to use the `slotProps` prop instead, as `componentsProps` will be deprecated in the future.\n *\n * @default {}\n */\n componentsProps: PropTypes.shape({\n backdrop: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n root: PropTypes.oneOfType([PropTypes.func, PropTypes.object])\n }),\n /**\n * An HTML element or function that returns one.\n * The `container` will have the portal children appended to it.\n *\n * By default, it uses the body of the top-level document object,\n * so it's simply `document.body` most of the time.\n */\n container: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([HTMLElementType, PropTypes.func]),\n /**\n * If `true`, the modal will not automatically shift focus to itself when it opens, and\n * replace it to the last focused element when it closes.\n * This also works correctly with any modal children that have the `disableAutoFocus` prop.\n *\n * Generally this should never be set to `true` as it makes the modal less\n * accessible to assistive technologies, like screen readers.\n * @default false\n */\n disableAutoFocus: PropTypes.bool,\n /**\n * If `true`, the modal will not prevent focus from leaving the modal while open.\n *\n * Generally this should never be set to `true` as it makes the modal less\n * accessible to assistive technologies, like screen readers.\n * @default false\n */\n disableEnforceFocus: PropTypes.bool,\n /**\n * If `true`, hitting escape will not fire the `onClose` callback.\n * @default false\n */\n disableEscapeKeyDown: PropTypes.bool,\n /**\n * The `children` will be under the DOM hierarchy of the parent component.\n * @default false\n */\n disablePortal: PropTypes.bool,\n /**\n * If `true`, the modal will not restore focus to previously focused element once\n * modal is hidden or unmounted.\n * @default false\n */\n disableRestoreFocus: PropTypes.bool,\n /**\n * Disable the scroll lock behavior.\n * @default false\n */\n disableScrollLock: PropTypes.bool,\n /**\n * If `true`, the backdrop is not rendered.\n * @default false\n */\n hideBackdrop: PropTypes.bool,\n /**\n * Always keep the children in the DOM.\n * This prop can be useful in SEO situation or\n * when you want to maximize the responsiveness of the Modal.\n * @default false\n */\n keepMounted: PropTypes.bool,\n /**\n * Callback fired when the backdrop is clicked.\n * @deprecated Use the `onClose` prop with the `reason` argument to handle the `backdropClick` events.\n */\n onBackdropClick: PropTypes.func,\n /**\n * Callback fired when the component requests to be closed.\n * The `reason` parameter can optionally be used to control the response to `onClose`.\n *\n * @param {object} event The event source of the callback.\n * @param {string} reason Can be: `\"escapeKeyDown\"`, `\"backdropClick\"`.\n */\n onClose: PropTypes.func,\n /**\n * A function called when a transition enters.\n */\n onTransitionEnter: PropTypes.func,\n /**\n * A function called when a transition has exited.\n */\n onTransitionExited: PropTypes.func,\n /**\n * If `true`, the component is shown.\n */\n open: PropTypes.bool.isRequired,\n /**\n * The props used for each slot inside the Modal.\n * @default {}\n */\n slotProps: PropTypes.shape({\n backdrop: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n root: PropTypes.oneOfType([PropTypes.func, PropTypes.object])\n }),\n /**\n * The components used for each slot inside the Modal.\n * Either a string to use a HTML element or a component.\n * @default {}\n */\n slots: PropTypes.shape({\n backdrop: PropTypes.elementType,\n root: PropTypes.elementType\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default Modal;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getPopoverUtilityClass(slot) {\n return generateUtilityClass('MuiPopover', slot);\n}\nconst popoverClasses = generateUtilityClasses('MuiPopover', ['root', 'paper']);\nexport default popoverClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"onEntering\"],\n _excluded2 = [\"action\", \"anchorEl\", \"anchorOrigin\", \"anchorPosition\", \"anchorReference\", \"children\", \"className\", \"container\", \"elevation\", \"marginThreshold\", \"open\", \"PaperProps\", \"slots\", \"slotProps\", \"transformOrigin\", \"TransitionComponent\", \"transitionDuration\", \"TransitionProps\"],\n _excluded3 = [\"slotProps\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses, useSlotProps, isHostComponent } from '@mui/base';\nimport { chainPropTypes, integerPropType, elementTypeAcceptingRef, refType, HTMLElementType } from '@mui/utils';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport debounce from '../utils/debounce';\nimport ownerDocument from '../utils/ownerDocument';\nimport ownerWindow from '../utils/ownerWindow';\nimport useForkRef from '../utils/useForkRef';\nimport Grow from '../Grow';\nimport Modal from '../Modal';\nimport PaperBase from '../Paper';\nimport { getPopoverUtilityClass } from './popoverClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function getOffsetTop(rect, vertical) {\n let offset = 0;\n if (typeof vertical === 'number') {\n offset = vertical;\n } else if (vertical === 'center') {\n offset = rect.height / 2;\n } else if (vertical === 'bottom') {\n offset = rect.height;\n }\n return offset;\n}\nexport function getOffsetLeft(rect, horizontal) {\n let offset = 0;\n if (typeof horizontal === 'number') {\n offset = horizontal;\n } else if (horizontal === 'center') {\n offset = rect.width / 2;\n } else if (horizontal === 'right') {\n offset = rect.width;\n }\n return offset;\n}\nfunction getTransformOriginValue(transformOrigin) {\n return [transformOrigin.horizontal, transformOrigin.vertical].map(n => typeof n === 'number' ? `${n}px` : n).join(' ');\n}\nfunction resolveAnchorEl(anchorEl) {\n return typeof anchorEl === 'function' ? anchorEl() : anchorEl;\n}\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n paper: ['paper']\n };\n return composeClasses(slots, getPopoverUtilityClass, classes);\n};\nexport const PopoverRoot = styled(Modal, {\n name: 'MuiPopover',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({});\nexport const PopoverPaper = styled(PaperBase, {\n name: 'MuiPopover',\n slot: 'Paper',\n overridesResolver: (props, styles) => styles.paper\n})({\n position: 'absolute',\n overflowY: 'auto',\n overflowX: 'hidden',\n // So we see the popover when it's empty.\n // It's most likely on issue on userland.\n minWidth: 16,\n minHeight: 16,\n maxWidth: 'calc(100% - 32px)',\n maxHeight: 'calc(100% - 32px)',\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0\n});\nconst Popover = /*#__PURE__*/React.forwardRef(function Popover(inProps, ref) {\n var _slotProps$paper, _slots$root, _slots$paper;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiPopover'\n });\n const {\n action,\n anchorEl,\n anchorOrigin = {\n vertical: 'top',\n horizontal: 'left'\n },\n anchorPosition,\n anchorReference = 'anchorEl',\n children,\n className,\n container: containerProp,\n elevation = 8,\n marginThreshold = 16,\n open,\n PaperProps: PaperPropsProp = {},\n slots,\n slotProps,\n transformOrigin = {\n vertical: 'top',\n horizontal: 'left'\n },\n TransitionComponent = Grow,\n transitionDuration: transitionDurationProp = 'auto',\n TransitionProps: {\n onEntering\n } = {}\n } = props,\n TransitionProps = _objectWithoutPropertiesLoose(props.TransitionProps, _excluded),\n other = _objectWithoutPropertiesLoose(props, _excluded2);\n const externalPaperSlotProps = (_slotProps$paper = slotProps == null ? void 0 : slotProps.paper) != null ? _slotProps$paper : PaperPropsProp;\n const paperRef = React.useRef();\n const handlePaperRef = useForkRef(paperRef, externalPaperSlotProps.ref);\n const ownerState = _extends({}, props, {\n anchorOrigin,\n anchorReference,\n elevation,\n marginThreshold,\n externalPaperSlotProps,\n transformOrigin,\n TransitionComponent,\n transitionDuration: transitionDurationProp,\n TransitionProps\n });\n const classes = useUtilityClasses(ownerState);\n\n // Returns the top/left offset of the position\n // to attach to on the anchor element (or body if none is provided)\n const getAnchorOffset = React.useCallback(() => {\n if (anchorReference === 'anchorPosition') {\n if (process.env.NODE_ENV !== 'production') {\n if (!anchorPosition) {\n console.error('MUI: You need to provide a `anchorPosition` prop when using ' + '.');\n }\n }\n return anchorPosition;\n }\n const resolvedAnchorEl = resolveAnchorEl(anchorEl);\n\n // If an anchor element wasn't provided, just use the parent body element of this Popover\n const anchorElement = resolvedAnchorEl && resolvedAnchorEl.nodeType === 1 ? resolvedAnchorEl : ownerDocument(paperRef.current).body;\n const anchorRect = anchorElement.getBoundingClientRect();\n if (process.env.NODE_ENV !== 'production') {\n const box = anchorElement.getBoundingClientRect();\n if (process.env.NODE_ENV !== 'test' && box.top === 0 && box.left === 0 && box.right === 0 && box.bottom === 0) {\n console.warn(['MUI: The `anchorEl` prop provided to the component is invalid.', 'The anchor element should be part of the document layout.', \"Make sure the element is present in the document or that it's not display none.\"].join('\\n'));\n }\n }\n return {\n top: anchorRect.top + getOffsetTop(anchorRect, anchorOrigin.vertical),\n left: anchorRect.left + getOffsetLeft(anchorRect, anchorOrigin.horizontal)\n };\n }, [anchorEl, anchorOrigin.horizontal, anchorOrigin.vertical, anchorPosition, anchorReference]);\n\n // Returns the base transform origin using the element\n const getTransformOrigin = React.useCallback(elemRect => {\n return {\n vertical: getOffsetTop(elemRect, transformOrigin.vertical),\n horizontal: getOffsetLeft(elemRect, transformOrigin.horizontal)\n };\n }, [transformOrigin.horizontal, transformOrigin.vertical]);\n const getPositioningStyle = React.useCallback(element => {\n const elemRect = {\n width: element.offsetWidth,\n height: element.offsetHeight\n };\n\n // Get the transform origin point on the element itself\n const elemTransformOrigin = getTransformOrigin(elemRect);\n if (anchorReference === 'none') {\n return {\n top: null,\n left: null,\n transformOrigin: getTransformOriginValue(elemTransformOrigin)\n };\n }\n\n // Get the offset of the anchoring element\n const anchorOffset = getAnchorOffset();\n\n // Calculate element positioning\n let top = anchorOffset.top - elemTransformOrigin.vertical;\n let left = anchorOffset.left - elemTransformOrigin.horizontal;\n const bottom = top + elemRect.height;\n const right = left + elemRect.width;\n\n // Use the parent window of the anchorEl if provided\n const containerWindow = ownerWindow(resolveAnchorEl(anchorEl));\n\n // Window thresholds taking required margin into account\n const heightThreshold = containerWindow.innerHeight - marginThreshold;\n const widthThreshold = containerWindow.innerWidth - marginThreshold;\n\n // Check if the vertical axis needs shifting\n if (top < marginThreshold) {\n const diff = top - marginThreshold;\n top -= diff;\n elemTransformOrigin.vertical += diff;\n } else if (bottom > heightThreshold) {\n const diff = bottom - heightThreshold;\n top -= diff;\n elemTransformOrigin.vertical += diff;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (elemRect.height > heightThreshold && elemRect.height && heightThreshold) {\n console.error(['MUI: The popover component is too tall.', `Some part of it can not be seen on the screen (${elemRect.height - heightThreshold}px).`, 'Please consider adding a `max-height` to improve the user-experience.'].join('\\n'));\n }\n }\n\n // Check if the horizontal axis needs shifting\n if (left < marginThreshold) {\n const diff = left - marginThreshold;\n left -= diff;\n elemTransformOrigin.horizontal += diff;\n } else if (right > widthThreshold) {\n const diff = right - widthThreshold;\n left -= diff;\n elemTransformOrigin.horizontal += diff;\n }\n return {\n top: `${Math.round(top)}px`,\n left: `${Math.round(left)}px`,\n transformOrigin: getTransformOriginValue(elemTransformOrigin)\n };\n }, [anchorEl, anchorReference, getAnchorOffset, getTransformOrigin, marginThreshold]);\n const [isPositioned, setIsPositioned] = React.useState(open);\n const setPositioningStyles = React.useCallback(() => {\n const element = paperRef.current;\n if (!element) {\n return;\n }\n const positioning = getPositioningStyle(element);\n if (positioning.top !== null) {\n element.style.top = positioning.top;\n }\n if (positioning.left !== null) {\n element.style.left = positioning.left;\n }\n element.style.transformOrigin = positioning.transformOrigin;\n setIsPositioned(true);\n }, [getPositioningStyle]);\n const handleEntering = (element, isAppearing) => {\n if (onEntering) {\n onEntering(element, isAppearing);\n }\n setPositioningStyles();\n };\n const handleExited = () => {\n setIsPositioned(false);\n };\n React.useEffect(() => {\n if (open) {\n setPositioningStyles();\n }\n });\n React.useImperativeHandle(action, () => open ? {\n updatePosition: () => {\n setPositioningStyles();\n }\n } : null, [open, setPositioningStyles]);\n React.useEffect(() => {\n if (!open) {\n return undefined;\n }\n const handleResize = debounce(() => {\n setPositioningStyles();\n });\n const containerWindow = ownerWindow(anchorEl);\n containerWindow.addEventListener('resize', handleResize);\n return () => {\n handleResize.clear();\n containerWindow.removeEventListener('resize', handleResize);\n };\n }, [anchorEl, open, setPositioningStyles]);\n let transitionDuration = transitionDurationProp;\n if (transitionDurationProp === 'auto' && !TransitionComponent.muiSupportAuto) {\n transitionDuration = undefined;\n }\n\n // If the container prop is provided, use that\n // If the anchorEl prop is provided, use its parent body element as the container\n // If neither are provided let the Modal take care of choosing the container\n const container = containerProp || (anchorEl ? ownerDocument(resolveAnchorEl(anchorEl)).body : undefined);\n const RootSlot = (_slots$root = slots == null ? void 0 : slots.root) != null ? _slots$root : PopoverRoot;\n const PaperSlot = (_slots$paper = slots == null ? void 0 : slots.paper) != null ? _slots$paper : PopoverPaper;\n const paperProps = useSlotProps({\n elementType: PaperSlot,\n externalSlotProps: _extends({}, externalPaperSlotProps, {\n style: isPositioned ? externalPaperSlotProps.style : _extends({}, externalPaperSlotProps.style, {\n opacity: 0\n })\n }),\n additionalProps: {\n elevation,\n ref: handlePaperRef\n },\n ownerState,\n className: clsx(classes.paper, externalPaperSlotProps == null ? void 0 : externalPaperSlotProps.className)\n });\n const _useSlotProps = useSlotProps({\n elementType: RootSlot,\n externalSlotProps: (slotProps == null ? void 0 : slotProps.root) || {},\n externalForwardedProps: other,\n additionalProps: {\n ref,\n slotProps: {\n backdrop: {\n invisible: true\n }\n },\n container,\n open\n },\n ownerState,\n className: clsx(classes.root, className)\n }),\n {\n slotProps: rootSlotPropsProp\n } = _useSlotProps,\n rootProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded3);\n return /*#__PURE__*/_jsx(RootSlot, _extends({}, rootProps, !isHostComponent(RootSlot) && {\n slotProps: rootSlotPropsProp\n }, {\n children: /*#__PURE__*/_jsx(TransitionComponent, _extends({\n appear: true,\n in: open,\n onEntering: handleEntering,\n onExited: handleExited,\n timeout: transitionDuration\n }, TransitionProps, {\n children: /*#__PURE__*/_jsx(PaperSlot, _extends({}, paperProps, {\n children: children\n }))\n }))\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Popover.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * A ref for imperative actions.\n * It currently only supports updatePosition() action.\n */\n action: refType,\n /**\n * An HTML element, [PopoverVirtualElement](/material-ui/react-popover/#virtual-element),\n * or a function that returns either.\n * It's used to set the position of the popover.\n */\n anchorEl: chainPropTypes(PropTypes.oneOfType([HTMLElementType, PropTypes.func]), props => {\n if (props.open && (!props.anchorReference || props.anchorReference === 'anchorEl')) {\n const resolvedAnchorEl = resolveAnchorEl(props.anchorEl);\n if (resolvedAnchorEl && resolvedAnchorEl.nodeType === 1) {\n const box = resolvedAnchorEl.getBoundingClientRect();\n if (process.env.NODE_ENV !== 'test' && box.top === 0 && box.left === 0 && box.right === 0 && box.bottom === 0) {\n return new Error(['MUI: The `anchorEl` prop provided to the component is invalid.', 'The anchor element should be part of the document layout.', \"Make sure the element is present in the document or that it's not display none.\"].join('\\n'));\n }\n } else {\n return new Error(['MUI: The `anchorEl` prop provided to the component is invalid.', `It should be an Element or PopoverVirtualElement instance but it's \\`${resolvedAnchorEl}\\` instead.`].join('\\n'));\n }\n }\n return null;\n }),\n /**\n * This is the point on the anchor where the popover's\n * `anchorEl` will attach to. This is not used when the\n * anchorReference is 'anchorPosition'.\n *\n * Options:\n * vertical: [top, center, bottom];\n * horizontal: [left, center, right].\n * @default {\n * vertical: 'top',\n * horizontal: 'left',\n * }\n */\n anchorOrigin: PropTypes.shape({\n horizontal: PropTypes.oneOfType([PropTypes.oneOf(['center', 'left', 'right']), PropTypes.number]).isRequired,\n vertical: PropTypes.oneOfType([PropTypes.oneOf(['bottom', 'center', 'top']), PropTypes.number]).isRequired\n }),\n /**\n * This is the position that may be used to set the position of the popover.\n * The coordinates are relative to the application's client area.\n */\n anchorPosition: PropTypes.shape({\n left: PropTypes.number.isRequired,\n top: PropTypes.number.isRequired\n }),\n /**\n * This determines which anchor prop to refer to when setting\n * the position of the popover.\n * @default 'anchorEl'\n */\n anchorReference: PropTypes.oneOf(['anchorEl', 'anchorPosition', 'none']),\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * An HTML element, component instance, or function that returns either.\n * The `container` will passed to the Modal component.\n *\n * By default, it uses the body of the anchorEl's top-level document object,\n * so it's simply `document.body` most of the time.\n */\n container: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([HTMLElementType, PropTypes.func]),\n /**\n * The elevation of the popover.\n * @default 8\n */\n elevation: integerPropType,\n /**\n * Specifies how close to the edge of the window the popover can appear.\n * @default 16\n */\n marginThreshold: PropTypes.number,\n /**\n * Callback fired when the component requests to be closed.\n * The `reason` parameter can optionally be used to control the response to `onClose`.\n */\n onClose: PropTypes.func,\n /**\n * If `true`, the component is shown.\n */\n open: PropTypes.bool.isRequired,\n /**\n * Props applied to the [`Paper`](/material-ui/api/paper/) element.\n *\n * This prop is an alias for `slotProps.paper` and will be overriden by it if both are used.\n * @deprecated Use `slotProps.paper` instead.\n *\n * @default {}\n */\n PaperProps: PropTypes /* @typescript-to-proptypes-ignore */.shape({\n component: elementTypeAcceptingRef\n }),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * @default {}\n */\n slotProps: PropTypes.shape({\n paper: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n root: PropTypes.oneOfType([PropTypes.func, PropTypes.object])\n }),\n /**\n * The components used for each slot inside.\n *\n * @default {}\n */\n slots: PropTypes.shape({\n paper: PropTypes.elementType,\n root: PropTypes.elementType\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * This is the point on the popover which\n * will attach to the anchor's origin.\n *\n * Options:\n * vertical: [top, center, bottom, x(px)];\n * horizontal: [left, center, right, x(px)].\n * @default {\n * vertical: 'top',\n * horizontal: 'left',\n * }\n */\n transformOrigin: PropTypes.shape({\n horizontal: PropTypes.oneOfType([PropTypes.oneOf(['center', 'left', 'right']), PropTypes.number]).isRequired,\n vertical: PropTypes.oneOfType([PropTypes.oneOf(['bottom', 'center', 'top']), PropTypes.number]).isRequired\n }),\n /**\n * The component used for the transition.\n * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.\n * @default Grow\n */\n TransitionComponent: PropTypes.elementType,\n /**\n * Set to 'auto' to automatically calculate transition time based on height.\n * @default 'auto'\n */\n transitionDuration: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })]),\n /**\n * Props applied to the transition element.\n * By default, the element is based on this [`Transition`](http://reactcommunity.org/react-transition-group/transition/) component.\n * @default {}\n */\n TransitionProps: PropTypes.object\n} : void 0;\nexport default Popover;","/* eslint-disable consistent-return, jsx-a11y/no-noninteractive-tabindex */\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { exactProp, elementAcceptingRef, unstable_useForkRef as useForkRef, unstable_ownerDocument as ownerDocument } from '@mui/utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\n// Inspired by https://github.com/focus-trap/tabbable\nconst candidatesSelector = ['input', 'select', 'textarea', 'a[href]', 'button', '[tabindex]', 'audio[controls]', 'video[controls]', '[contenteditable]:not([contenteditable=\"false\"])'].join(',');\nfunction getTabIndex(node) {\n const tabindexAttr = parseInt(node.getAttribute('tabindex') || '', 10);\n if (!Number.isNaN(tabindexAttr)) {\n return tabindexAttr;\n }\n\n // Browsers do not return `tabIndex` correctly for contentEditable nodes;\n // https://bugs.chromium.org/p/chromium/issues/detail?id=661108&q=contenteditable%20tabindex&can=2\n // so if they don't have a tabindex attribute specifically set, assume it's 0.\n // in Chrome,
,
\n
{label}
\n \n );\n};\n\nexport default LabelWithIcon;\n","import createStyled from './createStyled';\nconst styled = createStyled();\nexport default styled;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"component\", \"direction\", \"spacing\", \"divider\", \"children\", \"className\", \"useFlexGap\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { deepmerge, unstable_composeClasses as composeClasses, unstable_generateUtilityClass as generateUtilityClass } from '@mui/utils';\nimport systemStyled from '../styled';\nimport useThemePropsSystem from '../useThemeProps';\nimport { extendSxProp } from '../styleFunctionSx';\nimport createTheme from '../createTheme';\nimport { handleBreakpoints, mergeBreakpointsInOrder, resolveBreakpointValues } from '../breakpoints';\nimport { createUnarySpacing, getValue } from '../spacing';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst defaultTheme = createTheme();\n// widening Theme to any so that the consumer can own the theme structure.\nconst defaultCreateStyledComponent = systemStyled('div', {\n name: 'MuiStack',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n});\nfunction useThemePropsDefault(props) {\n return useThemePropsSystem({\n props,\n name: 'MuiStack',\n defaultTheme\n });\n}\n\n/**\n * Return an array with the separator React element interspersed between\n * each React node of the input children.\n *\n * > joinChildren([1,2,3], 0)\n * [1,0,2,0,3]\n */\nfunction joinChildren(children, separator) {\n const childrenArray = React.Children.toArray(children).filter(Boolean);\n return childrenArray.reduce((output, child, index) => {\n output.push(child);\n if (index < childrenArray.length - 1) {\n output.push( /*#__PURE__*/React.cloneElement(separator, {\n key: `separator-${index}`\n }));\n }\n return output;\n }, []);\n}\nconst getSideFromDirection = direction => {\n return {\n row: 'Left',\n 'row-reverse': 'Right',\n column: 'Top',\n 'column-reverse': 'Bottom'\n }[direction];\n};\nexport const style = ({\n ownerState,\n theme\n}) => {\n let styles = _extends({\n display: 'flex',\n flexDirection: 'column'\n }, handleBreakpoints({\n theme\n }, resolveBreakpointValues({\n values: ownerState.direction,\n breakpoints: theme.breakpoints.values\n }), propValue => ({\n flexDirection: propValue\n })));\n if (ownerState.spacing) {\n const transformer = createUnarySpacing(theme);\n const base = Object.keys(theme.breakpoints.values).reduce((acc, breakpoint) => {\n if (typeof ownerState.spacing === 'object' && ownerState.spacing[breakpoint] != null || typeof ownerState.direction === 'object' && ownerState.direction[breakpoint] != null) {\n acc[breakpoint] = true;\n }\n return acc;\n }, {});\n const directionValues = resolveBreakpointValues({\n values: ownerState.direction,\n base\n });\n const spacingValues = resolveBreakpointValues({\n values: ownerState.spacing,\n base\n });\n if (typeof directionValues === 'object') {\n Object.keys(directionValues).forEach((breakpoint, index, breakpoints) => {\n const directionValue = directionValues[breakpoint];\n if (!directionValue) {\n const previousDirectionValue = index > 0 ? directionValues[breakpoints[index - 1]] : 'column';\n directionValues[breakpoint] = previousDirectionValue;\n }\n });\n }\n const styleFromPropValue = (propValue, breakpoint) => {\n if (ownerState.useFlexGap) {\n return {\n gap: getValue(transformer, propValue)\n };\n }\n return {\n '& > :not(style) + :not(style)': {\n margin: 0,\n [`margin${getSideFromDirection(breakpoint ? directionValues[breakpoint] : ownerState.direction)}`]: getValue(transformer, propValue)\n }\n };\n };\n styles = deepmerge(styles, handleBreakpoints({\n theme\n }, spacingValues, styleFromPropValue));\n }\n styles = mergeBreakpointsInOrder(theme.breakpoints, styles);\n return styles;\n};\nexport default function createStack(options = {}) {\n const {\n // This will allow adding custom styled fn (for example for custom sx style function)\n createStyledComponent = defaultCreateStyledComponent,\n useThemeProps = useThemePropsDefault,\n componentName = 'MuiStack'\n } = options;\n const useUtilityClasses = () => {\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, slot => generateUtilityClass(componentName, slot), {});\n };\n const StackRoot = createStyledComponent(style);\n const Stack = /*#__PURE__*/React.forwardRef(function Grid(inProps, ref) {\n const themeProps = useThemeProps(inProps);\n const props = extendSxProp(themeProps); // `color` type conflicts with html color attribute.\n const {\n component = 'div',\n direction = 'column',\n spacing = 0,\n divider,\n children,\n className,\n useFlexGap = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = {\n direction,\n spacing,\n useFlexGap\n };\n const classes = useUtilityClasses();\n return /*#__PURE__*/_jsx(StackRoot, _extends({\n as: component,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n children: divider ? joinChildren(children, divider) : children\n }));\n });\n process.env.NODE_ENV !== \"production\" ? Stack.propTypes /* remove-proptypes */ = {\n children: PropTypes.node,\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n divider: PropTypes.node,\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n } : void 0;\n return Stack;\n}","import PropTypes from 'prop-types';\nimport { createStack } from '@mui/system';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nconst Stack = createStack({\n createStyledComponent: styled('div', {\n name: 'MuiStack',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n }),\n useThemeProps: inProps => useThemeProps({\n props: inProps,\n name: 'MuiStack'\n })\n});\nprocess.env.NODE_ENV !== \"production\" ? Stack.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Defines the `flex-direction` style property.\n * It is applied for all screen sizes.\n * @default 'column'\n */\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n /**\n * Add an element between each child.\n */\n divider: PropTypes.node,\n /**\n * Defines the space between immediate children.\n * @default 0\n */\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n /**\n * The system prop, which allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * If `true`, the CSS flexbox `gap` is used instead of applying `margin` to children.\n *\n * While CSS `gap` removes the [known limitations](https://mui.com/joy-ui/react-stack/#limitations),\n * it is not fully supported in some browsers. We recommend checking https://caniuse.com/?search=flex%20gap before using this flag.\n *\n * To enable this flag globally, follow the [theme's default props](https://mui.com/material-ui/customization/theme-components/#default-props) configuration.\n * @default false\n */\n useFlexGap: PropTypes.bool\n} : void 0;\nexport default Stack;","import React from \"react\";\nimport { Stack } from \"@mui/material\";\n\ntype LabelValuePairProps = {\n label?: any;\n value?: any;\n orientation?: any;\n stkProps?: any;\n lblProps?: any;\n valProps?: any;\n};\n\nconst LabelValuePair = ({\n label = null,\n value = \"-\",\n orientation = \"column\",\n stkProps = {},\n lblProps = {},\n valProps = {},\n}: LabelValuePairProps) => {\n return (\n \n \n \n \n );\n};\n\nexport default LabelValuePair;\n","import _isEqual from \"lodash/isEqual\";\nimport _isFunction from \"lodash/isFunction\";\nimport _isNil from \"lodash/isNil\";\nvar _excluded = [\"type\", \"layout\", \"connectNulls\", \"ref\"];\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n/**\n * @fileOverview Line\n */\nimport React, { PureComponent } from 'react';\nimport Animate from 'react-smooth';\nimport classNames from 'classnames';\nimport { Curve } from '../shape/Curve';\nimport { Dot } from '../shape/Dot';\nimport { Layer } from '../container/Layer';\nimport { LabelList } from '../component/LabelList';\nimport { ErrorBar } from './ErrorBar';\nimport { uniqueId, interpolateNumber } from '../util/DataUtils';\nimport { findAllByType, filterProps, isDotProps } from '../util/ReactUtils';\nimport { Global } from '../util/Global';\nimport { getCateCoordinateOfLine, getValueByDataKey } from '../util/ChartUtils';\nexport var Line = /*#__PURE__*/function (_PureComponent) {\n _inherits(Line, _PureComponent);\n var _super = _createSuper(Line);\n function Line() {\n var _this;\n _classCallCheck(this, Line);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _super.call.apply(_super, [this].concat(args));\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n isAnimationFinished: true,\n totalLength: 0\n });\n _defineProperty(_assertThisInitialized(_this), \"getStrokeDasharray\", function (length, totalLength, lines) {\n var lineLength = lines.reduce(function (pre, next) {\n return pre + next;\n });\n var count = Math.floor(length / lineLength);\n var remainLength = length % lineLength;\n var restLength = totalLength - length;\n var remainLines = [];\n for (var i = 0, sum = 0;; sum += lines[i], ++i) {\n if (sum + lines[i] > remainLength) {\n remainLines = [].concat(_toConsumableArray(lines.slice(0, i)), [remainLength - sum]);\n break;\n }\n }\n var emptyLines = remainLines.length % 2 === 0 ? [0, restLength] : [restLength];\n return [].concat(_toConsumableArray(Line.repeat(lines, count)), _toConsumableArray(remainLines), emptyLines).map(function (line) {\n return \"\".concat(line, \"px\");\n }).join(', ');\n });\n _defineProperty(_assertThisInitialized(_this), \"id\", uniqueId('recharts-line-'));\n _defineProperty(_assertThisInitialized(_this), \"pathRef\", function (node) {\n _this.mainCurve = node;\n });\n _defineProperty(_assertThisInitialized(_this), \"handleAnimationEnd\", function () {\n _this.setState({\n isAnimationFinished: true\n });\n if (_this.props.onAnimationEnd) {\n _this.props.onAnimationEnd();\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"handleAnimationStart\", function () {\n _this.setState({\n isAnimationFinished: false\n });\n if (_this.props.onAnimationStart) {\n _this.props.onAnimationStart();\n }\n });\n return _this;\n }\n _createClass(Line, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!this.props.isAnimationActive) {\n return;\n }\n var totalLength = this.getTotalLength();\n this.setState({\n totalLength: totalLength\n });\n }\n }, {\n key: \"getTotalLength\",\n value: function getTotalLength() {\n var curveDom = this.mainCurve;\n try {\n return curveDom && curveDom.getTotalLength && curveDom.getTotalLength() || 0;\n } catch (err) {\n return 0;\n }\n }\n }, {\n key: \"renderErrorBar\",\n value: function renderErrorBar(needClip, clipPathId) {\n if (this.props.isAnimationActive && !this.state.isAnimationFinished) {\n return null;\n }\n var _this$props = this.props,\n points = _this$props.points,\n xAxis = _this$props.xAxis,\n yAxis = _this$props.yAxis,\n layout = _this$props.layout,\n children = _this$props.children;\n var errorBarItems = findAllByType(children, ErrorBar);\n if (!errorBarItems) {\n return null;\n }\n var dataPointFormatter = function dataPointFormatter(dataPoint, dataKey) {\n return {\n x: dataPoint.x,\n y: dataPoint.y,\n value: dataPoint.value,\n errorVal: getValueByDataKey(dataPoint.payload, dataKey)\n };\n };\n var errorBarProps = {\n clipPath: needClip ? \"url(#clipPath-\".concat(clipPathId, \")\") : null\n };\n return /*#__PURE__*/React.createElement(Layer, errorBarProps, errorBarItems.map(function (item, i) {\n return /*#__PURE__*/React.cloneElement(item, {\n // eslint-disable-next-line react/no-array-index-key\n key: \"bar-\".concat(i),\n data: points,\n xAxis: xAxis,\n yAxis: yAxis,\n layout: layout,\n dataPointFormatter: dataPointFormatter\n });\n }));\n }\n }, {\n key: \"renderDots\",\n value: function renderDots(needClip, clipDot, clipPathId) {\n var isAnimationActive = this.props.isAnimationActive;\n if (isAnimationActive && !this.state.isAnimationFinished) {\n return null;\n }\n var _this$props2 = this.props,\n dot = _this$props2.dot,\n points = _this$props2.points,\n dataKey = _this$props2.dataKey;\n var lineProps = filterProps(this.props);\n var customDotProps = filterProps(dot, true);\n var dots = points.map(function (entry, i) {\n var dotProps = _objectSpread(_objectSpread(_objectSpread({\n key: \"dot-\".concat(i),\n r: 3\n }, lineProps), customDotProps), {}, {\n value: entry.value,\n dataKey: dataKey,\n cx: entry.x,\n cy: entry.y,\n index: i,\n payload: entry.payload\n });\n return Line.renderDotItem(dot, dotProps);\n });\n var dotsProps = {\n clipPath: needClip ? \"url(#clipPath-\".concat(clipDot ? '' : 'dots-').concat(clipPathId, \")\") : null\n };\n return /*#__PURE__*/React.createElement(Layer, _extends({\n className: \"recharts-line-dots\",\n key: \"dots\"\n }, dotsProps, {\n role: \"img\"\n }), dots);\n }\n }, {\n key: \"renderCurveStatically\",\n value: function renderCurveStatically(points, needClip, clipPathId, props) {\n var _this$props3 = this.props,\n type = _this$props3.type,\n layout = _this$props3.layout,\n connectNulls = _this$props3.connectNulls,\n ref = _this$props3.ref,\n others = _objectWithoutProperties(_this$props3, _excluded);\n var curveProps = _objectSpread(_objectSpread(_objectSpread({}, filterProps(others, true)), {}, {\n fill: 'none',\n className: 'recharts-line-curve',\n clipPath: needClip ? \"url(#clipPath-\".concat(clipPathId, \")\") : null,\n points: points\n }, props), {}, {\n type: type,\n layout: layout,\n connectNulls: connectNulls\n });\n return /*#__PURE__*/React.createElement(Curve, _extends({}, curveProps, {\n pathRef: this.pathRef\n }));\n }\n }, {\n key: \"renderCurveWithAnimation\",\n value: function renderCurveWithAnimation(needClip, clipPathId) {\n var _this2 = this;\n var _this$props4 = this.props,\n points = _this$props4.points,\n strokeDasharray = _this$props4.strokeDasharray,\n isAnimationActive = _this$props4.isAnimationActive,\n animationBegin = _this$props4.animationBegin,\n animationDuration = _this$props4.animationDuration,\n animationEasing = _this$props4.animationEasing,\n animationId = _this$props4.animationId,\n animateNewValues = _this$props4.animateNewValues,\n width = _this$props4.width,\n height = _this$props4.height;\n var _this$state = this.state,\n prevPoints = _this$state.prevPoints,\n totalLength = _this$state.totalLength;\n return /*#__PURE__*/React.createElement(Animate, {\n begin: animationBegin,\n duration: animationDuration,\n isActive: isAnimationActive,\n easing: animationEasing,\n from: {\n t: 0\n },\n to: {\n t: 1\n },\n key: \"line-\".concat(animationId),\n onAnimationEnd: this.handleAnimationEnd,\n onAnimationStart: this.handleAnimationStart\n }, function (_ref) {\n var t = _ref.t;\n if (prevPoints) {\n var prevPointsDiffFactor = prevPoints.length / points.length;\n var stepData = points.map(function (entry, index) {\n var prevPointIndex = Math.floor(index * prevPointsDiffFactor);\n if (prevPoints[prevPointIndex]) {\n var prev = prevPoints[prevPointIndex];\n var interpolatorX = interpolateNumber(prev.x, entry.x);\n var interpolatorY = interpolateNumber(prev.y, entry.y);\n return _objectSpread(_objectSpread({}, entry), {}, {\n x: interpolatorX(t),\n y: interpolatorY(t)\n });\n }\n\n // magic number of faking previous x and y location\n if (animateNewValues) {\n var _interpolatorX = interpolateNumber(width * 2, entry.x);\n var _interpolatorY = interpolateNumber(height / 2, entry.y);\n return _objectSpread(_objectSpread({}, entry), {}, {\n x: _interpolatorX(t),\n y: _interpolatorY(t)\n });\n }\n return _objectSpread(_objectSpread({}, entry), {}, {\n x: entry.x,\n y: entry.y\n });\n });\n return _this2.renderCurveStatically(stepData, needClip, clipPathId);\n }\n var interpolator = interpolateNumber(0, totalLength);\n var curLength = interpolator(t);\n var currentStrokeDasharray;\n if (strokeDasharray) {\n var lines = \"\".concat(strokeDasharray).split(/[,\\s]+/gim).map(function (num) {\n return parseFloat(num);\n });\n currentStrokeDasharray = _this2.getStrokeDasharray(curLength, totalLength, lines);\n } else {\n currentStrokeDasharray = \"\".concat(curLength, \"px \").concat(totalLength - curLength, \"px\");\n }\n return _this2.renderCurveStatically(points, needClip, clipPathId, {\n strokeDasharray: currentStrokeDasharray\n });\n });\n }\n }, {\n key: \"renderCurve\",\n value: function renderCurve(needClip, clipPathId) {\n var _this$props5 = this.props,\n points = _this$props5.points,\n isAnimationActive = _this$props5.isAnimationActive;\n var _this$state2 = this.state,\n prevPoints = _this$state2.prevPoints,\n totalLength = _this$state2.totalLength;\n if (isAnimationActive && points && points.length && (!prevPoints && totalLength > 0 || !_isEqual(prevPoints, points))) {\n return this.renderCurveWithAnimation(needClip, clipPathId);\n }\n return this.renderCurveStatically(points, needClip, clipPathId);\n }\n }, {\n key: \"render\",\n value: function render() {\n var _filterProps;\n var _this$props6 = this.props,\n hide = _this$props6.hide,\n dot = _this$props6.dot,\n points = _this$props6.points,\n className = _this$props6.className,\n xAxis = _this$props6.xAxis,\n yAxis = _this$props6.yAxis,\n top = _this$props6.top,\n left = _this$props6.left,\n width = _this$props6.width,\n height = _this$props6.height,\n isAnimationActive = _this$props6.isAnimationActive,\n id = _this$props6.id;\n if (hide || !points || !points.length) {\n return null;\n }\n var isAnimationFinished = this.state.isAnimationFinished;\n var hasSinglePoint = points.length === 1;\n var layerClass = classNames('recharts-line', className);\n var needClipX = xAxis && xAxis.allowDataOverflow;\n var needClipY = yAxis && yAxis.allowDataOverflow;\n var needClip = needClipX || needClipY;\n var clipPathId = _isNil(id) ? this.id : id;\n var _ref2 = (_filterProps = filterProps(dot)) !== null && _filterProps !== void 0 ? _filterProps : {\n r: 3,\n strokeWidth: 2\n },\n _ref2$r = _ref2.r,\n r = _ref2$r === void 0 ? 3 : _ref2$r,\n _ref2$strokeWidth = _ref2.strokeWidth,\n strokeWidth = _ref2$strokeWidth === void 0 ? 2 : _ref2$strokeWidth;\n var _ref3 = isDotProps(dot) ? dot : {},\n _ref3$clipDot = _ref3.clipDot,\n clipDot = _ref3$clipDot === void 0 ? true : _ref3$clipDot;\n var dotSize = r * 2 + strokeWidth;\n return /*#__PURE__*/React.createElement(Layer, {\n className: layerClass\n }, needClipX || needClipY ? /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clipPath-\".concat(clipPathId)\n }, /*#__PURE__*/React.createElement(\"rect\", {\n x: needClipX ? left : left - width / 2,\n y: needClipY ? top : top - height / 2,\n width: needClipX ? width : width * 2,\n height: needClipY ? height : height * 2\n })), !clipDot && /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clipPath-dots-\".concat(clipPathId)\n }, /*#__PURE__*/React.createElement(\"rect\", {\n x: left - dotSize / 2,\n y: top - dotSize / 2,\n width: width + dotSize,\n height: height + dotSize\n }))) : null, !hasSinglePoint && this.renderCurve(needClip, clipPathId), this.renderErrorBar(needClip, clipPathId), (hasSinglePoint || dot) && this.renderDots(needClip, clipDot, clipPathId), (!isAnimationActive || isAnimationFinished) && LabelList.renderCallByParent(this.props, points));\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(nextProps, prevState) {\n if (nextProps.animationId !== prevState.prevAnimationId) {\n return {\n prevAnimationId: nextProps.animationId,\n curPoints: nextProps.points,\n prevPoints: prevState.curPoints\n };\n }\n if (nextProps.points !== prevState.curPoints) {\n return {\n curPoints: nextProps.points\n };\n }\n return null;\n }\n }, {\n key: \"repeat\",\n value: function repeat(lines, count) {\n var linesUnit = lines.length % 2 !== 0 ? [].concat(_toConsumableArray(lines), [0]) : lines;\n var result = [];\n for (var i = 0; i < count; ++i) {\n result = [].concat(_toConsumableArray(result), _toConsumableArray(linesUnit));\n }\n return result;\n }\n }, {\n key: \"renderDotItem\",\n value: function renderDotItem(option, props) {\n var dotItem;\n if ( /*#__PURE__*/React.isValidElement(option)) {\n dotItem = /*#__PURE__*/React.cloneElement(option, props);\n } else if (_isFunction(option)) {\n dotItem = option(props);\n } else {\n var className = classNames('recharts-line-dot', option ? option.className : '');\n dotItem = /*#__PURE__*/React.createElement(Dot, _extends({}, props, {\n className: className\n }));\n }\n return dotItem;\n }\n }]);\n return Line;\n}(PureComponent);\n_defineProperty(Line, \"displayName\", 'Line');\n_defineProperty(Line, \"defaultProps\", {\n xAxisId: 0,\n yAxisId: 0,\n connectNulls: false,\n activeDot: true,\n dot: true,\n legendType: 'line',\n stroke: '#3182bd',\n strokeWidth: 1,\n fill: '#fff',\n points: [],\n isAnimationActive: !Global.isSsr,\n animateNewValues: true,\n animationBegin: 0,\n animationDuration: 1500,\n animationEasing: 'ease',\n hide: false,\n label: false\n});\n/**\n * Compose the data of each group\n * @param {Object} props The props from the component\n * @param {Object} xAxis The configuration of x-axis\n * @param {Object} yAxis The configuration of y-axis\n * @param {String} dataKey The unique key of a group\n * @return {Array} Composed data\n */\n_defineProperty(Line, \"getComposedData\", function (_ref4) {\n var props = _ref4.props,\n xAxis = _ref4.xAxis,\n yAxis = _ref4.yAxis,\n xAxisTicks = _ref4.xAxisTicks,\n yAxisTicks = _ref4.yAxisTicks,\n dataKey = _ref4.dataKey,\n bandSize = _ref4.bandSize,\n displayedData = _ref4.displayedData,\n offset = _ref4.offset;\n var layout = props.layout;\n var points = displayedData.map(function (entry, index) {\n var value = getValueByDataKey(entry, dataKey);\n if (layout === 'horizontal') {\n return {\n x: getCateCoordinateOfLine({\n axis: xAxis,\n ticks: xAxisTicks,\n bandSize: bandSize,\n entry: entry,\n index: index\n }),\n y: _isNil(value) ? null : yAxis.scale(value),\n value: value,\n payload: entry\n };\n }\n return {\n x: _isNil(value) ? null : xAxis.scale(value),\n y: getCateCoordinateOfLine({\n axis: yAxis,\n ticks: yAxisTicks,\n bandSize: bandSize,\n entry: entry,\n index: index\n }),\n value: value,\n payload: entry\n };\n });\n return _objectSpread({\n points: points,\n layout: layout\n }, offset);\n});","/**\n * @fileOverview Line Chart\n */\nimport { generateCategoricalChart } from './generateCategoricalChart';\nimport { Line } from '../cartesian/Line';\nimport { XAxis } from '../cartesian/XAxis';\nimport { YAxis } from '../cartesian/YAxis';\nimport { formatAxisMap } from '../util/CartesianUtils';\nexport var LineChart = generateCategoricalChart({\n chartName: 'LineChart',\n GraphicalChild: Line,\n axisComponents: [{\n axisType: 'xAxis',\n AxisComp: XAxis\n }, {\n axisType: 'yAxis',\n AxisComp: YAxis\n }],\n formatAxisMap: formatAxisMap\n});","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Box, Grid } from \"@mui/material\";\nimport api from \"../../../common/api\";\n\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { hasPermission } from \"../../../common/SecureComponent\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_SCOPES,\n} from \"../../../common/SecureComponent/permissions\";\n\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport Tabs from \"@mui/material/Tabs\";\nimport Tab from \"@mui/material/Tab\";\nimport { TabPanel } from \"../../shared/tabs\";\n\nimport LabelValuePair from \"../Common/UsageBarWrapper/LabelValuePair\";\nimport SectionTitle from \"../Common/SectionTitle\";\nimport LabelWithIcon from \"../Buckets/BucketDetails/SummaryItems/LabelWithIcon\";\nimport {\n Bar,\n BarChart,\n CartesianGrid,\n Legend,\n Line,\n LineChart,\n Tooltip,\n XAxis,\n YAxis,\n} from \"recharts\";\nimport { DisabledIcon, EnabledIcon, PageLayout } from \"mds\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\n\nimport HelpMenu from \"../HelpMenu\";\n\nconst Status = () => {\n const dispatch = useAppDispatch();\n const [curTab, setCurTab] = useState(0);\n\n const [status, setStatus] = useState(null);\n const [loadingStatus, setLoadingStatus] = useState(true);\n const [metrics, setMetrics] = useState(null);\n const [loadingMetrics, setLoadingMetrics] = useState(true);\n const [apis, setAPIs] = useState(null);\n const [loadingAPIs, setLoadingAPIs] = useState(true);\n const [version, setVersion] = useState(null);\n const [loadingVersion, setLoadingVersion] = useState(true);\n\n const displayStatus = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.KMS_STATUS,\n ]);\n const displayMetrics = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.KMS_METRICS,\n ]);\n const displayAPIs = hasPermission(CONSOLE_UI_RESOURCE, [IAM_SCOPES.KMS_APIS]);\n const displayVersion = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.KMS_Version,\n ]);\n\n useEffect(() => {\n setLoadingStatus(true);\n }, []);\n\n useEffect(() => {\n const loadMetrics = () => {\n if (displayMetrics) {\n api\n .invoke(\"GET\", `/api/v1/kms/metrics`)\n .then((result: any) => {\n if (result) {\n setMetrics(result);\n }\n setLoadingMetrics(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoadingMetrics(false);\n });\n } else {\n setLoadingMetrics(false);\n }\n };\n\n const loadAPIs = () => {\n if (displayAPIs) {\n api\n .invoke(\"GET\", `/api/v1/kms/apis`)\n .then((result: any) => {\n if (result) {\n setAPIs(result);\n }\n setLoadingAPIs(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoadingAPIs(false);\n });\n } else {\n setLoadingAPIs(false);\n }\n };\n\n const loadVersion = () => {\n if (displayVersion) {\n api\n .invoke(\"GET\", `/api/v1/kms/version`)\n .then((result: any) => {\n if (result) {\n setVersion(result);\n }\n setLoadingVersion(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoadingVersion(false);\n });\n } else {\n setLoadingVersion(false);\n }\n };\n\n const loadStatus = () => {\n if (displayStatus) {\n api\n .invoke(\"GET\", `/api/v1/kms/status`)\n .then((result: any) => {\n if (result) {\n setStatus(result);\n }\n setLoadingStatus(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoadingStatus(false);\n });\n } else {\n setLoadingStatus(false);\n }\n };\n\n if (loadingStatus) {\n loadStatus();\n }\n if (loadingMetrics) {\n loadMetrics();\n }\n if (loadingAPIs) {\n loadAPIs();\n }\n if (loadingVersion) {\n loadVersion();\n }\n }, [\n dispatch,\n displayStatus,\n loadingStatus,\n displayMetrics,\n loadingMetrics,\n displayAPIs,\n loadingAPIs,\n displayVersion,\n loadingVersion,\n ]);\n\n const statusPanel = (\n \n Status\n
\n {status && (\n \n \n \n \n \n {version && (\n \n )}\n \n \n {status.endpoints.map((e: any, i: number) => (\n \n ) : (\n \n )\n }\n label={e.url}\n />\n ))}\n
\n }\n />\n \n \n \n \n )}\n
\n );\n\n const apisPanel = (\n \n Supported API endpoints\n
\n {apis && (\n \n \n \n {apis.results.map((e: any, i: number) => (\n }\n label={`${e.path} - ${e.method}`}\n />\n ))}\n \n }\n />\n \n \n )}\n
\n );\n\n const getAPIRequestsData = () => {\n return [\n { label: \"Success\", success: metrics.requestOK },\n { label: \"Failures\", failures: metrics.requestFail },\n { label: \"Errors\", errors: metrics.requestErr },\n { label: \"Active\", active: metrics.requestActive },\n ];\n };\n\n const getEventsData = () => {\n return [\n { label: \"Audit\", audit: metrics.auditEvents },\n { label: \"Errors\", errors: metrics.errorEvents },\n ];\n };\n\n const getHistogramData = () => {\n return metrics.latencyHistogram.map((h: any) => {\n return {\n ...h,\n duration: `${h.duration / 1000000}ms`,\n };\n });\n };\n\n const metricsPanel = (\n \n {metrics && (\n \n

API Requests

\n \n \n \n \n \n \n \n \n \n \n \n\n

Events

\n \n \n \n \n \n \n \n \n \n

Latency Histogram

\n {metrics.latencyHistogram && (\n \n \n \n \n \n \n \n \n )}\n
\n )}\n
\n );\n\n useEffect(() => {\n dispatch(setHelpName(\"kms_status\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n }\n />\n\n \n , newValue: number) => {\n setCurTab(newValue);\n }}\n indicatorColor=\"primary\"\n textColor=\"primary\"\n aria-label=\"cluster-tabs\"\n variant=\"scrollable\"\n scrollButtons=\"auto\"\n >\n \n \n {}}\n />\n \n\n \n \n {statusPanel}\n \n \n \n \n {apisPanel}\n \n \n \n \n {metricsPanel}\n \n \n \n \n );\n};\n\nexport default Status;\n","/**\n * @fileOverview Bar Chart\n */\nimport { generateCategoricalChart } from './generateCategoricalChart';\nimport { Bar } from '../cartesian/Bar';\nimport { XAxis } from '../cartesian/XAxis';\nimport { YAxis } from '../cartesian/YAxis';\nimport { formatAxisMap } from '../util/CartesianUtils';\nexport var BarChart = generateCategoricalChart({\n chartName: 'BarChart',\n GraphicalChild: Bar,\n defaultTooltipEventType: 'axis',\n validateTooltipEventTypes: ['axis', 'item'],\n axisComponents: [{\n axisType: 'xAxis',\n AxisComp: XAxis\n }, {\n axisType: 'yAxis',\n AxisComp: YAxis\n }],\n formatAxisMap: formatAxisMap\n});"],"names":["_ref","_ref$icon","icon","_ref$label","label","_jsxs","Box","sx","display","children","_jsx","style","height","width","alignItems","marginTop","marginLeft","createStyled","_excluded","defaultTheme","createTheme","defaultCreateStyledComponent","systemStyled","name","slot","overridesResolver","props","styles","root","useThemePropsDefault","useThemePropsSystem","joinChildren","separator","childrenArray","React","toArray","filter","Boolean","reduce","output","child","index","push","length","key","concat","ownerState","theme","_extends","flexDirection","handleBreakpoints","resolveBreakpointValues","values","direction","breakpoints","propValue","spacing","transformer","createUnarySpacing","base","Object","keys","acc","breakpoint","directionValues","spacingValues","forEach","previousDirectionValue","deepmerge","useFlexGap","gap","getValue","_defineProperty","margin","row","column","mergeBreakpointsInOrder","Stack","options","arguments","undefined","_options$createStyled","createStyledComponent","_options$useThemeProp","useThemeProps","_options$componentNam","componentName","StackRoot","inProps","ref","themeProps","extendSxProp","_props$component","component","_props$direction","_props$spacing","divider","className","_props$useFlexGap","other","_objectWithoutPropertiesLoose","classes","composeClasses","generateUtilityClass","as","clsx","createStack","styled","_ref$value","value","_ref$orientation","orientation","_ref$stkProps","stkProps","_ref$lblProps","lblProps","_ref$valProps","valProps","_objectSpread","xs","sm","marginRight","fontWeight","_typeof","obj","Symbol","iterator","constructor","prototype","_objectWithoutProperties","source","excluded","i","target","sourceKeys","indexOf","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","call","assign","bind","hasOwnProperty","apply","this","ownKeys","object","enumerableOnly","symbols","sym","getOwnPropertyDescriptor","enumerable","getOwnPropertyDescriptors","defineProperties","defineProperty","_toConsumableArray","arr","Array","isArray","_arrayLikeToArray","_arrayWithoutHoles","iter","from","_iterableToArray","o","minLen","n","toString","slice","test","_unsupportedIterableToArray","TypeError","_nonIterableSpread","len","arr2","_defineProperties","descriptor","configurable","writable","_toPropertyKey","_setPrototypeOf","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","valueOf","e","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","self","_assertThisInitialized","_possibleConstructorReturn","ReferenceError","getPrototypeOf","arg","input","hint","prim","toPrimitive","res","String","Number","_toPrimitive","Line","_PureComponent","subClass","superClass","create","_inherits","Constructor","protoProps","staticProps","_super","_this","instance","_classCallCheck","_len","args","_key","isAnimationFinished","totalLength","lines","lineLength","pre","next","count","Math","floor","remainLength","restLength","remainLines","sum","emptyLines","repeat","map","line","join","uniqueId","node","mainCurve","setState","onAnimationEnd","onAnimationStart","nextProps","prevState","animationId","prevAnimationId","curPoints","points","prevPoints","linesUnit","option","dotItem","_isFunction","classNames","Dot","isAnimationActive","getTotalLength","curveDom","err","needClip","clipPathId","state","_this$props","xAxis","yAxis","layout","errorBarItems","findAllByType","ErrorBar","dataPointFormatter","dataPoint","dataKey","x","y","errorVal","getValueByDataKey","payload","errorBarProps","clipPath","Layer","item","data","clipDot","_this$props2","dot","lineProps","filterProps","customDotProps","dots","entry","dotProps","r","cx","cy","renderDotItem","dotsProps","role","_this$props3","type","connectNulls","others","curveProps","fill","Curve","pathRef","_this2","_this$props4","strokeDasharray","animationBegin","animationDuration","animationEasing","animateNewValues","_this$state","Animate","begin","duration","isActive","easing","t","to","handleAnimationEnd","handleAnimationStart","prevPointsDiffFactor","stepData","prevPointIndex","prev","interpolatorX","interpolateNumber","interpolatorY","_interpolatorX","_interpolatorY","renderCurveStatically","currentStrokeDasharray","curLength","interpolator","split","num","parseFloat","getStrokeDasharray","_this$props5","_this$state2","_isEqual","renderCurveWithAnimation","_filterProps","_this$props6","hide","top","left","id","hasSinglePoint","layerClass","needClipX","allowDataOverflow","needClipY","_isNil","_ref2","strokeWidth","_ref2$r","_ref2$strokeWidth","_ref3$clipDot","isDotProps","dotSize","renderCurve","renderErrorBar","renderDots","LabelList","renderCallByParent","PureComponent","xAxisId","yAxisId","activeDot","legendType","stroke","Global","isSsr","_ref4","xAxisTicks","yAxisTicks","bandSize","displayedData","offset","getCateCoordinateOfLine","axis","ticks","scale","LineChart","generateCategoricalChart","chartName","GraphicalChild","axisComponents","axisType","AxisComp","XAxis","YAxis","formatAxisMap","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","curTab","setCurTab","_useState3","_useState4","status","setStatus","_useState5","_useState6","loadingStatus","setLoadingStatus","_useState7","_useState8","metrics","setMetrics","_useState9","_useState10","loadingMetrics","setLoadingMetrics","_useState11","_useState12","apis","setAPIs","_useState13","_useState14","loadingAPIs","setLoadingAPIs","_useState15","_useState16","version","setVersion","_useState17","_useState18","loadingVersion","setLoadingVersion","displayStatus","hasPermission","CONSOLE_UI_RESOURCE","IAM_SCOPES","KMS_STATUS","displayMetrics","KMS_METRICS","displayAPIs","KMS_APIS","displayVersion","KMS_Version","useEffect","api","invoke","then","catch","setErrorSnackMessage","statusPanel","Fragment","SectionTitle","Grid","container","gridTemplateColumns","gridAutoFlow","LabelValuePair","defaultKeyID","endpoints","LabelWithIcon","EnabledIcon","DisabledIcon","url","apisPanel","results","path","method","metricsPanel","BarChart","success","requestOK","failures","requestFail","errors","requestErr","active","requestActive","CartesianGrid","Tooltip","Legend","Bar","audit","auditEvents","errorEvents","latencyHistogram","h","right","bottom","setHelpName","PageHeaderWrapper","actions","HelpMenu","PageLayout","Tabs","onChange","newValue","indicatorColor","textColor","variant","scrollButtons","Tab","onClick","TabPanel","border","borderRadius","flexFlow","padding","defaultTooltipEventType","validateTooltipEventTypes"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/5661.8e7899d0.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/SummaryItems/LabelWithIcon.tsx","../node_modules/@mui/system/esm/styled.js","../node_modules/@mui/system/esm/Stack/createStack.js","../node_modules/@mui/material/Stack/Stack.js","screens/Console/Common/UsageBarWrapper/LabelValuePair.tsx","../node_modules/recharts/es6/cartesian/Line.js","../node_modules/recharts/es6/chart/LineChart.js","screens/Console/KMS/Status.tsx","../node_modules/recharts/es6/chart/BarChart.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box } from \"mds\";\n\ntype LabelWithIconProps = {\n icon: React.ReactNode | null;\n label: React.ReactNode | null;\n};\n\nconst LabelWithIcon = ({ icon = null, label = null }: LabelWithIconProps) => {\n return (\n \n \n {icon}\n \n {label}\n \n );\n};\n\nexport default LabelWithIcon;\n","import createStyled from './createStyled';\nconst styled = createStyled();\nexport default styled;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"component\", \"direction\", \"spacing\", \"divider\", \"children\", \"className\", \"useFlexGap\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { deepmerge, unstable_composeClasses as composeClasses, unstable_generateUtilityClass as generateUtilityClass } from '@mui/utils';\nimport systemStyled from '../styled';\nimport useThemePropsSystem from '../useThemeProps';\nimport { extendSxProp } from '../styleFunctionSx';\nimport createTheme from '../createTheme';\nimport { handleBreakpoints, mergeBreakpointsInOrder, resolveBreakpointValues } from '../breakpoints';\nimport { createUnarySpacing, getValue } from '../spacing';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst defaultTheme = createTheme();\n// widening Theme to any so that the consumer can own the theme structure.\nconst defaultCreateStyledComponent = systemStyled('div', {\n name: 'MuiStack',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n});\nfunction useThemePropsDefault(props) {\n return useThemePropsSystem({\n props,\n name: 'MuiStack',\n defaultTheme\n });\n}\n\n/**\n * Return an array with the separator React element interspersed between\n * each React node of the input children.\n *\n * > joinChildren([1,2,3], 0)\n * [1,0,2,0,3]\n */\nfunction joinChildren(children, separator) {\n const childrenArray = React.Children.toArray(children).filter(Boolean);\n return childrenArray.reduce((output, child, index) => {\n output.push(child);\n if (index < childrenArray.length - 1) {\n output.push( /*#__PURE__*/React.cloneElement(separator, {\n key: `separator-${index}`\n }));\n }\n return output;\n }, []);\n}\nconst getSideFromDirection = direction => {\n return {\n row: 'Left',\n 'row-reverse': 'Right',\n column: 'Top',\n 'column-reverse': 'Bottom'\n }[direction];\n};\nexport const style = ({\n ownerState,\n theme\n}) => {\n let styles = _extends({\n display: 'flex',\n flexDirection: 'column'\n }, handleBreakpoints({\n theme\n }, resolveBreakpointValues({\n values: ownerState.direction,\n breakpoints: theme.breakpoints.values\n }), propValue => ({\n flexDirection: propValue\n })));\n if (ownerState.spacing) {\n const transformer = createUnarySpacing(theme);\n const base = Object.keys(theme.breakpoints.values).reduce((acc, breakpoint) => {\n if (typeof ownerState.spacing === 'object' && ownerState.spacing[breakpoint] != null || typeof ownerState.direction === 'object' && ownerState.direction[breakpoint] != null) {\n acc[breakpoint] = true;\n }\n return acc;\n }, {});\n const directionValues = resolveBreakpointValues({\n values: ownerState.direction,\n base\n });\n const spacingValues = resolveBreakpointValues({\n values: ownerState.spacing,\n base\n });\n if (typeof directionValues === 'object') {\n Object.keys(directionValues).forEach((breakpoint, index, breakpoints) => {\n const directionValue = directionValues[breakpoint];\n if (!directionValue) {\n const previousDirectionValue = index > 0 ? directionValues[breakpoints[index - 1]] : 'column';\n directionValues[breakpoint] = previousDirectionValue;\n }\n });\n }\n const styleFromPropValue = (propValue, breakpoint) => {\n if (ownerState.useFlexGap) {\n return {\n gap: getValue(transformer, propValue)\n };\n }\n return {\n '& > :not(style) + :not(style)': {\n margin: 0,\n [`margin${getSideFromDirection(breakpoint ? directionValues[breakpoint] : ownerState.direction)}`]: getValue(transformer, propValue)\n }\n };\n };\n styles = deepmerge(styles, handleBreakpoints({\n theme\n }, spacingValues, styleFromPropValue));\n }\n styles = mergeBreakpointsInOrder(theme.breakpoints, styles);\n return styles;\n};\nexport default function createStack(options = {}) {\n const {\n // This will allow adding custom styled fn (for example for custom sx style function)\n createStyledComponent = defaultCreateStyledComponent,\n useThemeProps = useThemePropsDefault,\n componentName = 'MuiStack'\n } = options;\n const useUtilityClasses = () => {\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, slot => generateUtilityClass(componentName, slot), {});\n };\n const StackRoot = createStyledComponent(style);\n const Stack = /*#__PURE__*/React.forwardRef(function Grid(inProps, ref) {\n const themeProps = useThemeProps(inProps);\n const props = extendSxProp(themeProps); // `color` type conflicts with html color attribute.\n const {\n component = 'div',\n direction = 'column',\n spacing = 0,\n divider,\n children,\n className,\n useFlexGap = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = {\n direction,\n spacing,\n useFlexGap\n };\n const classes = useUtilityClasses();\n return /*#__PURE__*/_jsx(StackRoot, _extends({\n as: component,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n children: divider ? joinChildren(children, divider) : children\n }));\n });\n process.env.NODE_ENV !== \"production\" ? Stack.propTypes /* remove-proptypes */ = {\n children: PropTypes.node,\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n divider: PropTypes.node,\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n } : void 0;\n return Stack;\n}","import PropTypes from 'prop-types';\nimport { createStack } from '@mui/system';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nconst Stack = createStack({\n createStyledComponent: styled('div', {\n name: 'MuiStack',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n }),\n useThemeProps: inProps => useThemeProps({\n props: inProps,\n name: 'MuiStack'\n })\n});\nprocess.env.NODE_ENV !== \"production\" ? Stack.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Defines the `flex-direction` style property.\n * It is applied for all screen sizes.\n * @default 'column'\n */\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n /**\n * Add an element between each child.\n */\n divider: PropTypes.node,\n /**\n * Defines the space between immediate children.\n * @default 0\n */\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n /**\n * The system prop, which allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * If `true`, the CSS flexbox `gap` is used instead of applying `margin` to children.\n *\n * While CSS `gap` removes the [known limitations](https://mui.com/joy-ui/react-stack/#limitations),\n * it is not fully supported in some browsers. We recommend checking https://caniuse.com/?search=flex%20gap before using this flag.\n *\n * To enable this flag globally, follow the [theme's default props](https://mui.com/material-ui/customization/theme-components/#default-props) configuration.\n * @default false\n */\n useFlexGap: PropTypes.bool\n} : void 0;\nexport default Stack;","import React from \"react\";\nimport { Stack } from \"@mui/material\";\n\ntype LabelValuePairProps = {\n label?: any;\n value?: any;\n orientation?: any;\n stkProps?: any;\n lblProps?: any;\n valProps?: any;\n};\n\nconst LabelValuePair = ({\n label = null,\n value = \"-\",\n orientation = \"column\",\n stkProps = {},\n lblProps = {},\n valProps = {},\n}: LabelValuePairProps) => {\n return (\n \n \n \n \n );\n};\n\nexport default LabelValuePair;\n","import _isEqual from \"lodash/isEqual\";\nimport _isFunction from \"lodash/isFunction\";\nimport _isNil from \"lodash/isNil\";\nvar _excluded = [\"type\", \"layout\", \"connectNulls\", \"ref\"];\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n/**\n * @fileOverview Line\n */\nimport React, { PureComponent } from 'react';\nimport Animate from 'react-smooth';\nimport classNames from 'classnames';\nimport { Curve } from '../shape/Curve';\nimport { Dot } from '../shape/Dot';\nimport { Layer } from '../container/Layer';\nimport { LabelList } from '../component/LabelList';\nimport { ErrorBar } from './ErrorBar';\nimport { uniqueId, interpolateNumber } from '../util/DataUtils';\nimport { findAllByType, filterProps, isDotProps } from '../util/ReactUtils';\nimport { Global } from '../util/Global';\nimport { getCateCoordinateOfLine, getValueByDataKey } from '../util/ChartUtils';\nexport var Line = /*#__PURE__*/function (_PureComponent) {\n _inherits(Line, _PureComponent);\n var _super = _createSuper(Line);\n function Line() {\n var _this;\n _classCallCheck(this, Line);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _super.call.apply(_super, [this].concat(args));\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n isAnimationFinished: true,\n totalLength: 0\n });\n _defineProperty(_assertThisInitialized(_this), \"getStrokeDasharray\", function (length, totalLength, lines) {\n var lineLength = lines.reduce(function (pre, next) {\n return pre + next;\n });\n var count = Math.floor(length / lineLength);\n var remainLength = length % lineLength;\n var restLength = totalLength - length;\n var remainLines = [];\n for (var i = 0, sum = 0;; sum += lines[i], ++i) {\n if (sum + lines[i] > remainLength) {\n remainLines = [].concat(_toConsumableArray(lines.slice(0, i)), [remainLength - sum]);\n break;\n }\n }\n var emptyLines = remainLines.length % 2 === 0 ? [0, restLength] : [restLength];\n return [].concat(_toConsumableArray(Line.repeat(lines, count)), _toConsumableArray(remainLines), emptyLines).map(function (line) {\n return \"\".concat(line, \"px\");\n }).join(', ');\n });\n _defineProperty(_assertThisInitialized(_this), \"id\", uniqueId('recharts-line-'));\n _defineProperty(_assertThisInitialized(_this), \"pathRef\", function (node) {\n _this.mainCurve = node;\n });\n _defineProperty(_assertThisInitialized(_this), \"handleAnimationEnd\", function () {\n _this.setState({\n isAnimationFinished: true\n });\n if (_this.props.onAnimationEnd) {\n _this.props.onAnimationEnd();\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"handleAnimationStart\", function () {\n _this.setState({\n isAnimationFinished: false\n });\n if (_this.props.onAnimationStart) {\n _this.props.onAnimationStart();\n }\n });\n return _this;\n }\n _createClass(Line, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!this.props.isAnimationActive) {\n return;\n }\n var totalLength = this.getTotalLength();\n this.setState({\n totalLength: totalLength\n });\n }\n }, {\n key: \"getTotalLength\",\n value: function getTotalLength() {\n var curveDom = this.mainCurve;\n try {\n return curveDom && curveDom.getTotalLength && curveDom.getTotalLength() || 0;\n } catch (err) {\n return 0;\n }\n }\n }, {\n key: \"renderErrorBar\",\n value: function renderErrorBar(needClip, clipPathId) {\n if (this.props.isAnimationActive && !this.state.isAnimationFinished) {\n return null;\n }\n var _this$props = this.props,\n points = _this$props.points,\n xAxis = _this$props.xAxis,\n yAxis = _this$props.yAxis,\n layout = _this$props.layout,\n children = _this$props.children;\n var errorBarItems = findAllByType(children, ErrorBar);\n if (!errorBarItems) {\n return null;\n }\n var dataPointFormatter = function dataPointFormatter(dataPoint, dataKey) {\n return {\n x: dataPoint.x,\n y: dataPoint.y,\n value: dataPoint.value,\n errorVal: getValueByDataKey(dataPoint.payload, dataKey)\n };\n };\n var errorBarProps = {\n clipPath: needClip ? \"url(#clipPath-\".concat(clipPathId, \")\") : null\n };\n return /*#__PURE__*/React.createElement(Layer, errorBarProps, errorBarItems.map(function (item, i) {\n return /*#__PURE__*/React.cloneElement(item, {\n // eslint-disable-next-line react/no-array-index-key\n key: \"bar-\".concat(i),\n data: points,\n xAxis: xAxis,\n yAxis: yAxis,\n layout: layout,\n dataPointFormatter: dataPointFormatter\n });\n }));\n }\n }, {\n key: \"renderDots\",\n value: function renderDots(needClip, clipDot, clipPathId) {\n var isAnimationActive = this.props.isAnimationActive;\n if (isAnimationActive && !this.state.isAnimationFinished) {\n return null;\n }\n var _this$props2 = this.props,\n dot = _this$props2.dot,\n points = _this$props2.points,\n dataKey = _this$props2.dataKey;\n var lineProps = filterProps(this.props);\n var customDotProps = filterProps(dot, true);\n var dots = points.map(function (entry, i) {\n var dotProps = _objectSpread(_objectSpread(_objectSpread({\n key: \"dot-\".concat(i),\n r: 3\n }, lineProps), customDotProps), {}, {\n value: entry.value,\n dataKey: dataKey,\n cx: entry.x,\n cy: entry.y,\n index: i,\n payload: entry.payload\n });\n return Line.renderDotItem(dot, dotProps);\n });\n var dotsProps = {\n clipPath: needClip ? \"url(#clipPath-\".concat(clipDot ? '' : 'dots-').concat(clipPathId, \")\") : null\n };\n return /*#__PURE__*/React.createElement(Layer, _extends({\n className: \"recharts-line-dots\",\n key: \"dots\"\n }, dotsProps, {\n role: \"img\"\n }), dots);\n }\n }, {\n key: \"renderCurveStatically\",\n value: function renderCurveStatically(points, needClip, clipPathId, props) {\n var _this$props3 = this.props,\n type = _this$props3.type,\n layout = _this$props3.layout,\n connectNulls = _this$props3.connectNulls,\n ref = _this$props3.ref,\n others = _objectWithoutProperties(_this$props3, _excluded);\n var curveProps = _objectSpread(_objectSpread(_objectSpread({}, filterProps(others, true)), {}, {\n fill: 'none',\n className: 'recharts-line-curve',\n clipPath: needClip ? \"url(#clipPath-\".concat(clipPathId, \")\") : null,\n points: points\n }, props), {}, {\n type: type,\n layout: layout,\n connectNulls: connectNulls\n });\n return /*#__PURE__*/React.createElement(Curve, _extends({}, curveProps, {\n pathRef: this.pathRef\n }));\n }\n }, {\n key: \"renderCurveWithAnimation\",\n value: function renderCurveWithAnimation(needClip, clipPathId) {\n var _this2 = this;\n var _this$props4 = this.props,\n points = _this$props4.points,\n strokeDasharray = _this$props4.strokeDasharray,\n isAnimationActive = _this$props4.isAnimationActive,\n animationBegin = _this$props4.animationBegin,\n animationDuration = _this$props4.animationDuration,\n animationEasing = _this$props4.animationEasing,\n animationId = _this$props4.animationId,\n animateNewValues = _this$props4.animateNewValues,\n width = _this$props4.width,\n height = _this$props4.height;\n var _this$state = this.state,\n prevPoints = _this$state.prevPoints,\n totalLength = _this$state.totalLength;\n return /*#__PURE__*/React.createElement(Animate, {\n begin: animationBegin,\n duration: animationDuration,\n isActive: isAnimationActive,\n easing: animationEasing,\n from: {\n t: 0\n },\n to: {\n t: 1\n },\n key: \"line-\".concat(animationId),\n onAnimationEnd: this.handleAnimationEnd,\n onAnimationStart: this.handleAnimationStart\n }, function (_ref) {\n var t = _ref.t;\n if (prevPoints) {\n var prevPointsDiffFactor = prevPoints.length / points.length;\n var stepData = points.map(function (entry, index) {\n var prevPointIndex = Math.floor(index * prevPointsDiffFactor);\n if (prevPoints[prevPointIndex]) {\n var prev = prevPoints[prevPointIndex];\n var interpolatorX = interpolateNumber(prev.x, entry.x);\n var interpolatorY = interpolateNumber(prev.y, entry.y);\n return _objectSpread(_objectSpread({}, entry), {}, {\n x: interpolatorX(t),\n y: interpolatorY(t)\n });\n }\n\n // magic number of faking previous x and y location\n if (animateNewValues) {\n var _interpolatorX = interpolateNumber(width * 2, entry.x);\n var _interpolatorY = interpolateNumber(height / 2, entry.y);\n return _objectSpread(_objectSpread({}, entry), {}, {\n x: _interpolatorX(t),\n y: _interpolatorY(t)\n });\n }\n return _objectSpread(_objectSpread({}, entry), {}, {\n x: entry.x,\n y: entry.y\n });\n });\n return _this2.renderCurveStatically(stepData, needClip, clipPathId);\n }\n var interpolator = interpolateNumber(0, totalLength);\n var curLength = interpolator(t);\n var currentStrokeDasharray;\n if (strokeDasharray) {\n var lines = \"\".concat(strokeDasharray).split(/[,\\s]+/gim).map(function (num) {\n return parseFloat(num);\n });\n currentStrokeDasharray = _this2.getStrokeDasharray(curLength, totalLength, lines);\n } else {\n currentStrokeDasharray = \"\".concat(curLength, \"px \").concat(totalLength - curLength, \"px\");\n }\n return _this2.renderCurveStatically(points, needClip, clipPathId, {\n strokeDasharray: currentStrokeDasharray\n });\n });\n }\n }, {\n key: \"renderCurve\",\n value: function renderCurve(needClip, clipPathId) {\n var _this$props5 = this.props,\n points = _this$props5.points,\n isAnimationActive = _this$props5.isAnimationActive;\n var _this$state2 = this.state,\n prevPoints = _this$state2.prevPoints,\n totalLength = _this$state2.totalLength;\n if (isAnimationActive && points && points.length && (!prevPoints && totalLength > 0 || !_isEqual(prevPoints, points))) {\n return this.renderCurveWithAnimation(needClip, clipPathId);\n }\n return this.renderCurveStatically(points, needClip, clipPathId);\n }\n }, {\n key: \"render\",\n value: function render() {\n var _filterProps;\n var _this$props6 = this.props,\n hide = _this$props6.hide,\n dot = _this$props6.dot,\n points = _this$props6.points,\n className = _this$props6.className,\n xAxis = _this$props6.xAxis,\n yAxis = _this$props6.yAxis,\n top = _this$props6.top,\n left = _this$props6.left,\n width = _this$props6.width,\n height = _this$props6.height,\n isAnimationActive = _this$props6.isAnimationActive,\n id = _this$props6.id;\n if (hide || !points || !points.length) {\n return null;\n }\n var isAnimationFinished = this.state.isAnimationFinished;\n var hasSinglePoint = points.length === 1;\n var layerClass = classNames('recharts-line', className);\n var needClipX = xAxis && xAxis.allowDataOverflow;\n var needClipY = yAxis && yAxis.allowDataOverflow;\n var needClip = needClipX || needClipY;\n var clipPathId = _isNil(id) ? this.id : id;\n var _ref2 = (_filterProps = filterProps(dot)) !== null && _filterProps !== void 0 ? _filterProps : {\n r: 3,\n strokeWidth: 2\n },\n _ref2$r = _ref2.r,\n r = _ref2$r === void 0 ? 3 : _ref2$r,\n _ref2$strokeWidth = _ref2.strokeWidth,\n strokeWidth = _ref2$strokeWidth === void 0 ? 2 : _ref2$strokeWidth;\n var _ref3 = isDotProps(dot) ? dot : {},\n _ref3$clipDot = _ref3.clipDot,\n clipDot = _ref3$clipDot === void 0 ? true : _ref3$clipDot;\n var dotSize = r * 2 + strokeWidth;\n return /*#__PURE__*/React.createElement(Layer, {\n className: layerClass\n }, needClipX || needClipY ? /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clipPath-\".concat(clipPathId)\n }, /*#__PURE__*/React.createElement(\"rect\", {\n x: needClipX ? left : left - width / 2,\n y: needClipY ? top : top - height / 2,\n width: needClipX ? width : width * 2,\n height: needClipY ? height : height * 2\n })), !clipDot && /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clipPath-dots-\".concat(clipPathId)\n }, /*#__PURE__*/React.createElement(\"rect\", {\n x: left - dotSize / 2,\n y: top - dotSize / 2,\n width: width + dotSize,\n height: height + dotSize\n }))) : null, !hasSinglePoint && this.renderCurve(needClip, clipPathId), this.renderErrorBar(needClip, clipPathId), (hasSinglePoint || dot) && this.renderDots(needClip, clipDot, clipPathId), (!isAnimationActive || isAnimationFinished) && LabelList.renderCallByParent(this.props, points));\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(nextProps, prevState) {\n if (nextProps.animationId !== prevState.prevAnimationId) {\n return {\n prevAnimationId: nextProps.animationId,\n curPoints: nextProps.points,\n prevPoints: prevState.curPoints\n };\n }\n if (nextProps.points !== prevState.curPoints) {\n return {\n curPoints: nextProps.points\n };\n }\n return null;\n }\n }, {\n key: \"repeat\",\n value: function repeat(lines, count) {\n var linesUnit = lines.length % 2 !== 0 ? [].concat(_toConsumableArray(lines), [0]) : lines;\n var result = [];\n for (var i = 0; i < count; ++i) {\n result = [].concat(_toConsumableArray(result), _toConsumableArray(linesUnit));\n }\n return result;\n }\n }, {\n key: \"renderDotItem\",\n value: function renderDotItem(option, props) {\n var dotItem;\n if ( /*#__PURE__*/React.isValidElement(option)) {\n dotItem = /*#__PURE__*/React.cloneElement(option, props);\n } else if (_isFunction(option)) {\n dotItem = option(props);\n } else {\n var className = classNames('recharts-line-dot', option ? option.className : '');\n dotItem = /*#__PURE__*/React.createElement(Dot, _extends({}, props, {\n className: className\n }));\n }\n return dotItem;\n }\n }]);\n return Line;\n}(PureComponent);\n_defineProperty(Line, \"displayName\", 'Line');\n_defineProperty(Line, \"defaultProps\", {\n xAxisId: 0,\n yAxisId: 0,\n connectNulls: false,\n activeDot: true,\n dot: true,\n legendType: 'line',\n stroke: '#3182bd',\n strokeWidth: 1,\n fill: '#fff',\n points: [],\n isAnimationActive: !Global.isSsr,\n animateNewValues: true,\n animationBegin: 0,\n animationDuration: 1500,\n animationEasing: 'ease',\n hide: false,\n label: false\n});\n/**\n * Compose the data of each group\n * @param {Object} props The props from the component\n * @param {Object} xAxis The configuration of x-axis\n * @param {Object} yAxis The configuration of y-axis\n * @param {String} dataKey The unique key of a group\n * @return {Array} Composed data\n */\n_defineProperty(Line, \"getComposedData\", function (_ref4) {\n var props = _ref4.props,\n xAxis = _ref4.xAxis,\n yAxis = _ref4.yAxis,\n xAxisTicks = _ref4.xAxisTicks,\n yAxisTicks = _ref4.yAxisTicks,\n dataKey = _ref4.dataKey,\n bandSize = _ref4.bandSize,\n displayedData = _ref4.displayedData,\n offset = _ref4.offset;\n var layout = props.layout;\n var points = displayedData.map(function (entry, index) {\n var value = getValueByDataKey(entry, dataKey);\n if (layout === 'horizontal') {\n return {\n x: getCateCoordinateOfLine({\n axis: xAxis,\n ticks: xAxisTicks,\n bandSize: bandSize,\n entry: entry,\n index: index\n }),\n y: _isNil(value) ? null : yAxis.scale(value),\n value: value,\n payload: entry\n };\n }\n return {\n x: _isNil(value) ? null : xAxis.scale(value),\n y: getCateCoordinateOfLine({\n axis: yAxis,\n ticks: yAxisTicks,\n bandSize: bandSize,\n entry: entry,\n index: index\n }),\n value: value,\n payload: entry\n };\n });\n return _objectSpread({\n points: points,\n layout: layout\n }, offset);\n});","/**\n * @fileOverview Line Chart\n */\nimport { generateCategoricalChart } from './generateCategoricalChart';\nimport { Line } from '../cartesian/Line';\nimport { XAxis } from '../cartesian/XAxis';\nimport { YAxis } from '../cartesian/YAxis';\nimport { formatAxisMap } from '../util/CartesianUtils';\nexport var LineChart = generateCategoricalChart({\n chartName: 'LineChart',\n GraphicalChild: Line,\n axisComponents: [{\n axisType: 'xAxis',\n AxisComp: XAxis\n }, {\n axisType: 'yAxis',\n AxisComp: YAxis\n }],\n formatAxisMap: formatAxisMap\n});","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Box, Grid } from \"@mui/material\";\nimport api from \"../../../common/api\";\n\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { hasPermission } from \"../../../common/SecureComponent\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_SCOPES,\n} from \"../../../common/SecureComponent/permissions\";\n\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport Tabs from \"@mui/material/Tabs\";\nimport Tab from \"@mui/material/Tab\";\nimport { TabPanel } from \"../../shared/tabs\";\n\nimport LabelValuePair from \"../Common/UsageBarWrapper/LabelValuePair\";\nimport SectionTitle from \"../Common/SectionTitle\";\nimport LabelWithIcon from \"../Buckets/BucketDetails/SummaryItems/LabelWithIcon\";\nimport {\n Bar,\n BarChart,\n CartesianGrid,\n Legend,\n Line,\n LineChart,\n Tooltip,\n XAxis,\n YAxis,\n} from \"recharts\";\nimport { DisabledIcon, EnabledIcon, PageLayout } from \"mds\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\n\nimport HelpMenu from \"../HelpMenu\";\n\nconst Status = () => {\n const dispatch = useAppDispatch();\n const [curTab, setCurTab] = useState(0);\n\n const [status, setStatus] = useState(null);\n const [loadingStatus, setLoadingStatus] = useState(true);\n const [metrics, setMetrics] = useState(null);\n const [loadingMetrics, setLoadingMetrics] = useState(true);\n const [apis, setAPIs] = useState(null);\n const [loadingAPIs, setLoadingAPIs] = useState(true);\n const [version, setVersion] = useState(null);\n const [loadingVersion, setLoadingVersion] = useState(true);\n\n const displayStatus = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.KMS_STATUS,\n ]);\n const displayMetrics = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.KMS_METRICS,\n ]);\n const displayAPIs = hasPermission(CONSOLE_UI_RESOURCE, [IAM_SCOPES.KMS_APIS]);\n const displayVersion = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.KMS_Version,\n ]);\n\n useEffect(() => {\n setLoadingStatus(true);\n }, []);\n\n useEffect(() => {\n const loadMetrics = () => {\n if (displayMetrics) {\n api\n .invoke(\"GET\", `/api/v1/kms/metrics`)\n .then((result: any) => {\n if (result) {\n setMetrics(result);\n }\n setLoadingMetrics(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoadingMetrics(false);\n });\n } else {\n setLoadingMetrics(false);\n }\n };\n\n const loadAPIs = () => {\n if (displayAPIs) {\n api\n .invoke(\"GET\", `/api/v1/kms/apis`)\n .then((result: any) => {\n if (result) {\n setAPIs(result);\n }\n setLoadingAPIs(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoadingAPIs(false);\n });\n } else {\n setLoadingAPIs(false);\n }\n };\n\n const loadVersion = () => {\n if (displayVersion) {\n api\n .invoke(\"GET\", `/api/v1/kms/version`)\n .then((result: any) => {\n if (result) {\n setVersion(result);\n }\n setLoadingVersion(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoadingVersion(false);\n });\n } else {\n setLoadingVersion(false);\n }\n };\n\n const loadStatus = () => {\n if (displayStatus) {\n api\n .invoke(\"GET\", `/api/v1/kms/status`)\n .then((result: any) => {\n if (result) {\n setStatus(result);\n }\n setLoadingStatus(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoadingStatus(false);\n });\n } else {\n setLoadingStatus(false);\n }\n };\n\n if (loadingStatus) {\n loadStatus();\n }\n if (loadingMetrics) {\n loadMetrics();\n }\n if (loadingAPIs) {\n loadAPIs();\n }\n if (loadingVersion) {\n loadVersion();\n }\n }, [\n dispatch,\n displayStatus,\n loadingStatus,\n displayMetrics,\n loadingMetrics,\n displayAPIs,\n loadingAPIs,\n displayVersion,\n loadingVersion,\n ]);\n\n const statusPanel = (\n \n Status\n
\n {status && (\n \n \n \n \n \n {version && (\n \n )}\n \n \n {status.endpoints.map((e: any, i: number) => (\n \n ) : (\n \n )\n }\n label={e.url}\n />\n ))}\n
\n }\n />\n \n \n \n \n )}\n \n );\n\n const apisPanel = (\n \n Supported API endpoints\n
\n {apis && (\n \n \n \n {apis.results.map((e: any, i: number) => (\n }\n label={`${e.path} - ${e.method}`}\n />\n ))}\n \n }\n />\n \n \n )}\n
\n );\n\n const getAPIRequestsData = () => {\n return [\n { label: \"Success\", success: metrics.requestOK },\n { label: \"Failures\", failures: metrics.requestFail },\n { label: \"Errors\", errors: metrics.requestErr },\n { label: \"Active\", active: metrics.requestActive },\n ];\n };\n\n const getEventsData = () => {\n return [\n { label: \"Audit\", audit: metrics.auditEvents },\n { label: \"Errors\", errors: metrics.errorEvents },\n ];\n };\n\n const getHistogramData = () => {\n return metrics.latencyHistogram.map((h: any) => {\n return {\n ...h,\n duration: `${h.duration / 1000000}ms`,\n };\n });\n };\n\n const metricsPanel = (\n \n {metrics && (\n \n

API Requests

\n \n \n \n \n \n \n \n \n \n \n \n\n

Events

\n \n \n \n \n \n \n \n \n \n

Latency Histogram

\n {metrics.latencyHistogram && (\n \n \n \n \n \n \n \n \n )}\n
\n )}\n
\n );\n\n useEffect(() => {\n dispatch(setHelpName(\"kms_status\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n }\n />\n\n \n , newValue: number) => {\n setCurTab(newValue);\n }}\n indicatorColor=\"primary\"\n textColor=\"primary\"\n aria-label=\"cluster-tabs\"\n variant=\"scrollable\"\n scrollButtons=\"auto\"\n >\n \n \n {}}\n />\n \n\n \n \n {statusPanel}\n \n \n \n \n {apisPanel}\n \n \n \n \n {metricsPanel}\n \n \n \n \n );\n};\n\nexport default Status;\n","/**\n * @fileOverview Bar Chart\n */\nimport { generateCategoricalChart } from './generateCategoricalChart';\nimport { Bar } from '../cartesian/Bar';\nimport { XAxis } from '../cartesian/XAxis';\nimport { YAxis } from '../cartesian/YAxis';\nimport { formatAxisMap } from '../util/CartesianUtils';\nexport var BarChart = generateCategoricalChart({\n chartName: 'BarChart',\n GraphicalChild: Bar,\n defaultTooltipEventType: 'axis',\n validateTooltipEventTypes: ['axis', 'item'],\n axisComponents: [{\n axisType: 'xAxis',\n AxisComp: XAxis\n }, {\n axisType: 'yAxis',\n AxisComp: YAxis\n }],\n formatAxisMap: formatAxisMap\n});"],"names":["_ref","_ref$icon","icon","_ref$label","label","_jsxs","Box","sx","display","alignItems","gap","marginTop","children","_jsx","height","width","createStyled","_excluded","defaultTheme","createTheme","defaultCreateStyledComponent","systemStyled","name","slot","overridesResolver","props","styles","root","useThemePropsDefault","useThemePropsSystem","joinChildren","separator","childrenArray","React","toArray","filter","Boolean","reduce","output","child","index","push","length","key","concat","style","ownerState","theme","_extends","flexDirection","handleBreakpoints","resolveBreakpointValues","values","direction","breakpoints","propValue","spacing","transformer","createUnarySpacing","base","Object","keys","acc","breakpoint","directionValues","spacingValues","forEach","previousDirectionValue","deepmerge","useFlexGap","getValue","_defineProperty","margin","row","column","mergeBreakpointsInOrder","Stack","options","arguments","undefined","_options$createStyled","createStyledComponent","_options$useThemeProp","useThemeProps","_options$componentNam","componentName","StackRoot","inProps","ref","themeProps","extendSxProp","_props$component","component","_props$direction","_props$spacing","divider","className","_props$useFlexGap","other","_objectWithoutPropertiesLoose","classes","composeClasses","generateUtilityClass","as","clsx","createStack","styled","_ref$value","value","_ref$orientation","orientation","_ref$stkProps","stkProps","_ref$lblProps","lblProps","_ref$valProps","valProps","_objectSpread","xs","sm","marginRight","fontWeight","_typeof","obj","Symbol","iterator","constructor","prototype","_objectWithoutProperties","source","excluded","i","target","sourceKeys","indexOf","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","call","assign","bind","hasOwnProperty","apply","this","ownKeys","object","enumerableOnly","symbols","sym","getOwnPropertyDescriptor","enumerable","getOwnPropertyDescriptors","defineProperties","defineProperty","_toConsumableArray","arr","Array","isArray","_arrayLikeToArray","_arrayWithoutHoles","iter","from","_iterableToArray","o","minLen","n","toString","slice","test","_unsupportedIterableToArray","TypeError","_nonIterableSpread","len","arr2","_defineProperties","descriptor","configurable","writable","_toPropertyKey","_setPrototypeOf","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","valueOf","e","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","self","_assertThisInitialized","_possibleConstructorReturn","ReferenceError","getPrototypeOf","arg","input","hint","prim","toPrimitive","res","String","Number","_toPrimitive","Line","_PureComponent","subClass","superClass","create","_inherits","Constructor","protoProps","staticProps","_super","_this","instance","_classCallCheck","_len","args","_key","isAnimationFinished","totalLength","lines","lineLength","pre","next","count","Math","floor","remainLength","restLength","remainLines","sum","emptyLines","repeat","map","line","join","uniqueId","node","mainCurve","setState","onAnimationEnd","onAnimationStart","nextProps","prevState","animationId","prevAnimationId","curPoints","points","prevPoints","linesUnit","option","dotItem","_isFunction","classNames","Dot","isAnimationActive","getTotalLength","curveDom","err","needClip","clipPathId","state","_this$props","xAxis","yAxis","layout","errorBarItems","findAllByType","ErrorBar","dataPointFormatter","dataPoint","dataKey","x","y","errorVal","getValueByDataKey","payload","errorBarProps","clipPath","Layer","item","data","clipDot","_this$props2","dot","lineProps","filterProps","customDotProps","dots","entry","dotProps","r","cx","cy","renderDotItem","dotsProps","role","_this$props3","type","connectNulls","others","curveProps","fill","Curve","pathRef","_this2","_this$props4","strokeDasharray","animationBegin","animationDuration","animationEasing","animateNewValues","_this$state","Animate","begin","duration","isActive","easing","t","to","handleAnimationEnd","handleAnimationStart","prevPointsDiffFactor","stepData","prevPointIndex","prev","interpolatorX","interpolateNumber","interpolatorY","_interpolatorX","_interpolatorY","renderCurveStatically","currentStrokeDasharray","curLength","interpolator","split","num","parseFloat","getStrokeDasharray","_this$props5","_this$state2","_isEqual","renderCurveWithAnimation","_filterProps","_this$props6","hide","top","left","id","hasSinglePoint","layerClass","needClipX","allowDataOverflow","needClipY","_isNil","_ref2","strokeWidth","_ref2$r","_ref2$strokeWidth","_ref3$clipDot","isDotProps","dotSize","renderCurve","renderErrorBar","renderDots","LabelList","renderCallByParent","PureComponent","xAxisId","yAxisId","activeDot","legendType","stroke","Global","isSsr","_ref4","xAxisTicks","yAxisTicks","bandSize","displayedData","offset","getCateCoordinateOfLine","axis","ticks","scale","LineChart","generateCategoricalChart","chartName","GraphicalChild","axisComponents","axisType","AxisComp","XAxis","YAxis","formatAxisMap","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","curTab","setCurTab","_useState3","_useState4","status","setStatus","_useState5","_useState6","loadingStatus","setLoadingStatus","_useState7","_useState8","metrics","setMetrics","_useState9","_useState10","loadingMetrics","setLoadingMetrics","_useState11","_useState12","apis","setAPIs","_useState13","_useState14","loadingAPIs","setLoadingAPIs","_useState15","_useState16","version","setVersion","_useState17","_useState18","loadingVersion","setLoadingVersion","displayStatus","hasPermission","CONSOLE_UI_RESOURCE","IAM_SCOPES","KMS_STATUS","displayMetrics","KMS_METRICS","displayAPIs","KMS_APIS","displayVersion","KMS_Version","useEffect","api","invoke","then","catch","setErrorSnackMessage","statusPanel","Fragment","SectionTitle","Grid","container","gridTemplateColumns","gridAutoFlow","LabelValuePair","defaultKeyID","endpoints","LabelWithIcon","EnabledIcon","DisabledIcon","url","apisPanel","results","path","method","metricsPanel","BarChart","success","requestOK","failures","requestFail","errors","requestErr","active","requestActive","CartesianGrid","Tooltip","Legend","Bar","audit","auditEvents","errorEvents","latencyHistogram","h","right","bottom","setHelpName","PageHeaderWrapper","actions","HelpMenu","PageLayout","Tabs","onChange","newValue","indicatorColor","textColor","variant","scrollButtons","Tab","onClick","TabPanel","border","borderRadius","flexFlow","padding","defaultTooltipEventType","validateTooltipEventTypes"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/5661.e6b097aa.chunk.js b/portal-ui/build/static/js/5661.e6b097aa.chunk.js deleted file mode 100644 index 99ceb6141..000000000 --- a/portal-ui/build/static/js/5661.e6b097aa.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[5661],{84861:function(e,t,n){n(72791);var r=n(64554),i=n(80184);t.Z=function(e){var t=e.icon,n=void 0===t?null:t,a=e.label,o=void 0===a?null:a;return(0,i.jsxs)(r.Z,{sx:{display:"flex"},children:[(0,i.jsx)("div",{style:{height:16,width:16,display:"flex",alignItems:"center",marginTop:5},children:n}),(0,i.jsx)("div",{style:{marginLeft:n?5:"none"},children:o})]})}},59197:function(e,t,n){n.d(t,{Z:function(){return O}});var r=n(1413),i=n(72791),a=n(4942),o=n(63366),s=n(87462),l=n(28182),c=n(82466),u=n(94419),d=n(21217),p=(0,n(44046).ZP)(),f=n(86083),h=n(78519),m=n(85080),y=n(51184),v=n(45682),x=n(80184),b=["component","direction","spacing","divider","children","className","useFlexGap"],g=(0,m.Z)(),j=p("div",{name:"MuiStack",slot:"Root",overridesResolver:function(e,t){return t.root}});function A(e){return(0,f.Z)({props:e,name:"MuiStack",defaultTheme:g})}function k(e,t){var n=i.Children.toArray(e).filter(Boolean);return n.reduce((function(e,r,a){return e.push(r),a0?l[n[t-1]]:"column";l[e]=r}}));r=(0,c.Z)(r,(0,y.k9)({theme:n},u,(function(e,n){return t.useFlexGap?{gap:(0,v.NA)(i,e)}:{"& > :not(style) + :not(style)":(0,a.Z)({margin:0},"margin".concat((r=n?l[n]:t.direction,{row:"Left","row-reverse":"Right",column:"Top","column-reverse":"Bottom"}[r])),(0,v.NA)(i,e))};var r})))}return r=(0,y.dt)(n.breakpoints,r)};var P=n(66934),Z=n(31402),w=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.createStyledComponent,n=void 0===t?j:t,r=e.useThemeProps,a=void 0===r?A:r,c=e.componentName,p=void 0===c?"MuiStack":c,f=n(S),m=i.forwardRef((function(e,t){var n=a(e),r=(0,h.Z)(n),i=r.component,c=void 0===i?"div":i,m=r.direction,y=void 0===m?"column":m,v=r.spacing,g=void 0===v?0:v,j=r.divider,A=r.children,S=r.className,P=r.useFlexGap,Z=void 0!==P&&P,w=(0,o.Z)(r,b),E={direction:y,spacing:g,useFlexGap:Z},O=(0,u.Z)({root:["root"]},(function(e){return(0,d.Z)(p,e)}),{});return(0,x.jsx)(f,(0,s.Z)({as:c,ownerState:E,ref:t,className:(0,l.Z)(O.root,S)},w,{children:j?k(A,j):A}))}));return m}({createStyledComponent:(0,P.ZP)("div",{name:"MuiStack",slot:"Root",overridesResolver:function(e,t){return t.root}}),useThemeProps:function(e){return(0,Z.Z)({props:e,name:"MuiStack"})}}),E=w,O=function(e){var t=e.label,n=void 0===t?null:t,i=e.value,a=void 0===i?"-":i,o=e.orientation,s=void 0===o?"column":o,l=e.stkProps,c=void 0===l?{}:l,u=e.lblProps,d=void 0===u?{}:u,p=e.valProps,f=void 0===p?{}:p;return(0,x.jsxs)(E,(0,r.Z)((0,r.Z)({direction:{xs:"column",sm:s}},c),{},{children:[(0,x.jsx)("label",(0,r.Z)((0,r.Z)({style:{marginRight:5,fontWeight:600}},d),{},{children:n})),(0,x.jsx)("label",(0,r.Z)((0,r.Z)({style:{marginRight:5,fontWeight:500}},f),{},{children:a}))]}))}},35661:function(e,t,n){n.r(t),n.d(t,{default:function(){return fe}});var r=n(1413),i=n(29439),a=n(72791),o=n(61889),s=n(64554),l=n(81207),c=n(38442),u=n(56087),d=n(87995),p=n(81551),f=n(18073),h=n(43896),m=n(19847),y=n(59197),v=n(50896),x=n(84861),b=n(38725),g=n(82839),j=n(90466),A=n(12891),k=n(35667),S=n(83672),P=n(57702),Z=n(625),w=n(18111),E=n.n(w),O=n(74786),C=n.n(O),F=n(42854),T=n.n(F),D=n(98202),K=n(81694),I=n.n(K),N=n(75555),R=n(39718),L=n(46044),M=n(87970),B=n(85992),_=n(70587),$=n(77612),G=n(36768),q=n(73822),W=["type","layout","connectNulls","ref"];function z(e){return z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},z(e)}function H(e,t){if(null==e)return{};var n,r,i=function(e,t){if(null==e)return{};var n,r,i={},a=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function V(){return V=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);na){l=[].concat(J(n.slice(0,c)),[a-u]);break}var d=l.length%2===0?[0,s]:[s];return[].concat(J(o.repeat(n,i)),J(l),d).map((function(e){return"".concat(e,"px")})).join(", ")})),ie(ne(e),"id",(0,_.EL)("recharts-line-")),ie(ne(e),"pathRef",(function(t){e.mainCurve=t})),ie(ne(e),"handleAnimationEnd",(function(){e.setState({isAnimationFinished:!0}),e.props.onAnimationEnd&&e.props.onAnimationEnd()})),ie(ne(e),"handleAnimationStart",(function(){e.setState({isAnimationFinished:!1}),e.props.onAnimationStart&&e.props.onAnimationStart()})),e}return t=o,r=[{key:"getDerivedStateFromProps",value:function(e,t){return e.animationId!==t.prevAnimationId?{prevAnimationId:e.animationId,curPoints:e.points,prevPoints:t.curPoints}:e.points!==t.curPoints?{curPoints:e.points}:null}},{key:"repeat",value:function(e,t){for(var n=e.length%2!==0?[].concat(J(e),[0]):e,r=[],i=0;i0||!E()(o,r))?this.renderCurveWithAnimation(e,t):this.renderCurveStatically(r,e,t)}},{key:"render",value:function(){var e,t=this.props,n=t.hide,r=t.dot,i=t.points,o=t.className,s=t.xAxis,l=t.yAxis,c=t.top,u=t.left,d=t.width,p=t.height,f=t.isAnimationActive,h=t.id;if(n||!i||!i.length)return null;var m=this.state.isAnimationFinished,y=1===i.length,v=I()("recharts-line",o),x=s&&s.allowDataOverflow,b=l&&l.allowDataOverflow,g=x||b,j=T()(h)?this.id:h,A=null!==(e=(0,$.L6)(r))&&void 0!==e?e:{r:3,strokeWidth:2},k=A.r,S=void 0===k?3:k,P=A.strokeWidth,Z=void 0===P?2:P,w=((0,$.$k)(r)?r:{}).clipDot,E=void 0===w||w,O=2*S+Z;return a.createElement(L.m,{className:v},x||b?a.createElement("defs",null,a.createElement("clipPath",{id:"clipPath-".concat(j)},a.createElement("rect",{x:x?u:u-d/2,y:b?c:c-p/2,width:x?d:2*d,height:b?p:2*p})),!E&&a.createElement("clipPath",{id:"clipPath-dots-".concat(j)},a.createElement("rect",{x:u-O/2,y:c-O/2,width:d+O,height:p+O}))):null,!y&&this.renderCurve(g,j),this.renderErrorBar(g,j),(y||r)&&this.renderDots(g,E,j),(!f||m)&&M.e.renderCallByParent(this.props,i))}}])&&Y(t.prototype,n),r&&Y(t,r),Object.defineProperty(t,"prototype",{writable:!1}),o}(a.PureComponent);ie(oe,"displayName","Line"),ie(oe,"defaultProps",{xAxisId:0,yAxisId:0,connectNulls:!1,activeDot:!0,dot:!0,legendType:"line",stroke:"#3182bd",strokeWidth:1,fill:"#fff",points:[],isAnimationActive:!G.x.isSsr,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",hide:!1,label:!1}),ie(oe,"getComposedData",(function(e){var t=e.props,n=e.xAxis,r=e.yAxis,i=e.xAxisTicks,a=e.yAxisTicks,o=e.dataKey,s=e.bandSize,l=e.displayedData,c=e.offset,u=t.layout;return X({points:l.map((function(e,t){var l=(0,q.F$)(e,o);return"horizontal"===u?{x:(0,q.Hv)({axis:n,ticks:i,bandSize:s,entry:e,index:t}),y:T()(l)?null:r.scale(l),value:l,payload:e}:{x:T()(l)?null:n.scale(l),y:(0,q.Hv)({axis:r,ticks:a,bandSize:s,entry:e,index:t}),value:l,payload:e}})),layout:u},c)}));var se=n(93137),le=(0,Z.z)({chartName:"LineChart",GraphicalChild:oe,axisComponents:[{axisType:"xAxis",AxisComp:j.K},{axisType:"yAxis",AxisComp:A.B}],formatAxisMap:se.t9}),ce=n(29945),ue=n(47974),de=n(99670),pe=n(80184),fe=function(){var e=(0,p.TL)(),t=(0,a.useState)(0),n=(0,i.Z)(t,2),Z=n[0],w=n[1],E=(0,a.useState)(null),O=(0,i.Z)(E,2),C=O[0],F=O[1],T=(0,a.useState)(!0),D=(0,i.Z)(T,2),K=D[0],I=D[1],N=(0,a.useState)(null),R=(0,i.Z)(N,2),L=R[0],M=R[1],B=(0,a.useState)(!0),_=(0,i.Z)(B,2),$=_[0],G=_[1],q=(0,a.useState)(null),W=(0,i.Z)(q,2),z=W[0],H=W[1],V=(0,a.useState)(!0),U=(0,i.Z)(V,2),X=U[0],J=U[1],Q=(0,a.useState)(null),Y=(0,i.Z)(Q,2),ee=Y[0],te=Y[1],ne=(0,a.useState)(!0),re=(0,i.Z)(ne,2),ie=re[0],ae=re[1],se=(0,c.F)(u.C3,[u.Ft.KMS_STATUS]),fe=(0,c.F)(u.C3,[u.Ft.KMS_METRICS]),he=(0,c.F)(u.C3,[u.Ft.KMS_APIS]),me=(0,c.F)(u.C3,[u.Ft.KMS_Version]);(0,a.useEffect)((function(){I(!0)}),[]),(0,a.useEffect)((function(){K&&(se?l.Z.invoke("GET","/api/v1/kms/status").then((function(e){e&&F(e),I(!1)})).catch((function(t){e((0,d.Ih)(t)),I(!1)})):I(!1)),$&&(fe?l.Z.invoke("GET","/api/v1/kms/metrics").then((function(e){e&&M(e),G(!1)})).catch((function(t){e((0,d.Ih)(t)),G(!1)})):G(!1)),X&&(he?l.Z.invoke("GET","/api/v1/kms/apis").then((function(e){e&&H(e),J(!1)})).catch((function(t){e((0,d.Ih)(t)),J(!1)})):J(!1)),ie&&(me?l.Z.invoke("GET","/api/v1/kms/version").then((function(e){e&&te(e),ae(!1)})).catch((function(t){e((0,d.Ih)(t)),ae(!1)})):ae(!1))}),[e,se,K,fe,$,he,X,me,ie]);var ye=(0,pe.jsxs)(a.Fragment,{children:[(0,pe.jsx)(v.Z,{children:"Status"}),(0,pe.jsx)("br",{}),C&&(0,pe.jsx)(o.ZP,{container:!0,spacing:1,children:(0,pe.jsx)(o.ZP,{item:!0,xs:12,children:(0,pe.jsx)(s.Z,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"2fr 1fr"},gridAutoFlow:{xs:"dense",sm:"row"},gap:2},children:(0,pe.jsxs)(s.Z,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"2fr 1fr"},gridAutoFlow:{xs:"dense",sm:"row"},gap:2},children:[(0,pe.jsx)(y.Z,{label:"Name:",value:C.name}),ee&&(0,pe.jsx)(y.Z,{label:"Version:",value:ee.version}),(0,pe.jsx)(y.Z,{label:"Default Key ID:",value:C.defaultKeyID}),(0,pe.jsx)(y.Z,{label:"Key Management Service Endpoints:",value:(0,pe.jsx)(a.Fragment,{children:C.endpoints.map((function(e,t){return(0,pe.jsx)(x.Z,{icon:"online"===e.status?(0,pe.jsx)(ce.E31,{}):(0,pe.jsx)(ce.dRf,{}),label:e.url},t)}))})})]})})})})]}),ve=(0,pe.jsxs)(a.Fragment,{children:[(0,pe.jsx)(v.Z,{children:"Supported API endpoints"}),(0,pe.jsx)("br",{}),z&&(0,pe.jsx)(o.ZP,{container:!0,spacing:1,children:(0,pe.jsx)(o.ZP,{item:!0,xs:12,children:(0,pe.jsx)(y.Z,{label:"",value:(0,pe.jsx)(s.Z,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"2fr 1fr"},gridAutoFlow:{xs:"dense",sm:"row"},gap:2},children:z.results.map((function(e,t){return(0,pe.jsx)(x.Z,{icon:(0,pe.jsx)(ce.E31,{}),label:"".concat(e.path," - ").concat(e.method)},t)}))})})})})]}),xe=(0,pe.jsx)(a.Fragment,{children:L&&(0,pe.jsxs)(a.Fragment,{children:[(0,pe.jsx)("h3",{children:"API Requests"}),(0,pe.jsxs)(b.v,{width:730,height:250,data:[{label:"Success",success:L.requestOK},{label:"Failures",failures:L.requestFail},{label:"Errors",errors:L.requestErr},{label:"Active",active:L.requestActive}],children:[(0,pe.jsx)(g.q,{strokeDasharray:"3 3"}),(0,pe.jsx)(j.K,{dataKey:"label"}),(0,pe.jsx)(A.B,{}),(0,pe.jsx)(k.u,{}),(0,pe.jsx)(S.D,{}),(0,pe.jsx)(P.$,{dataKey:"success",fill:"green"}),(0,pe.jsx)(P.$,{dataKey:"failures",fill:"red"}),(0,pe.jsx)(P.$,{dataKey:"errors",fill:"black"}),(0,pe.jsx)(P.$,{dataKey:"active",fill:"#8884d8"})]}),(0,pe.jsx)("h3",{children:"Events"}),(0,pe.jsxs)(b.v,{width:730,height:250,data:[{label:"Audit",audit:L.auditEvents},{label:"Errors",errors:L.errorEvents}],children:[(0,pe.jsx)(g.q,{strokeDasharray:"3 3"}),(0,pe.jsx)(j.K,{dataKey:"label"}),(0,pe.jsx)(A.B,{}),(0,pe.jsx)(k.u,{}),(0,pe.jsx)(S.D,{}),(0,pe.jsx)(P.$,{dataKey:"audit",fill:"green"}),(0,pe.jsx)(P.$,{dataKey:"errors",fill:"black"})]}),(0,pe.jsx)("h3",{children:"Latency Histogram"}),L.latencyHistogram&&(0,pe.jsxs)(le,{width:730,height:250,data:L.latencyHistogram.map((function(e){return(0,r.Z)((0,r.Z)({},e),{},{duration:"".concat(e.duration/1e6,"ms")})})),margin:{top:5,right:30,left:20,bottom:5},children:[(0,pe.jsx)(g.q,{strokeDasharray:"3 3"}),(0,pe.jsx)(j.K,{dataKey:"duration"}),(0,pe.jsx)(A.B,{}),(0,pe.jsx)(k.u,{}),(0,pe.jsx)(S.D,{}),(0,pe.jsx)(oe,{type:"monotone",dataKey:"total",stroke:"#8884d8",name:"Requests that took T ms or less"})]})]})});return(0,a.useEffect)((function(){e((0,d.Sc)("kms_status"))}),[]),(0,pe.jsxs)(a.Fragment,{children:[(0,pe.jsx)(ue.Z,{label:"Key Management Service",actions:(0,pe.jsx)(de.Z,{})}),(0,pe.jsxs)(ce.Xgh,{children:[(0,pe.jsxs)(f.Z,{value:Z,onChange:function(e,t){w(t)},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[(0,pe.jsx)(h.Z,{label:"Status",id:"simple-tab-0","aria-controls":"simple-tabpanel-0"}),(0,pe.jsx)(h.Z,{label:"APIs",id:"simple-tab-1","aria-controls":"simple-tabpanel-1"}),(0,pe.jsx)(h.Z,{label:"Metrics",id:"simple-tab-2","aria-controls":"simple-tabpanel-2",onClick:function(){}})]}),(0,pe.jsx)(m.x,{index:0,value:Z,children:(0,pe.jsx)(s.Z,{sx:{border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"43px"},children:ye})}),(0,pe.jsx)(m.x,{index:1,value:Z,children:(0,pe.jsx)(s.Z,{sx:{border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"43px"},children:ve})}),(0,pe.jsx)(m.x,{index:2,value:Z,children:(0,pe.jsx)(s.Z,{sx:{border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"43px"},children:xe})})]})]})}},38725:function(e,t,n){n.d(t,{v:function(){return l}});var r=n(625),i=n(57702),a=n(90466),o=n(12891),s=n(93137),l=(0,r.z)({chartName:"BarChart",GraphicalChild:i.$,defaultTooltipEventType:"axis",validateTooltipEventTypes:["axis","item"],axisComponents:[{axisType:"xAxis",AxisComp:a.K},{axisType:"yAxis",AxisComp:o.B}],formatAxisMap:s.t9})}}]); -//# sourceMappingURL=5661.e6b097aa.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/5702.084d8254.chunk.js b/portal-ui/build/static/js/5702.084d8254.chunk.js new file mode 100644 index 000000000..1ba3727bf --- /dev/null +++ b/portal-ui/build/static/js/5702.084d8254.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[5702],{25702:function(e,t,n){n.r(t);var i=n(29439),s=n(72791),o=n(26181),r=n.n(o),c=n(78687),l=n(57689),a=n(29945),u=n(31776),d=n(82342),f=n(38442),b=n(56087),x=n(87995),h=n(9859),m=n(81551),j=n(75578),S=n(27454),p=n(80184),v=(0,j.Z)(s.lazy((function(){return n.e(455).then(n.bind(n,80455))}))),_=(0,j.Z)(s.lazy((function(){return Promise.all([n.e(5473),n.e(1715),n.e(5994),n.e(7391),n.e(8941),n.e(2260),n.e(2661)]).then(n.bind(n,82661))})));t.default=function(){var e=(0,m.TL)(),t=(0,l.UO)(),n=(0,c.v9)(h.HQ),o=(0,s.useState)(!1),j=(0,i.Z)(o,2),E=j[0],k=j[1],T=(0,s.useState)(!0),F=(0,i.Z)(T,2),I=F[0],N=F[1],C=(0,s.useState)([]),O=(0,i.Z)(C,2),A=O[0],Z=O[1],g=(0,s.useState)(!1),y=(0,i.Z)(g,2),K=y[0],P=y[1],B=(0,s.useState)(null),U=(0,i.Z)(B,2),G=U[0],M=U[1],w=t.bucketName||"",z=(0,f.F)(w,[b.Ft.S3_GET_BUCKET_NOTIFICATIONS,b.Ft.S3_GET_ACTIONS]);(0,s.useEffect)((function(){n&&N(!0)}),[n,N]),(0,s.useEffect)((function(){e((0,x.Sc)("bucket_detail_events"))}),[]),(0,s.useEffect)((function(){I&&(z?u.h.buckets.listBucketEvents(w).then((function(e){var t=r()(e.data,"events",[]);N(!1),Z(t||[])})).catch((function(t){N(!1),e((0,x.Ih)((0,d.g)(t.error)))})):N(!1))}),[I,e,w,z]);var R=[{type:"delete",onClick:function(e){P(!0),M(e)}}];return(0,p.jsxs)(s.Fragment,{children:[K&&(0,p.jsx)(v,{deleteOpen:K,selectedBucket:w,bucketEvent:G,closeDeleteModalAndRefresh:function(e){P(!1),e&&N(!0)}}),E&&(0,p.jsx)(_,{open:E,selectedBucket:w,closeModalAndRefresh:function(){k(!1),N(!0)}}),(0,p.jsx)(a.NZf,{separator:!0,sx:{marginBottom:15},actions:(0,p.jsx)(f.s,{scopes:[b.Ft.S3_PUT_BUCKET_NOTIFICATIONS,b.Ft.S3_PUT_ACTIONS,b.Ft.ADMIN_SERVER_INFO],resource:w,matchAll:!0,errorProps:{disabled:!0},children:(0,p.jsx)(S.Z,{tooltip:"Subscribe to Event",children:(0,p.jsx)(a.zxk,{id:"Subscribe-bucket-event",onClick:function(){k(!0)},label:"Subscribe to Event",icon:(0,p.jsx)(a.dtP,{}),variant:"callAction"})})}),children:"Events"}),(0,p.jsxs)(a.rjZ,{container:!0,children:[(0,p.jsx)(a.rjZ,{item:!0,xs:12,children:(0,p.jsx)(f.s,{scopes:[b.Ft.S3_GET_BUCKET_NOTIFICATIONS,b.Ft.S3_GET_ACTIONS],resource:w,errorProps:{disabled:!0},children:(0,p.jsx)(a.wQF,{itemActions:R,columns:[{label:"SQS",elementKey:"arn"},{label:"Events",elementKey:"events",renderFunction:function(e){return(0,p.jsx)(s.Fragment,{children:e.join(", ")})}},{label:"Prefix",elementKey:"prefix"},{label:"Suffix",elementKey:"suffix"}],isLoading:I,records:A,entityName:"Events",idField:"id",customPaperHeight:"400px"})})}),!I&&(0,p.jsxs)(a.rjZ,{item:!0,xs:12,children:[(0,p.jsx)("br",{}),(0,p.jsx)(a.KfX,{title:"Event Notifications",iconComponent:(0,p.jsx)(a.cCG,{}),help:(0,p.jsxs)(s.Fragment,{children:["MinIO bucket notifications allow administrators to send notifications to supported external services on certain object or bucket events. MinIO supports bucket and object-level S3 events similar to the Amazon S3 Event Notifications.",(0,p.jsx)("br",{}),(0,p.jsx)("br",{}),"You can learn more at our"," ",(0,p.jsx)("a",{href:"https://min.io/docs/minio/linux/administration/monitoring/bucket-notifications.html?ref=con",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})]})]})]})}}}]); +//# sourceMappingURL=5702.084d8254.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/5702.084d8254.chunk.js.map b/portal-ui/build/static/js/5702.084d8254.chunk.js.map new file mode 100644 index 000000000..3fd0c4260 --- /dev/null +++ b/portal-ui/build/static/js/5702.084d8254.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/5702.084d8254.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/BucketEventsPanel.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport { useParams } from \"react-router-dom\";\nimport {\n AddIcon,\n Button,\n HelpBox,\n LambdaIcon,\n DataTable,\n Grid,\n SectionTitle,\n} from \"mds\";\nimport { api } from \"api\";\nimport { NotificationConfig } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { selBucketDetailsLoading } from \"./bucketDetailsSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport withSuspense from \"../../Common/Components/withSuspense\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst DeleteEvent = withSuspense(React.lazy(() => import(\"./DeleteEvent\")));\nconst AddEvent = withSuspense(React.lazy(() => import(\"./AddEvent\")));\n\nconst BucketEventsPanel = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n\n const [addEventScreenOpen, setAddEventScreenOpen] = useState(false);\n const [loadingEvents, setLoadingEvents] = useState(true);\n const [records, setRecords] = useState([]);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [selectedEvent, setSelectedEvent] = useState(\n null,\n );\n\n const bucketName = params.bucketName || \"\";\n\n const displayEvents = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n\n useEffect(() => {\n if (loadingBucket) {\n setLoadingEvents(true);\n }\n }, [loadingBucket, setLoadingEvents]);\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_detail_events\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (loadingEvents) {\n if (displayEvents) {\n api.buckets\n .listBucketEvents(bucketName)\n .then((res) => {\n const events = get(res.data, \"events\", []);\n setLoadingEvents(false);\n setRecords(events || []);\n })\n .catch((err) => {\n setLoadingEvents(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n } else {\n setLoadingEvents(false);\n }\n }\n }, [loadingEvents, dispatch, bucketName, displayEvents]);\n\n const eventsDisplay = (events: string[]) => {\n return {events.join(\", \")};\n };\n\n const confirmDeleteEvent = (evnt: NotificationConfig) => {\n setDeleteOpen(true);\n setSelectedEvent(evnt);\n };\n\n const closeAddEventAndRefresh = () => {\n setAddEventScreenOpen(false);\n setLoadingEvents(true);\n };\n\n const closeDeleteModalAndRefresh = (refresh: boolean) => {\n setDeleteOpen(false);\n if (refresh) {\n setLoadingEvents(true);\n }\n };\n\n const tableActions = [{ type: \"delete\", onClick: confirmDeleteEvent }];\n\n return (\n \n {deleteOpen && (\n \n )}\n {addEventScreenOpen && (\n \n )}\n\n \n \n {\n setAddEventScreenOpen(true);\n }}\n label={\"Subscribe to Event\"}\n icon={}\n variant={\"callAction\"}\n />\n \n \n }\n >\n Events\n \n\n \n \n \n \n \n \n {!loadingEvents && (\n \n
\n }\n help={\n \n MinIO bucket notifications allow administrators to send\n notifications to supported external services on certain object\n or bucket events. MinIO supports bucket and object-level S3\n events similar to the Amazon S3 Event Notifications.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n )}\n
\n
\n );\n};\n\nexport default BucketEventsPanel;\n"],"names":["DeleteEvent","withSuspense","React","AddEvent","dispatch","useAppDispatch","params","useParams","loadingBucket","useSelector","selBucketDetailsLoading","_useState","useState","_useState2","_slicedToArray","addEventScreenOpen","setAddEventScreenOpen","_useState3","_useState4","loadingEvents","setLoadingEvents","_useState5","_useState6","records","setRecords","_useState7","_useState8","deleteOpen","setDeleteOpen","_useState9","_useState10","selectedEvent","setSelectedEvent","bucketName","displayEvents","hasPermission","IAM_SCOPES","S3_GET_BUCKET_NOTIFICATIONS","S3_GET_ACTIONS","useEffect","setHelpName","api","buckets","listBucketEvents","then","res","events","get","data","catch","err","setErrorSnackMessage","errorToHandler","error","tableActions","type","onClick","evnt","_jsxs","Fragment","children","_jsx","selectedBucket","bucketEvent","closeDeleteModalAndRefresh","refresh","open","closeModalAndRefresh","SectionTitle","separator","sx","marginBottom","actions","SecureComponent","scopes","S3_PUT_BUCKET_NOTIFICATIONS","S3_PUT_ACTIONS","ADMIN_SERVER_INFO","resource","matchAll","errorProps","disabled","TooltipWrapper","tooltip","Button","id","label","icon","AddIcon","variant","Grid","container","item","xs","DataTable","itemActions","columns","elementKey","renderFunction","join","isLoading","entityName","idField","customPaperHeight","HelpBox","title","iconComponent","LambdaIcon","help","href","target","rel"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/5702.681d36db.chunk.js b/portal-ui/build/static/js/5702.681d36db.chunk.js deleted file mode 100644 index 9c9d26f3d..000000000 --- a/portal-ui/build/static/js/5702.681d36db.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[5702],{25702:function(e,t,n){n.r(t);var i=n(29439),s=n(72791),r=n(26181),o=n.n(r),c=n(78687),l=n(57689),a=n(29945),u=n(31776),d=n(82342),f=n(23814),x=n(38442),h=n(56087),b=n(87995),m=n(9859),j=n(81551),S=n(60680),p=n(75578),v=n(27454),_=n(80184),E=(0,p.Z)(s.lazy((function(){return n.e(455).then(n.bind(n,80455))}))),k=(0,p.Z)(s.lazy((function(){return Promise.all([n.e(5994),n.e(5473),n.e(7391),n.e(6993),n.e(2260),n.e(2661)]).then(n.bind(n,82661))})));t.default=function(){var e=(0,j.TL)(),t=(0,l.UO)(),n=(0,c.v9)(m.HQ),r=(0,s.useState)(!1),p=(0,i.Z)(r,2),T=p[0],F=p[1],I=(0,s.useState)(!0),N=(0,i.Z)(I,2),Z=N[0],C=N[1],O=(0,s.useState)([]),A=(0,i.Z)(O,2),g=A[0],y=A[1],K=(0,s.useState)(!1),P=(0,i.Z)(K,2),B=P[0],U=P[1],z=(0,s.useState)(null),G=(0,i.Z)(z,2),M=G[0],R=G[1],w=t.bucketName||"",Q=(0,x.F)(w,[h.Ft.S3_GET_BUCKET_NOTIFICATIONS,h.Ft.S3_GET_ACTIONS]);(0,s.useEffect)((function(){n&&C(!0)}),[n,C]),(0,s.useEffect)((function(){e((0,b.Sc)("bucket_detail_events"))}),[]),(0,s.useEffect)((function(){Z&&(Q?u.h.buckets.listBucketEvents(w).then((function(e){var t=o()(e.data,"events",[]);C(!1),y(t||[])})).catch((function(t){C(!1),e((0,b.Ih)((0,d.g)(t.error)))})):C(!1))}),[Z,e,w,Q]);var D=[{type:"delete",onClick:function(e){U(!0),R(e)}}];return(0,_.jsxs)(s.Fragment,{children:[B&&(0,_.jsx)(E,{deleteOpen:B,selectedBucket:w,bucketEvent:M,closeDeleteModalAndRefresh:function(e){U(!1),e&&C(!0)}}),T&&(0,_.jsx)(k,{open:T,selectedBucket:w,closeModalAndRefresh:function(){F(!1),C(!0)}}),(0,_.jsxs)(a.rjZ,{container:!0,children:[(0,_.jsxs)(a.rjZ,{item:!0,xs:12,sx:f.OR.actionsTray,children:[(0,_.jsx)(S.Z,{children:"Events"}),(0,_.jsx)(x.s,{scopes:[h.Ft.S3_PUT_BUCKET_NOTIFICATIONS,h.Ft.S3_PUT_ACTIONS,h.Ft.ADMIN_SERVER_INFO],resource:w,matchAll:!0,errorProps:{disabled:!0},children:(0,_.jsx)(v.Z,{tooltip:"Subscribe to Event",children:(0,_.jsx)(a.zxk,{id:"Subscribe-bucket-event",onClick:function(){F(!0)},label:"Subscribe to Event",icon:(0,_.jsx)(a.dtP,{}),variant:"callAction"})})})]}),(0,_.jsx)(a.rjZ,{item:!0,xs:12,children:(0,_.jsx)(x.s,{scopes:[h.Ft.S3_GET_BUCKET_NOTIFICATIONS,h.Ft.S3_GET_ACTIONS],resource:w,errorProps:{disabled:!0},children:(0,_.jsx)(a.wQF,{itemActions:D,columns:[{label:"SQS",elementKey:"arn"},{label:"Events",elementKey:"events",renderFunction:function(e){return(0,_.jsx)(s.Fragment,{children:e.join(", ")})}},{label:"Prefix",elementKey:"prefix"},{label:"Suffix",elementKey:"suffix"}],isLoading:Z,records:g,entityName:"Events",idField:"id",customPaperHeight:"400px"})})}),!Z&&(0,_.jsxs)(a.rjZ,{item:!0,xs:12,children:[(0,_.jsx)("br",{}),(0,_.jsx)(a.KfX,{title:"Event Notifications",iconComponent:(0,_.jsx)(a.cCG,{}),help:(0,_.jsxs)(s.Fragment,{children:["MinIO bucket notifications allow administrators to send notifications to supported external services on certain object or bucket events. MinIO supports bucket and object-level S3 events similar to the Amazon S3 Event Notifications.",(0,_.jsx)("br",{}),(0,_.jsx)("br",{}),"You can learn more at our"," ",(0,_.jsx)("a",{href:"https://min.io/docs/minio/linux/administration/monitoring/bucket-notifications.html?ref=con",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})]})]})]})}},60680:function(e,t,n){n(72791);var i=n(11135),s=n(25787),r=n(80184);t.Z=(0,s.Z)((function(e){return(0,i.Z)({root:{padding:0,margin:0,fontSize:".9rem"}})}))((function(e){var t=e.classes,n=e.children;return(0,r.jsx)("h1",{className:t.root,children:n})}))}}]); -//# sourceMappingURL=5702.681d36db.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/5702.681d36db.chunk.js.map b/portal-ui/build/static/js/5702.681d36db.chunk.js.map deleted file mode 100644 index d0f6c3df4..000000000 --- a/portal-ui/build/static/js/5702.681d36db.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/5702.681d36db.chunk.js","mappings":"sUAqCMA,GAAcC,EAAAA,EAAAA,GAAaC,EAAAA,MAAW,kBAAM,8BAAuB,KACnEC,GAAWF,EAAAA,EAAAA,GAAaC,EAAAA,MAAW,kBAAM,gGAAoB,KAuLnE,UArL0B,WACxB,IAAME,GAAWC,EAAAA,EAAAA,MACXC,GAASC,EAAAA,EAAAA,MAETC,GAAgBC,EAAAA,EAAAA,IAAYC,EAAAA,IAElCC,GAAoDC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAArEI,EAAkBF,EAAA,GAAEG,EAAqBH,EAAA,GAChDI,GAA0CL,EAAAA,EAAAA,WAAkB,GAAKM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAA1DE,EAAaD,EAAA,GAAEE,EAAgBF,EAAA,GACtCG,GAA8BT,EAAAA,EAAAA,UAA+B,IAAGU,GAAAR,EAAAA,EAAAA,GAAAO,EAAA,GAAzDE,EAAOD,EAAA,GAAEE,EAAUF,EAAA,GAC1BG,GAAoCb,EAAAA,EAAAA,WAAkB,GAAMc,GAAAZ,EAAAA,EAAAA,GAAAW,EAAA,GAArDE,EAAUD,EAAA,GAAEE,EAAaF,EAAA,GAChCG,GAA0CjB,EAAAA,EAAAA,UACxC,MACDkB,GAAAhB,EAAAA,EAAAA,GAAAe,EAAA,GAFME,EAAaD,EAAA,GAAEE,EAAgBF,EAAA,GAIhCG,EAAa3B,EAAO2B,YAAc,GAElCC,GAAgBC,EAAAA,EAAAA,GAAcF,EAAY,CAC9CG,EAAAA,GAAWC,4BACXD,EAAAA,GAAWE,kBAGbC,EAAAA,EAAAA,YAAU,WACJ/B,GACFY,GAAiB,EAErB,GAAG,CAACZ,EAAeY,KAEnBmB,EAAAA,EAAAA,YAAU,WACRnC,GAASoC,EAAAA,EAAAA,IAAY,wBAEvB,GAAG,KAEHD,EAAAA,EAAAA,YAAU,WACJpB,IACEe,EACFO,EAAAA,EAAIC,QACDC,iBAAiBV,GACjBW,MAAK,SAACC,GACL,IAAMC,EAASC,IAAIF,EAAIG,KAAM,SAAU,IACvC5B,GAAiB,GACjBI,EAAWsB,GAAU,GACvB,IACCG,OAAM,SAACC,GACN9B,GAAiB,GACjBhB,GAAS+C,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,EAAIG,QACnD,IAEFjC,GAAiB,GAGvB,GAAG,CAACD,EAAef,EAAU6B,EAAYC,IAEzC,IAqBMoB,EAAe,CAAC,CAAEC,KAAM,SAAUC,QAjBb,SAACC,GAC1B7B,GAAc,GACdI,EAAiByB,EACnB,IAgBA,OACEC,EAAAA,EAAAA,MAACC,EAAAA,SAAQ,CAAAC,SAAA,CACNjC,IACCkC,EAAAA,EAAAA,KAAC7D,EAAW,CACV2B,WAAYA,EACZmC,eAAgB7B,EAChB8B,YAAahC,EACbiC,2BAhB2B,SAACC,GAClCrC,GAAc,GACVqC,GACF7C,GAAiB,EAErB,IAcKL,IACC8C,EAAAA,EAAAA,KAAC1D,EAAQ,CACP+D,KAAMnD,EACN+C,eAAgB7B,EAChBkC,qBA5BwB,WAC9BnD,GAAsB,GACtBI,GAAiB,EACnB,KA6BIsC,EAAAA,EAAAA,MAACU,EAAAA,IAAI,CAACC,WAAS,EAAAT,SAAA,EACbF,EAAAA,EAAAA,MAACU,EAAAA,IAAI,CAACE,MAAI,EAACC,GAAI,GAAIC,GAAIC,EAAAA,GAAYA,YAAYb,SAAA,EAC7CC,EAAAA,EAAAA,KAACa,EAAAA,EAAU,CAAAd,SAAC,YACZC,EAAAA,EAAAA,KAACc,EAAAA,EAAe,CACdC,OAAQ,CACNxC,EAAAA,GAAWyC,4BACXzC,EAAAA,GAAW0C,eACX1C,EAAAA,GAAW2C,mBAEbC,SAAU/C,EACVgD,UAAQ,EACRC,WAAY,CAAEC,UAAU,GAAOvB,UAE/BC,EAAAA,EAAAA,KAACuB,EAAAA,EAAc,CAACC,QAAS,qBAAqBzB,UAC5CC,EAAAA,EAAAA,KAACyB,EAAAA,IAAM,CACLC,GAAI,yBACJ/B,QAAS,WACPxC,GAAsB,EACxB,EACAwE,MAAO,qBACPC,MAAM5B,EAAAA,EAAAA,KAAC6B,EAAAA,IAAO,IACdC,QAAS,uBAKjB9B,EAAAA,EAAAA,KAACO,EAAAA,IAAI,CAACE,MAAI,EAACC,GAAI,GAAGX,UAChBC,EAAAA,EAAAA,KAACc,EAAAA,EAAe,CACdC,OAAQ,CACNxC,EAAAA,GAAWC,4BACXD,EAAAA,GAAWE,gBAEb0C,SAAU/C,EACViD,WAAY,CAAEC,UAAU,GAAOvB,UAE/BC,EAAAA,EAAAA,KAAC+B,EAAAA,IAAS,CACRC,YAAavC,EACbwC,QAAS,CACP,CAAEN,MAAO,MAAOO,WAAY,OAC5B,CACEP,MAAO,SACPO,WAAY,SACZC,eAnFM,SAAClD,GACrB,OAAOe,EAAAA,EAAAA,KAACF,EAAAA,SAAQ,CAAAC,SAAEd,EAAOmD,KAAK,OAChC,GAmFc,CAAET,MAAO,SAAUO,WAAY,UAC/B,CAAEP,MAAO,SAAUO,WAAY,WAEjCG,UAAW/E,EACXI,QAASA,EACT4E,WAAW,SACXC,QAAQ,KACRC,kBAAmB,eAIvBlF,IACAuC,EAAAA,EAAAA,MAACU,EAAAA,IAAI,CAACE,MAAI,EAACC,GAAI,GAAGX,SAAA,EAChBC,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAACyC,EAAAA,IAAO,CACNC,MAAO,sBACPC,eAAe3C,EAAAA,EAAAA,KAAC4C,EAAAA,IAAU,IAC1BC,MACEhD,EAAAA,EAAAA,MAACC,EAAAA,SAAQ,CAAAC,SAAA,CAAC,2OAKRC,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,SAAM,4BACoB,KAC1BA,EAAAA,EAAAA,KAAA,KACE8C,KAAK,8FACLC,OAAO,SACPC,IAAI,WAAUjD,SACf,kBAEG,iBAUtB,C,sECnLA,KAAekD,EAAAA,EAAAA,IAlBA,SAACC,GAAY,OAC1BC,EAAAA,EAAAA,GAAa,CACXC,KAAM,CACJC,QAAS,EACTC,OAAQ,EACRC,SAAU,UAEX,GAWL,EAJmB,SAAHC,GAA4C,IAAtCC,EAAOD,EAAPC,QAAS1D,EAAQyD,EAARzD,SAC7B,OAAOC,EAAAA,EAAAA,KAAA,MAAI0D,UAAWD,EAAQL,KAAKrD,SAAEA,GACvC,G","sources":["screens/Console/Buckets/BucketDetails/BucketEventsPanel.tsx","screens/Console/Common/PanelTitle/PanelTitle.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport { useParams } from \"react-router-dom\";\nimport { AddIcon, Button, HelpBox, LambdaIcon, DataTable, Grid } from \"mds\";\nimport { api } from \"api\";\nimport { NotificationConfig } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport { actionsTray } from \"../../Common/FormComponents/common/styleLibrary\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { selBucketDetailsLoading } from \"./bucketDetailsSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport PanelTitle from \"../../Common/PanelTitle/PanelTitle\";\nimport withSuspense from \"../../Common/Components/withSuspense\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst DeleteEvent = withSuspense(React.lazy(() => import(\"./DeleteEvent\")));\nconst AddEvent = withSuspense(React.lazy(() => import(\"./AddEvent\")));\n\nconst BucketEventsPanel = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n\n const [addEventScreenOpen, setAddEventScreenOpen] = useState(false);\n const [loadingEvents, setLoadingEvents] = useState(true);\n const [records, setRecords] = useState([]);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [selectedEvent, setSelectedEvent] = useState(\n null,\n );\n\n const bucketName = params.bucketName || \"\";\n\n const displayEvents = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n\n useEffect(() => {\n if (loadingBucket) {\n setLoadingEvents(true);\n }\n }, [loadingBucket, setLoadingEvents]);\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_detail_events\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (loadingEvents) {\n if (displayEvents) {\n api.buckets\n .listBucketEvents(bucketName)\n .then((res) => {\n const events = get(res.data, \"events\", []);\n setLoadingEvents(false);\n setRecords(events || []);\n })\n .catch((err) => {\n setLoadingEvents(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n } else {\n setLoadingEvents(false);\n }\n }\n }, [loadingEvents, dispatch, bucketName, displayEvents]);\n\n const eventsDisplay = (events: string[]) => {\n return {events.join(\", \")};\n };\n\n const confirmDeleteEvent = (evnt: NotificationConfig) => {\n setDeleteOpen(true);\n setSelectedEvent(evnt);\n };\n\n const closeAddEventAndRefresh = () => {\n setAddEventScreenOpen(false);\n setLoadingEvents(true);\n };\n\n const closeDeleteModalAndRefresh = (refresh: boolean) => {\n setDeleteOpen(false);\n if (refresh) {\n setLoadingEvents(true);\n }\n };\n\n const tableActions = [{ type: \"delete\", onClick: confirmDeleteEvent }];\n\n return (\n \n {deleteOpen && (\n \n )}\n {addEventScreenOpen && (\n \n )}\n\n \n \n Events\n \n \n {\n setAddEventScreenOpen(true);\n }}\n label={\"Subscribe to Event\"}\n icon={}\n variant={\"callAction\"}\n />\n \n \n \n \n \n \n \n \n {!loadingEvents && (\n \n
\n }\n help={\n \n MinIO bucket notifications allow administrators to send\n notifications to supported external services on certain object\n or bucket events. MinIO supports bucket and object-level S3\n events similar to the Amazon S3 Event Notifications.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n )}\n
\n
\n );\n};\n\nexport default BucketEventsPanel;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { IconButtonProps } from \"@mui/material\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n root: {\n padding: 0,\n margin: 0,\n fontSize: \".9rem\",\n },\n });\n\ninterface IPanelTitle extends IconButtonProps {\n classes: any;\n children: any;\n}\n\nconst PanelTitle = ({ classes, children }: IPanelTitle) => {\n return

{children}

;\n};\n\nexport default withStyles(styles)(PanelTitle);\n"],"names":["DeleteEvent","withSuspense","React","AddEvent","dispatch","useAppDispatch","params","useParams","loadingBucket","useSelector","selBucketDetailsLoading","_useState","useState","_useState2","_slicedToArray","addEventScreenOpen","setAddEventScreenOpen","_useState3","_useState4","loadingEvents","setLoadingEvents","_useState5","_useState6","records","setRecords","_useState7","_useState8","deleteOpen","setDeleteOpen","_useState9","_useState10","selectedEvent","setSelectedEvent","bucketName","displayEvents","hasPermission","IAM_SCOPES","S3_GET_BUCKET_NOTIFICATIONS","S3_GET_ACTIONS","useEffect","setHelpName","api","buckets","listBucketEvents","then","res","events","get","data","catch","err","setErrorSnackMessage","errorToHandler","error","tableActions","type","onClick","evnt","_jsxs","Fragment","children","_jsx","selectedBucket","bucketEvent","closeDeleteModalAndRefresh","refresh","open","closeModalAndRefresh","Grid","container","item","xs","sx","actionsTray","PanelTitle","SecureComponent","scopes","S3_PUT_BUCKET_NOTIFICATIONS","S3_PUT_ACTIONS","ADMIN_SERVER_INFO","resource","matchAll","errorProps","disabled","TooltipWrapper","tooltip","Button","id","label","icon","AddIcon","variant","DataTable","itemActions","columns","elementKey","renderFunction","join","isLoading","entityName","idField","customPaperHeight","HelpBox","title","iconComponent","LambdaIcon","help","href","target","rel","withStyles","theme","createStyles","root","padding","margin","fontSize","_ref","classes","className"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/5707.f0758fd6.chunk.js b/portal-ui/build/static/js/5707.f0758fd6.chunk.js new file mode 100644 index 000000000..3e2b8a313 --- /dev/null +++ b/portal-ui/build/static/js/5707.f0758fd6.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[5707],{85707:function(e,t,n){n.r(t),n.d(t,{default:function(){return R}});var s=n(29439),i=n(72791),l=n(26181),a=n.n(l),c=n(78687),r=n(57689),o=n(31776),u=n(82342),d=n(29945),x=n(23814),f=n(56087),h=n(38442),p=n(87995),j=n(9859),m=n(81551),v=n(91685),S=n(75578),_=n(84861),T=n(1413),g=n(45987),E=n(80184),b=["disabled","onClick"],C=function(e){var t=e.disabled,n=e.onClick,s=(0,g.Z)(e,b);return(0,E.jsx)(d.hU,(0,T.Z)((0,T.Z)({size:"small",disabled:t,onClick:n},s),{},{children:(0,E.jsx)(d.dY8,{})}))},I=function(e){var t=e.resourceName,n=e.iamScopes,s=e.secureCmpProps,i=void 0===s?{}:s,l=e.children;return(0,E.jsx)(h.s,(0,T.Z)((0,T.Z)({scopes:n,resource:t,errorProps:{disabled:!0}},i),{},{children:l}))},N=function(e){var t=e.isLoading,n=void 0===t||t,s=e.resourceName,i=void 0===s?"":s,l=e.iamScopes,a=e.secureCmpProps,c=void 0===a?{}:a,r=e.property,o=void 0===r?null:r,u=e.value,x=void 0===u?null:u,f=e.onEdit;return(0,E.jsxs)(d.xuv,{sx:{display:"flex",alignItems:"baseline",justifyContent:"flex-start",gap:10},children:[(0,E.jsx)(d.kKA,{label:o,value:(0,E.jsx)(I,{resourceName:i,iamScopes:l,secureCmpProps:c,children:(0,E.jsx)(d.vmT,{isLoading:n,onClick:f,label:x,sx:{fontWeight:"bold"}})})}),(0,E.jsx)(I,{resourceName:i,iamScopes:l,secureCmpProps:c,children:(0,E.jsx)(C,{onClick:f,sx:{background:"#f8f8f8",marginLeft:"3px",top:3,"& .min-icon":{width:"16px",height:"16px"}}})})]})},y=n(45248),Z=function(e){var t=e.bucketSize;return(0,E.jsxs)(d.xuv,{sx:{display:"flex",alignItems:"center","& .min-icon":{height:37,width:37}},children:[(0,E.jsx)(d.Mhr,{}),(0,E.jsxs)(d.xuv,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"center",flexFlow:"column",marginLeft:"20px",fontSize:"19px"},children:[(0,E.jsx)("label",{style:{fontWeight:600},children:"Reported Usage:"}),(0,E.jsx)("label",{children:(0,y.ae)(t)})]})]})},O=function(e){var t=e.quota;return(0,E.jsxs)(d.xuv,{sx:{display:"flex",alignItems:"center","& .min-icon":{height:37,width:37}},children:[(0,E.jsx)(d.sjJ,{}),(0,E.jsxs)(d.xuv,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"center",flexFlow:"column",marginLeft:"20px",fontSize:"19px"},children:[(0,E.jsxs)("label",{style:{fontWeight:600,textTransform:"capitalize"},children:[null===t||void 0===t?void 0:t.type," Quota"]}),(0,E.jsxs)("label",{children:[" ",(0,y.ae)("".concat(null===t||void 0===t?void 0:t.quota),!0)]})]})]})},k=(0,S.Z)(i.lazy((function(){return n.e(3690).then(n.bind(n,33690))}))),F=(0,S.Z)(i.lazy((function(){return n.e(1604).then(n.bind(n,1604))}))),A=(0,S.Z)(i.lazy((function(){return n.e(9952).then(n.bind(n,99952))}))),U=(0,S.Z)(i.lazy((function(){return n.e(402).then(n.bind(n,70402))}))),B=(0,S.Z)(i.lazy((function(){return n.e(1705).then(n.bind(n,71705))}))),G=(0,S.Z)(i.lazy((function(){return Promise.all([n.e(5473),n.e(1715),n.e(1581)]).then(n.bind(n,1581))}))),R=function(){var e,t=(0,m.TL)(),n=(0,r.UO)(),l=(0,c.v9)(j.HQ),S=(0,c.v9)(j.G6),T=(0,c.v9)(p.N5),g=(0,i.useState)(null),b=(0,s.Z)(g,2),C=b[0],I=b[1],y=(0,i.useState)("0"),R=(0,s.Z)(y,2),P=R[0],K=R[1],L=(0,i.useState)(!1),D=(0,s.Z)(L,2),z=D[0],w=D[1],M=(0,i.useState)(!1),Y=(0,s.Z)(M,2),Q=Y[0],V=Y[1],W=(0,i.useState)(!1),q=(0,s.Z)(W,2),J=q[0],H=q[1],X=(0,i.useState)(!0),$=(0,s.Z)(X,2),ee=$[0],te=$[1],ne=(0,i.useState)(!0),se=(0,s.Z)(ne,2),ie=se[0],le=se[1],ae=(0,i.useState)(!0),ce=(0,s.Z)(ae,2),re=ce[0],oe=ce[1],ue=(0,i.useState)(!0),de=(0,s.Z)(ue,2),xe=de[0],fe=de[1],he=(0,i.useState)(!0),pe=(0,s.Z)(he,2),je=pe[0],me=pe[1],ve=(0,i.useState)(!0),Se=(0,s.Z)(ve,2),_e=Se[0],Te=Se[1],ge=(0,i.useState)(!0),Ee=(0,s.Z)(ge,2),be=Ee[0],Ce=Ee[1],Ie=(0,i.useState)(!0),Ne=(0,s.Z)(Ie,2),ye=Ne[0],Ze=Ne[1],Oe=(0,i.useState)(),ke=(0,s.Z)(Oe,2),Fe=ke[0],Ae=ke[1],Ue=(0,i.useState)(!1),Be=(0,s.Z)(Ue,2),Ge=Be[0],Re=Be[1],Pe=(0,i.useState)(null),Ke=(0,s.Z)(Pe,2),Le=Ke[0],De=Ke[1],ze=(0,i.useState)(!1),we=(0,s.Z)(ze,2),Me=we[0],Ye=we[1],Qe=(0,i.useState)(!1),Ve=(0,s.Z)(Qe,2),We=Ve[0],qe=Ve[1],Je=(0,i.useState)(null),He=(0,s.Z)(Je,2),Xe=He[0],$e=He[1],et=(0,i.useState)(!1),tt=(0,s.Z)(et,2),nt=tt[0],st=tt[1],it=(0,i.useState)(!1),lt=(0,s.Z)(it,2),at=lt[0],ct=lt[1],rt=(0,i.useState)(!1),ot=(0,s.Z)(rt,2),ut=ot[0],dt=ot[1],xt=(0,i.useState)(!1),ft=(0,s.Z)(xt,2),ht=ft[0],pt=ft[1];(0,i.useEffect)((function(){t((0,p.Sc)("bucket_detail_summary"))}),[]);var jt=n.bucketName||"",mt="n/a",vt="";null!==S&&S.access&&S.definition&&(mt=S.access,vt=S.definition);var St=(0,h.F)(jt,[f.Ft.S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION,f.Ft.S3_GET_ACTIONS]),_t=(0,h.F)(jt,[f.Ft.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,f.Ft.S3_GET_ACTIONS]),Tt=(0,h.F)(jt,[f.Ft.ADMIN_GET_BUCKET_QUOTA]);(0,i.useEffect)((function(){oe(!!l)}),[l,oe]),(0,i.useEffect)((function(){xe&&(_t?o.h.buckets.getBucketEncryptionInfo(jt).then((function(e){e.data.algorithm&&(Ye(!0),I(e.data)),fe(!1)})).catch((function(e){"The server side encryption configuration was not found"===(e=(0,u.g)(e.error)).errorMessage&&(Ye(!1),I(null)),fe(!1)})):(Ye(!1),I(null),fe(!1)))}),[xe,jt,_t]),(0,i.useEffect)((function(){je&&T&&o.h.buckets.getBucketVersioning(jt).then((function(e){Ae(e.data),me(!1)})).catch((function(e){t((0,p.Ih)((0,u.g)(e.error))),me(!1)}))}),[je,t,jt,T]),(0,i.useEffect)((function(){_e&&T&&(Tt?o.h.buckets.getBucketQuota(jt).then((function(e){De(e.data),e.data.quota?Re(!0):Re(!1),Te(!1)})).catch((function(e){t((0,p.Ih)((0,u.g)(e.error))),Re(!1),Te(!1)})):(Re(!1),Te(!1)))}),[_e,me,t,jt,T,Tt]),(0,i.useEffect)((function(){je&&T&&(St?o.h.buckets.getBucketObjectLockingStatus(jt).then((function(e){w(e.data.object_locking_enabled),te(!1)})).catch((function(e){t((0,p.Ih)((0,u.g)(e.error))),te(!1)})):te(!1))}),[ee,t,jt,je,T,St]),(0,i.useEffect)((function(){ie&&o.h.buckets.listBuckets().then((function(e){var t=a()(e.data,"buckets",[]).find((function(e){return e.name===jt})),n=a()(t,"size","0");le(!1),K(n)})).catch((function(e){le(!1),t((0,p.Ih)((0,u.g)(e.error)))}))}),[ie,t,jt]),(0,i.useEffect)((function(){be&&T&&o.h.buckets.getBucketReplication(jt).then((function(e){var t=e.data.rules?e.data.rules:[];H(t.length>0),Ce(!1)})).catch((function(e){t((0,p.Ih)((0,u.g)(e.error))),Ce(!1)}))}),[be,t,jt,T]),(0,i.useEffect)((function(){ye&&z&&o.h.buckets.getBucketRetentionConfig(jt).then((function(e){Ze(!1),qe(!0),$e(e.data)})).catch((function(e){qe(!1),Ze(!1),$e(null)}))}),[ye,z,jt]);var gt=function(){t((0,j.d5)(!0)),oe(!0),le(!0),me(!0),fe(!0),Ze(!0)},Et=null===Fe||void 0===Fe?void 0:Fe.status,bt="Unversioned (Default)";return"Enabled"===Et?bt="Versioned":"Suspended"===Et&&(bt="Suspended"),(0,E.jsxs)(i.Fragment,{children:[at&&(0,E.jsx)(A,{open:at,selectedBucket:jt,encryptionEnabled:Me,encryptionCfg:C,closeModalAndRefresh:function(){ct(!1),fe(!0)}}),ut&&(0,E.jsx)(G,{open:ut,selectedBucket:jt,enabled:Ge,cfg:Le,closeModalAndRefresh:function(){dt(!1),Te(!0)}}),Q&&(0,E.jsx)(k,{bucketName:jt,open:Q,actualPolicy:mt,actualDefinition:vt,closeModalAndRefresh:function(){V(!1),gt()}}),nt&&(0,E.jsx)(F,{bucketName:jt,open:nt,closeModalAndRefresh:function(){st(!1),gt()}}),ht&&(0,E.jsx)(U,{closeVersioningModalAndRefresh:function(e){pt(!1),e&>()},modalOpen:ht,selectedBucket:jt,versioningInfo:Fe}),(0,E.jsx)(d.NZf,{separator:!0,sx:{marginBottom:15},children:"Summary"}),(0,E.jsxs)(d.rjZ,{container:!0,children:[(0,E.jsx)(h.s,{scopes:[f.Ft.S3_GET_BUCKET_POLICY,f.Ft.S3_GET_ACTIONS],resource:jt,children:(0,E.jsx)(d.rjZ,{item:!0,xs:12,children:(0,E.jsxs)(d.xuv,{sx:x.nl,children:[(0,E.jsxs)(d.xuv,{sx:x.nl,children:[(0,E.jsx)(h.s,{scopes:[f.Ft.S3_GET_BUCKET_POLICY,f.Ft.S3_GET_ACTIONS],resource:jt,children:(0,E.jsx)(N,{iamScopes:[f.Ft.S3_PUT_BUCKET_POLICY,f.Ft.S3_PUT_ACTIONS],resourceName:jt,property:"Access Policy:",value:mt.toLowerCase(),onEdit:function(){V(!0)},isLoading:re})}),(0,E.jsx)(h.s,{scopes:[f.Ft.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,f.Ft.S3_GET_ACTIONS],resource:jt,children:(0,E.jsx)(N,{iamScopes:[f.Ft.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,f.Ft.S3_PUT_ACTIONS],resourceName:jt,property:"Encryption:",value:Me?"Enabled":"Disabled",onEdit:function(){ct(!0)},isLoading:xe})}),(0,E.jsx)(h.s,{scopes:[f.Ft.S3_GET_REPLICATION_CONFIGURATION,f.Ft.S3_GET_ACTIONS],resource:jt,children:(0,E.jsx)(d.kKA,{label:"Replication:",value:(0,E.jsx)(_.Z,{icon:J?(0,E.jsx)(d.E31,{}):(0,E.jsx)(d.dRf,{}),label:(0,E.jsx)("label",{className:"muted",children:J?"Enabled":"Disabled"})})})}),(0,E.jsx)(h.s,{scopes:[f.Ft.S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION,f.Ft.S3_GET_ACTIONS],resource:jt,children:(0,E.jsx)(d.kKA,{label:"Object Locking:",value:(0,E.jsx)(_.Z,{icon:z?(0,E.jsx)(d.E31,{}):(0,E.jsx)(d.dRf,{}),label:(0,E.jsx)("label",{className:"muted",children:z?"Enabled":"Disabled"})})})}),(0,E.jsx)(d.xuv,{children:(0,E.jsx)(d.kKA,{label:"Tags:",value:(0,E.jsx)(B,{bucketName:jt})})}),(0,E.jsx)(N,{iamScopes:[f.Ft.ADMIN_SET_BUCKET_QUOTA],resourceName:jt,property:"Quota:",value:Ge?"Enabled":"Disabled",onEdit:function(){dt(!0)},isLoading:_e})]}),(0,E.jsxs)(d.xuv,{sx:{display:"grid",gridTemplateColumns:"1fr",alignItems:"flex-start"},children:[(0,E.jsx)(Z,{bucketSize:"".concat(P)}),Ge&&Le?(0,E.jsx)(O,{quota:Le}):null]})]})})}),T&&(0,E.jsx)(h.s,{scopes:[f.Ft.S3_GET_BUCKET_VERSIONING,f.Ft.S3_GET_ACTIONS],resource:jt,children:(0,E.jsxs)(d.rjZ,{item:!0,xs:12,sx:{marginTop:5},children:[(0,E.jsx)(d.NZf,{separator:!0,sx:{marginBottom:15},children:"Versioning"}),(0,E.jsx)(d.xuv,{sx:x.nl,children:(0,E.jsxs)(d.xuv,{sx:x.nl,children:[(0,E.jsx)(N,{iamScopes:[f.Ft.S3_PUT_BUCKET_VERSIONING,f.Ft.S3_PUT_ACTIONS],resourceName:jt,property:"Current Status:",value:(0,E.jsx)(d.xuv,{sx:{display:"flex",flexDirection:"column",textDecorationStyle:"initial",placeItems:"flex-start",justifyItems:"flex-start",gap:3},children:(0,E.jsxs)("div",{children:[" ",bt]})}),onEdit:function(){pt(!0)},isLoading:je}),"Enabled"===(null===Fe||void 0===Fe?void 0:Fe.status)?(0,E.jsx)(v.Z,{versioningState:Fe}):null]})})]})}),z&&(0,E.jsx)(h.s,{scopes:[f.Ft.S3_GET_OBJECT_RETENTION,f.Ft.S3_GET_ACTIONS],resource:jt,children:(0,E.jsxs)(d.rjZ,{item:!0,xs:12,sx:{marginTop:5},children:[(0,E.jsx)(d.NZf,{separator:!0,sx:{marginBottom:15},children:"Retention"}),(0,E.jsx)(d.xuv,{sx:x.nl,children:(0,E.jsxs)(d.xuv,{sx:x.nl,children:[(0,E.jsx)(N,{iamScopes:[f.Ft.ADMIN_SET_BUCKET_QUOTA],resourceName:jt,property:"Retention:",value:We?"Enabled":"Disabled",onEdit:function(){st(!0)},isLoading:ye}),(0,E.jsx)(d.kKA,{label:"Mode:",value:(0,E.jsx)("label",{className:"muted",style:{textTransform:"capitalize"},children:Xe&&Xe.mode?Xe.mode:"-"})}),(0,E.jsx)(d.kKA,{label:"Validity:",value:(0,E.jsxs)("label",{className:"muted",style:{textTransform:"capitalize"},children:[Xe&&Xe.validity," ",Xe&&(1===Xe.validity?null===(e=Xe.unit)||void 0===e?void 0:e.slice(0,-1):Xe.unit)]})})]})})]})})]})]})}},84861:function(e,t,n){n(72791);var s=n(29945),i=n(80184);t.Z=function(e){var t=e.icon,n=void 0===t?null:t,l=e.label,a=void 0===l?null:l;return(0,i.jsxs)(s.xuv,{sx:{display:"flex",alignItems:"center",gap:5,marginTop:3},children:[(0,i.jsx)(s.xuv,{sx:{height:16,width:16,display:"flex",alignItems:"center"},children:n}),(0,i.jsx)(s.xuv,{children:a})]})}},91685:function(e,t,n){n(72791);var s=n(29945),i=n(84861),l=n(80184);t.Z=function(e){var t,n,a=e.versioningState,c=void 0===a?{}:a;return(0,l.jsxs)(s.xuv,{sx:{display:"flex",flexDirection:"column",gap:2},children:[(0,l.jsx)(s.xuv,{sx:{fontWeight:"medium",display:"flex",gap:2},children:c.excludeFolders?(0,l.jsx)(i.Z,{icon:c.excludeFolders?(0,l.jsx)(s.E31,{style:{color:"green"}}):(0,l.jsx)(s.dRf,{}),label:(0,l.jsx)("label",{style:{textDecoration:"normal"},children:"Exclude Folders"})}):null}),null!==(t=c.excludedPrefixes)&&void 0!==t&&t.length?(0,l.jsxs)(s.xuv,{sx:{fontWeight:"medium",display:"flex",justifyItems:"end",placeItems:"flex-start",flexDirection:"column",gap:1},children:[(0,l.jsx)(s.xuv,{children:"Excluded Prefixes :"}),(0,l.jsx)("div",{style:{maxHeight:"200px",overflowY:"auto",placeItems:"flex-start",justifyItems:"end",flexDirection:"column",display:"flex"},children:null===(n=c.excludedPrefixes)||void 0===n?void 0:n.map((function(e){return(0,l.jsx)("div",{children:(0,l.jsx)("strong",{children:e.prefix})})}))})]}):null]})}}}]); +//# sourceMappingURL=5707.f0758fd6.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/5707.f0758fd6.chunk.js.map b/portal-ui/build/static/js/5707.f0758fd6.chunk.js.map new file mode 100644 index 000000000..f059ea90a --- /dev/null +++ b/portal-ui/build/static/js/5707.f0758fd6.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/5707.f0758fd6.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/SummaryItems/EditActionButton.tsx","screens/Console/Buckets/BucketDetails/SummaryItems/EditablePropertyItem.tsx","screens/Console/Buckets/BucketDetails/SummaryItems/ReportedUsage.tsx","screens/Console/Buckets/BucketDetails/SummaryItems/BucketQuotaSize.tsx","screens/Console/Buckets/BucketDetails/BucketSummaryPanel.tsx","screens/Console/Buckets/BucketDetails/SummaryItems/LabelWithIcon.tsx","screens/Console/Buckets/VersioningInfo.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { EditIcon, IconButton } from \"mds\";\n\ntype EditActionButtonProps = {\n disabled?: boolean;\n onClick: () => void | any;\n [x: string]: any;\n};\n\nconst EditActionButton = ({\n disabled,\n onClick,\n ...restProps\n}: EditActionButtonProps) => {\n return (\n \n \n \n );\n};\n\nexport default EditActionButton;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box, ValuePair, ActionLink } from \"mds\";\nimport { SecureComponent } from \"../../../../../common/SecureComponent\";\n\nimport EditActionButton from \"./EditActionButton\";\n\ntype EditablePropertyItemProps = {\n isLoading: boolean;\n resourceName: string;\n iamScopes: string[];\n property: any;\n value: any;\n onEdit: () => void;\n secureCmpProps?: Record;\n};\n\nconst SecureAction = ({\n resourceName,\n iamScopes,\n secureCmpProps = {},\n children,\n}: {\n resourceName: string;\n iamScopes: string[];\n children: any;\n secureCmpProps?: Record;\n}) => {\n return (\n \n {children}\n \n );\n};\n\nconst EditablePropertyItem = ({\n isLoading = true,\n resourceName = \"\",\n iamScopes,\n secureCmpProps = {},\n property = null,\n value = null,\n onEdit,\n}: EditablePropertyItemProps) => {\n return (\n \n \n \n \n }\n />\n \n \n \n \n );\n};\n\nexport default EditablePropertyItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { ReportedUsageFullIcon, Box } from \"mds\";\nimport { niceBytes } from \"../../../../../common/utils\";\n\nconst ReportedUsage = ({ bucketSize }: { bucketSize: string }) => {\n return (\n \n \n\n \n \n Reported Usage:\n \n \n \n \n );\n};\n\nexport default ReportedUsage;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { HardBucketQuotaIcon, Box } from \"mds\";\nimport { niceBytes } from \"../../../../../common/utils\";\n\nconst BucketQuotaSize = ({ quota }: { quota: any }) => {\n return (\n \n \n \n \n {quota?.type} Quota\n \n \n \n \n );\n};\n\nexport default BucketQuotaSize;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport { useParams } from \"react-router-dom\";\nimport { api } from \"api\";\nimport {\n BucketEncryptionInfo,\n BucketQuota,\n BucketVersioningResponse,\n GetBucketRetentionConfig,\n} from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport {\n Box,\n DisabledIcon,\n EnabledIcon,\n Grid,\n SectionTitle,\n ValuePair,\n} from \"mds\";\nimport { twoColCssGridLayoutConfig } from \"../../Common/FormComponents/common/styleLibrary\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\nimport {\n selDistSet,\n setErrorSnackMessage,\n setHelpName,\n} from \"../../../../systemSlice\";\nimport {\n selBucketDetailsInfo,\n selBucketDetailsLoading,\n setBucketDetailsLoad,\n} from \"./bucketDetailsSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport VersioningInfo from \"../VersioningInfo\";\nimport withSuspense from \"../../Common/Components/withSuspense\";\nimport LabelWithIcon from \"./SummaryItems/LabelWithIcon\";\nimport EditablePropertyItem from \"./SummaryItems/EditablePropertyItem\";\nimport ReportedUsage from \"./SummaryItems/ReportedUsage\";\nimport BucketQuotaSize from \"./SummaryItems/BucketQuotaSize\";\n\nconst SetAccessPolicy = withSuspense(\n React.lazy(() => import(\"./SetAccessPolicy\")),\n);\nconst SetRetentionConfig = withSuspense(\n React.lazy(() => import(\"./SetRetentionConfig\")),\n);\nconst EnableBucketEncryption = withSuspense(\n React.lazy(() => import(\"./EnableBucketEncryption\")),\n);\nconst EnableVersioningModal = withSuspense(\n React.lazy(() => import(\"./EnableVersioningModal\")),\n);\nconst BucketTags = withSuspense(\n React.lazy(() => import(\"./SummaryItems/BucketTags\")),\n);\nconst EnableQuota = withSuspense(React.lazy(() => import(\"./EnableQuota\")));\n\nconst BucketSummary = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n const bucketInfo = useSelector(selBucketDetailsInfo);\n const distributedSetup = useSelector(selDistSet);\n\n const [encryptionCfg, setEncryptionCfg] =\n useState(null);\n const [bucketSize, setBucketSize] = useState(\"0\");\n const [hasObjectLocking, setHasObjectLocking] = useState(\n false,\n );\n const [accessPolicyScreenOpen, setAccessPolicyScreenOpen] =\n useState(false);\n const [replicationRules, setReplicationRules] = useState(false);\n const [loadingObjectLocking, setLoadingLocking] = useState(true);\n const [loadingSize, setLoadingSize] = useState(true);\n const [bucketLoading, setBucketLoading] = useState(true);\n const [loadingEncryption, setLoadingEncryption] = useState(true);\n const [loadingVersioning, setLoadingVersioning] = useState(true);\n const [loadingQuota, setLoadingQuota] = useState(true);\n const [loadingReplication, setLoadingReplication] = useState(true);\n const [loadingRetention, setLoadingRetention] = useState(true);\n const [versioningInfo, setVersioningInfo] =\n useState();\n const [quotaEnabled, setQuotaEnabled] = useState(false);\n const [quota, setQuota] = useState(null);\n const [encryptionEnabled, setEncryptionEnabled] = useState(false);\n const [retentionEnabled, setRetentionEnabled] = useState(false);\n const [retentionConfig, setRetentionConfig] =\n useState(null);\n const [retentionConfigOpen, setRetentionConfigOpen] =\n useState(false);\n const [enableEncryptionScreenOpen, setEnableEncryptionScreenOpen] =\n useState(false);\n const [enableQuotaScreenOpen, setEnableQuotaScreenOpen] =\n useState(false);\n const [enableVersioningOpen, setEnableVersioningOpen] =\n useState(false);\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_detail_summary\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const bucketName = params.bucketName || \"\";\n\n let accessPolicy = \"n/a\";\n let policyDefinition = \"\";\n\n if (bucketInfo !== null && bucketInfo.access && bucketInfo.definition) {\n accessPolicy = bucketInfo.access;\n policyDefinition = bucketInfo.definition;\n }\n\n const displayGetBucketObjectLockConfiguration = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n\n const displayGetBucketEncryptionConfiguration = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n\n const displayGetBucketQuota = hasPermission(bucketName, [\n IAM_SCOPES.ADMIN_GET_BUCKET_QUOTA,\n ]);\n\n useEffect(() => {\n if (loadingBucket) {\n setBucketLoading(true);\n } else {\n setBucketLoading(false);\n }\n }, [loadingBucket, setBucketLoading]);\n\n useEffect(() => {\n if (loadingEncryption) {\n if (displayGetBucketEncryptionConfiguration) {\n api.buckets\n .getBucketEncryptionInfo(bucketName)\n .then((res) => {\n if (res.data.algorithm) {\n setEncryptionEnabled(true);\n setEncryptionCfg(res.data);\n }\n setLoadingEncryption(false);\n })\n .catch((err) => {\n err = errorToHandler(err.error);\n if (\n err.errorMessage ===\n \"The server side encryption configuration was not found\"\n ) {\n setEncryptionEnabled(false);\n setEncryptionCfg(null);\n }\n setLoadingEncryption(false);\n });\n } else {\n setEncryptionEnabled(false);\n setEncryptionCfg(null);\n setLoadingEncryption(false);\n }\n }\n }, [loadingEncryption, bucketName, displayGetBucketEncryptionConfiguration]);\n\n useEffect(() => {\n if (loadingVersioning && distributedSetup) {\n api.buckets\n .getBucketVersioning(bucketName)\n .then((res) => {\n setVersioningInfo(res.data);\n setLoadingVersioning(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setLoadingVersioning(false);\n });\n }\n }, [loadingVersioning, dispatch, bucketName, distributedSetup]);\n\n useEffect(() => {\n if (loadingQuota && distributedSetup) {\n if (displayGetBucketQuota) {\n api.buckets\n .getBucketQuota(bucketName)\n .then((res) => {\n setQuota(res.data);\n if (res.data.quota) {\n setQuotaEnabled(true);\n } else {\n setQuotaEnabled(false);\n }\n setLoadingQuota(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setQuotaEnabled(false);\n setLoadingQuota(false);\n });\n } else {\n setQuotaEnabled(false);\n setLoadingQuota(false);\n }\n }\n }, [\n loadingQuota,\n setLoadingVersioning,\n dispatch,\n bucketName,\n distributedSetup,\n displayGetBucketQuota,\n ]);\n\n useEffect(() => {\n if (loadingVersioning && distributedSetup) {\n if (displayGetBucketObjectLockConfiguration) {\n api.buckets\n .getBucketObjectLockingStatus(bucketName)\n .then((res) => {\n setHasObjectLocking(res.data.object_locking_enabled);\n setLoadingLocking(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setLoadingLocking(false);\n });\n } else {\n setLoadingLocking(false);\n }\n }\n }, [\n loadingObjectLocking,\n dispatch,\n bucketName,\n loadingVersioning,\n distributedSetup,\n displayGetBucketObjectLockConfiguration,\n ]);\n\n useEffect(() => {\n if (loadingSize) {\n api.buckets\n .listBuckets()\n .then((res) => {\n const resBuckets = get(res.data, \"buckets\", []);\n\n const bucketInfo = resBuckets.find(\n (bucket) => bucket.name === bucketName,\n );\n\n const size = get(bucketInfo, \"size\", \"0\");\n\n setLoadingSize(false);\n setBucketSize(size);\n })\n .catch((err) => {\n setLoadingSize(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [loadingSize, dispatch, bucketName]);\n\n useEffect(() => {\n if (loadingReplication && distributedSetup) {\n api.buckets\n .getBucketReplication(bucketName)\n .then((res) => {\n const r = res.data.rules ? res.data.rules : [];\n setReplicationRules(r.length > 0);\n setLoadingReplication(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setLoadingReplication(false);\n });\n }\n }, [loadingReplication, dispatch, bucketName, distributedSetup]);\n\n useEffect(() => {\n if (loadingRetention && hasObjectLocking) {\n api.buckets\n .getBucketRetentionConfig(bucketName)\n .then((res) => {\n setLoadingRetention(false);\n setRetentionEnabled(true);\n setRetentionConfig(res.data);\n })\n .catch((err) => {\n setRetentionEnabled(false);\n setLoadingRetention(false);\n setRetentionConfig(null);\n });\n }\n }, [loadingRetention, hasObjectLocking, bucketName]);\n\n const loadAllBucketData = () => {\n dispatch(setBucketDetailsLoad(true));\n setBucketLoading(true);\n setLoadingSize(true);\n setLoadingVersioning(true);\n setLoadingEncryption(true);\n setLoadingRetention(true);\n };\n\n const setBucketVersioning = () => {\n setEnableVersioningOpen(true);\n };\n const setBucketQuota = () => {\n setEnableQuotaScreenOpen(true);\n };\n\n const closeEnableBucketEncryption = () => {\n setEnableEncryptionScreenOpen(false);\n setLoadingEncryption(true);\n };\n const closeEnableBucketQuota = () => {\n setEnableQuotaScreenOpen(false);\n setLoadingQuota(true);\n };\n\n const closeSetAccessPolicy = () => {\n setAccessPolicyScreenOpen(false);\n loadAllBucketData();\n };\n\n const closeRetentionConfig = () => {\n setRetentionConfigOpen(false);\n loadAllBucketData();\n };\n\n const closeEnableVersioning = (refresh: boolean) => {\n setEnableVersioningOpen(false);\n if (refresh) {\n loadAllBucketData();\n }\n };\n\n let versioningStatus = versioningInfo?.status;\n let versioningText = \"Unversioned (Default)\";\n if (versioningStatus === \"Enabled\") {\n versioningText = \"Versioned\";\n } else if (versioningStatus === \"Suspended\") {\n versioningText = \"Suspended\";\n }\n\n return (\n \n {enableEncryptionScreenOpen && (\n \n )}\n {enableQuotaScreenOpen && (\n \n )}\n {accessPolicyScreenOpen && (\n \n )}\n {retentionConfigOpen && (\n \n )}\n {enableVersioningOpen && (\n \n )}\n\n \n Summary\n \n \n \n \n \n \n \n {\n setAccessPolicyScreenOpen(true);\n }}\n isLoading={bucketLoading}\n />\n \n\n \n {\n setEnableEncryptionScreenOpen(true);\n }}\n isLoading={loadingEncryption}\n />\n \n\n \n : \n }\n label={\n \n }\n />\n }\n />\n \n\n \n : \n }\n label={\n \n }\n />\n }\n />\n \n \n }\n />\n \n \n \n \n \n {quotaEnabled && quota ? (\n \n ) : null}\n \n \n \n \n\n {distributedSetup && (\n \n \n \n Versioning\n \n\n \n \n \n
{versioningText}
\n
\n }\n onEdit={setBucketVersioning}\n isLoading={loadingVersioning}\n />\n\n {versioningInfo?.status === \"Enabled\" ? (\n \n ) : null}\n
\n \n
\n \n )}\n\n {hasObjectLocking && (\n \n \n \n Retention\n \n\n \n \n {\n setRetentionConfigOpen(true);\n }}\n isLoading={loadingRetention}\n />\n\n \n {retentionConfig && retentionConfig.mode\n ? retentionConfig.mode\n : \"-\"}\n \n }\n />\n \n {retentionConfig && retentionConfig.validity}{\" \"}\n {retentionConfig &&\n (retentionConfig.validity === 1\n ? retentionConfig.unit?.slice(0, -1)\n : retentionConfig.unit)}\n \n }\n />\n \n \n \n \n )}\n
\n
\n );\n};\n\nexport default BucketSummary;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box } from \"mds\";\n\ntype LabelWithIconProps = {\n icon: React.ReactNode | null;\n label: React.ReactNode | null;\n};\n\nconst LabelWithIcon = ({ icon = null, label = null }: LabelWithIconProps) => {\n return (\n \n \n {icon}\n \n {label}\n \n );\n};\n\nexport default LabelWithIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { DisabledIcon, EnabledIcon, Box } from \"mds\";\nimport { BucketVersioningResponse } from \"api/consoleApi\";\nimport LabelWithIcon from \"./BucketDetails/SummaryItems/LabelWithIcon\";\n\nconst VersioningInfo = ({\n versioningState = {},\n}: {\n versioningState?: BucketVersioningResponse;\n}) => {\n return (\n \n \n {versioningState.excludeFolders ? (\n \n ) : (\n \n )\n }\n label={\n \n }\n />\n ) : null}\n \n {versioningState.excludedPrefixes?.length ? (\n \n Excluded Prefixes :\n \n {versioningState.excludedPrefixes?.map((it) => (\n
\n {it.prefix}\n
\n ))}\n
\n \n ) : null}\n \n );\n};\n\nexport default VersioningInfo;\n"],"names":["_ref","disabled","onClick","restProps","_objectWithoutProperties","_excluded","_jsx","IconButton","_objectSpread","size","children","EditIcon","SecureAction","resourceName","iamScopes","_ref$secureCmpProps","secureCmpProps","SecureComponent","scopes","resource","errorProps","_ref2","_ref2$isLoading","isLoading","_ref2$resourceName","_ref2$secureCmpProps","_ref2$property","property","_ref2$value","value","onEdit","_jsxs","Box","sx","display","alignItems","justifyContent","gap","ValuePair","label","ActionLink","fontWeight","EditActionButton","background","marginLeft","top","width","height","bucketSize","ReportedUsageFullIcon","flexFlow","fontSize","style","niceBytes","quota","HardBucketQuotaIcon","textTransform","type","concat","SetAccessPolicy","withSuspense","React","SetRetentionConfig","EnableBucketEncryption","EnableVersioningModal","BucketTags","EnableQuota","_retentionConfig$unit","dispatch","useAppDispatch","params","useParams","loadingBucket","useSelector","selBucketDetailsLoading","bucketInfo","selBucketDetailsInfo","distributedSetup","selDistSet","_useState","useState","_useState2","_slicedToArray","encryptionCfg","setEncryptionCfg","_useState3","_useState4","setBucketSize","_useState5","_useState6","hasObjectLocking","setHasObjectLocking","_useState7","_useState8","accessPolicyScreenOpen","setAccessPolicyScreenOpen","_useState9","_useState10","replicationRules","setReplicationRules","_useState11","_useState12","loadingObjectLocking","setLoadingLocking","_useState13","_useState14","loadingSize","setLoadingSize","_useState15","_useState16","bucketLoading","setBucketLoading","_useState17","_useState18","loadingEncryption","setLoadingEncryption","_useState19","_useState20","loadingVersioning","setLoadingVersioning","_useState21","_useState22","loadingQuota","setLoadingQuota","_useState23","_useState24","loadingReplication","setLoadingReplication","_useState25","_useState26","loadingRetention","setLoadingRetention","_useState27","_useState28","versioningInfo","setVersioningInfo","_useState29","_useState30","quotaEnabled","setQuotaEnabled","_useState31","_useState32","setQuota","_useState33","_useState34","encryptionEnabled","setEncryptionEnabled","_useState35","_useState36","retentionEnabled","setRetentionEnabled","_useState37","_useState38","retentionConfig","setRetentionConfig","_useState39","_useState40","retentionConfigOpen","setRetentionConfigOpen","_useState41","_useState42","enableEncryptionScreenOpen","setEnableEncryptionScreenOpen","_useState43","_useState44","enableQuotaScreenOpen","setEnableQuotaScreenOpen","_useState45","_useState46","enableVersioningOpen","setEnableVersioningOpen","useEffect","setHelpName","bucketName","accessPolicy","policyDefinition","access","definition","displayGetBucketObjectLockConfiguration","hasPermission","IAM_SCOPES","S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION","S3_GET_ACTIONS","displayGetBucketEncryptionConfiguration","S3_GET_BUCKET_ENCRYPTION_CONFIGURATION","displayGetBucketQuota","ADMIN_GET_BUCKET_QUOTA","api","buckets","getBucketEncryptionInfo","then","res","data","algorithm","catch","err","errorToHandler","error","errorMessage","getBucketVersioning","setErrorSnackMessage","getBucketQuota","getBucketObjectLockingStatus","object_locking_enabled","listBuckets","get","find","bucket","name","getBucketReplication","r","rules","length","getBucketRetentionConfig","loadAllBucketData","setBucketDetailsLoad","versioningStatus","status","versioningText","Fragment","open","selectedBucket","closeModalAndRefresh","enabled","cfg","actualPolicy","actualDefinition","closeVersioningModalAndRefresh","refresh","modalOpen","SectionTitle","separator","marginBottom","Grid","container","S3_GET_BUCKET_POLICY","item","xs","twoColCssGridLayoutConfig","EditablePropertyItem","S3_PUT_BUCKET_POLICY","S3_PUT_ACTIONS","toLowerCase","S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION","S3_GET_REPLICATION_CONFIGURATION","LabelWithIcon","icon","EnabledIcon","DisabledIcon","className","ADMIN_SET_BUCKET_QUOTA","gridTemplateColumns","ReportedUsage","BucketQuotaSize","S3_GET_BUCKET_VERSIONING","marginTop","S3_PUT_BUCKET_VERSIONING","flexDirection","textDecorationStyle","placeItems","justifyItems","VersioningInfo","versioningState","S3_GET_OBJECT_RETENTION","mode","validity","unit","slice","_ref$icon","_ref$label","_versioningState$excl","_versioningState$excl2","_ref$versioningState","excludeFolders","color","textDecoration","excludedPrefixes","maxHeight","overflowY","map","it","prefix"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/5759.47541c57.chunk.js b/portal-ui/build/static/js/5759.47541c57.chunk.js new file mode 100644 index 000000000..910c5cc94 --- /dev/null +++ b/portal-ui/build/static/js/5759.47541c57.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[5759],{85759:function(e,t,n){n.r(t);var i=n(93433),l=n(29439),r=n(72791),s=n(78687),c=n(57689),o=n(29945),a=n(81207),u=n(38442),d=n(56087),p=n(87995),h=n(9859),f=n(81551),x=n(27454),m=n(75578),b=n(80184),j=(0,m.Z)(r.lazy((function(){return n.e(3509).then(n.bind(n,83509))}))),S=(0,m.Z)(r.lazy((function(){return Promise.all([n.e(5473),n.e(1715),n.e(889)]).then(n.bind(n,20889))}))),R=(0,m.Z)(r.lazy((function(){return n.e(9088).then(n.bind(n,69088))})));t.default=function(){var e=(0,f.TL)(),t=(0,c.UO)(),n=(0,s.v9)(h.HQ),m=(0,r.useState)(!0),T=(0,l.Z)(m,2),_=T[0],I=T[1],N=(0,r.useState)([]),A=(0,l.Z)(N,2),F=A[0],g=A[1],k=(0,r.useState)(!1),O=(0,l.Z)(k,2),C=O[0],y=O[1],P=(0,r.useState)(!1),Z=(0,l.Z)(P,2),v=Z[0],E=Z[1],U=(0,r.useState)(!1),w=(0,l.Z)(U,2),G=w[0],L=w[1],K=(0,r.useState)(""),z=(0,l.Z)(K,2),D=z[0],M=z[1],B=(0,r.useState)([]),H=(0,l.Z)(B,2),Q=H[0],X=H[1],Y=(0,r.useState)(!1),J=(0,l.Z)(Y,2),q=J[0],V=J[1],W=t.bucketName||"",$=(0,u.F)(W,[d.Ft.S3_GET_REPLICATION_CONFIGURATION,d.Ft.S3_GET_ACTIONS]);(0,r.useEffect)((function(){e((0,p.Sc)("bucket_detail_replication"))}),[]),(0,r.useEffect)((function(){n&&I(!0)}),[n,I]),(0,r.useEffect)((function(){_&&($?a.Z.invoke("GET","/api/v1/buckets/".concat(W,"/replication")).then((function(e){var t=e.rules?e.rules:[];t.sort((function(e,t){return e.priority-t.priority})),g(t),I(!1)})).catch((function(t){e((0,p.Ih)(t)),I(!1)})):I(!1))}),[_,e,W,$]);var ee=function(){E(arguments.length>0&&void 0!==arguments[0]&&arguments[0])},te=[{type:"delete",onClick:function(e){M(e.id),V(!1),y(!0)}},{type:"view",onClick:function(e){M(e.id),L(!0)},disableButtonFunction:!(0,u.F)(W,[d.Ft.S3_PUT_REPLICATION_CONFIGURATION,d.Ft.S3_PUT_ACTIONS],!0)}];return(0,b.jsxs)(r.Fragment,{children:[v&&(0,b.jsx)(S,{closeModalAndRefresh:function(){ee(!1),I(!0)},open:v,bucketName:W,setReplicationRules:F}),C&&(0,b.jsx)(R,{deleteOpen:C,selectedBucket:W,closeDeleteModalAndRefresh:function(e){y(!1),e&&I(!0)},ruleToDelete:D,rulesToDelete:Q,remainingRules:F.length,allSelected:F.length>0&&Q.length===F.length,deleteSelectedRules:q}),G&&(0,b.jsx)(j,{closeModalAndRefresh:function(e){L(!1),e&&I(!0)},open:G,bucketName:W,ruleID:D}),(0,b.jsx)(o.NZf,{separator:!0,sx:{marginBottom:15},actions:(0,b.jsxs)(o.xuv,{style:{display:"flex",gap:10},children:[(0,b.jsx)(u.s,{scopes:[d.Ft.S3_PUT_REPLICATION_CONFIGURATION,d.Ft.S3_PUT_ACTIONS],resource:W,matchAll:!0,errorProps:{disabled:!0},children:(0,b.jsx)(x.Z,{tooltip:"Remove Selected Replication Rules",children:(0,b.jsx)(o.zxk,{id:"remove-bucket-replication-rule",onClick:function(){M("selectedRules"),V(!0),y(!0)},label:"Remove Selected Rules",icon:(0,b.jsx)(o.XHJ,{}),color:"secondary",disabled:0===Q.length||0===F.length,variant:"secondary"})})}),(0,b.jsx)(u.s,{scopes:[d.Ft.S3_PUT_REPLICATION_CONFIGURATION,d.Ft.S3_PUT_ACTIONS],resource:W,matchAll:!0,errorProps:{disabled:!0},children:(0,b.jsx)(x.Z,{tooltip:"Add Replication Rule",children:(0,b.jsx)(o.zxk,{id:"add-bucket-replication-rule",onClick:function(){ee(!0)},label:"Add Replication Rule",icon:(0,b.jsx)(o.dtP,{}),variant:"callAction"})})})]}),children:"Replication"}),(0,b.jsxs)(o.rjZ,{container:!0,children:[(0,b.jsx)(o.rjZ,{item:!0,xs:12,children:(0,b.jsx)(u.s,{scopes:[d.Ft.S3_GET_REPLICATION_CONFIGURATION,d.Ft.S3_GET_ACTIONS],resource:W,errorProps:{disabled:!0},children:(0,b.jsx)(o.wQF,{itemActions:te,columns:[{label:"Priority",elementKey:"priority",width:55,contentTextAlign:"center"},{label:"Destination",elementKey:"destination",renderFunction:function(e){return(0,b.jsx)(r.Fragment,{children:e.bucket.replace("arn:aws:s3:::","")})}},{label:"Prefix",elementKey:"prefix",width:200},{label:"Tags",elementKey:"tags",renderFunction:function(e){return(0,b.jsx)(r.Fragment,{children:e&&""!==e.tags?"Yes":"No"})},width:60},{label:"Status",elementKey:"status",width:100}],isLoading:_,records:F,entityName:"Replication Rules",idField:"id",customPaperHeight:"400px",textSelectable:!0,selectedItems:Q,onSelect:function(e){return function(e){var t=e.target,n=t.value,l=t.checked,r=(0,i.Z)(Q);return l?r.push(n):r=r.filter((function(e){return e!==n})),X(r),r}(e)},onSelectAll:function(){Q.length!==F.length?X(F.map((function(e){return e.id}))):X([])}})})}),(0,b.jsxs)(o.rjZ,{item:!0,xs:12,children:[(0,b.jsx)("br",{}),(0,b.jsx)(o.KfX,{title:"Replication",iconComponent:(0,b.jsx)(o.wNb,{}),help:(0,b.jsxs)(r.Fragment,{children:["MinIO supports server-side and client-side replication of objects between source and destination buckets.",(0,b.jsx)("br",{}),(0,b.jsx)("br",{}),"You can learn more at our"," ",(0,b.jsx)("a",{href:"https://min.io/docs/minio/linux/administration/bucket-replication.html?ref=con",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})]})]})]})}}}]); +//# sourceMappingURL=5759.47541c57.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/5759.47541c57.chunk.js.map b/portal-ui/build/static/js/5759.47541c57.chunk.js.map new file mode 100644 index 000000000..251e3982a --- /dev/null +++ b/portal-ui/build/static/js/5759.47541c57.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/5759.47541c57.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/BucketReplicationPanel.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useParams } from \"react-router-dom\";\nimport {\n AddIcon,\n Box,\n BucketsIcon,\n Button,\n DataTable,\n Grid,\n HelpBox,\n SectionTitle,\n TrashIcon,\n} from \"mds\";\nimport api from \"../../../../common/api\";\nimport {\n BucketReplication,\n BucketReplicationDestination,\n BucketReplicationRule,\n} from \"../types\";\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { selBucketDetailsLoading } from \"./bucketDetailsSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport withSuspense from \"../../Common/Components/withSuspense\";\n\nconst EditReplicationModal = withSuspense(\n React.lazy(() => import(\"./EditReplicationModal\")),\n);\nconst AddReplicationModal = withSuspense(\n React.lazy(() => import(\"./AddReplicationModal\")),\n);\nconst DeleteReplicationRule = withSuspense(\n React.lazy(() => import(\"./DeleteReplicationRule\")),\n);\n\nconst BucketReplicationPanel = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n\n const [loadingReplication, setLoadingReplication] = useState(true);\n const [replicationRules, setReplicationRules] = useState<\n BucketReplicationRule[]\n >([]);\n const [deleteReplicationModal, setDeleteReplicationModal] =\n useState(false);\n const [openSetReplication, setOpenSetReplication] = useState(false);\n const [editReplicationModal, setEditReplicationModal] =\n useState(false);\n const [selectedRRule, setSelectedRRule] = useState(\"\");\n const [selectedRepRules, setSelectedRepRules] = useState([]);\n const [deleteSelectedRules, setDeleteSelectedRules] =\n useState(false);\n\n const bucketName = params.bucketName || \"\";\n\n const displayReplicationRules = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_detail_replication\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (loadingBucket) {\n setLoadingReplication(true);\n }\n }, [loadingBucket, setLoadingReplication]);\n\n useEffect(() => {\n if (loadingReplication) {\n if (displayReplicationRules) {\n api\n .invoke(\"GET\", `/api/v1/buckets/${bucketName}/replication`)\n .then((res: BucketReplication) => {\n const r = res.rules ? res.rules : [];\n\n r.sort((a, b) => a.priority - b.priority);\n\n setReplicationRules(r);\n setLoadingReplication(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoadingReplication(false);\n });\n } else {\n setLoadingReplication(false);\n }\n }\n }, [loadingReplication, dispatch, bucketName, displayReplicationRules]);\n\n const closeAddReplication = () => {\n setOpenReplicationOpen(false);\n setLoadingReplication(true);\n };\n\n const setOpenReplicationOpen = (open = false) => {\n setOpenSetReplication(open);\n };\n\n const closeReplicationModalDelete = (refresh: boolean) => {\n setDeleteReplicationModal(false);\n\n if (refresh) {\n setLoadingReplication(true);\n }\n };\n\n const closeEditReplication = (refresh: boolean) => {\n setEditReplicationModal(false);\n\n if (refresh) {\n setLoadingReplication(true);\n }\n };\n\n const confirmDeleteReplication = (replication: BucketReplicationRule) => {\n setSelectedRRule(replication.id);\n setDeleteSelectedRules(false);\n setDeleteReplicationModal(true);\n };\n\n const confirmDeleteSelectedReplicationRules = () => {\n setSelectedRRule(\"selectedRules\");\n setDeleteSelectedRules(true);\n setDeleteReplicationModal(true);\n };\n\n const editReplicationRule = (replication: BucketReplicationRule) => {\n setSelectedRRule(replication.id);\n setEditReplicationModal(true);\n };\n\n const ruleDestDisplay = (events: BucketReplicationDestination) => {\n return {events.bucket.replace(\"arn:aws:s3:::\", \"\")};\n };\n\n const tagDisplay = (events: BucketReplicationRule) => {\n return {events && events.tags !== \"\" ? \"Yes\" : \"No\"};\n };\n\n const selectAllItems = () => {\n if (selectedRepRules.length === replicationRules.length) {\n setSelectedRepRules([]);\n return;\n }\n setSelectedRepRules(replicationRules.map((x) => x.id));\n };\n\n const selectRules = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedRepRules]; // We clone the selectedSAs array\n if (checked) {\n // If the user has checked this field we need to push this to selectedSAs\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n setSelectedRepRules(elements);\n return elements;\n };\n\n const replicationTableActions: any = [\n {\n type: \"delete\",\n onClick: confirmDeleteReplication,\n },\n {\n type: \"view\",\n onClick: editReplicationRule,\n disableButtonFunction: !hasPermission(\n bucketName,\n [\n IAM_SCOPES.S3_PUT_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n true,\n ),\n },\n ];\n\n return (\n \n {openSetReplication && (\n \n )}\n\n {deleteReplicationModal && (\n 0 &&\n selectedRepRules.length === replicationRules.length\n }\n deleteSelectedRules={deleteSelectedRules}\n />\n )}\n\n {editReplicationModal && (\n \n )}\n \n \n \n {\n confirmDeleteSelectedReplicationRules();\n }}\n label={\"Remove Selected Rules\"}\n icon={}\n color={\"secondary\"}\n disabled={\n selectedRepRules.length === 0 ||\n replicationRules.length === 0\n }\n variant={\"secondary\"}\n />\n \n \n \n \n {\n setOpenReplicationOpen(true);\n }}\n label={\"Add Replication Rule\"}\n icon={}\n variant={\"callAction\"}\n />\n \n \n \n }\n >\n Replication\n \n \n \n \n selectRules(e)}\n onSelectAll={selectAllItems}\n />\n \n \n \n
\n }\n help={\n \n MinIO supports server-side and client-side replication of\n objects between source and destination buckets.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n
\n
\n );\n};\n\nexport default BucketReplicationPanel;\n"],"names":["EditReplicationModal","withSuspense","React","AddReplicationModal","DeleteReplicationRule","dispatch","useAppDispatch","params","useParams","loadingBucket","useSelector","selBucketDetailsLoading","_useState","useState","_useState2","_slicedToArray","loadingReplication","setLoadingReplication","_useState3","_useState4","replicationRules","setReplicationRules","_useState5","_useState6","deleteReplicationModal","setDeleteReplicationModal","_useState7","_useState8","openSetReplication","setOpenSetReplication","_useState9","_useState10","editReplicationModal","setEditReplicationModal","_useState11","_useState12","selectedRRule","setSelectedRRule","_useState13","_useState14","selectedRepRules","setSelectedRepRules","_useState15","_useState16","deleteSelectedRules","setDeleteSelectedRules","bucketName","displayReplicationRules","hasPermission","IAM_SCOPES","S3_GET_REPLICATION_CONFIGURATION","S3_GET_ACTIONS","useEffect","setHelpName","api","invoke","concat","then","res","r","rules","sort","a","b","priority","catch","err","setErrorSnackMessage","setOpenReplicationOpen","arguments","length","undefined","replicationTableActions","type","onClick","replication","id","disableButtonFunction","S3_PUT_REPLICATION_CONFIGURATION","S3_PUT_ACTIONS","_jsxs","Fragment","children","_jsx","closeModalAndRefresh","open","deleteOpen","selectedBucket","closeDeleteModalAndRefresh","refresh","ruleToDelete","rulesToDelete","remainingRules","allSelected","ruleID","SectionTitle","separator","sx","marginBottom","actions","Box","style","display","gap","SecureComponent","scopes","resource","matchAll","errorProps","disabled","TooltipWrapper","tooltip","Button","label","icon","TrashIcon","color","variant","AddIcon","Grid","container","item","xs","DataTable","itemActions","columns","elementKey","width","contentTextAlign","renderFunction","events","bucket","replace","tags","isLoading","records","entityName","idField","customPaperHeight","textSelectable","selectedItems","onSelect","e","targetD","target","value","checked","elements","_toConsumableArray","push","filter","element","selectRules","onSelectAll","map","x","HelpBox","title","iconComponent","BucketsIcon","help","href","rel"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/5904.c1d4d6b7.chunk.js b/portal-ui/build/static/js/5904.c1d4d6b7.chunk.js new file mode 100644 index 000000000..95229f867 --- /dev/null +++ b/portal-ui/build/static/js/5904.c1d4d6b7.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[5904],{89673:function(e,t,n){n.d(t,{Z:function(){return C}});var r=n(84506),o=n(29439),i=n(4942),a=n(63366),s=n(87462),d=n(72791),c=(n(57441),n(28182)),u=n(94419),l=n(66934),p=n(31402),f=n(56125),m=n(35527),v=n(27318),h=n(98278),Z=n(75878),g=n(21217);function x(e){return(0,g.Z)("MuiAccordion",e)}var b=(0,Z.Z)("MuiAccordion",["root","rounded","expanded","disabled","gutters","region"]),y=n(80184),w=["children","className","defaultExpanded","disabled","disableGutters","expanded","onChange","square","TransitionComponent","TransitionProps"],R=(0,l.ZP)(m.Z,{name:"MuiAccordion",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[(0,i.Z)({},"& .".concat(b.region),t.region),t.root,!n.square&&t.rounded,!n.disableGutters&&t.gutters]}})((function(e){var t,n=e.theme,r={duration:n.transitions.duration.shortest};return t={position:"relative",transition:n.transitions.create(["margin"],r),overflowAnchor:"none","&:before":{position:"absolute",left:0,top:-1,right:0,height:1,content:'""',opacity:1,backgroundColor:(n.vars||n).palette.divider,transition:n.transitions.create(["opacity","background-color"],r)},"&:first-of-type":{"&:before":{display:"none"}}},(0,i.Z)(t,"&.".concat(b.expanded),{"&:before":{opacity:0},"&:first-of-type":{marginTop:0},"&:last-of-type":{marginBottom:0},"& + &":{"&:before":{display:"none"}}}),(0,i.Z)(t,"&.".concat(b.disabled),{backgroundColor:(n.vars||n).palette.action.disabledBackground}),t}),(function(e){var t=e.theme,n=e.ownerState;return(0,s.Z)({},!n.square&&{borderRadius:0,"&:first-of-type":{borderTopLeftRadius:(t.vars||t).shape.borderRadius,borderTopRightRadius:(t.vars||t).shape.borderRadius},"&:last-of-type":{borderBottomLeftRadius:(t.vars||t).shape.borderRadius,borderBottomRightRadius:(t.vars||t).shape.borderRadius,"@supports (-ms-ime-align: auto)":{borderBottomLeftRadius:0,borderBottomRightRadius:0}}},!n.disableGutters&&(0,i.Z)({},"&.".concat(b.expanded),{margin:"16px 0"}))})),C=d.forwardRef((function(e,t){var n=(0,p.Z)({props:e,name:"MuiAccordion"}),i=n.children,l=n.className,m=n.defaultExpanded,Z=void 0!==m&&m,g=n.disabled,b=void 0!==g&&g,C=n.disableGutters,S=void 0!==C&&C,E=n.expanded,M=n.onChange,A=n.square,N=void 0!==A&&A,G=n.TransitionComponent,k=void 0===G?f.Z:G,I=n.TransitionProps,T=(0,a.Z)(n,w),j=(0,h.Z)({controlled:E,default:Z,name:"Accordion",state:"expanded"}),P=(0,o.Z)(j,2),z=P[0],D=P[1],W=d.useCallback((function(e){D(!z),M&&M(e,!z)}),[z,M,D]),V=d.Children.toArray(i),q=(0,r.Z)(V),B=q[0],H=q.slice(1),L=d.useMemo((function(){return{expanded:z,disabled:b,disableGutters:S,toggle:W}}),[z,b,S,W]),F=(0,s.Z)({},n,{square:N,disabled:b,disableGutters:S,expanded:z}),_=function(e){var t=e.classes,n={root:["root",!e.square&&"rounded",e.expanded&&"expanded",e.disabled&&"disabled",!e.disableGutters&&"gutters"],region:["region"]};return(0,u.Z)(n,x,t)}(F);return(0,y.jsxs)(R,(0,s.Z)({className:(0,c.Z)(_.root,l),ref:t,ownerState:F,square:N},T,{children:[(0,y.jsx)(v.Z.Provider,{value:L,children:B}),(0,y.jsx)(k,(0,s.Z)({in:z,timeout:"auto"},I,{children:(0,y.jsx)("div",{"aria-labelledby":B.props.id,id:B.props["aria-controls"],role:"region",className:_.region,children:H})}))]}))}))},27318:function(e,t,n){var r=n(72791).createContext({});t.Z=r},3721:function(e,t,n){n.d(t,{Z:function(){return h}});var r=n(87462),o=n(63366),i=n(72791),a=n(28182),s=n(94419),d=n(66934),c=n(31402),u=n(75878),l=n(21217);function p(e){return(0,l.Z)("MuiAccordionDetails",e)}(0,u.Z)("MuiAccordionDetails",["root"]);var f=n(80184),m=["className"],v=(0,d.ZP)("div",{name:"MuiAccordionDetails",slot:"Root",overridesResolver:function(e,t){return t.root}})((function(e){return{padding:e.theme.spacing(1,2,2)}})),h=i.forwardRef((function(e,t){var n=(0,c.Z)({props:e,name:"MuiAccordionDetails"}),i=n.className,d=(0,o.Z)(n,m),u=n,l=function(e){var t=e.classes;return(0,s.Z)({root:["root"]},p,t)}(u);return(0,f.jsx)(v,(0,r.Z)({className:(0,a.Z)(l.root,i),ref:t,ownerState:u},d))}))},55818:function(e,t,n){n.d(t,{Z:function(){return w}});var r=n(4942),o=n(63366),i=n(87462),a=n(72791),s=n(28182),d=n(94419),c=n(66934),u=n(31402),l=n(95080),p=n(27318),f=n(75878),m=n(21217);function v(e){return(0,m.Z)("MuiAccordionSummary",e)}var h=(0,f.Z)("MuiAccordionSummary",["root","expanded","focusVisible","disabled","gutters","contentGutters","content","expandIconWrapper"]),Z=n(80184),g=["children","className","expandIcon","focusVisibleClassName","onClick"],x=(0,c.ZP)(l.Z,{name:"MuiAccordionSummary",slot:"Root",overridesResolver:function(e,t){return t.root}})((function(e){var t,n=e.theme,o=e.ownerState,a={duration:n.transitions.duration.shortest};return(0,i.Z)((t={display:"flex",minHeight:48,padding:n.spacing(0,2),transition:n.transitions.create(["min-height","background-color"],a)},(0,r.Z)(t,"&.".concat(h.focusVisible),{backgroundColor:(n.vars||n).palette.action.focus}),(0,r.Z)(t,"&.".concat(h.disabled),{opacity:(n.vars||n).palette.action.disabledOpacity}),(0,r.Z)(t,"&:hover:not(.".concat(h.disabled,")"),{cursor:"pointer"}),t),!o.disableGutters&&(0,r.Z)({},"&.".concat(h.expanded),{minHeight:64}))})),b=(0,c.ZP)("div",{name:"MuiAccordionSummary",slot:"Content",overridesResolver:function(e,t){return t.content}})((function(e){var t=e.theme,n=e.ownerState;return(0,i.Z)({display:"flex",flexGrow:1,margin:"12px 0"},!n.disableGutters&&(0,r.Z)({transition:t.transitions.create(["margin"],{duration:t.transitions.duration.shortest})},"&.".concat(h.expanded),{margin:"20px 0"}))})),y=(0,c.ZP)("div",{name:"MuiAccordionSummary",slot:"ExpandIconWrapper",overridesResolver:function(e,t){return t.expandIconWrapper}})((function(e){var t=e.theme;return(0,r.Z)({display:"flex",color:(t.vars||t).palette.action.active,transform:"rotate(0deg)",transition:t.transitions.create("transform",{duration:t.transitions.duration.shortest})},"&.".concat(h.expanded),{transform:"rotate(180deg)"})})),w=a.forwardRef((function(e,t){var n=(0,u.Z)({props:e,name:"MuiAccordionSummary"}),r=n.children,c=n.className,l=n.expandIcon,f=n.focusVisibleClassName,m=n.onClick,h=(0,o.Z)(n,g),w=a.useContext(p.Z),R=w.disabled,C=void 0!==R&&R,S=w.disableGutters,E=w.expanded,M=w.toggle,A=(0,i.Z)({},n,{expanded:E,disabled:C,disableGutters:S}),N=function(e){var t=e.classes,n=e.expanded,r=e.disabled,o=e.disableGutters,i={root:["root",n&&"expanded",r&&"disabled",!o&&"gutters"],focusVisible:["focusVisible"],content:["content",n&&"expanded",!o&&"contentGutters"],expandIconWrapper:["expandIconWrapper",n&&"expanded"]};return(0,d.Z)(i,v,t)}(A);return(0,Z.jsxs)(x,(0,i.Z)({focusRipple:!1,disableRipple:!0,disabled:C,component:"div","aria-expanded":E,className:(0,s.Z)(N.root,c),focusVisibleClassName:(0,s.Z)(N.focusVisible,f),onClick:function(e){M&&M(e),m&&m(e)},ref:t,ownerState:A},h,{children:[(0,Z.jsx)(b,{className:N.content,ownerState:A,children:r}),l&&(0,Z.jsx)(y,{className:N.expandIconWrapper,ownerState:A,children:l})]}))}))},56125:function(e,t,n){n.d(t,{Z:function(){return S}});var r=n(4942),o=n(63366),i=n(87462),a=n(72791),s=n(28182),d=n(18875),c=n(94419),u=n(66934),l=n(31402),p=n(81314),f=n(4999),m=n(13967),v=n(42071),h=n(75878),Z=n(21217);function g(e){return(0,Z.Z)("MuiCollapse",e)}(0,h.Z)("MuiCollapse",["root","horizontal","vertical","entered","hidden","wrapper","wrapperInner"]);var x=n(80184),b=["addEndListener","children","className","collapsedSize","component","easing","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","orientation","style","timeout","TransitionComponent"],y=(0,u.ZP)("div",{name:"MuiCollapse",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,t[n.orientation],"entered"===n.state&&t.entered,"exited"===n.state&&!n.in&&"0px"===n.collapsedSize&&t.hidden]}})((function(e){var t=e.theme,n=e.ownerState;return(0,i.Z)({height:0,overflow:"hidden",transition:t.transitions.create("height")},"horizontal"===n.orientation&&{height:"auto",width:0,transition:t.transitions.create("width")},"entered"===n.state&&(0,i.Z)({height:"auto",overflow:"visible"},"horizontal"===n.orientation&&{width:"auto"}),"exited"===n.state&&!n.in&&"0px"===n.collapsedSize&&{visibility:"hidden"})})),w=(0,u.ZP)("div",{name:"MuiCollapse",slot:"Wrapper",overridesResolver:function(e,t){return t.wrapper}})((function(e){var t=e.ownerState;return(0,i.Z)({display:"flex",width:"100%"},"horizontal"===t.orientation&&{width:"auto",height:"100%"})})),R=(0,u.ZP)("div",{name:"MuiCollapse",slot:"WrapperInner",overridesResolver:function(e,t){return t.wrapperInner}})((function(e){var t=e.ownerState;return(0,i.Z)({width:"100%"},"horizontal"===t.orientation&&{width:"auto",height:"100%"})})),C=a.forwardRef((function(e,t){var n=(0,l.Z)({props:e,name:"MuiCollapse"}),u=n.addEndListener,h=n.children,Z=n.className,C=n.collapsedSize,S=void 0===C?"0px":C,E=n.component,M=n.easing,A=n.in,N=n.onEnter,G=n.onEntered,k=n.onEntering,I=n.onExit,T=n.onExited,j=n.onExiting,P=n.orientation,z=void 0===P?"vertical":P,D=n.style,W=n.timeout,V=void 0===W?p.x9.standard:W,q=n.TransitionComponent,B=void 0===q?d.ZP:q,H=(0,o.Z)(n,b),L=(0,i.Z)({},n,{orientation:z,collapsedSize:S}),F=function(e){var t=e.orientation,n=e.classes,r={root:["root","".concat(t)],entered:["entered"],hidden:["hidden"],wrapper:["wrapper","".concat(t)],wrapperInner:["wrapperInner","".concat(t)]};return(0,c.Z)(r,g,n)}(L),_=(0,m.Z)(),O=a.useRef(),J=a.useRef(null),K=a.useRef(),Q="number"===typeof S?"".concat(S,"px"):S,U="horizontal"===z,X=U?"width":"height";a.useEffect((function(){return function(){clearTimeout(O.current)}}),[]);var Y=a.useRef(null),$=(0,v.Z)(t,Y),ee=function(e){return function(t){if(e){var n=Y.current;void 0===t?e(n):e(n,t)}}},te=function(){return J.current?J.current[U?"clientWidth":"clientHeight"]:0},ne=ee((function(e,t){J.current&&U&&(J.current.style.position="absolute"),e.style[X]=Q,N&&N(e,t)})),re=ee((function(e,t){var n=te();J.current&&U&&(J.current.style.position="");var r=(0,f.C)({style:D,timeout:V,easing:M},{mode:"enter"}),o=r.duration,i=r.easing;if("auto"===V){var a=_.transitions.getAutoHeightDuration(n);e.style.transitionDuration="".concat(a,"ms"),K.current=a}else e.style.transitionDuration="string"===typeof o?o:"".concat(o,"ms");e.style[X]="".concat(n,"px"),e.style.transitionTimingFunction=i,k&&k(e,t)})),oe=ee((function(e,t){e.style[X]="auto",G&&G(e,t)})),ie=ee((function(e){e.style[X]="".concat(te(),"px"),I&&I(e)})),ae=ee(T),se=ee((function(e){var t=te(),n=(0,f.C)({style:D,timeout:V,easing:M},{mode:"exit"}),r=n.duration,o=n.easing;if("auto"===V){var i=_.transitions.getAutoHeightDuration(t);e.style.transitionDuration="".concat(i,"ms"),K.current=i}else e.style.transitionDuration="string"===typeof r?r:"".concat(r,"ms");e.style[X]=Q,e.style.transitionTimingFunction=o,j&&j(e)}));return(0,x.jsx)(B,(0,i.Z)({in:A,onEnter:ne,onEntered:oe,onEntering:re,onExit:ie,onExited:ae,onExiting:se,addEndListener:function(e){"auto"===V&&(O.current=setTimeout(e,K.current||0)),u&&u(Y.current,e)},nodeRef:Y,timeout:"auto"===V?null:V},H,{children:function(e,t){return(0,x.jsx)(y,(0,i.Z)({as:E,className:(0,s.Z)(F.root,Z,{entered:F.entered,exited:!A&&"0px"===Q&&F.hidden}[e]),style:(0,i.Z)((0,r.Z)({},U?"minWidth":"minHeight",Q),D),ownerState:(0,i.Z)({},L,{state:e}),ref:$},t,{children:(0,x.jsx)(w,{ownerState:(0,i.Z)({},L,{state:e}),className:F.wrapper,ref:J,children:(0,x.jsx)(R,{ownerState:(0,i.Z)({},L,{state:e}),className:F.wrapperInner,children:h})})}))}}))}));C.muiSupportAuto=!0;var S=C}}]); +//# sourceMappingURL=5904.c1d4d6b7.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/5904.c1d4d6b7.chunk.js.map b/portal-ui/build/static/js/5904.c1d4d6b7.chunk.js.map new file mode 100644 index 000000000..04c2b7c36 --- /dev/null +++ b/portal-ui/build/static/js/5904.c1d4d6b7.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/5904.c1d4d6b7.chunk.js","mappings":"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","sources":["../node_modules/@mui/material/Accordion/accordionClasses.js","../node_modules/@mui/material/Accordion/Accordion.js","../node_modules/@mui/material/Accordion/AccordionContext.js","../node_modules/@mui/material/AccordionDetails/accordionDetailsClasses.js","../node_modules/@mui/material/AccordionDetails/AccordionDetails.js","../node_modules/@mui/material/AccordionSummary/accordionSummaryClasses.js","../node_modules/@mui/material/AccordionSummary/AccordionSummary.js","../node_modules/@mui/material/Collapse/collapseClasses.js","../node_modules/@mui/material/Collapse/Collapse.js"],"sourcesContent":["import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getAccordionUtilityClass(slot) {\n return generateUtilityClass('MuiAccordion', slot);\n}\nconst accordionClasses = generateUtilityClasses('MuiAccordion', ['root', 'rounded', 'expanded', 'disabled', 'gutters', 'region']);\nexport default accordionClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"defaultExpanded\", \"disabled\", \"disableGutters\", \"expanded\", \"onChange\", \"square\", \"TransitionComponent\", \"TransitionProps\"];\nimport * as React from 'react';\nimport { isFragment } from 'react-is';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { chainPropTypes } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport Collapse from '../Collapse';\nimport Paper from '../Paper';\nimport AccordionContext from './AccordionContext';\nimport useControlled from '../utils/useControlled';\nimport accordionClasses, { getAccordionUtilityClass } from './accordionClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n square,\n expanded,\n disabled,\n disableGutters\n } = ownerState;\n const slots = {\n root: ['root', !square && 'rounded', expanded && 'expanded', disabled && 'disabled', !disableGutters && 'gutters'],\n region: ['region']\n };\n return composeClasses(slots, getAccordionUtilityClass, classes);\n};\nconst AccordionRoot = styled(Paper, {\n name: 'MuiAccordion',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${accordionClasses.region}`]: styles.region\n }, styles.root, !ownerState.square && styles.rounded, !ownerState.disableGutters && styles.gutters];\n }\n})(({\n theme\n}) => {\n const transition = {\n duration: theme.transitions.duration.shortest\n };\n return {\n position: 'relative',\n transition: theme.transitions.create(['margin'], transition),\n overflowAnchor: 'none',\n // Keep the same scrolling position\n '&:before': {\n position: 'absolute',\n left: 0,\n top: -1,\n right: 0,\n height: 1,\n content: '\"\"',\n opacity: 1,\n backgroundColor: (theme.vars || theme).palette.divider,\n transition: theme.transitions.create(['opacity', 'background-color'], transition)\n },\n '&:first-of-type': {\n '&:before': {\n display: 'none'\n }\n },\n [`&.${accordionClasses.expanded}`]: {\n '&:before': {\n opacity: 0\n },\n '&:first-of-type': {\n marginTop: 0\n },\n '&:last-of-type': {\n marginBottom: 0\n },\n '& + &': {\n '&:before': {\n display: 'none'\n }\n }\n },\n [`&.${accordionClasses.disabled}`]: {\n backgroundColor: (theme.vars || theme).palette.action.disabledBackground\n }\n };\n}, ({\n theme,\n ownerState\n}) => _extends({}, !ownerState.square && {\n borderRadius: 0,\n '&:first-of-type': {\n borderTopLeftRadius: (theme.vars || theme).shape.borderRadius,\n borderTopRightRadius: (theme.vars || theme).shape.borderRadius\n },\n '&:last-of-type': {\n borderBottomLeftRadius: (theme.vars || theme).shape.borderRadius,\n borderBottomRightRadius: (theme.vars || theme).shape.borderRadius,\n // Fix a rendering issue on Edge\n '@supports (-ms-ime-align: auto)': {\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0\n }\n }\n}, !ownerState.disableGutters && {\n [`&.${accordionClasses.expanded}`]: {\n margin: '16px 0'\n }\n}));\nconst Accordion = /*#__PURE__*/React.forwardRef(function Accordion(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiAccordion'\n });\n const {\n children: childrenProp,\n className,\n defaultExpanded = false,\n disabled = false,\n disableGutters = false,\n expanded: expandedProp,\n onChange,\n square = false,\n TransitionComponent = Collapse,\n TransitionProps\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [expanded, setExpandedState] = useControlled({\n controlled: expandedProp,\n default: defaultExpanded,\n name: 'Accordion',\n state: 'expanded'\n });\n const handleChange = React.useCallback(event => {\n setExpandedState(!expanded);\n if (onChange) {\n onChange(event, !expanded);\n }\n }, [expanded, onChange, setExpandedState]);\n const [summary, ...children] = React.Children.toArray(childrenProp);\n const contextValue = React.useMemo(() => ({\n expanded,\n disabled,\n disableGutters,\n toggle: handleChange\n }), [expanded, disabled, disableGutters, handleChange]);\n const ownerState = _extends({}, props, {\n square,\n disabled,\n disableGutters,\n expanded\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(AccordionRoot, _extends({\n className: clsx(classes.root, className),\n ref: ref,\n ownerState: ownerState,\n square: square\n }, other, {\n children: [/*#__PURE__*/_jsx(AccordionContext.Provider, {\n value: contextValue,\n children: summary\n }), /*#__PURE__*/_jsx(TransitionComponent, _extends({\n in: expanded,\n timeout: \"auto\"\n }, TransitionProps, {\n children: /*#__PURE__*/_jsx(\"div\", {\n \"aria-labelledby\": summary.props.id,\n id: summary.props['aria-controls'],\n role: \"region\",\n className: classes.region,\n children: children\n })\n }))]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Accordion.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: chainPropTypes(PropTypes.node.isRequired, props => {\n const summary = React.Children.toArray(props.children)[0];\n if (isFragment(summary)) {\n return new Error(\"MUI: The Accordion doesn't accept a Fragment as a child. \" + 'Consider providing an array instead.');\n }\n if (! /*#__PURE__*/React.isValidElement(summary)) {\n return new Error('MUI: Expected the first child of Accordion to be a valid element.');\n }\n return null;\n }),\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * If `true`, expands the accordion by default.\n * @default false\n */\n defaultExpanded: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, it removes the margin between two expanded accordion items and the increase of height.\n * @default false\n */\n disableGutters: PropTypes.bool,\n /**\n * If `true`, expands the accordion, otherwise collapse it.\n * Setting this prop enables control over the accordion.\n */\n expanded: PropTypes.bool,\n /**\n * Callback fired when the expand/collapse state is changed.\n *\n * @param {React.SyntheticEvent} event The event source of the callback. **Warning**: This is a generic event not a change event.\n * @param {boolean} expanded The `expanded` state of the accordion.\n */\n onChange: PropTypes.func,\n /**\n * If `true`, rounded corners are disabled.\n * @default false\n */\n square: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The component used for the transition.\n * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.\n * @default Collapse\n */\n TransitionComponent: PropTypes.elementType,\n /**\n * Props applied to the transition element.\n * By default, the element is based on this [`Transition`](http://reactcommunity.org/react-transition-group/transition/) component.\n */\n TransitionProps: PropTypes.object\n} : void 0;\nexport default Accordion;","import * as React from 'react';\n\n/**\n * @ignore - internal component.\n * @type {React.Context<{} | {expanded: boolean, disabled: boolean, toggle: () => void}>}\n */\nconst AccordionContext = /*#__PURE__*/React.createContext({});\nif (process.env.NODE_ENV !== 'production') {\n AccordionContext.displayName = 'AccordionContext';\n}\nexport default AccordionContext;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getAccordionDetailsUtilityClass(slot) {\n return generateUtilityClass('MuiAccordionDetails', slot);\n}\nconst accordionDetailsClasses = generateUtilityClasses('MuiAccordionDetails', ['root']);\nexport default accordionDetailsClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { getAccordionDetailsUtilityClass } from './accordionDetailsClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getAccordionDetailsUtilityClass, classes);\n};\nconst AccordionDetailsRoot = styled('div', {\n name: 'MuiAccordionDetails',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})(({\n theme\n}) => ({\n padding: theme.spacing(1, 2, 2)\n}));\nconst AccordionDetails = /*#__PURE__*/React.forwardRef(function AccordionDetails(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiAccordionDetails'\n });\n const {\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = props;\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(AccordionDetailsRoot, _extends({\n className: clsx(classes.root, className),\n ref: ref,\n ownerState: ownerState\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? AccordionDetails.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default AccordionDetails;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getAccordionSummaryUtilityClass(slot) {\n return generateUtilityClass('MuiAccordionSummary', slot);\n}\nconst accordionSummaryClasses = generateUtilityClasses('MuiAccordionSummary', ['root', 'expanded', 'focusVisible', 'disabled', 'gutters', 'contentGutters', 'content', 'expandIconWrapper']);\nexport default accordionSummaryClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"expandIcon\", \"focusVisibleClassName\", \"onClick\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport ButtonBase from '../ButtonBase';\nimport AccordionContext from '../Accordion/AccordionContext';\nimport accordionSummaryClasses, { getAccordionSummaryUtilityClass } from './accordionSummaryClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n expanded,\n disabled,\n disableGutters\n } = ownerState;\n const slots = {\n root: ['root', expanded && 'expanded', disabled && 'disabled', !disableGutters && 'gutters'],\n focusVisible: ['focusVisible'],\n content: ['content', expanded && 'expanded', !disableGutters && 'contentGutters'],\n expandIconWrapper: ['expandIconWrapper', expanded && 'expanded']\n };\n return composeClasses(slots, getAccordionSummaryUtilityClass, classes);\n};\nconst AccordionSummaryRoot = styled(ButtonBase, {\n name: 'MuiAccordionSummary',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})(({\n theme,\n ownerState\n}) => {\n const transition = {\n duration: theme.transitions.duration.shortest\n };\n return _extends({\n display: 'flex',\n minHeight: 48,\n padding: theme.spacing(0, 2),\n transition: theme.transitions.create(['min-height', 'background-color'], transition),\n [`&.${accordionSummaryClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette.action.focus\n },\n [`&.${accordionSummaryClasses.disabled}`]: {\n opacity: (theme.vars || theme).palette.action.disabledOpacity\n },\n [`&:hover:not(.${accordionSummaryClasses.disabled})`]: {\n cursor: 'pointer'\n }\n }, !ownerState.disableGutters && {\n [`&.${accordionSummaryClasses.expanded}`]: {\n minHeight: 64\n }\n });\n});\nconst AccordionSummaryContent = styled('div', {\n name: 'MuiAccordionSummary',\n slot: 'Content',\n overridesResolver: (props, styles) => styles.content\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'flex',\n flexGrow: 1,\n margin: '12px 0'\n}, !ownerState.disableGutters && {\n transition: theme.transitions.create(['margin'], {\n duration: theme.transitions.duration.shortest\n }),\n [`&.${accordionSummaryClasses.expanded}`]: {\n margin: '20px 0'\n }\n}));\nconst AccordionSummaryExpandIconWrapper = styled('div', {\n name: 'MuiAccordionSummary',\n slot: 'ExpandIconWrapper',\n overridesResolver: (props, styles) => styles.expandIconWrapper\n})(({\n theme\n}) => ({\n display: 'flex',\n color: (theme.vars || theme).palette.action.active,\n transform: 'rotate(0deg)',\n transition: theme.transitions.create('transform', {\n duration: theme.transitions.duration.shortest\n }),\n [`&.${accordionSummaryClasses.expanded}`]: {\n transform: 'rotate(180deg)'\n }\n}));\nconst AccordionSummary = /*#__PURE__*/React.forwardRef(function AccordionSummary(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiAccordionSummary'\n });\n const {\n children,\n className,\n expandIcon,\n focusVisibleClassName,\n onClick\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const {\n disabled = false,\n disableGutters,\n expanded,\n toggle\n } = React.useContext(AccordionContext);\n const handleChange = event => {\n if (toggle) {\n toggle(event);\n }\n if (onClick) {\n onClick(event);\n }\n };\n const ownerState = _extends({}, props, {\n expanded,\n disabled,\n disableGutters\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(AccordionSummaryRoot, _extends({\n focusRipple: false,\n disableRipple: true,\n disabled: disabled,\n component: \"div\",\n \"aria-expanded\": expanded,\n className: clsx(classes.root, className),\n focusVisibleClassName: clsx(classes.focusVisible, focusVisibleClassName),\n onClick: handleChange,\n ref: ref,\n ownerState: ownerState\n }, other, {\n children: [/*#__PURE__*/_jsx(AccordionSummaryContent, {\n className: classes.content,\n ownerState: ownerState,\n children: children\n }), expandIcon && /*#__PURE__*/_jsx(AccordionSummaryExpandIconWrapper, {\n className: classes.expandIconWrapper,\n ownerState: ownerState,\n children: expandIcon\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? AccordionSummary.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The icon to display as the expand indicator.\n */\n expandIcon: PropTypes.node,\n /**\n * This prop can help identify which element has keyboard focus.\n * The class name will be applied when the element gains the focus through keyboard interaction.\n * It's a polyfill for the [CSS :focus-visible selector](https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo).\n * The rationale for using this feature [is explained here](https://github.com/WICG/focus-visible/blob/HEAD/explainer.md).\n * A [polyfill can be used](https://github.com/WICG/focus-visible) to apply a `focus-visible` class to other components\n * if needed.\n */\n focusVisibleClassName: PropTypes.string,\n /**\n * @ignore\n */\n onClick: PropTypes.func,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default AccordionSummary;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getCollapseUtilityClass(slot) {\n return generateUtilityClass('MuiCollapse', slot);\n}\nconst collapseClasses = generateUtilityClasses('MuiCollapse', ['root', 'horizontal', 'vertical', 'entered', 'hidden', 'wrapper', 'wrapperInner']);\nexport default collapseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"addEndListener\", \"children\", \"className\", \"collapsedSize\", \"component\", \"easing\", \"in\", \"onEnter\", \"onEntered\", \"onEntering\", \"onExit\", \"onExited\", \"onExiting\", \"orientation\", \"style\", \"timeout\", \"TransitionComponent\"];\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport { Transition } from 'react-transition-group';\nimport { elementTypeAcceptingRef } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { duration } from '../styles/createTransitions';\nimport { getTransitionProps } from '../transitions/utils';\nimport useTheme from '../styles/useTheme';\nimport { useForkRef } from '../utils';\nimport { getCollapseUtilityClass } from './collapseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n orientation,\n classes\n } = ownerState;\n const slots = {\n root: ['root', `${orientation}`],\n entered: ['entered'],\n hidden: ['hidden'],\n wrapper: ['wrapper', `${orientation}`],\n wrapperInner: ['wrapperInner', `${orientation}`]\n };\n return composeClasses(slots, getCollapseUtilityClass, classes);\n};\nconst CollapseRoot = styled('div', {\n name: 'MuiCollapse',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[ownerState.orientation], ownerState.state === 'entered' && styles.entered, ownerState.state === 'exited' && !ownerState.in && ownerState.collapsedSize === '0px' && styles.hidden];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n height: 0,\n overflow: 'hidden',\n transition: theme.transitions.create('height')\n}, ownerState.orientation === 'horizontal' && {\n height: 'auto',\n width: 0,\n transition: theme.transitions.create('width')\n}, ownerState.state === 'entered' && _extends({\n height: 'auto',\n overflow: 'visible'\n}, ownerState.orientation === 'horizontal' && {\n width: 'auto'\n}), ownerState.state === 'exited' && !ownerState.in && ownerState.collapsedSize === '0px' && {\n visibility: 'hidden'\n}));\nconst CollapseWrapper = styled('div', {\n name: 'MuiCollapse',\n slot: 'Wrapper',\n overridesResolver: (props, styles) => styles.wrapper\n})(({\n ownerState\n}) => _extends({\n // Hack to get children with a negative margin to not falsify the height computation.\n display: 'flex',\n width: '100%'\n}, ownerState.orientation === 'horizontal' && {\n width: 'auto',\n height: '100%'\n}));\nconst CollapseWrapperInner = styled('div', {\n name: 'MuiCollapse',\n slot: 'WrapperInner',\n overridesResolver: (props, styles) => styles.wrapperInner\n})(({\n ownerState\n}) => _extends({\n width: '100%'\n}, ownerState.orientation === 'horizontal' && {\n width: 'auto',\n height: '100%'\n}));\n\n/**\n * The Collapse transition is used by the\n * [Vertical Stepper](/material-ui/react-stepper/#vertical-stepper) StepContent component.\n * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.\n */\nconst Collapse = /*#__PURE__*/React.forwardRef(function Collapse(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiCollapse'\n });\n const {\n addEndListener,\n children,\n className,\n collapsedSize: collapsedSizeProp = '0px',\n component,\n easing,\n in: inProp,\n onEnter,\n onEntered,\n onEntering,\n onExit,\n onExited,\n onExiting,\n orientation = 'vertical',\n style,\n timeout = duration.standard,\n // eslint-disable-next-line react/prop-types\n TransitionComponent = Transition\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n orientation,\n collapsedSize: collapsedSizeProp\n });\n const classes = useUtilityClasses(ownerState);\n const theme = useTheme();\n const timer = React.useRef();\n const wrapperRef = React.useRef(null);\n const autoTransitionDuration = React.useRef();\n const collapsedSize = typeof collapsedSizeProp === 'number' ? `${collapsedSizeProp}px` : collapsedSizeProp;\n const isHorizontal = orientation === 'horizontal';\n const size = isHorizontal ? 'width' : 'height';\n React.useEffect(() => {\n return () => {\n clearTimeout(timer.current);\n };\n }, []);\n const nodeRef = React.useRef(null);\n const handleRef = useForkRef(ref, nodeRef);\n const normalizedTransitionCallback = callback => maybeIsAppearing => {\n if (callback) {\n const node = nodeRef.current;\n\n // onEnterXxx and onExitXxx callbacks have a different arguments.length value.\n if (maybeIsAppearing === undefined) {\n callback(node);\n } else {\n callback(node, maybeIsAppearing);\n }\n }\n };\n const getWrapperSize = () => wrapperRef.current ? wrapperRef.current[isHorizontal ? 'clientWidth' : 'clientHeight'] : 0;\n const handleEnter = normalizedTransitionCallback((node, isAppearing) => {\n if (wrapperRef.current && isHorizontal) {\n // Set absolute position to get the size of collapsed content\n wrapperRef.current.style.position = 'absolute';\n }\n node.style[size] = collapsedSize;\n if (onEnter) {\n onEnter(node, isAppearing);\n }\n });\n const handleEntering = normalizedTransitionCallback((node, isAppearing) => {\n const wrapperSize = getWrapperSize();\n if (wrapperRef.current && isHorizontal) {\n // After the size is read reset the position back to default\n wrapperRef.current.style.position = '';\n }\n const {\n duration: transitionDuration,\n easing: transitionTimingFunction\n } = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'enter'\n });\n if (timeout === 'auto') {\n const duration2 = theme.transitions.getAutoHeightDuration(wrapperSize);\n node.style.transitionDuration = `${duration2}ms`;\n autoTransitionDuration.current = duration2;\n } else {\n node.style.transitionDuration = typeof transitionDuration === 'string' ? transitionDuration : `${transitionDuration}ms`;\n }\n node.style[size] = `${wrapperSize}px`;\n node.style.transitionTimingFunction = transitionTimingFunction;\n if (onEntering) {\n onEntering(node, isAppearing);\n }\n });\n const handleEntered = normalizedTransitionCallback((node, isAppearing) => {\n node.style[size] = 'auto';\n if (onEntered) {\n onEntered(node, isAppearing);\n }\n });\n const handleExit = normalizedTransitionCallback(node => {\n node.style[size] = `${getWrapperSize()}px`;\n if (onExit) {\n onExit(node);\n }\n });\n const handleExited = normalizedTransitionCallback(onExited);\n const handleExiting = normalizedTransitionCallback(node => {\n const wrapperSize = getWrapperSize();\n const {\n duration: transitionDuration,\n easing: transitionTimingFunction\n } = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'exit'\n });\n if (timeout === 'auto') {\n // TODO: rename getAutoHeightDuration to something more generic (width support)\n // Actually it just calculates animation duration based on size\n const duration2 = theme.transitions.getAutoHeightDuration(wrapperSize);\n node.style.transitionDuration = `${duration2}ms`;\n autoTransitionDuration.current = duration2;\n } else {\n node.style.transitionDuration = typeof transitionDuration === 'string' ? transitionDuration : `${transitionDuration}ms`;\n }\n node.style[size] = collapsedSize;\n node.style.transitionTimingFunction = transitionTimingFunction;\n if (onExiting) {\n onExiting(node);\n }\n });\n const handleAddEndListener = next => {\n if (timeout === 'auto') {\n timer.current = setTimeout(next, autoTransitionDuration.current || 0);\n }\n if (addEndListener) {\n // Old call signature before `react-transition-group` implemented `nodeRef`\n addEndListener(nodeRef.current, next);\n }\n };\n return /*#__PURE__*/_jsx(TransitionComponent, _extends({\n in: inProp,\n onEnter: handleEnter,\n onEntered: handleEntered,\n onEntering: handleEntering,\n onExit: handleExit,\n onExited: handleExited,\n onExiting: handleExiting,\n addEndListener: handleAddEndListener,\n nodeRef: nodeRef,\n timeout: timeout === 'auto' ? null : timeout\n }, other, {\n children: (state, childProps) => /*#__PURE__*/_jsx(CollapseRoot, _extends({\n as: component,\n className: clsx(classes.root, className, {\n 'entered': classes.entered,\n 'exited': !inProp && collapsedSize === '0px' && classes.hidden\n }[state]),\n style: _extends({\n [isHorizontal ? 'minWidth' : 'minHeight']: collapsedSize\n }, style),\n ownerState: _extends({}, ownerState, {\n state\n }),\n ref: handleRef\n }, childProps, {\n children: /*#__PURE__*/_jsx(CollapseWrapper, {\n ownerState: _extends({}, ownerState, {\n state\n }),\n className: classes.wrapper,\n ref: wrapperRef,\n children: /*#__PURE__*/_jsx(CollapseWrapperInner, {\n ownerState: _extends({}, ownerState, {\n state\n }),\n className: classes.wrapperInner,\n children: children\n })\n })\n }))\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Collapse.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Add a custom transition end trigger. Called with the transitioning DOM\n * node and a done callback. Allows for more fine grained transition end\n * logic. Note: Timeouts are still used as a fallback if provided.\n */\n addEndListener: PropTypes.func,\n /**\n * The content node to be collapsed.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The width (horizontal) or height (vertical) of the container when collapsed.\n * @default '0px'\n */\n collapsedSize: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: elementTypeAcceptingRef,\n /**\n * The transition timing function.\n * You may specify a single easing or a object containing enter and exit values.\n */\n easing: PropTypes.oneOfType([PropTypes.shape({\n enter: PropTypes.string,\n exit: PropTypes.string\n }), PropTypes.string]),\n /**\n * If `true`, the component will transition in.\n */\n in: PropTypes.bool,\n /**\n * @ignore\n */\n onEnter: PropTypes.func,\n /**\n * @ignore\n */\n onEntered: PropTypes.func,\n /**\n * @ignore\n */\n onEntering: PropTypes.func,\n /**\n * @ignore\n */\n onExit: PropTypes.func,\n /**\n * @ignore\n */\n onExited: PropTypes.func,\n /**\n * @ignore\n */\n onExiting: PropTypes.func,\n /**\n * The transition orientation.\n * @default 'vertical'\n */\n orientation: PropTypes.oneOf(['horizontal', 'vertical']),\n /**\n * @ignore\n */\n style: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n *\n * Set to 'auto' to automatically calculate transition time based on height.\n * @default duration.standard\n */\n timeout: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })])\n} : void 0;\nCollapse.muiSupportAuto = true;\nexport default Collapse;"],"names":["getAccordionUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","AccordionRoot","styled","Paper","name","overridesResolver","props","styles","ownerState","_defineProperty","concat","accordionClasses","region","root","square","rounded","disableGutters","gutters","_ref2","_ref3","theme","transition","duration","transitions","shortest","position","create","overflowAnchor","left","top","right","height","content","opacity","backgroundColor","vars","palette","divider","display","expanded","marginTop","marginBottom","disabled","action","disabledBackground","_ref4","_extends","borderRadius","borderTopLeftRadius","shape","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","margin","React","inProps","ref","useThemeProps","childrenProp","children","className","_props$defaultExpande","defaultExpanded","_props$disabled","_props$disableGutters","expandedProp","onChange","_props$square","_props$TransitionComp","TransitionComponent","Collapse","TransitionProps","other","_objectWithoutPropertiesLoose","_useControlled","useControlled","controlled","default","state","_useControlled2","_slicedToArray","setExpandedState","handleChange","event","_React$Children$toArr","toArray","_React$Children$toArr2","_toArray","summary","slice","contextValue","toggle","classes","slots","composeClasses","useUtilityClasses","_jsxs","clsx","_jsx","AccordionContext","Provider","value","in","timeout","id","role","getAccordionDetailsUtilityClass","AccordionDetailsRoot","_ref","padding","spacing","getAccordionSummaryUtilityClass","AccordionSummaryRoot","ButtonBase","_extends2","minHeight","accordionSummaryClasses","focusVisible","focus","disabledOpacity","cursor","AccordionSummaryContent","flexGrow","AccordionSummaryExpandIconWrapper","expandIconWrapper","_ref5","color","active","transform","expandIcon","focusVisibleClassName","onClick","_React$useContext","_React$useContext$dis","focusRipple","disableRipple","component","getCollapseUtilityClass","CollapseRoot","orientation","entered","collapsedSize","hidden","overflow","width","visibility","CollapseWrapper","wrapper","CollapseWrapperInner","wrapperInner","addEndListener","_props$collapsedSize","collapsedSizeProp","easing","inProp","onEnter","onEntered","onEntering","onExit","onExited","onExiting","_props$orientation","style","_props$timeout","standard","Transition","useTheme","timer","wrapperRef","autoTransitionDuration","isHorizontal","size","clearTimeout","current","nodeRef","handleRef","useForkRef","normalizedTransitionCallback","callback","maybeIsAppearing","node","undefined","getWrapperSize","handleEnter","isAppearing","handleEntering","wrapperSize","_getTransitionProps","getTransitionProps","mode","transitionDuration","transitionTimingFunction","duration2","getAutoHeightDuration","handleEntered","handleExit","handleExited","handleExiting","_getTransitionProps2","next","setTimeout","childProps","as","muiSupportAuto"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/5980.5142636f.chunk.js b/portal-ui/build/static/js/5980.5142636f.chunk.js new file mode 100644 index 000000000..9c5e20208 --- /dev/null +++ b/portal-ui/build/static/js/5980.5142636f.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[5980],{29823:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var o=r(n(45649)),i=n(80184),a=(0,o.default)((0,i.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close");t.Z=a},3579:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var o=r(n(45649)),i=n(80184),a=(0,o.default)((0,i.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=a},20165:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var o=r(n(45649)),i=n(80184),a=(0,o.default)((0,i.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=a},45649:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return r.createSvgIcon}});var r=n(28610)},63021:function(e,t,n){"use strict";n.d(t,{Z:function(){return x}});var r=n(4942),o=n(63366),i=n(87462),a=n(72791),c=n(28182),l=n(36229),u=n(94419);var s=n(21607),f=n(66934),p=n(31402),d=n(14036),v=n(75878),m=n(21217);function g(e){return(0,m.Z)("MuiBadge",e)}var y=(0,v.Z)("MuiBadge",["root","badge","dot","standard","anchorOriginTopRight","anchorOriginBottomRight","anchorOriginTopLeft","anchorOriginBottomLeft","invisible","colorError","colorInfo","colorPrimary","colorSecondary","colorSuccess","colorWarning","overlapRectangular","overlapCircular","anchorOriginTopLeftCircular","anchorOriginTopLeftRectangular","anchorOriginTopRightCircular","anchorOriginTopRightRectangular","anchorOriginBottomLeftCircular","anchorOriginBottomLeftRectangular","anchorOriginBottomRightCircular","anchorOriginBottomRightRectangular"]),b=n(80184),h=["anchorOrigin","className","classes","component","components","componentsProps","children","overlap","color","invisible","max","badgeContent","slots","slotProps","showZero","variant"],w=(0,f.ZP)("span",{name:"MuiBadge",slot:"Root",overridesResolver:function(e,t){return t.root}})({position:"relative",display:"inline-flex",verticalAlign:"middle",flexShrink:0}),O=(0,f.ZP)("span",{name:"MuiBadge",slot:"Badge",overridesResolver:function(e,t){var n=e.ownerState;return[t.badge,t[n.variant],t["anchorOrigin".concat((0,d.Z)(n.anchorOrigin.vertical)).concat((0,d.Z)(n.anchorOrigin.horizontal)).concat((0,d.Z)(n.overlap))],"default"!==n.color&&t["color".concat((0,d.Z)(n.color))],n.invisible&&t.invisible]}})((function(e){var t=e.theme,n=e.ownerState;return(0,i.Z)({display:"flex",flexDirection:"row",flexWrap:"wrap",justifyContent:"center",alignContent:"center",alignItems:"center",position:"absolute",boxSizing:"border-box",fontFamily:t.typography.fontFamily,fontWeight:t.typography.fontWeightMedium,fontSize:t.typography.pxToRem(12),minWidth:20,lineHeight:1,padding:"0 6px",height:20,borderRadius:10,zIndex:1,transition:t.transitions.create("transform",{easing:t.transitions.easing.easeInOut,duration:t.transitions.duration.enteringScreen})},"default"!==n.color&&{backgroundColor:(t.vars||t).palette[n.color].main,color:(t.vars||t).palette[n.color].contrastText},"dot"===n.variant&&{borderRadius:4,height:8,minWidth:8,padding:0},"top"===n.anchorOrigin.vertical&&"right"===n.anchorOrigin.horizontal&&"rectangular"===n.overlap&&(0,r.Z)({top:0,right:0,transform:"scale(1) translate(50%, -50%)",transformOrigin:"100% 0%"},"&.".concat(y.invisible),{transform:"scale(0) translate(50%, -50%)"}),"bottom"===n.anchorOrigin.vertical&&"right"===n.anchorOrigin.horizontal&&"rectangular"===n.overlap&&(0,r.Z)({bottom:0,right:0,transform:"scale(1) translate(50%, 50%)",transformOrigin:"100% 100%"},"&.".concat(y.invisible),{transform:"scale(0) translate(50%, 50%)"}),"top"===n.anchorOrigin.vertical&&"left"===n.anchorOrigin.horizontal&&"rectangular"===n.overlap&&(0,r.Z)({top:0,left:0,transform:"scale(1) translate(-50%, -50%)",transformOrigin:"0% 0%"},"&.".concat(y.invisible),{transform:"scale(0) translate(-50%, -50%)"}),"bottom"===n.anchorOrigin.vertical&&"left"===n.anchorOrigin.horizontal&&"rectangular"===n.overlap&&(0,r.Z)({bottom:0,left:0,transform:"scale(1) translate(-50%, 50%)",transformOrigin:"0% 100%"},"&.".concat(y.invisible),{transform:"scale(0) translate(-50%, 50%)"}),"top"===n.anchorOrigin.vertical&&"right"===n.anchorOrigin.horizontal&&"circular"===n.overlap&&(0,r.Z)({top:"14%",right:"14%",transform:"scale(1) translate(50%, -50%)",transformOrigin:"100% 0%"},"&.".concat(y.invisible),{transform:"scale(0) translate(50%, -50%)"}),"bottom"===n.anchorOrigin.vertical&&"right"===n.anchorOrigin.horizontal&&"circular"===n.overlap&&(0,r.Z)({bottom:"14%",right:"14%",transform:"scale(1) translate(50%, 50%)",transformOrigin:"100% 100%"},"&.".concat(y.invisible),{transform:"scale(0) translate(50%, 50%)"}),"top"===n.anchorOrigin.vertical&&"left"===n.anchorOrigin.horizontal&&"circular"===n.overlap&&(0,r.Z)({top:"14%",left:"14%",transform:"scale(1) translate(-50%, -50%)",transformOrigin:"0% 0%"},"&.".concat(y.invisible),{transform:"scale(0) translate(-50%, -50%)"}),"bottom"===n.anchorOrigin.vertical&&"left"===n.anchorOrigin.horizontal&&"circular"===n.overlap&&(0,r.Z)({bottom:"14%",left:"14%",transform:"scale(1) translate(-50%, 50%)",transformOrigin:"0% 100%"},"&.".concat(y.invisible),{transform:"scale(0) translate(-50%, 50%)"}),n.invisible&&{transition:t.transitions.create("transform",{easing:t.transitions.easing.easeInOut,duration:t.transitions.duration.leavingScreen})})})),x=a.forwardRef((function(e,t){var n,r,a,f,v,m,y=(0,p.Z)({props:e,name:"MuiBadge"}),x=y.anchorOrigin,j=void 0===x?{vertical:"top",horizontal:"right"}:x,C=y.className,Z=y.component,D=y.components,P=void 0===D?{}:D,S=y.componentsProps,k=void 0===S?{}:S,E=y.children,R=y.overlap,A=void 0===R?"rectangular":R,z=y.color,F=void 0===z?"default":z,T=y.invisible,I=void 0!==T&&T,M=y.max,_=void 0===M?99:M,B=y.badgeContent,L=y.slots,N=y.slotProps,W=y.showZero,U=void 0!==W&&W,H=y.variant,K=void 0===H?"standard":H,V=(0,o.Z)(y,h),$=function(e){var t=e.badgeContent,n=e.invisible,r=void 0!==n&&n,o=e.max,i=void 0===o?99:o,a=e.showZero,c=void 0!==a&&a,u=(0,l.Z)({badgeContent:t,max:i}),s=r;!1!==r||0!==t||c||(s=!0);var f=s?u:e,p=f.badgeContent,d=f.max,v=void 0===d?i:d;return{badgeContent:p,invisible:s,max:v,displayValue:p&&Number(p)>v?"".concat(v,"+"):p}}({max:_,invisible:I,badgeContent:B,showZero:U}),q=$.badgeContent,G=$.invisible,X=$.max,Y=$.displayValue,J=(0,l.Z)({anchorOrigin:j,color:F,overlap:A,variant:K,badgeContent:B}),Q=G||null==q&&"dot"!==K,ee=Q?J:y,te=ee.color,ne=void 0===te?F:te,re=ee.overlap,oe=void 0===re?A:re,ie=ee.anchorOrigin,ae=void 0===ie?j:ie,ce=ee.variant,le=void 0===ce?K:ce,ue="dot"!==le?Y:void 0,se=(0,i.Z)({},y,{badgeContent:q,invisible:Q,max:X,displayValue:ue,showZero:U,anchorOrigin:ae,color:ne,overlap:oe,variant:le}),fe=function(e){var t=e.color,n=e.anchorOrigin,r=e.invisible,o=e.overlap,i=e.variant,a=e.classes,c=void 0===a?{}:a,l={root:["root"],badge:["badge",i,r&&"invisible","anchorOrigin".concat((0,d.Z)(n.vertical)).concat((0,d.Z)(n.horizontal)),"anchorOrigin".concat((0,d.Z)(n.vertical)).concat((0,d.Z)(n.horizontal)).concat((0,d.Z)(o)),"overlap".concat((0,d.Z)(o)),"default"!==t&&"color".concat((0,d.Z)(t))]};return(0,u.Z)(l,g,c)}(se),pe=null!=(n=null!=(r=null==L?void 0:L.root)?r:P.Root)?n:w,de=null!=(a=null!=(f=null==L?void 0:L.badge)?f:P.Badge)?a:O,ve=null!=(v=null==N?void 0:N.root)?v:k.root,me=null!=(m=null==N?void 0:N.badge)?m:k.badge,ge=(0,s.Z)({elementType:pe,externalSlotProps:ve,externalForwardedProps:V,additionalProps:{ref:t,as:Z},ownerState:se,className:(0,c.Z)(null==ve?void 0:ve.className,fe.root,C)}),ye=(0,s.Z)({elementType:de,externalSlotProps:me,ownerState:se,className:(0,c.Z)(fe.badge,null==me?void 0:me.className)});return(0,b.jsxs)(pe,(0,i.Z)({},ge,{children:[E,(0,b.jsx)(de,(0,i.Z)({},ye,{children:ue}))]}))}))},94454:function(e,t,n){"use strict";n.d(t,{Z:function(){return S}});var r=n(4942),o=n(63366),i=n(87462),a=n(72791),c=n(28182),l=n(94419),u=n(12065),s=n(97278),f=n(76189),p=n(80184),d=(0,f.Z)((0,p.jsx)("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}),"CheckBoxOutlineBlank"),v=(0,f.Z)((0,p.jsx)("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"}),"CheckBox"),m=(0,f.Z)((0,p.jsx)("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z"}),"IndeterminateCheckBox"),g=n(14036),y=n(31402),b=n(66934),h=n(75878),w=n(21217);function O(e){return(0,w.Z)("MuiCheckbox",e)}var x=(0,h.Z)("MuiCheckbox",["root","checked","disabled","indeterminate","colorPrimary","colorSecondary"]),j=["checkedIcon","color","icon","indeterminate","indeterminateIcon","inputProps","size","className"],C=(0,b.ZP)(s.Z,{shouldForwardProp:function(e){return(0,b.FO)(e)||"classes"===e},name:"MuiCheckbox",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,n.indeterminate&&t.indeterminate,"default"!==n.color&&t["color".concat((0,g.Z)(n.color))]]}})((function(e){var t,n=e.theme,o=e.ownerState;return(0,i.Z)({color:(n.vars||n).palette.text.secondary},!o.disableRipple&&{"&:hover":{backgroundColor:n.vars?"rgba(".concat("default"===o.color?n.vars.palette.action.activeChannel:n.vars.palette.primary.mainChannel," / ").concat(n.vars.palette.action.hoverOpacity,")"):(0,u.Fq)("default"===o.color?n.palette.action.active:n.palette[o.color].main,n.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==o.color&&(t={},(0,r.Z)(t,"&.".concat(x.checked,", &.").concat(x.indeterminate),{color:(n.vars||n).palette[o.color].main}),(0,r.Z)(t,"&.".concat(x.disabled),{color:(n.vars||n).palette.action.disabled}),t))})),Z=(0,p.jsx)(v,{}),D=(0,p.jsx)(d,{}),P=(0,p.jsx)(m,{}),S=a.forwardRef((function(e,t){var n,r,u=(0,y.Z)({props:e,name:"MuiCheckbox"}),s=u.checkedIcon,f=void 0===s?Z:s,d=u.color,v=void 0===d?"primary":d,m=u.icon,b=void 0===m?D:m,h=u.indeterminate,w=void 0!==h&&h,x=u.indeterminateIcon,S=void 0===x?P:x,k=u.inputProps,E=u.size,R=void 0===E?"medium":E,A=u.className,z=(0,o.Z)(u,j),F=w?S:b,T=w?S:f,I=(0,i.Z)({},u,{color:v,indeterminate:w,size:R}),M=function(e){var t=e.classes,n=e.indeterminate,r=e.color,o={root:["root",n&&"indeterminate","color".concat((0,g.Z)(r))]},a=(0,l.Z)(o,O,t);return(0,i.Z)({},t,a)}(I);return(0,p.jsx)(C,(0,i.Z)({type:"checkbox",inputProps:(0,i.Z)({"data-indeterminate":w},k),icon:a.cloneElement(F,{fontSize:null!=(n=F.props.fontSize)?n:R}),checkedIcon:a.cloneElement(T,{fontSize:null!=(r=T.props.fontSize)?r:R}),ownerState:I,ref:t,className:(0,c.Z)(M.root,A)},z,{classes:M}))}))},57064:function(e,t,n){"use strict";var r=n(63366),o=n(87462),i=n(72791),a=n(28182),c=n(94419),l=n(66934),u=n(31402),s=n(96014),f=n(66199),p=n(80184),d=["className"],v=(0,l.ZP)("div",{name:"MuiListItemIcon",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,"flex-start"===n.alignItems&&t.alignItemsFlexStart]}})((function(e){var t=e.theme,n=e.ownerState;return(0,o.Z)({minWidth:56,color:(t.vars||t).palette.action.active,flexShrink:0,display:"inline-flex"},"flex-start"===n.alignItems&&{marginTop:8})})),m=i.forwardRef((function(e,t){var n=(0,u.Z)({props:e,name:"MuiListItemIcon"}),l=n.className,m=(0,r.Z)(n,d),g=i.useContext(f.Z),y=(0,o.Z)({},n,{alignItems:g.alignItems}),b=function(e){var t=e.alignItems,n=e.classes,r={root:["root","flex-start"===t&&"alignItemsFlexStart"]};return(0,c.Z)(r,s.f,n)}(y);return(0,p.jsx)(v,(0,o.Z)({className:(0,a.Z)(b.root,l),ownerState:y,ref:t},m))}));t.Z=m},49900:function(e,t,n){"use strict";var r=n(4942),o=n(63366),i=n(87462),a=n(72791),c=n(28182),l=n(94419),u=n(20890),s=n(66199),f=n(31402),p=n(66934),d=n(29849),v=n(80184),m=["children","className","disableTypography","inset","primary","primaryTypographyProps","secondary","secondaryTypographyProps"],g=(0,p.ZP)("div",{name:"MuiListItemText",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[(0,r.Z)({},"& .".concat(d.Z.primary),t.primary),(0,r.Z)({},"& .".concat(d.Z.secondary),t.secondary),t.root,n.inset&&t.inset,n.primary&&n.secondary&&t.multiline,n.dense&&t.dense]}})((function(e){var t=e.ownerState;return(0,i.Z)({flex:"1 1 auto",minWidth:0,marginTop:4,marginBottom:4},t.primary&&t.secondary&&{marginTop:6,marginBottom:6},t.inset&&{paddingLeft:56})})),y=a.forwardRef((function(e,t){var n=(0,f.Z)({props:e,name:"MuiListItemText"}),r=n.children,p=n.className,y=n.disableTypography,b=void 0!==y&&y,h=n.inset,w=void 0!==h&&h,O=n.primary,x=n.primaryTypographyProps,j=n.secondary,C=n.secondaryTypographyProps,Z=(0,o.Z)(n,m),D=a.useContext(s.Z).dense,P=null!=O?O:r,S=j,k=(0,i.Z)({},n,{disableTypography:b,inset:w,primary:!!P,secondary:!!S,dense:D}),E=function(e){var t=e.classes,n=e.inset,r=e.primary,o=e.secondary,i={root:["root",n&&"inset",e.dense&&"dense",r&&o&&"multiline"],primary:["primary"],secondary:["secondary"]};return(0,l.Z)(i,d.L,t)}(k);return null==P||P.type===u.Z||b||(P=(0,v.jsx)(u.Z,(0,i.Z)({variant:D?"body2":"body1",className:E.primary,component:null!=x&&x.variant?void 0:"span",display:"block"},x,{children:P}))),null==S||S.type===u.Z||b||(S=(0,v.jsx)(u.Z,(0,i.Z)({variant:"body2",className:E.secondary,color:"text.secondary",display:"block"},C,{children:S}))),(0,v.jsxs)(g,(0,i.Z)({className:(0,c.Z)(E.root,p),ownerState:k,ref:t},Z,{children:[P,S]}))}));t.Z=y},31260:function(e,t,n){"use strict";var r=n(78949);t.Z=r.Z},28610:function(e,t,n){"use strict";n.r(t),n.d(t,{capitalize:function(){return o.Z},createChainedFunction:function(){return i.Z},createSvgIcon:function(){return a.Z},debounce:function(){return c.Z},deprecatedPropType:function(){return l},isMuiElement:function(){return u.Z},ownerDocument:function(){return s.Z},ownerWindow:function(){return f.Z},requirePropFactory:function(){return p},setRef:function(){return d},unstable_ClassNameGenerator:function(){return O},unstable_useEnhancedEffect:function(){return v.Z},unstable_useId:function(){return m.Z},unsupportedProp:function(){return g},useControlled:function(){return y.Z},useEventCallback:function(){return b.Z},useForkRef:function(){return h.Z},useIsFocusVisible:function(){return w.Z}});var r=n(55902),o=n(14036),i=n(31260),a=n(76189),c=n(83199);var l=function(e,t){return function(){return null}},u=n(19103),s=n(98301),f=n(17602);n(87462);var p=function(e,t){return function(){return null}},d=n(62971).Z,v=n(40162),m=n(67384);var g=function(e,t,n,r,o){return null},y=n(98278),b=n(89683),h=n(42071),w=n(23031),O={configure:function(e){r.Z.configure(e)}}},69998:function(e,t){"use strict";t.Z=function(e,t){if(e&&t){var n=Array.isArray(t)?t:t.split(","),r=e.name||"",o=(e.type||"").toLowerCase(),i=o.replace(/\/.*$/,"");return n.some((function(e){var t=e.trim().toLowerCase();return"."===t.charAt(0)?r.toLowerCase().endsWith(t):t.endsWith("/*")?i===t.replace(/\/.*$/,""):o===t}))}return!0}},76998:function(e,t,n){"use strict";var r=n(42458),o={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var n,i,a,c,l,u,s=!1;t||(t={}),n=t.debug||!1;try{if(a=r(),c=document.createRange(),l=document.getSelection(),(u=document.createElement("span")).textContent=e,u.ariaHidden="true",u.style.all="unset",u.style.position="fixed",u.style.top=0,u.style.clip="rect(0, 0, 0, 0)",u.style.whiteSpace="pre",u.style.webkitUserSelect="text",u.style.MozUserSelect="text",u.style.msUserSelect="text",u.style.userSelect="text",u.addEventListener("copy",(function(r){if(r.stopPropagation(),t.format)if(r.preventDefault(),"undefined"===typeof r.clipboardData){n&&console.warn("unable to use e.clipboardData"),n&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var i=o[t.format]||o.default;window.clipboardData.setData(i,e)}else r.clipboardData.clearData(),r.clipboardData.setData(t.format,e);t.onCopy&&(r.preventDefault(),t.onCopy(r.clipboardData))})),document.body.appendChild(u),c.selectNodeContents(u),l.addRange(c),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");s=!0}catch(f){n&&console.error("unable to copy using execCommand: ",f),n&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),s=!0}catch(f){n&&console.error("unable to copy using clipboardData: ",f),n&&console.error("falling back to prompt"),i=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(i,e)}}finally{l&&("function"==typeof l.removeRange?l.removeRange(c):l.removeAllRanges()),u&&document.body.removeChild(u),a()}return s}},568:function(e,t,n){"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var o=c(n(72791)),i=c(n(76998)),a=["text","onCopy","options","children"];function c(e){return e&&e.__esModule?e:{default:e}}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function u(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function f(e,t){for(var n=0;n0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]0)&&!(r=i.next()).done;)a.push(r.value)}catch(c){o={error:c}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a}function u(e,t,n){if(n||2===arguments.length)for(var r,o=0,i=t.length;o0?r:e.name,writable:!1,configurable:!1,enumerable:!0})}return n}var p=[".DS_Store","Thumbs.db"];function d(e){return"object"===typeof e&&null!==e}function v(e){return b(e.target.files).map((function(e){return f(e)}))}function m(e){return a(this,void 0,void 0,(function(){return c(this,(function(t){switch(t.label){case 0:return[4,Promise.all(e.map((function(e){return e.getFile()})))];case 1:return[2,t.sent().map((function(e){return f(e)}))]}}))}))}function g(e,t){return a(this,void 0,void 0,(function(){var n;return c(this,(function(r){switch(r.label){case 0:return e.items?(n=b(e.items).filter((function(e){return"file"===e.kind})),"drop"!==t?[2,n]:[4,Promise.all(n.map(h))]):[3,2];case 1:return[2,y(w(r.sent()))];case 2:return[2,y(b(e.files).map((function(e){return f(e)})))]}}))}))}function y(e){return e.filter((function(e){return-1===p.indexOf(e.name)}))}function b(e){if(null===e)return[];for(var t=[],n=0;ne.length)&&(t=e.length);for(var n=0,r=new Array(t);nn)return[!1,_(n)];if(e.sizen)return[!1,_(n)]}return[!0,null]}function U(e){return void 0!==e&&null!==e}function H(e){return"function"===typeof e.isPropagationStopped?e.isPropagationStopped():"undefined"!==typeof e.cancelBubble&&e.cancelBubble}function K(e){return e.dataTransfer?Array.prototype.some.call(e.dataTransfer.types,(function(e){return"Files"===e||"application/x-moz-file"===e})):!!e.target&&!!e.target.files}function V(e){e.preventDefault()}function $(){for(var e=arguments.length,t=new Array(e),n=0;n1?n-1:0),o=1;oe.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var le=(0,r.forwardRef)((function(e,t){var n=e.children,o=fe(ce(e,X)),i=o.open,a=ce(o,Y);return(0,r.useImperativeHandle)(t,(function(){return{open:i}}),[i]),r.createElement(r.Fragment,null,n(ie(ie({},a),{},{open:i})))}));le.displayName="Dropzone";var ue={disabled:!1,getFilesFromEvent:function(e){return a(this,void 0,void 0,(function(){return c(this,(function(t){return d(e)&&d(e.dataTransfer)?[2,g(e.dataTransfer,e.type)]:function(e){return d(e)&&d(e.target)}(e)?[2,v(e)]:Array.isArray(e)&&e.every((function(e){return"getFile"in e&&"function"===typeof e.getFile}))?[2,m(e)]:[2,[]]}))}))},maxSize:1/0,minSize:0,multiple:!0,maxFiles:0,preventDropOnDocument:!0,noClick:!1,noKeyboard:!1,noDrag:!1,noDragEventsBubbling:!1,validator:null,useFsAccessApi:!0,autoFocus:!1};le.defaultProps=ue,le.propTypes={children:i().func,accept:i().objectOf(i().arrayOf(i().string)),multiple:i().bool,preventDropOnDocument:i().bool,noClick:i().bool,noKeyboard:i().bool,noDrag:i().bool,noDragEventsBubbling:i().bool,minSize:i().number,maxSize:i().number,maxFiles:i().number,disabled:i().bool,getFilesFromEvent:i().func,onFileDialogCancel:i().func,onFileDialogOpen:i().func,useFsAccessApi:i().bool,autoFocus:i().bool,onDragEnter:i().func,onDragLeave:i().func,onDragOver:i().func,onDrop:i().func,onDropAccepted:i().func,onDropRejected:i().func,onError:i().func,validator:i().func};var se={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,acceptedFiles:[],fileRejections:[]};function fe(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=ie(ie({},ue),e),n=t.accept,o=t.disabled,i=t.getFilesFromEvent,a=t.maxSize,c=t.minSize,l=t.multiple,u=t.maxFiles,s=t.onDragEnter,f=t.onDragLeave,p=t.onDragOver,d=t.onDrop,v=t.onDropAccepted,m=t.onDropRejected,g=t.onFileDialogCancel,y=t.onFileDialogOpen,b=t.useFsAccessApi,h=t.autoFocus,w=t.preventDropOnDocument,O=t.noClick,x=t.noKeyboard,j=t.noDrag,C=t.noDragEventsBubbling,Z=t.onError,P=t.validator,R=(0,r.useMemo)((function(){return function(e){if(U(e))return Object.entries(e).reduce((function(e,t){var n=E(t,2),r=n[0],o=n[1];return[].concat(D(e),[r],D(o))}),[]).filter((function(e){return q(e)||G(e)})).join(",")}(n)}),[n]),A=(0,r.useMemo)((function(){return function(e){return U(e)?[{description:"Files",accept:Object.entries(e).filter((function(e){var t=E(e,2),n=t[0],r=t[1],o=!0;return q(n)||(console.warn('Skipped "'.concat(n,'" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.')),o=!1),Array.isArray(r)&&r.every(G)||(console.warn('Skipped "'.concat(n,'" because an invalid file extension was provided.')),o=!1),o})).reduce((function(e,t){var n=E(t,2),r=n[0],o=n[1];return S(S({},e),{},k({},r,o))}),{})}]:e}(n)}),[n]),z=(0,r.useMemo)((function(){return"function"===typeof y?y:de}),[y]),F=(0,r.useMemo)((function(){return"function"===typeof g?g:de}),[g]),T=(0,r.useRef)(null),I=(0,r.useRef)(null),M=te((0,r.useReducer)(pe,se),2),_=M[0],B=M[1],X=_.isFocused,Y=_.isFileDialogActive,ne=(0,r.useRef)("undefined"!==typeof window&&window.isSecureContext&&b&&"showOpenFilePicker"in window),re=function(){!ne.current&&Y&&setTimeout((function(){I.current&&(I.current.files.length||(B({type:"closeDialog"}),F()))}),300)};(0,r.useEffect)((function(){return window.addEventListener("focus",re,!1),function(){window.removeEventListener("focus",re,!1)}}),[I,Y,F,ne]);var oe=(0,r.useRef)([]),le=function(e){T.current&&T.current.contains(e.target)||(e.preventDefault(),oe.current=[])};(0,r.useEffect)((function(){return w&&(document.addEventListener("dragover",V,!1),document.addEventListener("drop",le,!1)),function(){w&&(document.removeEventListener("dragover",V),document.removeEventListener("drop",le))}}),[T,w]),(0,r.useEffect)((function(){return!o&&h&&T.current&&T.current.focus(),function(){}}),[T,h,o]);var fe=(0,r.useCallback)((function(e){Z?Z(e):console.error(e)}),[Z]),ve=(0,r.useCallback)((function(e){e.preventDefault(),e.persist(),Pe(e),oe.current=[].concat(ee(oe.current),[e.target]),K(e)&&Promise.resolve(i(e)).then((function(t){if(!H(e)||C){var n=t.length,r=n>0&&function(e){var t=e.files,n=e.accept,r=e.minSize,o=e.maxSize,i=e.multiple,a=e.maxFiles,c=e.validator;return!(!i&&t.length>1||i&&a>=1&&t.length>a)&&t.every((function(e){var t=E(N(e,n),1)[0],i=E(W(e,r,o),1)[0],a=c?c(e):null;return t&&i&&!a}))}({files:t,accept:R,minSize:c,maxSize:a,multiple:l,maxFiles:u,validator:P});B({isDragAccept:r,isDragReject:n>0&&!r,isDragActive:!0,type:"setDraggedFiles"}),s&&s(e)}})).catch((function(e){return fe(e)}))}),[i,s,fe,C,R,c,a,l,u,P]),me=(0,r.useCallback)((function(e){e.preventDefault(),e.persist(),Pe(e);var t=K(e);if(t&&e.dataTransfer)try{e.dataTransfer.dropEffect="copy"}catch(n){}return t&&p&&p(e),!1}),[p,C]),ge=(0,r.useCallback)((function(e){e.preventDefault(),e.persist(),Pe(e);var t=oe.current.filter((function(e){return T.current&&T.current.contains(e)})),n=t.indexOf(e.target);-1!==n&&t.splice(n,1),oe.current=t,t.length>0||(B({type:"setDraggedFiles",isDragActive:!1,isDragAccept:!1,isDragReject:!1}),K(e)&&f&&f(e))}),[T,f,C]),ye=(0,r.useCallback)((function(e,t){var n=[],r=[];e.forEach((function(e){var t=te(N(e,R),2),o=t[0],i=t[1],l=te(W(e,c,a),2),u=l[0],s=l[1],f=P?P(e):null;if(o&&u&&!f)n.push(e);else{var p=[i,s];f&&(p=p.concat(f)),r.push({file:e,errors:p.filter((function(e){return e}))})}})),(!l&&n.length>1||l&&u>=1&&n.length>u)&&(n.forEach((function(e){r.push({file:e,errors:[L]})})),n.splice(0)),B({acceptedFiles:n,fileRejections:r,type:"setFiles"}),d&&d(n,r,t),r.length>0&&m&&m(r,t),n.length>0&&v&&v(n,t)}),[B,l,R,c,a,u,d,v,m,P]),be=(0,r.useCallback)((function(e){e.preventDefault(),e.persist(),Pe(e),oe.current=[],K(e)&&Promise.resolve(i(e)).then((function(t){H(e)&&!C||ye(t,e)})).catch((function(e){return fe(e)})),B({type:"reset"})}),[i,ye,fe,C]),he=(0,r.useCallback)((function(){if(ne.current){B({type:"openDialog"}),z();var e={multiple:l,types:A};window.showOpenFilePicker(e).then((function(e){return i(e)})).then((function(e){ye(e,null),B({type:"closeDialog"})})).catch((function(e){var t;(t=e)instanceof DOMException&&("AbortError"===t.name||t.code===t.ABORT_ERR)?(F(e),B({type:"closeDialog"})):!function(e){return e instanceof DOMException&&("SecurityError"===e.name||e.code===e.SECURITY_ERR)}(e)?fe(e):(ne.current=!1,I.current?(I.current.value=null,I.current.click()):fe(new Error("Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no was provided.")))}))}else I.current&&(B({type:"openDialog"}),z(),I.current.value=null,I.current.click())}),[B,z,F,b,ye,fe,A,l]),we=(0,r.useCallback)((function(e){T.current&&T.current.isEqualNode(e.target)&&(" "!==e.key&&"Enter"!==e.key&&32!==e.keyCode&&13!==e.keyCode||(e.preventDefault(),he()))}),[T,he]),Oe=(0,r.useCallback)((function(){B({type:"focus"})}),[]),xe=(0,r.useCallback)((function(){B({type:"blur"})}),[]),je=(0,r.useCallback)((function(){O||(!function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator.userAgent;return function(e){return-1!==e.indexOf("MSIE")||-1!==e.indexOf("Trident/")}(e)||function(e){return-1!==e.indexOf("Edge/")}(e)}()?he():setTimeout(he,0))}),[O,he]),Ce=function(e){return o?null:e},Ze=function(e){return x?null:Ce(e)},De=function(e){return j?null:Ce(e)},Pe=function(e){C&&e.stopPropagation()},Se=(0,r.useMemo)((function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.refKey,n=void 0===t?"ref":t,r=e.role,i=e.onKeyDown,a=e.onFocus,c=e.onBlur,l=e.onClick,u=e.onDragEnter,s=e.onDragOver,f=e.onDragLeave,p=e.onDrop,d=ce(e,J);return ie(ie(ae({onKeyDown:Ze($(i,we)),onFocus:Ze($(a,Oe)),onBlur:Ze($(c,xe)),onClick:Ce($(l,je)),onDragEnter:De($(u,ve)),onDragOver:De($(s,me)),onDragLeave:De($(f,ge)),onDrop:De($(p,be)),role:"string"===typeof r&&""!==r?r:"presentation"},n,T),o||x?{}:{tabIndex:0}),d)}}),[T,we,Oe,xe,je,ve,me,ge,be,x,j,o]),ke=(0,r.useCallback)((function(e){e.stopPropagation()}),[]),Ee=(0,r.useMemo)((function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.refKey,n=void 0===t?"ref":t,r=e.onChange,o=e.onClick,i=ce(e,Q);return ie(ie({},ae({accept:R,multiple:l,type:"file",style:{display:"none"},onChange:Ce($(r,be)),onClick:Ce($(o,ke)),tabIndex:-1},n,I)),i)}}),[I,n,l,be,o]);return ie(ie({},_),{},{isFocused:X&&!o,getRootProps:Se,getInputProps:Ee,rootRef:T,inputRef:I,open:Ce(he)})}function pe(e,t){switch(t.type){case"focus":return ie(ie({},e),{},{isFocused:!0});case"blur":return ie(ie({},e),{},{isFocused:!1});case"openDialog":return ie(ie({},se),{},{isFileDialogActive:!0});case"closeDialog":return ie(ie({},e),{},{isFileDialogActive:!1});case"setDraggedFiles":return ie(ie({},e),{},{isDragActive:t.isDragActive,isDragAccept:t.isDragAccept,isDragReject:t.isDragReject});case"setFiles":return ie(ie({},e),{},{acceptedFiles:t.acceptedFiles,fileRejections:t.fileRejections});case"reset":return ie({},se);default:return e}}function de(){}},42458:function(e){e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r {\n const {\n color,\n anchorOrigin,\n invisible,\n overlap,\n variant,\n classes = {}\n } = ownerState;\n const slots = {\n root: ['root'],\n badge: ['badge', variant, invisible && 'invisible', `anchorOrigin${capitalize(anchorOrigin.vertical)}${capitalize(anchorOrigin.horizontal)}`, `anchorOrigin${capitalize(anchorOrigin.vertical)}${capitalize(anchorOrigin.horizontal)}${capitalize(overlap)}`, `overlap${capitalize(overlap)}`, color !== 'default' && `color${capitalize(color)}`]\n };\n return composeClasses(slots, getBadgeUtilityClass, classes);\n};\nconst BadgeRoot = styled('span', {\n name: 'MuiBadge',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n position: 'relative',\n display: 'inline-flex',\n // For correct alignment with the text.\n verticalAlign: 'middle',\n flexShrink: 0\n});\nconst BadgeBadge = styled('span', {\n name: 'MuiBadge',\n slot: 'Badge',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.badge, styles[ownerState.variant], styles[`anchorOrigin${capitalize(ownerState.anchorOrigin.vertical)}${capitalize(ownerState.anchorOrigin.horizontal)}${capitalize(ownerState.overlap)}`], ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`], ownerState.invisible && styles.invisible];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'flex',\n flexDirection: 'row',\n flexWrap: 'wrap',\n justifyContent: 'center',\n alignContent: 'center',\n alignItems: 'center',\n position: 'absolute',\n boxSizing: 'border-box',\n fontFamily: theme.typography.fontFamily,\n fontWeight: theme.typography.fontWeightMedium,\n fontSize: theme.typography.pxToRem(12),\n minWidth: RADIUS_STANDARD * 2,\n lineHeight: 1,\n padding: '0 6px',\n height: RADIUS_STANDARD * 2,\n borderRadius: RADIUS_STANDARD,\n zIndex: 1,\n // Render the badge on top of potential ripples.\n transition: theme.transitions.create('transform', {\n easing: theme.transitions.easing.easeInOut,\n duration: theme.transitions.duration.enteringScreen\n })\n}, ownerState.color !== 'default' && {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].main,\n color: (theme.vars || theme).palette[ownerState.color].contrastText\n}, ownerState.variant === 'dot' && {\n borderRadius: RADIUS_DOT,\n height: RADIUS_DOT * 2,\n minWidth: RADIUS_DOT * 2,\n padding: 0\n}, ownerState.anchorOrigin.vertical === 'top' && ownerState.anchorOrigin.horizontal === 'right' && ownerState.overlap === 'rectangular' && {\n top: 0,\n right: 0,\n transform: 'scale(1) translate(50%, -50%)',\n transformOrigin: '100% 0%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(50%, -50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'bottom' && ownerState.anchorOrigin.horizontal === 'right' && ownerState.overlap === 'rectangular' && {\n bottom: 0,\n right: 0,\n transform: 'scale(1) translate(50%, 50%)',\n transformOrigin: '100% 100%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(50%, 50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'top' && ownerState.anchorOrigin.horizontal === 'left' && ownerState.overlap === 'rectangular' && {\n top: 0,\n left: 0,\n transform: 'scale(1) translate(-50%, -50%)',\n transformOrigin: '0% 0%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(-50%, -50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'bottom' && ownerState.anchorOrigin.horizontal === 'left' && ownerState.overlap === 'rectangular' && {\n bottom: 0,\n left: 0,\n transform: 'scale(1) translate(-50%, 50%)',\n transformOrigin: '0% 100%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(-50%, 50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'top' && ownerState.anchorOrigin.horizontal === 'right' && ownerState.overlap === 'circular' && {\n top: '14%',\n right: '14%',\n transform: 'scale(1) translate(50%, -50%)',\n transformOrigin: '100% 0%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(50%, -50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'bottom' && ownerState.anchorOrigin.horizontal === 'right' && ownerState.overlap === 'circular' && {\n bottom: '14%',\n right: '14%',\n transform: 'scale(1) translate(50%, 50%)',\n transformOrigin: '100% 100%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(50%, 50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'top' && ownerState.anchorOrigin.horizontal === 'left' && ownerState.overlap === 'circular' && {\n top: '14%',\n left: '14%',\n transform: 'scale(1) translate(-50%, -50%)',\n transformOrigin: '0% 0%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(-50%, -50%)'\n }\n}, ownerState.anchorOrigin.vertical === 'bottom' && ownerState.anchorOrigin.horizontal === 'left' && ownerState.overlap === 'circular' && {\n bottom: '14%',\n left: '14%',\n transform: 'scale(1) translate(-50%, 50%)',\n transformOrigin: '0% 100%',\n [`&.${badgeClasses.invisible}`]: {\n transform: 'scale(0) translate(-50%, 50%)'\n }\n}, ownerState.invisible && {\n transition: theme.transitions.create('transform', {\n easing: theme.transitions.easing.easeInOut,\n duration: theme.transitions.duration.leavingScreen\n })\n}));\nconst Badge = /*#__PURE__*/React.forwardRef(function Badge(inProps, ref) {\n var _ref, _slots$root, _ref2, _slots$badge, _slotProps$root, _slotProps$badge;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiBadge'\n });\n const {\n anchorOrigin: anchorOriginProp = {\n vertical: 'top',\n horizontal: 'right'\n },\n className,\n component,\n components = {},\n componentsProps = {},\n children,\n overlap: overlapProp = 'rectangular',\n color: colorProp = 'default',\n invisible: invisibleProp = false,\n max: maxProp = 99,\n badgeContent: badgeContentProp,\n slots,\n slotProps,\n showZero = false,\n variant: variantProp = 'standard'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const {\n badgeContent,\n invisible: invisibleFromHook,\n max,\n displayValue: displayValueFromHook\n } = useBadge({\n max: maxProp,\n invisible: invisibleProp,\n badgeContent: badgeContentProp,\n showZero\n });\n const prevProps = usePreviousProps({\n anchorOrigin: anchorOriginProp,\n color: colorProp,\n overlap: overlapProp,\n variant: variantProp,\n badgeContent: badgeContentProp\n });\n const invisible = invisibleFromHook || badgeContent == null && variantProp !== 'dot';\n const {\n color = colorProp,\n overlap = overlapProp,\n anchorOrigin = anchorOriginProp,\n variant = variantProp\n } = invisible ? prevProps : props;\n const displayValue = variant !== 'dot' ? displayValueFromHook : undefined;\n const ownerState = _extends({}, props, {\n badgeContent,\n invisible,\n max,\n displayValue,\n showZero,\n anchorOrigin,\n color,\n overlap,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n\n // support both `slots` and `components` for backward compatibility\n const RootSlot = (_ref = (_slots$root = slots == null ? void 0 : slots.root) != null ? _slots$root : components.Root) != null ? _ref : BadgeRoot;\n const BadgeSlot = (_ref2 = (_slots$badge = slots == null ? void 0 : slots.badge) != null ? _slots$badge : components.Badge) != null ? _ref2 : BadgeBadge;\n const rootSlotProps = (_slotProps$root = slotProps == null ? void 0 : slotProps.root) != null ? _slotProps$root : componentsProps.root;\n const badgeSlotProps = (_slotProps$badge = slotProps == null ? void 0 : slotProps.badge) != null ? _slotProps$badge : componentsProps.badge;\n const rootProps = useSlotProps({\n elementType: RootSlot,\n externalSlotProps: rootSlotProps,\n externalForwardedProps: other,\n additionalProps: {\n ref,\n as: component\n },\n ownerState,\n className: clsx(rootSlotProps == null ? void 0 : rootSlotProps.className, classes.root, className)\n });\n const badgeProps = useSlotProps({\n elementType: BadgeSlot,\n externalSlotProps: badgeSlotProps,\n ownerState,\n className: clsx(classes.badge, badgeSlotProps == null ? void 0 : badgeSlotProps.className)\n });\n return /*#__PURE__*/_jsxs(RootSlot, _extends({}, rootProps, {\n children: [children, /*#__PURE__*/_jsx(BadgeSlot, _extends({}, badgeProps, {\n children: displayValue\n }))]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Badge.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The anchor of the badge.\n * @default {\n * vertical: 'top',\n * horizontal: 'right',\n * }\n */\n anchorOrigin: PropTypes.shape({\n horizontal: PropTypes.oneOf(['left', 'right']).isRequired,\n vertical: PropTypes.oneOf(['bottom', 'top']).isRequired\n }),\n /**\n * The content rendered within the badge.\n */\n badgeContent: PropTypes.node,\n /**\n * The badge will be added relative to this node.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'default'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `slots` prop.\n * It's recommended to use the `slots` prop instead.\n *\n * @default {}\n */\n components: PropTypes.shape({\n Badge: PropTypes.elementType,\n Root: PropTypes.elementType\n }),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `slotProps` prop.\n * It's recommended to use the `slotProps` prop instead, as `componentsProps` will be deprecated in the future.\n *\n * @default {}\n */\n componentsProps: PropTypes.shape({\n badge: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n root: PropTypes.oneOfType([PropTypes.func, PropTypes.object])\n }),\n /**\n * If `true`, the badge is invisible.\n * @default false\n */\n invisible: PropTypes.bool,\n /**\n * Max count to show.\n * @default 99\n */\n max: PropTypes.number,\n /**\n * Wrapped shape the badge should overlap.\n * @default 'rectangular'\n */\n overlap: PropTypes.oneOf(['circular', 'rectangular']),\n /**\n * Controls whether the badge is hidden when `badgeContent` is zero.\n * @default false\n */\n showZero: PropTypes.bool,\n /**\n * The props used for each slot inside the Badge.\n * @default {}\n */\n slotProps: PropTypes.shape({\n badge: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n root: PropTypes.oneOfType([PropTypes.func, PropTypes.object])\n }),\n /**\n * The components used for each slot inside the Badge.\n * Either a string to use a HTML element or a component.\n * @default {}\n */\n slots: PropTypes.shape({\n badge: PropTypes.elementType,\n root: PropTypes.elementType\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n * @default 'standard'\n */\n variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['dot', 'standard']), PropTypes.string])\n} : void 0;\nexport default Badge;","import { usePreviousProps } from '@mui/utils';\n/**\n *\n * Demos:\n *\n * - [Badge](https://mui.com/base-ui/react-badge/#hook)\n *\n * API:\n *\n * - [useBadge API](https://mui.com/base-ui/react-badge/hooks-api/#use-badge)\n */\nexport default function useBadge(parameters) {\n const {\n badgeContent: badgeContentProp,\n invisible: invisibleProp = false,\n max: maxProp = 99,\n showZero = false\n } = parameters;\n const prevProps = usePreviousProps({\n badgeContent: badgeContentProp,\n max: maxProp\n });\n let invisible = invisibleProp;\n if (invisibleProp === false && badgeContentProp === 0 && !showZero) {\n invisible = true;\n }\n const {\n badgeContent,\n max = maxProp\n } = invisible ? prevProps : parameters;\n const displayValue = badgeContent && Number(badgeContent) > max ? `${max}+` : badgeContent;\n return {\n badgeContent,\n invisible,\n max,\n displayValue\n };\n}","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z\"\n}), 'CheckBoxOutlineBlank');","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z\"\n}), 'CheckBox');","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z\"\n}), 'IndeterminateCheckBox');","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getCheckboxUtilityClass(slot) {\n return generateUtilityClass('MuiCheckbox', slot);\n}\nconst checkboxClasses = generateUtilityClasses('MuiCheckbox', ['root', 'checked', 'disabled', 'indeterminate', 'colorPrimary', 'colorSecondary']);\nexport default checkboxClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"checkedIcon\", \"color\", \"icon\", \"indeterminate\", \"indeterminateIcon\", \"inputProps\", \"size\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport SwitchBase from '../internal/SwitchBase';\nimport CheckBoxOutlineBlankIcon from '../internal/svg-icons/CheckBoxOutlineBlank';\nimport CheckBoxIcon from '../internal/svg-icons/CheckBox';\nimport IndeterminateCheckBoxIcon from '../internal/svg-icons/IndeterminateCheckBox';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport checkboxClasses, { getCheckboxUtilityClass } from './checkboxClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n indeterminate,\n color\n } = ownerState;\n const slots = {\n root: ['root', indeterminate && 'indeterminate', `color${capitalize(color)}`]\n };\n const composedClasses = composeClasses(slots, getCheckboxUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst CheckboxRoot = styled(SwitchBase, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiCheckbox',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.indeterminate && styles.indeterminate, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, !ownerState.disableRipple && {\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${ownerState.color === 'default' ? theme.vars.palette.action.activeChannel : theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(ownerState.color === 'default' ? theme.palette.action.active : theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${checkboxClasses.checked}, &.${checkboxClasses.indeterminate}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${checkboxClasses.disabled}`]: {\n color: (theme.vars || theme).palette.action.disabled\n }\n}));\nconst defaultCheckedIcon = /*#__PURE__*/_jsx(CheckBoxIcon, {});\nconst defaultIcon = /*#__PURE__*/_jsx(CheckBoxOutlineBlankIcon, {});\nconst defaultIndeterminateIcon = /*#__PURE__*/_jsx(IndeterminateCheckBoxIcon, {});\nconst Checkbox = /*#__PURE__*/React.forwardRef(function Checkbox(inProps, ref) {\n var _icon$props$fontSize, _indeterminateIcon$pr;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiCheckbox'\n });\n const {\n checkedIcon = defaultCheckedIcon,\n color = 'primary',\n icon: iconProp = defaultIcon,\n indeterminate = false,\n indeterminateIcon: indeterminateIconProp = defaultIndeterminateIcon,\n inputProps,\n size = 'medium',\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const icon = indeterminate ? indeterminateIconProp : iconProp;\n const indeterminateIcon = indeterminate ? indeterminateIconProp : checkedIcon;\n const ownerState = _extends({}, props, {\n color,\n indeterminate,\n size\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(CheckboxRoot, _extends({\n type: \"checkbox\",\n inputProps: _extends({\n 'data-indeterminate': indeterminate\n }, inputProps),\n icon: /*#__PURE__*/React.cloneElement(icon, {\n fontSize: (_icon$props$fontSize = icon.props.fontSize) != null ? _icon$props$fontSize : size\n }),\n checkedIcon: /*#__PURE__*/React.cloneElement(indeterminateIcon, {\n fontSize: (_indeterminateIcon$pr = indeterminateIcon.props.fontSize) != null ? _indeterminateIcon$pr : size\n }),\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Checkbox.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n * @default \n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The default checked state. Use when the component is not controlled.\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * The icon to display when the component is unchecked.\n * @default \n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * If `true`, the component appears indeterminate.\n * This does not set the native input element to indeterminate due\n * to inconsistent behavior across browsers.\n * However, we set a `data-indeterminate` attribute on the `input`.\n * @default false\n */\n indeterminate: PropTypes.bool,\n /**\n * The icon to display when the component is indeterminate.\n * @default \n */\n indeterminateIcon: PropTypes.node,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense checkbox styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n */\n value: PropTypes.any\n} : void 0;\nexport default Checkbox;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { getListItemIconUtilityClass } from './listItemIconClasses';\nimport ListContext from '../List/ListContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n alignItems,\n classes\n } = ownerState;\n const slots = {\n root: ['root', alignItems === 'flex-start' && 'alignItemsFlexStart']\n };\n return composeClasses(slots, getListItemIconUtilityClass, classes);\n};\nconst ListItemIconRoot = styled('div', {\n name: 'MuiListItemIcon',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.alignItems === 'flex-start' && styles.alignItemsFlexStart];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n minWidth: 56,\n color: (theme.vars || theme).palette.action.active,\n flexShrink: 0,\n display: 'inline-flex'\n}, ownerState.alignItems === 'flex-start' && {\n marginTop: 8\n}));\n\n/**\n * A simple wrapper to apply `List` styles to an `Icon` or `SvgIcon`.\n */\nconst ListItemIcon = /*#__PURE__*/React.forwardRef(function ListItemIcon(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItemIcon'\n });\n const {\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const context = React.useContext(ListContext);\n const ownerState = _extends({}, props, {\n alignItems: context.alignItems\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(ListItemIconRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemIcon.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component, normally `Icon`, `SvgIcon`,\n * or a `@mui/icons-material` SVG icon element.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListItemIcon;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"disableTypography\", \"inset\", \"primary\", \"primaryTypographyProps\", \"secondary\", \"secondaryTypographyProps\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport Typography from '../Typography';\nimport ListContext from '../List/ListContext';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport listItemTextClasses, { getListItemTextUtilityClass } from './listItemTextClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n inset,\n primary,\n secondary,\n dense\n } = ownerState;\n const slots = {\n root: ['root', inset && 'inset', dense && 'dense', primary && secondary && 'multiline'],\n primary: ['primary'],\n secondary: ['secondary']\n };\n return composeClasses(slots, getListItemTextUtilityClass, classes);\n};\nconst ListItemTextRoot = styled('div', {\n name: 'MuiListItemText',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${listItemTextClasses.primary}`]: styles.primary\n }, {\n [`& .${listItemTextClasses.secondary}`]: styles.secondary\n }, styles.root, ownerState.inset && styles.inset, ownerState.primary && ownerState.secondary && styles.multiline, ownerState.dense && styles.dense];\n }\n})(({\n ownerState\n}) => _extends({\n flex: '1 1 auto',\n minWidth: 0,\n marginTop: 4,\n marginBottom: 4\n}, ownerState.primary && ownerState.secondary && {\n marginTop: 6,\n marginBottom: 6\n}, ownerState.inset && {\n paddingLeft: 56\n}));\nconst ListItemText = /*#__PURE__*/React.forwardRef(function ListItemText(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItemText'\n });\n const {\n children,\n className,\n disableTypography = false,\n inset = false,\n primary: primaryProp,\n primaryTypographyProps,\n secondary: secondaryProp,\n secondaryTypographyProps\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const {\n dense\n } = React.useContext(ListContext);\n let primary = primaryProp != null ? primaryProp : children;\n let secondary = secondaryProp;\n const ownerState = _extends({}, props, {\n disableTypography,\n inset,\n primary: !!primary,\n secondary: !!secondary,\n dense\n });\n const classes = useUtilityClasses(ownerState);\n if (primary != null && primary.type !== Typography && !disableTypography) {\n primary = /*#__PURE__*/_jsx(Typography, _extends({\n variant: dense ? 'body2' : 'body1',\n className: classes.primary,\n component: primaryTypographyProps != null && primaryTypographyProps.variant ? undefined : 'span',\n display: \"block\"\n }, primaryTypographyProps, {\n children: primary\n }));\n }\n if (secondary != null && secondary.type !== Typography && !disableTypography) {\n secondary = /*#__PURE__*/_jsx(Typography, _extends({\n variant: \"body2\",\n className: classes.secondary,\n color: \"text.secondary\",\n display: \"block\"\n }, secondaryTypographyProps, {\n children: secondary\n }));\n }\n return /*#__PURE__*/_jsxs(ListItemTextRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [primary, secondary]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemText.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Alias for the `primary` prop.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * If `true`, the children won't be wrapped by a Typography component.\n * This can be useful to render an alternative Typography variant by wrapping\n * the `children` (or `primary`) text, and optional `secondary` text\n * with the Typography component.\n * @default false\n */\n disableTypography: PropTypes.bool,\n /**\n * If `true`, the children are indented.\n * This should be used if there is no left avatar or left icon.\n * @default false\n */\n inset: PropTypes.bool,\n /**\n * The main content element.\n */\n primary: PropTypes.node,\n /**\n * These props will be forwarded to the primary typography component\n * (as long as disableTypography is not `true`).\n */\n primaryTypographyProps: PropTypes.object,\n /**\n * The secondary content element.\n */\n secondary: PropTypes.node,\n /**\n * These props will be forwarded to the secondary typography component\n * (as long as disableTypography is not `true`).\n */\n secondaryTypographyProps: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListItemText;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","\"use strict\";\n\nexports.__esModule = true;\n\nexports.default = function (file, acceptedFiles) {\n if (file && acceptedFiles) {\n var acceptedFilesArray = Array.isArray(acceptedFiles) ? acceptedFiles : acceptedFiles.split(',');\n var fileName = file.name || '';\n var mimeType = (file.type || '').toLowerCase();\n var baseMimeType = mimeType.replace(/\\/.*$/, '');\n return acceptedFilesArray.some(function (type) {\n var validType = type.trim().toLowerCase();\n\n if (validType.charAt(0) === '.') {\n return fileName.toLowerCase().endsWith(validType);\n } else if (validType.endsWith('/*')) {\n // This is something like a image/* mime type\n return baseMimeType === validType.replace(/\\/.*$/, '');\n }\n\n return mimeType === validType;\n });\n }\n\n return true;\n};","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\") throw new TypeError(\"Object expected.\");\n var dispose;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n","export const COMMON_MIME_TYPES = new Map([\n // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types\n ['aac', 'audio/aac'],\n ['abw', 'application/x-abiword'],\n ['arc', 'application/x-freearc'],\n ['avif', 'image/avif'],\n ['avi', 'video/x-msvideo'],\n ['azw', 'application/vnd.amazon.ebook'],\n ['bin', 'application/octet-stream'],\n ['bmp', 'image/bmp'],\n ['bz', 'application/x-bzip'],\n ['bz2', 'application/x-bzip2'],\n ['cda', 'application/x-cdf'],\n ['csh', 'application/x-csh'],\n ['css', 'text/css'],\n ['csv', 'text/csv'],\n ['doc', 'application/msword'],\n ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'],\n ['eot', 'application/vnd.ms-fontobject'],\n ['epub', 'application/epub+zip'],\n ['gz', 'application/gzip'],\n ['gif', 'image/gif'],\n ['heic', 'image/heic'],\n ['heif', 'image/heif'],\n ['htm', 'text/html'],\n ['html', 'text/html'],\n ['ico', 'image/vnd.microsoft.icon'],\n ['ics', 'text/calendar'],\n ['jar', 'application/java-archive'],\n ['jpeg', 'image/jpeg'],\n ['jpg', 'image/jpeg'],\n ['js', 'text/javascript'],\n ['json', 'application/json'],\n ['jsonld', 'application/ld+json'],\n ['mid', 'audio/midi'],\n ['midi', 'audio/midi'],\n ['mjs', 'text/javascript'],\n ['mp3', 'audio/mpeg'],\n ['mp4', 'video/mp4'],\n ['mpeg', 'video/mpeg'],\n ['mpkg', 'application/vnd.apple.installer+xml'],\n ['odp', 'application/vnd.oasis.opendocument.presentation'],\n ['ods', 'application/vnd.oasis.opendocument.spreadsheet'],\n ['odt', 'application/vnd.oasis.opendocument.text'],\n ['oga', 'audio/ogg'],\n ['ogv', 'video/ogg'],\n ['ogx', 'application/ogg'],\n ['opus', 'audio/opus'],\n ['otf', 'font/otf'],\n ['png', 'image/png'],\n ['pdf', 'application/pdf'],\n ['php', 'application/x-httpd-php'],\n ['ppt', 'application/vnd.ms-powerpoint'],\n ['pptx', 'application/vnd.openxmlformats-officedocument.presentationml.presentation'],\n ['rar', 'application/vnd.rar'],\n ['rtf', 'application/rtf'],\n ['sh', 'application/x-sh'],\n ['svg', 'image/svg+xml'],\n ['swf', 'application/x-shockwave-flash'],\n ['tar', 'application/x-tar'],\n ['tif', 'image/tiff'],\n ['tiff', 'image/tiff'],\n ['ts', 'video/mp2t'],\n ['ttf', 'font/ttf'],\n ['txt', 'text/plain'],\n ['vsd', 'application/vnd.visio'],\n ['wav', 'audio/wav'],\n ['weba', 'audio/webm'],\n ['webm', 'video/webm'],\n ['webp', 'image/webp'],\n ['woff', 'font/woff'],\n ['woff2', 'font/woff2'],\n ['xhtml', 'application/xhtml+xml'],\n ['xls', 'application/vnd.ms-excel'],\n ['xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'],\n ['xml', 'application/xml'],\n ['xul', 'application/vnd.mozilla.xul+xml'],\n ['zip', 'application/zip'],\n ['7z', 'application/x-7z-compressed'],\n\n // Others\n ['mkv', 'video/x-matroska'],\n ['mov', 'video/quicktime'],\n ['msg', 'application/vnd.ms-outlook']\n]);\n\n\nexport function toFileWithPath(file: FileWithPath, path?: string): FileWithPath {\n const f = withMimeType(file);\n if (typeof f.path !== 'string') { // on electron, path is already set to the absolute path\n const {webkitRelativePath} = file;\n Object.defineProperty(f, 'path', {\n value: typeof path === 'string'\n ? path\n // If is set,\n // the File will have a {webkitRelativePath} property\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitdirectory\n : typeof webkitRelativePath === 'string' && webkitRelativePath.length > 0\n ? webkitRelativePath\n : file.name,\n writable: false,\n configurable: false,\n enumerable: true\n });\n }\n\n return f;\n}\n\nexport interface FileWithPath extends File {\n readonly path?: string;\n}\n\nfunction withMimeType(file: FileWithPath) {\n const {name} = file;\n const hasExtension = name && name.lastIndexOf('.') !== -1;\n\n if (hasExtension && !file.type) {\n const ext = name.split('.')\n .pop()!.toLowerCase();\n const type = COMMON_MIME_TYPES.get(ext);\n if (type) {\n Object.defineProperty(file, 'type', {\n value: type,\n writable: false,\n configurable: false,\n enumerable: true\n });\n }\n }\n\n return file;\n}\n","import {FileWithPath, toFileWithPath} from './file';\n\n\nconst FILES_TO_IGNORE = [\n // Thumbnail cache files for macOS and Windows\n '.DS_Store', // macOs\n 'Thumbs.db' // Windows\n];\n\n\n/**\n * Convert a DragEvent's DataTrasfer object to a list of File objects\n * NOTE: If some of the items are folders,\n * everything will be flattened and placed in the same list but the paths will be kept as a {path} property.\n *\n * EXPERIMENTAL: A list of https://developer.mozilla.org/en-US/docs/Web/API/FileSystemHandle objects can also be passed as an arg\n * and a list of File objects will be returned.\n *\n * @param evt\n */\nexport async function fromEvent(evt: Event | any): Promise<(FileWithPath | DataTransferItem)[]> {\n if (isObject(evt) && isDataTransfer(evt.dataTransfer)) {\n return getDataTransferFiles(evt.dataTransfer, evt.type);\n } else if (isChangeEvt(evt)) {\n return getInputFiles(evt);\n } else if (Array.isArray(evt) && evt.every(item => 'getFile' in item && typeof item.getFile === 'function')) {\n return getFsHandleFiles(evt)\n }\n return [];\n}\n\nfunction isDataTransfer(value: any): value is DataTransfer {\n return isObject(value);\n}\n\nfunction isChangeEvt(value: any): value is Event {\n return isObject(value) && isObject(value.target);\n}\n\nfunction isObject(v: any): v is T {\n return typeof v === 'object' && v !== null\n}\n\nfunction getInputFiles(evt: Event) {\n return fromList((evt.target as HTMLInputElement).files).map(file => toFileWithPath(file));\n}\n\n// Ee expect each handle to be https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileHandle\nasync function getFsHandleFiles(handles: any[]) {\n const files = await Promise.all(handles.map(h => h.getFile()));\n return files.map(file => toFileWithPath(file));\n}\n\n\nasync function getDataTransferFiles(dt: DataTransfer, type: string) {\n // IE11 does not support dataTransfer.items\n // See https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer/items#Browser_compatibility\n if (dt.items) {\n const items = fromList(dt.items)\n .filter(item => item.kind === 'file');\n // According to https://html.spec.whatwg.org/multipage/dnd.html#dndevents,\n // only 'dragstart' and 'drop' has access to the data (source node)\n if (type !== 'drop') {\n return items;\n }\n const files = await Promise.all(items.map(toFilePromises));\n return noIgnoredFiles(flatten(files));\n }\n\n return noIgnoredFiles(fromList(dt.files)\n .map(file => toFileWithPath(file)));\n}\n\nfunction noIgnoredFiles(files: FileWithPath[]) {\n return files.filter(file => FILES_TO_IGNORE.indexOf(file.name) === -1);\n}\n\n// IE11 does not support Array.from()\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from#Browser_compatibility\n// https://developer.mozilla.org/en-US/docs/Web/API/FileList\n// https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItemList\nfunction fromList(items: DataTransferItemList | FileList | null): T[] {\n if (items === null) {\n return [];\n }\n\n const files = [];\n\n // tslint:disable: prefer-for-of\n for (let i = 0; i < items.length; i++) {\n const file = items[i];\n files.push(file);\n }\n\n return files as any;\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItem\nfunction toFilePromises(item: DataTransferItem) {\n if (typeof item.webkitGetAsEntry !== 'function') {\n return fromDataTransferItem(item);\n }\n\n const entry = item.webkitGetAsEntry();\n\n // Safari supports dropping an image node from a different window and can be retrieved using\n // the DataTransferItem.getAsFile() API\n // NOTE: FileSystemEntry.file() throws if trying to get the file\n if (entry && entry.isDirectory) {\n return fromDirEntry(entry) as any;\n }\n\n return fromDataTransferItem(item);\n}\n\nfunction flatten(items: any[]): T[] {\n return items.reduce((acc, files) => [\n ...acc,\n ...(Array.isArray(files) ? flatten(files) : [files])\n ], []);\n}\n\nfunction fromDataTransferItem(item: DataTransferItem) {\n const file = item.getAsFile();\n if (!file) {\n return Promise.reject(`${item} is not a File`);\n }\n const fwp = toFileWithPath(file);\n return Promise.resolve(fwp);\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemEntry\nasync function fromEntry(entry: any) {\n return entry.isDirectory ? fromDirEntry(entry) : fromFileEntry(entry);\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryEntry\nfunction fromDirEntry(entry: any) {\n const reader = entry.createReader();\n\n return new Promise((resolve, reject) => {\n const entries: Promise[] = [];\n\n function readEntries() {\n // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryEntry/createReader\n // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryReader/readEntries\n reader.readEntries(async (batch: any[]) => {\n if (!batch.length) {\n // Done reading directory\n try {\n const files = await Promise.all(entries);\n resolve(files);\n } catch (err) {\n reject(err);\n }\n } else {\n const items = Promise.all(batch.map(fromEntry));\n entries.push(items);\n\n // Continue reading\n readEntries();\n }\n }, (err: any) => {\n reject(err);\n });\n }\n\n readEntries();\n });\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileEntry\nasync function fromFileEntry(entry: any) {\n return new Promise((resolve, reject) => {\n entry.file((file: FileWithPath) => {\n const fwp = toFileWithPath(file, entry.fullPath);\n resolve(fwp);\n }, (err: any) => {\n reject(err);\n });\n });\n}\n\n// Infinite type recursion\n// https://github.com/Microsoft/TypeScript/issues/3496#issuecomment-128553540\ninterface FileArray extends Array {}\ntype FileValue = FileWithPath\n | FileArray[];\n","function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nimport accepts from \"attr-accept\"; // Error codes\n\nexport var FILE_INVALID_TYPE = \"file-invalid-type\";\nexport var FILE_TOO_LARGE = \"file-too-large\";\nexport var FILE_TOO_SMALL = \"file-too-small\";\nexport var TOO_MANY_FILES = \"too-many-files\";\nexport var ErrorCode = {\n FileInvalidType: FILE_INVALID_TYPE,\n FileTooLarge: FILE_TOO_LARGE,\n FileTooSmall: FILE_TOO_SMALL,\n TooManyFiles: TOO_MANY_FILES\n}; // File Errors\n\nexport var getInvalidTypeRejectionErr = function getInvalidTypeRejectionErr(accept) {\n accept = Array.isArray(accept) && accept.length === 1 ? accept[0] : accept;\n var messageSuffix = Array.isArray(accept) ? \"one of \".concat(accept.join(\", \")) : accept;\n return {\n code: FILE_INVALID_TYPE,\n message: \"File type must be \".concat(messageSuffix)\n };\n};\nexport var getTooLargeRejectionErr = function getTooLargeRejectionErr(maxSize) {\n return {\n code: FILE_TOO_LARGE,\n message: \"File is larger than \".concat(maxSize, \" \").concat(maxSize === 1 ? \"byte\" : \"bytes\")\n };\n};\nexport var getTooSmallRejectionErr = function getTooSmallRejectionErr(minSize) {\n return {\n code: FILE_TOO_SMALL,\n message: \"File is smaller than \".concat(minSize, \" \").concat(minSize === 1 ? \"byte\" : \"bytes\")\n };\n};\nexport var TOO_MANY_FILES_REJECTION = {\n code: TOO_MANY_FILES,\n message: \"Too many files\"\n}; // Firefox versions prior to 53 return a bogus MIME type for every file drag, so dragovers with\n// that MIME type will always be accepted\n\nexport function fileAccepted(file, accept) {\n var isAcceptable = file.type === \"application/x-moz-file\" || accepts(file, accept);\n return [isAcceptable, isAcceptable ? null : getInvalidTypeRejectionErr(accept)];\n}\nexport function fileMatchSize(file, minSize, maxSize) {\n if (isDefined(file.size)) {\n if (isDefined(minSize) && isDefined(maxSize)) {\n if (file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)];\n if (file.size < minSize) return [false, getTooSmallRejectionErr(minSize)];\n } else if (isDefined(minSize) && file.size < minSize) return [false, getTooSmallRejectionErr(minSize)];else if (isDefined(maxSize) && file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)];\n }\n\n return [true, null];\n}\n\nfunction isDefined(value) {\n return value !== undefined && value !== null;\n}\n/**\n *\n * @param {object} options\n * @param {File[]} options.files\n * @param {string|string[]} [options.accept]\n * @param {number} [options.minSize]\n * @param {number} [options.maxSize]\n * @param {boolean} [options.multiple]\n * @param {number} [options.maxFiles]\n * @param {(f: File) => FileError|FileError[]|null} [options.validator]\n * @returns\n */\n\n\nexport function allFilesAccepted(_ref) {\n var files = _ref.files,\n accept = _ref.accept,\n minSize = _ref.minSize,\n maxSize = _ref.maxSize,\n multiple = _ref.multiple,\n maxFiles = _ref.maxFiles,\n validator = _ref.validator;\n\n if (!multiple && files.length > 1 || multiple && maxFiles >= 1 && files.length > maxFiles) {\n return false;\n }\n\n return files.every(function (file) {\n var _fileAccepted = fileAccepted(file, accept),\n _fileAccepted2 = _slicedToArray(_fileAccepted, 1),\n accepted = _fileAccepted2[0];\n\n var _fileMatchSize = fileMatchSize(file, minSize, maxSize),\n _fileMatchSize2 = _slicedToArray(_fileMatchSize, 1),\n sizeMatch = _fileMatchSize2[0];\n\n var customErrors = validator ? validator(file) : null;\n return accepted && sizeMatch && !customErrors;\n });\n} // React's synthetic events has event.isPropagationStopped,\n// but to remain compatibility with other libs (Preact) fall back\n// to check event.cancelBubble\n\nexport function isPropagationStopped(event) {\n if (typeof event.isPropagationStopped === \"function\") {\n return event.isPropagationStopped();\n } else if (typeof event.cancelBubble !== \"undefined\") {\n return event.cancelBubble;\n }\n\n return false;\n}\nexport function isEvtWithFiles(event) {\n if (!event.dataTransfer) {\n return !!event.target && !!event.target.files;\n } // https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer/types\n // https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API/Recommended_drag_types#file\n\n\n return Array.prototype.some.call(event.dataTransfer.types, function (type) {\n return type === \"Files\" || type === \"application/x-moz-file\";\n });\n}\nexport function isKindFile(item) {\n return _typeof(item) === \"object\" && item !== null && item.kind === \"file\";\n} // allow the entire document to be a drag target\n\nexport function onDocumentDragOver(event) {\n event.preventDefault();\n}\n\nfunction isIe(userAgent) {\n return userAgent.indexOf(\"MSIE\") !== -1 || userAgent.indexOf(\"Trident/\") !== -1;\n}\n\nfunction isEdge(userAgent) {\n return userAgent.indexOf(\"Edge/\") !== -1;\n}\n\nexport function isIeOrEdge() {\n var userAgent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.navigator.userAgent;\n return isIe(userAgent) || isEdge(userAgent);\n}\n/**\n * This is intended to be used to compose event handlers\n * They are executed in order until one of them calls `event.isPropagationStopped()`.\n * Note that the check is done on the first invoke too,\n * meaning that if propagation was stopped before invoking the fns,\n * no handlers will be executed.\n *\n * @param {Function} fns the event hanlder functions\n * @return {Function} the event handler to add to an element\n */\n\nexport function composeEventHandlers() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n return fns.some(function (fn) {\n if (!isPropagationStopped(event) && fn) {\n fn.apply(void 0, [event].concat(args));\n }\n\n return isPropagationStopped(event);\n });\n };\n}\n/**\n * canUseFileSystemAccessAPI checks if the [File System Access API](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API)\n * is supported by the browser.\n * @returns {boolean}\n */\n\nexport function canUseFileSystemAccessAPI() {\n return \"showOpenFilePicker\" in window;\n}\n/**\n * Convert the `{accept}` dropzone prop to the\n * `{types}` option for https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker\n *\n * @param {AcceptProp} accept\n * @returns {{accept: string[]}[]}\n */\n\nexport function pickerOptionsFromAccept(accept) {\n if (isDefined(accept)) {\n var acceptForPicker = Object.entries(accept).filter(function (_ref2) {\n var _ref3 = _slicedToArray(_ref2, 2),\n mimeType = _ref3[0],\n ext = _ref3[1];\n\n var ok = true;\n\n if (!isMIMEType(mimeType)) {\n console.warn(\"Skipped \\\"\".concat(mimeType, \"\\\" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.\"));\n ok = false;\n }\n\n if (!Array.isArray(ext) || !ext.every(isExt)) {\n console.warn(\"Skipped \\\"\".concat(mimeType, \"\\\" because an invalid file extension was provided.\"));\n ok = false;\n }\n\n return ok;\n }).reduce(function (agg, _ref4) {\n var _ref5 = _slicedToArray(_ref4, 2),\n mimeType = _ref5[0],\n ext = _ref5[1];\n\n return _objectSpread(_objectSpread({}, agg), {}, _defineProperty({}, mimeType, ext));\n }, {});\n return [{\n // description is required due to https://crbug.com/1264708\n description: \"Files\",\n accept: acceptForPicker\n }];\n }\n\n return accept;\n}\n/**\n * Convert the `{accept}` dropzone prop to an array of MIME types/extensions.\n * @param {AcceptProp} accept\n * @returns {string}\n */\n\nexport function acceptPropAsAcceptAttr(accept) {\n if (isDefined(accept)) {\n return Object.entries(accept).reduce(function (a, _ref6) {\n var _ref7 = _slicedToArray(_ref6, 2),\n mimeType = _ref7[0],\n ext = _ref7[1];\n\n return [].concat(_toConsumableArray(a), [mimeType], _toConsumableArray(ext));\n }, []) // Silently discard invalid entries as pickerOptionsFromAccept warns about these\n .filter(function (v) {\n return isMIMEType(v) || isExt(v);\n }).join(\",\");\n }\n\n return undefined;\n}\n/**\n * Check if v is an exception caused by aborting a request (e.g window.showOpenFilePicker()).\n *\n * See https://developer.mozilla.org/en-US/docs/Web/API/DOMException.\n * @param {any} v\n * @returns {boolean} True if v is an abort exception.\n */\n\nexport function isAbort(v) {\n return v instanceof DOMException && (v.name === \"AbortError\" || v.code === v.ABORT_ERR);\n}\n/**\n * Check if v is a security error.\n *\n * See https://developer.mozilla.org/en-US/docs/Web/API/DOMException.\n * @param {any} v\n * @returns {boolean} True if v is a security error.\n */\n\nexport function isSecurityError(v) {\n return v instanceof DOMException && (v.name === \"SecurityError\" || v.code === v.SECURITY_ERR);\n}\n/**\n * Check if v is a MIME type string.\n *\n * See accepted format: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#unique_file_type_specifiers.\n *\n * @param {string} v\n */\n\nexport function isMIMEType(v) {\n return v === \"audio/*\" || v === \"video/*\" || v === \"image/*\" || v === \"text/*\" || /\\w+\\/[-+.\\w]+/g.test(v);\n}\n/**\n * Check if v is a file extension.\n * @param {string} v\n */\n\nexport function isExt(v) {\n return /^.*\\.[\\w]+$/.test(v);\n}\n/**\n * @typedef {Object.} AcceptProp\n */\n\n/**\n * @typedef {object} FileError\n * @property {string} message\n * @property {ErrorCode|string} code\n */\n\n/**\n * @typedef {\"file-invalid-type\"|\"file-too-large\"|\"file-too-small\"|\"too-many-files\"} ErrorCode\n */","var _excluded = [\"children\"],\n _excluded2 = [\"open\"],\n _excluded3 = [\"refKey\", \"role\", \"onKeyDown\", \"onFocus\", \"onBlur\", \"onClick\", \"onDragEnter\", \"onDragOver\", \"onDragLeave\", \"onDrop\"],\n _excluded4 = [\"refKey\", \"onChange\", \"onClick\"];\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* eslint prefer-template: 0 */\nimport React, { forwardRef, Fragment, useCallback, useEffect, useImperativeHandle, useMemo, useReducer, useRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { fromEvent } from \"file-selector\";\nimport { acceptPropAsAcceptAttr, allFilesAccepted, composeEventHandlers, fileAccepted, fileMatchSize, canUseFileSystemAccessAPI, isAbort, isEvtWithFiles, isIeOrEdge, isPropagationStopped, isSecurityError, onDocumentDragOver, pickerOptionsFromAccept, TOO_MANY_FILES_REJECTION } from \"./utils/index\";\n/**\n * Convenience wrapper component for the `useDropzone` hook\n *\n * ```jsx\n * \n * {({getRootProps, getInputProps}) => (\n *
\n * \n *

Drag 'n' drop some files here, or click to select files

\n *
\n * )}\n *
\n * ```\n */\n\nvar Dropzone = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var children = _ref.children,\n params = _objectWithoutProperties(_ref, _excluded);\n\n var _useDropzone = useDropzone(params),\n open = _useDropzone.open,\n props = _objectWithoutProperties(_useDropzone, _excluded2);\n\n useImperativeHandle(ref, function () {\n return {\n open: open\n };\n }, [open]); // TODO: Figure out why react-styleguidist cannot create docs if we don't return a jsx element\n\n return /*#__PURE__*/React.createElement(Fragment, null, children(_objectSpread(_objectSpread({}, props), {}, {\n open: open\n })));\n});\nDropzone.displayName = \"Dropzone\"; // Add default props for react-docgen\n\nvar defaultProps = {\n disabled: false,\n getFilesFromEvent: fromEvent,\n maxSize: Infinity,\n minSize: 0,\n multiple: true,\n maxFiles: 0,\n preventDropOnDocument: true,\n noClick: false,\n noKeyboard: false,\n noDrag: false,\n noDragEventsBubbling: false,\n validator: null,\n useFsAccessApi: true,\n autoFocus: false\n};\nDropzone.defaultProps = defaultProps;\nDropzone.propTypes = {\n /**\n * Render function that exposes the dropzone state and prop getter fns\n *\n * @param {object} params\n * @param {Function} params.getRootProps Returns the props you should apply to the root drop container you render\n * @param {Function} params.getInputProps Returns the props you should apply to hidden file input you render\n * @param {Function} params.open Open the native file selection dialog\n * @param {boolean} params.isFocused Dropzone area is in focus\n * @param {boolean} params.isFileDialogActive File dialog is opened\n * @param {boolean} params.isDragActive Active drag is in progress\n * @param {boolean} params.isDragAccept Dragged files are accepted\n * @param {boolean} params.isDragReject Some dragged files are rejected\n * @param {File[]} params.acceptedFiles Accepted files\n * @param {FileRejection[]} params.fileRejections Rejected files and why they were rejected\n */\n children: PropTypes.func,\n\n /**\n * Set accepted file types.\n * Checkout https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker types option for more information.\n * Keep in mind that mime type determination is not reliable across platforms. CSV files,\n * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under\n * Windows. In some cases there might not be a mime type set at all (https://github.com/react-dropzone/react-dropzone/issues/276).\n */\n accept: PropTypes.objectOf(PropTypes.arrayOf(PropTypes.string)),\n\n /**\n * Allow drag 'n' drop (or selection from the file dialog) of multiple files\n */\n multiple: PropTypes.bool,\n\n /**\n * If false, allow dropped items to take over the current browser window\n */\n preventDropOnDocument: PropTypes.bool,\n\n /**\n * If true, disables click to open the native file selection dialog\n */\n noClick: PropTypes.bool,\n\n /**\n * If true, disables SPACE/ENTER to open the native file selection dialog.\n * Note that it also stops tracking the focus state.\n */\n noKeyboard: PropTypes.bool,\n\n /**\n * If true, disables drag 'n' drop\n */\n noDrag: PropTypes.bool,\n\n /**\n * If true, stops drag event propagation to parents\n */\n noDragEventsBubbling: PropTypes.bool,\n\n /**\n * Minimum file size (in bytes)\n */\n minSize: PropTypes.number,\n\n /**\n * Maximum file size (in bytes)\n */\n maxSize: PropTypes.number,\n\n /**\n * Maximum accepted number of files\n * The default value is 0 which means there is no limitation to how many files are accepted.\n */\n maxFiles: PropTypes.number,\n\n /**\n * Enable/disable the dropzone\n */\n disabled: PropTypes.bool,\n\n /**\n * Use this to provide a custom file aggregator\n *\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n getFilesFromEvent: PropTypes.func,\n\n /**\n * Cb for when closing the file dialog with no selection\n */\n onFileDialogCancel: PropTypes.func,\n\n /**\n * Cb for when opening the file dialog\n */\n onFileDialogOpen: PropTypes.func,\n\n /**\n * Set to true to use the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API\n * to open the file picker instead of using an `` click event.\n */\n useFsAccessApi: PropTypes.bool,\n\n /**\n * Set to true to focus the root element on render\n */\n autoFocus: PropTypes.bool,\n\n /**\n * Cb for when the `dragenter` event occurs.\n *\n * @param {DragEvent} event\n */\n onDragEnter: PropTypes.func,\n\n /**\n * Cb for when the `dragleave` event occurs\n *\n * @param {DragEvent} event\n */\n onDragLeave: PropTypes.func,\n\n /**\n * Cb for when the `dragover` event occurs\n *\n * @param {DragEvent} event\n */\n onDragOver: PropTypes.func,\n\n /**\n * Cb for when the `drop` event occurs.\n * Note that this callback is invoked after the `getFilesFromEvent` callback is done.\n *\n * Files are accepted or rejected based on the `accept`, `multiple`, `minSize` and `maxSize` props.\n * `accept` must be a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file) or a valid file extension.\n * If `multiple` is set to false and additional files are dropped,\n * all files besides the first will be rejected.\n * Any file which does not have a size in the [`minSize`, `maxSize`] range, will be rejected as well.\n *\n * Note that the `onDrop` callback will always be invoked regardless if the dropped files were accepted or rejected.\n * If you'd like to react to a specific scenario, use the `onDropAccepted`/`onDropRejected` props.\n *\n * `onDrop` will provide you with an array of [File](https://developer.mozilla.org/en-US/docs/Web/API/File) objects which you can then process and send to a server.\n * For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:\n *\n * ```js\n * function onDrop(acceptedFiles) {\n * const req = request.post('/upload')\n * acceptedFiles.forEach(file => {\n * req.attach(file.name, file)\n * })\n * req.end(callback)\n * }\n * ```\n *\n * @param {File[]} acceptedFiles\n * @param {FileRejection[]} fileRejections\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n onDrop: PropTypes.func,\n\n /**\n * Cb for when the `drop` event occurs.\n * Note that if no files are accepted, this callback is not invoked.\n *\n * @param {File[]} files\n * @param {(DragEvent|Event)} event\n */\n onDropAccepted: PropTypes.func,\n\n /**\n * Cb for when the `drop` event occurs.\n * Note that if no files are rejected, this callback is not invoked.\n *\n * @param {FileRejection[]} fileRejections\n * @param {(DragEvent|Event)} event\n */\n onDropRejected: PropTypes.func,\n\n /**\n * Cb for when there's some error from any of the promises.\n *\n * @param {Error} error\n */\n onError: PropTypes.func,\n\n /**\n * Custom validation function. It must return null if there's no errors.\n * @param {File} file\n * @returns {FileError|FileError[]|null}\n */\n validator: PropTypes.func\n};\nexport default Dropzone;\n/**\n * A function that is invoked for the `dragenter`,\n * `dragover` and `dragleave` events.\n * It is not invoked if the items are not files (such as link, text, etc.).\n *\n * @callback dragCb\n * @param {DragEvent} event\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n * It is not invoked if the items are not files (such as link, text, etc.).\n *\n * @callback dropCb\n * @param {File[]} acceptedFiles List of accepted files\n * @param {FileRejection[]} fileRejections List of rejected files and why they were rejected\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n * It is not invoked if the items are files (such as link, text, etc.).\n *\n * @callback dropAcceptedCb\n * @param {File[]} files List of accepted files that meet the given criteria\n * (`accept`, `multiple`, `minSize`, `maxSize`)\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n *\n * @callback dropRejectedCb\n * @param {File[]} files List of rejected files that do not meet the given criteria\n * (`accept`, `multiple`, `minSize`, `maxSize`)\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is used aggregate files,\n * in a asynchronous fashion, from drag or input change events.\n *\n * @callback getFilesFromEvent\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n * @returns {(File[]|Promise)}\n */\n\n/**\n * An object with the current dropzone state.\n *\n * @typedef {object} DropzoneState\n * @property {boolean} isFocused Dropzone area is in focus\n * @property {boolean} isFileDialogActive File dialog is opened\n * @property {boolean} isDragActive Active drag is in progress\n * @property {boolean} isDragAccept Dragged files are accepted\n * @property {boolean} isDragReject Some dragged files are rejected\n * @property {File[]} acceptedFiles Accepted files\n * @property {FileRejection[]} fileRejections Rejected files and why they were rejected\n */\n\n/**\n * An object with the dropzone methods.\n *\n * @typedef {object} DropzoneMethods\n * @property {Function} getRootProps Returns the props you should apply to the root drop container you render\n * @property {Function} getInputProps Returns the props you should apply to hidden file input you render\n * @property {Function} open Open the native file selection dialog\n */\n\nvar initialState = {\n isFocused: false,\n isFileDialogActive: false,\n isDragActive: false,\n isDragAccept: false,\n isDragReject: false,\n acceptedFiles: [],\n fileRejections: []\n};\n/**\n * A React hook that creates a drag 'n' drop area.\n *\n * ```jsx\n * function MyDropzone(props) {\n * const {getRootProps, getInputProps} = useDropzone({\n * onDrop: acceptedFiles => {\n * // do something with the File objects, e.g. upload to some server\n * }\n * });\n * return (\n *
\n * \n *

Drag and drop some files here, or click to select files

\n *
\n * )\n * }\n * ```\n *\n * @function useDropzone\n *\n * @param {object} props\n * @param {import(\"./utils\").AcceptProp} [props.accept] Set accepted file types.\n * Checkout https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker types option for more information.\n * Keep in mind that mime type determination is not reliable across platforms. CSV files,\n * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under\n * Windows. In some cases there might not be a mime type set at all (https://github.com/react-dropzone/react-dropzone/issues/276).\n * @param {boolean} [props.multiple=true] Allow drag 'n' drop (or selection from the file dialog) of multiple files\n * @param {boolean} [props.preventDropOnDocument=true] If false, allow dropped items to take over the current browser window\n * @param {boolean} [props.noClick=false] If true, disables click to open the native file selection dialog\n * @param {boolean} [props.noKeyboard=false] If true, disables SPACE/ENTER to open the native file selection dialog.\n * Note that it also stops tracking the focus state.\n * @param {boolean} [props.noDrag=false] If true, disables drag 'n' drop\n * @param {boolean} [props.noDragEventsBubbling=false] If true, stops drag event propagation to parents\n * @param {number} [props.minSize=0] Minimum file size (in bytes)\n * @param {number} [props.maxSize=Infinity] Maximum file size (in bytes)\n * @param {boolean} [props.disabled=false] Enable/disable the dropzone\n * @param {getFilesFromEvent} [props.getFilesFromEvent] Use this to provide a custom file aggregator\n * @param {Function} [props.onFileDialogCancel] Cb for when closing the file dialog with no selection\n * @param {boolean} [props.useFsAccessApi] Set to true to use the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API\n * to open the file picker instead of using an `` click event.\n * @param {boolean} autoFocus Set to true to auto focus the root element.\n * @param {Function} [props.onFileDialogOpen] Cb for when opening the file dialog\n * @param {dragCb} [props.onDragEnter] Cb for when the `dragenter` event occurs.\n * @param {dragCb} [props.onDragLeave] Cb for when the `dragleave` event occurs\n * @param {dragCb} [props.onDragOver] Cb for when the `dragover` event occurs\n * @param {dropCb} [props.onDrop] Cb for when the `drop` event occurs.\n * Note that this callback is invoked after the `getFilesFromEvent` callback is done.\n *\n * Files are accepted or rejected based on the `accept`, `multiple`, `minSize` and `maxSize` props.\n * `accept` must be an object with keys as a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file) and the value an array of file extensions (optional).\n * If `multiple` is set to false and additional files are dropped,\n * all files besides the first will be rejected.\n * Any file which does not have a size in the [`minSize`, `maxSize`] range, will be rejected as well.\n *\n * Note that the `onDrop` callback will always be invoked regardless if the dropped files were accepted or rejected.\n * If you'd like to react to a specific scenario, use the `onDropAccepted`/`onDropRejected` props.\n *\n * `onDrop` will provide you with an array of [File](https://developer.mozilla.org/en-US/docs/Web/API/File) objects which you can then process and send to a server.\n * For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:\n *\n * ```js\n * function onDrop(acceptedFiles) {\n * const req = request.post('/upload')\n * acceptedFiles.forEach(file => {\n * req.attach(file.name, file)\n * })\n * req.end(callback)\n * }\n * ```\n * @param {dropAcceptedCb} [props.onDropAccepted]\n * @param {dropRejectedCb} [props.onDropRejected]\n * @param {(error: Error) => void} [props.onError]\n *\n * @returns {DropzoneState & DropzoneMethods}\n */\n\nexport function useDropzone() {\n var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),\n accept = _defaultProps$props.accept,\n disabled = _defaultProps$props.disabled,\n getFilesFromEvent = _defaultProps$props.getFilesFromEvent,\n maxSize = _defaultProps$props.maxSize,\n minSize = _defaultProps$props.minSize,\n multiple = _defaultProps$props.multiple,\n maxFiles = _defaultProps$props.maxFiles,\n onDragEnter = _defaultProps$props.onDragEnter,\n onDragLeave = _defaultProps$props.onDragLeave,\n onDragOver = _defaultProps$props.onDragOver,\n onDrop = _defaultProps$props.onDrop,\n onDropAccepted = _defaultProps$props.onDropAccepted,\n onDropRejected = _defaultProps$props.onDropRejected,\n onFileDialogCancel = _defaultProps$props.onFileDialogCancel,\n onFileDialogOpen = _defaultProps$props.onFileDialogOpen,\n useFsAccessApi = _defaultProps$props.useFsAccessApi,\n autoFocus = _defaultProps$props.autoFocus,\n preventDropOnDocument = _defaultProps$props.preventDropOnDocument,\n noClick = _defaultProps$props.noClick,\n noKeyboard = _defaultProps$props.noKeyboard,\n noDrag = _defaultProps$props.noDrag,\n noDragEventsBubbling = _defaultProps$props.noDragEventsBubbling,\n onError = _defaultProps$props.onError,\n validator = _defaultProps$props.validator;\n\n var acceptAttr = useMemo(function () {\n return acceptPropAsAcceptAttr(accept);\n }, [accept]);\n var pickerTypes = useMemo(function () {\n return pickerOptionsFromAccept(accept);\n }, [accept]);\n var onFileDialogOpenCb = useMemo(function () {\n return typeof onFileDialogOpen === \"function\" ? onFileDialogOpen : noop;\n }, [onFileDialogOpen]);\n var onFileDialogCancelCb = useMemo(function () {\n return typeof onFileDialogCancel === \"function\" ? onFileDialogCancel : noop;\n }, [onFileDialogCancel]);\n /**\n * @constant\n * @type {React.MutableRefObject}\n */\n\n var rootRef = useRef(null);\n var inputRef = useRef(null);\n\n var _useReducer = useReducer(reducer, initialState),\n _useReducer2 = _slicedToArray(_useReducer, 2),\n state = _useReducer2[0],\n dispatch = _useReducer2[1];\n\n var isFocused = state.isFocused,\n isFileDialogActive = state.isFileDialogActive;\n var fsAccessApiWorksRef = useRef(typeof window !== \"undefined\" && window.isSecureContext && useFsAccessApi && canUseFileSystemAccessAPI()); // Update file dialog active state when the window is focused on\n\n var onWindowFocus = function onWindowFocus() {\n // Execute the timeout only if the file dialog is opened in the browser\n if (!fsAccessApiWorksRef.current && isFileDialogActive) {\n setTimeout(function () {\n if (inputRef.current) {\n var files = inputRef.current.files;\n\n if (!files.length) {\n dispatch({\n type: \"closeDialog\"\n });\n onFileDialogCancelCb();\n }\n }\n }, 300);\n }\n };\n\n useEffect(function () {\n window.addEventListener(\"focus\", onWindowFocus, false);\n return function () {\n window.removeEventListener(\"focus\", onWindowFocus, false);\n };\n }, [inputRef, isFileDialogActive, onFileDialogCancelCb, fsAccessApiWorksRef]);\n var dragTargetsRef = useRef([]);\n\n var onDocumentDrop = function onDocumentDrop(event) {\n if (rootRef.current && rootRef.current.contains(event.target)) {\n // If we intercepted an event for our instance, let it propagate down to the instance's onDrop handler\n return;\n }\n\n event.preventDefault();\n dragTargetsRef.current = [];\n };\n\n useEffect(function () {\n if (preventDropOnDocument) {\n document.addEventListener(\"dragover\", onDocumentDragOver, false);\n document.addEventListener(\"drop\", onDocumentDrop, false);\n }\n\n return function () {\n if (preventDropOnDocument) {\n document.removeEventListener(\"dragover\", onDocumentDragOver);\n document.removeEventListener(\"drop\", onDocumentDrop);\n }\n };\n }, [rootRef, preventDropOnDocument]); // Auto focus the root when autoFocus is true\n\n useEffect(function () {\n if (!disabled && autoFocus && rootRef.current) {\n rootRef.current.focus();\n }\n\n return function () {};\n }, [rootRef, autoFocus, disabled]);\n var onErrCb = useCallback(function (e) {\n if (onError) {\n onError(e);\n } else {\n // Let the user know something's gone wrong if they haven't provided the onError cb.\n console.error(e);\n }\n }, [onError]);\n var onDragEnterCb = useCallback(function (event) {\n event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done\n\n event.persist();\n stopPropagation(event);\n dragTargetsRef.current = [].concat(_toConsumableArray(dragTargetsRef.current), [event.target]);\n\n if (isEvtWithFiles(event)) {\n Promise.resolve(getFilesFromEvent(event)).then(function (files) {\n if (isPropagationStopped(event) && !noDragEventsBubbling) {\n return;\n }\n\n var fileCount = files.length;\n var isDragAccept = fileCount > 0 && allFilesAccepted({\n files: files,\n accept: acceptAttr,\n minSize: minSize,\n maxSize: maxSize,\n multiple: multiple,\n maxFiles: maxFiles,\n validator: validator\n });\n var isDragReject = fileCount > 0 && !isDragAccept;\n dispatch({\n isDragAccept: isDragAccept,\n isDragReject: isDragReject,\n isDragActive: true,\n type: \"setDraggedFiles\"\n });\n\n if (onDragEnter) {\n onDragEnter(event);\n }\n }).catch(function (e) {\n return onErrCb(e);\n });\n }\n }, [getFilesFromEvent, onDragEnter, onErrCb, noDragEventsBubbling, acceptAttr, minSize, maxSize, multiple, maxFiles, validator]);\n var onDragOverCb = useCallback(function (event) {\n event.preventDefault();\n event.persist();\n stopPropagation(event);\n var hasFiles = isEvtWithFiles(event);\n\n if (hasFiles && event.dataTransfer) {\n try {\n event.dataTransfer.dropEffect = \"copy\";\n } catch (_unused) {}\n /* eslint-disable-line no-empty */\n\n }\n\n if (hasFiles && onDragOver) {\n onDragOver(event);\n }\n\n return false;\n }, [onDragOver, noDragEventsBubbling]);\n var onDragLeaveCb = useCallback(function (event) {\n event.preventDefault();\n event.persist();\n stopPropagation(event); // Only deactivate once the dropzone and all children have been left\n\n var targets = dragTargetsRef.current.filter(function (target) {\n return rootRef.current && rootRef.current.contains(target);\n }); // Make sure to remove a target present multiple times only once\n // (Firefox may fire dragenter/dragleave multiple times on the same element)\n\n var targetIdx = targets.indexOf(event.target);\n\n if (targetIdx !== -1) {\n targets.splice(targetIdx, 1);\n }\n\n dragTargetsRef.current = targets;\n\n if (targets.length > 0) {\n return;\n }\n\n dispatch({\n type: \"setDraggedFiles\",\n isDragActive: false,\n isDragAccept: false,\n isDragReject: false\n });\n\n if (isEvtWithFiles(event) && onDragLeave) {\n onDragLeave(event);\n }\n }, [rootRef, onDragLeave, noDragEventsBubbling]);\n var setFiles = useCallback(function (files, event) {\n var acceptedFiles = [];\n var fileRejections = [];\n files.forEach(function (file) {\n var _fileAccepted = fileAccepted(file, acceptAttr),\n _fileAccepted2 = _slicedToArray(_fileAccepted, 2),\n accepted = _fileAccepted2[0],\n acceptError = _fileAccepted2[1];\n\n var _fileMatchSize = fileMatchSize(file, minSize, maxSize),\n _fileMatchSize2 = _slicedToArray(_fileMatchSize, 2),\n sizeMatch = _fileMatchSize2[0],\n sizeError = _fileMatchSize2[1];\n\n var customErrors = validator ? validator(file) : null;\n\n if (accepted && sizeMatch && !customErrors) {\n acceptedFiles.push(file);\n } else {\n var errors = [acceptError, sizeError];\n\n if (customErrors) {\n errors = errors.concat(customErrors);\n }\n\n fileRejections.push({\n file: file,\n errors: errors.filter(function (e) {\n return e;\n })\n });\n }\n });\n\n if (!multiple && acceptedFiles.length > 1 || multiple && maxFiles >= 1 && acceptedFiles.length > maxFiles) {\n // Reject everything and empty accepted files\n acceptedFiles.forEach(function (file) {\n fileRejections.push({\n file: file,\n errors: [TOO_MANY_FILES_REJECTION]\n });\n });\n acceptedFiles.splice(0);\n }\n\n dispatch({\n acceptedFiles: acceptedFiles,\n fileRejections: fileRejections,\n type: \"setFiles\"\n });\n\n if (onDrop) {\n onDrop(acceptedFiles, fileRejections, event);\n }\n\n if (fileRejections.length > 0 && onDropRejected) {\n onDropRejected(fileRejections, event);\n }\n\n if (acceptedFiles.length > 0 && onDropAccepted) {\n onDropAccepted(acceptedFiles, event);\n }\n }, [dispatch, multiple, acceptAttr, minSize, maxSize, maxFiles, onDrop, onDropAccepted, onDropRejected, validator]);\n var onDropCb = useCallback(function (event) {\n event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done\n\n event.persist();\n stopPropagation(event);\n dragTargetsRef.current = [];\n\n if (isEvtWithFiles(event)) {\n Promise.resolve(getFilesFromEvent(event)).then(function (files) {\n if (isPropagationStopped(event) && !noDragEventsBubbling) {\n return;\n }\n\n setFiles(files, event);\n }).catch(function (e) {\n return onErrCb(e);\n });\n }\n\n dispatch({\n type: \"reset\"\n });\n }, [getFilesFromEvent, setFiles, onErrCb, noDragEventsBubbling]); // Fn for opening the file dialog programmatically\n\n var openFileDialog = useCallback(function () {\n // No point to use FS access APIs if context is not secure\n // https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts#feature_detection\n if (fsAccessApiWorksRef.current) {\n dispatch({\n type: \"openDialog\"\n });\n onFileDialogOpenCb(); // https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker\n\n var opts = {\n multiple: multiple,\n types: pickerTypes\n };\n window.showOpenFilePicker(opts).then(function (handles) {\n return getFilesFromEvent(handles);\n }).then(function (files) {\n setFiles(files, null);\n dispatch({\n type: \"closeDialog\"\n });\n }).catch(function (e) {\n // AbortError means the user canceled\n if (isAbort(e)) {\n onFileDialogCancelCb(e);\n dispatch({\n type: \"closeDialog\"\n });\n } else if (isSecurityError(e)) {\n fsAccessApiWorksRef.current = false; // CORS, so cannot use this API\n // Try using the input\n\n if (inputRef.current) {\n inputRef.current.value = null;\n inputRef.current.click();\n } else {\n onErrCb(new Error(\"Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no was provided.\"));\n }\n } else {\n onErrCb(e);\n }\n });\n return;\n }\n\n if (inputRef.current) {\n dispatch({\n type: \"openDialog\"\n });\n onFileDialogOpenCb();\n inputRef.current.value = null;\n inputRef.current.click();\n }\n }, [dispatch, onFileDialogOpenCb, onFileDialogCancelCb, useFsAccessApi, setFiles, onErrCb, pickerTypes, multiple]); // Cb to open the file dialog when SPACE/ENTER occurs on the dropzone\n\n var onKeyDownCb = useCallback(function (event) {\n // Ignore keyboard events bubbling up the DOM tree\n if (!rootRef.current || !rootRef.current.isEqualNode(event.target)) {\n return;\n }\n\n if (event.key === \" \" || event.key === \"Enter\" || event.keyCode === 32 || event.keyCode === 13) {\n event.preventDefault();\n openFileDialog();\n }\n }, [rootRef, openFileDialog]); // Update focus state for the dropzone\n\n var onFocusCb = useCallback(function () {\n dispatch({\n type: \"focus\"\n });\n }, []);\n var onBlurCb = useCallback(function () {\n dispatch({\n type: \"blur\"\n });\n }, []); // Cb to open the file dialog when click occurs on the dropzone\n\n var onClickCb = useCallback(function () {\n if (noClick) {\n return;\n } // In IE11/Edge the file-browser dialog is blocking, therefore, use setTimeout()\n // to ensure React can handle state changes\n // See: https://github.com/react-dropzone/react-dropzone/issues/450\n\n\n if (isIeOrEdge()) {\n setTimeout(openFileDialog, 0);\n } else {\n openFileDialog();\n }\n }, [noClick, openFileDialog]);\n\n var composeHandler = function composeHandler(fn) {\n return disabled ? null : fn;\n };\n\n var composeKeyboardHandler = function composeKeyboardHandler(fn) {\n return noKeyboard ? null : composeHandler(fn);\n };\n\n var composeDragHandler = function composeDragHandler(fn) {\n return noDrag ? null : composeHandler(fn);\n };\n\n var stopPropagation = function stopPropagation(event) {\n if (noDragEventsBubbling) {\n event.stopPropagation();\n }\n };\n\n var getRootProps = useMemo(function () {\n return function () {\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref2$refKey = _ref2.refKey,\n refKey = _ref2$refKey === void 0 ? \"ref\" : _ref2$refKey,\n role = _ref2.role,\n onKeyDown = _ref2.onKeyDown,\n onFocus = _ref2.onFocus,\n onBlur = _ref2.onBlur,\n onClick = _ref2.onClick,\n onDragEnter = _ref2.onDragEnter,\n onDragOver = _ref2.onDragOver,\n onDragLeave = _ref2.onDragLeave,\n onDrop = _ref2.onDrop,\n rest = _objectWithoutProperties(_ref2, _excluded3);\n\n return _objectSpread(_objectSpread(_defineProperty({\n onKeyDown: composeKeyboardHandler(composeEventHandlers(onKeyDown, onKeyDownCb)),\n onFocus: composeKeyboardHandler(composeEventHandlers(onFocus, onFocusCb)),\n onBlur: composeKeyboardHandler(composeEventHandlers(onBlur, onBlurCb)),\n onClick: composeHandler(composeEventHandlers(onClick, onClickCb)),\n onDragEnter: composeDragHandler(composeEventHandlers(onDragEnter, onDragEnterCb)),\n onDragOver: composeDragHandler(composeEventHandlers(onDragOver, onDragOverCb)),\n onDragLeave: composeDragHandler(composeEventHandlers(onDragLeave, onDragLeaveCb)),\n onDrop: composeDragHandler(composeEventHandlers(onDrop, onDropCb)),\n role: typeof role === \"string\" && role !== \"\" ? role : \"presentation\"\n }, refKey, rootRef), !disabled && !noKeyboard ? {\n tabIndex: 0\n } : {}), rest);\n };\n }, [rootRef, onKeyDownCb, onFocusCb, onBlurCb, onClickCb, onDragEnterCb, onDragOverCb, onDragLeaveCb, onDropCb, noKeyboard, noDrag, disabled]);\n var onInputElementClick = useCallback(function (event) {\n event.stopPropagation();\n }, []);\n var getInputProps = useMemo(function () {\n return function () {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref3$refKey = _ref3.refKey,\n refKey = _ref3$refKey === void 0 ? \"ref\" : _ref3$refKey,\n onChange = _ref3.onChange,\n onClick = _ref3.onClick,\n rest = _objectWithoutProperties(_ref3, _excluded4);\n\n var inputProps = _defineProperty({\n accept: acceptAttr,\n multiple: multiple,\n type: \"file\",\n style: {\n display: \"none\"\n },\n onChange: composeHandler(composeEventHandlers(onChange, onDropCb)),\n onClick: composeHandler(composeEventHandlers(onClick, onInputElementClick)),\n tabIndex: -1\n }, refKey, inputRef);\n\n return _objectSpread(_objectSpread({}, inputProps), rest);\n };\n }, [inputRef, accept, multiple, onDropCb, disabled]);\n return _objectSpread(_objectSpread({}, state), {}, {\n isFocused: isFocused && !disabled,\n getRootProps: getRootProps,\n getInputProps: getInputProps,\n rootRef: rootRef,\n inputRef: inputRef,\n open: composeHandler(openFileDialog)\n });\n}\n/**\n * @param {DropzoneState} state\n * @param {{type: string} & DropzoneState} action\n * @returns {DropzoneState}\n */\n\nfunction reducer(state, action) {\n /* istanbul ignore next */\n switch (action.type) {\n case \"focus\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isFocused: true\n });\n\n case \"blur\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isFocused: false\n });\n\n case \"openDialog\":\n return _objectSpread(_objectSpread({}, initialState), {}, {\n isFileDialogActive: true\n });\n\n case \"closeDialog\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isFileDialogActive: false\n });\n\n case \"setDraggedFiles\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isDragActive: action.isDragActive,\n isDragAccept: action.isDragAccept,\n isDragReject: action.isDragReject\n });\n\n case \"setFiles\":\n return _objectSpread(_objectSpread({}, state), {}, {\n acceptedFiles: action.acceptedFiles,\n fileRejections: action.fileRejections\n });\n\n case \"reset\":\n return _objectSpread({}, initialState);\n\n default:\n return state;\n }\n}\n\nfunction noop() {}\n\nexport { ErrorCode } from \"./utils\";","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","getBadgeUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","BadgeRoot","styled","name","overridesResolver","props","styles","root","position","display","verticalAlign","flexShrink","BadgeBadge","ownerState","badge","variant","concat","capitalize","anchorOrigin","vertical","horizontal","overlap","color","invisible","_ref3","theme","_extends","flexDirection","flexWrap","justifyContent","alignContent","alignItems","boxSizing","fontFamily","typography","fontWeight","fontWeightMedium","fontSize","pxToRem","minWidth","RADIUS_STANDARD","lineHeight","padding","height","borderRadius","zIndex","transition","transitions","create","easing","easeInOut","duration","enteringScreen","backgroundColor","vars","palette","main","contrastText","RADIUS_DOT","_defineProperty","top","right","transform","transformOrigin","badgeClasses","bottom","left","leavingScreen","React","inProps","ref","_ref","_slots$root","_ref2","_slots$badge","_slotProps$root","_slotProps$badge","useThemeProps","_props$anchorOrigin","anchorOriginProp","className","component","_props$components","components","_props$componentsProp","componentsProps","children","_props$overlap","overlapProp","_props$color","colorProp","_props$invisible","invisibleProp","_props$max","max","maxProp","badgeContentProp","badgeContent","slots","slotProps","_props$showZero","showZero","_props$variant","variantProp","other","_objectWithoutPropertiesLoose","_useBadge","parameters","_parameters$invisible","_parameters$max","_parameters$showZero","prevProps","usePreviousProps","_ref$max","displayValue","Number","useBadge","invisibleFromHook","displayValueFromHook","_ref12","_ref12$color","_ref12$overlap","_ref12$anchorOrigin","_ref12$variant","undefined","classes","_ownerState$classes","composeClasses","useUtilityClasses","RootSlot","Root","BadgeSlot","Badge","rootSlotProps","badgeSlotProps","rootProps","useSlotProps","elementType","externalSlotProps","externalForwardedProps","additionalProps","as","clsx","badgeProps","_jsxs","_jsx","getCheckboxUtilityClass","CheckboxRoot","SwitchBase","shouldForwardProp","prop","rootShouldForwardProp","indeterminate","text","secondary","disableRipple","action","activeChannel","primary","mainChannel","hoverOpacity","alpha","active","checkboxClasses","checked","disabled","defaultCheckedIcon","CheckBoxIcon","defaultIcon","CheckBoxOutlineBlankIcon","defaultIndeterminateIcon","IndeterminateCheckBoxIcon","_icon$props$fontSize","_indeterminateIcon$pr","_props$checkedIcon","checkedIcon","_props$icon","icon","iconProp","_props$indeterminate","_props$indeterminateI","indeterminateIcon","indeterminateIconProp","inputProps","_props$size","size","composedClasses","type","ListItemIconRoot","alignItemsFlexStart","marginTop","ListItemIcon","context","ListContext","getListItemIconUtilityClass","ListItemTextRoot","listItemTextClasses","inset","multiline","dense","flex","marginBottom","paddingLeft","ListItemText","_props$disableTypogra","disableTypography","_props$inset","primaryProp","primaryTypographyProps","secondaryProp","secondaryTypographyProps","getListItemTextUtilityClass","Typography","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","file","acceptedFiles","acceptedFilesArray","Array","isArray","split","fileName","mimeType","toLowerCase","baseMimeType","replace","some","validType","trim","charAt","endsWith","deselectCurrent","clipboardToIE11Formatting","module","options","debug","message","reselectPrevious","range","selection","mark","success","document","createRange","getSelection","createElement","textContent","ariaHidden","style","all","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","addEventListener","e","stopPropagation","format","preventDefault","clipboardData","console","warn","window","clearData","setData","onCopy","body","appendChild","selectNodeContents","addRange","execCommand","Error","err","error","copyKey","test","navigator","userAgent","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","CopyToClipboard","_react","_copyToClipboard","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","sourceKeys","indexOf","sourceSymbolKeys","propertyIsEnumerable","call","_defineProperties","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","this","self","TypeError","_assertThisInitialized","_possibleConstructorReturn","ReferenceError","getPrototypeOf","_React$PureComponent","subClass","superClass","_inherits","Constructor","protoProps","staticProps","_super","_this","instance","_classCallCheck","_len","args","_key","event","_this$props","elem","Children","only","onClick","_this$props2","cloneElement","PureComponent","__awaiter","thisArg","_arguments","P","Promise","resolve","reject","fulfilled","step","next","rejected","done","then","__generator","f","y","t","g","_","label","sent","trys","ops","verb","n","v","op","pop","__read","m","r","ar","__spreadArray","to","from","pack","l","slice","SuppressedError","COMMON_MIME_TYPES","Map","toFileWithPath","path","lastIndexOf","ext","withMimeType","webkitRelativePath","FILES_TO_IGNORE","isObject","getInputFiles","evt","fromList","files","map","getFsHandleFiles","handles","h","getFile","_a","getDataTransferFiles","dt","items","item","kind","toFilePromises","noIgnoredFiles","flatten","webkitGetAsEntry","fromDataTransferItem","entry","isDirectory","fromDirEntry","reduce","acc","getAsFile","fwp","fromEntry","fromFileEntry","reader","createReader","entries","readEntries","batch","err_1","fullPath","_toConsumableArray","arr","_arrayLikeToArray","_arrayWithoutHoles","iter","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","_slicedToArray","_arrayWithHoles","_i","_s","_e","_arr","_n","_d","_iterableToArrayLimit","_nonIterableRest","minLen","toString","len","arr2","FILE_INVALID_TYPE","FILE_TOO_LARGE","FILE_TOO_SMALL","TOO_MANY_FILES","getInvalidTypeRejectionErr","accept","messageSuffix","join","code","getTooLargeRejectionErr","maxSize","getTooSmallRejectionErr","minSize","TOO_MANY_FILES_REJECTION","fileAccepted","isAcceptable","accepts","fileMatchSize","isDefined","isPropagationStopped","cancelBubble","isEvtWithFiles","dataTransfer","types","onDocumentDragOver","composeEventHandlers","fns","_len2","_key2","fn","isMIMEType","isExt","_excluded2","_excluded3","_excluded4","Dropzone","forwardRef","_useDropzone","useDropzone","open","useImperativeHandle","Fragment","displayName","defaultProps","getFilesFromEvent","isChangeEvt","every","Infinity","multiple","maxFiles","preventDropOnDocument","noClick","noKeyboard","noDrag","noDragEventsBubbling","useFsAccessApi","autoFocus","propTypes","PropTypes","onFileDialogCancel","onFileDialogOpen","onDragEnter","onDragLeave","onDragOver","onDrop","onDropAccepted","onDropRejected","onError","initialState","isFocused","isFileDialogActive","isDragActive","isDragAccept","isDragReject","fileRejections","_defaultProps$props","acceptAttr","useMemo","a","_ref6","_ref7","acceptPropAsAcceptAttr","pickerTypes","description","ok","agg","_ref4","_ref5","pickerOptionsFromAccept","onFileDialogOpenCb","noop","onFileDialogCancelCb","rootRef","useRef","inputRef","_useReducer2","useReducer","reducer","state","dispatch","fsAccessApiWorksRef","isSecureContext","onWindowFocus","current","setTimeout","useEffect","removeEventListener","dragTargetsRef","onDocumentDrop","contains","focus","onErrCb","useCallback","onDragEnterCb","persist","fileCount","accepted","sizeMatch","customErrors","allFilesAccepted","catch","onDragOverCb","hasFiles","dropEffect","_unused","onDragLeaveCb","targets","targetIdx","splice","setFiles","_fileAccepted2","acceptError","_fileMatchSize2","sizeError","errors","onDropCb","openFileDialog","opts","showOpenFilePicker","DOMException","ABORT_ERR","SECURITY_ERR","isSecurityError","click","onKeyDownCb","isEqualNode","keyCode","onFocusCb","onBlurCb","onClickCb","isIe","isEdge","isIeOrEdge","composeHandler","composeKeyboardHandler","composeDragHandler","getRootProps","_ref2$refKey","refKey","role","onKeyDown","onFocus","onBlur","rest","tabIndex","onInputElementClick","getInputProps","_ref3$refKey","onChange","rangeCount","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/5994.42cc3b8c.chunk.js b/portal-ui/build/static/js/5994.42cc3b8c.chunk.js deleted file mode 100644 index 1bc3cf643..000000000 --- a/portal-ui/build/static/js/5994.42cc3b8c.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[5994],{86596:function(e,t,n){var o=n(4942),r=n(93433),i=n(63366),a=n(87462),l=n(72791),s=n(82466),u=n(94419),d=n(886),c=n(66934),p=n(31402),f=n(96285),v=n(80184),m=["disableUnderline","components","componentsProps","fullWidth","hiddenLabel","inputComponent","multiline","slotProps","slots","type"],h=(0,c.ZP)(d.Ej,{shouldForwardProp:function(e){return(0,c.FO)(e)||"classes"===e},name:"MuiFilledInput",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[].concat((0,r.Z)((0,d.Gx)(e,t)),[!n.disableUnderline&&t.underline])}})((function(e){var t,n,r,i=e.theme,l=e.ownerState,s="light"===i.palette.mode,u=s?"rgba(0, 0, 0, 0.42)":"rgba(255, 255, 255, 0.7)",d=s?"rgba(0, 0, 0, 0.06)":"rgba(255, 255, 255, 0.09)",c=s?"rgba(0, 0, 0, 0.09)":"rgba(255, 255, 255, 0.13)",p=s?"rgba(0, 0, 0, 0.12)":"rgba(255, 255, 255, 0.12)";return(0,a.Z)((t={position:"relative",backgroundColor:i.vars?i.vars.palette.FilledInput.bg:d,borderTopLeftRadius:(i.vars||i).shape.borderRadius,borderTopRightRadius:(i.vars||i).shape.borderRadius,transition:i.transitions.create("background-color",{duration:i.transitions.duration.shorter,easing:i.transitions.easing.easeOut}),"&:hover":{backgroundColor:i.vars?i.vars.palette.FilledInput.hoverBg:c,"@media (hover: none)":{backgroundColor:i.vars?i.vars.palette.FilledInput.bg:d}}},(0,o.Z)(t,"&.".concat(f.Z.focused),{backgroundColor:i.vars?i.vars.palette.FilledInput.bg:d}),(0,o.Z)(t,"&.".concat(f.Z.disabled),{backgroundColor:i.vars?i.vars.palette.FilledInput.disabledBg:p}),t),!l.disableUnderline&&(n={"&:after":{borderBottom:"2px solid ".concat(null==(r=(i.vars||i).palette[l.color||"primary"])?void 0:r.main),left:0,bottom:0,content:'""',position:"absolute",right:0,transform:"scaleX(0)",transition:i.transitions.create("transform",{duration:i.transitions.duration.shorter,easing:i.transitions.easing.easeOut}),pointerEvents:"none"}},(0,o.Z)(n,"&.".concat(f.Z.focused,":after"),{transform:"scaleX(1) translateX(0)"}),(0,o.Z)(n,"&.".concat(f.Z.error),{"&:before, &:after":{borderBottomColor:(i.vars||i).palette.error.main}}),(0,o.Z)(n,"&:before",{borderBottom:"1px solid ".concat(i.vars?"rgba(".concat(i.vars.palette.common.onBackgroundChannel," / ").concat(i.vars.opacity.inputUnderline,")"):u),left:0,bottom:0,content:'"\\00a0"',position:"absolute",right:0,transition:i.transitions.create("border-bottom-color",{duration:i.transitions.duration.shorter}),pointerEvents:"none"}),(0,o.Z)(n,"&:hover:not(.".concat(f.Z.disabled,", .").concat(f.Z.error,"):before"),{borderBottom:"1px solid ".concat((i.vars||i).palette.text.primary)}),(0,o.Z)(n,"&.".concat(f.Z.disabled,":before"),{borderBottomStyle:"dotted"}),n),l.startAdornment&&{paddingLeft:12},l.endAdornment&&{paddingRight:12},l.multiline&&(0,a.Z)({padding:"25px 12px 8px"},"small"===l.size&&{paddingTop:21,paddingBottom:4},l.hiddenLabel&&{paddingTop:16,paddingBottom:17}))})),b=(0,c.ZP)(d.rA,{name:"MuiFilledInput",slot:"Input",overridesResolver:d._o})((function(e){var t=e.theme,n=e.ownerState;return(0,a.Z)({paddingTop:25,paddingRight:12,paddingBottom:8,paddingLeft:12},!t.vars&&{"&:-webkit-autofill":{WebkitBoxShadow:"light"===t.palette.mode?null:"0 0 0 100px #266798 inset",WebkitTextFillColor:"light"===t.palette.mode?null:"#fff",caretColor:"light"===t.palette.mode?null:"#fff",borderTopLeftRadius:"inherit",borderTopRightRadius:"inherit"}},t.vars&&(0,o.Z)({"&:-webkit-autofill":{borderTopLeftRadius:"inherit",borderTopRightRadius:"inherit"}},t.getColorSchemeSelector("dark"),{"&:-webkit-autofill":{WebkitBoxShadow:"0 0 0 100px #266798 inset",WebkitTextFillColor:"#fff",caretColor:"#fff"}}),"small"===n.size&&{paddingTop:21,paddingBottom:4},n.hiddenLabel&&{paddingTop:16,paddingBottom:17},n.multiline&&{paddingTop:0,paddingBottom:0,paddingLeft:0,paddingRight:0},n.startAdornment&&{paddingLeft:0},n.endAdornment&&{paddingRight:0},n.hiddenLabel&&"small"===n.size&&{paddingTop:8,paddingBottom:9})})),Z=l.forwardRef((function(e,t){var n,o,r,l,c=(0,p.Z)({props:e,name:"MuiFilledInput"}),Z=c.components,g=void 0===Z?{}:Z,y=c.componentsProps,w=c.fullWidth,x=void 0!==w&&w,S=c.inputComponent,C=void 0===S?"input":S,P=c.multiline,R=void 0!==P&&P,I=c.slotProps,M=c.slots,k=void 0===M?{}:M,F=c.type,O=void 0===F?"text":F,W=(0,i.Z)(c,m),A=(0,a.Z)({},c,{fullWidth:x,inputComponent:C,multiline:R,type:O}),E=function(e){var t=e.classes,n={root:["root",!e.disableUnderline&&"underline"],input:["input"]},o=(0,u.Z)(n,f._,t);return(0,a.Z)({},t,o)}(c),B={root:{ownerState:A},input:{ownerState:A}},N=(null!=I?I:y)?(0,s.Z)(null!=I?I:y,B):B,j=null!=(n=null!=(o=k.root)?o:g.Root)?n:h,L=null!=(r=null!=(l=k.input)?l:g.Input)?r:b;return(0,v.jsx)(d.ZP,(0,a.Z)({slots:{root:j,input:L},componentsProps:N,fullWidth:x,inputComponent:C,multiline:R,ref:t,type:O},W,{classes:E}))}));Z.muiName="Input",t.Z=Z},96285:function(e,t,n){n.d(t,{_:function(){return l}});var o=n(87462),r=n(75878),i=n(21217),a=n(55891);function l(e){return(0,i.Z)("MuiFilledInput",e)}var s=(0,o.Z)({},a.Z,(0,r.Z)("MuiFilledInput",["root","underline","input"]));t.Z=s},68096:function(e,t,n){n.d(t,{Z:function(){return w}});var o=n(29439),r=n(63366),i=n(87462),a=n(72791),l=n(28182),s=n(94419),u=n(31402),d=n(66934),c=n(35470),p=n(14036),f=n(19103),v=n(93840),m=n(75878),h=n(21217);function b(e){return(0,h.Z)("MuiFormControl",e)}(0,m.Z)("MuiFormControl",["root","marginNone","marginNormal","marginDense","fullWidth","disabled"]);var Z=n(80184),g=["children","className","color","component","disabled","error","focused","fullWidth","hiddenLabel","margin","required","size","variant"],y=(0,d.ZP)("div",{name:"MuiFormControl",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return(0,i.Z)({},t.root,t["margin".concat((0,p.Z)(n.margin))],n.fullWidth&&t.fullWidth)}})((function(e){var t=e.ownerState;return(0,i.Z)({display:"inline-flex",flexDirection:"column",position:"relative",minWidth:0,padding:0,margin:0,border:0,verticalAlign:"top"},"normal"===t.margin&&{marginTop:16,marginBottom:8},"dense"===t.margin&&{marginTop:8,marginBottom:4},t.fullWidth&&{width:"100%"})})),w=a.forwardRef((function(e,t){var n=(0,u.Z)({props:e,name:"MuiFormControl"}),d=n.children,m=n.className,h=n.color,w=void 0===h?"primary":h,x=n.component,S=void 0===x?"div":x,C=n.disabled,P=void 0!==C&&C,R=n.error,I=void 0!==R&&R,M=n.focused,k=n.fullWidth,F=void 0!==k&&k,O=n.hiddenLabel,W=void 0!==O&&O,A=n.margin,E=void 0===A?"none":A,B=n.required,N=void 0!==B&&B,j=n.size,L=void 0===j?"medium":j,z=n.variant,T=void 0===z?"outlined":z,D=(0,r.Z)(n,g),H=(0,i.Z)({},n,{color:w,component:S,disabled:P,error:I,fullWidth:F,hiddenLabel:W,margin:E,required:N,size:L,variant:T}),U=function(e){var t=e.classes,n=e.margin,o=e.fullWidth,r={root:["root","none"!==n&&"margin".concat((0,p.Z)(n)),o&&"fullWidth"]};return(0,s.Z)(r,b,t)}(H),K=a.useState((function(){var e=!1;return d&&a.Children.forEach(d,(function(t){if((0,f.Z)(t,["Input","Select"])){var n=(0,f.Z)(t,["Select"])?t.props.input:t;n&&(0,c.B7)(n.props)&&(e=!0)}})),e})),V=(0,o.Z)(K,2),q=V[0],_=V[1],X=a.useState((function(){var e=!1;return d&&a.Children.forEach(d,(function(t){(0,f.Z)(t,["Input","Select"])&&((0,c.vd)(t.props,!0)||(0,c.vd)(t.props.inputProps,!0))&&(e=!0)})),e})),G=(0,o.Z)(X,2),J=G[0],Q=G[1],Y=a.useState(!1),$=(0,o.Z)(Y,2),ee=$[0],te=$[1];P&&ee&&te(!1);var ne,oe=void 0===M||P?ee:M,re=a.useMemo((function(){return{adornedStart:q,setAdornedStart:_,color:w,disabled:P,error:I,filled:J,focused:oe,fullWidth:F,hiddenLabel:W,size:L,onBlur:function(){te(!1)},onEmpty:function(){Q(!1)},onFilled:function(){Q(!0)},onFocus:function(){te(!0)},registerEffect:ne,required:N,variant:T}}),[q,w,P,I,J,oe,F,W,ne,N,L,T]);return(0,Z.jsx)(v.Z.Provider,{value:re,children:(0,Z.jsx)(y,(0,i.Z)({as:S,ownerState:H,className:(0,l.Z)(U.root,m),ref:t},D,{children:d}))})}))},4110:function(e,t,n){var o=n(4942),r=n(93433),i=n(63366),a=n(87462),l=n(72791),s=n(94419),u=n(82466),d=n(886),c=n(66934),p=n(31402),f=n(86779),v=n(80184),m=["disableUnderline","components","componentsProps","fullWidth","inputComponent","multiline","slotProps","slots","type"],h=(0,c.ZP)(d.Ej,{shouldForwardProp:function(e){return(0,c.FO)(e)||"classes"===e},name:"MuiInput",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[].concat((0,r.Z)((0,d.Gx)(e,t)),[!n.disableUnderline&&t.underline])}})((function(e){var t,n=e.theme,r=e.ownerState,i="light"===n.palette.mode?"rgba(0, 0, 0, 0.42)":"rgba(255, 255, 255, 0.7)";return n.vars&&(i="rgba(".concat(n.vars.palette.common.onBackgroundChannel," / ").concat(n.vars.opacity.inputUnderline,")")),(0,a.Z)({position:"relative"},r.formControl&&{"label + &":{marginTop:16}},!r.disableUnderline&&(t={"&:after":{borderBottom:"2px solid ".concat((n.vars||n).palette[r.color].main),left:0,bottom:0,content:'""',position:"absolute",right:0,transform:"scaleX(0)",transition:n.transitions.create("transform",{duration:n.transitions.duration.shorter,easing:n.transitions.easing.easeOut}),pointerEvents:"none"}},(0,o.Z)(t,"&.".concat(f.Z.focused,":after"),{transform:"scaleX(1) translateX(0)"}),(0,o.Z)(t,"&.".concat(f.Z.error),{"&:before, &:after":{borderBottomColor:(n.vars||n).palette.error.main}}),(0,o.Z)(t,"&:before",{borderBottom:"1px solid ".concat(i),left:0,bottom:0,content:'"\\00a0"',position:"absolute",right:0,transition:n.transitions.create("border-bottom-color",{duration:n.transitions.duration.shorter}),pointerEvents:"none"}),(0,o.Z)(t,"&:hover:not(.".concat(f.Z.disabled,", .").concat(f.Z.error,"):before"),{borderBottom:"2px solid ".concat((n.vars||n).palette.text.primary),"@media (hover: none)":{borderBottom:"1px solid ".concat(i)}}),(0,o.Z)(t,"&.".concat(f.Z.disabled,":before"),{borderBottomStyle:"dotted"}),t))})),b=(0,c.ZP)(d.rA,{name:"MuiInput",slot:"Input",overridesResolver:d._o})({}),Z=l.forwardRef((function(e,t){var n,o,r,l,c=(0,p.Z)({props:e,name:"MuiInput"}),Z=c.disableUnderline,g=c.components,y=void 0===g?{}:g,w=c.componentsProps,x=c.fullWidth,S=void 0!==x&&x,C=c.inputComponent,P=void 0===C?"input":C,R=c.multiline,I=void 0!==R&&R,M=c.slotProps,k=c.slots,F=void 0===k?{}:k,O=c.type,W=void 0===O?"text":O,A=(0,i.Z)(c,m),E=function(e){var t=e.classes,n={root:["root",!e.disableUnderline&&"underline"],input:["input"]},o=(0,s.Z)(n,f.l,t);return(0,a.Z)({},t,o)}(c),B={root:{ownerState:{disableUnderline:Z}}},N=(null!=M?M:w)?(0,u.Z)(null!=M?M:w,B):B,j=null!=(n=null!=(o=F.root)?o:y.Root)?n:h,L=null!=(r=null!=(l=F.input)?l:y.Input)?r:b;return(0,v.jsx)(d.ZP,(0,a.Z)({slots:{root:j,input:L},slotProps:N,fullWidth:S,inputComponent:P,multiline:I,ref:t,type:W},A,{classes:E}))}));Z.muiName="Input",t.Z=Z},86779:function(e,t,n){n.d(t,{l:function(){return l}});var o=n(87462),r=n(75878),i=n(21217),a=n(55891);function l(e){return(0,i.Z)("MuiInput",e)}var s=(0,o.Z)({},a.Z,(0,r.Z)("MuiInput",["root","underline","input"]));t.Z=s},886:function(e,t,n){n.d(t,{rA:function(){return K},Ej:function(){return U},ZP:function(){return _},_o:function(){return H},Gx:function(){return D}});var o=n(29439),r=n(4942),i=n(63366),a=n(87462),l=n(46189),s=n(72791),u=n(28182),d=n(94419),c=n(54164),p=n(6117),f=n(65202),v=n(82254),m=n(62876),h=n(80184),b=["onChange","maxRows","minRows","style","value"];function Z(e){return parseInt(e,10)||0}var g={visibility:"hidden",position:"absolute",overflow:"hidden",height:0,top:0,left:0,transform:"translateZ(0)"};function y(e){return void 0===e||null===e||0===Object.keys(e).length||0===e.outerHeightStyle&&!e.overflow}var w=s.forwardRef((function(e,t){var n=e.onChange,r=e.maxRows,l=e.minRows,u=void 0===l?1:l,d=e.style,w=e.value,x=(0,i.Z)(e,b),S=s.useRef(null!=w).current,C=s.useRef(null),P=(0,p.Z)(t,C),R=s.useRef(null),I=s.useRef(0),M=s.useState({outerHeightStyle:0}),k=(0,o.Z)(M,2),F=k[0],O=k[1],W=s.useCallback((function(){var t=C.current,n=(0,f.Z)(t).getComputedStyle(t);if("0px"===n.width)return{outerHeightStyle:0};var o=R.current;o.style.width=n.width,o.value=t.value||e.placeholder||"x","\n"===o.value.slice(-1)&&(o.value+=" ");var i=n.boxSizing,a=Z(n.paddingBottom)+Z(n.paddingTop),l=Z(n.borderBottomWidth)+Z(n.borderTopWidth),s=o.scrollHeight;o.value="x";var d=o.scrollHeight,c=s;return u&&(c=Math.max(Number(u)*d,c)),r&&(c=Math.min(Number(r)*d,c)),{outerHeightStyle:(c=Math.max(c,d))+("border-box"===i?a+l:0),overflow:Math.abs(c-s)<=1}}),[r,u,e.placeholder]),A=function(e,t){var n=t.outerHeightStyle,o=t.overflow;return I.current<20&&(n>0&&Math.abs((e.outerHeightStyle||0)-n)>1||e.overflow!==o)?(I.current+=1,{overflow:o,outerHeightStyle:n}):e},E=s.useCallback((function(){var e=W();y(e)||O((function(t){return A(t,e)}))}),[W]);s.useEffect((function(){var e,t=(0,v.Z)((function(){I.current=0,C.current&&function(){var e=W();y(e)||c.flushSync((function(){O((function(t){return A(t,e)}))}))}()})),n=C.current,o=(0,f.Z)(n);return o.addEventListener("resize",t),"undefined"!==typeof ResizeObserver&&(e=new ResizeObserver(t)).observe(n),function(){t.clear(),o.removeEventListener("resize",t),e&&e.disconnect()}})),(0,m.Z)((function(){E()})),s.useEffect((function(){I.current=0}),[w]);return(0,h.jsxs)(s.Fragment,{children:[(0,h.jsx)("textarea",(0,a.Z)({value:w,onChange:function(e){I.current=0,S||E(),n&&n(e)},ref:P,rows:u,style:(0,a.Z)({height:F.outerHeightStyle,overflow:F.overflow?"hidden":void 0},d)},x)),(0,h.jsx)("textarea",{"aria-hidden":!0,className:e.className,readOnly:!0,ref:R,tabIndex:-1,style:(0,a.Z)({},g,d,{padding:0})})]})})),x=n(52474),S=n(76147),C=n(93840),P=n(52930),R=n(66934),I=n(31402),M=n(14036),k=n(42071),F=n(40162),O=n(52554);function W(e){var t=e.styles,n=e.defaultTheme,o=void 0===n?{}:n,r="function"===typeof t?function(e){return t(void 0===(n=e)||null===n||0===Object.keys(n).length?o:e);var n}:t;return(0,h.jsx)(O.xB,{styles:r})}var A=n(30418);var E=function(e){var t=e.styles,n=e.themeId,o=e.defaultTheme,r=void 0===o?{}:o,i=(0,A.Z)(r),a="function"===typeof t?t(n&&i[n]||i):t;return(0,h.jsx)(W,{styles:a})},B=n(36482),N=n(988);var j=function(e){return(0,h.jsx)(E,(0,a.Z)({},e,{defaultTheme:B.Z,themeId:N.Z}))},L=n(35470),z=n(55891),T=["aria-describedby","autoComplete","autoFocus","className","color","components","componentsProps","defaultValue","disabled","disableInjectingGlobalStyles","endAdornment","error","fullWidth","id","inputComponent","inputProps","inputRef","margin","maxRows","minRows","multiline","name","onBlur","onChange","onClick","onFocus","onKeyDown","onKeyUp","placeholder","readOnly","renderSuffix","rows","size","slotProps","slots","startAdornment","type","value"],D=function(e,t){var n=e.ownerState;return[t.root,n.formControl&&t.formControl,n.startAdornment&&t.adornedStart,n.endAdornment&&t.adornedEnd,n.error&&t.error,"small"===n.size&&t.sizeSmall,n.multiline&&t.multiline,n.color&&t["color".concat((0,M.Z)(n.color))],n.fullWidth&&t.fullWidth,n.hiddenLabel&&t.hiddenLabel]},H=function(e,t){var n=e.ownerState;return[t.input,"small"===n.size&&t.inputSizeSmall,n.multiline&&t.inputMultiline,"search"===n.type&&t.inputTypeSearch,n.startAdornment&&t.inputAdornedStart,n.endAdornment&&t.inputAdornedEnd,n.hiddenLabel&&t.inputHiddenLabel]},U=(0,R.ZP)("div",{name:"MuiInputBase",slot:"Root",overridesResolver:D})((function(e){var t=e.theme,n=e.ownerState;return(0,a.Z)({},t.typography.body1,(0,r.Z)({color:(t.vars||t).palette.text.primary,lineHeight:"1.4375em",boxSizing:"border-box",position:"relative",cursor:"text",display:"inline-flex",alignItems:"center"},"&.".concat(z.Z.disabled),{color:(t.vars||t).palette.text.disabled,cursor:"default"}),n.multiline&&(0,a.Z)({padding:"4px 0 5px"},"small"===n.size&&{paddingTop:1}),n.fullWidth&&{width:"100%"})})),K=(0,R.ZP)("input",{name:"MuiInputBase",slot:"Input",overridesResolver:H})((function(e){var t,n=e.theme,o=e.ownerState,i="light"===n.palette.mode,l=(0,a.Z)({color:"currentColor"},n.vars?{opacity:n.vars.opacity.inputPlaceholder}:{opacity:i?.42:.5},{transition:n.transitions.create("opacity",{duration:n.transitions.duration.shorter})}),s={opacity:"0 !important"},u=n.vars?{opacity:n.vars.opacity.inputPlaceholder}:{opacity:i?.42:.5};return(0,a.Z)((t={font:"inherit",letterSpacing:"inherit",color:"currentColor",padding:"4px 0 5px",border:0,boxSizing:"content-box",background:"none",height:"1.4375em",margin:0,WebkitTapHighlightColor:"transparent",display:"block",minWidth:0,width:"100%",animationName:"mui-auto-fill-cancel",animationDuration:"10ms","&::-webkit-input-placeholder":l,"&::-moz-placeholder":l,"&:-ms-input-placeholder":l,"&::-ms-input-placeholder":l,"&:focus":{outline:0},"&:invalid":{boxShadow:"none"},"&::-webkit-search-decoration":{WebkitAppearance:"none"}},(0,r.Z)(t,"label[data-shrink=false] + .".concat(z.Z.formControl," &"),{"&::-webkit-input-placeholder":s,"&::-moz-placeholder":s,"&:-ms-input-placeholder":s,"&::-ms-input-placeholder":s,"&:focus::-webkit-input-placeholder":u,"&:focus::-moz-placeholder":u,"&:focus:-ms-input-placeholder":u,"&:focus::-ms-input-placeholder":u}),(0,r.Z)(t,"&.".concat(z.Z.disabled),{opacity:1,WebkitTextFillColor:(n.vars||n).palette.text.disabled}),(0,r.Z)(t,"&:-webkit-autofill",{animationDuration:"5000s",animationName:"mui-auto-fill"}),t),"small"===o.size&&{paddingTop:1},o.multiline&&{height:"auto",resize:"none",padding:0,paddingTop:0},"search"===o.type&&{MozAppearance:"textfield"})})),V=(0,h.jsx)(j,{styles:{"@keyframes mui-auto-fill":{from:{display:"block"}},"@keyframes mui-auto-fill-cancel":{from:{display:"block"}}}}),q=s.forwardRef((function(e,t){var n,r=(0,I.Z)({props:e,name:"MuiInputBase"}),c=r["aria-describedby"],p=r.autoComplete,f=r.autoFocus,v=r.className,m=r.components,b=void 0===m?{}:m,Z=r.componentsProps,g=void 0===Z?{}:Z,y=r.defaultValue,R=r.disabled,O=r.disableInjectingGlobalStyles,W=r.endAdornment,A=r.fullWidth,E=void 0!==A&&A,B=r.id,N=r.inputComponent,j=void 0===N?"input":N,D=r.inputProps,H=void 0===D?{}:D,q=r.inputRef,_=r.maxRows,X=r.minRows,G=r.multiline,J=void 0!==G&&G,Q=r.name,Y=r.onBlur,$=r.onChange,ee=r.onClick,te=r.onFocus,ne=r.onKeyDown,oe=r.onKeyUp,re=r.placeholder,ie=r.readOnly,ae=r.renderSuffix,le=r.rows,se=r.slotProps,ue=void 0===se?{}:se,de=r.slots,ce=void 0===de?{}:de,pe=r.startAdornment,fe=r.type,ve=void 0===fe?"text":fe,me=r.value,he=(0,i.Z)(r,T),be=null!=H.value?H.value:me,Ze=s.useRef(null!=be).current,ge=s.useRef(),ye=s.useCallback((function(e){0}),[]),we=(0,k.Z)(ge,q,H.ref,ye),xe=s.useState(!1),Se=(0,o.Z)(xe,2),Ce=Se[0],Pe=Se[1],Re=(0,P.Z)();var Ie=(0,S.Z)({props:r,muiFormControl:Re,states:["color","disabled","error","hiddenLabel","size","required","filled"]});Ie.focused=Re?Re.focused:Ce,s.useEffect((function(){!Re&&R&&Ce&&(Pe(!1),Y&&Y())}),[Re,R,Ce,Y]);var Me=Re&&Re.onFilled,ke=Re&&Re.onEmpty,Fe=s.useCallback((function(e){(0,L.vd)(e)?Me&&Me():ke&&ke()}),[Me,ke]);(0,F.Z)((function(){Ze&&Fe({value:be})}),[be,Fe,Ze]);s.useEffect((function(){Fe(ge.current)}),[]);var Oe=j,We=H;J&&"input"===Oe&&(We=le?(0,a.Z)({type:void 0,minRows:le,maxRows:le},We):(0,a.Z)({type:void 0,maxRows:_,minRows:X},We),Oe=w);s.useEffect((function(){Re&&Re.setAdornedStart(Boolean(pe))}),[Re,pe]);var Ae=(0,a.Z)({},r,{color:Ie.color||"primary",disabled:Ie.disabled,endAdornment:W,error:Ie.error,focused:Ie.focused,formControl:Re,fullWidth:E,hiddenLabel:Ie.hiddenLabel,multiline:J,size:Ie.size,startAdornment:pe,type:ve}),Ee=function(e){var t=e.classes,n=e.color,o=e.disabled,r=e.error,i=e.endAdornment,a=e.focused,l=e.formControl,s=e.fullWidth,u=e.hiddenLabel,c=e.multiline,p=e.readOnly,f=e.size,v=e.startAdornment,m=e.type,h={root:["root","color".concat((0,M.Z)(n)),o&&"disabled",r&&"error",s&&"fullWidth",a&&"focused",l&&"formControl","small"===f&&"sizeSmall",c&&"multiline",v&&"adornedStart",i&&"adornedEnd",u&&"hiddenLabel",p&&"readOnly"],input:["input",o&&"disabled","search"===m&&"inputTypeSearch",c&&"inputMultiline","small"===f&&"inputSizeSmall",u&&"inputHiddenLabel",v&&"inputAdornedStart",i&&"inputAdornedEnd",p&&"readOnly"]};return(0,d.Z)(h,z.u,t)}(Ae),Be=ce.root||b.Root||U,Ne=ue.root||g.root||{},je=ce.input||b.Input||K;return We=(0,a.Z)({},We,null!=(n=ue.input)?n:g.input),(0,h.jsxs)(s.Fragment,{children:[!O&&V,(0,h.jsxs)(Be,(0,a.Z)({},Ne,!(0,x.Z)(Be)&&{ownerState:(0,a.Z)({},Ae,Ne.ownerState)},{ref:t,onClick:function(e){ge.current&&e.currentTarget===e.target&&ge.current.focus(),ee&&!Ie.disabled&&ee(e)}},he,{className:(0,u.Z)(Ee.root,Ne.className,v,ie&&"MuiInputBase-readOnly"),children:[pe,(0,h.jsx)(C.Z.Provider,{value:null,children:(0,h.jsx)(je,(0,a.Z)({ownerState:Ae,"aria-invalid":Ie.error,"aria-describedby":c,autoComplete:p,autoFocus:f,defaultValue:y,disabled:Ie.disabled,id:B,onAnimationStart:function(e){Fe("mui-auto-fill-cancel"===e.animationName?ge.current:{value:"x"})},name:Q,placeholder:re,readOnly:ie,required:Ie.required,rows:le,value:be,onKeyDown:ne,onKeyUp:oe,type:ve},We,!(0,x.Z)(je)&&{as:Oe,ownerState:(0,a.Z)({},Ae,We.ownerState)},{ref:we,className:(0,u.Z)(Ee.input,We.className,ie&&"MuiInputBase-readOnly"),onBlur:function(e){Y&&Y(e),H.onBlur&&H.onBlur(e),Re&&Re.onBlur?Re.onBlur(e):Pe(!1)},onChange:function(e){if(!Ze){var t=e.target||ge.current;if(null==t)throw new Error((0,l.Z)(1));Fe({value:t.value})}for(var n=arguments.length,o=new Array(n>1?n-1:0),r=1;r1&&void 0!==arguments[1]&&arguments[1];return e&&(o(e.value)&&""!==e.value||t&&o(e.defaultValue)&&""!==e.defaultValue)}function i(e){return e.startAdornment}n.d(t,{B7:function(){return i},vd:function(){return r}})},90493:function(e,t,n){n.d(t,{Z:function(){return b}});var o=n(63366),r=n(87462),i=n(72791),a=n(28182),l=n(94419),s=n(66934),u=n(31402),d=n(66199),c=n(75878),p=n(21217);function f(e){return(0,p.Z)("MuiList",e)}(0,c.Z)("MuiList",["root","padding","dense","subheader"]);var v=n(80184),m=["children","className","component","dense","disablePadding","subheader"],h=(0,s.ZP)("ul",{name:"MuiList",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,!n.disablePadding&&t.padding,n.dense&&t.dense,n.subheader&&t.subheader]}})((function(e){var t=e.ownerState;return(0,r.Z)({listStyle:"none",margin:0,padding:0,position:"relative"},!t.disablePadding&&{paddingTop:8,paddingBottom:8},t.subheader&&{paddingTop:0})})),b=i.forwardRef((function(e,t){var n=(0,u.Z)({props:e,name:"MuiList"}),s=n.children,c=n.className,p=n.component,b=void 0===p?"ul":p,Z=n.dense,g=void 0!==Z&&Z,y=n.disablePadding,w=void 0!==y&&y,x=n.subheader,S=(0,o.Z)(n,m),C=i.useMemo((function(){return{dense:g}}),[g]),P=(0,r.Z)({},n,{component:b,dense:g,disablePadding:w}),R=function(e){var t=e.classes,n={root:["root",!e.disablePadding&&"padding",e.dense&&"dense",e.subheader&&"subheader"]};return(0,l.Z)(n,f,t)}(P);return(0,v.jsx)(d.Z.Provider,{value:C,children:(0,v.jsxs)(h,(0,r.Z)({as:b,className:(0,a.Z)(R.root,c),ref:t,ownerState:P},S,{children:[x,s]}))})}))},71715:function(e,t,n){n.d(t,{Z:function(){return E}});var o=n(87462),r=n(63366),i=n(72791),a=(n(57441),n(28182)),l=n(94419),s=n(98301),u=n(90493),d=n(57137).Z,c=n(42071),p=n(40162),f=n(80184),v=["actions","autoFocus","autoFocusItem","children","className","disabledItemsFocusable","disableListWrap","onKeyDown","variant"];function m(e,t,n){return e===t?e.firstChild:t&&t.nextElementSibling?t.nextElementSibling:n?null:e.firstChild}function h(e,t,n){return e===t?n?e.firstChild:e.lastChild:t&&t.previousElementSibling?t.previousElementSibling:n?null:e.lastChild}function b(e,t){if(void 0===t)return!0;var n=e.innerText;return void 0===n&&(n=e.textContent),0!==(n=n.trim().toLowerCase()).length&&(t.repeating?n[0]===t.keys[0]:0===n.indexOf(t.keys.join("")))}function Z(e,t,n,o,r,i){for(var a=!1,l=r(e,t,!!t&&n);l;){if(l===e.firstChild){if(a)return!1;a=!0}var s=!o&&(l.disabled||"true"===l.getAttribute("aria-disabled"));if(l.hasAttribute("tabindex")&&b(l,i)&&!s)return l.focus(),!0;l=r(e,l,n)}return!1}var g=i.forwardRef((function(e,t){var n=e.actions,a=e.autoFocus,l=void 0!==a&&a,g=e.autoFocusItem,y=void 0!==g&&g,w=e.children,x=e.className,S=e.disabledItemsFocusable,C=void 0!==S&&S,P=e.disableListWrap,R=void 0!==P&&P,I=e.onKeyDown,M=e.variant,k=void 0===M?"selectedMenu":M,F=(0,r.Z)(e,v),O=i.useRef(null),W=i.useRef({keys:[],repeating:!0,previousKeyMatched:!0,lastTime:null});(0,p.Z)((function(){l&&O.current.focus()}),[l]),i.useImperativeHandle(n,(function(){return{adjustStyleForScrollbar:function(e,t){var n=!O.current.style.width;if(e.clientHeight=w.length&&(E=-1)):E===t&&(E+=1)>=w.length&&(E=-1)}));var B=i.Children.map(w,(function(e,t){if(t===E){var n={};return y&&(n.autoFocus=!0),void 0===e.props.tabIndex&&"selectedMenu"===k&&(n.tabIndex=0),i.cloneElement(e,n)}return e}));return(0,f.jsx)(u.Z,(0,o.Z)({role:"menu",ref:A,className:x,onKeyDown:function(e){var t=O.current,n=e.key,o=(0,s.Z)(t).activeElement;if("ArrowDown"===n)e.preventDefault(),Z(t,o,R,C,m);else if("ArrowUp"===n)e.preventDefault(),Z(t,o,R,C,h);else if("Home"===n)e.preventDefault(),Z(t,null,R,C,m);else if("End"===n)e.preventDefault(),Z(t,null,R,C,h);else if(1===n.length){var r=W.current,i=n.toLowerCase(),a=performance.now();r.keys.length>0&&(a-r.lastTime>500?(r.keys=[],r.repeating=!0,r.previousKeyMatched=!0):r.repeating&&i!==r.keys[0]&&(r.repeating=!1)),r.lastTime=a,r.keys.push(i);var l=o&&!r.repeating&&b(o,r);r.previousKeyMatched&&(l||Z(t,o,!1,C,m,r))?e.preventDefault():r.previousKeyMatched=!1}I&&I(e)},tabIndex:l?0:-1},F,{children:B}))})),y=n(15473),w=n(66934),x=n(13967),S=n(31402),C=n(75878),P=n(21217);function R(e){return(0,P.Z)("MuiMenu",e)}(0,C.Z)("MuiMenu",["root","paper","list"]);var I=["onEntering"],M=["autoFocus","children","disableAutoFocusItem","MenuListProps","onClose","open","PaperProps","PopoverClasses","transitionDuration","TransitionProps","variant"],k={vertical:"top",horizontal:"right"},F={vertical:"top",horizontal:"left"},O=(0,w.ZP)(y.ZP,{shouldForwardProp:function(e){return(0,w.FO)(e)||"classes"===e},name:"MuiMenu",slot:"Root",overridesResolver:function(e,t){return t.root}})({}),W=(0,w.ZP)(y.XS,{name:"MuiMenu",slot:"Paper",overridesResolver:function(e,t){return t.paper}})({maxHeight:"calc(100% - 96px)",WebkitOverflowScrolling:"touch"}),A=(0,w.ZP)(g,{name:"MuiMenu",slot:"List",overridesResolver:function(e,t){return t.list}})({outline:0}),E=i.forwardRef((function(e,t){var n=(0,S.Z)({props:e,name:"MuiMenu"}),s=n.autoFocus,u=void 0===s||s,d=n.children,c=n.disableAutoFocusItem,p=void 0!==c&&c,v=n.MenuListProps,m=void 0===v?{}:v,h=n.onClose,b=n.open,Z=n.PaperProps,g=void 0===Z?{}:Z,y=n.PopoverClasses,w=n.transitionDuration,C=void 0===w?"auto":w,P=n.TransitionProps,E=(void 0===P?{}:P).onEntering,B=n.variant,N=void 0===B?"selectedMenu":B,j=(0,r.Z)(n.TransitionProps,I),L=(0,r.Z)(n,M),z=(0,x.Z)(),T="rtl"===z.direction,D=(0,o.Z)({},n,{autoFocus:u,disableAutoFocusItem:p,MenuListProps:m,onEntering:E,PaperProps:g,transitionDuration:C,TransitionProps:j,variant:N}),H=function(e){var t=e.classes;return(0,l.Z)({root:["root"],paper:["paper"],list:["list"]},R,t)}(D),U=u&&!p&&b,K=i.useRef(null),V=-1;return i.Children.map(d,(function(e,t){i.isValidElement(e)&&(e.props.disabled||("selectedMenu"===N&&e.props.selected||-1===V)&&(V=t))})),(0,f.jsx)(O,(0,o.Z)({onClose:h,anchorOrigin:{vertical:"bottom",horizontal:T?"right":"left"},transformOrigin:T?k:F,slots:{paper:W},slotProps:{paper:(0,o.Z)({},g,{classes:(0,o.Z)({},g.classes,{root:H.paper})})},className:H.root,open:b,ref:t,transitionDuration:C,TransitionProps:(0,o.Z)({onEntering:function(e,t){K.current&&K.current.adjustStyleForScrollbar(e,z),E&&E(e,t)}},j),ownerState:D},L,{classes:y,children:(0,f.jsx)(A,(0,o.Z)({onKeyDown:function(e){"Tab"===e.key&&(e.preventDefault(),h&&h(e,"tabKeyDown"))},actions:K,autoFocus:u&&(-1===V||p),autoFocusItem:U,variant:N},m,{className:(0,a.Z)(H.list,m.className),children:d}))}))}))},77196:function(e,t,n){n.d(t,{Z:function(){return C}});var o,r=n(4942),i=n(63366),a=n(87462),l=n(72791),s=n(94419),u=n(66934),d=n(80184),c=["children","classes","className","label","notched"],p=(0,u.ZP)("fieldset")({textAlign:"left",position:"absolute",bottom:0,right:0,top:-5,left:0,margin:0,padding:"0 8px",pointerEvents:"none",borderRadius:"inherit",borderStyle:"solid",borderWidth:1,overflow:"hidden",minWidth:"0%"}),f=(0,u.ZP)("legend")((function(e){var t=e.ownerState,n=e.theme;return(0,a.Z)({float:"unset",width:"auto",overflow:"hidden"},!t.withLabel&&{padding:0,lineHeight:"11px",transition:n.transitions.create("width",{duration:150,easing:n.transitions.easing.easeOut})},t.withLabel&&(0,a.Z)({display:"block",padding:0,height:11,fontSize:"0.75em",visibility:"hidden",maxWidth:.01,transition:n.transitions.create("max-width",{duration:50,easing:n.transitions.easing.easeOut}),whiteSpace:"nowrap","& > span":{paddingLeft:5,paddingRight:5,display:"inline-block",opacity:0,visibility:"visible"}},t.notched&&{maxWidth:"100%",transition:n.transitions.create("max-width",{duration:100,easing:n.transitions.easing.easeOut,delay:50})}))}));var v=n(52930),m=n(76147),h=n(56059),b=n(886),Z=n(31402),g=["components","fullWidth","inputComponent","label","multiline","notched","slots","type"],y=(0,u.ZP)(b.Ej,{shouldForwardProp:function(e){return(0,u.FO)(e)||"classes"===e},name:"MuiOutlinedInput",slot:"Root",overridesResolver:b.Gx})((function(e){var t,n=e.theme,o=e.ownerState,i="light"===n.palette.mode?"rgba(0, 0, 0, 0.23)":"rgba(255, 255, 255, 0.23)";return(0,a.Z)((t={position:"relative",borderRadius:(n.vars||n).shape.borderRadius},(0,r.Z)(t,"&:hover .".concat(h.Z.notchedOutline),{borderColor:(n.vars||n).palette.text.primary}),(0,r.Z)(t,"@media (hover: none)",(0,r.Z)({},"&:hover .".concat(h.Z.notchedOutline),{borderColor:n.vars?"rgba(".concat(n.vars.palette.common.onBackgroundChannel," / 0.23)"):i})),(0,r.Z)(t,"&.".concat(h.Z.focused," .").concat(h.Z.notchedOutline),{borderColor:(n.vars||n).palette[o.color].main,borderWidth:2}),(0,r.Z)(t,"&.".concat(h.Z.error," .").concat(h.Z.notchedOutline),{borderColor:(n.vars||n).palette.error.main}),(0,r.Z)(t,"&.".concat(h.Z.disabled," .").concat(h.Z.notchedOutline),{borderColor:(n.vars||n).palette.action.disabled}),t),o.startAdornment&&{paddingLeft:14},o.endAdornment&&{paddingRight:14},o.multiline&&(0,a.Z)({padding:"16.5px 14px"},"small"===o.size&&{padding:"8.5px 14px"}))})),w=(0,u.ZP)((function(e){var t=e.className,n=e.label,r=e.notched,l=(0,i.Z)(e,c),s=null!=n&&""!==n,u=(0,a.Z)({},e,{notched:r,withLabel:s});return(0,d.jsx)(p,(0,a.Z)({"aria-hidden":!0,className:t,ownerState:u},l,{children:(0,d.jsx)(f,{ownerState:u,children:s?(0,d.jsx)("span",{children:n}):o||(o=(0,d.jsx)("span",{className:"notranslate",children:"\u200b"}))})}))}),{name:"MuiOutlinedInput",slot:"NotchedOutline",overridesResolver:function(e,t){return t.notchedOutline}})((function(e){var t=e.theme,n="light"===t.palette.mode?"rgba(0, 0, 0, 0.23)":"rgba(255, 255, 255, 0.23)";return{borderColor:t.vars?"rgba(".concat(t.vars.palette.common.onBackgroundChannel," / 0.23)"):n}})),x=(0,u.ZP)(b.rA,{name:"MuiOutlinedInput",slot:"Input",overridesResolver:b._o})((function(e){var t=e.theme,n=e.ownerState;return(0,a.Z)({padding:"16.5px 14px"},!t.vars&&{"&:-webkit-autofill":{WebkitBoxShadow:"light"===t.palette.mode?null:"0 0 0 100px #266798 inset",WebkitTextFillColor:"light"===t.palette.mode?null:"#fff",caretColor:"light"===t.palette.mode?null:"#fff",borderRadius:"inherit"}},t.vars&&(0,r.Z)({"&:-webkit-autofill":{borderRadius:"inherit"}},t.getColorSchemeSelector("dark"),{"&:-webkit-autofill":{WebkitBoxShadow:"0 0 0 100px #266798 inset",WebkitTextFillColor:"#fff",caretColor:"#fff"}}),"small"===n.size&&{padding:"8.5px 14px"},n.multiline&&{padding:0},n.startAdornment&&{paddingLeft:0},n.endAdornment&&{paddingRight:0})})),S=l.forwardRef((function(e,t){var n,o,r,u,c,p=(0,Z.Z)({props:e,name:"MuiOutlinedInput"}),f=p.components,S=void 0===f?{}:f,C=p.fullWidth,P=void 0!==C&&C,R=p.inputComponent,I=void 0===R?"input":R,M=p.label,k=p.multiline,F=void 0!==k&&k,O=p.notched,W=p.slots,A=void 0===W?{}:W,E=p.type,B=void 0===E?"text":E,N=(0,i.Z)(p,g),j=function(e){var t=e.classes,n=(0,s.Z)({root:["root"],notchedOutline:["notchedOutline"],input:["input"]},h.e,t);return(0,a.Z)({},t,n)}(p),L=(0,v.Z)(),z=(0,m.Z)({props:p,muiFormControl:L,states:["required"]}),T=(0,a.Z)({},p,{color:z.color||"primary",disabled:z.disabled,error:z.error,focused:z.focused,formControl:L,fullWidth:P,hiddenLabel:z.hiddenLabel,multiline:F,size:z.size,type:B}),D=null!=(n=null!=(o=A.root)?o:S.Root)?n:y,H=null!=(r=null!=(u=A.input)?u:S.Input)?r:x;return(0,d.jsx)(b.ZP,(0,a.Z)({slots:{root:D,input:H},renderSuffix:function(e){return(0,d.jsx)(w,{ownerState:T,className:j.notchedOutline,label:null!=M&&""!==M&&z.required?c||(c=(0,d.jsxs)(l.Fragment,{children:[M,"\u2009","*"]})):M,notched:"undefined"!==typeof O?O:Boolean(e.startAdornment||e.filled||e.focused)})},fullWidth:P,inputComponent:I,multiline:F,ref:t,type:B},N,{classes:(0,a.Z)({},j,{notchedOutline:null})}))}));S.muiName="Input";var C=S},56059:function(e,t,n){n.d(t,{e:function(){return l}});var o=n(87462),r=n(75878),i=n(21217),a=n(55891);function l(e){return(0,i.Z)("MuiOutlinedInput",e)}var s=(0,o.Z)({},a.Z,(0,r.Z)("MuiOutlinedInput",["root","notchedOutline","input"]));t.Z=s},58406:function(e,t,n){n.d(t,{Z:function(){return $}});var o=n(87462),r=n(63366),i=n(72791),a=n(28182),l=n(82466),s=n(29439),u=n(4942),d=n(46189),c=(n(57441),n(94419)),p=n(98301),f=n(14036),v=n(71715),m=n(75878),h=n(21217);function b(e){return(0,h.Z)("MuiNativeSelect",e)}var Z=(0,m.Z)("MuiNativeSelect",["root","select","multiple","filled","outlined","standard","disabled","icon","iconOpen","iconFilled","iconOutlined","iconStandard","nativeInput","error"]),g=n(66934),y=n(80184),w=["className","disabled","error","IconComponent","inputRef","variant"],x=function(e){var t,n=e.ownerState,r=e.theme;return(0,o.Z)((t={MozAppearance:"none",WebkitAppearance:"none",userSelect:"none",borderRadius:0,cursor:"pointer","&:focus":(0,o.Z)({},r.vars?{backgroundColor:"rgba(".concat(r.vars.palette.common.onBackgroundChannel," / 0.05)")}:{backgroundColor:"light"===r.palette.mode?"rgba(0, 0, 0, 0.05)":"rgba(255, 255, 255, 0.05)"},{borderRadius:0}),"&::-ms-expand":{display:"none"}},(0,u.Z)(t,"&.".concat(Z.disabled),{cursor:"default"}),(0,u.Z)(t,"&[multiple]",{height:"auto"}),(0,u.Z)(t,"&:not([multiple]) option, &:not([multiple]) optgroup",{backgroundColor:(r.vars||r).palette.background.paper}),(0,u.Z)(t,"&&&",{paddingRight:24,minWidth:16}),t),"filled"===n.variant&&{"&&&":{paddingRight:32}},"outlined"===n.variant&&{borderRadius:(r.vars||r).shape.borderRadius,"&:focus":{borderRadius:(r.vars||r).shape.borderRadius},"&&&":{paddingRight:32}})},S=(0,g.ZP)("select",{name:"MuiNativeSelect",slot:"Select",shouldForwardProp:g.FO,overridesResolver:function(e,t){var n=e.ownerState;return[t.select,t[n.variant],n.error&&t.error,(0,u.Z)({},"&.".concat(Z.multiple),t.multiple)]}})(x),C=function(e){var t=e.ownerState,n=e.theme;return(0,o.Z)((0,u.Z)({position:"absolute",right:0,top:"calc(50% - .5em)",pointerEvents:"none",color:(n.vars||n).palette.action.active},"&.".concat(Z.disabled),{color:(n.vars||n).palette.action.disabled}),t.open&&{transform:"rotate(180deg)"},"filled"===t.variant&&{right:7},"outlined"===t.variant&&{right:7})},P=(0,g.ZP)("svg",{name:"MuiNativeSelect",slot:"Icon",overridesResolver:function(e,t){var n=e.ownerState;return[t.icon,n.variant&&t["icon".concat((0,f.Z)(n.variant))],n.open&&t.iconOpen]}})(C),R=i.forwardRef((function(e,t){var n=e.className,l=e.disabled,s=e.error,u=e.IconComponent,d=e.inputRef,p=e.variant,v=void 0===p?"standard":p,m=(0,r.Z)(e,w),h=(0,o.Z)({},e,{disabled:l,variant:v,error:s}),Z=function(e){var t=e.classes,n=e.variant,o=e.disabled,r=e.multiple,i=e.open,a={select:["select",n,o&&"disabled",r&&"multiple",e.error&&"error"],icon:["icon","icon".concat((0,f.Z)(n)),i&&"iconOpen",o&&"disabled"]};return(0,c.Z)(a,b,t)}(h);return(0,y.jsxs)(i.Fragment,{children:[(0,y.jsx)(S,(0,o.Z)({ownerState:h,className:(0,a.Z)(Z.select,n),disabled:l,ref:d||t},m)),e.multiple?null:(0,y.jsx)(P,{as:u,ownerState:h,className:Z.icon})]})})),I=n(35470),M=n(42071),k=n(98278);function F(e){return(0,h.Z)("MuiSelect",e)}var O,W=(0,m.Z)("MuiSelect",["select","multiple","filled","outlined","standard","disabled","focused","icon","iconOpen","iconFilled","iconOutlined","iconStandard","nativeInput","error"]),A=["aria-describedby","aria-label","autoFocus","autoWidth","children","className","defaultOpen","defaultValue","disabled","displayEmpty","error","IconComponent","inputRef","labelId","MenuProps","multiple","name","onBlur","onChange","onClose","onFocus","onOpen","open","readOnly","renderValue","SelectDisplayProps","tabIndex","type","value","variant"],E=(0,g.ZP)("div",{name:"MuiSelect",slot:"Select",overridesResolver:function(e,t){var n=e.ownerState;return[(0,u.Z)({},"&.".concat(W.select),t.select),(0,u.Z)({},"&.".concat(W.select),t[n.variant]),(0,u.Z)({},"&.".concat(W.error),t.error),(0,u.Z)({},"&.".concat(W.multiple),t.multiple)]}})(x,(0,u.Z)({},"&.".concat(W.select),{height:"auto",minHeight:"1.4375em",textOverflow:"ellipsis",whiteSpace:"nowrap",overflow:"hidden"})),B=(0,g.ZP)("svg",{name:"MuiSelect",slot:"Icon",overridesResolver:function(e,t){var n=e.ownerState;return[t.icon,n.variant&&t["icon".concat((0,f.Z)(n.variant))],n.open&&t.iconOpen]}})(C),N=(0,g.ZP)("input",{shouldForwardProp:function(e){return(0,g.Dz)(e)&&"classes"!==e},name:"MuiSelect",slot:"NativeInput",overridesResolver:function(e,t){return t.nativeInput}})({bottom:0,left:0,position:"absolute",opacity:0,pointerEvents:"none",width:"100%",boxSizing:"border-box"});function j(e,t){return"object"===typeof t&&null!==t?e===t:String(e)===String(t)}function L(e){return null==e||"string"===typeof e&&!e.trim()}var z=i.forwardRef((function(e,t){var n=e["aria-describedby"],l=e["aria-label"],u=e.autoFocus,m=e.autoWidth,h=e.children,b=e.className,Z=e.defaultOpen,g=e.defaultValue,w=e.disabled,x=e.displayEmpty,S=e.error,C=void 0!==S&&S,P=e.IconComponent,R=e.inputRef,W=e.labelId,z=e.MenuProps,T=void 0===z?{}:z,D=e.multiple,H=e.name,U=e.onBlur,K=e.onChange,V=e.onClose,q=e.onFocus,_=e.onOpen,X=e.open,G=e.readOnly,J=e.renderValue,Q=e.SelectDisplayProps,Y=void 0===Q?{}:Q,$=e.tabIndex,ee=e.value,te=e.variant,ne=void 0===te?"standard":te,oe=(0,r.Z)(e,A),re=(0,k.Z)({controlled:ee,default:g,name:"Select"}),ie=(0,s.Z)(re,2),ae=ie[0],le=ie[1],se=(0,k.Z)({controlled:X,default:Z,name:"Select"}),ue=(0,s.Z)(se,2),de=ue[0],ce=ue[1],pe=i.useRef(null),fe=i.useRef(null),ve=i.useState(null),me=(0,s.Z)(ve,2),he=me[0],be=me[1],Ze=i.useRef(null!=X).current,ge=i.useState(),ye=(0,s.Z)(ge,2),we=ye[0],xe=ye[1],Se=(0,M.Z)(t,R),Ce=i.useCallback((function(e){fe.current=e,e&&be(e)}),[]),Pe=null==he?void 0:he.parentNode;i.useImperativeHandle(Se,(function(){return{focus:function(){fe.current.focus()},node:pe.current,value:ae}}),[ae]),i.useEffect((function(){Z&&de&&he&&!Ze&&(xe(m?null:Pe.clientWidth),fe.current.focus())}),[he,m]),i.useEffect((function(){u&&fe.current.focus()}),[u]),i.useEffect((function(){if(W){var e=(0,p.Z)(fe.current).getElementById(W);if(e){var t=function(){getSelection().isCollapsed&&fe.current.focus()};return e.addEventListener("click",t),function(){e.removeEventListener("click",t)}}}}),[W]);var Re,Ie,Me=function(e,t){e?_&&_(t):V&&V(t),Ze||(xe(m?null:Pe.clientWidth),ce(e))},ke=i.Children.toArray(h),Fe=function(e){return function(t){var n;if(t.currentTarget.hasAttribute("tabindex")){if(D){n=Array.isArray(ae)?ae.slice():[];var o=ae.indexOf(e.props.value);-1===o?n.push(e.props.value):n.splice(o,1)}else n=e.props.value;if(e.props.onClick&&e.props.onClick(t),ae!==n&&(le(n),K)){var r=t.nativeEvent||t,i=new r.constructor(r.type,r);Object.defineProperty(i,"target",{writable:!0,value:{value:n,name:H}}),K(i,e)}D||Me(!1,t)}}},Oe=null!==he&&de;delete oe["aria-invalid"];var We=[],Ae=!1;((0,I.vd)({value:ae})||x)&&(J?Re=J(ae):Ae=!0);var Ee=ke.map((function(e){if(!i.isValidElement(e))return null;var t;if(D){if(!Array.isArray(ae))throw new Error((0,d.Z)(2));(t=ae.some((function(t){return j(t,e.props.value)})))&&Ae&&We.push(e.props.children)}else(t=j(ae,e.props.value))&&Ae&&(Ie=e.props.children);return t&&!0,i.cloneElement(e,{"aria-selected":t?"true":"false",onClick:Fe(e),onKeyUp:function(t){" "===t.key&&t.preventDefault(),e.props.onKeyUp&&e.props.onKeyUp(t)},role:"option",selected:t,value:void 0,"data-value":e.props.value})}));Ae&&(Re=D?0===We.length?null:We.reduce((function(e,t,n){return e.push(t),n {\n const {\n classes,\n disableUnderline\n } = ownerState;\n const slots = {\n root: ['root', !disableUnderline && 'underline'],\n input: ['input']\n };\n const composedClasses = composeClasses(slots, getFilledInputUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst FilledInputRoot = styled(InputBaseRoot, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiFilledInput',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [...inputBaseRootOverridesResolver(props, styles), !ownerState.disableUnderline && styles.underline];\n }\n})(({\n theme,\n ownerState\n}) => {\n var _palette;\n const light = theme.palette.mode === 'light';\n const bottomLineColor = light ? 'rgba(0, 0, 0, 0.42)' : 'rgba(255, 255, 255, 0.7)';\n const backgroundColor = light ? 'rgba(0, 0, 0, 0.06)' : 'rgba(255, 255, 255, 0.09)';\n const hoverBackground = light ? 'rgba(0, 0, 0, 0.09)' : 'rgba(255, 255, 255, 0.13)';\n const disabledBackground = light ? 'rgba(0, 0, 0, 0.12)' : 'rgba(255, 255, 255, 0.12)';\n return _extends({\n position: 'relative',\n backgroundColor: theme.vars ? theme.vars.palette.FilledInput.bg : backgroundColor,\n borderTopLeftRadius: (theme.vars || theme).shape.borderRadius,\n borderTopRightRadius: (theme.vars || theme).shape.borderRadius,\n transition: theme.transitions.create('background-color', {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n }),\n '&:hover': {\n backgroundColor: theme.vars ? theme.vars.palette.FilledInput.hoverBg : hoverBackground,\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: theme.vars ? theme.vars.palette.FilledInput.bg : backgroundColor\n }\n },\n [`&.${filledInputClasses.focused}`]: {\n backgroundColor: theme.vars ? theme.vars.palette.FilledInput.bg : backgroundColor\n },\n [`&.${filledInputClasses.disabled}`]: {\n backgroundColor: theme.vars ? theme.vars.palette.FilledInput.disabledBg : disabledBackground\n }\n }, !ownerState.disableUnderline && {\n '&:after': {\n borderBottom: `2px solid ${(_palette = (theme.vars || theme).palette[ownerState.color || 'primary']) == null ? void 0 : _palette.main}`,\n left: 0,\n bottom: 0,\n // Doing the other way around crash on IE11 \"''\" https://github.com/cssinjs/jss/issues/242\n content: '\"\"',\n position: 'absolute',\n right: 0,\n transform: 'scaleX(0)',\n transition: theme.transitions.create('transform', {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n }),\n pointerEvents: 'none' // Transparent to the hover style.\n },\n\n [`&.${filledInputClasses.focused}:after`]: {\n // translateX(0) is a workaround for Safari transform scale bug\n // See https://github.com/mui/material-ui/issues/31766\n transform: 'scaleX(1) translateX(0)'\n },\n [`&.${filledInputClasses.error}`]: {\n '&:before, &:after': {\n borderBottomColor: (theme.vars || theme).palette.error.main\n }\n },\n '&:before': {\n borderBottom: `1px solid ${theme.vars ? `rgba(${theme.vars.palette.common.onBackgroundChannel} / ${theme.vars.opacity.inputUnderline})` : bottomLineColor}`,\n left: 0,\n bottom: 0,\n // Doing the other way around crash on IE11 \"''\" https://github.com/cssinjs/jss/issues/242\n content: '\"\\\\00a0\"',\n position: 'absolute',\n right: 0,\n transition: theme.transitions.create('border-bottom-color', {\n duration: theme.transitions.duration.shorter\n }),\n pointerEvents: 'none' // Transparent to the hover style.\n },\n\n [`&:hover:not(.${filledInputClasses.disabled}, .${filledInputClasses.error}):before`]: {\n borderBottom: `1px solid ${(theme.vars || theme).palette.text.primary}`\n },\n [`&.${filledInputClasses.disabled}:before`]: {\n borderBottomStyle: 'dotted'\n }\n }, ownerState.startAdornment && {\n paddingLeft: 12\n }, ownerState.endAdornment && {\n paddingRight: 12\n }, ownerState.multiline && _extends({\n padding: '25px 12px 8px'\n }, ownerState.size === 'small' && {\n paddingTop: 21,\n paddingBottom: 4\n }, ownerState.hiddenLabel && {\n paddingTop: 16,\n paddingBottom: 17\n }));\n});\nconst FilledInputInput = styled(InputBaseInput, {\n name: 'MuiFilledInput',\n slot: 'Input',\n overridesResolver: inputBaseInputOverridesResolver\n})(({\n theme,\n ownerState\n}) => _extends({\n paddingTop: 25,\n paddingRight: 12,\n paddingBottom: 8,\n paddingLeft: 12\n}, !theme.vars && {\n '&:-webkit-autofill': {\n WebkitBoxShadow: theme.palette.mode === 'light' ? null : '0 0 0 100px #266798 inset',\n WebkitTextFillColor: theme.palette.mode === 'light' ? null : '#fff',\n caretColor: theme.palette.mode === 'light' ? null : '#fff',\n borderTopLeftRadius: 'inherit',\n borderTopRightRadius: 'inherit'\n }\n}, theme.vars && {\n '&:-webkit-autofill': {\n borderTopLeftRadius: 'inherit',\n borderTopRightRadius: 'inherit'\n },\n [theme.getColorSchemeSelector('dark')]: {\n '&:-webkit-autofill': {\n WebkitBoxShadow: '0 0 0 100px #266798 inset',\n WebkitTextFillColor: '#fff',\n caretColor: '#fff'\n }\n }\n}, ownerState.size === 'small' && {\n paddingTop: 21,\n paddingBottom: 4\n}, ownerState.hiddenLabel && {\n paddingTop: 16,\n paddingBottom: 17\n}, ownerState.multiline && {\n paddingTop: 0,\n paddingBottom: 0,\n paddingLeft: 0,\n paddingRight: 0\n}, ownerState.startAdornment && {\n paddingLeft: 0\n}, ownerState.endAdornment && {\n paddingRight: 0\n}, ownerState.hiddenLabel && ownerState.size === 'small' && {\n paddingTop: 8,\n paddingBottom: 9\n}));\nconst FilledInput = /*#__PURE__*/React.forwardRef(function FilledInput(inProps, ref) {\n var _ref, _slots$root, _ref2, _slots$input;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFilledInput'\n });\n const {\n components = {},\n componentsProps: componentsPropsProp,\n fullWidth = false,\n // declare here to prevent spreading to DOM\n inputComponent = 'input',\n multiline = false,\n slotProps,\n slots = {},\n type = 'text'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n fullWidth,\n inputComponent,\n multiline,\n type\n });\n const classes = useUtilityClasses(props);\n const filledInputComponentsProps = {\n root: {\n ownerState\n },\n input: {\n ownerState\n }\n };\n const componentsProps = (slotProps != null ? slotProps : componentsPropsProp) ? deepmerge(slotProps != null ? slotProps : componentsPropsProp, filledInputComponentsProps) : filledInputComponentsProps;\n const RootSlot = (_ref = (_slots$root = slots.root) != null ? _slots$root : components.Root) != null ? _ref : FilledInputRoot;\n const InputSlot = (_ref2 = (_slots$input = slots.input) != null ? _slots$input : components.Input) != null ? _ref2 : FilledInputInput;\n return /*#__PURE__*/_jsx(InputBase, _extends({\n slots: {\n root: RootSlot,\n input: InputSlot\n },\n componentsProps: componentsProps,\n fullWidth: fullWidth,\n inputComponent: inputComponent,\n multiline: multiline,\n ref: ref,\n type: type\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FilledInput.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * This prop helps users to fill forms faster, especially on mobile devices.\n * The name can be confusing, as it's more like an autofill.\n * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).\n */\n autoComplete: PropTypes.string,\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * The prop defaults to the value (`'primary'`) inherited from the parent FormControl component.\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['primary', 'secondary']), PropTypes.string]),\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `slots` prop.\n * It's recommended to use the `slots` prop instead.\n *\n * @default {}\n */\n components: PropTypes.shape({\n Input: PropTypes.elementType,\n Root: PropTypes.elementType\n }),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `slotProps` prop.\n * It's recommended to use the `slotProps` prop instead, as `componentsProps` will be deprecated in the future.\n *\n * @default {}\n */\n componentsProps: PropTypes.shape({\n input: PropTypes.object,\n root: PropTypes.object\n }),\n /**\n * The default value. Use when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true`, the component is disabled.\n * The prop defaults to the value (`false`) inherited from the parent FormControl component.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the input will not have an underline.\n */\n disableUnderline: PropTypes.bool,\n /**\n * End `InputAdornment` for this component.\n */\n endAdornment: PropTypes.node,\n /**\n * If `true`, the `input` will indicate an error.\n * The prop defaults to the value (`false`) inherited from the parent FormControl component.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` will take up the full width of its container.\n * @default false\n */\n fullWidth: PropTypes.bool,\n /**\n * If `true`, the label is hidden.\n * This is used to increase density for a `FilledInput`.\n * Be sure to add `aria-label` to the `input` element.\n * @default false\n */\n hiddenLabel: PropTypes.bool,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * The component used for the `input` element.\n * Either a string to use a HTML element or a component.\n * @default 'input'\n */\n inputComponent: PropTypes.elementType,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n * @default {}\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n * The prop defaults to the value (`'none'`) inherited from the parent FormControl component.\n */\n margin: PropTypes.oneOf(['dense', 'none']),\n /**\n * Maximum number of rows to display when multiline option is set to true.\n */\n maxRows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * Minimum number of rows to display when multiline option is set to true.\n */\n minRows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * If `true`, a [TextareaAutosize](/material-ui/react-textarea-autosize/) element is rendered.\n * @default false\n */\n multiline: PropTypes.bool,\n /**\n * Name attribute of the `input` element.\n */\n name: PropTypes.string,\n /**\n * Callback fired when the value is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n */\n onChange: PropTypes.func,\n /**\n * The short hint displayed in the `input` before the user enters a value.\n */\n placeholder: PropTypes.string,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n * The prop defaults to the value (`false`) inherited from the parent FormControl component.\n */\n required: PropTypes.bool,\n /**\n * Number of rows to display when multiline option is set to true.\n */\n rows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slotProps: PropTypes.shape({\n input: PropTypes.object,\n root: PropTypes.object\n }),\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `components` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slots: PropTypes.shape({\n input: PropTypes.elementType,\n root: PropTypes.elementType\n }),\n /**\n * Start `InputAdornment` for this component.\n */\n startAdornment: PropTypes.node,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Form_%3Cinput%3E_types).\n * @default 'text'\n */\n type: PropTypes.string,\n /**\n * The value of the `input` element, required for a controlled component.\n */\n value: PropTypes.any\n} : void 0;\nFilledInput.muiName = 'Input';\nexport default FilledInput;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nimport { inputBaseClasses } from '../InputBase';\nexport function getFilledInputUtilityClass(slot) {\n return generateUtilityClass('MuiFilledInput', slot);\n}\nconst filledInputClasses = _extends({}, inputBaseClasses, generateUtilityClasses('MuiFilledInput', ['root', 'underline', 'input']));\nexport default filledInputClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormControlUtilityClasses(slot) {\n return generateUtilityClass('MuiFormControl', slot);\n}\nconst formControlClasses = generateUtilityClasses('MuiFormControl', ['root', 'marginNone', 'marginNormal', 'marginDense', 'fullWidth', 'disabled']);\nexport default formControlClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"focused\", \"fullWidth\", \"hiddenLabel\", \"margin\", \"required\", \"size\", \"variant\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport { isFilled, isAdornedStart } from '../InputBase/utils';\nimport capitalize from '../utils/capitalize';\nimport isMuiElement from '../utils/isMuiElement';\nimport FormControlContext from './FormControlContext';\nimport { getFormControlUtilityClasses } from './formControlClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n margin,\n fullWidth\n } = ownerState;\n const slots = {\n root: ['root', margin !== 'none' && `margin${capitalize(margin)}`, fullWidth && 'fullWidth']\n };\n return composeClasses(slots, getFormControlUtilityClasses, classes);\n};\nconst FormControlRoot = styled('div', {\n name: 'MuiFormControl',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, styles[`margin${capitalize(ownerState.margin)}`], ownerState.fullWidth && styles.fullWidth);\n }\n})(({\n ownerState\n}) => _extends({\n display: 'inline-flex',\n flexDirection: 'column',\n position: 'relative',\n // Reset fieldset default style.\n minWidth: 0,\n padding: 0,\n margin: 0,\n border: 0,\n verticalAlign: 'top'\n}, ownerState.margin === 'normal' && {\n marginTop: 16,\n marginBottom: 8\n}, ownerState.margin === 'dense' && {\n marginTop: 8,\n marginBottom: 4\n}, ownerState.fullWidth && {\n width: '100%'\n}));\n\n/**\n * Provides context such as filled/focused/error/required for form inputs.\n * Relying on the context provides high flexibility and ensures that the state always stays\n * consistent across the children of the `FormControl`.\n * This context is used by the following components:\n *\n * - FormLabel\n * - FormHelperText\n * - Input\n * - InputLabel\n *\n * You can find one composition example below and more going to [the demos](/material-ui/react-text-field/#components).\n *\n * ```jsx\n * \n * Email address\n * \n * We'll never share your email.\n * \n * ```\n *\n * ⚠️ Only one `InputBase` can be used within a FormControl because it creates visual inconsistencies.\n * For instance, only one input can be focused at the same time, the state shouldn't be shared.\n */\nconst FormControl = /*#__PURE__*/React.forwardRef(function FormControl(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormControl'\n });\n const {\n children,\n className,\n color = 'primary',\n component = 'div',\n disabled = false,\n error = false,\n focused: visuallyFocused,\n fullWidth = false,\n hiddenLabel = false,\n margin = 'none',\n required = false,\n size = 'medium',\n variant = 'outlined'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n component,\n disabled,\n error,\n fullWidth,\n hiddenLabel,\n margin,\n required,\n size,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n const [adornedStart, setAdornedStart] = React.useState(() => {\n // We need to iterate through the children and find the Input in order\n // to fully support server-side rendering.\n let initialAdornedStart = false;\n if (children) {\n React.Children.forEach(children, child => {\n if (!isMuiElement(child, ['Input', 'Select'])) {\n return;\n }\n const input = isMuiElement(child, ['Select']) ? child.props.input : child;\n if (input && isAdornedStart(input.props)) {\n initialAdornedStart = true;\n }\n });\n }\n return initialAdornedStart;\n });\n const [filled, setFilled] = React.useState(() => {\n // We need to iterate through the children and find the Input in order\n // to fully support server-side rendering.\n let initialFilled = false;\n if (children) {\n React.Children.forEach(children, child => {\n if (!isMuiElement(child, ['Input', 'Select'])) {\n return;\n }\n if (isFilled(child.props, true) || isFilled(child.props.inputProps, true)) {\n initialFilled = true;\n }\n });\n }\n return initialFilled;\n });\n const [focusedState, setFocused] = React.useState(false);\n if (disabled && focusedState) {\n setFocused(false);\n }\n const focused = visuallyFocused !== undefined && !disabled ? visuallyFocused : focusedState;\n let registerEffect;\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const registeredInput = React.useRef(false);\n registerEffect = () => {\n if (registeredInput.current) {\n console.error(['MUI: There are multiple `InputBase` components inside a FormControl.', 'This creates visual inconsistencies, only use one `InputBase`.'].join('\\n'));\n }\n registeredInput.current = true;\n return () => {\n registeredInput.current = false;\n };\n };\n }\n const childContext = React.useMemo(() => {\n return {\n adornedStart,\n setAdornedStart,\n color,\n disabled,\n error,\n filled,\n focused,\n fullWidth,\n hiddenLabel,\n size,\n onBlur: () => {\n setFocused(false);\n },\n onEmpty: () => {\n setFilled(false);\n },\n onFilled: () => {\n setFilled(true);\n },\n onFocus: () => {\n setFocused(true);\n },\n registerEffect,\n required,\n variant\n };\n }, [adornedStart, color, disabled, error, filled, focused, fullWidth, hiddenLabel, registerEffect, required, size, variant]);\n return /*#__PURE__*/_jsx(FormControlContext.Provider, {\n value: childContext,\n children: /*#__PURE__*/_jsx(FormControlRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: children\n }))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? FormControl.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label, input and helper text should be displayed in a disabled state.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n * @default false\n */\n error: PropTypes.bool,\n /**\n * If `true`, the component is displayed in focused state.\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the component will take up the full width of its container.\n * @default false\n */\n fullWidth: PropTypes.bool,\n /**\n * If `true`, the label is hidden.\n * This is used to increase density for a `FilledInput`.\n * Be sure to add `aria-label` to the `input` element.\n * @default false\n */\n hiddenLabel: PropTypes.bool,\n /**\n * If `dense` or `normal`, will adjust vertical spacing of this and contained components.\n * @default 'none'\n */\n margin: PropTypes.oneOf(['dense', 'none', 'normal']),\n /**\n * If `true`, the label will indicate that the `input` is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n * @default 'outlined'\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default FormControl;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableUnderline\", \"components\", \"componentsProps\", \"fullWidth\", \"inputComponent\", \"multiline\", \"slotProps\", \"slots\", \"type\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { refType, deepmerge } from '@mui/utils';\nimport InputBase from '../InputBase';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport inputClasses, { getInputUtilityClass } from './inputClasses';\nimport { rootOverridesResolver as inputBaseRootOverridesResolver, inputOverridesResolver as inputBaseInputOverridesResolver, InputBaseRoot, InputBaseComponent as InputBaseInput } from '../InputBase/InputBase';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n disableUnderline\n } = ownerState;\n const slots = {\n root: ['root', !disableUnderline && 'underline'],\n input: ['input']\n };\n const composedClasses = composeClasses(slots, getInputUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputRoot = styled(InputBaseRoot, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInput',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [...inputBaseRootOverridesResolver(props, styles), !ownerState.disableUnderline && styles.underline];\n }\n})(({\n theme,\n ownerState\n}) => {\n const light = theme.palette.mode === 'light';\n let bottomLineColor = light ? 'rgba(0, 0, 0, 0.42)' : 'rgba(255, 255, 255, 0.7)';\n if (theme.vars) {\n bottomLineColor = `rgba(${theme.vars.palette.common.onBackgroundChannel} / ${theme.vars.opacity.inputUnderline})`;\n }\n return _extends({\n position: 'relative'\n }, ownerState.formControl && {\n 'label + &': {\n marginTop: 16\n }\n }, !ownerState.disableUnderline && {\n '&:after': {\n borderBottom: `2px solid ${(theme.vars || theme).palette[ownerState.color].main}`,\n left: 0,\n bottom: 0,\n // Doing the other way around crash on IE11 \"''\" https://github.com/cssinjs/jss/issues/242\n content: '\"\"',\n position: 'absolute',\n right: 0,\n transform: 'scaleX(0)',\n transition: theme.transitions.create('transform', {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n }),\n pointerEvents: 'none' // Transparent to the hover style.\n },\n\n [`&.${inputClasses.focused}:after`]: {\n // translateX(0) is a workaround for Safari transform scale bug\n // See https://github.com/mui/material-ui/issues/31766\n transform: 'scaleX(1) translateX(0)'\n },\n [`&.${inputClasses.error}`]: {\n '&:before, &:after': {\n borderBottomColor: (theme.vars || theme).palette.error.main\n }\n },\n '&:before': {\n borderBottom: `1px solid ${bottomLineColor}`,\n left: 0,\n bottom: 0,\n // Doing the other way around crash on IE11 \"''\" https://github.com/cssinjs/jss/issues/242\n content: '\"\\\\00a0\"',\n position: 'absolute',\n right: 0,\n transition: theme.transitions.create('border-bottom-color', {\n duration: theme.transitions.duration.shorter\n }),\n pointerEvents: 'none' // Transparent to the hover style.\n },\n\n [`&:hover:not(.${inputClasses.disabled}, .${inputClasses.error}):before`]: {\n borderBottom: `2px solid ${(theme.vars || theme).palette.text.primary}`,\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n borderBottom: `1px solid ${bottomLineColor}`\n }\n },\n [`&.${inputClasses.disabled}:before`]: {\n borderBottomStyle: 'dotted'\n }\n });\n});\nconst InputInput = styled(InputBaseInput, {\n name: 'MuiInput',\n slot: 'Input',\n overridesResolver: inputBaseInputOverridesResolver\n})({});\nconst Input = /*#__PURE__*/React.forwardRef(function Input(inProps, ref) {\n var _ref, _slots$root, _ref2, _slots$input;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiInput'\n });\n const {\n disableUnderline,\n components = {},\n componentsProps: componentsPropsProp,\n fullWidth = false,\n inputComponent = 'input',\n multiline = false,\n slotProps,\n slots = {},\n type = 'text'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const classes = useUtilityClasses(props);\n const ownerState = {\n disableUnderline\n };\n const inputComponentsProps = {\n root: {\n ownerState\n }\n };\n const componentsProps = (slotProps != null ? slotProps : componentsPropsProp) ? deepmerge(slotProps != null ? slotProps : componentsPropsProp, inputComponentsProps) : inputComponentsProps;\n const RootSlot = (_ref = (_slots$root = slots.root) != null ? _slots$root : components.Root) != null ? _ref : InputRoot;\n const InputSlot = (_ref2 = (_slots$input = slots.input) != null ? _slots$input : components.Input) != null ? _ref2 : InputInput;\n return /*#__PURE__*/_jsx(InputBase, _extends({\n slots: {\n root: RootSlot,\n input: InputSlot\n },\n slotProps: componentsProps,\n fullWidth: fullWidth,\n inputComponent: inputComponent,\n multiline: multiline,\n ref: ref,\n type: type\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Input.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * This prop helps users to fill forms faster, especially on mobile devices.\n * The name can be confusing, as it's more like an autofill.\n * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).\n */\n autoComplete: PropTypes.string,\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * The prop defaults to the value (`'primary'`) inherited from the parent FormControl component.\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['primary', 'secondary']), PropTypes.string]),\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `slots` prop.\n * It's recommended to use the `slots` prop instead.\n *\n * @default {}\n */\n components: PropTypes.shape({\n Input: PropTypes.elementType,\n Root: PropTypes.elementType\n }),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `slotProps` prop.\n * It's recommended to use the `slotProps` prop instead, as `componentsProps` will be deprecated in the future.\n *\n * @default {}\n */\n componentsProps: PropTypes.shape({\n input: PropTypes.object,\n root: PropTypes.object\n }),\n /**\n * The default value. Use when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true`, the component is disabled.\n * The prop defaults to the value (`false`) inherited from the parent FormControl component.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the `input` will not have an underline.\n */\n disableUnderline: PropTypes.bool,\n /**\n * End `InputAdornment` for this component.\n */\n endAdornment: PropTypes.node,\n /**\n * If `true`, the `input` will indicate an error.\n * The prop defaults to the value (`false`) inherited from the parent FormControl component.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` will take up the full width of its container.\n * @default false\n */\n fullWidth: PropTypes.bool,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * The component used for the `input` element.\n * Either a string to use a HTML element or a component.\n * @default 'input'\n */\n inputComponent: PropTypes.elementType,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n * @default {}\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n * The prop defaults to the value (`'none'`) inherited from the parent FormControl component.\n */\n margin: PropTypes.oneOf(['dense', 'none']),\n /**\n * Maximum number of rows to display when multiline option is set to true.\n */\n maxRows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * Minimum number of rows to display when multiline option is set to true.\n */\n minRows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * If `true`, a [TextareaAutosize](/material-ui/react-textarea-autosize/) element is rendered.\n * @default false\n */\n multiline: PropTypes.bool,\n /**\n * Name attribute of the `input` element.\n */\n name: PropTypes.string,\n /**\n * Callback fired when the value is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n */\n onChange: PropTypes.func,\n /**\n * The short hint displayed in the `input` before the user enters a value.\n */\n placeholder: PropTypes.string,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n * The prop defaults to the value (`false`) inherited from the parent FormControl component.\n */\n required: PropTypes.bool,\n /**\n * Number of rows to display when multiline option is set to true.\n */\n rows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slotProps: PropTypes.shape({\n input: PropTypes.object,\n root: PropTypes.object\n }),\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `components` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slots: PropTypes.shape({\n input: PropTypes.elementType,\n root: PropTypes.elementType\n }),\n /**\n * Start `InputAdornment` for this component.\n */\n startAdornment: PropTypes.node,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Form_%3Cinput%3E_types).\n * @default 'text'\n */\n type: PropTypes.string,\n /**\n * The value of the `input` element, required for a controlled component.\n */\n value: PropTypes.any\n} : void 0;\nInput.muiName = 'Input';\nexport default Input;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nimport { inputBaseClasses } from '../InputBase';\nexport function getInputUtilityClass(slot) {\n return generateUtilityClass('MuiInput', slot);\n}\nconst inputClasses = _extends({}, inputBaseClasses, generateUtilityClasses('MuiInput', ['root', 'underline', 'input']));\nexport default inputClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"onChange\", \"maxRows\", \"minRows\", \"style\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport * as ReactDOM from 'react-dom';\nimport { unstable_debounce as debounce, unstable_useForkRef as useForkRef, unstable_useEnhancedEffect as useEnhancedEffect, unstable_ownerWindow as ownerWindow } from '@mui/utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nfunction getStyleValue(value) {\n return parseInt(value, 10) || 0;\n}\nconst styles = {\n shadow: {\n // Visibility needed to hide the extra text area on iPads\n visibility: 'hidden',\n // Remove from the content flow\n position: 'absolute',\n // Ignore the scrollbar width\n overflow: 'hidden',\n height: 0,\n top: 0,\n left: 0,\n // Create a new layer, increase the isolation of the computed values\n transform: 'translateZ(0)'\n }\n};\nfunction isEmpty(obj) {\n return obj === undefined || obj === null || Object.keys(obj).length === 0 || obj.outerHeightStyle === 0 && !obj.overflow;\n}\n\n/**\n *\n * Demos:\n *\n * - [Textarea Autosize](https://mui.com/base-ui/react-textarea-autosize/)\n * - [Textarea Autosize](https://mui.com/material-ui/react-textarea-autosize/)\n *\n * API:\n *\n * - [TextareaAutosize API](https://mui.com/base-ui/react-textarea-autosize/components-api/#textarea-autosize)\n */\nconst TextareaAutosize = /*#__PURE__*/React.forwardRef(function TextareaAutosize(props, forwardedRef) {\n const {\n onChange,\n maxRows,\n minRows = 1,\n style,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const {\n current: isControlled\n } = React.useRef(value != null);\n const inputRef = React.useRef(null);\n const handleRef = useForkRef(forwardedRef, inputRef);\n const shadowRef = React.useRef(null);\n const renders = React.useRef(0);\n const [state, setState] = React.useState({\n outerHeightStyle: 0\n });\n const getUpdatedState = React.useCallback(() => {\n const input = inputRef.current;\n const containerWindow = ownerWindow(input);\n const computedStyle = containerWindow.getComputedStyle(input);\n\n // If input's width is shrunk and it's not visible, don't sync height.\n if (computedStyle.width === '0px') {\n return {\n outerHeightStyle: 0\n };\n }\n const inputShallow = shadowRef.current;\n inputShallow.style.width = computedStyle.width;\n inputShallow.value = input.value || props.placeholder || 'x';\n if (inputShallow.value.slice(-1) === '\\n') {\n // Certain fonts which overflow the line height will cause the textarea\n // to report a different scrollHeight depending on whether the last line\n // is empty. Make it non-empty to avoid this issue.\n inputShallow.value += ' ';\n }\n const boxSizing = computedStyle.boxSizing;\n const padding = getStyleValue(computedStyle.paddingBottom) + getStyleValue(computedStyle.paddingTop);\n const border = getStyleValue(computedStyle.borderBottomWidth) + getStyleValue(computedStyle.borderTopWidth);\n\n // The height of the inner content\n const innerHeight = inputShallow.scrollHeight;\n\n // Measure height of a textarea with a single row\n inputShallow.value = 'x';\n const singleRowHeight = inputShallow.scrollHeight;\n\n // The height of the outer content\n let outerHeight = innerHeight;\n if (minRows) {\n outerHeight = Math.max(Number(minRows) * singleRowHeight, outerHeight);\n }\n if (maxRows) {\n outerHeight = Math.min(Number(maxRows) * singleRowHeight, outerHeight);\n }\n outerHeight = Math.max(outerHeight, singleRowHeight);\n\n // Take the box sizing into account for applying this value as a style.\n const outerHeightStyle = outerHeight + (boxSizing === 'border-box' ? padding + border : 0);\n const overflow = Math.abs(outerHeight - innerHeight) <= 1;\n return {\n outerHeightStyle,\n overflow\n };\n }, [maxRows, minRows, props.placeholder]);\n const updateState = (prevState, newState) => {\n const {\n outerHeightStyle,\n overflow\n } = newState;\n // Need a large enough difference to update the height.\n // This prevents infinite rendering loop.\n if (renders.current < 20 && (outerHeightStyle > 0 && Math.abs((prevState.outerHeightStyle || 0) - outerHeightStyle) > 1 || prevState.overflow !== overflow)) {\n renders.current += 1;\n return {\n overflow,\n outerHeightStyle\n };\n }\n if (process.env.NODE_ENV !== 'production') {\n if (renders.current === 20) {\n console.error(['MUI: Too many re-renders. The layout is unstable.', 'TextareaAutosize limits the number of renders to prevent an infinite loop.'].join('\\n'));\n }\n }\n return prevState;\n };\n const syncHeight = React.useCallback(() => {\n const newState = getUpdatedState();\n if (isEmpty(newState)) {\n return;\n }\n setState(prevState => {\n return updateState(prevState, newState);\n });\n }, [getUpdatedState]);\n const syncHeightWithFlushSync = () => {\n const newState = getUpdatedState();\n if (isEmpty(newState)) {\n return;\n }\n\n // In React 18, state updates in a ResizeObserver's callback are happening after the paint which causes flickering\n // when doing some visual updates in it. Using flushSync ensures that the dom will be painted after the states updates happen\n // Related issue - https://github.com/facebook/react/issues/24331\n ReactDOM.flushSync(() => {\n setState(prevState => {\n return updateState(prevState, newState);\n });\n });\n };\n React.useEffect(() => {\n const handleResize = debounce(() => {\n renders.current = 0;\n\n // If the TextareaAutosize component is replaced by Suspense with a fallback, the last\n // ResizeObserver's handler that runs because of the change in the layout is trying to\n // access a dom node that is no longer there (as the fallback component is being shown instead).\n // See https://github.com/mui/material-ui/issues/32640\n if (inputRef.current) {\n syncHeightWithFlushSync();\n }\n });\n let resizeObserver;\n const input = inputRef.current;\n const containerWindow = ownerWindow(input);\n containerWindow.addEventListener('resize', handleResize);\n if (typeof ResizeObserver !== 'undefined') {\n resizeObserver = new ResizeObserver(handleResize);\n resizeObserver.observe(input);\n }\n return () => {\n handleResize.clear();\n containerWindow.removeEventListener('resize', handleResize);\n if (resizeObserver) {\n resizeObserver.disconnect();\n }\n };\n });\n useEnhancedEffect(() => {\n syncHeight();\n });\n React.useEffect(() => {\n renders.current = 0;\n }, [value]);\n const handleChange = event => {\n renders.current = 0;\n if (!isControlled) {\n syncHeight();\n }\n if (onChange) {\n onChange(event);\n }\n };\n return /*#__PURE__*/_jsxs(React.Fragment, {\n children: [/*#__PURE__*/_jsx(\"textarea\", _extends({\n value: value,\n onChange: handleChange,\n ref: handleRef\n // Apply the rows prop to get a \"correct\" first SSR paint\n ,\n rows: minRows,\n style: _extends({\n height: state.outerHeightStyle,\n // Need a large enough difference to allow scrolling.\n // This prevents infinite rendering loop.\n overflow: state.overflow ? 'hidden' : undefined\n }, style)\n }, other)), /*#__PURE__*/_jsx(\"textarea\", {\n \"aria-hidden\": true,\n className: props.className,\n readOnly: true,\n ref: shadowRef,\n tabIndex: -1,\n style: _extends({}, styles.shadow, style, {\n padding: 0\n })\n })]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? TextareaAutosize.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * Maximum number of rows to display.\n */\n maxRows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * Minimum number of rows to display.\n * @default 1\n */\n minRows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * @ignore\n */\n onChange: PropTypes.func,\n /**\n * @ignore\n */\n placeholder: PropTypes.string,\n /**\n * @ignore\n */\n style: PropTypes.object,\n /**\n * @ignore\n */\n value: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.number, PropTypes.string])\n} : void 0;\nexport default TextareaAutosize;","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { Global } from '@emotion/react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction isEmpty(obj) {\n return obj === undefined || obj === null || Object.keys(obj).length === 0;\n}\nexport default function GlobalStyles(props) {\n const {\n styles,\n defaultTheme = {}\n } = props;\n const globalStyles = typeof styles === 'function' ? themeInput => styles(isEmpty(themeInput) ? defaultTheme : themeInput) : styles;\n return /*#__PURE__*/_jsx(Global, {\n styles: globalStyles\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? GlobalStyles.propTypes = {\n defaultTheme: PropTypes.object,\n styles: PropTypes.oneOfType([PropTypes.array, PropTypes.string, PropTypes.object, PropTypes.func])\n} : void 0;","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { GlobalStyles as MuiGlobalStyles } from '@mui/styled-engine';\nimport useTheme from '../useTheme';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction GlobalStyles({\n styles,\n themeId,\n defaultTheme = {}\n}) {\n const upperTheme = useTheme(defaultTheme);\n const globalStyles = typeof styles === 'function' ? styles(themeId ? upperTheme[themeId] || upperTheme : upperTheme) : styles;\n return /*#__PURE__*/_jsx(MuiGlobalStyles, {\n styles: globalStyles\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? GlobalStyles.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit TypeScript types and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * @ignore\n */\n defaultTheme: PropTypes.object,\n /**\n * @ignore\n */\n styles: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.array, PropTypes.func, PropTypes.number, PropTypes.object, PropTypes.string, PropTypes.bool]),\n /**\n * @ignore\n */\n themeId: PropTypes.string\n} : void 0;\nexport default GlobalStyles;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { GlobalStyles as SystemGlobalStyles } from '@mui/system';\nimport defaultTheme from '../styles/defaultTheme';\nimport THEME_ID from '../styles/identifier';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction GlobalStyles(props) {\n return /*#__PURE__*/_jsx(SystemGlobalStyles, _extends({}, props, {\n defaultTheme: defaultTheme,\n themeId: THEME_ID\n }));\n}\nprocess.env.NODE_ENV !== \"production\" ? GlobalStyles.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The styles you want to apply globally.\n */\n styles: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.array, PropTypes.func, PropTypes.number, PropTypes.object, PropTypes.string, PropTypes.bool])\n} : void 0;\nexport default GlobalStyles;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { formatMuiErrorMessage as _formatMuiErrorMessage } from \"@mui/utils\";\nconst _excluded = [\"aria-describedby\", \"autoComplete\", \"autoFocus\", \"className\", \"color\", \"components\", \"componentsProps\", \"defaultValue\", \"disabled\", \"disableInjectingGlobalStyles\", \"endAdornment\", \"error\", \"fullWidth\", \"id\", \"inputComponent\", \"inputProps\", \"inputRef\", \"margin\", \"maxRows\", \"minRows\", \"multiline\", \"name\", \"onBlur\", \"onChange\", \"onClick\", \"onFocus\", \"onKeyDown\", \"onKeyUp\", \"placeholder\", \"readOnly\", \"renderSuffix\", \"rows\", \"size\", \"slotProps\", \"slots\", \"startAdornment\", \"type\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType, elementTypeAcceptingRef } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses, isHostComponent, TextareaAutosize } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport FormControlContext from '../FormControl/FormControlContext';\nimport useFormControl from '../FormControl/useFormControl';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport capitalize from '../utils/capitalize';\nimport useForkRef from '../utils/useForkRef';\nimport useEnhancedEffect from '../utils/useEnhancedEffect';\nimport GlobalStyles from '../GlobalStyles';\nimport { isFilled } from './utils';\nimport inputBaseClasses, { getInputBaseUtilityClass } from './inputBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nexport const rootOverridesResolver = (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.formControl && styles.formControl, ownerState.startAdornment && styles.adornedStart, ownerState.endAdornment && styles.adornedEnd, ownerState.error && styles.error, ownerState.size === 'small' && styles.sizeSmall, ownerState.multiline && styles.multiline, ownerState.color && styles[`color${capitalize(ownerState.color)}`], ownerState.fullWidth && styles.fullWidth, ownerState.hiddenLabel && styles.hiddenLabel];\n};\nexport const inputOverridesResolver = (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.input, ownerState.size === 'small' && styles.inputSizeSmall, ownerState.multiline && styles.inputMultiline, ownerState.type === 'search' && styles.inputTypeSearch, ownerState.startAdornment && styles.inputAdornedStart, ownerState.endAdornment && styles.inputAdornedEnd, ownerState.hiddenLabel && styles.inputHiddenLabel];\n};\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n disabled,\n error,\n endAdornment,\n focused,\n formControl,\n fullWidth,\n hiddenLabel,\n multiline,\n readOnly,\n size,\n startAdornment,\n type\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', fullWidth && 'fullWidth', focused && 'focused', formControl && 'formControl', size === 'small' && 'sizeSmall', multiline && 'multiline', startAdornment && 'adornedStart', endAdornment && 'adornedEnd', hiddenLabel && 'hiddenLabel', readOnly && 'readOnly'],\n input: ['input', disabled && 'disabled', type === 'search' && 'inputTypeSearch', multiline && 'inputMultiline', size === 'small' && 'inputSizeSmall', hiddenLabel && 'inputHiddenLabel', startAdornment && 'inputAdornedStart', endAdornment && 'inputAdornedEnd', readOnly && 'readOnly']\n };\n return composeClasses(slots, getInputBaseUtilityClass, classes);\n};\nexport const InputBaseRoot = styled('div', {\n name: 'MuiInputBase',\n slot: 'Root',\n overridesResolver: rootOverridesResolver\n})(({\n theme,\n ownerState\n}) => _extends({}, theme.typography.body1, {\n color: (theme.vars || theme).palette.text.primary,\n lineHeight: '1.4375em',\n // 23px\n boxSizing: 'border-box',\n // Prevent padding issue with fullWidth.\n position: 'relative',\n cursor: 'text',\n display: 'inline-flex',\n alignItems: 'center',\n [`&.${inputBaseClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled,\n cursor: 'default'\n }\n}, ownerState.multiline && _extends({\n padding: '4px 0 5px'\n}, ownerState.size === 'small' && {\n paddingTop: 1\n}), ownerState.fullWidth && {\n width: '100%'\n}));\nexport const InputBaseComponent = styled('input', {\n name: 'MuiInputBase',\n slot: 'Input',\n overridesResolver: inputOverridesResolver\n})(({\n theme,\n ownerState\n}) => {\n const light = theme.palette.mode === 'light';\n const placeholder = _extends({\n color: 'currentColor'\n }, theme.vars ? {\n opacity: theme.vars.opacity.inputPlaceholder\n } : {\n opacity: light ? 0.42 : 0.5\n }, {\n transition: theme.transitions.create('opacity', {\n duration: theme.transitions.duration.shorter\n })\n });\n const placeholderHidden = {\n opacity: '0 !important'\n };\n const placeholderVisible = theme.vars ? {\n opacity: theme.vars.opacity.inputPlaceholder\n } : {\n opacity: light ? 0.42 : 0.5\n };\n return _extends({\n font: 'inherit',\n letterSpacing: 'inherit',\n color: 'currentColor',\n padding: '4px 0 5px',\n border: 0,\n boxSizing: 'content-box',\n background: 'none',\n height: '1.4375em',\n // Reset 23pxthe native input line-height\n margin: 0,\n // Reset for Safari\n WebkitTapHighlightColor: 'transparent',\n display: 'block',\n // Make the flex item shrink with Firefox\n minWidth: 0,\n width: '100%',\n // Fix IE11 width issue\n animationName: 'mui-auto-fill-cancel',\n animationDuration: '10ms',\n '&::-webkit-input-placeholder': placeholder,\n '&::-moz-placeholder': placeholder,\n // Firefox 19+\n '&:-ms-input-placeholder': placeholder,\n // IE11\n '&::-ms-input-placeholder': placeholder,\n // Edge\n '&:focus': {\n outline: 0\n },\n // Reset Firefox invalid required input style\n '&:invalid': {\n boxShadow: 'none'\n },\n '&::-webkit-search-decoration': {\n // Remove the padding when type=search.\n WebkitAppearance: 'none'\n },\n // Show and hide the placeholder logic\n [`label[data-shrink=false] + .${inputBaseClasses.formControl} &`]: {\n '&::-webkit-input-placeholder': placeholderHidden,\n '&::-moz-placeholder': placeholderHidden,\n // Firefox 19+\n '&:-ms-input-placeholder': placeholderHidden,\n // IE11\n '&::-ms-input-placeholder': placeholderHidden,\n // Edge\n '&:focus::-webkit-input-placeholder': placeholderVisible,\n '&:focus::-moz-placeholder': placeholderVisible,\n // Firefox 19+\n '&:focus:-ms-input-placeholder': placeholderVisible,\n // IE11\n '&:focus::-ms-input-placeholder': placeholderVisible // Edge\n },\n\n [`&.${inputBaseClasses.disabled}`]: {\n opacity: 1,\n // Reset iOS opacity\n WebkitTextFillColor: (theme.vars || theme).palette.text.disabled // Fix opacity Safari bug\n },\n\n '&:-webkit-autofill': {\n animationDuration: '5000s',\n animationName: 'mui-auto-fill'\n }\n }, ownerState.size === 'small' && {\n paddingTop: 1\n }, ownerState.multiline && {\n height: 'auto',\n resize: 'none',\n padding: 0,\n paddingTop: 0\n }, ownerState.type === 'search' && {\n // Improve type search style.\n MozAppearance: 'textfield'\n });\n});\nconst inputGlobalStyles = /*#__PURE__*/_jsx(GlobalStyles, {\n styles: {\n '@keyframes mui-auto-fill': {\n from: {\n display: 'block'\n }\n },\n '@keyframes mui-auto-fill-cancel': {\n from: {\n display: 'block'\n }\n }\n }\n});\n\n/**\n * `InputBase` contains as few styles as possible.\n * It aims to be a simple building block for creating an input.\n * It contains a load of style reset and some state logic.\n */\nconst InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref) {\n var _slotProps$input;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiInputBase'\n });\n const {\n 'aria-describedby': ariaDescribedby,\n autoComplete,\n autoFocus,\n className,\n components = {},\n componentsProps = {},\n defaultValue,\n disabled,\n disableInjectingGlobalStyles,\n endAdornment,\n fullWidth = false,\n id,\n inputComponent = 'input',\n inputProps: inputPropsProp = {},\n inputRef: inputRefProp,\n maxRows,\n minRows,\n multiline = false,\n name,\n onBlur,\n onChange,\n onClick,\n onFocus,\n onKeyDown,\n onKeyUp,\n placeholder,\n readOnly,\n renderSuffix,\n rows,\n slotProps = {},\n slots = {},\n startAdornment,\n type = 'text',\n value: valueProp\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const value = inputPropsProp.value != null ? inputPropsProp.value : valueProp;\n const {\n current: isControlled\n } = React.useRef(value != null);\n const inputRef = React.useRef();\n const handleInputRefWarning = React.useCallback(instance => {\n if (process.env.NODE_ENV !== 'production') {\n if (instance && instance.nodeName !== 'INPUT' && !instance.focus) {\n console.error(['MUI: You have provided a `inputComponent` to the input component', 'that does not correctly handle the `ref` prop.', 'Make sure the `ref` prop is called with a HTMLInputElement.'].join('\\n'));\n }\n }\n }, []);\n const handleInputRef = useForkRef(inputRef, inputRefProp, inputPropsProp.ref, handleInputRefWarning);\n const [focused, setFocused] = React.useState(false);\n const muiFormControl = useFormControl();\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useEffect(() => {\n if (muiFormControl) {\n return muiFormControl.registerEffect();\n }\n return undefined;\n }, [muiFormControl]);\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'disabled', 'error', 'hiddenLabel', 'size', 'required', 'filled']\n });\n fcs.focused = muiFormControl ? muiFormControl.focused : focused;\n\n // The blur won't fire when the disabled state is set on a focused input.\n // We need to book keep the focused state manually.\n React.useEffect(() => {\n if (!muiFormControl && disabled && focused) {\n setFocused(false);\n if (onBlur) {\n onBlur();\n }\n }\n }, [muiFormControl, disabled, focused, onBlur]);\n const onFilled = muiFormControl && muiFormControl.onFilled;\n const onEmpty = muiFormControl && muiFormControl.onEmpty;\n const checkDirty = React.useCallback(obj => {\n if (isFilled(obj)) {\n if (onFilled) {\n onFilled();\n }\n } else if (onEmpty) {\n onEmpty();\n }\n }, [onFilled, onEmpty]);\n useEnhancedEffect(() => {\n if (isControlled) {\n checkDirty({\n value\n });\n }\n }, [value, checkDirty, isControlled]);\n const handleFocus = event => {\n // Fix a bug with IE11 where the focus/blur events are triggered\n // while the component is disabled.\n if (fcs.disabled) {\n event.stopPropagation();\n return;\n }\n if (onFocus) {\n onFocus(event);\n }\n if (inputPropsProp.onFocus) {\n inputPropsProp.onFocus(event);\n }\n if (muiFormControl && muiFormControl.onFocus) {\n muiFormControl.onFocus(event);\n } else {\n setFocused(true);\n }\n };\n const handleBlur = event => {\n if (onBlur) {\n onBlur(event);\n }\n if (inputPropsProp.onBlur) {\n inputPropsProp.onBlur(event);\n }\n if (muiFormControl && muiFormControl.onBlur) {\n muiFormControl.onBlur(event);\n } else {\n setFocused(false);\n }\n };\n const handleChange = (event, ...args) => {\n if (!isControlled) {\n const element = event.target || inputRef.current;\n if (element == null) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: Expected valid input target. Did you use a custom \\`inputComponent\\` and forget to forward refs? See https://mui.com/r/input-component-ref-interface for more info.` : _formatMuiErrorMessage(1));\n }\n checkDirty({\n value: element.value\n });\n }\n if (inputPropsProp.onChange) {\n inputPropsProp.onChange(event, ...args);\n }\n\n // Perform in the willUpdate\n if (onChange) {\n onChange(event, ...args);\n }\n };\n\n // Check the input state on mount, in case it was filled by the user\n // or auto filled by the browser before the hydration (for SSR).\n React.useEffect(() => {\n checkDirty(inputRef.current);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n const handleClick = event => {\n if (inputRef.current && event.currentTarget === event.target) {\n inputRef.current.focus();\n }\n if (onClick && !fcs.disabled) {\n onClick(event);\n }\n };\n let InputComponent = inputComponent;\n let inputProps = inputPropsProp;\n if (multiline && InputComponent === 'input') {\n if (rows) {\n if (process.env.NODE_ENV !== 'production') {\n if (minRows || maxRows) {\n console.warn('MUI: You can not use the `minRows` or `maxRows` props when the input `rows` prop is set.');\n }\n }\n inputProps = _extends({\n type: undefined,\n minRows: rows,\n maxRows: rows\n }, inputProps);\n } else {\n inputProps = _extends({\n type: undefined,\n maxRows,\n minRows\n }, inputProps);\n }\n InputComponent = TextareaAutosize;\n }\n const handleAutoFill = event => {\n // Provide a fake value as Chrome might not let you access it for security reasons.\n checkDirty(event.animationName === 'mui-auto-fill-cancel' ? inputRef.current : {\n value: 'x'\n });\n };\n React.useEffect(() => {\n if (muiFormControl) {\n muiFormControl.setAdornedStart(Boolean(startAdornment));\n }\n }, [muiFormControl, startAdornment]);\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n disabled: fcs.disabled,\n endAdornment,\n error: fcs.error,\n focused: fcs.focused,\n formControl: muiFormControl,\n fullWidth,\n hiddenLabel: fcs.hiddenLabel,\n multiline,\n size: fcs.size,\n startAdornment,\n type\n });\n const classes = useUtilityClasses(ownerState);\n const Root = slots.root || components.Root || InputBaseRoot;\n const rootProps = slotProps.root || componentsProps.root || {};\n const Input = slots.input || components.Input || InputBaseComponent;\n inputProps = _extends({}, inputProps, (_slotProps$input = slotProps.input) != null ? _slotProps$input : componentsProps.input);\n return /*#__PURE__*/_jsxs(React.Fragment, {\n children: [!disableInjectingGlobalStyles && inputGlobalStyles, /*#__PURE__*/_jsxs(Root, _extends({}, rootProps, !isHostComponent(Root) && {\n ownerState: _extends({}, ownerState, rootProps.ownerState)\n }, {\n ref: ref,\n onClick: handleClick\n }, other, {\n className: clsx(classes.root, rootProps.className, className, readOnly && 'MuiInputBase-readOnly'),\n children: [startAdornment, /*#__PURE__*/_jsx(FormControlContext.Provider, {\n value: null,\n children: /*#__PURE__*/_jsx(Input, _extends({\n ownerState: ownerState,\n \"aria-invalid\": fcs.error,\n \"aria-describedby\": ariaDescribedby,\n autoComplete: autoComplete,\n autoFocus: autoFocus,\n defaultValue: defaultValue,\n disabled: fcs.disabled,\n id: id,\n onAnimationStart: handleAutoFill,\n name: name,\n placeholder: placeholder,\n readOnly: readOnly,\n required: fcs.required,\n rows: rows,\n value: value,\n onKeyDown: onKeyDown,\n onKeyUp: onKeyUp,\n type: type\n }, inputProps, !isHostComponent(Input) && {\n as: InputComponent,\n ownerState: _extends({}, ownerState, inputProps.ownerState)\n }, {\n ref: handleInputRef,\n className: clsx(classes.input, inputProps.className, readOnly && 'MuiInputBase-readOnly'),\n onBlur: handleBlur,\n onChange: handleChange,\n onFocus: handleFocus\n }))\n }), endAdornment, renderSuffix ? renderSuffix(_extends({}, fcs, {\n startAdornment\n })) : null]\n }))]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? InputBase.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * @ignore\n */\n 'aria-describedby': PropTypes.string,\n /**\n * This prop helps users to fill forms faster, especially on mobile devices.\n * The name can be confusing, as it's more like an autofill.\n * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).\n */\n autoComplete: PropTypes.string,\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * The prop defaults to the value (`'primary'`) inherited from the parent FormControl component.\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `slots` prop.\n * It's recommended to use the `slots` prop instead.\n *\n * @default {}\n */\n components: PropTypes.shape({\n Input: PropTypes.elementType,\n Root: PropTypes.elementType\n }),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `slotProps` prop.\n * It's recommended to use the `slotProps` prop instead, as `componentsProps` will be deprecated in the future.\n *\n * @default {}\n */\n componentsProps: PropTypes.shape({\n input: PropTypes.object,\n root: PropTypes.object\n }),\n /**\n * The default value. Use when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true`, the component is disabled.\n * The prop defaults to the value (`false`) inherited from the parent FormControl component.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, GlobalStyles for the auto-fill keyframes will not be injected/removed on mount/unmount. Make sure to inject them at the top of your application.\n * This option is intended to help with boosting the initial rendering performance if you are loading a big amount of Input components at once.\n * @default false\n */\n disableInjectingGlobalStyles: PropTypes.bool,\n /**\n * End `InputAdornment` for this component.\n */\n endAdornment: PropTypes.node,\n /**\n * If `true`, the `input` will indicate an error.\n * The prop defaults to the value (`false`) inherited from the parent FormControl component.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` will take up the full width of its container.\n * @default false\n */\n fullWidth: PropTypes.bool,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * The component used for the `input` element.\n * Either a string to use a HTML element or a component.\n * @default 'input'\n */\n inputComponent: elementTypeAcceptingRef,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n * @default {}\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n * The prop defaults to the value (`'none'`) inherited from the parent FormControl component.\n */\n margin: PropTypes.oneOf(['dense', 'none']),\n /**\n * Maximum number of rows to display when multiline option is set to true.\n */\n maxRows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * Minimum number of rows to display when multiline option is set to true.\n */\n minRows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * If `true`, a [TextareaAutosize](/material-ui/react-textarea-autosize/) element is rendered.\n * @default false\n */\n multiline: PropTypes.bool,\n /**\n * Name attribute of the `input` element.\n */\n name: PropTypes.string,\n /**\n * Callback fired when the `input` is blurred.\n *\n * Notice that the first argument (event) might be undefined.\n */\n onBlur: PropTypes.func,\n /**\n * Callback fired when the value is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n */\n onChange: PropTypes.func,\n /**\n * @ignore\n */\n onClick: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * Callback fired when the `input` doesn't satisfy its constraints.\n */\n onInvalid: PropTypes.func,\n /**\n * @ignore\n */\n onKeyDown: PropTypes.func,\n /**\n * @ignore\n */\n onKeyUp: PropTypes.func,\n /**\n * The short hint displayed in the `input` before the user enters a value.\n */\n placeholder: PropTypes.string,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * @ignore\n */\n renderSuffix: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * The prop defaults to the value (`false`) inherited from the parent FormControl component.\n */\n required: PropTypes.bool,\n /**\n * Number of rows to display when multiline option is set to true.\n */\n rows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The size of the component.\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slotProps: PropTypes.shape({\n input: PropTypes.object,\n root: PropTypes.object\n }),\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `components` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slots: PropTypes.shape({\n input: PropTypes.elementType,\n root: PropTypes.elementType\n }),\n /**\n * Start `InputAdornment` for this component.\n */\n startAdornment: PropTypes.node,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Form_%3Cinput%3E_types).\n * @default 'text'\n */\n type: PropTypes.string,\n /**\n * The value of the `input` element, required for a controlled component.\n */\n value: PropTypes.any\n} : void 0;\nexport default InputBase;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputBaseUtilityClass(slot) {\n return generateUtilityClass('MuiInputBase', slot);\n}\nconst inputBaseClasses = generateUtilityClasses('MuiInputBase', ['root', 'formControl', 'focused', 'disabled', 'adornedStart', 'adornedEnd', 'error', 'sizeSmall', 'multiline', 'colorSecondary', 'fullWidth', 'hiddenLabel', 'readOnly', 'input', 'inputSizeSmall', 'inputMultiline', 'inputTypeSearch', 'inputAdornedStart', 'inputAdornedEnd', 'inputHiddenLabel']);\nexport default inputBaseClasses;","// Supports determination of isControlled().\n// Controlled input accepts its current value as a prop.\n//\n// @see https://facebook.github.io/react/docs/forms.html#controlled-components\n// @param value\n// @returns {boolean} true if string (including '') or number (including zero)\nexport function hasValue(value) {\n return value != null && !(Array.isArray(value) && value.length === 0);\n}\n\n// Determine if field is empty or filled.\n// Response determines if label is presented above field or as placeholder.\n//\n// @param obj\n// @param SSR\n// @returns {boolean} False when not present or empty string.\n// True when any number or string with length.\nexport function isFilled(obj, SSR = false) {\n return obj && (hasValue(obj.value) && obj.value !== '' || SSR && hasValue(obj.defaultValue) && obj.defaultValue !== '');\n}\n\n// Determine if an Input is adorned on start.\n// It's corresponding to the left with LTR.\n//\n// @param obj\n// @returns {boolean} False when no adornments.\n// True when adorned at the start.\nexport function isAdornedStart(obj) {\n return obj.startAdornment;\n}","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getListUtilityClass(slot) {\n return generateUtilityClass('MuiList', slot);\n}\nconst listClasses = generateUtilityClasses('MuiList', ['root', 'padding', 'dense', 'subheader']);\nexport default listClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"component\", \"dense\", \"disablePadding\", \"subheader\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport ListContext from './ListContext';\nimport { getListUtilityClass } from './listClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n disablePadding,\n dense,\n subheader\n } = ownerState;\n const slots = {\n root: ['root', !disablePadding && 'padding', dense && 'dense', subheader && 'subheader']\n };\n return composeClasses(slots, getListUtilityClass, classes);\n};\nconst ListRoot = styled('ul', {\n name: 'MuiList',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, !ownerState.disablePadding && styles.padding, ownerState.dense && styles.dense, ownerState.subheader && styles.subheader];\n }\n})(({\n ownerState\n}) => _extends({\n listStyle: 'none',\n margin: 0,\n padding: 0,\n position: 'relative'\n}, !ownerState.disablePadding && {\n paddingTop: 8,\n paddingBottom: 8\n}, ownerState.subheader && {\n paddingTop: 0\n}));\nconst List = /*#__PURE__*/React.forwardRef(function List(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiList'\n });\n const {\n children,\n className,\n component = 'ul',\n dense = false,\n disablePadding = false,\n subheader\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const context = React.useMemo(() => ({\n dense\n }), [dense]);\n const ownerState = _extends({}, props, {\n component,\n dense,\n disablePadding\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(ListContext.Provider, {\n value: context,\n children: /*#__PURE__*/_jsxs(ListRoot, _extends({\n as: component,\n className: clsx(classes.root, className),\n ref: ref,\n ownerState: ownerState\n }, other, {\n children: [subheader, children]\n }))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? List.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, compact vertical padding designed for keyboard and mouse input is used for\n * the list and list items.\n * The prop is available to descendant components as the `dense` context.\n * @default false\n */\n dense: PropTypes.bool,\n /**\n * If `true`, vertical padding is removed from the list.\n * @default false\n */\n disablePadding: PropTypes.bool,\n /**\n * The content of the subheader, normally `ListSubheader`.\n */\n subheader: PropTypes.node,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default List;","import { unstable_getScrollbarSize as getScrollbarSize } from '@mui/utils';\nexport default getScrollbarSize;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"actions\", \"autoFocus\", \"autoFocusItem\", \"children\", \"className\", \"disabledItemsFocusable\", \"disableListWrap\", \"onKeyDown\", \"variant\"];\nimport * as React from 'react';\nimport { isFragment } from 'react-is';\nimport PropTypes from 'prop-types';\nimport ownerDocument from '../utils/ownerDocument';\nimport List from '../List';\nimport getScrollbarSize from '../utils/getScrollbarSize';\nimport useForkRef from '../utils/useForkRef';\nimport useEnhancedEffect from '../utils/useEnhancedEffect';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction nextItem(list, item, disableListWrap) {\n if (list === item) {\n return list.firstChild;\n }\n if (item && item.nextElementSibling) {\n return item.nextElementSibling;\n }\n return disableListWrap ? null : list.firstChild;\n}\nfunction previousItem(list, item, disableListWrap) {\n if (list === item) {\n return disableListWrap ? list.firstChild : list.lastChild;\n }\n if (item && item.previousElementSibling) {\n return item.previousElementSibling;\n }\n return disableListWrap ? null : list.lastChild;\n}\nfunction textCriteriaMatches(nextFocus, textCriteria) {\n if (textCriteria === undefined) {\n return true;\n }\n let text = nextFocus.innerText;\n if (text === undefined) {\n // jsdom doesn't support innerText\n text = nextFocus.textContent;\n }\n text = text.trim().toLowerCase();\n if (text.length === 0) {\n return false;\n }\n if (textCriteria.repeating) {\n return text[0] === textCriteria.keys[0];\n }\n return text.indexOf(textCriteria.keys.join('')) === 0;\n}\nfunction moveFocus(list, currentFocus, disableListWrap, disabledItemsFocusable, traversalFunction, textCriteria) {\n let wrappedOnce = false;\n let nextFocus = traversalFunction(list, currentFocus, currentFocus ? disableListWrap : false);\n while (nextFocus) {\n // Prevent infinite loop.\n if (nextFocus === list.firstChild) {\n if (wrappedOnce) {\n return false;\n }\n wrappedOnce = true;\n }\n\n // Same logic as useAutocomplete.js\n const nextFocusDisabled = disabledItemsFocusable ? false : nextFocus.disabled || nextFocus.getAttribute('aria-disabled') === 'true';\n if (!nextFocus.hasAttribute('tabindex') || !textCriteriaMatches(nextFocus, textCriteria) || nextFocusDisabled) {\n // Move to the next element.\n nextFocus = traversalFunction(list, nextFocus, disableListWrap);\n } else {\n nextFocus.focus();\n return true;\n }\n }\n return false;\n}\n\n/**\n * A permanently displayed menu following https://www.w3.org/WAI/ARIA/apg/patterns/menu-button/.\n * It's exposed to help customization of the [`Menu`](/material-ui/api/menu/) component if you\n * use it separately you need to move focus into the component manually. Once\n * the focus is placed inside the component it is fully keyboard accessible.\n */\nconst MenuList = /*#__PURE__*/React.forwardRef(function MenuList(props, ref) {\n const {\n // private\n // eslint-disable-next-line react/prop-types\n actions,\n autoFocus = false,\n autoFocusItem = false,\n children,\n className,\n disabledItemsFocusable = false,\n disableListWrap = false,\n onKeyDown,\n variant = 'selectedMenu'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const listRef = React.useRef(null);\n const textCriteriaRef = React.useRef({\n keys: [],\n repeating: true,\n previousKeyMatched: true,\n lastTime: null\n });\n useEnhancedEffect(() => {\n if (autoFocus) {\n listRef.current.focus();\n }\n }, [autoFocus]);\n React.useImperativeHandle(actions, () => ({\n adjustStyleForScrollbar: (containerElement, theme) => {\n // Let's ignore that piece of logic if users are already overriding the width\n // of the menu.\n const noExplicitWidth = !listRef.current.style.width;\n if (containerElement.clientHeight < listRef.current.clientHeight && noExplicitWidth) {\n const scrollbarSize = `${getScrollbarSize(ownerDocument(containerElement))}px`;\n listRef.current.style[theme.direction === 'rtl' ? 'paddingLeft' : 'paddingRight'] = scrollbarSize;\n listRef.current.style.width = `calc(100% + ${scrollbarSize})`;\n }\n return listRef.current;\n }\n }), []);\n const handleKeyDown = event => {\n const list = listRef.current;\n const key = event.key;\n /**\n * @type {Element} - will always be defined since we are in a keydown handler\n * attached to an element. A keydown event is either dispatched to the activeElement\n * or document.body or document.documentElement. Only the first case will\n * trigger this specific handler.\n */\n const currentFocus = ownerDocument(list).activeElement;\n if (key === 'ArrowDown') {\n // Prevent scroll of the page\n event.preventDefault();\n moveFocus(list, currentFocus, disableListWrap, disabledItemsFocusable, nextItem);\n } else if (key === 'ArrowUp') {\n event.preventDefault();\n moveFocus(list, currentFocus, disableListWrap, disabledItemsFocusable, previousItem);\n } else if (key === 'Home') {\n event.preventDefault();\n moveFocus(list, null, disableListWrap, disabledItemsFocusable, nextItem);\n } else if (key === 'End') {\n event.preventDefault();\n moveFocus(list, null, disableListWrap, disabledItemsFocusable, previousItem);\n } else if (key.length === 1) {\n const criteria = textCriteriaRef.current;\n const lowerKey = key.toLowerCase();\n const currTime = performance.now();\n if (criteria.keys.length > 0) {\n // Reset\n if (currTime - criteria.lastTime > 500) {\n criteria.keys = [];\n criteria.repeating = true;\n criteria.previousKeyMatched = true;\n } else if (criteria.repeating && lowerKey !== criteria.keys[0]) {\n criteria.repeating = false;\n }\n }\n criteria.lastTime = currTime;\n criteria.keys.push(lowerKey);\n const keepFocusOnCurrent = currentFocus && !criteria.repeating && textCriteriaMatches(currentFocus, criteria);\n if (criteria.previousKeyMatched && (keepFocusOnCurrent || moveFocus(list, currentFocus, false, disabledItemsFocusable, nextItem, criteria))) {\n event.preventDefault();\n } else {\n criteria.previousKeyMatched = false;\n }\n }\n if (onKeyDown) {\n onKeyDown(event);\n }\n };\n const handleRef = useForkRef(listRef, ref);\n\n /**\n * the index of the item should receive focus\n * in a `variant=\"selectedMenu\"` it's the first `selected` item\n * otherwise it's the very first item.\n */\n let activeItemIndex = -1;\n // since we inject focus related props into children we have to do a lookahead\n // to check if there is a `selected` item. We're looking for the last `selected`\n // item and use the first valid item as a fallback\n React.Children.forEach(children, (child, index) => {\n if (! /*#__PURE__*/React.isValidElement(child)) {\n if (activeItemIndex === index) {\n activeItemIndex += 1;\n if (activeItemIndex >= children.length) {\n // there are no focusable items within the list.\n activeItemIndex = -1;\n }\n }\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (isFragment(child)) {\n console.error([\"MUI: The Menu component doesn't accept a Fragment as a child.\", 'Consider providing an array instead.'].join('\\n'));\n }\n }\n if (!child.props.disabled) {\n if (variant === 'selectedMenu' && child.props.selected) {\n activeItemIndex = index;\n } else if (activeItemIndex === -1) {\n activeItemIndex = index;\n }\n }\n if (activeItemIndex === index && (child.props.disabled || child.props.muiSkipListHighlight || child.type.muiSkipListHighlight)) {\n activeItemIndex += 1;\n if (activeItemIndex >= children.length) {\n // there are no focusable items within the list.\n activeItemIndex = -1;\n }\n }\n });\n const items = React.Children.map(children, (child, index) => {\n if (index === activeItemIndex) {\n const newChildProps = {};\n if (autoFocusItem) {\n newChildProps.autoFocus = true;\n }\n if (child.props.tabIndex === undefined && variant === 'selectedMenu') {\n newChildProps.tabIndex = 0;\n }\n return /*#__PURE__*/React.cloneElement(child, newChildProps);\n }\n return child;\n });\n return /*#__PURE__*/_jsx(List, _extends({\n role: \"menu\",\n ref: handleRef,\n className: className,\n onKeyDown: handleKeyDown,\n tabIndex: autoFocus ? 0 : -1\n }, other, {\n children: items\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? MenuList.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, will focus the `[role=\"menu\"]` container and move into tab order.\n * @default false\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, will focus the first menuitem if `variant=\"menu\"` or selected item\n * if `variant=\"selectedMenu\"`.\n * @default false\n */\n autoFocusItem: PropTypes.bool,\n /**\n * MenuList contents, normally `MenuItem`s.\n */\n children: PropTypes.node,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * If `true`, will allow focus on disabled items.\n * @default false\n */\n disabledItemsFocusable: PropTypes.bool,\n /**\n * If `true`, the menu items will not wrap focus.\n * @default false\n */\n disableListWrap: PropTypes.bool,\n /**\n * @ignore\n */\n onKeyDown: PropTypes.func,\n /**\n * The variant to use. Use `menu` to prevent selected items from impacting the initial focus\n * and the vertical alignment relative to the anchor element.\n * @default 'selectedMenu'\n */\n variant: PropTypes.oneOf(['menu', 'selectedMenu'])\n} : void 0;\nexport default MenuList;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getMenuUtilityClass(slot) {\n return generateUtilityClass('MuiMenu', slot);\n}\nconst menuClasses = generateUtilityClasses('MuiMenu', ['root', 'paper', 'list']);\nexport default menuClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"onEntering\"],\n _excluded2 = [\"autoFocus\", \"children\", \"disableAutoFocusItem\", \"MenuListProps\", \"onClose\", \"open\", \"PaperProps\", \"PopoverClasses\", \"transitionDuration\", \"TransitionProps\", \"variant\"];\nimport * as React from 'react';\nimport { isFragment } from 'react-is';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { HTMLElementType } from '@mui/utils';\nimport MenuList from '../MenuList';\nimport Popover, { PopoverPaper } from '../Popover';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport useTheme from '../styles/useTheme';\nimport useThemeProps from '../styles/useThemeProps';\nimport { getMenuUtilityClass } from './menuClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst RTL_ORIGIN = {\n vertical: 'top',\n horizontal: 'right'\n};\nconst LTR_ORIGIN = {\n vertical: 'top',\n horizontal: 'left'\n};\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n paper: ['paper'],\n list: ['list']\n };\n return composeClasses(slots, getMenuUtilityClass, classes);\n};\nconst MenuRoot = styled(Popover, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiMenu',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({});\nexport const MenuPaper = styled(PopoverPaper, {\n name: 'MuiMenu',\n slot: 'Paper',\n overridesResolver: (props, styles) => styles.paper\n})({\n // specZ: The maximum height of a simple menu should be one or more rows less than the view\n // height. This ensures a tappable area outside of the simple menu with which to dismiss\n // the menu.\n maxHeight: 'calc(100% - 96px)',\n // Add iOS momentum scrolling for iOS < 13.0\n WebkitOverflowScrolling: 'touch'\n});\nconst MenuMenuList = styled(MenuList, {\n name: 'MuiMenu',\n slot: 'List',\n overridesResolver: (props, styles) => styles.list\n})({\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0\n});\nconst Menu = /*#__PURE__*/React.forwardRef(function Menu(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiMenu'\n });\n const {\n autoFocus = true,\n children,\n disableAutoFocusItem = false,\n MenuListProps = {},\n onClose,\n open,\n PaperProps = {},\n PopoverClasses,\n transitionDuration = 'auto',\n TransitionProps: {\n onEntering\n } = {},\n variant = 'selectedMenu'\n } = props,\n TransitionProps = _objectWithoutPropertiesLoose(props.TransitionProps, _excluded),\n other = _objectWithoutPropertiesLoose(props, _excluded2);\n const theme = useTheme();\n const isRtl = theme.direction === 'rtl';\n const ownerState = _extends({}, props, {\n autoFocus,\n disableAutoFocusItem,\n MenuListProps,\n onEntering,\n PaperProps,\n transitionDuration,\n TransitionProps,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n const autoFocusItem = autoFocus && !disableAutoFocusItem && open;\n const menuListActionsRef = React.useRef(null);\n const handleEntering = (element, isAppearing) => {\n if (menuListActionsRef.current) {\n menuListActionsRef.current.adjustStyleForScrollbar(element, theme);\n }\n if (onEntering) {\n onEntering(element, isAppearing);\n }\n };\n const handleListKeyDown = event => {\n if (event.key === 'Tab') {\n event.preventDefault();\n if (onClose) {\n onClose(event, 'tabKeyDown');\n }\n }\n };\n\n /**\n * the index of the item should receive focus\n * in a `variant=\"selectedMenu\"` it's the first `selected` item\n * otherwise it's the very first item.\n */\n let activeItemIndex = -1;\n // since we inject focus related props into children we have to do a lookahead\n // to check if there is a `selected` item. We're looking for the last `selected`\n // item and use the first valid item as a fallback\n React.Children.map(children, (child, index) => {\n if (! /*#__PURE__*/React.isValidElement(child)) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (isFragment(child)) {\n console.error([\"MUI: The Menu component doesn't accept a Fragment as a child.\", 'Consider providing an array instead.'].join('\\n'));\n }\n }\n if (!child.props.disabled) {\n if (variant === 'selectedMenu' && child.props.selected) {\n activeItemIndex = index;\n } else if (activeItemIndex === -1) {\n activeItemIndex = index;\n }\n }\n });\n return /*#__PURE__*/_jsx(MenuRoot, _extends({\n onClose: onClose,\n anchorOrigin: {\n vertical: 'bottom',\n horizontal: isRtl ? 'right' : 'left'\n },\n transformOrigin: isRtl ? RTL_ORIGIN : LTR_ORIGIN,\n slots: {\n paper: MenuPaper\n },\n slotProps: {\n paper: _extends({}, PaperProps, {\n classes: _extends({}, PaperProps.classes, {\n root: classes.paper\n })\n })\n },\n className: classes.root,\n open: open,\n ref: ref,\n transitionDuration: transitionDuration,\n TransitionProps: _extends({\n onEntering: handleEntering\n }, TransitionProps),\n ownerState: ownerState\n }, other, {\n classes: PopoverClasses,\n children: /*#__PURE__*/_jsx(MenuMenuList, _extends({\n onKeyDown: handleListKeyDown,\n actions: menuListActionsRef,\n autoFocus: autoFocus && (activeItemIndex === -1 || disableAutoFocusItem),\n autoFocusItem: autoFocusItem,\n variant: variant\n }, MenuListProps, {\n className: clsx(classes.list, MenuListProps.className),\n children: children\n }))\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Menu.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * An HTML element, or a function that returns one.\n * It's used to set the position of the menu.\n */\n anchorEl: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([HTMLElementType, PropTypes.func]),\n /**\n * If `true` (Default) will focus the `[role=\"menu\"]` if no focusable child is found. Disabled\n * children are not focusable. If you set this prop to `false` focus will be placed\n * on the parent modal container. This has severe accessibility implications\n * and should only be considered if you manage focus otherwise.\n * @default true\n */\n autoFocus: PropTypes.bool,\n /**\n * Menu contents, normally `MenuItem`s.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * When opening the menu will not focus the active item but the `[role=\"menu\"]`\n * unless `autoFocus` is also set to `false`. Not using the default means not\n * following WAI-ARIA authoring practices. Please be considerate about possible\n * accessibility implications.\n * @default false\n */\n disableAutoFocusItem: PropTypes.bool,\n /**\n * Props applied to the [`MenuList`](/material-ui/api/menu-list/) element.\n * @default {}\n */\n MenuListProps: PropTypes.object,\n /**\n * Callback fired when the component requests to be closed.\n *\n * @param {object} event The event source of the callback.\n * @param {string} reason Can be: `\"escapeKeyDown\"`, `\"backdropClick\"`, `\"tabKeyDown\"`.\n */\n onClose: PropTypes.func,\n /**\n * If `true`, the component is shown.\n */\n open: PropTypes.bool.isRequired,\n /**\n * @ignore\n */\n PaperProps: PropTypes.object,\n /**\n * `classes` prop applied to the [`Popover`](/material-ui/api/popover/) element.\n */\n PopoverClasses: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The length of the transition in `ms`, or 'auto'\n * @default 'auto'\n */\n transitionDuration: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })]),\n /**\n * Props applied to the transition element.\n * By default, the element is based on this [`Transition`](http://reactcommunity.org/react-transition-group/transition/) component.\n * @default {}\n */\n TransitionProps: PropTypes.object,\n /**\n * The variant to use. Use `menu` to prevent selected items from impacting the initial focus.\n * @default 'selectedMenu'\n */\n variant: PropTypes.oneOf(['menu', 'selectedMenu'])\n} : void 0;\nexport default Menu;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nvar _span;\nconst _excluded = [\"children\", \"classes\", \"className\", \"label\", \"notched\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from '../styles/styled';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst NotchedOutlineRoot = styled('fieldset')({\n textAlign: 'left',\n position: 'absolute',\n bottom: 0,\n right: 0,\n top: -5,\n left: 0,\n margin: 0,\n padding: '0 8px',\n pointerEvents: 'none',\n borderRadius: 'inherit',\n borderStyle: 'solid',\n borderWidth: 1,\n overflow: 'hidden',\n minWidth: '0%'\n});\nconst NotchedOutlineLegend = styled('legend')(({\n ownerState,\n theme\n}) => _extends({\n float: 'unset',\n // Fix conflict with bootstrap\n width: 'auto',\n // Fix conflict with bootstrap\n overflow: 'hidden'\n}, !ownerState.withLabel && {\n padding: 0,\n lineHeight: '11px',\n // sync with `height` in `legend` styles\n transition: theme.transitions.create('width', {\n duration: 150,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.withLabel && _extends({\n display: 'block',\n // Fix conflict with normalize.css and sanitize.css\n padding: 0,\n height: 11,\n // sync with `lineHeight` in `legend` styles\n fontSize: '0.75em',\n visibility: 'hidden',\n maxWidth: 0.01,\n transition: theme.transitions.create('max-width', {\n duration: 50,\n easing: theme.transitions.easing.easeOut\n }),\n whiteSpace: 'nowrap',\n '& > span': {\n paddingLeft: 5,\n paddingRight: 5,\n display: 'inline-block',\n opacity: 0,\n visibility: 'visible'\n }\n}, ownerState.notched && {\n maxWidth: '100%',\n transition: theme.transitions.create('max-width', {\n duration: 100,\n easing: theme.transitions.easing.easeOut,\n delay: 50\n })\n})));\n\n/**\n * @ignore - internal component.\n */\nexport default function NotchedOutline(props) {\n const {\n className,\n label,\n notched\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const withLabel = label != null && label !== '';\n const ownerState = _extends({}, props, {\n notched,\n withLabel\n });\n return /*#__PURE__*/_jsx(NotchedOutlineRoot, _extends({\n \"aria-hidden\": true,\n className: className,\n ownerState: ownerState\n }, other, {\n children: /*#__PURE__*/_jsx(NotchedOutlineLegend, {\n ownerState: ownerState,\n children: withLabel ? /*#__PURE__*/_jsx(\"span\", {\n children: label\n }) : // notranslate needed while Google Translate will not fix zero-width space issue\n _span || (_span = /*#__PURE__*/_jsx(\"span\", {\n className: \"notranslate\",\n children: \"\\u200B\"\n }))\n })\n }));\n}\nprocess.env.NODE_ENV !== \"production\" ? NotchedOutline.propTypes = {\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The label.\n */\n label: PropTypes.node,\n /**\n * If `true`, the outline is notched to accommodate the label.\n */\n notched: PropTypes.bool.isRequired,\n /**\n * @ignore\n */\n style: PropTypes.object\n} : void 0;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"components\", \"fullWidth\", \"inputComponent\", \"label\", \"multiline\", \"notched\", \"slots\", \"type\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport NotchedOutline from './NotchedOutline';\nimport useFormControl from '../FormControl/useFormControl';\nimport formControlState from '../FormControl/formControlState';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport outlinedInputClasses, { getOutlinedInputUtilityClass } from './outlinedInputClasses';\nimport InputBase, { rootOverridesResolver as inputBaseRootOverridesResolver, inputOverridesResolver as inputBaseInputOverridesResolver, InputBaseRoot, InputBaseComponent as InputBaseInput } from '../InputBase/InputBase';\nimport useThemeProps from '../styles/useThemeProps';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root'],\n notchedOutline: ['notchedOutline'],\n input: ['input']\n };\n const composedClasses = composeClasses(slots, getOutlinedInputUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst OutlinedInputRoot = styled(InputBaseRoot, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiOutlinedInput',\n slot: 'Root',\n overridesResolver: inputBaseRootOverridesResolver\n})(({\n theme,\n ownerState\n}) => {\n const borderColor = theme.palette.mode === 'light' ? 'rgba(0, 0, 0, 0.23)' : 'rgba(255, 255, 255, 0.23)';\n return _extends({\n position: 'relative',\n borderRadius: (theme.vars || theme).shape.borderRadius,\n [`&:hover .${outlinedInputClasses.notchedOutline}`]: {\n borderColor: (theme.vars || theme).palette.text.primary\n },\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n [`&:hover .${outlinedInputClasses.notchedOutline}`]: {\n borderColor: theme.vars ? `rgba(${theme.vars.palette.common.onBackgroundChannel} / 0.23)` : borderColor\n }\n },\n [`&.${outlinedInputClasses.focused} .${outlinedInputClasses.notchedOutline}`]: {\n borderColor: (theme.vars || theme).palette[ownerState.color].main,\n borderWidth: 2\n },\n [`&.${outlinedInputClasses.error} .${outlinedInputClasses.notchedOutline}`]: {\n borderColor: (theme.vars || theme).palette.error.main\n },\n [`&.${outlinedInputClasses.disabled} .${outlinedInputClasses.notchedOutline}`]: {\n borderColor: (theme.vars || theme).palette.action.disabled\n }\n }, ownerState.startAdornment && {\n paddingLeft: 14\n }, ownerState.endAdornment && {\n paddingRight: 14\n }, ownerState.multiline && _extends({\n padding: '16.5px 14px'\n }, ownerState.size === 'small' && {\n padding: '8.5px 14px'\n }));\n});\nconst NotchedOutlineRoot = styled(NotchedOutline, {\n name: 'MuiOutlinedInput',\n slot: 'NotchedOutline',\n overridesResolver: (props, styles) => styles.notchedOutline\n})(({\n theme\n}) => {\n const borderColor = theme.palette.mode === 'light' ? 'rgba(0, 0, 0, 0.23)' : 'rgba(255, 255, 255, 0.23)';\n return {\n borderColor: theme.vars ? `rgba(${theme.vars.palette.common.onBackgroundChannel} / 0.23)` : borderColor\n };\n});\nconst OutlinedInputInput = styled(InputBaseInput, {\n name: 'MuiOutlinedInput',\n slot: 'Input',\n overridesResolver: inputBaseInputOverridesResolver\n})(({\n theme,\n ownerState\n}) => _extends({\n padding: '16.5px 14px'\n}, !theme.vars && {\n '&:-webkit-autofill': {\n WebkitBoxShadow: theme.palette.mode === 'light' ? null : '0 0 0 100px #266798 inset',\n WebkitTextFillColor: theme.palette.mode === 'light' ? null : '#fff',\n caretColor: theme.palette.mode === 'light' ? null : '#fff',\n borderRadius: 'inherit'\n }\n}, theme.vars && {\n '&:-webkit-autofill': {\n borderRadius: 'inherit'\n },\n [theme.getColorSchemeSelector('dark')]: {\n '&:-webkit-autofill': {\n WebkitBoxShadow: '0 0 0 100px #266798 inset',\n WebkitTextFillColor: '#fff',\n caretColor: '#fff'\n }\n }\n}, ownerState.size === 'small' && {\n padding: '8.5px 14px'\n}, ownerState.multiline && {\n padding: 0\n}, ownerState.startAdornment && {\n paddingLeft: 0\n}, ownerState.endAdornment && {\n paddingRight: 0\n}));\nconst OutlinedInput = /*#__PURE__*/React.forwardRef(function OutlinedInput(inProps, ref) {\n var _ref, _slots$root, _ref2, _slots$input, _React$Fragment;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiOutlinedInput'\n });\n const {\n components = {},\n fullWidth = false,\n inputComponent = 'input',\n label,\n multiline = false,\n notched,\n slots = {},\n type = 'text'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const classes = useUtilityClasses(props);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['required']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n disabled: fcs.disabled,\n error: fcs.error,\n focused: fcs.focused,\n formControl: muiFormControl,\n fullWidth,\n hiddenLabel: fcs.hiddenLabel,\n multiline,\n size: fcs.size,\n type\n });\n const RootSlot = (_ref = (_slots$root = slots.root) != null ? _slots$root : components.Root) != null ? _ref : OutlinedInputRoot;\n const InputSlot = (_ref2 = (_slots$input = slots.input) != null ? _slots$input : components.Input) != null ? _ref2 : OutlinedInputInput;\n return /*#__PURE__*/_jsx(InputBase, _extends({\n slots: {\n root: RootSlot,\n input: InputSlot\n },\n renderSuffix: state => /*#__PURE__*/_jsx(NotchedOutlineRoot, {\n ownerState: ownerState,\n className: classes.notchedOutline,\n label: label != null && label !== '' && fcs.required ? _React$Fragment || (_React$Fragment = /*#__PURE__*/_jsxs(React.Fragment, {\n children: [label, \"\\u2009\", '*']\n })) : label,\n notched: typeof notched !== 'undefined' ? notched : Boolean(state.startAdornment || state.filled || state.focused)\n }),\n fullWidth: fullWidth,\n inputComponent: inputComponent,\n multiline: multiline,\n ref: ref,\n type: type\n }, other, {\n classes: _extends({}, classes, {\n notchedOutline: null\n })\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? OutlinedInput.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * This prop helps users to fill forms faster, especially on mobile devices.\n * The name can be confusing, as it's more like an autofill.\n * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).\n */\n autoComplete: PropTypes.string,\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * The prop defaults to the value (`'primary'`) inherited from the parent FormControl component.\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['primary', 'secondary']), PropTypes.string]),\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `slots` prop.\n * It's recommended to use the `slots` prop instead.\n *\n * @default {}\n */\n components: PropTypes.shape({\n Input: PropTypes.elementType,\n Root: PropTypes.elementType\n }),\n /**\n * The default value. Use when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * If `true`, the component is disabled.\n * The prop defaults to the value (`false`) inherited from the parent FormControl component.\n */\n disabled: PropTypes.bool,\n /**\n * End `InputAdornment` for this component.\n */\n endAdornment: PropTypes.node,\n /**\n * If `true`, the `input` will indicate an error.\n * The prop defaults to the value (`false`) inherited from the parent FormControl component.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` will take up the full width of its container.\n * @default false\n */\n fullWidth: PropTypes.bool,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * The component used for the `input` element.\n * Either a string to use a HTML element or a component.\n * @default 'input'\n */\n inputComponent: PropTypes.elementType,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n * @default {}\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * The label of the `input`. It is only used for layout. The actual labelling\n * is handled by `InputLabel`.\n */\n label: PropTypes.node,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n * The prop defaults to the value (`'none'`) inherited from the parent FormControl component.\n */\n margin: PropTypes.oneOf(['dense', 'none']),\n /**\n * Maximum number of rows to display when multiline option is set to true.\n */\n maxRows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * Minimum number of rows to display when multiline option is set to true.\n */\n minRows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * If `true`, a [TextareaAutosize](/material-ui/react-textarea-autosize/) element is rendered.\n * @default false\n */\n multiline: PropTypes.bool,\n /**\n * Name attribute of the `input` element.\n */\n name: PropTypes.string,\n /**\n * If `true`, the outline is notched to accommodate the label.\n */\n notched: PropTypes.bool,\n /**\n * Callback fired when the value is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n */\n onChange: PropTypes.func,\n /**\n * The short hint displayed in the `input` before the user enters a value.\n */\n placeholder: PropTypes.string,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n * The prop defaults to the value (`false`) inherited from the parent FormControl component.\n */\n required: PropTypes.bool,\n /**\n * Number of rows to display when multiline option is set to true.\n */\n rows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `components` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slots: PropTypes.shape({\n input: PropTypes.elementType,\n root: PropTypes.elementType\n }),\n /**\n * Start `InputAdornment` for this component.\n */\n startAdornment: PropTypes.node,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Form_%3Cinput%3E_types).\n * @default 'text'\n */\n type: PropTypes.string,\n /**\n * The value of the `input` element, required for a controlled component.\n */\n value: PropTypes.any\n} : void 0;\nOutlinedInput.muiName = 'Input';\nexport default OutlinedInput;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nimport { inputBaseClasses } from '../InputBase';\nexport function getOutlinedInputUtilityClass(slot) {\n return generateUtilityClass('MuiOutlinedInput', slot);\n}\nconst outlinedInputClasses = _extends({}, inputBaseClasses, generateUtilityClasses('MuiOutlinedInput', ['root', 'notchedOutline', 'input']));\nexport default outlinedInputClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getNativeSelectUtilityClasses(slot) {\n return generateUtilityClass('MuiNativeSelect', slot);\n}\nconst nativeSelectClasses = generateUtilityClasses('MuiNativeSelect', ['root', 'select', 'multiple', 'filled', 'outlined', 'standard', 'disabled', 'icon', 'iconOpen', 'iconFilled', 'iconOutlined', 'iconStandard', 'nativeInput', 'error']);\nexport default nativeSelectClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"disabled\", \"error\", \"IconComponent\", \"inputRef\", \"variant\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport capitalize from '../utils/capitalize';\nimport nativeSelectClasses, { getNativeSelectUtilityClasses } from './nativeSelectClasses';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n variant,\n disabled,\n multiple,\n open,\n error\n } = ownerState;\n const slots = {\n select: ['select', variant, disabled && 'disabled', multiple && 'multiple', error && 'error'],\n icon: ['icon', `icon${capitalize(variant)}`, open && 'iconOpen', disabled && 'disabled']\n };\n return composeClasses(slots, getNativeSelectUtilityClasses, classes);\n};\nexport const nativeSelectSelectStyles = ({\n ownerState,\n theme\n}) => _extends({\n MozAppearance: 'none',\n // Reset\n WebkitAppearance: 'none',\n // Reset\n // When interacting quickly, the text can end up selected.\n // Native select can't be selected either.\n userSelect: 'none',\n borderRadius: 0,\n // Reset\n cursor: 'pointer',\n '&:focus': _extends({}, theme.vars ? {\n backgroundColor: `rgba(${theme.vars.palette.common.onBackgroundChannel} / 0.05)`\n } : {\n backgroundColor: theme.palette.mode === 'light' ? 'rgba(0, 0, 0, 0.05)' : 'rgba(255, 255, 255, 0.05)'\n }, {\n borderRadius: 0 // Reset Chrome style\n }),\n\n // Remove IE11 arrow\n '&::-ms-expand': {\n display: 'none'\n },\n [`&.${nativeSelectClasses.disabled}`]: {\n cursor: 'default'\n },\n '&[multiple]': {\n height: 'auto'\n },\n '&:not([multiple]) option, &:not([multiple]) optgroup': {\n backgroundColor: (theme.vars || theme).palette.background.paper\n },\n // Bump specificity to allow extending custom inputs\n '&&&': {\n paddingRight: 24,\n minWidth: 16 // So it doesn't collapse.\n }\n}, ownerState.variant === 'filled' && {\n '&&&': {\n paddingRight: 32\n }\n}, ownerState.variant === 'outlined' && {\n borderRadius: (theme.vars || theme).shape.borderRadius,\n '&:focus': {\n borderRadius: (theme.vars || theme).shape.borderRadius // Reset the reset for Chrome style\n },\n\n '&&&': {\n paddingRight: 32\n }\n});\nconst NativeSelectSelect = styled('select', {\n name: 'MuiNativeSelect',\n slot: 'Select',\n shouldForwardProp: rootShouldForwardProp,\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.select, styles[ownerState.variant], ownerState.error && styles.error, {\n [`&.${nativeSelectClasses.multiple}`]: styles.multiple\n }];\n }\n})(nativeSelectSelectStyles);\nexport const nativeSelectIconStyles = ({\n ownerState,\n theme\n}) => _extends({\n // We use a position absolute over a flexbox in order to forward the pointer events\n // to the input and to support wrapping tags..\n position: 'absolute',\n right: 0,\n top: 'calc(50% - .5em)',\n // Center vertically, height is 1em\n pointerEvents: 'none',\n // Don't block pointer events on the select under the icon.\n color: (theme.vars || theme).palette.action.active,\n [`&.${nativeSelectClasses.disabled}`]: {\n color: (theme.vars || theme).palette.action.disabled\n }\n}, ownerState.open && {\n transform: 'rotate(180deg)'\n}, ownerState.variant === 'filled' && {\n right: 7\n}, ownerState.variant === 'outlined' && {\n right: 7\n});\nconst NativeSelectIcon = styled('svg', {\n name: 'MuiNativeSelect',\n slot: 'Icon',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.icon, ownerState.variant && styles[`icon${capitalize(ownerState.variant)}`], ownerState.open && styles.iconOpen];\n }\n})(nativeSelectIconStyles);\n\n/**\n * @ignore - internal component.\n */\nconst NativeSelectInput = /*#__PURE__*/React.forwardRef(function NativeSelectInput(props, ref) {\n const {\n className,\n disabled,\n error,\n IconComponent,\n inputRef,\n variant = 'standard'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n disabled,\n variant,\n error\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(React.Fragment, {\n children: [/*#__PURE__*/_jsx(NativeSelectSelect, _extends({\n ownerState: ownerState,\n className: clsx(classes.select, className),\n disabled: disabled,\n ref: inputRef || ref\n }, other)), props.multiple ? null : /*#__PURE__*/_jsx(NativeSelectIcon, {\n as: IconComponent,\n ownerState: ownerState,\n className: classes.icon\n })]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? NativeSelectInput.propTypes = {\n /**\n * The option elements to populate the select with.\n * Can be some `
\n
\n );\n};\n\nexport default withStyles(styles)(CommentBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useCallback, useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { IElementValue } from \"../../Configurations/types\";\nimport {\n formFieldStyles,\n modalBasic,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport CommentBoxWrapper from \"../../Common/FormComponents/CommentBoxWrapper/CommentBoxWrapper\";\nimport { Switch, InputBox, Grid, Box, ReadBox, RadioGroup } from \"mds\";\n\ninterface IConfMySqlProps {\n onChange: (newValue: IElementValue[]) => void;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalBasic,\n ...formFieldStyles,\n });\n\nconst ConfMySql = ({ onChange, classes }: IConfMySqlProps) => {\n //Local States\n const [useDsnString, setUseDsnString] = useState(false);\n const [dsnString, setDsnString] = useState(\"\");\n const [host, setHostname] = useState(\"\");\n const [dbName, setDbName] = useState(\"\");\n const [port, setPort] = useState(\"\");\n const [user, setUser] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n\n const [table, setTable] = useState(\"\");\n const [format, setFormat] = useState(\"namespace\");\n const [queueDir, setQueueDir] = useState(\"\");\n const [queueLimit, setQueueLimit] = useState(\"\");\n const [comment, setComment] = useState(\"\");\n\n // dsn_string* (string) MySQL data-source-name connection string e.g. \":@tcp(:)/\"\n // table* (string) DB table name to store/update events, table is auto-created\n // format* (namespace*|access) 'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\n // queue_dir (path) staging dir for undelivered messages e.g. '/home/events'\n // queue_limit (number) maximum limit for undelivered messages, defaults to '100000'\n // comment (sentence) optionally add a comment to this setting\n\n const parseDsnString = (\n input: string,\n keys: string[],\n ): Map => {\n let kvFields: Map = new Map();\n const regex = /(.*?):(.*?)@tcp\\((.*?):(.*?)\\)\\/(.*?)$/gm;\n let m;\n\n while ((m = regex.exec(input)) !== null) {\n // This is necessary to avoid infinite loops with zero-width matches\n if (m.index === regex.lastIndex) {\n regex.lastIndex++;\n }\n\n kvFields.set(\"user\", m[1]);\n kvFields.set(\"password\", m[2]);\n kvFields.set(\"host\", m[3]);\n kvFields.set(\"port\", m[4]);\n kvFields.set(\"dbname\", m[5]);\n }\n\n return kvFields;\n };\n\n const configToDsnString = useCallback((): string => {\n return `${user}:${password}@tcp(${host}:${port})/${dbName}`;\n }, [user, password, host, port, dbName]);\n\n useEffect(() => {\n if (dsnString !== \"\") {\n const formValues = [\n { key: \"dsn_string\", value: dsnString },\n { key: \"table\", value: table },\n { key: \"format\", value: format },\n { key: \"queue_dir\", value: queueDir },\n { key: \"queue_limit\", value: queueLimit },\n { key: \"comment\", value: comment },\n ];\n\n onChange(formValues);\n }\n }, [dsnString, table, format, queueDir, queueLimit, comment, onChange]);\n\n useEffect(() => {\n const cs = configToDsnString();\n setDsnString(cs);\n }, [user, dbName, password, port, host, setDsnString, configToDsnString]);\n\n const switcherChangeEvt = (event: React.ChangeEvent) => {\n if (event.target.checked) {\n // build dsn_string\n const cs = configToDsnString();\n setDsnString(cs);\n } else {\n // parse dsn_string\n const kv = parseDsnString(dsnString, [\n \"host\",\n \"port\",\n \"dbname\",\n \"user\",\n \"password\",\n ]);\n setHostname(kv.get(\"host\") ? kv.get(\"host\") + \"\" : \"\");\n setPort(kv.get(\"port\") ? kv.get(\"port\") + \"\" : \"\");\n setDbName(kv.get(\"dbname\") ? kv.get(\"dbname\") + \"\" : \"\");\n setUser(kv.get(\"user\") ? kv.get(\"user\") + \"\" : \"\");\n setPassword(kv.get(\"password\") ? kv.get(\"password\") + \"\" : \"\");\n }\n\n setUseDsnString(event.target.checked);\n };\n\n return (\n \n \n \n \n {useDsnString ? (\n \n \n ) => {\n setDsnString(e.target.value);\n }}\n />\n \n \n ) : (\n \n \n \n \n ) => {\n setHostname(e.target.value);\n }}\n />\n \n \n ) => {\n setDbName(e.target.value);\n }}\n />\n \n \n ) => {\n setPort(e.target.value);\n }}\n />\n \n\n \n ) => {\n setUser(e.target.value);\n }}\n />\n \n \n ) => {\n setPassword(e.target.value);\n }}\n />\n \n \n \n \n \n {dsnString}\n \n \n \n )}\n \n ) => {\n setTable(e.target.value);\n }}\n />\n \n \n {\n setFormat(e.target.value);\n }}\n tooltip=\"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\"\n selectorOptions={[\n { label: \"Namespace\", value: \"namespace\" },\n { label: \"Access\", value: \"access\" },\n ]}\n />\n \n \n ) => {\n setQueueDir(e.target.value);\n }}\n />\n \n \n ) => {\n setQueueLimit(e.target.value);\n }}\n />\n \n \n ) => {\n setComment(e.target.value);\n }}\n />\n \n \n );\n};\n\nexport default withStyles(styles)(ConfMySql);\n","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}"],"names":["withStyles","theme","createStyles","_objectSpread","fieldBasic","tooltipHelper","inputLabel","fontSize","margin","alignItems","paddingTop","flexWrap","display","textBoxContainer","flexGrow","position","cssOutlinedInput","borderColor","padding","rootContainer","minHeight","borderWidth","color","fontWeight","opacity","_ref","label","onChange","value","id","name","_ref$disabled","disabled","_ref$tooltip","tooltip","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","placeholder","classes","inputProps","_jsx","React","children","_jsxs","Grid","item","xs","className","concat","fieldContainer","errorInField","InputLabel","htmlFor","tooltipContainer","Tooltip","title","placement","HelpIcon","TextField","fullWidth","multiline","rows","helperText","InputLabelProps","shrink","InputProps","notchedOutline","root","variant","modalBasic","formFieldStyles","_useState","useState","_useState2","_slicedToArray","useDsnString","setUseDsnString","_useState3","_useState4","dsnString","setDsnString","_useState5","_useState6","host","setHostname","_useState7","_useState8","dbName","setDbName","_useState9","_useState10","port","setPort","_useState11","_useState12","user","setUser","_useState13","_useState14","password","setPassword","_useState15","_useState16","table","setTable","_useState17","_useState18","format","setFormat","_useState19","_useState20","queueDir","setQueueDir","_useState21","_useState22","queueLimit","setQueueLimit","_useState23","_useState24","comment","setComment","configToDsnString","useCallback","useEffect","key","cs","container","formFieldRow","Switch","checked","event","target","kv","input","keys","m","kvFields","Map","regex","exec","lastIndex","set","parseDsnString","get","InputBox","e","Box","withBorders","useBackground","sx","overflowY","height","marginBottom","type","ReadBox","multiLine","RadioGroup","currentValue","selectorOptions","CommentBoxWrapper","FormControlContext","undefined","formControlState","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","slot","overridesResolver","styles","ownerState","_extends","colorSecondary","filled","_ref2","_extends2","vars","palette","text","secondary","typography","body1","lineHeight","_defineProperty","formLabelClasses","focused","main","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","disableAnimation","animated","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","element","muiNames","indexOf","muiName"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/6363.b2794ff5.chunk.js b/portal-ui/build/static/js/6363.b2794ff5.chunk.js new file mode 100644 index 000000000..c4bf39c30 --- /dev/null +++ b/portal-ui/build/static/js/6363.b2794ff5.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[6363],{93840:function(e,r,t){var n=t(72791).createContext(void 0);r.Z=n},76147:function(e,r,t){function n(e){var r=e.props,t=e.states,n=e.muiFormControl;return t.reduce((function(e,t){return e[t]=r[t],n&&"undefined"===typeof r[t]&&(e[t]=n[t]),e}),{})}t.d(r,{Z:function(){return n}})},52930:function(e,r,t){t.d(r,{Z:function(){return i}});var n=t(72791),o=t(93840);function i(){return n.useContext(o.Z)}},17133:function(e,r,t){var n=t(4942),o=t(63366),i=t(87462),a=t(72791),s=t(28182),l=t(94419),c=t(76147),u=t(52930),d=t(14036),f=t(31402),h=t(66934),p=t(10843),m=t(80184),v=["children","className","color","component","disabled","error","filled","focused","required"],b=(0,h.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,r){var t=e.ownerState;return(0,i.Z)({},r.root,"secondary"===t.color&&r.colorSecondary,t.filled&&r.filled)}})((function(e){var r,t=e.theme,o=e.ownerState;return(0,i.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(r={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(r,"&.".concat(p.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(r,"&.".concat(p.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,n.Z)(r,"&.".concat(p.Z.error),{color:(t.vars||t).palette.error.main}),r))})),g=(0,h.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,r){return r.asterisk}})((function(e){var r=e.theme;return(0,n.Z)({},"&.".concat(p.Z.error),{color:(r.vars||r).palette.error.main})})),y=a.forwardRef((function(e,r){var t=(0,f.Z)({props:e,name:"MuiFormLabel"}),n=t.children,a=t.className,h=t.component,y=void 0===h?"label":h,w=(0,o.Z)(t,v),Z=(0,u.Z)(),x=(0,c.Z)({props:t,muiFormControl:Z,states:["color","required","focused","disabled","error","filled"]}),O=(0,i.Z)({},t,{color:x.color||"primary",component:y,disabled:x.disabled,error:x.error,filled:x.filled,focused:x.focused,required:x.required}),k=function(e){var r=e.classes,t=e.color,n=e.focused,o=e.disabled,i=e.error,a=e.filled,s=e.required,c={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",i&&"error",a&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",i&&"error"]};return(0,l.Z)(c,p.M,r)}(O);return(0,m.jsxs)(b,(0,i.Z)({as:y,ownerState:O,className:(0,s.Z)(k.root,a),ref:r},w,{children:[n,x.required&&(0,m.jsxs)(g,{ownerState:O,"aria-hidden":!0,className:k.asterisk,children:["\u2009","*"]})]}))}));r.Z=y},10843:function(e,r,t){t.d(r,{M:function(){return i}});var n=t(75878),o=t(21217);function i(e){return(0,o.Z)("MuiFormLabel",e)}var a=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);r.Z=a},30829:function(e,r,t){t.d(r,{Z:function(){return Z}});var n=t(4942),o=t(63366),i=t(87462),a=t(72791),s=t(94419),l=t(28182),c=t(76147),u=t(52930),d=t(17133),f=t(10843),h=t(31402),p=t(66934),m=t(75878),v=t(21217);function b(e){return(0,v.Z)("MuiInputLabel",e)}(0,m.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var g=t(80184),y=["disableAnimation","margin","shrink","variant","className"],w=(0,p.ZP)(d.Z,{shouldForwardProp:function(e){return(0,p.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,r){var t=e.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),r.asterisk),r.root,t.formControl&&r.formControl,"small"===t.size&&r.sizeSmall,t.shrink&&r.shrink,!t.disableAnimation&&r.animated,r[t.variant]]}})((function(e){var r=e.theme,t=e.ownerState;return(0,i.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:r.transitions.create(["color","transform","max-width"],{duration:r.transitions.duration.shorter,easing:r.transitions.easing.easeOut})},"filled"===t.variant&&(0,i.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,i.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,i.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),Z=a.forwardRef((function(e,r){var t=(0,h.Z)({name:"MuiInputLabel",props:e}),n=t.disableAnimation,a=void 0!==n&&n,d=t.shrink,f=t.className,p=(0,o.Z)(t,y),m=(0,u.Z)(),v=d;"undefined"===typeof v&&m&&(v=m.filled||m.focused||m.adornedStart);var Z=(0,c.Z)({props:t,muiFormControl:m,states:["size","variant","required"]}),x=(0,i.Z)({},t,{disableAnimation:a,formControl:m,shrink:v,size:Z.size,variant:Z.variant,required:Z.required}),O=function(e){var r=e.classes,t=e.formControl,n=e.size,o=e.shrink,a={root:["root",t&&"formControl",!e.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},l=(0,s.Z)(a,b,r);return(0,i.Z)({},r,l)}(x);return(0,g.jsx)(w,(0,i.Z)({"data-shrink":v,ownerState:x,ref:r,className:(0,l.Z)(O.root,f)},p,{classes:O}))}))},19103:function(e,r,t){t.d(r,{Z:function(){return o}});var n=t(72791);var o=function(e,r){return n.isValidElement(e)&&-1!==r.indexOf(e.type.muiName)}},20601:function(e,r,t){t.d(r,{h:function(){return R}});var n=t(81694),o=t.n(n),i=t(72791),a=t(54164),s=t(48573),l=t.n(s),c=t(33038),u=t.n(c),d=function(e,r){return d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var t in r)r.hasOwnProperty(t)&&(e[t]=r[t])},d(e,r)};function f(e,r){function t(){this.constructor=e}d(e,r),e.prototype=null===r?Object.create(r):(t.prototype=r.prototype,new t)}function h(e,r){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&r.indexOf(n)<0&&(t[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);oe.length)&&(r=e.length);for(var t=0,n=new Array(r);t0,"The aspect(%s) must be greater than zero.",t);var n=(0,w.hU)(l)?e:l,o=(0,w.hU)(u)?r:u;return t&&t>0&&(n?o=n/t:o&&(n=o*t),p&&o>p&&(o=p)),(0,Z.Z)(n>0||o>0,"The width(%s) and height(%s) of chart should be greater than 0,\n please check the style of container, or the props width(%s) and height(%s),\n or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the\n height and width.",n,o,l,u,f,h,t),(0,i.cloneElement)(m,{width:n,height:o})}),[t,m,u,p,h,f,E,l]);(0,i.useEffect)((function(){var e=M();e&&H(e)}),[M]);var W={width:l,height:u,minWidth:f,minHeight:h,maxHeight:p};return i.createElement(y,{handleWidth:!0,handleHeight:!0,onResize:A,targetRef:S,refreshMode:b>0?"debounce":void 0,refreshRate:b},i.createElement("div",x({},null!=g?{id:"".concat(g)}:{},{className:o()("recharts-responsive-container",k),style:W,ref:S}),C))}))}}]); +//# sourceMappingURL=6363.b2794ff5.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/6363.b2794ff5.chunk.js.map b/portal-ui/build/static/js/6363.b2794ff5.chunk.js.map new file mode 100644 index 000000000..36d588494 --- /dev/null +++ b/portal-ui/build/static/js/6363.b2794ff5.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/6363.b2794ff5.chunk.js","mappings":"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","sources":["../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/react-resize-detector/node_modules/tslib/tslib.es6.js","../node_modules/react-resize-detector/src/utils.ts","../node_modules/react-resize-detector/src/ResizeDetector.tsx","../node_modules/react-resize-detector/src/useResizeDetector.ts","../node_modules/recharts/es6/component/ResponsiveContainer.js"],"sourcesContent":["import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import debounce from 'lodash/debounce';\nimport throttle from 'lodash/throttle';\nimport type { DebouncedFunc } from 'lodash';\n\nimport { Props, ReactResizeDetectorDimensions } from './types';\n\nexport type PatchedResizeObserverCallback = DebouncedFunc | ResizeObserverCallback;\n\nexport const patchResizeHandler = (\n resizeCallback: ResizeObserverCallback,\n refreshMode: Props['refreshMode'],\n refreshRate: Props['refreshRate'],\n refreshOptions: Props['refreshOptions']\n): PatchedResizeObserverCallback => {\n switch (refreshMode) {\n case 'debounce':\n return debounce(resizeCallback, refreshRate, refreshOptions);\n case 'throttle':\n return throttle(resizeCallback, refreshRate, refreshOptions);\n default:\n return resizeCallback;\n }\n};\n\nexport const isFunction = (fn: unknown): boolean => typeof fn === 'function';\n\nexport const isSSR = (): boolean => typeof window === 'undefined';\n\nexport const isDOMElement = (element: unknown): boolean =>\n element instanceof Element || element instanceof HTMLDocument;\n\nexport const createNotifier =\n (\n setSize: React.Dispatch>,\n handleWidth: boolean,\n handleHeight: boolean\n ) =>\n ({ width, height }: ReactResizeDetectorDimensions): void => {\n setSize(prev => {\n if (prev.width === width && prev.height === height) {\n // skip if dimensions haven't changed\n return prev;\n }\n\n if ((prev.width === width && !handleHeight) || (prev.height === height && !handleWidth)) {\n // process `handleHeight/handleWidth` props\n return prev;\n }\n\n return { width, height };\n });\n };\n","import React, { PureComponent, isValidElement, cloneElement, createRef, ReactNode, ReactElement } from 'react';\nimport { findDOMNode } from 'react-dom';\n\nimport { patchResizeHandler, isFunction, isSSR, isDOMElement, createNotifier } from './utils';\nimport { ReactResizeDetectorDimensions, ResizeDetectorProps, ChildFunctionProps } from './types';\n\nclass ResizeDetector extends PureComponent<\n ResizeDetectorProps,\n ReactResizeDetectorDimensions\n> {\n skipOnMount: boolean | undefined;\n targetRef;\n observableElement;\n resizeHandler;\n resizeObserver;\n constructor(props: ResizeDetectorProps) {\n super(props);\n\n const { skipOnMount, refreshMode, refreshRate = 1000, refreshOptions } = props;\n\n this.state = {\n width: undefined,\n height: undefined\n };\n\n this.skipOnMount = skipOnMount;\n this.targetRef = createRef();\n this.observableElement = null;\n\n if (isSSR()) {\n return;\n }\n\n this.resizeHandler = patchResizeHandler(this.createResizeHandler, refreshMode, refreshRate, refreshOptions);\n this.resizeObserver = new window.ResizeObserver(this.resizeHandler);\n }\n\n componentDidMount(): void {\n this.attachObserver();\n }\n\n componentDidUpdate(): void {\n this.attachObserver();\n }\n\n componentWillUnmount(): void {\n if (isSSR()) {\n return;\n }\n this.observableElement = null;\n this.resizeObserver.disconnect();\n this.cancelHandler();\n }\n\n cancelHandler = (): void => {\n if (this.resizeHandler && this.resizeHandler.cancel) {\n // cancel debounced handler\n this.resizeHandler.cancel();\n this.resizeHandler = null;\n }\n };\n\n attachObserver = (): void => {\n const { targetRef, observerOptions } = this.props;\n\n if (isSSR()) {\n return;\n }\n\n if (targetRef && targetRef.current) {\n this.targetRef.current = targetRef.current;\n }\n\n const element = this.getElement();\n if (!element) {\n // can't find element to observe\n return;\n }\n\n if (this.observableElement && this.observableElement === element) {\n // element is already observed\n return;\n }\n\n this.observableElement = element;\n this.resizeObserver.observe(element, observerOptions);\n };\n\n getElement = (): Element | Text | null => {\n const { querySelector, targetDomEl } = this.props;\n\n if (isSSR()) return null;\n\n // in case we pass a querySelector\n if (querySelector) return document.querySelector(querySelector);\n // in case we pass a DOM element\n if (targetDomEl && isDOMElement(targetDomEl)) return targetDomEl;\n // in case we pass a React ref using React.createRef()\n if (this.targetRef && isDOMElement(this.targetRef.current)) return this.targetRef.current;\n\n // the worse case when we don't receive any information from the parent and the library doesn't add any wrappers\n // we have to use a deprecated `findDOMNode` method in order to find a DOM element to attach to\n const currentElement = findDOMNode(this);\n\n if (!currentElement) return null;\n\n const renderType = this.getRenderType();\n switch (renderType) {\n case 'renderProp':\n return currentElement;\n case 'childFunction':\n return currentElement;\n case 'child':\n return currentElement;\n case 'childArray':\n return currentElement;\n default:\n return currentElement.parentElement;\n }\n };\n\n createResizeHandler: ResizeObserverCallback = (entries: ResizeObserverEntry[]): void => {\n const { handleWidth = true, handleHeight = true, onResize } = this.props;\n\n if (!handleWidth && !handleHeight) return;\n\n const notifyResize = createNotifier(\n setStateFunc => this.setState(setStateFunc, () => onResize?.(this.state.width, this.state.height)),\n handleWidth,\n handleHeight\n );\n\n entries.forEach(entry => {\n const { width, height } = (entry && entry.contentRect) || {};\n\n const shouldSetSize = !this.skipOnMount && !isSSR();\n if (shouldSetSize) {\n notifyResize({ width, height });\n }\n\n this.skipOnMount = false;\n });\n };\n\n getRenderType = (): string => {\n const { render, children } = this.props;\n if (isFunction(render)) {\n // DEPRECATED. Use `Child Function Pattern` instead\n return 'renderProp';\n }\n\n if (isFunction(children)) {\n return 'childFunction';\n }\n\n if (isValidElement(children)) {\n return 'child';\n }\n\n if (Array.isArray(children)) {\n // DEPRECATED. Wrap children with a single parent\n return 'childArray';\n }\n\n // DEPRECATED. Use `Child Function Pattern` instead\n return 'parent';\n };\n\n render() {\n const { render, children, nodeType: WrapperTag = 'div' } = this.props;\n const { width, height } = this.state;\n\n const childProps = { width, height, targetRef: this.targetRef };\n const renderType = this.getRenderType();\n\n switch (renderType) {\n case 'renderProp':\n return render?.(childProps);\n case 'childFunction': {\n const childFunction = children as (props: ChildFunctionProps) => ReactNode;\n return childFunction?.(childProps);\n }\n case 'child': {\n // @TODO bug prone logic\n const child = children as ReactElement;\n if (child.type && typeof child.type === 'string') {\n // child is a native DOM elements such as div, span etc\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { targetRef, ...nativeProps } = childProps;\n return cloneElement(child, nativeProps);\n }\n // class or functional component otherwise\n return cloneElement(child, childProps);\n }\n case 'childArray': {\n const childArray = children as ReactElement[];\n return childArray.map(el => !!el && cloneElement(el, childProps));\n }\n default:\n return ;\n }\n }\n}\n\nexport default ResizeDetector;\n","import { useLayoutEffect, useEffect, useState, useRef } from 'react';\nimport type { MutableRefObject } from 'react';\nimport type { DebouncedFunc } from 'lodash';\n\nimport { patchResizeHandler, createNotifier, isSSR } from './utils';\n\nimport type { PatchedResizeObserverCallback } from './utils';\nimport type { Props, ReactResizeDetectorDimensions } from './types';\n\nconst useEnhancedEffect = isSSR() ? useEffect : useLayoutEffect;\n\nexport interface useResizeDetectorProps extends Props {\n targetRef?: MutableRefObject;\n}\n\nfunction useResizeDetector({\n skipOnMount = false,\n refreshMode,\n refreshRate = 1000,\n refreshOptions,\n handleWidth = true,\n handleHeight = true,\n targetRef,\n observerOptions,\n onResize\n}: useResizeDetectorProps = {}): UseResizeDetectorReturn {\n const skipResize = useRef(skipOnMount);\n const localRef = useRef(null);\n const resizeHandler = useRef();\n\n const ref = targetRef ?? localRef;\n\n const [size, setSize] = useState({\n width: undefined,\n height: undefined\n });\n\n useEnhancedEffect(() => {\n if (!handleWidth && !handleHeight) return;\n\n const notifyResize = createNotifier(setSize, handleWidth, handleHeight);\n\n const resizeCallback: ResizeObserverCallback = (entries: ResizeObserverEntry[]) => {\n if (!handleWidth && !handleHeight) return;\n\n entries.forEach(entry => {\n const { width, height } = (entry && entry.contentRect) || {};\n\n const shouldSetSize = !skipResize.current;\n if (shouldSetSize) {\n notifyResize({ width, height });\n }\n\n skipResize.current = false;\n });\n };\n\n resizeHandler.current = patchResizeHandler(resizeCallback, refreshMode, refreshRate, refreshOptions);\n\n const resizeObserver = new window.ResizeObserver(resizeHandler.current);\n\n if (ref.current) {\n resizeObserver.observe(ref.current, observerOptions);\n }\n\n return () => {\n resizeObserver.disconnect();\n (resizeHandler.current as DebouncedFunc).cancel?.();\n };\n }, [refreshMode, refreshRate, refreshOptions, handleWidth, handleHeight, observerOptions, ref.current]);\n\n useEffect(() => {\n onResize?.(size.width, size.height);\n }, [size]);\n\n return { ref, ...size };\n}\n\nexport default useResizeDetector;\n\nexport interface UseResizeDetectorReturn extends ReactResizeDetectorDimensions {\n ref: MutableRefObject;\n}\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/**\n * @fileOverview Wrapper component to make charts adapt to the size of parent * DOM\n */\nimport classNames from 'classnames';\nimport React, { forwardRef, cloneElement, useState, useImperativeHandle, useRef, useEffect, useCallback, useMemo } from 'react';\nimport ReactResizeDetector from 'react-resize-detector';\nimport { isPercent } from '../util/DataUtils';\nimport { warn } from '../util/LogUtils';\nexport var ResponsiveContainer = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var aspect = _ref.aspect,\n _ref$initialDimension = _ref.initialDimension,\n initialDimension = _ref$initialDimension === void 0 ? {\n width: -1,\n height: -1\n } : _ref$initialDimension,\n _ref$width = _ref.width,\n width = _ref$width === void 0 ? '100%' : _ref$width,\n _ref$height = _ref.height,\n height = _ref$height === void 0 ? '100%' : _ref$height,\n _ref$minWidth = _ref.minWidth,\n minWidth = _ref$minWidth === void 0 ? 0 : _ref$minWidth,\n minHeight = _ref.minHeight,\n maxHeight = _ref.maxHeight,\n children = _ref.children,\n _ref$debounce = _ref.debounce,\n debounce = _ref$debounce === void 0 ? 0 : _ref$debounce,\n id = _ref.id,\n className = _ref.className,\n onResize = _ref.onResize;\n var _useState = useState({\n containerWidth: initialDimension.width,\n containerHeight: initialDimension.height\n }),\n _useState2 = _slicedToArray(_useState, 2),\n sizes = _useState2[0],\n setSizes = _useState2[1];\n var containerRef = useRef(null);\n useImperativeHandle(ref, function () {\n return containerRef;\n }, [containerRef]);\n var getContainerSize = useCallback(function () {\n if (!containerRef.current) {\n return null;\n }\n return {\n containerWidth: containerRef.current.clientWidth,\n containerHeight: containerRef.current.clientHeight\n };\n }, []);\n var updateDimensionsImmediate = useCallback(function () {\n var newSize = getContainerSize();\n if (newSize) {\n var containerWidth = newSize.containerWidth,\n containerHeight = newSize.containerHeight;\n if (onResize) onResize(containerWidth, containerHeight);\n setSizes(function (currentSizes) {\n var oldWidth = currentSizes.containerWidth,\n oldHeight = currentSizes.containerHeight;\n if (containerWidth !== oldWidth || containerHeight !== oldHeight) {\n return {\n containerWidth: containerWidth,\n containerHeight: containerHeight\n };\n }\n return currentSizes;\n });\n }\n }, [getContainerSize, onResize]);\n var chartContent = useMemo(function () {\n var containerWidth = sizes.containerWidth,\n containerHeight = sizes.containerHeight;\n if (containerWidth < 0 || containerHeight < 0) {\n return null;\n }\n warn(isPercent(width) || isPercent(height), \"The width(%s) and height(%s) are both fixed numbers,\\n maybe you don't need to use a ResponsiveContainer.\", width, height);\n warn(!aspect || aspect > 0, 'The aspect(%s) must be greater than zero.', aspect);\n var calculatedWidth = isPercent(width) ? containerWidth : width;\n var calculatedHeight = isPercent(height) ? containerHeight : height;\n if (aspect && aspect > 0) {\n // Preserve the desired aspect ratio\n if (calculatedWidth) {\n // Will default to using width for aspect ratio\n calculatedHeight = calculatedWidth / aspect;\n } else if (calculatedHeight) {\n // But we should also take height into consideration\n calculatedWidth = calculatedHeight * aspect;\n }\n\n // if maxHeight is set, overwrite if calculatedHeight is greater than maxHeight\n if (maxHeight && calculatedHeight > maxHeight) {\n calculatedHeight = maxHeight;\n }\n }\n warn(calculatedWidth > 0 || calculatedHeight > 0, \"The width(%s) and height(%s) of chart should be greater than 0,\\n please check the style of container, or the props width(%s) and height(%s),\\n or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the\\n height and width.\", calculatedWidth, calculatedHeight, width, height, minWidth, minHeight, aspect);\n return /*#__PURE__*/cloneElement(children, {\n width: calculatedWidth,\n height: calculatedHeight\n });\n }, [aspect, children, height, maxHeight, minHeight, minWidth, sizes, width]);\n useEffect(function () {\n var size = getContainerSize();\n if (size) {\n setSizes(size);\n }\n }, [getContainerSize]);\n var style = {\n width: width,\n height: height,\n minWidth: minWidth,\n minHeight: minHeight,\n maxHeight: maxHeight\n };\n return /*#__PURE__*/React.createElement(ReactResizeDetector, {\n handleWidth: true,\n handleHeight: true,\n onResize: updateDimensionsImmediate,\n targetRef: containerRef,\n refreshMode: debounce > 0 ? 'debounce' : undefined,\n refreshRate: debounce\n }, /*#__PURE__*/React.createElement(\"div\", _extends({}, id != null ? {\n id: \"\".concat(id)\n } : {}, {\n className: classNames('recharts-responsive-container', className),\n style: style,\n ref: containerRef\n }), chartContent));\n});"],"names":["FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","element","muiNames","indexOf","type","muiName","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","__rest","s","e","t","call","getOwnPropertySymbols","i","length","propertyIsEnumerable","patchResizeHandler","resizeCallback","refreshMode","refreshRate","refreshOptions","debounce","throttle","isFunction","fn","isSSR","window","isDOMElement","Element","HTMLDocument","createNotifier","setSize","handleWidth","handleHeight","_a","width","height","prev","ResizeDetector","_super","_this","cancelHandler","resizeHandler","cancel","attachObserver","targetRef","observerOptions","current","getElement","observableElement","resizeObserver","observe","querySelector","targetDomEl","document","currentElement","findDOMNode","getRenderType","parentElement","createResizeHandler","entries","_b","_c","onResize","notifyResize","setStateFunc","setState","forEach","entry","contentRect","skipOnMount","render","isValidElement","isArray","createRef","ResizeObserver","componentDidMount","componentDidUpdate","componentWillUnmount","disconnect","nodeType","WrapperTag","childProps","child","nativeProps","cloneElement","map","el","PureComponent","useEffect","useLayoutEffect","assign","bind","target","arguments","source","key","apply","_slicedToArray","arr","_arrayWithHoles","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","_iterableToArrayLimit","o","minLen","_arrayLikeToArray","n","toString","slice","from","test","_unsupportedIterableToArray","TypeError","_nonIterableRest","len","arr2","ResponsiveContainer","forwardRef","aspect","_ref$initialDimension","initialDimension","_ref$width","_ref$height","_ref$minWidth","minWidth","minHeight","maxHeight","_ref$debounce","id","_useState2","useState","containerWidth","containerHeight","sizes","setSizes","containerRef","useRef","useImperativeHandle","getContainerSize","useCallback","clientWidth","clientHeight","updateDimensionsImmediate","newSize","currentSizes","oldWidth","oldHeight","chartContent","useMemo","warn","isPercent","calculatedWidth","calculatedHeight","style","ReactResizeDetector","classNames"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/6389.f2af2345.chunk.js.map b/portal-ui/build/static/js/6389.f2af2345.chunk.js.map deleted file mode 100644 index 538de5dc2..000000000 --- a/portal-ui/build/static/js/6389.f2af2345.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/6389.f2af2345.chunk.js","mappings":"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","sources":["../node_modules/@mui/material/TableContainer/tableContainerClasses.js","../node_modules/@mui/material/TableContainer/TableContainer.js","screens/Console/Logs/ErrorLogs/LogLine.tsx","screens/Console/Logs/ErrorLogs/ErrorLogs.tsx","utils/wsUtils.ts","../node_modules/@mui/material/Collapse/collapseClasses.js","../node_modules/@mui/material/Collapse/Collapse.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@mui/utils/esm/createChainedFunction.js","../node_modules/es5-ext/global.js","../node_modules/websocket/lib/browser.js","../node_modules/websocket/lib/version.js"],"sourcesContent":["import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getTableContainerUtilityClass(slot) {\n return generateUtilityClass('MuiTableContainer', slot);\n}\nconst tableContainerClasses = generateUtilityClasses('MuiTableContainer', ['root']);\nexport default tableContainerClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"className\", \"component\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport { getTableContainerUtilityClass } from './tableContainerClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getTableContainerUtilityClass, classes);\n};\nconst TableContainerRoot = styled('div', {\n name: 'MuiTableContainer',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n width: '100%',\n overflowX: 'auto'\n});\nconst TableContainer = /*#__PURE__*/React.forwardRef(function TableContainer(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTableContainer'\n });\n const {\n className,\n component = 'div'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n component\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(TableContainerRoot, _extends({\n ref: ref,\n as: component,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? TableContainer.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component, normally `Table`.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default TableContainer;","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { Fragment, useState } from \"react\";\nimport { DateTime } from \"luxon\";\nimport TableRow from \"@mui/material/TableRow\";\nimport TableCell from \"@mui/material/TableCell\";\nimport Collapse from \"@mui/material/Collapse\";\nimport Box from \"@mui/material/Box\";\nimport Typography from \"@mui/material/Typography\";\nimport { LogMessage } from \"../types\";\nimport { BoxArrowDown, BoxArrowUp, WarnFilledIcon } from \"mds\";\n\nimport getByKey from \"lodash/get\";\n\nconst timestampDisplayFmt = \"HH:mm:ss ZZZZ MM/dd/yyyy\"; //make this same as server logs format.\nconst messageForConsoleMsg = (log: LogMessage) => {\n // regex for terminal colors like e.g. `[31;4m `\n const tColorRegex = /((\\[[0-9;]+m))/g;\n\n let fullMessage = log.ConsoleMsg;\n // remove the 0x1B character\n /* eslint-disable no-control-regex */\n fullMessage = fullMessage.replace(/\\x1B/g, \" \");\n /* eslint-enable no-control-regex */\n // get substring if there was a match for to split what\n // is going to be colored and what not, here we add color\n // only to the first match.\n fullMessage = fullMessage.replace(tColorRegex, \"\");\n return (\n \n \n
{fullMessage}
\n \n \n );\n};\nconst messageForError = (log: LogMessage) => {\n const dataStyle = {\n color: \"#C83B51\",\n fontWeight: 400,\n fontFamily: \"monospace\",\n fontSize: \"12px\",\n };\n const labelStyle = {\n fontFamily: \"monospace\",\n fontSize: \"12px\",\n };\n\n const getLogEntryKey = (keyPath: string) => {\n return getByKey(log, keyPath, \"\");\n };\n\n const logTime = DateTime.fromFormat(\n log.time.toString(),\n \"HH:mm:ss z MM/dd/yyyy\",\n {\n zone: \"UTC\",\n },\n );\n return (\n \n
\n API: \n {getLogEntryKey(\"api.name\")}\n
\n
\n Time: \n {logTime.toFormat(timestampDisplayFmt)}\n
\n
\n DeploymentID: \n {getLogEntryKey(\"deploymentid\")}\n
\n
\n RequestID: \n {getLogEntryKey(\"requestID\")}\n
\n
\n RemoteHost: \n {getLogEntryKey(\"remotehost\")}\n
\n
\n UserAgent: \n {getLogEntryKey(\"userAgent\")}\n
\n
\n Error: \n {getLogEntryKey(\"error.message\")}\n
\n
\n
\n Backtrace: \n
\n\n {(log.error.source || []).map((e: any, i: number) => {\n return (\n
\n {i}: \n {e}\n
\n );\n })}\n
\n );\n};\n\nconst LogLine = (props: { log: LogMessage }) => {\n const { log } = props;\n const [open, setOpen] = useState(false);\n\n const getLogLineKey = (keyPath: string) => {\n return getByKey(log, keyPath, \"\");\n };\n\n let logMessage = \"\";\n let consoleMsg = getLogLineKey(\"ConsoleMsg\");\n let errMsg = getLogLineKey(\"error.message\");\n if (consoleMsg !== \"\") {\n logMessage = consoleMsg;\n } else if (errMsg !== \"\") {\n logMessage = errMsg;\n }\n // remove any non ascii characters, exclude any control codes\n let titleLogMessage = (logMessage || \"\").replace(/━|┏|┓|┃|┗|┛/g, \"\");\n // remove any non ascii characters, exclude any control codes\n titleLogMessage = titleLogMessage.replace(/([^\\x20-\\x7F])/g, \"\");\n\n // regex for terminal colors like e.g. `[31;4m `\n const tColorRegex = /((\\[[0-9;]+m))/g;\n\n let fullMessage = ;\n if (consoleMsg !== \"\") {\n fullMessage = messageForConsoleMsg(log);\n } else if (errMsg !== \"\") {\n fullMessage = messageForError(log);\n }\n\n titleLogMessage = (titleLogMessage || \"\").replace(tColorRegex, \"\");\n\n const logTime = DateTime.fromFormat(\n log.time.toString(),\n \"HH:mm:ss z MM/dd/yyyy\",\n {\n zone: \"UTC\",\n },\n );\n const dateOfLine = logTime.toJSDate(); //DateTime.fromJSDate(log.time);\n\n let dateStr = {logTime.toFormat(timestampDisplayFmt)};\n\n if (dateOfLine.getFullYear() === 1) {\n dateStr = n/a;\n }\n\n return (\n \n *\": { borderBottom: \"unset\" },\n cursor: \"pointer\",\n borderLeft: \"0\",\n borderRight: \"0\",\n }}\n style={{ backgroundColor: \"#FDFDFD\" }}\n >\n setOpen(!open)}\n style={{ width: 280, color: \"#989898\", fontSize: 12 }}\n >\n \n \n
{dateStr}
\n \n \n setOpen(!open)}\n style={{ width: 200, color: \"#989898\", fontSize: 12 }}\n >\n \n {log.errKind}\n \n \n setOpen(!open)}>\n \n \n {titleLogMessage}\n \n \n \n setOpen(!open)} style={{ width: 40 }}>\n \n {open ? : }\n \n \n \n {open ? (\n \n \n \n
Log Details
\n
\n \n \n \n \n \n {fullMessage}\n \n \n \n \n \n
\n ) : null}\n
\n );\n};\n\nexport default LogLine;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { IMessageEvent, w3cwebsocket as W3CWebSocket } from \"websocket\";\nimport { Theme } from \"@mui/material/styles\";\nimport { Button, PageLayout } from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { useSelector } from \"react-redux\";\nimport { FormControl, Grid, InputBase, MenuItem, Select } from \"@mui/material\";\n\nimport { ErrorResponseHandler } from \"../../../../../src/common/types\";\nimport api from \"../../../../../src/common/api\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\n\nimport { wsProtocol } from \"../../../../utils/wsUtils\";\nimport {\n actionsTray,\n containerForHeader,\n inlineCheckboxes,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport SearchBox from \"../../Common/SearchBox\";\nimport Paper from \"@mui/material/Paper\";\nimport Table from \"@mui/material/Table\";\nimport TableBody from \"@mui/material/TableBody\";\nimport TableContainer from \"@mui/material/TableContainer\";\nimport LogLine from \"./LogLine\";\nimport {\n logMessageReceived,\n logResetMessages,\n setLogsStarted,\n} from \"../logsSlice\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../../HelpMenu\";\nimport { setHelpName } from \"../../../../systemSlice\";\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n logList: {\n background: \"#fff\",\n minHeight: 400,\n height: \"calc(100vh - 200px)\",\n overflow: \"auto\",\n fontSize: 13,\n borderRadius: 4,\n },\n logerror_tab: {\n color: \"#A52A2A\",\n paddingLeft: 25,\n },\n nodeField: {\n width: \"100%\",\n },\n ...actionsTray,\n actionsTray: {\n ...actionsTray.actionsTray,\n marginBottom: 0,\n },\n ...searchField,\n\n ...inlineCheckboxes,\n ...containerForHeader,\n }),\n);\n\nexport const SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n lineHeight: \"50px\",\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n \"& .MuiSelect-select:focus\": {\n backgroundColor: \"transparent\",\n },\n },\n }),\n)(InputBase);\n\nvar c: any = null;\n\nconst ErrorLogs = () => {\n const dispatch = useAppDispatch();\n const classes = useStyles();\n\n const messages = useSelector((state: AppState) => state.logs.logMessages);\n const logsStarted = useSelector((state: AppState) => state.logs.logsStarted);\n\n const [filter, setFilter] = useState(\"\");\n const [nodes, setNodes] = useState([\"\"]);\n const [selectedNode, setSelectedNode] = useState(\"all\");\n const [selectedUserAgent, setSelectedUserAgent] =\n useState(\"Select user agent\");\n const [userAgents, setUserAgents] = useState([\"All User Agents\"]);\n const [logType, setLogType] = useState(\"all\");\n const [loadingNodes, setLoadingNodes] = useState(false);\n\n const startLogs = () => {\n dispatch(logResetMessages());\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n // check if we are using base path, if not this always is `/`\n const baseLocation = new URL(document.baseURI);\n const baseUrl = baseLocation.pathname;\n\n c = new W3CWebSocket(\n `${wsProt}://${\n url.hostname\n }:${port}${baseUrl}ws/console/?logType=${logType}&node=${\n selectedNode === \"Select node\" ? \"\" : selectedNode\n }`,\n );\n let interval: any | null = null;\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n dispatch(setLogsStarted(true));\n c.send(\"ok\");\n interval = setInterval(() => {\n c.send(\"ok\");\n }, 10 * 1000);\n };\n c.onmessage = (message: IMessageEvent) => {\n // console.log(message.data.toString())\n // FORMAT: 00:35:17 UTC 01/01/2021\n\n let m: any = JSON.parse(message.data.toString());\n let isValidEntry = true;\n if (\n m.level === \"\" &&\n m.errKind === \"\" &&\n //@ts-ignore\n m.time === \"00:00:00 UTC 01/01/0001\" &&\n m.ConsoleMsg === \"\" &&\n m.node === \"\"\n ) {\n isValidEntry = false;\n }\n\n m.key = Math.random();\n if (userAgents.indexOf(m.userAgent) < 0 && m.userAgent !== undefined) {\n userAgents.push(m.userAgent);\n setUserAgents(userAgents);\n }\n if (isValidEntry) {\n dispatch(logMessageReceived(m));\n }\n };\n c.onclose = () => {\n clearInterval(interval);\n console.log(\"connection closed by server\");\n dispatch(setLogsStarted(false));\n };\n return () => {\n c.close(1000);\n clearInterval(interval);\n console.log(\"closing websockets\");\n dispatch(setLogsStarted(false));\n };\n }\n };\n\n const stopLogs = () => {\n if (c !== null && c !== undefined) {\n c.close(1000);\n dispatch(setLogsStarted(false));\n }\n };\n\n const filtLow = filter.toLowerCase();\n let filteredMessages = messages.filter((m) => {\n if (\n m.userAgent === selectedUserAgent ||\n selectedUserAgent === \"All User Agents\" ||\n selectedUserAgent === \"Select user agent\"\n ) {\n if (filter !== \"\") {\n if (m.ConsoleMsg.toLowerCase().indexOf(filtLow) >= 0) {\n return true;\n } else if (\n m.error &&\n m.error.source &&\n m.error.source.filter((x) => {\n return x.toLowerCase().indexOf(filtLow) >= 0;\n }).length > 0\n ) {\n return true;\n } else if (\n m.error &&\n m.error.message.toLowerCase().indexOf(filtLow) >= 0\n ) {\n return true;\n } else if (m.api && m.api.name.toLowerCase().indexOf(filtLow) >= 0) {\n return true;\n }\n return false;\n }\n return true;\n } else return false;\n });\n\n useEffect(() => {\n setLoadingNodes(true);\n api\n .invoke(\"GET\", `/api/v1/nodes`)\n .then((res: string[]) => {\n setNodes(res);\n // if (res.length > 0) {\n // setSelectedNode(res[0]);\n // }\n setLoadingNodes(false);\n })\n .catch((err: ErrorResponseHandler) => {\n setLoadingNodes(false);\n });\n }, []);\n\n useEffect(() => {\n dispatch(setHelpName(\"error_logs\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n } />\n\n \n \n \n {!loadingNodes ? (\n \n {\n setSelectedNode(e.target.value as string);\n }}\n className={classes.searchField}\n disabled={loadingNodes || logsStarted}\n input={}\n placeholder={\"Select Node\"}\n >\n \n All Nodes\n \n {nodes.map((aNode) => (\n \n {aNode}\n \n ))}\n \n \n ) : (\n

Loading nodes

\n )}\n
\n\n \n \n {\n setLogType(e.target.value as string);\n }}\n className={classes.searchField}\n disabled={loadingNodes || logsStarted}\n input={}\n placeholder={\"Select Log Type\"}\n >\n \n All Log Types\n \n \n MinIO\n \n \n Application\n \n \n \n \n \n {userAgents.length > 1 && (\n \n {\n setSelectedUserAgent(e.target.value as string);\n }}\n className={classes.searchField}\n disabled={userAgents.length < 1 || logsStarted}\n input={}\n >\n \n Select User Agent\n \n {userAgents.map((anAgent) => (\n \n {anAgent}\n \n ))}\n \n \n )}\n \n \n {!logsStarted && (\n \n )}\n {logsStarted && (\n \n )}\n
\n \n {\n setFilter(e);\n }}\n value={filter}\n />\n \n \n \n \n \n \n {filteredMessages.map((m) => {\n return ;\n })}\n \n
\n {filteredMessages.length === 0 && (\n
\n No logs to display\n
\n )}\n
\n \n
\n \n
\n
\n );\n};\n\nexport default ErrorLogs;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\n// Close codes for websockets defined in RFC 6455\nexport const WSCloseAbnormalClosure = 1006;\nexport const WSClosePolicyViolation = 1008;\nexport const WSCloseInternalServerErr = 1011;\n\nexport const wsProtocol = (protocol: string): string => {\n let wsProtocol = \"ws\";\n if (protocol === \"https:\") {\n wsProtocol = \"wss\";\n }\n return wsProtocol;\n};\n","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getCollapseUtilityClass(slot) {\n return generateUtilityClass('MuiCollapse', slot);\n}\nconst collapseClasses = generateUtilityClasses('MuiCollapse', ['root', 'horizontal', 'vertical', 'entered', 'hidden', 'wrapper', 'wrapperInner']);\nexport default collapseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"addEndListener\", \"children\", \"className\", \"collapsedSize\", \"component\", \"easing\", \"in\", \"onEnter\", \"onEntered\", \"onEntering\", \"onExit\", \"onExited\", \"onExiting\", \"orientation\", \"style\", \"timeout\", \"TransitionComponent\"];\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport { Transition } from 'react-transition-group';\nimport { elementTypeAcceptingRef } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { duration } from '../styles/createTransitions';\nimport { getTransitionProps } from '../transitions/utils';\nimport useTheme from '../styles/useTheme';\nimport { useForkRef } from '../utils';\nimport { getCollapseUtilityClass } from './collapseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n orientation,\n classes\n } = ownerState;\n const slots = {\n root: ['root', `${orientation}`],\n entered: ['entered'],\n hidden: ['hidden'],\n wrapper: ['wrapper', `${orientation}`],\n wrapperInner: ['wrapperInner', `${orientation}`]\n };\n return composeClasses(slots, getCollapseUtilityClass, classes);\n};\nconst CollapseRoot = styled('div', {\n name: 'MuiCollapse',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[ownerState.orientation], ownerState.state === 'entered' && styles.entered, ownerState.state === 'exited' && !ownerState.in && ownerState.collapsedSize === '0px' && styles.hidden];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n height: 0,\n overflow: 'hidden',\n transition: theme.transitions.create('height')\n}, ownerState.orientation === 'horizontal' && {\n height: 'auto',\n width: 0,\n transition: theme.transitions.create('width')\n}, ownerState.state === 'entered' && _extends({\n height: 'auto',\n overflow: 'visible'\n}, ownerState.orientation === 'horizontal' && {\n width: 'auto'\n}), ownerState.state === 'exited' && !ownerState.in && ownerState.collapsedSize === '0px' && {\n visibility: 'hidden'\n}));\nconst CollapseWrapper = styled('div', {\n name: 'MuiCollapse',\n slot: 'Wrapper',\n overridesResolver: (props, styles) => styles.wrapper\n})(({\n ownerState\n}) => _extends({\n // Hack to get children with a negative margin to not falsify the height computation.\n display: 'flex',\n width: '100%'\n}, ownerState.orientation === 'horizontal' && {\n width: 'auto',\n height: '100%'\n}));\nconst CollapseWrapperInner = styled('div', {\n name: 'MuiCollapse',\n slot: 'WrapperInner',\n overridesResolver: (props, styles) => styles.wrapperInner\n})(({\n ownerState\n}) => _extends({\n width: '100%'\n}, ownerState.orientation === 'horizontal' && {\n width: 'auto',\n height: '100%'\n}));\n\n/**\n * The Collapse transition is used by the\n * [Vertical Stepper](/material-ui/react-stepper/#vertical-stepper) StepContent component.\n * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.\n */\nconst Collapse = /*#__PURE__*/React.forwardRef(function Collapse(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiCollapse'\n });\n const {\n addEndListener,\n children,\n className,\n collapsedSize: collapsedSizeProp = '0px',\n component,\n easing,\n in: inProp,\n onEnter,\n onEntered,\n onEntering,\n onExit,\n onExited,\n onExiting,\n orientation = 'vertical',\n style,\n timeout = duration.standard,\n // eslint-disable-next-line react/prop-types\n TransitionComponent = Transition\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n orientation,\n collapsedSize: collapsedSizeProp\n });\n const classes = useUtilityClasses(ownerState);\n const theme = useTheme();\n const timer = React.useRef();\n const wrapperRef = React.useRef(null);\n const autoTransitionDuration = React.useRef();\n const collapsedSize = typeof collapsedSizeProp === 'number' ? `${collapsedSizeProp}px` : collapsedSizeProp;\n const isHorizontal = orientation === 'horizontal';\n const size = isHorizontal ? 'width' : 'height';\n React.useEffect(() => {\n return () => {\n clearTimeout(timer.current);\n };\n }, []);\n const nodeRef = React.useRef(null);\n const handleRef = useForkRef(ref, nodeRef);\n const normalizedTransitionCallback = callback => maybeIsAppearing => {\n if (callback) {\n const node = nodeRef.current;\n\n // onEnterXxx and onExitXxx callbacks have a different arguments.length value.\n if (maybeIsAppearing === undefined) {\n callback(node);\n } else {\n callback(node, maybeIsAppearing);\n }\n }\n };\n const getWrapperSize = () => wrapperRef.current ? wrapperRef.current[isHorizontal ? 'clientWidth' : 'clientHeight'] : 0;\n const handleEnter = normalizedTransitionCallback((node, isAppearing) => {\n if (wrapperRef.current && isHorizontal) {\n // Set absolute position to get the size of collapsed content\n wrapperRef.current.style.position = 'absolute';\n }\n node.style[size] = collapsedSize;\n if (onEnter) {\n onEnter(node, isAppearing);\n }\n });\n const handleEntering = normalizedTransitionCallback((node, isAppearing) => {\n const wrapperSize = getWrapperSize();\n if (wrapperRef.current && isHorizontal) {\n // After the size is read reset the position back to default\n wrapperRef.current.style.position = '';\n }\n const {\n duration: transitionDuration,\n easing: transitionTimingFunction\n } = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'enter'\n });\n if (timeout === 'auto') {\n const duration2 = theme.transitions.getAutoHeightDuration(wrapperSize);\n node.style.transitionDuration = `${duration2}ms`;\n autoTransitionDuration.current = duration2;\n } else {\n node.style.transitionDuration = typeof transitionDuration === 'string' ? transitionDuration : `${transitionDuration}ms`;\n }\n node.style[size] = `${wrapperSize}px`;\n node.style.transitionTimingFunction = transitionTimingFunction;\n if (onEntering) {\n onEntering(node, isAppearing);\n }\n });\n const handleEntered = normalizedTransitionCallback((node, isAppearing) => {\n node.style[size] = 'auto';\n if (onEntered) {\n onEntered(node, isAppearing);\n }\n });\n const handleExit = normalizedTransitionCallback(node => {\n node.style[size] = `${getWrapperSize()}px`;\n if (onExit) {\n onExit(node);\n }\n });\n const handleExited = normalizedTransitionCallback(onExited);\n const handleExiting = normalizedTransitionCallback(node => {\n const wrapperSize = getWrapperSize();\n const {\n duration: transitionDuration,\n easing: transitionTimingFunction\n } = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'exit'\n });\n if (timeout === 'auto') {\n // TODO: rename getAutoHeightDuration to something more generic (width support)\n // Actually it just calculates animation duration based on size\n const duration2 = theme.transitions.getAutoHeightDuration(wrapperSize);\n node.style.transitionDuration = `${duration2}ms`;\n autoTransitionDuration.current = duration2;\n } else {\n node.style.transitionDuration = typeof transitionDuration === 'string' ? transitionDuration : `${transitionDuration}ms`;\n }\n node.style[size] = collapsedSize;\n node.style.transitionTimingFunction = transitionTimingFunction;\n if (onExiting) {\n onExiting(node);\n }\n });\n const handleAddEndListener = next => {\n if (timeout === 'auto') {\n timer.current = setTimeout(next, autoTransitionDuration.current || 0);\n }\n if (addEndListener) {\n // Old call signature before `react-transition-group` implemented `nodeRef`\n addEndListener(nodeRef.current, next);\n }\n };\n return /*#__PURE__*/_jsx(TransitionComponent, _extends({\n in: inProp,\n onEnter: handleEnter,\n onEntered: handleEntered,\n onEntering: handleEntering,\n onExit: handleExit,\n onExited: handleExited,\n onExiting: handleExiting,\n addEndListener: handleAddEndListener,\n nodeRef: nodeRef,\n timeout: timeout === 'auto' ? null : timeout\n }, other, {\n children: (state, childProps) => /*#__PURE__*/_jsx(CollapseRoot, _extends({\n as: component,\n className: clsx(classes.root, className, {\n 'entered': classes.entered,\n 'exited': !inProp && collapsedSize === '0px' && classes.hidden\n }[state]),\n style: _extends({\n [isHorizontal ? 'minWidth' : 'minHeight']: collapsedSize\n }, style),\n ownerState: _extends({}, ownerState, {\n state\n }),\n ref: handleRef\n }, childProps, {\n children: /*#__PURE__*/_jsx(CollapseWrapper, {\n ownerState: _extends({}, ownerState, {\n state\n }),\n className: classes.wrapper,\n ref: wrapperRef,\n children: /*#__PURE__*/_jsx(CollapseWrapperInner, {\n ownerState: _extends({}, ownerState, {\n state\n }),\n className: classes.wrapperInner,\n children: children\n })\n })\n }))\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Collapse.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Add a custom transition end trigger. Called with the transitioning DOM\n * node and a done callback. Allows for more fine grained transition end\n * logic. Note: Timeouts are still used as a fallback if provided.\n */\n addEndListener: PropTypes.func,\n /**\n * The content node to be collapsed.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The width (horizontal) or height (vertical) of the container when collapsed.\n * @default '0px'\n */\n collapsedSize: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: elementTypeAcceptingRef,\n /**\n * The transition timing function.\n * You may specify a single easing or a object containing enter and exit values.\n */\n easing: PropTypes.oneOfType([PropTypes.shape({\n enter: PropTypes.string,\n exit: PropTypes.string\n }), PropTypes.string]),\n /**\n * If `true`, the component will transition in.\n */\n in: PropTypes.bool,\n /**\n * @ignore\n */\n onEnter: PropTypes.func,\n /**\n * @ignore\n */\n onEntered: PropTypes.func,\n /**\n * @ignore\n */\n onEntering: PropTypes.func,\n /**\n * @ignore\n */\n onExit: PropTypes.func,\n /**\n * @ignore\n */\n onExited: PropTypes.func,\n /**\n * @ignore\n */\n onExiting: PropTypes.func,\n /**\n * The transition orientation.\n * @default 'vertical'\n */\n orientation: PropTypes.oneOf(['horizontal', 'vertical']),\n /**\n * @ignore\n */\n style: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n *\n * Set to 'auto' to automatically calculate transition time based on height.\n * @default duration.standard\n */\n timeout: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })])\n} : void 0;\nCollapse.muiSupportAuto = true;\nexport default Collapse;","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","var naiveFallback = function () {\n\tif (typeof self === \"object\" && self) return self;\n\tif (typeof window === \"object\" && window) return window;\n\tthrow new Error(\"Unable to resolve global `this`\");\n};\n\nmodule.exports = (function () {\n\tif (this) return this;\n\n\t// Unexpected strict mode (may happen if e.g. bundled into ESM module)\n\n\t// Fallback to standard globalThis if available\n\tif (typeof globalThis === \"object\" && globalThis) return globalThis;\n\n\t// Thanks @mathiasbynens -> https://mathiasbynens.be/notes/globalthis\n\t// In all ES5+ engines global object inherits from Object.prototype\n\t// (if you approached one that doesn't please report)\n\ttry {\n\t\tObject.defineProperty(Object.prototype, \"__global__\", {\n\t\t\tget: function () { return this; },\n\t\t\tconfigurable: true\n\t\t});\n\t} catch (error) {\n\t\t// Unfortunate case of updates to Object.prototype being restricted\n\t\t// via preventExtensions, seal or freeze\n\t\treturn naiveFallback();\n\t}\n\ttry {\n\t\t// Safari case (window.__global__ works, but __global__ does not)\n\t\tif (!__global__) return naiveFallback();\n\t\treturn __global__;\n\t} finally {\n\t\tdelete Object.prototype.__global__;\n\t}\n})();\n","var _globalThis;\nif (typeof globalThis === 'object') {\n\t_globalThis = globalThis;\n} else {\n\ttry {\n\t\t_globalThis = require('es5-ext/global');\n\t} catch (error) {\n\t} finally {\n\t\tif (!_globalThis && typeof window !== 'undefined') { _globalThis = window; }\n\t\tif (!_globalThis) { throw new Error('Could not determine global this'); }\n\t}\n}\n\nvar NativeWebSocket = _globalThis.WebSocket || _globalThis.MozWebSocket;\nvar websocket_version = require('./version');\n\n\n/**\n * Expose a W3C WebSocket class with just one or two arguments.\n */\nfunction W3CWebSocket(uri, protocols) {\n\tvar native_instance;\n\n\tif (protocols) {\n\t\tnative_instance = new NativeWebSocket(uri, protocols);\n\t}\n\telse {\n\t\tnative_instance = new NativeWebSocket(uri);\n\t}\n\n\t/**\n\t * 'native_instance' is an instance of nativeWebSocket (the browser's WebSocket\n\t * class). Since it is an Object it will be returned as it is when creating an\n\t * instance of W3CWebSocket via 'new W3CWebSocket()'.\n\t *\n\t * ECMAScript 5: http://bclary.com/2004/11/07/#a-13.2.2\n\t */\n\treturn native_instance;\n}\nif (NativeWebSocket) {\n\t['CONNECTING', 'OPEN', 'CLOSING', 'CLOSED'].forEach(function(prop) {\n\t\tObject.defineProperty(W3CWebSocket, prop, {\n\t\t\tget: function() { return NativeWebSocket[prop]; }\n\t\t});\n\t});\n}\n\n/**\n * Module exports.\n */\nmodule.exports = {\n 'w3cwebsocket' : NativeWebSocket ? W3CWebSocket : null,\n 'version' : websocket_version\n};\n","module.exports = require('../package.json').version;\n"],"names":["getTableContainerUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","TableContainerRoot","styled","name","overridesResolver","props","styles","root","width","overflowX","React","inProps","ref","useThemeProps","className","_props$component","component","other","_objectWithoutPropertiesLoose","ownerState","_extends","classes","composeClasses","useUtilityClasses","_jsx","as","clsx","timestampDisplayFmt","log","_useState","useState","_useState2","_slicedToArray","open","setOpen","getLogLineKey","keyPath","getByKey","logMessage","consoleMsg","errMsg","titleLogMessage","replace","fullMessage","Fragment","ConsoleMsg","style","display","tableLayout","paddingLeft","paddingRight","children","whiteSpace","textOverflow","messageForConsoleMsg","dataStyle","color","fontWeight","fontFamily","fontSize","labelStyle","getLogEntryKey","logTime","DateTime","fromFormat","time","toString","zone","_jsxs","toFormat","error","source","map","e","i","messageForError","dateOfLine","toJSDate","dateStr","getFullYear","TableRow","sx","borderBottom","cursor","borderLeft","borderRight","backgroundColor","TableCell","onClick","Box","gap","alignItems","marginRight","lineHeight","WarnFilledIcon","errKind","overflow","justifyContent","borderRadius","fill","BoxArrowUp","BoxArrowDown","paddingBottom","paddingTop","textTransform","verticalAlign","textAlign","Collapse","in","timeout","unmountOnExit","marginTop","colSpan","margin","Typography","background","border","padding","useStyles","makeStyles","theme","createStyles","_objectSpread","logList","minHeight","height","logerror_tab","nodeField","actionsTray","marginBottom","searchField","inlineCheckboxes","containerForHeader","SelectStyled","withStyles","spacing","InputBase","c","dispatch","useAppDispatch","messages","useSelector","state","logs","logMessages","logsStarted","filter","setFilter","_useState3","_useState4","nodes","setNodes","_useState5","_useState6","selectedNode","setSelectedNode","_useState7","_useState8","selectedUserAgent","setSelectedUserAgent","_useState9","_useState10","userAgents","setUserAgents","_useState11","_useState12","logType","setLogType","_useState13","_useState14","loadingNodes","setLoadingNodes","filtLow","toLowerCase","filteredMessages","m","userAgent","indexOf","x","length","message","api","useEffect","invoke","then","res","catch","err","setHelpName","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","Grid","container","item","xs","FormControl","variant","Select","id","value","onChange","target","disabled","input","placeholder","MenuItem","aNode","concat","anAgent","Button","type","logResetMessages","url","URL","window","location","port","wsProt","wsProtocol","protocol","baseUrl","document","baseURI","pathname","W3CWebSocket","hostname","interval","onopen","console","setLogsStarted","send","setInterval","onmessage","JSON","parse","data","isValidEntry","level","node","key","Math","random","undefined","push","logMessageReceived","onclose","clearInterval","close","SearchBox","TableContainer","Paper","Table","TableBody","LogLine","WSCloseAbnormalClosure","WSClosePolicyViolation","WSCloseInternalServerErr","getCollapseUtilityClass","CollapseRoot","orientation","entered","collapsedSize","hidden","_ref","transition","transitions","create","visibility","CollapseWrapper","wrapper","_ref2","CollapseWrapperInner","wrapperInner","_ref3","addEndListener","_props$collapsedSize","collapsedSizeProp","easing","inProp","onEnter","onEntered","onEntering","onExit","onExited","onExiting","_props$orientation","_props$timeout","duration","standard","_props$TransitionComp","TransitionComponent","Transition","slots","useTheme","timer","wrapperRef","autoTransitionDuration","isHorizontal","size","clearTimeout","current","nodeRef","handleRef","useForkRef","normalizedTransitionCallback","callback","maybeIsAppearing","getWrapperSize","handleEnter","isAppearing","position","handleEntering","wrapperSize","_getTransitionProps","getTransitionProps","mode","transitionDuration","transitionTimingFunction","duration2","getAutoHeightDuration","handleEntered","handleExit","handleExited","handleExiting","_getTransitionProps2","next","setTimeout","childProps","_defineProperty","muiSupportAuto","element","muiNames","muiName","createChainedFunction","_len","arguments","funcs","Array","_key","reduce","acc","func","_len2","args","_key2","apply","this","naiveFallback","self","Error","module","exports","globalThis","Object","defineProperty","prototype","get","configurable","__global__","_globalThis","require","NativeWebSocket","WebSocket","MozWebSocket","websocket_version","uri","protocols","forEach","prop"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/6503.36360b86.chunk.js b/portal-ui/build/static/js/6503.36360b86.chunk.js deleted file mode 100644 index 8dc07f350..000000000 --- a/portal-ui/build/static/js/6503.36360b86.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[6503],{77961:function(e,t,o){var n=o(64836);t.Z=void 0;var r=n(o(45649)),a=o(80184),i=(0,r.default)((0,a.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z"}),"Help");t.Z=i},3579:function(e,t,o){var n=o(64836);t.Z=void 0;var r=n(o(45649)),a=o(80184),i=(0,r.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=i},20165:function(e,t,o){var n=o(64836);t.Z=void 0;var r=n(o(45649)),a=o(80184),i=(0,r.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=i},89673:function(e,t,o){o.d(t,{Z:function(){return C}});var n=o(84506),r=o(29439),a=o(4942),i=o(63366),s=o(87462),c=o(72791),d=(o(57441),o(28182)),l=o(94419),u=o(66934),p=o(31402),h=o(56125),m=o(35527),v=o(27318),f=o(98278),Z=o(75878),g=o(21217);function b(e){return(0,g.Z)("MuiAccordion",e)}var x=(0,Z.Z)("MuiAccordion",["root","rounded","expanded","disabled","gutters","region"]),w=o(80184),y=["children","className","defaultExpanded","disabled","disableGutters","expanded","onChange","square","TransitionComponent","TransitionProps"],S=(0,u.ZP)(m.Z,{name:"MuiAccordion",slot:"Root",overridesResolver:function(e,t){var o=e.ownerState;return[(0,a.Z)({},"& .".concat(x.region),t.region),t.root,!o.square&&t.rounded,!o.disableGutters&&t.gutters]}})((function(e){var t,o=e.theme,n={duration:o.transitions.duration.shortest};return t={position:"relative",transition:o.transitions.create(["margin"],n),overflowAnchor:"none","&:before":{position:"absolute",left:0,top:-1,right:0,height:1,content:'""',opacity:1,backgroundColor:(o.vars||o).palette.divider,transition:o.transitions.create(["opacity","background-color"],n)},"&:first-of-type":{"&:before":{display:"none"}}},(0,a.Z)(t,"&.".concat(x.expanded),{"&:before":{opacity:0},"&:first-of-type":{marginTop:0},"&:last-of-type":{marginBottom:0},"& + &":{"&:before":{display:"none"}}}),(0,a.Z)(t,"&.".concat(x.disabled),{backgroundColor:(o.vars||o).palette.action.disabledBackground}),t}),(function(e){var t=e.theme,o=e.ownerState;return(0,s.Z)({},!o.square&&{borderRadius:0,"&:first-of-type":{borderTopLeftRadius:(t.vars||t).shape.borderRadius,borderTopRightRadius:(t.vars||t).shape.borderRadius},"&:last-of-type":{borderBottomLeftRadius:(t.vars||t).shape.borderRadius,borderBottomRightRadius:(t.vars||t).shape.borderRadius,"@supports (-ms-ime-align: auto)":{borderBottomLeftRadius:0,borderBottomRightRadius:0}}},!o.disableGutters&&(0,a.Z)({},"&.".concat(x.expanded),{margin:"16px 0"}))})),C=c.forwardRef((function(e,t){var o=(0,p.Z)({props:e,name:"MuiAccordion"}),a=o.children,u=o.className,m=o.defaultExpanded,Z=void 0!==m&&m,g=o.disabled,x=void 0!==g&&g,C=o.disableGutters,R=void 0!==C&&C,k=o.expanded,z=o.onChange,M=o.square,E=void 0!==M&&M,N=o.TransitionComponent,A=void 0===N?h.Z:N,j=o.TransitionProps,I=(0,i.Z)(o,y),P=(0,f.Z)({controlled:k,default:Z,name:"Accordion",state:"expanded"}),T=(0,r.Z)(P,2),G=T[0],B=T[1],D=c.useCallback((function(e){B(!G),z&&z(e,!G)}),[G,z,B]),W=c.Children.toArray(a),q=(0,n.Z)(W),V=q[0],H=q.slice(1),L=c.useMemo((function(){return{expanded:G,disabled:x,disableGutters:R,toggle:D}}),[G,x,R,D]),O=(0,s.Z)({},o,{square:E,disabled:x,disableGutters:R,expanded:G}),F=function(e){var t=e.classes,o={root:["root",!e.square&&"rounded",e.expanded&&"expanded",e.disabled&&"disabled",!e.disableGutters&&"gutters"],region:["region"]};return(0,l.Z)(o,b,t)}(O);return(0,w.jsxs)(S,(0,s.Z)({className:(0,d.Z)(F.root,u),ref:t,ownerState:O,square:E},I,{children:[(0,w.jsx)(v.Z.Provider,{value:L,children:V}),(0,w.jsx)(A,(0,s.Z)({in:G,timeout:"auto"},j,{children:(0,w.jsx)("div",{"aria-labelledby":V.props.id,id:V.props["aria-controls"],role:"region",className:F.region,children:H})}))]}))}))},27318:function(e,t,o){var n=o(72791).createContext({});t.Z=n},3721:function(e,t,o){o.d(t,{Z:function(){return f}});var n=o(87462),r=o(63366),a=o(72791),i=o(28182),s=o(94419),c=o(66934),d=o(31402),l=o(75878),u=o(21217);function p(e){return(0,u.Z)("MuiAccordionDetails",e)}(0,l.Z)("MuiAccordionDetails",["root"]);var h=o(80184),m=["className"],v=(0,c.ZP)("div",{name:"MuiAccordionDetails",slot:"Root",overridesResolver:function(e,t){return t.root}})((function(e){return{padding:e.theme.spacing(1,2,2)}})),f=a.forwardRef((function(e,t){var o=(0,d.Z)({props:e,name:"MuiAccordionDetails"}),a=o.className,c=(0,r.Z)(o,m),l=o,u=function(e){var t=e.classes;return(0,s.Z)({root:["root"]},p,t)}(l);return(0,h.jsx)(v,(0,n.Z)({className:(0,i.Z)(u.root,a),ref:t,ownerState:l},c))}))},55818:function(e,t,o){o.d(t,{Z:function(){return y}});var n=o(4942),r=o(63366),a=o(87462),i=o(72791),s=o(28182),c=o(94419),d=o(66934),l=o(31402),u=o(95080),p=o(27318),h=o(75878),m=o(21217);function v(e){return(0,m.Z)("MuiAccordionSummary",e)}var f=(0,h.Z)("MuiAccordionSummary",["root","expanded","focusVisible","disabled","gutters","contentGutters","content","expandIconWrapper"]),Z=o(80184),g=["children","className","expandIcon","focusVisibleClassName","onClick"],b=(0,d.ZP)(u.Z,{name:"MuiAccordionSummary",slot:"Root",overridesResolver:function(e,t){return t.root}})((function(e){var t,o=e.theme,r=e.ownerState,i={duration:o.transitions.duration.shortest};return(0,a.Z)((t={display:"flex",minHeight:48,padding:o.spacing(0,2),transition:o.transitions.create(["min-height","background-color"],i)},(0,n.Z)(t,"&.".concat(f.focusVisible),{backgroundColor:(o.vars||o).palette.action.focus}),(0,n.Z)(t,"&.".concat(f.disabled),{opacity:(o.vars||o).palette.action.disabledOpacity}),(0,n.Z)(t,"&:hover:not(.".concat(f.disabled,")"),{cursor:"pointer"}),t),!r.disableGutters&&(0,n.Z)({},"&.".concat(f.expanded),{minHeight:64}))})),x=(0,d.ZP)("div",{name:"MuiAccordionSummary",slot:"Content",overridesResolver:function(e,t){return t.content}})((function(e){var t=e.theme,o=e.ownerState;return(0,a.Z)({display:"flex",flexGrow:1,margin:"12px 0"},!o.disableGutters&&(0,n.Z)({transition:t.transitions.create(["margin"],{duration:t.transitions.duration.shortest})},"&.".concat(f.expanded),{margin:"20px 0"}))})),w=(0,d.ZP)("div",{name:"MuiAccordionSummary",slot:"ExpandIconWrapper",overridesResolver:function(e,t){return t.expandIconWrapper}})((function(e){var t=e.theme;return(0,n.Z)({display:"flex",color:(t.vars||t).palette.action.active,transform:"rotate(0deg)",transition:t.transitions.create("transform",{duration:t.transitions.duration.shortest})},"&.".concat(f.expanded),{transform:"rotate(180deg)"})})),y=i.forwardRef((function(e,t){var o=(0,l.Z)({props:e,name:"MuiAccordionSummary"}),n=o.children,d=o.className,u=o.expandIcon,h=o.focusVisibleClassName,m=o.onClick,f=(0,r.Z)(o,g),y=i.useContext(p.Z),S=y.disabled,C=void 0!==S&&S,R=y.disableGutters,k=y.expanded,z=y.toggle,M=(0,a.Z)({},o,{expanded:k,disabled:C,disableGutters:R}),E=function(e){var t=e.classes,o=e.expanded,n=e.disabled,r=e.disableGutters,a={root:["root",o&&"expanded",n&&"disabled",!r&&"gutters"],focusVisible:["focusVisible"],content:["content",o&&"expanded",!r&&"contentGutters"],expandIconWrapper:["expandIconWrapper",o&&"expanded"]};return(0,c.Z)(a,v,t)}(M);return(0,Z.jsxs)(b,(0,a.Z)({focusRipple:!1,disableRipple:!0,disabled:C,component:"div","aria-expanded":k,className:(0,s.Z)(E.root,d),focusVisibleClassName:(0,s.Z)(E.focusVisible,h),onClick:function(e){z&&z(e),m&&m(e)},ref:t,ownerState:M},f,{children:[(0,Z.jsx)(x,{className:E.content,ownerState:M,children:n}),u&&(0,Z.jsx)(w,{className:E.expandIconWrapper,ownerState:M,children:u})]}))}))},56125:function(e,t,o){o.d(t,{Z:function(){return R}});var n=o(4942),r=o(63366),a=o(87462),i=o(72791),s=o(28182),c=o(18875),d=o(94419),l=o(66934),u=o(31402),p=o(81314),h=o(4999),m=o(13967),v=o(42071),f=o(75878),Z=o(21217);function g(e){return(0,Z.Z)("MuiCollapse",e)}(0,f.Z)("MuiCollapse",["root","horizontal","vertical","entered","hidden","wrapper","wrapperInner"]);var b=o(80184),x=["addEndListener","children","className","collapsedSize","component","easing","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","orientation","style","timeout","TransitionComponent"],w=(0,l.ZP)("div",{name:"MuiCollapse",slot:"Root",overridesResolver:function(e,t){var o=e.ownerState;return[t.root,t[o.orientation],"entered"===o.state&&t.entered,"exited"===o.state&&!o.in&&"0px"===o.collapsedSize&&t.hidden]}})((function(e){var t=e.theme,o=e.ownerState;return(0,a.Z)({height:0,overflow:"hidden",transition:t.transitions.create("height")},"horizontal"===o.orientation&&{height:"auto",width:0,transition:t.transitions.create("width")},"entered"===o.state&&(0,a.Z)({height:"auto",overflow:"visible"},"horizontal"===o.orientation&&{width:"auto"}),"exited"===o.state&&!o.in&&"0px"===o.collapsedSize&&{visibility:"hidden"})})),y=(0,l.ZP)("div",{name:"MuiCollapse",slot:"Wrapper",overridesResolver:function(e,t){return t.wrapper}})((function(e){var t=e.ownerState;return(0,a.Z)({display:"flex",width:"100%"},"horizontal"===t.orientation&&{width:"auto",height:"100%"})})),S=(0,l.ZP)("div",{name:"MuiCollapse",slot:"WrapperInner",overridesResolver:function(e,t){return t.wrapperInner}})((function(e){var t=e.ownerState;return(0,a.Z)({width:"100%"},"horizontal"===t.orientation&&{width:"auto",height:"100%"})})),C=i.forwardRef((function(e,t){var o=(0,u.Z)({props:e,name:"MuiCollapse"}),l=o.addEndListener,f=o.children,Z=o.className,C=o.collapsedSize,R=void 0===C?"0px":C,k=o.component,z=o.easing,M=o.in,E=o.onEnter,N=o.onEntered,A=o.onEntering,j=o.onExit,I=o.onExited,P=o.onExiting,T=o.orientation,G=void 0===T?"vertical":T,B=o.style,D=o.timeout,W=void 0===D?p.x9.standard:D,q=o.TransitionComponent,V=void 0===q?c.ZP:q,H=(0,r.Z)(o,x),L=(0,a.Z)({},o,{orientation:G,collapsedSize:R}),O=function(e){var t=e.orientation,o=e.classes,n={root:["root","".concat(t)],entered:["entered"],hidden:["hidden"],wrapper:["wrapper","".concat(t)],wrapperInner:["wrapperInner","".concat(t)]};return(0,d.Z)(n,g,o)}(L),F=(0,m.Z)(),_=i.useRef(),X=i.useRef(null),$=i.useRef(),J="number"===typeof R?"".concat(R,"px"):R,K="horizontal"===G,Q=K?"width":"height";i.useEffect((function(){return function(){clearTimeout(_.current)}}),[]);var U=i.useRef(null),Y=(0,v.Z)(t,U),ee=function(e){return function(t){if(e){var o=U.current;void 0===t?e(o):e(o,t)}}},te=function(){return X.current?X.current[K?"clientWidth":"clientHeight"]:0},oe=ee((function(e,t){X.current&&K&&(X.current.style.position="absolute"),e.style[Q]=J,E&&E(e,t)})),ne=ee((function(e,t){var o=te();X.current&&K&&(X.current.style.position="");var n=(0,h.C)({style:B,timeout:W,easing:z},{mode:"enter"}),r=n.duration,a=n.easing;if("auto"===W){var i=F.transitions.getAutoHeightDuration(o);e.style.transitionDuration="".concat(i,"ms"),$.current=i}else e.style.transitionDuration="string"===typeof r?r:"".concat(r,"ms");e.style[Q]="".concat(o,"px"),e.style.transitionTimingFunction=a,A&&A(e,t)})),re=ee((function(e,t){e.style[Q]="auto",N&&N(e,t)})),ae=ee((function(e){e.style[Q]="".concat(te(),"px"),j&&j(e)})),ie=ee(I),se=ee((function(e){var t=te(),o=(0,h.C)({style:B,timeout:W,easing:z},{mode:"exit"}),n=o.duration,r=o.easing;if("auto"===W){var a=F.transitions.getAutoHeightDuration(t);e.style.transitionDuration="".concat(a,"ms"),$.current=a}else e.style.transitionDuration="string"===typeof n?n:"".concat(n,"ms");e.style[Q]=J,e.style.transitionTimingFunction=r,P&&P(e)}));return(0,b.jsx)(V,(0,a.Z)({in:M,onEnter:oe,onEntered:re,onEntering:ne,onExit:ae,onExited:ie,onExiting:se,addEndListener:function(e){"auto"===W&&(_.current=setTimeout(e,$.current||0)),l&&l(U.current,e)},nodeRef:U,timeout:"auto"===W?null:W},H,{children:function(e,t){return(0,b.jsx)(w,(0,a.Z)({as:k,className:(0,s.Z)(O.root,Z,{entered:O.entered,exited:!M&&"0px"===J&&O.hidden}[e]),style:(0,a.Z)((0,n.Z)({},K?"minWidth":"minHeight",J),B),ownerState:(0,a.Z)({},L,{state:e}),ref:Y},t,{children:(0,b.jsx)(y,{ownerState:(0,a.Z)({},L,{state:e}),className:O.wrapper,ref:X,children:(0,b.jsx)(S,{ownerState:(0,a.Z)({},L,{state:e}),className:O.wrapperInner,children:f})})}))}}))}));C.muiSupportAuto=!0;var R=C},9955:function(e,t,o){o.d(t,{Z:function(){return C}});var n=o(4942),r=o(63366),a=o(87462),i=o(72791),s=o(28182),c=o(94419),d=o(12065),l=o(14036),u=o(97278),p=o(31402),h=o(66934),m=o(75878),v=o(21217);function f(e){return(0,v.Z)("MuiSwitch",e)}var Z=(0,m.Z)("MuiSwitch",["root","edgeStart","edgeEnd","switchBase","colorPrimary","colorSecondary","sizeSmall","sizeMedium","checked","disabled","input","thumb","track"]),g=o(80184),b=["className","color","edge","size","sx"],x=(0,h.ZP)("span",{name:"MuiSwitch",slot:"Root",overridesResolver:function(e,t){var o=e.ownerState;return[t.root,o.edge&&t["edge".concat((0,l.Z)(o.edge))],t["size".concat((0,l.Z)(o.size))]]}})((function(e){var t,o=e.ownerState;return(0,a.Z)({display:"inline-flex",width:58,height:38,overflow:"hidden",padding:12,boxSizing:"border-box",position:"relative",flexShrink:0,zIndex:0,verticalAlign:"middle","@media print":{colorAdjust:"exact"}},"start"===o.edge&&{marginLeft:-8},"end"===o.edge&&{marginRight:-8},"small"===o.size&&(t={width:40,height:24,padding:7},(0,n.Z)(t,"& .".concat(Z.thumb),{width:16,height:16}),(0,n.Z)(t,"& .".concat(Z.switchBase),(0,n.Z)({padding:4},"&.".concat(Z.checked),{transform:"translateX(16px)"})),t))})),w=(0,h.ZP)(u.Z,{name:"MuiSwitch",slot:"SwitchBase",overridesResolver:function(e,t){var o=e.ownerState;return[t.switchBase,(0,n.Z)({},"& .".concat(Z.input),t.input),"default"!==o.color&&t["color".concat((0,l.Z)(o.color))]]}})((function(e){var t,o=e.theme;return t={position:"absolute",top:0,left:0,zIndex:1,color:o.vars?o.vars.palette.Switch.defaultColor:"".concat("light"===o.palette.mode?o.palette.common.white:o.palette.grey[300]),transition:o.transitions.create(["left","transform"],{duration:o.transitions.duration.shortest})},(0,n.Z)(t,"&.".concat(Z.checked),{transform:"translateX(20px)"}),(0,n.Z)(t,"&.".concat(Z.disabled),{color:o.vars?o.vars.palette.Switch.defaultDisabledColor:"".concat("light"===o.palette.mode?o.palette.grey[100]:o.palette.grey[600])}),(0,n.Z)(t,"&.".concat(Z.checked," + .").concat(Z.track),{opacity:.5}),(0,n.Z)(t,"&.".concat(Z.disabled," + .").concat(Z.track),{opacity:o.vars?o.vars.opacity.switchTrackDisabled:"".concat("light"===o.palette.mode?.12:.2)}),(0,n.Z)(t,"& .".concat(Z.input),{left:"-100%",width:"300%"}),t}),(function(e){var t,o=e.theme,r=e.ownerState;return(0,a.Z)({"&:hover":{backgroundColor:o.vars?"rgba(".concat(o.vars.palette.action.activeChannel," / ").concat(o.vars.palette.action.hoverOpacity,")"):(0,d.Fq)(o.palette.action.active,o.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==r.color&&(t={},(0,n.Z)(t,"&.".concat(Z.checked),(0,n.Z)({color:(o.vars||o).palette[r.color].main,"&:hover":{backgroundColor:o.vars?"rgba(".concat(o.vars.palette[r.color].mainChannel," / ").concat(o.vars.palette.action.hoverOpacity,")"):(0,d.Fq)(o.palette[r.color].main,o.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"&.".concat(Z.disabled),{color:o.vars?o.vars.palette.Switch["".concat(r.color,"DisabledColor")]:"".concat("light"===o.palette.mode?(0,d.$n)(o.palette[r.color].main,.62):(0,d._j)(o.palette[r.color].main,.55))})),(0,n.Z)(t,"&.".concat(Z.checked," + .").concat(Z.track),{backgroundColor:(o.vars||o).palette[r.color].main}),t))})),y=(0,h.ZP)("span",{name:"MuiSwitch",slot:"Track",overridesResolver:function(e,t){return t.track}})((function(e){var t=e.theme;return{height:"100%",width:"100%",borderRadius:7,zIndex:-1,transition:t.transitions.create(["opacity","background-color"],{duration:t.transitions.duration.shortest}),backgroundColor:t.vars?t.vars.palette.common.onBackground:"".concat("light"===t.palette.mode?t.palette.common.black:t.palette.common.white),opacity:t.vars?t.vars.opacity.switchTrack:"".concat("light"===t.palette.mode?.38:.3)}})),S=(0,h.ZP)("span",{name:"MuiSwitch",slot:"Thumb",overridesResolver:function(e,t){return t.thumb}})((function(e){var t=e.theme;return{boxShadow:(t.vars||t).shadows[1],backgroundColor:"currentColor",width:20,height:20,borderRadius:"50%"}})),C=i.forwardRef((function(e,t){var o=(0,p.Z)({props:e,name:"MuiSwitch"}),n=o.className,i=o.color,d=void 0===i?"primary":i,u=o.edge,h=void 0!==u&&u,m=o.size,v=void 0===m?"medium":m,Z=o.sx,C=(0,r.Z)(o,b),R=(0,a.Z)({},o,{color:d,edge:h,size:v}),k=function(e){var t=e.classes,o=e.edge,n=e.size,r=e.color,i=e.checked,s=e.disabled,d={root:["root",o&&"edge".concat((0,l.Z)(o)),"size".concat((0,l.Z)(n))],switchBase:["switchBase","color".concat((0,l.Z)(r)),i&&"checked",s&&"disabled"],thumb:["thumb"],track:["track"],input:["input"]},u=(0,c.Z)(d,f,t);return(0,a.Z)({},t,u)}(R),z=(0,g.jsx)(S,{className:k.thumb,ownerState:R});return(0,g.jsxs)(x,{className:(0,s.Z)(k.root,n),sx:Z,ownerState:R,children:[(0,g.jsx)(w,(0,a.Z)({type:"checkbox",icon:z,checkedIcon:z,ref:t,ownerState:R},C,{classes:(0,a.Z)({},k,{root:k.switchBase})})),(0,g.jsx)(y,{className:k.track,ownerState:R})]})}))}}]); -//# sourceMappingURL=6503.36360b86.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/6503.36360b86.chunk.js.map b/portal-ui/build/static/js/6503.36360b86.chunk.js.map deleted file mode 100644 index d2f9f63a8..000000000 --- a/portal-ui/build/static/js/6503.36360b86.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/6503.36360b86.chunk.js","mappings":"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","sources":["../node_modules/@mui/icons-material/Help.js","../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/material/Accordion/accordionClasses.js","../node_modules/@mui/material/Accordion/Accordion.js","../node_modules/@mui/material/Accordion/AccordionContext.js","../node_modules/@mui/material/AccordionDetails/accordionDetailsClasses.js","../node_modules/@mui/material/AccordionDetails/AccordionDetails.js","../node_modules/@mui/material/AccordionSummary/accordionSummaryClasses.js","../node_modules/@mui/material/AccordionSummary/AccordionSummary.js","../node_modules/@mui/material/Collapse/collapseClasses.js","../node_modules/@mui/material/Collapse/Collapse.js","../node_modules/@mui/material/Switch/switchClasses.js","../node_modules/@mui/material/Switch/Switch.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z\"\n}), 'Help');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getAccordionUtilityClass(slot) {\n return generateUtilityClass('MuiAccordion', slot);\n}\nconst accordionClasses = generateUtilityClasses('MuiAccordion', ['root', 'rounded', 'expanded', 'disabled', 'gutters', 'region']);\nexport default accordionClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"defaultExpanded\", \"disabled\", \"disableGutters\", \"expanded\", \"onChange\", \"square\", \"TransitionComponent\", \"TransitionProps\"];\nimport * as React from 'react';\nimport { isFragment } from 'react-is';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { chainPropTypes } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport Collapse from '../Collapse';\nimport Paper from '../Paper';\nimport AccordionContext from './AccordionContext';\nimport useControlled from '../utils/useControlled';\nimport accordionClasses, { getAccordionUtilityClass } from './accordionClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n square,\n expanded,\n disabled,\n disableGutters\n } = ownerState;\n const slots = {\n root: ['root', !square && 'rounded', expanded && 'expanded', disabled && 'disabled', !disableGutters && 'gutters'],\n region: ['region']\n };\n return composeClasses(slots, getAccordionUtilityClass, classes);\n};\nconst AccordionRoot = styled(Paper, {\n name: 'MuiAccordion',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${accordionClasses.region}`]: styles.region\n }, styles.root, !ownerState.square && styles.rounded, !ownerState.disableGutters && styles.gutters];\n }\n})(({\n theme\n}) => {\n const transition = {\n duration: theme.transitions.duration.shortest\n };\n return {\n position: 'relative',\n transition: theme.transitions.create(['margin'], transition),\n overflowAnchor: 'none',\n // Keep the same scrolling position\n '&:before': {\n position: 'absolute',\n left: 0,\n top: -1,\n right: 0,\n height: 1,\n content: '\"\"',\n opacity: 1,\n backgroundColor: (theme.vars || theme).palette.divider,\n transition: theme.transitions.create(['opacity', 'background-color'], transition)\n },\n '&:first-of-type': {\n '&:before': {\n display: 'none'\n }\n },\n [`&.${accordionClasses.expanded}`]: {\n '&:before': {\n opacity: 0\n },\n '&:first-of-type': {\n marginTop: 0\n },\n '&:last-of-type': {\n marginBottom: 0\n },\n '& + &': {\n '&:before': {\n display: 'none'\n }\n }\n },\n [`&.${accordionClasses.disabled}`]: {\n backgroundColor: (theme.vars || theme).palette.action.disabledBackground\n }\n };\n}, ({\n theme,\n ownerState\n}) => _extends({}, !ownerState.square && {\n borderRadius: 0,\n '&:first-of-type': {\n borderTopLeftRadius: (theme.vars || theme).shape.borderRadius,\n borderTopRightRadius: (theme.vars || theme).shape.borderRadius\n },\n '&:last-of-type': {\n borderBottomLeftRadius: (theme.vars || theme).shape.borderRadius,\n borderBottomRightRadius: (theme.vars || theme).shape.borderRadius,\n // Fix a rendering issue on Edge\n '@supports (-ms-ime-align: auto)': {\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0\n }\n }\n}, !ownerState.disableGutters && {\n [`&.${accordionClasses.expanded}`]: {\n margin: '16px 0'\n }\n}));\nconst Accordion = /*#__PURE__*/React.forwardRef(function Accordion(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiAccordion'\n });\n const {\n children: childrenProp,\n className,\n defaultExpanded = false,\n disabled = false,\n disableGutters = false,\n expanded: expandedProp,\n onChange,\n square = false,\n TransitionComponent = Collapse,\n TransitionProps\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [expanded, setExpandedState] = useControlled({\n controlled: expandedProp,\n default: defaultExpanded,\n name: 'Accordion',\n state: 'expanded'\n });\n const handleChange = React.useCallback(event => {\n setExpandedState(!expanded);\n if (onChange) {\n onChange(event, !expanded);\n }\n }, [expanded, onChange, setExpandedState]);\n const [summary, ...children] = React.Children.toArray(childrenProp);\n const contextValue = React.useMemo(() => ({\n expanded,\n disabled,\n disableGutters,\n toggle: handleChange\n }), [expanded, disabled, disableGutters, handleChange]);\n const ownerState = _extends({}, props, {\n square,\n disabled,\n disableGutters,\n expanded\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(AccordionRoot, _extends({\n className: clsx(classes.root, className),\n ref: ref,\n ownerState: ownerState,\n square: square\n }, other, {\n children: [/*#__PURE__*/_jsx(AccordionContext.Provider, {\n value: contextValue,\n children: summary\n }), /*#__PURE__*/_jsx(TransitionComponent, _extends({\n in: expanded,\n timeout: \"auto\"\n }, TransitionProps, {\n children: /*#__PURE__*/_jsx(\"div\", {\n \"aria-labelledby\": summary.props.id,\n id: summary.props['aria-controls'],\n role: \"region\",\n className: classes.region,\n children: children\n })\n }))]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Accordion.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: chainPropTypes(PropTypes.node.isRequired, props => {\n const summary = React.Children.toArray(props.children)[0];\n if (isFragment(summary)) {\n return new Error(\"MUI: The Accordion doesn't accept a Fragment as a child. \" + 'Consider providing an array instead.');\n }\n if (! /*#__PURE__*/React.isValidElement(summary)) {\n return new Error('MUI: Expected the first child of Accordion to be a valid element.');\n }\n return null;\n }),\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * If `true`, expands the accordion by default.\n * @default false\n */\n defaultExpanded: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, it removes the margin between two expanded accordion items and the increase of height.\n * @default false\n */\n disableGutters: PropTypes.bool,\n /**\n * If `true`, expands the accordion, otherwise collapse it.\n * Setting this prop enables control over the accordion.\n */\n expanded: PropTypes.bool,\n /**\n * Callback fired when the expand/collapse state is changed.\n *\n * @param {React.SyntheticEvent} event The event source of the callback. **Warning**: This is a generic event not a change event.\n * @param {boolean} expanded The `expanded` state of the accordion.\n */\n onChange: PropTypes.func,\n /**\n * If `true`, rounded corners are disabled.\n * @default false\n */\n square: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The component used for the transition.\n * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.\n * @default Collapse\n */\n TransitionComponent: PropTypes.elementType,\n /**\n * Props applied to the transition element.\n * By default, the element is based on this [`Transition`](http://reactcommunity.org/react-transition-group/transition/) component.\n */\n TransitionProps: PropTypes.object\n} : void 0;\nexport default Accordion;","import * as React from 'react';\n\n/**\n * @ignore - internal component.\n * @type {React.Context<{} | {expanded: boolean, disabled: boolean, toggle: () => void}>}\n */\nconst AccordionContext = /*#__PURE__*/React.createContext({});\nif (process.env.NODE_ENV !== 'production') {\n AccordionContext.displayName = 'AccordionContext';\n}\nexport default AccordionContext;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getAccordionDetailsUtilityClass(slot) {\n return generateUtilityClass('MuiAccordionDetails', slot);\n}\nconst accordionDetailsClasses = generateUtilityClasses('MuiAccordionDetails', ['root']);\nexport default accordionDetailsClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { getAccordionDetailsUtilityClass } from './accordionDetailsClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getAccordionDetailsUtilityClass, classes);\n};\nconst AccordionDetailsRoot = styled('div', {\n name: 'MuiAccordionDetails',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})(({\n theme\n}) => ({\n padding: theme.spacing(1, 2, 2)\n}));\nconst AccordionDetails = /*#__PURE__*/React.forwardRef(function AccordionDetails(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiAccordionDetails'\n });\n const {\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = props;\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(AccordionDetailsRoot, _extends({\n className: clsx(classes.root, className),\n ref: ref,\n ownerState: ownerState\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? AccordionDetails.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default AccordionDetails;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getAccordionSummaryUtilityClass(slot) {\n return generateUtilityClass('MuiAccordionSummary', slot);\n}\nconst accordionSummaryClasses = generateUtilityClasses('MuiAccordionSummary', ['root', 'expanded', 'focusVisible', 'disabled', 'gutters', 'contentGutters', 'content', 'expandIconWrapper']);\nexport default accordionSummaryClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"expandIcon\", \"focusVisibleClassName\", \"onClick\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport ButtonBase from '../ButtonBase';\nimport AccordionContext from '../Accordion/AccordionContext';\nimport accordionSummaryClasses, { getAccordionSummaryUtilityClass } from './accordionSummaryClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n expanded,\n disabled,\n disableGutters\n } = ownerState;\n const slots = {\n root: ['root', expanded && 'expanded', disabled && 'disabled', !disableGutters && 'gutters'],\n focusVisible: ['focusVisible'],\n content: ['content', expanded && 'expanded', !disableGutters && 'contentGutters'],\n expandIconWrapper: ['expandIconWrapper', expanded && 'expanded']\n };\n return composeClasses(slots, getAccordionSummaryUtilityClass, classes);\n};\nconst AccordionSummaryRoot = styled(ButtonBase, {\n name: 'MuiAccordionSummary',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})(({\n theme,\n ownerState\n}) => {\n const transition = {\n duration: theme.transitions.duration.shortest\n };\n return _extends({\n display: 'flex',\n minHeight: 48,\n padding: theme.spacing(0, 2),\n transition: theme.transitions.create(['min-height', 'background-color'], transition),\n [`&.${accordionSummaryClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette.action.focus\n },\n [`&.${accordionSummaryClasses.disabled}`]: {\n opacity: (theme.vars || theme).palette.action.disabledOpacity\n },\n [`&:hover:not(.${accordionSummaryClasses.disabled})`]: {\n cursor: 'pointer'\n }\n }, !ownerState.disableGutters && {\n [`&.${accordionSummaryClasses.expanded}`]: {\n minHeight: 64\n }\n });\n});\nconst AccordionSummaryContent = styled('div', {\n name: 'MuiAccordionSummary',\n slot: 'Content',\n overridesResolver: (props, styles) => styles.content\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'flex',\n flexGrow: 1,\n margin: '12px 0'\n}, !ownerState.disableGutters && {\n transition: theme.transitions.create(['margin'], {\n duration: theme.transitions.duration.shortest\n }),\n [`&.${accordionSummaryClasses.expanded}`]: {\n margin: '20px 0'\n }\n}));\nconst AccordionSummaryExpandIconWrapper = styled('div', {\n name: 'MuiAccordionSummary',\n slot: 'ExpandIconWrapper',\n overridesResolver: (props, styles) => styles.expandIconWrapper\n})(({\n theme\n}) => ({\n display: 'flex',\n color: (theme.vars || theme).palette.action.active,\n transform: 'rotate(0deg)',\n transition: theme.transitions.create('transform', {\n duration: theme.transitions.duration.shortest\n }),\n [`&.${accordionSummaryClasses.expanded}`]: {\n transform: 'rotate(180deg)'\n }\n}));\nconst AccordionSummary = /*#__PURE__*/React.forwardRef(function AccordionSummary(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiAccordionSummary'\n });\n const {\n children,\n className,\n expandIcon,\n focusVisibleClassName,\n onClick\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const {\n disabled = false,\n disableGutters,\n expanded,\n toggle\n } = React.useContext(AccordionContext);\n const handleChange = event => {\n if (toggle) {\n toggle(event);\n }\n if (onClick) {\n onClick(event);\n }\n };\n const ownerState = _extends({}, props, {\n expanded,\n disabled,\n disableGutters\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(AccordionSummaryRoot, _extends({\n focusRipple: false,\n disableRipple: true,\n disabled: disabled,\n component: \"div\",\n \"aria-expanded\": expanded,\n className: clsx(classes.root, className),\n focusVisibleClassName: clsx(classes.focusVisible, focusVisibleClassName),\n onClick: handleChange,\n ref: ref,\n ownerState: ownerState\n }, other, {\n children: [/*#__PURE__*/_jsx(AccordionSummaryContent, {\n className: classes.content,\n ownerState: ownerState,\n children: children\n }), expandIcon && /*#__PURE__*/_jsx(AccordionSummaryExpandIconWrapper, {\n className: classes.expandIconWrapper,\n ownerState: ownerState,\n children: expandIcon\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? AccordionSummary.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The icon to display as the expand indicator.\n */\n expandIcon: PropTypes.node,\n /**\n * This prop can help identify which element has keyboard focus.\n * The class name will be applied when the element gains the focus through keyboard interaction.\n * It's a polyfill for the [CSS :focus-visible selector](https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo).\n * The rationale for using this feature [is explained here](https://github.com/WICG/focus-visible/blob/HEAD/explainer.md).\n * A [polyfill can be used](https://github.com/WICG/focus-visible) to apply a `focus-visible` class to other components\n * if needed.\n */\n focusVisibleClassName: PropTypes.string,\n /**\n * @ignore\n */\n onClick: PropTypes.func,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default AccordionSummary;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getCollapseUtilityClass(slot) {\n return generateUtilityClass('MuiCollapse', slot);\n}\nconst collapseClasses = generateUtilityClasses('MuiCollapse', ['root', 'horizontal', 'vertical', 'entered', 'hidden', 'wrapper', 'wrapperInner']);\nexport default collapseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"addEndListener\", \"children\", \"className\", \"collapsedSize\", \"component\", \"easing\", \"in\", \"onEnter\", \"onEntered\", \"onEntering\", \"onExit\", \"onExited\", \"onExiting\", \"orientation\", \"style\", \"timeout\", \"TransitionComponent\"];\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport { Transition } from 'react-transition-group';\nimport { elementTypeAcceptingRef } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { duration } from '../styles/createTransitions';\nimport { getTransitionProps } from '../transitions/utils';\nimport useTheme from '../styles/useTheme';\nimport { useForkRef } from '../utils';\nimport { getCollapseUtilityClass } from './collapseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n orientation,\n classes\n } = ownerState;\n const slots = {\n root: ['root', `${orientation}`],\n entered: ['entered'],\n hidden: ['hidden'],\n wrapper: ['wrapper', `${orientation}`],\n wrapperInner: ['wrapperInner', `${orientation}`]\n };\n return composeClasses(slots, getCollapseUtilityClass, classes);\n};\nconst CollapseRoot = styled('div', {\n name: 'MuiCollapse',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[ownerState.orientation], ownerState.state === 'entered' && styles.entered, ownerState.state === 'exited' && !ownerState.in && ownerState.collapsedSize === '0px' && styles.hidden];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n height: 0,\n overflow: 'hidden',\n transition: theme.transitions.create('height')\n}, ownerState.orientation === 'horizontal' && {\n height: 'auto',\n width: 0,\n transition: theme.transitions.create('width')\n}, ownerState.state === 'entered' && _extends({\n height: 'auto',\n overflow: 'visible'\n}, ownerState.orientation === 'horizontal' && {\n width: 'auto'\n}), ownerState.state === 'exited' && !ownerState.in && ownerState.collapsedSize === '0px' && {\n visibility: 'hidden'\n}));\nconst CollapseWrapper = styled('div', {\n name: 'MuiCollapse',\n slot: 'Wrapper',\n overridesResolver: (props, styles) => styles.wrapper\n})(({\n ownerState\n}) => _extends({\n // Hack to get children with a negative margin to not falsify the height computation.\n display: 'flex',\n width: '100%'\n}, ownerState.orientation === 'horizontal' && {\n width: 'auto',\n height: '100%'\n}));\nconst CollapseWrapperInner = styled('div', {\n name: 'MuiCollapse',\n slot: 'WrapperInner',\n overridesResolver: (props, styles) => styles.wrapperInner\n})(({\n ownerState\n}) => _extends({\n width: '100%'\n}, ownerState.orientation === 'horizontal' && {\n width: 'auto',\n height: '100%'\n}));\n\n/**\n * The Collapse transition is used by the\n * [Vertical Stepper](/material-ui/react-stepper/#vertical-stepper) StepContent component.\n * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.\n */\nconst Collapse = /*#__PURE__*/React.forwardRef(function Collapse(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiCollapse'\n });\n const {\n addEndListener,\n children,\n className,\n collapsedSize: collapsedSizeProp = '0px',\n component,\n easing,\n in: inProp,\n onEnter,\n onEntered,\n onEntering,\n onExit,\n onExited,\n onExiting,\n orientation = 'vertical',\n style,\n timeout = duration.standard,\n // eslint-disable-next-line react/prop-types\n TransitionComponent = Transition\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n orientation,\n collapsedSize: collapsedSizeProp\n });\n const classes = useUtilityClasses(ownerState);\n const theme = useTheme();\n const timer = React.useRef();\n const wrapperRef = React.useRef(null);\n const autoTransitionDuration = React.useRef();\n const collapsedSize = typeof collapsedSizeProp === 'number' ? `${collapsedSizeProp}px` : collapsedSizeProp;\n const isHorizontal = orientation === 'horizontal';\n const size = isHorizontal ? 'width' : 'height';\n React.useEffect(() => {\n return () => {\n clearTimeout(timer.current);\n };\n }, []);\n const nodeRef = React.useRef(null);\n const handleRef = useForkRef(ref, nodeRef);\n const normalizedTransitionCallback = callback => maybeIsAppearing => {\n if (callback) {\n const node = nodeRef.current;\n\n // onEnterXxx and onExitXxx callbacks have a different arguments.length value.\n if (maybeIsAppearing === undefined) {\n callback(node);\n } else {\n callback(node, maybeIsAppearing);\n }\n }\n };\n const getWrapperSize = () => wrapperRef.current ? wrapperRef.current[isHorizontal ? 'clientWidth' : 'clientHeight'] : 0;\n const handleEnter = normalizedTransitionCallback((node, isAppearing) => {\n if (wrapperRef.current && isHorizontal) {\n // Set absolute position to get the size of collapsed content\n wrapperRef.current.style.position = 'absolute';\n }\n node.style[size] = collapsedSize;\n if (onEnter) {\n onEnter(node, isAppearing);\n }\n });\n const handleEntering = normalizedTransitionCallback((node, isAppearing) => {\n const wrapperSize = getWrapperSize();\n if (wrapperRef.current && isHorizontal) {\n // After the size is read reset the position back to default\n wrapperRef.current.style.position = '';\n }\n const {\n duration: transitionDuration,\n easing: transitionTimingFunction\n } = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'enter'\n });\n if (timeout === 'auto') {\n const duration2 = theme.transitions.getAutoHeightDuration(wrapperSize);\n node.style.transitionDuration = `${duration2}ms`;\n autoTransitionDuration.current = duration2;\n } else {\n node.style.transitionDuration = typeof transitionDuration === 'string' ? transitionDuration : `${transitionDuration}ms`;\n }\n node.style[size] = `${wrapperSize}px`;\n node.style.transitionTimingFunction = transitionTimingFunction;\n if (onEntering) {\n onEntering(node, isAppearing);\n }\n });\n const handleEntered = normalizedTransitionCallback((node, isAppearing) => {\n node.style[size] = 'auto';\n if (onEntered) {\n onEntered(node, isAppearing);\n }\n });\n const handleExit = normalizedTransitionCallback(node => {\n node.style[size] = `${getWrapperSize()}px`;\n if (onExit) {\n onExit(node);\n }\n });\n const handleExited = normalizedTransitionCallback(onExited);\n const handleExiting = normalizedTransitionCallback(node => {\n const wrapperSize = getWrapperSize();\n const {\n duration: transitionDuration,\n easing: transitionTimingFunction\n } = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'exit'\n });\n if (timeout === 'auto') {\n // TODO: rename getAutoHeightDuration to something more generic (width support)\n // Actually it just calculates animation duration based on size\n const duration2 = theme.transitions.getAutoHeightDuration(wrapperSize);\n node.style.transitionDuration = `${duration2}ms`;\n autoTransitionDuration.current = duration2;\n } else {\n node.style.transitionDuration = typeof transitionDuration === 'string' ? transitionDuration : `${transitionDuration}ms`;\n }\n node.style[size] = collapsedSize;\n node.style.transitionTimingFunction = transitionTimingFunction;\n if (onExiting) {\n onExiting(node);\n }\n });\n const handleAddEndListener = next => {\n if (timeout === 'auto') {\n timer.current = setTimeout(next, autoTransitionDuration.current || 0);\n }\n if (addEndListener) {\n // Old call signature before `react-transition-group` implemented `nodeRef`\n addEndListener(nodeRef.current, next);\n }\n };\n return /*#__PURE__*/_jsx(TransitionComponent, _extends({\n in: inProp,\n onEnter: handleEnter,\n onEntered: handleEntered,\n onEntering: handleEntering,\n onExit: handleExit,\n onExited: handleExited,\n onExiting: handleExiting,\n addEndListener: handleAddEndListener,\n nodeRef: nodeRef,\n timeout: timeout === 'auto' ? null : timeout\n }, other, {\n children: (state, childProps) => /*#__PURE__*/_jsx(CollapseRoot, _extends({\n as: component,\n className: clsx(classes.root, className, {\n 'entered': classes.entered,\n 'exited': !inProp && collapsedSize === '0px' && classes.hidden\n }[state]),\n style: _extends({\n [isHorizontal ? 'minWidth' : 'minHeight']: collapsedSize\n }, style),\n ownerState: _extends({}, ownerState, {\n state\n }),\n ref: handleRef\n }, childProps, {\n children: /*#__PURE__*/_jsx(CollapseWrapper, {\n ownerState: _extends({}, ownerState, {\n state\n }),\n className: classes.wrapper,\n ref: wrapperRef,\n children: /*#__PURE__*/_jsx(CollapseWrapperInner, {\n ownerState: _extends({}, ownerState, {\n state\n }),\n className: classes.wrapperInner,\n children: children\n })\n })\n }))\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Collapse.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Add a custom transition end trigger. Called with the transitioning DOM\n * node and a done callback. Allows for more fine grained transition end\n * logic. Note: Timeouts are still used as a fallback if provided.\n */\n addEndListener: PropTypes.func,\n /**\n * The content node to be collapsed.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The width (horizontal) or height (vertical) of the container when collapsed.\n * @default '0px'\n */\n collapsedSize: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: elementTypeAcceptingRef,\n /**\n * The transition timing function.\n * You may specify a single easing or a object containing enter and exit values.\n */\n easing: PropTypes.oneOfType([PropTypes.shape({\n enter: PropTypes.string,\n exit: PropTypes.string\n }), PropTypes.string]),\n /**\n * If `true`, the component will transition in.\n */\n in: PropTypes.bool,\n /**\n * @ignore\n */\n onEnter: PropTypes.func,\n /**\n * @ignore\n */\n onEntered: PropTypes.func,\n /**\n * @ignore\n */\n onEntering: PropTypes.func,\n /**\n * @ignore\n */\n onExit: PropTypes.func,\n /**\n * @ignore\n */\n onExited: PropTypes.func,\n /**\n * @ignore\n */\n onExiting: PropTypes.func,\n /**\n * The transition orientation.\n * @default 'vertical'\n */\n orientation: PropTypes.oneOf(['horizontal', 'vertical']),\n /**\n * @ignore\n */\n style: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n *\n * Set to 'auto' to automatically calculate transition time based on height.\n * @default duration.standard\n */\n timeout: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })])\n} : void 0;\nCollapse.muiSupportAuto = true;\nexport default Collapse;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchUtilityClass(slot) {\n return generateUtilityClass('MuiSwitch', slot);\n}\nconst switchClasses = generateUtilityClasses('MuiSwitch', ['root', 'edgeStart', 'edgeEnd', 'switchBase', 'colorPrimary', 'colorSecondary', 'sizeSmall', 'sizeMedium', 'checked', 'disabled', 'input', 'thumb', 'track']);\nexport default switchClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"color\", \"edge\", \"size\", \"sx\"];\n// @inheritedComponent IconButton\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha, darken, lighten } from '@mui/system';\nimport capitalize from '../utils/capitalize';\nimport SwitchBase from '../internal/SwitchBase';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport switchClasses, { getSwitchUtilityClass } from './switchClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n edge,\n size,\n color,\n checked,\n disabled\n } = ownerState;\n const slots = {\n root: ['root', edge && `edge${capitalize(edge)}`, `size${capitalize(size)}`],\n switchBase: ['switchBase', `color${capitalize(color)}`, checked && 'checked', disabled && 'disabled'],\n thumb: ['thumb'],\n track: ['track'],\n input: ['input']\n };\n const composedClasses = composeClasses(slots, getSwitchUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst SwitchRoot = styled('span', {\n name: 'MuiSwitch',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.edge && styles[`edge${capitalize(ownerState.edge)}`], styles[`size${capitalize(ownerState.size)}`]];\n }\n})(({\n ownerState\n}) => _extends({\n display: 'inline-flex',\n width: 34 + 12 * 2,\n height: 14 + 12 * 2,\n overflow: 'hidden',\n padding: 12,\n boxSizing: 'border-box',\n position: 'relative',\n flexShrink: 0,\n zIndex: 0,\n // Reset the stacking context.\n verticalAlign: 'middle',\n // For correct alignment with the text.\n '@media print': {\n colorAdjust: 'exact'\n }\n}, ownerState.edge === 'start' && {\n marginLeft: -8\n}, ownerState.edge === 'end' && {\n marginRight: -8\n}, ownerState.size === 'small' && {\n width: 40,\n height: 24,\n padding: 7,\n [`& .${switchClasses.thumb}`]: {\n width: 16,\n height: 16\n },\n [`& .${switchClasses.switchBase}`]: {\n padding: 4,\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(16px)'\n }\n }\n}));\nconst SwitchSwitchBase = styled(SwitchBase, {\n name: 'MuiSwitch',\n slot: 'SwitchBase',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.switchBase, {\n [`& .${switchClasses.input}`]: styles.input\n }, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme\n}) => ({\n position: 'absolute',\n top: 0,\n left: 0,\n zIndex: 1,\n // Render above the focus ripple.\n color: theme.vars ? theme.vars.palette.Switch.defaultColor : `${theme.palette.mode === 'light' ? theme.palette.common.white : theme.palette.grey[300]}`,\n transition: theme.transitions.create(['left', 'transform'], {\n duration: theme.transitions.duration.shortest\n }),\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(20px)'\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch.defaultDisabledColor : `${theme.palette.mode === 'light' ? theme.palette.grey[100] : theme.palette.grey[600]}`\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n opacity: 0.5\n },\n [`&.${switchClasses.disabled} + .${switchClasses.track}`]: {\n opacity: theme.vars ? theme.vars.opacity.switchTrackDisabled : `${theme.palette.mode === 'light' ? 0.12 : 0.2}`\n },\n [`& .${switchClasses.input}`]: {\n left: '-100%',\n width: '300%'\n }\n}), ({\n theme,\n ownerState\n}) => _extends({\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${switchClasses.checked}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main,\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch[`${ownerState.color}DisabledColor`] : `${theme.palette.mode === 'light' ? lighten(theme.palette[ownerState.color].main, 0.62) : darken(theme.palette[ownerState.color].main, 0.55)}`\n }\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].main\n }\n}));\nconst SwitchTrack = styled('span', {\n name: 'MuiSwitch',\n slot: 'Track',\n overridesResolver: (props, styles) => styles.track\n})(({\n theme\n}) => ({\n height: '100%',\n width: '100%',\n borderRadius: 14 / 2,\n zIndex: -1,\n transition: theme.transitions.create(['opacity', 'background-color'], {\n duration: theme.transitions.duration.shortest\n }),\n backgroundColor: theme.vars ? theme.vars.palette.common.onBackground : `${theme.palette.mode === 'light' ? theme.palette.common.black : theme.palette.common.white}`,\n opacity: theme.vars ? theme.vars.opacity.switchTrack : `${theme.palette.mode === 'light' ? 0.38 : 0.3}`\n}));\nconst SwitchThumb = styled('span', {\n name: 'MuiSwitch',\n slot: 'Thumb',\n overridesResolver: (props, styles) => styles.thumb\n})(({\n theme\n}) => ({\n boxShadow: (theme.vars || theme).shadows[1],\n backgroundColor: 'currentColor',\n width: 20,\n height: 20,\n borderRadius: '50%'\n}));\nconst Switch = /*#__PURE__*/React.forwardRef(function Switch(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiSwitch'\n });\n const {\n className,\n color = 'primary',\n edge = false,\n size = 'medium',\n sx\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n edge,\n size\n });\n const classes = useUtilityClasses(ownerState);\n const icon = /*#__PURE__*/_jsx(SwitchThumb, {\n className: classes.thumb,\n ownerState: ownerState\n });\n return /*#__PURE__*/_jsxs(SwitchRoot, {\n className: clsx(classes.root, className),\n sx: sx,\n ownerState: ownerState,\n children: [/*#__PURE__*/_jsx(SwitchSwitchBase, _extends({\n type: \"checkbox\",\n icon: icon,\n checkedIcon: icon,\n ref: ref,\n ownerState: ownerState\n }, other, {\n classes: _extends({}, classes, {\n root: classes.switchBase\n })\n })), /*#__PURE__*/_jsx(SwitchTrack, {\n className: classes.track,\n ownerState: ownerState\n })]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Switch.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The default checked state. Use when the component is not controlled.\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense switch styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n */\n value: PropTypes.any\n} : void 0;\nexport default Switch;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","getAccordionUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","AccordionRoot","styled","Paper","name","overridesResolver","props","styles","ownerState","_defineProperty","concat","accordionClasses","region","root","square","rounded","disableGutters","gutters","_ref2","_ref3","theme","transition","duration","transitions","shortest","position","create","overflowAnchor","left","top","right","height","content","opacity","backgroundColor","vars","palette","divider","display","expanded","marginTop","marginBottom","disabled","action","disabledBackground","_ref4","_extends","borderRadius","borderTopLeftRadius","shape","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","margin","React","inProps","ref","useThemeProps","childrenProp","children","className","_props$defaultExpande","defaultExpanded","_props$disabled","_props$disableGutters","expandedProp","onChange","_props$square","_props$TransitionComp","TransitionComponent","Collapse","TransitionProps","other","_objectWithoutPropertiesLoose","_useControlled","useControlled","controlled","state","_useControlled2","_slicedToArray","setExpandedState","handleChange","event","_React$Children$toArr","toArray","_React$Children$toArr2","_toArray","summary","slice","contextValue","toggle","classes","slots","composeClasses","useUtilityClasses","_jsxs","clsx","_jsx","AccordionContext","Provider","value","in","timeout","id","role","getAccordionDetailsUtilityClass","AccordionDetailsRoot","_ref","padding","spacing","getAccordionSummaryUtilityClass","AccordionSummaryRoot","ButtonBase","_extends2","minHeight","accordionSummaryClasses","focusVisible","focus","disabledOpacity","cursor","AccordionSummaryContent","flexGrow","AccordionSummaryExpandIconWrapper","expandIconWrapper","_ref5","color","active","transform","expandIcon","focusVisibleClassName","onClick","_React$useContext","_React$useContext$dis","focusRipple","disableRipple","component","getCollapseUtilityClass","CollapseRoot","orientation","entered","collapsedSize","hidden","overflow","width","visibility","CollapseWrapper","wrapper","CollapseWrapperInner","wrapperInner","addEndListener","_props$collapsedSize","collapsedSizeProp","easing","inProp","onEnter","onEntered","onEntering","onExit","onExited","onExiting","_props$orientation","style","_props$timeout","standard","Transition","useTheme","timer","wrapperRef","autoTransitionDuration","isHorizontal","size","clearTimeout","current","nodeRef","handleRef","useForkRef","normalizedTransitionCallback","callback","maybeIsAppearing","node","undefined","getWrapperSize","handleEnter","isAppearing","handleEntering","wrapperSize","_getTransitionProps","getTransitionProps","mode","transitionDuration","transitionTimingFunction","duration2","getAutoHeightDuration","handleEntered","handleExit","handleExited","handleExiting","_getTransitionProps2","next","setTimeout","childProps","as","muiSupportAuto","getSwitchUtilityClass","SwitchRoot","edge","capitalize","boxSizing","flexShrink","zIndex","verticalAlign","colorAdjust","marginLeft","marginRight","switchClasses","thumb","switchBase","checked","SwitchSwitchBase","SwitchBase","input","Switch","defaultColor","common","white","grey","defaultDisabledColor","track","switchTrackDisabled","_ref6","_ref7","activeChannel","hoverOpacity","alpha","main","mainChannel","lighten","darken","SwitchTrack","_ref8","onBackground","black","switchTrack","SwitchThumb","_ref9","boxShadow","shadows","_props$color","_props$edge","_props$size","sx","composedClasses","icon","type","checkedIcon"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/6624.695e9bbd.chunk.js b/portal-ui/build/static/js/6624.695e9bbd.chunk.js new file mode 100644 index 000000000..939608222 --- /dev/null +++ b/portal-ui/build/static/js/6624.695e9bbd.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[6624],{68096:function(e,r,o){o.d(r,{Z:function(){return w}});var n=o(29439),t=o(63366),a=o(87462),i=o(72791),l=o(28182),c=o(94419),d=o(31402),s=o(66934),u=o(35470),f=o(14036),m=o(19103),p=o(93840),v=o(75878),Z=o(21217);function h(e){return(0,Z.Z)("MuiFormControl",e)}(0,v.Z)("MuiFormControl",["root","marginNone","marginNormal","marginDense","fullWidth","disabled"]);var b=o(80184),g=["children","className","color","component","disabled","error","focused","fullWidth","hiddenLabel","margin","required","size","variant"],k=(0,s.ZP)("div",{name:"MuiFormControl",slot:"Root",overridesResolver:function(e,r){var o=e.ownerState;return(0,a.Z)({},r.root,r["margin".concat((0,f.Z)(o.margin))],o.fullWidth&&r.fullWidth)}})((function(e){var r=e.ownerState;return(0,a.Z)({display:"inline-flex",flexDirection:"column",position:"relative",minWidth:0,padding:0,margin:0,border:0,verticalAlign:"top"},"normal"===r.margin&&{marginTop:16,marginBottom:8},"dense"===r.margin&&{marginTop:8,marginBottom:4},r.fullWidth&&{width:"100%"})})),w=i.forwardRef((function(e,r){var o=(0,d.Z)({props:e,name:"MuiFormControl"}),s=o.children,v=o.className,Z=o.color,w=void 0===Z?"primary":Z,y=o.component,S=void 0===y?"div":y,C=o.disabled,x=void 0!==C&&C,R=o.error,P=void 0!==R&&R,F=o.focused,N=o.fullWidth,M=void 0!==N&&N,q=o.hiddenLabel,j=void 0!==q&&q,z=o.margin,L=void 0===z?"none":z,B=o.required,I=void 0!==B&&B,W=o.size,E=void 0===W?"medium":W,A=o.variant,O=void 0===A?"outlined":A,D=(0,t.Z)(o,g),T=(0,a.Z)({},o,{color:w,component:S,disabled:x,error:P,fullWidth:M,hiddenLabel:j,margin:L,required:I,size:E,variant:O}),G=function(e){var r=e.classes,o=e.margin,n=e.fullWidth,t={root:["root","none"!==o&&"margin".concat((0,f.Z)(o)),n&&"fullWidth"]};return(0,c.Z)(t,h,r)}(T),V=i.useState((function(){var e=!1;return s&&i.Children.forEach(s,(function(r){if((0,m.Z)(r,["Input","Select"])){var o=(0,m.Z)(r,["Select"])?r.props.input:r;o&&(0,u.B7)(o.props)&&(e=!0)}})),e})),H=(0,n.Z)(V,2),_=H[0],U=H[1],J=i.useState((function(){var e=!1;return s&&i.Children.forEach(s,(function(r){(0,m.Z)(r,["Input","Select"])&&((0,u.vd)(r.props,!0)||(0,u.vd)(r.props.inputProps,!0))&&(e=!0)})),e})),K=(0,n.Z)(J,2),Q=K[0],X=K[1],Y=i.useState(!1),$=(0,n.Z)(Y,2),ee=$[0],re=$[1];x&&ee&&re(!1);var oe,ne=void 0===F||x?ee:F,te=i.useMemo((function(){return{adornedStart:_,setAdornedStart:U,color:w,disabled:x,error:P,filled:Q,focused:ne,fullWidth:M,hiddenLabel:j,size:E,onBlur:function(){re(!1)},onEmpty:function(){X(!1)},onFilled:function(){X(!0)},onFocus:function(){re(!0)},registerEffect:oe,required:I,variant:O}}),[_,w,x,P,Q,ne,M,j,oe,I,E,O]);return(0,b.jsx)(p.Z.Provider,{value:te,children:(0,b.jsx)(k,(0,a.Z)({as:S,ownerState:T,className:(0,l.Z)(G.root,v),ref:r},D,{children:s}))})}))},93840:function(e,r,o){var n=o(72791).createContext(void 0);r.Z=n},76147:function(e,r,o){function n(e){var r=e.props,o=e.states,n=e.muiFormControl;return o.reduce((function(e,o){return e[o]=r[o],n&&"undefined"===typeof r[o]&&(e[o]=n[o]),e}),{})}o.d(r,{Z:function(){return n}})},52930:function(e,r,o){o.d(r,{Z:function(){return a}});var n=o(72791),t=o(93840);function a(){return n.useContext(t.Z)}},85523:function(e,r,o){o.d(r,{Z:function(){return S}});var n=o(4942),t=o(63366),a=o(87462),i=o(72791),l=o(28182),c=o(94419),d=o(52930),s=o(20890),u=o(14036),f=o(66934),m=o(31402),p=o(75878),v=o(21217);function Z(e){return(0,v.Z)("MuiFormControlLabel",e)}var h=(0,p.Z)("MuiFormControlLabel",["root","labelPlacementStart","labelPlacementTop","labelPlacementBottom","disabled","label","error","required","asterisk"]),b=o(76147),g=o(80184),k=["checked","className","componentsProps","control","disabled","disableTypography","inputRef","label","labelPlacement","name","onChange","required","slotProps","value"],w=(0,f.ZP)("label",{name:"MuiFormControlLabel",slot:"Root",overridesResolver:function(e,r){var o=e.ownerState;return[(0,n.Z)({},"& .".concat(h.label),r.label),r.root,r["labelPlacement".concat((0,u.Z)(o.labelPlacement))]]}})((function(e){var r=e.theme,o=e.ownerState;return(0,a.Z)((0,n.Z)({display:"inline-flex",alignItems:"center",cursor:"pointer",verticalAlign:"middle",WebkitTapHighlightColor:"transparent",marginLeft:-11,marginRight:16},"&.".concat(h.disabled),{cursor:"default"}),"start"===o.labelPlacement&&{flexDirection:"row-reverse",marginLeft:16,marginRight:-11},"top"===o.labelPlacement&&{flexDirection:"column-reverse",marginLeft:16},"bottom"===o.labelPlacement&&{flexDirection:"column",marginLeft:16},(0,n.Z)({},"& .".concat(h.label),(0,n.Z)({},"&.".concat(h.disabled),{color:(r.vars||r).palette.text.disabled})))})),y=(0,f.ZP)("span",{name:"MuiFormControlLabel",slot:"Asterisk",overridesResolver:function(e,r){return r.asterisk}})((function(e){var r=e.theme;return(0,n.Z)({},"&.".concat(h.error),{color:(r.vars||r).palette.error.main})})),S=i.forwardRef((function(e,r){var o,n,f=(0,m.Z)({props:e,name:"MuiFormControlLabel"}),p=f.className,v=f.componentsProps,h=void 0===v?{}:v,S=f.control,C=f.disabled,x=f.disableTypography,R=f.label,P=f.labelPlacement,F=void 0===P?"end":P,N=f.required,M=f.slotProps,q=void 0===M?{}:M,j=(0,t.Z)(f,k),z=(0,d.Z)(),L=null!=(o=null!=C?C:S.props.disabled)?o:null==z?void 0:z.disabled,B=null!=N?N:S.props.required,I={disabled:L,required:B};["checked","name","onChange","value","inputRef"].forEach((function(e){"undefined"===typeof S.props[e]&&"undefined"!==typeof f[e]&&(I[e]=f[e])}));var W=(0,b.Z)({props:f,muiFormControl:z,states:["error"]}),E=(0,a.Z)({},f,{disabled:L,labelPlacement:F,required:B,error:W.error}),A=function(e){var r=e.classes,o=e.disabled,n=e.labelPlacement,t=e.error,a=e.required,i={root:["root",o&&"disabled","labelPlacement".concat((0,u.Z)(n)),t&&"error",a&&"required"],label:["label",o&&"disabled"],asterisk:["asterisk",t&&"error"]};return(0,c.Z)(i,Z,r)}(E),O=null!=(n=q.typography)?n:h.typography,D=R;return null==D||D.type===s.Z||x||(D=(0,g.jsx)(s.Z,(0,a.Z)({component:"span"},O,{className:(0,l.Z)(A.label,null==O?void 0:O.className),children:D}))),(0,g.jsxs)(w,(0,a.Z)({className:(0,l.Z)(A.root,p),ownerState:E,ref:r},j,{children:[i.cloneElement(S,I),D,B&&(0,g.jsxs)(y,{ownerState:E,"aria-hidden":!0,className:A.asterisk,children:["\u2009","*"]})]}))}))},17133:function(e,r,o){var n=o(4942),t=o(63366),a=o(87462),i=o(72791),l=o(28182),c=o(94419),d=o(76147),s=o(52930),u=o(14036),f=o(31402),m=o(66934),p=o(10843),v=o(80184),Z=["children","className","color","component","disabled","error","filled","focused","required"],h=(0,m.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,r){var o=e.ownerState;return(0,a.Z)({},r.root,"secondary"===o.color&&r.colorSecondary,o.filled&&r.filled)}})((function(e){var r,o=e.theme,t=e.ownerState;return(0,a.Z)({color:(o.vars||o).palette.text.secondary},o.typography.body1,(r={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(r,"&.".concat(p.Z.focused),{color:(o.vars||o).palette[t.color].main}),(0,n.Z)(r,"&.".concat(p.Z.disabled),{color:(o.vars||o).palette.text.disabled}),(0,n.Z)(r,"&.".concat(p.Z.error),{color:(o.vars||o).palette.error.main}),r))})),b=(0,m.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,r){return r.asterisk}})((function(e){var r=e.theme;return(0,n.Z)({},"&.".concat(p.Z.error),{color:(r.vars||r).palette.error.main})})),g=i.forwardRef((function(e,r){var o=(0,f.Z)({props:e,name:"MuiFormLabel"}),n=o.children,i=o.className,m=o.component,g=void 0===m?"label":m,k=(0,t.Z)(o,Z),w=(0,s.Z)(),y=(0,d.Z)({props:o,muiFormControl:w,states:["color","required","focused","disabled","error","filled"]}),S=(0,a.Z)({},o,{color:y.color||"primary",component:g,disabled:y.disabled,error:y.error,filled:y.filled,focused:y.focused,required:y.required}),C=function(e){var r=e.classes,o=e.color,n=e.focused,t=e.disabled,a=e.error,i=e.filled,l=e.required,d={root:["root","color".concat((0,u.Z)(o)),t&&"disabled",a&&"error",i&&"filled",n&&"focused",l&&"required"],asterisk:["asterisk",a&&"error"]};return(0,c.Z)(d,p.M,r)}(S);return(0,v.jsxs)(h,(0,a.Z)({as:g,ownerState:S,className:(0,l.Z)(C.root,i),ref:r},k,{children:[n,y.required&&(0,v.jsxs)(b,{ownerState:S,"aria-hidden":!0,className:C.asterisk,children:["\u2009","*"]})]}))}));r.Z=g},10843:function(e,r,o){o.d(r,{M:function(){return a}});var n=o(75878),t=o(21217);function a(e){return(0,t.Z)("MuiFormLabel",e)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);r.Z=i},35470:function(e,r,o){function n(e){return null!=e&&!(Array.isArray(e)&&0===e.length)}function t(e){var r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return e&&(n(e.value)&&""!==e.value||r&&n(e.defaultValue)&&""!==e.defaultValue)}function a(e){return e.startAdornment}o.d(r,{B7:function(){return a},vd:function(){return t}})},61419:function(e,r,o){o.d(r,{Z:function(){return j}});var n=o(4942),t=o(63366),a=o(87462),i=o(72791),l=o(28182),c=o(94419),d=o(12065),s=o(97278),u=o(31402),f=o(76189),m=o(80184),p=(0,f.Z)((0,m.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"RadioButtonUnchecked"),v=(0,f.Z)((0,m.jsx)("path",{d:"M8.465 8.465C9.37 7.56 10.62 7 12 7C14.76 7 17 9.24 17 12C17 13.38 16.44 14.63 15.535 15.535C14.63 16.44 13.38 17 12 17C9.24 17 7 14.76 7 12C7 10.62 7.56 9.37 8.465 8.465Z"}),"RadioButtonChecked"),Z=o(66934),h=(0,Z.ZP)("span")({position:"relative",display:"flex"}),b=(0,Z.ZP)(p)({transform:"scale(1)"}),g=(0,Z.ZP)(v)((function(e){var r=e.theme,o=e.ownerState;return(0,a.Z)({left:0,position:"absolute",transform:"scale(0)",transition:r.transitions.create("transform",{easing:r.transitions.easing.easeIn,duration:r.transitions.duration.shortest})},o.checked&&{transform:"scale(1)",transition:r.transitions.create("transform",{easing:r.transitions.easing.easeOut,duration:r.transitions.duration.shortest})})}));var k=function(e){var r=e.checked,o=void 0!==r&&r,n=e.classes,t=void 0===n?{}:n,i=e.fontSize,l=(0,a.Z)({},e,{checked:o});return(0,m.jsxs)(h,{className:t.root,ownerState:l,children:[(0,m.jsx)(b,{fontSize:i,className:t.background,ownerState:l}),(0,m.jsx)(g,{fontSize:i,className:t.dot,ownerState:l})]})},w=o(14036),y=o(31260),S=o(18672);var C=o(75878),x=o(21217);function R(e){return(0,x.Z)("MuiRadio",e)}var P=(0,C.Z)("MuiRadio",["root","checked","disabled","colorPrimary","colorSecondary"]),F=["checked","checkedIcon","color","icon","name","onChange","size","className"],N=(0,Z.ZP)(s.Z,{shouldForwardProp:function(e){return(0,Z.FO)(e)||"classes"===e},name:"MuiRadio",slot:"Root",overridesResolver:function(e,r){var o=e.ownerState;return[r.root,r["color".concat((0,w.Z)(o.color))]]}})((function(e){var r=e.theme,o=e.ownerState;return(0,a.Z)({color:(r.vars||r).palette.text.secondary},!o.disableRipple&&{"&:hover":{backgroundColor:r.vars?"rgba(".concat("default"===o.color?r.vars.palette.action.activeChannel:r.vars.palette[o.color].mainChannel," / ").concat(r.vars.palette.action.hoverOpacity,")"):(0,d.Fq)("default"===o.color?r.palette.action.active:r.palette[o.color].main,r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==o.color&&(0,n.Z)({},"&.".concat(P.checked),{color:(r.vars||r).palette[o.color].main}),(0,n.Z)({},"&.".concat(P.disabled),{color:(r.vars||r).palette.action.disabled}))}));var M=(0,m.jsx)(k,{checked:!0}),q=(0,m.jsx)(k,{}),j=i.forwardRef((function(e,r){var o,n,d,s,f=(0,u.Z)({props:e,name:"MuiRadio"}),p=f.checked,v=f.checkedIcon,Z=void 0===v?M:v,h=f.color,b=void 0===h?"primary":h,g=f.icon,k=void 0===g?q:g,C=f.name,x=f.onChange,P=f.size,j=void 0===P?"medium":P,z=f.className,L=(0,t.Z)(f,F),B=(0,a.Z)({},f,{color:b,size:j}),I=function(e){var r=e.classes,o=e.color,n={root:["root","color".concat((0,w.Z)(o))]};return(0,a.Z)({},r,(0,c.Z)(n,R,r))}(B),W=i.useContext(S.Z),E=p,A=(0,y.Z)(x,W&&W.onChange),O=C;return W&&("undefined"===typeof E&&(d=W.value,E="object"===typeof(s=f.value)&&null!==s?d===s:String(d)===String(s)),"undefined"===typeof O&&(O=W.name)),(0,m.jsx)(N,(0,a.Z)({type:"radio",icon:i.cloneElement(k,{fontSize:null!=(o=q.props.fontSize)?o:j}),checkedIcon:i.cloneElement(Z,{fontSize:null!=(n=M.props.fontSize)?n:j}),ownerState:B,classes:I,name:O,checked:E,onChange:A,ref:r,className:(0,l.Z)(I.root,z)},L))}))},10765:function(e,r,o){o.d(r,{Z:function(){return x}});var n=o(29439),t=o(87462),a=o(63366),i=o(72791),l=o(28182),c=o(94419),d=o(66934),s=o(31402),u=o(75878),f=o(21217);function m(e){return(0,f.Z)("MuiFormGroup",e)}(0,u.Z)("MuiFormGroup",["root","row","error"]);var p=o(52930),v=o(76147),Z=o(80184),h=["className","row"],b=(0,d.ZP)("div",{name:"MuiFormGroup",slot:"Root",overridesResolver:function(e,r){var o=e.ownerState;return[r.root,o.row&&r.row]}})((function(e){var r=e.ownerState;return(0,t.Z)({display:"flex",flexDirection:"column",flexWrap:"wrap"},r.row&&{flexDirection:"row"})})),g=i.forwardRef((function(e,r){var o=(0,s.Z)({props:e,name:"MuiFormGroup"}),n=o.className,i=o.row,d=void 0!==i&&i,u=(0,a.Z)(o,h),f=(0,p.Z)(),g=(0,v.Z)({props:o,muiFormControl:f,states:["error"]}),k=(0,t.Z)({},o,{row:d,error:g.error}),w=function(e){var r=e.classes,o={root:["root",e.row&&"row",e.error&&"error"]};return(0,c.Z)(o,m,r)}(k);return(0,Z.jsx)(b,(0,t.Z)({className:(0,l.Z)(w.root,n),ownerState:k,ref:r},u))})),k=o(42071),w=o(98278),y=o(18672),S=o(67384),C=["actions","children","defaultValue","name","onChange","value"],x=i.forwardRef((function(e,r){var o=e.actions,l=e.children,c=e.defaultValue,d=e.name,s=e.onChange,u=e.value,f=(0,a.Z)(e,C),m=i.useRef(null),p=(0,w.Z)({controlled:u,default:c,name:"RadioGroup"}),v=(0,n.Z)(p,2),h=v[0],b=v[1];i.useImperativeHandle(o,(function(){return{focus:function(){var e=m.current.querySelector("input:not(:disabled):checked");e||(e=m.current.querySelector("input:not(:disabled)")),e&&e.focus()}}}),[]);var x=(0,k.Z)(r,m),R=(0,S.Z)(d),P=i.useMemo((function(){return{name:R,onChange:function(e){b(e.target.value),s&&s(e,e.target.value)},value:h}}),[R,s,b,h]);return(0,Z.jsx)(y.Z.Provider,{value:P,children:(0,Z.jsx)(g,(0,t.Z)({role:"radiogroup",ref:x},f,{children:l}))})}))},18672:function(e,r,o){var n=o(72791).createContext(void 0);r.Z=n},97278:function(e,r,o){o.d(r,{Z:function(){return w}});var n=o(29439),t=o(63366),a=o(87462),i=o(72791),l=o(28182),c=o(94419),d=o(14036),s=o(66934),u=o(98278),f=o(52930),m=o(95080),p=o(75878),v=o(21217);function Z(e){return(0,v.Z)("PrivateSwitchBase",e)}(0,p.Z)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var h=o(80184),b=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],g=(0,s.ZP)(m.Z)((function(e){var r=e.ownerState;return(0,a.Z)({padding:9,borderRadius:"50%"},"start"===r.edge&&{marginLeft:"small"===r.size?-3:-12},"end"===r.edge&&{marginRight:"small"===r.size?-3:-12})})),k=(0,s.ZP)("input")({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),w=i.forwardRef((function(e,r){var o=e.autoFocus,i=e.checked,s=e.checkedIcon,m=e.className,p=e.defaultChecked,v=e.disabled,w=e.disableFocusRipple,y=void 0!==w&&w,S=e.edge,C=void 0!==S&&S,x=e.icon,R=e.id,P=e.inputProps,F=e.inputRef,N=e.name,M=e.onBlur,q=e.onChange,j=e.onFocus,z=e.readOnly,L=e.required,B=void 0!==L&&L,I=e.tabIndex,W=e.type,E=e.value,A=(0,t.Z)(e,b),O=(0,u.Z)({controlled:i,default:Boolean(p),name:"SwitchBase",state:"checked"}),D=(0,n.Z)(O,2),T=D[0],G=D[1],V=(0,f.Z)(),H=v;V&&"undefined"===typeof H&&(H=V.disabled);var _="checkbox"===W||"radio"===W,U=(0,a.Z)({},e,{checked:T,disabled:H,disableFocusRipple:y,edge:C}),J=function(e){var r=e.classes,o=e.checked,n=e.disabled,t=e.edge,a={root:["root",o&&"checked",n&&"disabled",t&&"edge".concat((0,d.Z)(t))],input:["input"]};return(0,c.Z)(a,Z,r)}(U);return(0,h.jsxs)(g,(0,a.Z)({component:"span",className:(0,l.Z)(J.root,m),centerRipple:!0,focusRipple:!y,disabled:H,tabIndex:null,role:void 0,onFocus:function(e){j&&j(e),V&&V.onFocus&&V.onFocus(e)},onBlur:function(e){M&&M(e),V&&V.onBlur&&V.onBlur(e)},ownerState:U,ref:r},A,{children:[(0,h.jsx)(k,(0,a.Z)({autoFocus:o,checked:i,defaultChecked:p,className:J.input,disabled:H,id:_?R:void 0,name:N,onChange:function(e){if(!e.nativeEvent.defaultPrevented){var r=e.target.checked;G(r),q&&q(e,r)}},readOnly:z,ref:F,required:B,ownerState:U,tabIndex:I,type:W},"checkbox"===W&&void 0===E?{}:{value:E},P)),T?s:x]}))}))},31260:function(e,r,o){var n=o(78949);r.Z=n.Z},19103:function(e,r,o){o.d(r,{Z:function(){return t}});var n=o(72791);var t=function(e,r){return n.isValidElement(e)&&-1!==r.indexOf(e.type.muiName)}},78949:function(e,r,o){function n(){for(var e=arguments.length,r=new Array(e),o=0;o {\n const {\n classes,\n margin,\n fullWidth\n } = ownerState;\n const slots = {\n root: ['root', margin !== 'none' && `margin${capitalize(margin)}`, fullWidth && 'fullWidth']\n };\n return composeClasses(slots, getFormControlUtilityClasses, classes);\n};\nconst FormControlRoot = styled('div', {\n name: 'MuiFormControl',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, styles[`margin${capitalize(ownerState.margin)}`], ownerState.fullWidth && styles.fullWidth);\n }\n})(({\n ownerState\n}) => _extends({\n display: 'inline-flex',\n flexDirection: 'column',\n position: 'relative',\n // Reset fieldset default style.\n minWidth: 0,\n padding: 0,\n margin: 0,\n border: 0,\n verticalAlign: 'top'\n}, ownerState.margin === 'normal' && {\n marginTop: 16,\n marginBottom: 8\n}, ownerState.margin === 'dense' && {\n marginTop: 8,\n marginBottom: 4\n}, ownerState.fullWidth && {\n width: '100%'\n}));\n\n/**\n * Provides context such as filled/focused/error/required for form inputs.\n * Relying on the context provides high flexibility and ensures that the state always stays\n * consistent across the children of the `FormControl`.\n * This context is used by the following components:\n *\n * - FormLabel\n * - FormHelperText\n * - Input\n * - InputLabel\n *\n * You can find one composition example below and more going to [the demos](/material-ui/react-text-field/#components).\n *\n * ```jsx\n * \n * Email address\n * \n * We'll never share your email.\n * \n * ```\n *\n * ⚠️ Only one `InputBase` can be used within a FormControl because it creates visual inconsistencies.\n * For instance, only one input can be focused at the same time, the state shouldn't be shared.\n */\nconst FormControl = /*#__PURE__*/React.forwardRef(function FormControl(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormControl'\n });\n const {\n children,\n className,\n color = 'primary',\n component = 'div',\n disabled = false,\n error = false,\n focused: visuallyFocused,\n fullWidth = false,\n hiddenLabel = false,\n margin = 'none',\n required = false,\n size = 'medium',\n variant = 'outlined'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n component,\n disabled,\n error,\n fullWidth,\n hiddenLabel,\n margin,\n required,\n size,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n const [adornedStart, setAdornedStart] = React.useState(() => {\n // We need to iterate through the children and find the Input in order\n // to fully support server-side rendering.\n let initialAdornedStart = false;\n if (children) {\n React.Children.forEach(children, child => {\n if (!isMuiElement(child, ['Input', 'Select'])) {\n return;\n }\n const input = isMuiElement(child, ['Select']) ? child.props.input : child;\n if (input && isAdornedStart(input.props)) {\n initialAdornedStart = true;\n }\n });\n }\n return initialAdornedStart;\n });\n const [filled, setFilled] = React.useState(() => {\n // We need to iterate through the children and find the Input in order\n // to fully support server-side rendering.\n let initialFilled = false;\n if (children) {\n React.Children.forEach(children, child => {\n if (!isMuiElement(child, ['Input', 'Select'])) {\n return;\n }\n if (isFilled(child.props, true) || isFilled(child.props.inputProps, true)) {\n initialFilled = true;\n }\n });\n }\n return initialFilled;\n });\n const [focusedState, setFocused] = React.useState(false);\n if (disabled && focusedState) {\n setFocused(false);\n }\n const focused = visuallyFocused !== undefined && !disabled ? visuallyFocused : focusedState;\n let registerEffect;\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const registeredInput = React.useRef(false);\n registerEffect = () => {\n if (registeredInput.current) {\n console.error(['MUI: There are multiple `InputBase` components inside a FormControl.', 'This creates visual inconsistencies, only use one `InputBase`.'].join('\\n'));\n }\n registeredInput.current = true;\n return () => {\n registeredInput.current = false;\n };\n };\n }\n const childContext = React.useMemo(() => {\n return {\n adornedStart,\n setAdornedStart,\n color,\n disabled,\n error,\n filled,\n focused,\n fullWidth,\n hiddenLabel,\n size,\n onBlur: () => {\n setFocused(false);\n },\n onEmpty: () => {\n setFilled(false);\n },\n onFilled: () => {\n setFilled(true);\n },\n onFocus: () => {\n setFocused(true);\n },\n registerEffect,\n required,\n variant\n };\n }, [adornedStart, color, disabled, error, filled, focused, fullWidth, hiddenLabel, registerEffect, required, size, variant]);\n return /*#__PURE__*/_jsx(FormControlContext.Provider, {\n value: childContext,\n children: /*#__PURE__*/_jsx(FormControlRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: children\n }))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? FormControl.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label, input and helper text should be displayed in a disabled state.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n * @default false\n */\n error: PropTypes.bool,\n /**\n * If `true`, the component is displayed in focused state.\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the component will take up the full width of its container.\n * @default false\n */\n fullWidth: PropTypes.bool,\n /**\n * If `true`, the label is hidden.\n * This is used to increase density for a `FilledInput`.\n * Be sure to add `aria-label` to the `input` element.\n * @default false\n */\n hiddenLabel: PropTypes.bool,\n /**\n * If `dense` or `normal`, will adjust vertical spacing of this and contained components.\n * @default 'none'\n */\n margin: PropTypes.oneOf(['dense', 'none', 'normal']),\n /**\n * If `true`, the label will indicate that the `input` is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n * @default 'outlined'\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default FormControl;","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormControlLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormControlLabel', slot);\n}\nconst formControlLabelClasses = generateUtilityClasses('MuiFormControlLabel', ['root', 'labelPlacementStart', 'labelPlacementTop', 'labelPlacementBottom', 'disabled', 'label', 'error', 'required', 'asterisk']);\nexport default formControlLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"checked\", \"className\", \"componentsProps\", \"control\", \"disabled\", \"disableTypography\", \"inputRef\", \"label\", \"labelPlacement\", \"name\", \"onChange\", \"required\", \"slotProps\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { useFormControl } from '../FormControl';\nimport Typography from '../Typography';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport formControlLabelClasses, { getFormControlLabelUtilityClasses } from './formControlLabelClasses';\nimport formControlState from '../FormControl/formControlState';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n disabled,\n labelPlacement,\n error,\n required\n } = ownerState;\n const slots = {\n root: ['root', disabled && 'disabled', `labelPlacement${capitalize(labelPlacement)}`, error && 'error', required && 'required'],\n label: ['label', disabled && 'disabled'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormControlLabelUtilityClasses, classes);\n};\nexport const FormControlLabelRoot = styled('label', {\n name: 'MuiFormControlLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formControlLabelClasses.label}`]: styles.label\n }, styles.root, styles[`labelPlacement${capitalize(ownerState.labelPlacement)}`]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'inline-flex',\n alignItems: 'center',\n cursor: 'pointer',\n // For correct alignment with the text.\n verticalAlign: 'middle',\n WebkitTapHighlightColor: 'transparent',\n marginLeft: -11,\n marginRight: 16,\n // used for row presentation of radio/checkbox\n [`&.${formControlLabelClasses.disabled}`]: {\n cursor: 'default'\n }\n}, ownerState.labelPlacement === 'start' && {\n flexDirection: 'row-reverse',\n marginLeft: 16,\n // used for row presentation of radio/checkbox\n marginRight: -11\n}, ownerState.labelPlacement === 'top' && {\n flexDirection: 'column-reverse',\n marginLeft: 16\n}, ownerState.labelPlacement === 'bottom' && {\n flexDirection: 'column',\n marginLeft: 16\n}, {\n [`& .${formControlLabelClasses.label}`]: {\n [`&.${formControlLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n }\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormControlLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formControlLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\n\n/**\n * Drop-in replacement of the `Radio`, `Switch` and `Checkbox` component.\n * Use this component if you want to display an extra label.\n */\nconst FormControlLabel = /*#__PURE__*/React.forwardRef(function FormControlLabel(inProps, ref) {\n var _ref, _slotProps$typography;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormControlLabel'\n });\n const {\n className,\n componentsProps = {},\n control,\n disabled: disabledProp,\n disableTypography,\n label: labelProp,\n labelPlacement = 'end',\n required: requiredProp,\n slotProps = {}\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const disabled = (_ref = disabledProp != null ? disabledProp : control.props.disabled) != null ? _ref : muiFormControl == null ? void 0 : muiFormControl.disabled;\n const required = requiredProp != null ? requiredProp : control.props.required;\n const controlProps = {\n disabled,\n required\n };\n ['checked', 'name', 'onChange', 'value', 'inputRef'].forEach(key => {\n if (typeof control.props[key] === 'undefined' && typeof props[key] !== 'undefined') {\n controlProps[key] = props[key];\n }\n });\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['error']\n });\n const ownerState = _extends({}, props, {\n disabled,\n labelPlacement,\n required,\n error: fcs.error\n });\n const classes = useUtilityClasses(ownerState);\n const typographySlotProps = (_slotProps$typography = slotProps.typography) != null ? _slotProps$typography : componentsProps.typography;\n let label = labelProp;\n if (label != null && label.type !== Typography && !disableTypography) {\n label = /*#__PURE__*/_jsx(Typography, _extends({\n component: \"span\"\n }, typographySlotProps, {\n className: clsx(classes.label, typographySlotProps == null ? void 0 : typographySlotProps.className),\n children: label\n }));\n }\n return /*#__PURE__*/_jsxs(FormControlLabelRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/React.cloneElement(control, controlProps), label, required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormControlLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component appears selected.\n */\n checked: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The props used for each slot inside.\n * @default {}\n */\n componentsProps: PropTypes.shape({\n typography: PropTypes.object\n }),\n /**\n * A control element. For instance, it can be a `Radio`, a `Switch` or a `Checkbox`.\n */\n control: PropTypes.element.isRequired,\n /**\n * If `true`, the control is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is rendered as it is passed without an additional typography node.\n */\n disableTypography: PropTypes.bool,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * A text or an element to be used in an enclosing label element.\n */\n label: PropTypes.node,\n /**\n * The position of the label.\n * @default 'end'\n */\n labelPlacement: PropTypes.oneOf(['bottom', 'end', 'start', 'top']),\n /**\n * @ignore\n */\n name: PropTypes.string,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The props used for each slot inside.\n * @default {}\n */\n slotProps: PropTypes.shape({\n typography: PropTypes.object\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default FormControlLabel;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","// Supports determination of isControlled().\n// Controlled input accepts its current value as a prop.\n//\n// @see https://facebook.github.io/react/docs/forms.html#controlled-components\n// @param value\n// @returns {boolean} true if string (including '') or number (including zero)\nexport function hasValue(value) {\n return value != null && !(Array.isArray(value) && value.length === 0);\n}\n\n// Determine if field is empty or filled.\n// Response determines if label is presented above field or as placeholder.\n//\n// @param obj\n// @param SSR\n// @returns {boolean} False when not present or empty string.\n// True when any number or string with length.\nexport function isFilled(obj, SSR = false) {\n return obj && (hasValue(obj.value) && obj.value !== '' || SSR && hasValue(obj.defaultValue) && obj.defaultValue !== '');\n}\n\n// Determine if an Input is adorned on start.\n// It's corresponding to the left with LTR.\n//\n// @param obj\n// @returns {boolean} False when no adornments.\n// True when adorned at the start.\nexport function isAdornedStart(obj) {\n return obj.startAdornment;\n}","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z\"\n}), 'RadioButtonUnchecked');","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M8.465 8.465C9.37 7.56 10.62 7 12 7C14.76 7 17 9.24 17 12C17 13.38 16.44 14.63 15.535 15.535C14.63 16.44 13.38 17 12 17C9.24 17 7 14.76 7 12C7 10.62 7.56 9.37 8.465 8.465Z\"\n}), 'RadioButtonChecked');","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport RadioButtonUncheckedIcon from '../internal/svg-icons/RadioButtonUnchecked';\nimport RadioButtonCheckedIcon from '../internal/svg-icons/RadioButtonChecked';\nimport styled from '../styles/styled';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst RadioButtonIconRoot = styled('span')({\n position: 'relative',\n display: 'flex'\n});\nconst RadioButtonIconBackground = styled(RadioButtonUncheckedIcon)({\n // Scale applied to prevent dot misalignment in Safari\n transform: 'scale(1)'\n});\nconst RadioButtonIconDot = styled(RadioButtonCheckedIcon)(({\n theme,\n ownerState\n}) => _extends({\n left: 0,\n position: 'absolute',\n transform: 'scale(0)',\n transition: theme.transitions.create('transform', {\n easing: theme.transitions.easing.easeIn,\n duration: theme.transitions.duration.shortest\n })\n}, ownerState.checked && {\n transform: 'scale(1)',\n transition: theme.transitions.create('transform', {\n easing: theme.transitions.easing.easeOut,\n duration: theme.transitions.duration.shortest\n })\n}));\n\n/**\n * @ignore - internal component.\n */\nfunction RadioButtonIcon(props) {\n const {\n checked = false,\n classes = {},\n fontSize\n } = props;\n const ownerState = _extends({}, props, {\n checked\n });\n return /*#__PURE__*/_jsxs(RadioButtonIconRoot, {\n className: classes.root,\n ownerState: ownerState,\n children: [/*#__PURE__*/_jsx(RadioButtonIconBackground, {\n fontSize: fontSize,\n className: classes.background,\n ownerState: ownerState\n }), /*#__PURE__*/_jsx(RadioButtonIconDot, {\n fontSize: fontSize,\n className: classes.dot,\n ownerState: ownerState\n })]\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? RadioButtonIcon.propTypes = {\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * The size of the component.\n * `small` is equivalent to the dense radio styling.\n */\n fontSize: PropTypes.oneOf(['small', 'medium'])\n} : void 0;\nexport default RadioButtonIcon;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getRadioUtilityClass(slot) {\n return generateUtilityClass('MuiRadio', slot);\n}\nconst radioClasses = generateUtilityClasses('MuiRadio', ['root', 'checked', 'disabled', 'colorPrimary', 'colorSecondary']);\nexport default radioClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"checked\", \"checkedIcon\", \"color\", \"icon\", \"name\", \"onChange\", \"size\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport SwitchBase from '../internal/SwitchBase';\nimport useThemeProps from '../styles/useThemeProps';\nimport RadioButtonIcon from './RadioButtonIcon';\nimport capitalize from '../utils/capitalize';\nimport createChainedFunction from '../utils/createChainedFunction';\nimport useRadioGroup from '../RadioGroup/useRadioGroup';\nimport radioClasses, { getRadioUtilityClass } from './radioClasses';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`]\n };\n return _extends({}, classes, composeClasses(slots, getRadioUtilityClass, classes));\n};\nconst RadioRoot = styled(SwitchBase, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiRadio',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, !ownerState.disableRipple && {\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${ownerState.color === 'default' ? theme.vars.palette.action.activeChannel : theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(ownerState.color === 'default' ? theme.palette.action.active : theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${radioClasses.checked}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n }\n}, {\n [`&.${radioClasses.disabled}`]: {\n color: (theme.vars || theme).palette.action.disabled\n }\n}));\nfunction areEqualValues(a, b) {\n if (typeof b === 'object' && b !== null) {\n return a === b;\n }\n\n // The value could be a number, the DOM will stringify it anyway.\n return String(a) === String(b);\n}\nconst defaultCheckedIcon = /*#__PURE__*/_jsx(RadioButtonIcon, {\n checked: true\n});\nconst defaultIcon = /*#__PURE__*/_jsx(RadioButtonIcon, {});\nconst Radio = /*#__PURE__*/React.forwardRef(function Radio(inProps, ref) {\n var _defaultIcon$props$fo, _defaultCheckedIcon$p;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiRadio'\n });\n const {\n checked: checkedProp,\n checkedIcon = defaultCheckedIcon,\n color = 'primary',\n icon = defaultIcon,\n name: nameProp,\n onChange: onChangeProp,\n size = 'medium',\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n size\n });\n const classes = useUtilityClasses(ownerState);\n const radioGroup = useRadioGroup();\n let checked = checkedProp;\n const onChange = createChainedFunction(onChangeProp, radioGroup && radioGroup.onChange);\n let name = nameProp;\n if (radioGroup) {\n if (typeof checked === 'undefined') {\n checked = areEqualValues(radioGroup.value, props.value);\n }\n if (typeof name === 'undefined') {\n name = radioGroup.name;\n }\n }\n return /*#__PURE__*/_jsx(RadioRoot, _extends({\n type: \"radio\",\n icon: /*#__PURE__*/React.cloneElement(icon, {\n fontSize: (_defaultIcon$props$fo = defaultIcon.props.fontSize) != null ? _defaultIcon$props$fo : size\n }),\n checkedIcon: /*#__PURE__*/React.cloneElement(checkedIcon, {\n fontSize: (_defaultCheckedIcon$p = defaultCheckedIcon.props.fontSize) != null ? _defaultCheckedIcon$p : size\n }),\n ownerState: ownerState,\n classes: classes,\n name: name,\n checked: checked,\n onChange: onChange,\n ref: ref,\n className: clsx(classes.root, className)\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? Radio.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n * @default \n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * The icon to display when the component is unchecked.\n * @default \n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Name attribute of the `input` element.\n */\n name: PropTypes.string,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense radio styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n */\n value: PropTypes.any\n} : void 0;\nexport default Radio;","import * as React from 'react';\nimport RadioGroupContext from './RadioGroupContext';\nexport default function useRadioGroup() {\n return React.useContext(RadioGroupContext);\n}","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormGroupUtilityClass(slot) {\n return generateUtilityClass('MuiFormGroup', slot);\n}\nconst formGroupClasses = generateUtilityClasses('MuiFormGroup', ['root', 'row', 'error']);\nexport default formGroupClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"row\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { getFormGroupUtilityClass } from './formGroupClasses';\nimport useFormControl from '../FormControl/useFormControl';\nimport formControlState from '../FormControl/formControlState';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n row,\n error\n } = ownerState;\n const slots = {\n root: ['root', row && 'row', error && 'error']\n };\n return composeClasses(slots, getFormGroupUtilityClass, classes);\n};\nconst FormGroupRoot = styled('div', {\n name: 'MuiFormGroup',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.row && styles.row];\n }\n})(({\n ownerState\n}) => _extends({\n display: 'flex',\n flexDirection: 'column',\n flexWrap: 'wrap'\n}, ownerState.row && {\n flexDirection: 'row'\n}));\n\n/**\n * `FormGroup` wraps controls such as `Checkbox` and `Switch`.\n * It provides compact row layout.\n * For the `Radio`, you should be using the `RadioGroup` component instead of this one.\n */\nconst FormGroup = /*#__PURE__*/React.forwardRef(function FormGroup(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormGroup'\n });\n const {\n className,\n row = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['error']\n });\n const ownerState = _extends({}, props, {\n row,\n error: fcs.error\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(FormGroupRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormGroup.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * Display group of elements in a compact row.\n * @default false\n */\n row: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormGroup;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"actions\", \"children\", \"defaultValue\", \"name\", \"onChange\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport FormGroup from '../FormGroup';\nimport useForkRef from '../utils/useForkRef';\nimport useControlled from '../utils/useControlled';\nimport RadioGroupContext from './RadioGroupContext';\nimport useId from '../utils/useId';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst RadioGroup = /*#__PURE__*/React.forwardRef(function RadioGroup(props, ref) {\n const {\n // private\n // eslint-disable-next-line react/prop-types\n actions,\n children,\n defaultValue,\n name: nameProp,\n onChange,\n value: valueProp\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const rootRef = React.useRef(null);\n const [value, setValueState] = useControlled({\n controlled: valueProp,\n default: defaultValue,\n name: 'RadioGroup'\n });\n React.useImperativeHandle(actions, () => ({\n focus: () => {\n let input = rootRef.current.querySelector('input:not(:disabled):checked');\n if (!input) {\n input = rootRef.current.querySelector('input:not(:disabled)');\n }\n if (input) {\n input.focus();\n }\n }\n }), []);\n const handleRef = useForkRef(ref, rootRef);\n const name = useId(nameProp);\n const contextValue = React.useMemo(() => ({\n name,\n onChange(event) {\n setValueState(event.target.value);\n if (onChange) {\n onChange(event, event.target.value);\n }\n },\n value\n }), [name, onChange, setValueState, value]);\n return /*#__PURE__*/_jsx(RadioGroupContext.Provider, {\n value: contextValue,\n children: /*#__PURE__*/_jsx(FormGroup, _extends({\n role: \"radiogroup\",\n ref: handleRef\n }, other, {\n children: children\n }))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? RadioGroup.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * The default value. Use when the component is not controlled.\n */\n defaultValue: PropTypes.any,\n /**\n * The name used to reference the value of the control.\n * If you don't provide this prop, it falls back to a randomly generated name.\n */\n name: PropTypes.string,\n /**\n * Callback fired when a radio button is selected.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * @param {string} value The value of the selected radio button.\n * You can pull out the new value by accessing `event.target.value` (string).\n */\n onChange: PropTypes.func,\n /**\n * Value of the selected radio button. The DOM API casts this to a string.\n */\n value: PropTypes.any\n} : void 0;\nexport default RadioGroup;","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst RadioGroupContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n RadioGroupContext.displayName = 'RadioGroupContext';\n}\nexport default RadioGroupContext;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchBaseUtilityClass(slot) {\n return generateUtilityClass('PrivateSwitchBase', slot);\n}\nconst switchBaseClasses = generateUtilityClasses('PrivateSwitchBase', ['root', 'checked', 'disabled', 'input', 'edgeStart', 'edgeEnd']);\nexport default switchBaseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"checked\", \"checkedIcon\", \"className\", \"defaultChecked\", \"disabled\", \"disableFocusRipple\", \"edge\", \"icon\", \"id\", \"inputProps\", \"inputRef\", \"name\", \"onBlur\", \"onChange\", \"onFocus\", \"readOnly\", \"required\", \"tabIndex\", \"type\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useControlled from '../utils/useControlled';\nimport useFormControl from '../FormControl/useFormControl';\nimport ButtonBase from '../ButtonBase';\nimport { getSwitchBaseUtilityClass } from './switchBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n checked,\n disabled,\n edge\n } = ownerState;\n const slots = {\n root: ['root', checked && 'checked', disabled && 'disabled', edge && `edge${capitalize(edge)}`],\n input: ['input']\n };\n return composeClasses(slots, getSwitchBaseUtilityClass, classes);\n};\nconst SwitchBaseRoot = styled(ButtonBase)(({\n ownerState\n}) => _extends({\n padding: 9,\n borderRadius: '50%'\n}, ownerState.edge === 'start' && {\n marginLeft: ownerState.size === 'small' ? -3 : -12\n}, ownerState.edge === 'end' && {\n marginRight: ownerState.size === 'small' ? -3 : -12\n}));\nconst SwitchBaseInput = styled('input')({\n cursor: 'inherit',\n position: 'absolute',\n opacity: 0,\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n zIndex: 1\n});\n\n/**\n * @ignore - internal component.\n */\nconst SwitchBase = /*#__PURE__*/React.forwardRef(function SwitchBase(props, ref) {\n const {\n autoFocus,\n checked: checkedProp,\n checkedIcon,\n className,\n defaultChecked,\n disabled: disabledProp,\n disableFocusRipple = false,\n edge = false,\n icon,\n id,\n inputProps,\n inputRef,\n name,\n onBlur,\n onChange,\n onFocus,\n readOnly,\n required = false,\n tabIndex,\n type,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [checked, setCheckedState] = useControlled({\n controlled: checkedProp,\n default: Boolean(defaultChecked),\n name: 'SwitchBase',\n state: 'checked'\n });\n const muiFormControl = useFormControl();\n const handleFocus = event => {\n if (onFocus) {\n onFocus(event);\n }\n if (muiFormControl && muiFormControl.onFocus) {\n muiFormControl.onFocus(event);\n }\n };\n const handleBlur = event => {\n if (onBlur) {\n onBlur(event);\n }\n if (muiFormControl && muiFormControl.onBlur) {\n muiFormControl.onBlur(event);\n }\n };\n const handleInputChange = event => {\n // Workaround for https://github.com/facebook/react/issues/9023\n if (event.nativeEvent.defaultPrevented) {\n return;\n }\n const newChecked = event.target.checked;\n setCheckedState(newChecked);\n if (onChange) {\n // TODO v6: remove the second argument.\n onChange(event, newChecked);\n }\n };\n let disabled = disabledProp;\n if (muiFormControl) {\n if (typeof disabled === 'undefined') {\n disabled = muiFormControl.disabled;\n }\n }\n const hasLabelFor = type === 'checkbox' || type === 'radio';\n const ownerState = _extends({}, props, {\n checked,\n disabled,\n disableFocusRipple,\n edge\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(SwitchBaseRoot, _extends({\n component: \"span\",\n className: clsx(classes.root, className),\n centerRipple: true,\n focusRipple: !disableFocusRipple,\n disabled: disabled,\n tabIndex: null,\n role: undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/_jsx(SwitchBaseInput, _extends({\n autoFocus: autoFocus,\n checked: checkedProp,\n defaultChecked: defaultChecked,\n className: classes.input,\n disabled: disabled,\n id: hasLabelFor ? id : undefined,\n name: name,\n onChange: handleInputChange,\n readOnly: readOnly,\n ref: inputRef,\n required: required,\n ownerState: ownerState,\n tabIndex: tabIndex,\n type: type\n }, type === 'checkbox' && value === undefined ? {} : {\n value\n }, inputProps)), checked ? checkedIcon : icon]\n }));\n});\n\n// NB: If changed, please update Checkbox, Switch and Radio\n// so that the API documentation is updated.\nprocess.env.NODE_ENV !== \"production\" ? SwitchBase.propTypes = {\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node.isRequired,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * @ignore\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the keyboard focus ripple is disabled.\n * @default false\n */\n disableFocusRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node.isRequired,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /*\n * @ignore\n */\n name: PropTypes.string,\n /**\n * @ignore\n */\n onBlur: PropTypes.func,\n /**\n * Callback fired when the state is changed.\n *\n * @param {object} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.object,\n /**\n * @ignore\n */\n tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The input component prop `type`.\n */\n type: PropTypes.string.isRequired,\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default SwitchBase;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}"],"names":["getFormControlUtilityClasses","slot","generateUtilityClass","generateUtilityClasses","_excluded","FormControlRoot","styled","name","overridesResolver","_ref","styles","ownerState","_extends","root","concat","capitalize","margin","fullWidth","_ref2","display","flexDirection","position","minWidth","padding","border","verticalAlign","marginTop","marginBottom","width","React","inProps","ref","props","useThemeProps","children","className","_props$color","color","_props$component","component","_props$disabled","disabled","_props$error","error","visuallyFocused","focused","_props$fullWidth","_props$hiddenLabel","hiddenLabel","_props$margin","_props$required","required","_props$size","size","_props$variant","variant","other","_objectWithoutPropertiesLoose","classes","slots","composeClasses","useUtilityClasses","_React$useState","initialAdornedStart","forEach","child","isMuiElement","input","isAdornedStart","_React$useState2","_slicedToArray","adornedStart","setAdornedStart","_React$useState3","initialFilled","isFilled","inputProps","_React$useState4","filled","setFilled","_React$useState5","_React$useState6","focusedState","setFocused","registerEffect","undefined","childContext","onBlur","onEmpty","onFilled","onFocus","_jsx","FormControlContext","Provider","value","as","clsx","formControlState","states","muiFormControl","reduce","acc","state","useFormControl","getFormControlLabelUtilityClasses","FormControlLabelRoot","_defineProperty","formControlLabelClasses","label","labelPlacement","_ref3","theme","alignItems","cursor","WebkitTapHighlightColor","marginLeft","marginRight","vars","palette","text","AsteriskComponent","asterisk","_ref4","main","_slotProps$typography","_props$componentsProp","componentsProps","control","disabledProp","disableTypography","labelProp","_props$labelPlacement","requiredProp","_props$slotProps","slotProps","controlProps","key","fcs","typographySlotProps","typography","type","Typography","_jsxs","FormLabelRoot","colorSecondary","_extends2","secondary","body1","lineHeight","formLabelClasses","FormLabel","getFormLabelUtilityClasses","hasValue","Array","isArray","length","obj","SSR","arguments","defaultValue","startAdornment","createSvgIcon","d","RadioButtonIconRoot","RadioButtonIconBackground","RadioButtonUncheckedIcon","transform","RadioButtonIconDot","RadioButtonCheckedIcon","left","transition","transitions","create","easing","easeIn","duration","shortest","checked","easeOut","_props$checked","_props$classes","fontSize","background","dot","getRadioUtilityClass","RadioRoot","SwitchBase","shouldForwardProp","prop","rootShouldForwardProp","disableRipple","backgroundColor","action","activeChannel","mainChannel","hoverOpacity","alpha","active","radioClasses","defaultCheckedIcon","RadioButtonIcon","defaultIcon","_defaultIcon$props$fo","_defaultCheckedIcon$p","a","b","checkedProp","_props$checkedIcon","checkedIcon","_props$icon","icon","nameProp","onChangeProp","onChange","radioGroup","RadioGroupContext","createChainedFunction","String","getFormGroupUtilityClass","FormGroupRoot","row","flexWrap","_props$row","actions","valueProp","rootRef","_useControlled","useControlled","controlled","default","_useControlled2","setValueState","focus","current","querySelector","handleRef","useForkRef","useId","contextValue","event","target","FormGroup","role","getSwitchBaseUtilityClass","SwitchBaseRoot","ButtonBase","borderRadius","edge","SwitchBaseInput","opacity","height","top","zIndex","autoFocus","defaultChecked","_props$disableFocusRi","disableFocusRipple","_props$edge","id","inputRef","readOnly","tabIndex","Boolean","setCheckedState","hasLabelFor","centerRipple","focusRipple","nativeEvent","defaultPrevented","newChecked","element","muiNames","indexOf","muiName","_len","funcs","_key","func","_len2","args","_key2","apply","this"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/6662.f9187fb2.chunk.js b/portal-ui/build/static/js/6662.f9187fb2.chunk.js deleted file mode 100644 index 2d805e389..000000000 --- a/portal-ui/build/static/js/6662.f9187fb2.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[6662,4882,7981,9581],{3579:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");e.Z=i},20165:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");e.Z=i},45649:function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=t(28610)},93840:function(r,e,t){"use strict";var n=t(72791).createContext(void 0);e.Z=n},76147:function(r,e,t){"use strict";function n(r){var e=r.props,t=r.states,n=r.muiFormControl;return t.reduce((function(r,t){return r[t]=e[t],n&&"undefined"===typeof e[t]&&(r[t]=n[t]),r}),{})}t.d(e,{Z:function(){return n}})},52930:function(r,e,t){"use strict";t.d(e,{Z:function(){return a}});var n=t(72791),o=t(93840);function a(){return n.useContext(o.Z)}},17133:function(r,e,t){"use strict";var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(28182),u=t(94419),l=t(76147),c=t(52930),d=t(14036),f=t(31402),m=t(66934),p=t(10843),Z=t(80184),v=["children","className","color","component","disabled","error","filled","focused","required"],x=(0,m.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return(0,a.Z)({},e.root,"secondary"===t.color&&e.colorSecondary,t.filled&&e.filled)}})((function(r){var e,t=r.theme,o=r.ownerState;return(0,a.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(e={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(e,"&.".concat(p.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(e,"&.".concat(p.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,n.Z)(e,"&.".concat(p.Z.error),{color:(t.vars||t).palette.error.main}),e))})),h=(0,m.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(r,e){return e.asterisk}})((function(r){var e=r.theme;return(0,n.Z)({},"&.".concat(p.Z.error),{color:(e.vars||e).palette.error.main})})),b=i.forwardRef((function(r,e){var t=(0,f.Z)({props:r,name:"MuiFormLabel"}),n=t.children,i=t.className,m=t.component,b=void 0===m?"label":m,k=(0,o.Z)(t,v),w=(0,c.Z)(),y=(0,l.Z)({props:t,muiFormControl:w,states:["color","required","focused","disabled","error","filled"]}),z=(0,a.Z)({},t,{color:y.color||"primary",component:b,disabled:y.disabled,error:y.error,filled:y.filled,focused:y.focused,required:y.required}),C=function(r){var e=r.classes,t=r.color,n=r.focused,o=r.disabled,a=r.error,i=r.filled,s=r.required,l={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",a&&"error"]};return(0,u.Z)(l,p.M,e)}(z);return(0,Z.jsxs)(x,(0,a.Z)({as:b,ownerState:z,className:(0,s.Z)(C.root,i),ref:e},k,{children:[n,y.required&&(0,Z.jsxs)(h,{ownerState:z,"aria-hidden":!0,className:C.asterisk,children:["\u2009","*"]})]}))}));e.Z=b},10843:function(r,e,t){"use strict";t.d(e,{M:function(){return a}});var n=t(75878),o=t(21217);function a(r){return(0,o.Z)("MuiFormLabel",r)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);e.Z=i},30829:function(r,e,t){"use strict";t.d(e,{Z:function(){return w}});var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(94419),u=t(28182),l=t(76147),c=t(52930),d=t(17133),f=t(10843),m=t(31402),p=t(66934),Z=t(75878),v=t(21217);function x(r){return(0,v.Z)("MuiInputLabel",r)}(0,Z.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var h=t(80184),b=["disableAnimation","margin","shrink","variant","className"],k=(0,p.ZP)(d.Z,{shouldForwardProp:function(r){return(0,p.FO)(r)||"classes"===r},name:"MuiInputLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),e.asterisk),e.root,t.formControl&&e.formControl,"small"===t.size&&e.sizeSmall,t.shrink&&e.shrink,!t.disableAnimation&&e.animated,e[t.variant]]}})((function(r){var e=r.theme,t=r.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:e.transitions.create(["color","transform","max-width"],{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut})},"filled"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),w=i.forwardRef((function(r,e){var t=(0,m.Z)({name:"MuiInputLabel",props:r}),n=t.disableAnimation,i=void 0!==n&&n,d=t.shrink,f=t.className,p=(0,o.Z)(t,b),Z=(0,c.Z)(),v=d;"undefined"===typeof v&&Z&&(v=Z.filled||Z.focused||Z.adornedStart);var w=(0,l.Z)({props:t,muiFormControl:Z,states:["size","variant","required"]}),y=(0,a.Z)({},t,{disableAnimation:i,formControl:Z,shrink:v,size:w.size,variant:w.variant,required:w.required}),z=function(r){var e=r.classes,t=r.formControl,n=r.size,o=r.shrink,i={root:["root",t&&"formControl",!r.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",r.variant],asterisk:[r.required&&"asterisk"]},u=(0,s.Z)(i,x,e);return(0,a.Z)({},e,u)}(y);return(0,h.jsx)(k,(0,a.Z)({"data-shrink":v,ownerState:y,ref:e,className:(0,u.Z)(z.root,f)},p,{classes:z}))}))},31260:function(r,e,t){"use strict";var n=t(78949);e.Z=n.Z},28610:function(r,e,t){"use strict";t.r(e),t.d(e,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return u},isMuiElement:function(){return l.Z},ownerDocument:function(){return c.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return m},unstable_ClassNameGenerator:function(){return w},unstable_useEnhancedEffect:function(){return p.Z},unstable_useId:function(){return Z.Z},unsupportedProp:function(){return v},useControlled:function(){return x.Z},useEventCallback:function(){return h.Z},useForkRef:function(){return b.Z},useIsFocusVisible:function(){return k.Z}});var n=t(55902),o=t(14036),a=t(31260),i=t(76189),s=t(83199);var u=function(r,e){return function(){return null}},l=t(19103),c=t(98301),d=t(17602);t(87462);var f=function(r,e){return function(){return null}},m=t(62971).Z,p=t(40162),Z=t(67384);var v=function(r,e,t,n,o){return null},x=t(98278),h=t(89683),b=t(42071),k=t(23031),w={configure:function(r){n.Z.configure(r)}}},19103:function(r,e,t){"use strict";t.d(e,{Z:function(){return o}});var n=t(72791);var o=function(r,e){return n.isValidElement(r)&&-1!==e.indexOf(r.type.muiName)}},78949:function(r,e,t){"use strict";function n(){for(var r=arguments.length,e=new Array(r),t=0;t {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","type","muiName","_len","arguments","length","funcs","Array","_key","func","_len2","args","_key2","apply","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/6895.66971403.chunk.js b/portal-ui/build/static/js/6895.66971403.chunk.js new file mode 100644 index 000000000..60ac9d4bf --- /dev/null +++ b/portal-ui/build/static/js/6895.66971403.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[6895],{66895:function(e,t,n){n.r(t);var i=n(29439),s=n(1413),c=n(72791),a=n(57689),l=n(29945),o=n(78687),r=n(11135),u=n(25787),d=n(23814),f=n(56087),b=n(38442),_=n(75578),T=n(87995),h=n(9859),x=n(81551),C=n(27454),I=n(47974),j=n(31776),F=n(82342),S=n(99670),m=n(80184),E=(0,_.Z)(c.lazy((function(){return n.e(9968).then(n.bind(n,39968))}))),p=(0,_.Z)(c.lazy((function(){return n.e(7494).then(n.bind(n,47494))}))),O=(0,_.Z)(c.lazy((function(){return n.e(4738).then(n.bind(n,84738))}))),k=(0,_.Z)(c.lazy((function(){return n.e(5707).then(n.bind(n,85707))}))),A=(0,_.Z)(c.lazy((function(){return n.e(5702).then(n.bind(n,25702))}))),N=(0,_.Z)(c.lazy((function(){return n.e(5759).then(n.bind(n,85759))}))),y=(0,_.Z)(c.lazy((function(){return Promise.all([n.e(5473),n.e(1715),n.e(222),n.e(5904),n.e(51)]).then(n.bind(n,51))})));t.default=(0,u.Z)((function(e){return(0,r.Z)((0,s.Z)((0,s.Z)({pageContainer:{height:"100%"}},d.qg),{},{capitalize:{textTransform:"capitalize"}},d.Bz))}))((function(e){var t,n=e.classes,s=(0,x.TL)(),r=(0,a.s0)(),u=(0,a.UO)(),d=(0,a.TH)(),_=(0,o.v9)(T.N5),g=(0,o.v9)(h.HQ),v=(0,o.v9)(h.G6),U=(0,o.v9)(T.gw),Z=(0,c.useState)(!1),B=(0,i.Z)(Z,2),L=B[0],z=B[1],G=(0,c.useState)(!1),P=(0,i.Z)(G,2),R=P[0],w=P[1],K=u.bucketName||"",D=(0,b.F)(K,f.o3),W=(0,b.F)(K,f.B);(0,c.useEffect)((function(){s((0,T.Sc)("bucket_details"))}),[]),(0,c.useEffect)((function(){L||(s((0,h.d5)(!0)),z(!0))}),[L,s,z]),(0,c.useEffect)((function(){g&&j.h.buckets.bucketInfo(K).then((function(e){s((0,h.d5)(!1)),s((0,h.f4)(e.data))})).catch((function(e){s((0,h.d5)(!1)),s((0,T.Ih)((0,F.g)(e)))}))}),[K,g,s]);var M="/buckets/".concat(K),Y={events:"/admin/events",replication:"/admin/replication",lifecycle:"/admin/lifecycle",access:"/admin/access",prefix:"/admin/prefix"},H=function(e){var t=Y[e];return t=t?"".concat(M).concat(t):"".concat(M).concat("/admin/summary")};return(0,m.jsxs)(c.Fragment,{children:[R&&(0,m.jsx)(E,{deleteOpen:R,selectedBucket:K,closeDeleteModalAndRefresh:function(e){!function(e){w(!1),e&&r("/buckets")}(e)}}),(0,m.jsx)(I.Z,{label:(0,m.jsx)(l.hbI,{label:"Buckets",onClick:function(){return r("/buckets")}}),actions:(0,m.jsxs)(c.Fragment,{children:[(0,m.jsx)(C.Z,{tooltip:W?"Browse Bucket":(0,f.MK)(f.D[f.EI.BUCKET_VIEWER],"browsing this bucket"),children:(0,m.jsx)(l.zxk,{id:"switch-browse-view","aria-label":"Browse Bucket",onClick:function(){r("/browser/".concat(K))},icon:(0,m.jsx)(l.ROc,{style:{width:20,height:20,marginTop:-3}}),style:{padding:"0 10px"},disabled:!W})}),(0,m.jsx)(S.Z,{})]})}),(0,m.jsxs)(l.Xgh,{children:[(0,m.jsx)(l.UHn,{icon:(0,m.jsx)(c.Fragment,{children:(0,m.jsx)(l.wNb,{width:40})}),title:K,subTitle:(0,m.jsxs)(b.s,{scopes:[f.Ft.S3_GET_BUCKET_POLICY,f.Ft.S3_GET_ACTIONS],resource:K,children:[(0,m.jsx)("span",{style:{fontSize:15},children:"Access: "}),(0,m.jsx)("span",{className:n.capitalize,style:{fontWeight:600,fontSize:15},children:null===v||void 0===v||null===(t=v.access)||void 0===t?void 0:t.toLowerCase()})]}),actions:(0,m.jsxs)(c.Fragment,{children:[(0,m.jsx)(b.s,{scopes:f.o3,resource:K,errorProps:{disabled:!0},children:(0,m.jsx)(C.Z,{tooltip:D?"":(0,f.MK)([f.Ft.S3_DELETE_BUCKET,f.Ft.S3_FORCE_DELETE_BUCKET],"deleting this bucket"),children:(0,m.jsx)(l.zxk,{id:"delete-bucket-button",onClick:function(){w(!0)},label:"Delete Bucket",icon:(0,m.jsx)(l.XHJ,{}),variant:"secondary",disabled:!D})})}),(0,m.jsx)(l.zxk,{id:"refresh-bucket-info",onClick:function(){s((0,h.d5)(!0))},label:"Refresh",icon:(0,m.jsx)(l.DuK,{})})]}),sx:{marginBottom:15}}),(0,m.jsx)(l.xuv,{children:(0,m.jsx)(l.mQc,{currentTabOrPath:d.pathname,useRouteTabs:!0,onTabClick:function(e){r(e)},options:[{tabConfig:{label:"Summary",id:"summary",to:H("summary")}},{tabConfig:{label:"Events",id:"events",disabled:!(0,b.F)(K,[f.Ft.S3_GET_BUCKET_NOTIFICATIONS,f.Ft.S3_PUT_BUCKET_NOTIFICATIONS,f.Ft.S3_GET_ACTIONS,f.Ft.S3_PUT_ACTIONS]),to:H("events")}},{tabConfig:{label:"Replication",id:"replication",disabled:!_||U.enabled&&U.curSite||!(0,b.F)(K,[f.Ft.S3_GET_REPLICATION_CONFIGURATION,f.Ft.S3_PUT_REPLICATION_CONFIGURATION,f.Ft.S3_GET_ACTIONS,f.Ft.S3_PUT_ACTIONS]),to:H("replication")}},{tabConfig:{label:"Lifecycle",id:"lifecycle",disabled:!_||!(0,b.F)(K,[f.Ft.S3_GET_LIFECYCLE_CONFIGURATION,f.Ft.S3_PUT_LIFECYCLE_CONFIGURATION,f.Ft.S3_GET_ACTIONS,f.Ft.S3_PUT_ACTIONS]),to:H("lifecycle")}},{tabConfig:{label:"Access",id:"access",disabled:!(0,b.F)(K,[f.Ft.ADMIN_GET_POLICY,f.Ft.ADMIN_LIST_USER_POLICIES,f.Ft.ADMIN_LIST_USERS]),to:H("access")}},{tabConfig:{label:"Anonymous",id:"anonymous",disabled:!(0,b.F)(K,[f.Ft.S3_GET_BUCKET_POLICY,f.Ft.S3_GET_ACTIONS]),to:H("prefix")}}],routes:(0,m.jsxs)(a.Z5,{children:[(0,m.jsx)(a.AW,{path:"summary",element:(0,m.jsx)(k,{})}),(0,m.jsx)(a.AW,{path:"events",element:(0,m.jsx)(A,{})}),_&&(0,m.jsx)(a.AW,{path:"replication",element:(0,m.jsx)(N,{})}),_&&(0,m.jsx)(a.AW,{path:"lifecycle",element:(0,m.jsx)(y,{})}),(0,m.jsx)(a.AW,{path:"access",element:(0,m.jsx)(O,{})}),(0,m.jsx)(a.AW,{path:"prefix",element:(0,m.jsx)(p,{})}),(0,m.jsx)(a.AW,{path:"*",element:(0,m.jsx)(a.Fg,{to:"/buckets/".concat(K,"/admin/summary")})})]})})})]})]})}))},75578:function(e,t,n){var i=n(1413),s=n(72791),c=n(80184);t.Z=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(n){return(0,c.jsx)(s.Suspense,{fallback:t,children:(0,c.jsx)(e,(0,i.Z)({},n))})}}}}]); +//# sourceMappingURL=6895.66971403.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/6895.66971403.chunk.js.map b/portal-ui/build/static/js/6895.66971403.chunk.js.map new file mode 100644 index 000000000..733a71381 --- /dev/null +++ b/portal-ui/build/static/js/6895.66971403.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/6895.66971403.chunk.js","mappings":"6VA+EMA,GAAeC,EAAAA,EAAAA,GACnBC,EAAAA,MAAW,kBAAM,+BAAqC,KAElDC,GAAkBF,EAAAA,EAAAA,GACtBC,EAAAA,MAAW,kBAAM,+BAA2B,KAExCE,GAAqBH,EAAAA,EAAAA,GACzBC,EAAAA,MAAW,kBAAM,+BAA8B,KAE3CG,GAAqBJ,EAAAA,EAAAA,GACzBC,EAAAA,MAAW,kBAAM,+BAA8B,KAE3CI,GAAoBL,EAAAA,EAAAA,GACxBC,EAAAA,MAAW,kBAAM,+BAA6B,KAE1CK,GAAyBN,EAAAA,EAAAA,GAC7BC,EAAAA,MAAW,kBAAM,+BAAkC,KAE/CM,GAAuBP,EAAAA,EAAAA,GAC3BC,EAAAA,MAAW,kBAAM,gFAAgC,KAqUnD,WAAeO,EAAAA,EAAAA,IAlUA,SAACC,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CACXC,cAAe,CACbC,OAAQ,SAEPC,EAAAA,IAAW,IACdC,WAAY,CACVC,cAAe,eAGdC,EAAAA,IACF,GAuTL,EAjTsB,SAAHC,GAA0C,IAADC,EAAnCC,EAAOF,EAAPE,QACjBC,GAAWC,EAAAA,EAAAA,MACXC,GAAWC,EAAAA,EAAAA,MACXC,GAASC,EAAAA,EAAAA,MACTC,GAAWC,EAAAA,EAAAA,MAEXC,GAAmBC,EAAAA,EAAAA,IAAYC,EAAAA,IAC/BC,GAAgBF,EAAAA,EAAAA,IAAYG,EAAAA,IAC5BC,GAAaJ,EAAAA,EAAAA,IAAYK,EAAAA,IACzBC,GAAsBN,EAAAA,EAAAA,IAAYO,EAAAA,IAExCC,GAA8BC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA/CI,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GAC1BI,GAAoCL,EAAAA,EAAAA,WAAkB,GAAMM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAArDE,EAAUD,EAAA,GAAEE,EAAaF,EAAA,GAC1BG,EAAavB,EAAOuB,YAAc,GAElCC,GAAYC,EAAAA,EAAAA,GAAcF,EAAYG,EAAAA,IACtCC,GAAYF,EAAAA,EAAAA,GAAcF,EAAYK,EAAAA,IAE5CC,EAAAA,EAAAA,YAAU,WACRjC,GAASkC,EAAAA,EAAAA,IAAY,kBAEvB,GAAG,KAEHD,EAAAA,EAAAA,YAAU,WACHZ,IACHrB,GAASmC,EAAAA,EAAAA,KAAqB,IAC9Bb,GAAW,GAEf,GAAG,CAACD,EAASrB,EAAUsB,KAEvBW,EAAAA,EAAAA,YAAU,WACJtB,GACFyB,EAAAA,EAAIC,QACDxB,WAAWc,GACXW,MAAK,SAACC,GACLvC,GAASmC,EAAAA,EAAAA,KAAqB,IAC9BnC,GAASwC,EAAAA,EAAAA,IAAcD,EAAIE,MAC7B,IACCC,OAAM,SAACC,GACN3C,GAASmC,EAAAA,EAAAA,KAAqB,IAC9BnC,GAAS4C,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,IAC/C,GAEN,GAAG,CAAChB,EAAYhB,EAAeX,IAE/B,IAAI8C,EAAa,YAAAC,OAAepB,GAG1BqB,EAA0C,CAC9CC,OAAQ,gBACRC,YAAa,qBACbC,UAAW,mBACXC,OAAQ,gBACRC,OAAQ,iBAGJC,EAAe,SAACC,GACpB,IAAIC,EAAOR,EAAmBO,GAM9B,OAFEC,EAHGA,EAGC,GAAAT,OAAMD,GAAaC,OAAGS,GAFtB,GAAAT,OAAMD,GAAaC,OAbN,iBAkBrB,EASA,OACEU,EAAAA,EAAAA,MAACC,EAAAA,SAAQ,CAAAC,SAAA,CACNlC,IACCmC,EAAAA,EAAAA,KAAClF,EAAY,CACX+C,WAAYA,EACZoC,eAAgBlC,EAChBmC,2BAA4B,SAACC,IAbF,SAACA,GAClCrC,GAAc,GACVqC,GACF7D,EAAS,WAEb,CASU4D,CAA2BC,EAC7B,KAGJH,EAAAA,EAAAA,KAACI,EAAAA,EAAiB,CAChBC,OACEL,EAAAA,EAAAA,KAACM,EAAAA,IAAQ,CAACD,MAAO,UAAWE,QAAS,kBAAMjE,EAAS,WAAW,IAEjEkE,SACEX,EAAAA,EAAAA,MAACC,EAAAA,SAAQ,CAAAC,SAAA,EACPC,EAAAA,EAAAA,KAACS,EAAAA,EAAc,CACbC,QACEvC,EACI,iBACAwC,EAAAA,EAAAA,IACEC,EAAAA,EAAgBC,EAAAA,GAAUC,eAC1B,wBAEPf,UAEDC,EAAAA,EAAAA,KAACe,EAAAA,IAAM,CACLC,GAAI,qBACJ,aAAW,gBACXT,QAAS,WACPjE,EAAS,YAAD6C,OAAapB,GACvB,EACAkD,MACEjB,EAAAA,EAAAA,KAACkB,EAAAA,IAAU,CACTC,MAAO,CAAEC,MAAO,GAAIxF,OAAQ,GAAIyF,WAAY,KAGhDF,MAAO,CACLG,QAAS,UAEXC,UAAWpD,OAGf6B,EAAAA,EAAAA,KAACwB,EAAAA,EAAQ,UAIf3B,EAAAA,EAAAA,MAAC4B,EAAAA,IAAU,CAAA1B,SAAA,EACTC,EAAAA,EAAAA,KAAC0B,EAAAA,IAAW,CACVT,MACEjB,EAAAA,EAAAA,KAACF,EAAAA,SAAQ,CAAAC,UACPC,EAAAA,EAAAA,KAAC2B,EAAAA,IAAW,CAACP,MAAO,OAGxBQ,MAAO7D,EACP8D,UACEhC,EAAAA,EAAAA,MAACiC,EAAAA,EAAe,CACdC,OAAQ,CACNC,EAAAA,GAAWC,qBACXD,EAAAA,GAAWE,gBAEbC,SAAUpE,EAAWgC,SAAA,EAErBC,EAAAA,EAAAA,KAAA,QAAMmB,MAAO,CAAEiB,SAAU,IAAKrC,SAAC,cAC/BC,EAAAA,EAAAA,KAAA,QACEqC,UAAWlG,EAAQL,WACnBqF,MAAO,CAAEmB,WAAY,IAAKF,SAAU,IAAKrC,SAE9B,OAAV9C,QAAU,IAAVA,GAAkB,QAARf,EAAVe,EAAYuC,cAAM,IAAAtD,OAAR,EAAVA,EAAoBqG,mBAI3B/B,SACEX,EAAAA,EAAAA,MAACC,EAAAA,SAAQ,CAAAC,SAAA,EACPC,EAAAA,EAAAA,KAAC8B,EAAAA,EAAe,CACdC,OAAQ7D,EAAAA,GACRiE,SAAUpE,EACVyE,WAAY,CAAEjB,UAAU,GAAOxB,UAE/BC,EAAAA,EAAAA,KAACS,EAAAA,EAAc,CACbC,QACE1C,EACI,IACA2C,EAAAA,EAAAA,IACE,CACEqB,EAAAA,GAAWS,iBACXT,EAAAA,GAAWU,wBAEb,wBAEP3C,UAEDC,EAAAA,EAAAA,KAACe,EAAAA,IAAM,CACLC,GAAI,uBACJT,QAAS,WACPzC,GAAc,EAChB,EACAuC,MAAO,gBACPY,MAAMjB,EAAAA,EAAAA,KAAC2C,EAAAA,IAAS,IAChBC,QAAS,YACTrB,UAAWvD,SAIjBgC,EAAAA,EAAAA,KAACe,EAAAA,IAAM,CACLC,GAAI,sBACJT,QAAS,WACPnE,GAASmC,EAAAA,EAAAA,KAAqB,GAChC,EACA8B,MAAO,UACPY,MAAMjB,EAAAA,EAAAA,KAAC6C,EAAAA,IAAW,SAIxBC,GAAI,CAAEC,aAAc,OAEtB/C,EAAAA,EAAAA,KAACgD,EAAAA,IAAG,CAAAjD,UACFC,EAAAA,EAAAA,KAACiD,EAAAA,IAAI,CACHC,iBAAkBxG,EAASyG,SAC3BC,cAAY,EACZC,WAAY,SAACC,GACXhH,EAASgH,EACX,EACAC,QAAS,CACP,CACEC,UAAW,CACTnD,MAAO,UACPW,GAAI,UACJyC,GAAI/D,EAAa,aAGrB,CACE8D,UAAW,CACTnD,MAAO,SACPW,GAAI,SACJO,WAAWtD,EAAAA,EAAAA,GAAcF,EAAY,CACnCiE,EAAAA,GAAW0B,4BACX1B,EAAAA,GAAW2B,4BACX3B,EAAAA,GAAWE,eACXF,EAAAA,GAAW4B,iBAEbH,GAAI/D,EAAa,YAGrB,CACE8D,UAAW,CACTnD,MAAO,cACPW,GAAI,cACJO,UACG3E,GACAO,EAAoB0G,SACnB1G,EAAoB2G,WACrB7F,EAAAA,EAAAA,GAAcF,EAAY,CACzBiE,EAAAA,GAAW+B,iCACX/B,EAAAA,GAAWgC,iCACXhC,EAAAA,GAAWE,eACXF,EAAAA,GAAW4B,iBAEfH,GAAI/D,EAAa,iBAGrB,CACE8D,UAAW,CACTnD,MAAO,YACPW,GAAI,YACJO,UACG3E,KACAqB,EAAAA,EAAAA,GAAcF,EAAY,CACzBiE,EAAAA,GAAWiC,+BACXjC,EAAAA,GAAWkC,+BACXlC,EAAAA,GAAWE,eACXF,EAAAA,GAAW4B,iBAEfH,GAAI/D,EAAa,eAGrB,CACE8D,UAAW,CACTnD,MAAO,SACPW,GAAI,SACJO,WAAWtD,EAAAA,EAAAA,GAAcF,EAAY,CACnCiE,EAAAA,GAAWmC,iBACXnC,EAAAA,GAAWoC,yBACXpC,EAAAA,GAAWqC,mBAEbZ,GAAI/D,EAAa,YAGrB,CACE8D,UAAW,CACTnD,MAAO,YACPW,GAAI,YACJO,WAAWtD,EAAAA,EAAAA,GAAcF,EAAY,CACnCiE,EAAAA,GAAWC,qBACXD,EAAAA,GAAWE,iBAEbuB,GAAI/D,EAAa,aAIvB4E,QACEzE,EAAAA,EAAAA,MAAC0E,EAAAA,GAAM,CAAAxE,SAAA,EACLC,EAAAA,EAAAA,KAACwE,EAAAA,GAAK,CAAC5E,KAAK,UAAU6E,SAASzE,EAAAA,EAAAA,KAAC7E,EAAkB,OAClD6E,EAAAA,EAAAA,KAACwE,EAAAA,GAAK,CAAC5E,KAAK,SAAS6E,SAASzE,EAAAA,EAAAA,KAAC5E,EAAiB,MAC/CwB,IACCoD,EAAAA,EAAAA,KAACwE,EAAAA,GAAK,CACJ5E,KAAK,cACL6E,SAASzE,EAAAA,EAAAA,KAAC3E,EAAsB,MAGnCuB,IACCoD,EAAAA,EAAAA,KAACwE,EAAAA,GAAK,CAAC5E,KAAK,YAAY6E,SAASzE,EAAAA,EAAAA,KAAC1E,EAAoB,OAGxD0E,EAAAA,EAAAA,KAACwE,EAAAA,GAAK,CAAC5E,KAAK,SAAS6E,SAASzE,EAAAA,EAAAA,KAAC9E,EAAkB,OACjD8E,EAAAA,EAAAA,KAACwE,EAAAA,GAAK,CAAC5E,KAAK,SAAS6E,SAASzE,EAAAA,EAAAA,KAAC/E,EAAe,OAC9C+E,EAAAA,EAAAA,KAACwE,EAAAA,GAAK,CACJ5E,KAAK,IACL6E,SACEzE,EAAAA,EAAAA,KAAC0E,EAAAA,GAAQ,CAACjB,GAAE,YAAAtE,OAAcpB,EAAU,kCAUxD,G,4DCpYA,IAfA,SACE4G,GAEC,IADDC,EAAmCC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,KAUtC,OARA,SAA+BG,GAC7B,OACEhF,EAAAA,EAAAA,KAACiF,EAAAA,SAAQ,CAACL,SAAUA,EAAS7E,UAC3BC,EAAAA,EAAAA,KAAC2E,GAAgBjJ,EAAAA,EAAAA,GAAA,GAAMsJ,KAG7B,CAGF,C","sources":["screens/Console/Buckets/BucketDetails/BucketDetails.tsx","screens/Console/Common/Components/withSuspense.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport {\n Navigate,\n Route,\n Routes,\n useLocation,\n useNavigate,\n useParams,\n} from \"react-router-dom\";\nimport {\n BackLink,\n Box,\n BucketsIcon,\n Button,\n FolderIcon,\n PageLayout,\n RefreshIcon,\n ScreenTitle,\n Tabs,\n TrashIcon,\n} from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n containerForHeader,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport {\n browseBucketPermissions,\n deleteBucketPermissions,\n IAM_PERMISSIONS,\n IAM_ROLES,\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../common/SecureComponent/permissions\";\n\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\n\nimport withSuspense from \"../../Common/Components/withSuspense\";\nimport {\n selDistSet,\n selSiteRep,\n setErrorSnackMessage,\n setHelpName,\n} from \"../../../../systemSlice\";\nimport {\n selBucketDetailsInfo,\n selBucketDetailsLoading,\n setBucketDetailsLoad,\n setBucketInfo,\n} from \"./bucketDetailsSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport HelpMenu from \"../../HelpMenu\";\n\nconst DeleteBucket = withSuspense(\n React.lazy(() => import(\"../ListBuckets/DeleteBucket\")),\n);\nconst AccessRulePanel = withSuspense(\n React.lazy(() => import(\"./AccessRulePanel\")),\n);\nconst AccessDetailsPanel = withSuspense(\n React.lazy(() => import(\"./AccessDetailsPanel\")),\n);\nconst BucketSummaryPanel = withSuspense(\n React.lazy(() => import(\"./BucketSummaryPanel\")),\n);\nconst BucketEventsPanel = withSuspense(\n React.lazy(() => import(\"./BucketEventsPanel\")),\n);\nconst BucketReplicationPanel = withSuspense(\n React.lazy(() => import(\"./BucketReplicationPanel\")),\n);\nconst BucketLifecyclePanel = withSuspense(\n React.lazy(() => import(\"./BucketLifecyclePanel\")),\n);\n\nconst styles = (theme: Theme) =>\n createStyles({\n pageContainer: {\n height: \"100%\",\n },\n ...searchField,\n capitalize: {\n textTransform: \"capitalize\",\n },\n\n ...containerForHeader,\n });\n\ninterface IBucketDetailsProps {\n classes: any;\n}\n\nconst BucketDetails = ({ classes }: IBucketDetailsProps) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const params = useParams();\n const location = useLocation();\n\n const distributedSetup = useSelector(selDistSet);\n const loadingBucket = useSelector(selBucketDetailsLoading);\n const bucketInfo = useSelector(selBucketDetailsInfo);\n const siteReplicationInfo = useSelector(selSiteRep);\n\n const [iniLoad, setIniLoad] = useState(false);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const bucketName = params.bucketName || \"\";\n\n const canDelete = hasPermission(bucketName, deleteBucketPermissions);\n const canBrowse = hasPermission(bucketName, browseBucketPermissions);\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_details\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!iniLoad) {\n dispatch(setBucketDetailsLoad(true));\n setIniLoad(true);\n }\n }, [iniLoad, dispatch, setIniLoad]);\n\n useEffect(() => {\n if (loadingBucket) {\n api.buckets\n .bucketInfo(bucketName)\n .then((res) => {\n dispatch(setBucketDetailsLoad(false));\n dispatch(setBucketInfo(res.data));\n })\n .catch((err) => {\n dispatch(setBucketDetailsLoad(false));\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n });\n }\n }, [bucketName, loadingBucket, dispatch]);\n\n let topLevelRoute = `/buckets/${bucketName}`;\n const defaultRoute = \"/admin/summary\";\n\n const manageBucketRoutes: Record = {\n events: \"/admin/events\",\n replication: \"/admin/replication\",\n lifecycle: \"/admin/lifecycle\",\n access: \"/admin/access\",\n prefix: \"/admin/prefix\",\n };\n\n const getRoutePath = (routeKey: string) => {\n let path = manageBucketRoutes[routeKey];\n if (!path) {\n path = `${topLevelRoute}${defaultRoute}`;\n } else {\n path = `${topLevelRoute}${path}`;\n }\n return path;\n };\n\n const closeDeleteModalAndRefresh = (refresh: boolean) => {\n setDeleteOpen(false);\n if (refresh) {\n navigate(\"/buckets\");\n }\n };\n\n return (\n \n {deleteOpen && (\n {\n closeDeleteModalAndRefresh(refresh);\n }}\n />\n )}\n navigate(\"/buckets\")} />\n }\n actions={\n \n \n {\n navigate(`/browser/${bucketName}`);\n }}\n icon={\n \n }\n style={{\n padding: \"0 10px\",\n }}\n disabled={!canBrowse}\n />\n \n \n \n }\n />\n \n \n \n \n }\n title={bucketName}\n subTitle={\n \n Access: \n \n {bucketInfo?.access?.toLowerCase()}\n \n \n }\n actions={\n \n \n \n {\n setDeleteOpen(true);\n }}\n label={\"Delete Bucket\"}\n icon={}\n variant={\"secondary\"}\n disabled={!canDelete}\n />\n \n \n {\n dispatch(setBucketDetailsLoad(true));\n }}\n label={\"Refresh\"}\n icon={}\n />\n \n }\n sx={{ marginBottom: 15 }}\n />\n \n {\n navigate(tab);\n }}\n options={[\n {\n tabConfig: {\n label: \"Summary\",\n id: \"summary\",\n to: getRoutePath(\"summary\"),\n },\n },\n {\n tabConfig: {\n label: \"Events\",\n id: \"events\",\n disabled: !hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_PUT_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]),\n to: getRoutePath(\"events\"),\n },\n },\n {\n tabConfig: {\n label: \"Replication\",\n id: \"replication\",\n disabled:\n !distributedSetup ||\n (siteReplicationInfo.enabled &&\n siteReplicationInfo.curSite) ||\n !hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_PUT_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]),\n to: getRoutePath(\"replication\"),\n },\n },\n {\n tabConfig: {\n label: \"Lifecycle\",\n id: \"lifecycle\",\n disabled:\n !distributedSetup ||\n !hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.S3_PUT_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]),\n to: getRoutePath(\"lifecycle\"),\n },\n },\n {\n tabConfig: {\n label: \"Access\",\n id: \"access\",\n disabled: !hasPermission(bucketName, [\n IAM_SCOPES.ADMIN_GET_POLICY,\n IAM_SCOPES.ADMIN_LIST_USER_POLICIES,\n IAM_SCOPES.ADMIN_LIST_USERS,\n ]),\n to: getRoutePath(\"access\"),\n },\n },\n {\n tabConfig: {\n label: \"Anonymous\",\n id: \"anonymous\",\n disabled: !hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]),\n to: getRoutePath(\"prefix\"),\n },\n },\n ]}\n routes={\n \n } />\n } />\n {distributedSetup && (\n }\n />\n )}\n {distributedSetup && (\n } />\n )}\n\n } />\n } />\n \n }\n />\n \n }\n />\n \n \n
\n );\n};\n\nexport default withStyles(styles)(BucketDetails);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n"],"names":["DeleteBucket","withSuspense","React","AccessRulePanel","AccessDetailsPanel","BucketSummaryPanel","BucketEventsPanel","BucketReplicationPanel","BucketLifecyclePanel","withStyles","theme","createStyles","_objectSpread","pageContainer","height","searchField","capitalize","textTransform","containerForHeader","_ref","_bucketInfo$access","classes","dispatch","useAppDispatch","navigate","useNavigate","params","useParams","location","useLocation","distributedSetup","useSelector","selDistSet","loadingBucket","selBucketDetailsLoading","bucketInfo","selBucketDetailsInfo","siteReplicationInfo","selSiteRep","_useState","useState","_useState2","_slicedToArray","iniLoad","setIniLoad","_useState3","_useState4","deleteOpen","setDeleteOpen","bucketName","canDelete","hasPermission","deleteBucketPermissions","canBrowse","browseBucketPermissions","useEffect","setHelpName","setBucketDetailsLoad","api","buckets","then","res","setBucketInfo","data","catch","err","setErrorSnackMessage","errorToHandler","topLevelRoute","concat","manageBucketRoutes","events","replication","lifecycle","access","prefix","getRoutePath","routeKey","path","_jsxs","Fragment","children","_jsx","selectedBucket","closeDeleteModalAndRefresh","refresh","PageHeaderWrapper","label","BackLink","onClick","actions","TooltipWrapper","tooltip","permissionTooltipHelper","IAM_PERMISSIONS","IAM_ROLES","BUCKET_VIEWER","Button","id","icon","FolderIcon","style","width","marginTop","padding","disabled","HelpMenu","PageLayout","ScreenTitle","BucketsIcon","title","subTitle","SecureComponent","scopes","IAM_SCOPES","S3_GET_BUCKET_POLICY","S3_GET_ACTIONS","resource","fontSize","className","fontWeight","toLowerCase","errorProps","S3_DELETE_BUCKET","S3_FORCE_DELETE_BUCKET","TrashIcon","variant","RefreshIcon","sx","marginBottom","Box","Tabs","currentTabOrPath","pathname","useRouteTabs","onTabClick","tab","options","tabConfig","to","S3_GET_BUCKET_NOTIFICATIONS","S3_PUT_BUCKET_NOTIFICATIONS","S3_PUT_ACTIONS","enabled","curSite","S3_GET_REPLICATION_CONFIGURATION","S3_PUT_REPLICATION_CONFIGURATION","S3_GET_LIFECYCLE_CONFIGURATION","S3_PUT_LIFECYCLE_CONFIGURATION","ADMIN_GET_POLICY","ADMIN_LIST_USER_POLICIES","ADMIN_LIST_USERS","routes","Routes","Route","element","Navigate","WrappedComponent","fallback","arguments","length","undefined","props","Suspense"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/6895.868de568.chunk.js b/portal-ui/build/static/js/6895.868de568.chunk.js deleted file mode 100644 index fdb0a3cd0..000000000 --- a/portal-ui/build/static/js/6895.868de568.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[6895],{66895:function(e,n,t){t.r(n);var i=t(29439),a=t(1413),r=t(72791),o=t(57689),l=t(11087),s=t(29945),c=t(78687),u=t(11135),d=t(25787),f=t(61889),h=t(23814),m=t(14917),x=t(64554),b=t(56087),p=t(50276),v=t(38442),C=t(75578),T=t(87995),Z=t(9859),j=t(81551),E=t(27454),g=t(47974),_=t(31776),I=t(82342),S=t(99670),y=t(80184),F=(0,C.Z)(r.lazy((function(){return t.e(9968).then(t.bind(t,39968))}))),w=(0,C.Z)(r.lazy((function(){return Promise.all([t.e(5473),t.e(5004),t.e(2983),t.e(7494)]).then(t.bind(t,47494))}))),N=(0,C.Z)(r.lazy((function(){return Promise.all([t.e(5473),t.e(5004),t.e(2983),t.e(4738)]).then(t.bind(t,84738))}))),A=(0,C.Z)(r.lazy((function(){return t.e(9918).then(t.bind(t,79918))}))),P=(0,C.Z)(r.lazy((function(){return t.e(5702).then(t.bind(t,25702))}))),k=(0,C.Z)(r.lazy((function(){return Promise.all([t.e(5994),t.e(5473),t.e(7391),t.e(5004),t.e(2983),t.e(2512)]).then(t.bind(t,32512))}))),M=(0,C.Z)(r.lazy((function(){return Promise.all([t.e(5994),t.e(5473),t.e(7391),t.e(5004),t.e(1520),t.e(6503),t.e(2983),t.e(51)]).then(t.bind(t,51))})));n.default=(0,d.Z)((function(e){return(0,u.Z)((0,a.Z)((0,a.Z)({pageContainer:{height:"100%"}},h.qg),{},{capitalize:{textTransform:"capitalize"}},h.Bz))}))((function(e){var n,t=e.classes,a=(0,j.TL)(),u=(0,o.s0)(),d=(0,o.UO)(),h=(0,c.v9)(T.N5),C=(0,c.v9)(Z.HQ),O=(0,c.v9)(Z.G6),U=(0,c.v9)(T.gw),B=(0,r.useState)(!1),R=(0,i.Z)(B,2),L=R[0],z=R[1],G=(0,r.useState)(!1),W=(0,i.Z)(G,2),D=W[0],K=W[1],H=d.bucketName||"",Q=d[0]||"";Q=Q||"summary";var Y=(0,r.useState)(Q),V=(0,i.Z)(Y,2),X=V[0],q=V[1],J=(0,v.F)(H,b.o3),$=(0,v.F)(H,b.B);(0,r.useEffect)((function(){q(Q)}),[Q]),(0,r.useEffect)((function(){a((0,T.Sc)("bucket_details"))}),[]),(0,r.useEffect)((function(){L||(a((0,Z.d5)(!0)),z(!0))}),[L,a,z]),(0,r.useEffect)((function(){C&&_.h.buckets.bucketInfo(H).then((function(e){a((0,Z.d5)(!1)),a((0,Z.f4)(e.data))})).catch((function(e){a((0,Z.d5)(!1)),a((0,T.Ih)((0,I.g)(e)))}))}),[H,C,a]);var ee="/buckets/".concat(H),ne={events:"/admin/events",replication:"/admin/replication",lifecycle:"/admin/lifecycle",access:"/admin/access",prefix:"/admin/prefix"},te=function(e){var n=ne[e];return n=n?"".concat(ee).concat(n):"".concat(ee).concat("/admin/summary")};return(0,y.jsxs)(r.Fragment,{children:[D&&(0,y.jsx)(F,{deleteOpen:D,selectedBucket:H,closeDeleteModalAndRefresh:function(e){!function(e){K(!1),e&&u("/buckets")}(e)}}),(0,y.jsx)(g.Z,{label:(0,y.jsx)(s.hbI,{label:"Buckets",onClick:function(){return u("/buckets")}}),actions:(0,y.jsxs)(r.Fragment,{children:[(0,y.jsx)(E.Z,{tooltip:$?"Browse Bucket":(0,b.MK)(b.D[b.EI.BUCKET_VIEWER],"browsing this bucket"),children:(0,y.jsx)(s.zxk,{id:"switch-browse-view","aria-label":"Browse Bucket",onClick:function(){u("/browser/".concat(H))},icon:(0,y.jsx)(s.ROc,{style:{width:20,height:20,marginTop:-3}}),style:{padding:"0 10px"},disabled:!$})}),(0,y.jsx)(S.Z,{})]})}),(0,y.jsxs)(s.Xgh,{className:t.pageContainer,children:[(0,y.jsx)(f.ZP,{item:!0,xs:12,children:(0,y.jsx)(m.Z,{icon:(0,y.jsx)(r.Fragment,{children:(0,y.jsx)(s.wNb,{width:40})}),title:H,subTitle:(0,y.jsxs)(v.s,{scopes:[b.Ft.S3_GET_BUCKET_POLICY,b.Ft.S3_GET_ACTIONS],resource:H,children:[(0,y.jsx)("span",{style:{fontSize:15},children:"Access: "}),(0,y.jsx)("span",{className:t.capitalize,style:{fontWeight:600,fontSize:15},children:null===O||void 0===O||null===(n=O.access)||void 0===n?void 0:n.toLowerCase()})]}),actions:(0,y.jsxs)(r.Fragment,{children:[(0,y.jsx)(v.s,{scopes:b.o3,resource:H,errorProps:{disabled:!0},children:(0,y.jsx)(E.Z,{tooltip:J?"":(0,b.MK)([b.Ft.S3_DELETE_BUCKET,b.Ft.S3_FORCE_DELETE_BUCKET],"deleting this bucket"),children:(0,y.jsx)(s.zxk,{id:"delete-bucket-button",onClick:function(){K(!0)},label:"Delete Bucket",icon:(0,y.jsx)(s.XHJ,{}),variant:"secondary",disabled:!J})})}),(0,y.jsx)(s.zxk,{id:"refresh-bucket-info",onClick:function(){a((0,Z.d5)(!0))},label:"Refresh",icon:(0,y.jsx)(s.DuK,{})})]})})}),(0,y.jsx)(x.Z,{sx:{border:"1px solid #eaeaea"},children:(0,y.jsxs)(p.Z,{selectedTab:X,isRouteTabs:!0,routes:(0,y.jsx)("div",{style:{padding:"2rem"},children:(0,y.jsxs)(o.Z5,{children:[(0,y.jsx)(o.AW,{path:"summary",element:(0,y.jsx)(A,{})}),(0,y.jsx)(o.AW,{path:"events",element:(0,y.jsx)(P,{})}),h&&(0,y.jsx)(o.AW,{path:"replication",element:(0,y.jsx)(k,{})}),h&&(0,y.jsx)(o.AW,{path:"lifecycle",element:(0,y.jsx)(M,{})}),(0,y.jsx)(o.AW,{path:"access",element:(0,y.jsx)(N,{})}),(0,y.jsx)(o.AW,{path:"prefix",element:(0,y.jsx)(w,{})}),(0,y.jsx)(o.AW,{path:"*",element:(0,y.jsx)(o.Fg,{to:"/buckets/".concat(H,"/admin/summary")})})]})}),children:[{tabConfig:{label:"Summary",value:"summary",component:l.rU,to:te("summary")}},{tabConfig:{label:"Events",value:"events",component:l.rU,disabled:!(0,v.F)(H,[b.Ft.S3_GET_BUCKET_NOTIFICATIONS,b.Ft.S3_PUT_BUCKET_NOTIFICATIONS,b.Ft.S3_GET_ACTIONS,b.Ft.S3_PUT_ACTIONS]),to:te("events")}},{tabConfig:{label:"Replication",value:"replication",component:l.rU,disabled:!h||U.enabled&&U.curSite||!(0,v.F)(H,[b.Ft.S3_GET_REPLICATION_CONFIGURATION,b.Ft.S3_PUT_REPLICATION_CONFIGURATION,b.Ft.S3_GET_ACTIONS,b.Ft.S3_PUT_ACTIONS]),to:te("replication")}},{tabConfig:{label:"Lifecycle",value:"lifecycle",component:l.rU,disabled:!h||!(0,v.F)(H,[b.Ft.S3_GET_LIFECYCLE_CONFIGURATION,b.Ft.S3_PUT_LIFECYCLE_CONFIGURATION,b.Ft.S3_GET_ACTIONS,b.Ft.S3_PUT_ACTIONS]),to:te("lifecycle")}},{tabConfig:{label:"Access",value:"access",component:l.rU,disabled:!(0,v.F)(H,[b.Ft.ADMIN_GET_POLICY,b.Ft.ADMIN_LIST_USER_POLICIES,b.Ft.ADMIN_LIST_USERS]),to:te("access")}},{tabConfig:{label:"Anonymous",value:"prefix",component:l.rU,disabled:!(0,v.F)(H,[b.Ft.S3_GET_BUCKET_POLICY,b.Ft.S3_GET_ACTIONS]),to:te("prefix")}}]})})]})]})}))},75578:function(e,n,t){var i=t(1413),a=t(72791),r=t(80184);n.Z=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(t){return(0,r.jsx)(a.Suspense,{fallback:n,children:(0,r.jsx)(e,(0,i.Z)({},t))})}}},14917:function(e,n,t){t(72791);var i=t(61889),a=t(72455),r=t(80184),o=(0,a.Z)((function(e){return{headerBarIcon:{marginRight:".7rem",color:e.palette.primary.main,"& .min-icon":{width:44,height:44},"@media (max-width: 600px)":{display:"none"}},headerBarSubheader:{color:"grey","@media (max-width: 900px)":{maxWidth:200}},stContainer:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:8,borderBottom:"1px solid #EAEAEA","@media (max-width: 600px)":{flexFlow:"column"}},titleColumn:{height:"auto",justifyContent:"center",display:"flex",flexFlow:"column",alignItems:"flex-start","& h1":{fontSize:19}},leftItems:{display:"flex",alignItems:"center","@media (max-width: 600px)":{flexFlow:"column",width:"100%"}},rightItems:{display:"flex",alignItems:"center","& button":{marginLeft:8},"@media (max-width: 600px)":{width:"100%"}}}}));n.Z=function(e){var n=e.icon,t=e.title,a=e.subTitle,l=e.actions,s=e.className,c=o();return(0,r.jsx)(i.ZP,{container:!0,children:(0,r.jsxs)(i.ZP,{item:!0,xs:12,className:"".concat(c.stContainer," ").concat(s||""),children:[(0,r.jsxs)("div",{className:c.leftItems,children:[n?(0,r.jsx)("div",{className:c.headerBarIcon,children:n}):null,(0,r.jsxs)("div",{className:c.titleColumn,children:[(0,r.jsx)("h1",{style:{margin:0},children:t}),(0,r.jsx)("span",{className:c.headerBarSubheader,children:a})]})]}),(0,r.jsx)("div",{className:c.rightItems,children:l})]})})}},50276:function(e,n,t){var i=t(1413),a=t(29439),r=t(72791),o=t(64554),l=t(43896),s=t(83449),c=t(47283),u=t(82851),d=t(25787),f=t(13967),h=t(11135),m=t(95193),x=t(57689),b=t(80184),p={minHeight:60};n.Z=(0,d.Z)((function(e){return(0,h.Z)({tabsContainer:{display:"flex",height:"100%",width:"100%"},tabsHeaderContainer:{width:"300px",background:"#F8F8F8",borderRight:"1px solid #EAEAEA","& .MuiTabs-root":{"& .MuiTabs-indicator":{display:"none"},"& .MuiTab-root":{display:"flex",flexFlow:"row",alignItems:"center",justifyContent:"flex-start",borderBottom:"1px solid #EAEAEA","& .MuiSvgIcon-root":{marginRight:8,marginBottom:0},"&.Mui-selected":{background:"#E5E5E5",fontWeight:600}},"&. MuiTabs-scroller":{display:"none"}}},tabContentContainer:{width:"100%","& .MuiTabPanel-root":{height:"100%"}},tabPanel:{height:"100%"},"@media (max-width: 900px)":{tabsContainer:{flexFlow:"column",flexDirection:"column"},tabsHeaderContainer:{width:"100%",borderBottom:" 1px solid #EAEAEA","& .MuiTabs-root .MuiTabs-scroller .MuiButtonBase-root":{borderBottom:" 0px"}}}})}))((function(e){var n=e.children,t=e.classes,d=e.selectedTab,h=void 0===d?"0":d,v=e.routes,C=e.isRouteTabs,T=(0,f.Z)(),Z=(0,x.TH)().pathname,j=void 0===Z?"":Z,E=(0,m.Z)(T.breakpoints.down("md")),g=(0,r.useState)(h),_=(0,a.Z)(g,2),I=_[0],S=_[1],y=[],F=[];if((0,r.useEffect)((function(){if(C){var e=n.find((function(e){return e.tabConfig.to===j}));e&&S(e.tabConfig.value)}}),[C,n,j]),!n)return null;n.forEach((function(e){y.push(e.tabConfig),F.push(e.content)}));return(0,b.jsx)(s.ZP,{value:"".concat(I),children:(0,b.jsxs)(o.Z,{className:t.tabsContainer,children:[(0,b.jsx)(o.Z,{className:t.tabsHeaderContainer,children:(0,b.jsx)(c.Z,{onChange:function(e,n){S(n)},orientation:E?"horizontal":"vertical",variant:E?"scrollable":"standard",scrollButtons:"auto",className:t.tabList,children:y.map((function(e,n){return e?(0,b.jsx)(l.Z,(0,i.Z)((0,i.Z)({className:t.tabHeader,value:"".concat(n),style:p},e),{},{disableRipple:!0,disableTouchRipple:!0,focusRipple:!0}),"v-tab-".concat(n)):null}))})}),(0,b.jsxs)(o.Z,{className:t.tabContentContainer,children:[C?null:F.map((function(e,n){return(0,b.jsx)(u.Z,{classes:(0,i.Z)({},t.tabPanel),value:"".concat(n),children:e||null},"v-tab-p-".concat(n))})),C?(0,b.jsx)("div",{className:t.tabPanel,children:v}):null]})]})})}))},83449:function(e,n,t){t.d(n,{ZP:function(){return l},_i:function(){return s},pQ:function(){return u},uU:function(){return c}});var i=t(29439),a=t(72791),r=t(80184),o=a.createContext(null);function l(e){var n=e.children,t=e.value,l=function(){var e=a.useState(null),n=(0,i.Z)(e,2),t=n[0],r=n[1];return a.useEffect((function(){r("mui-p-".concat(Math.round(1e5*Math.random())))}),[]),t}(),s=a.useMemo((function(){return{idPrefix:l,value:t}}),[l,t]);return(0,r.jsx)(o.Provider,{value:s,children:n})}function s(){return a.useContext(o)}function c(e,n){return null===e.idPrefix?null:"".concat(e.idPrefix,"-P-").concat(n)}function u(e,n){return null===e.idPrefix?null:"".concat(e.idPrefix,"-T-").concat(n)}},47283:function(e,n,t){var i=t(87462),a=t(63366),r=t(72791),o=t(18073),l=t(83449),s=t(80184),c=["children"],u=r.forwardRef((function(e,n){var t=e.children,u=(0,a.Z)(e,c),d=(0,l._i)();if(null===d)throw new TypeError("No TabContext provided");var f=r.Children.map(t,(function(e){return r.isValidElement(e)?r.cloneElement(e,{"aria-controls":(0,l.uU)(d,e.props.value),id:(0,l.pQ)(d,e.props.value)}):null}));return(0,s.jsx)(o.Z,(0,i.Z)({},u,{ref:n,value:d.value,children:f}))}));n.Z=u},82851:function(e,n,t){t.d(n,{Z:function(){return b}});var i=t(87462),a=t(63366),r=t(72791),o=t(28182),l=t(66934),s=t(31402),c=t(94419),u=t(21217);function d(e){return(0,u.Z)("MuiTabPanel",e)}(0,t(75878).Z)("MuiTabPanel",["root"]);var f=t(83449),h=t(80184),m=["children","className","value"],x=(0,l.ZP)("div",{name:"MuiTabPanel",slot:"Root",overridesResolver:function(e,n){return n.root}})((function(e){return{padding:e.theme.spacing(3)}})),b=r.forwardRef((function(e,n){var t=(0,s.Z)({props:e,name:"MuiTabPanel"}),r=t.children,l=t.className,u=t.value,b=(0,a.Z)(t,m),p=(0,i.Z)({},t),v=function(e){var n=e.classes;return(0,c.Z)({root:["root"]},d,n)}(p),C=(0,f._i)();if(null===C)throw new TypeError("No TabContext provided");var T=(0,f.uU)(C,u),Z=(0,f.pQ)(C,u);return(0,h.jsx)(x,(0,i.Z)({"aria-labelledby":Z,className:(0,o.Z)(v.root,l),hidden:u!==C.value,id:T,ref:n,role:"tabpanel",ownerState:p},b,{children:u===C.value&&r}))}))},95193:function(e,n,t){var i;t.d(n,{Z:function(){return f}});var a=t(29439),r=t(72791),o=t(69120),l=t(33073),s=t(40162);function c(e,n,t,i,o){var l=r.useState((function(){return o&&t?t(e).matches:i?i(e).matches:n})),c=(0,a.Z)(l,2),u=c[0],d=c[1];return(0,s.Z)((function(){var n=!0;if(t){var i=t(e),a=function(){n&&d(i.matches)};return a(),i.addListener(a),function(){n=!1,i.removeListener(a)}}}),[e,t]),u}var u=(i||(i=t.t(r,2))).useSyncExternalStore;function d(e,n,t,i,o){var l=r.useCallback((function(){return n}),[n]),s=r.useMemo((function(){if(o&&t)return function(){return t(e).matches};if(null!==i){var n=i(e).matches;return function(){return n}}return l}),[l,e,i,o,t]),c=r.useMemo((function(){if(null===t)return[l,function(){return function(){}}];var n=t(e);return[function(){return n.matches},function(e){return n.addListener(e),function(){n.removeListener(e)}}]}),[l,t,e]),d=(0,a.Z)(c,2),f=d[0],h=d[1];return u(h,f,s)}function f(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=(0,o.Z)(),i="undefined"!==typeof window&&"undefined"!==typeof window.matchMedia,a=(0,l.Z)({name:"MuiUseMediaQuery",props:n,theme:t}),r=a.defaultMatches,s=void 0!==r&&r,f=a.matchMedia,h=void 0===f?i?window.matchMedia:null:f,m=a.ssrMatchMedia,x=void 0===m?null:m,b=a.noSsr,p=void 0!==b&&b;var v="function"===typeof e?e(t):e;return v=v.replace(/^@media( ?)/m,""),(void 0!==u?d:c)(v,s,h,x,p)}}}]); -//# sourceMappingURL=6895.868de568.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/6895.868de568.chunk.js.map b/portal-ui/build/static/js/6895.868de568.chunk.js.map deleted file mode 100644 index a991c19b3..000000000 --- a/portal-ui/build/static/js/6895.868de568.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/6895.868de568.chunk.js","mappings":"oZAiFMA,GAAeC,EAAAA,EAAAA,GACnBC,EAAAA,MAAW,kBAAM,+BAAqC,KAElDC,GAAkBF,EAAAA,EAAAA,GACtBC,EAAAA,MAAW,kBAAM,4EAA2B,KAExCE,GAAqBH,EAAAA,EAAAA,GACzBC,EAAAA,MAAW,kBAAM,4EAA8B,KAE3CG,GAAqBJ,EAAAA,EAAAA,GACzBC,EAAAA,MAAW,kBAAM,+BAA8B,KAE3CI,GAAoBL,EAAAA,EAAAA,GACxBC,EAAAA,MAAW,kBAAM,+BAA6B,KAE1CK,GAAyBN,EAAAA,EAAAA,GAC7BC,EAAAA,MAAW,kBAAM,gGAAkC,KAE/CM,GAAuBP,EAAAA,EAAAA,GAC3BC,EAAAA,MAAW,kBAAM,+GAAgC,KAwVnD,WAAeO,EAAAA,EAAAA,IArVA,SAACC,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CACXC,cAAe,CACbC,OAAQ,SAEPC,EAAAA,IAAW,IACdC,WAAY,CACVC,cAAe,eAGdC,EAAAA,IACF,GA0UL,EApUsB,SAAHC,GAA0C,IAADC,EAAnCC,EAAOF,EAAPE,QACjBC,GAAWC,EAAAA,EAAAA,MACXC,GAAWC,EAAAA,EAAAA,MACXC,GAASC,EAAAA,EAAAA,MAETC,GAAmBC,EAAAA,EAAAA,IAAYC,EAAAA,IAC/BC,GAAgBF,EAAAA,EAAAA,IAAYG,EAAAA,IAC5BC,GAAaJ,EAAAA,EAAAA,IAAYK,EAAAA,IACzBC,GAAsBN,EAAAA,EAAAA,IAAYO,EAAAA,IAExCC,GAA8BC,EAAAA,EAAAA,WAAkB,GAAMC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA/CI,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GAC1BI,GAAoCL,EAAAA,EAAAA,WAAkB,GAAMM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAArDE,EAAUD,EAAA,GAAEE,EAAaF,EAAA,GAC1BG,EAAarB,EAAOqB,YAAc,GAEpCC,EAAStB,EAAO,IAAQ,GAC5BsB,EAASA,GAAkB,UAE3B,IAAAC,GAAkCX,EAAAA,EAAAA,UAASU,GAAOE,GAAAV,EAAAA,EAAAA,GAAAS,EAAA,GAA3CE,EAASD,EAAA,GAAEE,EAAYF,EAAA,GACxBG,GAAYC,EAAAA,EAAAA,GAAcP,EAAYQ,EAAAA,IACtCC,GAAYF,EAAAA,EAAAA,GAAcP,EAAYU,EAAAA,IAE5CC,EAAAA,EAAAA,YAAU,WACRN,EAAaJ,EACf,GAAG,CAACA,KAEJU,EAAAA,EAAAA,YAAU,WACRpC,GAASqC,EAAAA,EAAAA,IAAY,kBAEvB,GAAG,KAEHD,EAAAA,EAAAA,YAAU,WACHjB,IACHnB,GAASsC,EAAAA,EAAAA,KAAqB,IAC9BlB,GAAW,GAEf,GAAG,CAACD,EAASnB,EAAUoB,KAEvBgB,EAAAA,EAAAA,YAAU,WACJ3B,GACF8B,EAAAA,EAAIC,QACD7B,WAAWc,GACXgB,MAAK,SAACC,GACL1C,GAASsC,EAAAA,EAAAA,KAAqB,IAC9BtC,GAAS2C,EAAAA,EAAAA,IAAcD,EAAIE,MAC7B,IACCC,OAAM,SAACC,GACN9C,GAASsC,EAAAA,EAAAA,KAAqB,IAC9BtC,GAAS+C,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,IAC/C,GAEN,GAAG,CAACrB,EAAYhB,EAAeT,IAE/B,IAAIiD,GAAa,YAAAC,OAAezB,GAG1B0B,GAA0C,CAC9CC,OAAQ,gBACRC,YAAa,qBACbC,UAAW,mBACXC,OAAQ,gBACRC,OAAQ,iBAGJC,GAAe,SAACC,GACpB,IAAIC,EAAOR,GAAmBO,GAM9B,OAFEC,EAHGA,EAGC,GAAAT,OAAMD,IAAaC,OAAGS,GAFtB,GAAAT,OAAMD,IAAaC,OAbN,iBAkBrB,EASA,OACEU,EAAAA,EAAAA,MAACC,EAAAA,SAAQ,CAAAC,SAAA,CACNvC,IACCwC,EAAAA,EAAAA,KAACrF,EAAY,CACX6C,WAAYA,EACZyC,eAAgBvC,EAChBwC,2BAA4B,SAACC,IAbF,SAACA,GAClC1C,GAAc,GACV0C,GACFhE,EAAS,WAEb,CASU+D,CAA2BC,EAC7B,KAGJH,EAAAA,EAAAA,KAACI,EAAAA,EAAiB,CAChBC,OACEL,EAAAA,EAAAA,KAACM,EAAAA,IAAQ,CAACD,MAAO,UAAWE,QAAS,kBAAMpE,EAAS,WAAW,IAEjEqE,SACEX,EAAAA,EAAAA,MAACC,EAAAA,SAAQ,CAAAC,SAAA,EACPC,EAAAA,EAAAA,KAACS,EAAAA,EAAc,CACbC,QACEvC,EACI,iBACAwC,EAAAA,EAAAA,IACEC,EAAAA,EAAgBC,EAAAA,GAAUC,eAC1B,wBAEPf,UAEDC,EAAAA,EAAAA,KAACe,EAAAA,IAAM,CACLC,GAAI,qBACJ,aAAW,gBACXT,QAAS,WACPpE,EAAS,YAADgD,OAAazB,GACvB,EACAuD,MACEjB,EAAAA,EAAAA,KAACkB,EAAAA,IAAU,CACTC,MAAO,CAAEC,MAAO,GAAI3F,OAAQ,GAAI4F,WAAY,KAGhDF,MAAO,CACLG,QAAS,UAEXC,UAAWpD,OAGf6B,EAAAA,EAAAA,KAACwB,EAAAA,EAAQ,UAIf3B,EAAAA,EAAAA,MAAC4B,EAAAA,IAAU,CAACC,UAAW1F,EAAQR,cAAcuE,SAAA,EAC3CC,EAAAA,EAAAA,KAAC2B,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAG9B,UAChBC,EAAAA,EAAAA,KAAC8B,EAAAA,EAAW,CACVb,MACEjB,EAAAA,EAAAA,KAACF,EAAAA,SAAQ,CAAAC,UACPC,EAAAA,EAAAA,KAAC+B,EAAAA,IAAW,CAACX,MAAO,OAGxBY,MAAOtE,EACPuE,UACEpC,EAAAA,EAAAA,MAACqC,EAAAA,EAAe,CACdC,OAAQ,CACNC,EAAAA,GAAWC,qBACXD,EAAAA,GAAWE,gBAEbC,SAAU7E,EAAWqC,SAAA,EAErBC,EAAAA,EAAAA,KAAA,QAAMmB,MAAO,CAAEqB,SAAU,IAAKzC,SAAC,cAC/BC,EAAAA,EAAAA,KAAA,QACE0B,UAAW1F,EAAQL,WACnBwF,MAAO,CAAEsB,WAAY,IAAKD,SAAU,IAAKzC,SAE9B,OAAVnD,QAAU,IAAVA,GAAkB,QAARb,EAAVa,EAAY4C,cAAM,IAAAzD,OAAR,EAAVA,EAAoB2G,mBAI3BlC,SACEX,EAAAA,EAAAA,MAACC,EAAAA,SAAQ,CAAAC,SAAA,EACPC,EAAAA,EAAAA,KAACkC,EAAAA,EAAe,CACdC,OAAQjE,EAAAA,GACRqE,SAAU7E,EACViF,WAAY,CAAEpB,UAAU,GAAOxB,UAE/BC,EAAAA,EAAAA,KAACS,EAAAA,EAAc,CACbC,QACE1C,EACI,IACA2C,EAAAA,EAAAA,IACE,CACEyB,EAAAA,GAAWQ,iBACXR,EAAAA,GAAWS,wBAEb,wBAEP9C,UAEDC,EAAAA,EAAAA,KAACe,EAAAA,IAAM,CACLC,GAAI,uBACJT,QAAS,WACP9C,GAAc,EAChB,EACA4C,MAAO,gBACPY,MAAMjB,EAAAA,EAAAA,KAAC8C,EAAAA,IAAS,IAChBC,QAAS,YACTxB,UAAWvD,SAIjBgC,EAAAA,EAAAA,KAACe,EAAAA,IAAM,CACLC,GAAI,sBACJT,QAAS,WACPtE,GAASsC,EAAAA,EAAAA,KAAqB,GAChC,EACA8B,MAAO,UACPY,MAAMjB,EAAAA,EAAAA,KAACgD,EAAAA,IAAW,cAM5BhD,EAAAA,EAAAA,KAACiD,EAAAA,EAAG,CAACC,GAAI,CAAEC,OAAQ,qBAAsBpD,UACvCF,EAAAA,EAAAA,MAACuD,EAAAA,EAAY,CACXC,YAAavF,EACbwF,aAAW,EACXC,QACEvD,EAAAA,EAAAA,KAAA,OACEmB,MAAO,CACLG,QAAS,QACTvB,UAEFF,EAAAA,EAAAA,MAAC2D,EAAAA,GAAM,CAAAzD,SAAA,EACLC,EAAAA,EAAAA,KAACyD,EAAAA,GAAK,CAAC7D,KAAK,UAAU8D,SAAS1D,EAAAA,EAAAA,KAAChF,EAAkB,OAClDgF,EAAAA,EAAAA,KAACyD,EAAAA,GAAK,CAAC7D,KAAK,SAAS8D,SAAS1D,EAAAA,EAAAA,KAAC/E,EAAiB,MAC/CsB,IACCyD,EAAAA,EAAAA,KAACyD,EAAAA,GAAK,CACJ7D,KAAK,cACL8D,SAAS1D,EAAAA,EAAAA,KAAC9E,EAAsB,MAGnCqB,IACCyD,EAAAA,EAAAA,KAACyD,EAAAA,GAAK,CACJ7D,KAAK,YACL8D,SAAS1D,EAAAA,EAAAA,KAAC7E,EAAoB,OAIlC6E,EAAAA,EAAAA,KAACyD,EAAAA,GAAK,CAAC7D,KAAK,SAAS8D,SAAS1D,EAAAA,EAAAA,KAACjF,EAAkB,OACjDiF,EAAAA,EAAAA,KAACyD,EAAAA,GAAK,CAAC7D,KAAK,SAAS8D,SAAS1D,EAAAA,EAAAA,KAAClF,EAAe,OAC9CkF,EAAAA,EAAAA,KAACyD,EAAAA,GAAK,CACJ7D,KAAK,IACL8D,SACE1D,EAAAA,EAAAA,KAAC2D,EAAAA,GAAQ,CAACC,GAAE,YAAAzE,OAAczB,EAAU,2BAK7CqC,SAAA,CAEA,CACC8D,UAAW,CACTxD,MAAO,UACPyD,MAAO,UACPC,UAAWC,EAAAA,GACXJ,GAAIlE,GAAa,aAGpB,CACCmE,UAAW,CACTxD,MAAO,SACPyD,MAAO,SACPC,UAAWC,EAAAA,GACXzC,WAAWtD,EAAAA,EAAAA,GAAcP,EAAY,CACnC0E,EAAAA,GAAW6B,4BACX7B,EAAAA,GAAW8B,4BACX9B,EAAAA,GAAWE,eACXF,EAAAA,GAAW+B,iBAEbP,GAAIlE,GAAa,YAGpB,CACCmE,UAAW,CACTxD,MAAO,cACPyD,MAAO,cACPC,UAAWC,EAAAA,GACXzC,UACGhF,GACAO,EAAoBsH,SACnBtH,EAAoBuH,WACrBpG,EAAAA,EAAAA,GAAcP,EAAY,CACzB0E,EAAAA,GAAWkC,iCACXlC,EAAAA,GAAWmC,iCACXnC,EAAAA,GAAWE,eACXF,EAAAA,GAAW+B,iBAEfP,GAAIlE,GAAa,iBAGpB,CACCmE,UAAW,CACTxD,MAAO,YACPyD,MAAO,YACPC,UAAWC,EAAAA,GACXzC,UACGhF,KACA0B,EAAAA,EAAAA,GAAcP,EAAY,CACzB0E,EAAAA,GAAWoC,+BACXpC,EAAAA,GAAWqC,+BACXrC,EAAAA,GAAWE,eACXF,EAAAA,GAAW+B,iBAEfP,GAAIlE,GAAa,eAGpB,CACCmE,UAAW,CACTxD,MAAO,SACPyD,MAAO,SACPC,UAAWC,EAAAA,GACXzC,WAAWtD,EAAAA,EAAAA,GAAcP,EAAY,CACnC0E,EAAAA,GAAWsC,iBACXtC,EAAAA,GAAWuC,yBACXvC,EAAAA,GAAWwC,mBAEbhB,GAAIlE,GAAa,YAGpB,CACCmE,UAAW,CACTxD,MAAO,YACPyD,MAAO,SACPC,UAAWC,EAAAA,GACXzC,WAAWtD,EAAAA,EAAAA,GAAcP,EAAY,CACnC0E,EAAAA,GAAWC,qBACXD,EAAAA,GAAWE,iBAEbsB,GAAIlE,GAAa,sBAQjC,G,4DCzZA,IAfA,SACEmF,GAEC,IADDC,EAAmCC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,KAUtC,OARA,SAA+BG,GAC7B,OACElF,EAAAA,EAAAA,KAACmF,EAAAA,SAAQ,CAACL,SAAUA,EAAS/E,UAC3BC,EAAAA,EAAAA,KAAC6E,GAAgBtJ,EAAAA,EAAAA,GAAA,GAAM2J,KAG7B,CAGF,C,sECFME,GAAYC,EAAAA,EAAAA,IAAW,SAAChK,GAAY,MAAM,CAC9CiK,cAAe,CACbC,YAAa,QACbC,MAAOnK,EAAMoK,QAAQC,QAAQC,KAC7B,cAAe,CACbvE,MAAO,GACP3F,OAAQ,IAEV,4BAA6B,CAC3BmK,QAAS,SAGbC,mBAAoB,CAClBL,MAAO,OACP,4BAA6B,CAC3BM,SAAU,MAGdC,YAAa,CACXH,QAAS,OACTI,WAAY,SACZC,eAAgB,gBAChB3E,QAAS,EAET4E,aAAc,oBACd,4BAA6B,CAC3BC,SAAU,WAGdC,YAAa,CACX3K,OAAQ,OACRwK,eAAgB,SAChBL,QAAS,OACTO,SAAU,SACVH,WAAY,aACZ,OAAQ,CACNxD,SAAU,KAGd6D,UAAW,CACTT,QAAS,OACTI,WAAY,SACZ,4BAA6B,CAC3BG,SAAU,SACV/E,MAAO,SAGXkF,WAAY,CACVV,QAAS,OACTI,WAAY,SACZ,WAAY,CACVO,WAAY,GAEd,4BAA6B,CAC3BnF,MAAO,SAGZ,IA+BD,IA7BoB,SAAHtF,GAMI,IALnBmF,EAAInF,EAAJmF,KACAe,EAAKlG,EAALkG,MACAC,EAAQnG,EAARmG,SACAzB,EAAO1E,EAAP0E,QACAkB,EAAS5F,EAAT4F,UAEM1F,EAAUoJ,IAChB,OACEpF,EAAAA,EAAAA,KAAC2B,EAAAA,GAAI,CAAC6E,WAAS,EAAAzG,UACbF,EAAAA,EAAAA,MAAC8B,EAAAA,GAAI,CACHC,MAAI,EACJC,GAAI,GACJH,UAAS,GAAAvC,OAAKnD,EAAQ+J,YAAW,KAAA5G,OAAIuC,GAAwB,IAAK3B,SAAA,EAElEF,EAAAA,EAAAA,MAAA,OAAK6B,UAAW1F,EAAQqK,UAAUtG,SAAA,CAC/BkB,GAAOjB,EAAAA,EAAAA,KAAA,OAAK0B,UAAW1F,EAAQsJ,cAAcvF,SAAEkB,IAAc,MAC9DpB,EAAAA,EAAAA,MAAA,OAAK6B,UAAW1F,EAAQoK,YAAYrG,SAAA,EAClCC,EAAAA,EAAAA,KAAA,MAAImB,MAAO,CAAEsF,OAAQ,GAAI1G,SAAEiC,KAC3BhC,EAAAA,EAAAA,KAAA,QAAM0B,UAAW1F,EAAQ6J,mBAAmB9F,SAAEkC,WAIlDjC,EAAAA,EAAAA,KAAA,OAAK0B,UAAW1F,EAAQsK,WAAWvG,SAAES,QAI7C,C,qLChCMkG,EAAgB,CACpBC,UAAW,IAgGb,KAAevL,EAAAA,EAAAA,IA9JA,SAACC,GAAY,OAC1BC,EAAAA,EAAAA,GAAa,CACXsL,cAAe,CACbhB,QAAS,OACTnK,OAAQ,OACR2F,MAAO,QAETyF,oBAAqB,CACnBzF,MAAO,QACP0F,WAAY,UACZC,YAAa,oBACb,kBAAmB,CACjB,uBAAwB,CACtBnB,QAAS,QAEX,iBAAkB,CAChBA,QAAS,OACTO,SAAU,MACVH,WAAY,SACZC,eAAgB,aAChBC,aAAc,oBACd,qBAAsB,CACpBX,YAAa,EACbyB,aAAc,GAEhB,iBAAkB,CAChBF,WAAY,UACZrE,WAAY,MAIhB,sBAAuB,CACrBmD,QAAS,UAIfqB,oBAAqB,CACnB7F,MAAO,OACP,sBAAuB,CACrB3F,OAAQ,SAGZyL,SAAU,CACRzL,OAAQ,QAGV,4BAA6B,CAC3BmL,cAAe,CACbT,SAAU,SACVgB,cAAe,UAEjBN,oBAAqB,CACnBzF,MAAO,OACP8E,aAAc,qBACd,wDAAyD,CACvDA,aAAc,WAInB,GAmGL,EA7FqB,SAAHpK,GAMQ,IALxBiE,EAAQjE,EAARiE,SACA/D,EAAOF,EAAPE,QAAOoL,EAAAtL,EACPuH,YAAAA,OAAW,IAAA+D,EAAG,IAAGA,EACjB7D,EAAMzH,EAANyH,OACAD,EAAWxH,EAAXwH,YAEMjI,GAAQgM,EAAAA,EAAAA,KACyBC,GAAbC,EAAAA,EAAAA,MAAlBC,SAAAA,OAAQ,IAAAF,EAAG,GAAEA,EAEfG,GAAgBC,EAAAA,EAAAA,GAAcrM,EAAMsM,YAAYC,KAAK,OAE3D5K,GAA0BC,EAAAA,EAAAA,UAASoG,GAAYnG,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAAxC8G,EAAK5G,EAAA,GAAE2K,EAAQ3K,EAAA,GAEhB4K,EAAyB,GACzBC,EAAiC,GAavC,IAZA1J,EAAAA,EAAAA,YAAU,WACR,GAAIiF,EAAa,CACf,IAAM0E,EAAmBjI,EAASkI,MAChC,SAACrG,GAAI,OAAKA,EAAKiC,UAAUD,KAAO4D,CAAQ,IAGtCQ,GACFH,EAASG,EAAiBnE,UAAUC,MAExC,CACF,GAAG,CAACR,EAAavD,EAAUyH,KAEtBzH,EAAU,OAAO,KAEtBA,EAASmI,SAAQ,SAACC,GAChBL,EAAWM,KAAKD,EAAMtE,WACtBkE,EAAYK,KAAKD,EAAME,QACzB,IAMA,OACErI,EAAAA,EAAAA,KAACsI,EAAAA,GAAU,CAACxE,MAAK,GAAA3E,OAAK2E,GAAQ/D,UAC5BF,EAAAA,EAAAA,MAACoD,EAAAA,EAAG,CAACvB,UAAW1F,EAAQ4K,cAAc7G,SAAA,EACpCC,EAAAA,EAAAA,KAACiD,EAAAA,EAAG,CAACvB,UAAW1F,EAAQ6K,oBAAoB9G,UAC1CC,EAAAA,EAAAA,KAACuI,EAAAA,EAAO,CACNC,SATW,SAACC,EAA6BC,GACjDb,EAASa,EACX,EAQUC,YAAalB,EAAgB,aAAe,WAC5C1E,QAAS0E,EAAgB,aAAe,WACxCmB,cAAc,OACdlH,UAAW1F,EAAQ6M,QAAQ9I,SAE1B+H,EAAWgB,KAAI,SAAClH,EAAMmH,GACrB,OAAInH,GAEA5B,EAAAA,EAAAA,KAACgJ,EAAAA,GAAGzN,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,CACFmG,UAAW1F,EAAQiN,UAEnBnF,MAAK,GAAA3E,OAAK4J,GACV5H,MAAOuF,GACH9E,GAAI,IACRsH,eAAa,EACbC,oBAAkB,EAClBC,aAAa,IAAK,SAAAjK,OANJ4J,IAUb,IACT,SAIJlJ,EAAAA,EAAAA,MAACoD,EAAAA,EAAG,CAACvB,UAAW1F,EAAQiL,oBAAoBlH,SAAA,CACxCuD,EAYE,KAXAyE,EAAYe,KAAI,SAAClH,EAAMmH,GACrB,OACE/I,EAAAA,EAAAA,KAACqJ,EAAAA,EAAQ,CACPrN,SAAOT,EAAAA,EAAAA,GAAA,GAAOS,EAAQkL,UAEtBpD,MAAK,GAAA3E,OAAK4J,GAAQhJ,SAEjB6B,GAAc,MAAI,WAAAzC,OAHH4J,GAMtB,IAEHzF,GACCtD,EAAAA,EAAAA,KAAA,OAAK0B,UAAW1F,EAAQkL,SAASnH,SAAEwD,IACjC,YAKd,G,sKC3KM+F,EAAuBzO,EAAAA,cAAoB,MAWlC,SAASyN,EAAWpD,GACjC,IACEnF,EAEEmF,EAFFnF,SACA+D,EACEoB,EADFpB,MAEIyF,EAZR,WACE,IAAAC,EAAoB3O,EAAAA,SAAe,MAAK4O,GAAAtM,EAAAA,EAAAA,GAAAqM,EAAA,GAAjCxI,EAAEyI,EAAA,GAAEC,EAAKD,EAAA,GAIhB,OAHA5O,EAAAA,WAAgB,WACd6O,EAAM,SAADvK,OAAUwK,KAAKC,MAAsB,IAAhBD,KAAKE,WACjC,GAAG,IACI7I,CACT,CAMmB8I,GACXC,EAAUlP,EAAAA,SAAc,WAC5B,MAAO,CACL0O,SAAAA,EACAzF,MAAAA,EAEJ,GAAG,CAACyF,EAAUzF,IACd,OAAoB9D,EAAAA,EAAAA,KAAKsJ,EAAQU,SAAU,CACzClG,MAAOiG,EACPhK,SAAUA,GAEd,CAmBO,SAASkK,IACd,OAAOpP,EAAAA,WAAiByO,EAC1B,CACO,SAASY,EAAWH,EAASjG,GAIlC,OAAiB,OADbiG,EADFR,SAGO,KAEF,GAAPpK,OAAU4K,EAAQR,SAAQ,OAAApK,OAAM2E,EAClC,CACO,SAASqG,EAASJ,EAASjG,GAIhC,OAAiB,OADbiG,EADFR,SAGO,KAEF,GAAPpK,OAAU4K,EAAQR,SAAQ,OAAApK,OAAM2E,EAClC,C,8FCvEMsG,EAAY,CAAC,YAMb7B,EAAuB1N,EAAAA,YAAiB,SAAiBqK,EAAOmF,GAC9D,IACQC,EACRpF,EADFnF,SAEFwK,GAAQC,EAAAA,EAAAA,GAA8BtF,EAAOkF,GACzCL,GAAUE,EAAAA,EAAAA,MAChB,GAAgB,OAAZF,EACF,MAAM,IAAIU,UAAU,0BAEtB,IAAM1K,EAAWlF,EAAAA,SAAeiO,IAAIwB,GAAc,SAAAnC,GAChD,OAAmBtN,EAAAA,eAAqBsN,GAGpBtN,EAAAA,aAAmBsN,EAAO,CAE5C,iBAAiB+B,EAAAA,EAAAA,IAAWH,EAAS5B,EAAMjD,MAAMpB,OACjD9C,IAAImJ,EAAAA,EAAAA,IAASJ,EAAS5B,EAAMjD,MAAMpB,SAL3B,IAOX,IACA,OAAoB9D,EAAAA,EAAAA,KAAK0K,EAAAA,GAAMC,EAAAA,EAAAA,GAAS,CAAC,EAAGJ,EAAO,CACjDF,IAAKA,EACLvG,MAAOiG,EAAQjG,MACf/D,SAAUA,IAEd,IAWA,K,oJCzCO,SAAS6K,EAAwBC,GACtC,OAAOC,EAAAA,EAAAA,GAAqB,cAAeD,EAC7C,EACwBE,E,SAAAA,GAAuB,cAAe,CAAC,SAA/D,I,sBCHMX,EAAY,CAAC,WAAY,YAAa,SAkBtCY,GAAeC,EAAAA,EAAAA,IAAO,MAAO,CACjCC,KAAM,cACNL,KAAM,OACNM,kBAAmB,SAACjG,EAAOkG,GAAM,OAAKA,EAAOC,IAAI,GAH9BJ,EAIlB,SAAAnP,GACI,MACA,CACLwF,QAFKxF,EAALT,MAEeiQ,QAAQ,GACxB,IA2DD,EA1D8BzQ,EAAAA,YAAiB,SAAkB0Q,EAASlB,GACxE,IAAMnF,GAAQsG,EAAAA,EAAAA,GAAc,CAC1BtG,MAAOqG,EACPL,KAAM,gBAGJnL,EAGEmF,EAHFnF,SACA2B,EAEEwD,EAFFxD,UACAoC,EACEoB,EADFpB,MAEFyG,GAAQC,EAAAA,EAAAA,GAA8BtF,EAAOkF,GACzCqB,GAAad,EAAAA,EAAAA,GAAS,CAAC,EAAGzF,GAC1BlJ,EA9BkB,SAAAyP,GACxB,IACEzP,EACEyP,EADFzP,QAKF,OAAO0P,EAAAA,EAAAA,GAHO,CACZL,KAAM,CAAC,SAEoBT,EAAyB5O,EACxD,CAsBkB2P,CAAkBF,GAC5B1B,GAAUE,EAAAA,EAAAA,MAChB,GAAgB,OAAZF,EACF,MAAM,IAAIU,UAAU,0BAEtB,IAAMzJ,GAAKkJ,EAAAA,EAAAA,IAAWH,EAASjG,GACzB8H,GAAQzB,EAAAA,EAAAA,IAASJ,EAASjG,GAChC,OAAoB9D,EAAAA,EAAAA,KAAKgL,GAAcL,EAAAA,EAAAA,GAAS,CAC9C,kBAAmBiB,EACnBlK,WAAWmK,EAAAA,EAAAA,GAAK7P,EAAQqP,KAAM3J,GAC9BoK,OAAQhI,IAAUiG,EAAQjG,MAC1B9C,GAAIA,EACJqJ,IAAKA,EACL0B,KAAM,WACNN,WAAYA,GACXlB,EAAO,CACRxK,SAAU+D,IAAUiG,EAAQjG,OAAS/D,IAEzC,G,yHC3CA,SAASiM,EAAiBC,EAAOC,EAAgBC,EAAYC,EAAeC,GAC1E,IAAA7C,EAA0B3O,EAAAA,UAAe,WACvC,OAAIwR,GAASF,EACJA,EAAWF,GAAOK,QAEvBF,EACKA,EAAcH,GAAOK,QAKvBJ,CACT,IAAEzC,GAAAtM,EAAAA,EAAAA,GAAAqM,EAAA,GAXK+C,EAAK9C,EAAA,GAAE+C,EAAQ/C,EAAA,GAkCtB,OAtBAgD,EAAAA,EAAAA,IAAkB,WAChB,IAAIC,GAAS,EACb,GAAKP,EAAL,CAGA,IAAMQ,EAAYR,EAAWF,GACvBW,EAAc,WAIdF,GACFF,EAASG,EAAUL,QAEvB,EAIA,OAHAM,IAEAD,EAAUE,YAAYD,GACf,WACLF,GAAS,EACTC,EAAUG,eAAeF,EAC3B,CAhBA,CAiBF,GAAG,CAACX,EAAOE,IACJI,CACT,CAGA,IAAMQ,GAAiClS,IAAAA,EAAAA,EAAAA,EAAAA,EAAAA,KAAiC,qBACxE,SAASmS,EAAiBf,EAAOC,EAAgBC,EAAYC,EAAeC,GAC1E,IAAMY,EAAqBpS,EAAAA,aAAkB,kBAAMqR,CAAc,GAAE,CAACA,IAC9DgB,EAAoBrS,EAAAA,SAAc,WACtC,GAAIwR,GAASF,EACX,OAAO,kBAAMA,EAAWF,GAAOK,OAAO,EAExC,GAAsB,OAAlBF,EAAwB,CAC1B,IACEE,EACEF,EAAcH,GADhBK,QAEF,OAAO,kBAAMA,CAAO,CACtB,CACA,OAAOW,CACT,GAAG,CAACA,EAAoBhB,EAAOG,EAAeC,EAAOF,IACrDgB,EAAiCtS,EAAAA,SAAc,WAC7C,GAAmB,OAAfsR,EACF,MAAO,CAACc,EAAoB,kBAAM,WAAO,CAAC,GAE5C,IAAMG,EAAiBjB,EAAWF,GAClC,MAAO,CAAC,kBAAMmB,EAAed,OAAO,EAAE,SAAAe,GAGpC,OADAD,EAAeP,YAAYQ,GACpB,WACLD,EAAeN,eAAeO,EAChC,CACF,EACF,GAAG,CAACJ,EAAoBd,EAAYF,IAAOqB,GAAAnQ,EAAAA,EAAAA,GAAAgQ,EAAA,GAZpCI,EAAWD,EAAA,GAAEE,EAASF,EAAA,GAc7B,OADcP,EAA+BS,EAAWD,EAAaL,EAEvE,CACe,SAASxF,EAAc+F,GAA0B,IAAdC,EAAO3I,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,CAAC,EACrD1J,GAAQgM,EAAAA,EAAAA,KAKRsG,EAAsC,qBAAXC,QAAuD,qBAAtBA,OAAOzB,WACzE0B,GAKIC,EAAAA,EAAAA,GAAc,CAChB5C,KAAM,mBACNhG,MAAOwI,EACPrS,MAAAA,IACA0S,EAAAF,EARA3B,eAAAA,OAAc,IAAA6B,GAAQA,EAAAC,EAAAH,EACtB1B,WAAAA,OAAU,IAAA6B,EAAGL,EAAoBC,OAAOzB,WAAa,KAAI6B,EAAAC,EAAAJ,EACzDzB,cAAAA,OAAa,IAAA6B,EAAG,KAAIA,EAAAC,EAAAL,EACpBxB,MAAAA,OAAK,IAAA6B,GAAQA,EAWf,IAAIjC,EAA8B,oBAAfwB,EAA4BA,EAAWpS,GAASoS,EAanE,OAZAxB,EAAQA,EAAMkC,QAAQ,eAAgB,UAGiClJ,IAAnC8H,EAA+CC,EAAmBhB,GAC5DC,EAAOC,EAAgBC,EAAYC,EAAeC,EAS9F,C","sources":["screens/Console/Buckets/BucketDetails/BucketDetails.tsx","screens/Console/Common/Components/withSuspense.tsx","screens/Console/Common/ScreenTitle/ScreenTitle.tsx","screens/Console/Common/VerticalTabs/VerticalTabs.tsx","../node_modules/@mui/lab/TabContext/TabContext.js","../node_modules/@mui/lab/TabList/TabList.js","../node_modules/@mui/lab/TabPanel/tabPanelClasses.js","../node_modules/@mui/lab/TabPanel/TabPanel.js","../node_modules/@mui/material/useMediaQuery/useMediaQuery.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport {\n Link,\n Navigate,\n Route,\n Routes,\n useNavigate,\n useParams,\n} from \"react-router-dom\";\nimport {\n BackLink,\n BucketsIcon,\n Button,\n FolderIcon,\n PageLayout,\n RefreshIcon,\n TrashIcon,\n} from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n containerForHeader,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport ScreenTitle from \"../../Common/ScreenTitle/ScreenTitle\";\nimport { Box } from \"@mui/material\";\nimport {\n browseBucketPermissions,\n deleteBucketPermissions,\n IAM_PERMISSIONS,\n IAM_ROLES,\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../common/SecureComponent/permissions\";\nimport VerticalTabs from \"../../Common/VerticalTabs/VerticalTabs\";\n\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\n\nimport withSuspense from \"../../Common/Components/withSuspense\";\nimport {\n selDistSet,\n selSiteRep,\n setErrorSnackMessage,\n setHelpName,\n} from \"../../../../systemSlice\";\nimport {\n selBucketDetailsInfo,\n selBucketDetailsLoading,\n setBucketDetailsLoad,\n setBucketInfo,\n} from \"./bucketDetailsSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport HelpMenu from \"../../HelpMenu\";\n\nconst DeleteBucket = withSuspense(\n React.lazy(() => import(\"../ListBuckets/DeleteBucket\")),\n);\nconst AccessRulePanel = withSuspense(\n React.lazy(() => import(\"./AccessRulePanel\")),\n);\nconst AccessDetailsPanel = withSuspense(\n React.lazy(() => import(\"./AccessDetailsPanel\")),\n);\nconst BucketSummaryPanel = withSuspense(\n React.lazy(() => import(\"./BucketSummaryPanel\")),\n);\nconst BucketEventsPanel = withSuspense(\n React.lazy(() => import(\"./BucketEventsPanel\")),\n);\nconst BucketReplicationPanel = withSuspense(\n React.lazy(() => import(\"./BucketReplicationPanel\")),\n);\nconst BucketLifecyclePanel = withSuspense(\n React.lazy(() => import(\"./BucketLifecyclePanel\")),\n);\n\nconst styles = (theme: Theme) =>\n createStyles({\n pageContainer: {\n height: \"100%\",\n },\n ...searchField,\n capitalize: {\n textTransform: \"capitalize\",\n },\n\n ...containerForHeader,\n });\n\ninterface IBucketDetailsProps {\n classes: any;\n}\n\nconst BucketDetails = ({ classes }: IBucketDetailsProps) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const params = useParams();\n\n const distributedSetup = useSelector(selDistSet);\n const loadingBucket = useSelector(selBucketDetailsLoading);\n const bucketInfo = useSelector(selBucketDetailsInfo);\n const siteReplicationInfo = useSelector(selSiteRep);\n\n const [iniLoad, setIniLoad] = useState(false);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const bucketName = params.bucketName || \"\";\n\n let selTab = params[\"0\"] || \"\";\n selTab = selTab ? selTab : \"summary\";\n\n const [activeTab, setActiveTab] = useState(selTab);\n const canDelete = hasPermission(bucketName, deleteBucketPermissions);\n const canBrowse = hasPermission(bucketName, browseBucketPermissions);\n\n useEffect(() => {\n setActiveTab(selTab);\n }, [selTab]);\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_details\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!iniLoad) {\n dispatch(setBucketDetailsLoad(true));\n setIniLoad(true);\n }\n }, [iniLoad, dispatch, setIniLoad]);\n\n useEffect(() => {\n if (loadingBucket) {\n api.buckets\n .bucketInfo(bucketName)\n .then((res) => {\n dispatch(setBucketDetailsLoad(false));\n dispatch(setBucketInfo(res.data));\n })\n .catch((err) => {\n dispatch(setBucketDetailsLoad(false));\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n });\n }\n }, [bucketName, loadingBucket, dispatch]);\n\n let topLevelRoute = `/buckets/${bucketName}`;\n const defaultRoute = \"/admin/summary\";\n\n const manageBucketRoutes: Record = {\n events: \"/admin/events\",\n replication: \"/admin/replication\",\n lifecycle: \"/admin/lifecycle\",\n access: \"/admin/access\",\n prefix: \"/admin/prefix\",\n };\n\n const getRoutePath = (routeKey: string) => {\n let path = manageBucketRoutes[routeKey];\n if (!path) {\n path = `${topLevelRoute}${defaultRoute}`;\n } else {\n path = `${topLevelRoute}${path}`;\n }\n return path;\n };\n\n const closeDeleteModalAndRefresh = (refresh: boolean) => {\n setDeleteOpen(false);\n if (refresh) {\n navigate(\"/buckets\");\n }\n };\n\n return (\n \n {deleteOpen && (\n {\n closeDeleteModalAndRefresh(refresh);\n }}\n />\n )}\n navigate(\"/buckets\")} />\n }\n actions={\n \n \n {\n navigate(`/browser/${bucketName}`);\n }}\n icon={\n \n }\n style={{\n padding: \"0 10px\",\n }}\n disabled={!canBrowse}\n />\n \n \n \n }\n />\n \n \n \n \n \n }\n title={bucketName}\n subTitle={\n \n Access: \n \n {bucketInfo?.access?.toLowerCase()}\n \n \n }\n actions={\n \n \n \n {\n setDeleteOpen(true);\n }}\n label={\"Delete Bucket\"}\n icon={}\n variant={\"secondary\"}\n disabled={!canDelete}\n />\n \n \n {\n dispatch(setBucketDetailsLoad(true));\n }}\n label={\"Refresh\"}\n icon={}\n />\n \n }\n />\n \n \n \n \n } />\n } />\n {distributedSetup && (\n }\n />\n )}\n {distributedSetup && (\n }\n />\n )}\n\n } />\n } />\n \n }\n />\n \n \n }\n >\n {{\n tabConfig: {\n label: \"Summary\",\n value: \"summary\",\n component: Link,\n to: getRoutePath(\"summary\"),\n },\n }}\n {{\n tabConfig: {\n label: \"Events\",\n value: \"events\",\n component: Link,\n disabled: !hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_PUT_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]),\n to: getRoutePath(\"events\"),\n },\n }}\n {{\n tabConfig: {\n label: \"Replication\",\n value: \"replication\",\n component: Link,\n disabled:\n !distributedSetup ||\n (siteReplicationInfo.enabled &&\n siteReplicationInfo.curSite) ||\n !hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_PUT_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]),\n to: getRoutePath(\"replication\"),\n },\n }}\n {{\n tabConfig: {\n label: \"Lifecycle\",\n value: \"lifecycle\",\n component: Link,\n disabled:\n !distributedSetup ||\n !hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.S3_PUT_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]),\n to: getRoutePath(\"lifecycle\"),\n },\n }}\n {{\n tabConfig: {\n label: \"Access\",\n value: \"access\",\n component: Link,\n disabled: !hasPermission(bucketName, [\n IAM_SCOPES.ADMIN_GET_POLICY,\n IAM_SCOPES.ADMIN_LIST_USER_POLICIES,\n IAM_SCOPES.ADMIN_LIST_USERS,\n ]),\n to: getRoutePath(\"access\"),\n },\n }}\n {{\n tabConfig: {\n label: \"Anonymous\",\n value: \"prefix\",\n component: Link,\n disabled: !hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]),\n to: getRoutePath(\"prefix\"),\n },\n }}\n \n \n \n \n );\n};\n\nexport default withStyles(styles)(BucketDetails);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { Theme } from \"@mui/material/styles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\n\ninterface IScreenTitle {\n icon?: any;\n title?: any;\n subTitle?: any;\n actions?: any;\n className?: any;\n}\n\nconst useStyles = makeStyles((theme: Theme) => ({\n headerBarIcon: {\n marginRight: \".7rem\",\n color: theme.palette.primary.main,\n \"& .min-icon\": {\n width: 44,\n height: 44,\n },\n \"@media (max-width: 600px)\": {\n display: \"none\",\n },\n },\n headerBarSubheader: {\n color: \"grey\",\n \"@media (max-width: 900px)\": {\n maxWidth: 200,\n },\n },\n stContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n padding: 8,\n\n borderBottom: \"1px solid #EAEAEA\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n titleColumn: {\n height: \"auto\",\n justifyContent: \"center\",\n display: \"flex\",\n flexFlow: \"column\",\n alignItems: \"flex-start\",\n \"& h1\": {\n fontSize: 19,\n },\n },\n leftItems: {\n display: \"flex\",\n alignItems: \"center\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n width: \"100%\",\n },\n },\n rightItems: {\n display: \"flex\",\n alignItems: \"center\",\n \"& button\": {\n marginLeft: 8,\n },\n \"@media (max-width: 600px)\": {\n width: \"100%\",\n },\n },\n}));\n\nconst ScreenTitle = ({\n icon,\n title,\n subTitle,\n actions,\n className,\n}: IScreenTitle) => {\n const classes = useStyles();\n return (\n \n \n

\n {icon ?
{icon}
: null}\n
\n

{title}

\n {subTitle}\n
\n
\n\n
{actions}
\n \n \n );\n};\n\nexport default ScreenTitle;\n","import React, { useEffect, useState } from \"react\";\nimport { Box, Tab, TabProps } from \"@mui/material\";\nimport { TabContext, TabList, TabPanel } from \"@mui/lab\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Theme, useTheme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\nimport { useLocation } from \"react-router-dom\";\n\nexport type TabItemProps = {\n tabConfig: TabProps | any;\n content?: JSX.Element | JSX.Element[];\n};\n\ntype VerticalTabsProps = {\n classes: any;\n children: TabItemProps[];\n selectedTab?: string;\n routes?: any;\n isRouteTabs?: boolean;\n};\n\nconst styles = (theme: Theme) =>\n createStyles({\n tabsContainer: {\n display: \"flex\",\n height: \"100%\",\n width: \"100%\",\n },\n tabsHeaderContainer: {\n width: \"300px\",\n background: \"#F8F8F8\",\n borderRight: \"1px solid #EAEAEA\",\n \"& .MuiTabs-root\": {\n \"& .MuiTabs-indicator\": {\n display: \"none\",\n },\n \"& .MuiTab-root\": {\n display: \"flex\",\n flexFlow: \"row\",\n alignItems: \"center\",\n justifyContent: \"flex-start\",\n borderBottom: \"1px solid #EAEAEA\",\n \"& .MuiSvgIcon-root\": {\n marginRight: 8,\n marginBottom: 0,\n },\n \"&.Mui-selected\": {\n background: \"#E5E5E5\",\n fontWeight: 600,\n },\n },\n\n \"&. MuiTabs-scroller\": {\n display: \"none\",\n },\n },\n },\n tabContentContainer: {\n width: \"100%\",\n \"& .MuiTabPanel-root\": {\n height: \"100%\",\n },\n },\n tabPanel: {\n height: \"100%\",\n },\n /*Below md breakpoint make it horizontal and style it for scrolling tabs*/\n \"@media (max-width: 900px)\": {\n tabsContainer: {\n flexFlow: \"column\",\n flexDirection: \"column\",\n },\n tabsHeaderContainer: {\n width: \"100%\",\n borderBottom: \" 1px solid #EAEAEA\",\n \"& .MuiTabs-root .MuiTabs-scroller .MuiButtonBase-root\": {\n borderBottom: \" 0px\",\n },\n },\n },\n });\n\nconst tabStripStyle = {\n minHeight: 60,\n};\n\nconst VerticalTabs = ({\n children,\n classes,\n selectedTab = \"0\",\n routes,\n isRouteTabs,\n}: VerticalTabsProps) => {\n const theme = useTheme();\n const { pathname = \"\" } = useLocation();\n\n const isSmallScreen = useMediaQuery(theme.breakpoints.down(\"md\"));\n\n const [value, setValue] = useState(selectedTab);\n\n const headerList: TabProps[] = [];\n const contentList: React.ReactNode[] = [];\n useEffect(() => {\n if (isRouteTabs) {\n const tabConfigElement = children.find(\n (item) => item.tabConfig.to === pathname,\n );\n\n if (tabConfigElement) {\n setValue(tabConfigElement.tabConfig.value);\n }\n }\n }, [isRouteTabs, children, pathname]);\n\n if (!children) return null;\n\n children.forEach((child) => {\n headerList.push(child.tabConfig);\n contentList.push(child.content);\n });\n\n const handleChange = (event: React.SyntheticEvent, newValue: string) => {\n setValue(newValue);\n };\n\n return (\n \n \n \n \n {headerList.map((item, index) => {\n if (item) {\n return (\n \n );\n }\n return null;\n })}\n \n \n\n \n {!isRouteTabs\n ? contentList.map((item, index) => {\n return (\n \n {item ? item : null}\n \n );\n })\n : null}\n {isRouteTabs ? (\n
{routes}
\n ) : null}\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(VerticalTabs);\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\n\n/**\n * @type {React.Context<{ idPrefix: string; value: string } | null>}\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst Context = /*#__PURE__*/React.createContext(null);\nif (process.env.NODE_ENV !== 'production') {\n Context.displayName = 'TabContext';\n}\nfunction useUniquePrefix() {\n const [id, setId] = React.useState(null);\n React.useEffect(() => {\n setId(`mui-p-${Math.round(Math.random() * 1e5)}`);\n }, []);\n return id;\n}\nexport default function TabContext(props) {\n const {\n children,\n value\n } = props;\n const idPrefix = useUniquePrefix();\n const context = React.useMemo(() => {\n return {\n idPrefix,\n value\n };\n }, [idPrefix, value]);\n return /*#__PURE__*/_jsx(Context.Provider, {\n value: context,\n children: children\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? TabContext.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * The value of the currently selected `Tab`.\n */\n value: PropTypes.string.isRequired\n} : void 0;\n\n/**\n * @returns {unknown}\n */\nexport function useTabContext() {\n return React.useContext(Context);\n}\nexport function getPanelId(context, value) {\n const {\n idPrefix\n } = context;\n if (idPrefix === null) {\n return null;\n }\n return `${context.idPrefix}-P-${value}`;\n}\nexport function getTabId(context, value) {\n const {\n idPrefix\n } = context;\n if (idPrefix === null) {\n return null;\n }\n return `${context.idPrefix}-T-${value}`;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"children\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport Tabs from '@mui/material/Tabs';\nimport { useTabContext, getTabId, getPanelId } from '../TabContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst TabList = /*#__PURE__*/React.forwardRef(function TabList(props, ref) {\n const {\n children: childrenProp\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const context = useTabContext();\n if (context === null) {\n throw new TypeError('No TabContext provided');\n }\n const children = React.Children.map(childrenProp, child => {\n if (! /*#__PURE__*/React.isValidElement(child)) {\n return null;\n }\n return /*#__PURE__*/React.cloneElement(child, {\n // SOMEDAY: `Tabs` will set those themselves\n 'aria-controls': getPanelId(context, child.props.value),\n id: getTabId(context, child.props.value)\n });\n });\n return /*#__PURE__*/_jsx(Tabs, _extends({}, other, {\n ref: ref,\n value: context.value,\n children: children\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? TabList.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * A list of `` elements.\n */\n children: PropTypes.node\n} : void 0;\nexport default TabList;","import generateUtilityClass from '@mui/material/generateUtilityClass';\nimport generateUtilityClasses from '@mui/material/generateUtilityClasses';\nexport function getTabPanelUtilityClass(slot) {\n return generateUtilityClass('MuiTabPanel', slot);\n}\nconst tabPanelClasses = generateUtilityClasses('MuiTabPanel', ['root']);\nexport default tabPanelClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"children\", \"className\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { getTabPanelUtilityClass } from './tabPanelClasses';\nimport { getPanelId, getTabId, useTabContext } from '../TabContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getTabPanelUtilityClass, classes);\n};\nconst TabPanelRoot = styled('div', {\n name: 'MuiTabPanel',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})(({\n theme\n}) => ({\n padding: theme.spacing(3)\n}));\nconst TabPanel = /*#__PURE__*/React.forwardRef(function TabPanel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTabPanel'\n });\n const {\n children,\n className,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props);\n const classes = useUtilityClasses(ownerState);\n const context = useTabContext();\n if (context === null) {\n throw new TypeError('No TabContext provided');\n }\n const id = getPanelId(context, value);\n const tabId = getTabId(context, value);\n return /*#__PURE__*/_jsx(TabPanelRoot, _extends({\n \"aria-labelledby\": tabId,\n className: clsx(classes.root, className),\n hidden: value !== context.value,\n id: id,\n ref: ref,\n role: \"tabpanel\",\n ownerState: ownerState\n }, other, {\n children: value === context.value && children\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? TabPanel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The `value` of the corresponding `Tab`. Must use the index of the `Tab` when\n * no `value` was passed to `Tab`.\n */\n value: PropTypes.string.isRequired\n} : void 0;\nexport default TabPanel;","import * as React from 'react';\nimport { getThemeProps, useThemeWithoutDefault as useTheme } from '@mui/system';\nimport useEnhancedEffect from '../utils/useEnhancedEffect';\n\n/**\n * @deprecated Not used internally. Use `MediaQueryListEvent` from lib.dom.d.ts instead.\n */\n\n/**\n * @deprecated Not used internally. Use `MediaQueryList` from lib.dom.d.ts instead.\n */\n\n/**\n * @deprecated Not used internally. Use `(event: MediaQueryListEvent) => void` instead.\n */\n\nfunction useMediaQueryOld(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr) {\n const [match, setMatch] = React.useState(() => {\n if (noSsr && matchMedia) {\n return matchMedia(query).matches;\n }\n if (ssrMatchMedia) {\n return ssrMatchMedia(query).matches;\n }\n\n // Once the component is mounted, we rely on the\n // event listeners to return the correct matches value.\n return defaultMatches;\n });\n useEnhancedEffect(() => {\n let active = true;\n if (!matchMedia) {\n return undefined;\n }\n const queryList = matchMedia(query);\n const updateMatch = () => {\n // Workaround Safari wrong implementation of matchMedia\n // TODO can we remove it?\n // https://github.com/mui/material-ui/pull/17315#issuecomment-528286677\n if (active) {\n setMatch(queryList.matches);\n }\n };\n updateMatch();\n // TODO: Use `addEventListener` once support for Safari < 14 is dropped\n queryList.addListener(updateMatch);\n return () => {\n active = false;\n queryList.removeListener(updateMatch);\n };\n }, [query, matchMedia]);\n return match;\n}\n\n// eslint-disable-next-line no-useless-concat -- Workaround for https://github.com/webpack/webpack/issues/14814\nconst maybeReactUseSyncExternalStore = React['useSyncExternalStore' + ''];\nfunction useMediaQueryNew(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr) {\n const getDefaultSnapshot = React.useCallback(() => defaultMatches, [defaultMatches]);\n const getServerSnapshot = React.useMemo(() => {\n if (noSsr && matchMedia) {\n return () => matchMedia(query).matches;\n }\n if (ssrMatchMedia !== null) {\n const {\n matches\n } = ssrMatchMedia(query);\n return () => matches;\n }\n return getDefaultSnapshot;\n }, [getDefaultSnapshot, query, ssrMatchMedia, noSsr, matchMedia]);\n const [getSnapshot, subscribe] = React.useMemo(() => {\n if (matchMedia === null) {\n return [getDefaultSnapshot, () => () => {}];\n }\n const mediaQueryList = matchMedia(query);\n return [() => mediaQueryList.matches, notify => {\n // TODO: Use `addEventListener` once support for Safari < 14 is dropped\n mediaQueryList.addListener(notify);\n return () => {\n mediaQueryList.removeListener(notify);\n };\n }];\n }, [getDefaultSnapshot, matchMedia, query]);\n const match = maybeReactUseSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n return match;\n}\nexport default function useMediaQuery(queryInput, options = {}) {\n const theme = useTheme();\n // Wait for jsdom to support the match media feature.\n // All the browsers MUI support have this built-in.\n // This defensive check is here for simplicity.\n // Most of the time, the match media logic isn't central to people tests.\n const supportMatchMedia = typeof window !== 'undefined' && typeof window.matchMedia !== 'undefined';\n const {\n defaultMatches = false,\n matchMedia = supportMatchMedia ? window.matchMedia : null,\n ssrMatchMedia = null,\n noSsr = false\n } = getThemeProps({\n name: 'MuiUseMediaQuery',\n props: options,\n theme\n });\n if (process.env.NODE_ENV !== 'production') {\n if (typeof queryInput === 'function' && theme === null) {\n console.error(['MUI: The `query` argument provided is invalid.', 'You are providing a function without a theme in the context.', 'One of the parent elements needs to use a ThemeProvider.'].join('\\n'));\n }\n }\n let query = typeof queryInput === 'function' ? queryInput(theme) : queryInput;\n query = query.replace(/^@media( ?)/m, '');\n\n // TODO: Drop `useMediaQueryOld` and use `use-sync-external-store` shim in `useMediaQueryNew` once the package is stable\n const useMediaQueryImplementation = maybeReactUseSyncExternalStore !== undefined ? useMediaQueryNew : useMediaQueryOld;\n const match = useMediaQueryImplementation(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr);\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useDebugValue({\n query,\n match\n });\n }\n return match;\n}"],"names":["DeleteBucket","withSuspense","React","AccessRulePanel","AccessDetailsPanel","BucketSummaryPanel","BucketEventsPanel","BucketReplicationPanel","BucketLifecyclePanel","withStyles","theme","createStyles","_objectSpread","pageContainer","height","searchField","capitalize","textTransform","containerForHeader","_ref","_bucketInfo$access","classes","dispatch","useAppDispatch","navigate","useNavigate","params","useParams","distributedSetup","useSelector","selDistSet","loadingBucket","selBucketDetailsLoading","bucketInfo","selBucketDetailsInfo","siteReplicationInfo","selSiteRep","_useState","useState","_useState2","_slicedToArray","iniLoad","setIniLoad","_useState3","_useState4","deleteOpen","setDeleteOpen","bucketName","selTab","_useState5","_useState6","activeTab","setActiveTab","canDelete","hasPermission","deleteBucketPermissions","canBrowse","browseBucketPermissions","useEffect","setHelpName","setBucketDetailsLoad","api","buckets","then","res","setBucketInfo","data","catch","err","setErrorSnackMessage","errorToHandler","topLevelRoute","concat","manageBucketRoutes","events","replication","lifecycle","access","prefix","getRoutePath","routeKey","path","_jsxs","Fragment","children","_jsx","selectedBucket","closeDeleteModalAndRefresh","refresh","PageHeaderWrapper","label","BackLink","onClick","actions","TooltipWrapper","tooltip","permissionTooltipHelper","IAM_PERMISSIONS","IAM_ROLES","BUCKET_VIEWER","Button","id","icon","FolderIcon","style","width","marginTop","padding","disabled","HelpMenu","PageLayout","className","Grid","item","xs","ScreenTitle","BucketsIcon","title","subTitle","SecureComponent","scopes","IAM_SCOPES","S3_GET_BUCKET_POLICY","S3_GET_ACTIONS","resource","fontSize","fontWeight","toLowerCase","errorProps","S3_DELETE_BUCKET","S3_FORCE_DELETE_BUCKET","TrashIcon","variant","RefreshIcon","Box","sx","border","VerticalTabs","selectedTab","isRouteTabs","routes","Routes","Route","element","Navigate","to","tabConfig","value","component","Link","S3_GET_BUCKET_NOTIFICATIONS","S3_PUT_BUCKET_NOTIFICATIONS","S3_PUT_ACTIONS","enabled","curSite","S3_GET_REPLICATION_CONFIGURATION","S3_PUT_REPLICATION_CONFIGURATION","S3_GET_LIFECYCLE_CONFIGURATION","S3_PUT_LIFECYCLE_CONFIGURATION","ADMIN_GET_POLICY","ADMIN_LIST_USER_POLICIES","ADMIN_LIST_USERS","WrappedComponent","fallback","arguments","length","undefined","props","Suspense","useStyles","makeStyles","headerBarIcon","marginRight","color","palette","primary","main","display","headerBarSubheader","maxWidth","stContainer","alignItems","justifyContent","borderBottom","flexFlow","titleColumn","leftItems","rightItems","marginLeft","container","margin","tabStripStyle","minHeight","tabsContainer","tabsHeaderContainer","background","borderRight","marginBottom","tabContentContainer","tabPanel","flexDirection","_ref$selectedTab","useTheme","_useLocation$pathname","useLocation","pathname","isSmallScreen","useMediaQuery","breakpoints","down","setValue","headerList","contentList","tabConfigElement","find","forEach","child","push","content","TabContext","TabList","onChange","event","newValue","orientation","scrollButtons","tabList","map","index","Tab","tabHeader","disableRipple","disableTouchRipple","focusRipple","TabPanel","Context","idPrefix","_React$useState","_React$useState2","setId","Math","round","random","useUniquePrefix","context","Provider","useTabContext","getPanelId","getTabId","_excluded","ref","childrenProp","other","_objectWithoutPropertiesLoose","TypeError","Tabs","_extends","getTabPanelUtilityClass","slot","generateUtilityClass","generateUtilityClasses","TabPanelRoot","styled","name","overridesResolver","styles","root","spacing","inProps","useThemeProps","ownerState","composeClasses","useUtilityClasses","tabId","clsx","hidden","role","useMediaQueryOld","query","defaultMatches","matchMedia","ssrMatchMedia","noSsr","matches","match","setMatch","useEnhancedEffect","active","queryList","updateMatch","addListener","removeListener","maybeReactUseSyncExternalStore","useMediaQueryNew","getDefaultSnapshot","getServerSnapshot","_React$useMemo","mediaQueryList","notify","_React$useMemo2","getSnapshot","subscribe","queryInput","options","supportMatchMedia","window","_getThemeProps","getThemeProps","_getThemeProps$defaul","_getThemeProps$matchM","_getThemeProps$ssrMat","_getThemeProps$noSsr","replace"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/6975.18f2c3f9.chunk.js b/portal-ui/build/static/js/6975.18f2c3f9.chunk.js new file mode 100644 index 000000000..b07d5dd67 --- /dev/null +++ b/portal-ui/build/static/js/6975.18f2c3f9.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[6975],{13901:function(n,e,t){"use strict";var r=t(64836);e.Z=void 0;var u=r(t(45649)),c=t(80184),i=(0,u.default)((0,c.jsx)("path",{d:"M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3v-3h18v3z"}),"CallToAction");e.Z=i},31292:function(n,e,t){"use strict";var r=t(64836);e.Z=void 0;var u=r(t(45649)),c=t(80184),i=(0,u.default)((0,c.jsx)("path",{d:"M9.4 16.6 4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0 4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z"}),"Code");e.Z=i},61809:function(n,e,t){"use strict";var r=t(64836);e.Z=void 0;var u=r(t(45649)),c=t(80184),i=(0,u.default)((0,c.jsx)("path",{d:"M8 19h3v3h2v-3h3l-4-4-4 4zm8-15h-3V1h-2v3H8l4 4 4-4zM4 9v2h16V9H4zm0 3h16v2H4z"}),"Compress");e.Z=i},67055:function(n,e,t){"use strict";var r=t(64836);e.Z=void 0;var u=r(t(45649)),c=t(80184),i=(0,u.default)((0,c.jsx)("path",{d:"M11 6c1.38 0 2.63.56 3.54 1.46L12 10h6V4l-2.05 2.05C14.68 4.78 12.93 4 11 4c-3.53 0-6.43 2.61-6.92 6H6.1c.46-2.28 2.48-4 4.9-4zm5.64 9.14c.66-.9 1.12-1.97 1.28-3.14H15.9c-.46 2.28-2.48 4-4.9 4-1.38 0-2.63-.56-3.54-1.46L10 12H4v6l2.05-2.05C7.32 17.22 9.07 18 11 18c1.55 0 2.98-.51 4.14-1.36L20 21.49 21.49 20l-4.85-4.86z"}),"FindReplace");e.Z=i},98095:function(n,e,t){"use strict";var r=t(64836);e.Z=void 0;var u=r(t(45649)),c=t(80184),i=(0,u.default)((0,c.jsx)("path",{d:"M19 3H5c-1.1 0-1.99.9-1.99 2L3 19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-1 11h-4v4h-4v-4H6v-4h4V6h4v4h4v4z"}),"LocalHospital");e.Z=i},36909:function(n,e,t){"use strict";var r=t(64836);e.Z=void 0;var u=r(t(45649)),c=t(80184),i=(0,u.default)((0,c.jsx)("path",{d:"M17 12c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5zm1.65 7.35L16.5 17.2V14h1v2.79l1.85 1.85-.7.71zM18 3h-3.18C14.4 1.84 13.3 1 12 1s-2.4.84-2.82 2H6c-1.1 0-2 .9-2 2v15c0 1.1.9 2 2 2h6.11c-.59-.57-1.07-1.25-1.42-2H6V5h2v3h8V5h2v5.08c.71.1 1.38.31 2 .6V5c0-1.1-.9-2-2-2zm-6 2c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1z"}),"PendingActions");e.Z=i},87569:function(n,e,t){"use strict";var r=t(64836);e.Z=void 0;var u=r(t(45649)),c=t(80184),i=(0,u.default)((0,c.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z"}),"Public");e.Z=i},3579:function(n,e,t){"use strict";var r=t(64836);e.Z=void 0;var u=r(t(45649)),c=t(80184),i=(0,u.default)((0,c.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");e.Z=i},20165:function(n,e,t){"use strict";var r=t(64836);e.Z=void 0;var u=r(t(45649)),c=t(80184),i=(0,u.default)((0,c.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");e.Z=i},21141:function(n,e,t){"use strict";var r=t(64836);e.Z=void 0;var u=r(t(45649)),c=t(80184),i=(0,u.default)((0,c.jsx)("path",{d:"M12.65 10C11.83 7.67 9.61 6 7 6c-3.31 0-6 2.69-6 6s2.69 6 6 6c2.61 0 4.83-1.67 5.65-4H17v4h4v-4h2v-4H12.65zM7 14c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"}),"VpnKey");e.Z=i},244:function(n,e,t){"use strict";var r=t(76189),u=t(80184);e.Z=(0,r.Z)((0,u.jsx)("path",{d:"M10 15h5.88c.27-.31.67-.5 1.12-.5.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5c-.44 0-.84-.19-1.12-.5H11.9c-.46 2.28-2.48 4-4.9 4-2.76 0-5-2.24-5-5 0-2.42 1.72-4.44 4-4.9v2.07c-1.16.41-2 1.53-2 2.83 0 1.65 1.35 3 3 3s3-1.35 3-3v-1zm2.5-11c1.65 0 3 1.35 3 3h2c0-2.76-2.24-5-5-5s-5 2.24-5 5c0 1.43.6 2.71 1.55 3.62l-2.35 3.9c-.68.14-1.2.75-1.2 1.48 0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5c0-.16-.02-.31-.07-.45l3.38-5.63C10.49 9.61 9.5 8.42 9.5 7c0-1.65 1.35-3 3-3zm4.5 9c-.64 0-1.23.2-1.72.54l-3.05-5.07C11.53 8.35 11 7.74 11 7c0-.83.67-1.5 1.5-1.5S14 6.17 14 7c0 .15-.02.29-.06.43l2.19 3.65c.28-.05.57-.08.87-.08 2.76 0 5 2.24 5 5s-2.24 5-5 5c-1.85 0-3.47-1.01-4.33-2.5h2.67c.48.32 1.05.5 1.66.5 1.65 0 3-1.35 3-3s-1.35-3-3-3z"}),"Webhook")},45649:function(n,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return r.createSvgIcon}});var r=t(28610)},83449:function(n,e,t){"use strict";t.d(e,{ZP:function(){return o},_i:function(){return a},pQ:function(){return l},uU:function(){return s}});var r=t(29439),u=t(72791),c=t(80184),i=u.createContext(null);function o(n){var e=n.children,t=n.value,o=function(){var n=u.useState(null),e=(0,r.Z)(n,2),t=e[0],c=e[1];return u.useEffect((function(){c("mui-p-".concat(Math.round(1e5*Math.random())))}),[]),t}(),a=u.useMemo((function(){return{idPrefix:o,value:t}}),[o,t]);return(0,c.jsx)(i.Provider,{value:a,children:e})}function a(){return u.useContext(i)}function s(n,e){return null===n.idPrefix?null:"".concat(n.idPrefix,"-P-").concat(e)}function l(n,e){return null===n.idPrefix?null:"".concat(n.idPrefix,"-T-").concat(e)}},47283:function(n,e,t){"use strict";var r=t(87462),u=t(63366),c=t(72791),i=t(18073),o=t(83449),a=t(80184),s=["children"],l=c.forwardRef((function(n,e){var t=n.children,l=(0,u.Z)(n,s),f=(0,o._i)();if(null===f)throw new TypeError("No TabContext provided");var v=c.Children.map(t,(function(n){return c.isValidElement(n)?c.cloneElement(n,{"aria-controls":(0,o.uU)(f,n.props.value),id:(0,o.pQ)(f,n.props.value)}):null}));return(0,a.jsx)(i.Z,(0,r.Z)({},l,{ref:e,value:f.value,children:v}))}));e.Z=l},82851:function(n,e,t){"use strict";t.d(e,{Z:function(){return p}});var r=t(87462),u=t(63366),c=t(72791),i=t(28182),o=t(66934),a=t(31402),s=t(94419),l=t(21217);function f(n){return(0,l.Z)("MuiTabPanel",n)}(0,t(75878).Z)("MuiTabPanel",["root"]);var v=t(83449),d=t(80184),h=["children","className","value"],Z=(0,o.ZP)("div",{name:"MuiTabPanel",slot:"Root",overridesResolver:function(n,e){return e.root}})((function(n){return{padding:n.theme.spacing(3)}})),p=c.forwardRef((function(n,e){var t=(0,a.Z)({props:n,name:"MuiTabPanel"}),c=t.children,o=t.className,l=t.value,p=(0,u.Z)(t,h),m=(0,r.Z)({},t),M=function(n){var e=n.classes;return(0,s.Z)({root:["root"]},f,e)}(m),z=(0,v._i)();if(null===z)throw new TypeError("No TabContext provided");var x=(0,v.uU)(z,l),C=(0,v.pQ)(z,l);return(0,d.jsx)(Z,(0,r.Z)({"aria-labelledby":C,className:(0,i.Z)(M.root,o),hidden:l!==z.value,id:x,ref:e,role:"tabpanel",ownerState:m},p,{children:l===z.value&&c}))}))},95193:function(n,e,t){"use strict";var r;t.d(e,{Z:function(){return v}});var u=t(29439),c=t(72791),i=t(69120),o=t(33073),a=t(40162);function s(n,e,t,r,i){var o=c.useState((function(){return i&&t?t(n).matches:r?r(n).matches:e})),s=(0,u.Z)(o,2),l=s[0],f=s[1];return(0,a.Z)((function(){var e=!0;if(t){var r=t(n),u=function(){e&&f(r.matches)};return u(),r.addListener(u),function(){e=!1,r.removeListener(u)}}}),[n,t]),l}var l=(r||(r=t.t(c,2))).useSyncExternalStore;function f(n,e,t,r,i){var o=c.useCallback((function(){return e}),[e]),a=c.useMemo((function(){if(i&&t)return function(){return t(n).matches};if(null!==r){var e=r(n).matches;return function(){return e}}return o}),[o,n,r,i,t]),s=c.useMemo((function(){if(null===t)return[o,function(){return function(){}}];var e=t(n);return[function(){return e.matches},function(n){return e.addListener(n),function(){e.removeListener(n)}}]}),[o,t,n]),f=(0,u.Z)(s,2),v=f[0],d=f[1];return l(d,v,a)}function v(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=(0,i.Z)(),r="undefined"!==typeof window&&"undefined"!==typeof window.matchMedia,u=(0,o.Z)({name:"MuiUseMediaQuery",props:e,theme:t}),c=u.defaultMatches,a=void 0!==c&&c,v=u.matchMedia,d=void 0===v?r?window.matchMedia:null:v,h=u.ssrMatchMedia,Z=void 0===h?null:h,p=u.noSsr,m=void 0!==p&&p;var M="function"===typeof n?n(t):n;return M=M.replace(/^@media( ?)/m,""),(void 0!==l?f:s)(M,a,d,Z,m)}},31260:function(n,e,t){"use strict";var r=t(78949);e.Z=r.Z},28610:function(n,e,t){"use strict";t.r(e),t.d(e,{capitalize:function(){return u.Z},createChainedFunction:function(){return c.Z},createSvgIcon:function(){return i.Z},debounce:function(){return o.Z},deprecatedPropType:function(){return a},isMuiElement:function(){return s.Z},ownerDocument:function(){return l.Z},ownerWindow:function(){return f.Z},requirePropFactory:function(){return v},setRef:function(){return d},unstable_ClassNameGenerator:function(){return C},unstable_useEnhancedEffect:function(){return h.Z},unstable_useId:function(){return Z.Z},unsupportedProp:function(){return p},useControlled:function(){return m.Z},useEventCallback:function(){return M.Z},useForkRef:function(){return z.Z},useIsFocusVisible:function(){return x.Z}});var r=t(55902),u=t(14036),c=t(31260),i=t(76189),o=t(83199);var a=function(n,e){return function(){return null}},s=t(19103),l=t(98301),f=t(17602);t(87462);var v=function(n,e){return function(){return null}},d=t(62971).Z,h=t(40162),Z=t(67384);var p=function(n,e,t,r,u){return null},m=t(98278),M=t(89683),z=t(42071),x=t(23031),C={configure:function(n){r.Z.configure(n)}}},19103:function(n,e,t){"use strict";t.d(e,{Z:function(){return u}});var r=t(72791);var u=function(n,e){return r.isValidElement(n)&&-1!==e.indexOf(n.type.muiName)}},64836:function(n){n.exports=function(n){return n&&n.__esModule?n:{default:n}},n.exports.__esModule=!0,n.exports.default=n.exports}}]); +//# sourceMappingURL=6975.18f2c3f9.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/6975.18f2c3f9.chunk.js.map b/portal-ui/build/static/js/6975.18f2c3f9.chunk.js.map new file mode 100644 index 000000000..db9c66583 --- /dev/null +++ b/portal-ui/build/static/js/6975.18f2c3f9.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/6975.18f2c3f9.chunk.js","mappings":"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","sources":["../node_modules/@mui/icons-material/CallToAction.js","../node_modules/@mui/icons-material/Code.js","../node_modules/@mui/icons-material/Compress.js","../node_modules/@mui/icons-material/FindReplace.js","../node_modules/@mui/icons-material/LocalHospital.js","../node_modules/@mui/icons-material/PendingActions.js","../node_modules/@mui/icons-material/Public.js","../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/icons-material/VpnKey.js","../node_modules/@mui/icons-material/esm/Webhook.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/lab/TabContext/TabContext.js","../node_modules/@mui/lab/TabList/TabList.js","../node_modules/@mui/lab/TabPanel/tabPanelClasses.js","../node_modules/@mui/lab/TabPanel/TabPanel.js","../node_modules/@mui/material/useMediaQuery/useMediaQuery.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3v-3h18v3z\"\n}), 'CallToAction');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M9.4 16.6 4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0 4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z\"\n}), 'Code');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M8 19h3v3h2v-3h3l-4-4-4 4zm8-15h-3V1h-2v3H8l4 4 4-4zM4 9v2h16V9H4zm0 3h16v2H4z\"\n}), 'Compress');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M11 6c1.38 0 2.63.56 3.54 1.46L12 10h6V4l-2.05 2.05C14.68 4.78 12.93 4 11 4c-3.53 0-6.43 2.61-6.92 6H6.1c.46-2.28 2.48-4 4.9-4zm5.64 9.14c.66-.9 1.12-1.97 1.28-3.14H15.9c-.46 2.28-2.48 4-4.9 4-1.38 0-2.63-.56-3.54-1.46L10 12H4v6l2.05-2.05C7.32 17.22 9.07 18 11 18c1.55 0 2.98-.51 4.14-1.36L20 21.49 21.49 20l-4.85-4.86z\"\n}), 'FindReplace');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M19 3H5c-1.1 0-1.99.9-1.99 2L3 19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-1 11h-4v4h-4v-4H6v-4h4V6h4v4h4v4z\"\n}), 'LocalHospital');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M17 12c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5zm1.65 7.35L16.5 17.2V14h1v2.79l1.85 1.85-.7.71zM18 3h-3.18C14.4 1.84 13.3 1 12 1s-2.4.84-2.82 2H6c-1.1 0-2 .9-2 2v15c0 1.1.9 2 2 2h6.11c-.59-.57-1.07-1.25-1.42-2H6V5h2v3h8V5h2v5.08c.71.1 1.38.31 2 .6V5c0-1.1-.9-2-2-2zm-6 2c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1z\"\n}), 'PendingActions');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z\"\n}), 'Public');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12.65 10C11.83 7.67 9.61 6 7 6c-3.31 0-6 2.69-6 6s2.69 6 6 6c2.61 0 4.83-1.67 5.65-4H17v4h4v-4h2v-4H12.65zM7 14c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z\"\n}), 'VpnKey');\nexports.default = _default;","import createSvgIcon from './utils/createSvgIcon';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M10 15h5.88c.27-.31.67-.5 1.12-.5.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5c-.44 0-.84-.19-1.12-.5H11.9c-.46 2.28-2.48 4-4.9 4-2.76 0-5-2.24-5-5 0-2.42 1.72-4.44 4-4.9v2.07c-1.16.41-2 1.53-2 2.83 0 1.65 1.35 3 3 3s3-1.35 3-3v-1zm2.5-11c1.65 0 3 1.35 3 3h2c0-2.76-2.24-5-5-5s-5 2.24-5 5c0 1.43.6 2.71 1.55 3.62l-2.35 3.9c-.68.14-1.2.75-1.2 1.48 0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5c0-.16-.02-.31-.07-.45l3.38-5.63C10.49 9.61 9.5 8.42 9.5 7c0-1.65 1.35-3 3-3zm4.5 9c-.64 0-1.23.2-1.72.54l-3.05-5.07C11.53 8.35 11 7.74 11 7c0-.83.67-1.5 1.5-1.5S14 6.17 14 7c0 .15-.02.29-.06.43l2.19 3.65c.28-.05.57-.08.87-.08 2.76 0 5 2.24 5 5s-2.24 5-5 5c-1.85 0-3.47-1.01-4.33-2.5h2.67c.48.32 1.05.5 1.66.5 1.65 0 3-1.35 3-3s-1.35-3-3-3z\"\n}), 'Webhook');","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import * as React from 'react';\nimport PropTypes from 'prop-types';\n\n/**\n * @type {React.Context<{ idPrefix: string; value: string } | null>}\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst Context = /*#__PURE__*/React.createContext(null);\nif (process.env.NODE_ENV !== 'production') {\n Context.displayName = 'TabContext';\n}\nfunction useUniquePrefix() {\n const [id, setId] = React.useState(null);\n React.useEffect(() => {\n setId(`mui-p-${Math.round(Math.random() * 1e5)}`);\n }, []);\n return id;\n}\nexport default function TabContext(props) {\n const {\n children,\n value\n } = props;\n const idPrefix = useUniquePrefix();\n const context = React.useMemo(() => {\n return {\n idPrefix,\n value\n };\n }, [idPrefix, value]);\n return /*#__PURE__*/_jsx(Context.Provider, {\n value: context,\n children: children\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? TabContext.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * The value of the currently selected `Tab`.\n */\n value: PropTypes.string.isRequired\n} : void 0;\n\n/**\n * @returns {unknown}\n */\nexport function useTabContext() {\n return React.useContext(Context);\n}\nexport function getPanelId(context, value) {\n const {\n idPrefix\n } = context;\n if (idPrefix === null) {\n return null;\n }\n return `${context.idPrefix}-P-${value}`;\n}\nexport function getTabId(context, value) {\n const {\n idPrefix\n } = context;\n if (idPrefix === null) {\n return null;\n }\n return `${context.idPrefix}-T-${value}`;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"children\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport Tabs from '@mui/material/Tabs';\nimport { useTabContext, getTabId, getPanelId } from '../TabContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst TabList = /*#__PURE__*/React.forwardRef(function TabList(props, ref) {\n const {\n children: childrenProp\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const context = useTabContext();\n if (context === null) {\n throw new TypeError('No TabContext provided');\n }\n const children = React.Children.map(childrenProp, child => {\n if (! /*#__PURE__*/React.isValidElement(child)) {\n return null;\n }\n return /*#__PURE__*/React.cloneElement(child, {\n // SOMEDAY: `Tabs` will set those themselves\n 'aria-controls': getPanelId(context, child.props.value),\n id: getTabId(context, child.props.value)\n });\n });\n return /*#__PURE__*/_jsx(Tabs, _extends({}, other, {\n ref: ref,\n value: context.value,\n children: children\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? TabList.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * A list of `` elements.\n */\n children: PropTypes.node\n} : void 0;\nexport default TabList;","import generateUtilityClass from '@mui/material/generateUtilityClass';\nimport generateUtilityClasses from '@mui/material/generateUtilityClasses';\nexport function getTabPanelUtilityClass(slot) {\n return generateUtilityClass('MuiTabPanel', slot);\n}\nconst tabPanelClasses = generateUtilityClasses('MuiTabPanel', ['root']);\nexport default tabPanelClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"children\", \"className\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { getTabPanelUtilityClass } from './tabPanelClasses';\nimport { getPanelId, getTabId, useTabContext } from '../TabContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getTabPanelUtilityClass, classes);\n};\nconst TabPanelRoot = styled('div', {\n name: 'MuiTabPanel',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})(({\n theme\n}) => ({\n padding: theme.spacing(3)\n}));\nconst TabPanel = /*#__PURE__*/React.forwardRef(function TabPanel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTabPanel'\n });\n const {\n children,\n className,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props);\n const classes = useUtilityClasses(ownerState);\n const context = useTabContext();\n if (context === null) {\n throw new TypeError('No TabContext provided');\n }\n const id = getPanelId(context, value);\n const tabId = getTabId(context, value);\n return /*#__PURE__*/_jsx(TabPanelRoot, _extends({\n \"aria-labelledby\": tabId,\n className: clsx(classes.root, className),\n hidden: value !== context.value,\n id: id,\n ref: ref,\n role: \"tabpanel\",\n ownerState: ownerState\n }, other, {\n children: value === context.value && children\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? TabPanel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The `value` of the corresponding `Tab`. Must use the index of the `Tab` when\n * no `value` was passed to `Tab`.\n */\n value: PropTypes.string.isRequired\n} : void 0;\nexport default TabPanel;","import * as React from 'react';\nimport { getThemeProps, useThemeWithoutDefault as useTheme } from '@mui/system';\nimport useEnhancedEffect from '../utils/useEnhancedEffect';\n\n/**\n * @deprecated Not used internally. Use `MediaQueryListEvent` from lib.dom.d.ts instead.\n */\n\n/**\n * @deprecated Not used internally. Use `MediaQueryList` from lib.dom.d.ts instead.\n */\n\n/**\n * @deprecated Not used internally. Use `(event: MediaQueryListEvent) => void` instead.\n */\n\nfunction useMediaQueryOld(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr) {\n const [match, setMatch] = React.useState(() => {\n if (noSsr && matchMedia) {\n return matchMedia(query).matches;\n }\n if (ssrMatchMedia) {\n return ssrMatchMedia(query).matches;\n }\n\n // Once the component is mounted, we rely on the\n // event listeners to return the correct matches value.\n return defaultMatches;\n });\n useEnhancedEffect(() => {\n let active = true;\n if (!matchMedia) {\n return undefined;\n }\n const queryList = matchMedia(query);\n const updateMatch = () => {\n // Workaround Safari wrong implementation of matchMedia\n // TODO can we remove it?\n // https://github.com/mui/material-ui/pull/17315#issuecomment-528286677\n if (active) {\n setMatch(queryList.matches);\n }\n };\n updateMatch();\n // TODO: Use `addEventListener` once support for Safari < 14 is dropped\n queryList.addListener(updateMatch);\n return () => {\n active = false;\n queryList.removeListener(updateMatch);\n };\n }, [query, matchMedia]);\n return match;\n}\n\n// eslint-disable-next-line no-useless-concat -- Workaround for https://github.com/webpack/webpack/issues/14814\nconst maybeReactUseSyncExternalStore = React['useSyncExternalStore' + ''];\nfunction useMediaQueryNew(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr) {\n const getDefaultSnapshot = React.useCallback(() => defaultMatches, [defaultMatches]);\n const getServerSnapshot = React.useMemo(() => {\n if (noSsr && matchMedia) {\n return () => matchMedia(query).matches;\n }\n if (ssrMatchMedia !== null) {\n const {\n matches\n } = ssrMatchMedia(query);\n return () => matches;\n }\n return getDefaultSnapshot;\n }, [getDefaultSnapshot, query, ssrMatchMedia, noSsr, matchMedia]);\n const [getSnapshot, subscribe] = React.useMemo(() => {\n if (matchMedia === null) {\n return [getDefaultSnapshot, () => () => {}];\n }\n const mediaQueryList = matchMedia(query);\n return [() => mediaQueryList.matches, notify => {\n // TODO: Use `addEventListener` once support for Safari < 14 is dropped\n mediaQueryList.addListener(notify);\n return () => {\n mediaQueryList.removeListener(notify);\n };\n }];\n }, [getDefaultSnapshot, matchMedia, query]);\n const match = maybeReactUseSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n return match;\n}\nexport default function useMediaQuery(queryInput, options = {}) {\n const theme = useTheme();\n // Wait for jsdom to support the match media feature.\n // All the browsers MUI support have this built-in.\n // This defensive check is here for simplicity.\n // Most of the time, the match media logic isn't central to people tests.\n const supportMatchMedia = typeof window !== 'undefined' && typeof window.matchMedia !== 'undefined';\n const {\n defaultMatches = false,\n matchMedia = supportMatchMedia ? window.matchMedia : null,\n ssrMatchMedia = null,\n noSsr = false\n } = getThemeProps({\n name: 'MuiUseMediaQuery',\n props: options,\n theme\n });\n if (process.env.NODE_ENV !== 'production') {\n if (typeof queryInput === 'function' && theme === null) {\n console.error(['MUI: The `query` argument provided is invalid.', 'You are providing a function without a theme in the context.', 'One of the parent elements needs to use a ThemeProvider.'].join('\\n'));\n }\n }\n let query = typeof queryInput === 'function' ? queryInput(theme) : queryInput;\n query = query.replace(/^@media( ?)/m, '');\n\n // TODO: Drop `useMediaQueryOld` and use `use-sync-external-store` shim in `useMediaQueryNew` once the package is stable\n const useMediaQueryImplementation = maybeReactUseSyncExternalStore !== undefined ? useMediaQueryNew : useMediaQueryOld;\n const match = useMediaQueryImplementation(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr);\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useDebugValue({\n query,\n match\n });\n }\n return match;\n}","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","createSvgIcon","_jsx","Object","defineProperty","value","enumerable","get","_utils","Context","React","TabContext","props","children","idPrefix","_React$useState","_React$useState2","_slicedToArray","id","setId","concat","Math","round","random","useUniquePrefix","context","Provider","useTabContext","getPanelId","getTabId","_excluded","TabList","ref","childrenProp","other","_objectWithoutPropertiesLoose","TypeError","map","child","Tabs","_extends","getTabPanelUtilityClass","slot","generateUtilityClass","generateUtilityClasses","TabPanelRoot","styled","name","overridesResolver","styles","root","_ref","padding","theme","spacing","inProps","useThemeProps","className","ownerState","classes","composeClasses","useUtilityClasses","tabId","clsx","hidden","role","useMediaQueryOld","query","defaultMatches","matchMedia","ssrMatchMedia","noSsr","matches","match","setMatch","useEnhancedEffect","active","queryList","updateMatch","addListener","removeListener","maybeReactUseSyncExternalStore","useMediaQueryNew","getDefaultSnapshot","getServerSnapshot","_React$useMemo","mediaQueryList","notify","_React$useMemo2","getSnapshot","subscribe","useMediaQuery","queryInput","options","arguments","length","undefined","useTheme","supportMatchMedia","window","_getThemeProps","getThemeProps","_getThemeProps$defaul","_getThemeProps$matchM","_getThemeProps$ssrMat","_getThemeProps$noSsr","replace","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","type","muiName","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/6993.cff4fa3c.chunk.js.map b/portal-ui/build/static/js/6993.cff4fa3c.chunk.js.map deleted file mode 100644 index 35680e55c..000000000 --- a/portal-ui/build/static/js/6993.cff4fa3c.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/6993.cff4fa3c.chunk.js","mappings":"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","sources":["../node_modules/@mui/material/internal/svg-icons/Cancel.js","../node_modules/@mui/material/Chip/chipClasses.js","../node_modules/@mui/material/Chip/Chip.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@mui/utils/esm/createChainedFunction.js"],"sourcesContent":["import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n\n/**\n * @ignore - internal component.\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z\"\n}), 'Cancel');","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getChipUtilityClass(slot) {\n return generateUtilityClass('MuiChip', slot);\n}\nconst chipClasses = generateUtilityClasses('MuiChip', ['root', 'sizeSmall', 'sizeMedium', 'colorError', 'colorInfo', 'colorPrimary', 'colorSecondary', 'colorSuccess', 'colorWarning', 'disabled', 'clickable', 'clickableColorPrimary', 'clickableColorSecondary', 'deletable', 'deletableColorPrimary', 'deletableColorSecondary', 'outlined', 'filled', 'outlinedPrimary', 'outlinedSecondary', 'filledPrimary', 'filledSecondary', 'avatar', 'avatarSmall', 'avatarMedium', 'avatarColorPrimary', 'avatarColorSecondary', 'icon', 'iconSmall', 'iconMedium', 'iconColorPrimary', 'iconColorSecondary', 'label', 'labelSmall', 'labelMedium', 'deleteIcon', 'deleteIconSmall', 'deleteIconMedium', 'deleteIconColorPrimary', 'deleteIconColorSecondary', 'deleteIconOutlinedColorPrimary', 'deleteIconOutlinedColorSecondary', 'deleteIconFilledColorPrimary', 'deleteIconFilledColorSecondary', 'focusVisible']);\nexport default chipClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"avatar\", \"className\", \"clickable\", \"color\", \"component\", \"deleteIcon\", \"disabled\", \"icon\", \"label\", \"onClick\", \"onDelete\", \"onKeyDown\", \"onKeyUp\", \"size\", \"variant\", \"tabIndex\", \"skipFocusWhenDisabled\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport CancelIcon from '../internal/svg-icons/Cancel';\nimport useForkRef from '../utils/useForkRef';\nimport unsupportedProp from '../utils/unsupportedProp';\nimport capitalize from '../utils/capitalize';\nimport ButtonBase from '../ButtonBase';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport chipClasses, { getChipUtilityClass } from './chipClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n disabled,\n size,\n color,\n iconColor,\n onDelete,\n clickable,\n variant\n } = ownerState;\n const slots = {\n root: ['root', variant, disabled && 'disabled', `size${capitalize(size)}`, `color${capitalize(color)}`, clickable && 'clickable', clickable && `clickableColor${capitalize(color)}`, onDelete && 'deletable', onDelete && `deletableColor${capitalize(color)}`, `${variant}${capitalize(color)}`],\n label: ['label', `label${capitalize(size)}`],\n avatar: ['avatar', `avatar${capitalize(size)}`, `avatarColor${capitalize(color)}`],\n icon: ['icon', `icon${capitalize(size)}`, `iconColor${capitalize(iconColor)}`],\n deleteIcon: ['deleteIcon', `deleteIcon${capitalize(size)}`, `deleteIconColor${capitalize(color)}`, `deleteIcon${capitalize(variant)}Color${capitalize(color)}`]\n };\n return composeClasses(slots, getChipUtilityClass, classes);\n};\nconst ChipRoot = styled('div', {\n name: 'MuiChip',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n const {\n color,\n iconColor,\n clickable,\n onDelete,\n size,\n variant\n } = ownerState;\n return [{\n [`& .${chipClasses.avatar}`]: styles.avatar\n }, {\n [`& .${chipClasses.avatar}`]: styles[`avatar${capitalize(size)}`]\n }, {\n [`& .${chipClasses.avatar}`]: styles[`avatarColor${capitalize(color)}`]\n }, {\n [`& .${chipClasses.icon}`]: styles.icon\n }, {\n [`& .${chipClasses.icon}`]: styles[`icon${capitalize(size)}`]\n }, {\n [`& .${chipClasses.icon}`]: styles[`iconColor${capitalize(iconColor)}`]\n }, {\n [`& .${chipClasses.deleteIcon}`]: styles.deleteIcon\n }, {\n [`& .${chipClasses.deleteIcon}`]: styles[`deleteIcon${capitalize(size)}`]\n }, {\n [`& .${chipClasses.deleteIcon}`]: styles[`deleteIconColor${capitalize(color)}`]\n }, {\n [`& .${chipClasses.deleteIcon}`]: styles[`deleteIcon${capitalize(variant)}Color${capitalize(color)}`]\n }, styles.root, styles[`size${capitalize(size)}`], styles[`color${capitalize(color)}`], clickable && styles.clickable, clickable && color !== 'default' && styles[`clickableColor${capitalize(color)})`], onDelete && styles.deletable, onDelete && color !== 'default' && styles[`deletableColor${capitalize(color)}`], styles[variant], styles[`${variant}${capitalize(color)}`]];\n }\n})(({\n theme,\n ownerState\n}) => {\n const textColor = theme.palette.mode === 'light' ? theme.palette.grey[700] : theme.palette.grey[300];\n return _extends({\n maxWidth: '100%',\n fontFamily: theme.typography.fontFamily,\n fontSize: theme.typography.pxToRem(13),\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n height: 32,\n color: (theme.vars || theme).palette.text.primary,\n backgroundColor: (theme.vars || theme).palette.action.selected,\n borderRadius: 32 / 2,\n whiteSpace: 'nowrap',\n transition: theme.transitions.create(['background-color', 'box-shadow']),\n // label will inherit this from root, then `clickable` class overrides this for both\n cursor: 'default',\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0,\n textDecoration: 'none',\n border: 0,\n // Remove `button` border\n padding: 0,\n // Remove `button` padding\n verticalAlign: 'middle',\n boxSizing: 'border-box',\n [`&.${chipClasses.disabled}`]: {\n opacity: (theme.vars || theme).palette.action.disabledOpacity,\n pointerEvents: 'none'\n },\n [`& .${chipClasses.avatar}`]: {\n marginLeft: 5,\n marginRight: -6,\n width: 24,\n height: 24,\n color: theme.vars ? theme.vars.palette.Chip.defaultAvatarColor : textColor,\n fontSize: theme.typography.pxToRem(12)\n },\n [`& .${chipClasses.avatarColorPrimary}`]: {\n color: (theme.vars || theme).palette.primary.contrastText,\n backgroundColor: (theme.vars || theme).palette.primary.dark\n },\n [`& .${chipClasses.avatarColorSecondary}`]: {\n color: (theme.vars || theme).palette.secondary.contrastText,\n backgroundColor: (theme.vars || theme).palette.secondary.dark\n },\n [`& .${chipClasses.avatarSmall}`]: {\n marginLeft: 4,\n marginRight: -4,\n width: 18,\n height: 18,\n fontSize: theme.typography.pxToRem(10)\n },\n [`& .${chipClasses.icon}`]: _extends({\n marginLeft: 5,\n marginRight: -6\n }, ownerState.size === 'small' && {\n fontSize: 18,\n marginLeft: 4,\n marginRight: -4\n }, ownerState.iconColor === ownerState.color && _extends({\n color: theme.vars ? theme.vars.palette.Chip.defaultIconColor : textColor\n }, ownerState.color !== 'default' && {\n color: 'inherit'\n })),\n [`& .${chipClasses.deleteIcon}`]: _extends({\n WebkitTapHighlightColor: 'transparent',\n color: theme.vars ? `rgba(${theme.vars.palette.text.primaryChannel} / 0.26)` : alpha(theme.palette.text.primary, 0.26),\n fontSize: 22,\n cursor: 'pointer',\n margin: '0 5px 0 -6px',\n '&:hover': {\n color: theme.vars ? `rgba(${theme.vars.palette.text.primaryChannel} / 0.4)` : alpha(theme.palette.text.primary, 0.4)\n }\n }, ownerState.size === 'small' && {\n fontSize: 16,\n marginRight: 4,\n marginLeft: -4\n }, ownerState.color !== 'default' && {\n color: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].contrastTextChannel} / 0.7)` : alpha(theme.palette[ownerState.color].contrastText, 0.7),\n '&:hover, &:active': {\n color: (theme.vars || theme).palette[ownerState.color].contrastText\n }\n })\n }, ownerState.size === 'small' && {\n height: 24\n }, ownerState.color !== 'default' && {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].main,\n color: (theme.vars || theme).palette[ownerState.color].contrastText\n }, ownerState.onDelete && {\n [`&.${chipClasses.focusVisible}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.selectedChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)\n }\n }, ownerState.onDelete && ownerState.color !== 'default' && {\n [`&.${chipClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].dark\n }\n });\n}, ({\n theme,\n ownerState\n}) => _extends({}, ownerState.clickable && {\n userSelect: 'none',\n WebkitTapHighlightColor: 'transparent',\n cursor: 'pointer',\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.selectedChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity)\n },\n [`&.${chipClasses.focusVisible}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.selectedChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)\n },\n '&:active': {\n boxShadow: (theme.vars || theme).shadows[1]\n }\n}, ownerState.clickable && ownerState.color !== 'default' && {\n [`&:hover, &.${chipClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].dark\n }\n}), ({\n theme,\n ownerState\n}) => _extends({}, ownerState.variant === 'outlined' && {\n backgroundColor: 'transparent',\n border: theme.vars ? `1px solid ${theme.vars.palette.Chip.defaultBorder}` : `1px solid ${theme.palette.mode === 'light' ? theme.palette.grey[400] : theme.palette.grey[700]}`,\n [`&.${chipClasses.clickable}:hover`]: {\n backgroundColor: (theme.vars || theme).palette.action.hover\n },\n [`&.${chipClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette.action.focus\n },\n [`& .${chipClasses.avatar}`]: {\n marginLeft: 4\n },\n [`& .${chipClasses.avatarSmall}`]: {\n marginLeft: 2\n },\n [`& .${chipClasses.icon}`]: {\n marginLeft: 4\n },\n [`& .${chipClasses.iconSmall}`]: {\n marginLeft: 2\n },\n [`& .${chipClasses.deleteIcon}`]: {\n marginRight: 5\n },\n [`& .${chipClasses.deleteIconSmall}`]: {\n marginRight: 3\n }\n}, ownerState.variant === 'outlined' && ownerState.color !== 'default' && {\n color: (theme.vars || theme).palette[ownerState.color].main,\n border: `1px solid ${theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / 0.7)` : alpha(theme.palette[ownerState.color].main, 0.7)}`,\n [`&.${chipClasses.clickable}:hover`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity)\n },\n [`&.${chipClasses.focusVisible}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.focusOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.focusOpacity)\n },\n [`& .${chipClasses.deleteIcon}`]: {\n color: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / 0.7)` : alpha(theme.palette[ownerState.color].main, 0.7),\n '&:hover, &:active': {\n color: (theme.vars || theme).palette[ownerState.color].main\n }\n }\n}));\nconst ChipLabel = styled('span', {\n name: 'MuiChip',\n slot: 'Label',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n const {\n size\n } = ownerState;\n return [styles.label, styles[`label${capitalize(size)}`]];\n }\n})(({\n ownerState\n}) => _extends({\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n paddingLeft: 12,\n paddingRight: 12,\n whiteSpace: 'nowrap'\n}, ownerState.size === 'small' && {\n paddingLeft: 8,\n paddingRight: 8\n}));\nfunction isDeleteKeyboardEvent(keyboardEvent) {\n return keyboardEvent.key === 'Backspace' || keyboardEvent.key === 'Delete';\n}\n\n/**\n * Chips represent complex entities in small blocks, such as a contact.\n */\nconst Chip = /*#__PURE__*/React.forwardRef(function Chip(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiChip'\n });\n const {\n avatar: avatarProp,\n className,\n clickable: clickableProp,\n color = 'default',\n component: ComponentProp,\n deleteIcon: deleteIconProp,\n disabled = false,\n icon: iconProp,\n label,\n onClick,\n onDelete,\n onKeyDown,\n onKeyUp,\n size = 'medium',\n variant = 'filled',\n tabIndex,\n skipFocusWhenDisabled = false // TODO v6: Rename to `focusableWhenDisabled`.\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const chipRef = React.useRef(null);\n const handleRef = useForkRef(chipRef, ref);\n const handleDeleteIconClick = event => {\n // Stop the event from bubbling up to the `Chip`\n event.stopPropagation();\n if (onDelete) {\n onDelete(event);\n }\n };\n const handleKeyDown = event => {\n // Ignore events from children of `Chip`.\n if (event.currentTarget === event.target && isDeleteKeyboardEvent(event)) {\n // Will be handled in keyUp, otherwise some browsers\n // might init navigation\n event.preventDefault();\n }\n if (onKeyDown) {\n onKeyDown(event);\n }\n };\n const handleKeyUp = event => {\n // Ignore events from children of `Chip`.\n if (event.currentTarget === event.target) {\n if (onDelete && isDeleteKeyboardEvent(event)) {\n onDelete(event);\n } else if (event.key === 'Escape' && chipRef.current) {\n chipRef.current.blur();\n }\n }\n if (onKeyUp) {\n onKeyUp(event);\n }\n };\n const clickable = clickableProp !== false && onClick ? true : clickableProp;\n const component = clickable || onDelete ? ButtonBase : ComponentProp || 'div';\n const ownerState = _extends({}, props, {\n component,\n disabled,\n size,\n color,\n iconColor: /*#__PURE__*/React.isValidElement(iconProp) ? iconProp.props.color || color : color,\n onDelete: !!onDelete,\n clickable,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n const moreProps = component === ButtonBase ? _extends({\n component: ComponentProp || 'div',\n focusVisibleClassName: classes.focusVisible\n }, onDelete && {\n disableRipple: true\n }) : {};\n let deleteIcon = null;\n if (onDelete) {\n deleteIcon = deleteIconProp && /*#__PURE__*/React.isValidElement(deleteIconProp) ? /*#__PURE__*/React.cloneElement(deleteIconProp, {\n className: clsx(deleteIconProp.props.className, classes.deleteIcon),\n onClick: handleDeleteIconClick\n }) : /*#__PURE__*/_jsx(CancelIcon, {\n className: clsx(classes.deleteIcon),\n onClick: handleDeleteIconClick\n });\n }\n let avatar = null;\n if (avatarProp && /*#__PURE__*/React.isValidElement(avatarProp)) {\n avatar = /*#__PURE__*/React.cloneElement(avatarProp, {\n className: clsx(classes.avatar, avatarProp.props.className)\n });\n }\n let icon = null;\n if (iconProp && /*#__PURE__*/React.isValidElement(iconProp)) {\n icon = /*#__PURE__*/React.cloneElement(iconProp, {\n className: clsx(classes.icon, iconProp.props.className)\n });\n }\n if (process.env.NODE_ENV !== 'production') {\n if (avatar && icon) {\n console.error('MUI: The Chip component can not handle the avatar ' + 'and the icon prop at the same time. Pick one.');\n }\n }\n return /*#__PURE__*/_jsxs(ChipRoot, _extends({\n as: component,\n className: clsx(classes.root, className),\n disabled: clickable && disabled ? true : undefined,\n onClick: onClick,\n onKeyDown: handleKeyDown,\n onKeyUp: handleKeyUp,\n ref: handleRef,\n tabIndex: skipFocusWhenDisabled && disabled ? -1 : tabIndex,\n ownerState: ownerState\n }, moreProps, other, {\n children: [avatar || icon, /*#__PURE__*/_jsx(ChipLabel, {\n className: clsx(classes.label),\n ownerState: ownerState,\n children: label\n }), deleteIcon]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Chip.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The Avatar element to display.\n */\n avatar: PropTypes.element,\n /**\n * This prop isn't supported.\n * Use the `component` prop if you need to change the children structure.\n */\n children: unsupportedProp,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * If `true`, the chip will appear clickable, and will raise when pressed,\n * even if the onClick prop is not defined.\n * If `false`, the chip will not appear clickable, even if onClick prop is defined.\n * This can be used, for example,\n * along with the component prop to indicate an anchor Chip is clickable.\n * Note: this controls the UI and does not affect the onClick event.\n */\n clickable: PropTypes.bool,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'default'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Override the default delete icon element. Shown only if `onDelete` is set.\n */\n deleteIcon: PropTypes.element,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * Icon element.\n */\n icon: PropTypes.element,\n /**\n * The content of the component.\n */\n label: PropTypes.node,\n /**\n * @ignore\n */\n onClick: PropTypes.func,\n /**\n * Callback fired when the delete icon is clicked.\n * If set, the delete icon will be shown.\n */\n onDelete: PropTypes.func,\n /**\n * @ignore\n */\n onKeyDown: PropTypes.func,\n /**\n * @ignore\n */\n onKeyUp: PropTypes.func,\n /**\n * The size of the component.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * If `true`, allows the disabled chip to escape focus.\n * If `false`, allows the disabled chip to receive focus.\n * @default false\n */\n skipFocusWhenDisabled: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * @ignore\n */\n tabIndex: PropTypes.number,\n /**\n * The variant to use.\n * @default 'filled'\n */\n variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['filled', 'outlined']), PropTypes.string])\n} : void 0;\nexport default Chip;","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}"],"names":["createSvgIcon","_jsx","d","getChipUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","ChipRoot","styled","name","overridesResolver","props","styles","ownerState","color","iconColor","clickable","onDelete","size","variant","_defineProperty","concat","chipClasses","avatar","capitalize","icon","deleteIcon","root","deletable","_ref11","_extends2","theme","textColor","palette","mode","grey","_extends","maxWidth","fontFamily","typography","fontSize","pxToRem","display","alignItems","justifyContent","height","vars","text","primary","backgroundColor","action","selected","borderRadius","whiteSpace","transition","transitions","create","cursor","outline","textDecoration","border","padding","verticalAlign","boxSizing","disabled","opacity","disabledOpacity","pointerEvents","marginLeft","marginRight","width","Chip","defaultAvatarColor","avatarColorPrimary","contrastText","dark","avatarColorSecondary","secondary","avatarSmall","defaultIconColor","WebkitTapHighlightColor","primaryChannel","alpha","margin","contrastTextChannel","main","focusVisible","selectedChannel","selectedOpacity","focusOpacity","_ref14","_ref15","userSelect","hoverOpacity","boxShadow","shadows","_ref17","_ref18","_ref19","defaultBorder","hover","focus","iconSmall","deleteIconSmall","mainChannel","ChipLabel","label","_ref20","overflow","textOverflow","paddingLeft","paddingRight","isDeleteKeyboardEvent","keyboardEvent","key","React","inProps","ref","useThemeProps","avatarProp","className","clickableProp","_props$color","ComponentProp","component","deleteIconProp","_props$disabled","iconProp","onClick","onKeyDown","onKeyUp","_props$size","_props$variant","tabIndex","_props$skipFocusWhenD","skipFocusWhenDisabled","other","_objectWithoutPropertiesLoose","chipRef","handleRef","useForkRef","handleDeleteIconClick","event","stopPropagation","ButtonBase","classes","slots","composeClasses","useUtilityClasses","moreProps","focusVisibleClassName","disableRipple","clsx","CancelIcon","_jsxs","as","undefined","currentTarget","target","preventDefault","current","blur","children","element","muiNames","indexOf","type","muiName","createChainedFunction","_len","arguments","length","funcs","Array","_key","reduce","acc","func","_len2","args","_key2","apply","this"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/701.13e798d1.chunk.js b/portal-ui/build/static/js/701.13e798d1.chunk.js new file mode 100644 index 000000000..dadb78c8a --- /dev/null +++ b/portal-ui/build/static/js/701.13e798d1.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[701],{60701:function(e,n,s){s.r(n);var l=s(72791),t=s(57689),a=s(50099),u=s(7241),r=s(56087),c=s(80184),i=l.lazy((function(){return Promise.all([s.e(5473),s.e(1715),s.e(8831),s.e(8045)]).then(s.bind(s,68045))})),j=l.lazy((function(){return s.e(6895).then(s.bind(s,66895))})),x=l.lazy((function(){return Promise.all([s.e(5473),s.e(1715),s.e(977)]).then(s.bind(s,10977))}));n.default=function(){return(0,c.jsxs)(t.Z5,{children:[(0,c.jsx)(t.AW,{path:r.gA.ADD_BUCKETS,element:(0,c.jsx)(l.Suspense,{fallback:(0,c.jsx)(u.Z,{}),children:(0,c.jsx)(x,{})})}),(0,c.jsx)(t.AW,{path:"/",element:(0,c.jsx)(l.Suspense,{fallback:(0,c.jsx)(u.Z,{}),children:(0,c.jsx)(i,{})})}),(0,c.jsx)(t.AW,{path:":bucketName/admin/*",element:(0,c.jsx)(l.Suspense,{fallback:(0,c.jsx)(u.Z,{}),children:(0,c.jsx)(j,{})})}),(0,c.jsx)(t.AW,{element:(0,c.jsx)(t.Fg,{to:"/buckets"}),path:"*"}),(0,c.jsx)(t.AW,{element:(0,c.jsx)(l.Suspense,{fallback:(0,c.jsx)(u.Z,{}),children:(0,c.jsx)(a.Z,{})})})]})}}}]); +//# sourceMappingURL=701.13e798d1.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/701.72514abe.chunk.js.map b/portal-ui/build/static/js/701.13e798d1.chunk.js.map similarity index 94% rename from portal-ui/build/static/js/701.72514abe.chunk.js.map rename to portal-ui/build/static/js/701.13e798d1.chunk.js.map index e7fc5404a..0f704d314 100644 --- a/portal-ui/build/static/js/701.72514abe.chunk.js.map +++ b/portal-ui/build/static/js/701.13e798d1.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/701.72514abe.chunk.js","mappings":"wLAuBMA,EAAcC,EAAAA,MAAW,kBAAM,+FAAmC,IAClEC,EAAgBD,EAAAA,MAAW,kBAAM,+BAAuC,IACxEE,EAAYF,EAAAA,MAAW,kBAAM,+FAA2C,IA2C9E,UAzCgB,WACd,OACEG,EAAAA,EAAAA,MAACC,EAAAA,GAAM,CAAAC,SAAA,EACLC,EAAAA,EAAAA,KAACC,EAAAA,GAAK,CACJC,KAAMC,EAAAA,GAAUC,YAChBC,SACEL,EAAAA,EAAAA,KAACM,EAAAA,SAAQ,CAACC,UAAUP,EAAAA,EAAAA,KAACQ,EAAAA,EAAgB,IAAIT,UACvCC,EAAAA,EAAAA,KAACJ,EAAS,SAIhBI,EAAAA,EAAAA,KAACC,EAAAA,GAAK,CACJC,KAAK,IACLG,SACEL,EAAAA,EAAAA,KAACM,EAAAA,SAAQ,CAACC,UAAUP,EAAAA,EAAAA,KAACQ,EAAAA,EAAgB,IAAIT,UACvCC,EAAAA,EAAAA,KAACP,EAAW,SAKlBO,EAAAA,EAAAA,KAACC,EAAAA,GAAK,CACJC,KAAK,sBACLG,SACEL,EAAAA,EAAAA,KAACM,EAAAA,SAAQ,CAACC,UAAUP,EAAAA,EAAAA,KAACQ,EAAAA,EAAgB,IAAIT,UACvCC,EAAAA,EAAAA,KAACL,EAAa,SAIpBK,EAAAA,EAAAA,KAACC,EAAAA,GAAK,CAACI,SAASL,EAAAA,EAAAA,KAACS,EAAAA,GAAQ,CAACC,GAAE,aAAkBR,KAAK,OAEnDF,EAAAA,EAAAA,KAACC,EAAAA,GAAK,CACJI,SACEL,EAAAA,EAAAA,KAACM,EAAAA,SAAQ,CAACC,UAAUP,EAAAA,EAAAA,KAACQ,EAAAA,EAAgB,IAAIT,UACvCC,EAAAA,EAAAA,KAACW,EAAAA,EAAY,UAMzB,C","sources":["screens/Console/Buckets/Buckets.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Suspense } from \"react\";\nimport { Navigate, Route, Routes } from \"react-router-dom\";\n\nimport NotFoundPage from \"../../NotFoundPage\";\nimport LoadingComponent from \"../../../common/LoadingComponent\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\n\nconst ListBuckets = React.lazy(() => import(\"./ListBuckets/ListBuckets\"));\nconst BucketDetails = React.lazy(() => import(\"./BucketDetails/BucketDetails\"));\nconst AddBucket = React.lazy(() => import(\"./ListBuckets/AddBucket/AddBucket\"));\n\nconst Buckets = () => {\n return (\n \n }>\n \n \n }\n />\n }>\n \n \n }\n />\n\n }>\n \n \n }\n />\n } path=\"*\" />\n\n }>\n \n \n }\n />\n \n );\n};\n\nexport default Buckets;\n"],"names":["ListBuckets","React","BucketDetails","AddBucket","_jsxs","Routes","children","_jsx","Route","path","IAM_PAGES","ADD_BUCKETS","element","Suspense","fallback","LoadingComponent","Navigate","to","NotFoundPage"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/701.13e798d1.chunk.js","mappings":"wLAuBMA,EAAcC,EAAAA,MAAW,kBAAM,4EAAmC,IAClEC,EAAgBD,EAAAA,MAAW,kBAAM,+BAAuC,IACxEE,EAAYF,EAAAA,MAAW,kBAAM,iEAA2C,IA2C9E,UAzCgB,WACd,OACEG,EAAAA,EAAAA,MAACC,EAAAA,GAAM,CAAAC,SAAA,EACLC,EAAAA,EAAAA,KAACC,EAAAA,GAAK,CACJC,KAAMC,EAAAA,GAAUC,YAChBC,SACEL,EAAAA,EAAAA,KAACM,EAAAA,SAAQ,CAACC,UAAUP,EAAAA,EAAAA,KAACQ,EAAAA,EAAgB,IAAIT,UACvCC,EAAAA,EAAAA,KAACJ,EAAS,SAIhBI,EAAAA,EAAAA,KAACC,EAAAA,GAAK,CACJC,KAAK,IACLG,SACEL,EAAAA,EAAAA,KAACM,EAAAA,SAAQ,CAACC,UAAUP,EAAAA,EAAAA,KAACQ,EAAAA,EAAgB,IAAIT,UACvCC,EAAAA,EAAAA,KAACP,EAAW,SAKlBO,EAAAA,EAAAA,KAACC,EAAAA,GAAK,CACJC,KAAK,sBACLG,SACEL,EAAAA,EAAAA,KAACM,EAAAA,SAAQ,CAACC,UAAUP,EAAAA,EAAAA,KAACQ,EAAAA,EAAgB,IAAIT,UACvCC,EAAAA,EAAAA,KAACL,EAAa,SAIpBK,EAAAA,EAAAA,KAACC,EAAAA,GAAK,CAACI,SAASL,EAAAA,EAAAA,KAACS,EAAAA,GAAQ,CAACC,GAAE,aAAkBR,KAAK,OAEnDF,EAAAA,EAAAA,KAACC,EAAAA,GAAK,CACJI,SACEL,EAAAA,EAAAA,KAACM,EAAAA,SAAQ,CAACC,UAAUP,EAAAA,EAAAA,KAACQ,EAAAA,EAAgB,IAAIT,UACvCC,EAAAA,EAAAA,KAACW,EAAAA,EAAY,UAMzB,C","sources":["screens/Console/Buckets/Buckets.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Suspense } from \"react\";\nimport { Navigate, Route, Routes } from \"react-router-dom\";\n\nimport NotFoundPage from \"../../NotFoundPage\";\nimport LoadingComponent from \"../../../common/LoadingComponent\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\n\nconst ListBuckets = React.lazy(() => import(\"./ListBuckets/ListBuckets\"));\nconst BucketDetails = React.lazy(() => import(\"./BucketDetails/BucketDetails\"));\nconst AddBucket = React.lazy(() => import(\"./ListBuckets/AddBucket/AddBucket\"));\n\nconst Buckets = () => {\n return (\n \n }>\n \n \n }\n />\n }>\n \n \n }\n />\n\n }>\n \n \n }\n />\n } path=\"*\" />\n\n }>\n \n \n }\n />\n \n );\n};\n\nexport default Buckets;\n"],"names":["ListBuckets","React","BucketDetails","AddBucket","_jsxs","Routes","children","_jsx","Route","path","IAM_PAGES","ADD_BUCKETS","element","Suspense","fallback","LoadingComponent","Navigate","to","NotFoundPage"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/701.72514abe.chunk.js b/portal-ui/build/static/js/701.72514abe.chunk.js deleted file mode 100644 index 6474a2f94..000000000 --- a/portal-ui/build/static/js/701.72514abe.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[701],{60701:function(e,n,s){s.r(n);var l=s(72791),t=s(57689),a=s(50099),u=s(7241),r=s(56087),c=s(80184),i=l.lazy((function(){return Promise.all([s.e(5994),s.e(5473),s.e(7391),s.e(1520),s.e(852),s.e(8045)]).then(s.bind(s,68045))})),j=l.lazy((function(){return s.e(6895).then(s.bind(s,66895))})),x=l.lazy((function(){return Promise.all([s.e(5994),s.e(5473),s.e(7391),s.e(1520),s.e(1569),s.e(977)]).then(s.bind(s,10977))}));n.default=function(){return(0,c.jsxs)(t.Z5,{children:[(0,c.jsx)(t.AW,{path:r.gA.ADD_BUCKETS,element:(0,c.jsx)(l.Suspense,{fallback:(0,c.jsx)(u.Z,{}),children:(0,c.jsx)(x,{})})}),(0,c.jsx)(t.AW,{path:"/",element:(0,c.jsx)(l.Suspense,{fallback:(0,c.jsx)(u.Z,{}),children:(0,c.jsx)(i,{})})}),(0,c.jsx)(t.AW,{path:":bucketName/admin/*",element:(0,c.jsx)(l.Suspense,{fallback:(0,c.jsx)(u.Z,{}),children:(0,c.jsx)(j,{})})}),(0,c.jsx)(t.AW,{element:(0,c.jsx)(t.Fg,{to:"/buckets"}),path:"*"}),(0,c.jsx)(t.AW,{element:(0,c.jsx)(l.Suspense,{fallback:(0,c.jsx)(u.Z,{}),children:(0,c.jsx)(a.Z,{})})})]})}}}]); -//# sourceMappingURL=701.72514abe.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/7134.5516568a.chunk.js b/portal-ui/build/static/js/7134.5516568a.chunk.js new file mode 100644 index 000000000..f213ce88a --- /dev/null +++ b/portal-ui/build/static/js/7134.5516568a.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[7134],{17134:function(e,t,s){s.r(t);var n=s(29439),r=s(1413),i=s(61889),c=s(11135),a=s(25787),l=s(29945),o=s(72791),u=s(57689),d=s(81207),f=s(38442),x=s(56087),p=s(81551),K=s(87995),h=s(75578),S=s(23814),m=s(59114),j=s(92983),y=s(27454),k=s(47974),C=s(99670),Z=s(80184),_=(0,h.Z)(o.lazy((function(){return Promise.all([s.e(1715),s.e(5994),s.e(7391),s.e(2032)]).then(s.bind(s,62032))})));t.default=(0,a.Z)((function(e){return(0,c.Z)((0,r.Z)((0,r.Z)({},S.qg),S.Bz))}))((function(e){var t=e.classes,s=(0,p.TL)(),r=(0,u.s0)(),c=(0,o.useState)(""),a=(0,n.Z)(c,2),h=a[0],S=a[1],E=(0,o.useState)(!1),b=(0,n.Z)(E,2),g=b[0],M=b[1],v=(0,o.useState)(""),F=(0,n.Z)(v,2),P=F[0],I=F[1],T=(0,o.useState)(!1),A=(0,n.Z)(T,2),Y=A[0],L=A[1],z=(0,o.useState)([]),B=(0,n.Z)(z,2),D=B[0],R=B[1],N=(0,f.F)(x.C3,[x.Ft.KMS_DELETE_KEY]),O=(0,f.F)(x.C3,[x.Ft.KMS_LIST_KEYS]);(0,o.useEffect)((function(){w()}),[]),(0,o.useEffect)((function(){L(!0)}),[h]),(0,o.useEffect)((function(){if(Y)if(O){var e=""===h.trim()?"*":h.trim();d.Z.invoke("GET","/api/v1/kms/keys?pattern=".concat(e)).then((function(e){L(!1),R(e.results)})).catch((function(e){L(!1),s((0,K.Ih)(e))}))}else L(!1)}),[Y,L,R,s,O,h]);var w=function(){L(!0)},G=[{type:"delete",onClick:function(e){M(!0),I(e)},sendOnlyId:!0,disableButtonFunction:function(){return!N}}];return(0,o.useEffect)((function(){s((0,K.Sc)("list_keys"))}),[s]),(0,Z.jsxs)(o.Fragment,{children:[g&&(0,Z.jsx)(_,{deleteOpen:g,selectedItem:P,endpoint:"/api/v1/kms/keys/",element:"Key",closeDeleteModalAndRefresh:function(e){M(!1),e&&w()}}),(0,Z.jsx)(k.Z,{label:"Key Management Service Keys",actions:(0,Z.jsx)(C.Z,{})}),(0,Z.jsx)(l.Xgh,{className:t.pageContainer,children:(0,Z.jsxs)(i.ZP,{container:!0,spacing:1,children:[(0,Z.jsxs)(i.ZP,{item:!0,xs:12,display:"flex",alignItems:"center",justifyContent:"flex-end",sx:{"& button":{marginLeft:"8px"}},children:[(0,Z.jsx)(f.s,{scopes:[x.Ft.KMS_LIST_KEYS],resource:x.C3,errorProps:{disabled:!0},children:(0,Z.jsx)(m.Z,{onChange:S,placeholder:"Search Keys with pattern",value:h})}),(0,Z.jsx)(f.s,{scopes:[x.Ft.KMS_LIST_KEYS],resource:x.C3,errorProps:{disabled:!0},children:(0,Z.jsx)(y.Z,{tooltip:"Refresh",children:(0,Z.jsx)(l.zxk,{id:"refresh-keys",variant:"regular",icon:(0,Z.jsx)(l.DuK,{}),onClick:function(){return L(!0)}})})}),(0,Z.jsx)(f.s,{scopes:[x.Ft.KMS_IMPORT_KEY],resource:x.C3,errorProps:{disabled:!0},children:(0,Z.jsx)(y.Z,{tooltip:"Import Key",children:(0,Z.jsx)(l.zxk,{id:"import-key",variant:"regular",icon:(0,Z.jsx)(l.rG2,{}),onClick:function(){r(x.gA.KMS_KEYS_IMPORT)}})})}),(0,Z.jsx)(f.s,{scopes:[x.Ft.KMS_CREATE_KEY],resource:x.C3,errorProps:{disabled:!0},children:(0,Z.jsx)(y.Z,{tooltip:"Create Key",children:(0,Z.jsx)(l.zxk,{id:"create-key",label:"Create Key",variant:"callAction",icon:(0,Z.jsx)(l.dtP,{}),onClick:function(){return r(x.gA.KMS_KEYS_ADD)}})})})]}),(0,Z.jsx)(i.ZP,{item:!0,xs:12,className:t.tableBlock,children:(0,Z.jsx)(f.s,{scopes:[x.Ft.KMS_LIST_KEYS],resource:x.C3,errorProps:{disabled:!0},children:(0,Z.jsx)(j.Z,{itemActions:G,columns:[{label:"Name",elementKey:"name"},{label:"Created By",elementKey:"createdBy"},{label:"Created At",elementKey:"createdAt"}],isLoading:Y,records:D,entityName:"Keys",idField:"name"})})})]})})]})}))}}]); +//# sourceMappingURL=7134.5516568a.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/7134.a6c4a49e.chunk.js.map b/portal-ui/build/static/js/7134.5516568a.chunk.js.map similarity index 99% rename from portal-ui/build/static/js/7134.a6c4a49e.chunk.js.map rename to portal-ui/build/static/js/7134.5516568a.chunk.js.map index 213723257..41e05a793 100644 --- a/portal-ui/build/static/js/7134.a6c4a49e.chunk.js.map +++ b/portal-ui/build/static/js/7134.5516568a.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/7134.a6c4a49e.chunk.js","mappings":"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","sources":["screens/Console/KMS/ListKeys.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { Grid, Theme } from \"@mui/material\";\nimport { createStyles, withStyles } from \"@mui/styles\";\nimport { AddIcon, Button, PageLayout, RefreshIcon, UploadIcon } from \"mds\";\nimport React, { useEffect, useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport api from \"../../../common/api\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../common/SecureComponent\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_PAGES,\n IAM_SCOPES,\n} from \"../../../common/SecureComponent/permissions\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport {\n containerForHeader,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport SearchBox from \"../Common/SearchBox\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst DeleteKMSModal = withSuspense(\n React.lazy(() => import(\"./DeleteKMSModal\")),\n);\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...searchField,\n ...containerForHeader,\n });\n\ninterface IKeysProps {\n classes: any;\n}\n\nconst ListKeys = ({ classes }: IKeysProps) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const [filter, setFilter] = useState(\"\");\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [selectedKey, setSelectedKey] = useState(\"\");\n const [loading, setLoading] = useState(false);\n const [records, setRecords] = useState<[]>([]);\n\n const deleteKey = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.KMS_DELETE_KEY,\n ]);\n\n const displayKeys = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.KMS_LIST_KEYS,\n ]);\n\n useEffect(() => {\n fetchRecords();\n }, []);\n\n useEffect(() => {\n setLoading(true);\n }, [filter]);\n\n useEffect(() => {\n if (loading) {\n if (displayKeys) {\n let pattern = filter.trim() === \"\" ? \"*\" : filter.trim();\n api\n .invoke(\"GET\", `/api/v1/kms/keys?pattern=${pattern}`)\n .then((res) => {\n setLoading(false);\n setRecords(res.results);\n })\n .catch((err: ErrorResponseHandler) => {\n setLoading(false);\n dispatch(setErrorSnackMessage(err));\n });\n } else {\n setLoading(false);\n }\n }\n }, [loading, setLoading, setRecords, dispatch, displayKeys, filter]);\n\n const fetchRecords = () => {\n setLoading(true);\n };\n\n const confirmDeleteKey = (key: string) => {\n setDeleteOpen(true);\n setSelectedKey(key);\n };\n\n const closeDeleteModalAndRefresh = (refresh: boolean) => {\n setDeleteOpen(false);\n\n if (refresh) {\n fetchRecords();\n }\n };\n\n const tableActions = [\n {\n type: \"delete\",\n onClick: confirmDeleteKey,\n sendOnlyId: true,\n disableButtonFunction: () => !deleteKey,\n },\n ];\n\n useEffect(() => {\n dispatch(setHelpName(\"list_keys\"));\n }, [dispatch]);\n\n return (\n \n {deleteOpen && (\n \n )}\n }\n />\n\n \n \n \n \n \n \n\n \n \n }\n onClick={() => setLoading(true)}\n />\n \n \n \n \n }\n onClick={() => {\n navigate(IAM_PAGES.KMS_KEYS_IMPORT);\n }}\n />\n \n \n \n \n }\n onClick={() => navigate(IAM_PAGES.KMS_KEYS_ADD)}\n />\n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(ListKeys);\n"],"names":["DeleteKMSModal","withSuspense","React","withStyles","theme","createStyles","_objectSpread","searchField","containerForHeader","_ref","classes","dispatch","useAppDispatch","navigate","useNavigate","_useState","useState","_useState2","_slicedToArray","filter","setFilter","_useState3","_useState4","deleteOpen","setDeleteOpen","_useState5","_useState6","selectedKey","setSelectedKey","_useState7","_useState8","loading","setLoading","_useState9","_useState10","records","setRecords","deleteKey","hasPermission","CONSOLE_UI_RESOURCE","IAM_SCOPES","KMS_DELETE_KEY","displayKeys","KMS_LIST_KEYS","useEffect","fetchRecords","pattern","trim","api","invoke","concat","then","res","results","catch","err","setErrorSnackMessage","tableActions","type","onClick","key","sendOnlyId","disableButtonFunction","setHelpName","_jsxs","children","_jsx","selectedItem","endpoint","element","closeDeleteModalAndRefresh","refresh","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","className","pageContainer","Grid","container","spacing","item","xs","display","alignItems","justifyContent","sx","marginLeft","SecureComponent","scopes","resource","errorProps","disabled","SearchBox","onChange","placeholder","value","TooltipWrapper","tooltip","Button","id","variant","icon","RefreshIcon","KMS_IMPORT_KEY","UploadIcon","IAM_PAGES","KMS_KEYS_IMPORT","KMS_CREATE_KEY","AddIcon","KMS_KEYS_ADD","tableBlock","TableWrapper","itemActions","columns","elementKey","isLoading","entityName","idField"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/7134.5516568a.chunk.js","mappings":"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","sources":["screens/Console/KMS/ListKeys.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { Grid, Theme } from \"@mui/material\";\nimport { createStyles, withStyles } from \"@mui/styles\";\nimport { AddIcon, Button, PageLayout, RefreshIcon, UploadIcon } from \"mds\";\nimport React, { useEffect, useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport api from \"../../../common/api\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../common/SecureComponent\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_PAGES,\n IAM_SCOPES,\n} from \"../../../common/SecureComponent/permissions\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport {\n containerForHeader,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport SearchBox from \"../Common/SearchBox\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst DeleteKMSModal = withSuspense(\n React.lazy(() => import(\"./DeleteKMSModal\")),\n);\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...searchField,\n ...containerForHeader,\n });\n\ninterface IKeysProps {\n classes: any;\n}\n\nconst ListKeys = ({ classes }: IKeysProps) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const [filter, setFilter] = useState(\"\");\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [selectedKey, setSelectedKey] = useState(\"\");\n const [loading, setLoading] = useState(false);\n const [records, setRecords] = useState<[]>([]);\n\n const deleteKey = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.KMS_DELETE_KEY,\n ]);\n\n const displayKeys = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.KMS_LIST_KEYS,\n ]);\n\n useEffect(() => {\n fetchRecords();\n }, []);\n\n useEffect(() => {\n setLoading(true);\n }, [filter]);\n\n useEffect(() => {\n if (loading) {\n if (displayKeys) {\n let pattern = filter.trim() === \"\" ? \"*\" : filter.trim();\n api\n .invoke(\"GET\", `/api/v1/kms/keys?pattern=${pattern}`)\n .then((res) => {\n setLoading(false);\n setRecords(res.results);\n })\n .catch((err: ErrorResponseHandler) => {\n setLoading(false);\n dispatch(setErrorSnackMessage(err));\n });\n } else {\n setLoading(false);\n }\n }\n }, [loading, setLoading, setRecords, dispatch, displayKeys, filter]);\n\n const fetchRecords = () => {\n setLoading(true);\n };\n\n const confirmDeleteKey = (key: string) => {\n setDeleteOpen(true);\n setSelectedKey(key);\n };\n\n const closeDeleteModalAndRefresh = (refresh: boolean) => {\n setDeleteOpen(false);\n\n if (refresh) {\n fetchRecords();\n }\n };\n\n const tableActions = [\n {\n type: \"delete\",\n onClick: confirmDeleteKey,\n sendOnlyId: true,\n disableButtonFunction: () => !deleteKey,\n },\n ];\n\n useEffect(() => {\n dispatch(setHelpName(\"list_keys\"));\n }, [dispatch]);\n\n return (\n \n {deleteOpen && (\n \n )}\n }\n />\n\n \n \n \n \n \n \n\n \n \n }\n onClick={() => setLoading(true)}\n />\n \n \n \n \n }\n onClick={() => {\n navigate(IAM_PAGES.KMS_KEYS_IMPORT);\n }}\n />\n \n \n \n \n }\n onClick={() => navigate(IAM_PAGES.KMS_KEYS_ADD)}\n />\n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(ListKeys);\n"],"names":["DeleteKMSModal","withSuspense","React","withStyles","theme","createStyles","_objectSpread","searchField","containerForHeader","_ref","classes","dispatch","useAppDispatch","navigate","useNavigate","_useState","useState","_useState2","_slicedToArray","filter","setFilter","_useState3","_useState4","deleteOpen","setDeleteOpen","_useState5","_useState6","selectedKey","setSelectedKey","_useState7","_useState8","loading","setLoading","_useState9","_useState10","records","setRecords","deleteKey","hasPermission","CONSOLE_UI_RESOURCE","IAM_SCOPES","KMS_DELETE_KEY","displayKeys","KMS_LIST_KEYS","useEffect","fetchRecords","pattern","trim","api","invoke","concat","then","res","results","catch","err","setErrorSnackMessage","tableActions","type","onClick","key","sendOnlyId","disableButtonFunction","setHelpName","_jsxs","children","_jsx","selectedItem","endpoint","element","closeDeleteModalAndRefresh","refresh","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","className","pageContainer","Grid","container","spacing","item","xs","display","alignItems","justifyContent","sx","marginLeft","SecureComponent","scopes","resource","errorProps","disabled","SearchBox","onChange","placeholder","value","TooltipWrapper","tooltip","Button","id","variant","icon","RefreshIcon","KMS_IMPORT_KEY","UploadIcon","IAM_PAGES","KMS_KEYS_IMPORT","KMS_CREATE_KEY","AddIcon","KMS_KEYS_ADD","tableBlock","TableWrapper","itemActions","columns","elementKey","isLoading","entityName","idField"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/7134.a6c4a49e.chunk.js b/portal-ui/build/static/js/7134.a6c4a49e.chunk.js deleted file mode 100644 index 3a1641229..000000000 --- a/portal-ui/build/static/js/7134.a6c4a49e.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[7134],{17134:function(e,t,s){s.r(t);var n=s(29439),r=s(1413),i=s(61889),c=s(11135),a=s(25787),l=s(29945),o=s(72791),u=s(57689),d=s(81207),f=s(38442),x=s(56087),p=s(81551),K=s(87995),h=s(75578),S=s(23814),m=s(59114),j=s(92983),y=s(27454),k=s(47974),C=s(99670),Z=s(80184),_=(0,h.Z)(o.lazy((function(){return Promise.all([s.e(5994),s.e(7391),s.e(2032)]).then(s.bind(s,62032))})));t.default=(0,a.Z)((function(e){return(0,c.Z)((0,r.Z)((0,r.Z)({},S.qg),S.Bz))}))((function(e){var t=e.classes,s=(0,p.TL)(),r=(0,u.s0)(),c=(0,o.useState)(""),a=(0,n.Z)(c,2),h=a[0],S=a[1],E=(0,o.useState)(!1),b=(0,n.Z)(E,2),g=b[0],M=b[1],v=(0,o.useState)(""),F=(0,n.Z)(v,2),P=F[0],I=F[1],T=(0,o.useState)(!1),A=(0,n.Z)(T,2),Y=A[0],L=A[1],z=(0,o.useState)([]),B=(0,n.Z)(z,2),D=B[0],R=B[1],N=(0,f.F)(x.C3,[x.Ft.KMS_DELETE_KEY]),O=(0,f.F)(x.C3,[x.Ft.KMS_LIST_KEYS]);(0,o.useEffect)((function(){w()}),[]),(0,o.useEffect)((function(){L(!0)}),[h]),(0,o.useEffect)((function(){if(Y)if(O){var e=""===h.trim()?"*":h.trim();d.Z.invoke("GET","/api/v1/kms/keys?pattern=".concat(e)).then((function(e){L(!1),R(e.results)})).catch((function(e){L(!1),s((0,K.Ih)(e))}))}else L(!1)}),[Y,L,R,s,O,h]);var w=function(){L(!0)},G=[{type:"delete",onClick:function(e){M(!0),I(e)},sendOnlyId:!0,disableButtonFunction:function(){return!N}}];return(0,o.useEffect)((function(){s((0,K.Sc)("list_keys"))}),[s]),(0,Z.jsxs)(o.Fragment,{children:[g&&(0,Z.jsx)(_,{deleteOpen:g,selectedItem:P,endpoint:"/api/v1/kms/keys/",element:"Key",closeDeleteModalAndRefresh:function(e){M(!1),e&&w()}}),(0,Z.jsx)(k.Z,{label:"Key Management Service Keys",actions:(0,Z.jsx)(C.Z,{})}),(0,Z.jsx)(l.Xgh,{className:t.pageContainer,children:(0,Z.jsxs)(i.ZP,{container:!0,spacing:1,children:[(0,Z.jsxs)(i.ZP,{item:!0,xs:12,display:"flex",alignItems:"center",justifyContent:"flex-end",sx:{"& button":{marginLeft:"8px"}},children:[(0,Z.jsx)(f.s,{scopes:[x.Ft.KMS_LIST_KEYS],resource:x.C3,errorProps:{disabled:!0},children:(0,Z.jsx)(m.Z,{onChange:S,placeholder:"Search Keys with pattern",value:h})}),(0,Z.jsx)(f.s,{scopes:[x.Ft.KMS_LIST_KEYS],resource:x.C3,errorProps:{disabled:!0},children:(0,Z.jsx)(y.Z,{tooltip:"Refresh",children:(0,Z.jsx)(l.zxk,{id:"refresh-keys",variant:"regular",icon:(0,Z.jsx)(l.DuK,{}),onClick:function(){return L(!0)}})})}),(0,Z.jsx)(f.s,{scopes:[x.Ft.KMS_IMPORT_KEY],resource:x.C3,errorProps:{disabled:!0},children:(0,Z.jsx)(y.Z,{tooltip:"Import Key",children:(0,Z.jsx)(l.zxk,{id:"import-key",variant:"regular",icon:(0,Z.jsx)(l.rG2,{}),onClick:function(){r(x.gA.KMS_KEYS_IMPORT)}})})}),(0,Z.jsx)(f.s,{scopes:[x.Ft.KMS_CREATE_KEY],resource:x.C3,errorProps:{disabled:!0},children:(0,Z.jsx)(y.Z,{tooltip:"Create Key",children:(0,Z.jsx)(l.zxk,{id:"create-key",label:"Create Key",variant:"callAction",icon:(0,Z.jsx)(l.dtP,{}),onClick:function(){return r(x.gA.KMS_KEYS_ADD)}})})})]}),(0,Z.jsx)(i.ZP,{item:!0,xs:12,className:t.tableBlock,children:(0,Z.jsx)(f.s,{scopes:[x.Ft.KMS_LIST_KEYS],resource:x.C3,errorProps:{disabled:!0},children:(0,Z.jsx)(j.Z,{itemActions:G,columns:[{label:"Name",elementKey:"name"},{label:"Created By",elementKey:"createdBy"},{label:"Created At",elementKey:"createdAt"}],isLoading:Y,records:D,entityName:"Keys",idField:"name"})})})]})})]})}))}}]); -//# sourceMappingURL=7134.a6c4a49e.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/7494.72e35f55.chunk.js b/portal-ui/build/static/js/7494.72e35f55.chunk.js deleted file mode 100644 index 4b8696168..000000000 --- a/portal-ui/build/static/js/7494.72e35f55.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[7494],{47494:function(e,t,n){n.r(t);var c=n(29439),s=n(1413),i=n(72791),o=n(78687),r=n(57689),u=n(29945),l=n(11135),a=n(92983),d=n(61889),f=n(23814),_=n(56087),m=n(60680),S=n(38442),b=n(75578),x=n(87995),C=n(72455),E=n(9859),Z=n(81551),h=n(27454),T=n(31776),p=n(82342),F=n(80184),k=(0,b.Z)(i.lazy((function(){return Promise.all([n.e(5994),n.e(7391),n.e(4619)]).then(n.bind(n,94619))}))),A=(0,b.Z)(i.lazy((function(){return n.e(8990).then(n.bind(n,8990))}))),P=(0,b.Z)(i.lazy((function(){return Promise.all([n.e(5994),n.e(8455)]).then(n.bind(n,58455))}))),g=(0,C.Z)((function(e){return(0,l.Z)((0,s.Z)((0,s.Z)((0,s.Z)((0,s.Z)({"@global":{".rowLine:hover .iconFileElm":{backgroundImage:"url(/images/ob_file_filled.svg)"},".rowLine:hover .iconFolderElm":{backgroundImage:"url(/images/ob_folder_filled.svg)"}}},f.OR),f.qg),f.cx),f.Bz))}));t.default=function(){var e=(0,Z.TL)(),t=g(),n=(0,r.UO)(),s=(0,o.v9)(E.HQ),l=(0,i.useState)(!0),f=(0,c.Z)(l,2),b=f[0],C=f[1],O=(0,i.useState)([]),j=(0,c.Z)(O,2),I=j[0],v=j[1],B=(0,i.useState)(!1),L=(0,c.Z)(B,2),U=L[0],y=L[1],N=(0,i.useState)(!1),K=(0,c.Z)(N,2),z=K[0],G=K[1],R=(0,i.useState)(""),Y=(0,c.Z)(R,2),w=Y[0],D=Y[1],q=(0,i.useState)(!1),H=(0,c.Z)(q,2),Q=H[0],W=H[1],J=(0,i.useState)(""),M=(0,c.Z)(J,2),V=M[0],X=M[1],$=(0,i.useState)(""),ee=(0,c.Z)($,2),te=ee[0],ne=ee[1],ce=n.bucketName||"",se=(0,S.F)(ce,[_.Ft.S3_GET_BUCKET_POLICY,_.Ft.S3_GET_ACTIONS]),ie=(0,S.F)(ce,[_.Ft.S3_DELETE_BUCKET_POLICY]),oe=(0,S.F)(ce,[_.Ft.S3_PUT_BUCKET_POLICY,_.Ft.S3_PUT_ACTIONS]);(0,i.useEffect)((function(){s&&C(!0)}),[s,C]);var re=[{type:"delete",disableButtonFunction:function(){return!ie},onClick:function(e){G(!0),D(e.prefix)}},{type:"view",disableButtonFunction:function(){return!oe},onClick:function(e){X(e.prefix),ne(e.access),W(!0)}}];(0,i.useEffect)((function(){e((0,x.Sc)("bucket_detail_prefix"))}),[]),(0,i.useEffect)((function(){b&&(se?T.h.bucket.listAccessRulesWithBucket(ce).then((function(e){v(e.data.accessRules),C(!1)})).catch((function(t){e((0,x.Ih)((0,p.g)(t))),C(!1)})):C(!1))}),[b,e,se,ce]);return(0,F.jsxs)(i.Fragment,{children:[U&&(0,F.jsx)(k,{modalOpen:U,onClose:function(){y(!1),C(!0)},bucket:ce}),z&&(0,F.jsx)(A,{modalOpen:z,onClose:function(){G(!1),C(!0)},bucket:ce,toDelete:w}),Q&&(0,F.jsx)(P,{modalOpen:Q,onClose:function(){W(!1),C(!0)},bucket:ce,toEdit:V,initial:te}),(0,F.jsxs)(d.ZP,{item:!0,xs:12,className:t.actionsTray,children:[(0,F.jsx)(m.Z,{children:"Anonymous Access"}),(0,F.jsx)(S.s,{scopes:[_.Ft.S3_GET_BUCKET_POLICY,_.Ft.S3_PUT_BUCKET_POLICY,_.Ft.S3_GET_ACTIONS,_.Ft.S3_PUT_ACTIONS],resource:ce,matchAll:!0,errorProps:{disabled:!0},children:(0,F.jsx)(h.Z,{tooltip:"Add Access Rule",children:(0,F.jsx)(u.zxk,{id:"add-bucket-access-rule",onClick:function(){y(!0)},label:"Add Access Rule",icon:(0,F.jsx)(u.dtP,{}),variant:"callAction"})})})]}),(0,F.jsx)(d.ZP,{item:!0,sx:{border:"#EAEDEE 1px solid"},children:(0,F.jsx)(S.s,{scopes:[_.Ft.S3_GET_BUCKET_POLICY,_.Ft.S3_GET_ACTIONS],resource:ce,errorProps:{disabled:!0},children:I&&(0,F.jsx)(a.Z,{noBackground:!0,itemActions:re,columns:[{label:"Prefix",elementKey:"prefix",renderFunction:function(e){return e||"/"}},{label:"Access",elementKey:"access"}],isLoading:b,records:I,entityName:"Access Rules",idField:"prefix"})})})]})}},60680:function(e,t,n){n(72791);var c=n(11135),s=n(25787),i=n(80184);t.Z=(0,s.Z)((function(e){return(0,c.Z)({root:{padding:0,margin:0,fontSize:".9rem"}})}))((function(e){var t=e.classes,n=e.children;return(0,i.jsx)("h1",{className:t.root,children:n})}))}}]); -//# sourceMappingURL=7494.72e35f55.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/7494.72e35f55.chunk.js.map b/portal-ui/build/static/js/7494.72e35f55.chunk.js.map deleted file mode 100644 index 05b8fb6fc..000000000 --- a/portal-ui/build/static/js/7494.72e35f55.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/7494.72e35f55.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AccessRulePanel.tsx","screens/Console/Common/PanelTitle/PanelTitle.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useParams } from \"react-router-dom\";\nimport { Theme } from \"@mui/material/styles\";\nimport { AddIcon, Button } from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport TableWrapper from \"../../Common/TableWrapper/TableWrapper\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n actionsTray,\n containerForHeader,\n objectBrowserCommon,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport PanelTitle from \"../../Common/PanelTitle/PanelTitle\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\n\nimport withSuspense from \"../../Common/Components/withSuspense\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { selBucketDetailsLoading } from \"./bucketDetailsSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport { api } from \"api\";\nimport { AccessRule as IAccessRule } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\nconst AddAccessRuleModal = withSuspense(\n React.lazy(() => import(\"./AddAccessRule\")),\n);\nconst DeleteAccessRuleModal = withSuspense(\n React.lazy(() => import(\"./DeleteAccessRule\")),\n);\nconst EditAccessRuleModal = withSuspense(\n React.lazy(() => import(\"./EditAccessRule\")),\n);\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n \"@global\": {\n \".rowLine:hover .iconFileElm\": {\n backgroundImage: \"url(/images/ob_file_filled.svg)\",\n },\n \".rowLine:hover .iconFolderElm\": {\n backgroundImage: \"url(/images/ob_folder_filled.svg)\",\n },\n },\n ...actionsTray,\n ...searchField,\n ...objectBrowserCommon,\n ...containerForHeader,\n }),\n);\n\nconst AccessRule = () => {\n const dispatch = useAppDispatch();\n const classes = useStyles();\n const params = useParams();\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n\n const [loadingAccessRules, setLoadingAccessRules] = useState(true);\n const [accessRules, setAccessRules] = useState([]);\n const [addAccessRuleOpen, setAddAccessRuleOpen] = useState(false);\n const [deleteAccessRuleOpen, setDeleteAccessRuleOpen] =\n useState(false);\n const [accessRuleToDelete, setAccessRuleToDelete] = useState(\"\");\n const [editAccessRuleOpen, setEditAccessRuleOpen] = useState(false);\n const [accessRuleToEdit, setAccessRuleToEdit] = useState(\"\");\n const [initialAccess, setInitialAccess] = useState(\"\");\n\n const bucketName = params.bucketName || \"\";\n\n const displayAccessRules = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n\n const deleteAccessRules = hasPermission(bucketName, [\n IAM_SCOPES.S3_DELETE_BUCKET_POLICY,\n ]);\n\n const editAccessRules = hasPermission(bucketName, [\n IAM_SCOPES.S3_PUT_BUCKET_POLICY,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n useEffect(() => {\n if (loadingBucket) {\n setLoadingAccessRules(true);\n }\n }, [loadingBucket, setLoadingAccessRules]);\n\n const AccessRuleActions = [\n {\n type: \"delete\",\n disableButtonFunction: () => !deleteAccessRules,\n onClick: (accessRule: any) => {\n setDeleteAccessRuleOpen(true);\n setAccessRuleToDelete(accessRule.prefix);\n },\n },\n {\n type: \"view\",\n disableButtonFunction: () => !editAccessRules,\n onClick: (accessRule: any) => {\n setAccessRuleToEdit(accessRule.prefix);\n setInitialAccess(accessRule.access);\n setEditAccessRuleOpen(true);\n },\n },\n ];\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_detail_prefix\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (loadingAccessRules) {\n if (displayAccessRules) {\n api.bucket\n .listAccessRulesWithBucket(bucketName)\n .then((res) => {\n setAccessRules(res.data.accessRules);\n setLoadingAccessRules(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n setLoadingAccessRules(false);\n });\n } else {\n setLoadingAccessRules(false);\n }\n }\n }, [loadingAccessRules, dispatch, displayAccessRules, bucketName]);\n\n const closeAddAccessRuleModal = () => {\n setAddAccessRuleOpen(false);\n setLoadingAccessRules(true);\n };\n\n const closeDeleteAccessRuleModal = () => {\n setDeleteAccessRuleOpen(false);\n setLoadingAccessRules(true);\n };\n\n const closeEditAccessRuleModal = () => {\n setEditAccessRuleOpen(false);\n setLoadingAccessRules(true);\n };\n\n return (\n \n {addAccessRuleOpen && (\n \n )}\n {deleteAccessRuleOpen && (\n \n )}\n {editAccessRuleOpen && (\n \n )}\n \n Anonymous Access\n \n \n {\n setAddAccessRuleOpen(true);\n }}\n label={\"Add Access Rule\"}\n icon={}\n variant={\"callAction\"}\n />\n \n \n \n \n \n {accessRules && (\n {\n return prefix || \"/\";\n },\n },\n { label: \"Access\", elementKey: \"access\" },\n ]}\n isLoading={loadingAccessRules}\n records={accessRules}\n entityName=\"Access Rules\"\n idField=\"prefix\"\n />\n )}\n \n \n \n );\n};\n\nexport default AccessRule;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { IconButtonProps } from \"@mui/material\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n root: {\n padding: 0,\n margin: 0,\n fontSize: \".9rem\",\n },\n });\n\ninterface IPanelTitle extends IconButtonProps {\n classes: any;\n children: any;\n}\n\nconst PanelTitle = ({ classes, children }: IPanelTitle) => {\n return

{children}

;\n};\n\nexport default withStyles(styles)(PanelTitle);\n"],"names":["AddAccessRuleModal","withSuspense","React","DeleteAccessRuleModal","EditAccessRuleModal","useStyles","makeStyles","theme","createStyles","_objectSpread","backgroundImage","actionsTray","searchField","objectBrowserCommon","containerForHeader","dispatch","useAppDispatch","classes","params","useParams","loadingBucket","useSelector","selBucketDetailsLoading","_useState","useState","_useState2","_slicedToArray","loadingAccessRules","setLoadingAccessRules","_useState3","_useState4","accessRules","setAccessRules","_useState5","_useState6","addAccessRuleOpen","setAddAccessRuleOpen","_useState7","_useState8","deleteAccessRuleOpen","setDeleteAccessRuleOpen","_useState9","_useState10","accessRuleToDelete","setAccessRuleToDelete","_useState11","_useState12","editAccessRuleOpen","setEditAccessRuleOpen","_useState13","_useState14","accessRuleToEdit","setAccessRuleToEdit","_useState15","_useState16","initialAccess","setInitialAccess","bucketName","displayAccessRules","hasPermission","IAM_SCOPES","S3_GET_BUCKET_POLICY","S3_GET_ACTIONS","deleteAccessRules","S3_DELETE_BUCKET_POLICY","editAccessRules","S3_PUT_BUCKET_POLICY","S3_PUT_ACTIONS","useEffect","AccessRuleActions","type","disableButtonFunction","onClick","accessRule","prefix","access","setHelpName","api","bucket","listAccessRulesWithBucket","then","res","data","catch","err","setErrorSnackMessage","errorToHandler","_jsxs","Fragment","children","_jsx","modalOpen","onClose","toDelete","toEdit","initial","Grid","item","xs","className","PanelTitle","SecureComponent","scopes","resource","matchAll","errorProps","disabled","TooltipWrapper","tooltip","Button","id","label","icon","AddIcon","variant","sx","border","TableWrapper","noBackground","itemActions","columns","elementKey","renderFunction","isLoading","records","entityName","idField","withStyles","root","padding","margin","fontSize","_ref"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/7494.bad4da61.chunk.js b/portal-ui/build/static/js/7494.bad4da61.chunk.js new file mode 100644 index 000000000..db1c49a9b --- /dev/null +++ b/portal-ui/build/static/js/7494.bad4da61.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[7494],{47494:function(e,t,n){n.r(t);var c=n(29439),s=n(72791),i=n(29945),u=n(78687),o=n(57689),r=n(31776),l=n(82342),a=n(56087),d=n(38442),f=n(87995),_=n(9859),C=n(81551),S=n(75578),T=n(27454),p=n(80184),F=(0,S.Z)(s.lazy((function(){return n.e(4619).then(n.bind(n,94619))}))),b=(0,S.Z)(s.lazy((function(){return n.e(8990).then(n.bind(n,8990))}))),x=(0,S.Z)(s.lazy((function(){return n.e(8455).then(n.bind(n,58455))})));t.default=function(){var e=(0,C.TL)(),t=(0,o.UO)(),n=(0,u.v9)(_.HQ),S=(0,s.useState)(!0),E=(0,c.Z)(S,2),h=E[0],A=E[1],k=(0,s.useState)([]),O=(0,c.Z)(k,2),m=O[0],P=O[1],Z=(0,s.useState)(!1),I=(0,c.Z)(Z,2),j=I[0],U=I[1],B=(0,s.useState)(!1),y=(0,c.Z)(B,2),L=y[0],K=y[1],N=(0,s.useState)(""),v=(0,c.Z)(N,2),G=v[0],Y=v[1],R=(0,s.useState)(!1),g=(0,c.Z)(R,2),w=g[0],z=g[1],D=(0,s.useState)(""),Q=(0,c.Z)(D,2),H=Q[0],W=Q[1],q=(0,s.useState)(""),J=(0,c.Z)(q,2),M=J[0],V=J[1],X=t.bucketName||"",$=(0,d.F)(X,[a.Ft.S3_GET_BUCKET_POLICY,a.Ft.S3_GET_ACTIONS]),ee=(0,d.F)(X,[a.Ft.S3_DELETE_BUCKET_POLICY]),te=(0,d.F)(X,[a.Ft.S3_PUT_BUCKET_POLICY,a.Ft.S3_PUT_ACTIONS]);(0,s.useEffect)((function(){n&&A(!0)}),[n,A]);var ne=[{type:"delete",disableButtonFunction:function(){return!ee},onClick:function(e){K(!0),Y(e.prefix)}},{type:"view",disableButtonFunction:function(){return!te},onClick:function(e){W(e.prefix),V(e.access),z(!0)}}];(0,s.useEffect)((function(){e((0,f.Sc)("bucket_detail_prefix"))}),[]),(0,s.useEffect)((function(){h&&($?r.h.bucket.listAccessRulesWithBucket(X).then((function(e){P(e.data.accessRules),A(!1)})).catch((function(t){e((0,f.Ih)((0,l.g)(t))),A(!1)})):A(!1))}),[h,e,$,X]);return(0,p.jsxs)(s.Fragment,{children:[j&&(0,p.jsx)(F,{modalOpen:j,onClose:function(){U(!1),A(!0)},bucket:X}),L&&(0,p.jsx)(b,{modalOpen:L,onClose:function(){K(!1),A(!0)},bucket:X,toDelete:G}),w&&(0,p.jsx)(x,{modalOpen:w,onClose:function(){z(!1),A(!0)},bucket:X,toEdit:H,initial:M}),(0,p.jsx)(i.NZf,{separator:!0,sx:{marginBottom:15},actions:(0,p.jsx)(d.s,{scopes:[a.Ft.S3_GET_BUCKET_POLICY,a.Ft.S3_PUT_BUCKET_POLICY,a.Ft.S3_GET_ACTIONS,a.Ft.S3_PUT_ACTIONS],resource:X,matchAll:!0,errorProps:{disabled:!0},children:(0,p.jsx)(T.Z,{tooltip:"Add Access Rule",children:(0,p.jsx)(i.zxk,{id:"add-bucket-access-rule",onClick:function(){U(!0)},label:"Add Access Rule",icon:(0,p.jsx)(i.dtP,{}),variant:"callAction"})})}),children:"Anonymous Access"}),(0,p.jsx)(d.s,{scopes:[a.Ft.S3_GET_BUCKET_POLICY,a.Ft.S3_GET_ACTIONS],resource:X,errorProps:{disabled:!0},children:(0,p.jsx)(i.wQF,{itemActions:ne,columns:[{label:"Prefix",elementKey:"prefix",renderFunction:function(e){return e||"/"}},{label:"Access",elementKey:"access"}],isLoading:h,records:m||[],entityName:"Access Rules",idField:"prefix"})})]})}}}]); +//# sourceMappingURL=7494.bad4da61.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/7494.bad4da61.chunk.js.map b/portal-ui/build/static/js/7494.bad4da61.chunk.js.map new file mode 100644 index 000000000..13ad3bd8c --- /dev/null +++ b/portal-ui/build/static/js/7494.bad4da61.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/7494.bad4da61.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AccessRulePanel.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { AddIcon, Button, DataTable, SectionTitle } from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { useParams } from \"react-router-dom\";\nimport { api } from \"api\";\nimport { AccessRule as IAccessRule } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { selBucketDetailsLoading } from \"./bucketDetailsSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport withSuspense from \"../../Common/Components/withSuspense\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst AddAccessRuleModal = withSuspense(\n React.lazy(() => import(\"./AddAccessRule\")),\n);\nconst DeleteAccessRuleModal = withSuspense(\n React.lazy(() => import(\"./DeleteAccessRule\")),\n);\nconst EditAccessRuleModal = withSuspense(\n React.lazy(() => import(\"./EditAccessRule\")),\n);\n\nconst AccessRule = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n\n const [loadingAccessRules, setLoadingAccessRules] = useState(true);\n const [accessRules, setAccessRules] = useState([]);\n const [addAccessRuleOpen, setAddAccessRuleOpen] = useState(false);\n const [deleteAccessRuleOpen, setDeleteAccessRuleOpen] =\n useState(false);\n const [accessRuleToDelete, setAccessRuleToDelete] = useState(\"\");\n const [editAccessRuleOpen, setEditAccessRuleOpen] = useState(false);\n const [accessRuleToEdit, setAccessRuleToEdit] = useState(\"\");\n const [initialAccess, setInitialAccess] = useState(\"\");\n\n const bucketName = params.bucketName || \"\";\n\n const displayAccessRules = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n\n const deleteAccessRules = hasPermission(bucketName, [\n IAM_SCOPES.S3_DELETE_BUCKET_POLICY,\n ]);\n\n const editAccessRules = hasPermission(bucketName, [\n IAM_SCOPES.S3_PUT_BUCKET_POLICY,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n useEffect(() => {\n if (loadingBucket) {\n setLoadingAccessRules(true);\n }\n }, [loadingBucket, setLoadingAccessRules]);\n\n const AccessRuleActions = [\n {\n type: \"delete\",\n disableButtonFunction: () => !deleteAccessRules,\n onClick: (accessRule: any) => {\n setDeleteAccessRuleOpen(true);\n setAccessRuleToDelete(accessRule.prefix);\n },\n },\n {\n type: \"view\",\n disableButtonFunction: () => !editAccessRules,\n onClick: (accessRule: any) => {\n setAccessRuleToEdit(accessRule.prefix);\n setInitialAccess(accessRule.access);\n setEditAccessRuleOpen(true);\n },\n },\n ];\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_detail_prefix\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (loadingAccessRules) {\n if (displayAccessRules) {\n api.bucket\n .listAccessRulesWithBucket(bucketName)\n .then((res) => {\n setAccessRules(res.data.accessRules);\n setLoadingAccessRules(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n setLoadingAccessRules(false);\n });\n } else {\n setLoadingAccessRules(false);\n }\n }\n }, [loadingAccessRules, dispatch, displayAccessRules, bucketName]);\n\n const closeAddAccessRuleModal = () => {\n setAddAccessRuleOpen(false);\n setLoadingAccessRules(true);\n };\n\n const closeDeleteAccessRuleModal = () => {\n setDeleteAccessRuleOpen(false);\n setLoadingAccessRules(true);\n };\n\n const closeEditAccessRuleModal = () => {\n setEditAccessRuleOpen(false);\n setLoadingAccessRules(true);\n };\n\n return (\n \n {addAccessRuleOpen && (\n \n )}\n {deleteAccessRuleOpen && (\n \n )}\n {editAccessRuleOpen && (\n \n )}\n \n \n {\n setAddAccessRuleOpen(true);\n }}\n label={\"Add Access Rule\"}\n icon={}\n variant={\"callAction\"}\n />\n \n \n }\n >\n Anonymous Access\n \n \n {\n return prefix || \"/\";\n },\n },\n { label: \"Access\", elementKey: \"access\" },\n ]}\n isLoading={loadingAccessRules}\n records={accessRules || []}\n entityName=\"Access Rules\"\n idField=\"prefix\"\n />\n \n \n );\n};\n\nexport default AccessRule;\n"],"names":["AddAccessRuleModal","withSuspense","React","DeleteAccessRuleModal","EditAccessRuleModal","dispatch","useAppDispatch","params","useParams","loadingBucket","useSelector","selBucketDetailsLoading","_useState","useState","_useState2","_slicedToArray","loadingAccessRules","setLoadingAccessRules","_useState3","_useState4","accessRules","setAccessRules","_useState5","_useState6","addAccessRuleOpen","setAddAccessRuleOpen","_useState7","_useState8","deleteAccessRuleOpen","setDeleteAccessRuleOpen","_useState9","_useState10","accessRuleToDelete","setAccessRuleToDelete","_useState11","_useState12","editAccessRuleOpen","setEditAccessRuleOpen","_useState13","_useState14","accessRuleToEdit","setAccessRuleToEdit","_useState15","_useState16","initialAccess","setInitialAccess","bucketName","displayAccessRules","hasPermission","IAM_SCOPES","S3_GET_BUCKET_POLICY","S3_GET_ACTIONS","deleteAccessRules","S3_DELETE_BUCKET_POLICY","editAccessRules","S3_PUT_BUCKET_POLICY","S3_PUT_ACTIONS","useEffect","AccessRuleActions","type","disableButtonFunction","onClick","accessRule","prefix","access","setHelpName","api","bucket","listAccessRulesWithBucket","then","res","data","catch","err","setErrorSnackMessage","errorToHandler","_jsxs","Fragment","children","_jsx","modalOpen","onClose","toDelete","toEdit","initial","SectionTitle","separator","sx","marginBottom","actions","SecureComponent","scopes","resource","matchAll","errorProps","disabled","TooltipWrapper","tooltip","Button","id","label","icon","AddIcon","variant","DataTable","itemActions","columns","elementKey","renderFunction","isLoading","records","entityName","idField"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/7584.045f27dc.chunk.js b/portal-ui/build/static/js/7584.045f27dc.chunk.js deleted file mode 100644 index d13ef7b8c..000000000 --- a/portal-ui/build/static/js/7584.045f27dc.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[7584,4882,7981,9581,6662],{1604:function(e,n,t){"use strict";t.r(n);var r=t(29439),o=t(1413),a=t(72791),i=t(29945),s=t(40986),l=t(11135),c=t(25787),u=t(61889),d=t(23814),f=t(56028),p=t(83679),m=t(21435),v=t(87995),Z=t(81551),h=t(31776),x=t(66315),b=t(82342),g=t(80184);n.default=(0,c.Z)((function(e){return(0,l.Z)((0,o.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},d.bK),d.QV),d.DF),d.ID))}))((function(e){var n=e.classes,t=e.open,o=e.bucketName,l=e.closeModalAndRefresh,c=(0,Z.TL)(),d=(0,a.useState)(!1),y=(0,r.Z)(d,2),k=y[0],j=y[1],C=(0,a.useState)(!0),S=(0,r.Z)(C,2),F=S[0],w=S[1],N=(0,a.useState)(x.oO.Compliance),R=(0,r.Z)(N,2),z=R[0],P=R[1],I=(0,a.useState)(x.zR.Days),M=(0,r.Z)(I,2),L=M[0],O=M[1],q=(0,a.useState)(1),A=(0,r.Z)(q,2),_=A[0],B=A[1],E=(0,a.useState)(!1),W=(0,r.Z)(E,2),D=W[0],V=W[1];return(0,a.useEffect)((function(){Number.isNaN(_)||(_||1)<1?V(!1):V(!0)}),[_]),(0,a.useEffect)((function(){F&&h.h.buckets.getBucketRetentionConfig(o).then((function(e){w(!1),P(e.data.mode),B(e.data.validity),O(e.data.unit)})).catch((function(){w(!1)}))}),[F,o]),(0,g.jsx)(f.Z,{title:"Set Retention Configuration",modalOpen:t,onClose:function(){l()},children:F?(0,g.jsx)(i.aNw,{style:{width:16,height:16}}):(0,g.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),k||(j(!0),h.h.buckets.setBucketRetentionConfig(o,{mode:z||x.oO.Compliance,unit:L||x.zR.Days,validity:_||1}).then((function(){j(!1),l()})).catch((function(e){j(!1),c((0,v.zb)((0,b.g)(e.error)))})))},children:(0,g.jsxs)(u.ZP,{container:!0,children:[(0,g.jsxs)(u.ZP,{item:!0,xs:12,className:n.modalFormScrollable,children:[(0,g.jsx)(u.ZP,{item:!0,xs:12,className:n.formFieldRow,children:(0,g.jsx)(p.Z,{currentSelection:z,id:"retention_mode",name:"retention_mode",label:"Retention Mode",onChange:function(e){P(e.target.value)},selectorOptions:[{value:"compliance",label:"Compliance"},{value:"governance",label:"Governance"}]})}),(0,g.jsx)(u.ZP,{item:!0,xs:12,className:n.formFieldRow,children:(0,g.jsx)(p.Z,{currentSelection:L,id:"retention_unit",name:"retention_unit",label:"Retention Unit",onChange:function(e){O(e.target.value)},selectorOptions:[{value:"days",label:"Days"},{value:"years",label:"Years"}]})}),(0,g.jsx)(u.ZP,{item:!0,xs:12,className:n.formFieldRow,children:(0,g.jsx)(m.Z,{type:"number",id:"retention_validity",name:"retention_validity",onChange:function(e){B(e.target.valueAsNumber)},label:"Retention Validity",value:String(_),required:!0,min:"1"})})]}),(0,g.jsxs)(u.ZP,{item:!0,xs:12,className:n.modalButtonBar,children:[(0,g.jsx)(i.zxk,{id:"cancel",type:"button",variant:"regular",disabled:k,onClick:function(){l()},label:"Cancel"}),(0,g.jsx)(i.zxk,{id:"set",type:"submit",variant:"callAction",color:"primary",disabled:k||!D,label:"Set"})]}),k&&(0,g.jsx)(u.ZP,{item:!0,xs:12,children:(0,g.jsx)(s.Z,{})})]})})})}))},21435:function(e,n,t){"use strict";var r=t(29439),o=t(1413),a=t(72791),i=t(27391),s=t(61889),l=t(30829),c=t(20068),u=t(13400),d=t(20165),f=t(3579),p=t(11135),m=t(72455),v=t(25787),Z=t(23814),h=t(29945),x=t(28182),b=t(80184),g=(0,m.Z)((function(e){return(0,p.Z)((0,o.Z)({},Z.gM))}));function y(e){var n=g();return(0,b.jsx)(i.Z,(0,o.Z)({InputProps:{classes:n}},e))}n.Z=(0,v.Z)((function(e){return(0,p.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},Z.YI),Z.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var n=e.label,t=e.onChange,i=e.value,p=e.id,m=e.name,v=e.type,Z=void 0===v?"text":v,g=e.autoComplete,k=void 0===g?"off":g,j=e.disabled,C=void 0!==j&&j,S=e.multiline,F=void 0!==S&&S,w=e.tooltip,N=void 0===w?"":w,R=e.index,z=void 0===R?0:R,P=e.error,I=void 0===P?"":P,M=e.required,L=void 0!==M&&M,O=e.placeholder,q=void 0===O?"":O,A=e.min,_=e.max,B=e.overlayId,E=e.overlayIcon,W=void 0===E?null:E,D=e.overlayObject,V=void 0===D?null:D,K=e.extraInputProps,H=void 0===K?{}:K,T=e.overlayAction,G=e.noLabelMinWidth,U=void 0!==G&&G,Y=e.pattern,Q=void 0===Y?"":Y,J=e.autoFocus,X=void 0!==J&&J,$=e.classes,ee=e.className,ne=void 0===ee?"":ee,te=e.onKeyPress,re=e.onFocus,oe=e.onPaste,ae=(0,o.Z)({"data-index":z},H),ie=(0,a.useState)(!1),se=(0,r.Z)(ie,2),le=se[0],ce=se[1];"number"===Z&&A&&(ae.min=A),"number"===Z&&_&&(ae.max=_),""!==Q&&(ae.pattern=Q);var ue=W,de=Z;return"password"===Z&&null===W&&(ue=le?(0,b.jsx)(d.Z,{}):(0,b.jsx)(f.Z,{}),de=le?"text":"password"),(0,b.jsx)(a.Fragment,{children:(0,b.jsxs)(s.ZP,{container:!0,className:(0,x.Z)(""!==ne?ne:"",""!==I?$.errorInField:$.inputBoxContainer),children:[""!==n&&(0,b.jsxs)(l.Z,{htmlFor:p,className:U?$.noMinWidthLabel:$.inputLabel,children:[(0,b.jsxs)("span",{children:[n,L?"*":""]}),""!==N&&(0,b.jsx)("div",{className:$.tooltipContainer,children:(0,b.jsx)(c.Z,{title:N,placement:"top-start",children:(0,b.jsx)("div",{className:$.tooltip,children:(0,b.jsx)(h.byK,{})})})})]}),(0,b.jsxs)("div",{className:$.textBoxContainer,children:[(0,b.jsx)(y,{id:p,name:m,fullWidth:!0,value:i,autoFocus:X,disabled:C,onChange:t,type:de,multiline:F,autoComplete:k,inputProps:ae,error:""!==I,helperText:I,placeholder:q,className:$.inputRebase,onKeyPress:te,onFocus:re,onPaste:oe}),ue&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==n?"withLabel":""),children:(0,b.jsx)(u.Z,{onClick:T?function(){T()}:function(){return ce(!le)},id:B,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:ue})}),V&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==n?"withLabel":""),children:V})]})]})})}))},83679:function(e,n,t){"use strict";var r=t(4942),o=t(1413),a=(t(72791),t(28182)),i=t(61889),s=t(10765),l=t(85523),c=t(61419),u=t(30829),d=t(20068),f=t(11135),p=t(25787),m=t(72455),v=t(23814),Z=t(29945),h=t(80184),x=(0,m.Z)((0,o.Z)({root:{"&:hover":{backgroundColor:"transparent"}}},v.FU)),b=function(e){var n=x();return(0,h.jsx)(c.Z,(0,o.Z)({className:n.root,disableRipple:!0,color:"default",checkedIcon:(0,h.jsx)("span",{className:n.radioSelectedIcon}),icon:(0,h.jsx)("span",{className:n.radioUnselectedIcon})},e))};n.Z=(0,p.Z)((function(e){return(0,f.Z)((0,o.Z)((0,o.Z)((0,o.Z)({},v.YI),v.Hr),{},{optionLabel:{"&.Mui-disabled":{"& .MuiFormControlLabel-label":{color:"#9c9c9c"}},"&:last-child":{marginRight:0},"& .MuiFormControlLabel-label":{fontSize:12,color:"#07193E"}},checkedOption:{"& .MuiFormControlLabel-label":{fontSize:12,color:"#07193E",fontWeight:700}}}))}))((function(e){var n=e.selectorOptions,t=void 0===n?[]:n,o=e.currentSelection,c=e.label,f=e.id,p=e.name,m=e.onChange,v=e.tooltip,x=void 0===v?"":v,g=e.disableOptions,y=void 0!==g&&g,k=e.classes,j=e.displayInColumn,C=void 0!==j&&j;return(0,h.jsxs)(i.ZP,{container:!0,spacing:1,children:[(0,h.jsx)(i.ZP,{item:!0,fontSize:60,children:(0,h.jsxs)(u.Z,{htmlFor:f,className:k.inputLabel,children:[(0,h.jsx)("span",{children:c}),""!==x&&(0,h.jsx)("div",{className:k.tooltipContainer,children:(0,h.jsx)(d.Z,{title:x,placement:"top-start",children:(0,h.jsx)("div",{children:(0,h.jsx)(Z.byK,{})})})})]})}),(0,h.jsx)(i.ZP,{item:!0,children:(0,h.jsx)(s.Z,{"aria-label":f,id:f,name:p,value:o,onChange:m,row:!C,style:{display:"flex",textAlign:"right"},children:t.map((function(e){return(0,h.jsx)(l.Z,{value:e.value,control:(0,h.jsx)(b,{}),label:e.label,disabled:y,className:(0,a.Z)(k.optionLabel,(0,r.Z)({},k.checkedOption,e.value===o))},"rd-".concat(p,"-").concat(e.value))}))})})]})}))},3579:function(e,n,t){"use strict";var r=t(64836);n.Z=void 0;var o=r(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");n.Z=i},20165:function(e,n,t){"use strict";var r=t(64836);n.Z=void 0;var o=r(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");n.Z=i},45649:function(e,n,t){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"default",{enumerable:!0,get:function(){return r.createSvgIcon}});var r=t(28610)},93840:function(e,n,t){"use strict";var r=t(72791).createContext(void 0);n.Z=r},76147:function(e,n,t){"use strict";function r(e){var n=e.props,t=e.states,r=e.muiFormControl;return t.reduce((function(e,t){return e[t]=n[t],r&&"undefined"===typeof n[t]&&(e[t]=r[t]),e}),{})}t.d(n,{Z:function(){return r}})},52930:function(e,n,t){"use strict";t.d(n,{Z:function(){return a}});var r=t(72791),o=t(93840);function a(){return r.useContext(o.Z)}},17133:function(e,n,t){"use strict";var r=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(28182),l=t(94419),c=t(76147),u=t(52930),d=t(14036),f=t(31402),p=t(66934),m=t(10843),v=t(80184),Z=["children","className","color","component","disabled","error","filled","focused","required"],h=(0,p.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,n){var t=e.ownerState;return(0,a.Z)({},n.root,"secondary"===t.color&&n.colorSecondary,t.filled&&n.filled)}})((function(e){var n,t=e.theme,o=e.ownerState;return(0,a.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(n={lineHeight:"1.4375em",padding:0,position:"relative"},(0,r.Z)(n,"&.".concat(m.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,r.Z)(n,"&.".concat(m.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,r.Z)(n,"&.".concat(m.Z.error),{color:(t.vars||t).palette.error.main}),n))})),x=(0,p.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,n){return n.asterisk}})((function(e){var n=e.theme;return(0,r.Z)({},"&.".concat(m.Z.error),{color:(n.vars||n).palette.error.main})})),b=i.forwardRef((function(e,n){var t=(0,f.Z)({props:e,name:"MuiFormLabel"}),r=t.children,i=t.className,p=t.component,b=void 0===p?"label":p,g=(0,o.Z)(t,Z),y=(0,u.Z)(),k=(0,c.Z)({props:t,muiFormControl:y,states:["color","required","focused","disabled","error","filled"]}),j=(0,a.Z)({},t,{color:k.color||"primary",component:b,disabled:k.disabled,error:k.error,filled:k.filled,focused:k.focused,required:k.required}),C=function(e){var n=e.classes,t=e.color,r=e.focused,o=e.disabled,a=e.error,i=e.filled,s=e.required,c={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",a&&"error",i&&"filled",r&&"focused",s&&"required"],asterisk:["asterisk",a&&"error"]};return(0,l.Z)(c,m.M,n)}(j);return(0,v.jsxs)(h,(0,a.Z)({as:b,ownerState:j,className:(0,s.Z)(C.root,i),ref:n},g,{children:[r,k.required&&(0,v.jsxs)(x,{ownerState:j,"aria-hidden":!0,className:C.asterisk,children:["\u2009","*"]})]}))}));n.Z=b},10843:function(e,n,t){"use strict";t.d(n,{M:function(){return a}});var r=t(75878),o=t(21217);function a(e){return(0,o.Z)("MuiFormLabel",e)}var i=(0,r.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);n.Z=i},30829:function(e,n,t){"use strict";t.d(n,{Z:function(){return y}});var r=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(94419),l=t(28182),c=t(76147),u=t(52930),d=t(17133),f=t(10843),p=t(31402),m=t(66934),v=t(75878),Z=t(21217);function h(e){return(0,Z.Z)("MuiInputLabel",e)}(0,v.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var x=t(80184),b=["disableAnimation","margin","shrink","variant","className"],g=(0,m.ZP)(d.Z,{shouldForwardProp:function(e){return(0,m.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,n){var t=e.ownerState;return[(0,r.Z)({},"& .".concat(f.Z.asterisk),n.asterisk),n.root,t.formControl&&n.formControl,"small"===t.size&&n.sizeSmall,t.shrink&&n.shrink,!t.disableAnimation&&n.animated,n[t.variant]]}})((function(e){var n=e.theme,t=e.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:n.transitions.create(["color","transform","max-width"],{duration:n.transitions.duration.shorter,easing:n.transitions.easing.easeOut})},"filled"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),y=i.forwardRef((function(e,n){var t=(0,p.Z)({name:"MuiInputLabel",props:e}),r=t.disableAnimation,i=void 0!==r&&r,d=t.shrink,f=t.className,m=(0,o.Z)(t,b),v=(0,u.Z)(),Z=d;"undefined"===typeof Z&&v&&(Z=v.filled||v.focused||v.adornedStart);var y=(0,c.Z)({props:t,muiFormControl:v,states:["size","variant","required"]}),k=(0,a.Z)({},t,{disableAnimation:i,formControl:v,shrink:Z,size:y.size,variant:y.variant,required:y.required}),j=function(e){var n=e.classes,t=e.formControl,r=e.size,o=e.shrink,i={root:["root",t&&"formControl",!e.disableAnimation&&"animated",o&&"shrink","small"===r&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},l=(0,s.Z)(i,h,n);return(0,a.Z)({},n,l)}(k);return(0,x.jsx)(g,(0,a.Z)({"data-shrink":Z,ownerState:k,ref:n,className:(0,l.Z)(j.root,f)},m,{classes:j}))}))},97278:function(e,n,t){"use strict";t.d(n,{Z:function(){return y}});var r=t(29439),o=t(63366),a=t(87462),i=t(72791),s=t(28182),l=t(94419),c=t(14036),u=t(66934),d=t(98278),f=t(52930),p=t(95080),m=t(75878),v=t(21217);function Z(e){return(0,v.Z)("PrivateSwitchBase",e)}(0,m.Z)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var h=t(80184),x=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],b=(0,u.ZP)(p.Z)((function(e){var n=e.ownerState;return(0,a.Z)({padding:9,borderRadius:"50%"},"start"===n.edge&&{marginLeft:"small"===n.size?-3:-12},"end"===n.edge&&{marginRight:"small"===n.size?-3:-12})})),g=(0,u.ZP)("input")({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),y=i.forwardRef((function(e,n){var t=e.autoFocus,i=e.checked,u=e.checkedIcon,p=e.className,m=e.defaultChecked,v=e.disabled,y=e.disableFocusRipple,k=void 0!==y&&y,j=e.edge,C=void 0!==j&&j,S=e.icon,F=e.id,w=e.inputProps,N=e.inputRef,R=e.name,z=e.onBlur,P=e.onChange,I=e.onFocus,M=e.readOnly,L=e.required,O=void 0!==L&&L,q=e.tabIndex,A=e.type,_=e.value,B=(0,o.Z)(e,x),E=(0,d.Z)({controlled:i,default:Boolean(m),name:"SwitchBase",state:"checked"}),W=(0,r.Z)(E,2),D=W[0],V=W[1],K=(0,f.Z)(),H=v;K&&"undefined"===typeof H&&(H=K.disabled);var T="checkbox"===A||"radio"===A,G=(0,a.Z)({},e,{checked:D,disabled:H,disableFocusRipple:k,edge:C}),U=function(e){var n=e.classes,t=e.checked,r=e.disabled,o=e.edge,a={root:["root",t&&"checked",r&&"disabled",o&&"edge".concat((0,c.Z)(o))],input:["input"]};return(0,l.Z)(a,Z,n)}(G);return(0,h.jsxs)(b,(0,a.Z)({component:"span",className:(0,s.Z)(U.root,p),centerRipple:!0,focusRipple:!k,disabled:H,tabIndex:null,role:void 0,onFocus:function(e){I&&I(e),K&&K.onFocus&&K.onFocus(e)},onBlur:function(e){z&&z(e),K&&K.onBlur&&K.onBlur(e)},ownerState:G,ref:n},B,{children:[(0,h.jsx)(g,(0,a.Z)({autoFocus:t,checked:i,defaultChecked:m,className:U.input,disabled:H,id:T?F:void 0,name:R,onChange:function(e){if(!e.nativeEvent.defaultPrevented){var n=e.target.checked;V(n),P&&P(e,n)}},readOnly:M,ref:N,required:O,ownerState:G,tabIndex:q,type:A},"checkbox"===A&&void 0===_?{}:{value:_},w)),D?u:S]}))}))},31260:function(e,n,t){"use strict";var r=t(78949);n.Z=r.Z},28610:function(e,n,t){"use strict";t.r(n),t.d(n,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return l},isMuiElement:function(){return c.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return p},unstable_ClassNameGenerator:function(){return y},unstable_useEnhancedEffect:function(){return m.Z},unstable_useId:function(){return v.Z},unsupportedProp:function(){return Z},useControlled:function(){return h.Z},useEventCallback:function(){return x.Z},useForkRef:function(){return b.Z},useIsFocusVisible:function(){return g.Z}});var r=t(55902),o=t(14036),a=t(31260),i=t(76189),s=t(83199);var l=function(e,n){return function(){return null}},c=t(19103),u=t(98301),d=t(17602);t(87462);var f=function(e,n){return function(){return null}},p=t(62971).Z,m=t(40162),v=t(67384);var Z=function(e,n,t,r,o){return null},h=t(98278),x=t(89683),b=t(42071),g=t(23031),y={configure:function(e){r.Z.configure(e)}}},19103:function(e,n,t){"use strict";t.d(n,{Z:function(){return o}});var r=t(72791);var o=function(e,n){return r.isValidElement(e)&&-1!==n.indexOf(e.type.muiName)}},78949:function(e,n,t){"use strict";function r(){for(var e=arguments.length,n=new Array(e),t=0;t.\n\nimport React, { useEffect, useState } from \"react\";\nimport { Button, Loader } from \"mds\";\nimport { LinearProgress } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n createTenantCommon,\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport RadioGroupSelector from \"../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { ObjectRetentionMode, ObjectRetentionUnit } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...spacingUtils,\n ...createTenantCommon,\n ...formFieldStyles,\n ...modalStyleUtils,\n });\n\ninterface ISetRetentionConfigProps {\n classes: any;\n open: boolean;\n bucketName: string;\n closeModalAndRefresh: () => void;\n}\n\nconst SetRetentionConfig = ({\n classes,\n open,\n bucketName,\n closeModalAndRefresh,\n}: ISetRetentionConfigProps) => {\n const dispatch = useAppDispatch();\n const [addLoading, setAddLoading] = useState(false);\n const [loadingForm, setLoadingForm] = useState(true);\n const [retentionMode, setRetentionMode] = useState<\n ObjectRetentionMode | undefined\n >(ObjectRetentionMode.Compliance);\n const [retentionUnit, setRetentionUnit] = useState<\n ObjectRetentionUnit | undefined\n >(ObjectRetentionUnit.Days);\n const [retentionValidity, setRetentionValidity] = useState<\n number | undefined\n >(1);\n const [valid, setValid] = useState(false);\n\n const setRetention = (event: React.FormEvent) => {\n event.preventDefault();\n if (addLoading) {\n return;\n }\n setAddLoading(true);\n api.buckets\n .setBucketRetentionConfig(bucketName, {\n mode: retentionMode || ObjectRetentionMode.Compliance,\n unit: retentionUnit || ObjectRetentionUnit.Days,\n validity: retentionValidity || 1,\n })\n .then(() => {\n setAddLoading(false);\n closeModalAndRefresh();\n })\n .catch((err) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n useEffect(() => {\n if (Number.isNaN(retentionValidity) || (retentionValidity || 1) < 1) {\n setValid(false);\n return;\n }\n setValid(true);\n }, [retentionValidity]);\n\n useEffect(() => {\n if (loadingForm) {\n api.buckets\n .getBucketRetentionConfig(bucketName)\n .then((res) => {\n setLoadingForm(false);\n\n // We set default values\n setRetentionMode(res.data.mode);\n setRetentionValidity(res.data.validity);\n setRetentionUnit(res.data.unit);\n })\n .catch(() => {\n setLoadingForm(false);\n });\n }\n }, [loadingForm, bucketName]);\n\n return (\n {\n closeModalAndRefresh();\n }}\n >\n {loadingForm ? (\n \n ) : (\n ) => {\n setRetention(e);\n }}\n >\n \n \n \n ) => {\n setRetentionMode(e.target.value as ObjectRetentionMode);\n }}\n selectorOptions={[\n { value: \"compliance\", label: \"Compliance\" },\n { value: \"governance\", label: \"Governance\" },\n ]}\n />\n \n \n ) => {\n setRetentionUnit(e.target.value as ObjectRetentionUnit);\n }}\n selectorOptions={[\n { value: \"days\", label: \"Days\" },\n { value: \"years\", label: \"Years\" },\n ]}\n />\n \n \n ) => {\n setRetentionValidity(e.target.valueAsNumber);\n }}\n label=\"Retention Validity\"\n value={String(retentionValidity)}\n required\n min=\"1\"\n />\n \n \n \n {\n closeModalAndRefresh();\n }}\n label={\"Cancel\"}\n />\n \n \n {addLoading && (\n \n \n \n )}\n \n \n )}\n \n );\n};\n\nexport default withStyles(styles)(SetRetentionConfig);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport clsx from \"clsx\";\nimport Grid from \"@mui/material/Grid\";\nimport RadioGroup from \"@mui/material/RadioGroup\";\nimport FormControlLabel from \"@mui/material/FormControlLabel\";\nimport Radio, { RadioProps } from \"@mui/material/Radio\";\nimport { InputLabel, Tooltip } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { fieldBasic, radioIcons, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport { ObjectRetentionMode, ObjectRetentionUnit } from \"api/consoleApi\";\n\nexport interface SelectorTypes {\n label: any;\n value: string;\n}\n\ninterface RadioGroupProps {\n selectorOptions: SelectorTypes[];\n currentSelection:\n | ObjectRetentionMode\n | ObjectRetentionUnit\n | undefined\n | \"expiry\"\n | \"transition\";\n label: any;\n id: string;\n name: string;\n tooltip?: string;\n disableOptions?: boolean;\n onChange: (e: React.ChangeEvent) => void;\n classes: any;\n displayInColumn?: boolean;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n optionLabel: {\n \"&.Mui-disabled\": {\n \"& .MuiFormControlLabel-label\": {\n color: \"#9c9c9c\",\n },\n },\n \"&:last-child\": {\n marginRight: 0,\n },\n \"& .MuiFormControlLabel-label\": {\n fontSize: 12,\n color: \"#07193E\",\n },\n },\n checkedOption: {\n \"& .MuiFormControlLabel-label\": {\n fontSize: 12,\n color: \"#07193E\",\n fontWeight: 700,\n },\n },\n });\n\nconst radioStyles = makeStyles({\n root: {\n \"&:hover\": {\n backgroundColor: \"transparent\",\n },\n },\n ...radioIcons,\n});\n\nconst RadioButton = (props: RadioProps) => {\n const classes = radioStyles();\n\n return (\n }\n icon={}\n {...props}\n />\n );\n};\n\nexport const RadioGroupSelector = ({\n selectorOptions = [],\n currentSelection,\n label,\n id,\n name,\n onChange,\n tooltip = \"\",\n disableOptions = false,\n classes,\n displayInColumn = false,\n}: RadioGroupProps) => {\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n
\n \n \n {selectorOptions.map((selectorOption) => {\n return (\n }\n label={selectorOption.label}\n disabled={disableOptions}\n className={clsx(classes.optionLabel, {\n [classes.checkedOption]:\n selectorOption.value === currentSelection,\n })}\n />\n );\n })}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(RadioGroupSelector);\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchBaseUtilityClass(slot) {\n return generateUtilityClass('PrivateSwitchBase', slot);\n}\nconst switchBaseClasses = generateUtilityClasses('PrivateSwitchBase', ['root', 'checked', 'disabled', 'input', 'edgeStart', 'edgeEnd']);\nexport default switchBaseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"checked\", \"checkedIcon\", \"className\", \"defaultChecked\", \"disabled\", \"disableFocusRipple\", \"edge\", \"icon\", \"id\", \"inputProps\", \"inputRef\", \"name\", \"onBlur\", \"onChange\", \"onFocus\", \"readOnly\", \"required\", \"tabIndex\", \"type\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useControlled from '../utils/useControlled';\nimport useFormControl from '../FormControl/useFormControl';\nimport ButtonBase from '../ButtonBase';\nimport { getSwitchBaseUtilityClass } from './switchBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n checked,\n disabled,\n edge\n } = ownerState;\n const slots = {\n root: ['root', checked && 'checked', disabled && 'disabled', edge && `edge${capitalize(edge)}`],\n input: ['input']\n };\n return composeClasses(slots, getSwitchBaseUtilityClass, classes);\n};\nconst SwitchBaseRoot = styled(ButtonBase)(({\n ownerState\n}) => _extends({\n padding: 9,\n borderRadius: '50%'\n}, ownerState.edge === 'start' && {\n marginLeft: ownerState.size === 'small' ? -3 : -12\n}, ownerState.edge === 'end' && {\n marginRight: ownerState.size === 'small' ? -3 : -12\n}));\nconst SwitchBaseInput = styled('input')({\n cursor: 'inherit',\n position: 'absolute',\n opacity: 0,\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n zIndex: 1\n});\n\n/**\n * @ignore - internal component.\n */\nconst SwitchBase = /*#__PURE__*/React.forwardRef(function SwitchBase(props, ref) {\n const {\n autoFocus,\n checked: checkedProp,\n checkedIcon,\n className,\n defaultChecked,\n disabled: disabledProp,\n disableFocusRipple = false,\n edge = false,\n icon,\n id,\n inputProps,\n inputRef,\n name,\n onBlur,\n onChange,\n onFocus,\n readOnly,\n required = false,\n tabIndex,\n type,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [checked, setCheckedState] = useControlled({\n controlled: checkedProp,\n default: Boolean(defaultChecked),\n name: 'SwitchBase',\n state: 'checked'\n });\n const muiFormControl = useFormControl();\n const handleFocus = event => {\n if (onFocus) {\n onFocus(event);\n }\n if (muiFormControl && muiFormControl.onFocus) {\n muiFormControl.onFocus(event);\n }\n };\n const handleBlur = event => {\n if (onBlur) {\n onBlur(event);\n }\n if (muiFormControl && muiFormControl.onBlur) {\n muiFormControl.onBlur(event);\n }\n };\n const handleInputChange = event => {\n // Workaround for https://github.com/facebook/react/issues/9023\n if (event.nativeEvent.defaultPrevented) {\n return;\n }\n const newChecked = event.target.checked;\n setCheckedState(newChecked);\n if (onChange) {\n // TODO v6: remove the second argument.\n onChange(event, newChecked);\n }\n };\n let disabled = disabledProp;\n if (muiFormControl) {\n if (typeof disabled === 'undefined') {\n disabled = muiFormControl.disabled;\n }\n }\n const hasLabelFor = type === 'checkbox' || type === 'radio';\n const ownerState = _extends({}, props, {\n checked,\n disabled,\n disableFocusRipple,\n edge\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(SwitchBaseRoot, _extends({\n component: \"span\",\n className: clsx(classes.root, className),\n centerRipple: true,\n focusRipple: !disableFocusRipple,\n disabled: disabled,\n tabIndex: null,\n role: undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/_jsx(SwitchBaseInput, _extends({\n autoFocus: autoFocus,\n checked: checkedProp,\n defaultChecked: defaultChecked,\n className: classes.input,\n disabled: disabled,\n id: hasLabelFor ? id : undefined,\n name: name,\n onChange: handleInputChange,\n readOnly: readOnly,\n ref: inputRef,\n required: required,\n ownerState: ownerState,\n tabIndex: tabIndex,\n type: type\n }, type === 'checkbox' && value === undefined ? {} : {\n value\n }, inputProps)), checked ? checkedIcon : icon]\n }));\n});\n\n// NB: If changed, please update Checkbox, Switch and Radio\n// so that the API documentation is updated.\nprocess.env.NODE_ENV !== \"production\" ? SwitchBase.propTypes = {\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node.isRequired,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * @ignore\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the keyboard focus ripple is disabled.\n * @default false\n */\n disableFocusRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node.isRequired,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /*\n * @ignore\n */\n name: PropTypes.string,\n /**\n * @ignore\n */\n onBlur: PropTypes.func,\n /**\n * Callback fired when the state is changed.\n *\n * @param {object} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.object,\n /**\n * @ignore\n */\n tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The input component prop `type`.\n */\n type: PropTypes.string.isRequired,\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default SwitchBase;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["withStyles","theme","createStyles","_objectSpread","spacingUtils","createTenantCommon","formFieldStyles","modalStyleUtils","_ref","classes","open","bucketName","closeModalAndRefresh","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","addLoading","setAddLoading","_useState3","_useState4","loadingForm","setLoadingForm","_useState5","ObjectRetentionMode","Compliance","_useState6","retentionMode","setRetentionMode","_useState7","ObjectRetentionUnit","Days","_useState8","retentionUnit","setRetentionUnit","_useState9","_useState10","retentionValidity","setRetentionValidity","_useState11","_useState12","valid","setValid","useEffect","Number","isNaN","api","buckets","getBucketRetentionConfig","then","res","data","mode","validity","unit","catch","_jsx","ModalWrapper","title","modalOpen","onClose","children","Loader","style","width","height","noValidate","autoComplete","onSubmit","e","preventDefault","setBucketRetentionConfig","err","setModalErrorSnackMessage","errorToHandler","error","_jsxs","Grid","container","item","xs","className","modalFormScrollable","formFieldRow","RadioGroupSelector","currentSelection","id","name","label","onChange","target","value","selectorOptions","InputBoxWrapper","type","valueAsNumber","String","required","min","modalButtonBar","Button","variant","disabled","onClick","color","LinearProgress","inputStyles","makeStyles","inputFieldStyles","InputField","props","TextField","InputProps","fieldBasic","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","_ref$type","_ref$autoComplete","_ref$disabled","_ref$multiline","multiline","_ref$tooltip","tooltip","_ref$index","index","_ref$error","_ref$required","_ref$placeholder","placeholder","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","onKeyPress","onFocus","onPaste","inputProps","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","React","clsx","errorInField","inputBoxContainer","InputLabel","htmlFor","noMinWidthLabel","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","fullWidth","helperText","inputRebase","concat","IconButton","size","disableFocusRipple","disableRipple","disableTouchRipple","radioStyles","root","backgroundColor","radioIcons","RadioButton","Radio","checkedIcon","radioSelectedIcon","icon","radioUnselectedIcon","optionLabel","marginRight","fontSize","checkedOption","fontWeight","_ref$selectorOptions","_ref$disableOptions","disableOptions","_ref$displayInColumn","displayInColumn","spacing","RadioGroup","row","display","textAlign","map","selectorOption","FormControlLabel","control","_defineProperty","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","enumerable","get","_utils","createSvgIcon","FormControlContext","undefined","formControlState","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","slot","overridesResolver","styles","ownerState","_extends","colorSecondary","filled","_ref2","_extends2","vars","palette","text","secondary","typography","body1","lineHeight","padding","formLabelClasses","focused","main","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","as","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","sizeSmall","shrink","disableAnimation","animated","transformOrigin","whiteSpace","overflow","textOverflow","left","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","getSwitchBaseUtilityClass","SwitchBaseRoot","ButtonBase","borderRadius","edge","marginLeft","SwitchBaseInput","cursor","opacity","margin","checkedProp","checked","defaultChecked","disabledProp","_props$disableFocusRi","_props$edge","inputRef","onBlur","readOnly","_props$required","tabIndex","_useControlled","useControlled","controlled","Boolean","_useControlled2","setCheckedState","hasLabelFor","input","centerRipple","focusRipple","role","event","nativeEvent","defaultPrevented","newChecked","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","muiName","_len","arguments","length","funcs","Array","_key","func","_len2","args","_key2","apply","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/7586.17376d83.chunk.js.map b/portal-ui/build/static/js/7586.17376d83.chunk.js.map deleted file mode 100644 index 46c0b7196..000000000 --- a/portal-ui/build/static/js/7586.17376d83.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/7586.17376d83.chunk.js","mappings":"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","sources":["screens/Console/Common/FormComponents/CommentBoxWrapper/CommentBoxWrapper.tsx","screens/Console/EventDestinations/CustomForms/ConfPostgres.tsx","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@mui/utils/esm/createChainedFunction.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Grid, InputLabel, TextField, Tooltip } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\ninterface CommentBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n inputLabel: {\n ...fieldBasic.inputLabel,\n fontSize: 14,\n margin: 0,\n alignItems: \"flex-start\",\n paddingTop: \"20px\",\n flexWrap: \"wrap\",\n display: \"flex\",\n },\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n cssOutlinedInput: {\n borderColor: \"#EAEAEA\",\n padding: 16,\n },\n rootContainer: {\n \"& .MuiOutlinedInput-inputMultiline\": {\n ...fieldBasic.inputLabel,\n fontSize: 13,\n minHeight: 150,\n },\n \"&.Mui-focused .MuiOutlinedInput-notchedOutline\": {\n borderColor: \"#07193E\",\n borderWidth: 1,\n },\n \"& textarea\": {\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n \"&:placeholder\": {\n color: \"#858585\",\n opacity: 1,\n fontWeight: 400,\n },\n },\n },\n });\n\nconst CommentBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n disabled = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n classes,\n}: CommentBoxProps) => {\n let inputProps: any = { \"data-index\": index };\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n\n
\n \n
\n \n
\n );\n};\n\nexport default withStyles(styles)(CommentBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useCallback, useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Box, Grid, InputBox, RadioGroup, ReadBox, Select, Switch } from \"mds\";\nimport { IElementValue } from \"../../Configurations/types\";\nimport {\n formFieldStyles,\n modalBasic,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport CommentBoxWrapper from \"../../Common/FormComponents/CommentBoxWrapper/CommentBoxWrapper\";\n\ninterface IConfPostgresProps {\n onChange: (newValue: IElementValue[]) => void;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalBasic,\n ...formFieldStyles,\n });\n\nconst ConfPostgres = ({ onChange, classes }: IConfPostgresProps) => {\n //Local States\n const [useConnectionString, setUseConnectionString] =\n useState(false);\n const [connectionString, setConnectionString] = useState(\"\");\n const [host, setHostname] = useState(\"\");\n const [dbName, setDbName] = useState(\"\");\n const [port, setPort] = useState(\"\");\n const [user, setUser] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [sslMode, setSslMode] = useState(\" \");\n\n const [table, setTable] = useState(\"\");\n const [format, setFormat] = useState(\"namespace\");\n const [queueDir, setQueueDir] = useState(\"\");\n const [queueLimit, setQueueLimit] = useState(\"\");\n const [comment, setComment] = useState(\"\");\n\n // connection_string* (string) Postgres server connection-string e.g. \"host=localhost port=5432 dbname=minio_events user=postgres password=password sslmode=disable\"\n\n // \"host=localhost\n // port=5432\n //dbname=minio_events\n //user=postgres\n //password=password\n //sslmode=disable\"\n\n // table* (string) DB table name to store/update events, table is auto-created\n // format* (namespace*|access) 'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\n // queue_dir (path) staging dir for undelivered messages e.g. '/home/events'\n // queue_limit (number) maximum limit for undelivered messages, defaults to '10000'\n // comment (sentence) optionally add a comment to this setting\n\n const KvSeparator = \"=\";\n const parseConnectionString = (\n input: string,\n keys: string[],\n ): Map => {\n let valueIndexes: number[] = [];\n\n for (const key of keys) {\n const i = input.indexOf(key + KvSeparator);\n if (i === -1) {\n continue;\n }\n valueIndexes.push(i);\n }\n valueIndexes.sort((n1, n2) => n1 - n2);\n\n let kvFields = new Map();\n let fields: string[] = new Array(valueIndexes.length);\n for (let i = 0; i < valueIndexes.length; i++) {\n const j = i + 1;\n if (j < valueIndexes.length) {\n fields[i] = input.slice(valueIndexes[i], valueIndexes[j]);\n } else {\n fields[i] = input.slice(valueIndexes[i]);\n }\n }\n\n for (let field of fields) {\n if (field === undefined) {\n continue;\n }\n const key = field.slice(0, field.indexOf(\"=\"));\n const value = field.slice(field.indexOf(\"=\") + 1).trim();\n kvFields.set(key, value);\n }\n return kvFields;\n };\n\n const configToString = useCallback((): string => {\n let strValue = \"\";\n if (host !== \"\") {\n strValue = `${strValue} host=${host}`;\n }\n if (dbName !== \"\") {\n strValue = `${strValue} dbname=${dbName}`;\n }\n if (user !== \"\") {\n strValue = `${strValue} user=${user}`;\n }\n if (password !== \"\") {\n strValue = `${strValue} password=${password}`;\n }\n if (port !== \"\") {\n strValue = `${strValue} port=${port}`;\n }\n if (sslMode !== \" \") {\n strValue = `${strValue} sslmode=${sslMode}`;\n }\n\n strValue = `${strValue} `;\n\n return strValue.trim();\n }, [host, dbName, user, password, port, sslMode]);\n\n useEffect(() => {\n if (connectionString !== \"\") {\n const formValues = [\n { key: \"connection_string\", value: connectionString },\n { key: \"table\", value: table },\n { key: \"format\", value: format },\n { key: \"queue_dir\", value: queueDir },\n { key: \"queue_limit\", value: queueLimit },\n { key: \"comment\", value: comment },\n ];\n\n onChange(formValues);\n }\n }, [\n connectionString,\n table,\n format,\n queueDir,\n queueLimit,\n comment,\n onChange,\n ]);\n\n useEffect(() => {\n const cs = configToString();\n setConnectionString(cs);\n }, [\n user,\n dbName,\n password,\n port,\n sslMode,\n host,\n setConnectionString,\n configToString,\n ]);\n\n useEffect(() => {\n if (useConnectionString) {\n // build connection_string\n const cs = configToString();\n setConnectionString(cs);\n\n return;\n }\n // parse connection_string\n const kv = parseConnectionString(connectionString, [\n \"host\",\n \"port\",\n \"dbname\",\n \"user\",\n \"password\",\n \"sslmode\",\n ]);\n setHostname(kv.get(\"host\") ? kv.get(\"host\") + \"\" : \"\");\n setPort(kv.get(\"port\") ? kv.get(\"port\") + \"\" : \"\");\n setDbName(kv.get(\"dbname\") ? kv.get(\"dbname\") + \"\" : \"\");\n setUser(kv.get(\"user\") ? kv.get(\"user\") + \"\" : \"\");\n setPassword(kv.get(\"password\") ? kv.get(\"password\") + \"\" : \"\");\n setSslMode(kv.get(\"sslmode\") ? kv.get(\"sslmode\") + \"\" : \" \");\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [useConnectionString]);\n\n return (\n \n \n {\n setUseConnectionString(e.target.checked);\n }}\n value={\"manualString\"}\n />\n \n {useConnectionString ? (\n \n \n ) => {\n setConnectionString(e.target.value);\n }}\n />\n \n \n ) : (\n \n \n \n \n ) => {\n setHostname(e.target.value);\n }}\n />\n \n \n ) => {\n setDbName(e.target.value);\n }}\n />\n \n \n ) => {\n setPort(e.target.value);\n }}\n />\n \n \n {\n if (value) {\n setSslMode(value + \"\");\n }\n }}\n options={[\n { label: \"Enter SSL Mode\", value: \" \" },\n { label: \"Require\", value: \"require\" },\n { label: \"Disable\", value: \"disable\" },\n { label: \"Verify CA\", value: \"verify-ca\" },\n { label: \"Verify Full\", value: \"verify-full\" },\n ]}\n />\n \n \n ) => {\n setUser(e.target.value);\n }}\n />\n \n \n ) => {\n setPassword(e.target.value);\n }}\n />\n \n \n \n \n \n {connectionString}\n \n \n \n )}\n \n ) => {\n setTable(e.target.value);\n }}\n />\n \n \n {\n setFormat(e.target.value);\n }}\n tooltip=\"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\"\n selectorOptions={[\n { label: \"Namespace\", value: \"namespace\" },\n { label: \"Access\", value: \"access\" },\n ]}\n />\n \n \n ) => {\n setQueueDir(e.target.value);\n }}\n />\n \n \n ) => {\n setQueueLimit(e.target.value);\n }}\n />\n \n \n ) => {\n setComment(e.target.value);\n }}\n />\n \n \n );\n};\n\nexport default withStyles(styles)(ConfPostgres);\n","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}"],"names":["withStyles","theme","createStyles","_objectSpread","fieldBasic","tooltipHelper","inputLabel","fontSize","margin","alignItems","paddingTop","flexWrap","display","textBoxContainer","flexGrow","position","cssOutlinedInput","borderColor","padding","rootContainer","minHeight","borderWidth","color","fontWeight","opacity","_ref","label","onChange","value","id","name","_ref$disabled","disabled","_ref$tooltip","tooltip","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","placeholder","classes","inputProps","_jsx","React","children","_jsxs","Grid","item","xs","className","concat","fieldContainer","errorInField","InputLabel","htmlFor","tooltipContainer","Tooltip","title","placement","HelpIcon","TextField","fullWidth","multiline","rows","helperText","InputLabelProps","shrink","InputProps","notchedOutline","root","variant","modalBasic","formFieldStyles","_useState","useState","_useState2","_slicedToArray","useConnectionString","setUseConnectionString","_useState3","_useState4","connectionString","setConnectionString","_useState5","_useState6","host","setHostname","_useState7","_useState8","dbName","setDbName","_useState9","_useState10","port","setPort","_useState11","_useState12","user","setUser","_useState13","_useState14","password","setPassword","_useState15","_useState16","sslMode","setSslMode","_useState17","_useState18","table","setTable","_useState19","_useState20","format","setFormat","_useState21","_useState22","queueDir","setQueueDir","_useState23","_useState24","queueLimit","setQueueLimit","_useState25","_useState26","comment","setComment","configToString","useCallback","strValue","trim","useEffect","key","cs","kv","input","keys","_step","valueIndexes","_iterator","_createForOfIteratorHelper","s","n","done","i","indexOf","push","err","e","f","sort","n1","n2","kvFields","Map","fields","Array","length","j","slice","_i","_fields","field","undefined","set","parseConnectionString","get","container","formFieldRow","Switch","checked","target","InputBox","Box","withBorders","useBackground","sx","overflowY","height","marginBottom","Select","options","type","ReadBox","multiLine","RadioGroup","currentValue","selectorOptions","CommentBoxWrapper","FormControlContext","formControlState","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","slot","overridesResolver","styles","ownerState","_extends","colorSecondary","filled","_ref2","_extends2","vars","palette","text","secondary","typography","body1","lineHeight","_defineProperty","formLabelClasses","focused","main","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","disableAnimation","animated","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","element","muiNames","muiName","createChainedFunction","_len","arguments","funcs","_key","func","_len2","args","_key2","apply","this"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/7981.8a6db645.chunk.js b/portal-ui/build/static/js/7981.8a6db645.chunk.js deleted file mode 100644 index 7579519b1..000000000 --- a/portal-ui/build/static/js/7981.8a6db645.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[7981,4882,9581,6662],{3579:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");e.Z=i},20165:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");e.Z=i},45649:function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=t(28610)},93840:function(r,e,t){"use strict";var n=t(72791).createContext(void 0);e.Z=n},76147:function(r,e,t){"use strict";function n(r){var e=r.props,t=r.states,n=r.muiFormControl;return t.reduce((function(r,t){return r[t]=e[t],n&&"undefined"===typeof e[t]&&(r[t]=n[t]),r}),{})}t.d(e,{Z:function(){return n}})},52930:function(r,e,t){"use strict";t.d(e,{Z:function(){return a}});var n=t(72791),o=t(93840);function a(){return n.useContext(o.Z)}},17133:function(r,e,t){"use strict";var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(28182),u=t(94419),l=t(76147),c=t(52930),d=t(14036),f=t(31402),m=t(66934),p=t(10843),Z=t(80184),v=["children","className","color","component","disabled","error","filled","focused","required"],x=(0,m.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return(0,a.Z)({},e.root,"secondary"===t.color&&e.colorSecondary,t.filled&&e.filled)}})((function(r){var e,t=r.theme,o=r.ownerState;return(0,a.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(e={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(e,"&.".concat(p.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(e,"&.".concat(p.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,n.Z)(e,"&.".concat(p.Z.error),{color:(t.vars||t).palette.error.main}),e))})),h=(0,m.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(r,e){return e.asterisk}})((function(r){var e=r.theme;return(0,n.Z)({},"&.".concat(p.Z.error),{color:(e.vars||e).palette.error.main})})),b=i.forwardRef((function(r,e){var t=(0,f.Z)({props:r,name:"MuiFormLabel"}),n=t.children,i=t.className,m=t.component,b=void 0===m?"label":m,k=(0,o.Z)(t,v),w=(0,c.Z)(),y=(0,l.Z)({props:t,muiFormControl:w,states:["color","required","focused","disabled","error","filled"]}),z=(0,a.Z)({},t,{color:y.color||"primary",component:b,disabled:y.disabled,error:y.error,filled:y.filled,focused:y.focused,required:y.required}),C=function(r){var e=r.classes,t=r.color,n=r.focused,o=r.disabled,a=r.error,i=r.filled,s=r.required,l={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",a&&"error"]};return(0,u.Z)(l,p.M,e)}(z);return(0,Z.jsxs)(x,(0,a.Z)({as:b,ownerState:z,className:(0,s.Z)(C.root,i),ref:e},k,{children:[n,y.required&&(0,Z.jsxs)(h,{ownerState:z,"aria-hidden":!0,className:C.asterisk,children:["\u2009","*"]})]}))}));e.Z=b},10843:function(r,e,t){"use strict";t.d(e,{M:function(){return a}});var n=t(75878),o=t(21217);function a(r){return(0,o.Z)("MuiFormLabel",r)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);e.Z=i},30829:function(r,e,t){"use strict";t.d(e,{Z:function(){return w}});var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(94419),u=t(28182),l=t(76147),c=t(52930),d=t(17133),f=t(10843),m=t(31402),p=t(66934),Z=t(75878),v=t(21217);function x(r){return(0,v.Z)("MuiInputLabel",r)}(0,Z.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var h=t(80184),b=["disableAnimation","margin","shrink","variant","className"],k=(0,p.ZP)(d.Z,{shouldForwardProp:function(r){return(0,p.FO)(r)||"classes"===r},name:"MuiInputLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),e.asterisk),e.root,t.formControl&&e.formControl,"small"===t.size&&e.sizeSmall,t.shrink&&e.shrink,!t.disableAnimation&&e.animated,e[t.variant]]}})((function(r){var e=r.theme,t=r.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:e.transitions.create(["color","transform","max-width"],{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut})},"filled"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),w=i.forwardRef((function(r,e){var t=(0,m.Z)({name:"MuiInputLabel",props:r}),n=t.disableAnimation,i=void 0!==n&&n,d=t.shrink,f=t.className,p=(0,o.Z)(t,b),Z=(0,c.Z)(),v=d;"undefined"===typeof v&&Z&&(v=Z.filled||Z.focused||Z.adornedStart);var w=(0,l.Z)({props:t,muiFormControl:Z,states:["size","variant","required"]}),y=(0,a.Z)({},t,{disableAnimation:i,formControl:Z,shrink:v,size:w.size,variant:w.variant,required:w.required}),z=function(r){var e=r.classes,t=r.formControl,n=r.size,o=r.shrink,i={root:["root",t&&"formControl",!r.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",r.variant],asterisk:[r.required&&"asterisk"]},u=(0,s.Z)(i,x,e);return(0,a.Z)({},e,u)}(y);return(0,h.jsx)(k,(0,a.Z)({"data-shrink":v,ownerState:y,ref:e,className:(0,u.Z)(z.root,f)},p,{classes:z}))}))},31260:function(r,e,t){"use strict";var n=t(78949);e.Z=n.Z},28610:function(r,e,t){"use strict";t.r(e),t.d(e,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return u},isMuiElement:function(){return l.Z},ownerDocument:function(){return c.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return m},unstable_ClassNameGenerator:function(){return w},unstable_useEnhancedEffect:function(){return p.Z},unstable_useId:function(){return Z.Z},unsupportedProp:function(){return v},useControlled:function(){return x.Z},useEventCallback:function(){return h.Z},useForkRef:function(){return b.Z},useIsFocusVisible:function(){return k.Z}});var n=t(55902),o=t(14036),a=t(31260),i=t(76189),s=t(83199);var u=function(r,e){return function(){return null}},l=t(19103),c=t(98301),d=t(17602);t(87462);var f=function(r,e){return function(){return null}},m=t(62971).Z,p=t(40162),Z=t(67384);var v=function(r,e,t,n,o){return null},x=t(98278),h=t(89683),b=t(42071),k=t(23031),w={configure:function(r){n.Z.configure(r)}}},19103:function(r,e,t){"use strict";t.d(e,{Z:function(){return o}});var n=t(72791);var o=function(r,e){return n.isValidElement(r)&&-1!==e.indexOf(r.type.muiName)}},78949:function(r,e,t){"use strict";function n(){for(var r=arguments.length,e=new Array(r),t=0;t {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","type","muiName","_len","arguments","length","funcs","Array","_key","func","_len2","args","_key2","apply","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/7981.b08cd322.chunk.js b/portal-ui/build/static/js/7981.b08cd322.chunk.js new file mode 100644 index 000000000..326e4bca8 --- /dev/null +++ b/portal-ui/build/static/js/7981.b08cd322.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[7981,4882,9581],{3579:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");e.Z=i},20165:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");e.Z=i},45649:function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=t(28610)},93840:function(r,e,t){"use strict";var n=t(72791).createContext(void 0);e.Z=n},76147:function(r,e,t){"use strict";function n(r){var e=r.props,t=r.states,n=r.muiFormControl;return t.reduce((function(r,t){return r[t]=e[t],n&&"undefined"===typeof e[t]&&(r[t]=n[t]),r}),{})}t.d(e,{Z:function(){return n}})},52930:function(r,e,t){"use strict";t.d(e,{Z:function(){return a}});var n=t(72791),o=t(93840);function a(){return n.useContext(o.Z)}},17133:function(r,e,t){"use strict";var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(28182),u=t(94419),l=t(76147),c=t(52930),d=t(14036),f=t(31402),m=t(66934),p=t(10843),Z=t(80184),v=["children","className","color","component","disabled","error","filled","focused","required"],x=(0,m.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return(0,a.Z)({},e.root,"secondary"===t.color&&e.colorSecondary,t.filled&&e.filled)}})((function(r){var e,t=r.theme,o=r.ownerState;return(0,a.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(e={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(e,"&.".concat(p.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(e,"&.".concat(p.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,n.Z)(e,"&.".concat(p.Z.error),{color:(t.vars||t).palette.error.main}),e))})),b=(0,m.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(r,e){return e.asterisk}})((function(r){var e=r.theme;return(0,n.Z)({},"&.".concat(p.Z.error),{color:(e.vars||e).palette.error.main})})),h=i.forwardRef((function(r,e){var t=(0,f.Z)({props:r,name:"MuiFormLabel"}),n=t.children,i=t.className,m=t.component,h=void 0===m?"label":m,k=(0,o.Z)(t,v),z=(0,c.Z)(),C=(0,l.Z)({props:t,muiFormControl:z,states:["color","required","focused","disabled","error","filled"]}),w=(0,a.Z)({},t,{color:C.color||"primary",component:h,disabled:C.disabled,error:C.error,filled:C.filled,focused:C.focused,required:C.required}),M=function(r){var e=r.classes,t=r.color,n=r.focused,o=r.disabled,a=r.error,i=r.filled,s=r.required,l={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",a&&"error"]};return(0,u.Z)(l,p.M,e)}(w);return(0,Z.jsxs)(x,(0,a.Z)({as:h,ownerState:w,className:(0,s.Z)(M.root,i),ref:e},k,{children:[n,C.required&&(0,Z.jsxs)(b,{ownerState:w,"aria-hidden":!0,className:M.asterisk,children:["\u2009","*"]})]}))}));e.Z=h},10843:function(r,e,t){"use strict";t.d(e,{M:function(){return a}});var n=t(75878),o=t(21217);function a(r){return(0,o.Z)("MuiFormLabel",r)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);e.Z=i},30829:function(r,e,t){"use strict";t.d(e,{Z:function(){return z}});var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(94419),u=t(28182),l=t(76147),c=t(52930),d=t(17133),f=t(10843),m=t(31402),p=t(66934),Z=t(75878),v=t(21217);function x(r){return(0,v.Z)("MuiInputLabel",r)}(0,Z.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var b=t(80184),h=["disableAnimation","margin","shrink","variant","className"],k=(0,p.ZP)(d.Z,{shouldForwardProp:function(r){return(0,p.FO)(r)||"classes"===r},name:"MuiInputLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),e.asterisk),e.root,t.formControl&&e.formControl,"small"===t.size&&e.sizeSmall,t.shrink&&e.shrink,!t.disableAnimation&&e.animated,e[t.variant]]}})((function(r){var e=r.theme,t=r.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:e.transitions.create(["color","transform","max-width"],{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut})},"filled"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),z=i.forwardRef((function(r,e){var t=(0,m.Z)({name:"MuiInputLabel",props:r}),n=t.disableAnimation,i=void 0!==n&&n,d=t.shrink,f=t.className,p=(0,o.Z)(t,h),Z=(0,c.Z)(),v=d;"undefined"===typeof v&&Z&&(v=Z.filled||Z.focused||Z.adornedStart);var z=(0,l.Z)({props:t,muiFormControl:Z,states:["size","variant","required"]}),C=(0,a.Z)({},t,{disableAnimation:i,formControl:Z,shrink:v,size:z.size,variant:z.variant,required:z.required}),w=function(r){var e=r.classes,t=r.formControl,n=r.size,o=r.shrink,i={root:["root",t&&"formControl",!r.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",r.variant],asterisk:[r.required&&"asterisk"]},u=(0,s.Z)(i,x,e);return(0,a.Z)({},e,u)}(C);return(0,b.jsx)(k,(0,a.Z)({"data-shrink":v,ownerState:C,ref:e,className:(0,u.Z)(w.root,f)},p,{classes:w}))}))},31260:function(r,e,t){"use strict";var n=t(78949);e.Z=n.Z},28610:function(r,e,t){"use strict";t.r(e),t.d(e,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return u},isMuiElement:function(){return l.Z},ownerDocument:function(){return c.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return m},unstable_ClassNameGenerator:function(){return z},unstable_useEnhancedEffect:function(){return p.Z},unstable_useId:function(){return Z.Z},unsupportedProp:function(){return v},useControlled:function(){return x.Z},useEventCallback:function(){return b.Z},useForkRef:function(){return h.Z},useIsFocusVisible:function(){return k.Z}});var n=t(55902),o=t(14036),a=t(31260),i=t(76189),s=t(83199);var u=function(r,e){return function(){return null}},l=t(19103),c=t(98301),d=t(17602);t(87462);var f=function(r,e){return function(){return null}},m=t(62971).Z,p=t(40162),Z=t(67384);var v=function(r,e,t,n,o){return null},x=t(98278),b=t(89683),h=t(42071),k=t(23031),z={configure:function(r){n.Z.configure(r)}}},19103:function(r,e,t){"use strict";t.d(e,{Z:function(){return o}});var n=t(72791);var o=function(r,e){return n.isValidElement(r)&&-1!==e.indexOf(r.type.muiName)}},64836:function(r){r.exports=function(r){return r&&r.__esModule?r:{default:r}},r.exports.__esModule=!0,r.exports.default=r.exports}}]); +//# sourceMappingURL=7981.b08cd322.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/7981.b08cd322.chunk.js.map b/portal-ui/build/static/js/7981.b08cd322.chunk.js.map new file mode 100644 index 000000000..d4da87ad9 --- /dev/null +++ b/portal-ui/build/static/js/7981.b08cd322.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/7981.b08cd322.chunk.js","mappings":"0HAEIA,EAAyBC,EAAQ,OAIrCC,EAAQ,OAAU,EAClB,IAAIC,EAAiBH,EAAuBC,EAAQ,QAChDG,EAAcH,EAAQ,OACtBI,GAAW,EAAIF,EAAeG,UAAuB,EAAIF,EAAYG,KAAK,OAAQ,CACpFC,EAAG,sNACD,gBACJN,EAAQ,EAAUG,C,yCCVdL,EAAyBC,EAAQ,OAIrCC,EAAQ,OAAU,EAClB,IAAIC,EAAiBH,EAAuBC,EAAQ,QAChDG,EAAcH,EAAQ,OACtBI,GAAW,EAAIF,EAAeG,UAAuB,EAAIF,EAAYG,KAAK,OAAQ,CACpFC,EAAG,8fACD,iBACJN,EAAQ,EAAUG,C,qCCVlBI,OAAOC,eAAeR,EAAS,aAAc,CAC3CS,OAAO,IAETF,OAAOC,eAAeR,EAAS,UAAW,CACxCU,YAAY,EACZC,IAAK,WACH,OAAOC,EAAOC,aAChB,IAEF,IAAID,EAASb,EAAQ,M,yCCPfe,E,SAAkCC,mBAAoBC,GAI5D,K,qCCRe,SAASC,EAAgBC,GAIrC,IAHDC,EAAKD,EAALC,MACAC,EAAMF,EAANE,OACAC,EAAcH,EAAdG,eAEA,OAAOD,EAAOE,QAAO,SAACC,EAAKC,GAOzB,OANAD,EAAIC,GAASL,EAAMK,GACfH,GAC0B,qBAAjBF,EAAMK,KACfD,EAAIC,GAASH,EAAeG,IAGzBD,CACT,GAAG,CAAC,EACN,C,8HCZe,SAASE,IACtB,OAAOV,EAAAA,WAAiBD,EAAAA,EAC1B,C,uLCFMY,EAAY,CAAC,WAAY,YAAa,QAAS,YAAa,WAAY,QAAS,SAAU,UAAW,YA4B/FC,GAAgBC,EAAAA,EAAAA,IAAO,QAAS,CAC3CC,KAAM,eACNC,KAAM,OACNC,kBAAmB,SAAAb,EAEhBc,GAAW,IADZC,EAAUf,EAAVe,WAEA,OAAOC,EAAAA,EAAAA,GAAS,CAAC,EAAGF,EAAOG,KAA2B,cAArBF,EAAWG,OAAyBJ,EAAOK,eAAgBJ,EAAWK,QAAUN,EAAOM,OAC1H,GAP2BV,EAQ1B,SAAAW,GAAA,IAAAC,EACDC,EAAKF,EAALE,MACAR,EAAUM,EAAVN,WAAU,OACNC,EAAAA,EAAAA,GAAS,CACbE,OAAQK,EAAMC,MAAQD,GAAOE,QAAQC,KAAKC,WACzCJ,EAAMK,WAAWC,OAAKP,EAAA,CACvBQ,WAAY,WACZC,QAAS,EACTC,SAAU,aAAUC,EAAAA,EAAAA,GAAAX,EAAA,KAAAY,OACdC,EAAAA,EAAiBC,SAAY,CACjClB,OAAQK,EAAMC,MAAQD,GAAOE,QAAQV,EAAWG,OAAOmB,QACxDJ,EAAAA,EAAAA,GAAAX,EAAA,KAAAY,OACKC,EAAAA,EAAiBG,UAAa,CAClCpB,OAAQK,EAAMC,MAAQD,GAAOE,QAAQC,KAAKY,YAC3CL,EAAAA,EAAAA,GAAAX,EAAA,KAAAY,OACKC,EAAAA,EAAiBI,OAAU,CAC/BrB,OAAQK,EAAMC,MAAQD,GAAOE,QAAQc,MAAMF,OAC5Cf,GACD,IACIkB,GAAoB9B,EAAAA,EAAAA,IAAO,OAAQ,CACvCC,KAAM,eACNC,KAAM,WACNC,kBAAmB,SAACZ,EAAOa,GAAM,OAAKA,EAAO2B,QAAQ,GAH7B/B,EAIvB,SAAAgC,GAAA,IACDnB,EAAKmB,EAALnB,MAAK,OAAAU,EAAAA,EAAAA,GAAA,QAAAC,OAECC,EAAAA,EAAiBI,OAAU,CAC/BrB,OAAQK,EAAMC,MAAQD,GAAOE,QAAQc,MAAMF,MAC5C,IAEGM,EAAyB9C,EAAAA,YAAiB,SAAmB+C,EAASC,GAC1E,IAAM5C,GAAQ6C,EAAAA,EAAAA,GAAc,CAC1B7C,MAAO2C,EACPjC,KAAM,iBAGJoC,EAGE9C,EAHF8C,SACAC,EAEE/C,EAFF+C,UAASC,EAEPhD,EADFiD,UAAAA,OAAS,IAAAD,EAAG,QAAOA,EAErBE,GAAQC,EAAAA,EAAAA,GAA8BnD,EAAOO,GACzCL,GAAiBI,EAAAA,EAAAA,KACjB8C,GAAMtD,EAAAA,EAAAA,GAAiB,CAC3BE,MAAAA,EACAE,eAAAA,EACAD,OAAQ,CAAC,QAAS,WAAY,UAAW,WAAY,QAAS,YAE1Da,GAAaC,EAAAA,EAAAA,GAAS,CAAC,EAAGf,EAAO,CACrCiB,MAAOmC,EAAInC,OAAS,UACpBgC,UAAAA,EACAZ,SAAUe,EAAIf,SACdC,MAAOc,EAAId,MACXnB,OAAQiC,EAAIjC,OACZgB,QAASiB,EAAIjB,QACbkB,SAAUD,EAAIC,WAEVC,EAhFkB,SAAAxC,GACxB,IACEwC,EAOExC,EAPFwC,QACArC,EAMEH,EANFG,MACAkB,EAKErB,EALFqB,QACAE,EAIEvB,EAJFuB,SACAC,EAGExB,EAHFwB,MACAnB,EAEEL,EAFFK,OACAkC,EACEvC,EADFuC,SAEIE,EAAQ,CACZvC,KAAM,CAAC,OAAQ,QAAFiB,QAAUuB,EAAAA,EAAAA,GAAWvC,IAAUoB,GAAY,WAAYC,GAAS,QAASnB,GAAU,SAAUgB,GAAW,UAAWkB,GAAY,YAC5Ib,SAAU,CAAC,WAAYF,GAAS,UAElC,OAAOmB,EAAAA,EAAAA,GAAeF,EAAOG,EAAAA,EAA4BJ,EAC3D,CAiEkBK,CAAkB7C,GAClC,OAAoB8C,EAAAA,EAAAA,MAAMpD,GAAeO,EAAAA,EAAAA,GAAS,CAChD8C,GAAIZ,EACJnC,WAAYA,EACZiC,WAAWe,EAAAA,EAAAA,GAAKR,EAAQtC,KAAM+B,GAC9BH,IAAKA,GACJM,EAAO,CACRJ,SAAU,CAACA,EAAUM,EAAIC,WAAyBO,EAAAA,EAAAA,MAAMrB,EAAmB,CACzEzB,WAAYA,EACZ,eAAe,EACfiC,UAAWO,EAAQd,SACnBM,SAAU,CAAC,SAAU,UAG3B,IAsDA,K,+FChKO,SAASY,EAA2B/C,GACzC,OAAOoD,EAAAA,EAAAA,GAAqB,eAAgBpD,EAC9C,CACA,IAAMuB,GAAmB8B,EAAAA,EAAAA,GAAuB,eAAgB,CAAC,OAAQ,iBAAkB,UAAW,WAAY,QAAS,SAAU,WAAY,aACjJ,K,kOCJO,SAASC,EAA4BtD,GAC1C,OAAOoD,EAAAA,EAAAA,GAAqB,gBAAiBpD,EAC/C,EAC0BqD,EAAAA,EAAAA,GAAuB,gBAAiB,CAAC,OAAQ,UAAW,WAAY,QAAS,WAAY,WAAY,cAAe,YAAa,SAAU,WAAY,WAAY,SAAU,aAA3M,I,WCHMzD,EAAY,CAAC,mBAAoB,SAAU,SAAU,UAAW,aA6BhE2D,GAAiBzD,EAAAA,EAAAA,IAAOiC,EAAAA,EAAW,CACvCyB,kBAAmB,SAAAC,GAAI,OAAIC,EAAAA,EAAAA,IAAsBD,IAAkB,YAATA,CAAkB,EAC5E1D,KAAM,gBACNC,KAAM,OACNC,kBAAmB,SAACZ,EAAOa,GACzB,IACEC,EACEd,EADFc,WAEF,MAAO,EAAAkB,EAAAA,EAAAA,GAAA,SAAAC,OACEC,EAAAA,EAAiBM,UAAa3B,EAAO2B,UAC3C3B,EAAOG,KAAMF,EAAWwD,aAAezD,EAAOyD,YAAiC,UAApBxD,EAAWyD,MAAoB1D,EAAO2D,UAAW1D,EAAW2D,QAAU5D,EAAO4D,QAAS3D,EAAW4D,kBAAoB7D,EAAO8D,SAAU9D,EAAOC,EAAW8D,SACxN,GAXqBnE,EAYpB,SAAAW,GAAA,IACDE,EAAKF,EAALE,MACAR,EAAUM,EAAVN,WAAU,OACNC,EAAAA,EAAAA,GAAS,CACb8D,QAAS,QACTC,gBAAiB,WACjBC,WAAY,SACZC,SAAU,SACVC,aAAc,WACdC,SAAU,QACTpE,EAAWwD,aAAe,CAC3BvC,SAAU,WACVoD,KAAM,EACNC,IAAK,EAELC,UAAW,+BACU,UAApBvE,EAAWyD,MAAoB,CAEhCc,UAAW,+BACVvE,EAAW2D,QAAU,CACtBY,UAAW,mCACXP,gBAAiB,WACjBI,SAAU,SACRpE,EAAW4D,kBAAoB,CACjCY,WAAYhE,EAAMiE,YAAYC,OAAO,CAAC,QAAS,YAAa,aAAc,CACxEC,SAAUnE,EAAMiE,YAAYE,SAASC,QACrCC,OAAQrE,EAAMiE,YAAYI,OAAOC,WAEX,WAAvB9E,EAAW8D,UAAwB7D,EAAAA,EAAAA,GAAS,CAK7C8E,OAAQ,EACRC,cAAe,OACfT,UAAW,iCACXH,SAAU,qBACW,UAApBpE,EAAWyD,MAAoB,CAChCc,UAAW,kCACVvE,EAAW2D,SAAU1D,EAAAA,EAAAA,GAAS,CAC/BgF,WAAY,OACZD,cAAe,OACfT,UAAW,mCACXH,SAAU,qBACW,UAApBpE,EAAWyD,MAAoB,CAChCc,UAAW,sCACe,aAAvBvE,EAAW8D,UAA0B7D,EAAAA,EAAAA,GAAS,CAEjD8E,OAAQ,EACRC,cAAe,OACfT,UAAW,iCACXH,SAAU,qBACW,UAApBpE,EAAWyD,MAAoB,CAChCc,UAAW,iCACVvE,EAAW2D,QAAU,CACtBsB,WAAY,OACZD,cAAe,OAGfZ,SAAU,oBACVG,UAAW,sCACV,IA2GH,EA1GgCzF,EAAAA,YAAiB,SAAoB+C,EAASC,GAC5E,IAAM5C,GAAQ6C,EAAAA,EAAAA,GAAc,CAC1BnC,KAAM,gBACNV,MAAO2C,IAETqD,EAIMhG,EAHF0E,iBAAAA,OAAgB,IAAAsB,GAAQA,EAChBC,EAENjG,EAFFyE,OACA1B,EACE/C,EADF+C,UAEFG,GAAQC,EAAAA,EAAAA,GAA8BnD,EAAOO,GACzCL,GAAiBI,EAAAA,EAAAA,KACnBmE,EAASwB,EACS,qBAAXxB,GAA0BvE,IACnCuE,EAASvE,EAAeiB,QAAUjB,EAAeiC,SAAWjC,EAAegG,cAE7E,IAAM9C,GAAMtD,EAAAA,EAAAA,GAAiB,CAC3BE,MAAAA,EACAE,eAAAA,EACAD,OAAQ,CAAC,OAAQ,UAAW,cAExBa,GAAaC,EAAAA,EAAAA,GAAS,CAAC,EAAGf,EAAO,CACrC0E,iBAAAA,EACAJ,YAAapE,EACbuE,OAAAA,EACAF,KAAMnB,EAAImB,KACVK,QAASxB,EAAIwB,QACbvB,SAAUD,EAAIC,WAEVC,EAxHkB,SAAAxC,GACxB,IACEwC,EAOExC,EAPFwC,QACAgB,EAMExD,EANFwD,YACAC,EAKEzD,EALFyD,KACAE,EAIE3D,EAJF2D,OAKIlB,EAAQ,CACZvC,KAAM,CAAC,OAAQsD,GAAe,eAF5BxD,EAHF4D,kBAKkE,WAAYD,GAAU,SAAmB,UAATF,GAAoB,YAFpHzD,EAFF8D,SAKApC,SAAU,CAHR1B,EADFuC,UAIuB,aAEnB8C,GAAkB1C,EAAAA,EAAAA,GAAeF,EAAOU,EAA6BX,GAC3E,OAAOvC,EAAAA,EAAAA,GAAS,CAAC,EAAGuC,EAAS6C,EAC/B,CAwGkBxC,CAAkB7C,GAClC,OAAoBsF,EAAAA,EAAAA,KAAKlC,GAAgBnD,EAAAA,EAAAA,GAAS,CAChD,cAAe0D,EACf3D,WAAYA,EACZ8B,IAAKA,EACLG,WAAWe,EAAAA,EAAAA,GAAKR,EAAQtC,KAAM+B,IAC7BG,EAAO,CACRI,QAASA,IAEb,G,oDC9IA,IAAe+C,EAAqB,C,kyBCApC,MCDe,SAA4BC,EAAWC,GAElD,OAAO,kBAAM,IAAI,CAUrB,E,0CCXA,MCAe,SAA4BC,EAAsBC,GAE7D,OAAO,kBAAM,IAAI,CAoBrB,ECtBA,E,SAAqB,E,sBCArB,MCDe,SAAyBzG,EAAO0G,EAAUC,EAAeC,EAAUC,GAE9E,OAAO,IAOX,E,4CCWaC,EAA8B,CACzCC,UAAW,SAAAC,GAITC,EAAAA,EAAmBF,UAAUC,EAC/B,E,oFCzBF,MCAe,SAAsBE,EAASC,GAC5C,OAAoBvH,EAAAA,eAAqBsH,KAAwD,IAA5CC,EAASC,QAAQF,EAAQG,KAAKC,QACrF,C,oBCEAC,EAAO1I,QALP,SAAgC2I,GAC9B,OAAOA,GAAOA,EAAIC,WAAaD,EAAM,CACnC,QAAWA,EAEf,EACyCD,EAAO1I,QAAQ4I,YAAa,EAAMF,EAAO1I,QAAiB,QAAI0I,EAAO1I,O","sources":["../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","type","muiName","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/8045.312c59ab.chunk.js b/portal-ui/build/static/js/8045.312c59ab.chunk.js deleted file mode 100644 index 3b55b5f99..000000000 --- a/portal-ui/build/static/js/8045.312c59ab.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[8045],{68045:function(e,t,n){n.r(t),n.d(t,{default:function(){return ce}});var i=n(93433),a=n(29439),r=n(1413),s=n(72791),o=n(57689),l=n(29945),c=n(40986),d=n(61889),u=n(23814),h=n(4942),x=n(26181),m=n.n(x),p=n(11135),f=n(20890),g=n(64554),b=n(45248),j=n(34866),v=n(11087),Z=n(56087),C=n(38442),k=n(28182),y=n(72455),S=n(80184),N=(0,y.Z)((function(e){return(0,p.Z)({root:{marginBottom:30,padding:20,color:e.palette.primary.main,border:"#E5E5E5 1px solid",borderRadius:2,textDecoration:"none","&:hover":{backgroundColor:"#fafafa"},"& .min-icon":{height:14,width:14},"& .MuiTypography-body2":{fontSize:14},"& .MuiCardHeader-content":{wordWrap:"break-word",overflowWrap:"break-word",wordBreak:"break-all",font:"normal normal bold 24px/27px Inter",color:e.palette.primary.main,"& .MuiTypography-root":{fontSize:19,fontWeight:"bold","& .min-icon":{position:"relative",top:4,marginRight:4,height:"24px !important"}}},"& .MuiCardHeader-root":{background:"transparent linear-gradient(0deg, #EEF1F44E 0%, #FFFFFF 100%) 0% 0% no-repeat padding-box"}},checkBoxElement:{width:32,height:32,float:"left",overflow:"hidden","& div":{position:"absolute"}},manageButton:{borderRadius:4,width:111,color:e.palette.grey[700],textTransform:"unset",fontSize:12,fontWeight:"normal","& .MuiButton-endIcon":{"& .min-icon":{fontSize:18}}},metric:{"& .min-icon":{color:"#000000",width:13,marginRight:5}},metricLabel:{fontSize:14,fontWeight:"bold",color:"#000000"},metricText:{fontSize:24,fontWeight:"bold"},unit:{fontSize:12,fontWeight:"normal"},bucketName:{padding:0,margin:0,fontSize:22},bucketIcon:{"& .min-icon":{height:48,width:48,color:e.palette.primary.main}},bucketInfo:{display:"flex","@media (max-width: 900px)":{flexFlow:"column-reverse"}},bucketStats:{marginTop:15,borderTop:"1px solid rgb(234,234,234, .7)",paddingTop:14},bucketActionButtons:{display:"flex",alignItems:"center",justifyContent:"flex-end","& button":{marginLeft:8},"@media (max-width: 900px)":{marginTop:"-33px"}},disabled:{backgroundColor:"red"}})})),w=function(e){var t=e.bucket,n=e.onSelect,i=e.selected,a=e.bulkSelect,r=(e.noManage,N()),c=(0,o.s0)(),u=(0,b.ae)("".concat(t.size)||"0"),x=u.split(" ")[0],p=u.split(" ")[1],y=m()(t,"details.quota.quota","0"),w=(0,b.Am)(y,!0,!1),F=(0,C.F)(t.name,Z.D[Z.EI.BUCKET_ADMIN])&&!1;return(0,S.jsxs)(d.ZP,{container:!0,className:(0,k.Z)(r.root,"bucket-item",(0,h.Z)({},r.disabled,F)),onClick:function(){c("/buckets/".concat(t.name,"/admin"))},sx:{cursor:"pointer"},id:"manageBucket-".concat(t.name),children:[(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsxs)(d.ZP,{container:!0,justifyContent:"space-between",children:[(0,S.jsx)(d.ZP,{item:!0,xs:12,sm:7,children:(0,S.jsxs)(d.ZP,{container:!0,children:[(0,S.jsxs)(d.ZP,{item:!0,xs:12,children:[a&&(0,S.jsx)("div",{className:r.checkBoxElement,onClick:function(e){e.stopPropagation()},children:(0,S.jsx)(j.Z,{checked:i,id:"select-".concat(t.name),label:"",name:"select-".concat(t.name),onChange:function(e){n(e)},value:t.name})}),(0,S.jsxs)("h1",{className:r.bucketName,children:[t.name," ",F]})]}),(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsxs)(d.ZP,{container:!0,className:r.bucketInfo,children:[(0,S.jsx)(d.ZP,{item:!0,xs:12,sm:!0,paddingRight:5,children:(0,S.jsxs)(f.Z,{variant:"body2",children:["Created:"," ",t.creation_date?new Date(t.creation_date).toString():"n/a"]})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,sm:!0,children:(0,S.jsxs)(f.Z,{variant:"body2",children:["Access: ",function(e){var t,n,i,a,r,s;return null===(t=e.rw_access)||void 0===t||!t.read||null!==(n=e.rw_access)&&void 0!==n&&n.write?null!==(i=e.rw_access)&&void 0!==i&&i.read||null===(a=e.rw_access)||void 0===a||!a.write?null!==(r=e.rw_access)&&void 0!==r&&r.read&&null!==(s=e.rw_access)&&void 0!==s&&s.write?"R/W":"":"W":"R"}(t)]})})]})})]})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,sm:5,className:r.bucketActionButtons,children:(0,S.jsx)(g.Z,{display:{xs:"none",sm:"block"},children:(0,S.jsx)("div",{style:{marginBottom:10}})})})]})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,className:r.bucketStats,children:(0,S.jsxs)(d.ZP,{container:!0,justifyContent:"flex-start",spacing:4,children:[(0,S.jsx)(d.ZP,{item:!0,className:r.bucketIcon,children:(0,S.jsx)(v.rU,{to:"/buckets/".concat(t.name,"/admin"),children:(0,S.jsx)(l.wNb,{})})}),(0,S.jsxs)(d.ZP,{item:!0,textAlign:"left",className:r.metric,children:[(0,S.jsx)(l.rHZ,{}),(0,S.jsx)("span",{className:r.metricLabel,children:"Usage"}),(0,S.jsxs)("div",{className:r.metricText,children:[x,(0,S.jsx)("span",{className:r.unit,children:p}),"0"!==y&&(0,S.jsxs)(s.Fragment,{children:[" ","/ ",w.total,(0,S.jsx)("span",{className:r.unit,children:w.unit})]})]})]}),(0,S.jsxs)(d.ZP,{item:!0,textAlign:"left",className:r.metric,children:[(0,S.jsx)(l.xpX,{}),(0,S.jsx)("span",{className:r.metricLabel,children:"Objects"}),(0,S.jsx)("div",{className:r.metricText,children:t.objects?(0,b.CE)(t.objects):0})]})]})})]})},F=n(25787),P=n(20068),E=n(15146),L=n(98946),B=n(21435),R=n(56028),T=n(64163),_=(0,F.Z)((function(e){return(0,p.Z)({wizardStepContainer:{display:"flex",flexDirection:"column",flex:1},wizardComponent:{overflowY:"auto",marginBottom:10,height:"calc(100vh - 100px - 80px)",minHeight:400,flex:1,width:"100%"},wizardModal:{overflowY:"auto",marginBottom:10,height:"calc(100vh - 515px)"},buttonsContainer:{display:"flex",flexDirection:"row",justifyContent:"flex-start",padding:"10px 0",borderTop:"#EAEAEA 1px solid","& button":{marginLeft:10},"&.forModal":{paddingBottom:0}},buttonInnerContainer:{width:"100%",display:"flex",justifyContent:"flex-end",marginRight:15}})}))((function(e){var t=e.classes,n=e.page,i=e.pageChange,a=e.loadingStep,r=e.forModal;return(0,S.jsxs)("div",{className:t.wizardStepContainer,children:[(0,S.jsx)("div",{className:r?t.wizardModal:t.wizardComponent,children:n.componentRender}),a&&(0,S.jsx)("div",{children:(0,S.jsx)(c.Z,{})}),(0,S.jsx)("div",{className:"".concat(t.buttonsContainer," ").concat(r?"forModal":""),children:(0,S.jsx)("div",{className:t.buttonInnerContainer,children:n.buttons.map((function(e){return e.componentRender?e.componentRender:(0,S.jsx)(l.zxk,{id:"wizard-button-"+e.label,variant:"regular",onClick:function(){!function(e){switch(e.type){case"next":i("++");break;case"back":i("--");break;case"to":i(e.toPage||0)}e.action&&e.action(i)}(e)},disabled:!e.enabled,label:e.label},"button-".concat(n.label,"-").concat(e.label))}))})})]})})),I=n(90493),M=n(15021),z=n(49900),A=(0,F.Z)((function(e){return(0,p.Z)({wizFromContainer:{},wizFromModal:{position:"relative"},modalWizardSteps:{padding:5,borderBottom:"#eaeaea 1px solid","& ul":{padding:0,marginTop:0,display:"flex",justifyContent:"space-evenly","& li":{listStyle:"lower-roman","&::marker":{paddingLeft:15}}}},buttonList:{backgroundColor:"transparent",border:"none",cursor:"pointer","&:not(:disabled):hover":{textDecoration:"underline"},"&:selected, &:active, &:focus, &:focus:active":{border:"none",outline:0,boxShadow:"none"}},paddedContentGrid:{marginTop:8,padding:"0 10px",minHeight:400},stepsLabel:{fontSize:20,color:"#393939",fontWeight:600,margin:"15px 12px","&.stepsModalTitle":{textAlign:"center",width:"100%",marginTop:0,marginBottom:10}},stepsMasterContainer:{position:"sticky",top:0,backgroundColor:"#FFFFFF",width:"100%",maxHeight:90},verticalSteps:{borderRight:"1px solid #E5E5E5",background:"#F8F8F8"},stepsContainer:{paddingTop:0,"& .MuiButtonBase-root.Mui-selected":{background:"#E5E5E5"}},stepItem:{minHeight:60,borderBottom:"1px solid #E5E5E5","&:hover":{background:"rgba(247,247,247,0.7)"}}})}))((function(e){var t=e.classes,n=e.wizardSteps,i=e.loadingStep,r=e.forModal,o=(0,s.useState)(0),l=(0,a.Z)(o,2),c=l[0],u=l[1],h=function(e){var t=n.length-1;if("++"===e){var i=c+1;i>t&&(i=t),u(i)}if("--"===e){var a=c-1;a<0&&(a=0),u(a)}if("number"===typeof e){var r=e;e<0&&(r=0),e>t&&(r=t),u(r)}};if(0===n.length)return null;return(0,S.jsxs)(d.ZP,{container:!0,className:r?t.wizFromModal:t.wizFromContainer,children:[r?(0,S.jsx)(s.Fragment,{children:(0,S.jsxs)("div",{className:t.stepsMasterContainer,children:[(0,S.jsx)("div",{className:"".concat(t.stepsLabel," stepsModalTitle"),children:"Steps"}),(0,S.jsx)("div",{className:t.modalWizardSteps,children:(0,S.jsx)("ul",{children:n.map((function(e,n){return(0,S.jsx)("li",{children:(0,S.jsx)("button",{onClick:function(){return h(n)},disabled:n>c,className:t.buttonList,children:e.label})},"wizard-".concat(n.toString()))}))})})]})}):(0,S.jsx)(s.Fragment,{children:(0,S.jsx)(d.ZP,{item:!0,xs:12,sm:2,md:2,lg:2,xl:2,className:t.verticalSteps,children:(0,S.jsx)(s.Fragment,{children:(0,S.jsx)(I.Z,{component:"nav",dense:!0,classes:{root:t.stepsContainer},children:n.map((function(e,n){return(0,S.jsx)(M.ZP,{id:"wizard-step-"+e.label.toLowerCase().replaceAll(" ","-"),button:!0,disableRipple:!0,onClick:function(){return h(n)},selected:c===n,classes:{root:t.stepItem},children:(0,S.jsx)(z.Z,{primary:e.label})},"wizard-".concat(n.toString()))}))})})})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,sm:r?12:10,md:r?12:10,lg:r?12:10,xl:r?12:10,className:r?"":t.paddedContentGrid,children:(0,S.jsx)(_,{page:n[c],pageChange:h,loadingStep:i,forModal:r})})]})})),K=n(81159),D=n(90673),U=n(84741),W=n(87995),O=n(81551),H=n(31776),Y=n(82342),q=(0,F.Z)((function(e){return(0,p.Z)((0,r.Z)((0,r.Z)({remoteBucketList:{display:"grid",gridTemplateColumns:"auto auto 45px",alignItems:"center",justifyContent:"stretch"},errorIcon:{color:"#C72C48"},successIcon:{color:"#42C91A"},hide:{opacity:0,transitionDuration:"0.3s"}},u.oO),u.AK))}))((function(e){var t=e.open,n=e.closeModalAndRefresh,r=e.classes,o=e.buckets,l=(0,O.TL)(),c=(0,s.useState)([]),u=(0,a.Z)(c,2),h=u[0],x=u[1],p=(0,s.useState)(!1),f=(0,a.Z)(p,2),g=f[0],j=f[1],v=(0,s.useState)(!1),Z=(0,a.Z)(v,2),C=Z[0],k=Z[1],y=(0,s.useState)(""),N=(0,a.Z)(y,2),w=N[0],F=N[1],_=(0,s.useState)(""),I=(0,a.Z)(_,2),M=I[0],z=I[1],q=(0,s.useState)(""),G=(0,a.Z)(q,2),V=G[0],Q=G[1],X=(0,s.useState)(""),$=(0,a.Z)(X,2),J=$[0],ee=$[1],te=(0,s.useState)(!0),ne=(0,a.Z)(te,2),ie=ne[0],ae=ne[1],re=(0,s.useState)("async"),se=(0,a.Z)(re,2),oe=se[0],le=se[1],ce=(0,s.useState)("100"),de=(0,a.Z)(ce,2),ue=de[0],he=de[1],xe=(0,s.useState)("Gi"),me=(0,a.Z)(xe,2),pe=me[0],fe=me[1],ge=(0,s.useState)("60"),be=(0,a.Z)(ge,2),je=be[0],ve=be[1],Ze=(0,s.useState)([]),Ce=(0,a.Z)(Ze,2),ke=Ce[0],ye=Ce[1],Se=(0,s.useState)([]),Ne=(0,a.Z)(Se,2),we=Ne[0],Fe=Ne[1],Pe=(0,s.useState)([]),Ee=(0,a.Z)(Pe,2),Le=Ee[0],Be=Ee[1],Re=we.map((function(e){return{label:e,value:e}}));(0,s.useEffect)((function(){if(0===ke.length){var e=[],t=[];o.forEach((function(n){e.push(n),t.push("")})),ye(t),x(e)}}),[o,ke.length]);var Te=function(e){var t=e.errString;switch(t){case"":return(0,S.jsx)("div",{className:r.successIcon,children:(0,S.jsx)(L.Z,{})});case"n/a":return null;default:if(t)return(0,S.jsx)("div",{className:r.errorIcon,children:(0,S.jsx)(P.Z,{title:t,placement:"top-start",children:(0,S.jsx)(E.Z,{})})})}return null},_e=function(e,t){var n=(0,i.Z)(ke);n[e]=t,ye(n)},Ie=function(e){var t=(0,i.Z)(h),n=(0,i.Z)(ke);null===e||void 0===e||e.forEach((function(e){var i=m()(e,"errorString","");if(!i||""===i){var a=t.indexOf(e.originBucket||"");t.splice(a,1),n.splice(a,1)}})),x(t),ye(n)};return(0,S.jsx)(R.Z,{modalOpen:t,onClose:function(){n(!1)},title:"Set Multiple Bucket Replication",children:(0,S.jsx)(A,{loadingStep:g||C,wizardSteps:[{label:"Remote Configuration",componentRender:(0,S.jsxs)(s.Fragment,{children:[(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(T.Z,{label:"Local Buckets to replicate",content:h.join(", ")})}),(0,S.jsx)("h4",{children:"Remote Endpoint Configuration"}),(0,S.jsx)("span",{className:r.descriptionText,children:"Please avoid the use of root credentials for this feature"}),(0,S.jsx)("br",{}),(0,S.jsx)("br",{}),(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(B.Z,{id:"accessKey",name:"accessKey",onChange:function(e){F(e.target.value)},label:"Access Key",value:w})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(B.Z,{id:"secretKey",name:"secretKey",onChange:function(e){z(e.target.value)},label:"Secret Key",value:M})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(B.Z,{id:"targetURL",name:"targetURL",onChange:function(e){Q(e.target.value)},placeholder:"play.min.io:9000",label:"Target URL",value:V})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(K.Z,{checked:ie,id:"useTLS",name:"useTLS",label:"Use TLS",onChange:function(e){ae(e.target.checked)},value:"yes"})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(B.Z,{id:"region",name:"region",onChange:function(e){ee(e.target.value)},label:"Region",value:J})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(D.Z,{id:"replication_mode",name:"replication_mode",onChange:function(e){le(e.target.value)},label:"Replication Mode",value:oe,options:[{label:"Asynchronous",value:"async"},{label:"Synchronous",value:"sync"}]})}),"async"===oe&&(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(B.Z,{type:"number",id:"bandwidth_scalar",name:"bandwidth_scalar",onChange:function(e){e.target.validity.valid&&he(e.target.value)},label:"Bandwidth",value:ue,min:"0",pattern:"[0-9]*",overlayObject:(0,S.jsx)(U.Z,{id:"quota_unit",onUnitChange:function(e){fe(e)},unitSelected:pe,unitsList:(0,b.zQ)(["Ki"]),disabled:!1})})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(B.Z,{id:"healthCheck",name:"healthCheck",onChange:function(e){ve(e.target.value)},label:"Health Check Duration",value:je})})]}),buttons:[{type:"custom",label:"Next",enabled:!C,action:function(e){var t={accessKey:w,secretKey:M,targetURL:V,useTLS:ie};k(!0),H.h.listExternalBuckets.listExternalBuckets(t).then((function(t){var n=m()(t.data,"buckets",[]);if(n&&n.length>0){var i=n.map((function(e){return e.name}));Fe(i)}e("++"),k(!1)})).catch((function(e){k(!1),l((0,W.zb)((0,Y.g)(e.error)))}))}}]},{label:"Bucket Assignments",componentRender:(0,S.jsxs)(s.Fragment,{children:[(0,S.jsx)("h3",{children:"Remote Bucket Assignments"}),(0,S.jsx)("span",{className:r.descriptionText,children:"Please select / type the desired remote bucket were you want the local data to be replicated."}),(0,S.jsx)("div",{className:r.remoteBucketList,children:h.map((function(e,t){var n,i=function(e){if(Le&&Le.length>0){var t=Le.find((function(t){return t.originBucket===e}));if(t)return m()(t,"errorString","")||""}return"n/a"}(e);return(0,S.jsxs)(s.Fragment,{children:[(0,S.jsx)("div",{className:""===i?r.hide:"",children:e}),(0,S.jsx)("div",{className:""===i?r.hide:"",children:(n=t,we.length>0?(0,S.jsx)(s.Fragment,{children:(0,S.jsx)(D.Z,{label:"",id:"assign-bucket-".concat(n),name:"assign-bucket-".concat(n),value:ke[n],onChange:function(e){_e(n,e.target.value)},options:Re,disabled:g})}):(0,S.jsx)(s.Fragment,{children:(0,S.jsx)(B.Z,{id:"assign-bucket-".concat(n),name:"assign-bucket-".concat(n),label:"",onChange:function(e){_e(n,e.target.value)},value:ke[n],disabled:g})}))}),(0,S.jsx)("div",{className:""===i?r.hide:"",children:Le&&Le.length>0&&(0,S.jsx)(Te,{errString:i})})]},"buckets-assignation-".concat(t.toString(),"-").concat(e))}))})]}),buttons:[{type:"back",label:"Back",enabled:!0},{type:"next",label:"Create",enabled:!g,action:function(){j(!0);var e=h.map((function(e,t){return{originBucket:e,destinationBucket:ke[t]}})),t="".concat(ie?"https://":"http://").concat(V),i=parseInt(je),a={accessKey:w,secretKey:M,targetURL:t,region:J,bucketsRelation:e,syncMode:oe,bandwidth:"async"===oe?parseInt((0,b.Pw)(ue,pe,!0)):0,healthCheckPeriod:i};H.h.bucketsReplication.setMultiBucketReplication(a).then((function(e){j(!1);var t=e.data.replicationState;Be(t);var i=null===t||void 0===t?void 0:t.filter((function(e){return e.errorString&&""!==e.errorString}));0===(null===i||void 0===i?void 0:i.length)?n(!0):setTimeout((function(){Ie(t)}),500)})).catch((function(e){j(!1),l((0,W.zb)((0,Y.g)(e.error)))}))}}]}],forModal:!0})})})),G=n(59114),V=n(66514),Q=n(83679),X=n(17420),$=(0,F.Z)((function(e){return(0,p.Z)((0,r.Z)((0,r.Z)((0,r.Z)((0,r.Z)({resultGrid:{display:"grid",gridTemplateColumns:"45px auto",alignItems:"center",justifyContent:"stretch"},errorIcon:{paddingTop:5,color:"#C72C48"},successIcon:{paddingTop:5,color:"#42C91A"}},u.bK),u.ID),u.DF),u.QV))}))((function(e){var t,n=e.open,i=e.closeModalAndRefresh,o=e.classes,l=e.buckets,c=(0,O.TL)(),u=(0,s.useState)(!1),h=(0,a.Z)(u,2),x=h[0],p=h[1],f=(0,s.useState)(!0),g=(0,a.Z)(f,2),b=g[0],j=g[1],v=(0,s.useState)([]),Z=(0,a.Z)(v,2),C=Z[0],k=Z[1],y=(0,s.useState)(""),N=(0,a.Z)(y,2),w=N[0],F=N[1],_=(0,s.useState)(""),I=(0,a.Z)(_,2),M=I[0],z=I[1],U=(0,s.useState)(""),q=(0,a.Z)(U,2),G=q[0],V=q[1],$=(0,s.useState)(""),J=(0,a.Z)($,2),ee=J[0],te=J[1],ne=(0,s.useState)(!1),ie=(0,a.Z)(ne,2),ae=ie[0],re=ie[1],se=(0,s.useState)("0"),oe=(0,a.Z)(se,2),le=oe[0],ce=oe[1],de=(0,s.useState)("0"),ue=(0,a.Z)(de,2),he=ue[0],xe=ue[1],me=(0,s.useState)("expiry"),pe=(0,a.Z)(me,2),fe=pe[0],ge=pe[1],be=(0,s.useState)("0"),je=(0,a.Z)(be,2),ve=je[0],Ze=je[1],Ce=(0,s.useState)("0"),ke=(0,a.Z)(Ce,2),ye=ke[0],Se=ke[1],Ne=(0,s.useState)(!1),we=(0,a.Z)(Ne,2),Fe=we[0],Pe=we[1],Ee=(0,s.useState)(null),Le=(0,a.Z)(Ee,2),Be=Le[0],Re=Le[1];(0,s.useEffect)((function(){b&&H.h.admin.tiersList().then((function(e){var t=m()(e.data,"items",[]);if(null!==t&&t.length>=1){var n=t.map((function(e){var t=e.type,n=m()(e,"".concat(t,".name"),"");return{label:n,value:n}}));k(n),n.length>0&&V(n[0].value)}j(!1)})).catch((function(e){j(!1),c((0,W.zb)((0,Y.g)(e.error)))}))}),[b,c]),(0,s.useEffect)((function(){var e=!0;"expiry"!==fe&&""===G&&(e=!1),Pe(e)}),[fe,ve,ye,G]);var Te=function(e){var t=e.errString;switch(t){case"":return(0,S.jsx)("div",{className:o.successIcon,children:(0,S.jsx)(L.Z,{})});case"n/a":return null;default:if(t)return(0,S.jsx)("div",{className:o.errorIcon,children:(0,S.jsx)(P.Z,{title:t,placement:"top-start",children:(0,S.jsx)(E.Z,{})})})}return null};return(0,S.jsx)(R.Z,{modalOpen:n,onClose:function(){i(!1)},title:"Set Lifecycle to multiple buckets",children:(0,S.jsx)(A,{loadingStep:x||b,wizardSteps:[{label:"Lifecycle Configuration",componentRender:(0,S.jsxs)(s.Fragment,{children:[(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(T.Z,{label:"Local Buckets to replicate",content:l.join(", ")})}),(0,S.jsx)("h4",{children:"Remote Endpoint Configuration"}),(0,S.jsx)(d.ZP,{container:!0,children:(0,S.jsxs)(d.ZP,{item:!0,xs:12,className:o.formScrollable,children:[(0,S.jsx)(d.ZP,{item:!0,xs:12,className:o.formFieldRow,children:(0,S.jsxs)("fieldset",{className:o.fieldGroup,children:[(0,S.jsx)("legend",{className:o.descriptionText,children:"Lifecycle Configuration"}),(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(Q.Z,{currentSelection:fe,id:"quota_type",name:"quota_type",label:"ILM Rule",onChange:function(e){ge(e.target.value)},selectorOptions:[{value:"expiry",label:"Expiry"},{value:"transition",label:"Transition"}]})}),"expiry"===fe?(0,S.jsxs)(s.Fragment,{children:[(0,S.jsx)(d.ZP,{item:!0,xs:12,className:o.formFieldRow,children:(0,S.jsx)(B.Z,{type:"number",id:"expiry_days",name:"expiry_days",onChange:function(e){Ze(e.target.value)},label:"Expiry Days",value:ve,min:"0"})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,className:o.formFieldRow,children:(0,S.jsx)(B.Z,{type:"number",id:"noncurrentversion_expiration_days",name:"noncurrentversion_expiration_days",onChange:function(e){ce(e.target.value)},label:"Non-current Expiration Days",value:le,min:"0"})})]}):(0,S.jsxs)(s.Fragment,{children:[(0,S.jsx)(d.ZP,{item:!0,xs:12,className:o.formFieldRow,children:(0,S.jsx)(B.Z,{type:"number",id:"transition_days",name:"transition_days",onChange:function(e){Se(e.target.value)},label:"Transition Days",value:ye,min:"0"})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,className:o.formFieldRow,children:(0,S.jsx)(B.Z,{type:"number",id:"noncurrentversion_transition_days",name:"noncurrentversion_transition_days",onChange:function(e){xe(e.target.value)},label:"Non-current Transition Days",value:he,min:"0"})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,className:o.formFieldRow,children:(0,S.jsx)(B.Z,{id:"noncurrentversion_t_SC",name:"noncurrentversion_t_SC",onChange:function(e){te(e.target.value)},placeholder:"Set Non-current Version Transition Storage Class",label:"Non-current Version Transition Storage Class",value:ee})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,className:o.formFieldRow,children:(0,S.jsx)(D.Z,{label:"Storage Class",id:"storage_class",name:"storage_class",value:G,onChange:function(e){V(e.target.value)},options:C})})]})]})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,className:o.formFieldRow,children:(0,S.jsxs)("fieldset",{className:o.fieldGroup,children:[(0,S.jsx)("legend",{className:o.descriptionText,children:"File Configuration"}),(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(B.Z,{id:"prefix",name:"prefix",onChange:function(e){F(e.target.value)},label:"Prefix",value:w})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(X.Z,{name:"tags",label:"Tags",elements:M,onChange:function(e){z(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})}),(0,S.jsx)(d.ZP,{item:!0,xs:12,children:(0,S.jsx)(K.Z,{value:"expired_delete_marker",id:"expired_delete_marker",name:"expired_delete_marker",checked:ae,onChange:function(e){re(e.target.checked)},label:"Expired Object Delete Marker"})})]})})]})})]}),buttons:[{type:"custom",label:"Create Rules",enabled:!b&&!x&&Fe,action:function(e){var t={};if("expiry"===fe){var n={expiry_days:parseInt(ve)};t=(0,r.Z)((0,r.Z)({},n),{},{noncurrentversion_expiration_days:parseInt(le)})}else{var i={transition_days:parseInt(ye)};t=(0,r.Z)((0,r.Z)({},i),{},{noncurrentversion_transition_days:parseInt(he),noncurrentversion_transition_storage_class:ee,storage_class:G})}var a=(0,r.Z)({buckets:l,type:fe,prefix:w,tags:M,expired_object_delete_marker:ae},t);H.h.buckets.addMultiBucketLifecycle(a).then((function(t){p(!1),Re(t.data),e("++")})).catch((function(e){p(!1),c((0,W.zb)((0,Y.g)(e.error)))}))}}]},{label:"Results",componentRender:(0,S.jsxs)(s.Fragment,{children:[(0,S.jsx)("h3",{children:"Multi Bucket lifecycle Assignments Results"}),(0,S.jsx)(d.ZP,{container:!0,children:(0,S.jsxs)(d.ZP,{item:!0,xs:12,className:o.formScrollable,children:[(0,S.jsx)("h4",{children:"Buckets Results"}),null===Be||void 0===Be||null===(t=Be.results)||void 0===t?void 0:t.map((function(e){return(0,S.jsxs)("div",{className:o.resultGrid,children:[Te({errString:e.error||""}),(0,S.jsx)("span",{children:e.bucketName})]})}))]})})]}),buttons:[{type:"custom",label:"Done",enabled:!x,action:function(){return i(!0)}}]}],forModal:!0})})})),J=n(49535),ee=n(78687),te=n(46078),ne=n(73996),ie=n(27454),ae=n(81806),re=n(54756),se=n(47974),oe=n(99670),le=(0,y.Z)((function(e){return(0,r.Z)((0,r.Z)({bucketList:{marginTop:25,height:"calc(100vh - 211px)","&.isEmbedded":{height:"calc(100vh - 128px)"}},searchField:(0,r.Z)((0,r.Z)({},u.qg.searchField),{},{minWidth:380,"@media (max-width: 900px)":{minWidth:220}})},u.Bz),u.OR)})),ce=function(){var e=(0,O.TL)(),t=(0,o.s0)(),n=le(),r=(0,s.useState)([]),u=(0,a.Z)(r,2),h=u[0],x=u[1],m=(0,s.useState)(!0),p=(0,a.Z)(m,2),f=p[0],g=p[1],b=(0,s.useState)(""),j=(0,a.Z)(b,2),v=j[0],k=j[1],y=(0,s.useState)([]),N=(0,a.Z)(y,2),F=N[0],P=N[1],E=(0,s.useState)(!1),L=(0,a.Z)(E,2),B=L[0],R=L[1],T=(0,s.useState)(!1),_=(0,a.Z)(T,2),I=_[0],M=_[1],z=(0,s.useState)(!1),A=(0,a.Z)(z,2),K=A[0],D=A[1],U=(0,s.useState)(!1),Q=(0,a.Z)(U,2),X=Q[0],ce=Q[1],de=(0,ee.v9)(te.$4),ue=!(null===de||void 0===de||!de.includes("object-browser-only"));(0,s.useEffect)((function(){e((0,W.Sc)("ob_bucket_list"))}),[e]),(0,s.useEffect)((function(){if(f){g(!0),H.h.buckets.listBuckets().then((function(t){t.data?(g(!1),x(t.data.buckets||[]),e((0,re.Cn)(!0))):t.error&&(g(!1),e((0,W.Ih)((0,Y.g)(t.error))))}))}}),[f,e]);var he=h.filter((function(e){return""===v||e.name.indexOf(v)>=0})),xe=h.length>0,me=function(e){var t=e.target,n=t.value,a=t.checked,r=(0,i.Z)(F);return a?r.push(n):r=r.filter((function(e){return e!==n})),P(r),r};(0,s.useEffect)((function(){var e=!1;F.forEach((function(t){(0,J.Z)(t,Z.D[Z.EI.BUCKET_LIFECYCLE],!0)?D(!0):e=!0})),D(!e)}),[F]);var pe=(0,J.Z)("*",[Z.Ft.S3_CREATE_BUCKET]),fe=(0,J.Z)("*",[Z.Ft.S3_LIST_BUCKET,Z.Ft.S3_ALL_LIST_BUCKET]);return(0,S.jsxs)(s.Fragment,{children:[B&&(0,S.jsx)(q,{open:B,buckets:F,closeModalAndRefresh:function(e){R(!1),e&&P([])}}),I&&(0,S.jsx)($,{buckets:F,closeModalAndRefresh:function(e){M(!1),e&&P([])},open:I}),!ue&&(0,S.jsx)(se.Z,{label:"Buckets",actions:(0,S.jsx)(oe.Z,{})}),(0,S.jsxs)(l.Xgh,{children:[(0,S.jsxs)(d.ZP,{item:!0,xs:12,className:n.actionsTray,display:"flex",children:[ue&&(0,S.jsx)(d.ZP,{item:!0,xs:!0,children:(0,S.jsx)(ne.Z,{marginRight:15,marginTop:10})}),xe&&(0,S.jsx)(G.Z,{onChange:k,placeholder:"Search Buckets",overrideClass:n.searchField,value:v}),(0,S.jsxs)(d.ZP,{item:!0,xs:12,display:"flex",alignItems:"center",justifyContent:"flex-end",sx:{"& button":{marginLeft:"8px"}},children:[!ue&&(0,S.jsxs)(s.Fragment,{children:[(0,S.jsx)(ie.Z,{tooltip:xe?X?"Unselect Buckets":"Select Multiple Buckets":"",children:(0,S.jsx)(l.zxk,{id:"multiple-bucket-seection",onClick:function(){ce(!X),P([])},icon:(0,S.jsx)(l.amE,{}),variant:X?"callAction":"regular",disabled:!xe})}),X&&(0,S.jsx)(ie.Z,{tooltip:xe?F.length===he.length?"Unselect All Buckets":"Select All Buckets":"",children:(0,S.jsx)(l.zxk,{id:"select-all-buckets",onClick:function(){if(F.length!==he.length){var e=he.map((function(e){return e.name}));P(e)}else P([])},icon:(0,S.jsx)(l.QQb,{}),variant:"regular"})}),(0,S.jsx)(ie.Z,{tooltip:xe?K?0===F.length?X?"Please select at least one bucket on which to configure Lifecycle":"Use the Select Multiple Buckets button to choose buckets on which to configure Lifecycle":"Set Lifecycle":(0,Z.MK)(Z.D[Z.EI.BUCKET_LIFECYCLE],"configure lifecycle for the selected buckets"):"",children:(0,S.jsx)(l.zxk,{id:"set-lifecycle",onClick:function(){M(!0)},icon:(0,S.jsx)(l.QIv,{}),variant:"regular",disabled:0===F.length||!K})}),(0,S.jsx)(ie.Z,{tooltip:xe?0===F.length?X?"Please select at least one bucket on which to configure Replication":"Use the Select Multiple Buckets button to choose buckets on which to configure Replication":"Set Replication":"",children:(0,S.jsx)(l.zxk,{id:"set-replication",onClick:function(){R(!0)},icon:(0,S.jsx)(l.D6F,{}),variant:"regular",disabled:0===F.length})})]}),(0,S.jsx)(ie.Z,{tooltip:"Refresh",children:(0,S.jsx)(l.zxk,{id:"refresh-buckets",onClick:function(){g(!0)},icon:(0,S.jsx)(l.DuK,{}),variant:"regular"})}),!ue&&(0,S.jsx)(ie.Z,{tooltip:pe?"":(0,Z.MK)([Z.Ft.S3_CREATE_BUCKET],"create a bucket"),children:(0,S.jsx)(l.zxk,{id:"create-bucket",onClick:function(){t(Z.gA.ADD_BUCKETS)},icon:(0,S.jsx)(l.dtP,{}),variant:"callAction",disabled:!pe,label:"Create Bucket"})})]})]}),f&&(0,S.jsx)(c.Z,{}),!f&&(0,S.jsxs)(d.ZP,{item:!0,xs:12,className:"".concat(n.bucketList," ").concat(ue?"isEmbedded":""),children:[0!==he.length&&(0,S.jsx)(V.Z,{rowRenderFunction:function(e){var t=he[e]||null;return t?(0,S.jsx)(w,{bucket:t,onSelect:me,selected:F.includes(t.name),bulkSelect:X,noManage:ue}):null},totalItems:he.length}),0===he.length&&""!==v&&(0,S.jsx)(d.ZP,{container:!0,justifyContent:"center",alignContent:"center",alignItems:"center",children:(0,S.jsx)(d.ZP,{item:!0,xs:8,children:(0,S.jsx)(l.KfX,{iconComponent:(0,S.jsx)(l.wNb,{}),title:"No Results",help:(0,S.jsx)(s.Fragment,{children:"No buckets match the filtering condition"})})})}),!xe&&(0,S.jsx)(d.ZP,{container:!0,justifyContent:"center",alignContent:"center",alignItems:"center",children:(0,S.jsx)(d.ZP,{item:!0,xs:8,children:(0,S.jsx)(l.KfX,{iconComponent:(0,S.jsx)(l.wNb,{}),title:"Buckets",help:(0,S.jsxs)(s.Fragment,{children:["MinIO uses buckets to organize objects. A bucket is similar to a folder or directory in a filesystem, where each bucket can hold an arbitrary number of objects.",(0,S.jsx)("br",{}),fe?"":(0,S.jsxs)(s.Fragment,{children:[(0,S.jsx)("br",{}),(0,Z.MK)([Z.Ft.S3_LIST_BUCKET,Z.Ft.S3_ALL_LIST_BUCKET],"view the buckets on this server"),(0,S.jsx)("br",{})]}),(0,S.jsxs)(C.s,{scopes:[Z.Ft.S3_CREATE_BUCKET],resource:Z.C3,children:[(0,S.jsx)("br",{}),"To get started,\xa0",(0,S.jsx)(ae.Z,{onClick:function(){t(Z.gA.ADD_BUCKETS)},children:"Create a Bucket."})]})]})})})})]})]})]})}},34866:function(e,t,n){var i=n(1413),a=n(72791),r=n(61889),s=n(94454),o=n(30829),l=n(20068),c=n(11135),d=n(25787),u=n(23814),h=n(29945),x=n(80184);t.Z=(0,d.Z)((function(e){return(0,c.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},u.YI),u.Hr),u.lM),{},{fieldContainer:(0,i.Z)((0,i.Z)({},u.YI.fieldContainer),{},{display:"flex",justifyContent:"flex-start",alignItems:"center",margin:"15px 0",marginBottom:0,flexBasis:"initial",flexWrap:"nowrap"}),noTopMargin:{marginTop:0}}))}))((function(e){var t=e.label,n=e.onChange,i=e.value,c=e.id,d=e.name,u=e.checked,m=void 0!==u&&u,p=e.disabled,f=void 0!==p&&p,g=e.noTopMargin,b=void 0!==g&&g,j=e.tooltip,v=void 0===j?"":j,Z=e.overrideLabelClasses,C=void 0===Z?"":Z,k=e.overrideCheckboxStyles,y=e.classes,S=e.className;return(0,x.jsx)(a.Fragment,{children:(0,x.jsxs)(r.ZP,{item:!0,xs:12,className:"".concat(y.fieldContainer," ").concat(b?y.noTopMargin:""," ").concat(S||""),children:[(0,x.jsx)("div",{children:(0,x.jsx)(s.Z,{name:d,id:c,value:i,color:"primary",inputProps:{"aria-label":"secondary checkbox"},checked:m,onChange:n,checkedIcon:(0,x.jsx)("span",{className:y.checkedIcon}),icon:(0,x.jsx)("span",{className:y.unCheckedIcon}),disabled:f,disableRipple:!0,disableFocusRipple:!0,focusRipple:!1,centerRipple:!1,disableTouchRipple:!0,style:k||{}})}),""!==t&&(0,x.jsxs)(o.Z,{htmlFor:c,className:"".concat(y.noMinWidthLabel," ").concat(C),children:[(0,x.jsx)("span",{children:t}),""!==v&&(0,x.jsx)("div",{className:y.tooltipContainer,children:(0,x.jsx)(l.Z,{title:v,placement:"top-start",children:(0,x.jsx)("div",{className:y.tooltip,children:(0,x.jsx)(h.byK,{})})})})]})]})})}))},81159:function(e,t,n){var i=n(4942),a=n(1413),r=n(72791),s=n(11135),o=n(25787),l=n(9955),c=n(30829),d=n(20068),u=n(20890),h=n(61889),x=n(23814),m=n(29945),p=n(28182),f=n(80184),g=(0,o.Z)((function(e){return{root:{width:50,height:24,padding:0,margin:0},switchBase:{padding:1,"&$checked":{transform:"translateX(24px)",color:e.palette.common.white,"& + $track":{backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,border:"none"}},"&$focusVisible $thumb":{color:"#4CCB92",border:"6px solid #fff"}},thumb:{width:22,height:22,backgroundColor:"#FAFAFA",border:"2px solid #FFFFFF",marginLeft:1},track:{borderRadius:12,backgroundColor:"#E2E2E2",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,transition:e.transitions.create(["background-color","border"])},checked:{},focusVisible:{},switchContainer:{display:"flex",alignItems:"center",justifyContent:"flex-end"}}}))(l.Z);t.Z=(0,o.Z)((function(e){return(0,s.Z)((0,a.Z)((0,a.Z)({indicatorLabelOn:{fontWeight:"bold",color:"#081C42 !important"},indicatorLabel:{fontSize:12,color:"#E2E2E2",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"},tooltip:{fontSize:16}},x.OR),x.YI))}))((function(e){var t=e.label,n=void 0===t?"":t,s=e.onChange,o=e.value,l=e.id,x=e.name,b=e.checked,j=void 0!==b&&b,v=e.disabled,Z=void 0!==v&&v,C=e.switchOnly,k=void 0!==C&&C,y=e.tooltip,S=void 0===y?"":y,N=e.description,w=void 0===N?"":N,F=e.classes,P=e.indicatorLabels,E=e.extraInputProps,L=void 0===E?{}:E,B=(0,f.jsxs)(r.Fragment,{children:[!k&&(0,f.jsx)("span",{className:(0,p.Z)(F.indicatorLabel,(0,i.Z)({},F.indicatorLabelOn,!j)),children:P&&P.length>1?P[1]:"OFF"}),(0,f.jsx)(g,{checked:j,onChange:s,color:"primary",name:x,inputProps:(0,a.Z)({"aria-label":"primary checkbox"},L),disabled:Z,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:o,id:l}),!k&&(0,f.jsx)("span",{className:(0,p.Z)(F.indicatorLabel,(0,i.Z)({},F.indicatorLabelOn,j)),children:P?P[0]:"ON"})]});return k?B:(0,f.jsx)("div",{children:(0,f.jsxs)(h.ZP,{container:!0,alignItems:"center",children:[(0,f.jsx)(h.ZP,{item:!0,xs:12,sm:8,md:8,children:""!==n&&(0,f.jsxs)(c.Z,{htmlFor:l,className:F.inputLabel,children:[(0,f.jsx)("span",{children:n}),""!==S&&(0,f.jsx)("div",{className:F.tooltipContainer,children:(0,f.jsx)(d.Z,{title:S,placement:"top-start",children:(0,f.jsx)("div",{className:F.tooltip,children:(0,f.jsx)(m.byK,{})})})})]})}),(0,f.jsx)(h.ZP,{item:!0,xs:12,sm:""!==n?4:12,md:""!==n?4:12,textAlign:"right",justifyContent:"end",className:F.switchContainer,children:B}),""!==w&&(0,f.jsx)(h.ZP,{item:!0,xs:12,textAlign:"left",children:(0,f.jsx)(u.Z,{component:"p",className:F.fieldDescription,children:w})})]})})}))},21435:function(e,t,n){var i=n(29439),a=n(1413),r=n(72791),s=n(27391),o=n(61889),l=n(30829),c=n(20068),d=n(13400),u=n(20165),h=n(3579),x=n(11135),m=n(72455),p=n(25787),f=n(23814),g=n(29945),b=n(28182),j=n(80184),v=(0,m.Z)((function(e){return(0,x.Z)((0,a.Z)({},f.gM))}));function Z(e){var t=v();return(0,j.jsx)(s.Z,(0,a.Z)({InputProps:{classes:t}},e))}t.Z=(0,p.Z)((function(e){return(0,x.Z)((0,a.Z)((0,a.Z)((0,a.Z)({},f.YI),f.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var t=e.label,n=e.onChange,s=e.value,x=e.id,m=e.name,p=e.type,f=void 0===p?"text":p,v=e.autoComplete,C=void 0===v?"off":v,k=e.disabled,y=void 0!==k&&k,S=e.multiline,N=void 0!==S&&S,w=e.tooltip,F=void 0===w?"":w,P=e.index,E=void 0===P?0:P,L=e.error,B=void 0===L?"":L,R=e.required,T=void 0!==R&&R,_=e.placeholder,I=void 0===_?"":_,M=e.min,z=e.max,A=e.overlayId,K=e.overlayIcon,D=void 0===K?null:K,U=e.overlayObject,W=void 0===U?null:U,O=e.extraInputProps,H=void 0===O?{}:O,Y=e.overlayAction,q=e.noLabelMinWidth,G=void 0!==q&&q,V=e.pattern,Q=void 0===V?"":V,X=e.autoFocus,$=void 0!==X&&X,J=e.classes,ee=e.className,te=void 0===ee?"":ee,ne=e.onKeyPress,ie=e.onFocus,ae=e.onPaste,re=(0,a.Z)({"data-index":E},H),se=(0,r.useState)(!1),oe=(0,i.Z)(se,2),le=oe[0],ce=oe[1];"number"===f&&M&&(re.min=M),"number"===f&&z&&(re.max=z),""!==Q&&(re.pattern=Q);var de=D,ue=f;return"password"===f&&null===D&&(de=le?(0,j.jsx)(u.Z,{}):(0,j.jsx)(h.Z,{}),ue=le?"text":"password"),(0,j.jsx)(r.Fragment,{children:(0,j.jsxs)(o.ZP,{container:!0,className:(0,b.Z)(""!==te?te:"",""!==B?J.errorInField:J.inputBoxContainer),children:[""!==t&&(0,j.jsxs)(l.Z,{htmlFor:x,className:G?J.noMinWidthLabel:J.inputLabel,children:[(0,j.jsxs)("span",{children:[t,T?"*":""]}),""!==F&&(0,j.jsx)("div",{className:J.tooltipContainer,children:(0,j.jsx)(c.Z,{title:F,placement:"top-start",children:(0,j.jsx)("div",{className:J.tooltip,children:(0,j.jsx)(g.byK,{})})})})]}),(0,j.jsxs)("div",{className:J.textBoxContainer,children:[(0,j.jsx)(Z,{id:x,name:m,fullWidth:!0,value:s,autoFocus:$,disabled:y,onChange:n,type:ue,multiline:N,autoComplete:C,inputProps:re,error:""!==B,helperText:B,placeholder:I,className:J.inputRebase,onKeyPress:ne,onFocus:ie,onPaste:ae}),de&&(0,j.jsx)("div",{className:"".concat(J.overlayAction," ").concat(""!==t?"withLabel":""),children:(0,j.jsx)(d.Z,{onClick:Y?function(){Y()}:function(){return ce(!le)},id:A,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:de})}),W&&(0,j.jsx)("div",{className:"".concat(J.overlayAction," ").concat(""!==t?"withLabel":""),children:W})]})]})})}))},84741:function(e,t,n){var i=n(29439),a=n(72791),r=n(11135),s=n(25787),o=n(71715),l=n(77865),c=n(80184);t.Z=(0,s.Z)((function(e){return(0,r.Z)({buttonTrigger:{border:"#F0F2F2 1px solid",borderRadius:3,color:"#838383",backgroundColor:"#fff",fontSize:12}})}))((function(e){var t=e.classes,n=e.id,r=e.unitSelected,s=e.unitsList,d=e.disabled,u=void 0!==d&&d,h=e.onUnitChange,x=a.useState(null),m=(0,i.Z)(x,2),p=m[0],f=m[1],g=Boolean(p),b=function(e){f(null),""!==e&&h&&h(e)};return(0,c.jsxs)(a.Fragment,{children:[(0,c.jsx)("button",{id:"".concat(n,"-button"),"aria-controls":"".concat(n,"-menu"),"aria-haspopup":"true","aria-expanded":g?"true":void 0,onClick:function(e){f(e.currentTarget)},className:t.buttonTrigger,disabled:u,type:"button",children:r}),(0,c.jsx)(o.Z,{id:"".concat(n,"-menu"),"aria-labelledby":"".concat(n,"-button"),anchorEl:p,open:g,onClose:function(){b("")},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:s.map((function(e){return(0,c.jsx)(l.Z,{onClick:function(){return b(e.value)},children:e.label},"itemUnit-".concat(e.value,"-").concat(e.label))}))})]})}))},64163:function(e,t,n){var i=n(1413),a=n(72791),r=n(61889),s=n(11135),o=n(25787),l=n(23814),c=n(80184);t.Z=(0,o.Z)((function(e){return(0,s.Z)((0,i.Z)({},l.xx))}))((function(e){var t=e.classes,n=e.label,i=void 0===n?"":n,s=e.content,o=e.multiLine,l=void 0!==o&&o,d=e.actionButton;return(0,c.jsx)(a.Fragment,{children:(0,c.jsxs)(r.ZP,{className:t.prefinedContainer,children:[""!==i&&(0,c.jsx)(r.ZP,{item:!0,xs:12,className:t.predefinedTitle,children:i}),(0,c.jsxs)(r.ZP,{item:!0,xs:12,className:"".concat(t.predefinedList," ").concat(d?t.includesActionButton:""),children:[(0,c.jsx)(r.ZP,{item:!0,xs:12,className:l?t.innerContentMultiline:t.innerContent,children:s}),d&&(0,c.jsx)("div",{className:t.overlayShareOption,children:d})]})]})})}))},17420:function(e,t,n){var i=n(93433),a=n(29439),r=n(1413),s=n(72791),o=n(26181),l=n.n(o),c=n(48573),d=n.n(c),u=n(11135),h=n(25787),x=n(61889),m=n(77961),p=n(30829),f=n(20068),g=n(23814),b=n(21435),j=n(29945),v=n(80184);t.Z=(0,h.Z)((function(e){return(0,u.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},g.YI),g.Hr),{},{inputWithBorder:{border:"1px solid #EAEAEA",padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},lineInputBoxes:{display:"flex",marginBottom:10},queryDiv:{alignSelf:"center",margin:"0 4px",fontWeight:600}}))}))((function(e){var t=e.elements,n=e.name,r=e.label,o=e.tooltip,c=void 0===o?"":o,u=e.keyPlaceholder,h=void 0===u?"":u,g=e.valuePlaceholder,Z=void 0===g?"":g,C=e.onChange,k=e.withBorder,y=void 0!==k&&k,S=e.classes,N=(0,s.useState)([""]),w=(0,a.Z)(N,2),F=w[0],P=w[1],E=(0,s.useState)([""]),L=(0,a.Z)(E,2),B=L[0],R=L[1],T=(0,s.createRef)();(0,s.useEffect)((function(){if(1===F.length&&""===F[0]&&1===B.length&&""===B[0]&&t&&""!==t){var e=t.split("&"),n=[],i=[];e.forEach((function(e){var t=e.split("=");2===t.length&&(n.push(t[0]),i.push(t[1]))})),n.push(""),i.push(""),P(n),R(i)}}),[F,B,t]),(0,s.useEffect)((function(){var e=T.current;e&&F.length>1&&e.scrollIntoView(!1)}),[F]);var _=(0,s.useRef)(!0);(0,s.useLayoutEffect)((function(){_.current?_.current=!1:z()}),[F,B]);var I=function(e){e.persist();var t=(0,i.Z)(F),n=l()(e.target,"dataset.index","0");t[parseInt(n)]=e.target.value,P(t)},M=function(e){e.persist();var t=(0,i.Z)(B),n=l()(e.target,"dataset.index","0");t[parseInt(n)]=e.target.value,R(t)},z=d()((function(){var e="";F.forEach((function(t,n){if(F[n]&&B[n]){var i="".concat(t,"=").concat(B[n]);0!==n&&(i="&".concat(i)),e="".concat(e).concat(i)}})),C(e)}),500),A=B.map((function(e,t){return(0,v.jsxs)(x.ZP,{item:!0,xs:12,className:S.lineInputBoxes,children:[(0,v.jsx)(b.Z,{id:"".concat(n,"-key-").concat(t.toString()),label:"",name:"".concat(n,"-").concat(t.toString()),value:F[t],onChange:I,index:t,placeholder:h}),(0,v.jsx)("span",{className:S.queryDiv,children:":"}),(0,v.jsx)(b.Z,{id:"".concat(n,"-value-").concat(t.toString()),label:"",name:"".concat(n,"-").concat(t.toString()),value:B[t],onChange:M,index:t,placeholder:Z,overlayIcon:t===B.length-1?(0,v.jsx)(j.dtP,{}):null,overlayAction:function(){!function(){if(""!==F[F.length-1].trim()&&""!==B[B.length-1].trim()){var e=(0,i.Z)(F),t=(0,i.Z)(B);e.push(""),t.push(""),P(e),R(t)}}()}})]},"query-pair-".concat(n,"-").concat(t.toString()))}));return(0,v.jsx)(s.Fragment,{children:(0,v.jsxs)(x.ZP,{item:!0,xs:12,className:S.fieldContainer,children:[(0,v.jsxs)(p.Z,{className:S.inputLabel,children:[(0,v.jsx)("span",{children:r}),""!==c&&(0,v.jsx)("div",{className:S.tooltipContainer,children:(0,v.jsx)(f.Z,{title:c,placement:"top-start",children:(0,v.jsx)(m.Z,{className:S.tooltip})})})]}),(0,v.jsxs)(x.ZP,{item:!0,xs:12,className:"".concat(y?S.inputWithBorder:""),children:[A,(0,v.jsx)("div",{ref:T})]})]})})}))},83679:function(e,t,n){var i=n(4942),a=n(1413),r=(n(72791),n(28182)),s=n(61889),o=n(10765),l=n(85523),c=n(61419),d=n(30829),u=n(20068),h=n(11135),x=n(25787),m=n(72455),p=n(23814),f=n(29945),g=n(80184),b=(0,m.Z)((0,a.Z)({root:{"&:hover":{backgroundColor:"transparent"}}},p.FU)),j=function(e){var t=b();return(0,g.jsx)(c.Z,(0,a.Z)({className:t.root,disableRipple:!0,color:"default",checkedIcon:(0,g.jsx)("span",{className:t.radioSelectedIcon}),icon:(0,g.jsx)("span",{className:t.radioUnselectedIcon})},e))};t.Z=(0,x.Z)((function(e){return(0,h.Z)((0,a.Z)((0,a.Z)((0,a.Z)({},p.YI),p.Hr),{},{optionLabel:{"&.Mui-disabled":{"& .MuiFormControlLabel-label":{color:"#9c9c9c"}},"&:last-child":{marginRight:0},"& .MuiFormControlLabel-label":{fontSize:12,color:"#07193E"}},checkedOption:{"& .MuiFormControlLabel-label":{fontSize:12,color:"#07193E",fontWeight:700}}}))}))((function(e){var t=e.selectorOptions,n=void 0===t?[]:t,a=e.currentSelection,c=e.label,h=e.id,x=e.name,m=e.onChange,p=e.tooltip,b=void 0===p?"":p,v=e.disableOptions,Z=void 0!==v&&v,C=e.classes,k=e.displayInColumn,y=void 0!==k&&k;return(0,g.jsxs)(s.ZP,{container:!0,spacing:1,children:[(0,g.jsx)(s.ZP,{item:!0,fontSize:60,children:(0,g.jsxs)(d.Z,{htmlFor:h,className:C.inputLabel,children:[(0,g.jsx)("span",{children:c}),""!==b&&(0,g.jsx)("div",{className:C.tooltipContainer,children:(0,g.jsx)(u.Z,{title:b,placement:"top-start",children:(0,g.jsx)("div",{children:(0,g.jsx)(f.byK,{})})})})]})}),(0,g.jsx)(s.ZP,{item:!0,children:(0,g.jsx)(o.Z,{"aria-label":h,id:h,name:x,value:a,onChange:m,row:!y,style:{display:"flex",textAlign:"right"},children:n.map((function(e){return(0,g.jsx)(l.Z,{value:e.value,control:(0,g.jsx)(j,{}),label:e.label,disabled:Z,className:(0,r.Z)(C.optionLabel,(0,i.Z)({},C.checkedOption,e.value===a))},"rd-".concat(x,"-").concat(e.value))}))})})]})}))},90673:function(e,t,n){var i=n(1413),a=n(72791),r=n(61889),s=n(886),o=n(30829),l=n(20068),c=n(68096),d=n(58406),u=n(77865),h=n(11135),x=n(25787),m=n(23814),p=n(29945),f=n(80184),g=(0,x.Z)((function(e){return(0,h.Z)({root:{height:38,lineHeight:1,"label + &":{marginTop:e.spacing(3)}},input:{height:38,position:"relative",color:"#07193E",fontSize:13,fontWeight:600,padding:"8px 20px 10px 10px",border:"#e5e5e5 1px solid",borderRadius:4,display:"flex",alignItems:"center","&:hover":{borderColor:"#393939"},"&:focus":{backgroundColor:"#fff"}}})}))(s.ZP);t.Z=(0,x.Z)((function(e){return(0,h.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},m.YI),m.Hr),{},{fieldContainer:{display:"flex","@media (max-width: 600px)":{flexFlow:"column"}}}))}))((function(e){var t=e.classes,n=e.id,i=e.name,s=e.onChange,h=e.options,x=e.label,m=e.tooltip,b=void 0===m?"":m,j=e.value,v=e.disabled,Z=void 0!==v&&v;return(0,f.jsx)(a.Fragment,{children:(0,f.jsxs)(r.ZP,{item:!0,xs:12,className:t.fieldContainer,children:[""!==x&&(0,f.jsxs)(o.Z,{htmlFor:n,className:t.inputLabel,children:[(0,f.jsx)("span",{children:x}),""!==b&&(0,f.jsx)("div",{className:t.tooltipContainer,children:(0,f.jsx)(l.Z,{title:b,placement:"top-start",children:(0,f.jsx)("div",{className:t.tooltip,children:(0,f.jsx)(p.byK,{})})})})]}),(0,f.jsx)(c.Z,{fullWidth:!0,children:(0,f.jsx)(d.Z,{id:n,name:i,value:j,onChange:s,input:(0,f.jsx)(g,{}),disabled:Z,children:h.map((function(e){return(0,f.jsx)(u.Z,{value:e.value,children:e.label},"select-".concat(i,"-").concat(e.label))}))})})]})})}))}}]); -//# sourceMappingURL=8045.312c59ab.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/8045.312c59ab.chunk.js.map b/portal-ui/build/static/js/8045.312c59ab.chunk.js.map deleted file mode 100644 index fd6ba4e48..000000000 --- a/portal-ui/build/static/js/8045.312c59ab.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/8045.312c59ab.chunk.js","mappings":"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","sources":["screens/Console/Buckets/ListBuckets/BucketListItem.tsx","screens/Console/Common/GenericWizard/WizardPage.tsx","screens/Console/Common/GenericWizard/GenericWizard.tsx","screens/Console/Buckets/ListBuckets/BulkReplicationModal.tsx","screens/Console/Buckets/ListBuckets/BulkLifecycleModal.tsx","screens/Console/Buckets/ListBuckets/ListBuckets.tsx","screens/Console/Common/FormComponents/CheckboxWrapper/CheckboxWrapper.tsx","screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu.tsx","screens/Console/Common/FormComponents/PredefinedList/PredefinedList.tsx","screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector.tsx","screens/Console/Common/FormComponents/RadioGroupSelector/RadioGroupSelector.tsx","screens/Console/Common/FormComponents/SelectWrapper/SelectWrapper.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { Fragment } from \"react\";\nimport get from \"lodash/get\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport { BucketsIcon, ReportedUsageIcon, TotalObjectsIcon } from \"mds\";\nimport { Box, Grid, Typography } from \"@mui/material\";\nimport {\n calculateBytes,\n niceBytes,\n prettyNumber,\n} from \"../../../../common/utils\";\nimport CheckboxWrapper from \"../../Common/FormComponents/CheckboxWrapper/CheckboxWrapper\";\nimport { Link, useNavigate } from \"react-router-dom\";\nimport {\n IAM_PERMISSIONS,\n IAM_ROLES,\n} from \"../../../../common/SecureComponent/permissions\";\nimport { hasPermission } from \"../../../../common/SecureComponent\";\nimport clsx from \"clsx\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { Bucket } from \"../../../../api/consoleApi\";\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n root: {\n marginBottom: 30,\n padding: 20,\n color: theme.palette.primary.main,\n border: \"#E5E5E5 1px solid\",\n borderRadius: 2,\n textDecoration: \"none\",\n \"&:hover\": {\n backgroundColor: \"#fafafa\",\n },\n \"& .min-icon\": {\n height: 14,\n width: 14,\n },\n \"& .MuiTypography-body2\": {\n fontSize: 14,\n },\n \"& .MuiCardHeader-content\": {\n wordWrap: \"break-word\",\n overflowWrap: \"break-word\",\n wordBreak: \"break-all\",\n font: \"normal normal bold 24px/27px Inter\",\n color: theme.palette.primary.main,\n\n \"& .MuiTypography-root\": {\n fontSize: 19,\n fontWeight: \"bold\",\n \"& .min-icon\": {\n position: \"relative\",\n top: 4,\n marginRight: 4,\n height: \"24px !important\",\n },\n },\n },\n \"& .MuiCardHeader-root\": {\n background:\n \"transparent linear-gradient(0deg, #EEF1F44E 0%, #FFFFFF 100%) 0% 0% no-repeat padding-box\",\n },\n },\n checkBoxElement: {\n width: 32,\n height: 32,\n float: \"left\",\n overflow: \"hidden\",\n \"& div\": {\n position: \"absolute\",\n },\n },\n manageButton: {\n borderRadius: 4,\n width: 111,\n color: theme.palette.grey[\"700\"],\n textTransform: \"unset\",\n fontSize: 12,\n fontWeight: \"normal\",\n \"& .MuiButton-endIcon\": {\n \"& .min-icon\": {\n fontSize: 18,\n },\n },\n },\n metric: {\n \"& .min-icon\": {\n color: \"#000000\",\n width: 13,\n marginRight: 5,\n },\n },\n metricLabel: {\n fontSize: 14,\n fontWeight: \"bold\",\n color: \"#000000\",\n },\n metricText: {\n fontSize: 24,\n fontWeight: \"bold\",\n },\n unit: {\n fontSize: 12,\n fontWeight: \"normal\",\n },\n bucketName: {\n padding: 0,\n margin: 0,\n fontSize: 22,\n },\n bucketIcon: {\n \"& .min-icon\": {\n height: 48,\n width: 48,\n color: theme.palette.primary.main,\n },\n },\n bucketInfo: {\n display: \"flex\",\n \"@media (max-width: 900px)\": {\n flexFlow: \"column-reverse\",\n },\n },\n bucketStats: {\n marginTop: 15,\n borderTop: \"1px solid rgb(234,234,234, .7)\",\n paddingTop: 14,\n },\n bucketActionButtons: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n\n \"& button\": {\n marginLeft: 8,\n },\n\n \"@media (max-width: 900px)\": {\n marginTop: \"-33px\",\n },\n },\n disabled: {\n backgroundColor: \"red\",\n },\n }),\n);\n\ninterface IBucketListItem {\n bucket: Bucket;\n onSelect: (e: React.ChangeEvent) => void;\n selected: boolean;\n bulkSelect: boolean;\n noManage?: boolean;\n}\n\nconst BucketListItem = ({\n bucket,\n onSelect,\n selected,\n bulkSelect,\n noManage = false,\n}: IBucketListItem) => {\n const classes = useStyles();\n const navigate = useNavigate();\n\n const usage = niceBytes(`${bucket.size}` || \"0\");\n const usageScalar = usage.split(\" \")[0];\n const usageUnit = usage.split(\" \")[1];\n\n const quota = get(bucket, \"details.quota.quota\", \"0\");\n const quotaForString = calculateBytes(quota, true, false);\n\n const manageAllowed =\n hasPermission(bucket.name, IAM_PERMISSIONS[IAM_ROLES.BUCKET_ADMIN]) &&\n false;\n\n const accessToStr = (bucket: Bucket): string => {\n if (bucket.rw_access?.read && !bucket.rw_access?.write) {\n return \"R\";\n } else if (!bucket.rw_access?.read && bucket.rw_access?.write) {\n return \"W\";\n } else if (bucket.rw_access?.read && bucket.rw_access?.write) {\n return \"R/W\";\n }\n return \"\";\n };\n const onCheckboxClick = (e: React.ChangeEvent) => {\n onSelect(e);\n };\n\n return (\n {\n navigate(`/buckets/${bucket.name}/admin`);\n }}\n sx={{\n cursor: \"pointer\",\n }}\n id={`manageBucket-${bucket.name}`}\n >\n \n \n \n \n \n {bulkSelect && (\n {\n e.stopPropagation();\n }}\n >\n \n \n )}\n

\n {bucket.name} {manageAllowed}\n

\n
\n \n \n \n \n Created:{\" \"}\n {bucket.creation_date\n ? new Date(bucket.creation_date).toString()\n : \"n/a\"}\n \n \n \n \n Access: {accessToStr(bucket)}\n \n \n \n \n
\n
\n \n \n
\n \n \n \n \n\n \n \n \n \n \n \n \n \n \n Usage\n
\n {usageScalar}\n {usageUnit}\n {quota !== \"0\" && (\n \n {\" \"}\n / {quotaForString.total}\n {quotaForString.unit}\n \n )}\n
\n
\n \n \n Objects\n
\n {bucket.objects ? prettyNumber(bucket.objects) : 0}\n
\n
\n
\n
\n \n );\n};\n\nexport default BucketListItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport { Button } from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { IWizardButton, IWizardPage } from \"./types\";\nimport { LinearProgress } from \"@mui/material\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n wizardStepContainer: {\n display: \"flex\",\n flexDirection: \"column\",\n flex: 1,\n },\n wizardComponent: {\n overflowY: \"auto\",\n marginBottom: 10,\n height: \"calc(100vh - 100px - 80px)\",\n minHeight: 400,\n flex: 1,\n width: \"100%\",\n },\n wizardModal: {\n overflowY: \"auto\",\n marginBottom: 10,\n height: \"calc(100vh - 515px)\",\n },\n buttonsContainer: {\n display: \"flex\",\n flexDirection: \"row\",\n justifyContent: \"flex-start\" as const,\n padding: \"10px 0\",\n borderTop: \"#EAEAEA 1px solid\",\n \"& button\": {\n marginLeft: 10,\n },\n \"&.forModal\": {\n paddingBottom: 0,\n },\n },\n buttonInnerContainer: {\n width: \"100%\",\n display: \"flex\",\n justifyContent: \"flex-end\",\n marginRight: 15,\n },\n });\n\nconst WizardPage = ({\n classes,\n page,\n pageChange,\n loadingStep,\n forModal,\n}: IWizardPage) => {\n const buttonAction = (btn: IWizardButton) => {\n switch (btn.type) {\n case \"next\":\n pageChange(\"++\");\n break;\n case \"back\":\n pageChange(\"--\");\n break;\n case \"to\":\n pageChange(btn.toPage || 0);\n break;\n case \"custom\":\n default:\n }\n\n if (btn.action) {\n btn.action(pageChange);\n }\n };\n\n return (\n
\n
\n {page.componentRender}\n
\n {loadingStep && (\n
\n \n
\n )}\n \n
\n {page.buttons.map((btn) => {\n if (btn.componentRender) {\n return btn.componentRender;\n }\n return (\n {\n buttonAction(btn);\n }}\n disabled={!btn.enabled}\n key={`button-${page.label}-${btn.label}`}\n label={btn.label}\n />\n );\n })}\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(WizardPage);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { IWizardMain } from \"./types\";\nimport WizardPage from \"./WizardPage\";\nimport { Grid, List } from \"@mui/material\";\nimport ListItem from \"@mui/material/ListItem\";\nimport ListItemText from \"@mui/material/ListItemText\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n wizFromContainer: {},\n wizFromModal: {\n position: \"relative\",\n },\n modalWizardSteps: {\n padding: 5,\n borderBottom: \"#eaeaea 1px solid\",\n \"& ul\": {\n padding: 0,\n marginTop: 0,\n display: \"flex\",\n justifyContent: \"space-evenly\",\n\n \"& li\": {\n listStyle: \"lower-roman\",\n \"&::marker\": {\n paddingLeft: 15,\n },\n },\n },\n },\n buttonList: {\n backgroundColor: \"transparent\",\n border: \"none\",\n cursor: \"pointer\",\n \"&:not(:disabled):hover\": {\n textDecoration: \"underline\",\n },\n \"&:selected, &:active, &:focus, &:focus:active\": {\n border: \"none\",\n outline: 0,\n boxShadow: \"none\",\n },\n },\n paddedContentGrid: {\n marginTop: 8,\n padding: \"0 10px\",\n minHeight: 400,\n },\n stepsLabel: {\n fontSize: 20,\n color: \"#393939\",\n fontWeight: 600,\n margin: \"15px 12px\",\n \"&.stepsModalTitle\": {\n textAlign: \"center\",\n width: \"100%\",\n marginTop: 0,\n marginBottom: 10,\n },\n },\n stepsMasterContainer: {\n position: \"sticky\",\n top: 0,\n backgroundColor: \"#FFFFFF\",\n width: \"100%\",\n maxHeight: 90,\n },\n verticalSteps: {\n borderRight: \"1px solid #E5E5E5\",\n background: \"#F8F8F8\",\n },\n stepsContainer: {\n paddingTop: 0,\n \"& .MuiButtonBase-root.Mui-selected\": {\n background: \"#E5E5E5\",\n },\n },\n stepItem: {\n minHeight: 60,\n borderBottom: \"1px solid #E5E5E5\",\n \"&:hover\": {\n background: \"rgba(247,247,247,0.7)\",\n },\n },\n });\n\nconst GenericWizard = ({\n classes,\n wizardSteps,\n loadingStep,\n forModal,\n}: IWizardMain) => {\n const [currentStep, setCurrentStep] = useState(0);\n\n const pageChange = (toElement: string | number) => {\n const lastPage = wizardSteps.length - 1;\n\n if (toElement === \"++\") {\n let nextPage = currentStep + 1;\n\n if (nextPage > lastPage) {\n nextPage = lastPage;\n }\n\n setCurrentStep(nextPage);\n }\n\n if (toElement === \"--\") {\n let prevPage = currentStep - 1;\n\n if (prevPage < 0) {\n prevPage = 0;\n }\n\n setCurrentStep(prevPage);\n }\n\n if (typeof toElement === \"number\") {\n let pg = toElement;\n if (toElement < 0) {\n pg = 0;\n }\n\n if (toElement > lastPage) {\n pg = lastPage;\n }\n\n setCurrentStep(pg);\n }\n };\n\n if (wizardSteps.length === 0) {\n return null;\n }\n\n const stepsList = () => {\n return (\n \n \n {wizardSteps.map((step, index) => {\n return (\n pageChange(index)}\n key={`wizard-${index.toString()}`}\n selected={currentStep === index}\n classes={{\n root: classes.stepItem,\n }}\n >\n \n \n );\n })}\n \n \n );\n };\n const stepsListModal = () => {\n return (\n
    \n {wizardSteps.map((step, index) => {\n return (\n
  • \n pageChange(index)}\n disabled={index > currentStep}\n className={classes.buttonList}\n >\n {step.label}\n \n
  • \n );\n })}\n
\n );\n };\n\n return (\n \n {forModal ? (\n \n
\n
Steps
\n
{stepsListModal()}
\n
\n
\n ) : (\n \n \n {stepsList()}\n
\n
\n )}\n\n \n \n \n \n );\n};\n\nexport default withStyles(styles)(GenericWizard);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\n\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { SelectChangeEvent, Tooltip } from \"@mui/material\";\nimport get from \"lodash/get\";\nimport Grid from \"@mui/material/Grid\";\nimport ErrorOutlineIcon from \"@mui/icons-material/ErrorOutline\";\nimport CheckCircleOutlineIcon from \"@mui/icons-material/CheckCircleOutline\";\nimport {\n modalBasic,\n wizardCommon,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport PredefinedList from \"../../Common/FormComponents/PredefinedList/PredefinedList\";\nimport GenericWizard from \"../../Common/GenericWizard/GenericWizard\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport { SelectorTypes } from \"../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector\";\nimport { getBytes, k8sScalarUnitsExcluding } from \"../../../../common/utils\";\nimport InputUnitMenu from \"../../Common/FormComponents/InputUnitMenu/InputUnitMenu\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { MultiBucketResponseItem } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IBulkReplicationModal {\n open: boolean;\n closeModalAndRefresh: (clearSelection: boolean) => any;\n classes: any;\n buckets: string[];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n remoteBucketList: {\n display: \"grid\",\n gridTemplateColumns: \"auto auto 45px\",\n alignItems: \"center\",\n justifyContent: \"stretch\",\n },\n errorIcon: {\n color: \"#C72C48\",\n },\n successIcon: {\n color: \"#42C91A\",\n },\n hide: {\n opacity: 0,\n transitionDuration: \"0.3s\",\n },\n ...modalBasic,\n ...wizardCommon,\n });\n\nconst AddBulkReplicationModal = ({\n open,\n closeModalAndRefresh,\n classes,\n buckets,\n}: IBulkReplicationModal) => {\n const dispatch = useAppDispatch();\n const [bucketsToAlter, setBucketsToAlter] = useState([]);\n const [addLoading, setAddLoading] = useState(false);\n const [externalLoading, setExternalLoading] = useState(false);\n const [accessKey, setAccessKey] = useState(\"\");\n const [secretKey, setSecretKey] = useState(\"\");\n const [targetURL, setTargetURL] = useState(\"\");\n const [region, setRegion] = useState(\"\");\n const [useTLS, setUseTLS] = useState(true);\n const [replicationMode, setReplicationMode] = useState<\"async\" | \"sync\">(\n \"async\",\n );\n const [bandwidthScalar, setBandwidthScalar] = useState(\"100\");\n const [bandwidthUnit, setBandwidthUnit] = useState(\"Gi\");\n const [healthCheck, setHealthCheck] = useState(\"60\");\n const [relationBuckets, setRelationBuckets] = useState([]);\n const [remoteBucketsOpts, setRemoteBucketOpts] = useState([]);\n const [responseItem, setResponseItem] = useState<\n MultiBucketResponseItem[] | undefined\n >([]);\n\n const optionsForBucketsDrop: SelectorTypes[] = remoteBucketsOpts.map(\n (remoteBucketName: string) => {\n return {\n label: remoteBucketName,\n value: remoteBucketName,\n };\n },\n );\n\n useEffect(() => {\n if (relationBuckets.length === 0) {\n const bucketsAlter: string[] = [];\n const relationBucketsAlter: string[] = [];\n\n buckets.forEach((item: string) => {\n bucketsAlter.push(item);\n relationBucketsAlter.push(\"\");\n });\n\n setRelationBuckets(relationBucketsAlter);\n setBucketsToAlter(bucketsAlter);\n }\n }, [buckets, relationBuckets.length]);\n\n const addRecord = () => {\n setAddLoading(true);\n const replicate = bucketsToAlter.map((bucketName, index) => {\n return {\n originBucket: bucketName,\n destinationBucket: relationBuckets[index],\n };\n });\n\n const endURL = `${useTLS ? \"https://\" : \"http://\"}${targetURL}`;\n const hc = parseInt(healthCheck);\n\n const remoteBucketsInfo = {\n accessKey: accessKey,\n secretKey: secretKey,\n targetURL: endURL,\n region: region,\n bucketsRelation: replicate,\n syncMode: replicationMode,\n bandwidth:\n replicationMode === \"async\"\n ? parseInt(getBytes(bandwidthScalar, bandwidthUnit, true))\n : 0,\n healthCheckPeriod: hc,\n };\n\n api.bucketsReplication\n .setMultiBucketReplication(remoteBucketsInfo)\n .then((response) => {\n setAddLoading(false);\n\n const states = response.data.replicationState;\n setResponseItem(states);\n\n const filterErrors = states?.filter(\n (itm) => itm.errorString && itm.errorString !== \"\",\n );\n\n if (filterErrors?.length === 0) {\n closeModalAndRefresh(true);\n } else {\n setTimeout(() => {\n removeSuccessItems(states);\n }, 500);\n }\n })\n .catch((err) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const retrieveRemoteBuckets = (\n wizardPageJump: (page: number | string) => void,\n ) => {\n const remoteConnectInfo = {\n accessKey: accessKey,\n secretKey: secretKey,\n targetURL: targetURL,\n useTLS,\n };\n setExternalLoading(true);\n\n api.listExternalBuckets\n .listExternalBuckets(remoteConnectInfo)\n .then((res) => {\n const buckets = get(res.data, \"buckets\", []);\n\n if (buckets && buckets.length > 0) {\n const arrayReplaceBuckets = buckets.map((element: any) => {\n return element.name;\n });\n\n setRemoteBucketOpts(arrayReplaceBuckets);\n }\n\n wizardPageJump(\"++\");\n setExternalLoading(false);\n })\n .catch((err) => {\n setExternalLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const stateOfItem = (initialBucket: string) => {\n if (responseItem && responseItem.length > 0) {\n const bucketResponse = responseItem.find(\n (item) => item.originBucket === initialBucket,\n );\n\n if (bucketResponse) {\n const errString = get(bucketResponse, \"errorString\", \"\");\n\n if (errString) {\n return errString;\n }\n\n return \"\";\n }\n }\n return \"n/a\";\n };\n\n const LogoToShow = ({ errString }: { errString: string }) => {\n switch (errString) {\n case \"\":\n return (\n
\n \n
\n );\n case \"n/a\":\n return null;\n default:\n if (errString) {\n return (\n
\n \n \n \n
\n );\n }\n }\n return null;\n };\n\n const updateItem = (indexItem: number, value: string) => {\n const updatedList = [...relationBuckets];\n updatedList[indexItem] = value;\n setRelationBuckets(updatedList);\n };\n\n const itemDisplayBulk = (indexItem: number) => {\n if (remoteBucketsOpts.length > 0) {\n return (\n \n ) => {\n updateItem(indexItem, e.target.value as string);\n }}\n options={optionsForBucketsDrop}\n disabled={addLoading}\n />\n \n );\n }\n return (\n \n ) => {\n updateItem(indexItem, event.target.value);\n }}\n value={relationBuckets[indexItem]}\n disabled={addLoading}\n />\n \n );\n };\n\n const removeSuccessItems = (\n responseItem: MultiBucketResponseItem[] | undefined,\n ) => {\n let newBucketsToAlter = [...bucketsToAlter];\n let newRelationBuckets = [...relationBuckets];\n\n responseItem?.forEach((successElement) => {\n const errorString = get(successElement, \"errorString\", \"\");\n\n if (!errorString || errorString === \"\") {\n const indexToRemove = newBucketsToAlter.indexOf(\n successElement.originBucket || \"\",\n );\n\n newBucketsToAlter.splice(indexToRemove, 1);\n newRelationBuckets.splice(indexToRemove, 1);\n }\n });\n\n setBucketsToAlter(newBucketsToAlter);\n setRelationBuckets(newRelationBuckets);\n };\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n title=\"Set Multiple Bucket Replication\"\n >\n \n \n \n \n

Remote Endpoint Configuration

\n \n Please avoid the use of root credentials for this feature\n \n
\n
\n \n ) => {\n setAccessKey(e.target.value);\n }}\n label=\"Access Key\"\n value={accessKey}\n />\n \n \n ) => {\n setSecretKey(e.target.value);\n }}\n label=\"Secret Key\"\n value={secretKey}\n />\n \n \n ) => {\n setTargetURL(e.target.value);\n }}\n placeholder=\"play.min.io:9000\"\n label=\"Target URL\"\n value={targetURL}\n />\n \n \n {\n setUseTLS(e.target.checked);\n }}\n value=\"yes\"\n />\n \n \n ) => {\n setRegion(e.target.value);\n }}\n label=\"Region\"\n value={region}\n />\n \n \n ) => {\n setReplicationMode(e.target.value as \"sync\" | \"async\");\n }}\n label=\"Replication Mode\"\n value={replicationMode}\n options={[\n { label: \"Asynchronous\", value: \"async\" },\n { label: \"Synchronous\", value: \"sync\" },\n ]}\n />\n \n {replicationMode === \"async\" && (\n \n ) => {\n if (e.target.validity.valid) {\n setBandwidthScalar(e.target.value as string);\n }\n }}\n label=\"Bandwidth\"\n value={bandwidthScalar}\n min=\"0\"\n pattern={\"[0-9]*\"}\n overlayObject={\n {\n setBandwidthUnit(newValue);\n }}\n unitSelected={bandwidthUnit}\n unitsList={k8sScalarUnitsExcluding([\"Ki\"])}\n disabled={false}\n />\n }\n />\n \n )}\n \n ) => {\n setHealthCheck(e.target.value as string);\n }}\n label=\"Health Check Duration\"\n value={healthCheck}\n />\n \n
\n ),\n buttons: [\n {\n type: \"custom\",\n label: \"Next\",\n enabled: !externalLoading,\n action: retrieveRemoteBuckets,\n },\n ],\n },\n {\n label: \"Bucket Assignments\",\n componentRender: (\n \n

Remote Bucket Assignments

\n \n Please select / type the desired remote bucket were you want\n the local data to be replicated.\n \n
\n {bucketsToAlter.map((bucketName: string, index: number) => {\n const errorItem = stateOfItem(bucketName);\n return (\n \n
\n {bucketName}\n
\n
\n {itemDisplayBulk(index)}\n
\n
\n {responseItem && responseItem.length > 0 && (\n \n )}\n
\n \n );\n })}\n
\n
\n ),\n buttons: [\n {\n type: \"back\",\n label: \"Back\",\n enabled: true,\n },\n {\n type: \"next\",\n label: \"Create\",\n enabled: !addLoading,\n action: addRecord,\n },\n ],\n },\n ]}\n forModal\n />\n \n );\n};\n\nexport default withStyles(styles)(AddBulkReplicationModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\n\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { SelectChangeEvent, Tooltip } from \"@mui/material\";\nimport get from \"lodash/get\";\nimport Grid from \"@mui/material/Grid\";\nimport ErrorOutlineIcon from \"@mui/icons-material/ErrorOutline\";\nimport CheckCircleOutlineIcon from \"@mui/icons-material/CheckCircleOutline\";\nimport {\n createTenantCommon,\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport PredefinedList from \"../../Common/FormComponents/PredefinedList/PredefinedList\";\nimport GenericWizard from \"../../Common/GenericWizard/GenericWizard\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport RadioGroupSelector from \"../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector\";\nimport QueryMultiSelector from \"../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector\";\nimport { ITiersDropDown } from \"../types\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { MultiLifecycleResult, Tier } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IBulkReplicationModal {\n open: boolean;\n closeModalAndRefresh: (clearSelection: boolean) => any;\n classes: any;\n buckets: string[];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n resultGrid: {\n display: \"grid\",\n gridTemplateColumns: \"45px auto\",\n alignItems: \"center\",\n justifyContent: \"stretch\",\n },\n errorIcon: {\n paddingTop: 5,\n color: \"#C72C48\",\n },\n successIcon: {\n paddingTop: 5,\n color: \"#42C91A\",\n },\n ...spacingUtils,\n ...modalStyleUtils,\n ...formFieldStyles,\n ...createTenantCommon,\n });\n\nconst AddBulkReplicationModal = ({\n open,\n closeModalAndRefresh,\n classes,\n buckets,\n}: IBulkReplicationModal) => {\n const dispatch = useAppDispatch();\n const [addLoading, setAddLoading] = useState(false);\n const [loadingTiers, setLoadingTiers] = useState(true);\n const [tiersList, setTiersList] = useState([]);\n const [prefix, setPrefix] = useState(\"\");\n const [tags, setTags] = useState(\"\");\n const [storageClass, setStorageClass] = useState(\"\");\n const [NCTransitionSC, setNCTransitionSC] = useState(\"\");\n const [expiredObjectDM, setExpiredObjectDM] = useState(false);\n const [NCExpirationDays, setNCExpirationDays] = useState(\"0\");\n const [NCTransitionDays, setNCTransitionDays] = useState(\"0\");\n const [ilmType, setIlmType] = useState<\"expiry\" | \"transition\">(\"expiry\");\n const [expiryDays, setExpiryDays] = useState(\"0\");\n const [transitionDays, setTransitionDays] = useState(\"0\");\n const [isFormValid, setIsFormValid] = useState(false);\n const [results, setResults] = useState(null);\n\n useEffect(() => {\n if (loadingTiers) {\n api.admin\n .tiersList()\n .then((res) => {\n const tiersList: Tier[] | null = get(res.data, \"items\", []);\n\n if (tiersList !== null && tiersList.length >= 1) {\n const objList = tiersList.map((tier: Tier) => {\n const tierType = tier.type;\n const value = get(tier, `${tierType}.name`, \"\");\n\n return { label: value, value: value };\n });\n\n setTiersList(objList);\n if (objList.length > 0) {\n setStorageClass(objList[0].value);\n }\n }\n setLoadingTiers(false);\n })\n .catch((err) => {\n setLoadingTiers(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [loadingTiers, dispatch]);\n\n useEffect(() => {\n let valid = true;\n\n if (ilmType !== \"expiry\") {\n if (storageClass === \"\") {\n valid = false;\n }\n }\n setIsFormValid(valid);\n }, [ilmType, expiryDays, transitionDays, storageClass]);\n\n const LogoToShow = ({ errString }: { errString: string }) => {\n switch (errString) {\n case \"\":\n return (\n
\n \n
\n );\n case \"n/a\":\n return null;\n default:\n if (errString) {\n return (\n
\n \n \n \n
\n );\n }\n }\n return null;\n };\n\n const createLifecycleRules = (to: any) => {\n let rules = {};\n\n if (ilmType === \"expiry\") {\n let expiry = {\n expiry_days: parseInt(expiryDays),\n };\n\n rules = {\n ...expiry,\n noncurrentversion_expiration_days: parseInt(NCExpirationDays),\n };\n } else {\n let transition = {\n transition_days: parseInt(transitionDays),\n };\n\n rules = {\n ...transition,\n noncurrentversion_transition_days: parseInt(NCTransitionDays),\n noncurrentversion_transition_storage_class: NCTransitionSC,\n storage_class: storageClass,\n };\n }\n\n const lifecycleInsert = {\n buckets,\n type: ilmType,\n prefix,\n tags,\n expired_object_delete_marker: expiredObjectDM,\n ...rules,\n };\n\n api.buckets\n .addMultiBucketLifecycle(lifecycleInsert)\n .then((res) => {\n setAddLoading(false);\n setResults(res.data);\n to(\"++\");\n })\n .catch((err) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n title=\"Set Lifecycle to multiple buckets\"\n >\n \n \n \n \n

Remote Endpoint Configuration

\n \n \n \n
\n \n Lifecycle Configuration\n \n\n \n ,\n ) => {\n setIlmType(\n e.target.value as \"expiry\" | \"transition\",\n );\n }}\n selectorOptions={[\n { value: \"expiry\", label: \"Expiry\" },\n { value: \"transition\", label: \"Transition\" },\n ]}\n />\n \n {ilmType === \"expiry\" ? (\n \n \n ,\n ) => {\n setExpiryDays(e.target.value);\n }}\n label=\"Expiry Days\"\n value={expiryDays}\n min=\"0\"\n />\n \n \n ,\n ) => {\n setNCExpirationDays(e.target.value);\n }}\n label=\"Non-current Expiration Days\"\n value={NCExpirationDays}\n min=\"0\"\n />\n \n \n ) : (\n \n \n ,\n ) => {\n setTransitionDays(e.target.value);\n }}\n label=\"Transition Days\"\n value={transitionDays}\n min=\"0\"\n />\n \n \n ,\n ) => {\n setNCTransitionDays(e.target.value);\n }}\n label=\"Non-current Transition Days\"\n value={NCTransitionDays}\n min=\"0\"\n />\n \n \n ,\n ) => {\n setNCTransitionSC(e.target.value);\n }}\n placeholder=\"Set Non-current Version Transition Storage Class\"\n label=\"Non-current Version Transition Storage Class\"\n value={NCTransitionSC}\n />\n \n \n ) => {\n setStorageClass(e.target.value as string);\n }}\n options={tiersList}\n />\n \n \n )}\n
\n
\n \n
\n \n File Configuration\n \n\n \n ,\n ) => {\n setPrefix(e.target.value);\n }}\n label=\"Prefix\"\n value={prefix}\n />\n \n \n {\n setTags(vl);\n }}\n keyPlaceholder=\"Tag Key\"\n valuePlaceholder=\"Tag Value\"\n withBorder\n />\n \n \n ,\n ) => {\n setExpiredObjectDM(event.target.checked);\n }}\n label={\"Expired Object Delete Marker\"}\n />\n \n
\n
\n
\n
\n
\n ),\n buttons: [\n {\n type: \"custom\",\n label: \"Create Rules\",\n enabled: !loadingTiers && !addLoading && isFormValid,\n action: createLifecycleRules,\n },\n ],\n },\n {\n label: \"Results\",\n componentRender: (\n \n

Multi Bucket lifecycle Assignments Results

\n \n \n

Buckets Results

\n {results?.results?.map((resultItem) => {\n return (\n
\n {LogoToShow({ errString: resultItem.error || \"\" })}\n {resultItem.bucketName}\n
\n );\n })}\n
\n
\n
\n ),\n buttons: [\n {\n type: \"custom\",\n label: \"Done\",\n enabled: !addLoading,\n action: () => closeModalAndRefresh(true),\n },\n ],\n },\n ]}\n forModal\n />\n \n );\n};\n\nexport default withStyles(styles)(AddBulkReplicationModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\n\nimport { useNavigate } from \"react-router-dom\";\nimport { Theme } from \"@mui/material/styles\";\nimport {\n AddIcon,\n BucketsIcon,\n Button,\n HelpBox,\n LifecycleConfigIcon,\n MultipleBucketsIcon,\n PageLayout,\n RefreshIcon,\n SelectAllIcon,\n SelectMultipleIcon,\n} from \"mds\";\nimport { LinearProgress } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport BucketListItem from \"./BucketListItem\";\nimport BulkReplicationModal from \"./BulkReplicationModal\";\nimport { SecureComponent } from \"../../../../common/SecureComponent\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_PAGES,\n IAM_PERMISSIONS,\n IAM_ROLES,\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../common/SecureComponent/permissions\";\nimport SearchBox from \"../../Common/SearchBox\";\nimport VirtualizedList from \"../../Common/VirtualizedList/VirtualizedList\";\nimport BulkLifecycleModal from \"./BulkLifecycleModal\";\nimport hasPermission from \"../../../../common/SecureComponent/accessControl\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { useSelector } from \"react-redux\";\nimport { selFeatures } from \"../../consoleSlice\";\nimport AutoColorIcon from \"../../Common/Components/AutoColorIcon\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport AButton from \"../../Common/AButton/AButton\";\nimport { setLoadingObjects } from \"../../ObjectBrowser/objectBrowserSlice\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { api } from \"../../../../api\";\nimport {\n Bucket,\n Error,\n HttpResponse,\n ListBucketsResponse,\n} from \"../../../../api/consoleApi\";\nimport { errorToHandler } from \"../../../../api/errors\";\nimport HelpMenu from \"../../HelpMenu\";\n\nconst useStyles = makeStyles((theme: Theme) => ({\n bucketList: {\n marginTop: 25,\n height: \"calc(100vh - 211px)\",\n \"&.isEmbedded\": {\n height: \"calc(100vh - 128px)\",\n },\n },\n searchField: {\n ...searchField.searchField,\n minWidth: 380,\n \"@media (max-width: 900px)\": {\n minWidth: 220,\n },\n },\n ...containerForHeader,\n ...actionsTray,\n}));\n\nconst ListBuckets = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const classes = useStyles();\n\n const [records, setRecords] = useState([]);\n const [loading, setLoading] = useState(true);\n const [filterBuckets, setFilterBuckets] = useState(\"\");\n const [selectedBuckets, setSelectedBuckets] = useState([]);\n const [replicationModalOpen, setReplicationModalOpen] =\n useState(false);\n const [lifecycleModalOpen, setLifecycleModalOpen] = useState(false);\n const [canPutLifecycle, setCanPutLifecycle] = useState(false);\n const [bulkSelect, setBulkSelect] = useState(false);\n\n const features = useSelector(selFeatures);\n const obOnly = !!features?.includes(\"object-browser-only\");\n\n useEffect(() => {\n dispatch(setHelpName(\"ob_bucket_list\"));\n }, [dispatch]);\n\n useEffect(() => {\n if (loading) {\n const fetchRecords = () => {\n setLoading(true);\n api.buckets\n .listBuckets()\n .then((res: HttpResponse) => {\n if (res.data) {\n setLoading(false);\n setRecords(res.data.buckets || []);\n dispatch(setLoadingObjects(true));\n } else if (res.error) {\n setLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(res.error)));\n }\n });\n };\n fetchRecords();\n }\n }, [loading, dispatch]);\n\n const filteredRecords = records.filter((b: Bucket) => {\n if (filterBuckets === \"\") {\n return true;\n } else {\n return b.name.indexOf(filterBuckets) >= 0;\n }\n });\n\n const hasBuckets = records.length > 0;\n\n const selectListBuckets = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedBuckets]; // We clone the selectedBuckets array\n\n if (checked) {\n // If the user has checked this field we need to push this to selectedBucketsList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n setSelectedBuckets(elements);\n\n return elements;\n };\n\n const closeBulkReplicationModal = (unselectAll: boolean) => {\n setReplicationModalOpen(false);\n\n if (unselectAll) {\n setSelectedBuckets([]);\n }\n };\n\n const closeBulkLifecycleModal = (unselectAll: boolean) => {\n setLifecycleModalOpen(false);\n\n if (unselectAll) {\n setSelectedBuckets([]);\n }\n };\n\n useEffect(() => {\n var failLifecycle = false;\n selectedBuckets.forEach((bucket: string) => {\n hasPermission(bucket, IAM_PERMISSIONS[IAM_ROLES.BUCKET_LIFECYCLE], true)\n ? setCanPutLifecycle(true)\n : (failLifecycle = true);\n });\n failLifecycle ? setCanPutLifecycle(false) : setCanPutLifecycle(true);\n }, [selectedBuckets]);\n\n const renderItemLine = (index: number) => {\n const bucket = filteredRecords[index] || null;\n if (bucket) {\n return (\n \n );\n }\n return null;\n };\n\n const selectAllBuckets = () => {\n if (selectedBuckets.length === filteredRecords.length) {\n setSelectedBuckets([]);\n return;\n }\n\n const selectAllBuckets = filteredRecords.map((bucket) => {\n return bucket.name;\n });\n\n setSelectedBuckets(selectAllBuckets);\n };\n\n const canCreateBucket = hasPermission(\"*\", [IAM_SCOPES.S3_CREATE_BUCKET]);\n const canListBuckets = hasPermission(\"*\", [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]);\n\n return (\n \n {replicationModalOpen && (\n \n )}\n {lifecycleModalOpen && (\n \n )}\n {!obOnly && (\n } />\n )}\n\n \n \n {obOnly && (\n \n \n \n )}\n {hasBuckets && (\n \n )}\n\n \n {!obOnly && (\n \n \n {\n setBulkSelect(!bulkSelect);\n setSelectedBuckets([]);\n }}\n icon={}\n variant={bulkSelect ? \"callAction\" : \"regular\"}\n disabled={!hasBuckets}\n />\n \n\n {bulkSelect && (\n \n }\n variant={\"regular\"}\n />\n \n )}\n\n \n {\n setLifecycleModalOpen(true);\n }}\n icon={}\n variant={\"regular\"}\n disabled={selectedBuckets.length === 0 || !canPutLifecycle}\n />\n \n\n \n {\n setReplicationModalOpen(true);\n }}\n icon={}\n variant={\"regular\"}\n disabled={selectedBuckets.length === 0}\n />\n \n \n )}\n\n \n {\n setLoading(true);\n }}\n icon={}\n variant={\"regular\"}\n />\n \n\n {!obOnly && (\n \n {\n navigate(IAM_PAGES.ADD_BUCKETS);\n }}\n icon={}\n variant={\"callAction\"}\n disabled={!canCreateBucket}\n label={\"Create Bucket\"}\n />\n \n )}\n \n \n\n {loading && }\n {!loading && (\n \n {filteredRecords.length !== 0 && (\n \n )}\n {filteredRecords.length === 0 && filterBuckets !== \"\" && (\n \n \n }\n title={\"No Results\"}\n help={\n \n No buckets match the filtering condition\n \n }\n />\n \n \n )}\n {!hasBuckets && (\n \n \n }\n title={\"Buckets\"}\n help={\n \n MinIO uses buckets to organize objects. A bucket is\n similar to a folder or directory in a filesystem, where\n each bucket can hold an arbitrary number of objects.\n
\n {canListBuckets ? (\n \"\"\n ) : (\n \n
\n {permissionTooltipHelper(\n [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ],\n \"view the buckets on this server\",\n )}\n
\n
\n )}\n \n
\n To get started, \n {\n navigate(IAM_PAGES.ADD_BUCKETS);\n }}\n >\n Create a Bucket.\n \n \n
\n }\n />\n
\n \n )}\n \n )}\n
\n
\n );\n};\n\nexport default ListBuckets;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport { Checkbox, Grid, InputLabel, Tooltip } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n checkboxIcons,\n fieldBasic,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\ninterface CheckBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n overrideLabelClasses?: string;\n overrideCheckboxStyles?: React.CSSProperties;\n index?: number;\n noTopMargin?: boolean;\n checked: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n ...checkboxIcons,\n fieldContainer: {\n ...fieldBasic.fieldContainer,\n display: \"flex\",\n justifyContent: \"flex-start\",\n alignItems: \"center\",\n margin: \"15px 0\",\n marginBottom: 0,\n flexBasis: \"initial\",\n flexWrap: \"nowrap\",\n },\n noTopMargin: {\n marginTop: 0,\n },\n });\n\nconst CheckboxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n noTopMargin = false,\n tooltip = \"\",\n overrideLabelClasses = \"\",\n overrideCheckboxStyles,\n classes,\n className,\n}: CheckBoxProps) => {\n return (\n \n \n
\n }\n icon={}\n disabled={disabled}\n disableRipple\n disableFocusRipple\n focusRipple={false}\n centerRipple={false}\n disableTouchRipple\n style={overrideCheckboxStyles || {}}\n />\n
\n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(CheckboxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input/Input\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n checked: boolean;\n switchOnly?: boolean;\n indicatorLabels?: string[];\n extraInputProps?: StandardInputProps[\"inputProps\"];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n indicatorLabelOn: {\n fontWeight: \"bold\",\n color: \"#081C42 !important\",\n },\n indicatorLabel: {\n fontSize: 12,\n color: \"#E2E2E2\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n tooltip: {\n fontSize: 16,\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles((theme) => ({\n root: {\n width: 50,\n height: 24,\n padding: 0,\n margin: 0,\n },\n switchBase: {\n padding: 1,\n \"&$checked\": {\n transform: \"translateX(24px)\",\n color: theme.palette.common.white,\n \"& + $track\": {\n backgroundColor: \"#4CCB92\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n border: \"none\",\n },\n },\n \"&$focusVisible $thumb\": {\n color: \"#4CCB92\",\n border: \"6px solid #fff\",\n },\n },\n thumb: {\n width: 22,\n height: 22,\n backgroundColor: \"#FAFAFA\",\n border: \"2px solid #FFFFFF\",\n marginLeft: 1,\n },\n track: {\n borderRadius: 24 / 2,\n backgroundColor: \"#E2E2E2\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n transition: theme.transitions.create([\"background-color\", \"border\"]),\n },\n checked: {},\n focusVisible: {},\n switchContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n}))(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n classes,\n indicatorLabels,\n extraInputProps = {},\n}: IFormSwitch) => {\n const switchComponent = (\n \n {!switchOnly && (\n \n {indicatorLabels && indicatorLabels.length > 1\n ? indicatorLabels[1]\n : \"OFF\"}\n \n )}\n \n {!switchOnly && (\n \n {indicatorLabels ? indicatorLabels[0] : \"ON\"}\n \n )}\n \n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n
\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n \n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { selectorTypes } from \"../SelectWrapper/SelectWrapper\";\nimport { Menu, MenuItem } from \"@mui/material\";\n\ninterface IInputUnitBox {\n classes: any;\n id: string;\n unitSelected: string;\n unitsList: selectorTypes[];\n disabled?: boolean;\n onUnitChange?: (newValue: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonTrigger: {\n border: \"#F0F2F2 1px solid\",\n borderRadius: 3,\n color: \"#838383\",\n backgroundColor: \"#fff\",\n fontSize: 12,\n },\n });\n\nconst InputUnitMenu = ({\n classes,\n id,\n unitSelected,\n unitsList,\n disabled = false,\n onUnitChange,\n}: IInputUnitBox) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (newUnit: string) => {\n setAnchorEl(null);\n if (newUnit !== \"\" && onUnitChange) {\n onUnitChange(newUnit);\n }\n };\n\n return (\n \n \n {unitSelected}\n \n {\n handleClose(\"\");\n }}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"center\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"center\",\n }}\n >\n {unitsList.map((unit) => (\n handleClose(unit.value)}\n key={`itemUnit-${unit.value}-${unit.label}`}\n >\n {unit.label}\n \n ))}\n \n \n );\n};\n\nexport default withStyles(styles)(InputUnitMenu);\n","import React, { Fragment } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { predefinedList } from \"../common/styleLibrary\";\n\ninterface IPredefinedList {\n classes: any;\n label?: string;\n content: any;\n multiLine?: boolean;\n actionButton?: React.ReactNode;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...predefinedList,\n });\n\nconst PredefinedList = ({\n classes,\n label = \"\",\n content,\n multiLine = false,\n actionButton,\n}: IPredefinedList) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n \n )}\n \n \n {content}\n \n {actionButton && (\n
{actionButton}
\n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(PredefinedList);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, {\n ChangeEvent,\n createRef,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport get from \"lodash/get\";\nimport debounce from \"lodash/debounce\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport Grid from \"@mui/material/Grid\";\nimport HelpIcon from \"@mui/icons-material/Help\";\nimport { InputLabel, Tooltip } from \"@mui/material\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport InputBoxWrapper from \"../InputBoxWrapper/InputBoxWrapper\";\nimport { AddIcon } from \"mds\";\n\ninterface IQueryMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n keyPlaceholder?: string;\n valuePlaceholder?: string;\n classes: any;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n inputWithBorder: {\n border: \"1px solid #EAEAEA\",\n padding: 15,\n height: 150,\n overflowY: \"auto\",\n position: \"relative\",\n marginTop: 15,\n },\n lineInputBoxes: {\n display: \"flex\",\n marginBottom: 10,\n },\n queryDiv: {\n alignSelf: \"center\",\n margin: \"0 4px\",\n fontWeight: 600,\n },\n });\n\nconst QueryMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n keyPlaceholder = \"\",\n valuePlaceholder = \"\",\n onChange,\n withBorder = false,\n classes,\n}: IQueryMultiSelector) => {\n const [currentKeys, setCurrentKeys] = useState([\"\"]);\n const [currentValues, setCurrentValues] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentKeys.length === 1 &&\n currentKeys[0] === \"\" &&\n currentValues.length === 1 &&\n currentValues[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\"&\");\n let keys = [];\n let values = [];\n\n elementsSplit.forEach((element: string) => {\n const splittedVals = element.split(\"=\");\n if (splittedVals.length === 2) {\n keys.push(splittedVals[0]);\n values.push(splittedVals[1]);\n }\n });\n\n keys.push(\"\");\n values.push(\"\");\n\n setCurrentKeys(keys);\n setCurrentValues(values);\n }\n }, [currentKeys, currentValues, elements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n const refScroll = bottomList.current;\n if (refScroll && currentKeys.length > 1) {\n refScroll.scrollIntoView(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys]);\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useLayoutEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n debouncedOnChange();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys, currentValues]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = () => {\n if (\n currentKeys[currentKeys.length - 1].trim() !== \"\" &&\n currentValues[currentValues.length - 1].trim() !== \"\"\n ) {\n const keysList = [...currentKeys];\n const valuesList = [...currentValues];\n\n keysList.push(\"\");\n valuesList.push(\"\");\n\n setCurrentKeys(keysList);\n setCurrentValues(valuesList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeKey = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentKeys];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentKeys(updatedElement);\n };\n\n const onChangeValue = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentValues];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentValues(updatedElement);\n };\n\n // Debounce for On Change\n const debouncedOnChange = debounce(() => {\n let queryString = \"\";\n\n currentKeys.forEach((keyVal, index) => {\n if (currentKeys[index] && currentValues[index]) {\n let insertString = `${keyVal}=${currentValues[index]}`;\n if (index !== 0) {\n insertString = `&${insertString}`;\n }\n queryString = `${queryString}${insertString}`;\n }\n });\n\n onChange(queryString);\n }, 500);\n\n const inputs = currentValues.map((element, index) => {\n return (\n \n \n :\n : null}\n overlayAction={() => {\n addEmptyLine();\n }}\n />\n \n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n
\n \n \n \n
\n )}\n
\n \n {inputs}\n
\n \n \n \n );\n};\nexport default withStyles(styles)(QueryMultiSelector);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport clsx from \"clsx\";\nimport Grid from \"@mui/material/Grid\";\nimport RadioGroup from \"@mui/material/RadioGroup\";\nimport FormControlLabel from \"@mui/material/FormControlLabel\";\nimport Radio, { RadioProps } from \"@mui/material/Radio\";\nimport { InputLabel, Tooltip } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { fieldBasic, radioIcons, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport { ObjectRetentionMode, ObjectRetentionUnit } from \"api/consoleApi\";\n\nexport interface SelectorTypes {\n label: any;\n value: string;\n}\n\ninterface RadioGroupProps {\n selectorOptions: SelectorTypes[];\n currentSelection:\n | ObjectRetentionMode\n | ObjectRetentionUnit\n | undefined\n | \"expiry\"\n | \"transition\";\n label: any;\n id: string;\n name: string;\n tooltip?: string;\n disableOptions?: boolean;\n onChange: (e: React.ChangeEvent) => void;\n classes: any;\n displayInColumn?: boolean;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n optionLabel: {\n \"&.Mui-disabled\": {\n \"& .MuiFormControlLabel-label\": {\n color: \"#9c9c9c\",\n },\n },\n \"&:last-child\": {\n marginRight: 0,\n },\n \"& .MuiFormControlLabel-label\": {\n fontSize: 12,\n color: \"#07193E\",\n },\n },\n checkedOption: {\n \"& .MuiFormControlLabel-label\": {\n fontSize: 12,\n color: \"#07193E\",\n fontWeight: 700,\n },\n },\n });\n\nconst radioStyles = makeStyles({\n root: {\n \"&:hover\": {\n backgroundColor: \"transparent\",\n },\n },\n ...radioIcons,\n});\n\nconst RadioButton = (props: RadioProps) => {\n const classes = radioStyles();\n\n return (\n }\n icon={}\n {...props}\n />\n );\n};\n\nexport const RadioGroupSelector = ({\n selectorOptions = [],\n currentSelection,\n label,\n id,\n name,\n onChange,\n tooltip = \"\",\n disableOptions = false,\n classes,\n displayInColumn = false,\n}: RadioGroupProps) => {\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n
\n \n \n {selectorOptions.map((selectorOption) => {\n return (\n }\n label={selectorOption.label}\n disabled={disableOptions}\n className={clsx(classes.optionLabel, {\n [classes.checkedOption]:\n selectorOption.value === currentSelection,\n })}\n />\n );\n })}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(RadioGroupSelector);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n FormControl,\n InputBase,\n InputLabel,\n MenuItem,\n Select,\n SelectChangeEvent,\n Tooltip,\n} from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\nexport interface selectorTypes {\n label: string;\n value: string;\n}\n\ninterface SelectProps {\n options: selectorTypes[];\n value: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n onChange: (e: SelectChangeEvent) => void;\n disabled?: boolean;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n fieldContainer: {\n display: \"flex\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n height: 38,\n lineHeight: 1,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n },\n input: {\n height: 38,\n position: \"relative\",\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n padding: \"8px 20px 10px 10px\",\n border: \"#e5e5e5 1px solid\",\n borderRadius: 4,\n display: \"flex\",\n alignItems: \"center\",\n \"&:hover\": {\n borderColor: \"#393939\",\n },\n \"&:focus\": {\n backgroundColor: \"#fff\",\n },\n },\n }),\n)(InputBase);\n\nconst SelectWrapper = ({\n classes,\n id,\n name,\n onChange,\n options,\n label,\n tooltip = \"\",\n value,\n disabled = false,\n}: SelectProps) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n \n }\n disabled={disabled}\n >\n {options.map((option) => (\n \n {option.label}\n \n ))}\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(SelectWrapper);\n"],"names":["useStyles","makeStyles","theme","createStyles","root","marginBottom","padding","color","palette","primary","main","border","borderRadius","textDecoration","backgroundColor","height","width","fontSize","wordWrap","overflowWrap","wordBreak","font","fontWeight","position","top","marginRight","background","checkBoxElement","float","overflow","manageButton","grey","textTransform","metric","metricLabel","metricText","unit","bucketName","margin","bucketIcon","bucketInfo","display","flexFlow","bucketStats","marginTop","borderTop","paddingTop","bucketActionButtons","alignItems","justifyContent","marginLeft","disabled","_ref","bucket","onSelect","selected","bulkSelect","classes","noManage","navigate","useNavigate","usage","niceBytes","concat","size","usageScalar","split","usageUnit","quota","get","quotaForString","calculateBytes","manageAllowed","hasPermission","name","IAM_PERMISSIONS","IAM_ROLES","BUCKET_ADMIN","_jsxs","Grid","container","className","clsx","_defineProperty","onClick","sx","cursor","id","children","_jsx","item","xs","sm","e","stopPropagation","CheckboxWrapper","checked","label","onChange","value","paddingRight","Typography","variant","creation_date","Date","toString","_bucket$rw_access","_bucket$rw_access2","_bucket$rw_access3","_bucket$rw_access4","_bucket$rw_access5","_bucket$rw_access6","rw_access","read","write","accessToStr","Box","style","spacing","Link","to","BucketsIcon","textAlign","ReportedUsageIcon","Fragment","total","TotalObjectsIcon","objects","prettyNumber","withStyles","wizardStepContainer","flexDirection","flex","wizardComponent","overflowY","minHeight","wizardModal","buttonsContainer","paddingBottom","buttonInnerContainer","page","pageChange","loadingStep","forModal","componentRender","LinearProgress","buttons","map","btn","Button","type","toPage","action","buttonAction","enabled","wizFromContainer","wizFromModal","modalWizardSteps","borderBottom","listStyle","paddingLeft","buttonList","outline","boxShadow","paddedContentGrid","stepsLabel","stepsMasterContainer","maxHeight","verticalSteps","borderRight","stepsContainer","stepItem","wizardSteps","_useState","useState","_useState2","_slicedToArray","currentStep","setCurrentStep","toElement","lastPage","length","nextPage","prevPage","pg","step","index","md","lg","xl","List","component","dense","ListItem","toLowerCase","replaceAll","button","disableRipple","ListItemText","WizardPage","_objectSpread","remoteBucketList","gridTemplateColumns","errorIcon","successIcon","hide","opacity","transitionDuration","modalBasic","wizardCommon","open","closeModalAndRefresh","buckets","dispatch","useAppDispatch","bucketsToAlter","setBucketsToAlter","_useState3","_useState4","addLoading","setAddLoading","_useState5","_useState6","externalLoading","setExternalLoading","_useState7","_useState8","accessKey","setAccessKey","_useState9","_useState10","secretKey","setSecretKey","_useState11","_useState12","targetURL","setTargetURL","_useState13","_useState14","region","setRegion","_useState15","_useState16","useTLS","setUseTLS","_useState17","_useState18","replicationMode","setReplicationMode","_useState19","_useState20","bandwidthScalar","setBandwidthScalar","_useState21","_useState22","bandwidthUnit","setBandwidthUnit","_useState23","_useState24","healthCheck","setHealthCheck","_useState25","_useState26","relationBuckets","setRelationBuckets","_useState27","_useState28","remoteBucketsOpts","setRemoteBucketOpts","_useState29","_useState30","responseItem","setResponseItem","optionsForBucketsDrop","remoteBucketName","useEffect","bucketsAlter","relationBucketsAlter","forEach","push","LogoToShow","_ref2","errString","CheckCircleOutlineIcon","Tooltip","title","placement","ErrorOutlineIcon","updateItem","indexItem","updatedList","_toConsumableArray","removeSuccessItems","newBucketsToAlter","newRelationBuckets","successElement","errorString","indexToRemove","indexOf","originBucket","splice","ModalWrapper","modalOpen","onClose","GenericWizard","PredefinedList","content","join","descriptionText","InputBoxWrapper","target","placeholder","FormSwitchWrapper","SelectWrapper","options","validity","valid","min","pattern","overlayObject","InputUnitMenu","onUnitChange","newValue","unitSelected","unitsList","k8sScalarUnitsExcluding","wizardPageJump","remoteConnectInfo","api","listExternalBuckets","then","res","data","arrayReplaceBuckets","element","catch","err","setModalErrorSnackMessage","errorToHandler","error","errorItem","initialBucket","bucketResponse","find","stateOfItem","event","replicate","destinationBucket","endURL","hc","parseInt","remoteBucketsInfo","bucketsRelation","syncMode","bandwidth","getBytes","healthCheckPeriod","bucketsReplication","setMultiBucketReplication","response","states","replicationState","filterErrors","filter","itm","setTimeout","resultGrid","spacingUtils","modalStyleUtils","formFieldStyles","createTenantCommon","_results$results","loadingTiers","setLoadingTiers","tiersList","setTiersList","prefix","setPrefix","tags","setTags","storageClass","setStorageClass","NCTransitionSC","setNCTransitionSC","expiredObjectDM","setExpiredObjectDM","NCExpirationDays","setNCExpirationDays","NCTransitionDays","setNCTransitionDays","ilmType","setIlmType","expiryDays","setExpiryDays","transitionDays","setTransitionDays","isFormValid","setIsFormValid","results","setResults","admin","objList","tier","tierType","formScrollable","formFieldRow","fieldGroup","RadioGroupSelector","currentSelection","selectorOptions","QueryMultiSelector","elements","vl","keyPlaceholder","valuePlaceholder","withBorder","rules","expiry","expiry_days","noncurrentversion_expiration_days","transition","transition_days","noncurrentversion_transition_days","noncurrentversion_transition_storage_class","storage_class","lifecycleInsert","expired_object_delete_marker","addMultiBucketLifecycle","resultItem","bucketList","searchField","minWidth","containerForHeader","actionsTray","records","setRecords","loading","setLoading","filterBuckets","setFilterBuckets","selectedBuckets","setSelectedBuckets","replicationModalOpen","setReplicationModalOpen","lifecycleModalOpen","setLifecycleModalOpen","canPutLifecycle","setCanPutLifecycle","setBulkSelect","features","useSelector","selFeatures","obOnly","includes","setHelpName","listBuckets","setLoadingObjects","setErrorSnackMessage","filteredRecords","b","hasBuckets","selectListBuckets","targetD","failLifecycle","BUCKET_LIFECYCLE","canCreateBucket","IAM_SCOPES","S3_CREATE_BUCKET","canListBuckets","S3_LIST_BUCKET","S3_ALL_LIST_BUCKET","BulkReplicationModal","unselectAll","BulkLifecycleModal","PageHeaderWrapper","actions","HelpMenu","PageLayout","AutoColorIcon","SearchBox","overrideClass","TooltipWrapper","tooltip","icon","SelectMultipleIcon","selectAllBuckets","SelectAllIcon","permissionTooltipHelper","LifecycleConfigIcon","MultipleBucketsIcon","RefreshIcon","IAM_PAGES","ADD_BUCKETS","AddIcon","VirtualizedList","rowRenderFunction","BucketListItem","totalItems","alignContent","HelpBox","iconComponent","help","SecureComponent","scopes","resource","CONSOLE_UI_RESOURCE","AButton","fieldBasic","tooltipHelper","checkboxIcons","fieldContainer","flexBasis","flexWrap","noTopMargin","_ref$checked","_ref$disabled","_ref$noTopMargin","_ref$tooltip","_ref$overrideLabelCla","overrideLabelClasses","overrideCheckboxStyles","React","Checkbox","inputProps","checkedIcon","unCheckedIcon","disableFocusRipple","focusRipple","centerRipple","disableTouchRipple","InputLabel","htmlFor","noMinWidthLabel","tooltipContainer","HelpIcon","StyledSwitch","switchBase","transform","common","white","thumb","track","transitions","create","focusVisible","switchContainer","Switch","indicatorLabelOn","indicatorLabel","fieldDescription","_ref$label","_ref$switchOnly","switchOnly","_ref$description","description","indicatorLabels","_ref$extraInputProps","extraInputProps","switchComponent","inputLabel","inputStyles","inputFieldStyles","InputField","props","TextField","InputProps","textBoxContainer","flexGrow","overlayAction","right","maxWidth","_ref$type","_ref$autoComplete","autoComplete","_ref$multiline","multiline","_ref$index","_ref$error","_ref$required","required","_ref$placeholder","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","_ref$autoFocus","autoFocus","_ref$className","onKeyPress","onFocus","onPaste","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","errorInField","inputBoxContainer","fullWidth","helperText","inputRebase","IconButton","buttonTrigger","_React$useState","_React$useState2","anchorEl","setAnchorEl","Boolean","handleClose","newUnit","undefined","currentTarget","Menu","anchorOrigin","vertical","horizontal","transformOrigin","MenuItem","predefinedList","_ref$multiLine","multiLine","actionButton","prefinedContainer","predefinedTitle","includesActionButton","innerContentMultiline","innerContent","overlayShareOption","inputWithBorder","lineInputBoxes","queryDiv","alignSelf","_ref$keyPlaceholder","_ref$valuePlaceholder","_ref$withBorder","currentKeys","setCurrentKeys","currentValues","setCurrentValues","bottomList","createRef","elementsSplit","keys","values","splittedVals","refScroll","current","scrollIntoView","firstUpdate","useRef","useLayoutEffect","debouncedOnChange","onChangeKey","persist","updatedElement","onChangeValue","debounce","queryString","keyVal","insertString","inputs","trim","keysList","valuesList","addEmptyLine","ref","radioStyles","radioIcons","RadioButton","Radio","radioSelectedIcon","radioUnselectedIcon","optionLabel","checkedOption","_ref$selectorOptions","_ref$disableOptions","disableOptions","_ref$displayInColumn","displayInColumn","RadioGroup","row","selectorOption","FormControlLabel","control","SelectStyled","lineHeight","input","borderColor","InputBase","FormControl","Select","option"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/8045.40b15543.chunk.js b/portal-ui/build/static/js/8045.40b15543.chunk.js new file mode 100644 index 000000000..fcc540746 --- /dev/null +++ b/portal-ui/build/static/js/8045.40b15543.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[8045],{68045:function(e,t,n){n.r(t),n.d(t,{default:function(){return $}});var a=n(4942),i=n(93433),r=n(29439),s=n(72791),o=n(57689),c=n(29945),l=n(40986),u=n(23814),d=n(38442),h=n(56087),x=n(87995),g=n(81551),m=n(78687),p=n(46078),f=n(54756),b=n(47974),j=n(31776),v=n(82342),C=n(99670),k=n(73996),Z=n(27454),S=n(81806),y=n(59114),_=n(66514),w=n(1413),E=n(11135),T=n(25787),B=n(26181),N=n.n(B),F=n(15146),z=n(98946),L=n(56028),R=n(80184),I=(0,T.Z)((function(e){return(0,E.Z)({wizardStepContainer:{display:"flex",flexDirection:"column",flex:1},wizardComponent:{overflowY:"auto",marginBottom:10,height:"calc(100vh - 100px - 80px)",minHeight:400,flex:1,width:"100%"},wizardModal:{overflowY:"auto",marginBottom:10,height:"calc(100vh - 515px)"},buttonsContainer:{display:"flex",flexDirection:"row",justifyContent:"flex-start",padding:"10px 0",borderTop:"#EAEAEA 1px solid","& button":{marginLeft:10},"&.forModal":{paddingBottom:0}},buttonInnerContainer:{width:"100%",display:"flex",justifyContent:"flex-end",marginRight:15}})}))((function(e){var t=e.classes,n=e.page,a=e.pageChange,i=e.loadingStep,r=e.forModal;return(0,R.jsxs)("div",{className:t.wizardStepContainer,children:[(0,R.jsx)("div",{className:r?t.wizardModal:t.wizardComponent,children:n.componentRender}),i&&(0,R.jsx)("div",{children:(0,R.jsx)(l.Z,{})}),(0,R.jsx)("div",{className:"".concat(t.buttonsContainer," ").concat(r?"forModal":""),children:(0,R.jsx)("div",{className:t.buttonInnerContainer,children:n.buttons.map((function(e){return e.componentRender?e.componentRender:(0,R.jsx)(c.zxk,{id:"wizard-button-"+e.label,variant:"regular",onClick:function(){!function(e){switch(e.type){case"next":a("++");break;case"back":a("--");break;case"to":a(e.toPage||0)}e.action&&e.action(a)}(e)},disabled:!e.enabled,label:e.label},"button-".concat(n.label,"-").concat(e.label))}))})})]})})),M=n(90493),A=n(61889),K=n(15021),P=n(49900),D=(0,T.Z)((function(e){return(0,E.Z)({wizFromContainer:{},wizFromModal:{position:"relative"},modalWizardSteps:{padding:5,borderBottom:"#eaeaea 1px solid","& ul":{padding:0,marginTop:0,display:"flex",justifyContent:"space-evenly","& li":{listStyle:"lower-roman","&::marker":{paddingLeft:15}}}},buttonList:{backgroundColor:"transparent",border:"none",cursor:"pointer","&:not(:disabled):hover":{textDecoration:"underline"},"&:selected, &:active, &:focus, &:focus:active":{border:"none",outline:0,boxShadow:"none"}},paddedContentGrid:{marginTop:8,padding:"0 10px",minHeight:400},stepsLabel:{fontSize:20,color:"#393939",fontWeight:600,margin:"15px 12px","&.stepsModalTitle":{textAlign:"center",width:"100%",marginTop:0,marginBottom:10}},stepsMasterContainer:{position:"sticky",top:0,backgroundColor:"#FFFFFF",width:"100%",maxHeight:90},verticalSteps:{borderRight:"1px solid #E5E5E5",background:"#F8F8F8"},stepsContainer:{paddingTop:0,"& .MuiButtonBase-root.Mui-selected":{background:"#E5E5E5"}},stepItem:{minHeight:60,borderBottom:"1px solid #E5E5E5","&:hover":{background:"rgba(247,247,247,0.7)"}}})}))((function(e){var t=e.classes,n=e.wizardSteps,a=e.loadingStep,i=e.forModal,o=(0,s.useState)(0),c=(0,r.Z)(o,2),l=c[0],u=c[1],d=function(e){var t=n.length-1;if("++"===e){var a=l+1;a>t&&(a=t),u(a)}if("--"===e){var i=l-1;i<0&&(i=0),u(i)}if("number"===typeof e){var r=e;e<0&&(r=0),e>t&&(r=t),u(r)}};if(0===n.length)return null;return(0,R.jsxs)(A.ZP,{container:!0,className:i?t.wizFromModal:t.wizFromContainer,children:[i?(0,R.jsx)(s.Fragment,{children:(0,R.jsxs)("div",{className:t.stepsMasterContainer,children:[(0,R.jsx)("div",{className:"".concat(t.stepsLabel," stepsModalTitle"),children:"Steps"}),(0,R.jsx)("div",{className:t.modalWizardSteps,children:(0,R.jsx)("ul",{children:n.map((function(e,n){return(0,R.jsx)("li",{children:(0,R.jsx)("button",{onClick:function(){return d(n)},disabled:n>l,className:t.buttonList,children:e.label})},"wizard-".concat(n.toString()))}))})})]})}):(0,R.jsx)(s.Fragment,{children:(0,R.jsx)(A.ZP,{item:!0,xs:12,sm:2,md:2,lg:2,xl:2,className:t.verticalSteps,children:(0,R.jsx)(s.Fragment,{children:(0,R.jsx)(M.Z,{component:"nav",dense:!0,classes:{root:t.stepsContainer},children:n.map((function(e,n){return(0,R.jsx)(K.ZP,{id:"wizard-step-"+e.label.toLowerCase().replaceAll(" ","-"),button:!0,disableRipple:!0,onClick:function(){return d(n)},selected:l===n,classes:{root:t.stepItem},children:(0,R.jsx)(P.Z,{primary:e.label})},"wizard-".concat(n.toString()))}))})})})}),(0,R.jsx)(A.ZP,{item:!0,xs:12,sm:i?12:10,md:i?12:10,lg:i?12:10,xl:i?12:10,className:i?"":t.paddedContentGrid,children:(0,R.jsx)(I,{page:n[l],pageChange:d,loadingStep:a,forModal:i})})]})})),U=n(17420),W=(0,T.Z)((function(e){return(0,E.Z)((0,w.Z)((0,w.Z)((0,w.Z)((0,w.Z)({resultGrid:{display:"grid",gridTemplateColumns:"45px auto",alignItems:"center",justifyContent:"stretch"},errorIcon:{paddingTop:5,color:"#C72C48"},successIcon:{paddingTop:5,color:"#42C91A"}},u.bK),u.ID),u.DF),u.QV))}))((function(e){var t,n=e.open,a=e.closeModalAndRefresh,i=e.classes,o=e.buckets,l=(0,g.TL)(),u=(0,s.useState)(!1),d=(0,r.Z)(u,2),h=d[0],m=d[1],p=(0,s.useState)(!0),f=(0,r.Z)(p,2),b=f[0],C=f[1],k=(0,s.useState)([]),Z=(0,r.Z)(k,2),S=Z[0],y=Z[1],_=(0,s.useState)(""),E=(0,r.Z)(_,2),T=E[0],B=E[1],I=(0,s.useState)(""),M=(0,r.Z)(I,2),A=M[0],K=M[1],P=(0,s.useState)(""),W=(0,r.Z)(P,2),O=W[0],q=W[1],Y=(0,s.useState)(""),H=(0,r.Z)(Y,2),V=H[0],G=H[1],Q=(0,s.useState)(!1),X=(0,r.Z)(Q,2),J=X[0],$=X[1],ee=(0,s.useState)("0"),te=(0,r.Z)(ee,2),ne=te[0],ae=te[1],ie=(0,s.useState)("0"),re=(0,r.Z)(ie,2),se=re[0],oe=re[1],ce=(0,s.useState)("expiry"),le=(0,r.Z)(ce,2),ue=le[0],de=le[1],he=(0,s.useState)("0"),xe=(0,r.Z)(he,2),ge=xe[0],me=xe[1],pe=(0,s.useState)("0"),fe=(0,r.Z)(pe,2),be=fe[0],je=fe[1],ve=(0,s.useState)(!1),Ce=(0,r.Z)(ve,2),ke=Ce[0],Ze=Ce[1],Se=(0,s.useState)(null),ye=(0,r.Z)(Se,2),_e=ye[0],we=ye[1];(0,s.useEffect)((function(){b&&j.h.admin.tiersList().then((function(e){var t=N()(e.data,"items",[]);if(null!==t&&t.length>=1){var n=t.map((function(e){var t=e.type,n=N()(e,"".concat(t,".name"),"");return{label:n,value:n}}));y(n),n.length>0&&q(n[0].value)}C(!1)})).catch((function(e){C(!1),l((0,x.zb)((0,v.g)(e.error)))}))}),[b,l]),(0,s.useEffect)((function(){var e=!0;"expiry"!==ue&&""===O&&(e=!1),Ze(e)}),[ue,ge,be,O]);var Ee=function(e){var t=e.errString;switch(t){case"":return(0,R.jsx)("div",{className:i.successIcon,children:(0,R.jsx)(z.Z,{})});case"n/a":return null;default:if(t)return(0,R.jsx)("div",{className:i.errorIcon,children:(0,R.jsx)(c.ua7,{tooltip:t,placement:"top",children:(0,R.jsx)(F.Z,{})})})}return null};return(0,R.jsx)(L.Z,{modalOpen:n,onClose:function(){a(!1)},title:"Set Lifecycle to multiple buckets",children:(0,R.jsx)(D,{loadingStep:h||b,wizardSteps:[{label:"Lifecycle Configuration",componentRender:(0,R.jsxs)(s.Fragment,{children:[(0,R.jsx)(c.rjZ,{item:!0,xs:12,children:(0,R.jsx)(c.bSr,{label:"Local Buckets to replicate",children:o.join(", ")})}),(0,R.jsx)("h4",{children:"Remote Endpoint Configuration"}),(0,R.jsxs)(c.ltY,{withBorders:!1,containerPadding:!1,children:[(0,R.jsxs)("fieldset",{className:"inputItem",children:[(0,R.jsx)("legend",{children:"Lifecycle Configuration"}),(0,R.jsx)(c.Eep,{currentValue:ue,id:"quota_type",name:"quota_type",label:"ILM Rule",onChange:function(e){de(e.target.value)},selectorOptions:[{value:"expiry",label:"Expiry"},{value:"transition",label:"Transition"}]}),"expiry"===ue?(0,R.jsxs)(s.Fragment,{children:[(0,R.jsx)(c.Wzg,{type:"number",id:"expiry_days",name:"expiry_days",onChange:function(e){me(e.target.value)},label:"Expiry Days",value:ge,min:"0"}),(0,R.jsx)(c.Wzg,{type:"number",id:"noncurrentversion_expiration_days",name:"noncurrentversion_expiration_days",onChange:function(e){ae(e.target.value)},label:"Non-current Expiration Days",value:ne,min:"0"})]}):(0,R.jsxs)(s.Fragment,{children:[(0,R.jsx)(c.Wzg,{type:"number",id:"transition_days",name:"transition_days",onChange:function(e){je(e.target.value)},label:"Transition Days",value:be,min:"0"}),(0,R.jsx)(c.Wzg,{type:"number",id:"noncurrentversion_transition_days",name:"noncurrentversion_transition_days",onChange:function(e){oe(e.target.value)},label:"Non-current Transition Days",value:se,min:"0"}),(0,R.jsx)(c.Wzg,{id:"noncurrentversion_t_SC",name:"noncurrentversion_t_SC",onChange:function(e){G(e.target.value)},placeholder:"Set Non-current Version Transition Storage Class",label:"Non-current Version Transition Storage Class",value:V}),(0,R.jsx)(c.PhF,{label:"Storage Class",id:"storage_class",name:"storage_class",value:O,onChange:function(e){q(e)},options:S})]})]}),(0,R.jsxs)("fieldset",{className:"inputItem",children:[(0,R.jsx)("legend",{children:"File Configuration"}),(0,R.jsx)(c.Wzg,{id:"prefix",name:"prefix",onChange:function(e){B(e.target.value)},label:"Prefix",value:T}),(0,R.jsx)(U.Z,{name:"tags",label:"Tags",elements:A,onChange:function(e){K(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0}),(0,R.jsx)(c.rsf,{value:"expired_delete_marker",id:"expired_delete_marker",name:"expired_delete_marker",checked:J,onChange:function(e){$(e.target.checked)},label:"Expired Object Delete Marker"})]})]})]}),buttons:[{type:"custom",label:"Create Rules",enabled:!b&&!h&&ke,action:function(e){var t={};if("expiry"===ue){var n={expiry_days:parseInt(ge)};t=(0,w.Z)((0,w.Z)({},n),{},{noncurrentversion_expiration_days:parseInt(ne)})}else{var a={transition_days:parseInt(be)};t=(0,w.Z)((0,w.Z)({},a),{},{noncurrentversion_transition_days:parseInt(se),noncurrentversion_transition_storage_class:V,storage_class:O})}var i=(0,w.Z)({buckets:o,type:ue,prefix:T,tags:A,expired_object_delete_marker:J},t);j.h.buckets.addMultiBucketLifecycle(i).then((function(t){m(!1),we(t.data),e("++")})).catch((function(e){m(!1),l((0,x.zb)((0,v.g)(e.error)))}))}}]},{label:"Results",componentRender:(0,R.jsxs)(s.Fragment,{children:[(0,R.jsx)("h3",{children:"Multi Bucket lifecycle Assignments Results"}),(0,R.jsx)(c.rjZ,{container:!0,children:(0,R.jsxs)(c.rjZ,{item:!0,xs:12,className:i.formScrollable,children:[(0,R.jsx)("h4",{children:"Buckets Results"}),null===_e||void 0===_e||null===(t=_e.results)||void 0===t?void 0:t.map((function(e){return(0,R.jsxs)("div",{className:i.resultGrid,children:[Ee({errString:e.error||""}),(0,R.jsx)("span",{children:e.bucketName})]})}))]})})]}),buttons:[{type:"custom",label:"Done",enabled:!h,action:function(){return a(!0)}}]}],forModal:!0})})})),O=n(49535),q=n(17691),Y=n(11087),H=n(45248),V=q.ZP.div((function(e){var t=e.theme;return{border:"".concat(N()(t,"borderColor","#eaeaea")," 1px solid"),borderRadius:3,padding:15,cursor:"pointer","&.disabled":{backgroundColor:N()(t,"signalColors.danger","red")},"&:hover":{backgroundColor:N()(t,"boxBackground","#FBFAFA")},"& .bucketTitle":{display:"flex",alignItems:"center",justifyContent:"flex-start",gap:10,"& h1":(0,a.Z)({padding:0,margin:0,marginBottom:5,fontSize:22,color:N()(t,"screenTitle.iconColor","#07193E")},"@media (max-width: ".concat(c.Egj.md,"px)"),{marginBottom:0})},"& .bucketDetails":(0,a.Z)({display:"flex",gap:40,"& span":{fontSize:14}},"@media (max-width: ".concat(c.Egj.md,"px)"),{flexFlow:"column-reverse",gap:5}),"& .bucketMetrics":(0,a.Z)({display:"flex",alignItems:"center",marginTop:20,gap:25,borderTop:"".concat(N()(t,"borderColor","#E2E2E2")," 1px solid"),paddingTop:20,"& svg.bucketIcon":{color:N()(t,"screenTitle.iconColor","#07193E"),fill:N()(t,"screenTitle.iconColor","#07193E")},"& .metric":{"& .min-icon":{color:N()(t,"fontColor","#000"),width:13,marginRight:5}},"& .metricLabel":{fontSize:14,fontWeight:"bold",color:N()(t,"fontColor","#000")},"& .metricText":{fontSize:24,fontWeight:"bold"},"& .unit":{fontSize:12,fontWeight:"normal"}},"@media (max-width: ".concat(c.Egj.md,"px)"),{marginTop:8,paddingTop:8})}})),G=function(e){var t=e.bucket,n=e.onSelect,a=e.selected,i=e.bulkSelect,r=(0,o.s0)(),l=(0,H.ae)("".concat(t.size)||"0"),u=l.split(" ")[0],x=l.split(" ")[1],g=N()(t,"details.quota.quota","0"),m=(0,H.Am)(g,!0,!1),p=(0,d.F)(t.name,h.D[h.EI.BUCKET_ADMIN])&&!1;return(0,R.jsxs)(V,{onClick:function(){r("/buckets/".concat(t.name,"/admin"))},id:"manageBucket-".concat(t.name),className:"bucket-item ".concat(p?"disabled":""),children:[(0,R.jsxs)(c.xuv,{className:"bucketTitle",children:[i&&(0,R.jsx)(c.xuv,{onClick:function(e){e.stopPropagation()},children:(0,R.jsx)(c.XZJ,{checked:a,id:"select-".concat(t.name),label:"",name:"select-".concat(t.name),onChange:function(e){n(e)},value:t.name})}),(0,R.jsxs)("h1",{children:[t.name," ",p]})]}),(0,R.jsxs)(c.xuv,{className:"bucketDetails",children:[(0,R.jsxs)("span",{id:"created-".concat(t.name),children:[(0,R.jsx)("strong",{children:"Created:"})," ",t.creation_date?new Date(t.creation_date).toString():"n/a"]}),(0,R.jsxs)("span",{id:"access-".concat(t.name),children:[(0,R.jsx)("strong",{children:"Access:"})," ",function(e){var t,n,a,i,r,s;return null===(t=e.rw_access)||void 0===t||!t.read||null!==(n=e.rw_access)&&void 0!==n&&n.write?null!==(a=e.rw_access)&&void 0!==a&&a.read||null===(i=e.rw_access)||void 0===i||!i.write?null!==(r=e.rw_access)&&void 0!==r&&r.read&&null!==(s=e.rw_access)&&void 0!==s&&s.write?"R/W":"":"W":"R"}(t)]})]}),(0,R.jsxs)(c.xuv,{className:"bucketMetrics",children:[(0,R.jsx)(Y.rU,{to:"/buckets/".concat(t.name,"/admin"),children:(0,R.jsx)(c.wNb,{className:"bucketIcon",style:{height:48,width:48}})}),(0,R.jsxs)(c.rjZ,{item:!0,className:"metric",children:[(0,R.jsx)(c.rHZ,{}),(0,R.jsx)("span",{className:"metricLabel",children:"Usage"}),(0,R.jsxs)("div",{className:"metricText",children:[u,(0,R.jsx)("span",{className:"unit",children:x}),"0"!==g&&(0,R.jsxs)(s.Fragment,{children:[" ","/ ",m.total,(0,R.jsx)("span",{className:"unit",children:m.unit})]})]})]}),(0,R.jsxs)(c.rjZ,{item:!0,className:"metric",children:[(0,R.jsx)(c.xpX,{}),(0,R.jsx)("span",{className:"metricLabel",children:"Objects"}),(0,R.jsx)("div",{className:"metricText",children:t.objects?(0,H.CE)(t.objects):0})]})]})]})},Q=n(64163),X=n(84741),J=(0,T.Z)((function(e){return(0,E.Z)((0,w.Z)((0,w.Z)({remoteBucketList:{display:"grid",gridTemplateColumns:"auto auto 45px",alignItems:"center",justifyContent:"stretch"},errorIcon:{color:"#C72C48"},successIcon:{color:"#42C91A"},hide:{opacity:0,transitionDuration:"0.3s"}},u.oO),u.AK))}))((function(e){var t=e.open,n=e.closeModalAndRefresh,a=e.classes,o=e.buckets,l=(0,g.TL)(),u=(0,s.useState)([]),d=(0,r.Z)(u,2),h=d[0],m=d[1],p=(0,s.useState)(!1),f=(0,r.Z)(p,2),b=f[0],C=f[1],k=(0,s.useState)(!1),Z=(0,r.Z)(k,2),S=Z[0],y=Z[1],_=(0,s.useState)(""),w=(0,r.Z)(_,2),E=w[0],T=w[1],B=(0,s.useState)(""),I=(0,r.Z)(B,2),M=I[0],A=I[1],K=(0,s.useState)(""),P=(0,r.Z)(K,2),U=P[0],W=P[1],O=(0,s.useState)(""),q=(0,r.Z)(O,2),Y=q[0],V=q[1],G=(0,s.useState)(!0),J=(0,r.Z)(G,2),$=J[0],ee=J[1],te=(0,s.useState)("async"),ne=(0,r.Z)(te,2),ae=ne[0],ie=ne[1],re=(0,s.useState)("100"),se=(0,r.Z)(re,2),oe=se[0],ce=se[1],le=(0,s.useState)("Gi"),ue=(0,r.Z)(le,2),de=ue[0],he=ue[1],xe=(0,s.useState)("60"),ge=(0,r.Z)(xe,2),me=ge[0],pe=ge[1],fe=(0,s.useState)([]),be=(0,r.Z)(fe,2),je=be[0],ve=be[1],Ce=(0,s.useState)([]),ke=(0,r.Z)(Ce,2),Ze=ke[0],Se=ke[1],ye=(0,s.useState)([]),_e=(0,r.Z)(ye,2),we=_e[0],Ee=_e[1],Te=Ze.map((function(e){return{label:e,value:e}}));(0,s.useEffect)((function(){if(0===je.length){var e=[],t=[];o.forEach((function(n){e.push(n),t.push("")})),ve(t),m(e)}}),[o,je.length]);var Be=function(e){var t=e.errString;switch(t){case"":return(0,R.jsx)("div",{className:a.successIcon,children:(0,R.jsx)(z.Z,{})});case"n/a":return null;default:if(t)return(0,R.jsx)("div",{className:a.errorIcon,children:(0,R.jsx)(c.ua7,{tooltip:t,placement:"top",children:(0,R.jsx)(F.Z,{})})})}return null},Ne=function(e,t){var n=(0,i.Z)(je);n[e]=t,ve(n)},Fe=function(e){var t=(0,i.Z)(h),n=(0,i.Z)(je);null===e||void 0===e||e.forEach((function(e){var a=N()(e,"errorString","");if(!a||""===a){var i=t.indexOf(e.originBucket||"");t.splice(i,1),n.splice(i,1)}})),m(t),ve(n)};return(0,R.jsx)(L.Z,{modalOpen:t,onClose:function(){n(!1)},title:"Set Multiple Bucket Replication",children:(0,R.jsx)(D,{loadingStep:b||S,wizardSteps:[{label:"Remote Configuration",componentRender:(0,R.jsxs)(s.Fragment,{children:[(0,R.jsx)(c.rjZ,{item:!0,xs:12,children:(0,R.jsx)(Q.Z,{label:"Local Buckets to replicate",content:h.join(", ")})}),(0,R.jsx)("h4",{children:"Remote Endpoint Configuration"}),(0,R.jsx)("span",{className:a.descriptionText,children:"Please avoid the use of root credentials for this feature"}),(0,R.jsx)("br",{}),(0,R.jsx)("br",{}),(0,R.jsxs)(c.ltY,{containerPadding:!1,withBorders:!1,children:[(0,R.jsx)(c.Wzg,{id:"accessKey",name:"accessKey",onChange:function(e){T(e.target.value)},label:"Access Key",value:E}),(0,R.jsx)(c.Wzg,{id:"secretKey",name:"secretKey",onChange:function(e){A(e.target.value)},label:"Secret Key",value:M}),(0,R.jsx)(c.Wzg,{id:"targetURL",name:"targetURL",onChange:function(e){W(e.target.value)},placeholder:"play.min.io:9000",label:"Target URL",value:U}),(0,R.jsx)(c.rsf,{checked:$,id:"useTLS",name:"useTLS",label:"Use TLS",onChange:function(e){ee(e.target.checked)},value:"yes"}),(0,R.jsx)(c.Wzg,{id:"region",name:"region",onChange:function(e){V(e.target.value)},label:"Region",value:Y}),(0,R.jsx)(c.PhF,{id:"replication_mode",name:"replication_mode",onChange:function(e){ie(e)},label:"Replication Mode",value:ae,options:[{label:"Asynchronous",value:"async"},{label:"Synchronous",value:"sync"}]}),"async"===ae&&(0,R.jsx)(c.Wzg,{type:"number",id:"bandwidth_scalar",name:"bandwidth_scalar",onChange:function(e){e.target.validity.valid&&ce(e.target.value)},label:"Bandwidth",value:oe,min:"0",pattern:"[0-9]*",overlayObject:(0,R.jsx)(X.Z,{id:"quota_unit",onUnitChange:function(e){he(e)},unitSelected:de,unitsList:(0,H.zQ)(["Ki"]),disabled:!1})}),(0,R.jsx)(c.Wzg,{id:"healthCheck",name:"healthCheck",onChange:function(e){pe(e.target.value)},label:"Health Check Duration",value:me})]})]}),buttons:[{type:"custom",label:"Next",enabled:!S,action:function(e){var t={accessKey:E,secretKey:M,targetURL:U,useTLS:$};y(!0),j.h.listExternalBuckets.listExternalBuckets(t).then((function(t){var n=N()(t.data,"buckets",[]);if(n&&n.length>0){var a=n.map((function(e){return e.name}));Se(a)}e("++"),y(!1)})).catch((function(e){y(!1),l((0,x.zb)((0,v.g)(e.error)))}))}}]},{label:"Bucket Assignments",componentRender:(0,R.jsxs)(s.Fragment,{children:[(0,R.jsx)("h3",{children:"Remote Bucket Assignments"}),(0,R.jsx)("span",{className:a.descriptionText,children:"Please select / type the desired remote bucket were you want the local data to be replicated."}),(0,R.jsx)("div",{className:a.remoteBucketList,children:h.map((function(e,t){var n,i=function(e){if(we&&we.length>0){var t=we.find((function(t){return t.originBucket===e}));if(t)return N()(t,"errorString","")||""}return"n/a"}(e);return(0,R.jsxs)(s.Fragment,{children:[(0,R.jsx)("div",{className:""===i?a.hide:"",children:e}),(0,R.jsx)("div",{className:""===i?a.hide:"",children:(n=t,Ze.length>0?(0,R.jsx)(s.Fragment,{children:(0,R.jsx)(c.PhF,{label:"",id:"assign-bucket-".concat(n),name:"assign-bucket-".concat(n),value:je[n],onChange:function(e){Ne(n,e)},options:Te,disabled:b})}):(0,R.jsx)(s.Fragment,{children:(0,R.jsx)(c.Wzg,{id:"assign-bucket-".concat(n),name:"assign-bucket-".concat(n),label:"",onChange:function(e){Ne(n,e.target.value)},value:je[n],disabled:b})}))}),(0,R.jsx)("div",{className:""===i?a.hide:"",children:we&&we.length>0&&(0,R.jsx)(Be,{errString:i})})]},"buckets-assignation-".concat(t.toString(),"-").concat(e))}))})]}),buttons:[{type:"back",label:"Back",enabled:!0},{type:"next",label:"Create",enabled:!b,action:function(){C(!0);var e=h.map((function(e,t){return{originBucket:e,destinationBucket:je[t]}})),t="".concat($?"https://":"http://").concat(U),a=parseInt(me),i={accessKey:E,secretKey:M,targetURL:t,region:Y,bucketsRelation:e,syncMode:ae,bandwidth:"async"===ae?parseInt((0,H.Pw)(oe,de,!0)):0,healthCheckPeriod:a};j.h.bucketsReplication.setMultiBucketReplication(i).then((function(e){C(!1);var t=e.data.replicationState;Ee(t);var a=null===t||void 0===t?void 0:t.filter((function(e){return e.errorString&&""!==e.errorString}));0===(null===a||void 0===a?void 0:a.length)?n(!0):setTimeout((function(){Fe(t)}),500)})).catch((function(e){C(!1),l((0,x.zb)((0,v.g)(e.error)))}))}}]}],forModal:!0})})})),$=function(){var e=(0,g.TL)(),t=(0,o.s0)(),n=(0,s.useState)([]),w=(0,r.Z)(n,2),E=w[0],T=w[1],B=(0,s.useState)(!0),N=(0,r.Z)(B,2),F=N[0],z=N[1],L=(0,s.useState)(""),I=(0,r.Z)(L,2),M=I[0],A=I[1],K=(0,s.useState)([]),P=(0,r.Z)(K,2),D=P[0],U=P[1],q=(0,s.useState)(!1),Y=(0,r.Z)(q,2),H=Y[0],V=Y[1],Q=(0,s.useState)(!1),X=(0,r.Z)(Q,2),$=X[0],ee=X[1],te=(0,s.useState)(!1),ne=(0,r.Z)(te,2),ae=ne[0],ie=ne[1],re=(0,s.useState)(!1),se=(0,r.Z)(re,2),oe=se[0],ce=se[1],le=(0,m.v9)(p.$4),ue=!(null===le||void 0===le||!le.includes("object-browser-only"));(0,s.useEffect)((function(){e((0,x.Sc)("ob_bucket_list"))}),[e]),(0,s.useEffect)((function(){if(F){z(!0),j.h.buckets.listBuckets().then((function(t){t.data?(z(!1),T(t.data.buckets||[]),e((0,f.Cn)(!0))):t.error&&(z(!1),e((0,x.Ih)((0,v.g)(t.error))))}))}}),[F,e]);var de=E.filter((function(e){return""===M||e.name.indexOf(M)>=0})),he=E.length>0,xe=function(e){var t=e.target,n=t.value,a=t.checked,r=(0,i.Z)(D);return a?r.push(n):r=r.filter((function(e){return e!==n})),U(r),r};(0,s.useEffect)((function(){var e=!1;D.forEach((function(t){(0,O.Z)(t,h.D[h.EI.BUCKET_LIFECYCLE],!0)?ie(!0):e=!0})),ie(!e)}),[D]);var ge=(0,O.Z)("*",[h.Ft.S3_CREATE_BUCKET]),me=(0,O.Z)("*",[h.Ft.S3_LIST_BUCKET,h.Ft.S3_ALL_LIST_BUCKET]);return(0,R.jsxs)(s.Fragment,{children:[H&&(0,R.jsx)(J,{open:H,buckets:D,closeModalAndRefresh:function(e){V(!1),e&&U([])}}),$&&(0,R.jsx)(W,{buckets:D,closeModalAndRefresh:function(e){ee(!1),e&&U([])},open:$}),!ue&&(0,R.jsx)(b.Z,{label:"Buckets",actions:(0,R.jsx)(C.Z,{})}),(0,R.jsxs)(c.Xgh,{children:[(0,R.jsxs)(c.rjZ,{item:!0,xs:12,sx:u.OR.actionsTray,children:[ue&&(0,R.jsx)(c.rjZ,{item:!0,xs:!0,children:(0,R.jsx)(k.Z,{marginRight:15,marginTop:10})}),he&&(0,R.jsx)(y.Z,{onChange:A,placeholder:"Search Buckets",value:M,sx:(0,a.Z)({minWidth:380},"@media (max-width: ".concat(c.Egj.md,"px)"),{minWidth:220})}),(0,R.jsxs)(c.rjZ,{item:!0,xs:12,sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",gap:5},children:[!ue&&(0,R.jsxs)(s.Fragment,{children:[(0,R.jsx)(Z.Z,{tooltip:he?oe?"Unselect Buckets":"Select Multiple Buckets":"",children:(0,R.jsx)(c.zxk,{id:"multiple-bucket-seection",onClick:function(){ce(!oe),U([])},icon:(0,R.jsx)(c.amE,{}),variant:oe?"callAction":"regular",disabled:!he})}),oe&&(0,R.jsx)(Z.Z,{tooltip:he?D.length===de.length?"Unselect All Buckets":"Select All Buckets":"",children:(0,R.jsx)(c.zxk,{id:"select-all-buckets",onClick:function(){if(D.length!==de.length){var e=de.map((function(e){return e.name}));U(e)}else U([])},icon:(0,R.jsx)(c.QQb,{}),variant:"regular"})}),(0,R.jsx)(Z.Z,{tooltip:he?ae?0===D.length?oe?"Please select at least one bucket on which to configure Lifecycle":"Use the Select Multiple Buckets button to choose buckets on which to configure Lifecycle":"Set Lifecycle":(0,h.MK)(h.D[h.EI.BUCKET_LIFECYCLE],"configure lifecycle for the selected buckets"):"",children:(0,R.jsx)(c.zxk,{id:"set-lifecycle",onClick:function(){ee(!0)},icon:(0,R.jsx)(c.QIv,{}),variant:"regular",disabled:0===D.length||!ae})}),(0,R.jsx)(Z.Z,{tooltip:he?0===D.length?oe?"Please select at least one bucket on which to configure Replication":"Use the Select Multiple Buckets button to choose buckets on which to configure Replication":"Set Replication":"",children:(0,R.jsx)(c.zxk,{id:"set-replication",onClick:function(){V(!0)},icon:(0,R.jsx)(c.D6F,{}),variant:"regular",disabled:0===D.length})})]}),(0,R.jsx)(Z.Z,{tooltip:"Refresh",children:(0,R.jsx)(c.zxk,{id:"refresh-buckets",onClick:function(){z(!0)},icon:(0,R.jsx)(c.DuK,{}),variant:"regular"})}),!ue&&(0,R.jsx)(Z.Z,{tooltip:ge?"":(0,h.MK)([h.Ft.S3_CREATE_BUCKET],"create a bucket"),children:(0,R.jsx)(c.zxk,{id:"create-bucket",onClick:function(){t(h.gA.ADD_BUCKETS)},icon:(0,R.jsx)(c.dtP,{}),variant:"callAction",disabled:!ge,label:"Create Bucket"})})]})]}),F&&(0,R.jsx)(l.Z,{}),!F&&(0,R.jsxs)(c.rjZ,{item:!0,xs:12,sx:{marginTop:25,height:"calc(100vh - 211px)","&.isEmbedded":{height:"calc(100vh - 128px)"}},className:ue?"isEmbedded":"",children:[0!==de.length&&(0,R.jsx)(_.Z,{rowRenderFunction:function(e){var t=de[e]||null;return t?(0,R.jsx)(G,{bucket:t,onSelect:xe,selected:D.includes(t.name),bulkSelect:oe}):null},totalItems:de.length}),0===de.length&&""!==M&&(0,R.jsx)(c.rjZ,{container:!0,children:(0,R.jsx)(c.rjZ,{item:!0,xs:8,children:(0,R.jsx)(c.KfX,{iconComponent:(0,R.jsx)(c.wNb,{}),title:"No Results",help:(0,R.jsx)(s.Fragment,{children:"No buckets match the filtering condition"})})})}),!he&&(0,R.jsx)(c.rjZ,{container:!0,children:(0,R.jsx)(c.rjZ,{item:!0,xs:8,children:(0,R.jsx)(c.KfX,{iconComponent:(0,R.jsx)(c.wNb,{}),title:"Buckets",help:(0,R.jsxs)(s.Fragment,{children:["MinIO uses buckets to organize objects. A bucket is similar to a folder or directory in a filesystem, where each bucket can hold an arbitrary number of objects.",(0,R.jsx)("br",{}),me?"":(0,R.jsxs)(s.Fragment,{children:[(0,R.jsx)("br",{}),(0,h.MK)([h.Ft.S3_LIST_BUCKET,h.Ft.S3_ALL_LIST_BUCKET],"view the buckets on this server"),(0,R.jsx)("br",{})]}),(0,R.jsxs)(d.s,{scopes:[h.Ft.S3_CREATE_BUCKET],resource:h.C3,children:[(0,R.jsx)("br",{}),"To get started,\xa0",(0,R.jsx)(S.Z,{onClick:function(){t(h.gA.ADD_BUCKETS)},children:"Create a Bucket."})]})]})})})})]})]})]})}},84741:function(e,t,n){var a=n(29439),i=n(72791),r=n(11135),s=n(25787),o=n(71715),c=n(77865),l=n(80184);t.Z=(0,s.Z)((function(e){return(0,r.Z)({buttonTrigger:{border:"#F0F2F2 1px solid",borderRadius:3,color:"#838383",backgroundColor:"#fff",fontSize:12}})}))((function(e){var t=e.classes,n=e.id,r=e.unitSelected,s=e.unitsList,u=e.disabled,d=void 0!==u&&u,h=e.onUnitChange,x=i.useState(null),g=(0,a.Z)(x,2),m=g[0],p=g[1],f=Boolean(m),b=function(e){p(null),""!==e&&h&&h(e)};return(0,l.jsxs)(i.Fragment,{children:[(0,l.jsx)("button",{id:"".concat(n,"-button"),"aria-controls":"".concat(n,"-menu"),"aria-haspopup":"true","aria-expanded":f?"true":void 0,onClick:function(e){p(e.currentTarget)},className:t.buttonTrigger,disabled:d,type:"button",children:r}),(0,l.jsx)(o.Z,{id:"".concat(n,"-menu"),"aria-labelledby":"".concat(n,"-button"),anchorEl:m,open:f,onClose:function(){b("")},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:s.map((function(e){return(0,l.jsx)(c.Z,{onClick:function(){return b(e.value)},children:e.label},"itemUnit-".concat(e.value,"-").concat(e.label))}))})]})}))},64163:function(e,t,n){var a=n(1413),i=n(72791),r=n(61889),s=n(11135),o=n(25787),c=n(23814),l=n(80184);t.Z=(0,o.Z)((function(e){return(0,s.Z)((0,a.Z)({},c.xx))}))((function(e){var t=e.classes,n=e.label,a=void 0===n?"":n,s=e.content,o=e.multiLine,c=void 0!==o&&o,u=e.actionButton;return(0,l.jsx)(i.Fragment,{children:(0,l.jsxs)(r.ZP,{className:t.prefinedContainer,children:[""!==a&&(0,l.jsx)(r.ZP,{item:!0,xs:12,className:t.predefinedTitle,children:a}),(0,l.jsxs)(r.ZP,{item:!0,xs:12,className:"".concat(t.predefinedList," ").concat(u?t.includesActionButton:""),children:[(0,l.jsx)(r.ZP,{item:!0,xs:12,className:c?t.innerContentMultiline:t.innerContent,children:s}),u&&(0,l.jsx)("div",{className:t.overlayShareOption,children:u})]})]})})}))},17420:function(e,t,n){var a=n(93433),i=n(29439),r=n(72791),s=n(26181),o=n.n(s),c=n(48573),l=n.n(c),u=n(29945),d=n(80184);t.Z=function(e){var t=e.elements,n=e.name,s=e.label,c=e.tooltip,h=void 0===c?"":c,x=e.keyPlaceholder,g=void 0===x?"":x,m=e.valuePlaceholder,p=void 0===m?"":m,f=e.onChange,b=e.withBorder,j=void 0!==b&&b,v=(0,r.useState)([""]),C=(0,i.Z)(v,2),k=C[0],Z=C[1],S=(0,r.useState)([""]),y=(0,i.Z)(S,2),_=y[0],w=y[1],E=(0,r.createRef)();(0,r.useEffect)((function(){if(1===k.length&&""===k[0]&&1===_.length&&""===_[0]&&t&&""!==t){var e=t.split("&"),n=[],a=[];e.forEach((function(e){var t=e.split("=");2===t.length&&(n.push(t[0]),a.push(t[1]))})),n.push(""),a.push(""),Z(n),w(a)}}),[k,_,t]),(0,r.useEffect)((function(){var e=E.current;e&&k.length>1&&e.scrollIntoView(!1)}),[k]);var T=(0,r.useRef)(!0);(0,r.useLayoutEffect)((function(){T.current?T.current=!1:F()}),[k,_]);var B=function(e){e.persist();var t=(0,a.Z)(k),n=o()(e.target,"dataset.index","0");t[parseInt(n)]=e.target.value,Z(t)},N=function(e){e.persist();var t=(0,a.Z)(_),n=o()(e.target,"dataset.index","0");t[parseInt(n)]=e.target.value,w(t)},F=l()((function(){var e="";k.forEach((function(t,n){if(k[n]&&_[n]){var a="".concat(t,"=").concat(_[n]);0!==n&&(a="&".concat(a)),e="".concat(e).concat(a)}})),f(e)}),500),z=_.map((function(e,t){return(0,d.jsxs)(u.rjZ,{item:!0,xs:12,className:"lineInputBoxes inputItem",children:[(0,d.jsx)(u.Wzg,{id:"".concat(n,"-key-").concat(t.toString()),label:"",name:"".concat(n,"-").concat(t.toString()),value:k[t],onChange:B,index:t,placeholder:g}),(0,d.jsx)("span",{className:"queryDiv",children:":"}),(0,d.jsx)(u.Wzg,{id:"".concat(n,"-value-").concat(t.toString()),label:"",name:"".concat(n,"-").concat(t.toString()),value:_[t],onChange:N,index:t,placeholder:p,overlayIcon:t===_.length-1?(0,d.jsx)(u.dtP,{}):null,overlayAction:function(){!function(){if(""!==k[k.length-1].trim()&&""!==_[_.length-1].trim()){var e=(0,a.Z)(k),t=(0,a.Z)(_);e.push(""),t.push(""),Z(e),w(t)}}()}})]},"query-pair-".concat(n,"-").concat(t.toString()))}));return(0,d.jsx)(r.Fragment,{children:(0,d.jsxs)(u.rjZ,{item:!0,xs:12,sx:{"& .lineInputBoxes":{display:"flex"},"& .queryDiv":{alignSelf:"center",margin:"-15px 4px 0",fontWeight:600}},children:[(0,d.jsxs)(u.AZs,{children:[s,""!==h&&(0,d.jsx)(u.xuv,{sx:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},children:(0,d.jsx)(u.ua7,{tooltip:h,placement:"top",children:(0,d.jsx)(u.byK,{style:{width:13,height:13}})})})]}),(0,d.jsxs)(u.xuv,{withBorders:j,sx:{padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},children:[z,(0,d.jsx)("div",{ref:E})]})]})})}}}]); +//# sourceMappingURL=8045.40b15543.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/8045.40b15543.chunk.js.map b/portal-ui/build/static/js/8045.40b15543.chunk.js.map new file mode 100644 index 000000000..eab0118b1 --- /dev/null +++ b/portal-ui/build/static/js/8045.40b15543.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/8045.40b15543.chunk.js","mappings":"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","sources":["screens/Console/Common/GenericWizard/WizardPage.tsx","screens/Console/Common/GenericWizard/GenericWizard.tsx","screens/Console/Buckets/ListBuckets/BulkLifecycleModal.tsx","screens/Console/Buckets/ListBuckets/BucketListItem.tsx","screens/Console/Buckets/ListBuckets/BulkReplicationModal.tsx","screens/Console/Buckets/ListBuckets/ListBuckets.tsx","screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu.tsx","screens/Console/Common/FormComponents/PredefinedList/PredefinedList.tsx","screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport { Button } from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { IWizardButton, IWizardPage } from \"./types\";\nimport { LinearProgress } from \"@mui/material\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n wizardStepContainer: {\n display: \"flex\",\n flexDirection: \"column\",\n flex: 1,\n },\n wizardComponent: {\n overflowY: \"auto\",\n marginBottom: 10,\n height: \"calc(100vh - 100px - 80px)\",\n minHeight: 400,\n flex: 1,\n width: \"100%\",\n },\n wizardModal: {\n overflowY: \"auto\",\n marginBottom: 10,\n height: \"calc(100vh - 515px)\",\n },\n buttonsContainer: {\n display: \"flex\",\n flexDirection: \"row\",\n justifyContent: \"flex-start\" as const,\n padding: \"10px 0\",\n borderTop: \"#EAEAEA 1px solid\",\n \"& button\": {\n marginLeft: 10,\n },\n \"&.forModal\": {\n paddingBottom: 0,\n },\n },\n buttonInnerContainer: {\n width: \"100%\",\n display: \"flex\",\n justifyContent: \"flex-end\",\n marginRight: 15,\n },\n });\n\nconst WizardPage = ({\n classes,\n page,\n pageChange,\n loadingStep,\n forModal,\n}: IWizardPage) => {\n const buttonAction = (btn: IWizardButton) => {\n switch (btn.type) {\n case \"next\":\n pageChange(\"++\");\n break;\n case \"back\":\n pageChange(\"--\");\n break;\n case \"to\":\n pageChange(btn.toPage || 0);\n break;\n case \"custom\":\n default:\n }\n\n if (btn.action) {\n btn.action(pageChange);\n }\n };\n\n return (\n
\n
\n {page.componentRender}\n
\n {loadingStep && (\n
\n \n
\n )}\n \n
\n {page.buttons.map((btn) => {\n if (btn.componentRender) {\n return btn.componentRender;\n }\n return (\n {\n buttonAction(btn);\n }}\n disabled={!btn.enabled}\n key={`button-${page.label}-${btn.label}`}\n label={btn.label}\n />\n );\n })}\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(WizardPage);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { IWizardMain } from \"./types\";\nimport WizardPage from \"./WizardPage\";\nimport { Grid, List } from \"@mui/material\";\nimport ListItem from \"@mui/material/ListItem\";\nimport ListItemText from \"@mui/material/ListItemText\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n wizFromContainer: {},\n wizFromModal: {\n position: \"relative\",\n },\n modalWizardSteps: {\n padding: 5,\n borderBottom: \"#eaeaea 1px solid\",\n \"& ul\": {\n padding: 0,\n marginTop: 0,\n display: \"flex\",\n justifyContent: \"space-evenly\",\n\n \"& li\": {\n listStyle: \"lower-roman\",\n \"&::marker\": {\n paddingLeft: 15,\n },\n },\n },\n },\n buttonList: {\n backgroundColor: \"transparent\",\n border: \"none\",\n cursor: \"pointer\",\n \"&:not(:disabled):hover\": {\n textDecoration: \"underline\",\n },\n \"&:selected, &:active, &:focus, &:focus:active\": {\n border: \"none\",\n outline: 0,\n boxShadow: \"none\",\n },\n },\n paddedContentGrid: {\n marginTop: 8,\n padding: \"0 10px\",\n minHeight: 400,\n },\n stepsLabel: {\n fontSize: 20,\n color: \"#393939\",\n fontWeight: 600,\n margin: \"15px 12px\",\n \"&.stepsModalTitle\": {\n textAlign: \"center\",\n width: \"100%\",\n marginTop: 0,\n marginBottom: 10,\n },\n },\n stepsMasterContainer: {\n position: \"sticky\",\n top: 0,\n backgroundColor: \"#FFFFFF\",\n width: \"100%\",\n maxHeight: 90,\n },\n verticalSteps: {\n borderRight: \"1px solid #E5E5E5\",\n background: \"#F8F8F8\",\n },\n stepsContainer: {\n paddingTop: 0,\n \"& .MuiButtonBase-root.Mui-selected\": {\n background: \"#E5E5E5\",\n },\n },\n stepItem: {\n minHeight: 60,\n borderBottom: \"1px solid #E5E5E5\",\n \"&:hover\": {\n background: \"rgba(247,247,247,0.7)\",\n },\n },\n });\n\nconst GenericWizard = ({\n classes,\n wizardSteps,\n loadingStep,\n forModal,\n}: IWizardMain) => {\n const [currentStep, setCurrentStep] = useState(0);\n\n const pageChange = (toElement: string | number) => {\n const lastPage = wizardSteps.length - 1;\n\n if (toElement === \"++\") {\n let nextPage = currentStep + 1;\n\n if (nextPage > lastPage) {\n nextPage = lastPage;\n }\n\n setCurrentStep(nextPage);\n }\n\n if (toElement === \"--\") {\n let prevPage = currentStep - 1;\n\n if (prevPage < 0) {\n prevPage = 0;\n }\n\n setCurrentStep(prevPage);\n }\n\n if (typeof toElement === \"number\") {\n let pg = toElement;\n if (toElement < 0) {\n pg = 0;\n }\n\n if (toElement > lastPage) {\n pg = lastPage;\n }\n\n setCurrentStep(pg);\n }\n };\n\n if (wizardSteps.length === 0) {\n return null;\n }\n\n const stepsList = () => {\n return (\n \n \n {wizardSteps.map((step, index) => {\n return (\n pageChange(index)}\n key={`wizard-${index.toString()}`}\n selected={currentStep === index}\n classes={{\n root: classes.stepItem,\n }}\n >\n \n \n );\n })}\n \n \n );\n };\n const stepsListModal = () => {\n return (\n
    \n {wizardSteps.map((step, index) => {\n return (\n
  • \n pageChange(index)}\n disabled={index > currentStep}\n className={classes.buttonList}\n >\n {step.label}\n \n
  • \n );\n })}\n
\n );\n };\n\n return (\n \n {forModal ? (\n \n
\n
Steps
\n
{stepsListModal()}
\n
\n
\n ) : (\n \n \n {stepsList()}\n
\n
\n )}\n\n \n \n \n \n );\n};\n\nexport default withStyles(styles)(GenericWizard);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport {\n FormLayout,\n Grid,\n InputBox,\n RadioGroup,\n ReadBox,\n Select,\n Switch,\n Tooltip,\n} from \"mds\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport get from \"lodash/get\";\nimport ErrorOutlineIcon from \"@mui/icons-material/ErrorOutline\";\nimport CheckCircleOutlineIcon from \"@mui/icons-material/CheckCircleOutline\";\nimport {\n createTenantCommon,\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport GenericWizard from \"../../Common/GenericWizard/GenericWizard\";\nimport QueryMultiSelector from \"../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector\";\nimport { ITiersDropDown } from \"../types\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { MultiLifecycleResult, Tier } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IBulkReplicationModal {\n open: boolean;\n closeModalAndRefresh: (clearSelection: boolean) => any;\n classes: any;\n buckets: string[];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n resultGrid: {\n display: \"grid\",\n gridTemplateColumns: \"45px auto\",\n alignItems: \"center\",\n justifyContent: \"stretch\",\n },\n errorIcon: {\n paddingTop: 5,\n color: \"#C72C48\",\n },\n successIcon: {\n paddingTop: 5,\n color: \"#42C91A\",\n },\n ...spacingUtils,\n ...modalStyleUtils,\n ...formFieldStyles,\n ...createTenantCommon,\n });\n\nconst AddBulkReplicationModal = ({\n open,\n closeModalAndRefresh,\n classes,\n buckets,\n}: IBulkReplicationModal) => {\n const dispatch = useAppDispatch();\n const [addLoading, setAddLoading] = useState(false);\n const [loadingTiers, setLoadingTiers] = useState(true);\n const [tiersList, setTiersList] = useState([]);\n const [prefix, setPrefix] = useState(\"\");\n const [tags, setTags] = useState(\"\");\n const [storageClass, setStorageClass] = useState(\"\");\n const [NCTransitionSC, setNCTransitionSC] = useState(\"\");\n const [expiredObjectDM, setExpiredObjectDM] = useState(false);\n const [NCExpirationDays, setNCExpirationDays] = useState(\"0\");\n const [NCTransitionDays, setNCTransitionDays] = useState(\"0\");\n const [ilmType, setIlmType] = useState<\"expiry\" | \"transition\">(\"expiry\");\n const [expiryDays, setExpiryDays] = useState(\"0\");\n const [transitionDays, setTransitionDays] = useState(\"0\");\n const [isFormValid, setIsFormValid] = useState(false);\n const [results, setResults] = useState(null);\n\n useEffect(() => {\n if (loadingTiers) {\n api.admin\n .tiersList()\n .then((res) => {\n const tiersList: Tier[] | null = get(res.data, \"items\", []);\n\n if (tiersList !== null && tiersList.length >= 1) {\n const objList = tiersList.map((tier: Tier) => {\n const tierType = tier.type;\n const value = get(tier, `${tierType}.name`, \"\");\n\n return { label: value, value: value };\n });\n\n setTiersList(objList);\n if (objList.length > 0) {\n setStorageClass(objList[0].value);\n }\n }\n setLoadingTiers(false);\n })\n .catch((err) => {\n setLoadingTiers(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [loadingTiers, dispatch]);\n\n useEffect(() => {\n let valid = true;\n\n if (ilmType !== \"expiry\") {\n if (storageClass === \"\") {\n valid = false;\n }\n }\n setIsFormValid(valid);\n }, [ilmType, expiryDays, transitionDays, storageClass]);\n\n const LogoToShow = ({ errString }: { errString: string }) => {\n switch (errString) {\n case \"\":\n return (\n
\n \n
\n );\n case \"n/a\":\n return null;\n default:\n if (errString) {\n return (\n
\n \n \n \n
\n );\n }\n }\n return null;\n };\n\n const createLifecycleRules = (to: any) => {\n let rules = {};\n\n if (ilmType === \"expiry\") {\n let expiry = {\n expiry_days: parseInt(expiryDays),\n };\n\n rules = {\n ...expiry,\n noncurrentversion_expiration_days: parseInt(NCExpirationDays),\n };\n } else {\n let transition = {\n transition_days: parseInt(transitionDays),\n };\n\n rules = {\n ...transition,\n noncurrentversion_transition_days: parseInt(NCTransitionDays),\n noncurrentversion_transition_storage_class: NCTransitionSC,\n storage_class: storageClass,\n };\n }\n\n const lifecycleInsert = {\n buckets,\n type: ilmType,\n prefix,\n tags,\n expired_object_delete_marker: expiredObjectDM,\n ...rules,\n };\n\n api.buckets\n .addMultiBucketLifecycle(lifecycleInsert)\n .then((res) => {\n setAddLoading(false);\n setResults(res.data);\n to(\"++\");\n })\n .catch((err) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n title=\"Set Lifecycle to multiple buckets\"\n >\n \n \n \n {buckets.join(\", \")}\n \n \n

Remote Endpoint Configuration

\n \n
\n Lifecycle Configuration\n ) => {\n setIlmType(e.target.value as \"expiry\" | \"transition\");\n }}\n selectorOptions={[\n { value: \"expiry\", label: \"Expiry\" },\n { value: \"transition\", label: \"Transition\" },\n ]}\n />\n {ilmType === \"expiry\" ? (\n \n ,\n ) => {\n setExpiryDays(e.target.value);\n }}\n label=\"Expiry Days\"\n value={expiryDays}\n min=\"0\"\n />\n ,\n ) => {\n setNCExpirationDays(e.target.value);\n }}\n label=\"Non-current Expiration Days\"\n value={NCExpirationDays}\n min=\"0\"\n />\n \n ) : (\n \n ,\n ) => {\n setTransitionDays(e.target.value);\n }}\n label=\"Transition Days\"\n value={transitionDays}\n min=\"0\"\n />\n ,\n ) => {\n setNCTransitionDays(e.target.value);\n }}\n label=\"Non-current Transition Days\"\n value={NCTransitionDays}\n min=\"0\"\n />\n ,\n ) => {\n setNCTransitionSC(e.target.value);\n }}\n placeholder=\"Set Non-current Version Transition Storage Class\"\n label=\"Non-current Version Transition Storage Class\"\n value={NCTransitionSC}\n />\n {\n setStorageClass(value);\n }}\n options={tiersList}\n />\n \n )}\n
\n
\n File Configuration\n ) => {\n setPrefix(e.target.value);\n }}\n label=\"Prefix\"\n value={prefix}\n />\n {\n setTags(vl);\n }}\n keyPlaceholder=\"Tag Key\"\n valuePlaceholder=\"Tag Value\"\n withBorder\n />\n ,\n ) => {\n setExpiredObjectDM(event.target.checked);\n }}\n label={\"Expired Object Delete Marker\"}\n />\n
\n
\n
\n ),\n buttons: [\n {\n type: \"custom\",\n label: \"Create Rules\",\n enabled: !loadingTiers && !addLoading && isFormValid,\n action: createLifecycleRules,\n },\n ],\n },\n {\n label: \"Results\",\n componentRender: (\n \n

Multi Bucket lifecycle Assignments Results

\n \n \n

Buckets Results

\n {results?.results?.map((resultItem) => {\n return (\n
\n {LogoToShow({ errString: resultItem.error || \"\" })}\n {resultItem.bucketName}\n
\n );\n })}\n
\n
\n
\n ),\n buttons: [\n {\n type: \"custom\",\n label: \"Done\",\n enabled: !addLoading,\n action: () => closeModalAndRefresh(true),\n },\n ],\n },\n ]}\n forModal\n />\n \n );\n};\n\nexport default withStyles(styles)(AddBulkReplicationModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { Fragment } from \"react\";\nimport get from \"lodash/get\";\nimport styled from \"styled-components\";\nimport { Link, useNavigate } from \"react-router-dom\";\nimport {\n Box,\n breakPoints,\n BucketsIcon,\n Checkbox,\n Grid,\n ReportedUsageIcon,\n TotalObjectsIcon,\n} from \"mds\";\nimport {\n calculateBytes,\n niceBytes,\n prettyNumber,\n} from \"../../../../common/utils\";\nimport {\n IAM_PERMISSIONS,\n IAM_ROLES,\n} from \"../../../../common/SecureComponent/permissions\";\nimport { hasPermission } from \"../../../../common/SecureComponent\";\nimport { Bucket } from \"../../../../api/consoleApi\";\n\nconst BucketItemMain = styled.div(({ theme }) => ({\n border: `${get(theme, \"borderColor\", \"#eaeaea\")} 1px solid`,\n borderRadius: 3,\n padding: 15,\n cursor: \"pointer\",\n \"&.disabled\": {\n backgroundColor: get(theme, \"signalColors.danger\", \"red\"),\n },\n \"&:hover\": {\n backgroundColor: get(theme, \"boxBackground\", \"#FBFAFA\"),\n },\n \"& .bucketTitle\": {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-start\",\n gap: 10,\n \"& h1\": {\n padding: 0,\n margin: 0,\n marginBottom: 5,\n fontSize: 22,\n color: get(theme, \"screenTitle.iconColor\", \"#07193E\"),\n [`@media (max-width: ${breakPoints.md}px)`]: {\n marginBottom: 0,\n },\n },\n },\n \"& .bucketDetails\": {\n display: \"flex\",\n gap: 40,\n \"& span\": {\n fontSize: 14,\n },\n [`@media (max-width: ${breakPoints.md}px)`]: {\n flexFlow: \"column-reverse\",\n gap: 5,\n },\n },\n \"& .bucketMetrics\": {\n display: \"flex\",\n alignItems: \"center\",\n marginTop: 20,\n gap: 25,\n borderTop: `${get(theme, \"borderColor\", \"#E2E2E2\")} 1px solid`,\n paddingTop: 20,\n \"& svg.bucketIcon\": {\n color: get(theme, \"screenTitle.iconColor\", \"#07193E\"),\n fill: get(theme, \"screenTitle.iconColor\", \"#07193E\"),\n },\n \"& .metric\": {\n \"& .min-icon\": {\n color: get(theme, \"fontColor\", \"#000\"),\n width: 13,\n marginRight: 5,\n },\n },\n \"& .metricLabel\": {\n fontSize: 14,\n fontWeight: \"bold\",\n color: get(theme, \"fontColor\", \"#000\"),\n },\n \"& .metricText\": {\n fontSize: 24,\n fontWeight: \"bold\",\n },\n \"& .unit\": {\n fontSize: 12,\n fontWeight: \"normal\",\n },\n [`@media (max-width: ${breakPoints.md}px)`]: {\n marginTop: 8,\n paddingTop: 8,\n },\n },\n}));\n\ninterface IBucketListItem {\n bucket: Bucket;\n onSelect: (e: React.ChangeEvent) => void;\n selected: boolean;\n bulkSelect: boolean;\n}\n\nconst BucketListItem = ({\n bucket,\n onSelect,\n selected,\n bulkSelect,\n}: IBucketListItem) => {\n const navigate = useNavigate();\n\n const usage = niceBytes(`${bucket.size}` || \"0\");\n const usageScalar = usage.split(\" \")[0];\n const usageUnit = usage.split(\" \")[1];\n\n const quota = get(bucket, \"details.quota.quota\", \"0\");\n const quotaForString = calculateBytes(quota, true, false);\n\n const manageAllowed =\n hasPermission(bucket.name, IAM_PERMISSIONS[IAM_ROLES.BUCKET_ADMIN]) &&\n false;\n\n const accessToStr = (bucket: Bucket): string => {\n if (bucket.rw_access?.read && !bucket.rw_access?.write) {\n return \"R\";\n } else if (!bucket.rw_access?.read && bucket.rw_access?.write) {\n return \"W\";\n } else if (bucket.rw_access?.read && bucket.rw_access?.write) {\n return \"R/W\";\n }\n return \"\";\n };\n const onCheckboxClick = (e: React.ChangeEvent) => {\n onSelect(e);\n };\n\n return (\n {\n navigate(`/buckets/${bucket.name}/admin`);\n }}\n id={`manageBucket-${bucket.name}`}\n className={`bucket-item ${manageAllowed ? \"disabled\" : \"\"}`}\n >\n \n {bulkSelect && (\n {\n e.stopPropagation();\n }}\n >\n \n \n )}\n

\n {bucket.name} {manageAllowed}\n

\n \n \n \n Created:{\" \"}\n {bucket.creation_date\n ? new Date(bucket.creation_date).toString()\n : \"n/a\"}\n \n \n Access: {accessToStr(bucket)}\n \n \n \n \n \n \n\n \n \n Usage\n
\n {usageScalar}\n {usageUnit}\n {quota !== \"0\" && (\n \n {\" \"}\n / {quotaForString.total}\n {quotaForString.unit}\n \n )}\n
\n
\n\n \n \n Objects\n
\n {bucket.objects ? prettyNumber(bucket.objects) : 0}\n
\n
\n
\n \n );\n};\n\nexport default BucketListItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Select, InputBox, Switch, FormLayout, Tooltip, Grid } from \"mds\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport get from \"lodash/get\";\nimport ErrorOutlineIcon from \"@mui/icons-material/ErrorOutline\";\nimport CheckCircleOutlineIcon from \"@mui/icons-material/CheckCircleOutline\";\nimport {\n modalBasic,\n wizardCommon,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport PredefinedList from \"../../Common/FormComponents/PredefinedList/PredefinedList\";\nimport GenericWizard from \"../../Common/GenericWizard/GenericWizard\";\nimport { getBytes, k8sScalarUnitsExcluding } from \"../../../../common/utils\";\nimport InputUnitMenu from \"../../Common/FormComponents/InputUnitMenu/InputUnitMenu\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { MultiBucketResponseItem } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport { SelectorTypes } from \"../../../../common/types\";\n\ninterface IBulkReplicationModal {\n open: boolean;\n closeModalAndRefresh: (clearSelection: boolean) => any;\n classes: any;\n buckets: string[];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n remoteBucketList: {\n display: \"grid\",\n gridTemplateColumns: \"auto auto 45px\",\n alignItems: \"center\",\n justifyContent: \"stretch\",\n },\n errorIcon: {\n color: \"#C72C48\",\n },\n successIcon: {\n color: \"#42C91A\",\n },\n hide: {\n opacity: 0,\n transitionDuration: \"0.3s\",\n },\n ...modalBasic,\n ...wizardCommon,\n });\n\nconst AddBulkReplicationModal = ({\n open,\n closeModalAndRefresh,\n classes,\n buckets,\n}: IBulkReplicationModal) => {\n const dispatch = useAppDispatch();\n const [bucketsToAlter, setBucketsToAlter] = useState([]);\n const [addLoading, setAddLoading] = useState(false);\n const [externalLoading, setExternalLoading] = useState(false);\n const [accessKey, setAccessKey] = useState(\"\");\n const [secretKey, setSecretKey] = useState(\"\");\n const [targetURL, setTargetURL] = useState(\"\");\n const [region, setRegion] = useState(\"\");\n const [useTLS, setUseTLS] = useState(true);\n const [replicationMode, setReplicationMode] = useState<\"async\" | \"sync\">(\n \"async\",\n );\n const [bandwidthScalar, setBandwidthScalar] = useState(\"100\");\n const [bandwidthUnit, setBandwidthUnit] = useState(\"Gi\");\n const [healthCheck, setHealthCheck] = useState(\"60\");\n const [relationBuckets, setRelationBuckets] = useState([]);\n const [remoteBucketsOpts, setRemoteBucketOpts] = useState([]);\n const [responseItem, setResponseItem] = useState<\n MultiBucketResponseItem[] | undefined\n >([]);\n\n const optionsForBucketsDrop: SelectorTypes[] = remoteBucketsOpts.map(\n (remoteBucketName: string) => {\n return {\n label: remoteBucketName,\n value: remoteBucketName,\n };\n },\n );\n\n useEffect(() => {\n if (relationBuckets.length === 0) {\n const bucketsAlter: string[] = [];\n const relationBucketsAlter: string[] = [];\n\n buckets.forEach((item: string) => {\n bucketsAlter.push(item);\n relationBucketsAlter.push(\"\");\n });\n\n setRelationBuckets(relationBucketsAlter);\n setBucketsToAlter(bucketsAlter);\n }\n }, [buckets, relationBuckets.length]);\n\n const addRecord = () => {\n setAddLoading(true);\n const replicate = bucketsToAlter.map((bucketName, index) => {\n return {\n originBucket: bucketName,\n destinationBucket: relationBuckets[index],\n };\n });\n\n const endURL = `${useTLS ? \"https://\" : \"http://\"}${targetURL}`;\n const hc = parseInt(healthCheck);\n\n const remoteBucketsInfo = {\n accessKey: accessKey,\n secretKey: secretKey,\n targetURL: endURL,\n region: region,\n bucketsRelation: replicate,\n syncMode: replicationMode,\n bandwidth:\n replicationMode === \"async\"\n ? parseInt(getBytes(bandwidthScalar, bandwidthUnit, true))\n : 0,\n healthCheckPeriod: hc,\n };\n\n api.bucketsReplication\n .setMultiBucketReplication(remoteBucketsInfo)\n .then((response) => {\n setAddLoading(false);\n\n const states = response.data.replicationState;\n setResponseItem(states);\n\n const filterErrors = states?.filter(\n (itm) => itm.errorString && itm.errorString !== \"\",\n );\n\n if (filterErrors?.length === 0) {\n closeModalAndRefresh(true);\n } else {\n setTimeout(() => {\n removeSuccessItems(states);\n }, 500);\n }\n })\n .catch((err) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const retrieveRemoteBuckets = (\n wizardPageJump: (page: number | string) => void,\n ) => {\n const remoteConnectInfo = {\n accessKey: accessKey,\n secretKey: secretKey,\n targetURL: targetURL,\n useTLS,\n };\n setExternalLoading(true);\n\n api.listExternalBuckets\n .listExternalBuckets(remoteConnectInfo)\n .then((res) => {\n const buckets = get(res.data, \"buckets\", []);\n\n if (buckets && buckets.length > 0) {\n const arrayReplaceBuckets = buckets.map((element: any) => {\n return element.name;\n });\n\n setRemoteBucketOpts(arrayReplaceBuckets);\n }\n\n wizardPageJump(\"++\");\n setExternalLoading(false);\n })\n .catch((err) => {\n setExternalLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const stateOfItem = (initialBucket: string) => {\n if (responseItem && responseItem.length > 0) {\n const bucketResponse = responseItem.find(\n (item) => item.originBucket === initialBucket,\n );\n\n if (bucketResponse) {\n const errString = get(bucketResponse, \"errorString\", \"\");\n\n if (errString) {\n return errString;\n }\n\n return \"\";\n }\n }\n return \"n/a\";\n };\n\n const LogoToShow = ({ errString }: { errString: string }) => {\n switch (errString) {\n case \"\":\n return (\n
\n \n
\n );\n case \"n/a\":\n return null;\n default:\n if (errString) {\n return (\n
\n \n \n \n
\n );\n }\n }\n return null;\n };\n\n const updateItem = (indexItem: number, value: string) => {\n const updatedList = [...relationBuckets];\n updatedList[indexItem] = value;\n setRelationBuckets(updatedList);\n };\n\n const itemDisplayBulk = (indexItem: number) => {\n if (remoteBucketsOpts.length > 0) {\n return (\n \n {\n updateItem(indexItem, value);\n }}\n options={optionsForBucketsDrop}\n disabled={addLoading}\n />\n \n );\n }\n return (\n \n ) => {\n updateItem(indexItem, event.target.value);\n }}\n value={relationBuckets[indexItem]}\n disabled={addLoading}\n />\n \n );\n };\n\n const removeSuccessItems = (\n responseItem: MultiBucketResponseItem[] | undefined,\n ) => {\n let newBucketsToAlter = [...bucketsToAlter];\n let newRelationBuckets = [...relationBuckets];\n\n responseItem?.forEach((successElement) => {\n const errorString = get(successElement, \"errorString\", \"\");\n\n if (!errorString || errorString === \"\") {\n const indexToRemove = newBucketsToAlter.indexOf(\n successElement.originBucket || \"\",\n );\n\n newBucketsToAlter.splice(indexToRemove, 1);\n newRelationBuckets.splice(indexToRemove, 1);\n }\n });\n\n setBucketsToAlter(newBucketsToAlter);\n setRelationBuckets(newRelationBuckets);\n };\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n title=\"Set Multiple Bucket Replication\"\n >\n \n \n \n \n

Remote Endpoint Configuration

\n \n Please avoid the use of root credentials for this feature\n \n
\n
\n \n ) => {\n setAccessKey(e.target.value);\n }}\n label=\"Access Key\"\n value={accessKey}\n />\n ) => {\n setSecretKey(e.target.value);\n }}\n label=\"Secret Key\"\n value={secretKey}\n />\n ) => {\n setTargetURL(e.target.value);\n }}\n placeholder=\"play.min.io:9000\"\n label=\"Target URL\"\n value={targetURL}\n />\n {\n setUseTLS(e.target.checked);\n }}\n value=\"yes\"\n />\n ) => {\n setRegion(e.target.value);\n }}\n label=\"Region\"\n value={region}\n />\n {\n setReplicationMode(value as \"sync\" | \"async\");\n }}\n label=\"Replication Mode\"\n value={replicationMode}\n options={[\n { label: \"Asynchronous\", value: \"async\" },\n { label: \"Synchronous\", value: \"sync\" },\n ]}\n />\n {replicationMode === \"async\" && (\n ) => {\n if (e.target.validity.valid) {\n setBandwidthScalar(e.target.value as string);\n }\n }}\n label=\"Bandwidth\"\n value={bandwidthScalar}\n min=\"0\"\n pattern={\"[0-9]*\"}\n overlayObject={\n {\n setBandwidthUnit(newValue);\n }}\n unitSelected={bandwidthUnit}\n unitsList={k8sScalarUnitsExcluding([\"Ki\"])}\n disabled={false}\n />\n }\n />\n )}\n ) => {\n setHealthCheck(e.target.value as string);\n }}\n label=\"Health Check Duration\"\n value={healthCheck}\n />\n \n \n ),\n buttons: [\n {\n type: \"custom\",\n label: \"Next\",\n enabled: !externalLoading,\n action: retrieveRemoteBuckets,\n },\n ],\n },\n {\n label: \"Bucket Assignments\",\n componentRender: (\n \n

Remote Bucket Assignments

\n \n Please select / type the desired remote bucket were you want\n the local data to be replicated.\n \n
\n {bucketsToAlter.map((bucketName: string, index: number) => {\n const errorItem = stateOfItem(bucketName);\n return (\n \n
\n {bucketName}\n
\n
\n {itemDisplayBulk(index)}\n
\n
\n {responseItem && responseItem.length > 0 && (\n \n )}\n
\n \n );\n })}\n
\n
\n ),\n buttons: [\n {\n type: \"back\",\n label: \"Back\",\n enabled: true,\n },\n {\n type: \"next\",\n label: \"Create\",\n enabled: !addLoading,\n action: addRecord,\n },\n ],\n },\n ]}\n forModal\n />\n \n );\n};\n\nexport default withStyles(styles)(AddBulkReplicationModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport {\n AddIcon,\n BucketsIcon,\n Button,\n HelpBox,\n LifecycleConfigIcon,\n MultipleBucketsIcon,\n PageLayout,\n RefreshIcon,\n SelectAllIcon,\n SelectMultipleIcon,\n Grid,\n breakPoints,\n} from \"mds\";\nimport { LinearProgress } from \"@mui/material\";\nimport { actionsTray } from \"../../Common/FormComponents/common/styleLibrary\";\nimport { SecureComponent } from \"../../../../common/SecureComponent\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_PAGES,\n IAM_PERMISSIONS,\n IAM_ROLES,\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../common/SecureComponent/permissions\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { useSelector } from \"react-redux\";\nimport { selFeatures } from \"../../consoleSlice\";\nimport { setLoadingObjects } from \"../../ObjectBrowser/objectBrowserSlice\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport { api } from \"../../../../api\";\nimport {\n Bucket,\n Error,\n HttpResponse,\n ListBucketsResponse,\n} from \"../../../../api/consoleApi\";\nimport { errorToHandler } from \"../../../../api/errors\";\nimport HelpMenu from \"../../HelpMenu\";\nimport AutoColorIcon from \"../../Common/Components/AutoColorIcon\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport AButton from \"../../Common/AButton/AButton\";\nimport SearchBox from \"../../Common/SearchBox\";\nimport VirtualizedList from \"../../Common/VirtualizedList/VirtualizedList\";\nimport BulkLifecycleModal from \"./BulkLifecycleModal\";\nimport hasPermission from \"../../../../common/SecureComponent/accessControl\";\nimport BucketListItem from \"./BucketListItem\";\nimport BulkReplicationModal from \"./BulkReplicationModal\";\n\nconst ListBuckets = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const [records, setRecords] = useState([]);\n const [loading, setLoading] = useState(true);\n const [filterBuckets, setFilterBuckets] = useState(\"\");\n const [selectedBuckets, setSelectedBuckets] = useState([]);\n const [replicationModalOpen, setReplicationModalOpen] =\n useState(false);\n const [lifecycleModalOpen, setLifecycleModalOpen] = useState(false);\n const [canPutLifecycle, setCanPutLifecycle] = useState(false);\n const [bulkSelect, setBulkSelect] = useState(false);\n\n const features = useSelector(selFeatures);\n const obOnly = !!features?.includes(\"object-browser-only\");\n\n useEffect(() => {\n dispatch(setHelpName(\"ob_bucket_list\"));\n }, [dispatch]);\n\n useEffect(() => {\n if (loading) {\n const fetchRecords = () => {\n setLoading(true);\n api.buckets\n .listBuckets()\n .then((res: HttpResponse) => {\n if (res.data) {\n setLoading(false);\n setRecords(res.data.buckets || []);\n dispatch(setLoadingObjects(true));\n } else if (res.error) {\n setLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(res.error)));\n }\n });\n };\n fetchRecords();\n }\n }, [loading, dispatch]);\n\n const filteredRecords = records.filter((b: Bucket) => {\n if (filterBuckets === \"\") {\n return true;\n } else {\n return b.name.indexOf(filterBuckets) >= 0;\n }\n });\n\n const hasBuckets = records.length > 0;\n\n const selectListBuckets = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedBuckets]; // We clone the selectedBuckets array\n\n if (checked) {\n // If the user has checked this field we need to push this to selectedBucketsList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n setSelectedBuckets(elements);\n\n return elements;\n };\n\n const closeBulkReplicationModal = (unselectAll: boolean) => {\n setReplicationModalOpen(false);\n\n if (unselectAll) {\n setSelectedBuckets([]);\n }\n };\n\n const closeBulkLifecycleModal = (unselectAll: boolean) => {\n setLifecycleModalOpen(false);\n\n if (unselectAll) {\n setSelectedBuckets([]);\n }\n };\n\n useEffect(() => {\n var failLifecycle = false;\n selectedBuckets.forEach((bucket: string) => {\n hasPermission(bucket, IAM_PERMISSIONS[IAM_ROLES.BUCKET_LIFECYCLE], true)\n ? setCanPutLifecycle(true)\n : (failLifecycle = true);\n });\n failLifecycle ? setCanPutLifecycle(false) : setCanPutLifecycle(true);\n }, [selectedBuckets]);\n\n const renderItemLine = (index: number) => {\n const bucket = filteredRecords[index] || null;\n if (bucket) {\n return (\n \n );\n }\n return null;\n };\n\n const selectAllBuckets = () => {\n if (selectedBuckets.length === filteredRecords.length) {\n setSelectedBuckets([]);\n return;\n }\n\n const selectAllBuckets = filteredRecords.map((bucket) => {\n return bucket.name;\n });\n\n setSelectedBuckets(selectAllBuckets);\n };\n\n const canCreateBucket = hasPermission(\"*\", [IAM_SCOPES.S3_CREATE_BUCKET]);\n const canListBuckets = hasPermission(\"*\", [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]);\n\n return (\n \n {replicationModalOpen && (\n \n )}\n {lifecycleModalOpen && (\n \n )}\n {!obOnly && (\n } />\n )}\n\n \n \n {obOnly && (\n \n \n \n )}\n {hasBuckets && (\n \n )}\n\n \n {!obOnly && (\n \n \n {\n setBulkSelect(!bulkSelect);\n setSelectedBuckets([]);\n }}\n icon={}\n variant={bulkSelect ? \"callAction\" : \"regular\"}\n disabled={!hasBuckets}\n />\n \n\n {bulkSelect && (\n \n }\n variant={\"regular\"}\n />\n \n )}\n\n \n {\n setLifecycleModalOpen(true);\n }}\n icon={}\n variant={\"regular\"}\n disabled={selectedBuckets.length === 0 || !canPutLifecycle}\n />\n \n\n \n {\n setReplicationModalOpen(true);\n }}\n icon={}\n variant={\"regular\"}\n disabled={selectedBuckets.length === 0}\n />\n \n \n )}\n\n \n {\n setLoading(true);\n }}\n icon={}\n variant={\"regular\"}\n />\n \n\n {!obOnly && (\n \n {\n navigate(IAM_PAGES.ADD_BUCKETS);\n }}\n icon={}\n variant={\"callAction\"}\n disabled={!canCreateBucket}\n label={\"Create Bucket\"}\n />\n \n )}\n \n \n\n {loading && }\n {!loading && (\n \n {filteredRecords.length !== 0 && (\n \n )}\n {filteredRecords.length === 0 && filterBuckets !== \"\" && (\n \n \n }\n title={\"No Results\"}\n help={\n \n No buckets match the filtering condition\n \n }\n />\n \n \n )}\n {!hasBuckets && (\n \n \n }\n title={\"Buckets\"}\n help={\n \n MinIO uses buckets to organize objects. A bucket is\n similar to a folder or directory in a filesystem, where\n each bucket can hold an arbitrary number of objects.\n
\n {canListBuckets ? (\n \"\"\n ) : (\n \n
\n {permissionTooltipHelper(\n [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ],\n \"view the buckets on this server\",\n )}\n
\n
\n )}\n \n
\n To get started, \n {\n navigate(IAM_PAGES.ADD_BUCKETS);\n }}\n >\n Create a Bucket.\n \n \n
\n }\n />\n
\n
\n )}\n \n )}\n
\n
\n );\n};\n\nexport default ListBuckets;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { selectorTypes } from \"../SelectWrapper/SelectWrapper\";\nimport { Menu, MenuItem } from \"@mui/material\";\n\ninterface IInputUnitBox {\n classes: any;\n id: string;\n unitSelected: string;\n unitsList: selectorTypes[];\n disabled?: boolean;\n onUnitChange?: (newValue: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonTrigger: {\n border: \"#F0F2F2 1px solid\",\n borderRadius: 3,\n color: \"#838383\",\n backgroundColor: \"#fff\",\n fontSize: 12,\n },\n });\n\nconst InputUnitMenu = ({\n classes,\n id,\n unitSelected,\n unitsList,\n disabled = false,\n onUnitChange,\n}: IInputUnitBox) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (newUnit: string) => {\n setAnchorEl(null);\n if (newUnit !== \"\" && onUnitChange) {\n onUnitChange(newUnit);\n }\n };\n\n return (\n \n \n {unitSelected}\n \n {\n handleClose(\"\");\n }}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"center\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"center\",\n }}\n >\n {unitsList.map((unit) => (\n handleClose(unit.value)}\n key={`itemUnit-${unit.value}-${unit.label}`}\n >\n {unit.label}\n \n ))}\n \n \n );\n};\n\nexport default withStyles(styles)(InputUnitMenu);\n","import React, { Fragment } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { predefinedList } from \"../common/styleLibrary\";\n\ninterface IPredefinedList {\n classes: any;\n label?: string;\n content: any;\n multiLine?: boolean;\n actionButton?: React.ReactNode;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...predefinedList,\n });\n\nconst PredefinedList = ({\n classes,\n label = \"\",\n content,\n multiLine = false,\n actionButton,\n}: IPredefinedList) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n \n )}\n \n \n {content}\n \n {actionButton && (\n
{actionButton}
\n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(PredefinedList);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, {\n ChangeEvent,\n createRef,\n Fragment,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport get from \"lodash/get\";\nimport debounce from \"lodash/debounce\";\nimport {\n AddIcon,\n Box,\n Grid,\n HelpIcon,\n InputBox,\n InputLabel,\n Tooltip,\n} from \"mds\";\n\ninterface IQueryMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n keyPlaceholder?: string;\n valuePlaceholder?: string;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst QueryMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n keyPlaceholder = \"\",\n valuePlaceholder = \"\",\n onChange,\n withBorder = false,\n}: IQueryMultiSelector) => {\n const [currentKeys, setCurrentKeys] = useState([\"\"]);\n const [currentValues, setCurrentValues] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentKeys.length === 1 &&\n currentKeys[0] === \"\" &&\n currentValues.length === 1 &&\n currentValues[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\"&\");\n let keys = [];\n let values = [];\n\n elementsSplit.forEach((element: string) => {\n const splittedVals = element.split(\"=\");\n if (splittedVals.length === 2) {\n keys.push(splittedVals[0]);\n values.push(splittedVals[1]);\n }\n });\n\n keys.push(\"\");\n values.push(\"\");\n\n setCurrentKeys(keys);\n setCurrentValues(values);\n }\n }, [currentKeys, currentValues, elements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n const refScroll = bottomList.current;\n if (refScroll && currentKeys.length > 1) {\n refScroll.scrollIntoView(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys]);\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useLayoutEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n debouncedOnChange();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys, currentValues]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = () => {\n if (\n currentKeys[currentKeys.length - 1].trim() !== \"\" &&\n currentValues[currentValues.length - 1].trim() !== \"\"\n ) {\n const keysList = [...currentKeys];\n const valuesList = [...currentValues];\n\n keysList.push(\"\");\n valuesList.push(\"\");\n\n setCurrentKeys(keysList);\n setCurrentValues(valuesList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeKey = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentKeys];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentKeys(updatedElement);\n };\n\n const onChangeValue = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentValues];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentValues(updatedElement);\n };\n\n // Debounce for On Change\n const debouncedOnChange = debounce(() => {\n let queryString = \"\";\n\n currentKeys.forEach((keyVal, index) => {\n if (currentKeys[index] && currentValues[index]) {\n let insertString = `${keyVal}=${currentValues[index]}`;\n if (index !== 0) {\n insertString = `&${insertString}`;\n }\n queryString = `${queryString}${insertString}`;\n }\n });\n\n onChange(queryString);\n }, 500);\n\n const inputs = currentValues.map((element, index) => {\n return (\n \n \n :\n : null}\n overlayAction={() => {\n addEmptyLine();\n }}\n />\n \n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n \n \n \n \n \n )}\n \n \n {inputs}\n
\n \n \n \n );\n};\nexport default QueryMultiSelector;\n"],"names":["withStyles","theme","createStyles","wizardStepContainer","display","flexDirection","flex","wizardComponent","overflowY","marginBottom","height","minHeight","width","wizardModal","buttonsContainer","justifyContent","padding","borderTop","marginLeft","paddingBottom","buttonInnerContainer","marginRight","_ref","classes","page","pageChange","loadingStep","forModal","_jsxs","className","children","_jsx","componentRender","LinearProgress","concat","buttons","map","btn","Button","id","label","variant","onClick","type","toPage","action","buttonAction","disabled","enabled","wizFromContainer","wizFromModal","position","modalWizardSteps","borderBottom","marginTop","listStyle","paddingLeft","buttonList","backgroundColor","border","cursor","textDecoration","outline","boxShadow","paddedContentGrid","stepsLabel","fontSize","color","fontWeight","margin","textAlign","stepsMasterContainer","top","maxHeight","verticalSteps","borderRight","background","stepsContainer","paddingTop","stepItem","wizardSteps","_useState","useState","_useState2","_slicedToArray","currentStep","setCurrentStep","toElement","lastPage","length","nextPage","prevPage","pg","Grid","container","Fragment","step","index","toString","item","xs","sm","md","lg","xl","List","component","dense","root","ListItem","toLowerCase","replaceAll","button","disableRipple","selected","ListItemText","primary","WizardPage","_objectSpread","resultGrid","gridTemplateColumns","alignItems","errorIcon","successIcon","spacingUtils","modalStyleUtils","formFieldStyles","createTenantCommon","_results$results","open","closeModalAndRefresh","buckets","dispatch","useAppDispatch","addLoading","setAddLoading","_useState3","_useState4","loadingTiers","setLoadingTiers","_useState5","_useState6","tiersList","setTiersList","_useState7","_useState8","prefix","setPrefix","_useState9","_useState10","tags","setTags","_useState11","_useState12","storageClass","setStorageClass","_useState13","_useState14","NCTransitionSC","setNCTransitionSC","_useState15","_useState16","expiredObjectDM","setExpiredObjectDM","_useState17","_useState18","NCExpirationDays","setNCExpirationDays","_useState19","_useState20","NCTransitionDays","setNCTransitionDays","_useState21","_useState22","ilmType","setIlmType","_useState23","_useState24","expiryDays","setExpiryDays","_useState25","_useState26","transitionDays","setTransitionDays","_useState27","_useState28","isFormValid","setIsFormValid","_useState29","_useState30","results","setResults","useEffect","api","admin","then","res","get","data","objList","tier","tierType","value","catch","err","setModalErrorSnackMessage","errorToHandler","error","valid","LogoToShow","_ref2","errString","CheckCircleOutlineIcon","Tooltip","tooltip","placement","ErrorOutlineIcon","ModalWrapper","modalOpen","onClose","title","GenericWizard","ReadBox","join","FormLayout","withBorders","containerPadding","RadioGroup","currentValue","name","onChange","e","target","selectorOptions","InputBox","min","placeholder","Select","options","QueryMultiSelector","elements","vl","keyPlaceholder","valuePlaceholder","withBorder","Switch","checked","event","to","rules","expiry","expiry_days","parseInt","noncurrentversion_expiration_days","transition","transition_days","noncurrentversion_transition_days","noncurrentversion_transition_storage_class","storage_class","lifecycleInsert","expired_object_delete_marker","addMultiBucketLifecycle","formScrollable","resultItem","bucketName","BucketItemMain","styled","div","borderRadius","gap","_defineProperty","breakPoints","flexFlow","fill","bucket","onSelect","bulkSelect","navigate","useNavigate","usage","niceBytes","size","usageScalar","split","usageUnit","quota","quotaForString","calculateBytes","manageAllowed","hasPermission","IAM_PERMISSIONS","IAM_ROLES","BUCKET_ADMIN","Box","stopPropagation","Checkbox","creation_date","Date","_bucket$rw_access","_bucket$rw_access2","_bucket$rw_access3","_bucket$rw_access4","_bucket$rw_access5","_bucket$rw_access6","rw_access","read","write","accessToStr","Link","BucketsIcon","style","ReportedUsageIcon","total","unit","TotalObjectsIcon","objects","prettyNumber","remoteBucketList","hide","opacity","transitionDuration","modalBasic","wizardCommon","bucketsToAlter","setBucketsToAlter","externalLoading","setExternalLoading","accessKey","setAccessKey","secretKey","setSecretKey","targetURL","setTargetURL","region","setRegion","useTLS","setUseTLS","replicationMode","setReplicationMode","bandwidthScalar","setBandwidthScalar","bandwidthUnit","setBandwidthUnit","healthCheck","setHealthCheck","relationBuckets","setRelationBuckets","remoteBucketsOpts","setRemoteBucketOpts","responseItem","setResponseItem","optionsForBucketsDrop","remoteBucketName","bucketsAlter","relationBucketsAlter","forEach","push","updateItem","indexItem","updatedList","_toConsumableArray","removeSuccessItems","newBucketsToAlter","newRelationBuckets","successElement","errorString","indexToRemove","indexOf","originBucket","splice","PredefinedList","content","descriptionText","validity","pattern","overlayObject","InputUnitMenu","onUnitChange","newValue","unitSelected","unitsList","k8sScalarUnitsExcluding","wizardPageJump","remoteConnectInfo","listExternalBuckets","arrayReplaceBuckets","element","errorItem","initialBucket","bucketResponse","find","stateOfItem","replicate","destinationBucket","endURL","hc","remoteBucketsInfo","bucketsRelation","syncMode","bandwidth","getBytes","healthCheckPeriod","bucketsReplication","setMultiBucketReplication","response","states","replicationState","filterErrors","filter","itm","setTimeout","records","setRecords","loading","setLoading","filterBuckets","setFilterBuckets","selectedBuckets","setSelectedBuckets","replicationModalOpen","setReplicationModalOpen","lifecycleModalOpen","setLifecycleModalOpen","canPutLifecycle","setCanPutLifecycle","setBulkSelect","features","useSelector","selFeatures","obOnly","includes","setHelpName","listBuckets","setLoadingObjects","setErrorSnackMessage","filteredRecords","b","hasBuckets","selectListBuckets","targetD","failLifecycle","BUCKET_LIFECYCLE","canCreateBucket","IAM_SCOPES","S3_CREATE_BUCKET","canListBuckets","S3_LIST_BUCKET","S3_ALL_LIST_BUCKET","BulkReplicationModal","unselectAll","BulkLifecycleModal","PageHeaderWrapper","actions","HelpMenu","PageLayout","sx","actionsTray","AutoColorIcon","SearchBox","minWidth","TooltipWrapper","icon","SelectMultipleIcon","selectAllBuckets","SelectAllIcon","permissionTooltipHelper","LifecycleConfigIcon","MultipleBucketsIcon","RefreshIcon","IAM_PAGES","ADD_BUCKETS","AddIcon","VirtualizedList","rowRenderFunction","BucketListItem","totalItems","HelpBox","iconComponent","help","SecureComponent","scopes","resource","CONSOLE_UI_RESOURCE","AButton","buttonTrigger","_ref$disabled","_React$useState","React","_React$useState2","anchorEl","setAnchorEl","Boolean","handleClose","newUnit","undefined","currentTarget","Menu","anchorOrigin","vertical","horizontal","transformOrigin","MenuItem","predefinedList","_ref$label","_ref$multiLine","multiLine","actionButton","prefinedContainer","predefinedTitle","includesActionButton","innerContentMultiline","innerContent","overlayShareOption","_ref$tooltip","_ref$keyPlaceholder","_ref$valuePlaceholder","_ref$withBorder","currentKeys","setCurrentKeys","currentValues","setCurrentValues","bottomList","createRef","elementsSplit","keys","values","splittedVals","refScroll","current","scrollIntoView","firstUpdate","useRef","useLayoutEffect","debouncedOnChange","onChangeKey","persist","updatedElement","onChangeValue","debounce","queryString","keyVal","insertString","inputs","overlayIcon","overlayAction","trim","keysList","valuesList","addEmptyLine","alignSelf","InputLabel","HelpIcon","ref"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/808.045ec154.chunk.js b/portal-ui/build/static/js/808.045ec154.chunk.js new file mode 100644 index 000000000..905ab7ec7 --- /dev/null +++ b/portal-ui/build/static/js/808.045ec154.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[808],{75578:function(e,t,o){var n=o(1413),r=o(72791),a=o(80184);t.Z=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(o){return(0,a.jsx)(r.Suspense,{fallback:t,children:(0,a.jsx)(e,(0,n.Z)({},o))})}}},50808:function(e,t,o){o.r(t),o.d(t,{default:function(){return j}});var n=o(29439),r=o(1413),a=o(72791),i=o(26181),l=o.n(i),s=o(11135),c=o(25787),u=o(29945),p=o(61757),d=o(23814),f=o(75578),g=o(56087),m=o(87995),h=o(57689),y=o(81551),b=o(47974),S=o(17691),v=o(80184),T=S.ZP.div((function(e){var t=e.theme;return{background:l()(t,"boxBackground","#fff"),border:"".concat(l()(t,"borderColor","#E5E5E5")," 1px solid"),borderRadius:5,height:80,display:"flex",alignItems:"center",justifyContent:"start",marginBottom:16,cursor:"pointer",padding:0,overflow:"hidden","& .logoButton":{height:"80px"},"& .imageContainer":{backgroundColor:l()(t,"bgColor","#fff"),display:"flex",alignItems:"center",justifyContent:"center",width:80,height:80,"& img":{maxWidth:46,maxHeight:46,filter:"drop-shadow(1px 1px 8px #fff)"}},"& .titleBox":{color:l()(t,"fontColor","#000"),fontSize:16,fontFamily:"Inter,sans-serif",paddingLeft:18}}})),_=function(e){var t=e.logoSrc,o=e.title;return(0,v.jsxs)(T,{children:[(0,v.jsx)(u.xuv,{className:"imageContainer",children:(0,v.jsx)("img",{src:t,className:"logoButton",alt:o})}),(0,v.jsx)(u.xuv,{className:"titleBox",children:(0,v.jsxs)("b",{children:[o," Event Destination"]})})]})},k=o(53669),x=o(99670),E=o(31776),A=o(82342),q=(0,f.Z)(a.lazy((function(){return Promise.all([o.e(5473),o.e(1715),o.e(5994),o.e(7391),o.e(6158)]).then(o.bind(o,9059))}))),L=(0,f.Z)(a.lazy((function(){return Promise.all([o.e(5473),o.e(1715),o.e(5994),o.e(7391),o.e(91),o.e(4882)]).then(o.bind(o,10091))}))),C=(0,f.Z)(a.lazy((function(){return Promise.all([o.e(5473),o.e(1715),o.e(5994),o.e(7391),o.e(8305)]).then(o.bind(o,56247))}))),j=(0,c.Z)((function(e){return(0,s.Z)((0,r.Z)((0,r.Z)({},d.oO),d.Je))}))((function(e){var t=e.saveAndRefresh,o=e.classes,r=(0,y.TL)(),i=(0,h.s0)(),s=(0,h.UO)(),c=(0,a.useState)([]),d=(0,n.Z)(c,2),f=d[0],S=d[1],T=(0,a.useState)(""),j=(0,n.Z)(T,2),w=j[0],N=j[1],Q=(0,a.useState)(!1),Z=(0,n.Z)(Q,2),D=Z[0],I=Z[1],P=s.service||"";(0,a.useEffect)((function(){if(D){var e={key_values:(0,p.DD)(f)};E.h.configs.setConfig("".concat(P,":").concat(w),e).then((function(){I(!1),r((0,m.cN)(!0)),r((0,k.iP)(!0)),i(g.gA.EVENT_DESTINATIONS)})).catch((function(e){I(!1),r((0,m.Ih)((0,A.g)(e.error)))}))}}),[D,P,f,t,r,i,w]);var M,K=(0,a.useCallback)((function(e){S(e)}),[S]);switch(P){case p.ee:M=(0,v.jsx)(C,{onChange:K});break;case p.dM:M=(0,v.jsx)(q,{onChange:K});break;default:var R=l()(p.oj,P,[]);M=(0,v.jsx)(L,{fields:R,onChange:K})}var B=p.BI.find((function(e){return e.actionTrigger===P}));return(0,a.useEffect)((function(){r((0,m.Sc)("add_notification_endpoint"))}),[]),(0,v.jsxs)(a.Fragment,{children:[(0,v.jsx)(b.Z,{label:(0,v.jsx)(a.Fragment,{children:(0,v.jsx)(u.hbI,{label:"Event Destinations",onClick:function(){return i(g.gA.EVENT_DESTINATIONS_ADD)}})}),actions:(0,v.jsx)(x.Z,{})}),(0,v.jsx)(u.Xgh,{children:(0,v.jsx)("form",{noValidate:!0,onSubmit:function(e){e.preventDefault(),I(!0)},children:""!==P&&(0,v.jsxs)(a.Fragment,{children:[(0,v.jsx)(u.rjZ,{item:!0,xs:12,children:B&&(0,v.jsx)(_,{logoSrc:B.logo,title:B?B.targetTitle:""})}),(0,v.jsxs)(u.ltY,{children:[(0,v.jsx)(u.rjZ,{item:!0,xs:12,className:o.formFieldRow,sx:{marginBottom:"12px"},children:(0,v.jsx)(u.Wzg,{id:"identifier-field",name:"identifier-field",label:"Identifier",value:w,onChange:function(e){return N(e.target.value)},tooltip:"Unique descriptive string for this destination",placeholder:"Enter Destination Identifier",required:!0})}),(0,v.jsx)(u.rjZ,{item:!0,xs:12,children:M}),(0,v.jsx)(u.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end",marginTop:15},children:(0,v.jsx)(u.zxk,{id:"save-notification-target",type:"submit",variant:"callAction",disabled:D||""===w.trim(),label:"Save Event Destination"})})]})]})})})]})}))},61757:function(e,t,o){o.d(t,{BI:function(){return S},DD:function(){return T},L:function(){return x},dM:function(){return s},ee:function(){return l},fk:function(){return y},oj:function(){return _},z5:function(){return b}});var n,r=o(4942),a=o(43144),i=o(15671),l="notify_postgres",s="notify_mysql",c="notify_kafka",u="notify_amqp",p="notify_mqtt",d="notify_redis",f="notify_nats",g="notify_elasticsearch",m="notify_webhook",h="notify_nsq",y=function(e){return e.map((function(e){return{service_name:"".concat(e.service,":").concat(e.account_id),name:e.service,account_id:e.account_id,status:e.status}}))},b=(0,a.Z)((function e(){(0,i.Z)(this,e)}));b.DB="database",b.Queue="queue",b.Func="functions";var S=[{actionTrigger:l,targetTitle:"PostgreSQL",logo:"/postgres-logo.svg",category:b.DB},{actionTrigger:c,targetTitle:"Kafka",logo:"/kafka-logo.svg",category:b.Queue},{actionTrigger:u,targetTitle:"AMQP",logo:"/amqp-logo.svg",category:b.Queue},{actionTrigger:p,targetTitle:"MQTT",logo:"/mqtt-logo.svg",category:b.Queue},{actionTrigger:d,targetTitle:"Redis",logo:"/redis-logo.svg",category:b.Queue},{actionTrigger:f,targetTitle:"NATS",logo:"/nats-logo.svg",category:b.Queue},{actionTrigger:s,targetTitle:"Mysql",logo:"/mysql-logo.svg",category:b.DB},{actionTrigger:g,targetTitle:"Elastic Search",logo:"/elasticsearch-logo.svg",category:b.DB},{actionTrigger:m,targetTitle:"Webhook",logo:"/webhooks-logo.svg",category:b.Func},{actionTrigger:h,targetTitle:"NSQ",logo:"/nsq-logo.svg",category:b.Queue}],v=[{name:"queue_dir",label:"Queue Directory",required:!1,tooltip:"Staging directory for undelivered messages e.g. '/home/events'",type:"string",placeholder:"Enter Queue Directory"},{name:"queue_limit",label:"Queue Limit",required:!1,tooltip:"Maximum limit for undelivered messages, defaults to '10000'",type:"number",placeholder:"Enter Queue Limit"},{name:"comment",label:"Comment",required:!1,type:"comment",placeholder:"Enter custom notes if any"}],T=function(e){return e.filter((function(e){return""!==e.value}))},_=(n={},(0,r.Z)(n,c,[{name:"brokers",label:"Brokers",required:!0,tooltip:"Comma separated list of Kafka broker addresses",type:"string",placeholder:"Enter Brokers"},{name:"topic",label:"Topic",tooltip:"Kafka topic used for bucket notifications",type:"string",placeholder:"Enter Topic"},{name:"sasl_username",label:"SASL Username",tooltip:"Username for SASL/PLAIN or SASL/SCRAM authentication",type:"string",placeholder:"Enter SASL Username"},{name:"sasl_password",label:"SASL Password",tooltip:"Password for SASL/PLAIN or SASL/SCRAM authentication",type:"string",placeholder:"Enter SASL Password"},{name:"sasl_mechanism",label:"SASL Mechanism",tooltip:"SASL authentication mechanism, default 'PLAIN'",type:"string"},{name:"tls_client_auth",label:"TLS Client Auth",tooltip:"Client Auth determines the Kafka server's policy for TLS client authorization",type:"string",placeholder:"Enter TLS Client Auth"},{name:"sasl",label:"SASL",tooltip:"Set to 'on' to enable SASL authentication",type:"on|off"},{name:"tls",label:"TLS",tooltip:"Set to 'on' to enable TLS",type:"on|off"},{name:"tls_skip_verify",label:"TLS skip verify",tooltip:'Trust server TLS without verification, defaults to "on" (verify)',type:"on|off"},{name:"client_tls_cert",label:"client TLS cert",tooltip:"Path to client certificate for mTLS authorization",type:"path",placeholder:"Enter TLS Client Cert"},{name:"client_tls_key",label:"client TLS key",tooltip:"Path to client key for mTLS authorization",type:"path",placeholder:"Enter TLS Client Key"},{name:"version",label:"Version",tooltip:"Specify the version of the Kafka cluster e.g '2.2.0'",type:"string",placeholder:"Enter Kafka Version"}].concat(v)),(0,r.Z)(n,u,[{name:"url",required:!0,label:"URL",tooltip:"AMQP server endpoint e.g. `amqp://myuser:mypassword@localhost:5672`",type:"url"},{name:"exchange",label:"Exchange",tooltip:"Name of the AMQP exchange",type:"string",placeholder:"Enter Exchange"},{name:"exchange_type",label:"Exchange Type",tooltip:"AMQP exchange type",type:"string",placeholder:"Enter Exchange Type"},{name:"routing_key",label:"Routing Key",tooltip:"Routing key for publishing",type:"string",placeholder:"Enter Routing Key"},{name:"mandatory",label:"Mandatory",tooltip:"Quietly ignore undelivered messages when set to 'off', default is 'on'",type:"on|off"},{name:"durable",label:"Durable",tooltip:"Persist queue across broker restarts when set to 'on', default is 'off'",type:"on|off"},{name:"no_wait",label:"No Wait",tooltip:"Non-blocking message delivery when set to 'on', default is 'off'",type:"on|off"},{name:"internal",label:"Internal",tooltip:"Set to 'on' for exchange to be not used directly by publishers, but only when bound to other exchanges",type:"on|off"},{name:"auto_deleted",label:"Auto Deleted",tooltip:"Auto delete queue when set to 'on', when there are no consumers",type:"on|off"},{name:"delivery_mode",label:"Delivery Mode",tooltip:"Set to '1' for non-persistent or '2' for persistent queue",type:"number",placeholder:"Enter Delivery Mode"}].concat(v)),(0,r.Z)(n,d,[{name:"address",required:!0,label:"Address",tooltip:"Redis server's address e.g. `localhost:6379`",type:"address",placeholder:"Enter Address"},{name:"key",required:!0,label:"Key",tooltip:"Redis key to store/update events, key is auto-created",type:"string",placeholder:"Enter Key"},{name:"password",label:"Password",tooltip:"Redis server password",type:"string",placeholder:"Enter Password"}].concat(v)),(0,r.Z)(n,p,[{name:"broker",required:!0,label:"Broker",tooltip:"MQTT server endpoint e.g. `tcp://localhost:1883`",type:"uri",placeholder:"Enter Brokers"},{name:"topic",required:!0,label:"Topic",tooltip:"Name of the MQTT topic to publish",type:"string",placeholder:"Enter Topic"},{name:"username",label:"Username",tooltip:"MQTT username",type:"string",placeholder:"Enter Username"},{name:"password",label:"Password",tooltip:"MQTT password",type:"string",placeholder:"Enter Password"},{name:"qos",label:"QOS",tooltip:"Set the quality of service priority, defaults to '0'",type:"number",placeholder:"Enter QOS"},{name:"keep_alive_interval",label:"Keep Alive Interval",tooltip:"Keep-alive interval for MQTT connections in s,m,h,d",type:"duration",placeholder:"Enter Keep Alive Interval"},{name:"reconnect_interval",label:"Reconnect Interval",tooltip:"Reconnect interval for MQTT connections in s,m,h,d",type:"duration",placeholder:"Enter Reconnect Interval"}].concat(v)),(0,r.Z)(n,f,[{name:"address",required:!0,label:"Address",tooltip:"NATS server address e.g. '0.0.0.0:4222'",type:"address",placeholder:"Enter Address"},{name:"subject",required:!0,label:"Subject",tooltip:"NATS subscription subject",type:"string",placeholder:"Enter NATS Subject"},{name:"username",label:"Username",tooltip:"NATS username",type:"string",placeholder:"Enter NATS Username"},{name:"password",label:"Password",tooltip:"NATS password",type:"string",placeholder:"Enter NATS password"},{name:"token",label:"Token",tooltip:"NATS token",type:"string",placeholder:"Enter NATS token"},{name:"tls",label:"TLS",tooltip:"Set to 'on' to enable TLS",type:"on|off"},{name:"tls_skip_verify",label:"TLS Skip Verify",tooltip:'Trust server TLS without verification, defaults to "on" (verify)',type:"on|off"},{name:"ping_interval",label:"Ping Interval",tooltip:"Client ping commands interval in s,m,h,d. Disabled by default",type:"duration",placeholder:"Enter Ping Interval"},{name:"streaming",label:"Streaming",tooltip:"Set to 'on' to use streaming NATS server",type:"on|off"},{name:"streaming_async",label:"Streaming async",tooltip:"Set to 'on' to enable asynchronous publish",type:"on|off"},{name:"streaming_max_pub_acks_in_flight",label:"Streaming max publish ACKS in flight",tooltip:"Number of messages to publish without waiting for ACKs",type:"number",placeholder:"Enter Streaming in flight value"},{name:"streaming_cluster_id",label:"Streaming Cluster ID",tooltip:"Unique ID for NATS streaming cluster",type:"string",placeholder:"Enter Streaming Cluster ID"},{name:"cert_authority",label:"Cert Authority",tooltip:"Path to certificate chain of the target NATS server",type:"string",placeholder:"Enter Cert Authority"},{name:"client_cert",label:"Client Cert",tooltip:"Client cert for NATS mTLS auth",type:"string",placeholder:"Enter Client Cert"},{name:"client_key",label:"Client Key",tooltip:"Client cert key for NATS mTLS authorization",type:"string",placeholder:"Enter Client Key"}].concat(v)),(0,r.Z)(n,g,[{name:"url",required:!0,label:"URL",tooltip:"Elasticsearch server's address, with optional authentication info",type:"url",placeholder:"Enter URL"},{name:"index",required:!0,label:"Index",tooltip:"Elasticsearch index to store/update events, index is auto-created",type:"string",placeholder:"Enter Index"},{name:"format",required:!0,label:"Format",tooltip:"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'",type:"enum",placeholder:"Enter Format"}].concat(v)),(0,r.Z)(n,m,[{name:"endpoint",required:!0,label:"Endpoint",tooltip:"Webhook server endpoint e.g. http://localhost:8080/minio/events",type:"url",placeholder:"Enter Endpoint"},{name:"auth_token",label:"Auth Token",tooltip:"Opaque string or JWT authorization token",type:"string",placeholder:"Enter auth_token"}].concat(v)),(0,r.Z)(n,h,[{name:"nsqd_address",required:!0,label:"NSQD Address",tooltip:"NSQ server address e.g. '127.0.0.1:4150'",type:"address",placeholder:"Enter nsqd_address"},{name:"topic",required:!0,label:"Topic",tooltip:"NSQ topic",type:"string",placeholder:"Enter Topic"},{name:"tls",label:"TLS",tooltip:"Set to 'on' to enable TLS",type:"on|off"},{name:"tls_skip_verify",label:"TLS Skip Verify",tooltip:'Trust server TLS without verification, defaults to "on" (verify)',type:"on|off"}].concat(v)),n),k={webhook:"notify_webhook",amqp:"notify_amqp",kafka:"notify_kafka",mqtt:"notify_mqtt",nats:"notify_nats",nsq:"notify_nsq",mysql:"notify_mysql",postgresql:"notify_postgres",elasticsearch:"notify_elasticsearch",redis:"notify_redis"},x=function(e){return k[e]}}}]); +//# sourceMappingURL=808.045ec154.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/808.1a63a909.chunk.js.map b/portal-ui/build/static/js/808.045ec154.chunk.js.map similarity index 99% rename from portal-ui/build/static/js/808.1a63a909.chunk.js.map rename to portal-ui/build/static/js/808.045ec154.chunk.js.map index c584e4878..ed4134aaa 100644 --- a/portal-ui/build/static/js/808.1a63a909.chunk.js.map +++ b/portal-ui/build/static/js/808.045ec154.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/808.1a63a909.chunk.js","mappings":"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","sources":["screens/Console/Common/Components/withSuspense.tsx","screens/Console/EventDestinations/TargetTitle.tsx","screens/Console/EventDestinations/AddEventDestination.tsx","screens/Console/EventDestinations/utils.ts"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport get from \"lodash/get\";\nimport styled from \"styled-components\";\nimport { Box } from \"mds\";\n\ninterface ITargetTitle {\n logoSrc: string;\n title: string;\n}\n\nconst TargetBase = styled.div(({ theme }) => ({\n background: get(theme, \"boxBackground\", \"#fff\"),\n border: `${get(theme, \"borderColor\", \"#E5E5E5\")} 1px solid`,\n borderRadius: 5,\n height: 80,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"start\",\n marginBottom: 16,\n cursor: \"pointer\",\n padding: 0,\n overflow: \"hidden\",\n \"& .logoButton\": {\n height: \"80px\",\n },\n \"& .imageContainer\": {\n backgroundColor: get(theme, \"bgColor\", \"#fff\"),\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n width: 80,\n height: 80,\n\n \"& img\": {\n maxWidth: 46,\n maxHeight: 46,\n filter: \"drop-shadow(1px 1px 8px #fff)\",\n },\n },\n \"& .titleBox\": {\n color: get(theme, \"fontColor\", \"#000\"),\n fontSize: 16,\n fontFamily: \"Inter,sans-serif\",\n paddingLeft: 18,\n },\n}));\n\nconst TargetTitle = ({ logoSrc, title }: ITargetTitle) => {\n return (\n \n \n {title}\n \n\n \n {title} Event Destination\n \n \n );\n};\n\nexport default TargetTitle;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\n\nimport get from \"lodash/get\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { BackLink, Button, FormLayout, Grid, InputBox, PageLayout } from \"mds\";\n\nimport {\n destinationList,\n notificationEndpointsFields,\n notifyMysql,\n notifyPostgres,\n removeEmptyFields,\n} from \"./utils\";\nimport {\n modalBasic,\n settingsCommon,\n} from \"../Common/FormComponents/common/styleLibrary\";\n\nimport { IElementValue } from \"../Configurations/types\";\n\nimport withSuspense from \"../Common/Components/withSuspense\";\n\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport {\n setErrorSnackMessage,\n setHelpName,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { useNavigate, useParams } from \"react-router-dom\";\nimport { useAppDispatch } from \"../../../store\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport TargetTitle from \"./TargetTitle\";\nimport { setDestinationLoading } from \"./destinationsSlice\";\nimport HelpMenu from \"../HelpMenu\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\nconst ConfMySql = withSuspense(\n React.lazy(() => import(\"./CustomForms/ConfMySql\")),\n);\n\nconst ConfTargetGeneric = withSuspense(\n React.lazy(() => import(\"./ConfTargetGeneric\")),\n);\n\nconst ConfPostgres = withSuspense(\n React.lazy(() => import(\"./CustomForms/ConfPostgres\")),\n);\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalBasic,\n ...settingsCommon,\n });\n\ninterface IAddNotificationEndpointProps {\n saveAndRefresh: any;\n classes: any;\n}\n\nconst AddEventDestination = ({\n saveAndRefresh,\n classes,\n}: IAddNotificationEndpointProps) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const params = useParams();\n\n //Local States\n const [valuesArr, setValueArr] = useState([]);\n const [identifier, setIdentifier] = useState(\"\");\n const [saving, setSaving] = useState(false);\n const service = params.service || \"\";\n\n //Effects\n useEffect(() => {\n if (saving) {\n const payload = {\n key_values: removeEmptyFields(valuesArr),\n };\n api.configs\n .setConfig(`${service}:${identifier}`, payload)\n .then(() => {\n setSaving(false);\n dispatch(setServerNeedsRestart(true));\n dispatch(setDestinationLoading(true));\n navigate(IAM_PAGES.EVENT_DESTINATIONS);\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [\n saving,\n service,\n valuesArr,\n saveAndRefresh,\n dispatch,\n navigate,\n identifier,\n ]);\n\n //Fetch Actions\n const submitForm = (event: React.FormEvent) => {\n event.preventDefault();\n setSaving(true);\n };\n\n const onValueChange = useCallback(\n (newValue: IElementValue[]) => {\n setValueArr(newValue);\n },\n [setValueArr],\n );\n\n let srvComponent;\n switch (service) {\n case notifyPostgres: {\n srvComponent = ;\n break;\n }\n case notifyMysql: {\n srvComponent = ;\n break;\n }\n default: {\n const fields = get(notificationEndpointsFields, service, []);\n\n srvComponent = (\n \n );\n }\n }\n\n const targetElement = destinationList.find(\n (element) => element.actionTrigger === service,\n );\n\n useEffect(() => {\n dispatch(setHelpName(\"add_notification_endpoint\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n \n navigate(IAM_PAGES.EVENT_DESTINATIONS_ADD)}\n />\n \n }\n actions={}\n />\n\n \n

\n {service !== \"\" && (\n \n \n {targetElement && (\n \n )}\n \n \n \n setIdentifier(e.target.value)}\n tooltip={\"Unique descriptive string for this destination\"}\n placeholder=\"Enter Destination Identifier\"\n required\n />\n \n \n {srvComponent}\n \n \n \n \n \n \n )}\n
\n \n \n );\n};\n\nexport default withStyles(styles)(AddEventDestination);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { NotificationEndpointItem } from \"api/consoleApi\";\nimport { IElementValue } from \"../Configurations/types\";\nimport { TransformedEndpointItem } from \"./types\";\n\nexport const notifyPostgres = \"notify_postgres\";\nexport const notifyMysql = \"notify_mysql\";\nexport const notifyKafka = \"notify_kafka\";\nexport const notifyAmqp = \"notify_amqp\";\nexport const notifyMqtt = \"notify_mqtt\";\nexport const notifyRedis = \"notify_redis\";\nexport const notifyNats = \"notify_nats\";\nexport const notifyElasticsearch = \"notify_elasticsearch\";\nexport const notifyWebhooks = \"notify_webhook\";\nexport const notifyNsq = \"notify_nsq\";\n\nexport const notificationTransform = (\n notificationElements: NotificationEndpointItem[],\n) => {\n return notificationElements.map((element) => {\n return {\n service_name: `${element.service}:${element.account_id}`,\n name: element.service,\n account_id: element.account_id,\n status: element.status,\n };\n }) as TransformedEndpointItem[];\n};\n\nexport class DestType {\n static DB: string = \"database\";\n static Queue: string = \"queue\";\n static Func: string = \"functions\";\n}\n\nexport const destinationList = [\n {\n actionTrigger: notifyPostgres,\n targetTitle: \"PostgreSQL\",\n logo: \"/postgres-logo.svg\",\n category: DestType.DB,\n },\n {\n actionTrigger: notifyKafka,\n targetTitle: \"Kafka\",\n logo: \"/kafka-logo.svg\",\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyAmqp,\n targetTitle: \"AMQP\",\n logo: \"/amqp-logo.svg\",\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMqtt,\n targetTitle: \"MQTT\",\n logo: \"/mqtt-logo.svg\",\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyRedis,\n targetTitle: \"Redis\",\n logo: \"/redis-logo.svg\",\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyNats,\n targetTitle: \"NATS\",\n logo: \"/nats-logo.svg\",\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMysql,\n targetTitle: \"Mysql\",\n logo: \"/mysql-logo.svg\",\n category: DestType.DB,\n },\n {\n actionTrigger: notifyElasticsearch,\n targetTitle: \"Elastic Search\",\n logo: \"/elasticsearch-logo.svg\",\n category: DestType.DB,\n },\n {\n actionTrigger: notifyWebhooks,\n targetTitle: \"Webhook\",\n logo: \"/webhooks-logo.svg\",\n category: DestType.Func,\n },\n {\n actionTrigger: notifyNsq,\n targetTitle: \"NSQ\",\n logo: \"/nsq-logo.svg\",\n category: DestType.Queue,\n },\n];\n\nconst commonFields = [\n {\n name: \"queue_dir\",\n label: \"Queue Directory\",\n required: false,\n\n tooltip: \"Staging directory for undelivered messages e.g. '/home/events'\",\n type: \"string\",\n placeholder: \"Enter Queue Directory\",\n },\n {\n name: \"queue_limit\",\n label: \"Queue Limit\",\n required: false,\n\n tooltip: \"Maximum limit for undelivered messages, defaults to '10000'\",\n type: \"number\",\n placeholder: \"Enter Queue Limit\",\n },\n {\n name: \"comment\",\n label: \"Comment\",\n required: false,\n type: \"comment\",\n placeholder: \"Enter custom notes if any\",\n },\n];\n\nexport const removeEmptyFields = (formFields: IElementValue[]) => {\n const nonEmptyFields = formFields.filter((field) => field.value !== \"\");\n\n return nonEmptyFields;\n};\n\nexport const notificationEndpointsFields: any = {\n [notifyKafka]: [\n {\n name: \"brokers\",\n label: \"Brokers\",\n required: true,\n\n tooltip: \"Comma separated list of Kafka broker addresses\",\n type: \"string\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n label: \"Topic\",\n tooltip: \"Kafka topic used for bucket notifications\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"sasl_username\",\n label: \"SASL Username\",\n tooltip: \"Username for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Username\",\n },\n {\n name: \"sasl_password\",\n label: \"SASL Password\",\n tooltip: \"Password for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Password\",\n },\n {\n name: \"sasl_mechanism\",\n label: \"SASL Mechanism\",\n tooltip: \"SASL authentication mechanism, default 'PLAIN'\",\n type: \"string\",\n },\n {\n name: \"tls_client_auth\",\n label: \"TLS Client Auth\",\n tooltip:\n \"Client Auth determines the Kafka server's policy for TLS client authorization\",\n type: \"string\",\n placeholder: \"Enter TLS Client Auth\",\n },\n {\n name: \"sasl\",\n label: \"SASL\",\n tooltip: \"Set to 'on' to enable SASL authentication\",\n type: \"on|off\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS skip verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"client_tls_cert\",\n label: \"client TLS cert\",\n tooltip: \"Path to client certificate for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Cert\",\n },\n {\n name: \"client_tls_key\",\n label: \"client TLS key\",\n tooltip: \"Path to client key for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Key\",\n },\n {\n name: \"version\",\n label: \"Version\",\n tooltip: \"Specify the version of the Kafka cluster e.g '2.2.0'\",\n type: \"string\",\n placeholder: \"Enter Kafka Version\",\n },\n ...commonFields,\n ],\n [notifyAmqp]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"AMQP server endpoint e.g. `amqp://myuser:mypassword@localhost:5672`\",\n type: \"url\",\n },\n {\n name: \"exchange\",\n label: \"Exchange\",\n tooltip: \"Name of the AMQP exchange\",\n type: \"string\",\n placeholder: \"Enter Exchange\",\n },\n {\n name: \"exchange_type\",\n label: \"Exchange Type\",\n tooltip: \"AMQP exchange type\",\n type: \"string\",\n placeholder: \"Enter Exchange Type\",\n },\n {\n name: \"routing_key\",\n label: \"Routing Key\",\n tooltip: \"Routing key for publishing\",\n type: \"string\",\n placeholder: \"Enter Routing Key\",\n },\n {\n name: \"mandatory\",\n label: \"Mandatory\",\n tooltip:\n \"Quietly ignore undelivered messages when set to 'off', default is 'on'\",\n type: \"on|off\",\n },\n {\n name: \"durable\",\n label: \"Durable\",\n tooltip:\n \"Persist queue across broker restarts when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"no_wait\",\n label: \"No Wait\",\n tooltip:\n \"Non-blocking message delivery when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"internal\",\n label: \"Internal\",\n tooltip:\n \"Set to 'on' for exchange to be not used directly by publishers, but only when bound to other exchanges\",\n type: \"on|off\",\n },\n {\n name: \"auto_deleted\",\n label: \"Auto Deleted\",\n tooltip:\n \"Auto delete queue when set to 'on', when there are no consumers\",\n type: \"on|off\",\n },\n {\n name: \"delivery_mode\",\n label: \"Delivery Mode\",\n tooltip: \"Set to '1' for non-persistent or '2' for persistent queue\",\n type: \"number\",\n placeholder: \"Enter Delivery Mode\",\n },\n ...commonFields,\n ],\n [notifyRedis]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"Redis server's address e.g. `localhost:6379`\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"key\",\n required: true,\n label: \"Key\",\n tooltip: \"Redis key to store/update events, key is auto-created\",\n type: \"string\",\n placeholder: \"Enter Key\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"Redis server password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n ...commonFields,\n ],\n [notifyMqtt]: [\n {\n name: \"broker\",\n required: true,\n label: \"Broker\",\n tooltip: \"MQTT server endpoint e.g. `tcp://localhost:1883`\",\n type: \"uri\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"Name of the MQTT topic to publish\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"MQTT username\",\n type: \"string\",\n placeholder: \"Enter Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"MQTT password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n {\n name: \"qos\",\n label: \"QOS\",\n tooltip: \"Set the quality of service priority, defaults to '0'\",\n type: \"number\",\n placeholder: \"Enter QOS\",\n },\n {\n name: \"keep_alive_interval\",\n label: \"Keep Alive Interval\",\n tooltip: \"Keep-alive interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Keep Alive Interval\",\n },\n {\n name: \"reconnect_interval\",\n label: \"Reconnect Interval\",\n tooltip: \"Reconnect interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Reconnect Interval\",\n },\n ...commonFields,\n ],\n [notifyNats]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"NATS server address e.g. '0.0.0.0:4222'\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"subject\",\n required: true,\n label: \"Subject\",\n tooltip: \"NATS subscription subject\",\n type: \"string\",\n placeholder: \"Enter NATS Subject\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"NATS username\",\n type: \"string\",\n placeholder: \"Enter NATS Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"NATS password\",\n type: \"string\",\n placeholder: \"Enter NATS password\",\n },\n {\n name: \"token\",\n label: \"Token\",\n tooltip: \"NATS token\",\n type: \"string\",\n placeholder: \"Enter NATS token\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"ping_interval\",\n label: \"Ping Interval\",\n tooltip: \"Client ping commands interval in s,m,h,d. Disabled by default\",\n type: \"duration\",\n placeholder: \"Enter Ping Interval\",\n },\n {\n name: \"streaming\",\n label: \"Streaming\",\n tooltip: \"Set to 'on' to use streaming NATS server\",\n type: \"on|off\",\n },\n {\n name: \"streaming_async\",\n label: \"Streaming async\",\n tooltip: \"Set to 'on' to enable asynchronous publish\",\n type: \"on|off\",\n },\n {\n name: \"streaming_max_pub_acks_in_flight\",\n label: \"Streaming max publish ACKS in flight\",\n tooltip: \"Number of messages to publish without waiting for ACKs\",\n type: \"number\",\n placeholder: \"Enter Streaming in flight value\",\n },\n {\n name: \"streaming_cluster_id\",\n label: \"Streaming Cluster ID\",\n tooltip: \"Unique ID for NATS streaming cluster\",\n type: \"string\",\n placeholder: \"Enter Streaming Cluster ID\",\n },\n {\n name: \"cert_authority\",\n label: \"Cert Authority\",\n tooltip: \"Path to certificate chain of the target NATS server\",\n type: \"string\",\n placeholder: \"Enter Cert Authority\",\n },\n {\n name: \"client_cert\",\n label: \"Client Cert\",\n tooltip: \"Client cert for NATS mTLS auth\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_key\",\n label: \"Client Key\",\n tooltip: \"Client cert key for NATS mTLS authorization\",\n type: \"string\",\n placeholder: \"Enter Client Key\",\n },\n ...commonFields,\n ],\n [notifyElasticsearch]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"Elasticsearch server's address, with optional authentication info\",\n type: \"url\",\n placeholder: \"Enter URL\",\n },\n {\n name: \"index\",\n required: true,\n label: \"Index\",\n tooltip:\n \"Elasticsearch index to store/update events, index is auto-created\",\n type: \"string\",\n placeholder: \"Enter Index\",\n },\n {\n name: \"format\",\n required: true,\n label: \"Format\",\n tooltip:\n \"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\",\n type: \"enum\",\n placeholder: \"Enter Format\",\n },\n ...commonFields,\n ],\n [notifyWebhooks]: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n tooltip:\n \"Webhook server endpoint e.g. http://localhost:8080/minio/events\",\n type: \"url\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n label: \"Auth Token\",\n tooltip: \"Opaque string or JWT authorization token\",\n type: \"string\",\n placeholder: \"Enter auth_token\",\n },\n ...commonFields,\n ],\n [notifyNsq]: [\n {\n name: \"nsqd_address\",\n required: true,\n label: \"NSQD Address\",\n tooltip: \"NSQ server address e.g. '127.0.0.1:4150'\",\n type: \"address\",\n placeholder: \"Enter nsqd_address\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"NSQ topic\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n ...commonFields,\n ],\n};\n\nconst serviceToConfigMap: Record = {\n webhook: \"notify_webhook\",\n amqp: \"notify_amqp\",\n kafka: \"notify_kafka\",\n mqtt: \"notify_mqtt\",\n nats: \"notify_nats\",\n nsq: \"notify_nsq\",\n mysql: \"notify_mysql\",\n postgresql: \"notify_postgres\", //looks different in server response(postgresql as opposed to postgres) from restapi/admin_notification_endpoints.go\n elasticsearch: \"notify_elasticsearch\",\n redis: \"notify_redis\",\n};\n\nexport const getNotificationConfigKey = (serviceName: string) => {\n return serviceToConfigMap[serviceName];\n};\n"],"names":["WrappedComponent","fallback","arguments","length","undefined","props","_jsx","Suspense","children","_objectSpread","TargetBase","styled","div","_ref","theme","background","get","border","concat","borderRadius","height","display","alignItems","justifyContent","marginBottom","cursor","padding","overflow","backgroundColor","width","maxWidth","maxHeight","filter","color","fontSize","fontFamily","paddingLeft","_ref2","logoSrc","title","_jsxs","Box","className","src","alt","ConfMySql","withSuspense","React","ConfTargetGeneric","ConfPostgres","withStyles","createStyles","modalBasic","settingsCommon","saveAndRefresh","classes","dispatch","useAppDispatch","navigate","useNavigate","params","useParams","_useState","useState","_useState2","_slicedToArray","valuesArr","setValueArr","_useState3","_useState4","identifier","setIdentifier","_useState5","_useState6","saving","setSaving","service","useEffect","payload","key_values","removeEmptyFields","api","configs","setConfig","then","setServerNeedsRestart","setDestinationLoading","IAM_PAGES","EVENT_DESTINATIONS","catch","err","setErrorSnackMessage","errorToHandler","error","srvComponent","onValueChange","useCallback","newValue","notifyPostgres","onChange","notifyMysql","fields","notificationEndpointsFields","targetElement","destinationList","find","element","actionTrigger","setHelpName","Fragment","PageHeaderWrapper","label","BackLink","onClick","EVENT_DESTINATIONS_ADD","actions","HelpMenu","PageLayout","noValidate","onSubmit","event","preventDefault","Grid","item","xs","TargetTitle","logo","targetTitle","FormLayout","formFieldRow","sx","InputBox","id","name","value","e","target","tooltip","placeholder","required","marginTop","Button","type","variant","disabled","trim","notifyKafka","notifyAmqp","notifyMqtt","notifyRedis","notifyNats","notifyElasticsearch","notifyWebhooks","notifyNsq","notificationTransform","notificationElements","map","service_name","account_id","status","DestType","_createClass","_classCallCheck","DB","Queue","Func","category","commonFields","formFields","field","_notificationEndpoint","_defineProperty","serviceToConfigMap","webhook","amqp","kafka","mqtt","nats","nsq","mysql","postgresql","elasticsearch","redis","getNotificationConfigKey","serviceName"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/808.045ec154.chunk.js","mappings":"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","sources":["screens/Console/Common/Components/withSuspense.tsx","screens/Console/EventDestinations/TargetTitle.tsx","screens/Console/EventDestinations/AddEventDestination.tsx","screens/Console/EventDestinations/utils.ts"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport get from \"lodash/get\";\nimport styled from \"styled-components\";\nimport { Box } from \"mds\";\n\ninterface ITargetTitle {\n logoSrc: string;\n title: string;\n}\n\nconst TargetBase = styled.div(({ theme }) => ({\n background: get(theme, \"boxBackground\", \"#fff\"),\n border: `${get(theme, \"borderColor\", \"#E5E5E5\")} 1px solid`,\n borderRadius: 5,\n height: 80,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"start\",\n marginBottom: 16,\n cursor: \"pointer\",\n padding: 0,\n overflow: \"hidden\",\n \"& .logoButton\": {\n height: \"80px\",\n },\n \"& .imageContainer\": {\n backgroundColor: get(theme, \"bgColor\", \"#fff\"),\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n width: 80,\n height: 80,\n\n \"& img\": {\n maxWidth: 46,\n maxHeight: 46,\n filter: \"drop-shadow(1px 1px 8px #fff)\",\n },\n },\n \"& .titleBox\": {\n color: get(theme, \"fontColor\", \"#000\"),\n fontSize: 16,\n fontFamily: \"Inter,sans-serif\",\n paddingLeft: 18,\n },\n}));\n\nconst TargetTitle = ({ logoSrc, title }: ITargetTitle) => {\n return (\n \n \n {title}\n \n\n \n {title} Event Destination\n \n \n );\n};\n\nexport default TargetTitle;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\n\nimport get from \"lodash/get\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { BackLink, Button, FormLayout, Grid, InputBox, PageLayout } from \"mds\";\n\nimport {\n destinationList,\n notificationEndpointsFields,\n notifyMysql,\n notifyPostgres,\n removeEmptyFields,\n} from \"./utils\";\nimport {\n modalBasic,\n settingsCommon,\n} from \"../Common/FormComponents/common/styleLibrary\";\n\nimport { IElementValue } from \"../Configurations/types\";\n\nimport withSuspense from \"../Common/Components/withSuspense\";\n\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport {\n setErrorSnackMessage,\n setHelpName,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { useNavigate, useParams } from \"react-router-dom\";\nimport { useAppDispatch } from \"../../../store\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport TargetTitle from \"./TargetTitle\";\nimport { setDestinationLoading } from \"./destinationsSlice\";\nimport HelpMenu from \"../HelpMenu\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\nconst ConfMySql = withSuspense(\n React.lazy(() => import(\"./CustomForms/ConfMySql\")),\n);\n\nconst ConfTargetGeneric = withSuspense(\n React.lazy(() => import(\"./ConfTargetGeneric\")),\n);\n\nconst ConfPostgres = withSuspense(\n React.lazy(() => import(\"./CustomForms/ConfPostgres\")),\n);\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalBasic,\n ...settingsCommon,\n });\n\ninterface IAddNotificationEndpointProps {\n saveAndRefresh: any;\n classes: any;\n}\n\nconst AddEventDestination = ({\n saveAndRefresh,\n classes,\n}: IAddNotificationEndpointProps) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const params = useParams();\n\n //Local States\n const [valuesArr, setValueArr] = useState([]);\n const [identifier, setIdentifier] = useState(\"\");\n const [saving, setSaving] = useState(false);\n const service = params.service || \"\";\n\n //Effects\n useEffect(() => {\n if (saving) {\n const payload = {\n key_values: removeEmptyFields(valuesArr),\n };\n api.configs\n .setConfig(`${service}:${identifier}`, payload)\n .then(() => {\n setSaving(false);\n dispatch(setServerNeedsRestart(true));\n dispatch(setDestinationLoading(true));\n navigate(IAM_PAGES.EVENT_DESTINATIONS);\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [\n saving,\n service,\n valuesArr,\n saveAndRefresh,\n dispatch,\n navigate,\n identifier,\n ]);\n\n //Fetch Actions\n const submitForm = (event: React.FormEvent) => {\n event.preventDefault();\n setSaving(true);\n };\n\n const onValueChange = useCallback(\n (newValue: IElementValue[]) => {\n setValueArr(newValue);\n },\n [setValueArr],\n );\n\n let srvComponent;\n switch (service) {\n case notifyPostgres: {\n srvComponent = ;\n break;\n }\n case notifyMysql: {\n srvComponent = ;\n break;\n }\n default: {\n const fields = get(notificationEndpointsFields, service, []);\n\n srvComponent = (\n \n );\n }\n }\n\n const targetElement = destinationList.find(\n (element) => element.actionTrigger === service,\n );\n\n useEffect(() => {\n dispatch(setHelpName(\"add_notification_endpoint\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n \n navigate(IAM_PAGES.EVENT_DESTINATIONS_ADD)}\n />\n \n }\n actions={}\n />\n\n \n

\n {service !== \"\" && (\n \n \n {targetElement && (\n \n )}\n \n \n \n setIdentifier(e.target.value)}\n tooltip={\"Unique descriptive string for this destination\"}\n placeholder=\"Enter Destination Identifier\"\n required\n />\n \n \n {srvComponent}\n \n \n \n \n \n \n )}\n
\n \n \n );\n};\n\nexport default withStyles(styles)(AddEventDestination);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { NotificationEndpointItem } from \"api/consoleApi\";\nimport { IElementValue } from \"../Configurations/types\";\nimport { TransformedEndpointItem } from \"./types\";\n\nexport const notifyPostgres = \"notify_postgres\";\nexport const notifyMysql = \"notify_mysql\";\nexport const notifyKafka = \"notify_kafka\";\nexport const notifyAmqp = \"notify_amqp\";\nexport const notifyMqtt = \"notify_mqtt\";\nexport const notifyRedis = \"notify_redis\";\nexport const notifyNats = \"notify_nats\";\nexport const notifyElasticsearch = \"notify_elasticsearch\";\nexport const notifyWebhooks = \"notify_webhook\";\nexport const notifyNsq = \"notify_nsq\";\n\nexport const notificationTransform = (\n notificationElements: NotificationEndpointItem[],\n) => {\n return notificationElements.map((element) => {\n return {\n service_name: `${element.service}:${element.account_id}`,\n name: element.service,\n account_id: element.account_id,\n status: element.status,\n };\n }) as TransformedEndpointItem[];\n};\n\nexport class DestType {\n static DB: string = \"database\";\n static Queue: string = \"queue\";\n static Func: string = \"functions\";\n}\n\nexport const destinationList = [\n {\n actionTrigger: notifyPostgres,\n targetTitle: \"PostgreSQL\",\n logo: \"/postgres-logo.svg\",\n category: DestType.DB,\n },\n {\n actionTrigger: notifyKafka,\n targetTitle: \"Kafka\",\n logo: \"/kafka-logo.svg\",\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyAmqp,\n targetTitle: \"AMQP\",\n logo: \"/amqp-logo.svg\",\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMqtt,\n targetTitle: \"MQTT\",\n logo: \"/mqtt-logo.svg\",\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyRedis,\n targetTitle: \"Redis\",\n logo: \"/redis-logo.svg\",\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyNats,\n targetTitle: \"NATS\",\n logo: \"/nats-logo.svg\",\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMysql,\n targetTitle: \"Mysql\",\n logo: \"/mysql-logo.svg\",\n category: DestType.DB,\n },\n {\n actionTrigger: notifyElasticsearch,\n targetTitle: \"Elastic Search\",\n logo: \"/elasticsearch-logo.svg\",\n category: DestType.DB,\n },\n {\n actionTrigger: notifyWebhooks,\n targetTitle: \"Webhook\",\n logo: \"/webhooks-logo.svg\",\n category: DestType.Func,\n },\n {\n actionTrigger: notifyNsq,\n targetTitle: \"NSQ\",\n logo: \"/nsq-logo.svg\",\n category: DestType.Queue,\n },\n];\n\nconst commonFields = [\n {\n name: \"queue_dir\",\n label: \"Queue Directory\",\n required: false,\n\n tooltip: \"Staging directory for undelivered messages e.g. '/home/events'\",\n type: \"string\",\n placeholder: \"Enter Queue Directory\",\n },\n {\n name: \"queue_limit\",\n label: \"Queue Limit\",\n required: false,\n\n tooltip: \"Maximum limit for undelivered messages, defaults to '10000'\",\n type: \"number\",\n placeholder: \"Enter Queue Limit\",\n },\n {\n name: \"comment\",\n label: \"Comment\",\n required: false,\n type: \"comment\",\n placeholder: \"Enter custom notes if any\",\n },\n];\n\nexport const removeEmptyFields = (formFields: IElementValue[]) => {\n const nonEmptyFields = formFields.filter((field) => field.value !== \"\");\n\n return nonEmptyFields;\n};\n\nexport const notificationEndpointsFields: any = {\n [notifyKafka]: [\n {\n name: \"brokers\",\n label: \"Brokers\",\n required: true,\n\n tooltip: \"Comma separated list of Kafka broker addresses\",\n type: \"string\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n label: \"Topic\",\n tooltip: \"Kafka topic used for bucket notifications\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"sasl_username\",\n label: \"SASL Username\",\n tooltip: \"Username for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Username\",\n },\n {\n name: \"sasl_password\",\n label: \"SASL Password\",\n tooltip: \"Password for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Password\",\n },\n {\n name: \"sasl_mechanism\",\n label: \"SASL Mechanism\",\n tooltip: \"SASL authentication mechanism, default 'PLAIN'\",\n type: \"string\",\n },\n {\n name: \"tls_client_auth\",\n label: \"TLS Client Auth\",\n tooltip:\n \"Client Auth determines the Kafka server's policy for TLS client authorization\",\n type: \"string\",\n placeholder: \"Enter TLS Client Auth\",\n },\n {\n name: \"sasl\",\n label: \"SASL\",\n tooltip: \"Set to 'on' to enable SASL authentication\",\n type: \"on|off\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS skip verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"client_tls_cert\",\n label: \"client TLS cert\",\n tooltip: \"Path to client certificate for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Cert\",\n },\n {\n name: \"client_tls_key\",\n label: \"client TLS key\",\n tooltip: \"Path to client key for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Key\",\n },\n {\n name: \"version\",\n label: \"Version\",\n tooltip: \"Specify the version of the Kafka cluster e.g '2.2.0'\",\n type: \"string\",\n placeholder: \"Enter Kafka Version\",\n },\n ...commonFields,\n ],\n [notifyAmqp]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"AMQP server endpoint e.g. `amqp://myuser:mypassword@localhost:5672`\",\n type: \"url\",\n },\n {\n name: \"exchange\",\n label: \"Exchange\",\n tooltip: \"Name of the AMQP exchange\",\n type: \"string\",\n placeholder: \"Enter Exchange\",\n },\n {\n name: \"exchange_type\",\n label: \"Exchange Type\",\n tooltip: \"AMQP exchange type\",\n type: \"string\",\n placeholder: \"Enter Exchange Type\",\n },\n {\n name: \"routing_key\",\n label: \"Routing Key\",\n tooltip: \"Routing key for publishing\",\n type: \"string\",\n placeholder: \"Enter Routing Key\",\n },\n {\n name: \"mandatory\",\n label: \"Mandatory\",\n tooltip:\n \"Quietly ignore undelivered messages when set to 'off', default is 'on'\",\n type: \"on|off\",\n },\n {\n name: \"durable\",\n label: \"Durable\",\n tooltip:\n \"Persist queue across broker restarts when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"no_wait\",\n label: \"No Wait\",\n tooltip:\n \"Non-blocking message delivery when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"internal\",\n label: \"Internal\",\n tooltip:\n \"Set to 'on' for exchange to be not used directly by publishers, but only when bound to other exchanges\",\n type: \"on|off\",\n },\n {\n name: \"auto_deleted\",\n label: \"Auto Deleted\",\n tooltip:\n \"Auto delete queue when set to 'on', when there are no consumers\",\n type: \"on|off\",\n },\n {\n name: \"delivery_mode\",\n label: \"Delivery Mode\",\n tooltip: \"Set to '1' for non-persistent or '2' for persistent queue\",\n type: \"number\",\n placeholder: \"Enter Delivery Mode\",\n },\n ...commonFields,\n ],\n [notifyRedis]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"Redis server's address e.g. `localhost:6379`\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"key\",\n required: true,\n label: \"Key\",\n tooltip: \"Redis key to store/update events, key is auto-created\",\n type: \"string\",\n placeholder: \"Enter Key\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"Redis server password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n ...commonFields,\n ],\n [notifyMqtt]: [\n {\n name: \"broker\",\n required: true,\n label: \"Broker\",\n tooltip: \"MQTT server endpoint e.g. `tcp://localhost:1883`\",\n type: \"uri\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"Name of the MQTT topic to publish\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"MQTT username\",\n type: \"string\",\n placeholder: \"Enter Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"MQTT password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n {\n name: \"qos\",\n label: \"QOS\",\n tooltip: \"Set the quality of service priority, defaults to '0'\",\n type: \"number\",\n placeholder: \"Enter QOS\",\n },\n {\n name: \"keep_alive_interval\",\n label: \"Keep Alive Interval\",\n tooltip: \"Keep-alive interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Keep Alive Interval\",\n },\n {\n name: \"reconnect_interval\",\n label: \"Reconnect Interval\",\n tooltip: \"Reconnect interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Reconnect Interval\",\n },\n ...commonFields,\n ],\n [notifyNats]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"NATS server address e.g. '0.0.0.0:4222'\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"subject\",\n required: true,\n label: \"Subject\",\n tooltip: \"NATS subscription subject\",\n type: \"string\",\n placeholder: \"Enter NATS Subject\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"NATS username\",\n type: \"string\",\n placeholder: \"Enter NATS Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"NATS password\",\n type: \"string\",\n placeholder: \"Enter NATS password\",\n },\n {\n name: \"token\",\n label: \"Token\",\n tooltip: \"NATS token\",\n type: \"string\",\n placeholder: \"Enter NATS token\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"ping_interval\",\n label: \"Ping Interval\",\n tooltip: \"Client ping commands interval in s,m,h,d. Disabled by default\",\n type: \"duration\",\n placeholder: \"Enter Ping Interval\",\n },\n {\n name: \"streaming\",\n label: \"Streaming\",\n tooltip: \"Set to 'on' to use streaming NATS server\",\n type: \"on|off\",\n },\n {\n name: \"streaming_async\",\n label: \"Streaming async\",\n tooltip: \"Set to 'on' to enable asynchronous publish\",\n type: \"on|off\",\n },\n {\n name: \"streaming_max_pub_acks_in_flight\",\n label: \"Streaming max publish ACKS in flight\",\n tooltip: \"Number of messages to publish without waiting for ACKs\",\n type: \"number\",\n placeholder: \"Enter Streaming in flight value\",\n },\n {\n name: \"streaming_cluster_id\",\n label: \"Streaming Cluster ID\",\n tooltip: \"Unique ID for NATS streaming cluster\",\n type: \"string\",\n placeholder: \"Enter Streaming Cluster ID\",\n },\n {\n name: \"cert_authority\",\n label: \"Cert Authority\",\n tooltip: \"Path to certificate chain of the target NATS server\",\n type: \"string\",\n placeholder: \"Enter Cert Authority\",\n },\n {\n name: \"client_cert\",\n label: \"Client Cert\",\n tooltip: \"Client cert for NATS mTLS auth\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_key\",\n label: \"Client Key\",\n tooltip: \"Client cert key for NATS mTLS authorization\",\n type: \"string\",\n placeholder: \"Enter Client Key\",\n },\n ...commonFields,\n ],\n [notifyElasticsearch]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"Elasticsearch server's address, with optional authentication info\",\n type: \"url\",\n placeholder: \"Enter URL\",\n },\n {\n name: \"index\",\n required: true,\n label: \"Index\",\n tooltip:\n \"Elasticsearch index to store/update events, index is auto-created\",\n type: \"string\",\n placeholder: \"Enter Index\",\n },\n {\n name: \"format\",\n required: true,\n label: \"Format\",\n tooltip:\n \"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\",\n type: \"enum\",\n placeholder: \"Enter Format\",\n },\n ...commonFields,\n ],\n [notifyWebhooks]: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n tooltip:\n \"Webhook server endpoint e.g. http://localhost:8080/minio/events\",\n type: \"url\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n label: \"Auth Token\",\n tooltip: \"Opaque string or JWT authorization token\",\n type: \"string\",\n placeholder: \"Enter auth_token\",\n },\n ...commonFields,\n ],\n [notifyNsq]: [\n {\n name: \"nsqd_address\",\n required: true,\n label: \"NSQD Address\",\n tooltip: \"NSQ server address e.g. '127.0.0.1:4150'\",\n type: \"address\",\n placeholder: \"Enter nsqd_address\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"NSQ topic\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n ...commonFields,\n ],\n};\n\nconst serviceToConfigMap: Record = {\n webhook: \"notify_webhook\",\n amqp: \"notify_amqp\",\n kafka: \"notify_kafka\",\n mqtt: \"notify_mqtt\",\n nats: \"notify_nats\",\n nsq: \"notify_nsq\",\n mysql: \"notify_mysql\",\n postgresql: \"notify_postgres\", //looks different in server response(postgresql as opposed to postgres) from restapi/admin_notification_endpoints.go\n elasticsearch: \"notify_elasticsearch\",\n redis: \"notify_redis\",\n};\n\nexport const getNotificationConfigKey = (serviceName: string) => {\n return serviceToConfigMap[serviceName];\n};\n"],"names":["WrappedComponent","fallback","arguments","length","undefined","props","_jsx","Suspense","children","_objectSpread","TargetBase","styled","div","_ref","theme","background","get","border","concat","borderRadius","height","display","alignItems","justifyContent","marginBottom","cursor","padding","overflow","backgroundColor","width","maxWidth","maxHeight","filter","color","fontSize","fontFamily","paddingLeft","_ref2","logoSrc","title","_jsxs","Box","className","src","alt","ConfMySql","withSuspense","React","ConfTargetGeneric","ConfPostgres","withStyles","createStyles","modalBasic","settingsCommon","saveAndRefresh","classes","dispatch","useAppDispatch","navigate","useNavigate","params","useParams","_useState","useState","_useState2","_slicedToArray","valuesArr","setValueArr","_useState3","_useState4","identifier","setIdentifier","_useState5","_useState6","saving","setSaving","service","useEffect","payload","key_values","removeEmptyFields","api","configs","setConfig","then","setServerNeedsRestart","setDestinationLoading","IAM_PAGES","EVENT_DESTINATIONS","catch","err","setErrorSnackMessage","errorToHandler","error","srvComponent","onValueChange","useCallback","newValue","notifyPostgres","onChange","notifyMysql","fields","notificationEndpointsFields","targetElement","destinationList","find","element","actionTrigger","setHelpName","Fragment","PageHeaderWrapper","label","BackLink","onClick","EVENT_DESTINATIONS_ADD","actions","HelpMenu","PageLayout","noValidate","onSubmit","event","preventDefault","Grid","item","xs","TargetTitle","logo","targetTitle","FormLayout","formFieldRow","sx","InputBox","id","name","value","e","target","tooltip","placeholder","required","marginTop","Button","type","variant","disabled","trim","notifyKafka","notifyAmqp","notifyMqtt","notifyRedis","notifyNats","notifyElasticsearch","notifyWebhooks","notifyNsq","notificationTransform","notificationElements","map","service_name","account_id","status","DestType","_createClass","_classCallCheck","DB","Queue","Func","category","commonFields","formFields","field","_notificationEndpoint","_defineProperty","serviceToConfigMap","webhook","amqp","kafka","mqtt","nats","nsq","mysql","postgresql","elasticsearch","redis","getNotificationConfigKey","serviceName"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/808.1a63a909.chunk.js b/portal-ui/build/static/js/808.1a63a909.chunk.js deleted file mode 100644 index 689a7da3a..000000000 --- a/portal-ui/build/static/js/808.1a63a909.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[808],{75578:function(e,t,o){var n=o(1413),r=o(72791),a=o(80184);t.Z=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(o){return(0,a.jsx)(r.Suspense,{fallback:t,children:(0,a.jsx)(e,(0,n.Z)({},o))})}}},50808:function(e,t,o){o.r(t),o.d(t,{default:function(){return j}});var n=o(29439),r=o(1413),a=o(72791),i=o(26181),l=o.n(i),s=o(11135),c=o(25787),u=o(29945),p=o(61757),d=o(23814),f=o(75578),g=o(56087),m=o(87995),h=o(57689),y=o(81551),b=o(47974),S=o(17691),v=o(80184),T=S.ZP.div((function(e){var t=e.theme;return{background:l()(t,"boxBackground","#fff"),border:"".concat(l()(t,"borderColor","#E5E5E5")," 1px solid"),borderRadius:5,height:80,display:"flex",alignItems:"center",justifyContent:"start",marginBottom:16,cursor:"pointer",padding:0,overflow:"hidden","& .logoButton":{height:"80px"},"& .imageContainer":{backgroundColor:l()(t,"bgColor","#fff"),display:"flex",alignItems:"center",justifyContent:"center",width:80,height:80,"& img":{maxWidth:46,maxHeight:46,filter:"drop-shadow(1px 1px 8px #fff)"}},"& .titleBox":{color:l()(t,"fontColor","#000"),fontSize:16,fontFamily:"Inter,sans-serif",paddingLeft:18}}})),_=function(e){var t=e.logoSrc,o=e.title;return(0,v.jsxs)(T,{children:[(0,v.jsx)(u.xuv,{className:"imageContainer",children:(0,v.jsx)("img",{src:t,className:"logoButton",alt:o})}),(0,v.jsx)(u.xuv,{className:"titleBox",children:(0,v.jsxs)("b",{children:[o," Event Destination"]})})]})},k=o(53669),x=o(99670),E=o(31776),A=o(82342),q=(0,f.Z)(a.lazy((function(){return Promise.all([o.e(5994),o.e(5473),o.e(7391),o.e(2486)]).then(o.bind(o,9059))}))),L=(0,f.Z)(a.lazy((function(){return Promise.all([o.e(5994),o.e(5473),o.e(7391),o.e(7981),o.e(91)]).then(o.bind(o,10091))}))),C=(0,f.Z)(a.lazy((function(){return Promise.all([o.e(5994),o.e(5473),o.e(7391),o.e(7586)]).then(o.bind(o,56247))}))),j=(0,c.Z)((function(e){return(0,s.Z)((0,r.Z)((0,r.Z)({},d.oO),d.Je))}))((function(e){var t=e.saveAndRefresh,o=e.classes,r=(0,y.TL)(),i=(0,h.s0)(),s=(0,h.UO)(),c=(0,a.useState)([]),d=(0,n.Z)(c,2),f=d[0],S=d[1],T=(0,a.useState)(""),j=(0,n.Z)(T,2),w=j[0],N=j[1],Q=(0,a.useState)(!1),Z=(0,n.Z)(Q,2),D=Z[0],I=Z[1],P=s.service||"";(0,a.useEffect)((function(){if(D){var e={key_values:(0,p.DD)(f)};E.h.configs.setConfig("".concat(P,":").concat(w),e).then((function(){I(!1),r((0,m.cN)(!0)),r((0,k.iP)(!0)),i(g.gA.EVENT_DESTINATIONS)})).catch((function(e){I(!1),r((0,m.Ih)((0,A.g)(e.error)))}))}}),[D,P,f,t,r,i,w]);var M,K=(0,a.useCallback)((function(e){S(e)}),[S]);switch(P){case p.ee:M=(0,v.jsx)(C,{onChange:K});break;case p.dM:M=(0,v.jsx)(q,{onChange:K});break;default:var R=l()(p.oj,P,[]);M=(0,v.jsx)(L,{fields:R,onChange:K})}var B=p.BI.find((function(e){return e.actionTrigger===P}));return(0,a.useEffect)((function(){r((0,m.Sc)("add_notification_endpoint"))}),[]),(0,v.jsxs)(a.Fragment,{children:[(0,v.jsx)(b.Z,{label:(0,v.jsx)(a.Fragment,{children:(0,v.jsx)(u.hbI,{label:"Event Destinations",onClick:function(){return i(g.gA.EVENT_DESTINATIONS_ADD)}})}),actions:(0,v.jsx)(x.Z,{})}),(0,v.jsx)(u.Xgh,{children:(0,v.jsx)("form",{noValidate:!0,onSubmit:function(e){e.preventDefault(),I(!0)},children:""!==P&&(0,v.jsxs)(a.Fragment,{children:[(0,v.jsx)(u.rjZ,{item:!0,xs:12,children:B&&(0,v.jsx)(_,{logoSrc:B.logo,title:B?B.targetTitle:""})}),(0,v.jsxs)(u.ltY,{children:[(0,v.jsx)(u.rjZ,{item:!0,xs:12,className:o.formFieldRow,sx:{marginBottom:"12px"},children:(0,v.jsx)(u.Wzg,{id:"identifier-field",name:"identifier-field",label:"Identifier",value:w,onChange:function(e){return N(e.target.value)},tooltip:"Unique descriptive string for this destination",placeholder:"Enter Destination Identifier",required:!0})}),(0,v.jsx)(u.rjZ,{item:!0,xs:12,children:M}),(0,v.jsx)(u.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end",marginTop:15},children:(0,v.jsx)(u.zxk,{id:"save-notification-target",type:"submit",variant:"callAction",disabled:D||""===w.trim(),label:"Save Event Destination"})})]})]})})})]})}))},61757:function(e,t,o){o.d(t,{BI:function(){return S},DD:function(){return T},L:function(){return x},dM:function(){return s},ee:function(){return l},fk:function(){return y},oj:function(){return _},z5:function(){return b}});var n,r=o(4942),a=o(43144),i=o(15671),l="notify_postgres",s="notify_mysql",c="notify_kafka",u="notify_amqp",p="notify_mqtt",d="notify_redis",f="notify_nats",g="notify_elasticsearch",m="notify_webhook",h="notify_nsq",y=function(e){return e.map((function(e){return{service_name:"".concat(e.service,":").concat(e.account_id),name:e.service,account_id:e.account_id,status:e.status}}))},b=(0,a.Z)((function e(){(0,i.Z)(this,e)}));b.DB="database",b.Queue="queue",b.Func="functions";var S=[{actionTrigger:l,targetTitle:"PostgreSQL",logo:"/postgres-logo.svg",category:b.DB},{actionTrigger:c,targetTitle:"Kafka",logo:"/kafka-logo.svg",category:b.Queue},{actionTrigger:u,targetTitle:"AMQP",logo:"/amqp-logo.svg",category:b.Queue},{actionTrigger:p,targetTitle:"MQTT",logo:"/mqtt-logo.svg",category:b.Queue},{actionTrigger:d,targetTitle:"Redis",logo:"/redis-logo.svg",category:b.Queue},{actionTrigger:f,targetTitle:"NATS",logo:"/nats-logo.svg",category:b.Queue},{actionTrigger:s,targetTitle:"Mysql",logo:"/mysql-logo.svg",category:b.DB},{actionTrigger:g,targetTitle:"Elastic Search",logo:"/elasticsearch-logo.svg",category:b.DB},{actionTrigger:m,targetTitle:"Webhook",logo:"/webhooks-logo.svg",category:b.Func},{actionTrigger:h,targetTitle:"NSQ",logo:"/nsq-logo.svg",category:b.Queue}],v=[{name:"queue_dir",label:"Queue Directory",required:!1,tooltip:"Staging directory for undelivered messages e.g. '/home/events'",type:"string",placeholder:"Enter Queue Directory"},{name:"queue_limit",label:"Queue Limit",required:!1,tooltip:"Maximum limit for undelivered messages, defaults to '10000'",type:"number",placeholder:"Enter Queue Limit"},{name:"comment",label:"Comment",required:!1,type:"comment",placeholder:"Enter custom notes if any"}],T=function(e){return e.filter((function(e){return""!==e.value}))},_=(n={},(0,r.Z)(n,c,[{name:"brokers",label:"Brokers",required:!0,tooltip:"Comma separated list of Kafka broker addresses",type:"string",placeholder:"Enter Brokers"},{name:"topic",label:"Topic",tooltip:"Kafka topic used for bucket notifications",type:"string",placeholder:"Enter Topic"},{name:"sasl_username",label:"SASL Username",tooltip:"Username for SASL/PLAIN or SASL/SCRAM authentication",type:"string",placeholder:"Enter SASL Username"},{name:"sasl_password",label:"SASL Password",tooltip:"Password for SASL/PLAIN or SASL/SCRAM authentication",type:"string",placeholder:"Enter SASL Password"},{name:"sasl_mechanism",label:"SASL Mechanism",tooltip:"SASL authentication mechanism, default 'PLAIN'",type:"string"},{name:"tls_client_auth",label:"TLS Client Auth",tooltip:"Client Auth determines the Kafka server's policy for TLS client authorization",type:"string",placeholder:"Enter TLS Client Auth"},{name:"sasl",label:"SASL",tooltip:"Set to 'on' to enable SASL authentication",type:"on|off"},{name:"tls",label:"TLS",tooltip:"Set to 'on' to enable TLS",type:"on|off"},{name:"tls_skip_verify",label:"TLS skip verify",tooltip:'Trust server TLS without verification, defaults to "on" (verify)',type:"on|off"},{name:"client_tls_cert",label:"client TLS cert",tooltip:"Path to client certificate for mTLS authorization",type:"path",placeholder:"Enter TLS Client Cert"},{name:"client_tls_key",label:"client TLS key",tooltip:"Path to client key for mTLS authorization",type:"path",placeholder:"Enter TLS Client Key"},{name:"version",label:"Version",tooltip:"Specify the version of the Kafka cluster e.g '2.2.0'",type:"string",placeholder:"Enter Kafka Version"}].concat(v)),(0,r.Z)(n,u,[{name:"url",required:!0,label:"URL",tooltip:"AMQP server endpoint e.g. `amqp://myuser:mypassword@localhost:5672`",type:"url"},{name:"exchange",label:"Exchange",tooltip:"Name of the AMQP exchange",type:"string",placeholder:"Enter Exchange"},{name:"exchange_type",label:"Exchange Type",tooltip:"AMQP exchange type",type:"string",placeholder:"Enter Exchange Type"},{name:"routing_key",label:"Routing Key",tooltip:"Routing key for publishing",type:"string",placeholder:"Enter Routing Key"},{name:"mandatory",label:"Mandatory",tooltip:"Quietly ignore undelivered messages when set to 'off', default is 'on'",type:"on|off"},{name:"durable",label:"Durable",tooltip:"Persist queue across broker restarts when set to 'on', default is 'off'",type:"on|off"},{name:"no_wait",label:"No Wait",tooltip:"Non-blocking message delivery when set to 'on', default is 'off'",type:"on|off"},{name:"internal",label:"Internal",tooltip:"Set to 'on' for exchange to be not used directly by publishers, but only when bound to other exchanges",type:"on|off"},{name:"auto_deleted",label:"Auto Deleted",tooltip:"Auto delete queue when set to 'on', when there are no consumers",type:"on|off"},{name:"delivery_mode",label:"Delivery Mode",tooltip:"Set to '1' for non-persistent or '2' for persistent queue",type:"number",placeholder:"Enter Delivery Mode"}].concat(v)),(0,r.Z)(n,d,[{name:"address",required:!0,label:"Address",tooltip:"Redis server's address e.g. `localhost:6379`",type:"address",placeholder:"Enter Address"},{name:"key",required:!0,label:"Key",tooltip:"Redis key to store/update events, key is auto-created",type:"string",placeholder:"Enter Key"},{name:"password",label:"Password",tooltip:"Redis server password",type:"string",placeholder:"Enter Password"}].concat(v)),(0,r.Z)(n,p,[{name:"broker",required:!0,label:"Broker",tooltip:"MQTT server endpoint e.g. `tcp://localhost:1883`",type:"uri",placeholder:"Enter Brokers"},{name:"topic",required:!0,label:"Topic",tooltip:"Name of the MQTT topic to publish",type:"string",placeholder:"Enter Topic"},{name:"username",label:"Username",tooltip:"MQTT username",type:"string",placeholder:"Enter Username"},{name:"password",label:"Password",tooltip:"MQTT password",type:"string",placeholder:"Enter Password"},{name:"qos",label:"QOS",tooltip:"Set the quality of service priority, defaults to '0'",type:"number",placeholder:"Enter QOS"},{name:"keep_alive_interval",label:"Keep Alive Interval",tooltip:"Keep-alive interval for MQTT connections in s,m,h,d",type:"duration",placeholder:"Enter Keep Alive Interval"},{name:"reconnect_interval",label:"Reconnect Interval",tooltip:"Reconnect interval for MQTT connections in s,m,h,d",type:"duration",placeholder:"Enter Reconnect Interval"}].concat(v)),(0,r.Z)(n,f,[{name:"address",required:!0,label:"Address",tooltip:"NATS server address e.g. '0.0.0.0:4222'",type:"address",placeholder:"Enter Address"},{name:"subject",required:!0,label:"Subject",tooltip:"NATS subscription subject",type:"string",placeholder:"Enter NATS Subject"},{name:"username",label:"Username",tooltip:"NATS username",type:"string",placeholder:"Enter NATS Username"},{name:"password",label:"Password",tooltip:"NATS password",type:"string",placeholder:"Enter NATS password"},{name:"token",label:"Token",tooltip:"NATS token",type:"string",placeholder:"Enter NATS token"},{name:"tls",label:"TLS",tooltip:"Set to 'on' to enable TLS",type:"on|off"},{name:"tls_skip_verify",label:"TLS Skip Verify",tooltip:'Trust server TLS without verification, defaults to "on" (verify)',type:"on|off"},{name:"ping_interval",label:"Ping Interval",tooltip:"Client ping commands interval in s,m,h,d. Disabled by default",type:"duration",placeholder:"Enter Ping Interval"},{name:"streaming",label:"Streaming",tooltip:"Set to 'on' to use streaming NATS server",type:"on|off"},{name:"streaming_async",label:"Streaming async",tooltip:"Set to 'on' to enable asynchronous publish",type:"on|off"},{name:"streaming_max_pub_acks_in_flight",label:"Streaming max publish ACKS in flight",tooltip:"Number of messages to publish without waiting for ACKs",type:"number",placeholder:"Enter Streaming in flight value"},{name:"streaming_cluster_id",label:"Streaming Cluster ID",tooltip:"Unique ID for NATS streaming cluster",type:"string",placeholder:"Enter Streaming Cluster ID"},{name:"cert_authority",label:"Cert Authority",tooltip:"Path to certificate chain of the target NATS server",type:"string",placeholder:"Enter Cert Authority"},{name:"client_cert",label:"Client Cert",tooltip:"Client cert for NATS mTLS auth",type:"string",placeholder:"Enter Client Cert"},{name:"client_key",label:"Client Key",tooltip:"Client cert key for NATS mTLS authorization",type:"string",placeholder:"Enter Client Key"}].concat(v)),(0,r.Z)(n,g,[{name:"url",required:!0,label:"URL",tooltip:"Elasticsearch server's address, with optional authentication info",type:"url",placeholder:"Enter URL"},{name:"index",required:!0,label:"Index",tooltip:"Elasticsearch index to store/update events, index is auto-created",type:"string",placeholder:"Enter Index"},{name:"format",required:!0,label:"Format",tooltip:"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'",type:"enum",placeholder:"Enter Format"}].concat(v)),(0,r.Z)(n,m,[{name:"endpoint",required:!0,label:"Endpoint",tooltip:"Webhook server endpoint e.g. http://localhost:8080/minio/events",type:"url",placeholder:"Enter Endpoint"},{name:"auth_token",label:"Auth Token",tooltip:"Opaque string or JWT authorization token",type:"string",placeholder:"Enter auth_token"}].concat(v)),(0,r.Z)(n,h,[{name:"nsqd_address",required:!0,label:"NSQD Address",tooltip:"NSQ server address e.g. '127.0.0.1:4150'",type:"address",placeholder:"Enter nsqd_address"},{name:"topic",required:!0,label:"Topic",tooltip:"NSQ topic",type:"string",placeholder:"Enter Topic"},{name:"tls",label:"TLS",tooltip:"Set to 'on' to enable TLS",type:"on|off"},{name:"tls_skip_verify",label:"TLS Skip Verify",tooltip:'Trust server TLS without verification, defaults to "on" (verify)',type:"on|off"}].concat(v)),n),k={webhook:"notify_webhook",amqp:"notify_amqp",kafka:"notify_kafka",mqtt:"notify_mqtt",nats:"notify_nats",nsq:"notify_nsq",mysql:"notify_mysql",postgresql:"notify_postgres",elasticsearch:"notify_elasticsearch",redis:"notify_redis"},x=function(e){return k[e]}}}]); -//# sourceMappingURL=808.1a63a909.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/7586.17376d83.chunk.js b/portal-ui/build/static/js/8305.b35690ca.chunk.js similarity index 77% rename from portal-ui/build/static/js/7586.17376d83.chunk.js rename to portal-ui/build/static/js/8305.b35690ca.chunk.js index 664aa55b3..490f9f23b 100644 --- a/portal-ui/build/static/js/7586.17376d83.chunk.js +++ b/portal-ui/build/static/js/8305.b35690ca.chunk.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[7586],{57314:function(e,r,t){var a=t(1413),n=t(72791),o=t(61889),i=t(30829),l=t(20068),s=t(27391),c=t(11135),u=t(25787),d=t(23814),m=t(29945),f=t(80184);r.Z=(0,u.Z)((function(e){return(0,c.Z)((0,a.Z)((0,a.Z)((0,a.Z)({},d.YI),d.Hr),{},{inputLabel:(0,a.Z)((0,a.Z)({},d.YI.inputLabel),{},{fontSize:14,margin:0,alignItems:"flex-start",paddingTop:"20px",flexWrap:"wrap",display:"flex"}),textBoxContainer:{flexGrow:1,position:"relative"},cssOutlinedInput:{borderColor:"#EAEAEA",padding:16},rootContainer:{"& .MuiOutlinedInput-inputMultiline":(0,a.Z)((0,a.Z)({},d.YI.inputLabel),{},{fontSize:13,minHeight:150}),"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:"#07193E",borderWidth:1},"& textarea":{color:"#07193E",fontSize:13,fontWeight:600,"&:placeholder":{color:"#858585",opacity:1,fontWeight:400}}}}))}))((function(e){var r=e.label,t=e.onChange,a=e.value,c=e.id,u=e.name,d=e.disabled,p=void 0!==d&&d,h=e.tooltip,v=void 0===h?"":h,x=e.index,Z=void 0===x?0:x,g=e.error,b=void 0===g?"":g,j=e.required,w=void 0!==j&&j,C=e.placeholder,S=void 0===C?"":C,k=e.classes,y={"data-index":Z};return(0,f.jsx)(n.Fragment,{children:(0,f.jsxs)(o.ZP,{item:!0,xs:12,className:"".concat(k.fieldContainer," ").concat(""!==b?k.errorInField:""),children:[""!==r&&(0,f.jsxs)(i.Z,{htmlFor:c,className:k.inputLabel,children:[(0,f.jsxs)("span",{children:[r,w?"*":""]}),""!==v&&(0,f.jsx)("div",{className:k.tooltipContainer,children:(0,f.jsx)(l.Z,{title:v,placement:"top-start",children:(0,f.jsx)("div",{className:k.tooltip,children:(0,f.jsx)(m.byK,{})})})})]}),(0,f.jsx)("div",{className:k.textBoxContainer,children:(0,f.jsx)(s.Z,{id:c,name:u,fullWidth:!0,value:a,disabled:p,onChange:t,multiline:!0,rows:5,inputProps:y,error:""!==b,helperText:b,placeholder:S,InputLabelProps:{shrink:!0},InputProps:{classes:{notchedOutline:k.cssOutlinedInput,root:k.rootContainer}},variant:"outlined"})})]})})}))},56247:function(e,r,t){t.r(r);var a=t(37762),n=t(29439),o=t(1413),i=t(72791),l=t(11135),s=t(25787),c=t(29945),u=t(23814),d=t(57314),m=t(80184);r.default=(0,s.Z)((function(e){return(0,l.Z)((0,o.Z)((0,o.Z)({},u.oO),u.DF))}))((function(e){var r=e.onChange,t=e.classes,o=(0,i.useState)(!1),l=(0,n.Z)(o,2),s=l[0],u=l[1],f=(0,i.useState)(""),p=(0,n.Z)(f,2),h=p[0],v=p[1],x=(0,i.useState)(""),Z=(0,n.Z)(x,2),g=Z[0],b=Z[1],j=(0,i.useState)(""),w=(0,n.Z)(j,2),C=w[0],S=w[1],k=(0,i.useState)(""),y=(0,n.Z)(k,2),F=y[0],N=y[1],z=(0,i.useState)(""),E=(0,n.Z)(z,2),q=E[0],R=E[1],W=(0,i.useState)(""),M=(0,n.Z)(W,2),L=M[0],I=M[1],O=(0,i.useState)(" "),A=(0,n.Z)(O,2),P=A[0],_=A[1],B=(0,i.useState)(""),D=(0,n.Z)(B,2),H=D[0],Q=D[1],T=(0,i.useState)("namespace"),V=(0,n.Z)(T,2),Y=V[0],G=V[1],K=(0,i.useState)(""),U=(0,n.Z)(K,2),J=U[0],X=U[1],$=(0,i.useState)(""),ee=(0,n.Z)($,2),re=ee[0],te=ee[1],ae=(0,i.useState)(""),ne=(0,n.Z)(ae,2),oe=ne[0],ie=ne[1],le=(0,i.useCallback)((function(){var e="";return""!==g&&(e="".concat(e," host=").concat(g)),""!==C&&(e="".concat(e," dbname=").concat(C)),""!==q&&(e="".concat(e," user=").concat(q)),""!==L&&(e="".concat(e," password=").concat(L)),""!==F&&(e="".concat(e," port=").concat(F))," "!==P&&(e="".concat(e," sslmode=").concat(P)),(e="".concat(e," ")).trim()}),[g,C,q,L,F,P]);return(0,i.useEffect)((function(){""!==h&&r([{key:"connection_string",value:h},{key:"table",value:H},{key:"format",value:Y},{key:"queue_dir",value:J},{key:"queue_limit",value:re},{key:"comment",value:oe}])}),[h,H,Y,J,re,oe,r]),(0,i.useEffect)((function(){var e=le();v(e)}),[q,C,L,F,P,g,v,le]),(0,i.useEffect)((function(){if(s){var e=le();v(e)}else{var r=function(e,r){var t,n=[],o=(0,a.Z)(r);try{for(o.s();!(t=o.n()).done;){var i=t.value,l=e.indexOf(i+"=");-1!==l&&n.push(l)}}catch(x){o.e(x)}finally{o.f()}n.sort((function(e,r){return e-r}));for(var s=new Map,c=new Array(n.length),u=0;u.\n\nimport React from \"react\";\nimport { Grid, InputLabel, TextField, Tooltip } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\ninterface CommentBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n inputLabel: {\n ...fieldBasic.inputLabel,\n fontSize: 14,\n margin: 0,\n alignItems: \"flex-start\",\n paddingTop: \"20px\",\n flexWrap: \"wrap\",\n display: \"flex\",\n },\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n cssOutlinedInput: {\n borderColor: \"#EAEAEA\",\n padding: 16,\n },\n rootContainer: {\n \"& .MuiOutlinedInput-inputMultiline\": {\n ...fieldBasic.inputLabel,\n fontSize: 13,\n minHeight: 150,\n },\n \"&.Mui-focused .MuiOutlinedInput-notchedOutline\": {\n borderColor: \"#07193E\",\n borderWidth: 1,\n },\n \"& textarea\": {\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n \"&:placeholder\": {\n color: \"#858585\",\n opacity: 1,\n fontWeight: 400,\n },\n },\n },\n });\n\nconst CommentBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n disabled = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n classes,\n}: CommentBoxProps) => {\n let inputProps: any = { \"data-index\": index };\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n\n
\n \n
\n \n
\n );\n};\n\nexport default withStyles(styles)(CommentBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useCallback, useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Box, Grid, InputBox, RadioGroup, ReadBox, Select, Switch } from \"mds\";\nimport { IElementValue } from \"../../Configurations/types\";\nimport {\n formFieldStyles,\n modalBasic,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport CommentBoxWrapper from \"../../Common/FormComponents/CommentBoxWrapper/CommentBoxWrapper\";\n\ninterface IConfPostgresProps {\n onChange: (newValue: IElementValue[]) => void;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalBasic,\n ...formFieldStyles,\n });\n\nconst ConfPostgres = ({ onChange, classes }: IConfPostgresProps) => {\n //Local States\n const [useConnectionString, setUseConnectionString] =\n useState(false);\n const [connectionString, setConnectionString] = useState(\"\");\n const [host, setHostname] = useState(\"\");\n const [dbName, setDbName] = useState(\"\");\n const [port, setPort] = useState(\"\");\n const [user, setUser] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [sslMode, setSslMode] = useState(\" \");\n\n const [table, setTable] = useState(\"\");\n const [format, setFormat] = useState(\"namespace\");\n const [queueDir, setQueueDir] = useState(\"\");\n const [queueLimit, setQueueLimit] = useState(\"\");\n const [comment, setComment] = useState(\"\");\n\n // connection_string* (string) Postgres server connection-string e.g. \"host=localhost port=5432 dbname=minio_events user=postgres password=password sslmode=disable\"\n\n // \"host=localhost\n // port=5432\n //dbname=minio_events\n //user=postgres\n //password=password\n //sslmode=disable\"\n\n // table* (string) DB table name to store/update events, table is auto-created\n // format* (namespace*|access) 'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\n // queue_dir (path) staging dir for undelivered messages e.g. '/home/events'\n // queue_limit (number) maximum limit for undelivered messages, defaults to '10000'\n // comment (sentence) optionally add a comment to this setting\n\n const KvSeparator = \"=\";\n const parseConnectionString = (\n input: string,\n keys: string[],\n ): Map => {\n let valueIndexes: number[] = [];\n\n for (const key of keys) {\n const i = input.indexOf(key + KvSeparator);\n if (i === -1) {\n continue;\n }\n valueIndexes.push(i);\n }\n valueIndexes.sort((n1, n2) => n1 - n2);\n\n let kvFields = new Map();\n let fields: string[] = new Array(valueIndexes.length);\n for (let i = 0; i < valueIndexes.length; i++) {\n const j = i + 1;\n if (j < valueIndexes.length) {\n fields[i] = input.slice(valueIndexes[i], valueIndexes[j]);\n } else {\n fields[i] = input.slice(valueIndexes[i]);\n }\n }\n\n for (let field of fields) {\n if (field === undefined) {\n continue;\n }\n const key = field.slice(0, field.indexOf(\"=\"));\n const value = field.slice(field.indexOf(\"=\") + 1).trim();\n kvFields.set(key, value);\n }\n return kvFields;\n };\n\n const configToString = useCallback((): string => {\n let strValue = \"\";\n if (host !== \"\") {\n strValue = `${strValue} host=${host}`;\n }\n if (dbName !== \"\") {\n strValue = `${strValue} dbname=${dbName}`;\n }\n if (user !== \"\") {\n strValue = `${strValue} user=${user}`;\n }\n if (password !== \"\") {\n strValue = `${strValue} password=${password}`;\n }\n if (port !== \"\") {\n strValue = `${strValue} port=${port}`;\n }\n if (sslMode !== \" \") {\n strValue = `${strValue} sslmode=${sslMode}`;\n }\n\n strValue = `${strValue} `;\n\n return strValue.trim();\n }, [host, dbName, user, password, port, sslMode]);\n\n useEffect(() => {\n if (connectionString !== \"\") {\n const formValues = [\n { key: \"connection_string\", value: connectionString },\n { key: \"table\", value: table },\n { key: \"format\", value: format },\n { key: \"queue_dir\", value: queueDir },\n { key: \"queue_limit\", value: queueLimit },\n { key: \"comment\", value: comment },\n ];\n\n onChange(formValues);\n }\n }, [\n connectionString,\n table,\n format,\n queueDir,\n queueLimit,\n comment,\n onChange,\n ]);\n\n useEffect(() => {\n const cs = configToString();\n setConnectionString(cs);\n }, [\n user,\n dbName,\n password,\n port,\n sslMode,\n host,\n setConnectionString,\n configToString,\n ]);\n\n useEffect(() => {\n if (useConnectionString) {\n // build connection_string\n const cs = configToString();\n setConnectionString(cs);\n\n return;\n }\n // parse connection_string\n const kv = parseConnectionString(connectionString, [\n \"host\",\n \"port\",\n \"dbname\",\n \"user\",\n \"password\",\n \"sslmode\",\n ]);\n setHostname(kv.get(\"host\") ? kv.get(\"host\") + \"\" : \"\");\n setPort(kv.get(\"port\") ? kv.get(\"port\") + \"\" : \"\");\n setDbName(kv.get(\"dbname\") ? kv.get(\"dbname\") + \"\" : \"\");\n setUser(kv.get(\"user\") ? kv.get(\"user\") + \"\" : \"\");\n setPassword(kv.get(\"password\") ? kv.get(\"password\") + \"\" : \"\");\n setSslMode(kv.get(\"sslmode\") ? kv.get(\"sslmode\") + \"\" : \" \");\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [useConnectionString]);\n\n return (\n \n \n {\n setUseConnectionString(e.target.checked);\n }}\n value={\"manualString\"}\n />\n \n {useConnectionString ? (\n \n \n ) => {\n setConnectionString(e.target.value);\n }}\n />\n \n \n ) : (\n \n \n \n \n ) => {\n setHostname(e.target.value);\n }}\n />\n \n \n ) => {\n setDbName(e.target.value);\n }}\n />\n \n \n ) => {\n setPort(e.target.value);\n }}\n />\n \n \n {\n if (value) {\n setSslMode(value + \"\");\n }\n }}\n options={[\n { label: \"Enter SSL Mode\", value: \" \" },\n { label: \"Require\", value: \"require\" },\n { label: \"Disable\", value: \"disable\" },\n { label: \"Verify CA\", value: \"verify-ca\" },\n { label: \"Verify Full\", value: \"verify-full\" },\n ]}\n />\n \n \n ) => {\n setUser(e.target.value);\n }}\n />\n \n \n ) => {\n setPassword(e.target.value);\n }}\n />\n \n \n \n \n \n {connectionString}\n \n \n \n )}\n \n ) => {\n setTable(e.target.value);\n }}\n />\n \n \n {\n setFormat(e.target.value);\n }}\n tooltip=\"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\"\n selectorOptions={[\n { label: \"Namespace\", value: \"namespace\" },\n { label: \"Access\", value: \"access\" },\n ]}\n />\n \n \n ) => {\n setQueueDir(e.target.value);\n }}\n />\n \n \n ) => {\n setQueueLimit(e.target.value);\n }}\n />\n \n \n ) => {\n setComment(e.target.value);\n }}\n />\n \n \n );\n};\n\nexport default withStyles(styles)(ConfPostgres);\n","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}"],"names":["withStyles","theme","createStyles","_objectSpread","fieldBasic","tooltipHelper","inputLabel","fontSize","margin","alignItems","paddingTop","flexWrap","display","textBoxContainer","flexGrow","position","cssOutlinedInput","borderColor","padding","rootContainer","minHeight","borderWidth","color","fontWeight","opacity","_ref","label","onChange","value","id","name","_ref$disabled","disabled","_ref$tooltip","tooltip","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","placeholder","classes","inputProps","_jsx","React","children","_jsxs","Grid","item","xs","className","concat","fieldContainer","errorInField","InputLabel","htmlFor","tooltipContainer","Tooltip","title","placement","HelpIcon","TextField","fullWidth","multiline","rows","helperText","InputLabelProps","shrink","InputProps","notchedOutline","root","variant","modalBasic","formFieldStyles","_useState","useState","_useState2","_slicedToArray","useConnectionString","setUseConnectionString","_useState3","_useState4","connectionString","setConnectionString","_useState5","_useState6","host","setHostname","_useState7","_useState8","dbName","setDbName","_useState9","_useState10","port","setPort","_useState11","_useState12","user","setUser","_useState13","_useState14","password","setPassword","_useState15","_useState16","sslMode","setSslMode","_useState17","_useState18","table","setTable","_useState19","_useState20","format","setFormat","_useState21","_useState22","queueDir","setQueueDir","_useState23","_useState24","queueLimit","setQueueLimit","_useState25","_useState26","comment","setComment","configToString","useCallback","strValue","trim","useEffect","key","cs","kv","input","keys","_step","valueIndexes","_iterator","_createForOfIteratorHelper","s","n","done","i","indexOf","push","err","e","f","sort","n1","n2","kvFields","Map","fields","Array","length","j","slice","_i","_fields","field","undefined","set","parseConnectionString","get","container","formFieldRow","Switch","checked","target","InputBox","Box","withBorders","useBackground","sx","overflowY","height","marginBottom","Select","options","type","ReadBox","multiLine","RadioGroup","currentValue","selectorOptions","CommentBoxWrapper","FormControlContext","formControlState","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","slot","overridesResolver","styles","ownerState","_extends","colorSecondary","filled","_ref2","_extends2","vars","palette","text","secondary","typography","body1","lineHeight","_defineProperty","formLabelClasses","focused","main","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","disableAnimation","animated","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","element","muiNames","muiName"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/841.e190e240.chunk.js b/portal-ui/build/static/js/841.e190e240.chunk.js new file mode 100644 index 000000000..97bcba511 --- /dev/null +++ b/portal-ui/build/static/js/841.e190e240.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[841],{81159:function(e,n,t){var i=t(4942),o=t(1413),a=t(72791),r=t(11135),l=t(25787),s=t(9955),c=t(30829),d=t(20068),u=t(20890),f=t(61889),p=t(23814),h=t(29945),m=t(28182),x=t(80184),g=(0,l.Z)((function(e){return{root:{width:50,height:24,padding:0,margin:0},switchBase:{padding:1,"&$checked":{transform:"translateX(24px)",color:e.palette.common.white,"& + $track":{backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,border:"none"}},"&$focusVisible $thumb":{color:"#4CCB92",border:"6px solid #fff"}},thumb:{width:22,height:22,backgroundColor:"#FAFAFA",border:"2px solid #FFFFFF",marginLeft:1},track:{borderRadius:12,backgroundColor:"#E2E2E2",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,transition:e.transitions.create(["background-color","border"])},checked:{},focusVisible:{},switchContainer:{display:"flex",alignItems:"center",justifyContent:"flex-end"}}}))(s.Z);n.Z=(0,l.Z)((function(e){return(0,r.Z)((0,o.Z)((0,o.Z)({indicatorLabelOn:{fontWeight:"bold",color:"#081C42 !important"},indicatorLabel:{fontSize:12,color:"#E2E2E2",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"},tooltip:{fontSize:16}},p.OR),p.YI))}))((function(e){var n=e.label,t=void 0===n?"":n,r=e.onChange,l=e.value,s=e.id,p=e.name,b=e.checked,v=void 0!==b&&b,y=e.disabled,j=void 0!==y&&y,Z=e.switchOnly,k=void 0!==Z&&Z,C=e.tooltip,w=void 0===C?"":C,_=e.description,S=void 0===_?"":_,E=e.classes,A=e.indicatorLabels,I=e.extraInputProps,F=void 0===I?{}:I,T=(0,x.jsxs)(a.Fragment,{children:[!k&&(0,x.jsx)("span",{className:(0,m.Z)(E.indicatorLabel,(0,i.Z)({},E.indicatorLabelOn,!v)),children:A&&A.length>1?A[1]:"OFF"}),(0,x.jsx)(g,{checked:v,onChange:r,color:"primary",name:p,inputProps:(0,o.Z)({"aria-label":"primary checkbox"},F),disabled:j,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:l,id:s}),!k&&(0,x.jsx)("span",{className:(0,m.Z)(E.indicatorLabel,(0,i.Z)({},E.indicatorLabelOn,v)),children:A?A[0]:"ON"})]});return k?T:(0,x.jsx)("div",{children:(0,x.jsxs)(f.ZP,{container:!0,alignItems:"center",children:[(0,x.jsx)(f.ZP,{item:!0,xs:12,sm:8,md:8,children:""!==t&&(0,x.jsxs)(c.Z,{htmlFor:s,className:E.inputLabel,children:[(0,x.jsx)("span",{children:t}),""!==w&&(0,x.jsx)("div",{className:E.tooltipContainer,children:(0,x.jsx)(d.Z,{title:w,placement:"top-start",children:(0,x.jsx)("div",{className:E.tooltip,children:(0,x.jsx)(h.byK,{})})})})]})}),(0,x.jsx)(f.ZP,{item:!0,xs:12,sm:""!==t?4:12,md:""!==t?4:12,textAlign:"right",justifyContent:"end",className:E.switchContainer,children:T}),""!==S&&(0,x.jsx)(f.ZP,{item:!0,xs:12,textAlign:"left",children:(0,x.jsx)(u.Z,{component:"p",className:E.fieldDescription,children:S})})]})})}))},14917:function(e,n,t){t(72791);var i=t(61889),o=t(72455),a=t(80184),r=(0,o.Z)((function(e){return{headerBarIcon:{marginRight:".7rem",color:e.palette.primary.main,"& .min-icon":{width:44,height:44},"@media (max-width: 600px)":{display:"none"}},headerBarSubheader:{color:"grey","@media (max-width: 900px)":{maxWidth:200}},stContainer:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:8,borderBottom:"1px solid #EAEAEA","@media (max-width: 600px)":{flexFlow:"column"}},titleColumn:{height:"auto",justifyContent:"center",display:"flex",flexFlow:"column",alignItems:"flex-start","& h1":{fontSize:19}},leftItems:{display:"flex",alignItems:"center","@media (max-width: 600px)":{flexFlow:"column",width:"100%"}},rightItems:{display:"flex",alignItems:"center","& button":{marginLeft:8},"@media (max-width: 600px)":{width:"100%"}}}}));n.Z=function(e){var n=e.icon,t=e.title,o=e.subTitle,l=e.actions,s=e.className,c=r();return(0,a.jsx)(i.ZP,{container:!0,children:(0,a.jsxs)(i.ZP,{item:!0,xs:12,className:"".concat(c.stContainer," ").concat(s||""),children:[(0,a.jsxs)("div",{className:c.leftItems,children:[n?(0,a.jsx)("div",{className:c.headerBarIcon,children:n}):null,(0,a.jsxs)("div",{className:c.titleColumn,children:[(0,a.jsx)("h1",{style:{margin:0},children:t}),(0,a.jsx)("span",{className:c.headerBarSubheader,children:o})]})]}),(0,a.jsx)("div",{className:c.rightItems,children:l})]})})}},70841:function(e,n,t){t.r(n),t.d(n,{default:function(){return de}});var i=t(74165),o=t(15861),a=t(29439),r=t(1413),l=t(72791),s=t(11135),c=t(25787),d=t(61889),u=t(58493),f=t(23814),p=t(29945),h=t(57689),m=t(11087),x=t(64554),g=t(43896),b=t(83449),v=t(47283),y=t(82851),j=t(13967),Z=t(95193),k=t(80184),C={minHeight:60},w=(0,c.Z)((function(e){return(0,s.Z)({tabsContainer:{display:"flex",height:"100%",width:"100%"},tabsHeaderContainer:{width:"300px",background:"#F8F8F8",borderRight:"1px solid #EAEAEA","& .MuiTabs-root":{"& .MuiTabs-indicator":{display:"none"},"& .MuiTab-root":{display:"flex",flexFlow:"row",alignItems:"center",justifyContent:"flex-start",borderBottom:"1px solid #EAEAEA","& .MuiSvgIcon-root":{marginRight:8,marginBottom:0},"&.Mui-selected":{background:"#E5E5E5",fontWeight:600}},"&. MuiTabs-scroller":{display:"none"}}},tabContentContainer:{width:"100%","& .MuiTabPanel-root":{height:"100%"}},tabPanel:{height:"100%"},"@media (max-width: 900px)":{tabsContainer:{flexFlow:"column",flexDirection:"column"},tabsHeaderContainer:{width:"100%",borderBottom:" 1px solid #EAEAEA","& .MuiTabs-root .MuiTabs-scroller .MuiButtonBase-root":{borderBottom:" 0px"}}}})}))((function(e){var n=e.children,t=e.classes,i=e.selectedTab,o=void 0===i?"0":i,s=e.routes,c=e.isRouteTabs,d=(0,j.Z)(),u=(0,h.TH)().pathname,f=void 0===u?"":u,p=(0,Z.Z)(d.breakpoints.down("md")),m=(0,l.useState)(o),w=(0,a.Z)(m,2),_=w[0],S=w[1],E=[],A=[];if((0,l.useEffect)((function(){if(c){var e=n.find((function(e){return e.tabConfig.to===f}));e&&S(e.tabConfig.value)}}),[c,n,f]),!n)return null;n.forEach((function(e){E.push(e.tabConfig),A.push(e.content)}));return(0,k.jsx)(b.ZP,{value:"".concat(_),children:(0,k.jsxs)(x.Z,{className:t.tabsContainer,children:[(0,k.jsx)(x.Z,{className:t.tabsHeaderContainer,children:(0,k.jsx)(v.Z,{onChange:function(e,n){S(n)},orientation:p?"horizontal":"vertical",variant:p?"scrollable":"standard",scrollButtons:"auto",className:t.tabList,children:E.map((function(e,n){return e?(0,k.jsx)(g.Z,(0,r.Z)((0,r.Z)({className:t.tabHeader,value:"".concat(n),style:C},e),{},{disableRipple:!0,disableTouchRipple:!0,focusRipple:!0}),"v-tab-".concat(n)):null}))})}),(0,k.jsxs)(x.Z,{className:t.tabContentContainer,children:[c?null:A.map((function(e,n){return(0,k.jsx)(y.Z,{classes:(0,r.Z)({},t.tabPanel),value:"".concat(n),children:e||null},"v-tab-p-".concat(n))})),c?(0,k.jsx)("div",{className:t.tabPanel,children:s}):null]})]})})})),_=t(14917),S=t(26181),E=t.n(S),A=t(10091),I=t(90767),F=t(87995),T=t(81551),N=t(93433),L=t(21435),R=t(56028),q=t(244),D=t(13901),M=t(36909),P=t(40986),B=t(31776),O=t(82342),W=function(e){var n=e.open,t=e.type,i=e.onCloseEndpoint,o=(0,l.useState)(""),s=(0,a.Z)(o,2),c=s[0],d=s[1],u=(0,l.useState)(""),h=(0,a.Z)(u,2),m=h[0],x=h[1],g=(0,l.useState)(""),b=(0,a.Z)(g,2),v=b[0],y=b[1],j=(0,l.useState)(!1),Z=(0,a.Z)(j,2),C=Z[0],w=Z[1],_=(0,l.useState)(["name","endpoint"]),S=(0,a.Z)(_,2),E=S[0],A=S[1],I=(0,l.useState)(["name","endpoint","auth-token"]),W=(0,a.Z)(I,2),z=W[0],K=W[1],H=(0,T.TL)(),V=function(e){K(z.filter((function(n){return n!==e})))},$=function(e,n){E.includes(e)&&n?A(E.filter((function(n){return n!==e}))):n||E.includes(e)||A([].concat((0,N.Z)(E),[e]))},U="Add new Webhook",Y=(0,k.jsx)(q.Z,{});switch(t){case"logger_webhook":U="New Logger Webhook",Y=(0,k.jsx)(D.Z,{});break;case"audit_webhook":U="New Audit Webhook",Y=(0,k.jsx)(M.Z,{})}return(0,k.jsx)(l.Fragment,{children:(0,k.jsxs)(R.Z,{modalOpen:n,title:U,onClose:i,titleIcon:Y,children:[(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,k.jsx)(L.Z,{id:"name",name:"name",onChange:function(e){V("name"),d(e.target.value),$("name",e.target.validity.valid)},error:E.includes("name")&&!z.includes("name")?"Invalid Name":"",label:"Name",value:c,pattern:"^(?=.*[a-zA-Z0-9]).{1,}$",required:!0})}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,k.jsx)(L.Z,{id:"endpoint",name:"endpoint",onChange:function(e){V("endpoint"),x(e.target.value),$("endpoint",e.target.validity.valid)},error:E.includes("endpoint")&&!z.includes("endpoint")?"Invalid Endpoint set":"",label:"Endpoint",value:m,pattern:"^(https?):\\/\\/([a-zA-Z0-9\\-.]+)(:[0-9]+)?(\\/[a-zA-Z0-9\\-.\\/]*)?$",required:!0})}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,k.jsx)(L.Z,{id:"auth-token",name:"auth-token",onChange:function(e){V("auth-token"),y(e.target.value)},label:"Auth Token",value:v})}),C&&(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:{marginBottom:10},children:(0,k.jsx)(P.Z,{})}),(0,k.jsxs)(p.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end"},children:[(0,k.jsx)(p.zxk,{id:"reset",type:"button",variant:"regular",disabled:C,onClick:i,label:"Cancel",sx:{marginRight:10}}),(0,k.jsx)(p.zxk,{id:"save-lifecycle",type:"submit",variant:"callAction",color:"primary",disabled:C||0!==E.length,label:"Save",onClick:function(){if(!C&&0===E.length)if(""!==c.trim())if(""!==m.trim()){w(!0);var e={key_values:[{key:"endpoint",value:m},{key:"auth_token",value:v}],arn_resource_id:c};B.h.configs.setConfig(t,e).then((function(e){w(!1),H((0,F.cN)(e.data.restart||!1)),e.data.restart||H((0,F.y1)("Configuration saved successfully")),i(),H((0,F.Ie)(!0))})).catch((function(e){w(!1),H((0,F.Ih)((0,O.g)(e.error)))}))}else A([].concat((0,N.Z)(E),["endpoint"]));else A([].concat((0,N.Z)(E),["name"]))}})]})]})})},z=t(51691),K=t(23508),H=function(e){var n=e.modalOpen,t=e.onClose,i=e.selectedARN,o=(e.type,(0,l.useState)(!1)),r=(0,a.Z)(o,2),s=r[0],c=r[1],d=(0,T.TL)();(0,l.useEffect)((function(){s&&B.h.configs.resetConfig(i).then((function(){c(!1),d((0,F.cN)(!0)),d((0,F.Ie)(!0)),t()})).catch((function(e){c(!1),d((0,F.Ih)((0,O.g)(e.error)))}))}),[s,d,t,i]);var u=!i.includes(":"),f="Are you sure you want to delete the Configured Endpoint";return u&&(f="Are you sure you want to reset the Default"),(0,k.jsx)(K.Z,{title:u?"Reset Default Webhook":"Delete Webhook",confirmText:u?"Reset":"Delete",isOpen:n,isLoading:s,onConfirm:function(){c(!0)},titleIcon:(0,k.jsx)(p.NvT,{}),onClose:t,confirmationContent:(0,k.jsxs)(z.Z,{children:["".concat(f," "),(0,k.jsx)("strong",{children:i}),"?"]})})},V=t(81159),$=t(64163),U=function(e){var n,t,i,o=e.open,s=e.type,c=e.endpointInfo,d=e.onCloseEndpoint,h=(0,l.useState)(""),m=(0,a.Z)(h,2),x=m[0],g=m[1],b=(0,l.useState)(""),v=(0,a.Z)(b,2),y=v[0],j=v[1],Z=(0,l.useState)(""),C=(0,a.Z)(Z,2),w=C[0],_=C[1],S=(0,l.useState)("on"),E=(0,a.Z)(S,2),A=E[0],I=E[1],W=(0,l.useState)(!1),z=(0,a.Z)(W,2),K=z[0],H=z[1],U=(0,l.useState)([]),Y=(0,a.Z)(U,2),G=Y[0],X=Y[1],J=(0,T.TL)();(0,l.useEffect)((function(){if(c){var e=c.key_values.find((function(e){return"endpoint"===e.key})),n=c.key_values.find((function(e){return"auth_token"===e.key})),t=c.key_values.find((function(e){return"enable"===e.key})),i=[];if(e){var o=e.value;""===o?i.push("endpoint"):j(o)}if(n){var a=n.value;""===a?i.push("auth-token"):_(a)}t&&"off"===t.value&&I(t.value),g(c.name||""),X(i)}}),[c]);var Q=!x.includes(":"),ee=c.key_values.filter((function(e){return!!e.env_override})),ne=(0,u.F_)(ee),te="Edit Webhook",ie=(0,k.jsx)(q.Z,{});switch(s){case"logger_webhook":te="Edit ".concat(Q?" the Default ":"","Logger Webhook"),ie=(0,k.jsx)(D.Z,{});break;case"audit_webhook":te="Edit ".concat(Q?" the Default ":"","Audit Webhook"),ie=(0,k.jsx)(M.Z,{})}return ee.length>0&&(te="View env variable Webhook"),(0,k.jsx)(l.Fragment,{children:(0,k.jsx)(R.Z,{modalOpen:o,title:"".concat(te).concat(Q?"":" - ".concat(x)),onClose:d,titleIcon:ie,children:ee.length>0?(0,k.jsxs)(l.Fragment,{children:[(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,k.jsx)($.Z,{label:"Enabled",content:(null===(n=ne.enable)||void 0===n?void 0:n.value)||"-",actionButton:(0,k.jsx)(p.rjZ,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,k.jsx)(p.ua7,{tooltip:ne.enable?"This value is set from the ".concat(ne.enable.overrideEnv," environment variable"):"",placement:"left",children:(0,k.jsx)(p.zD0,{style:{width:20}})})})})}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,k.jsx)($.Z,{label:"Endpoint",content:(null===(t=ne.endpoint)||void 0===t?void 0:t.value)||"-",actionButton:(0,k.jsx)(p.rjZ,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,k.jsx)(p.ua7,{tooltip:ne.enable?"This value is set from the ".concat(ne.endpoint.overrideEnv," environment variable"):"",placement:"left",children:(0,k.jsx)(p.zD0,{style:{width:20}})})})})}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,k.jsx)($.Z,{label:"Auth Token",content:(null===(i=ne.auth_token)||void 0===i?void 0:i.value)||"-",actionButton:(0,k.jsx)(p.rjZ,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,k.jsx)(p.ua7,{tooltip:ne.enable?"This value is set from the ".concat(ne.auth_token.overrideEnv," environment variable"):"",placement:"left",children:(0,k.jsx)(p.zD0,{style:{width:20}})})})})})]}):(0,k.jsxs)(l.Fragment,{children:[(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,k.jsx)(V.Z,{onChange:function(e){var n=e.target.checked?"on":"off";I(n)},id:"endpoint_enabled",name:"endpoint_enabled",label:"Enabled",value:"switch_on",checked:"on"===A})}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,k.jsx)(L.Z,{id:"endpoint",name:"endpoint",onChange:function(e){j(e.target.value),function(e,n){G.includes(e)&&n?X(G.filter((function(n){return n!==e}))):n||G.includes(e)||X([].concat((0,N.Z)(G),[e]))}("endpoint",e.target.validity.valid)},error:G.includes("endpoint")?"Invalid Endpoint set":"",label:"Endpoint",value:y,pattern:"^(https?):\\/\\/([a-zA-Z0-9\\-.]+)(:[0-9]+)?(\\/[a-zA-Z0-9\\-.\\/]*)?$",required:!0})}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:(0,r.Z)({},f.DF.formFieldRow),children:(0,k.jsx)(L.Z,{id:"auth-token",name:"auth-token",onChange:function(e){_(e.target.value)},label:"Auth Token",value:w})}),K&&(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:{marginBottom:10},children:(0,k.jsx)(P.Z,{})}),(0,k.jsxs)(p.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end"},children:[(0,k.jsx)(p.zxk,{id:"reset",type:"button",variant:"regular",disabled:K,onClick:d,label:"Cancel",sx:{marginRight:10}}),(0,k.jsx)(p.zxk,{id:"save-lifecycle",type:"submit",variant:"callAction",color:"primary",disabled:K||0!==G.length,label:"Update",onClick:function(){if(!K&&0===G.length)if(y&&""!==y.trim()){H(!0);var e={key_values:[{key:"endpoint",value:y},{key:"auth_token",value:w},{key:"enable",value:A}]};B.h.configs.setConfig(x,e).then((function(e){H(!1),J((0,F.cN)(e.data.restart||!1)),e.data.restart||J((0,F.y1)("Configuration saved successfully")),d(),J((0,F.Ie)(!0))})).catch((function(e){H(!1),J((0,F.Ih)((0,O.g)(e.error)))}))}else X([].concat((0,N.Z)(G),["endpoint"]))}})]})]})})})},Y=function(e){e.setResetConfigurationOpen;var n=e.WebhookSettingslist,t=e.type,i=(0,l.useState)(!1),o=(0,a.Z)(i,2),r=o[0],s=o[1],c=(0,l.useState)(!1),d=(0,a.Z)(c,2),u=d[0],f=d[1],h=(0,l.useState)(!1),m=(0,a.Z)(h,2),x=m[0],g=m[1],b=(0,l.useState)(""),v=(0,a.Z)(b,2),y=v[0],j=v[1],Z=(0,l.useState)(null),C=(0,a.Z)(Z,2),w=C[0],_=C[1],S=[{type:"view",onClick:function(e){e.name&&(g(!0),_(e))}},{type:"delete",onClick:function(e){e.name&&(f(!0),j(e.name))},disableButtonFunction:function(e){var t=n.find((function(n){return n.name===e}));if(t){var i,o=null===(i=t.key_values)||void 0===i?void 0:i.filter((function(e){return!!e.env_override}));return!!(o&&o.length>0)}return!1}}];return(0,k.jsxs)(p.rjZ,{container:!0,children:[r&&(0,k.jsx)(W,{open:r,type:t,onCloseEndpoint:function(){s(!1)}}),u&&(0,k.jsx)(H,{modalOpen:u,onClose:function(){f(!1),j("")},selectedARN:y,type:t}),x&&w&&(0,k.jsx)(U,{open:x,type:t,endpointInfo:w,onCloseEndpoint:function(){g(!1),_(null)}}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end"},children:(0,k.jsx)(p.zxk,{id:"newWebhook",variant:"callAction",onClick:function(){s(!0)},children:"New Endpoint"})}),(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:{padding:"0 10px 10px"},children:(0,k.jsxs)(l.Fragment,{children:[(0,k.jsx)("h3",{children:"Currently Configured Endpoints"}),(0,k.jsx)(p.wQF,{columns:[{label:"Status",elementKey:"key_values",renderFunction:function(e){var n=e.find((function(e){return"enable"===e.key}));if(null!==n&&void 0!==n&&n.env_override){var t=null!==n&&void 0!==n&&n.env_override.value&&"on"!==(null===n||void 0===n?void 0:n.env_override.value)&&null!==n&&void 0!==n&&n.env_override.value?"Disabled":"Enabled";return(0,k.jsxs)(p.rjZ,{container:!0,sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyItems:"start",fontSize:"8px"},children:[(0,k.jsx)(p.zD0,{style:{fill:"#052F51",width:"14px"}}),t?"Enabled":"Disabled"]})}return n&&"on"!==n.value&&n.value?(0,k.jsxs)(p.rjZ,{container:!0,sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyItems:"start",fontSize:"8px"},children:[(0,k.jsx)(p.qwj,{style:{fill:"#C83B51",width:14,height:14}}),"Disabled"]}):(0,k.jsxs)(p.rjZ,{container:!0,sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyItems:"start",fontSize:"8px"},children:[(0,k.jsx)(p.Yp9,{style:{fill:"#4CCB92",width:14,height:14}}),"Enabled"]})},width:50},{label:"Name",elementKey:"name"},{label:"Endpoint",elementKey:"key_values",renderFunction:function(e){var n=e.find((function(e){return"endpoint"===e.key}));return n?n.env_override?n.env_override.value:n.value:""}}],itemActions:S,idField:"name",isLoading:!1,records:n,entityName:"endpoints",customPaperHeight:"calc(100vh - 750px)"})]})})]})},G=t(78687),X=(0,c.Z)((function(e){return(0,s.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},f.YI),f.Je),{},{settingsFormContainer:{display:"grid",gridTemplateColumns:"1fr",gridGap:"10px"}}))}))((function(e){var n=e.selectedConfiguration,t=e.classes,i=e.className,o=void 0===i?"":i,r=(0,T.TL)(),s=(0,h.s0)(),c=(0,h.TH)().pathname,f=void 0===c?"":c,m=f.substring(f.lastIndexOf("/")+1);m="settings"===m?"region":m;var g=(0,l.useState)([]),b=(0,a.Z)(g,2),v=b[0],y=b[1],j=(0,l.useState)(!1),Z=(0,a.Z)(j,2),C=Z[0],w=Z[1],_=(0,l.useState)([]),S=(0,a.Z)(_,2),N=S[0],L=S[1],R=(0,l.useState)([]),q=(0,a.Z)(R,2),D=q[0],M=q[1],P=(0,l.useState)(!1),W=(0,a.Z)(P,2),z=W[0],K=W[1],H=(0,l.useState)({}),V=(0,a.Z)(H,2),$=V[0],U=V[1],X=(0,G.v9)((function(e){return e.system.loadingConfigurations}));(0,l.useEffect)((function(){r((0,F.Ie)(!0))}),[m,r]),(0,l.useEffect)((function(){if(X){var e=E()(n,"configuration_id",!1);if(e)return void B.h.configs.configInfo(e).then((function(n){M(n.data);var t=E()(n.data[0],"key_values",[]),i=u.DP[e].map((function(e){var n=t.find((function(n){return n.key===e.name})),i=(null===n||void 0===n?void 0:n.value)||"";return{key:e.name,value:e.customValueProcess?e.customValueProcess(i):i}}));L(i),U((0,u.F_)(i)),r((0,F.Ie)(!1))})).catch((function(e){r((0,F.Ie)(!1)),r((0,F.Ih)((0,O.g)(e.error)))}));r((0,F.Ie)(!1))}}),[X,n,r]),(0,l.useEffect)((function(){if(C){var e={key_values:(0,u.DD)(v)};B.h.configs.setConfig(n.configuration_id,e).then((function(e){w(!1),r((0,F.cN)(e.data.restart||!1)),r((0,F.Ie)(!0)),e.data.restart||r((0,F.y1)("Configuration saved successfully"))})).catch((function(e){w(!1),r((0,F.Ih)((0,O.g)(e.error)))}))}}),[C,r,n,v,s]);var J=(0,l.useCallback)((function(e){y(e)}),[y]),Q=function(){K(!0)};return(0,k.jsx)(l.Fragment,{children:(0,k.jsxs)("div",{onMouseMove:function(){r((0,F.Sc)("settings_".concat(n.configuration_label)))},children:[z&&(0,k.jsx)(I.Z,{configurationName:n.configuration_id,closeResetModalAndRefresh:function(e){K(!1),r((0,F.cN)(e)),e&&r((0,F.Ie)(!0))},resetOpen:z}),X?(0,k.jsx)(d.ZP,{item:!0,xs:12,sx:{textAlign:"center",paddingTop:"15px"},children:(0,k.jsx)(p.aNw,{})}):(0,k.jsx)(x.Z,{sx:{padding:"15px",height:"100%"},children:"logger_webhook"===n.configuration_id||"audit_webhook"===n.configuration_id?(0,k.jsx)(Y,{WebhookSettingslist:D,setResetConfigurationOpen:Q,type:n.configuration_id}):(0,k.jsx)(l.Fragment,{children:(0,k.jsxs)("form",{noValidate:!0,onSubmit:function(e){e.preventDefault(),w(!0)},className:o,style:{height:"100%",display:"flex",flexFlow:"column"},children:[(0,k.jsx)(d.ZP,{item:!0,xs:12,className:t.settingsFormContainer,children:(0,k.jsx)(A.default,{fields:u.DP[n.configuration_id],onChange:J,defaultVals:N,overrideEnv:$})}),(0,k.jsxs)(d.ZP,{item:!0,xs:12,sx:{paddingTop:"15px ",textAlign:"right",maxHeight:"60px",display:"flex",alignItems:"center",justifyContent:"flex-end"},children:[(0,k.jsx)(p.zxk,{id:"restore-defaults",variant:"secondary",onClick:Q,label:"Restore Defaults"}),"\xa0 \xa0",(0,k.jsx)(p.zxk,{id:"save",type:"submit",variant:"callAction",disabled:C,label:"Save"})]})]})})})]})})})),J=function(){var e=(0,h.TH)().pathname,n=void 0===e?"":e,t=n.substring(n.lastIndexOf("/")+1),i=u.bx.find((function(e){return e.configuration_id===t})),o="".concat(t);return(0,k.jsx)(p.rjZ,{item:!0,xs:12,sx:{height:"100%","& .identity_ldap, .api":{"& label":{minWidth:220,marginRight:0}}},children:i&&(0,k.jsx)(X,{className:"".concat(o),selectedConfiguration:i})})},Q=t(56087),ee=t(47974),ne=t(9505),te=t(45248),ie=t(99779),oe=t(27454),ae=function(){var e=(0,G.I0)(),n=(0,ne.Z)((function(e){(0,te.zZ)(new Blob([window.atob(e.value)]),"minio-server-config-".concat(ie.ou.now().toFormat("LL-dd-yyyy-HH-mm-ss"),".conf"))}),(function(n){e((0,F.Ih)(n))})),t=(0,a.Z)(n,2),i=t[0],o=t[1];return(0,k.jsx)(oe.Z,{tooltip:"Warning! The resulting file will contain server configuration information in plain text",children:(0,k.jsx)(p.zxk,{id:"export-config",onClick:function(){o("GET","api/v1/configs/export")},icon:(0,k.jsx)(p.rG2,{}),label:"Export",variant:"regular",disabled:i})})},re=function(){var e=(0,h.s0)(),n=(0,G.I0)(),t=(0,G.v9)((function(e){return e.system.serverNeedsRestart})),i=(0,l.useState)(void 0),o=(0,a.Z)(i,2),r=o[0],s=o[1],c=(0,l.useRef)(null),d=(0,ne.Z)((function(e){n((0,F.cN)(!0)),s(!0)}),(function(e){n((0,F.Ih)(e))})),u=(0,a.Z)(d,2),f=u[0],m=u[1];(0,l.useEffect)((function(){!t&&r&&e(0)}),[t,r,e]);return(0,k.jsxs)(l.Fragment,{children:[(0,k.jsx)("input",{type:"file",onChange:function(e){if(null!==e&&void 0!==e&&null!==e.target.files&&void 0!==e.target.files){e.preventDefault();var n=(0,a.Z)(e.target.files,1)[0],t=new FormData,i=new Blob([n],{type:n.type});t.append("file",i,n.name),m("POST","api/v1/configs/import",t),e.target.value=""}},style:{display:"none"},ref:c}),(0,k.jsx)(oe.Z,{tooltip:"The file must be valid and should have valid config values",children:(0,k.jsx)(p.zxk,{id:"import-config",onClick:function(){c&&c.current&&c.current.click()},icon:(0,k.jsx)(p._8t,{}),label:"Import",variant:"regular",disabled:f})})]})},le=t(99670),se=["region"],ce=["cache"],de=(0,c.Z)((function(e){return(0,s.Z)((0,r.Z)((0,r.Z)((0,r.Z)({settingsOptionsContainer:{display:"flex",flexDirection:"row",justifyContent:"flex-start",flexWrap:"wrap",border:"#E5E5E5 1px solid",borderRadius:2,backgroundColor:"#fff"}},f.qg),f.OR),f.Bz))}))((function(e){var n=e.classes,t=(0,h.TH)().pathname,r=void 0===t?"":t,s=(0,T.TL)(),c=(0,l.useState)([]),f=(0,a.Z)(c,2),g=f[0],b=f[1],v=(0,l.useCallback)((0,o.Z)((0,i.Z)().mark((function e(){return(0,i.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:B.h.configs.listConfig().then((function(e){var n;if(e&&null!==e&&void 0!==e&&e.data&&null!==e&&void 0!==e&&null!==(n=e.data)&&void 0!==n&&n.configurations){var t,i=((null===e||void 0===e||null===(t=e.data)||void 0===t?void 0:t.configurations)||[]).reduce((function(e,n){var t=n.key,i=void 0===t?"":t;return ce.includes(i)||e.push(i),e}),[]);b(i)}})).catch((function(e){s((0,F.Ih)((0,O.g)(e)))}));case 1:case"end":return e.stop()}}),e)}))),[s]),y=r.substring(r.lastIndexOf("/")+1);y="settings"===y?"region":y,(0,l.useEffect)((function(){v(),s((0,F.Sc)("settings_Region"))}),[]);var j=u.bx.filter((function(e){var n=e.configuration_id;return se.includes(n)||g.includes(n)||!g.length}));return(0,k.jsxs)(l.Fragment,{children:[(0,k.jsx)(ee.Z,{label:"Settings",actions:(0,k.jsx)(le.Z,{})}),(0,k.jsxs)(p.Xgh,{children:[(0,k.jsx)(d.ZP,{item:!0,xs:12,children:(0,k.jsxs)("div",{id:"settings-container",className:n.settingsOptionsContainer,children:[(0,k.jsx)(_.Z,{icon:(0,k.jsx)(p.ewm,{}),title:"MinIO Configuration:",actions:(0,k.jsxs)(x.Z,{sx:{display:"flex",gap:2},children:[(0,k.jsx)(re,{}),(0,k.jsx)(ae,{})]})}),(0,k.jsx)(w,{selectedTab:y,isRouteTabs:!0,routes:(0,k.jsxs)(h.Z5,{children:[j.map((function(e){return(0,k.jsx)(h.AW,{path:"".concat(e.configuration_id),element:(0,k.jsx)(J,{})},"configItem-".concat(e.configuration_label))})),(0,k.jsx)(h.AW,{path:"/",element:(0,k.jsx)(h.Fg,{to:"".concat(Q.gA.SETTINGS,"/region")})})]}),children:j.map((function(e){var n,t=e.configuration_id;return{tabConfig:{label:e.configuration_label,value:t,icon:e.icon,component:m.rU,to:(n=t,"".concat(Q.gA.SETTINGS,"/").concat(n))}}}))})]})}),(0,k.jsx)(d.ZP,{item:!0,xs:12,sx:{paddingTop:"15px"},children:(0,k.jsx)(p.KfX,{title:"Learn more about Configurations",iconComponent:(0,k.jsx)(p.ewm,{}),help:(0,k.jsxs)(l.Fragment,{children:["MinIO supports a variety of configurations ranging from encryption, compression, region, notifications, etc.",(0,k.jsx)("br",{}),(0,k.jsx)("br",{}),"You can learn more at our"," ",(0,k.jsx)("a",{href:"https://min.io/docs/minio/linux/reference/minio-mc-admin/mc-admin-config.html?ref=con#id4",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})})]})]})}))},58493:function(e,n,t){t.d(n,{DD:function(){return b},DP:function(){return g},F_:function(){return y},_0:function(){return v},bx:function(){return x}});var i=t(4942),o=t(1413),a=t(93433),r=(t(72791),t(87569)),l=t(61809),s=t(31292),c=t(98095),d=t(67055),u=t(21141),f=t(36909),p=t(13901),h=t(29945),m=t(80184),x=[{icon:(0,m.jsx)(r.Z,{}),configuration_id:"region",configuration_label:"Region"},{icon:(0,m.jsx)(l.Z,{}),configuration_id:"compression",configuration_label:"Compression"},{icon:(0,m.jsx)(s.Z,{}),configuration_id:"api",configuration_label:"API"},{icon:(0,m.jsx)(c.Z,{}),configuration_id:"heal",configuration_label:"Heal"},{icon:(0,m.jsx)(d.Z,{}),configuration_id:"scanner",configuration_label:"Scanner"},{icon:(0,m.jsx)(u.Z,{}),configuration_id:"etcd",configuration_label:"Etcd"},{icon:(0,m.jsx)(p.Z,{}),configuration_id:"logger_webhook",configuration_label:"Logger Webhook"},{icon:(0,m.jsx)(f.Z,{}),configuration_id:"audit_webhook",configuration_label:"Audit Webhook"},{icon:(0,m.jsx)(h.I$E,{className:"MuiSvgIcon-root MuiSvgIcon-fontSizeMedium MuiTab-iconWrapper css-i4bv87-MuiSvgIcon-root",style:{width:24,height:24}}),configuration_id:"audit_kafka",configuration_label:"Audit Kafka"}],g={region:[{name:"name",required:!0,label:"Server Location",tooltip:'Name of the location of the server e.g. "us-west-rack2"',type:"string",placeholder:"e.g. us-west-rack-2"},{name:"comment",required:!1,label:"Comment",tooltip:"You can add a comment to this setting",type:"comment",placeholder:"Enter custom notes if any"}],compression:[{name:"extensions",required:!1,label:"Extensions",tooltip:'Extensions to compress e.g. ".txt", ".log" or ".csv" - you can write one per field',type:"csv",placeholder:"Enter an Extension",withBorder:!0},{name:"mime_types",required:!1,label:"Mime Types",tooltip:'Mime types e.g. "text/*", "application/json" or "application/xml" - you can write one per field',type:"csv",placeholder:"Enter a Mime Type",withBorder:!0}],api:[{name:"requests_max",required:!1,label:"Requests Max",tooltip:"Maximum number of concurrent requests, e.g. '1600'",type:"number",placeholder:"Enter Requests Max"},{name:"cors_allow_origin",required:!1,label:"Cors Allow Origin",tooltip:"List of origins allowed for CORS requests",type:"csv",placeholder:"Enter allowed origin e.g. https://example.com"},{name:"replication_workers",required:!1,label:"Replication Workers",tooltip:"Number of replication workers, defaults to 100",type:"number",placeholder:"Enter Replication Workers"},{name:"replication_failed_workers",required:!1,label:"Replication Failed Workers",tooltip:"Number of replication workers for recently failed replicas, defaults to 4",type:"number",placeholder:"Enter Replication Failed Workers"}],heal:[{name:"bitrotscan",required:!1,label:"Bitrot Scan",tooltip:"Perform bitrot scan on disks when checking objects during scanner",type:"on|off"},{name:"max_sleep",required:!1,label:"Max Sleep",tooltip:"Maximum sleep duration between objects to slow down heal operation, e.g. 2s",type:"duration",placeholder:"Enter Max Sleep Duration"},{name:"max_io",required:!1,label:"Max IO",tooltip:"Maximum IO requests allowed between objects to slow down heal operation, e.g. 3",type:"number",placeholder:"Enter Max IO"}],scanner:[{name:"delay",required:!1,label:"Delay Multiplier",tooltip:"Scanner delay multiplier, defaults to '10.0'",type:"number",placeholder:"Enter Delay"},{name:"max_wait",required:!1,label:"Max Wait",tooltip:"Maximum wait time between operations, defaults to '15s'",type:"duration",placeholder:"Enter Max Wait"},{name:"cycle",required:!1,label:"Cycle",tooltip:"Time duration between scanner cycles, defaults to '1m'",type:"duration",placeholder:"Enter Cycle"}],etcd:[{name:"endpoints",required:!0,label:"Endpoints",tooltip:'List of etcd endpoints e.g. "http://localhost:2379" - you can write one per field',type:"csv",placeholder:"Enter Endpoint"},{name:"path_prefix",required:!1,label:"Path Prefix",tooltip:'Namespace prefix to isolate tenants e.g. "customer1/"',type:"string",placeholder:"Enter Path Prefix"},{name:"coredns_path",required:!1,label:"Coredns Path",tooltip:'Shared bucket DNS records, default is "/skydns"',type:"string",placeholder:"Enter Coredns Path"},{name:"client_cert",required:!1,label:"Client Cert",tooltip:"Client cert for mTLS authentication",type:"string",placeholder:"Enter Client Cert"},{name:"client_cert_key",required:!1,label:"Client Cert Key",tooltip:"Client cert key for mTLS authentication",type:"string",placeholder:"Enter Client Cert Key"},{name:"comment",required:!1,label:"Comment",tooltip:"You can add a comment to this setting",type:"comment",multiline:!0,placeholder:"Enter custom notes if any"}],logger_webhook:[{name:"endpoint",required:!0,label:"Endpoint",type:"string",placeholder:"Enter Endpoint"},{name:"auth_token",required:!0,label:"Auth Token",type:"string",placeholder:"Enter Auth Token"}],audit_webhook:[{name:"endpoint",required:!0,label:"Endpoint",type:"string",placeholder:"Enter Endpoint"},{name:"auth_token",required:!0,label:"Auth Token",type:"string",placeholder:"Enter Auth Token"}],audit_kafka:[{name:"enable",required:!1,label:"Enable",tooltip:"Enable audit_kafka target",type:"on|off",customValueProcess:function(e){return""===e||"on"===e?"on":"off"}},{name:"brokers",required:!0,label:"Brokers",type:"csv",placeholder:"Enter Kafka Broker"},{name:"topic",required:!1,label:"Topic",type:"string",placeholder:"Enter Kafka Topic",tooltip:"Kafka topic used for bucket notifications"},{name:"sasl",required:!1,label:"Use SASL",tooltip:"Enable SASL (Simple Authentication and Security Layer) authentication",type:"on|off"},{name:"sasl_username",required:!1,label:"SASL Username",type:"string",placeholder:"Enter SASL Username",tooltip:"Username for SASL/PLAIN or SASL/SCRAM authentication"},{name:"sasl_password",required:!1,label:"SASL Password",type:"password",placeholder:"Enter SASL Password",tooltip:"Password for SASL/PLAIN or SASL/SCRAM authentication"},{name:"sasl_mechanism",required:!1,label:"SASL Mechanism",type:"string",placeholder:"Enter SASL Mechanism",tooltip:"SASL authentication mechanism"},{name:"tls",required:!1,label:"Use TLS",tooltip:"Enable TLS (Transport Layer Security)",type:"on|off"},{name:"tls_skip_verify",required:!1,label:"Skip TLS Verification",tooltip:"Trust server TLS without verification",type:"on|off"},{name:"client_tls_cert",required:!1,label:"Client Cert",tooltip:"Client cert for mTLS authentication",type:"string",placeholder:"Enter Client Cert"},{name:"client_tls_key",required:!1,label:"Client Cert Key",tooltip:"Client cert key for mTLS authentication",type:"string",placeholder:"Enter Client Cert Key"},{name:"tls_client_auth",required:!1,label:"TLS Client Auth",tooltip:"ClientAuth determines the Kafka server's policy for TLS client authorization",type:"string"},{name:"version",required:!1,label:"Version",tooltip:"Specify the version of the Kafka cluster",type:"string"}]},b=function(e){return e.filter((function(e){return""!==e.value}))},v=function(e,n,t){var i=e.target,o=i.value,r=i.checked,l=(0,a.Z)(t);return r?l.push(o):l=l.filter((function(e){return e!==o})),n(l),l},y=function(e){var n={};return e.forEach((function(e){if(e.env_override){var t={value:e.env_override.value,overrideEnv:e.env_override.name};n=(0,o.Z)((0,o.Z)({},n),{},(0,i.Z)({},e.key,t))}})),n}},90767:function(e,n,t){var i=t(29439),o=t(72791),a=t(31776),r=t(82342),l=t(23508),s=t(40986),c=t(29945),d=t(87995),u=t(81551),f=t(80184);n.Z=function(e){var n=e.configurationName,t=e.closeResetModalAndRefresh,p=e.resetOpen,h=(0,u.TL)(),m=(0,o.useState)(!1),x=(0,i.Z)(m,2),g=x[0],b=x[1];(0,o.useEffect)((function(){g&&a.h.configs.resetConfig(n).then((function(){b(!1),t(!0)})).catch((function(e){b(!1),h((0,d.Ih)((0,r.g)(e.error)))}))}),[t,n,g,h]);return(0,f.jsx)(l.Z,{title:"Restore Defaults",confirmText:"Yes, Reset Configuration",isOpen:p,titleIcon:(0,f.jsx)(c.NvT,{}),isLoading:g,onConfirm:function(){b(!0)},onClose:function(){t(!1)},confirmationContent:(0,f.jsxs)(o.Fragment,{children:[g&&(0,f.jsx)(s.Z,{}),(0,f.jsxs)(o.Fragment,{children:["Are you sure you want to restore these configurations to default values?",(0,f.jsx)("br",{}),(0,f.jsx)("b",{style:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},children:"Please note that this may cause your system to not be accessible"})]})]})})}}}]); +//# sourceMappingURL=841.e190e240.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/841.e190e240.chunk.js.map b/portal-ui/build/static/js/841.e190e240.chunk.js.map new file mode 100644 index 000000000..10f6729bf --- /dev/null +++ b/portal-ui/build/static/js/841.e190e240.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/841.e190e240.chunk.js","mappings":"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","sources":["screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Common/ScreenTitle/ScreenTitle.tsx","screens/Console/Common/VerticalTabs/VerticalTabs.tsx","screens/Console/EventDestinations/WebhookSettings/AddEndpointModal.tsx","screens/Console/EventDestinations/WebhookSettings/DeleteWebhookEndpoint.tsx","screens/Console/EventDestinations/WebhookSettings/EditWebhookEndpoint.tsx","screens/Console/EventDestinations/WebhookSettings/WebhookSettings.tsx","screens/Console/EventDestinations/CustomForms/EditConfiguration.tsx","screens/Console/Configurations/ConfigurationPanels/ConfigurationForm.tsx","screens/Console/Configurations/ConfigurationPanels/ExportConfigButton.tsx","screens/Console/Configurations/ConfigurationPanels/ImportConfigButton.tsx","screens/Console/Configurations/ConfigurationPanels/ConfigurationOptions.tsx","screens/Console/Configurations/utils.tsx","screens/Console/EventDestinations/CustomForms/ResetConfigurationModal.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input/Input\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n checked: boolean;\n switchOnly?: boolean;\n indicatorLabels?: string[];\n extraInputProps?: StandardInputProps[\"inputProps\"];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n indicatorLabelOn: {\n fontWeight: \"bold\",\n color: \"#081C42 !important\",\n },\n indicatorLabel: {\n fontSize: 12,\n color: \"#E2E2E2\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n tooltip: {\n fontSize: 16,\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles((theme) => ({\n root: {\n width: 50,\n height: 24,\n padding: 0,\n margin: 0,\n },\n switchBase: {\n padding: 1,\n \"&$checked\": {\n transform: \"translateX(24px)\",\n color: theme.palette.common.white,\n \"& + $track\": {\n backgroundColor: \"#4CCB92\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n border: \"none\",\n },\n },\n \"&$focusVisible $thumb\": {\n color: \"#4CCB92\",\n border: \"6px solid #fff\",\n },\n },\n thumb: {\n width: 22,\n height: 22,\n backgroundColor: \"#FAFAFA\",\n border: \"2px solid #FFFFFF\",\n marginLeft: 1,\n },\n track: {\n borderRadius: 24 / 2,\n backgroundColor: \"#E2E2E2\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n transition: theme.transitions.create([\"background-color\", \"border\"]),\n },\n checked: {},\n focusVisible: {},\n switchContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n}))(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n classes,\n indicatorLabels,\n extraInputProps = {},\n}: IFormSwitch) => {\n const switchComponent = (\n \n {!switchOnly && (\n \n {indicatorLabels && indicatorLabels.length > 1\n ? indicatorLabels[1]\n : \"OFF\"}\n \n )}\n \n {!switchOnly && (\n \n {indicatorLabels ? indicatorLabels[0] : \"ON\"}\n \n )}\n \n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n
\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n \n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { Theme } from \"@mui/material/styles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\n\ninterface IScreenTitle {\n icon?: any;\n title?: any;\n subTitle?: any;\n actions?: any;\n className?: any;\n}\n\nconst useStyles = makeStyles((theme: Theme) => ({\n headerBarIcon: {\n marginRight: \".7rem\",\n color: theme.palette.primary.main,\n \"& .min-icon\": {\n width: 44,\n height: 44,\n },\n \"@media (max-width: 600px)\": {\n display: \"none\",\n },\n },\n headerBarSubheader: {\n color: \"grey\",\n \"@media (max-width: 900px)\": {\n maxWidth: 200,\n },\n },\n stContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n padding: 8,\n\n borderBottom: \"1px solid #EAEAEA\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n titleColumn: {\n height: \"auto\",\n justifyContent: \"center\",\n display: \"flex\",\n flexFlow: \"column\",\n alignItems: \"flex-start\",\n \"& h1\": {\n fontSize: 19,\n },\n },\n leftItems: {\n display: \"flex\",\n alignItems: \"center\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n width: \"100%\",\n },\n },\n rightItems: {\n display: \"flex\",\n alignItems: \"center\",\n \"& button\": {\n marginLeft: 8,\n },\n \"@media (max-width: 600px)\": {\n width: \"100%\",\n },\n },\n}));\n\nconst ScreenTitle = ({\n icon,\n title,\n subTitle,\n actions,\n className,\n}: IScreenTitle) => {\n const classes = useStyles();\n return (\n \n \n
\n {icon ?
{icon}
: null}\n
\n

{title}

\n {subTitle}\n
\n
\n\n
{actions}
\n
\n \n );\n};\n\nexport default ScreenTitle;\n","import React, { useEffect, useState } from \"react\";\nimport { Box, Tab, TabProps } from \"@mui/material\";\nimport { TabContext, TabList, TabPanel } from \"@mui/lab\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Theme, useTheme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\nimport { useLocation } from \"react-router-dom\";\n\nexport type TabItemProps = {\n tabConfig: TabProps | any;\n content?: JSX.Element | JSX.Element[];\n};\n\ntype VerticalTabsProps = {\n classes: any;\n children: TabItemProps[];\n selectedTab?: string;\n routes?: any;\n isRouteTabs?: boolean;\n};\n\nconst styles = (theme: Theme) =>\n createStyles({\n tabsContainer: {\n display: \"flex\",\n height: \"100%\",\n width: \"100%\",\n },\n tabsHeaderContainer: {\n width: \"300px\",\n background: \"#F8F8F8\",\n borderRight: \"1px solid #EAEAEA\",\n \"& .MuiTabs-root\": {\n \"& .MuiTabs-indicator\": {\n display: \"none\",\n },\n \"& .MuiTab-root\": {\n display: \"flex\",\n flexFlow: \"row\",\n alignItems: \"center\",\n justifyContent: \"flex-start\",\n borderBottom: \"1px solid #EAEAEA\",\n \"& .MuiSvgIcon-root\": {\n marginRight: 8,\n marginBottom: 0,\n },\n \"&.Mui-selected\": {\n background: \"#E5E5E5\",\n fontWeight: 600,\n },\n },\n\n \"&. MuiTabs-scroller\": {\n display: \"none\",\n },\n },\n },\n tabContentContainer: {\n width: \"100%\",\n \"& .MuiTabPanel-root\": {\n height: \"100%\",\n },\n },\n tabPanel: {\n height: \"100%\",\n },\n /*Below md breakpoint make it horizontal and style it for scrolling tabs*/\n \"@media (max-width: 900px)\": {\n tabsContainer: {\n flexFlow: \"column\",\n flexDirection: \"column\",\n },\n tabsHeaderContainer: {\n width: \"100%\",\n borderBottom: \" 1px solid #EAEAEA\",\n \"& .MuiTabs-root .MuiTabs-scroller .MuiButtonBase-root\": {\n borderBottom: \" 0px\",\n },\n },\n },\n });\n\nconst tabStripStyle = {\n minHeight: 60,\n};\n\nconst VerticalTabs = ({\n children,\n classes,\n selectedTab = \"0\",\n routes,\n isRouteTabs,\n}: VerticalTabsProps) => {\n const theme = useTheme();\n const { pathname = \"\" } = useLocation();\n\n const isSmallScreen = useMediaQuery(theme.breakpoints.down(\"md\"));\n\n const [value, setValue] = useState(selectedTab);\n\n const headerList: TabProps[] = [];\n const contentList: React.ReactNode[] = [];\n useEffect(() => {\n if (isRouteTabs) {\n const tabConfigElement = children.find(\n (item) => item.tabConfig.to === pathname,\n );\n\n if (tabConfigElement) {\n setValue(tabConfigElement.tabConfig.value);\n }\n }\n }, [isRouteTabs, children, pathname]);\n\n if (!children) return null;\n\n children.forEach((child) => {\n headerList.push(child.tabConfig);\n contentList.push(child.content);\n });\n\n const handleChange = (event: React.SyntheticEvent, newValue: string) => {\n setValue(newValue);\n };\n\n return (\n \n \n \n \n {headerList.map((item, index) => {\n if (item) {\n return (\n \n );\n }\n return null;\n })}\n \n \n\n \n {!isRouteTabs\n ? contentList.map((item, index) => {\n return (\n \n {item ? item : null}\n \n );\n })\n : null}\n {isRouteTabs ? (\n
{routes}
\n ) : null}\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(VerticalTabs);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Button, Grid } from \"mds\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { Webhook } from \"@mui/icons-material\";\nimport { formFieldStyles } from \"../../Common/FormComponents/common/styleLibrary\";\nimport CallToActionIcon from \"@mui/icons-material/CallToAction\";\nimport PendingActionsIcon from \"@mui/icons-material/PendingActions\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { LinearProgress } from \"@mui/material\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IEndpointModal {\n open: boolean;\n type: string;\n onCloseEndpoint: () => void;\n}\n\nconst AddEndpointModal = ({ open, type, onCloseEndpoint }: IEndpointModal) => {\n const [name, setName] = useState(\"\");\n const [endpoint, setEndpoint] = useState(\"\");\n const [authToken, setAuthToken] = useState(\"\");\n const [saving, setSaving] = useState(false);\n const [invalidInputs, setInvalidInput] = useState([\n \"name\",\n \"endpoint\",\n ]);\n const [initialInputs, setInitialInputs] = useState([\n \"name\",\n \"endpoint\",\n \"auth-token\",\n ]);\n\n const dispatch = useAppDispatch();\n\n const saveWebhook = () => {\n if (saving) {\n return;\n }\n\n if (invalidInputs.length !== 0) {\n return;\n }\n\n if (name.trim() === \"\") {\n setInvalidInput([...invalidInputs, \"name\"]);\n\n return;\n }\n\n if (endpoint.trim() === \"\") {\n setInvalidInput([...invalidInputs, \"endpoint\"]);\n\n return;\n }\n\n setSaving(true);\n\n const payload = {\n key_values: [\n {\n key: \"endpoint\",\n value: endpoint,\n },\n {\n key: \"auth_token\",\n value: authToken,\n },\n ],\n arn_resource_id: name,\n };\n\n api.configs\n .setConfig(type, payload)\n .then((res) => {\n setSaving(false);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n\n onCloseEndpoint();\n dispatch(configurationIsLoading(true));\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const initializeInput = (name: string) => {\n setInitialInputs(initialInputs.filter((item) => item !== name));\n };\n\n const validateInput = (name: string, valid: boolean) => {\n if (invalidInputs.includes(name) && valid) {\n setInvalidInput(invalidInputs.filter((item) => item !== name));\n return;\n }\n\n if (!valid && !invalidInputs.includes(name)) {\n setInvalidInput([...invalidInputs, name]);\n }\n };\n\n let title = \"Add new Webhook\";\n let icon = ;\n\n switch (type) {\n case \"logger_webhook\":\n title = \"New Logger Webhook\";\n icon = ;\n break;\n case \"audit_webhook\":\n title = \"New Audit Webhook\";\n icon = ;\n break;\n }\n\n return (\n \n \n \n ) => {\n initializeInput(\"name\");\n setName(event.target.value);\n validateInput(\"name\", event.target.validity.valid);\n }}\n error={\n invalidInputs.includes(\"name\") && !initialInputs.includes(\"name\")\n ? \"Invalid Name\"\n : \"\"\n }\n label=\"Name\"\n value={name}\n pattern={\"^(?=.*[a-zA-Z0-9]).{1,}$\"}\n required\n />\n \n \n ) => {\n initializeInput(\"endpoint\");\n setEndpoint(event.target.value);\n validateInput(\"endpoint\", event.target.validity.valid);\n }}\n error={\n invalidInputs.includes(\"endpoint\") &&\n !initialInputs.includes(\"endpoint\")\n ? \"Invalid Endpoint set\"\n : \"\"\n }\n label=\"Endpoint\"\n value={endpoint}\n pattern={\n \"^(https?):\\\\/\\\\/([a-zA-Z0-9\\\\-.]+)(:[0-9]+)?(\\\\/[a-zA-Z0-9\\\\-.\\\\/]*)?$\"\n }\n required\n />\n \n \n ) => {\n initializeInput(\"auth-token\");\n setAuthToken(event.target.value);\n }}\n label=\"Auth Token\"\n value={authToken}\n />\n \n {saving && (\n \n \n \n )}\n \n \n \n \n \n \n );\n};\n\nexport default AddEndpointModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { DialogContentText } from \"@mui/material\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IDeleteWebhookEndpoint {\n modalOpen: boolean;\n onClose: () => void;\n selectedARN: string;\n type: string;\n}\n\nconst DeleteWebhookEndpoint = ({\n modalOpen,\n onClose,\n selectedARN,\n type,\n}: IDeleteWebhookEndpoint) => {\n const [deleteLoading, setDeleteLoading] = useState(false);\n\n const dispatch = useAppDispatch();\n\n useEffect(() => {\n if (deleteLoading) {\n api.configs\n .resetConfig(selectedARN)\n .then(() => {\n setDeleteLoading(false);\n dispatch(setServerNeedsRestart(true));\n dispatch(configurationIsLoading(true));\n onClose();\n })\n .catch((err) => {\n setDeleteLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [deleteLoading, dispatch, onClose, selectedARN]);\n\n const onConfirmDelete = () => {\n setDeleteLoading(true);\n };\n\n const defaultWH = !selectedARN.includes(\":\");\n\n let message = \"Are you sure you want to delete the Configured Endpoint\";\n\n // Main webhook, we just reset\n if (defaultWH) {\n message = \"Are you sure you want to reset the Default\";\n }\n\n return (\n }\n onClose={onClose}\n confirmationContent={\n \n {`${message} `}\n {selectedARN}?\n \n }\n />\n );\n};\n\nexport default DeleteWebhookEndpoint;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Button, ConsoleIcon, Grid, Tooltip } from \"mds\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { Webhook } from \"@mui/icons-material\";\nimport { formFieldStyles } from \"../../Common/FormComponents/common/styleLibrary\";\nimport CallToActionIcon from \"@mui/icons-material/CallToAction\";\nimport PendingActionsIcon from \"@mui/icons-material/PendingActions\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { LinearProgress } from \"@mui/material\";\nimport { IConfigurationSys } from \"../../Configurations/types\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport PredefinedList from \"../../Common/FormComponents/PredefinedList/PredefinedList\";\nimport { overrideFields } from \"../../Configurations/utils\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IEndpointModal {\n open: boolean;\n type: string;\n endpointInfo: IConfigurationSys;\n onCloseEndpoint: () => void;\n}\n\nconst EditEndpointModal = ({\n open,\n type,\n endpointInfo,\n onCloseEndpoint,\n}: IEndpointModal) => {\n const [name, setName] = useState(\"\");\n const [endpoint, setEndpoint] = useState(\"\");\n const [authToken, setAuthToken] = useState(\"\");\n const [endpointState, setEndpointState] = useState(\"on\");\n const [saving, setSaving] = useState(false);\n const [invalidInputs, setInvalidInput] = useState([]);\n\n const dispatch = useAppDispatch();\n\n useEffect(() => {\n if (endpointInfo) {\n const endpointLocate = endpointInfo.key_values.find(\n (key) => key.key === \"endpoint\",\n );\n const tokenLocate = endpointInfo.key_values.find(\n (key) => key.key === \"auth_token\",\n );\n const enable = endpointInfo.key_values.find(\n (key) => key.key === \"enable\",\n );\n\n let invalidInputs: string[] = [];\n\n if (endpointLocate) {\n const endpointValue = endpointLocate.value;\n\n if (endpointValue === \"\") {\n invalidInputs.push(\"endpoint\");\n } else {\n setEndpoint(endpointValue);\n }\n }\n\n if (tokenLocate) {\n const tokenValue = tokenLocate.value;\n\n if (tokenValue === \"\") {\n invalidInputs.push(\"auth-token\");\n } else {\n setAuthToken(tokenValue);\n }\n }\n\n if (enable) {\n if (enable.value === \"off\") {\n setEndpointState(enable.value);\n }\n }\n\n setName(endpointInfo.name || \"\");\n setInvalidInput(invalidInputs);\n }\n }, [endpointInfo]);\n\n const updateWebhook = () => {\n if (saving) {\n return;\n }\n\n if (invalidInputs.length !== 0) {\n return;\n }\n\n if (!endpoint || endpoint.trim() === \"\") {\n setInvalidInput([...invalidInputs, \"endpoint\"]);\n\n return;\n }\n\n setSaving(true);\n\n const payload = {\n key_values: [\n {\n key: \"endpoint\",\n value: endpoint,\n },\n {\n key: \"auth_token\",\n value: authToken,\n },\n {\n key: \"enable\",\n value: endpointState,\n },\n ],\n };\n\n api.configs\n .setConfig(name, payload)\n .then((res) => {\n setSaving(false);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n\n onCloseEndpoint();\n dispatch(configurationIsLoading(true));\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const validateInput = (name: string, valid: boolean) => {\n if (invalidInputs.includes(name) && valid) {\n setInvalidInput(invalidInputs.filter((item) => item !== name));\n return;\n }\n\n if (!valid && !invalidInputs.includes(name)) {\n setInvalidInput([...invalidInputs, name]);\n }\n };\n\n const defaultWH = !name.includes(\":\");\n const hasOverride = endpointInfo.key_values.filter(\n (itm) => !!itm.env_override,\n );\n\n const overrideValues = overrideFields(hasOverride);\n\n let title = \"Edit Webhook\";\n let icon = ;\n\n switch (type) {\n case \"logger_webhook\":\n title = `Edit ${defaultWH ? \" the Default \" : \"\"}Logger Webhook`;\n icon = ;\n break;\n case \"audit_webhook\":\n title = `Edit ${defaultWH ? \" the Default \" : \"\"}Audit Webhook`;\n icon = ;\n break;\n }\n\n if (hasOverride.length > 0) {\n title = \"View env variable Webhook\";\n }\n\n return (\n \n \n {hasOverride.length > 0 ? (\n \n \n \n \n \n \n \n }\n />\n \n \n \n \n \n \n \n }\n />\n \n \n \n \n \n \n \n }\n />\n \n \n ) : (\n \n \n ) => {\n const value = e.target.checked ? \"on\" : \"off\";\n setEndpointState(value);\n }}\n id={\"endpoint_enabled\"}\n name={\"endpoint_enabled\"}\n label={\"Enabled\"}\n value={\"switch_on\"}\n checked={endpointState === \"on\"}\n />\n \n \n ) => {\n setEndpoint(event.target.value);\n validateInput(\"endpoint\", event.target.validity.valid);\n }}\n error={\n invalidInputs.includes(\"endpoint\")\n ? \"Invalid Endpoint set\"\n : \"\"\n }\n label=\"Endpoint\"\n value={endpoint}\n pattern={\n \"^(https?):\\\\/\\\\/([a-zA-Z0-9\\\\-.]+)(:[0-9]+)?(\\\\/[a-zA-Z0-9\\\\-.\\\\/]*)?$\"\n }\n required\n />\n \n \n ) => {\n setAuthToken(event.target.value);\n }}\n label=\"Auth Token\"\n value={authToken}\n />\n \n {saving && (\n \n \n \n )}\n \n \n \n \n \n )}\n \n \n );\n};\n\nexport default EditEndpointModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { IConfigurationSys, IElementValue } from \"../../Configurations/types\";\nimport {\n Button,\n ConsoleIcon,\n DataTable,\n Grid,\n TierOfflineIcon,\n TierOnlineIcon,\n} from \"mds\";\nimport AddEndpointModal from \"./AddEndpointModal\";\nimport DeleteWebhookEndpoint from \"./DeleteWebhookEndpoint\";\nimport EditWebhookEndpoint from \"./EditWebhookEndpoint\";\nimport { Configuration } from \"api/consoleApi\";\n\ninterface WebhookSettingsProps {\n WebhookSettingslist: Configuration[];\n setResetConfigurationOpen: () => void;\n type: string;\n}\n\nconst WebhookSettings = ({\n setResetConfigurationOpen,\n WebhookSettingslist,\n type,\n}: WebhookSettingsProps) => {\n const [newEndpointOpen, setNewEndpointOpen] = useState(false);\n const [deleteWebhookOpen, setDeleteWebhookOpen] = useState(false);\n const [editWebhookOpen, setEditWebhookOpen] = useState(false);\n const [selectedARN, setSelectedARN] = useState(\"\");\n const [selectedEndpoint, setSelectedEndpoint] =\n useState(null);\n\n const renderEndpoint = (item: IElementValue[]) => {\n const endpointFilter = item.find((itm) => itm.key === \"endpoint\");\n\n if (endpointFilter) {\n if (endpointFilter.env_override) {\n return endpointFilter.env_override.value;\n }\n\n return endpointFilter.value;\n }\n\n return \"\";\n };\n\n const renderWebhookStatus = (item: IElementValue[]) => {\n const EnableFilter = item.find((itm) => itm.key === \"enable\");\n\n if (EnableFilter?.env_override) {\n const overrideEnabled =\n !EnableFilter?.env_override.value ||\n EnableFilter?.env_override.value === \"on\" ||\n !EnableFilter?.env_override.value\n ? \"Enabled\"\n : \"Disabled\";\n return (\n \n \n {overrideEnabled ? \"Enabled\" : \"Disabled\"}\n \n );\n }\n\n // If enable is not set, then enabled by default\n if (!EnableFilter || EnableFilter.value === \"on\" || !EnableFilter.value) {\n return (\n \n \n Enabled\n \n );\n }\n\n return (\n \n \n Disabled\n \n );\n };\n\n const onCloseDelete = () => {\n setDeleteWebhookOpen(false);\n setSelectedARN(\"\");\n };\n\n const onCloseEditWebhook = () => {\n setEditWebhookOpen(false);\n setSelectedEndpoint(null);\n };\n\n const actions = [\n {\n type: \"view\",\n onClick: (item: IConfigurationSys) => {\n if (item.name) {\n setEditWebhookOpen(true);\n setSelectedEndpoint(item);\n }\n },\n },\n {\n type: \"delete\",\n onClick: (item: IConfigurationSys) => {\n if (item.name) {\n setDeleteWebhookOpen(true);\n setSelectedARN(item.name);\n }\n },\n disableButtonFunction: (item: string) => {\n const wHook = WebhookSettingslist.find(\n (element) => element.name === item,\n );\n\n if (wHook) {\n const hasOverride = wHook.key_values?.filter(\n (itm) => !!itm.env_override,\n );\n\n // Has override values, we cannot delete.\n if (hasOverride && hasOverride.length > 0) {\n return true;\n }\n\n return false;\n }\n return false;\n },\n },\n ];\n return (\n \n {newEndpointOpen && (\n {\n setNewEndpointOpen(false);\n }}\n />\n )}\n {deleteWebhookOpen && (\n \n )}\n {editWebhookOpen && selectedEndpoint && (\n \n )}\n \n {\n setNewEndpointOpen(true);\n }}\n >\n New Endpoint\n \n \n \n \n

Currently Configured Endpoints

\n \n
\n
\n
\n );\n};\nexport default WebhookSettings;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { Button, Loader } from \"mds\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Box } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport ConfTargetGeneric from \"../ConfTargetGeneric\";\n\nimport {\n fieldBasic,\n settingsCommon,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport {\n fieldsConfigurations,\n overrideFields,\n removeEmptyFields,\n} from \"../../Configurations/utils\";\nimport {\n IConfigurationElement,\n IElementValue,\n IOverrideEnv,\n KVField,\n} from \"../../Configurations/types\";\nimport ResetConfigurationModal from \"./ResetConfigurationModal\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setHelpName,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport WebhookSettings from \"../WebhookSettings/WebhookSettings\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { Configuration, ConfigurationKV } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...settingsCommon,\n settingsFormContainer: {\n display: \"grid\",\n gridTemplateColumns: \"1fr\",\n gridGap: \"10px\",\n },\n });\n\ninterface IAddNotificationEndpointProps {\n selectedConfiguration: IConfigurationElement;\n classes: any;\n className?: string;\n}\n\nconst EditConfiguration = ({\n selectedConfiguration,\n classes,\n className = \"\",\n}: IAddNotificationEndpointProps) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const { pathname = \"\" } = useLocation();\n\n let selConfigTab = pathname.substring(pathname.lastIndexOf(\"/\") + 1);\n selConfigTab = selConfigTab === \"settings\" ? \"region\" : selConfigTab;\n\n //Local States\n const [valuesObj, setValueObj] = useState([]);\n const [saving, setSaving] = useState(false);\n const [configValues, setConfigValues] = useState([]);\n const [configSubsysList, setConfigSubsysList] = useState([]);\n const [resetConfigurationOpen, setResetConfigurationOpen] =\n useState(false);\n const [overrideEnvs, setOverrideEnvs] = useState({});\n\n const loadingConfig = useSelector(\n (state: AppState) => state.system.loadingConfigurations,\n );\n\n useEffect(() => {\n dispatch(configurationIsLoading(true));\n }, [selConfigTab, dispatch]);\n\n useEffect(() => {\n if (loadingConfig) {\n const configId = get(selectedConfiguration, \"configuration_id\", false);\n\n if (configId) {\n api.configs\n .configInfo(configId)\n .then((res) => {\n setConfigSubsysList(res.data);\n let values: ConfigurationKV[] = get(res.data[0], \"key_values\", []);\n\n const fieldsConfig: KVField[] = fieldsConfigurations[configId];\n\n const keyVals = fieldsConfig.map((field) => {\n const includedValue = values.find(\n (element: ConfigurationKV) => element.key === field.name,\n );\n const customValue = includedValue?.value || \"\";\n\n return {\n key: field.name,\n value: field.customValueProcess\n ? field.customValueProcess(customValue)\n : customValue,\n };\n });\n\n setConfigValues(keyVals);\n setOverrideEnvs(overrideFields(keyVals));\n dispatch(configurationIsLoading(false));\n })\n .catch((err) => {\n dispatch(configurationIsLoading(false));\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n\n return;\n }\n dispatch(configurationIsLoading(false));\n }\n }, [loadingConfig, selectedConfiguration, dispatch]);\n\n useEffect(() => {\n if (saving) {\n const payload = {\n key_values: removeEmptyFields(valuesObj),\n };\n api.configs\n .setConfig(selectedConfiguration.configuration_id, payload)\n .then((res) => {\n setSaving(false);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n dispatch(configurationIsLoading(true));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [saving, dispatch, selectedConfiguration, valuesObj, navigate]);\n\n //Fetch Actions\n const submitForm = (event: React.FormEvent) => {\n event.preventDefault();\n setSaving(true);\n };\n\n const onValueChange = useCallback(\n (newValue: IElementValue[]) => {\n setValueObj(newValue);\n },\n [setValueObj],\n );\n\n const continueReset = (restart: boolean) => {\n setResetConfigurationOpen(false);\n dispatch(setServerNeedsRestart(restart));\n if (restart) {\n dispatch(configurationIsLoading(true));\n }\n };\n\n const resetConfigurationMOpen = () => {\n setResetConfigurationOpen(true);\n };\n\n return (\n \n {\n dispatch(\n setHelpName(\n `settings_${selectedConfiguration.configuration_label}`,\n ),\n );\n }}\n >\n {resetConfigurationOpen && (\n \n )}\n {loadingConfig ? (\n \n \n \n ) : (\n \n {selectedConfiguration.configuration_id === \"logger_webhook\" ||\n selectedConfiguration.configuration_id === \"audit_webhook\" ? (\n \n ) : (\n \n \n \n \n \n \n \n    \n \n \n \n \n )}\n \n )}\n
\n
\n );\n};\n\nexport default withStyles(styles)(EditConfiguration);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport { Grid } from \"mds\";\nimport { configurationElements } from \"../utils\";\nimport EditConfiguration from \"../../EventDestinations/CustomForms/EditConfiguration\";\n\nconst ConfigurationsList = () => {\n const { pathname = \"\" } = useLocation();\n\n const configName = pathname.substring(pathname.lastIndexOf(\"/\") + 1);\n\n const validActiveConfig = configurationElements.find(\n (element) => element.configuration_id === configName,\n );\n const containerClassName = `${configName}`;\n return (\n \n {validActiveConfig && (\n \n )}\n \n );\n};\n\nexport default ConfigurationsList;\n","import React from \"react\";\nimport { Button, UploadIcon } from \"mds\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport { performDownload } from \"../../../../common/utils\";\nimport { DateTime } from \"luxon\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useDispatch } from \"react-redux\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst ExportConfigButton = () => {\n const dispatch = useDispatch();\n const [isReqLoading, invokeApi] = useApi(\n (res: any) => {\n //base64 encoded information so decode before downloading.\n performDownload(\n new Blob([window.atob(res.value)]),\n `minio-server-config-${DateTime.now().toFormat(\n \"LL-dd-yyyy-HH-mm-ss\",\n )}.conf`,\n );\n },\n (err) => {\n dispatch(setErrorSnackMessage(err));\n },\n );\n\n return (\n \n {\n invokeApi(\"GET\", `api/v1/configs/export`);\n }}\n icon={}\n label={\"Export\"}\n variant={\"regular\"}\n disabled={isReqLoading}\n />\n \n );\n};\n\nexport default ExportConfigButton;\n","import React, { Fragment, useEffect, useRef, useState } from \"react\";\nimport { Button, DownloadIcon } from \"mds\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../../systemSlice\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport { AppState } from \"../../../../store\";\n\nconst ImportConfigButton = () => {\n const navigate = useNavigate();\n const dispatch = useDispatch();\n\n const needsRestart = useSelector(\n (state: AppState) => state.system.serverNeedsRestart,\n );\n\n const [refreshPage, setRefreshPage] = useState(\n undefined,\n );\n const fileUpload = useRef(null);\n\n const [isReqLoading, invokeApi] = useApi(\n (res: any) => {\n //base64 encoded information so decode before downloading.\n dispatch(setServerNeedsRestart(true)); //import should refreshPage as per mc.\n setRefreshPage(true);\n },\n (err) => {\n dispatch(setErrorSnackMessage(err));\n },\n );\n\n useEffect(() => {\n if (!needsRestart && refreshPage) {\n navigate(0); // refresh the page.\n }\n }, [needsRestart, refreshPage, navigate]);\n\n const handleUploadButton = (e: any) => {\n if (\n e === null ||\n e === undefined ||\n e.target.files === null ||\n e.target.files === undefined\n ) {\n return;\n }\n e.preventDefault();\n const [fileToUpload] = e.target.files;\n\n const formData = new FormData();\n const blobFile = new Blob([fileToUpload], { type: fileToUpload.type });\n\n formData.append(\"file\", blobFile, fileToUpload.name);\n // @ts-ignore\n invokeApi(\"POST\", `api/v1/configs/import`, formData);\n\n e.target.value = \"\";\n };\n\n return (\n \n \n \n {\n if (fileUpload && fileUpload.current) {\n fileUpload.current.click();\n }\n }}\n icon={}\n label={\"Import\"}\n variant={\"regular\"}\n disabled={isReqLoading}\n />\n \n \n );\n};\n\nexport default ImportConfigButton;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useCallback, useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport Grid from \"@mui/material/Grid\";\n\nimport { configurationElements } from \"../utils\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport { HelpBox, PageLayout, SettingsIcon } from \"mds\";\nimport { Link, Navigate, Route, Routes, useLocation } from \"react-router-dom\";\nimport VerticalTabs from \"../../Common/VerticalTabs/VerticalTabs\";\nimport ScreenTitle from \"../../Common/ScreenTitle/ScreenTitle\";\nimport ConfigurationForm from \"./ConfigurationForm\";\nimport { IAM_PAGES } from \"../../../../common/SecureComponent/permissions\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport ExportConfigButton from \"./ExportConfigButton\";\nimport ImportConfigButton from \"./ImportConfigButton\";\nimport { Box } from \"@mui/material\";\nimport HelpMenu from \"../../HelpMenu\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"../../../../api\";\nimport { IElement } from \"../types\";\nimport { errorToHandler } from \"../../../../api/errors\";\n\ninterface IConfigurationOptions {\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n settingsOptionsContainer: {\n display: \"flex\" as const,\n flexDirection: \"row\" as const,\n justifyContent: \"flex-start\" as const,\n flexWrap: \"wrap\" as const,\n border: \"#E5E5E5 1px solid\",\n borderRadius: 2,\n backgroundColor: \"#fff\",\n },\n ...searchField,\n ...actionsTray,\n ...containerForHeader,\n });\n\nconst getRoutePath = (path: string) => {\n return `${IAM_PAGES.SETTINGS}/${path}`;\n};\n\n// region is not part of config subsystem list.\nconst NON_SUB_SYS_CONFIG_ITEMS = [\"region\"];\nconst IGNORED_CONFIG_SUB_SYS = [\"cache\"]; // cache config is not supported.\n\nconst ConfigurationOptions = ({ classes }: IConfigurationOptions) => {\n const { pathname = \"\" } = useLocation();\n const dispatch = useAppDispatch();\n\n const [configSubSysList, setConfigSubSysList] = useState([]);\n const fetchConfigSubSysList = useCallback(async () => {\n api.configs\n .listConfig() // get a list of available config subsystems.\n .then((res) => {\n if (res && res?.data && res?.data?.configurations) {\n const confSubSysList = (res?.data?.configurations || []).reduce(\n (acc: string[], { key = \"\" }) => {\n if (!IGNORED_CONFIG_SUB_SYS.includes(key)) {\n acc.push(key);\n }\n return acc;\n },\n [],\n );\n\n setConfigSubSysList(confSubSysList);\n }\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n });\n }, [dispatch]);\n\n let selConfigTab = pathname.substring(pathname.lastIndexOf(\"/\") + 1);\n selConfigTab = selConfigTab === \"settings\" ? \"region\" : selConfigTab;\n useEffect(() => {\n fetchConfigSubSysList();\n dispatch(setHelpName(\"settings_Region\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const availableConfigSubSys = configurationElements.filter(\n ({ configuration_id }: IElement) => {\n return (\n NON_SUB_SYS_CONFIG_ITEMS.includes(configuration_id) ||\n configSubSysList.includes(configuration_id) ||\n !configSubSysList.length\n );\n },\n );\n\n return (\n \n } />\n \n \n \n }\n title={\"MinIO Configuration:\"}\n actions={\n \n \n \n \n }\n />\n \n {availableConfigSubSys.map((element) => (\n }\n />\n ))}\n }\n />\n \n }\n >\n {availableConfigSubSys.map((element) => {\n const { configuration_id, configuration_label, icon } = element;\n return {\n tabConfig: {\n label: configuration_label,\n value: configuration_id,\n icon: icon,\n component: Link,\n to: getRoutePath(configuration_id),\n },\n };\n })}\n \n \n \n \n }\n help={\n \n MinIO supports a variety of configurations ranging from\n encryption, compression, region, notifications, etc.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(ConfigurationOptions);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport PublicIcon from \"@mui/icons-material/Public\";\nimport CompressIcon from \"@mui/icons-material/Compress\";\nimport CodeIcon from \"@mui/icons-material/Code\";\nimport LocalHospitalIcon from \"@mui/icons-material/LocalHospital\";\nimport FindReplaceIcon from \"@mui/icons-material/FindReplace\";\nimport VpnKeyIcon from \"@mui/icons-material/VpnKey\";\nimport PendingActionsIcon from \"@mui/icons-material/PendingActions\";\nimport CallToActionIcon from \"@mui/icons-material/CallToAction\";\nimport { IElement, IElementValue, IOverrideEnv, OverrideValue } from \"./types\";\nimport { LogsIcon } from \"mds\";\n\nexport const configurationElements: IElement[] = [\n {\n icon: ,\n configuration_id: \"region\",\n configuration_label: \"Region\",\n },\n {\n icon: ,\n configuration_id: \"compression\",\n configuration_label: \"Compression\",\n },\n {\n icon: ,\n configuration_id: \"api\",\n configuration_label: \"API\",\n },\n {\n icon: ,\n configuration_id: \"heal\",\n configuration_label: \"Heal\",\n },\n {\n icon: ,\n configuration_id: \"scanner\",\n configuration_label: \"Scanner\",\n },\n {\n icon: ,\n configuration_id: \"etcd\",\n configuration_label: \"Etcd\",\n },\n {\n icon: ,\n configuration_id: \"logger_webhook\",\n configuration_label: \"Logger Webhook\",\n },\n {\n icon: ,\n configuration_id: \"audit_webhook\",\n configuration_label: \"Audit Webhook\",\n },\n {\n icon: (\n \n ),\n configuration_id: \"audit_kafka\",\n configuration_label: \"Audit Kafka\",\n },\n];\n\nexport const fieldsConfigurations: any = {\n region: [\n {\n name: \"name\",\n required: true,\n label: \"Server Location\",\n tooltip: 'Name of the location of the server e.g. \"us-west-rack2\"',\n type: \"string\",\n placeholder: \"e.g. us-west-rack-2\",\n },\n {\n name: \"comment\",\n required: false,\n label: \"Comment\",\n tooltip: \"You can add a comment to this setting\",\n type: \"comment\",\n placeholder: \"Enter custom notes if any\",\n },\n ],\n compression: [\n {\n name: \"extensions\",\n required: false,\n label: \"Extensions\",\n tooltip:\n 'Extensions to compress e.g. \".txt\", \".log\" or \".csv\" - you can write one per field',\n type: \"csv\",\n placeholder: \"Enter an Extension\",\n withBorder: true,\n },\n {\n name: \"mime_types\",\n required: false,\n label: \"Mime Types\",\n tooltip:\n 'Mime types e.g. \"text/*\", \"application/json\" or \"application/xml\" - you can write one per field',\n type: \"csv\",\n placeholder: \"Enter a Mime Type\",\n withBorder: true,\n },\n ],\n api: [\n {\n name: \"requests_max\",\n required: false,\n label: \"Requests Max\",\n tooltip: \"Maximum number of concurrent requests, e.g. '1600'\",\n type: \"number\",\n placeholder: \"Enter Requests Max\",\n },\n {\n name: \"cors_allow_origin\",\n required: false,\n label: \"Cors Allow Origin\",\n tooltip: \"List of origins allowed for CORS requests\",\n type: \"csv\",\n placeholder: \"Enter allowed origin e.g. https://example.com\",\n },\n {\n name: \"replication_workers\",\n required: false,\n label: \"Replication Workers\",\n tooltip: \"Number of replication workers, defaults to 100\",\n type: \"number\",\n placeholder: \"Enter Replication Workers\",\n },\n {\n name: \"replication_failed_workers\",\n required: false,\n label: \"Replication Failed Workers\",\n tooltip:\n \"Number of replication workers for recently failed replicas, defaults to 4\",\n type: \"number\",\n placeholder: \"Enter Replication Failed Workers\",\n },\n ],\n heal: [\n {\n name: \"bitrotscan\",\n required: false,\n label: \"Bitrot Scan\",\n tooltip:\n \"Perform bitrot scan on disks when checking objects during scanner\",\n type: \"on|off\",\n },\n {\n name: \"max_sleep\",\n required: false,\n label: \"Max Sleep\",\n tooltip:\n \"Maximum sleep duration between objects to slow down heal operation, e.g. 2s\",\n type: \"duration\",\n placeholder: \"Enter Max Sleep Duration\",\n },\n {\n name: \"max_io\",\n required: false,\n label: \"Max IO\",\n tooltip:\n \"Maximum IO requests allowed between objects to slow down heal operation, e.g. 3\",\n type: \"number\",\n placeholder: \"Enter Max IO\",\n },\n ],\n scanner: [\n {\n name: \"delay\",\n required: false,\n label: \"Delay Multiplier\",\n tooltip: \"Scanner delay multiplier, defaults to '10.0'\",\n type: \"number\",\n placeholder: \"Enter Delay\",\n },\n {\n name: \"max_wait\",\n required: false,\n label: \"Max Wait\",\n tooltip: \"Maximum wait time between operations, defaults to '15s'\",\n type: \"duration\",\n placeholder: \"Enter Max Wait\",\n },\n {\n name: \"cycle\",\n required: false,\n label: \"Cycle\",\n tooltip: \"Time duration between scanner cycles, defaults to '1m'\",\n type: \"duration\",\n placeholder: \"Enter Cycle\",\n },\n ],\n etcd: [\n {\n name: \"endpoints\",\n required: true,\n label: \"Endpoints\",\n tooltip:\n 'List of etcd endpoints e.g. \"http://localhost:2379\" - you can write one per field',\n type: \"csv\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"path_prefix\",\n required: false,\n label: \"Path Prefix\",\n tooltip: 'Namespace prefix to isolate tenants e.g. \"customer1/\"',\n type: \"string\",\n placeholder: \"Enter Path Prefix\",\n },\n {\n name: \"coredns_path\",\n required: false,\n label: \"Coredns Path\",\n tooltip: 'Shared bucket DNS records, default is \"/skydns\"',\n type: \"string\",\n placeholder: \"Enter Coredns Path\",\n },\n {\n name: \"client_cert\",\n required: false,\n label: \"Client Cert\",\n tooltip: \"Client cert for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_cert_key\",\n required: false,\n label: \"Client Cert Key\",\n tooltip: \"Client cert key for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert Key\",\n },\n {\n name: \"comment\",\n required: false,\n label: \"Comment\",\n tooltip: \"You can add a comment to this setting\",\n type: \"comment\",\n multiline: true,\n placeholder: \"Enter custom notes if any\",\n },\n ],\n logger_webhook: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n type: \"string\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n required: true,\n label: \"Auth Token\",\n type: \"string\",\n placeholder: \"Enter Auth Token\",\n },\n ],\n audit_webhook: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n type: \"string\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n required: true,\n label: \"Auth Token\",\n type: \"string\",\n placeholder: \"Enter Auth Token\",\n },\n ],\n audit_kafka: [\n {\n name: \"enable\",\n required: false,\n label: \"Enable\",\n tooltip: \"Enable audit_kafka target\",\n type: \"on|off\",\n customValueProcess: (origValue: string) => {\n return origValue === \"\" || origValue === \"on\" ? \"on\" : \"off\";\n },\n },\n {\n name: \"brokers\",\n required: true,\n label: \"Brokers\",\n type: \"csv\",\n placeholder: \"Enter Kafka Broker\",\n },\n {\n name: \"topic\",\n required: false,\n label: \"Topic\",\n type: \"string\",\n placeholder: \"Enter Kafka Topic\",\n tooltip: \"Kafka topic used for bucket notifications\",\n },\n {\n name: \"sasl\",\n required: false,\n label: \"Use SASL\",\n tooltip:\n \"Enable SASL (Simple Authentication and Security Layer) authentication\",\n type: \"on|off\",\n },\n {\n name: \"sasl_username\",\n required: false,\n label: \"SASL Username\",\n type: \"string\",\n placeholder: \"Enter SASL Username\",\n tooltip: \"Username for SASL/PLAIN or SASL/SCRAM authentication\",\n },\n {\n name: \"sasl_password\",\n required: false,\n label: \"SASL Password\",\n type: \"password\",\n placeholder: \"Enter SASL Password\",\n tooltip: \"Password for SASL/PLAIN or SASL/SCRAM authentication\",\n },\n {\n name: \"sasl_mechanism\",\n required: false,\n label: \"SASL Mechanism\",\n type: \"string\",\n placeholder: \"Enter SASL Mechanism\",\n tooltip: \"SASL authentication mechanism\",\n },\n {\n name: \"tls\",\n required: false,\n label: \"Use TLS\",\n tooltip: \"Enable TLS (Transport Layer Security)\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n required: false,\n label: \"Skip TLS Verification\",\n tooltip: \"Trust server TLS without verification\",\n type: \"on|off\",\n },\n {\n name: \"client_tls_cert\",\n required: false,\n label: \"Client Cert\",\n tooltip: \"Client cert for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_tls_key\",\n required: false,\n label: \"Client Cert Key\",\n tooltip: \"Client cert key for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert Key\",\n },\n {\n name: \"tls_client_auth\",\n required: false,\n label: \"TLS Client Auth\",\n tooltip:\n \"ClientAuth determines the Kafka server's policy for TLS client authorization\",\n type: \"string\",\n },\n {\n name: \"version\",\n required: false,\n label: \"Version\",\n tooltip: \"Specify the version of the Kafka cluster\",\n type: \"string\",\n },\n ],\n};\n\nexport const removeEmptyFields = (formFields: IElementValue[]) => {\n const nonEmptyFields = formFields.filter((field) => field.value !== \"\");\n\n return nonEmptyFields;\n};\n\nexport const selectSAs = (\n e: React.ChangeEvent,\n setSelectedSAs: Function,\n selectedSAs: string[],\n) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedSAs]; // We clone the selectedSAs array\n if (checked) {\n // If the user has checked this field we need to push this to selectedSAs\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n setSelectedSAs(elements);\n return elements;\n};\n\nexport const overrideFields = (formFields: IElementValue[]): IOverrideEnv => {\n let overrideReturn: IOverrideEnv = {};\n\n formFields.forEach((envItem) => {\n // it has override values, we construct the value\n if (envItem.env_override) {\n const value: OverrideValue = {\n value: envItem.env_override.value,\n overrideEnv: envItem.env_override.name,\n };\n\n overrideReturn = { ...overrideReturn, [envItem.key]: value };\n }\n });\n\n return overrideReturn;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport { LinearProgress } from \"@mui/material\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IResetConfiguration {\n configurationName: string;\n closeResetModalAndRefresh: (reloadConfiguration: boolean) => void;\n resetOpen: boolean;\n}\n\nconst ResetConfigurationModal = ({\n configurationName,\n closeResetModalAndRefresh,\n resetOpen,\n}: IResetConfiguration) => {\n const dispatch = useAppDispatch();\n const [resetLoading, setResetLoading] = useState(false);\n\n useEffect(() => {\n if (resetLoading) {\n api.configs\n .resetConfig(configurationName)\n .then(() => {\n setResetLoading(false);\n closeResetModalAndRefresh(true);\n })\n .catch((err) => {\n setResetLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [closeResetModalAndRefresh, configurationName, resetLoading, dispatch]);\n\n const resetConfiguration = () => {\n setResetLoading(true);\n };\n\n return (\n }\n isLoading={resetLoading}\n onConfirm={resetConfiguration}\n onClose={() => {\n closeResetModalAndRefresh(false);\n }}\n confirmationContent={\n \n {resetLoading && }\n \n Are you sure you want to restore these configurations to default\n values?\n
\n \n Please note that this may cause your system to not be accessible\n \n
\n
\n }\n />\n );\n};\n\nexport default ResetConfigurationModal;\n"],"names":["StyledSwitch","withStyles","theme","root","width","height","padding","margin","switchBase","transform","color","palette","common","white","backgroundColor","boxShadow","opacity","border","thumb","marginLeft","track","borderRadius","transition","transitions","create","checked","focusVisible","switchContainer","display","alignItems","justifyContent","Switch","createStyles","_objectSpread","indicatorLabelOn","fontWeight","indicatorLabel","fontSize","fieldDescription","marginTop","tooltip","actionsTray","fieldBasic","_ref","_ref$label","label","onChange","value","id","name","_ref$checked","_ref$disabled","disabled","_ref$switchOnly","switchOnly","_ref$tooltip","_ref$description","description","classes","indicatorLabels","_ref$extraInputProps","extraInputProps","switchComponent","_jsxs","React","children","_jsx","className","clsx","_defineProperty","length","inputProps","disableRipple","disableFocusRipple","disableTouchRipple","Grid","container","item","xs","sm","md","InputLabel","htmlFor","inputLabel","tooltipContainer","Tooltip","title","placement","HelpIcon","textAlign","Typography","component","useStyles","makeStyles","headerBarIcon","marginRight","primary","main","headerBarSubheader","maxWidth","stContainer","borderBottom","flexFlow","titleColumn","leftItems","rightItems","icon","subTitle","actions","concat","style","tabStripStyle","minHeight","tabsContainer","tabsHeaderContainer","background","borderRight","marginBottom","tabContentContainer","tabPanel","flexDirection","_ref$selectedTab","selectedTab","routes","isRouteTabs","useTheme","_useLocation$pathname","useLocation","pathname","isSmallScreen","useMediaQuery","breakpoints","down","_useState","useState","_useState2","_slicedToArray","setValue","headerList","contentList","useEffect","tabConfigElement","find","tabConfig","to","forEach","child","push","content","TabContext","Box","TabList","event","newValue","orientation","variant","scrollButtons","tabList","map","index","Tab","tabHeader","focusRipple","TabPanel","open","type","onCloseEndpoint","setName","_useState3","_useState4","endpoint","setEndpoint","_useState5","_useState6","authToken","setAuthToken","_useState7","_useState8","saving","setSaving","_useState9","_useState10","invalidInputs","setInvalidInput","_useState11","_useState12","initialInputs","setInitialInputs","dispatch","useAppDispatch","initializeInput","filter","validateInput","valid","includes","_toConsumableArray","Webhook","CallToActionIcon","PendingActionsIcon","Fragment","ModalWrapper","modalOpen","onClose","titleIcon","sx","formFieldStyles","formFieldRow","InputBoxWrapper","target","validity","error","pattern","required","LinearProgress","Button","onClick","trim","payload","key_values","key","arn_resource_id","api","configs","setConfig","then","res","setServerNeedsRestart","data","restart","setSnackBarMessage","configurationIsLoading","catch","err","setErrorSnackMessage","errorToHandler","selectedARN","deleteLoading","setDeleteLoading","resetConfig","defaultWH","message","ConfirmDialog","confirmText","isOpen","isLoading","onConfirm","ConfirmDeleteIcon","confirmationContent","DialogContentText","_overrideValues$enabl","_overrideValues$endpo","_overrideValues$auth_","endpointInfo","endpointState","setEndpointState","endpointLocate","tokenLocate","enable","endpointValue","tokenValue","hasOverride","itm","env_override","overrideValues","overrideFields","PredefinedList","actionButton","paddingRight","overrideEnv","ConsoleIcon","auth_token","FormSwitchWrapper","e","setResetConfigurationOpen","WebhookSettingslist","newEndpointOpen","setNewEndpointOpen","deleteWebhookOpen","setDeleteWebhookOpen","editWebhookOpen","setEditWebhookOpen","setSelectedARN","selectedEndpoint","setSelectedEndpoint","disableButtonFunction","wHook","element","_wHook$key_values","AddEndpointModal","DeleteWebhookEndpoint","EditWebhookEndpoint","DataTable","columns","elementKey","renderFunction","EnableFilter","overrideEnabled","justifyItems","fill","TierOfflineIcon","TierOnlineIcon","endpointFilter","itemActions","idField","records","entityName","customPaperHeight","settingsCommon","settingsFormContainer","gridTemplateColumns","gridGap","selectedConfiguration","_ref$className","navigate","useNavigate","selConfigTab","substring","lastIndexOf","valuesObj","setValueObj","configValues","setConfigValues","configSubsysList","setConfigSubsysList","resetConfigurationOpen","overrideEnvs","setOverrideEnvs","loadingConfig","useSelector","state","system","loadingConfigurations","configId","get","configInfo","values","keyVals","fieldsConfigurations","field","includedValue","customValue","customValueProcess","removeEmptyFields","configuration_id","onValueChange","useCallback","resetConfigurationMOpen","onMouseMove","setHelpName","configuration_label","ResetConfigurationModal","configurationName","closeResetModalAndRefresh","resetOpen","paddingTop","Loader","WebhookSettings","noValidate","onSubmit","preventDefault","ConfTargetGeneric","fields","defaultVals","maxHeight","configName","validActiveConfig","configurationElements","containerClassName","minWidth","EditConfiguration","useDispatch","_useApi","useApi","performDownload","Blob","window","atob","DateTime","now","toFormat","_useApi2","isReqLoading","invokeApi","TooltipWrapper","UploadIcon","needsRestart","serverNeedsRestart","undefined","refreshPage","setRefreshPage","fileUpload","useRef","files","fileToUpload","formData","FormData","blobFile","append","ref","current","click","DownloadIcon","NON_SUB_SYS_CONFIG_ITEMS","IGNORED_CONFIG_SUB_SYS","settingsOptionsContainer","flexWrap","searchField","containerForHeader","configSubSysList","setConfigSubSysList","fetchConfigSubSysList","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","listConfig","_res$data","configurations","_res$data2","confSubSysList","reduce","acc","_ref3","_ref3$key","stop","availableConfigSubSys","_ref4","PageHeaderWrapper","HelpMenu","PageLayout","ScreenTitle","SettingsIcon","gap","ImportConfigButton","ExportConfigButton","VerticalTabs","Routes","Route","path","ConfigurationForm","Navigate","IAM_PAGES","SETTINGS","Link","HelpBox","iconComponent","help","href","rel","PublicIcon","CompressIcon","CodeIcon","LocalHospitalIcon","FindReplaceIcon","VpnKeyIcon","LogsIcon","region","placeholder","compression","withBorder","heal","scanner","etcd","multiline","logger_webhook","audit_webhook","audit_kafka","origValue","formFields","selectSAs","setSelectedSAs","selectedSAs","targetD","elements","overrideReturn","envItem","resetLoading","setResetLoading","whiteSpace","wordWrap"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/8455.97773e2f.chunk.js b/portal-ui/build/static/js/8455.97773e2f.chunk.js new file mode 100644 index 000000000..aea087693 --- /dev/null +++ b/portal-ui/build/static/js/8455.97773e2f.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[8455],{58455:function(e,t,n){n.r(t);var a=n(29439),l=n(72791),c=n(29945),i=n(31776),s=n(82342),o=n(23814),r=n(87995),u=n(81551),d=n(56028),h=n(80184);t.default=function(e){var t=e.modalOpen,n=e.onClose,b=e.bucket,x=e.toEdit,f=e.initial,k=(0,u.TL)(),p=(0,l.useState)(f),v=(0,a.Z)(p,2),j=v[0],m=v[1];return(0,h.jsx)(l.Fragment,{children:(0,h.jsxs)(d.Z,{modalOpen:t,title:"Edit Anonymous Access Rule for ".concat("".concat(b,"/").concat(x||"")),onClose:n,titleIcon:(0,h.jsx)(c.sR0,{}),children:[(0,h.jsx)(c.ltY,{containerPadding:!1,withBorders:!1,children:(0,h.jsx)(c.PhF,{id:"access",name:"Access",onChange:function(e){m(e)},label:"Access",value:j,options:[{label:"readonly",value:"readonly"},{label:"writeonly",value:"writeonly"},{label:"readwrite",value:"readwrite"}],disabled:!1})}),(0,h.jsxs)(c.rjZ,{item:!0,xs:12,sx:o.ID.modalButtonBar,children:[(0,h.jsx)(c.zxk,{id:"clear",type:"button",variant:"regular",onClick:function(){m(f)},label:"Clear"}),(0,h.jsx)(c.zxk,{id:"save",type:"submit",variant:"callAction",onClick:function(){i.h.bucket.setAccessRuleWithBucket(b,{prefix:x,access:j}).then((function(){n()})).catch((function(e){k((0,r.Ih)((0,s.g)(e.error))),n()}))},label:"Save"})]})]})})}}}]); +//# sourceMappingURL=8455.97773e2f.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/8455.97773e2f.chunk.js.map b/portal-ui/build/static/js/8455.97773e2f.chunk.js.map new file mode 100644 index 000000000..9a4663ada --- /dev/null +++ b/portal-ui/build/static/js/8455.97773e2f.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/8455.97773e2f.chunk.js","mappings":"sOA8GA,UA7EuB,SAAHA,GAMI,IALtBC,EAASD,EAATC,UACAC,EAAOF,EAAPE,QACAC,EAAMH,EAANG,OACAC,EAAMJ,EAANI,OACAC,EAAOL,EAAPK,QAEMC,GAAWC,EAAAA,EAAAA,MACjBC,GAA4CC,EAAAA,EAAAA,UAAcJ,GAAQK,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA3DI,EAAcF,EAAA,GAAEG,EAAiBH,EAAA,GA2BxC,OACEI,EAAAA,EAAAA,KAACC,EAAAA,SAAQ,CAAAC,UACPC,EAAAA,EAAAA,MAACC,EAAAA,EAAY,CACXjB,UAAWA,EACXkB,MAAK,kCAAAC,OAAA,GAAAA,OAAuCjB,EAAM,KAAAiB,OAAIhB,GAAU,KAChEF,QAASA,EACTmB,WAAWP,EAAAA,EAAAA,KAACQ,EAAAA,IAAiB,IAAIN,SAAA,EAEjCF,EAAAA,EAAAA,KAACS,EAAAA,IAAU,CAACC,kBAAkB,EAAOC,aAAa,EAAMT,UACtDF,EAAAA,EAAAA,KAACY,EAAAA,IAAM,CACLC,GAAG,SACHC,KAAK,SACLC,SAAU,SAACC,GACTjB,EAAkBiB,EACpB,EACAC,MAAM,SACND,MAAOlB,EACPoB,QA1CY,CACpB,CAAED,MAAO,WAAYD,MAAO,YAC5B,CAAEC,MAAO,YAAaD,MAAO,aAC7B,CAAEC,MAAO,YAAaD,MAAO,cAwCrBG,UAAU,OAGdhB,EAAAA,EAAAA,MAACiB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAIC,GAAIC,EAAAA,GAAgBC,eAAevB,SAAA,EACpDF,EAAAA,EAAAA,KAAC0B,EAAAA,IAAM,CACLb,GAAI,QACJc,KAAK,SACLC,QAAQ,UACRC,QA7CQ,WAChB9B,EAAkBR,EACpB,EA4CU0B,MAAO,WAETjB,EAAAA,EAAAA,KAAC0B,EAAAA,IAAM,CACLb,GAAI,OACJc,KAAK,SACLC,QAAQ,aACRC,QAhDY,WACpBC,EAAAA,EAAIzC,OACD0C,wBAAwB1C,EAAQ,CAC/B2C,OAAQ1C,EACR2C,OAAQnC,IAEToC,MAAK,WACJ9C,GACF,IACC+C,OAAM,SAACC,GACN5C,GAAS6C,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,EAAIG,SACjDnD,GACF,GACJ,EAoCU6B,MAAO,gBAMnB,C","sources":["screens/Console/Buckets/BucketDetails/EditAccessRule.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { AddAccessRuleIcon, Button, FormLayout, Grid, Select } from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\n\ninterface IEditAccessRule {\n modalOpen: boolean;\n onClose: () => any;\n bucket: string;\n toEdit: string;\n initial: string;\n}\n\nconst EditAccessRule = ({\n modalOpen,\n onClose,\n bucket,\n toEdit,\n initial,\n}: IEditAccessRule) => {\n const dispatch = useAppDispatch();\n const [selectedAccess, setSelectedAccess] = useState(initial);\n\n const accessOptions = [\n { label: \"readonly\", value: \"readonly\" },\n { label: \"writeonly\", value: \"writeonly\" },\n { label: \"readwrite\", value: \"readwrite\" },\n ];\n\n const resetForm = () => {\n setSelectedAccess(initial);\n };\n\n const createProcess = () => {\n api.bucket\n .setAccessRuleWithBucket(bucket, {\n prefix: toEdit,\n access: selectedAccess,\n })\n .then(() => {\n onClose();\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n onClose();\n });\n };\n\n return (\n \n }\n >\n \n {\n setSelectedAccess(value);\n }}\n label=\"Access\"\n value={selectedAccess}\n options={accessOptions}\n disabled={false}\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default EditAccessRule;\n"],"names":["_ref","modalOpen","onClose","bucket","toEdit","initial","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","selectedAccess","setSelectedAccess","_jsx","Fragment","children","_jsxs","ModalWrapper","title","concat","titleIcon","AddAccessRuleIcon","FormLayout","containerPadding","withBorders","Select","id","name","onChange","value","label","options","disabled","Grid","item","xs","sx","modalStyleUtils","modalButtonBar","Button","type","variant","onClick","api","setAccessRuleWithBucket","prefix","access","then","catch","err","setErrorSnackMessage","errorToHandler","error"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/8455.c65159aa.chunk.js b/portal-ui/build/static/js/8455.c65159aa.chunk.js deleted file mode 100644 index 78699ce18..000000000 --- a/portal-ui/build/static/js/8455.c65159aa.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[8455],{58455:function(e,n,l){l.r(n);var a=l(29439),t=l(1413),i=l(72791),s=l(56028),o=l(61889),c=l(29945),r=l(11135),d=l(25787),u=l(23814),x=l(90673),h=l(87995),p=l(81551),f=l(31776),m=l(82342),b=l(80184);n.default=(0,d.Z)((function(e){return(0,r.Z)((0,t.Z)((0,t.Z)({},u.ID),u.bK))}))((function(e){var n=e.modalOpen,l=e.onClose,t=e.classes,r=e.bucket,d=e.toEdit,u=e.initial,Z=(0,p.TL)(),v=(0,i.useState)(u),j=(0,a.Z)(v,2),g=j[0],C=j[1];return(0,b.jsx)(i.Fragment,{children:(0,b.jsx)(s.Z,{modalOpen:n,title:"Edit Anonymous Access Rule for ".concat("".concat(r,"/").concat(d||"")),onClose:l,titleIcon:(0,b.jsx)(c.sR0,{}),children:(0,b.jsxs)(o.ZP,{container:!0,children:[(0,b.jsx)(o.ZP,{item:!0,xs:12,className:t.spacerTop,children:(0,b.jsx)(x.Z,{id:"access",name:"Access",onChange:function(e){C(e.target.value)},label:"Access",value:g,options:[{label:"readonly",value:"readonly"},{label:"writeonly",value:"writeonly"},{label:"readwrite",value:"readwrite"}],disabled:!1})}),(0,b.jsxs)(o.ZP,{item:!0,xs:12,className:t.modalButtonBar,children:[(0,b.jsx)(c.zxk,{id:"clear",type:"button",variant:"regular",onClick:function(){C(u)},label:"Clear"}),(0,b.jsx)(c.zxk,{id:"save",type:"submit",variant:"callAction",onClick:function(){f.h.bucket.setAccessRuleWithBucket(r,{prefix:d,access:g}).then((function(){l()})).catch((function(e){Z((0,h.Ih)((0,m.g)(e.error))),l()}))},label:"Save"})]})]})})})}))},90673:function(e,n,l){var a=l(1413),t=l(72791),i=l(61889),s=l(886),o=l(30829),c=l(20068),r=l(68096),d=l(58406),u=l(77865),x=l(11135),h=l(25787),p=l(23814),f=l(29945),m=l(80184),b=(0,h.Z)((function(e){return(0,x.Z)({root:{height:38,lineHeight:1,"label + &":{marginTop:e.spacing(3)}},input:{height:38,position:"relative",color:"#07193E",fontSize:13,fontWeight:600,padding:"8px 20px 10px 10px",border:"#e5e5e5 1px solid",borderRadius:4,display:"flex",alignItems:"center","&:hover":{borderColor:"#393939"},"&:focus":{backgroundColor:"#fff"}}})}))(s.ZP);n.Z=(0,h.Z)((function(e){return(0,x.Z)((0,a.Z)((0,a.Z)((0,a.Z)({},p.YI),p.Hr),{},{fieldContainer:{display:"flex","@media (max-width: 600px)":{flexFlow:"column"}}}))}))((function(e){var n=e.classes,l=e.id,a=e.name,s=e.onChange,x=e.options,h=e.label,p=e.tooltip,Z=void 0===p?"":p,v=e.value,j=e.disabled,g=void 0!==j&&j;return(0,m.jsx)(t.Fragment,{children:(0,m.jsxs)(i.ZP,{item:!0,xs:12,className:n.fieldContainer,children:[""!==h&&(0,m.jsxs)(o.Z,{htmlFor:l,className:n.inputLabel,children:[(0,m.jsx)("span",{children:h}),""!==Z&&(0,m.jsx)("div",{className:n.tooltipContainer,children:(0,m.jsx)(c.Z,{title:Z,placement:"top-start",children:(0,m.jsx)("div",{className:n.tooltip,children:(0,m.jsx)(f.byK,{})})})})]}),(0,m.jsx)(r.Z,{fullWidth:!0,children:(0,m.jsx)(d.Z,{id:l,name:a,value:v,onChange:s,input:(0,m.jsx)(b,{}),disabled:g,children:x.map((function(e){return(0,m.jsx)(u.Z,{value:e.value,children:e.label},"select-".concat(a,"-").concat(e.label))}))})})]})})}))}}]); -//# sourceMappingURL=8455.c65159aa.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/8455.c65159aa.chunk.js.map b/portal-ui/build/static/js/8455.c65159aa.chunk.js.map deleted file mode 100644 index 18791c884..000000000 --- a/portal-ui/build/static/js/8455.c65159aa.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/8455.c65159aa.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/EditAccessRule.tsx","screens/Console/Common/FormComponents/SelectWrapper/SelectWrapper.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { Grid } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport { AddAccessRuleIcon, Button } from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n modalStyleUtils,\n spacingUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IEditAccessRule {\n classes: any;\n modalOpen: boolean;\n onClose: () => any;\n bucket: string;\n toEdit: string;\n initial: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalStyleUtils,\n ...spacingUtils,\n });\n\nconst EditAccessRule = ({\n modalOpen,\n onClose,\n classes,\n bucket,\n toEdit,\n initial,\n}: IEditAccessRule) => {\n const dispatch = useAppDispatch();\n const [selectedAccess, setSelectedAccess] = useState(initial);\n\n const accessOptions = [\n { label: \"readonly\", value: \"readonly\" },\n { label: \"writeonly\", value: \"writeonly\" },\n { label: \"readwrite\", value: \"readwrite\" },\n ];\n\n const resetForm = () => {\n setSelectedAccess(initial);\n };\n\n const createProcess = () => {\n api.bucket\n .setAccessRuleWithBucket(bucket, {\n prefix: toEdit,\n access: selectedAccess,\n })\n .then(() => {\n onClose();\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n onClose();\n });\n };\n\n return (\n \n }\n >\n \n \n {\n setSelectedAccess(e.target.value);\n }}\n label=\"Access\"\n value={selectedAccess}\n options={accessOptions}\n disabled={false}\n />\n \n \n \n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(EditAccessRule);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n FormControl,\n InputBase,\n InputLabel,\n MenuItem,\n Select,\n SelectChangeEvent,\n Tooltip,\n} from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\nexport interface selectorTypes {\n label: string;\n value: string;\n}\n\ninterface SelectProps {\n options: selectorTypes[];\n value: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n onChange: (e: SelectChangeEvent) => void;\n disabled?: boolean;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n fieldContainer: {\n display: \"flex\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n height: 38,\n lineHeight: 1,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n },\n input: {\n height: 38,\n position: \"relative\",\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n padding: \"8px 20px 10px 10px\",\n border: \"#e5e5e5 1px solid\",\n borderRadius: 4,\n display: \"flex\",\n alignItems: \"center\",\n \"&:hover\": {\n borderColor: \"#393939\",\n },\n \"&:focus\": {\n backgroundColor: \"#fff\",\n },\n },\n }),\n)(InputBase);\n\nconst SelectWrapper = ({\n classes,\n id,\n name,\n onChange,\n options,\n label,\n tooltip = \"\",\n value,\n disabled = false,\n}: SelectProps) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n \n }\n disabled={disabled}\n >\n {options.map((option) => (\n \n {option.label}\n \n ))}\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(SelectWrapper);\n"],"names":["withStyles","theme","createStyles","_objectSpread","modalStyleUtils","spacingUtils","_ref","modalOpen","onClose","classes","bucket","toEdit","initial","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","selectedAccess","setSelectedAccess","_jsx","React","children","ModalWrapper","title","concat","titleIcon","AddAccessRuleIcon","_jsxs","Grid","container","item","xs","className","spacerTop","SelectWrapper","id","name","onChange","e","target","value","label","options","disabled","modalButtonBar","Button","type","variant","onClick","api","setAccessRuleWithBucket","prefix","access","then","catch","err","setErrorSnackMessage","errorToHandler","error","SelectStyled","root","height","lineHeight","marginTop","spacing","input","position","color","fontSize","fontWeight","padding","border","borderRadius","display","alignItems","borderColor","backgroundColor","InputBase","fieldBasic","tooltipHelper","fieldContainer","flexFlow","_ref$tooltip","tooltip","_ref$disabled","InputLabel","htmlFor","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","FormControl","fullWidth","Select","map","option","MenuItem"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/852.51235900.chunk.js b/portal-ui/build/static/js/852.51235900.chunk.js deleted file mode 100644 index 53d59b3a0..000000000 --- a/portal-ui/build/static/js/852.51235900.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[852,4882,7981,1569,9581,6662,222],{98946:function(e,t,r){"use strict";var o=r(64836);t.Z=void 0;var n=o(r(45649)),a=r(80184),i=(0,n.default)((0,a.jsx)("path",{d:"M16.59 7.58 10 14.17l-3.59-3.58L5 12l5 5 8-8zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"CheckCircleOutline");t.Z=i},15146:function(e,t,r){"use strict";var o=r(64836);t.Z=void 0;var n=o(r(45649)),a=r(80184),i=(0,n.default)((0,a.jsx)("path",{d:"M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"ErrorOutline");t.Z=i},77961:function(e,t,r){"use strict";var o=r(64836);t.Z=void 0;var n=o(r(45649)),a=r(80184),i=(0,n.default)((0,a.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z"}),"Help");t.Z=i},3579:function(e,t,r){"use strict";var o=r(64836);t.Z=void 0;var n=o(r(45649)),a=r(80184),i=(0,n.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=i},20165:function(e,t,r){"use strict";var o=r(64836);t.Z=void 0;var n=o(r(45649)),a=r(80184),i=(0,n.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=i},45649:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return o.createSvgIcon}});var o=r(28610)},94454:function(e,t,r){"use strict";r.d(t,{Z:function(){return M}});var o=r(4942),n=r(63366),a=r(87462),i=r(72791),s=r(28182),c=r(94419),l=r(12065),d=r(97278),u=r(76189),p=r(80184),m=(0,u.Z)((0,p.jsx)("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}),"CheckBoxOutlineBlank"),v=(0,u.Z)((0,p.jsx)("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"}),"CheckBox"),f=(0,u.Z)((0,p.jsx)("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z"}),"IndeterminateCheckBox"),h=r(14036),Z=r(31402),b=r(66934),g=r(75878),y=r(21217);function x(e){return(0,y.Z)("MuiCheckbox",e)}var k=(0,g.Z)("MuiCheckbox",["root","checked","disabled","indeterminate","colorPrimary","colorSecondary"]),w=["checkedIcon","color","icon","indeterminate","indeterminateIcon","inputProps","size","className"],S=(0,b.ZP)(d.Z,{shouldForwardProp:function(e){return(0,b.FO)(e)||"classes"===e},name:"MuiCheckbox",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[t.root,r.indeterminate&&t.indeterminate,"default"!==r.color&&t["color".concat((0,h.Z)(r.color))]]}})((function(e){var t,r=e.theme,n=e.ownerState;return(0,a.Z)({color:(r.vars||r).palette.text.secondary},!n.disableRipple&&{"&:hover":{backgroundColor:r.vars?"rgba(".concat("default"===n.color?r.vars.palette.action.activeChannel:r.vars.palette.primary.mainChannel," / ").concat(r.vars.palette.action.hoverOpacity,")"):(0,l.Fq)("default"===n.color?r.palette.action.active:r.palette[n.color].main,r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==n.color&&(t={},(0,o.Z)(t,"&.".concat(k.checked,", &.").concat(k.indeterminate),{color:(r.vars||r).palette[n.color].main}),(0,o.Z)(t,"&.".concat(k.disabled),{color:(r.vars||r).palette.action.disabled}),t))})),C=(0,p.jsx)(v,{}),z=(0,p.jsx)(m,{}),I=(0,p.jsx)(f,{}),M=i.forwardRef((function(e,t){var r,o,l=(0,Z.Z)({props:e,name:"MuiCheckbox"}),d=l.checkedIcon,u=void 0===d?C:d,m=l.color,v=void 0===m?"primary":m,f=l.icon,b=void 0===f?z:f,g=l.indeterminate,y=void 0!==g&&g,k=l.indeterminateIcon,M=void 0===k?I:k,P=l.inputProps,R=l.size,F=void 0===R?"medium":R,N=l.className,j=(0,n.Z)(l,w),O=y?M:b,L=y?M:u,A=(0,a.Z)({},l,{color:v,indeterminate:y,size:F}),B=function(e){var t=e.classes,r=e.indeterminate,o=e.color,n={root:["root",r&&"indeterminate","color".concat((0,h.Z)(o))]},i=(0,c.Z)(n,x,t);return(0,a.Z)({},t,i)}(A);return(0,p.jsx)(S,(0,a.Z)({type:"checkbox",inputProps:(0,a.Z)({"data-indeterminate":y},P),icon:i.cloneElement(O,{fontSize:null!=(r=O.props.fontSize)?r:F}),checkedIcon:i.cloneElement(L,{fontSize:null!=(o=L.props.fontSize)?o:F}),ownerState:A,ref:t,className:(0,s.Z)(B.root,N)},j,{classes:B}))}))},93840:function(e,t,r){"use strict";var o=r(72791).createContext(void 0);t.Z=o},76147:function(e,t,r){"use strict";function o(e){var t=e.props,r=e.states,o=e.muiFormControl;return r.reduce((function(e,r){return e[r]=t[r],o&&"undefined"===typeof t[r]&&(e[r]=o[r]),e}),{})}r.d(t,{Z:function(){return o}})},52930:function(e,t,r){"use strict";r.d(t,{Z:function(){return a}});var o=r(72791),n=r(93840);function a(){return o.useContext(n.Z)}},17133:function(e,t,r){"use strict";var o=r(4942),n=r(63366),a=r(87462),i=r(72791),s=r(28182),c=r(94419),l=r(76147),d=r(52930),u=r(14036),p=r(31402),m=r(66934),v=r(10843),f=r(80184),h=["children","className","color","component","disabled","error","filled","focused","required"],Z=(0,m.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return(0,a.Z)({},t.root,"secondary"===r.color&&t.colorSecondary,r.filled&&t.filled)}})((function(e){var t,r=e.theme,n=e.ownerState;return(0,a.Z)({color:(r.vars||r).palette.text.secondary},r.typography.body1,(t={lineHeight:"1.4375em",padding:0,position:"relative"},(0,o.Z)(t,"&.".concat(v.Z.focused),{color:(r.vars||r).palette[n.color].main}),(0,o.Z)(t,"&.".concat(v.Z.disabled),{color:(r.vars||r).palette.text.disabled}),(0,o.Z)(t,"&.".concat(v.Z.error),{color:(r.vars||r).palette.error.main}),t))})),b=(0,m.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,t){return t.asterisk}})((function(e){var t=e.theme;return(0,o.Z)({},"&.".concat(v.Z.error),{color:(t.vars||t).palette.error.main})})),g=i.forwardRef((function(e,t){var r=(0,p.Z)({props:e,name:"MuiFormLabel"}),o=r.children,i=r.className,m=r.component,g=void 0===m?"label":m,y=(0,n.Z)(r,h),x=(0,d.Z)(),k=(0,l.Z)({props:r,muiFormControl:x,states:["color","required","focused","disabled","error","filled"]}),w=(0,a.Z)({},r,{color:k.color||"primary",component:g,disabled:k.disabled,error:k.error,filled:k.filled,focused:k.focused,required:k.required}),S=function(e){var t=e.classes,r=e.color,o=e.focused,n=e.disabled,a=e.error,i=e.filled,s=e.required,l={root:["root","color".concat((0,u.Z)(r)),n&&"disabled",a&&"error",i&&"filled",o&&"focused",s&&"required"],asterisk:["asterisk",a&&"error"]};return(0,c.Z)(l,v.M,t)}(w);return(0,f.jsxs)(Z,(0,a.Z)({as:g,ownerState:w,className:(0,s.Z)(S.root,i),ref:t},y,{children:[o,k.required&&(0,f.jsxs)(b,{ownerState:w,"aria-hidden":!0,className:S.asterisk,children:["\u2009","*"]})]}))}));t.Z=g},10843:function(e,t,r){"use strict";r.d(t,{M:function(){return a}});var o=r(75878),n=r(21217);function a(e){return(0,n.Z)("MuiFormLabel",e)}var i=(0,o.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);t.Z=i},30829:function(e,t,r){"use strict";r.d(t,{Z:function(){return x}});var o=r(4942),n=r(63366),a=r(87462),i=r(72791),s=r(94419),c=r(28182),l=r(76147),d=r(52930),u=r(17133),p=r(10843),m=r(31402),v=r(66934),f=r(75878),h=r(21217);function Z(e){return(0,h.Z)("MuiInputLabel",e)}(0,f.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var b=r(80184),g=["disableAnimation","margin","shrink","variant","className"],y=(0,v.ZP)(u.Z,{shouldForwardProp:function(e){return(0,v.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[(0,o.Z)({},"& .".concat(p.Z.asterisk),t.asterisk),t.root,r.formControl&&t.formControl,"small"===r.size&&t.sizeSmall,r.shrink&&t.shrink,!r.disableAnimation&&t.animated,t[r.variant]]}})((function(e){var t=e.theme,r=e.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},r.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===r.size&&{transform:"translate(0, 17px) scale(1)"},r.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!r.disableAnimation&&{transition:t.transitions.create(["color","transform","max-width"],{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut})},"filled"===r.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(12px, 13px) scale(1)"},r.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===r.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===r.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(14px, 9px) scale(1)"},r.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),x=i.forwardRef((function(e,t){var r=(0,m.Z)({name:"MuiInputLabel",props:e}),o=r.disableAnimation,i=void 0!==o&&o,u=r.shrink,p=r.className,v=(0,n.Z)(r,g),f=(0,d.Z)(),h=u;"undefined"===typeof h&&f&&(h=f.filled||f.focused||f.adornedStart);var x=(0,l.Z)({props:r,muiFormControl:f,states:["size","variant","required"]}),k=(0,a.Z)({},r,{disableAnimation:i,formControl:f,shrink:h,size:x.size,variant:x.variant,required:x.required}),w=function(e){var t=e.classes,r=e.formControl,o=e.size,n=e.shrink,i={root:["root",r&&"formControl",!e.disableAnimation&&"animated",n&&"shrink","small"===o&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},c=(0,s.Z)(i,Z,t);return(0,a.Z)({},t,c)}(k);return(0,b.jsx)(y,(0,a.Z)({"data-shrink":h,ownerState:k,ref:t,className:(0,c.Z)(w.root,p)},v,{classes:w}))}))},15021:function(e,t,r){"use strict";r.d(t,{ZP:function(){return j}});var o=r(4942),n=r(63366),a=r(87462),i=r(72791),s=r(28182),c=r(94419),l=r(52474),d=r(12065),u=r(66934),p=r(31402),m=r(95080),v=r(19103),f=r(40162),h=r(42071),Z=r(66199),b=r(75878),g=r(21217);function y(e){return(0,g.Z)("MuiListItem",e)}var x=(0,b.Z)("MuiListItem",["root","container","focusVisible","dense","alignItemsFlexStart","disabled","divider","gutters","padding","button","secondaryAction","selected"]),k=r(34065);function w(e){return(0,g.Z)("MuiListItemSecondaryAction",e)}(0,b.Z)("MuiListItemSecondaryAction",["root","disableGutters"]);var S=r(80184),C=["className"],z=(0,u.ZP)("div",{name:"MuiListItemSecondaryAction",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[t.root,r.disableGutters&&t.disableGutters]}})((function(e){var t=e.ownerState;return(0,a.Z)({position:"absolute",right:16,top:"50%",transform:"translateY(-50%)"},t.disableGutters&&{right:0})})),I=i.forwardRef((function(e,t){var r=(0,p.Z)({props:e,name:"MuiListItemSecondaryAction"}),o=r.className,l=(0,n.Z)(r,C),d=i.useContext(Z.Z),u=(0,a.Z)({},r,{disableGutters:d.disableGutters}),m=function(e){var t=e.disableGutters,r=e.classes,o={root:["root",t&&"disableGutters"]};return(0,c.Z)(o,w,r)}(u);return(0,S.jsx)(z,(0,a.Z)({className:(0,s.Z)(m.root,o),ownerState:u,ref:t},l))}));I.muiName="ListItemSecondaryAction";var M=I,P=["className"],R=["alignItems","autoFocus","button","children","className","component","components","componentsProps","ContainerComponent","ContainerProps","dense","disabled","disableGutters","disablePadding","divider","focusVisibleClassName","secondaryAction","selected","slotProps","slots"],F=(0,u.ZP)("div",{name:"MuiListItem",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[t.root,r.dense&&t.dense,"flex-start"===r.alignItems&&t.alignItemsFlexStart,r.divider&&t.divider,!r.disableGutters&&t.gutters,!r.disablePadding&&t.padding,r.button&&t.button,r.hasSecondaryAction&&t.secondaryAction]}})((function(e){var t,r=e.theme,n=e.ownerState;return(0,a.Z)({display:"flex",justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",width:"100%",boxSizing:"border-box",textAlign:"left"},!n.disablePadding&&(0,a.Z)({paddingTop:8,paddingBottom:8},n.dense&&{paddingTop:4,paddingBottom:4},!n.disableGutters&&{paddingLeft:16,paddingRight:16},!!n.secondaryAction&&{paddingRight:48}),!!n.secondaryAction&&(0,o.Z)({},"& > .".concat(k.Z.root),{paddingRight:48}),(t={},(0,o.Z)(t,"&.".concat(x.focusVisible),{backgroundColor:(r.vars||r).palette.action.focus}),(0,o.Z)(t,"&.".concat(x.selected),(0,o.Z)({backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / ").concat(r.vars.palette.action.selectedOpacity,")"):(0,d.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity)},"&.".concat(x.focusVisible),{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / calc(").concat(r.vars.palette.action.selectedOpacity," + ").concat(r.vars.palette.action.focusOpacity,"))"):(0,d.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity+r.palette.action.focusOpacity)})),(0,o.Z)(t,"&.".concat(x.disabled),{opacity:(r.vars||r).palette.action.disabledOpacity}),t),"flex-start"===n.alignItems&&{alignItems:"flex-start"},n.divider&&{borderBottom:"1px solid ".concat((r.vars||r).palette.divider),backgroundClip:"padding-box"},n.button&&(0,o.Z)({transition:r.transitions.create("background-color",{duration:r.transitions.duration.shortest}),"&:hover":{textDecoration:"none",backgroundColor:(r.vars||r).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}}},"&.".concat(x.selected,":hover"),{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / calc(").concat(r.vars.palette.action.selectedOpacity," + ").concat(r.vars.palette.action.hoverOpacity,"))"):(0,d.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity+r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.primary.mainChannel," / ").concat(r.vars.palette.action.selectedOpacity,")"):(0,d.Fq)(r.palette.primary.main,r.palette.action.selectedOpacity)}}),n.hasSecondaryAction&&{paddingRight:48})})),N=(0,u.ZP)("li",{name:"MuiListItem",slot:"Container",overridesResolver:function(e,t){return t.container}})({position:"relative"}),j=i.forwardRef((function(e,t){var r=(0,p.Z)({props:e,name:"MuiListItem"}),o=r.alignItems,d=void 0===o?"center":o,u=r.autoFocus,b=void 0!==u&&u,g=r.button,k=void 0!==g&&g,w=r.children,C=r.className,z=r.component,I=r.components,j=void 0===I?{}:I,O=r.componentsProps,L=void 0===O?{}:O,A=r.ContainerComponent,B=void 0===A?"li":A,q=r.ContainerProps,T=(void 0===q?{}:q).className,E=r.dense,G=void 0!==E&&E,V=r.disabled,_=void 0!==V&&V,H=r.disableGutters,W=void 0!==H&&H,D=r.disablePadding,X=void 0!==D&&D,Y=r.divider,$=void 0!==Y&&Y,J=r.focusVisibleClassName,K=r.secondaryAction,Q=r.selected,U=void 0!==Q&&Q,ee=r.slotProps,te=void 0===ee?{}:ee,re=r.slots,oe=void 0===re?{}:re,ne=(0,n.Z)(r.ContainerProps,P),ae=(0,n.Z)(r,R),ie=i.useContext(Z.Z),se=i.useMemo((function(){return{dense:G||ie.dense||!1,alignItems:d,disableGutters:W}}),[d,ie.dense,G,W]),ce=i.useRef(null);(0,f.Z)((function(){b&&ce.current&&ce.current.focus()}),[b]);var le=i.Children.toArray(w),de=le.length&&(0,v.Z)(le[le.length-1],["ListItemSecondaryAction"]),ue=(0,a.Z)({},r,{alignItems:d,autoFocus:b,button:k,dense:se.dense,disabled:_,disableGutters:W,disablePadding:X,divider:$,hasSecondaryAction:de,selected:U}),pe=function(e){var t=e.alignItems,r=e.button,o=e.classes,n=e.dense,a=e.disabled,i={root:["root",n&&"dense",!e.disableGutters&&"gutters",!e.disablePadding&&"padding",e.divider&&"divider",a&&"disabled",r&&"button","flex-start"===t&&"alignItemsFlexStart",e.hasSecondaryAction&&"secondaryAction",e.selected&&"selected"],container:["container"]};return(0,c.Z)(i,y,o)}(ue),me=(0,h.Z)(ce,t),ve=oe.root||j.Root||F,fe=te.root||L.root||{},he=(0,a.Z)({className:(0,s.Z)(pe.root,fe.className,C),disabled:_},ae),Ze=z||"li";return k&&(he.component=z||"div",he.focusVisibleClassName=(0,s.Z)(x.focusVisible,J),Ze=m.Z),de?(Ze=he.component||z?Ze:"div","li"===B&&("li"===Ze?Ze="div":"li"===he.component&&(he.component="div")),(0,S.jsx)(Z.Z.Provider,{value:se,children:(0,S.jsxs)(N,(0,a.Z)({as:B,className:(0,s.Z)(pe.container,T),ref:me,ownerState:ue},ne,{children:[(0,S.jsx)(ve,(0,a.Z)({},fe,!(0,l.Z)(ve)&&{as:Ze,ownerState:(0,a.Z)({},ue,fe.ownerState)},he,{children:le})),le.pop()]}))})):(0,S.jsx)(Z.Z.Provider,{value:se,children:(0,S.jsxs)(ve,(0,a.Z)({},fe,{as:Ze,ref:me},!(0,l.Z)(ve)&&{ownerState:(0,a.Z)({},ue,fe.ownerState)},he,{children:[le,K&&(0,S.jsx)(M,{children:K})]}))})}))},34065:function(e,t,r){"use strict";r.d(t,{t:function(){return a}});var o=r(75878),n=r(21217);function a(e){return(0,n.Z)("MuiListItemButton",e)}var i=(0,o.Z)("MuiListItemButton",["root","focusVisible","dense","alignItemsFlexStart","disabled","divider","gutters","selected"]);t.Z=i},49900:function(e,t,r){"use strict";var o=r(4942),n=r(63366),a=r(87462),i=r(72791),s=r(28182),c=r(94419),l=r(20890),d=r(66199),u=r(31402),p=r(66934),m=r(29849),v=r(80184),f=["children","className","disableTypography","inset","primary","primaryTypographyProps","secondary","secondaryTypographyProps"],h=(0,p.ZP)("div",{name:"MuiListItemText",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[(0,o.Z)({},"& .".concat(m.Z.primary),t.primary),(0,o.Z)({},"& .".concat(m.Z.secondary),t.secondary),t.root,r.inset&&t.inset,r.primary&&r.secondary&&t.multiline,r.dense&&t.dense]}})((function(e){var t=e.ownerState;return(0,a.Z)({flex:"1 1 auto",minWidth:0,marginTop:4,marginBottom:4},t.primary&&t.secondary&&{marginTop:6,marginBottom:6},t.inset&&{paddingLeft:56})})),Z=i.forwardRef((function(e,t){var r=(0,u.Z)({props:e,name:"MuiListItemText"}),o=r.children,p=r.className,Z=r.disableTypography,b=void 0!==Z&&Z,g=r.inset,y=void 0!==g&&g,x=r.primary,k=r.primaryTypographyProps,w=r.secondary,S=r.secondaryTypographyProps,C=(0,n.Z)(r,f),z=i.useContext(d.Z).dense,I=null!=x?x:o,M=w,P=(0,a.Z)({},r,{disableTypography:b,inset:y,primary:!!I,secondary:!!M,dense:z}),R=function(e){var t=e.classes,r=e.inset,o=e.primary,n=e.secondary,a={root:["root",r&&"inset",e.dense&&"dense",o&&n&&"multiline"],primary:["primary"],secondary:["secondary"]};return(0,c.Z)(a,m.L,t)}(P);return null==I||I.type===l.Z||b||(I=(0,v.jsx)(l.Z,(0,a.Z)({variant:z?"body2":"body1",className:R.primary,component:null!=k&&k.variant?void 0:"span",display:"block"},k,{children:I}))),null==M||M.type===l.Z||b||(M=(0,v.jsx)(l.Z,(0,a.Z)({variant:"body2",className:R.secondary,color:"text.secondary",display:"block"},S,{children:M}))),(0,v.jsxs)(h,(0,a.Z)({className:(0,s.Z)(R.root,p),ownerState:P,ref:t},C,{children:[I,M]}))}));t.Z=Z},9955:function(e,t,r){"use strict";r.d(t,{Z:function(){return S}});var o=r(4942),n=r(63366),a=r(87462),i=r(72791),s=r(28182),c=r(94419),l=r(12065),d=r(14036),u=r(97278),p=r(31402),m=r(66934),v=r(75878),f=r(21217);function h(e){return(0,f.Z)("MuiSwitch",e)}var Z=(0,v.Z)("MuiSwitch",["root","edgeStart","edgeEnd","switchBase","colorPrimary","colorSecondary","sizeSmall","sizeMedium","checked","disabled","input","thumb","track"]),b=r(80184),g=["className","color","edge","size","sx"],y=(0,m.ZP)("span",{name:"MuiSwitch",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[t.root,r.edge&&t["edge".concat((0,d.Z)(r.edge))],t["size".concat((0,d.Z)(r.size))]]}})((function(e){var t,r=e.ownerState;return(0,a.Z)({display:"inline-flex",width:58,height:38,overflow:"hidden",padding:12,boxSizing:"border-box",position:"relative",flexShrink:0,zIndex:0,verticalAlign:"middle","@media print":{colorAdjust:"exact"}},"start"===r.edge&&{marginLeft:-8},"end"===r.edge&&{marginRight:-8},"small"===r.size&&(t={width:40,height:24,padding:7},(0,o.Z)(t,"& .".concat(Z.thumb),{width:16,height:16}),(0,o.Z)(t,"& .".concat(Z.switchBase),(0,o.Z)({padding:4},"&.".concat(Z.checked),{transform:"translateX(16px)"})),t))})),x=(0,m.ZP)(u.Z,{name:"MuiSwitch",slot:"SwitchBase",overridesResolver:function(e,t){var r=e.ownerState;return[t.switchBase,(0,o.Z)({},"& .".concat(Z.input),t.input),"default"!==r.color&&t["color".concat((0,d.Z)(r.color))]]}})((function(e){var t,r=e.theme;return t={position:"absolute",top:0,left:0,zIndex:1,color:r.vars?r.vars.palette.Switch.defaultColor:"".concat("light"===r.palette.mode?r.palette.common.white:r.palette.grey[300]),transition:r.transitions.create(["left","transform"],{duration:r.transitions.duration.shortest})},(0,o.Z)(t,"&.".concat(Z.checked),{transform:"translateX(20px)"}),(0,o.Z)(t,"&.".concat(Z.disabled),{color:r.vars?r.vars.palette.Switch.defaultDisabledColor:"".concat("light"===r.palette.mode?r.palette.grey[100]:r.palette.grey[600])}),(0,o.Z)(t,"&.".concat(Z.checked," + .").concat(Z.track),{opacity:.5}),(0,o.Z)(t,"&.".concat(Z.disabled," + .").concat(Z.track),{opacity:r.vars?r.vars.opacity.switchTrackDisabled:"".concat("light"===r.palette.mode?.12:.2)}),(0,o.Z)(t,"& .".concat(Z.input),{left:"-100%",width:"300%"}),t}),(function(e){var t,r=e.theme,n=e.ownerState;return(0,a.Z)({"&:hover":{backgroundColor:r.vars?"rgba(".concat(r.vars.palette.action.activeChannel," / ").concat(r.vars.palette.action.hoverOpacity,")"):(0,l.Fq)(r.palette.action.active,r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==n.color&&(t={},(0,o.Z)(t,"&.".concat(Z.checked),(0,o.Z)({color:(r.vars||r).palette[n.color].main,"&:hover":{backgroundColor:r.vars?"rgba(".concat(r.vars.palette[n.color].mainChannel," / ").concat(r.vars.palette.action.hoverOpacity,")"):(0,l.Fq)(r.palette[n.color].main,r.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"&.".concat(Z.disabled),{color:r.vars?r.vars.palette.Switch["".concat(n.color,"DisabledColor")]:"".concat("light"===r.palette.mode?(0,l.$n)(r.palette[n.color].main,.62):(0,l._j)(r.palette[n.color].main,.55))})),(0,o.Z)(t,"&.".concat(Z.checked," + .").concat(Z.track),{backgroundColor:(r.vars||r).palette[n.color].main}),t))})),k=(0,m.ZP)("span",{name:"MuiSwitch",slot:"Track",overridesResolver:function(e,t){return t.track}})((function(e){var t=e.theme;return{height:"100%",width:"100%",borderRadius:7,zIndex:-1,transition:t.transitions.create(["opacity","background-color"],{duration:t.transitions.duration.shortest}),backgroundColor:t.vars?t.vars.palette.common.onBackground:"".concat("light"===t.palette.mode?t.palette.common.black:t.palette.common.white),opacity:t.vars?t.vars.opacity.switchTrack:"".concat("light"===t.palette.mode?.38:.3)}})),w=(0,m.ZP)("span",{name:"MuiSwitch",slot:"Thumb",overridesResolver:function(e,t){return t.thumb}})((function(e){var t=e.theme;return{boxShadow:(t.vars||t).shadows[1],backgroundColor:"currentColor",width:20,height:20,borderRadius:"50%"}})),S=i.forwardRef((function(e,t){var r=(0,p.Z)({props:e,name:"MuiSwitch"}),o=r.className,i=r.color,l=void 0===i?"primary":i,u=r.edge,m=void 0!==u&&u,v=r.size,f=void 0===v?"medium":v,Z=r.sx,S=(0,n.Z)(r,g),C=(0,a.Z)({},r,{color:l,edge:m,size:f}),z=function(e){var t=e.classes,r=e.edge,o=e.size,n=e.color,i=e.checked,s=e.disabled,l={root:["root",r&&"edge".concat((0,d.Z)(r)),"size".concat((0,d.Z)(o))],switchBase:["switchBase","color".concat((0,d.Z)(n)),i&&"checked",s&&"disabled"],thumb:["thumb"],track:["track"],input:["input"]},u=(0,c.Z)(l,h,t);return(0,a.Z)({},t,u)}(C),I=(0,b.jsx)(w,{className:z.thumb,ownerState:C});return(0,b.jsxs)(y,{className:(0,s.Z)(z.root,o),sx:Z,ownerState:C,children:[(0,b.jsx)(x,(0,a.Z)({type:"checkbox",icon:I,checkedIcon:I,ref:t,ownerState:C},S,{classes:(0,a.Z)({},z,{root:z.switchBase})})),(0,b.jsx)(k,{className:z.track,ownerState:C})]})}))},97278:function(e,t,r){"use strict";r.d(t,{Z:function(){return x}});var o=r(29439),n=r(63366),a=r(87462),i=r(72791),s=r(28182),c=r(94419),l=r(14036),d=r(66934),u=r(98278),p=r(52930),m=r(95080),v=r(75878),f=r(21217);function h(e){return(0,f.Z)("PrivateSwitchBase",e)}(0,v.Z)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var Z=r(80184),b=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],g=(0,d.ZP)(m.Z)((function(e){var t=e.ownerState;return(0,a.Z)({padding:9,borderRadius:"50%"},"start"===t.edge&&{marginLeft:"small"===t.size?-3:-12},"end"===t.edge&&{marginRight:"small"===t.size?-3:-12})})),y=(0,d.ZP)("input")({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),x=i.forwardRef((function(e,t){var r=e.autoFocus,i=e.checked,d=e.checkedIcon,m=e.className,v=e.defaultChecked,f=e.disabled,x=e.disableFocusRipple,k=void 0!==x&&x,w=e.edge,S=void 0!==w&&w,C=e.icon,z=e.id,I=e.inputProps,M=e.inputRef,P=e.name,R=e.onBlur,F=e.onChange,N=e.onFocus,j=e.readOnly,O=e.required,L=void 0!==O&&O,A=e.tabIndex,B=e.type,q=e.value,T=(0,n.Z)(e,b),E=(0,u.Z)({controlled:i,default:Boolean(v),name:"SwitchBase",state:"checked"}),G=(0,o.Z)(E,2),V=G[0],_=G[1],H=(0,p.Z)(),W=f;H&&"undefined"===typeof W&&(W=H.disabled);var D="checkbox"===B||"radio"===B,X=(0,a.Z)({},e,{checked:V,disabled:W,disableFocusRipple:k,edge:S}),Y=function(e){var t=e.classes,r=e.checked,o=e.disabled,n=e.edge,a={root:["root",r&&"checked",o&&"disabled",n&&"edge".concat((0,l.Z)(n))],input:["input"]};return(0,c.Z)(a,h,t)}(X);return(0,Z.jsxs)(g,(0,a.Z)({component:"span",className:(0,s.Z)(Y.root,m),centerRipple:!0,focusRipple:!k,disabled:W,tabIndex:null,role:void 0,onFocus:function(e){N&&N(e),H&&H.onFocus&&H.onFocus(e)},onBlur:function(e){R&&R(e),H&&H.onBlur&&H.onBlur(e)},ownerState:X,ref:t},T,{children:[(0,Z.jsx)(y,(0,a.Z)({autoFocus:r,checked:i,defaultChecked:v,className:Y.input,disabled:W,id:D?z:void 0,name:P,onChange:function(e){if(!e.nativeEvent.defaultPrevented){var t=e.target.checked;_(t),F&&F(e,t)}},readOnly:j,ref:M,required:L,ownerState:X,tabIndex:A,type:B},"checkbox"===B&&void 0===q?{}:{value:q},I)),V?d:C]}))}))},31260:function(e,t,r){"use strict";var o=r(78949);t.Z=o.Z},28610:function(e,t,r){"use strict";r.r(t),r.d(t,{capitalize:function(){return n.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return c},isMuiElement:function(){return l.Z},ownerDocument:function(){return d.Z},ownerWindow:function(){return u.Z},requirePropFactory:function(){return p},setRef:function(){return m},unstable_ClassNameGenerator:function(){return x},unstable_useEnhancedEffect:function(){return v.Z},unstable_useId:function(){return f.Z},unsupportedProp:function(){return h},useControlled:function(){return Z.Z},useEventCallback:function(){return b.Z},useForkRef:function(){return g.Z},useIsFocusVisible:function(){return y.Z}});var o=r(55902),n=r(14036),a=r(31260),i=r(76189),s=r(83199);var c=function(e,t){return function(){return null}},l=r(19103),d=r(98301),u=r(17602);r(87462);var p=function(e,t){return function(){return null}},m=r(62971).Z,v=r(40162),f=r(67384);var h=function(e,t,r,o,n){return null},Z=r(98278),b=r(89683),g=r(42071),y=r(23031),x={configure:function(e){o.Z.configure(e)}}},19103:function(e,t,r){"use strict";r.d(t,{Z:function(){return n}});var o=r(72791);var n=function(e,t){return o.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}},78949:function(e,t,r){"use strict";function o(){for(var e=arguments.length,t=new Array(e),r=0;r {\n const {\n classes,\n indeterminate,\n color\n } = ownerState;\n const slots = {\n root: ['root', indeterminate && 'indeterminate', `color${capitalize(color)}`]\n };\n const composedClasses = composeClasses(slots, getCheckboxUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst CheckboxRoot = styled(SwitchBase, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiCheckbox',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.indeterminate && styles.indeterminate, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, !ownerState.disableRipple && {\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${ownerState.color === 'default' ? theme.vars.palette.action.activeChannel : theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(ownerState.color === 'default' ? theme.palette.action.active : theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${checkboxClasses.checked}, &.${checkboxClasses.indeterminate}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${checkboxClasses.disabled}`]: {\n color: (theme.vars || theme).palette.action.disabled\n }\n}));\nconst defaultCheckedIcon = /*#__PURE__*/_jsx(CheckBoxIcon, {});\nconst defaultIcon = /*#__PURE__*/_jsx(CheckBoxOutlineBlankIcon, {});\nconst defaultIndeterminateIcon = /*#__PURE__*/_jsx(IndeterminateCheckBoxIcon, {});\nconst Checkbox = /*#__PURE__*/React.forwardRef(function Checkbox(inProps, ref) {\n var _icon$props$fontSize, _indeterminateIcon$pr;\n const props = useThemeProps({\n props: inProps,\n name: 'MuiCheckbox'\n });\n const {\n checkedIcon = defaultCheckedIcon,\n color = 'primary',\n icon: iconProp = defaultIcon,\n indeterminate = false,\n indeterminateIcon: indeterminateIconProp = defaultIndeterminateIcon,\n inputProps,\n size = 'medium',\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const icon = indeterminate ? indeterminateIconProp : iconProp;\n const indeterminateIcon = indeterminate ? indeterminateIconProp : checkedIcon;\n const ownerState = _extends({}, props, {\n color,\n indeterminate,\n size\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(CheckboxRoot, _extends({\n type: \"checkbox\",\n inputProps: _extends({\n 'data-indeterminate': indeterminate\n }, inputProps),\n icon: /*#__PURE__*/React.cloneElement(icon, {\n fontSize: (_icon$props$fontSize = icon.props.fontSize) != null ? _icon$props$fontSize : size\n }),\n checkedIcon: /*#__PURE__*/React.cloneElement(indeterminateIcon, {\n fontSize: (_indeterminateIcon$pr = indeterminateIcon.props.fontSize) != null ? _indeterminateIcon$pr : size\n }),\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Checkbox.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n * @default \n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The default checked state. Use when the component is not controlled.\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * The icon to display when the component is unchecked.\n * @default \n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * If `true`, the component appears indeterminate.\n * This does not set the native input element to indeterminate due\n * to inconsistent behavior across browsers.\n * However, we set a `data-indeterminate` attribute on the `input`.\n * @default false\n */\n indeterminate: PropTypes.bool,\n /**\n * The icon to display when the component is indeterminate.\n * @default \n */\n indeterminateIcon: PropTypes.node,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense checkbox styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n */\n value: PropTypes.any\n} : void 0;\nexport default Checkbox;","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getListItemUtilityClass(slot) {\n return generateUtilityClass('MuiListItem', slot);\n}\nconst listItemClasses = generateUtilityClasses('MuiListItem', ['root', 'container', 'focusVisible', 'dense', 'alignItemsFlexStart', 'disabled', 'divider', 'gutters', 'padding', 'button', 'secondaryAction', 'selected']);\nexport default listItemClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getListItemSecondaryActionClassesUtilityClass(slot) {\n return generateUtilityClass('MuiListItemSecondaryAction', slot);\n}\nconst listItemSecondaryActionClasses = generateUtilityClasses('MuiListItemSecondaryAction', ['root', 'disableGutters']);\nexport default listItemSecondaryActionClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport ListContext from '../List/ListContext';\nimport { getListItemSecondaryActionClassesUtilityClass } from './listItemSecondaryActionClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n disableGutters,\n classes\n } = ownerState;\n const slots = {\n root: ['root', disableGutters && 'disableGutters']\n };\n return composeClasses(slots, getListItemSecondaryActionClassesUtilityClass, classes);\n};\nconst ListItemSecondaryActionRoot = styled('div', {\n name: 'MuiListItemSecondaryAction',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.disableGutters && styles.disableGutters];\n }\n})(({\n ownerState\n}) => _extends({\n position: 'absolute',\n right: 16,\n top: '50%',\n transform: 'translateY(-50%)'\n}, ownerState.disableGutters && {\n right: 0\n}));\n\n/**\n * Must be used as the last child of ListItem to function properly.\n */\nconst ListItemSecondaryAction = /*#__PURE__*/React.forwardRef(function ListItemSecondaryAction(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItemSecondaryAction'\n });\n const {\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const context = React.useContext(ListContext);\n const ownerState = _extends({}, props, {\n disableGutters: context.disableGutters\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(ListItemSecondaryActionRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemSecondaryAction.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component, normally an `IconButton` or selection control.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nListItemSecondaryAction.muiName = 'ListItemSecondaryAction';\nexport default ListItemSecondaryAction;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\"],\n _excluded2 = [\"alignItems\", \"autoFocus\", \"button\", \"children\", \"className\", \"component\", \"components\", \"componentsProps\", \"ContainerComponent\", \"ContainerProps\", \"dense\", \"disabled\", \"disableGutters\", \"disablePadding\", \"divider\", \"focusVisibleClassName\", \"secondaryAction\", \"selected\", \"slotProps\", \"slots\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses, isHostComponent } from '@mui/base';\nimport { chainPropTypes, elementTypeAcceptingRef } from '@mui/utils';\nimport { alpha } from '@mui/system';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport ButtonBase from '../ButtonBase';\nimport isMuiElement from '../utils/isMuiElement';\nimport useEnhancedEffect from '../utils/useEnhancedEffect';\nimport useForkRef from '../utils/useForkRef';\nimport ListContext from '../List/ListContext';\nimport listItemClasses, { getListItemUtilityClass } from './listItemClasses';\nimport { listItemButtonClasses } from '../ListItemButton';\nimport ListItemSecondaryAction from '../ListItemSecondaryAction';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nexport const overridesResolver = (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.dense && styles.dense, ownerState.alignItems === 'flex-start' && styles.alignItemsFlexStart, ownerState.divider && styles.divider, !ownerState.disableGutters && styles.gutters, !ownerState.disablePadding && styles.padding, ownerState.button && styles.button, ownerState.hasSecondaryAction && styles.secondaryAction];\n};\nconst useUtilityClasses = ownerState => {\n const {\n alignItems,\n button,\n classes,\n dense,\n disabled,\n disableGutters,\n disablePadding,\n divider,\n hasSecondaryAction,\n selected\n } = ownerState;\n const slots = {\n root: ['root', dense && 'dense', !disableGutters && 'gutters', !disablePadding && 'padding', divider && 'divider', disabled && 'disabled', button && 'button', alignItems === 'flex-start' && 'alignItemsFlexStart', hasSecondaryAction && 'secondaryAction', selected && 'selected'],\n container: ['container']\n };\n return composeClasses(slots, getListItemUtilityClass, classes);\n};\nexport const ListItemRoot = styled('div', {\n name: 'MuiListItem',\n slot: 'Root',\n overridesResolver\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'flex',\n justifyContent: 'flex-start',\n alignItems: 'center',\n position: 'relative',\n textDecoration: 'none',\n width: '100%',\n boxSizing: 'border-box',\n textAlign: 'left'\n}, !ownerState.disablePadding && _extends({\n paddingTop: 8,\n paddingBottom: 8\n}, ownerState.dense && {\n paddingTop: 4,\n paddingBottom: 4\n}, !ownerState.disableGutters && {\n paddingLeft: 16,\n paddingRight: 16\n}, !!ownerState.secondaryAction && {\n // Add some space to avoid collision as `ListItemSecondaryAction`\n // is absolutely positioned.\n paddingRight: 48\n}), !!ownerState.secondaryAction && {\n [`& > .${listItemButtonClasses.root}`]: {\n paddingRight: 48\n }\n}, {\n [`&.${listItemClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette.action.focus\n },\n [`&.${listItemClasses.selected}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity),\n [`&.${listItemClasses.focusVisible}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)\n }\n },\n [`&.${listItemClasses.disabled}`]: {\n opacity: (theme.vars || theme).palette.action.disabledOpacity\n }\n}, ownerState.alignItems === 'flex-start' && {\n alignItems: 'flex-start'\n}, ownerState.divider && {\n borderBottom: `1px solid ${(theme.vars || theme).palette.divider}`,\n backgroundClip: 'padding-box'\n}, ownerState.button && {\n transition: theme.transitions.create('background-color', {\n duration: theme.transitions.duration.shortest\n }),\n '&:hover': {\n textDecoration: 'none',\n backgroundColor: (theme.vars || theme).palette.action.hover,\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n [`&.${listItemClasses.selected}:hover`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity)\n }\n }\n}, ownerState.hasSecondaryAction && {\n // Add some space to avoid collision as `ListItemSecondaryAction`\n // is absolutely positioned.\n paddingRight: 48\n}));\nconst ListItemContainer = styled('li', {\n name: 'MuiListItem',\n slot: 'Container',\n overridesResolver: (props, styles) => styles.container\n})({\n position: 'relative'\n});\n\n/**\n * Uses an additional container component if `ListItemSecondaryAction` is the last child.\n */\nconst ListItem = /*#__PURE__*/React.forwardRef(function ListItem(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItem'\n });\n const {\n alignItems = 'center',\n autoFocus = false,\n button = false,\n children: childrenProp,\n className,\n component: componentProp,\n components = {},\n componentsProps = {},\n ContainerComponent = 'li',\n ContainerProps: {\n className: ContainerClassName\n } = {},\n dense = false,\n disabled = false,\n disableGutters = false,\n disablePadding = false,\n divider = false,\n focusVisibleClassName,\n secondaryAction,\n selected = false,\n slotProps = {},\n slots = {}\n } = props,\n ContainerProps = _objectWithoutPropertiesLoose(props.ContainerProps, _excluded),\n other = _objectWithoutPropertiesLoose(props, _excluded2);\n const context = React.useContext(ListContext);\n const childContext = React.useMemo(() => ({\n dense: dense || context.dense || false,\n alignItems,\n disableGutters\n }), [alignItems, context.dense, dense, disableGutters]);\n const listItemRef = React.useRef(null);\n useEnhancedEffect(() => {\n if (autoFocus) {\n if (listItemRef.current) {\n listItemRef.current.focus();\n } else if (process.env.NODE_ENV !== 'production') {\n console.error('MUI: Unable to set focus to a ListItem whose component has not been rendered.');\n }\n }\n }, [autoFocus]);\n const children = React.Children.toArray(childrenProp);\n\n // v4 implementation, deprecated in v5, will be removed in v6\n const hasSecondaryAction = children.length && isMuiElement(children[children.length - 1], ['ListItemSecondaryAction']);\n const ownerState = _extends({}, props, {\n alignItems,\n autoFocus,\n button,\n dense: childContext.dense,\n disabled,\n disableGutters,\n disablePadding,\n divider,\n hasSecondaryAction,\n selected\n });\n const classes = useUtilityClasses(ownerState);\n const handleRef = useForkRef(listItemRef, ref);\n const Root = slots.root || components.Root || ListItemRoot;\n const rootProps = slotProps.root || componentsProps.root || {};\n const componentProps = _extends({\n className: clsx(classes.root, rootProps.className, className),\n disabled\n }, other);\n let Component = componentProp || 'li';\n if (button) {\n componentProps.component = componentProp || 'div';\n componentProps.focusVisibleClassName = clsx(listItemClasses.focusVisible, focusVisibleClassName);\n Component = ButtonBase;\n }\n\n // v4 implementation, deprecated in v5, will be removed in v6\n if (hasSecondaryAction) {\n // Use div by default.\n Component = !componentProps.component && !componentProp ? 'div' : Component;\n\n // Avoid nesting of li > li.\n if (ContainerComponent === 'li') {\n if (Component === 'li') {\n Component = 'div';\n } else if (componentProps.component === 'li') {\n componentProps.component = 'div';\n }\n }\n return /*#__PURE__*/_jsx(ListContext.Provider, {\n value: childContext,\n children: /*#__PURE__*/_jsxs(ListItemContainer, _extends({\n as: ContainerComponent,\n className: clsx(classes.container, ContainerClassName),\n ref: handleRef,\n ownerState: ownerState\n }, ContainerProps, {\n children: [/*#__PURE__*/_jsx(Root, _extends({}, rootProps, !isHostComponent(Root) && {\n as: Component,\n ownerState: _extends({}, ownerState, rootProps.ownerState)\n }, componentProps, {\n children: children\n })), children.pop()]\n }))\n });\n }\n return /*#__PURE__*/_jsx(ListContext.Provider, {\n value: childContext,\n children: /*#__PURE__*/_jsxs(Root, _extends({}, rootProps, {\n as: Component,\n ref: handleRef\n }, !isHostComponent(Root) && {\n ownerState: _extends({}, ownerState, rootProps.ownerState)\n }, componentProps, {\n children: [children, secondaryAction && /*#__PURE__*/_jsx(ListItemSecondaryAction, {\n children: secondaryAction\n })]\n }))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItem.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Defines the `align-items` style property.\n * @default 'center'\n */\n alignItems: PropTypes.oneOf(['center', 'flex-start']),\n /**\n * If `true`, the list item is focused during the first mount.\n * Focus will also be triggered if the value changes from false to true.\n * @default false\n * @deprecated checkout [ListItemButton](/material-ui/api/list-item-button/) instead\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, the list item is a button (using `ButtonBase`). Props intended\n * for `ButtonBase` can then be applied to `ListItem`.\n * @default false\n * @deprecated checkout [ListItemButton](/material-ui/api/list-item-button/) instead\n */\n button: PropTypes.bool,\n /**\n * The content of the component if a `ListItemSecondaryAction` is used it must\n * be the last child.\n */\n children: chainPropTypes(PropTypes.node, props => {\n const children = React.Children.toArray(props.children);\n\n // React.Children.toArray(props.children).findLastIndex(isListItemSecondaryAction)\n let secondaryActionIndex = -1;\n for (let i = children.length - 1; i >= 0; i -= 1) {\n const child = children[i];\n if (isMuiElement(child, ['ListItemSecondaryAction'])) {\n secondaryActionIndex = i;\n break;\n }\n }\n\n // is ListItemSecondaryAction the last child of ListItem\n if (secondaryActionIndex !== -1 && secondaryActionIndex !== children.length - 1) {\n return new Error('MUI: You used an element after ListItemSecondaryAction. ' + 'For ListItem to detect that it has a secondary action ' + 'you must pass it as the last child to ListItem.');\n }\n return null;\n }),\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `slots` prop.\n * It's recommended to use the `slots` prop instead.\n *\n * @default {}\n */\n components: PropTypes.shape({\n Root: PropTypes.elementType\n }),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `slotProps` prop.\n * It's recommended to use the `slotProps` prop instead, as `componentsProps` will be deprecated in the future.\n *\n * @default {}\n */\n componentsProps: PropTypes.shape({\n root: PropTypes.object\n }),\n /**\n * The container component used when a `ListItemSecondaryAction` is the last child.\n * @default 'li'\n * @deprecated\n */\n ContainerComponent: elementTypeAcceptingRef,\n /**\n * Props applied to the container component if used.\n * @default {}\n * @deprecated\n */\n ContainerProps: PropTypes.object,\n /**\n * If `true`, compact vertical padding designed for keyboard and mouse input is used.\n * The prop defaults to the value inherited from the parent List component.\n * @default false\n */\n dense: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n * @deprecated checkout [ListItemButton](/material-ui/api/list-item-button/) instead\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the left and right padding is removed.\n * @default false\n */\n disableGutters: PropTypes.bool,\n /**\n * If `true`, all padding is removed.\n * @default false\n */\n disablePadding: PropTypes.bool,\n /**\n * If `true`, a 1px light border is added to the bottom of the list item.\n * @default false\n */\n divider: PropTypes.bool,\n /**\n * @ignore\n */\n focusVisibleClassName: PropTypes.string,\n /**\n * The element to display at the end of ListItem.\n */\n secondaryAction: PropTypes.node,\n /**\n * Use to apply selected styling.\n * @default false\n * @deprecated checkout [ListItemButton](/material-ui/api/list-item-button/) instead\n */\n selected: PropTypes.bool,\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slotProps: PropTypes.shape({\n root: PropTypes.object\n }),\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `components` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slots: PropTypes.shape({\n root: PropTypes.elementType\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListItem;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getListItemButtonUtilityClass(slot) {\n return generateUtilityClass('MuiListItemButton', slot);\n}\nconst listItemButtonClasses = generateUtilityClasses('MuiListItemButton', ['root', 'focusVisible', 'dense', 'alignItemsFlexStart', 'disabled', 'divider', 'gutters', 'selected']);\nexport default listItemButtonClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"disableTypography\", \"inset\", \"primary\", \"primaryTypographyProps\", \"secondary\", \"secondaryTypographyProps\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport Typography from '../Typography';\nimport ListContext from '../List/ListContext';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport listItemTextClasses, { getListItemTextUtilityClass } from './listItemTextClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n inset,\n primary,\n secondary,\n dense\n } = ownerState;\n const slots = {\n root: ['root', inset && 'inset', dense && 'dense', primary && secondary && 'multiline'],\n primary: ['primary'],\n secondary: ['secondary']\n };\n return composeClasses(slots, getListItemTextUtilityClass, classes);\n};\nconst ListItemTextRoot = styled('div', {\n name: 'MuiListItemText',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${listItemTextClasses.primary}`]: styles.primary\n }, {\n [`& .${listItemTextClasses.secondary}`]: styles.secondary\n }, styles.root, ownerState.inset && styles.inset, ownerState.primary && ownerState.secondary && styles.multiline, ownerState.dense && styles.dense];\n }\n})(({\n ownerState\n}) => _extends({\n flex: '1 1 auto',\n minWidth: 0,\n marginTop: 4,\n marginBottom: 4\n}, ownerState.primary && ownerState.secondary && {\n marginTop: 6,\n marginBottom: 6\n}, ownerState.inset && {\n paddingLeft: 56\n}));\nconst ListItemText = /*#__PURE__*/React.forwardRef(function ListItemText(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItemText'\n });\n const {\n children,\n className,\n disableTypography = false,\n inset = false,\n primary: primaryProp,\n primaryTypographyProps,\n secondary: secondaryProp,\n secondaryTypographyProps\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const {\n dense\n } = React.useContext(ListContext);\n let primary = primaryProp != null ? primaryProp : children;\n let secondary = secondaryProp;\n const ownerState = _extends({}, props, {\n disableTypography,\n inset,\n primary: !!primary,\n secondary: !!secondary,\n dense\n });\n const classes = useUtilityClasses(ownerState);\n if (primary != null && primary.type !== Typography && !disableTypography) {\n primary = /*#__PURE__*/_jsx(Typography, _extends({\n variant: dense ? 'body2' : 'body1',\n className: classes.primary,\n component: primaryTypographyProps != null && primaryTypographyProps.variant ? undefined : 'span',\n display: \"block\"\n }, primaryTypographyProps, {\n children: primary\n }));\n }\n if (secondary != null && secondary.type !== Typography && !disableTypography) {\n secondary = /*#__PURE__*/_jsx(Typography, _extends({\n variant: \"body2\",\n className: classes.secondary,\n color: \"text.secondary\",\n display: \"block\"\n }, secondaryTypographyProps, {\n children: secondary\n }));\n }\n return /*#__PURE__*/_jsxs(ListItemTextRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [primary, secondary]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemText.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Alias for the `primary` prop.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * If `true`, the children won't be wrapped by a Typography component.\n * This can be useful to render an alternative Typography variant by wrapping\n * the `children` (or `primary`) text, and optional `secondary` text\n * with the Typography component.\n * @default false\n */\n disableTypography: PropTypes.bool,\n /**\n * If `true`, the children are indented.\n * This should be used if there is no left avatar or left icon.\n * @default false\n */\n inset: PropTypes.bool,\n /**\n * The main content element.\n */\n primary: PropTypes.node,\n /**\n * These props will be forwarded to the primary typography component\n * (as long as disableTypography is not `true`).\n */\n primaryTypographyProps: PropTypes.object,\n /**\n * The secondary content element.\n */\n secondary: PropTypes.node,\n /**\n * These props will be forwarded to the secondary typography component\n * (as long as disableTypography is not `true`).\n */\n secondaryTypographyProps: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListItemText;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchUtilityClass(slot) {\n return generateUtilityClass('MuiSwitch', slot);\n}\nconst switchClasses = generateUtilityClasses('MuiSwitch', ['root', 'edgeStart', 'edgeEnd', 'switchBase', 'colorPrimary', 'colorSecondary', 'sizeSmall', 'sizeMedium', 'checked', 'disabled', 'input', 'thumb', 'track']);\nexport default switchClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"color\", \"edge\", \"size\", \"sx\"];\n// @inheritedComponent IconButton\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha, darken, lighten } from '@mui/system';\nimport capitalize from '../utils/capitalize';\nimport SwitchBase from '../internal/SwitchBase';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport switchClasses, { getSwitchUtilityClass } from './switchClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n edge,\n size,\n color,\n checked,\n disabled\n } = ownerState;\n const slots = {\n root: ['root', edge && `edge${capitalize(edge)}`, `size${capitalize(size)}`],\n switchBase: ['switchBase', `color${capitalize(color)}`, checked && 'checked', disabled && 'disabled'],\n thumb: ['thumb'],\n track: ['track'],\n input: ['input']\n };\n const composedClasses = composeClasses(slots, getSwitchUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst SwitchRoot = styled('span', {\n name: 'MuiSwitch',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.edge && styles[`edge${capitalize(ownerState.edge)}`], styles[`size${capitalize(ownerState.size)}`]];\n }\n})(({\n ownerState\n}) => _extends({\n display: 'inline-flex',\n width: 34 + 12 * 2,\n height: 14 + 12 * 2,\n overflow: 'hidden',\n padding: 12,\n boxSizing: 'border-box',\n position: 'relative',\n flexShrink: 0,\n zIndex: 0,\n // Reset the stacking context.\n verticalAlign: 'middle',\n // For correct alignment with the text.\n '@media print': {\n colorAdjust: 'exact'\n }\n}, ownerState.edge === 'start' && {\n marginLeft: -8\n}, ownerState.edge === 'end' && {\n marginRight: -8\n}, ownerState.size === 'small' && {\n width: 40,\n height: 24,\n padding: 7,\n [`& .${switchClasses.thumb}`]: {\n width: 16,\n height: 16\n },\n [`& .${switchClasses.switchBase}`]: {\n padding: 4,\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(16px)'\n }\n }\n}));\nconst SwitchSwitchBase = styled(SwitchBase, {\n name: 'MuiSwitch',\n slot: 'SwitchBase',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.switchBase, {\n [`& .${switchClasses.input}`]: styles.input\n }, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme\n}) => ({\n position: 'absolute',\n top: 0,\n left: 0,\n zIndex: 1,\n // Render above the focus ripple.\n color: theme.vars ? theme.vars.palette.Switch.defaultColor : `${theme.palette.mode === 'light' ? theme.palette.common.white : theme.palette.grey[300]}`,\n transition: theme.transitions.create(['left', 'transform'], {\n duration: theme.transitions.duration.shortest\n }),\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(20px)'\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch.defaultDisabledColor : `${theme.palette.mode === 'light' ? theme.palette.grey[100] : theme.palette.grey[600]}`\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n opacity: 0.5\n },\n [`&.${switchClasses.disabled} + .${switchClasses.track}`]: {\n opacity: theme.vars ? theme.vars.opacity.switchTrackDisabled : `${theme.palette.mode === 'light' ? 0.12 : 0.2}`\n },\n [`& .${switchClasses.input}`]: {\n left: '-100%',\n width: '300%'\n }\n}), ({\n theme,\n ownerState\n}) => _extends({\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${switchClasses.checked}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main,\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch[`${ownerState.color}DisabledColor`] : `${theme.palette.mode === 'light' ? lighten(theme.palette[ownerState.color].main, 0.62) : darken(theme.palette[ownerState.color].main, 0.55)}`\n }\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].main\n }\n}));\nconst SwitchTrack = styled('span', {\n name: 'MuiSwitch',\n slot: 'Track',\n overridesResolver: (props, styles) => styles.track\n})(({\n theme\n}) => ({\n height: '100%',\n width: '100%',\n borderRadius: 14 / 2,\n zIndex: -1,\n transition: theme.transitions.create(['opacity', 'background-color'], {\n duration: theme.transitions.duration.shortest\n }),\n backgroundColor: theme.vars ? theme.vars.palette.common.onBackground : `${theme.palette.mode === 'light' ? theme.palette.common.black : theme.palette.common.white}`,\n opacity: theme.vars ? theme.vars.opacity.switchTrack : `${theme.palette.mode === 'light' ? 0.38 : 0.3}`\n}));\nconst SwitchThumb = styled('span', {\n name: 'MuiSwitch',\n slot: 'Thumb',\n overridesResolver: (props, styles) => styles.thumb\n})(({\n theme\n}) => ({\n boxShadow: (theme.vars || theme).shadows[1],\n backgroundColor: 'currentColor',\n width: 20,\n height: 20,\n borderRadius: '50%'\n}));\nconst Switch = /*#__PURE__*/React.forwardRef(function Switch(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiSwitch'\n });\n const {\n className,\n color = 'primary',\n edge = false,\n size = 'medium',\n sx\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n edge,\n size\n });\n const classes = useUtilityClasses(ownerState);\n const icon = /*#__PURE__*/_jsx(SwitchThumb, {\n className: classes.thumb,\n ownerState: ownerState\n });\n return /*#__PURE__*/_jsxs(SwitchRoot, {\n className: clsx(classes.root, className),\n sx: sx,\n ownerState: ownerState,\n children: [/*#__PURE__*/_jsx(SwitchSwitchBase, _extends({\n type: \"checkbox\",\n icon: icon,\n checkedIcon: icon,\n ref: ref,\n ownerState: ownerState\n }, other, {\n classes: _extends({}, classes, {\n root: classes.switchBase\n })\n })), /*#__PURE__*/_jsx(SwitchTrack, {\n className: classes.track,\n ownerState: ownerState\n })]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Switch.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The default checked state. Use when the component is not controlled.\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense switch styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n */\n value: PropTypes.any\n} : void 0;\nexport default Switch;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchBaseUtilityClass(slot) {\n return generateUtilityClass('PrivateSwitchBase', slot);\n}\nconst switchBaseClasses = generateUtilityClasses('PrivateSwitchBase', ['root', 'checked', 'disabled', 'input', 'edgeStart', 'edgeEnd']);\nexport default switchBaseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"checked\", \"checkedIcon\", \"className\", \"defaultChecked\", \"disabled\", \"disableFocusRipple\", \"edge\", \"icon\", \"id\", \"inputProps\", \"inputRef\", \"name\", \"onBlur\", \"onChange\", \"onFocus\", \"readOnly\", \"required\", \"tabIndex\", \"type\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useControlled from '../utils/useControlled';\nimport useFormControl from '../FormControl/useFormControl';\nimport ButtonBase from '../ButtonBase';\nimport { getSwitchBaseUtilityClass } from './switchBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n checked,\n disabled,\n edge\n } = ownerState;\n const slots = {\n root: ['root', checked && 'checked', disabled && 'disabled', edge && `edge${capitalize(edge)}`],\n input: ['input']\n };\n return composeClasses(slots, getSwitchBaseUtilityClass, classes);\n};\nconst SwitchBaseRoot = styled(ButtonBase)(({\n ownerState\n}) => _extends({\n padding: 9,\n borderRadius: '50%'\n}, ownerState.edge === 'start' && {\n marginLeft: ownerState.size === 'small' ? -3 : -12\n}, ownerState.edge === 'end' && {\n marginRight: ownerState.size === 'small' ? -3 : -12\n}));\nconst SwitchBaseInput = styled('input')({\n cursor: 'inherit',\n position: 'absolute',\n opacity: 0,\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n zIndex: 1\n});\n\n/**\n * @ignore - internal component.\n */\nconst SwitchBase = /*#__PURE__*/React.forwardRef(function SwitchBase(props, ref) {\n const {\n autoFocus,\n checked: checkedProp,\n checkedIcon,\n className,\n defaultChecked,\n disabled: disabledProp,\n disableFocusRipple = false,\n edge = false,\n icon,\n id,\n inputProps,\n inputRef,\n name,\n onBlur,\n onChange,\n onFocus,\n readOnly,\n required = false,\n tabIndex,\n type,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [checked, setCheckedState] = useControlled({\n controlled: checkedProp,\n default: Boolean(defaultChecked),\n name: 'SwitchBase',\n state: 'checked'\n });\n const muiFormControl = useFormControl();\n const handleFocus = event => {\n if (onFocus) {\n onFocus(event);\n }\n if (muiFormControl && muiFormControl.onFocus) {\n muiFormControl.onFocus(event);\n }\n };\n const handleBlur = event => {\n if (onBlur) {\n onBlur(event);\n }\n if (muiFormControl && muiFormControl.onBlur) {\n muiFormControl.onBlur(event);\n }\n };\n const handleInputChange = event => {\n // Workaround for https://github.com/facebook/react/issues/9023\n if (event.nativeEvent.defaultPrevented) {\n return;\n }\n const newChecked = event.target.checked;\n setCheckedState(newChecked);\n if (onChange) {\n // TODO v6: remove the second argument.\n onChange(event, newChecked);\n }\n };\n let disabled = disabledProp;\n if (muiFormControl) {\n if (typeof disabled === 'undefined') {\n disabled = muiFormControl.disabled;\n }\n }\n const hasLabelFor = type === 'checkbox' || type === 'radio';\n const ownerState = _extends({}, props, {\n checked,\n disabled,\n disableFocusRipple,\n edge\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(SwitchBaseRoot, _extends({\n component: \"span\",\n className: clsx(classes.root, className),\n centerRipple: true,\n focusRipple: !disableFocusRipple,\n disabled: disabled,\n tabIndex: null,\n role: undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/_jsx(SwitchBaseInput, _extends({\n autoFocus: autoFocus,\n checked: checkedProp,\n defaultChecked: defaultChecked,\n className: classes.input,\n disabled: disabled,\n id: hasLabelFor ? id : undefined,\n name: name,\n onChange: handleInputChange,\n readOnly: readOnly,\n ref: inputRef,\n required: required,\n ownerState: ownerState,\n tabIndex: tabIndex,\n type: type\n }, type === 'checkbox' && value === undefined ? {} : {\n value\n }, inputProps)), checked ? checkedIcon : icon]\n }));\n});\n\n// NB: If changed, please update Checkbox, Switch and Radio\n// so that the API documentation is updated.\nprocess.env.NODE_ENV !== \"production\" ? SwitchBase.propTypes = {\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node.isRequired,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * @ignore\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the keyboard focus ripple is disabled.\n * @default false\n */\n disableFocusRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node.isRequired,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /*\n * @ignore\n */\n name: PropTypes.string,\n /**\n * @ignore\n */\n onBlur: PropTypes.func,\n /**\n * Callback fired when the state is changed.\n *\n * @param {object} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.object,\n /**\n * @ignore\n */\n tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The input component prop `type`.\n */\n type: PropTypes.string.isRequired,\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default SwitchBase;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","_jsx","getCheckboxUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","CheckboxRoot","styled","SwitchBase","shouldForwardProp","prop","rootShouldForwardProp","name","overridesResolver","props","styles","ownerState","root","indeterminate","color","concat","capitalize","_ref","_ref2","theme","_extends","vars","palette","text","secondary","disableRipple","backgroundColor","action","activeChannel","primary","mainChannel","hoverOpacity","alpha","active","main","_defineProperty","checkboxClasses","checked","disabled","defaultCheckedIcon","CheckBoxIcon","defaultIcon","CheckBoxOutlineBlankIcon","defaultIndeterminateIcon","IndeterminateCheckBoxIcon","React","inProps","ref","_icon$props$fontSize","_indeterminateIcon$pr","useThemeProps","_props$checkedIcon","checkedIcon","_props$color","_props$icon","icon","iconProp","_props$indeterminate","_props$indeterminateI","indeterminateIcon","indeterminateIconProp","inputProps","_props$size","size","className","other","_objectWithoutPropertiesLoose","classes","slots","composedClasses","composeClasses","useUtilityClasses","type","fontSize","clsx","FormControlContext","undefined","formControlState","states","muiFormControl","reduce","acc","state","useFormControl","FormLabelRoot","colorSecondary","filled","_extends2","typography","body1","lineHeight","padding","position","formLabelClasses","focused","error","AsteriskComponent","asterisk","_ref3","FormLabel","children","_props$component","component","fcs","required","getFormLabelUtilityClasses","_jsxs","as","getInputLabelUtilityClasses","InputLabelRoot","formControl","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","getListItemUtilityClass","getListItemSecondaryActionClassesUtilityClass","ListItemSecondaryActionRoot","disableGutters","right","ListItemSecondaryAction","context","ListContext","muiName","_excluded2","ListItemRoot","dense","alignItems","alignItemsFlexStart","divider","gutters","disablePadding","button","hasSecondaryAction","secondaryAction","justifyContent","textDecoration","width","boxSizing","textAlign","paddingTop","paddingBottom","paddingLeft","paddingRight","listItemButtonClasses","listItemClasses","focusVisible","focus","selected","selectedOpacity","focusOpacity","opacity","disabledOpacity","borderBottom","backgroundClip","shortest","hover","ListItemContainer","container","_props$alignItems","_props$autoFocus","autoFocus","_props$button","childrenProp","componentProp","_props$components","components","_props$componentsProp","componentsProps","_props$ContainerCompo","ContainerComponent","_props$ContainerProps","ContainerProps","ContainerClassName","_props$dense","_props$disabled","_props$disableGutters","_props$disablePadding","_props$divider","focusVisibleClassName","_props$selected","_props$slotProps","slotProps","_props$slots","childContext","listItemRef","useEnhancedEffect","current","toArray","length","isMuiElement","handleRef","useForkRef","Root","rootProps","componentProps","Component","ButtonBase","Provider","isHostComponent","pop","getListItemButtonUtilityClass","ListItemTextRoot","listItemTextClasses","inset","multiline","flex","minWidth","marginTop","marginBottom","ListItemText","_props$disableTypogra","disableTypography","_props$inset","primaryProp","primaryTypographyProps","secondaryProp","secondaryTypographyProps","getListItemTextUtilityClass","Typography","getSwitchUtilityClass","SwitchRoot","edge","height","flexShrink","verticalAlign","colorAdjust","marginLeft","marginRight","switchClasses","thumb","switchBase","SwitchSwitchBase","input","_ref4","_ref5","Switch","defaultColor","mode","common","white","grey","defaultDisabledColor","track","switchTrackDisabled","_ref6","_ref7","lighten","darken","SwitchTrack","_ref8","borderRadius","onBackground","black","switchTrack","SwitchThumb","_ref9","boxShadow","shadows","_props$edge","sx","getSwitchBaseUtilityClass","SwitchBaseRoot","SwitchBaseInput","cursor","margin","checkedProp","defaultChecked","disabledProp","_props$disableFocusRi","disableFocusRipple","id","inputRef","onBlur","onChange","onFocus","readOnly","_props$required","tabIndex","_useControlled","useControlled","controlled","Boolean","_useControlled2","_slicedToArray","setCheckedState","hasLabelFor","centerRipple","focusRipple","role","event","nativeEvent","defaultPrevented","newChecked","target","createChainedFunction","validator","reason","componentNameInError","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","_len","arguments","funcs","Array","_key","func","_len2","args","_key2","apply","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/8831.c7482be4.chunk.js b/portal-ui/build/static/js/8831.c7482be4.chunk.js new file mode 100644 index 000000000..5bbdb3431 --- /dev/null +++ b/portal-ui/build/static/js/8831.c7482be4.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[8831],{98946:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var o=r(n(45649)),a=n(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M16.59 7.58 10 14.17l-3.59-3.58L5 12l5 5 8-8zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"CheckCircleOutline");t.Z=i},15146:function(e,t,n){"use strict";var r=n(64836);t.Z=void 0;var o=r(n(45649)),a=n(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"ErrorOutline");t.Z=i},45649:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return r.createSvgIcon}});var r=n(28610)},15021:function(e,t,n){"use strict";n.d(t,{ZP:function(){return R}});var r=n(4942),o=n(63366),a=n(87462),i=n(72791),s=n(28182),c=n(94419),d=n(52474),u=n(12065),l=n(66934),p=n(31402),m=n(95080),v=n(19103),f=n(40162),y=n(42071),Z=n(66199),b=n(75878),g=n(21217);function h(e){return(0,g.Z)("MuiListItem",e)}var x=(0,b.Z)("MuiListItem",["root","container","focusVisible","dense","alignItemsFlexStart","disabled","divider","gutters","padding","button","secondaryAction","selected"]),C=n(34065);function I(e){return(0,g.Z)("MuiListItemSecondaryAction",e)}(0,b.Z)("MuiListItemSecondaryAction",["root","disableGutters"]);var S=n(80184),P=["className"],w=(0,l.ZP)("div",{name:"MuiListItemSecondaryAction",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,n.disableGutters&&t.disableGutters]}})((function(e){var t=e.ownerState;return(0,a.Z)({position:"absolute",right:16,top:"50%",transform:"translateY(-50%)"},t.disableGutters&&{right:0})})),M=i.forwardRef((function(e,t){var n=(0,p.Z)({props:e,name:"MuiListItemSecondaryAction"}),r=n.className,d=(0,o.Z)(n,P),u=i.useContext(Z.Z),l=(0,a.Z)({},n,{disableGutters:u.disableGutters}),m=function(e){var t=e.disableGutters,n=e.classes,r={root:["root",t&&"disableGutters"]};return(0,c.Z)(r,I,n)}(l);return(0,S.jsx)(w,(0,a.Z)({className:(0,s.Z)(m.root,r),ownerState:l,ref:t},d))}));M.muiName="ListItemSecondaryAction";var N=M,A=["className"],L=["alignItems","autoFocus","button","children","className","component","components","componentsProps","ContainerComponent","ContainerProps","dense","disabled","disableGutters","disablePadding","divider","focusVisibleClassName","secondaryAction","selected","slotProps","slots"],k=(0,l.ZP)("div",{name:"MuiListItem",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,n.dense&&t.dense,"flex-start"===n.alignItems&&t.alignItemsFlexStart,n.divider&&t.divider,!n.disableGutters&&t.gutters,!n.disablePadding&&t.padding,n.button&&t.button,n.hasSecondaryAction&&t.secondaryAction]}})((function(e){var t,n=e.theme,o=e.ownerState;return(0,a.Z)({display:"flex",justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",width:"100%",boxSizing:"border-box",textAlign:"left"},!o.disablePadding&&(0,a.Z)({paddingTop:8,paddingBottom:8},o.dense&&{paddingTop:4,paddingBottom:4},!o.disableGutters&&{paddingLeft:16,paddingRight:16},!!o.secondaryAction&&{paddingRight:48}),!!o.secondaryAction&&(0,r.Z)({},"& > .".concat(C.Z.root),{paddingRight:48}),(t={},(0,r.Z)(t,"&.".concat(x.focusVisible),{backgroundColor:(n.vars||n).palette.action.focus}),(0,r.Z)(t,"&.".concat(x.selected),(0,r.Z)({backgroundColor:n.vars?"rgba(".concat(n.vars.palette.primary.mainChannel," / ").concat(n.vars.palette.action.selectedOpacity,")"):(0,u.Fq)(n.palette.primary.main,n.palette.action.selectedOpacity)},"&.".concat(x.focusVisible),{backgroundColor:n.vars?"rgba(".concat(n.vars.palette.primary.mainChannel," / calc(").concat(n.vars.palette.action.selectedOpacity," + ").concat(n.vars.palette.action.focusOpacity,"))"):(0,u.Fq)(n.palette.primary.main,n.palette.action.selectedOpacity+n.palette.action.focusOpacity)})),(0,r.Z)(t,"&.".concat(x.disabled),{opacity:(n.vars||n).palette.action.disabledOpacity}),t),"flex-start"===o.alignItems&&{alignItems:"flex-start"},o.divider&&{borderBottom:"1px solid ".concat((n.vars||n).palette.divider),backgroundClip:"padding-box"},o.button&&(0,r.Z)({transition:n.transitions.create("background-color",{duration:n.transitions.duration.shortest}),"&:hover":{textDecoration:"none",backgroundColor:(n.vars||n).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}}},"&.".concat(x.selected,":hover"),{backgroundColor:n.vars?"rgba(".concat(n.vars.palette.primary.mainChannel," / calc(").concat(n.vars.palette.action.selectedOpacity," + ").concat(n.vars.palette.action.hoverOpacity,"))"):(0,u.Fq)(n.palette.primary.main,n.palette.action.selectedOpacity+n.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:n.vars?"rgba(".concat(n.vars.palette.primary.mainChannel," / ").concat(n.vars.palette.action.selectedOpacity,")"):(0,u.Fq)(n.palette.primary.main,n.palette.action.selectedOpacity)}}),o.hasSecondaryAction&&{paddingRight:48})})),O=(0,l.ZP)("li",{name:"MuiListItem",slot:"Container",overridesResolver:function(e,t){return t.container}})({position:"relative"}),R=i.forwardRef((function(e,t){var n=(0,p.Z)({props:e,name:"MuiListItem"}),r=n.alignItems,u=void 0===r?"center":r,l=n.autoFocus,b=void 0!==l&&l,g=n.button,C=void 0!==g&&g,I=n.children,P=n.className,w=n.component,M=n.components,R=void 0===M?{}:M,G=n.componentsProps,j=void 0===G?{}:G,F=n.ContainerComponent,T=void 0===F?"li":F,_=n.ContainerProps,V=(void 0===_?{}:_).className,z=n.dense,B=void 0!==z&&z,E=n.disabled,q=void 0!==E&&E,D=n.disableGutters,W=void 0!==D&&D,Y=n.disablePadding,H=void 0!==Y&&Y,J=n.divider,K=void 0!==J&&J,Q=n.focusVisibleClassName,U=n.secondaryAction,X=n.selected,$=void 0!==X&&X,ee=n.slotProps,te=void 0===ee?{}:ee,ne=n.slots,re=void 0===ne?{}:ne,oe=(0,o.Z)(n.ContainerProps,A),ae=(0,o.Z)(n,L),ie=i.useContext(Z.Z),se=i.useMemo((function(){return{dense:B||ie.dense||!1,alignItems:u,disableGutters:W}}),[u,ie.dense,B,W]),ce=i.useRef(null);(0,f.Z)((function(){b&&ce.current&&ce.current.focus()}),[b]);var de=i.Children.toArray(I),ue=de.length&&(0,v.Z)(de[de.length-1],["ListItemSecondaryAction"]),le=(0,a.Z)({},n,{alignItems:u,autoFocus:b,button:C,dense:se.dense,disabled:q,disableGutters:W,disablePadding:H,divider:K,hasSecondaryAction:ue,selected:$}),pe=function(e){var t=e.alignItems,n=e.button,r=e.classes,o=e.dense,a=e.disabled,i={root:["root",o&&"dense",!e.disableGutters&&"gutters",!e.disablePadding&&"padding",e.divider&&"divider",a&&"disabled",n&&"button","flex-start"===t&&"alignItemsFlexStart",e.hasSecondaryAction&&"secondaryAction",e.selected&&"selected"],container:["container"]};return(0,c.Z)(i,h,r)}(le),me=(0,y.Z)(ce,t),ve=re.root||R.Root||k,fe=te.root||j.root||{},ye=(0,a.Z)({className:(0,s.Z)(pe.root,fe.className,P),disabled:q},ae),Ze=w||"li";return C&&(ye.component=w||"div",ye.focusVisibleClassName=(0,s.Z)(x.focusVisible,Q),Ze=m.Z),ue?(Ze=ye.component||w?Ze:"div","li"===T&&("li"===Ze?Ze="div":"li"===ye.component&&(ye.component="div")),(0,S.jsx)(Z.Z.Provider,{value:se,children:(0,S.jsxs)(O,(0,a.Z)({as:T,className:(0,s.Z)(pe.container,V),ref:me,ownerState:le},oe,{children:[(0,S.jsx)(ve,(0,a.Z)({},fe,!(0,d.Z)(ve)&&{as:Ze,ownerState:(0,a.Z)({},le,fe.ownerState)},ye,{children:de})),de.pop()]}))})):(0,S.jsx)(Z.Z.Provider,{value:se,children:(0,S.jsxs)(ve,(0,a.Z)({},fe,{as:Ze,ref:me},!(0,d.Z)(ve)&&{ownerState:(0,a.Z)({},le,fe.ownerState)},ye,{children:[de,U&&(0,S.jsx)(N,{children:U})]}))})}))},34065:function(e,t,n){"use strict";n.d(t,{t:function(){return a}});var r=n(75878),o=n(21217);function a(e){return(0,o.Z)("MuiListItemButton",e)}var i=(0,r.Z)("MuiListItemButton",["root","focusVisible","dense","alignItemsFlexStart","disabled","divider","gutters","selected"]);t.Z=i},49900:function(e,t,n){"use strict";var r=n(4942),o=n(63366),a=n(87462),i=n(72791),s=n(28182),c=n(94419),d=n(20890),u=n(66199),l=n(31402),p=n(66934),m=n(29849),v=n(80184),f=["children","className","disableTypography","inset","primary","primaryTypographyProps","secondary","secondaryTypographyProps"],y=(0,p.ZP)("div",{name:"MuiListItemText",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[(0,r.Z)({},"& .".concat(m.Z.primary),t.primary),(0,r.Z)({},"& .".concat(m.Z.secondary),t.secondary),t.root,n.inset&&t.inset,n.primary&&n.secondary&&t.multiline,n.dense&&t.dense]}})((function(e){var t=e.ownerState;return(0,a.Z)({flex:"1 1 auto",minWidth:0,marginTop:4,marginBottom:4},t.primary&&t.secondary&&{marginTop:6,marginBottom:6},t.inset&&{paddingLeft:56})})),Z=i.forwardRef((function(e,t){var n=(0,l.Z)({props:e,name:"MuiListItemText"}),r=n.children,p=n.className,Z=n.disableTypography,b=void 0!==Z&&Z,g=n.inset,h=void 0!==g&&g,x=n.primary,C=n.primaryTypographyProps,I=n.secondary,S=n.secondaryTypographyProps,P=(0,o.Z)(n,f),w=i.useContext(u.Z).dense,M=null!=x?x:r,N=I,A=(0,a.Z)({},n,{disableTypography:b,inset:h,primary:!!M,secondary:!!N,dense:w}),L=function(e){var t=e.classes,n=e.inset,r=e.primary,o=e.secondary,a={root:["root",n&&"inset",e.dense&&"dense",r&&o&&"multiline"],primary:["primary"],secondary:["secondary"]};return(0,c.Z)(a,m.L,t)}(A);return null==M||M.type===d.Z||b||(M=(0,v.jsx)(d.Z,(0,a.Z)({variant:w?"body2":"body1",className:L.primary,component:null!=C&&C.variant?void 0:"span",display:"block"},C,{children:M}))),null==N||N.type===d.Z||b||(N=(0,v.jsx)(d.Z,(0,a.Z)({variant:"body2",className:L.secondary,color:"text.secondary",display:"block"},S,{children:N}))),(0,v.jsxs)(y,(0,a.Z)({className:(0,s.Z)(L.root,p),ownerState:A,ref:t},P,{children:[M,N]}))}));t.Z=Z},31260:function(e,t,n){"use strict";var r=n(78949);t.Z=r.Z},28610:function(e,t,n){"use strict";n.r(t),n.d(t,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return c},isMuiElement:function(){return d.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return l.Z},requirePropFactory:function(){return p},setRef:function(){return m},unstable_ClassNameGenerator:function(){return x},unstable_useEnhancedEffect:function(){return v.Z},unstable_useId:function(){return f.Z},unsupportedProp:function(){return y},useControlled:function(){return Z.Z},useEventCallback:function(){return b.Z},useForkRef:function(){return g.Z},useIsFocusVisible:function(){return h.Z}});var r=n(55902),o=n(14036),a=n(31260),i=n(76189),s=n(83199);var c=function(e,t){return function(){return null}},d=n(19103),u=n(98301),l=n(17602);n(87462);var p=function(e,t){return function(){return null}},m=n(62971).Z,v=n(40162),f=n(67384);var y=function(e,t,n,r,o){return null},Z=n(98278),b=n(89683),g=n(42071),h=n(23031),x={configure:function(e){r.Z.configure(e)}}},19103:function(e,t,n){"use strict";n.d(t,{Z:function(){return o}});var r=n(72791);var o=function(e,t){return r.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}},64836:function(e){e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports}}]); +//# sourceMappingURL=8831.c7482be4.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/8831.c7482be4.chunk.js.map b/portal-ui/build/static/js/8831.c7482be4.chunk.js.map new file mode 100644 index 000000000..cbadbcb7b --- /dev/null +++ b/portal-ui/build/static/js/8831.c7482be4.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/8831.c7482be4.chunk.js","mappings":"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","sources":["../node_modules/@mui/icons-material/CheckCircleOutline.js","../node_modules/@mui/icons-material/ErrorOutline.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/ListItem/listItemClasses.js","../node_modules/@mui/material/ListItemSecondaryAction/listItemSecondaryActionClasses.js","../node_modules/@mui/material/ListItemSecondaryAction/ListItemSecondaryAction.js","../node_modules/@mui/material/ListItem/ListItem.js","../node_modules/@mui/material/ListItemButton/listItemButtonClasses.js","../node_modules/@mui/material/ListItemText/ListItemText.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M16.59 7.58 10 14.17l-3.59-3.58L5 12l5 5 8-8zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z\"\n}), 'CheckCircleOutline');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z\"\n}), 'ErrorOutline');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getListItemUtilityClass(slot) {\n return generateUtilityClass('MuiListItem', slot);\n}\nconst listItemClasses = generateUtilityClasses('MuiListItem', ['root', 'container', 'focusVisible', 'dense', 'alignItemsFlexStart', 'disabled', 'divider', 'gutters', 'padding', 'button', 'secondaryAction', 'selected']);\nexport default listItemClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getListItemSecondaryActionClassesUtilityClass(slot) {\n return generateUtilityClass('MuiListItemSecondaryAction', slot);\n}\nconst listItemSecondaryActionClasses = generateUtilityClasses('MuiListItemSecondaryAction', ['root', 'disableGutters']);\nexport default listItemSecondaryActionClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport ListContext from '../List/ListContext';\nimport { getListItemSecondaryActionClassesUtilityClass } from './listItemSecondaryActionClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n disableGutters,\n classes\n } = ownerState;\n const slots = {\n root: ['root', disableGutters && 'disableGutters']\n };\n return composeClasses(slots, getListItemSecondaryActionClassesUtilityClass, classes);\n};\nconst ListItemSecondaryActionRoot = styled('div', {\n name: 'MuiListItemSecondaryAction',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.disableGutters && styles.disableGutters];\n }\n})(({\n ownerState\n}) => _extends({\n position: 'absolute',\n right: 16,\n top: '50%',\n transform: 'translateY(-50%)'\n}, ownerState.disableGutters && {\n right: 0\n}));\n\n/**\n * Must be used as the last child of ListItem to function properly.\n */\nconst ListItemSecondaryAction = /*#__PURE__*/React.forwardRef(function ListItemSecondaryAction(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItemSecondaryAction'\n });\n const {\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const context = React.useContext(ListContext);\n const ownerState = _extends({}, props, {\n disableGutters: context.disableGutters\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(ListItemSecondaryActionRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemSecondaryAction.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component, normally an `IconButton` or selection control.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nListItemSecondaryAction.muiName = 'ListItemSecondaryAction';\nexport default ListItemSecondaryAction;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\"],\n _excluded2 = [\"alignItems\", \"autoFocus\", \"button\", \"children\", \"className\", \"component\", \"components\", \"componentsProps\", \"ContainerComponent\", \"ContainerProps\", \"dense\", \"disabled\", \"disableGutters\", \"disablePadding\", \"divider\", \"focusVisibleClassName\", \"secondaryAction\", \"selected\", \"slotProps\", \"slots\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses, isHostComponent } from '@mui/base';\nimport { chainPropTypes, elementTypeAcceptingRef } from '@mui/utils';\nimport { alpha } from '@mui/system';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport ButtonBase from '../ButtonBase';\nimport isMuiElement from '../utils/isMuiElement';\nimport useEnhancedEffect from '../utils/useEnhancedEffect';\nimport useForkRef from '../utils/useForkRef';\nimport ListContext from '../List/ListContext';\nimport listItemClasses, { getListItemUtilityClass } from './listItemClasses';\nimport { listItemButtonClasses } from '../ListItemButton';\nimport ListItemSecondaryAction from '../ListItemSecondaryAction';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nexport const overridesResolver = (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.dense && styles.dense, ownerState.alignItems === 'flex-start' && styles.alignItemsFlexStart, ownerState.divider && styles.divider, !ownerState.disableGutters && styles.gutters, !ownerState.disablePadding && styles.padding, ownerState.button && styles.button, ownerState.hasSecondaryAction && styles.secondaryAction];\n};\nconst useUtilityClasses = ownerState => {\n const {\n alignItems,\n button,\n classes,\n dense,\n disabled,\n disableGutters,\n disablePadding,\n divider,\n hasSecondaryAction,\n selected\n } = ownerState;\n const slots = {\n root: ['root', dense && 'dense', !disableGutters && 'gutters', !disablePadding && 'padding', divider && 'divider', disabled && 'disabled', button && 'button', alignItems === 'flex-start' && 'alignItemsFlexStart', hasSecondaryAction && 'secondaryAction', selected && 'selected'],\n container: ['container']\n };\n return composeClasses(slots, getListItemUtilityClass, classes);\n};\nexport const ListItemRoot = styled('div', {\n name: 'MuiListItem',\n slot: 'Root',\n overridesResolver\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'flex',\n justifyContent: 'flex-start',\n alignItems: 'center',\n position: 'relative',\n textDecoration: 'none',\n width: '100%',\n boxSizing: 'border-box',\n textAlign: 'left'\n}, !ownerState.disablePadding && _extends({\n paddingTop: 8,\n paddingBottom: 8\n}, ownerState.dense && {\n paddingTop: 4,\n paddingBottom: 4\n}, !ownerState.disableGutters && {\n paddingLeft: 16,\n paddingRight: 16\n}, !!ownerState.secondaryAction && {\n // Add some space to avoid collision as `ListItemSecondaryAction`\n // is absolutely positioned.\n paddingRight: 48\n}), !!ownerState.secondaryAction && {\n [`& > .${listItemButtonClasses.root}`]: {\n paddingRight: 48\n }\n}, {\n [`&.${listItemClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette.action.focus\n },\n [`&.${listItemClasses.selected}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity),\n [`&.${listItemClasses.focusVisible}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)\n }\n },\n [`&.${listItemClasses.disabled}`]: {\n opacity: (theme.vars || theme).palette.action.disabledOpacity\n }\n}, ownerState.alignItems === 'flex-start' && {\n alignItems: 'flex-start'\n}, ownerState.divider && {\n borderBottom: `1px solid ${(theme.vars || theme).palette.divider}`,\n backgroundClip: 'padding-box'\n}, ownerState.button && {\n transition: theme.transitions.create('background-color', {\n duration: theme.transitions.duration.shortest\n }),\n '&:hover': {\n textDecoration: 'none',\n backgroundColor: (theme.vars || theme).palette.action.hover,\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n [`&.${listItemClasses.selected}:hover`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity)\n }\n }\n}, ownerState.hasSecondaryAction && {\n // Add some space to avoid collision as `ListItemSecondaryAction`\n // is absolutely positioned.\n paddingRight: 48\n}));\nconst ListItemContainer = styled('li', {\n name: 'MuiListItem',\n slot: 'Container',\n overridesResolver: (props, styles) => styles.container\n})({\n position: 'relative'\n});\n\n/**\n * Uses an additional container component if `ListItemSecondaryAction` is the last child.\n */\nconst ListItem = /*#__PURE__*/React.forwardRef(function ListItem(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItem'\n });\n const {\n alignItems = 'center',\n autoFocus = false,\n button = false,\n children: childrenProp,\n className,\n component: componentProp,\n components = {},\n componentsProps = {},\n ContainerComponent = 'li',\n ContainerProps: {\n className: ContainerClassName\n } = {},\n dense = false,\n disabled = false,\n disableGutters = false,\n disablePadding = false,\n divider = false,\n focusVisibleClassName,\n secondaryAction,\n selected = false,\n slotProps = {},\n slots = {}\n } = props,\n ContainerProps = _objectWithoutPropertiesLoose(props.ContainerProps, _excluded),\n other = _objectWithoutPropertiesLoose(props, _excluded2);\n const context = React.useContext(ListContext);\n const childContext = React.useMemo(() => ({\n dense: dense || context.dense || false,\n alignItems,\n disableGutters\n }), [alignItems, context.dense, dense, disableGutters]);\n const listItemRef = React.useRef(null);\n useEnhancedEffect(() => {\n if (autoFocus) {\n if (listItemRef.current) {\n listItemRef.current.focus();\n } else if (process.env.NODE_ENV !== 'production') {\n console.error('MUI: Unable to set focus to a ListItem whose component has not been rendered.');\n }\n }\n }, [autoFocus]);\n const children = React.Children.toArray(childrenProp);\n\n // v4 implementation, deprecated in v5, will be removed in v6\n const hasSecondaryAction = children.length && isMuiElement(children[children.length - 1], ['ListItemSecondaryAction']);\n const ownerState = _extends({}, props, {\n alignItems,\n autoFocus,\n button,\n dense: childContext.dense,\n disabled,\n disableGutters,\n disablePadding,\n divider,\n hasSecondaryAction,\n selected\n });\n const classes = useUtilityClasses(ownerState);\n const handleRef = useForkRef(listItemRef, ref);\n const Root = slots.root || components.Root || ListItemRoot;\n const rootProps = slotProps.root || componentsProps.root || {};\n const componentProps = _extends({\n className: clsx(classes.root, rootProps.className, className),\n disabled\n }, other);\n let Component = componentProp || 'li';\n if (button) {\n componentProps.component = componentProp || 'div';\n componentProps.focusVisibleClassName = clsx(listItemClasses.focusVisible, focusVisibleClassName);\n Component = ButtonBase;\n }\n\n // v4 implementation, deprecated in v5, will be removed in v6\n if (hasSecondaryAction) {\n // Use div by default.\n Component = !componentProps.component && !componentProp ? 'div' : Component;\n\n // Avoid nesting of li > li.\n if (ContainerComponent === 'li') {\n if (Component === 'li') {\n Component = 'div';\n } else if (componentProps.component === 'li') {\n componentProps.component = 'div';\n }\n }\n return /*#__PURE__*/_jsx(ListContext.Provider, {\n value: childContext,\n children: /*#__PURE__*/_jsxs(ListItemContainer, _extends({\n as: ContainerComponent,\n className: clsx(classes.container, ContainerClassName),\n ref: handleRef,\n ownerState: ownerState\n }, ContainerProps, {\n children: [/*#__PURE__*/_jsx(Root, _extends({}, rootProps, !isHostComponent(Root) && {\n as: Component,\n ownerState: _extends({}, ownerState, rootProps.ownerState)\n }, componentProps, {\n children: children\n })), children.pop()]\n }))\n });\n }\n return /*#__PURE__*/_jsx(ListContext.Provider, {\n value: childContext,\n children: /*#__PURE__*/_jsxs(Root, _extends({}, rootProps, {\n as: Component,\n ref: handleRef\n }, !isHostComponent(Root) && {\n ownerState: _extends({}, ownerState, rootProps.ownerState)\n }, componentProps, {\n children: [children, secondaryAction && /*#__PURE__*/_jsx(ListItemSecondaryAction, {\n children: secondaryAction\n })]\n }))\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItem.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Defines the `align-items` style property.\n * @default 'center'\n */\n alignItems: PropTypes.oneOf(['center', 'flex-start']),\n /**\n * If `true`, the list item is focused during the first mount.\n * Focus will also be triggered if the value changes from false to true.\n * @default false\n * @deprecated checkout [ListItemButton](/material-ui/api/list-item-button/) instead\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, the list item is a button (using `ButtonBase`). Props intended\n * for `ButtonBase` can then be applied to `ListItem`.\n * @default false\n * @deprecated checkout [ListItemButton](/material-ui/api/list-item-button/) instead\n */\n button: PropTypes.bool,\n /**\n * The content of the component if a `ListItemSecondaryAction` is used it must\n * be the last child.\n */\n children: chainPropTypes(PropTypes.node, props => {\n const children = React.Children.toArray(props.children);\n\n // React.Children.toArray(props.children).findLastIndex(isListItemSecondaryAction)\n let secondaryActionIndex = -1;\n for (let i = children.length - 1; i >= 0; i -= 1) {\n const child = children[i];\n if (isMuiElement(child, ['ListItemSecondaryAction'])) {\n secondaryActionIndex = i;\n break;\n }\n }\n\n // is ListItemSecondaryAction the last child of ListItem\n if (secondaryActionIndex !== -1 && secondaryActionIndex !== children.length - 1) {\n return new Error('MUI: You used an element after ListItemSecondaryAction. ' + 'For ListItem to detect that it has a secondary action ' + 'you must pass it as the last child to ListItem.');\n }\n return null;\n }),\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `slots` prop.\n * It's recommended to use the `slots` prop instead.\n *\n * @default {}\n */\n components: PropTypes.shape({\n Root: PropTypes.elementType\n }),\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `slotProps` prop.\n * It's recommended to use the `slotProps` prop instead, as `componentsProps` will be deprecated in the future.\n *\n * @default {}\n */\n componentsProps: PropTypes.shape({\n root: PropTypes.object\n }),\n /**\n * The container component used when a `ListItemSecondaryAction` is the last child.\n * @default 'li'\n * @deprecated\n */\n ContainerComponent: elementTypeAcceptingRef,\n /**\n * Props applied to the container component if used.\n * @default {}\n * @deprecated\n */\n ContainerProps: PropTypes.object,\n /**\n * If `true`, compact vertical padding designed for keyboard and mouse input is used.\n * The prop defaults to the value inherited from the parent List component.\n * @default false\n */\n dense: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n * @default false\n * @deprecated checkout [ListItemButton](/material-ui/api/list-item-button/) instead\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the left and right padding is removed.\n * @default false\n */\n disableGutters: PropTypes.bool,\n /**\n * If `true`, all padding is removed.\n * @default false\n */\n disablePadding: PropTypes.bool,\n /**\n * If `true`, a 1px light border is added to the bottom of the list item.\n * @default false\n */\n divider: PropTypes.bool,\n /**\n * @ignore\n */\n focusVisibleClassName: PropTypes.string,\n /**\n * The element to display at the end of ListItem.\n */\n secondaryAction: PropTypes.node,\n /**\n * Use to apply selected styling.\n * @default false\n * @deprecated checkout [ListItemButton](/material-ui/api/list-item-button/) instead\n */\n selected: PropTypes.bool,\n /**\n * The extra props for the slot components.\n * You can override the existing props or add new ones.\n *\n * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slotProps: PropTypes.shape({\n root: PropTypes.object\n }),\n /**\n * The components used for each slot inside.\n *\n * This prop is an alias for the `components` prop, which will be deprecated in the future.\n *\n * @default {}\n */\n slots: PropTypes.shape({\n root: PropTypes.elementType\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListItem;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getListItemButtonUtilityClass(slot) {\n return generateUtilityClass('MuiListItemButton', slot);\n}\nconst listItemButtonClasses = generateUtilityClasses('MuiListItemButton', ['root', 'focusVisible', 'dense', 'alignItemsFlexStart', 'disabled', 'divider', 'gutters', 'selected']);\nexport default listItemButtonClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"disableTypography\", \"inset\", \"primary\", \"primaryTypographyProps\", \"secondary\", \"secondaryTypographyProps\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport Typography from '../Typography';\nimport ListContext from '../List/ListContext';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport listItemTextClasses, { getListItemTextUtilityClass } from './listItemTextClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n inset,\n primary,\n secondary,\n dense\n } = ownerState;\n const slots = {\n root: ['root', inset && 'inset', dense && 'dense', primary && secondary && 'multiline'],\n primary: ['primary'],\n secondary: ['secondary']\n };\n return composeClasses(slots, getListItemTextUtilityClass, classes);\n};\nconst ListItemTextRoot = styled('div', {\n name: 'MuiListItemText',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${listItemTextClasses.primary}`]: styles.primary\n }, {\n [`& .${listItemTextClasses.secondary}`]: styles.secondary\n }, styles.root, ownerState.inset && styles.inset, ownerState.primary && ownerState.secondary && styles.multiline, ownerState.dense && styles.dense];\n }\n})(({\n ownerState\n}) => _extends({\n flex: '1 1 auto',\n minWidth: 0,\n marginTop: 4,\n marginBottom: 4\n}, ownerState.primary && ownerState.secondary && {\n marginTop: 6,\n marginBottom: 6\n}, ownerState.inset && {\n paddingLeft: 56\n}));\nconst ListItemText = /*#__PURE__*/React.forwardRef(function ListItemText(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiListItemText'\n });\n const {\n children,\n className,\n disableTypography = false,\n inset = false,\n primary: primaryProp,\n primaryTypographyProps,\n secondary: secondaryProp,\n secondaryTypographyProps\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const {\n dense\n } = React.useContext(ListContext);\n let primary = primaryProp != null ? primaryProp : children;\n let secondary = secondaryProp;\n const ownerState = _extends({}, props, {\n disableTypography,\n inset,\n primary: !!primary,\n secondary: !!secondary,\n dense\n });\n const classes = useUtilityClasses(ownerState);\n if (primary != null && primary.type !== Typography && !disableTypography) {\n primary = /*#__PURE__*/_jsx(Typography, _extends({\n variant: dense ? 'body2' : 'body1',\n className: classes.primary,\n component: primaryTypographyProps != null && primaryTypographyProps.variant ? undefined : 'span',\n display: \"block\"\n }, primaryTypographyProps, {\n children: primary\n }));\n }\n if (secondary != null && secondary.type !== Typography && !disableTypography) {\n secondary = /*#__PURE__*/_jsx(Typography, _extends({\n variant: \"body2\",\n className: classes.secondary,\n color: \"text.secondary\",\n display: \"block\"\n }, secondaryTypographyProps, {\n children: secondary\n }));\n }\n return /*#__PURE__*/_jsxs(ListItemTextRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [primary, secondary]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemText.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Alias for the `primary` prop.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * If `true`, the children won't be wrapped by a Typography component.\n * This can be useful to render an alternative Typography variant by wrapping\n * the `children` (or `primary`) text, and optional `secondary` text\n * with the Typography component.\n * @default false\n */\n disableTypography: PropTypes.bool,\n /**\n * If `true`, the children are indented.\n * This should be used if there is no left avatar or left icon.\n * @default false\n */\n inset: PropTypes.bool,\n /**\n * The main content element.\n */\n primary: PropTypes.node,\n /**\n * These props will be forwarded to the primary typography component\n * (as long as disableTypography is not `true`).\n */\n primaryTypographyProps: PropTypes.object,\n /**\n * The secondary content element.\n */\n secondary: PropTypes.node,\n /**\n * These props will be forwarded to the secondary typography component\n * (as long as disableTypography is not `true`).\n */\n secondaryTypographyProps: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default ListItemText;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","getListItemUtilityClass","slot","generateUtilityClass","generateUtilityClasses","getListItemSecondaryActionClassesUtilityClass","_excluded","ListItemSecondaryActionRoot","styled","name","overridesResolver","props","styles","ownerState","root","disableGutters","_ref","_extends","position","right","top","transform","ListItemSecondaryAction","React","inProps","ref","useThemeProps","className","other","_objectWithoutPropertiesLoose","context","ListContext","classes","slots","composeClasses","useUtilityClasses","_jsx","clsx","muiName","_excluded2","ListItemRoot","dense","alignItems","alignItemsFlexStart","divider","gutters","disablePadding","padding","button","hasSecondaryAction","secondaryAction","_extends2","theme","display","justifyContent","textDecoration","width","boxSizing","textAlign","paddingTop","paddingBottom","paddingLeft","paddingRight","_defineProperty","concat","listItemButtonClasses","listItemClasses","focusVisible","backgroundColor","vars","palette","action","focus","selected","primary","mainChannel","selectedOpacity","alpha","main","focusOpacity","disabled","opacity","disabledOpacity","borderBottom","backgroundClip","transition","transitions","create","duration","shortest","hover","hoverOpacity","ListItemContainer","container","_props$alignItems","_props$autoFocus","autoFocus","_props$button","childrenProp","children","componentProp","component","_props$components","components","_props$componentsProp","componentsProps","_props$ContainerCompo","ContainerComponent","_props$ContainerProps","ContainerProps","ContainerClassName","_props$dense","_props$disabled","_props$disableGutters","_props$disablePadding","_props$divider","focusVisibleClassName","_props$selected","_props$slotProps","slotProps","_props$slots","childContext","listItemRef","useEnhancedEffect","current","toArray","length","isMuiElement","handleRef","useForkRef","Root","rootProps","componentProps","Component","ButtonBase","Provider","_jsxs","as","isHostComponent","pop","getListItemButtonUtilityClass","ListItemTextRoot","listItemTextClasses","secondary","inset","multiline","_ref3","flex","minWidth","marginTop","marginBottom","ListItemText","_props$disableTypogra","disableTypography","_props$inset","primaryProp","primaryTypographyProps","secondaryProp","secondaryTypographyProps","getListItemTextUtilityClass","type","Typography","variant","undefined","color","createChainedFunction","validator","reason","componentNameInError","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/8833.91a69c65.chunk.js.map b/portal-ui/build/static/js/8833.91a69c65.chunk.js.map deleted file mode 100644 index 0a7b17692..000000000 --- a/portal-ui/build/static/js/8833.91a69c65.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/8833.91a69c65.chunk.js","mappings":"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","sources":["screens/Console/Common/DistributedOnly/DistributedOnly.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Tools/Inspect.tsx","screens/Console/Tools/KeyRevealer.tsx","../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@mui/utils/esm/createChainedFunction.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box, Grid } from \"@mui/material\";\nimport { HelpBox } from \"mds\";\n\ninterface IDistributedOnly {\n iconComponent: any;\n entity: string;\n}\n\nconst DistributedOnly = ({ iconComponent, entity }: IDistributedOnly) => {\n return (\n \n \n theme.colors.link,\n textDecoration: \"underline\",\n },\n }}\n >\n
This feature is not available for a single-disk setup.
\n\n
\n Please deploy a server in{\" \"}\n \n Distributed Mode\n {\" \"}\n to use this feature.\n
\n \n }\n />\n
\n
\n );\n};\n\nexport default DistributedOnly;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Box, DialogContentText } from \"@mui/material\";\nimport {\n Button,\n HelpBox,\n InspectMenuIcon,\n PageLayout,\n PasswordKeyIcon,\n} from \"mds\";\nimport { useNavigate } from \"react-router-dom\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport FormSwitchWrapper from \"../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport {\n deleteDialogStyles,\n modalStyleUtils,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { useSelector } from \"react-redux\";\nimport {\n deleteCookie,\n encodeURLString,\n getCookieValue,\n performDownload,\n} from \"../../../common/utils\";\nimport DistributedOnly from \"../Common/DistributedOnly/DistributedOnly\";\nimport KeyRevealer from \"./KeyRevealer\";\nimport {\n selDistSet,\n setErrorSnackMessage,\n setHelpName,\n} from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport RegisterCluster from \"../Support/RegisterCluster\";\nimport { registeredCluster } from \"../../../config\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n switchLabel: {\n fontWeight: \"normal\",\n },\n ...deleteDialogStyles,\n ...modalStyleUtils,\n });\n\nconst ExampleBlock = ({\n volumeVal,\n pathVal,\n}: {\n volumeVal: string;\n pathVal: string;\n}) => {\n return (\n \n \n \n {volumeVal}\n \n \n \n {pathVal}\n \n \n \n );\n};\n\nconst Inspect = ({ classes }: { classes: any }) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const distributedSetup = useSelector(selDistSet);\n\n const [volumeName, setVolumeName] = useState(\"\");\n const [inspectPath, setInspectPath] = useState(\"\");\n const [isEncrypt, setIsEncrypt] = useState(true);\n\n const [decryptionKey, setDecryptionKey] = useState(\"\");\n\n const [insFileName, setInsFileName] = useState(\"\");\n\n const [isFormValid, setIsFormValid] = useState(false);\n const [volumeError, setVolumeError] = useState(\"\");\n const [pathError, setPathError] = useState(\"\");\n const clusterRegistered = registeredCluster();\n /**\n * Validation Effect\n */\n useEffect(() => {\n let isVolValid;\n let isPathValid;\n\n isVolValid = volumeName.trim().length > 0;\n if (!isVolValid) {\n setVolumeError(\"This field is required\");\n } else if (volumeName.slice(0, 1) === \"/\") {\n isVolValid = false;\n setVolumeError(\"Volume/Bucket name cannot start with /\");\n }\n isPathValid = inspectPath.trim().length > 0;\n if (!inspectPath) {\n setPathError(\"This field is required\");\n } else if (inspectPath.slice(0, 1) === \"/\") {\n isPathValid = false;\n setPathError(\"Path cannot start with /\");\n }\n const isValid = isVolValid && isPathValid;\n\n if (isVolValid) {\n setVolumeError(\"\");\n }\n if (isPathValid) {\n setPathError(\"\");\n }\n\n setIsFormValid(isValid);\n }, [volumeName, inspectPath]);\n\n const makeRequest = async (url: string) => {\n return await fetch(url, { method: \"GET\" });\n };\n\n const performInspect = async () => {\n const file = encodeURLString(inspectPath);\n const volume = encodeURLString(volumeName);\n\n const urlOfInspectApi = `/api/v1/admin/inspect?volume=${volume}&file=${file}&encrypt=${isEncrypt}`;\n\n makeRequest(urlOfInspectApi)\n .then(async (res) => {\n if (!res.ok) {\n const resErr: any = await res.json();\n\n dispatch(\n setErrorSnackMessage({\n errorMessage: resErr.message,\n detailedError: resErr.code,\n }),\n );\n }\n const blob: Blob = await res.blob();\n\n //@ts-ignore\n const filename = res.headers.get(\"content-disposition\").split('\"')[1];\n const decryptKey = getCookieValue(filename) || \"\";\n\n performDownload(blob, filename);\n setInsFileName(filename);\n setDecryptionKey(decryptKey);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(err));\n });\n };\n\n const resetForm = () => {\n setVolumeName(\"\");\n setInspectPath(\"\");\n setIsEncrypt(true);\n };\n\n const onCloseDecKeyModal = () => {\n deleteCookie(insFileName);\n setDecryptionKey(\"\");\n resetForm();\n };\n\n useEffect(() => {\n dispatch(setHelpName(\"inspect\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n } />\n\n \n {!clusterRegistered && }\n {!distributedSetup ? (\n }\n entity={\"Inspect\"}\n />\n ) : (\n \n \n ) => {\n e.preventDefault();\n if (!clusterRegistered) {\n navigate(\"/support/register\");\n return;\n }\n performInspect();\n }}\n >\n \n ) => {\n setVolumeName(e.target.value);\n }}\n label=\"Volume or Bucket Name\"\n value={volumeName}\n error={volumeError}\n required\n placeholder={\"test-bucket\"}\n />\n \n \n ) => {\n setInspectPath(e.target.value);\n }}\n label=\"File or Path to inspect\"\n value={inspectPath}\n required\n placeholder={\"test*/xl.meta\"}\n />\n \n \n {\n setIsEncrypt(!isEncrypt);\n }}\n />\n \n \n \n \n \n \n \n \n \n \n \n \n \n Learn more about the Inspect feature\n \n\n \n Examples:\n \n\n \n \n \n
\n To Download 'xl.meta' for a specific object from all\n the drives in a zip file:\n
\n
\n\n \n
\n\n \n \n
\n To Download all constituent parts for a specific\n object, and optionally encrypt the downloaded zip:\n
\n
\n\n \n
\n \n \n
\n To Download recursively all objects at a prefix.\n
\n NOTE: This can be an expensive operation use it with\n caution.\n
\n
\n \n
\n \n\n \n You can learn more at our{\" \"}\n \n documentation\n \n .\n \n
\n }\n />\n \n \n )}\n {decryptionKey ? (\n }\n >\n \n \n This will be displayed only once. It cannot be recovered.\n
\n Use secure medium to share this key.\n
\n {\n return false;\n }}\n >\n \n \n
\n \n ) : null}\n \n \n );\n};\n\nexport default withStyles(styles)(Inspect);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { Box } from \"@mui/material\";\nimport { Button, CopyIcon } from \"mds\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\n\nconst KeyRevealer = ({ value }: { value: string }) => {\n const [shown, setShown] = useState(false);\n\n return (\n \n {}}\n value={value}\n overlayIcon={}\n extraInputProps={{\n readOnly: true,\n }}\n overlayAction={() => navigator.clipboard.writeText(value)}\n />\n\n setShown(!shown)}\n label={\"Show/Hide\"}\n />\n \n );\n};\n\nexport default KeyRevealer;\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_ref","iconComponent","entity","_jsx","Grid","container","alignItems","children","item","xs","HelpBox","title","concat","help","_jsxs","Box","sx","fontSize","display","border","flexFlow","md","color","theme","colors","link","textDecoration","href","target","rel","inputStyles","makeStyles","createStyles","_objectSpread","inputFieldStyles","InputField","props","classes","TextField","InputProps","withStyles","fieldBasic","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","label","onChange","value","id","name","_ref$type","type","_ref$autoComplete","autoComplete","_ref$disabled","disabled","_ref$multiline","multiline","_ref$tooltip","tooltip","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","placeholder","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","className","onKeyPress","onFocus","onPaste","inputProps","_useState","useState","_useState2","_slicedToArray","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","React","clsx","errorInField","inputBoxContainer","InputLabel","htmlFor","noMinWidthLabel","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","fullWidth","helperText","inputRebase","IconButton","onClick","size","disableFocusRipple","disableRipple","disableTouchRipple","ExampleBlock","volumeVal","pathVal","marginBottom","sm","switchLabel","fontWeight","deleteDialogStyles","modalStyleUtils","_ref2","dispatch","useAppDispatch","navigate","useNavigate","distributedSetup","useSelector","selDistSet","volumeName","setVolumeName","_useState3","_useState4","inspectPath","setInspectPath","_useState5","_useState6","isEncrypt","setIsEncrypt","_useState7","_useState8","decryptionKey","setDecryptionKey","_useState9","_useState10","insFileName","setInsFileName","_useState11","_useState12","isFormValid","setIsFormValid","_useState13","_useState14","volumeError","setVolumeError","_useState15","_useState16","pathError","setPathError","clusterRegistered","registeredCluster","useEffect","isVolValid","isPathValid","trim","length","slice","isValid","makeRequest","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","url","wrap","_context","prev","next","fetch","method","abrupt","sent","stop","_x","apply","arguments","performInspect","_ref4","_callee3","file","volume","urlOfInspectApi","_context3","encodeURLString","then","_ref5","_callee2","res","resErr","blob","filename","decryptKey","_context2","ok","json","setErrorSnackMessage","errorMessage","message","detailedError","code","headers","get","split","getCookieValue","performDownload","_x2","catch","err","resetForm","setHelpName","Fragment","PageHeaderWrapper","actions","HelpMenu","PageLayout","RegisterCluster","compactMode","justifyContent","padding","lg","flexWrap","gap","height","flex","width","noValidate","onSubmit","e","preventDefault","InputBoxWrapper","marginTop","FormSwitchWrapper","indicatorLabels","checked","Button","style","marginRight","variant","minWidth","backgroundColor","borderRadius","fill","InspectMenuIcon","fontStyle","background","textAlign","content","flexShrink","marginLeft","paddingLeft","fontFamily","paddingRight","paddingTop","paddingBottom","DistributedOnly","ModalWrapper","modalOpen","onClose","deleteCookie","titleIcon","PasswordKeyIcon","DialogContentText","component","KeyRevealer","shown","setShown","CopyIcon","readOnly","navigator","clipboard","writeText","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","enumerable","_utils","createSvgIcon","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","muiName","_len","funcs","Array","_key","reduce","acc","func","_len2","args","_key2","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/8833.91a69c65.chunk.js b/portal-ui/build/static/js/8833.9ede4350.chunk.js similarity index 93% rename from portal-ui/build/static/js/8833.91a69c65.chunk.js rename to portal-ui/build/static/js/8833.9ede4350.chunk.js index 0109120b7..a209e6d0f 100644 --- a/portal-ui/build/static/js/8833.91a69c65.chunk.js +++ b/portal-ui/build/static/js/8833.9ede4350.chunk.js @@ -1,2 +1,2 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[8833],{47986:function(e,t,n){"use strict";n(72791);var i=n(61889),r=n(64554),o=n(29945),s=n(80184);t.Z=function(e){var t=e.iconComponent,n=e.entity;return(0,s.jsx)(i.ZP,{container:!0,alignItems:"center",children:(0,s.jsx)(i.ZP,{item:!0,xs:12,children:(0,s.jsx)(o.KfX,{title:"".concat(n," not available"),iconComponent:t,help:(0,s.jsxs)(r.Z,{sx:{fontSize:"14px",display:"flex",border:"none",flexFlow:{xs:"column",md:"row"},"& a":{color:function(e){return e.colors.link},textDecoration:"underline"}},children:[(0,s.jsx)("div",{children:"This feature is not available for a single-disk setup."}),(0,s.jsxs)("div",{children:["Please deploy a server in"," ",(0,s.jsx)("a",{href:"https://min.io/docs/minio/linux/operations/install-deploy-manage/deploy-minio-multi-node-multi-drive.html?ref=con",target:"_blank",rel:"noopener",children:"Distributed Mode"})," ","to use this feature."]})]})})})})}},21435:function(e,t,n){"use strict";var i=n(29439),r=n(1413),o=n(72791),s=n(27391),a=n(61889),l=n(30829),c=n(20068),u=n(13400),d=n(20165),p=n(3579),x=n(11135),f=n(72455),h=n(25787),m=n(23814),v=n(29945),Z=n(28182),g=n(80184),j=(0,f.Z)((function(e){return(0,x.Z)((0,r.Z)({},m.gM))}));function b(e){var t=j();return(0,g.jsx)(s.Z,(0,r.Z)({InputProps:{classes:t}},e))}t.Z=(0,h.Z)((function(e){return(0,x.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},m.YI),m.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var t=e.label,n=e.onChange,s=e.value,x=e.id,f=e.name,h=e.type,m=void 0===h?"text":h,j=e.autoComplete,y=void 0===j?"off":j,w=e.disabled,k=void 0!==w&&w,C=e.multiline,I=void 0!==C&&C,T=e.tooltip,S=void 0===T?"":T,z=e.index,F=void 0===z?0:z,N=e.error,P=void 0===N?"":N,_=e.required,L=void 0!==_&&_,R=e.placeholder,V=void 0===R?"":R,M=e.min,E=e.max,W=e.overlayId,A=e.overlayIcon,B=void 0===A?null:A,D=e.overlayObject,O=void 0===D?null:D,q=e.extraInputProps,K=void 0===q?{}:q,G=e.overlayAction,H=e.noLabelMinWidth,X=void 0!==H&&H,Y=e.pattern,Q=void 0===Y?"":Y,U=e.autoFocus,J=void 0!==U&&U,$=e.classes,ee=e.className,te=void 0===ee?"":ee,ne=e.onKeyPress,ie=e.onFocus,re=e.onPaste,oe=(0,r.Z)({"data-index":F},K),se=(0,o.useState)(!1),ae=(0,i.Z)(se,2),le=ae[0],ce=ae[1];"number"===m&&M&&(oe.min=M),"number"===m&&E&&(oe.max=E),""!==Q&&(oe.pattern=Q);var ue=B,de=m;return"password"===m&&null===B&&(ue=le?(0,g.jsx)(d.Z,{}):(0,g.jsx)(p.Z,{}),de=le?"text":"password"),(0,g.jsx)(o.Fragment,{children:(0,g.jsxs)(a.ZP,{container:!0,className:(0,Z.Z)(""!==te?te:"",""!==P?$.errorInField:$.inputBoxContainer),children:[""!==t&&(0,g.jsxs)(l.Z,{htmlFor:x,className:X?$.noMinWidthLabel:$.inputLabel,children:[(0,g.jsxs)("span",{children:[t,L?"*":""]}),""!==S&&(0,g.jsx)("div",{className:$.tooltipContainer,children:(0,g.jsx)(c.Z,{title:S,placement:"top-start",children:(0,g.jsx)("div",{className:$.tooltip,children:(0,g.jsx)(v.byK,{})})})})]}),(0,g.jsxs)("div",{className:$.textBoxContainer,children:[(0,g.jsx)(b,{id:x,name:f,fullWidth:!0,value:s,autoFocus:J,disabled:k,onChange:n,type:de,multiline:I,autoComplete:y,inputProps:oe,error:""!==P,helperText:P,placeholder:V,className:$.inputRebase,onKeyPress:ne,onFocus:ie,onPaste:re}),ue&&(0,g.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==t?"withLabel":""),children:(0,g.jsx)(u.Z,{onClick:G?function(){G()}:function(){return ce(!le)},id:W,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:ue})}),O&&(0,g.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==t?"withLabel":""),children:O})]})]})})}))},58833:function(e,t,n){"use strict";n.r(t);var i=n(74165),r=n(15861),o=n(29439),s=n(1413),a=n(72791),l=n(64554),c=n(51691),u=n(29945),d=n(57689),p=n(21435),x=n(81159),f=n(56028),h=n(11135),m=n(23814),v=n(25787),Z=n(78687),g=n(45248),j=n(47986),b=n(73669),y=n(87995),w=n(81551),k=n(31460),C=n(9478),I=n(47974),T=n(99670),S=n(80184),z=function(e){var t=e.volumeVal,n=e.pathVal;return(0,S.jsx)(l.Z,{className:"code-block-container",children:(0,S.jsxs)(l.Z,{className:"example-code-block",children:[(0,S.jsxs)(l.Z,{sx:{display:"flex",marginBottom:"5px",flexFlow:{sm:"row",xs:"column"}},children:[(0,S.jsx)("label",{children:"Volume/bucket Name :"})," ",(0,S.jsx)("code",{children:t})]}),(0,S.jsxs)(l.Z,{sx:{display:"flex",flexFlow:{sm:"row",xs:"column"}},children:[(0,S.jsx)("label",{children:"Path : "}),(0,S.jsx)("code",{children:n})]})]})})};t.default=(0,v.Z)((function(e){return(0,h.Z)((0,s.Z)((0,s.Z)({switchLabel:{fontWeight:"normal"}},m.Qw),m.ID))}))((function(e){var t=e.classes,n=(0,w.TL)(),s=(0,d.s0)(),h=(0,Z.v9)(y.N5),m=(0,a.useState)(""),v=(0,o.Z)(m,2),F=v[0],N=v[1],P=(0,a.useState)(""),_=(0,o.Z)(P,2),L=_[0],R=_[1],V=(0,a.useState)(!0),M=(0,o.Z)(V,2),E=M[0],W=M[1],A=(0,a.useState)(""),B=(0,o.Z)(A,2),D=B[0],O=B[1],q=(0,a.useState)(""),K=(0,o.Z)(q,2),G=K[0],H=K[1],X=(0,a.useState)(!1),Y=(0,o.Z)(X,2),Q=Y[0],U=Y[1],J=(0,a.useState)(""),$=(0,o.Z)(J,2),ee=$[0],te=$[1],ne=(0,a.useState)(""),ie=(0,o.Z)(ne,2),re=ie[0],oe=ie[1],se=(0,C.Yc)();(0,a.useEffect)((function(){var e,t;(e=F.trim().length>0)?"/"===F.slice(0,1)&&(e=!1,te("Volume/Bucket name cannot start with /")):te("This field is required"),t=L.trim().length>0,L?"/"===L.slice(0,1)&&(t=!1,oe("Path cannot start with /")):oe("This field is required");var n=e&&t;e&&te(""),t&&oe(""),U(n)}),[F,L]);var ae=function(){var e=(0,r.Z)((0,i.Z)().mark((function e(t){return(0,i.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,fetch(t,{method:"GET"});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),le=function(){var e=(0,r.Z)((0,i.Z)().mark((function e(){var t,o,s;return(0,i.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=(0,g.LL)(L),o=(0,g.LL)(F),s="/api/v1/admin/inspect?volume=".concat(o,"&file=").concat(t,"&encrypt=").concat(E),ae(s).then(function(){var e=(0,r.Z)((0,i.Z)().mark((function e(t){var r,o,s,a;return(0,i.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.ok){e.next=5;break}return e.next=3,t.json();case 3:r=e.sent,n((0,y.Ih)({errorMessage:r.message,detailedError:r.code}));case 5:return e.next=7,t.blob();case 7:o=e.sent,s=t.headers.get("content-disposition").split('"')[1],a=(0,g.Do)(s)||"",(0,g.zZ)(o,s),H(s),O(a);case 13:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){n((0,y.Ih)(e))}));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),ce=function(){N(""),R(""),W(!0)};return(0,a.useEffect)((function(){n((0,y.Sc)("inspect"))}),[]),(0,S.jsxs)(a.Fragment,{children:[(0,S.jsx)(I.Z,{label:"Inspect",actions:(0,S.jsx)(T.Z,{})}),(0,S.jsxs)(u.Xgh,{children:[!se&&(0,S.jsx)(k.Z,{compactMode:!0}),h?(0,S.jsxs)(l.Z,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"flex-start",border:"1px solid #eaeaea",padding:{lg:"40px",xs:"15px"},flexWrap:"wrap",gap:{lg:"55px",xs:"20px"},height:{md:"calc(100vh - 120px)",xs:"100%"},flexFlow:{lg:"row",xs:"column"}},children:[(0,S.jsx)(l.Z,{sx:{border:"1px solid #eaeaea",flex:{md:2,xs:1},width:{lg:"auto",xs:"100%"},padding:{lg:"40px",xs:"15px"}},children:(0,S.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),se?le():s("/support/register")},children:[(0,S.jsx)(l.Z,{children:(0,S.jsx)(p.Z,{id:"inspect_volume",name:"inspect_volume",extraInputProps:{"data-test-id":"inspect_volume"},onChange:function(e){N(e.target.value)},label:"Volume or Bucket Name",value:F,error:ee,required:!0,placeholder:"test-bucket"})}),(0,S.jsx)(l.Z,{sx:{marginTop:"15px"},children:(0,S.jsx)(p.Z,{id:"inspect_path",name:"inspect_path",extraInputProps:{"data-test-id":"inspect_path"},error:re,onChange:function(e){R(e.target.value)},label:"File or Path to inspect",value:L,required:!0,placeholder:"test*/xl.meta"})}),(0,S.jsx)(l.Z,{sx:{marginTop:"25px"},children:(0,S.jsx)(x.Z,{classes:{inputLabel:t.switchLabel},extraInputProps:{"data-test-id":"inspect_encrypt"},label:"Encrypt",indicatorLabels:["True","False"],checked:E,value:"true",id:"inspect_encrypt",name:"inspect_encrypt",onChange:function(e){W(!E)}})}),(0,S.jsxs)(l.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",marginTop:"55px"},children:[(0,S.jsx)(u.zxk,{id:"inspect-clear-button",style:{marginRight:"15px"},type:"button",variant:"regular","data-test-id":"inspect-clear-button",onClick:ce,label:"Clear"}),(0,S.jsx)(u.zxk,{id:"inspect-start",type:"submit",variant:se?"callAction":"regular","data-test-id":"inspect-submit-button",disabled:!Q,label:"Inspect"})]})]})}),(0,S.jsx)(l.Z,{sx:{flex:1,minWidth:{md:"365px",xs:"100%"},width:"100%"},children:(0,S.jsx)(u.KfX,{title:"",iconComponent:null,help:(0,S.jsxs)(a.Fragment,{children:[(0,S.jsxs)(l.Z,{sx:{marginTop:"-25px",fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center",justifyContent:"flex-start",padding:"2px"},children:[(0,S.jsx)(l.Z,{sx:{backgroundColor:"#07193E",height:"15px",width:"15px",display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"50%",marginRight:"18px",padding:"3px","& .min-icon":{height:"11px",width:"11px",fill:"#ffffff"}},children:(0,S.jsx)(u.Gp8,{})}),"Learn more about the Inspect feature"]}),(0,S.jsx)(l.Z,{sx:{marginTop:"16px",fontWeight:600,fontStyle:"italic",fontSize:"14px"},children:"Examples:"}),(0,S.jsxs)(l.Z,{sx:{display:"flex",flexFlow:"column",fontSize:"14px",flex:"2","& .step-number":{color:"#ffffff",height:"25px",width:"25px",background:"#081C42",marginRight:"10px",textAlign:"center",fontWeight:600,borderRadius:"50%"},"& .step-row":{fontSize:"14px",display:"flex",marginTop:"15px",marginBottom:"15px","&.step-text":{fontWeight:400},"&:before":{content:"' '",height:"7px",width:"7px",backgroundColor:"#2781B0",marginRight:"10px",marginTop:"7px",flexShrink:0}},"& .code-block-container":{flex:"1",marginTop:"15px",marginLeft:"35px","& input":{color:"#737373"}},"& .example-code-block label":{display:"inline-block",width:{sm:"160px",xs:"100%"},fontWeight:600,fontSize:"14px"},"& code":{width:{sm:"100px",xs:"100%"},paddingLeft:"10px",fontFamily:"monospace",paddingRight:"10px",paddingTop:"3px",paddingBottom:"3px",borderRadius:"2px",border:"1px solid #eaeaea",fontSize:"10px",color:"#082146",fontWeight:500},"& .spacer":{marginBottom:"5px"}},children:[(0,S.jsxs)(l.Z,{children:[(0,S.jsx)(l.Z,{className:"step-row",children:(0,S.jsx)("div",{className:"step-text",children:"To Download 'xl.meta' for a specific object from all the drives in a zip file:"})}),(0,S.jsx)(z,{pathVal:"test*/xl.meta",volumeVal:"test-bucket"})]}),(0,S.jsxs)(l.Z,{children:[(0,S.jsx)(l.Z,{className:"step-row",children:(0,S.jsx)("div",{className:"step-text",children:"To Download all constituent parts for a specific object, and optionally encrypt the downloaded zip:"})}),(0,S.jsx)(z,{pathVal:"test*/xl.meta",volumeVal:"test*/*/part.*"})]}),(0,S.jsxs)(l.Z,{children:[(0,S.jsx)(l.Z,{className:"step-row",children:(0,S.jsxs)("div",{className:"step-text",children:["To Download recursively all objects at a prefix.",(0,S.jsx)("br",{}),"NOTE: This can be an expensive operation use it with caution."]})}),(0,S.jsx)(z,{pathVal:"test*/xl.meta",volumeVal:"test/**"})]})]}),(0,S.jsxs)(l.Z,{sx:{marginTop:"30px",marginLeft:"15px",fontSize:"14px"},children:["You can learn more at our"," ",(0,S.jsx)("a",{href:"https://github.com/minio/minio/tree/master/docs/debugging?ref=con",target:"_blank",rel:"noopener",children:"documentation"}),"."]})]})})})]}):(0,S.jsx)(j.Z,{iconComponent:(0,S.jsx)(u.Gp8,{}),entity:"Inspect"}),D?(0,S.jsx)(f.Z,{modalOpen:!0,title:"Inspect Decryption Key",onClose:function(){(0,g.kT)(G),O(""),ce()},titleIcon:(0,S.jsx)(u.tvm,{}),children:(0,S.jsxs)(c.Z,{component:"div",children:[(0,S.jsxs)(l.Z,{children:["This will be displayed only once. It cannot be recovered.",(0,S.jsx)("br",{}),"Use secure medium to share this key."]}),(0,S.jsx)("form",{noValidate:!0,onSubmit:function(){return!1},children:(0,S.jsx)(b.Z,{value:D})})]})}):null]})]})}))},73669:function(e,t,n){"use strict";var i=n(29439),r=n(72791),o=n(64554),s=n(29945),a=n(21435),l=n(80184);t.Z=function(e){var t=e.value,n=(0,r.useState)(!1),c=(0,i.Z)(n,2),u=c[0],d=c[1];return(0,l.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",flexFlow:{sm:"row",xs:"column"}},children:[(0,l.jsx)(a.Z,{id:"inspect-dec-key",name:"inspect-dec-key",placeholder:"",label:"",type:u?"text":"password",onChange:function(){},value:t,overlayIcon:(0,l.jsx)(s.TIy,{}),extraInputProps:{readOnly:!0},overlayAction:function(){return navigator.clipboard.writeText(t)}}),(0,l.jsx)(s.zxk,{id:"show-hide-key",style:{marginLeft:"10px"},variant:"callAction",onClick:function(){return d(!u)},label:"Show/Hide"})]})}},3579:function(e,t,n){"use strict";var i=n(64836);t.Z=void 0;var r=i(n(45649)),o=n(80184),s=(0,r.default)((0,o.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=s},20165:function(e,t,n){"use strict";var i=n(64836);t.Z=void 0;var r=i(n(45649)),o=n(80184),s=(0,r.default)((0,o.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=s},45649:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return i.createSvgIcon}});var i=n(28610)},31260:function(e,t,n){"use strict";var i=n(78949);t.Z=i.Z},28610:function(e,t,n){"use strict";n.r(t),n.d(t,{capitalize:function(){return r.Z},createChainedFunction:function(){return o.Z},createSvgIcon:function(){return s.Z},debounce:function(){return a.Z},deprecatedPropType:function(){return l},isMuiElement:function(){return c.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return p},setRef:function(){return x},unstable_ClassNameGenerator:function(){return b},unstable_useEnhancedEffect:function(){return f.Z},unstable_useId:function(){return h.Z},unsupportedProp:function(){return m},useControlled:function(){return v.Z},useEventCallback:function(){return Z.Z},useForkRef:function(){return g.Z},useIsFocusVisible:function(){return j.Z}});var i=n(55902),r=n(14036),o=n(31260),s=n(76189),a=n(83199);var l=function(e,t){return function(){return null}},c=n(19103),u=n(98301),d=n(17602);n(87462);var p=function(e,t){return function(){return null}},x=n(62971).Z,f=n(40162),h=n(67384);var m=function(e,t,n,i,r){return null},v=n(98278),Z=n(89683),g=n(42071),j=n(23031),b={configure:function(e){i.Z.configure(e)}}},19103:function(e,t,n){"use strict";n.d(t,{Z:function(){return r}});var i=n(72791);var r=function(e,t){return i.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}},78949:function(e,t,n){"use strict";function i(){for(var e=arguments.length,t=new Array(e),n=0;n0)?"/"===F.slice(0,1)&&(e=!1,te("Volume/Bucket name cannot start with /")):te("This field is required"),t=L.trim().length>0,L?"/"===L.slice(0,1)&&(t=!1,oe("Path cannot start with /")):oe("This field is required");var n=e&&t;e&&te(""),t&&oe(""),U(n)}),[F,L]);var ae=function(){var e=(0,r.Z)((0,i.Z)().mark((function e(t){return(0,i.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,fetch(t,{method:"GET"});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),le=function(){var e=(0,r.Z)((0,i.Z)().mark((function e(){var t,o,s;return(0,i.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=(0,g.LL)(L),o=(0,g.LL)(F),s="/api/v1/admin/inspect?volume=".concat(o,"&file=").concat(t,"&encrypt=").concat(E),ae(s).then(function(){var e=(0,r.Z)((0,i.Z)().mark((function e(t){var r,o,s,a;return(0,i.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.ok){e.next=5;break}return e.next=3,t.json();case 3:r=e.sent,n((0,y.Ih)({errorMessage:r.message,detailedError:r.code}));case 5:return e.next=7,t.blob();case 7:o=e.sent,s=t.headers.get("content-disposition").split('"')[1],a=(0,g.Do)(s)||"",(0,g.zZ)(o,s),H(s),O(a);case 13:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){n((0,y.Ih)(e))}));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),ce=function(){N(""),R(""),W(!0)};return(0,a.useEffect)((function(){n((0,y.Sc)("inspect"))}),[]),(0,S.jsxs)(a.Fragment,{children:[(0,S.jsx)(I.Z,{label:"Inspect",actions:(0,S.jsx)(T.Z,{})}),(0,S.jsxs)(u.Xgh,{children:[!se&&(0,S.jsx)(k.Z,{compactMode:!0}),h?(0,S.jsxs)(l.Z,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"flex-start",border:"1px solid #eaeaea",padding:{lg:"40px",xs:"15px"},flexWrap:"wrap",gap:{lg:"55px",xs:"20px"},height:{md:"calc(100vh - 120px)",xs:"100%"},flexFlow:{lg:"row",xs:"column"}},children:[(0,S.jsx)(l.Z,{sx:{border:"1px solid #eaeaea",flex:{md:2,xs:1},width:{lg:"auto",xs:"100%"},padding:{lg:"40px",xs:"15px"}},children:(0,S.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),se?le():s("/support/register")},children:[(0,S.jsx)(l.Z,{children:(0,S.jsx)(p.Z,{id:"inspect_volume",name:"inspect_volume",extraInputProps:{"data-test-id":"inspect_volume"},onChange:function(e){N(e.target.value)},label:"Volume or Bucket Name",value:F,error:ee,required:!0,placeholder:"test-bucket"})}),(0,S.jsx)(l.Z,{sx:{marginTop:"15px"},children:(0,S.jsx)(p.Z,{id:"inspect_path",name:"inspect_path",extraInputProps:{"data-test-id":"inspect_path"},error:re,onChange:function(e){R(e.target.value)},label:"File or Path to inspect",value:L,required:!0,placeholder:"test*/xl.meta"})}),(0,S.jsx)(l.Z,{sx:{marginTop:"25px"},children:(0,S.jsx)(x.Z,{classes:{inputLabel:t.switchLabel},extraInputProps:{"data-test-id":"inspect_encrypt"},label:"Encrypt",indicatorLabels:["True","False"],checked:E,value:"true",id:"inspect_encrypt",name:"inspect_encrypt",onChange:function(e){W(!E)}})}),(0,S.jsxs)(l.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",marginTop:"55px"},children:[(0,S.jsx)(u.zxk,{id:"inspect-clear-button",style:{marginRight:"15px"},type:"button",variant:"regular","data-test-id":"inspect-clear-button",onClick:ce,label:"Clear"}),(0,S.jsx)(u.zxk,{id:"inspect-start",type:"submit",variant:se?"callAction":"regular","data-test-id":"inspect-submit-button",disabled:!Q,label:"Inspect"})]})]})}),(0,S.jsx)(l.Z,{sx:{flex:1,minWidth:{md:"365px",xs:"100%"},width:"100%"},children:(0,S.jsx)(u.KfX,{title:"",iconComponent:null,help:(0,S.jsxs)(a.Fragment,{children:[(0,S.jsxs)(l.Z,{sx:{marginTop:"-25px",fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center",justifyContent:"flex-start",padding:"2px"},children:[(0,S.jsx)(l.Z,{sx:{backgroundColor:"#07193E",height:"15px",width:"15px",display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"50%",marginRight:"18px",padding:"3px","& .min-icon":{height:"11px",width:"11px",fill:"#ffffff"}},children:(0,S.jsx)(u.Gp8,{})}),"Learn more about the Inspect feature"]}),(0,S.jsx)(l.Z,{sx:{marginTop:"16px",fontWeight:600,fontStyle:"italic",fontSize:"14px"},children:"Examples:"}),(0,S.jsxs)(l.Z,{sx:{display:"flex",flexFlow:"column",fontSize:"14px",flex:"2","& .step-number":{color:"#ffffff",height:"25px",width:"25px",background:"#081C42",marginRight:"10px",textAlign:"center",fontWeight:600,borderRadius:"50%"},"& .step-row":{fontSize:"14px",display:"flex",marginTop:"15px",marginBottom:"15px","&.step-text":{fontWeight:400},"&:before":{content:"' '",height:"7px",width:"7px",backgroundColor:"#2781B0",marginRight:"10px",marginTop:"7px",flexShrink:0}},"& .code-block-container":{flex:"1",marginTop:"15px",marginLeft:"35px","& input":{color:"#737373"}},"& .example-code-block label":{display:"inline-block",width:{sm:"160px",xs:"100%"},fontWeight:600,fontSize:"14px"},"& code":{width:{sm:"100px",xs:"100%"},paddingLeft:"10px",fontFamily:"monospace",paddingRight:"10px",paddingTop:"3px",paddingBottom:"3px",borderRadius:"2px",border:"1px solid #eaeaea",fontSize:"10px",color:"#082146",fontWeight:500},"& .spacer":{marginBottom:"5px"}},children:[(0,S.jsxs)(l.Z,{children:[(0,S.jsx)(l.Z,{className:"step-row",children:(0,S.jsx)("div",{className:"step-text",children:"To Download 'xl.meta' for a specific object from all the drives in a zip file:"})}),(0,S.jsx)(z,{pathVal:"test*/xl.meta",volumeVal:"test-bucket"})]}),(0,S.jsxs)(l.Z,{children:[(0,S.jsx)(l.Z,{className:"step-row",children:(0,S.jsx)("div",{className:"step-text",children:"To Download all constituent parts for a specific object, and optionally encrypt the downloaded zip:"})}),(0,S.jsx)(z,{pathVal:"test*/xl.meta",volumeVal:"test*/*/part.*"})]}),(0,S.jsxs)(l.Z,{children:[(0,S.jsx)(l.Z,{className:"step-row",children:(0,S.jsxs)("div",{className:"step-text",children:["To Download recursively all objects at a prefix.",(0,S.jsx)("br",{}),"NOTE: This can be an expensive operation use it with caution."]})}),(0,S.jsx)(z,{pathVal:"test*/xl.meta",volumeVal:"test/**"})]})]}),(0,S.jsxs)(l.Z,{sx:{marginTop:"30px",marginLeft:"15px",fontSize:"14px"},children:["You can learn more at our"," ",(0,S.jsx)("a",{href:"https://github.com/minio/minio/tree/master/docs/debugging?ref=con",target:"_blank",rel:"noopener",children:"documentation"}),"."]})]})})})]}):(0,S.jsx)(j.Z,{iconComponent:(0,S.jsx)(u.Gp8,{}),entity:"Inspect"}),A?(0,S.jsx)(f.Z,{modalOpen:!0,title:"Inspect Decryption Key",onClose:function(){(0,g.kT)(G),O(""),ce()},titleIcon:(0,S.jsx)(u.tvm,{}),children:(0,S.jsxs)(c.Z,{component:"div",children:[(0,S.jsxs)(l.Z,{children:["This will be displayed only once. It cannot be recovered.",(0,S.jsx)("br",{}),"Use secure medium to share this key."]}),(0,S.jsx)("form",{noValidate:!0,onSubmit:function(){return!1},children:(0,S.jsx)(b.Z,{value:A})})]})}):null]})]})}))},73669:function(e,t,n){"use strict";var i=n(29439),r=n(72791),o=n(64554),s=n(29945),a=n(21435),l=n(80184);t.Z=function(e){var t=e.value,n=(0,r.useState)(!1),c=(0,i.Z)(n,2),u=c[0],d=c[1];return(0,l.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",flexFlow:{sm:"row",xs:"column"}},children:[(0,l.jsx)(a.Z,{id:"inspect-dec-key",name:"inspect-dec-key",placeholder:"",label:"",type:u?"text":"password",onChange:function(){},value:t,overlayIcon:(0,l.jsx)(s.TIy,{}),extraInputProps:{readOnly:!0},overlayAction:function(){return navigator.clipboard.writeText(t)}}),(0,l.jsx)(s.zxk,{id:"show-hide-key",style:{marginLeft:"10px"},variant:"callAction",onClick:function(){return d(!u)},label:"Show/Hide"})]})}},3579:function(e,t,n){"use strict";var i=n(64836);t.Z=void 0;var r=i(n(45649)),o=n(80184),s=(0,r.default)((0,o.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");t.Z=s},20165:function(e,t,n){"use strict";var i=n(64836);t.Z=void 0;var r=i(n(45649)),o=n(80184),s=(0,r.default)((0,o.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");t.Z=s},45649:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return i.createSvgIcon}});var i=n(28610)},31260:function(e,t,n){"use strict";var i=n(78949);t.Z=i.Z},28610:function(e,t,n){"use strict";n.r(t),n.d(t,{capitalize:function(){return r.Z},createChainedFunction:function(){return o.Z},createSvgIcon:function(){return s.Z},debounce:function(){return a.Z},deprecatedPropType:function(){return l},isMuiElement:function(){return c.Z},ownerDocument:function(){return u.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return p},setRef:function(){return x},unstable_ClassNameGenerator:function(){return b},unstable_useEnhancedEffect:function(){return f.Z},unstable_useId:function(){return h.Z},unsupportedProp:function(){return m},useControlled:function(){return v.Z},useEventCallback:function(){return Z.Z},useForkRef:function(){return g.Z},useIsFocusVisible:function(){return j.Z}});var i=n(55902),r=n(14036),o=n(31260),s=n(76189),a=n(83199);var l=function(e,t){return function(){return null}},c=n(19103),u=n(98301),d=n(17602);n(87462);var p=function(e,t){return function(){return null}},x=n(62971).Z,f=n(40162),h=n(67384);var m=function(e,t,n,i,r){return null},v=n(98278),Z=n(89683),g=n(42071),j=n(23031),b={configure:function(e){i.Z.configure(e)}}},19103:function(e,t,n){"use strict";n.d(t,{Z:function(){return r}});var i=n(72791);var r=function(e,t){return i.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}},64836:function(e){e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports}}]); +//# sourceMappingURL=8833.9ede4350.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/8833.9ede4350.chunk.js.map b/portal-ui/build/static/js/8833.9ede4350.chunk.js.map new file mode 100644 index 000000000..612fe8e23 --- /dev/null +++ b/portal-ui/build/static/js/8833.9ede4350.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/8833.9ede4350.chunk.js","mappings":"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","sources":["screens/Console/Common/DistributedOnly/DistributedOnly.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Tools/Inspect.tsx","screens/Console/Tools/KeyRevealer.tsx","../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box, Grid } from \"@mui/material\";\nimport { HelpBox } from \"mds\";\n\ninterface IDistributedOnly {\n iconComponent: any;\n entity: string;\n}\n\nconst DistributedOnly = ({ iconComponent, entity }: IDistributedOnly) => {\n return (\n \n \n theme.colors.link,\n textDecoration: \"underline\",\n },\n }}\n >\n
This feature is not available for a single-disk setup.
\n\n
\n Please deploy a server in{\" \"}\n \n Distributed Mode\n {\" \"}\n to use this feature.\n
\n \n }\n />\n
\n
\n );\n};\n\nexport default DistributedOnly;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { Box, DialogContentText } from \"@mui/material\";\nimport {\n Button,\n HelpBox,\n InspectMenuIcon,\n PageLayout,\n PasswordKeyIcon,\n} from \"mds\";\nimport { useNavigate } from \"react-router-dom\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport FormSwitchWrapper from \"../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport {\n deleteDialogStyles,\n modalStyleUtils,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { useSelector } from \"react-redux\";\nimport {\n deleteCookie,\n encodeURLString,\n getCookieValue,\n performDownload,\n} from \"../../../common/utils\";\nimport DistributedOnly from \"../Common/DistributedOnly/DistributedOnly\";\nimport KeyRevealer from \"./KeyRevealer\";\nimport {\n selDistSet,\n setErrorSnackMessage,\n setHelpName,\n} from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport RegisterCluster from \"../Support/RegisterCluster\";\nimport { registeredCluster } from \"../../../config\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n switchLabel: {\n fontWeight: \"normal\",\n },\n ...deleteDialogStyles,\n ...modalStyleUtils,\n });\n\nconst ExampleBlock = ({\n volumeVal,\n pathVal,\n}: {\n volumeVal: string;\n pathVal: string;\n}) => {\n return (\n \n \n \n {volumeVal}\n \n \n \n {pathVal}\n \n \n \n );\n};\n\nconst Inspect = ({ classes }: { classes: any }) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const distributedSetup = useSelector(selDistSet);\n\n const [volumeName, setVolumeName] = useState(\"\");\n const [inspectPath, setInspectPath] = useState(\"\");\n const [isEncrypt, setIsEncrypt] = useState(true);\n\n const [decryptionKey, setDecryptionKey] = useState(\"\");\n\n const [insFileName, setInsFileName] = useState(\"\");\n\n const [isFormValid, setIsFormValid] = useState(false);\n const [volumeError, setVolumeError] = useState(\"\");\n const [pathError, setPathError] = useState(\"\");\n const clusterRegistered = registeredCluster();\n /**\n * Validation Effect\n */\n useEffect(() => {\n let isVolValid;\n let isPathValid;\n\n isVolValid = volumeName.trim().length > 0;\n if (!isVolValid) {\n setVolumeError(\"This field is required\");\n } else if (volumeName.slice(0, 1) === \"/\") {\n isVolValid = false;\n setVolumeError(\"Volume/Bucket name cannot start with /\");\n }\n isPathValid = inspectPath.trim().length > 0;\n if (!inspectPath) {\n setPathError(\"This field is required\");\n } else if (inspectPath.slice(0, 1) === \"/\") {\n isPathValid = false;\n setPathError(\"Path cannot start with /\");\n }\n const isValid = isVolValid && isPathValid;\n\n if (isVolValid) {\n setVolumeError(\"\");\n }\n if (isPathValid) {\n setPathError(\"\");\n }\n\n setIsFormValid(isValid);\n }, [volumeName, inspectPath]);\n\n const makeRequest = async (url: string) => {\n return await fetch(url, { method: \"GET\" });\n };\n\n const performInspect = async () => {\n const file = encodeURLString(inspectPath);\n const volume = encodeURLString(volumeName);\n\n const urlOfInspectApi = `/api/v1/admin/inspect?volume=${volume}&file=${file}&encrypt=${isEncrypt}`;\n\n makeRequest(urlOfInspectApi)\n .then(async (res) => {\n if (!res.ok) {\n const resErr: any = await res.json();\n\n dispatch(\n setErrorSnackMessage({\n errorMessage: resErr.message,\n detailedError: resErr.code,\n }),\n );\n }\n const blob: Blob = await res.blob();\n\n //@ts-ignore\n const filename = res.headers.get(\"content-disposition\").split('\"')[1];\n const decryptKey = getCookieValue(filename) || \"\";\n\n performDownload(blob, filename);\n setInsFileName(filename);\n setDecryptionKey(decryptKey);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(err));\n });\n };\n\n const resetForm = () => {\n setVolumeName(\"\");\n setInspectPath(\"\");\n setIsEncrypt(true);\n };\n\n const onCloseDecKeyModal = () => {\n deleteCookie(insFileName);\n setDecryptionKey(\"\");\n resetForm();\n };\n\n useEffect(() => {\n dispatch(setHelpName(\"inspect\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n } />\n\n \n {!clusterRegistered && }\n {!distributedSetup ? (\n }\n entity={\"Inspect\"}\n />\n ) : (\n \n \n ) => {\n e.preventDefault();\n if (!clusterRegistered) {\n navigate(\"/support/register\");\n return;\n }\n performInspect();\n }}\n >\n \n ) => {\n setVolumeName(e.target.value);\n }}\n label=\"Volume or Bucket Name\"\n value={volumeName}\n error={volumeError}\n required\n placeholder={\"test-bucket\"}\n />\n \n \n ) => {\n setInspectPath(e.target.value);\n }}\n label=\"File or Path to inspect\"\n value={inspectPath}\n required\n placeholder={\"test*/xl.meta\"}\n />\n \n \n {\n setIsEncrypt(!isEncrypt);\n }}\n />\n \n \n \n \n \n \n \n \n \n \n \n \n \n Learn more about the Inspect feature\n \n\n \n Examples:\n \n\n \n \n \n
\n To Download 'xl.meta' for a specific object from all\n the drives in a zip file:\n
\n
\n\n \n
\n\n \n \n
\n To Download all constituent parts for a specific\n object, and optionally encrypt the downloaded zip:\n
\n
\n\n \n
\n \n \n
\n To Download recursively all objects at a prefix.\n
\n NOTE: This can be an expensive operation use it with\n caution.\n
\n
\n \n
\n \n\n \n You can learn more at our{\" \"}\n \n documentation\n \n .\n \n
\n }\n />\n \n \n )}\n {decryptionKey ? (\n }\n >\n \n \n This will be displayed only once. It cannot be recovered.\n
\n Use secure medium to share this key.\n
\n {\n return false;\n }}\n >\n \n \n
\n \n ) : null}\n \n \n );\n};\n\nexport default withStyles(styles)(Inspect);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { Box } from \"@mui/material\";\nimport { Button, CopyIcon } from \"mds\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\n\nconst KeyRevealer = ({ value }: { value: string }) => {\n const [shown, setShown] = useState(false);\n\n return (\n \n {}}\n value={value}\n overlayIcon={}\n extraInputProps={{\n readOnly: true,\n }}\n overlayAction={() => navigator.clipboard.writeText(value)}\n />\n\n setShown(!shown)}\n label={\"Show/Hide\"}\n />\n \n );\n};\n\nexport default KeyRevealer;\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_ref","iconComponent","entity","_jsx","Grid","container","alignItems","children","item","xs","HelpBox","title","concat","help","_jsxs","Box","sx","fontSize","display","border","flexFlow","md","color","theme","colors","link","textDecoration","href","target","rel","inputStyles","makeStyles","createStyles","_objectSpread","inputFieldStyles","InputField","props","classes","TextField","InputProps","withStyles","fieldBasic","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","label","onChange","value","id","name","_ref$type","type","_ref$autoComplete","autoComplete","_ref$disabled","disabled","_ref$multiline","multiline","_ref$tooltip","tooltip","_ref$index","index","_ref$error","error","_ref$required","required","_ref$placeholder","placeholder","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","className","onKeyPress","onFocus","onPaste","inputProps","_useState","useState","_useState2","_slicedToArray","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","React","clsx","errorInField","inputBoxContainer","InputLabel","htmlFor","noMinWidthLabel","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","fullWidth","helperText","inputRebase","IconButton","onClick","size","disableFocusRipple","disableRipple","disableTouchRipple","ExampleBlock","volumeVal","pathVal","marginBottom","sm","switchLabel","fontWeight","deleteDialogStyles","modalStyleUtils","_ref2","dispatch","useAppDispatch","navigate","useNavigate","distributedSetup","useSelector","selDistSet","volumeName","setVolumeName","_useState3","_useState4","inspectPath","setInspectPath","_useState5","_useState6","isEncrypt","setIsEncrypt","_useState7","_useState8","decryptionKey","setDecryptionKey","_useState9","_useState10","insFileName","setInsFileName","_useState11","_useState12","isFormValid","setIsFormValid","_useState13","_useState14","volumeError","setVolumeError","_useState15","_useState16","pathError","setPathError","clusterRegistered","registeredCluster","useEffect","isVolValid","isPathValid","trim","length","slice","isValid","makeRequest","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","url","wrap","_context","prev","next","fetch","method","abrupt","sent","stop","_x","apply","arguments","performInspect","_ref4","_callee3","file","volume","urlOfInspectApi","_context3","encodeURLString","then","_ref5","_callee2","res","resErr","blob","filename","decryptKey","_context2","ok","json","setErrorSnackMessage","errorMessage","message","detailedError","code","headers","get","split","getCookieValue","performDownload","_x2","catch","err","resetForm","setHelpName","Fragment","PageHeaderWrapper","actions","HelpMenu","PageLayout","RegisterCluster","compactMode","justifyContent","padding","lg","flexWrap","gap","height","flex","width","noValidate","onSubmit","e","preventDefault","InputBoxWrapper","marginTop","FormSwitchWrapper","indicatorLabels","checked","Button","style","marginRight","variant","minWidth","backgroundColor","borderRadius","fill","InspectMenuIcon","fontStyle","background","textAlign","content","flexShrink","marginLeft","paddingLeft","fontFamily","paddingRight","paddingTop","paddingBottom","DistributedOnly","ModalWrapper","modalOpen","onClose","deleteCookie","titleIcon","PasswordKeyIcon","DialogContentText","component","KeyRevealer","shown","setShown","CopyIcon","readOnly","navigator","clipboard","writeText","_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","enumerable","_utils","createSvgIcon","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","muiName","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/889.5dfe989a.chunk.js b/portal-ui/build/static/js/889.5dfe989a.chunk.js deleted file mode 100644 index 0913e2658..000000000 --- a/portal-ui/build/static/js/889.5dfe989a.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[889],{20889:function(e,a,t){t.r(a);var n=t(29439),i=t(1413),l=t(72791),r=t(29945),s=t(11135),o=t(25787),c=t(26181),d=t.n(c),u=t(61889),m=t(23814),h=t(21435),x=t(56028),f=t(90673),p=t(81159),g=t(45248),Z=t(17420),b=t(84741),v=t(87995),j=t(81551),C=t(31776),S=t(82342),y=t(80184);a.default=(0,o.Z)((function(e){return(0,s.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)({multiContainer:{display:"flex",alignItems:"center"}},m.bK),m.QV),m.DF),m.ID),{},{modalFormScrollable:(0,i.Z)((0,i.Z)({},m.ID.modalFormScrollable),{},{paddingRight:10})}))}))((function(e){var a=e.open,t=e.closeModalAndRefresh,i=e.classes,s=e.bucketName,o=e.setReplicationRules,c=(0,j.TL)(),m=(0,l.useState)(!1),k=(0,n.Z)(m,2),R=k[0],N=k[1],P=(0,l.useState)("1"),F=(0,n.Z)(P,2),w=F[0],D=F[1],T=(0,l.useState)(""),M=(0,n.Z)(T,2),B=M[0],K=M[1],L=(0,l.useState)(""),z=(0,n.Z)(L,2),I=z[0],U=z[1],_=(0,l.useState)(""),A=(0,n.Z)(_,2),E=A[0],O=A[1],G=(0,l.useState)(""),H=(0,n.Z)(G,2),V=H[0],Q=H[1],W=(0,l.useState)(""),Y=(0,n.Z)(W,2),q=Y[0],J=Y[1],X=(0,l.useState)(""),$=(0,n.Z)(X,2),ee=$[0],ae=$[1],te=(0,l.useState)(""),ne=(0,n.Z)(te,2),ie=ne[0],le=ne[1],re=(0,l.useState)(!0),se=(0,n.Z)(re,2),oe=se[0],ce=se[1],de=(0,l.useState)(!0),ue=(0,n.Z)(de,2),me=ue[0],he=ue[1],xe=(0,l.useState)(!0),fe=(0,n.Z)(xe,2),pe=fe[0],ge=fe[1],Ze=(0,l.useState)(!0),be=(0,n.Z)(Ze,2),ve=be[0],je=be[1],Ce=(0,l.useState)(""),Se=(0,n.Z)(Ce,2),ye=Se[0],ke=Se[1],Re=(0,l.useState)("async"),Ne=(0,n.Z)(Re,2),Pe=Ne[0],Fe=Ne[1],we=(0,l.useState)("100"),De=(0,n.Z)(we,2),Te=De[0],Me=De[1],Be=(0,l.useState)("Gi"),Ke=(0,n.Z)(Be,2),Le=Ke[0],ze=Ke[1],Ie=(0,l.useState)("60"),Ue=(0,n.Z)(Ie,2),_e=Ue[0],Ae=Ue[1];(0,l.useEffect)((function(){if(0!==o.length){var e=o.reduce((function(e,a){return a.priority>e?a.priority:e}),0);D((e+1).toString())}else D("1")}),[o]);return(0,y.jsx)(x.Z,{modalOpen:a,onClose:function(){t()},title:"Set Bucket Replication",titleIcon:(0,y.jsx)(r.xRg,{}),children:(0,y.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),N(!0),function(){var e=[{originBucket:s,destinationBucket:ee}],a=parseInt(_e),n="".concat(oe?"https://":"http://").concat(E),i={accessKey:B,secretKey:I,targetURL:n,region:ie,bucketsRelation:e,syncMode:Pe,bandwidth:"async"===Pe?parseInt((0,g.Pw)(Te,Le,!0)):0,healthCheckPeriod:a,prefix:q,tags:ye,replicateDeleteMarkers:me,replicateDeletes:pe,priority:parseInt(w),storageClass:V,replicateMetadata:ve};C.h.bucketsReplication.setMultiBucketReplication(i).then((function(e){N(!1);var a=d()(e.data,"replicationState",[]);if(a.length>0){var n=a[0];return N(!1),n.errorString&&""!==n.errorString?void c((0,v.zb)({errorMessage:n.errorString,detailedError:""})):void t()}c((0,v.zb)({errorMessage:"No changes applied",detailedError:""}))})).catch((function(e){N(!1),c((0,v.zb)((0,S.g)(e.error)))}))}()},children:(0,y.jsxs)(u.ZP,{container:!0,children:[(0,y.jsxs)(u.ZP,{item:!0,xs:12,className:i.modalFormScrollable,children:[(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)(h.Z,{id:"priority",name:"priority",onChange:function(e){e.target.validity.valid&&D(e.target.value)},label:"Priority",value:w,pattern:"[0-9]*"})}),(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)(h.Z,{id:"targetURL",name:"targetURL",onChange:function(e){O(e.target.value)},placeholder:"play.min.io",label:"Target URL",value:E})}),(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)(p.Z,{checked:oe,id:"useTLS",name:"useTLS",label:"Use TLS",onChange:function(e){ce(e.target.checked)},value:"yes"})}),(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)(h.Z,{id:"accessKey",name:"accessKey",onChange:function(e){K(e.target.value)},label:"Access Key",value:B})}),(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)(h.Z,{id:"secretKey",name:"secretKey",onChange:function(e){U(e.target.value)},label:"Secret Key",value:I})}),(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)(h.Z,{id:"targetBucket",name:"targetBucket",onChange:function(e){ae(e.target.value)},label:"Target Bucket",value:ee})}),(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)(h.Z,{id:"region",name:"region",onChange:function(e){le(e.target.value)},label:"Region",value:ie})}),(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)(f.Z,{id:"replication_mode",name:"replication_mode",onChange:function(e){Fe(e.target.value)},label:"Replication Mode",value:Pe,options:[{label:"Asynchronous",value:"async"},{label:"Synchronous",value:"sync"}]})}),"async"===Pe&&(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)("div",{className:i.multiContainer,children:(0,y.jsx)(h.Z,{type:"number",id:"bandwidth_scalar",name:"bandwidth_scalar",onChange:function(e){e.target.validity.valid&&Me(e.target.value)},label:"Bandwidth",value:Te,min:"0",pattern:"[0-9]*",overlayObject:(0,y.jsx)(b.Z,{id:"quota_unit",onUnitChange:function(e){ze(e)},unitSelected:Le,unitsList:(0,g.zQ)(["Ki"]),disabled:!1})})})}),(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)(h.Z,{id:"healthCheck",name:"healthCheck",onChange:function(e){Ae(e.target.value)},label:"Health Check Duration",value:_e})}),(0,y.jsx)(u.ZP,{item:!0,xs:12,className:"".concat(i.spacerTop," ").concat(i.formFieldRow),children:(0,y.jsx)(h.Z,{id:"storageClass",name:"storageClass",onChange:function(e){Q(e.target.value)},placeholder:"STANDARD_IA,REDUCED_REDUNDANCY etc",label:"Storage Class",value:V})}),(0,y.jsx)(u.ZP,{item:!0,xs:12,children:(0,y.jsxs)("fieldset",{className:i.fieldGroup,children:[(0,y.jsx)("legend",{className:i.descriptionText,children:"Object Filters"}),(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)(h.Z,{id:"prefix",name:"prefix",onChange:function(e){J(e.target.value)},placeholder:"prefix",label:"Prefix",value:q})}),(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)(Z.Z,{name:"tags",label:"Tags",elements:"",onChange:function(e){ke(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})})]})}),(0,y.jsx)(u.ZP,{item:!0,xs:12,children:(0,y.jsxs)("fieldset",{className:i.fieldGroup,children:[(0,y.jsx)("legend",{className:i.descriptionText,children:"Replication Options"}),(0,y.jsxs)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:[(0,y.jsx)(p.Z,{checked:ve,id:"metadatataSync",name:"metadatataSync",label:"Metadata Sync",onChange:function(e){je(e.target.checked)},value:ve,description:"Metadata Sync"}),(0,y.jsx)(p.Z,{checked:me,id:"deleteMarker",name:"deleteMarker",label:"Delete Marker",onChange:function(e){he(e.target.checked)},value:me,description:"Replicate soft deletes"})]}),(0,y.jsx)(u.ZP,{item:!0,xs:12,className:i.formFieldRow,children:(0,y.jsx)(p.Z,{checked:pe,id:"repDelete",name:"repDelete",label:"Deletes",onChange:function(e){ge(e.target.checked)},value:pe,description:"Replicate versioned deletes"})})]})})]}),(0,y.jsxs)(u.ZP,{item:!0,xs:12,className:i.modalButtonBar,children:[(0,y.jsx)(r.zxk,{id:"cancel",type:"button",variant:"regular",disabled:R,onClick:function(){t()},label:"Cancel"}),(0,y.jsx)(r.zxk,{id:"submit",type:"submit",variant:"callAction",color:"primary",disabled:R,label:"Save"})]})]})})})}))},84741:function(e,a,t){var n=t(29439),i=t(72791),l=t(11135),r=t(25787),s=t(71715),o=t(77865),c=t(80184);a.Z=(0,r.Z)((function(e){return(0,l.Z)({buttonTrigger:{border:"#F0F2F2 1px solid",borderRadius:3,color:"#838383",backgroundColor:"#fff",fontSize:12}})}))((function(e){var a=e.classes,t=e.id,l=e.unitSelected,r=e.unitsList,d=e.disabled,u=void 0!==d&&d,m=e.onUnitChange,h=i.useState(null),x=(0,n.Z)(h,2),f=x[0],p=x[1],g=Boolean(f),Z=function(e){p(null),""!==e&&m&&m(e)};return(0,c.jsxs)(i.Fragment,{children:[(0,c.jsx)("button",{id:"".concat(t,"-button"),"aria-controls":"".concat(t,"-menu"),"aria-haspopup":"true","aria-expanded":g?"true":void 0,onClick:function(e){p(e.currentTarget)},className:a.buttonTrigger,disabled:u,type:"button",children:l}),(0,c.jsx)(s.Z,{id:"".concat(t,"-menu"),"aria-labelledby":"".concat(t,"-button"),anchorEl:f,open:g,onClose:function(){Z("")},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:r.map((function(e){return(0,c.jsx)(o.Z,{onClick:function(){return Z(e.value)},children:e.label},"itemUnit-".concat(e.value,"-").concat(e.label))}))})]})}))},90673:function(e,a,t){var n=t(1413),i=t(72791),l=t(61889),r=t(886),s=t(30829),o=t(20068),c=t(68096),d=t(58406),u=t(77865),m=t(11135),h=t(25787),x=t(23814),f=t(29945),p=t(80184),g=(0,h.Z)((function(e){return(0,m.Z)({root:{height:38,lineHeight:1,"label + &":{marginTop:e.spacing(3)}},input:{height:38,position:"relative",color:"#07193E",fontSize:13,fontWeight:600,padding:"8px 20px 10px 10px",border:"#e5e5e5 1px solid",borderRadius:4,display:"flex",alignItems:"center","&:hover":{borderColor:"#393939"},"&:focus":{backgroundColor:"#fff"}}})}))(r.ZP);a.Z=(0,h.Z)((function(e){return(0,m.Z)((0,n.Z)((0,n.Z)((0,n.Z)({},x.YI),x.Hr),{},{fieldContainer:{display:"flex","@media (max-width: 600px)":{flexFlow:"column"}}}))}))((function(e){var a=e.classes,t=e.id,n=e.name,r=e.onChange,m=e.options,h=e.label,x=e.tooltip,Z=void 0===x?"":x,b=e.value,v=e.disabled,j=void 0!==v&&v;return(0,p.jsx)(i.Fragment,{children:(0,p.jsxs)(l.ZP,{item:!0,xs:12,className:a.fieldContainer,children:[""!==h&&(0,p.jsxs)(s.Z,{htmlFor:t,className:a.inputLabel,children:[(0,p.jsx)("span",{children:h}),""!==Z&&(0,p.jsx)("div",{className:a.tooltipContainer,children:(0,p.jsx)(o.Z,{title:Z,placement:"top-start",children:(0,p.jsx)("div",{className:a.tooltip,children:(0,p.jsx)(f.byK,{})})})})]}),(0,p.jsx)(c.Z,{fullWidth:!0,children:(0,p.jsx)(d.Z,{id:t,name:n,value:b,onChange:r,input:(0,p.jsx)(g,{}),disabled:j,children:m.map((function(e){return(0,p.jsx)(u.Z,{value:e.value,children:e.label},"select-".concat(n,"-").concat(e.label))}))})})]})})}))}}]); -//# sourceMappingURL=889.5dfe989a.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/889.5dfe989a.chunk.js.map b/portal-ui/build/static/js/889.5dfe989a.chunk.js.map deleted file mode 100644 index dd0beda54..000000000 --- a/portal-ui/build/static/js/889.5dfe989a.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/889.5dfe989a.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AddReplicationModal.tsx","screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu.tsx","screens/Console/Common/FormComponents/SelectWrapper/SelectWrapper.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport { BucketReplicationIcon, Button } from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { SelectChangeEvent } from \"@mui/material\";\nimport get from \"lodash/get\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n createTenantCommon,\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport { BucketReplicationRule } from \"../types\";\n\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport { getBytes, k8sScalarUnitsExcluding } from \"../../../../common/utils\";\nimport QueryMultiSelector from \"../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector\";\nimport InputUnitMenu from \"../../Common/FormComponents/InputUnitMenu/InputUnitMenu\";\n\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IReplicationModal {\n open: boolean;\n closeModalAndRefresh: () => any;\n classes: any;\n bucketName: string;\n\n setReplicationRules: BucketReplicationRule[];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n multiContainer: {\n display: \"flex\",\n alignItems: \"center\",\n },\n ...spacingUtils,\n ...createTenantCommon,\n ...formFieldStyles,\n ...modalStyleUtils,\n modalFormScrollable: {\n ...modalStyleUtils.modalFormScrollable,\n paddingRight: 10,\n },\n });\n\nconst AddReplicationModal = ({\n open,\n closeModalAndRefresh,\n classes,\n bucketName,\n\n setReplicationRules,\n}: IReplicationModal) => {\n const dispatch = useAppDispatch();\n const [addLoading, setAddLoading] = useState(false);\n const [priority, setPriority] = useState(\"1\");\n const [accessKey, setAccessKey] = useState(\"\");\n const [secretKey, setSecretKey] = useState(\"\");\n const [targetURL, setTargetURL] = useState(\"\");\n const [targetStorageClass, setTargetStorageClass] = useState(\"\");\n const [prefix, setPrefix] = useState(\"\");\n const [targetBucket, setTargetBucket] = useState(\"\");\n const [region, setRegion] = useState(\"\");\n const [useTLS, setUseTLS] = useState(true);\n const [repDeleteMarker, setRepDeleteMarker] = useState(true);\n const [repDelete, setRepDelete] = useState(true);\n const [metadataSync, setMetadataSync] = useState(true);\n const [tags, setTags] = useState(\"\");\n const [replicationMode, setReplicationMode] = useState<\"async\" | \"sync\">(\n \"async\",\n );\n const [bandwidthScalar, setBandwidthScalar] = useState(\"100\");\n const [bandwidthUnit, setBandwidthUnit] = useState(\"Gi\");\n const [healthCheck, setHealthCheck] = useState(\"60\");\n\n useEffect(() => {\n if (setReplicationRules.length === 0) {\n setPriority(\"1\");\n return;\n }\n\n const greatestValue = setReplicationRules.reduce((prevAcc, currValue) => {\n if (currValue.priority > prevAcc) {\n return currValue.priority;\n }\n return prevAcc;\n }, 0);\n\n const nextPriority = greatestValue + 1;\n setPriority(nextPriority.toString());\n }, [setReplicationRules]);\n\n const addRecord = () => {\n const replicate = [\n {\n originBucket: bucketName,\n destinationBucket: targetBucket,\n },\n ];\n\n const hc = parseInt(healthCheck);\n\n const endURL = `${useTLS ? \"https://\" : \"http://\"}${targetURL}`;\n\n const remoteBucketsInfo = {\n accessKey: accessKey,\n secretKey: secretKey,\n targetURL: endURL,\n region: region,\n bucketsRelation: replicate,\n syncMode: replicationMode,\n bandwidth:\n replicationMode === \"async\"\n ? parseInt(getBytes(bandwidthScalar, bandwidthUnit, true))\n : 0,\n healthCheckPeriod: hc,\n prefix: prefix,\n tags: tags,\n replicateDeleteMarkers: repDeleteMarker,\n replicateDeletes: repDelete,\n priority: parseInt(priority),\n storageClass: targetStorageClass,\n replicateMetadata: metadataSync,\n };\n\n api.bucketsReplication\n .setMultiBucketReplication(remoteBucketsInfo)\n .then((res) => {\n setAddLoading(false);\n\n const states = get(res.data, \"replicationState\", []);\n\n if (states.length > 0) {\n const itemVal = states[0];\n\n setAddLoading(false);\n\n if (itemVal.errorString && itemVal.errorString !== \"\") {\n dispatch(\n setModalErrorSnackMessage({\n errorMessage: itemVal.errorString,\n detailedError: \"\",\n }),\n );\n return;\n }\n\n closeModalAndRefresh();\n\n return;\n }\n dispatch(\n setModalErrorSnackMessage({\n errorMessage: \"No changes applied\",\n detailedError: \"\",\n }),\n );\n })\n .catch((err) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n return (\n {\n closeModalAndRefresh();\n }}\n title=\"Set Bucket Replication\"\n titleIcon={}\n >\n ) => {\n e.preventDefault();\n setAddLoading(true);\n addRecord();\n }}\n >\n \n \n \n ) => {\n if (e.target.validity.valid) {\n setPriority(e.target.value);\n }\n }}\n label=\"Priority\"\n value={priority}\n pattern={\"[0-9]*\"}\n />\n \n \n ) => {\n setTargetURL(e.target.value);\n }}\n placeholder=\"play.min.io\"\n label=\"Target URL\"\n value={targetURL}\n />\n \n \n {\n setUseTLS(e.target.checked);\n }}\n value=\"yes\"\n />\n \n \n ) => {\n setAccessKey(e.target.value);\n }}\n label=\"Access Key\"\n value={accessKey}\n />\n \n \n ) => {\n setSecretKey(e.target.value);\n }}\n label=\"Secret Key\"\n value={secretKey}\n />\n \n \n ) => {\n setTargetBucket(e.target.value);\n }}\n label=\"Target Bucket\"\n value={targetBucket}\n />\n \n \n ) => {\n setRegion(e.target.value);\n }}\n label=\"Region\"\n value={region}\n />\n \n \n ) => {\n setReplicationMode(e.target.value as \"async\" | \"sync\");\n }}\n label=\"Replication Mode\"\n value={replicationMode}\n options={[\n { label: \"Asynchronous\", value: \"async\" },\n { label: \"Synchronous\", value: \"sync\" },\n ]}\n />\n \n\n {replicationMode === \"async\" && (\n \n
\n ) => {\n if (e.target.validity.valid) {\n setBandwidthScalar(e.target.value as string);\n }\n }}\n label=\"Bandwidth\"\n value={bandwidthScalar}\n min=\"0\"\n pattern={\"[0-9]*\"}\n overlayObject={\n {\n setBandwidthUnit(newValue);\n }}\n unitSelected={bandwidthUnit}\n unitsList={k8sScalarUnitsExcluding([\"Ki\"])}\n disabled={false}\n />\n }\n />\n
\n
\n )}\n \n ) => {\n setHealthCheck(e.target.value as string);\n }}\n label=\"Health Check Duration\"\n value={healthCheck}\n />\n \n \n ) => {\n setTargetStorageClass(e.target.value);\n }}\n placeholder=\"STANDARD_IA,REDUCED_REDUNDANCY etc\"\n label=\"Storage Class\"\n value={targetStorageClass}\n />\n
\n \n
\n \n Object Filters\n \n \n ) => {\n setPrefix(e.target.value);\n }}\n placeholder=\"prefix\"\n label=\"Prefix\"\n value={prefix}\n />\n \n \n {\n setTags(vl);\n }}\n keyPlaceholder=\"Tag Key\"\n valuePlaceholder=\"Tag Value\"\n withBorder\n />\n \n
\n
\n \n
\n \n Replication Options\n \n \n {\n setMetadataSync(e.target.checked);\n }}\n value={metadataSync}\n description={\"Metadata Sync\"}\n />\n {\n setRepDeleteMarker(e.target.checked);\n }}\n value={repDeleteMarker}\n description={\"Replicate soft deletes\"}\n />\n \n \n {\n setRepDelete(e.target.checked);\n }}\n value={repDelete}\n description={\"Replicate versioned deletes\"}\n />\n \n
\n
\n
\n \n {\n closeModalAndRefresh();\n }}\n label={\"Cancel\"}\n />\n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(AddReplicationModal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { selectorTypes } from \"../SelectWrapper/SelectWrapper\";\nimport { Menu, MenuItem } from \"@mui/material\";\n\ninterface IInputUnitBox {\n classes: any;\n id: string;\n unitSelected: string;\n unitsList: selectorTypes[];\n disabled?: boolean;\n onUnitChange?: (newValue: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonTrigger: {\n border: \"#F0F2F2 1px solid\",\n borderRadius: 3,\n color: \"#838383\",\n backgroundColor: \"#fff\",\n fontSize: 12,\n },\n });\n\nconst InputUnitMenu = ({\n classes,\n id,\n unitSelected,\n unitsList,\n disabled = false,\n onUnitChange,\n}: IInputUnitBox) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (newUnit: string) => {\n setAnchorEl(null);\n if (newUnit !== \"\" && onUnitChange) {\n onUnitChange(newUnit);\n }\n };\n\n return (\n \n \n {unitSelected}\n \n {\n handleClose(\"\");\n }}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"center\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"center\",\n }}\n >\n {unitsList.map((unit) => (\n handleClose(unit.value)}\n key={`itemUnit-${unit.value}-${unit.label}`}\n >\n {unit.label}\n \n ))}\n \n \n );\n};\n\nexport default withStyles(styles)(InputUnitMenu);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n FormControl,\n InputBase,\n InputLabel,\n MenuItem,\n Select,\n SelectChangeEvent,\n Tooltip,\n} from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\nexport interface selectorTypes {\n label: string;\n value: string;\n}\n\ninterface SelectProps {\n options: selectorTypes[];\n value: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n onChange: (e: SelectChangeEvent) => void;\n disabled?: boolean;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n fieldContainer: {\n display: \"flex\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n height: 38,\n lineHeight: 1,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n },\n input: {\n height: 38,\n position: \"relative\",\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n padding: \"8px 20px 10px 10px\",\n border: \"#e5e5e5 1px solid\",\n borderRadius: 4,\n display: \"flex\",\n alignItems: \"center\",\n \"&:hover\": {\n borderColor: \"#393939\",\n },\n \"&:focus\": {\n backgroundColor: \"#fff\",\n },\n },\n }),\n)(InputBase);\n\nconst SelectWrapper = ({\n classes,\n id,\n name,\n onChange,\n options,\n label,\n tooltip = \"\",\n value,\n disabled = false,\n}: SelectProps) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n \n }\n disabled={disabled}\n >\n {options.map((option) => (\n \n {option.label}\n \n ))}\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(SelectWrapper);\n"],"names":["withStyles","theme","createStyles","_objectSpread","multiContainer","display","alignItems","spacingUtils","createTenantCommon","formFieldStyles","modalStyleUtils","modalFormScrollable","paddingRight","_ref","open","closeModalAndRefresh","classes","bucketName","setReplicationRules","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","addLoading","setAddLoading","_useState3","_useState4","priority","setPriority","_useState5","_useState6","accessKey","setAccessKey","_useState7","_useState8","secretKey","setSecretKey","_useState9","_useState10","targetURL","setTargetURL","_useState11","_useState12","targetStorageClass","setTargetStorageClass","_useState13","_useState14","prefix","setPrefix","_useState15","_useState16","targetBucket","setTargetBucket","_useState17","_useState18","region","setRegion","_useState19","_useState20","useTLS","setUseTLS","_useState21","_useState22","repDeleteMarker","setRepDeleteMarker","_useState23","_useState24","repDelete","setRepDelete","_useState25","_useState26","metadataSync","setMetadataSync","_useState27","_useState28","tags","setTags","_useState29","_useState30","replicationMode","setReplicationMode","_useState31","_useState32","bandwidthScalar","setBandwidthScalar","_useState33","_useState34","bandwidthUnit","setBandwidthUnit","_useState35","_useState36","healthCheck","setHealthCheck","useEffect","length","greatestValue","reduce","prevAcc","currValue","toString","_jsx","ModalWrapper","modalOpen","onClose","title","titleIcon","BucketReplicationIcon","children","noValidate","autoComplete","onSubmit","e","preventDefault","replicate","originBucket","destinationBucket","hc","parseInt","endURL","concat","remoteBucketsInfo","bucketsRelation","syncMode","bandwidth","getBytes","healthCheckPeriod","replicateDeleteMarkers","replicateDeletes","storageClass","replicateMetadata","api","bucketsReplication","setMultiBucketReplication","then","res","states","get","data","itemVal","errorString","setModalErrorSnackMessage","errorMessage","detailedError","catch","err","errorToHandler","error","addRecord","_jsxs","Grid","container","item","xs","className","formFieldRow","InputBoxWrapper","id","name","onChange","target","validity","valid","value","label","pattern","placeholder","FormSwitchWrapper","checked","SelectWrapper","options","type","min","overlayObject","InputUnitMenu","onUnitChange","newValue","unitSelected","unitsList","k8sScalarUnitsExcluding","disabled","spacerTop","fieldGroup","descriptionText","QueryMultiSelector","elements","vl","keyPlaceholder","valuePlaceholder","withBorder","description","modalButtonBar","Button","variant","onClick","color","buttonTrigger","border","borderRadius","backgroundColor","fontSize","_ref$disabled","_React$useState","React","_React$useState2","anchorEl","setAnchorEl","Boolean","handleClose","newUnit","Fragment","undefined","event","currentTarget","Menu","anchorOrigin","vertical","horizontal","transformOrigin","map","unit","MenuItem","SelectStyled","root","height","lineHeight","marginTop","spacing","input","position","fontWeight","padding","borderColor","InputBase","fieldBasic","tooltipHelper","fieldContainer","flexFlow","_ref$tooltip","tooltip","InputLabel","htmlFor","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","FormControl","fullWidth","Select","option"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/889.c7eff573.chunk.js b/portal-ui/build/static/js/889.c7eff573.chunk.js new file mode 100644 index 000000000..0b209c872 --- /dev/null +++ b/portal-ui/build/static/js/889.c7eff573.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[889],{20889:function(e,t,a){a.r(t);var n=a(29439),i=a(72791),r=a(26181),l=a.n(r),o=a(29945),c=a(31776),s=a(82342),u=a(23814),d=a(45248),g=a(87995),h=a(81551),p=a(56028),f=a(17420),v=a(84741),x=a(80184);t.default=function(e){var t=e.open,a=e.closeModalAndRefresh,r=e.bucketName,m=e.setReplicationRules,b=(0,h.TL)(),j=(0,i.useState)(!1),y=(0,n.Z)(j,2),S=y[0],C=y[1],k=(0,i.useState)("1"),Z=(0,n.Z)(k,2),R=Z[0],z=Z[1],B=(0,i.useState)(""),D=(0,n.Z)(B,2),I=D[0],w=D[1],T=(0,i.useState)(""),M=(0,n.Z)(T,2),W=M[0],E=M[1],L=(0,i.useState)(""),K=(0,n.Z)(L,2),N=K[0],P=K[1],A=(0,i.useState)(""),U=(0,n.Z)(A,2),_=U[0],F=U[1],O=(0,i.useState)(""),q=(0,n.Z)(O,2),V=q[0],Y=q[1],G=(0,i.useState)(""),H=(0,n.Z)(G,2),Q=H[0],J=H[1],X=(0,i.useState)(""),$=(0,n.Z)(X,2),ee=$[0],te=$[1],ae=(0,i.useState)(!0),ne=(0,n.Z)(ae,2),ie=ne[0],re=ne[1],le=(0,i.useState)(!0),oe=(0,n.Z)(le,2),ce=oe[0],se=oe[1],ue=(0,i.useState)(!0),de=(0,n.Z)(ue,2),ge=de[0],he=de[1],pe=(0,i.useState)(!0),fe=(0,n.Z)(pe,2),ve=fe[0],xe=fe[1],me=(0,i.useState)(""),be=(0,n.Z)(me,2),je=be[0],ye=be[1],Se=(0,i.useState)("async"),Ce=(0,n.Z)(Se,2),ke=Ce[0],Ze=Ce[1],Re=(0,i.useState)("100"),ze=(0,n.Z)(Re,2),Be=ze[0],De=ze[1],Ie=(0,i.useState)("Gi"),we=(0,n.Z)(Ie,2),Te=we[0],Me=we[1],We=(0,i.useState)("60"),Ee=(0,n.Z)(We,2),Le=Ee[0],Ke=Ee[1];(0,i.useEffect)((function(){if(0!==m.length){var e=m.reduce((function(e,t){return t.priority>e?t.priority:e}),0);z((e+1).toString())}else z("1")}),[m]);return(0,x.jsx)(p.Z,{modalOpen:t,onClose:function(){a()},title:"Set Bucket Replication",titleIcon:(0,x.jsx)(o.xRg,{}),children:(0,x.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),C(!0),function(){var e=[{originBucket:r,destinationBucket:Q}],t=parseInt(Le),n="".concat(ie?"https://":"http://").concat(N),i={accessKey:I,secretKey:W,targetURL:n,region:ee,bucketsRelation:e,syncMode:ke,bandwidth:"async"===ke?parseInt((0,d.Pw)(Be,Te,!0)):0,healthCheckPeriod:t,prefix:V,tags:je,replicateDeleteMarkers:ce,replicateDeletes:ge,priority:parseInt(R),storageClass:_,replicateMetadata:ve};c.h.bucketsReplication.setMultiBucketReplication(i).then((function(e){C(!1);var t=l()(e.data,"replicationState",[]);if(t.length>0){var n=t[0];return C(!1),n.errorString&&""!==n.errorString?void b((0,g.zb)({errorMessage:n.errorString,detailedError:""})):void a()}b((0,g.zb)({errorMessage:"No changes applied",detailedError:""}))})).catch((function(e){C(!1),b((0,g.zb)((0,s.g)(e.error)))}))}()},children:(0,x.jsxs)(o.ltY,{withBorders:!1,containerPadding:!1,children:[(0,x.jsx)(o.Wzg,{id:"priority",name:"priority",onChange:function(e){e.target.validity.valid&&z(e.target.value)},label:"Priority",value:R,pattern:"[0-9]*"}),(0,x.jsx)(o.Wzg,{id:"targetURL",name:"targetURL",onChange:function(e){P(e.target.value)},placeholder:"play.min.io",label:"Target URL",value:N}),(0,x.jsx)(o.rsf,{checked:ie,id:"useTLS",name:"useTLS",label:"Use TLS",onChange:function(e){re(e.target.checked)},value:"yes"}),(0,x.jsx)(o.Wzg,{id:"accessKey",name:"accessKey",onChange:function(e){w(e.target.value)},label:"Access Key",value:I}),(0,x.jsx)(o.Wzg,{id:"secretKey",name:"secretKey",onChange:function(e){E(e.target.value)},label:"Secret Key",value:W}),(0,x.jsx)(o.Wzg,{id:"targetBucket",name:"targetBucket",onChange:function(e){J(e.target.value)},label:"Target Bucket",value:Q}),(0,x.jsx)(o.Wzg,{id:"region",name:"region",onChange:function(e){te(e.target.value)},label:"Region",value:ee}),(0,x.jsx)(o.PhF,{id:"replication_mode",name:"replication_mode",onChange:function(e){Ze(e)},label:"Replication Mode",value:ke,options:[{label:"Asynchronous",value:"async"},{label:"Synchronous",value:"sync"}]}),"async"===ke&&(0,x.jsx)(o.xuv,{className:"inputItem",children:(0,x.jsx)(o.Wzg,{type:"number",id:"bandwidth_scalar",name:"bandwidth_scalar",onChange:function(e){e.target.validity.valid&&De(e.target.value)},label:"Bandwidth",value:Be,min:"0",pattern:"[0-9]*",overlayObject:(0,x.jsx)(v.Z,{id:"quota_unit",onUnitChange:function(e){Me(e)},unitSelected:Te,unitsList:(0,d.zQ)(["Ki"]),disabled:!1})})}),(0,x.jsx)(o.Wzg,{id:"healthCheck",name:"healthCheck",onChange:function(e){Ke(e.target.value)},label:"Health Check Duration",value:Le}),(0,x.jsx)(o.Wzg,{id:"storageClass",name:"storageClass",onChange:function(e){F(e.target.value)},placeholder:"STANDARD_IA,REDUCED_REDUNDANCY etc",label:"Storage Class",value:_}),(0,x.jsxs)("fieldset",{className:"inputItem",children:[(0,x.jsx)("legend",{children:"Object Filters"}),(0,x.jsx)(o.Wzg,{id:"prefix",name:"prefix",onChange:function(e){Y(e.target.value)},placeholder:"prefix",label:"Prefix",value:V}),(0,x.jsx)(f.Z,{name:"tags",label:"Tags",elements:"",onChange:function(e){ye(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})]}),(0,x.jsxs)("fieldset",{className:"inputItem",children:[(0,x.jsx)("legend",{children:"Replication Options"}),(0,x.jsx)(o.rsf,{checked:ve,id:"metadatataSync",name:"metadatataSync",label:"Metadata Sync",onChange:function(e){xe(e.target.checked)},description:"Metadata Sync"}),(0,x.jsx)(o.rsf,{checked:ce,id:"deleteMarker",name:"deleteMarker",label:"Delete Marker",onChange:function(e){se(e.target.checked)},description:"Replicate soft deletes"}),(0,x.jsx)(o.rsf,{checked:ge,id:"repDelete",name:"repDelete",label:"Deletes",onChange:function(e){he(e.target.checked)},description:"Replicate versioned deletes"})]}),(0,x.jsxs)(o.rjZ,{item:!0,xs:12,sx:u.ID.modalButtonBar,children:[(0,x.jsx)(o.zxk,{id:"cancel",type:"button",variant:"regular",disabled:S,onClick:function(){a()},label:"Cancel"}),(0,x.jsx)(o.zxk,{id:"submit",type:"submit",variant:"callAction",color:"primary",disabled:S,label:"Save"})]})]})})})}},84741:function(e,t,a){var n=a(29439),i=a(72791),r=a(11135),l=a(25787),o=a(71715),c=a(77865),s=a(80184);t.Z=(0,l.Z)((function(e){return(0,r.Z)({buttonTrigger:{border:"#F0F2F2 1px solid",borderRadius:3,color:"#838383",backgroundColor:"#fff",fontSize:12}})}))((function(e){var t=e.classes,a=e.id,r=e.unitSelected,l=e.unitsList,u=e.disabled,d=void 0!==u&&u,g=e.onUnitChange,h=i.useState(null),p=(0,n.Z)(h,2),f=p[0],v=p[1],x=Boolean(f),m=function(e){v(null),""!==e&&g&&g(e)};return(0,s.jsxs)(i.Fragment,{children:[(0,s.jsx)("button",{id:"".concat(a,"-button"),"aria-controls":"".concat(a,"-menu"),"aria-haspopup":"true","aria-expanded":x?"true":void 0,onClick:function(e){v(e.currentTarget)},className:t.buttonTrigger,disabled:d,type:"button",children:r}),(0,s.jsx)(o.Z,{id:"".concat(a,"-menu"),"aria-labelledby":"".concat(a,"-button"),anchorEl:f,open:x,onClose:function(){m("")},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:l.map((function(e){return(0,s.jsx)(c.Z,{onClick:function(){return m(e.value)},children:e.label},"itemUnit-".concat(e.value,"-").concat(e.label))}))})]})}))},17420:function(e,t,a){var n=a(93433),i=a(29439),r=a(72791),l=a(26181),o=a.n(l),c=a(48573),s=a.n(c),u=a(29945),d=a(80184);t.Z=function(e){var t=e.elements,a=e.name,l=e.label,c=e.tooltip,g=void 0===c?"":c,h=e.keyPlaceholder,p=void 0===h?"":h,f=e.valuePlaceholder,v=void 0===f?"":f,x=e.onChange,m=e.withBorder,b=void 0!==m&&m,j=(0,r.useState)([""]),y=(0,i.Z)(j,2),S=y[0],C=y[1],k=(0,r.useState)([""]),Z=(0,i.Z)(k,2),R=Z[0],z=Z[1],B=(0,r.createRef)();(0,r.useEffect)((function(){if(1===S.length&&""===S[0]&&1===R.length&&""===R[0]&&t&&""!==t){var e=t.split("&"),a=[],n=[];e.forEach((function(e){var t=e.split("=");2===t.length&&(a.push(t[0]),n.push(t[1]))})),a.push(""),n.push(""),C(a),z(n)}}),[S,R,t]),(0,r.useEffect)((function(){var e=B.current;e&&S.length>1&&e.scrollIntoView(!1)}),[S]);var D=(0,r.useRef)(!0);(0,r.useLayoutEffect)((function(){D.current?D.current=!1:T()}),[S,R]);var I=function(e){e.persist();var t=(0,n.Z)(S),a=o()(e.target,"dataset.index","0");t[parseInt(a)]=e.target.value,C(t)},w=function(e){e.persist();var t=(0,n.Z)(R),a=o()(e.target,"dataset.index","0");t[parseInt(a)]=e.target.value,z(t)},T=s()((function(){var e="";S.forEach((function(t,a){if(S[a]&&R[a]){var n="".concat(t,"=").concat(R[a]);0!==a&&(n="&".concat(n)),e="".concat(e).concat(n)}})),x(e)}),500),M=R.map((function(e,t){return(0,d.jsxs)(u.rjZ,{item:!0,xs:12,className:"lineInputBoxes inputItem",children:[(0,d.jsx)(u.Wzg,{id:"".concat(a,"-key-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:S[t],onChange:I,index:t,placeholder:p}),(0,d.jsx)("span",{className:"queryDiv",children:":"}),(0,d.jsx)(u.Wzg,{id:"".concat(a,"-value-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:R[t],onChange:w,index:t,placeholder:v,overlayIcon:t===R.length-1?(0,d.jsx)(u.dtP,{}):null,overlayAction:function(){!function(){if(""!==S[S.length-1].trim()&&""!==R[R.length-1].trim()){var e=(0,n.Z)(S),t=(0,n.Z)(R);e.push(""),t.push(""),C(e),z(t)}}()}})]},"query-pair-".concat(a,"-").concat(t.toString()))}));return(0,d.jsx)(r.Fragment,{children:(0,d.jsxs)(u.rjZ,{item:!0,xs:12,sx:{"& .lineInputBoxes":{display:"flex"},"& .queryDiv":{alignSelf:"center",margin:"-15px 4px 0",fontWeight:600}},children:[(0,d.jsxs)(u.AZs,{children:[l,""!==g&&(0,d.jsx)(u.xuv,{sx:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},children:(0,d.jsx)(u.ua7,{tooltip:g,placement:"top",children:(0,d.jsx)(u.byK,{style:{width:13,height:13}})})})]}),(0,d.jsxs)(u.xuv,{withBorders:b,sx:{padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},children:[M,(0,d.jsx)("div",{ref:B})]})]})})}}}]); +//# sourceMappingURL=889.c7eff573.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/889.c7eff573.chunk.js.map b/portal-ui/build/static/js/889.c7eff573.chunk.js.map new file mode 100644 index 000000000..9035841ad --- /dev/null +++ b/portal-ui/build/static/js/889.c7eff573.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/889.c7eff573.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AddReplicationModal.tsx","screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu.tsx","screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport {\n Box,\n BucketReplicationIcon,\n Button,\n FormLayout,\n Grid,\n InputBox,\n Select,\n Switch,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport { BucketReplicationRule } from \"../types\";\nimport { getBytes, k8sScalarUnitsExcluding } from \"../../../../common/utils\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport QueryMultiSelector from \"../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector\";\nimport InputUnitMenu from \"../../Common/FormComponents/InputUnitMenu/InputUnitMenu\";\n\ninterface IReplicationModal {\n open: boolean;\n closeModalAndRefresh: () => any;\n bucketName: string;\n\n setReplicationRules: BucketReplicationRule[];\n}\n\nconst AddReplicationModal = ({\n open,\n closeModalAndRefresh,\n bucketName,\n setReplicationRules,\n}: IReplicationModal) => {\n const dispatch = useAppDispatch();\n const [addLoading, setAddLoading] = useState(false);\n const [priority, setPriority] = useState(\"1\");\n const [accessKey, setAccessKey] = useState(\"\");\n const [secretKey, setSecretKey] = useState(\"\");\n const [targetURL, setTargetURL] = useState(\"\");\n const [targetStorageClass, setTargetStorageClass] = useState(\"\");\n const [prefix, setPrefix] = useState(\"\");\n const [targetBucket, setTargetBucket] = useState(\"\");\n const [region, setRegion] = useState(\"\");\n const [useTLS, setUseTLS] = useState(true);\n const [repDeleteMarker, setRepDeleteMarker] = useState(true);\n const [repDelete, setRepDelete] = useState(true);\n const [metadataSync, setMetadataSync] = useState(true);\n const [tags, setTags] = useState(\"\");\n const [replicationMode, setReplicationMode] = useState<\"async\" | \"sync\">(\n \"async\",\n );\n const [bandwidthScalar, setBandwidthScalar] = useState(\"100\");\n const [bandwidthUnit, setBandwidthUnit] = useState(\"Gi\");\n const [healthCheck, setHealthCheck] = useState(\"60\");\n\n useEffect(() => {\n if (setReplicationRules.length === 0) {\n setPriority(\"1\");\n return;\n }\n\n const greatestValue = setReplicationRules.reduce((prevAcc, currValue) => {\n if (currValue.priority > prevAcc) {\n return currValue.priority;\n }\n return prevAcc;\n }, 0);\n\n const nextPriority = greatestValue + 1;\n setPriority(nextPriority.toString());\n }, [setReplicationRules]);\n\n const addRecord = () => {\n const replicate = [\n {\n originBucket: bucketName,\n destinationBucket: targetBucket,\n },\n ];\n\n const hc = parseInt(healthCheck);\n\n const endURL = `${useTLS ? \"https://\" : \"http://\"}${targetURL}`;\n\n const remoteBucketsInfo = {\n accessKey: accessKey,\n secretKey: secretKey,\n targetURL: endURL,\n region: region,\n bucketsRelation: replicate,\n syncMode: replicationMode,\n bandwidth:\n replicationMode === \"async\"\n ? parseInt(getBytes(bandwidthScalar, bandwidthUnit, true))\n : 0,\n healthCheckPeriod: hc,\n prefix: prefix,\n tags: tags,\n replicateDeleteMarkers: repDeleteMarker,\n replicateDeletes: repDelete,\n priority: parseInt(priority),\n storageClass: targetStorageClass,\n replicateMetadata: metadataSync,\n };\n\n api.bucketsReplication\n .setMultiBucketReplication(remoteBucketsInfo)\n .then((res) => {\n setAddLoading(false);\n\n const states = get(res.data, \"replicationState\", []);\n\n if (states.length > 0) {\n const itemVal = states[0];\n\n setAddLoading(false);\n\n if (itemVal.errorString && itemVal.errorString !== \"\") {\n dispatch(\n setModalErrorSnackMessage({\n errorMessage: itemVal.errorString,\n detailedError: \"\",\n }),\n );\n return;\n }\n\n closeModalAndRefresh();\n\n return;\n }\n dispatch(\n setModalErrorSnackMessage({\n errorMessage: \"No changes applied\",\n detailedError: \"\",\n }),\n );\n })\n .catch((err) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n return (\n {\n closeModalAndRefresh();\n }}\n title=\"Set Bucket Replication\"\n titleIcon={}\n >\n ) => {\n e.preventDefault();\n setAddLoading(true);\n addRecord();\n }}\n >\n \n ) => {\n if (e.target.validity.valid) {\n setPriority(e.target.value);\n }\n }}\n label=\"Priority\"\n value={priority}\n pattern={\"[0-9]*\"}\n />\n\n ) => {\n setTargetURL(e.target.value);\n }}\n placeholder=\"play.min.io\"\n label=\"Target URL\"\n value={targetURL}\n />\n\n {\n setUseTLS(e.target.checked);\n }}\n value=\"yes\"\n />\n\n ) => {\n setAccessKey(e.target.value);\n }}\n label=\"Access Key\"\n value={accessKey}\n />\n\n ) => {\n setSecretKey(e.target.value);\n }}\n label=\"Secret Key\"\n value={secretKey}\n />\n\n ) => {\n setTargetBucket(e.target.value);\n }}\n label=\"Target Bucket\"\n value={targetBucket}\n />\n\n ) => {\n setRegion(e.target.value);\n }}\n label=\"Region\"\n value={region}\n />\n\n {\n setReplicationMode(value as \"async\" | \"sync\");\n }}\n label=\"Replication Mode\"\n value={replicationMode}\n options={[\n { label: \"Asynchronous\", value: \"async\" },\n { label: \"Synchronous\", value: \"sync\" },\n ]}\n />\n\n {replicationMode === \"async\" && (\n \n ) => {\n if (e.target.validity.valid) {\n setBandwidthScalar(e.target.value as string);\n }\n }}\n label=\"Bandwidth\"\n value={bandwidthScalar}\n min=\"0\"\n pattern={\"[0-9]*\"}\n overlayObject={\n {\n setBandwidthUnit(newValue);\n }}\n unitSelected={bandwidthUnit}\n unitsList={k8sScalarUnitsExcluding([\"Ki\"])}\n disabled={false}\n />\n }\n />\n \n )}\n\n ) => {\n setHealthCheck(e.target.value as string);\n }}\n label=\"Health Check Duration\"\n value={healthCheck}\n />\n\n ) => {\n setTargetStorageClass(e.target.value);\n }}\n placeholder=\"STANDARD_IA,REDUCED_REDUNDANCY etc\"\n label=\"Storage Class\"\n value={targetStorageClass}\n />\n\n
\n Object Filters\n ) => {\n setPrefix(e.target.value);\n }}\n placeholder=\"prefix\"\n label=\"Prefix\"\n value={prefix}\n />\n {\n setTags(vl);\n }}\n keyPlaceholder=\"Tag Key\"\n valuePlaceholder=\"Tag Value\"\n withBorder\n />\n
\n
\n Replication Options\n {\n setMetadataSync(e.target.checked);\n }}\n description={\"Metadata Sync\"}\n />\n {\n setRepDeleteMarker(e.target.checked);\n }}\n description={\"Replicate soft deletes\"}\n />\n {\n setRepDelete(e.target.checked);\n }}\n description={\"Replicate versioned deletes\"}\n />\n
\n \n {\n closeModalAndRefresh();\n }}\n label={\"Cancel\"}\n />\n \n \n
\n \n \n );\n};\n\nexport default AddReplicationModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { selectorTypes } from \"../SelectWrapper/SelectWrapper\";\nimport { Menu, MenuItem } from \"@mui/material\";\n\ninterface IInputUnitBox {\n classes: any;\n id: string;\n unitSelected: string;\n unitsList: selectorTypes[];\n disabled?: boolean;\n onUnitChange?: (newValue: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonTrigger: {\n border: \"#F0F2F2 1px solid\",\n borderRadius: 3,\n color: \"#838383\",\n backgroundColor: \"#fff\",\n fontSize: 12,\n },\n });\n\nconst InputUnitMenu = ({\n classes,\n id,\n unitSelected,\n unitsList,\n disabled = false,\n onUnitChange,\n}: IInputUnitBox) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (newUnit: string) => {\n setAnchorEl(null);\n if (newUnit !== \"\" && onUnitChange) {\n onUnitChange(newUnit);\n }\n };\n\n return (\n \n \n {unitSelected}\n \n {\n handleClose(\"\");\n }}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"center\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"center\",\n }}\n >\n {unitsList.map((unit) => (\n handleClose(unit.value)}\n key={`itemUnit-${unit.value}-${unit.label}`}\n >\n {unit.label}\n \n ))}\n \n \n );\n};\n\nexport default withStyles(styles)(InputUnitMenu);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, {\n ChangeEvent,\n createRef,\n Fragment,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport get from \"lodash/get\";\nimport debounce from \"lodash/debounce\";\nimport {\n AddIcon,\n Box,\n Grid,\n HelpIcon,\n InputBox,\n InputLabel,\n Tooltip,\n} from \"mds\";\n\ninterface IQueryMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n keyPlaceholder?: string;\n valuePlaceholder?: string;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst QueryMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n keyPlaceholder = \"\",\n valuePlaceholder = \"\",\n onChange,\n withBorder = false,\n}: IQueryMultiSelector) => {\n const [currentKeys, setCurrentKeys] = useState([\"\"]);\n const [currentValues, setCurrentValues] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentKeys.length === 1 &&\n currentKeys[0] === \"\" &&\n currentValues.length === 1 &&\n currentValues[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\"&\");\n let keys = [];\n let values = [];\n\n elementsSplit.forEach((element: string) => {\n const splittedVals = element.split(\"=\");\n if (splittedVals.length === 2) {\n keys.push(splittedVals[0]);\n values.push(splittedVals[1]);\n }\n });\n\n keys.push(\"\");\n values.push(\"\");\n\n setCurrentKeys(keys);\n setCurrentValues(values);\n }\n }, [currentKeys, currentValues, elements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n const refScroll = bottomList.current;\n if (refScroll && currentKeys.length > 1) {\n refScroll.scrollIntoView(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys]);\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useLayoutEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n debouncedOnChange();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentKeys, currentValues]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = () => {\n if (\n currentKeys[currentKeys.length - 1].trim() !== \"\" &&\n currentValues[currentValues.length - 1].trim() !== \"\"\n ) {\n const keysList = [...currentKeys];\n const valuesList = [...currentValues];\n\n keysList.push(\"\");\n valuesList.push(\"\");\n\n setCurrentKeys(keysList);\n setCurrentValues(valuesList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeKey = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentKeys];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentKeys(updatedElement);\n };\n\n const onChangeValue = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentValues];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentValues(updatedElement);\n };\n\n // Debounce for On Change\n const debouncedOnChange = debounce(() => {\n let queryString = \"\";\n\n currentKeys.forEach((keyVal, index) => {\n if (currentKeys[index] && currentValues[index]) {\n let insertString = `${keyVal}=${currentValues[index]}`;\n if (index !== 0) {\n insertString = `&${insertString}`;\n }\n queryString = `${queryString}${insertString}`;\n }\n });\n\n onChange(queryString);\n }, 500);\n\n const inputs = currentValues.map((element, index) => {\n return (\n \n \n :\n : null}\n overlayAction={() => {\n addEmptyLine();\n }}\n />\n \n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n \n \n \n \n \n )}\n \n \n {inputs}\n
\n \n \n \n );\n};\nexport default QueryMultiSelector;\n"],"names":["_ref","open","closeModalAndRefresh","bucketName","setReplicationRules","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","addLoading","setAddLoading","_useState3","_useState4","priority","setPriority","_useState5","_useState6","accessKey","setAccessKey","_useState7","_useState8","secretKey","setSecretKey","_useState9","_useState10","targetURL","setTargetURL","_useState11","_useState12","targetStorageClass","setTargetStorageClass","_useState13","_useState14","prefix","setPrefix","_useState15","_useState16","targetBucket","setTargetBucket","_useState17","_useState18","region","setRegion","_useState19","_useState20","useTLS","setUseTLS","_useState21","_useState22","repDeleteMarker","setRepDeleteMarker","_useState23","_useState24","repDelete","setRepDelete","_useState25","_useState26","metadataSync","setMetadataSync","_useState27","_useState28","tags","setTags","_useState29","_useState30","replicationMode","setReplicationMode","_useState31","_useState32","bandwidthScalar","setBandwidthScalar","_useState33","_useState34","bandwidthUnit","setBandwidthUnit","_useState35","_useState36","healthCheck","setHealthCheck","useEffect","length","greatestValue","reduce","prevAcc","currValue","toString","_jsx","ModalWrapper","modalOpen","onClose","title","titleIcon","BucketReplicationIcon","children","noValidate","autoComplete","onSubmit","e","preventDefault","replicate","originBucket","destinationBucket","hc","parseInt","endURL","concat","remoteBucketsInfo","bucketsRelation","syncMode","bandwidth","getBytes","healthCheckPeriod","replicateDeleteMarkers","replicateDeletes","storageClass","replicateMetadata","api","bucketsReplication","setMultiBucketReplication","then","res","states","get","data","itemVal","errorString","setModalErrorSnackMessage","errorMessage","detailedError","catch","err","errorToHandler","error","addRecord","_jsxs","FormLayout","withBorders","containerPadding","InputBox","id","name","onChange","target","validity","valid","value","label","pattern","placeholder","Switch","checked","Select","options","Box","className","type","min","overlayObject","InputUnitMenu","onUnitChange","newValue","unitSelected","unitsList","k8sScalarUnitsExcluding","disabled","QueryMultiSelector","elements","vl","keyPlaceholder","valuePlaceholder","withBorder","description","Grid","item","xs","sx","modalStyleUtils","modalButtonBar","Button","variant","onClick","color","withStyles","theme","createStyles","buttonTrigger","border","borderRadius","backgroundColor","fontSize","classes","_ref$disabled","_React$useState","React","_React$useState2","anchorEl","setAnchorEl","Boolean","handleClose","newUnit","Fragment","undefined","event","currentTarget","Menu","anchorOrigin","vertical","horizontal","transformOrigin","map","unit","MenuItem","_ref$tooltip","tooltip","_ref$keyPlaceholder","_ref$valuePlaceholder","_ref$withBorder","currentKeys","setCurrentKeys","currentValues","setCurrentValues","bottomList","createRef","elementsSplit","split","keys","values","forEach","element","splittedVals","push","refScroll","current","scrollIntoView","firstUpdate","useRef","useLayoutEffect","debouncedOnChange","onChangeKey","persist","updatedElement","_toConsumableArray","index","onChangeValue","debounce","queryString","keyVal","insertString","inputs","overlayIcon","AddIcon","overlayAction","trim","keysList","valuesList","addEmptyLine","display","alignSelf","margin","fontWeight","InputLabel","marginLeft","alignItems","width","Tooltip","placement","HelpIcon","style","height","padding","overflowY","position","marginTop","ref"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/6993.cff4fa3c.chunk.js b/portal-ui/build/static/js/8941.a8683f5c.chunk.js similarity index 52% rename from portal-ui/build/static/js/6993.cff4fa3c.chunk.js rename to portal-ui/build/static/js/8941.a8683f5c.chunk.js index 8b1291e50..98af1263a 100644 --- a/portal-ui/build/static/js/6993.cff4fa3c.chunk.js +++ b/portal-ui/build/static/js/8941.a8683f5c.chunk.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[6993],{81918:function(e,a,o){o.d(a,{Z:function(){return w}});var t=o(4942),c=o(63366),l=o(87462),n=o(72791),r=o(28182),i=o(94419),s=o(12065),d=o(76189),p=o(80184),v=(0,d.Z)((0,p.jsx)("path",{d:"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"}),"Cancel"),u=o(42071),m=o(14036),b=o(95080),f=o(31402),Z=o(66934),g=o(75878),h=o(21217);function y(e){return(0,h.Z)("MuiChip",e)}var C=(0,g.Z)("MuiChip",["root","sizeSmall","sizeMedium","colorError","colorInfo","colorPrimary","colorSecondary","colorSuccess","colorWarning","disabled","clickable","clickableColorPrimary","clickableColorSecondary","deletable","deletableColorPrimary","deletableColorSecondary","outlined","filled","outlinedPrimary","outlinedSecondary","filledPrimary","filledSecondary","avatar","avatarSmall","avatarMedium","avatarColorPrimary","avatarColorSecondary","icon","iconSmall","iconMedium","iconColorPrimary","iconColorSecondary","label","labelSmall","labelMedium","deleteIcon","deleteIconSmall","deleteIconMedium","deleteIconColorPrimary","deleteIconColorSecondary","deleteIconOutlinedColorPrimary","deleteIconOutlinedColorSecondary","deleteIconFilledColorPrimary","deleteIconFilledColorSecondary","focusVisible"]),k=["avatar","className","clickable","color","component","deleteIcon","disabled","icon","label","onClick","onDelete","onKeyDown","onKeyUp","size","variant","tabIndex","skipFocusWhenDisabled"],S=(0,Z.ZP)("div",{name:"MuiChip",slot:"Root",overridesResolver:function(e,a){var o=e.ownerState,c=o.color,l=o.iconColor,n=o.clickable,r=o.onDelete,i=o.size,s=o.variant;return[(0,t.Z)({},"& .".concat(C.avatar),a.avatar),(0,t.Z)({},"& .".concat(C.avatar),a["avatar".concat((0,m.Z)(i))]),(0,t.Z)({},"& .".concat(C.avatar),a["avatarColor".concat((0,m.Z)(c))]),(0,t.Z)({},"& .".concat(C.icon),a.icon),(0,t.Z)({},"& .".concat(C.icon),a["icon".concat((0,m.Z)(i))]),(0,t.Z)({},"& .".concat(C.icon),a["iconColor".concat((0,m.Z)(l))]),(0,t.Z)({},"& .".concat(C.deleteIcon),a.deleteIcon),(0,t.Z)({},"& .".concat(C.deleteIcon),a["deleteIcon".concat((0,m.Z)(i))]),(0,t.Z)({},"& .".concat(C.deleteIcon),a["deleteIconColor".concat((0,m.Z)(c))]),(0,t.Z)({},"& .".concat(C.deleteIcon),a["deleteIcon".concat((0,m.Z)(s),"Color").concat((0,m.Z)(c))]),a.root,a["size".concat((0,m.Z)(i))],a["color".concat((0,m.Z)(c))],n&&a.clickable,n&&"default"!==c&&a["clickableColor".concat((0,m.Z)(c),")")],r&&a.deletable,r&&"default"!==c&&a["deletableColor".concat((0,m.Z)(c))],a[s],a["".concat(s).concat((0,m.Z)(c))]]}})((function(e){var a,o=e.theme,c=e.ownerState,n="light"===o.palette.mode?o.palette.grey[700]:o.palette.grey[300];return(0,l.Z)((a={maxWidth:"100%",fontFamily:o.typography.fontFamily,fontSize:o.typography.pxToRem(13),display:"inline-flex",alignItems:"center",justifyContent:"center",height:32,color:(o.vars||o).palette.text.primary,backgroundColor:(o.vars||o).palette.action.selected,borderRadius:16,whiteSpace:"nowrap",transition:o.transitions.create(["background-color","box-shadow"]),cursor:"default",outline:0,textDecoration:"none",border:0,padding:0,verticalAlign:"middle",boxSizing:"border-box"},(0,t.Z)(a,"&.".concat(C.disabled),{opacity:(o.vars||o).palette.action.disabledOpacity,pointerEvents:"none"}),(0,t.Z)(a,"& .".concat(C.avatar),{marginLeft:5,marginRight:-6,width:24,height:24,color:o.vars?o.vars.palette.Chip.defaultAvatarColor:n,fontSize:o.typography.pxToRem(12)}),(0,t.Z)(a,"& .".concat(C.avatarColorPrimary),{color:(o.vars||o).palette.primary.contrastText,backgroundColor:(o.vars||o).palette.primary.dark}),(0,t.Z)(a,"& .".concat(C.avatarColorSecondary),{color:(o.vars||o).palette.secondary.contrastText,backgroundColor:(o.vars||o).palette.secondary.dark}),(0,t.Z)(a,"& .".concat(C.avatarSmall),{marginLeft:4,marginRight:-4,width:18,height:18,fontSize:o.typography.pxToRem(10)}),(0,t.Z)(a,"& .".concat(C.icon),(0,l.Z)({marginLeft:5,marginRight:-6},"small"===c.size&&{fontSize:18,marginLeft:4,marginRight:-4},c.iconColor===c.color&&(0,l.Z)({color:o.vars?o.vars.palette.Chip.defaultIconColor:n},"default"!==c.color&&{color:"inherit"}))),(0,t.Z)(a,"& .".concat(C.deleteIcon),(0,l.Z)({WebkitTapHighlightColor:"transparent",color:o.vars?"rgba(".concat(o.vars.palette.text.primaryChannel," / 0.26)"):(0,s.Fq)(o.palette.text.primary,.26),fontSize:22,cursor:"pointer",margin:"0 5px 0 -6px","&:hover":{color:o.vars?"rgba(".concat(o.vars.palette.text.primaryChannel," / 0.4)"):(0,s.Fq)(o.palette.text.primary,.4)}},"small"===c.size&&{fontSize:16,marginRight:4,marginLeft:-4},"default"!==c.color&&{color:o.vars?"rgba(".concat(o.vars.palette[c.color].contrastTextChannel," / 0.7)"):(0,s.Fq)(o.palette[c.color].contrastText,.7),"&:hover, &:active":{color:(o.vars||o).palette[c.color].contrastText}})),a),"small"===c.size&&{height:24},"default"!==c.color&&{backgroundColor:(o.vars||o).palette[c.color].main,color:(o.vars||o).palette[c.color].contrastText},c.onDelete&&(0,t.Z)({},"&.".concat(C.focusVisible),{backgroundColor:o.vars?"rgba(".concat(o.vars.palette.action.selectedChannel," / calc(").concat(o.vars.palette.action.selectedOpacity," + ").concat(o.vars.palette.action.focusOpacity,"))"):(0,s.Fq)(o.palette.action.selected,o.palette.action.selectedOpacity+o.palette.action.focusOpacity)}),c.onDelete&&"default"!==c.color&&(0,t.Z)({},"&.".concat(C.focusVisible),{backgroundColor:(o.vars||o).palette[c.color].dark}))}),(function(e){var a,o=e.theme,c=e.ownerState;return(0,l.Z)({},c.clickable&&(a={userSelect:"none",WebkitTapHighlightColor:"transparent",cursor:"pointer","&:hover":{backgroundColor:o.vars?"rgba(".concat(o.vars.palette.action.selectedChannel," / calc(").concat(o.vars.palette.action.selectedOpacity," + ").concat(o.vars.palette.action.hoverOpacity,"))"):(0,s.Fq)(o.palette.action.selected,o.palette.action.selectedOpacity+o.palette.action.hoverOpacity)}},(0,t.Z)(a,"&.".concat(C.focusVisible),{backgroundColor:o.vars?"rgba(".concat(o.vars.palette.action.selectedChannel," / calc(").concat(o.vars.palette.action.selectedOpacity," + ").concat(o.vars.palette.action.focusOpacity,"))"):(0,s.Fq)(o.palette.action.selected,o.palette.action.selectedOpacity+o.palette.action.focusOpacity)}),(0,t.Z)(a,"&:active",{boxShadow:(o.vars||o).shadows[1]}),a),c.clickable&&"default"!==c.color&&(0,t.Z)({},"&:hover, &.".concat(C.focusVisible),{backgroundColor:(o.vars||o).palette[c.color].dark}))}),(function(e){var a,o,c=e.theme,n=e.ownerState;return(0,l.Z)({},"outlined"===n.variant&&(a={backgroundColor:"transparent",border:c.vars?"1px solid ".concat(c.vars.palette.Chip.defaultBorder):"1px solid ".concat("light"===c.palette.mode?c.palette.grey[400]:c.palette.grey[700])},(0,t.Z)(a,"&.".concat(C.clickable,":hover"),{backgroundColor:(c.vars||c).palette.action.hover}),(0,t.Z)(a,"&.".concat(C.focusVisible),{backgroundColor:(c.vars||c).palette.action.focus}),(0,t.Z)(a,"& .".concat(C.avatar),{marginLeft:4}),(0,t.Z)(a,"& .".concat(C.avatarSmall),{marginLeft:2}),(0,t.Z)(a,"& .".concat(C.icon),{marginLeft:4}),(0,t.Z)(a,"& .".concat(C.iconSmall),{marginLeft:2}),(0,t.Z)(a,"& .".concat(C.deleteIcon),{marginRight:5}),(0,t.Z)(a,"& .".concat(C.deleteIconSmall),{marginRight:3}),a),"outlined"===n.variant&&"default"!==n.color&&(o={color:(c.vars||c).palette[n.color].main,border:"1px solid ".concat(c.vars?"rgba(".concat(c.vars.palette[n.color].mainChannel," / 0.7)"):(0,s.Fq)(c.palette[n.color].main,.7))},(0,t.Z)(o,"&.".concat(C.clickable,":hover"),{backgroundColor:c.vars?"rgba(".concat(c.vars.palette[n.color].mainChannel," / ").concat(c.vars.palette.action.hoverOpacity,")"):(0,s.Fq)(c.palette[n.color].main,c.palette.action.hoverOpacity)}),(0,t.Z)(o,"&.".concat(C.focusVisible),{backgroundColor:c.vars?"rgba(".concat(c.vars.palette[n.color].mainChannel," / ").concat(c.vars.palette.action.focusOpacity,")"):(0,s.Fq)(c.palette[n.color].main,c.palette.action.focusOpacity)}),(0,t.Z)(o,"& .".concat(C.deleteIcon),{color:c.vars?"rgba(".concat(c.vars.palette[n.color].mainChannel," / 0.7)"):(0,s.Fq)(c.palette[n.color].main,.7),"&:hover, &:active":{color:(c.vars||c).palette[n.color].main}}),o))})),I=(0,Z.ZP)("span",{name:"MuiChip",slot:"Label",overridesResolver:function(e,a){var o=e.ownerState.size;return[a.label,a["label".concat((0,m.Z)(o))]]}})((function(e){var a=e.ownerState;return(0,l.Z)({overflow:"hidden",textOverflow:"ellipsis",paddingLeft:12,paddingRight:12,whiteSpace:"nowrap"},"small"===a.size&&{paddingLeft:8,paddingRight:8})}));function x(e){return"Backspace"===e.key||"Delete"===e.key}var w=n.forwardRef((function(e,a){var o=(0,f.Z)({props:e,name:"MuiChip"}),t=o.avatar,s=o.className,d=o.clickable,Z=o.color,g=void 0===Z?"default":Z,h=o.component,C=o.deleteIcon,w=o.disabled,z=void 0!==w&&w,O=o.icon,R=o.label,F=o.onClick,D=o.onDelete,P=o.onKeyDown,V=o.onKeyUp,L=o.size,N=void 0===L?"medium":L,T=o.variant,E=void 0===T?"filled":T,M=o.tabIndex,q=o.skipFocusWhenDisabled,K=void 0!==q&&q,W=(0,c.Z)(o,k),j=n.useRef(null),A=(0,u.Z)(j,a),U=function(e){e.stopPropagation(),D&&D(e)},B=!(!1===d||!F)||d,H=B||D?b.Z:h||"div",_=(0,l.Z)({},o,{component:H,disabled:z,size:N,color:g,iconColor:n.isValidElement(O)&&O.props.color||g,onDelete:!!D,clickable:B,variant:E}),G=function(e){var a=e.classes,o=e.disabled,t=e.size,c=e.color,l=e.iconColor,n=e.onDelete,r=e.clickable,s=e.variant,d={root:["root",s,o&&"disabled","size".concat((0,m.Z)(t)),"color".concat((0,m.Z)(c)),r&&"clickable",r&&"clickableColor".concat((0,m.Z)(c)),n&&"deletable",n&&"deletableColor".concat((0,m.Z)(c)),"".concat(s).concat((0,m.Z)(c))],label:["label","label".concat((0,m.Z)(t))],avatar:["avatar","avatar".concat((0,m.Z)(t)),"avatarColor".concat((0,m.Z)(c))],icon:["icon","icon".concat((0,m.Z)(t)),"iconColor".concat((0,m.Z)(l))],deleteIcon:["deleteIcon","deleteIcon".concat((0,m.Z)(t)),"deleteIconColor".concat((0,m.Z)(c)),"deleteIcon".concat((0,m.Z)(s),"Color").concat((0,m.Z)(c))]};return(0,i.Z)(d,y,a)}(_),J=H===b.Z?(0,l.Z)({component:h||"div",focusVisibleClassName:G.focusVisible},D&&{disableRipple:!0}):{},Q=null;D&&(Q=C&&n.isValidElement(C)?n.cloneElement(C,{className:(0,r.Z)(C.props.className,G.deleteIcon),onClick:U}):(0,p.jsx)(v,{className:(0,r.Z)(G.deleteIcon),onClick:U}));var X=null;t&&n.isValidElement(t)&&(X=n.cloneElement(t,{className:(0,r.Z)(G.avatar,t.props.className)}));var Y=null;return O&&n.isValidElement(O)&&(Y=n.cloneElement(O,{className:(0,r.Z)(G.icon,O.props.className)})),(0,p.jsxs)(S,(0,l.Z)({as:H,className:(0,r.Z)(G.root,s),disabled:!(!B||!z)||void 0,onClick:F,onKeyDown:function(e){e.currentTarget===e.target&&x(e)&&e.preventDefault(),P&&P(e)},onKeyUp:function(e){e.currentTarget===e.target&&(D&&x(e)?D(e):"Escape"===e.key&&j.current&&j.current.blur()),V&&V(e)},ref:A,tabIndex:K&&z?-1:M,ownerState:_},J,W,{children:[X||Y,(0,p.jsx)(I,{className:(0,r.Z)(G.label),ownerState:_,children:R}),Q]}))}))},19103:function(e,a,o){o.d(a,{Z:function(){return c}});var t=o(72791);var c=function(e,a){return t.isValidElement(e)&&-1!==a.indexOf(e.type.muiName)}},78949:function(e,a,o){function t(){for(var e=arguments.length,a=new Array(e),o=0;o {\n const {\n classes,\n disabled,\n size,\n color,\n iconColor,\n onDelete,\n clickable,\n variant\n } = ownerState;\n const slots = {\n root: ['root', variant, disabled && 'disabled', `size${capitalize(size)}`, `color${capitalize(color)}`, clickable && 'clickable', clickable && `clickableColor${capitalize(color)}`, onDelete && 'deletable', onDelete && `deletableColor${capitalize(color)}`, `${variant}${capitalize(color)}`],\n label: ['label', `label${capitalize(size)}`],\n avatar: ['avatar', `avatar${capitalize(size)}`, `avatarColor${capitalize(color)}`],\n icon: ['icon', `icon${capitalize(size)}`, `iconColor${capitalize(iconColor)}`],\n deleteIcon: ['deleteIcon', `deleteIcon${capitalize(size)}`, `deleteIconColor${capitalize(color)}`, `deleteIcon${capitalize(variant)}Color${capitalize(color)}`]\n };\n return composeClasses(slots, getChipUtilityClass, classes);\n};\nconst ChipRoot = styled('div', {\n name: 'MuiChip',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n const {\n color,\n iconColor,\n clickable,\n onDelete,\n size,\n variant\n } = ownerState;\n return [{\n [`& .${chipClasses.avatar}`]: styles.avatar\n }, {\n [`& .${chipClasses.avatar}`]: styles[`avatar${capitalize(size)}`]\n }, {\n [`& .${chipClasses.avatar}`]: styles[`avatarColor${capitalize(color)}`]\n }, {\n [`& .${chipClasses.icon}`]: styles.icon\n }, {\n [`& .${chipClasses.icon}`]: styles[`icon${capitalize(size)}`]\n }, {\n [`& .${chipClasses.icon}`]: styles[`iconColor${capitalize(iconColor)}`]\n }, {\n [`& .${chipClasses.deleteIcon}`]: styles.deleteIcon\n }, {\n [`& .${chipClasses.deleteIcon}`]: styles[`deleteIcon${capitalize(size)}`]\n }, {\n [`& .${chipClasses.deleteIcon}`]: styles[`deleteIconColor${capitalize(color)}`]\n }, {\n [`& .${chipClasses.deleteIcon}`]: styles[`deleteIcon${capitalize(variant)}Color${capitalize(color)}`]\n }, styles.root, styles[`size${capitalize(size)}`], styles[`color${capitalize(color)}`], clickable && styles.clickable, clickable && color !== 'default' && styles[`clickableColor${capitalize(color)})`], onDelete && styles.deletable, onDelete && color !== 'default' && styles[`deletableColor${capitalize(color)}`], styles[variant], styles[`${variant}${capitalize(color)}`]];\n }\n})(({\n theme,\n ownerState\n}) => {\n const textColor = theme.palette.mode === 'light' ? theme.palette.grey[700] : theme.palette.grey[300];\n return _extends({\n maxWidth: '100%',\n fontFamily: theme.typography.fontFamily,\n fontSize: theme.typography.pxToRem(13),\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n height: 32,\n color: (theme.vars || theme).palette.text.primary,\n backgroundColor: (theme.vars || theme).palette.action.selected,\n borderRadius: 32 / 2,\n whiteSpace: 'nowrap',\n transition: theme.transitions.create(['background-color', 'box-shadow']),\n // label will inherit this from root, then `clickable` class overrides this for both\n cursor: 'default',\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0,\n textDecoration: 'none',\n border: 0,\n // Remove `button` border\n padding: 0,\n // Remove `button` padding\n verticalAlign: 'middle',\n boxSizing: 'border-box',\n [`&.${chipClasses.disabled}`]: {\n opacity: (theme.vars || theme).palette.action.disabledOpacity,\n pointerEvents: 'none'\n },\n [`& .${chipClasses.avatar}`]: {\n marginLeft: 5,\n marginRight: -6,\n width: 24,\n height: 24,\n color: theme.vars ? theme.vars.palette.Chip.defaultAvatarColor : textColor,\n fontSize: theme.typography.pxToRem(12)\n },\n [`& .${chipClasses.avatarColorPrimary}`]: {\n color: (theme.vars || theme).palette.primary.contrastText,\n backgroundColor: (theme.vars || theme).palette.primary.dark\n },\n [`& .${chipClasses.avatarColorSecondary}`]: {\n color: (theme.vars || theme).palette.secondary.contrastText,\n backgroundColor: (theme.vars || theme).palette.secondary.dark\n },\n [`& .${chipClasses.avatarSmall}`]: {\n marginLeft: 4,\n marginRight: -4,\n width: 18,\n height: 18,\n fontSize: theme.typography.pxToRem(10)\n },\n [`& .${chipClasses.icon}`]: _extends({\n marginLeft: 5,\n marginRight: -6\n }, ownerState.size === 'small' && {\n fontSize: 18,\n marginLeft: 4,\n marginRight: -4\n }, ownerState.iconColor === ownerState.color && _extends({\n color: theme.vars ? theme.vars.palette.Chip.defaultIconColor : textColor\n }, ownerState.color !== 'default' && {\n color: 'inherit'\n })),\n [`& .${chipClasses.deleteIcon}`]: _extends({\n WebkitTapHighlightColor: 'transparent',\n color: theme.vars ? `rgba(${theme.vars.palette.text.primaryChannel} / 0.26)` : alpha(theme.palette.text.primary, 0.26),\n fontSize: 22,\n cursor: 'pointer',\n margin: '0 5px 0 -6px',\n '&:hover': {\n color: theme.vars ? `rgba(${theme.vars.palette.text.primaryChannel} / 0.4)` : alpha(theme.palette.text.primary, 0.4)\n }\n }, ownerState.size === 'small' && {\n fontSize: 16,\n marginRight: 4,\n marginLeft: -4\n }, ownerState.color !== 'default' && {\n color: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].contrastTextChannel} / 0.7)` : alpha(theme.palette[ownerState.color].contrastText, 0.7),\n '&:hover, &:active': {\n color: (theme.vars || theme).palette[ownerState.color].contrastText\n }\n })\n }, ownerState.size === 'small' && {\n height: 24\n }, ownerState.color !== 'default' && {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].main,\n color: (theme.vars || theme).palette[ownerState.color].contrastText\n }, ownerState.onDelete && {\n [`&.${chipClasses.focusVisible}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.selectedChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)\n }\n }, ownerState.onDelete && ownerState.color !== 'default' && {\n [`&.${chipClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].dark\n }\n });\n}, ({\n theme,\n ownerState\n}) => _extends({}, ownerState.clickable && {\n userSelect: 'none',\n WebkitTapHighlightColor: 'transparent',\n cursor: 'pointer',\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.selectedChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity)\n },\n [`&.${chipClasses.focusVisible}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.selectedChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)\n },\n '&:active': {\n boxShadow: (theme.vars || theme).shadows[1]\n }\n}, ownerState.clickable && ownerState.color !== 'default' && {\n [`&:hover, &.${chipClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].dark\n }\n}), ({\n theme,\n ownerState\n}) => _extends({}, ownerState.variant === 'outlined' && {\n backgroundColor: 'transparent',\n border: theme.vars ? `1px solid ${theme.vars.palette.Chip.defaultBorder}` : `1px solid ${theme.palette.mode === 'light' ? theme.palette.grey[400] : theme.palette.grey[700]}`,\n [`&.${chipClasses.clickable}:hover`]: {\n backgroundColor: (theme.vars || theme).palette.action.hover\n },\n [`&.${chipClasses.focusVisible}`]: {\n backgroundColor: (theme.vars || theme).palette.action.focus\n },\n [`& .${chipClasses.avatar}`]: {\n marginLeft: 4\n },\n [`& .${chipClasses.avatarSmall}`]: {\n marginLeft: 2\n },\n [`& .${chipClasses.icon}`]: {\n marginLeft: 4\n },\n [`& .${chipClasses.iconSmall}`]: {\n marginLeft: 2\n },\n [`& .${chipClasses.deleteIcon}`]: {\n marginRight: 5\n },\n [`& .${chipClasses.deleteIconSmall}`]: {\n marginRight: 3\n }\n}, ownerState.variant === 'outlined' && ownerState.color !== 'default' && {\n color: (theme.vars || theme).palette[ownerState.color].main,\n border: `1px solid ${theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / 0.7)` : alpha(theme.palette[ownerState.color].main, 0.7)}`,\n [`&.${chipClasses.clickable}:hover`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity)\n },\n [`&.${chipClasses.focusVisible}`]: {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.focusOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.focusOpacity)\n },\n [`& .${chipClasses.deleteIcon}`]: {\n color: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / 0.7)` : alpha(theme.palette[ownerState.color].main, 0.7),\n '&:hover, &:active': {\n color: (theme.vars || theme).palette[ownerState.color].main\n }\n }\n}));\nconst ChipLabel = styled('span', {\n name: 'MuiChip',\n slot: 'Label',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n const {\n size\n } = ownerState;\n return [styles.label, styles[`label${capitalize(size)}`]];\n }\n})(({\n ownerState\n}) => _extends({\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n paddingLeft: 12,\n paddingRight: 12,\n whiteSpace: 'nowrap'\n}, ownerState.size === 'small' && {\n paddingLeft: 8,\n paddingRight: 8\n}));\nfunction isDeleteKeyboardEvent(keyboardEvent) {\n return keyboardEvent.key === 'Backspace' || keyboardEvent.key === 'Delete';\n}\n\n/**\n * Chips represent complex entities in small blocks, such as a contact.\n */\nconst Chip = /*#__PURE__*/React.forwardRef(function Chip(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiChip'\n });\n const {\n avatar: avatarProp,\n className,\n clickable: clickableProp,\n color = 'default',\n component: ComponentProp,\n deleteIcon: deleteIconProp,\n disabled = false,\n icon: iconProp,\n label,\n onClick,\n onDelete,\n onKeyDown,\n onKeyUp,\n size = 'medium',\n variant = 'filled',\n tabIndex,\n skipFocusWhenDisabled = false // TODO v6: Rename to `focusableWhenDisabled`.\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const chipRef = React.useRef(null);\n const handleRef = useForkRef(chipRef, ref);\n const handleDeleteIconClick = event => {\n // Stop the event from bubbling up to the `Chip`\n event.stopPropagation();\n if (onDelete) {\n onDelete(event);\n }\n };\n const handleKeyDown = event => {\n // Ignore events from children of `Chip`.\n if (event.currentTarget === event.target && isDeleteKeyboardEvent(event)) {\n // Will be handled in keyUp, otherwise some browsers\n // might init navigation\n event.preventDefault();\n }\n if (onKeyDown) {\n onKeyDown(event);\n }\n };\n const handleKeyUp = event => {\n // Ignore events from children of `Chip`.\n if (event.currentTarget === event.target) {\n if (onDelete && isDeleteKeyboardEvent(event)) {\n onDelete(event);\n } else if (event.key === 'Escape' && chipRef.current) {\n chipRef.current.blur();\n }\n }\n if (onKeyUp) {\n onKeyUp(event);\n }\n };\n const clickable = clickableProp !== false && onClick ? true : clickableProp;\n const component = clickable || onDelete ? ButtonBase : ComponentProp || 'div';\n const ownerState = _extends({}, props, {\n component,\n disabled,\n size,\n color,\n iconColor: /*#__PURE__*/React.isValidElement(iconProp) ? iconProp.props.color || color : color,\n onDelete: !!onDelete,\n clickable,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n const moreProps = component === ButtonBase ? _extends({\n component: ComponentProp || 'div',\n focusVisibleClassName: classes.focusVisible\n }, onDelete && {\n disableRipple: true\n }) : {};\n let deleteIcon = null;\n if (onDelete) {\n deleteIcon = deleteIconProp && /*#__PURE__*/React.isValidElement(deleteIconProp) ? /*#__PURE__*/React.cloneElement(deleteIconProp, {\n className: clsx(deleteIconProp.props.className, classes.deleteIcon),\n onClick: handleDeleteIconClick\n }) : /*#__PURE__*/_jsx(CancelIcon, {\n className: clsx(classes.deleteIcon),\n onClick: handleDeleteIconClick\n });\n }\n let avatar = null;\n if (avatarProp && /*#__PURE__*/React.isValidElement(avatarProp)) {\n avatar = /*#__PURE__*/React.cloneElement(avatarProp, {\n className: clsx(classes.avatar, avatarProp.props.className)\n });\n }\n let icon = null;\n if (iconProp && /*#__PURE__*/React.isValidElement(iconProp)) {\n icon = /*#__PURE__*/React.cloneElement(iconProp, {\n className: clsx(classes.icon, iconProp.props.className)\n });\n }\n if (process.env.NODE_ENV !== 'production') {\n if (avatar && icon) {\n console.error('MUI: The Chip component can not handle the avatar ' + 'and the icon prop at the same time. Pick one.');\n }\n }\n return /*#__PURE__*/_jsxs(ChipRoot, _extends({\n as: component,\n className: clsx(classes.root, className),\n disabled: clickable && disabled ? true : undefined,\n onClick: onClick,\n onKeyDown: handleKeyDown,\n onKeyUp: handleKeyUp,\n ref: handleRef,\n tabIndex: skipFocusWhenDisabled && disabled ? -1 : tabIndex,\n ownerState: ownerState\n }, moreProps, other, {\n children: [avatar || icon, /*#__PURE__*/_jsx(ChipLabel, {\n className: clsx(classes.label),\n ownerState: ownerState,\n children: label\n }), deleteIcon]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Chip.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The Avatar element to display.\n */\n avatar: PropTypes.element,\n /**\n * This prop isn't supported.\n * Use the `component` prop if you need to change the children structure.\n */\n children: unsupportedProp,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * If `true`, the chip will appear clickable, and will raise when pressed,\n * even if the onClick prop is not defined.\n * If `false`, the chip will not appear clickable, even if onClick prop is defined.\n * This can be used, for example,\n * along with the component prop to indicate an anchor Chip is clickable.\n * Note: this controls the UI and does not affect the onClick event.\n */\n clickable: PropTypes.bool,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'default'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Override the default delete icon element. Shown only if `onDelete` is set.\n */\n deleteIcon: PropTypes.element,\n /**\n * If `true`, the component is disabled.\n * @default false\n */\n disabled: PropTypes.bool,\n /**\n * Icon element.\n */\n icon: PropTypes.element,\n /**\n * The content of the component.\n */\n label: PropTypes.node,\n /**\n * @ignore\n */\n onClick: PropTypes.func,\n /**\n * Callback fired when the delete icon is clicked.\n * If set, the delete icon will be shown.\n */\n onDelete: PropTypes.func,\n /**\n * @ignore\n */\n onKeyDown: PropTypes.func,\n /**\n * @ignore\n */\n onKeyUp: PropTypes.func,\n /**\n * The size of the component.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * If `true`, allows the disabled chip to escape focus.\n * If `false`, allows the disabled chip to receive focus.\n * @default false\n */\n skipFocusWhenDisabled: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * @ignore\n */\n tabIndex: PropTypes.number,\n /**\n * The variant to use.\n * @default 'filled'\n */\n variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['filled', 'outlined']), PropTypes.string])\n} : void 0;\nexport default Chip;","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","import * as React from 'react';\nconst usePreviousProps = value => {\n const ref = React.useRef({});\n React.useEffect(() => {\n ref.current = value;\n });\n return ref.current;\n};\nexport default usePreviousProps;"],"names":["createSvgIcon","_jsx","d","getChipUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","ChipRoot","styled","name","overridesResolver","props","styles","ownerState","color","iconColor","clickable","onDelete","size","variant","_defineProperty","concat","chipClasses","avatar","capitalize","icon","deleteIcon","root","deletable","_ref11","_extends2","theme","textColor","palette","mode","grey","_extends","maxWidth","fontFamily","typography","fontSize","pxToRem","display","alignItems","justifyContent","height","vars","text","primary","backgroundColor","action","selected","borderRadius","whiteSpace","transition","transitions","create","cursor","outline","textDecoration","border","padding","verticalAlign","boxSizing","disabled","opacity","disabledOpacity","pointerEvents","marginLeft","marginRight","width","Chip","defaultAvatarColor","avatarColorPrimary","contrastText","dark","avatarColorSecondary","secondary","avatarSmall","defaultIconColor","WebkitTapHighlightColor","primaryChannel","alpha","margin","contrastTextChannel","main","focusVisible","selectedChannel","selectedOpacity","focusOpacity","_ref14","_ref15","userSelect","hoverOpacity","boxShadow","shadows","_ref17","_ref18","_ref19","defaultBorder","hover","focus","iconSmall","deleteIconSmall","mainChannel","ChipLabel","label","_ref20","overflow","textOverflow","paddingLeft","paddingRight","isDeleteKeyboardEvent","keyboardEvent","key","React","inProps","ref","useThemeProps","avatarProp","className","clickableProp","_props$color","ComponentProp","component","deleteIconProp","_props$disabled","iconProp","onClick","onKeyDown","onKeyUp","_props$size","_props$variant","tabIndex","_props$skipFocusWhenD","skipFocusWhenDisabled","other","_objectWithoutPropertiesLoose","chipRef","handleRef","useForkRef","handleDeleteIconClick","event","stopPropagation","ButtonBase","classes","slots","composeClasses","useUtilityClasses","moreProps","focusVisibleClassName","disableRipple","clsx","CancelIcon","_jsxs","as","undefined","currentTarget","target","preventDefault","current","blur","children","element","muiNames","indexOf","type","muiName","value"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/8990.17dc8411.chunk.js b/portal-ui/build/static/js/8990.17dc8411.chunk.js new file mode 100644 index 000000000..4d9e027dd --- /dev/null +++ b/portal-ui/build/static/js/8990.17dc8411.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[8990],{8990:function(e,n,t){t.r(n);var o=t(29439),u=t(72791),c=t(29945),r=t(87995),s=t(81551),i=t(9505),l=t(23508),a=t(80184);n.default=function(e){var n=e.onClose,t=e.modalOpen,f=e.bucket,p=e.toDelete,h=(0,s.TL)(),k=(0,i.Z)((function(){return n()}),(function(e){return h((0,r.Ih)(e))})),m=(0,o.Z)(k,2),C=m[0],d=m[1];return(0,a.jsx)(l.Z,{title:"Delete Anonymous Access Rule",confirmText:"Delete",isOpen:t,isLoading:C,onConfirm:function(){d("DELETE","/api/v1/bucket/".concat(f,"/access-rules"),{prefix:p})},titleIcon:(0,a.jsx)(c.NvT,{}),onClose:n,confirmationContent:(0,a.jsx)(u.Fragment,{children:"Are you sure you want to delete this access rule?"})})}}}]); +//# sourceMappingURL=8990.17dc8411.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/8990.17dc8411.chunk.js.map b/portal-ui/build/static/js/8990.17dc8411.chunk.js.map new file mode 100644 index 000000000..c4561c238 --- /dev/null +++ b/portal-ui/build/static/js/8990.17dc8411.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/8990.17dc8411.chunk.js","mappings":"8MAkEA,UAnCyB,SAAHA,GAKI,IAJxBC,EAAOD,EAAPC,QACAC,EAASF,EAATE,UACAC,EAAMH,EAANG,OACAC,EAAQJ,EAARI,SAEMC,GAAWC,EAAAA,EAAAA,MAKjBC,GAAyCC,EAAAA,EAAAA,IAJpB,WAAH,OAASP,GAAU,IAClB,SAACQ,GAAyB,OAC3CJ,GAASK,EAAAA,EAAAA,IAAqBD,GAAM,IAEmCE,GAAAC,EAAAA,EAAAA,GAAAL,EAAA,GAAlEM,EAAaF,EAAA,GAAEG,EAAeH,EAAA,GAQrC,OACEI,EAAAA,EAAAA,KAACC,EAAAA,EAAa,CACZC,MAAK,+BACLC,YAAa,SACbC,OAAQjB,EACRkB,UAAWP,EACXQ,UAZoB,WACtBP,EAAgB,SAAS,kBAADQ,OAAoBnB,EAAM,iBAAiB,CACjEoB,OAAQnB,GAEZ,EASIoB,WAAWT,EAAAA,EAAAA,KAACU,EAAAA,IAAiB,IAC7BxB,QAASA,EACTyB,qBACEX,EAAAA,EAAAA,KAACY,EAAAA,SAAQ,CAAAC,SAAC,uDAIlB,C","sources":["screens/Console/Buckets/BucketDetails/DeleteAccessRule.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\n\ninterface IDeleteAccessRule {\n modalOpen: boolean;\n onClose: () => any;\n bucket: string;\n toDelete: string;\n}\n\nconst DeleteAccessRule = ({\n onClose,\n modalOpen,\n bucket,\n toDelete,\n}: IDeleteAccessRule) => {\n const dispatch = useAppDispatch();\n const onDelSuccess = () => onClose();\n const onDelError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n\n const onConfirmDelete = () => {\n invokeDeleteApi(\"DELETE\", `/api/v1/bucket/${bucket}/access-rules`, {\n prefix: toDelete,\n });\n };\n\n return (\n }\n onClose={onClose}\n confirmationContent={\n Are you sure you want to delete this access rule?\n }\n />\n );\n};\n\nexport default DeleteAccessRule;\n"],"names":["_ref","onClose","modalOpen","bucket","toDelete","dispatch","useAppDispatch","_useApi","useApi","err","setErrorSnackMessage","_useApi2","_slicedToArray","deleteLoading","invokeDeleteApi","_jsx","ConfirmDialog","title","confirmText","isOpen","isLoading","onConfirm","concat","prefix","titleIcon","ConfirmDeleteIcon","confirmationContent","Fragment","children"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/8990.a79c2757.chunk.js b/portal-ui/build/static/js/8990.a79c2757.chunk.js deleted file mode 100644 index 3f592786c..000000000 --- a/portal-ui/build/static/js/8990.a79c2757.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[8990],{8990:function(e,n,t){t.r(n);var o=t(29439),u=t(1413),c=(t(72791),t(51691)),r=t(11135),i=t(25787),s=t(23814),l=t(9505),a=t(23508),f=t(29945),p=t(87995),Z=t(81551),h=t(80184);n.default=(0,i.Z)((function(e){return(0,r.Z)((0,u.Z)({},s.oO))}))((function(e){var n=e.onClose,t=e.modalOpen,u=e.bucket,r=e.toDelete,i=(0,Z.TL)(),s=(0,l.Z)((function(){return n()}),(function(e){return i((0,p.Ih)(e))})),k=(0,o.Z)(s,2),C=k[0],d=k[1];return(0,h.jsx)(a.Z,{title:"Delete Anonymous Access Rule",confirmText:"Delete",isOpen:t,isLoading:C,onConfirm:function(){d("DELETE","/api/v1/bucket/".concat(u,"/access-rules"),{prefix:r})},titleIcon:(0,h.jsx)(f.NvT,{}),onClose:n,confirmationContent:(0,h.jsx)(c.Z,{children:"Are you sure you want to delete this access rule?"})})}))}}]); -//# sourceMappingURL=8990.a79c2757.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/8990.a79c2757.chunk.js.map b/portal-ui/build/static/js/8990.a79c2757.chunk.js.map deleted file mode 100644 index cf41bcb54..000000000 --- a/portal-ui/build/static/js/8990.a79c2757.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/8990.a79c2757.chunk.js","mappings":"oQA+EA,WAAeA,EAAAA,EAAAA,IA1CA,SAACC,GAAY,OAC1BC,EAAAA,EAAAA,IAAYC,EAAAA,EAAAA,GAAC,CAAC,EACTC,EAAAA,IACF,GAuCL,EArCyB,SAAHC,GAKI,IAJxBC,EAAOD,EAAPC,QACAC,EAASF,EAATE,UACAC,EAAMH,EAANG,OACAC,EAAQJ,EAARI,SAEMC,GAAWC,EAAAA,EAAAA,MAKjBC,GAAyCC,EAAAA,EAAAA,IAJpB,WAAH,OAASP,GAAU,IAClB,SAACQ,GAAyB,OAC3CJ,GAASK,EAAAA,EAAAA,IAAqBD,GAAM,IAEmCE,GAAAC,EAAAA,EAAAA,GAAAL,EAAA,GAAlEM,EAAaF,EAAA,GAAEG,EAAeH,EAAA,GAQrC,OACEI,EAAAA,EAAAA,KAACC,EAAAA,EAAa,CACZC,MAAK,+BACLC,YAAa,SACbC,OAAQjB,EACRkB,UAAWP,EACXQ,UAZoB,WACtBP,EAAgB,SAAS,kBAADQ,OAAoBnB,EAAM,iBAAiB,CACjEoB,OAAQnB,GAEZ,EASIoB,WAAWT,EAAAA,EAAAA,KAACU,EAAAA,IAAiB,IAC7BxB,QAASA,EACTyB,qBACEX,EAAAA,EAAAA,KAACY,EAAAA,EAAiB,CAAAC,SAAC,uDAM3B,G","sources":["screens/Console/Buckets/BucketDetails/DeleteAccessRule.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { DialogContentText } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { modalBasic } from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IDeleteAccessRule {\n modalOpen: boolean;\n onClose: () => any;\n bucket: string;\n toDelete: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalBasic,\n });\n\nconst DeleteAccessRule = ({\n onClose,\n modalOpen,\n bucket,\n toDelete,\n}: IDeleteAccessRule) => {\n const dispatch = useAppDispatch();\n const onDelSuccess = () => onClose();\n const onDelError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n\n const onConfirmDelete = () => {\n invokeDeleteApi(\"DELETE\", `/api/v1/bucket/${bucket}/access-rules`, {\n prefix: toDelete,\n });\n };\n\n return (\n }\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete this access rule?\n \n }\n />\n );\n};\n\nexport default withStyles(styles)(DeleteAccessRule);\n"],"names":["withStyles","theme","createStyles","_objectSpread","modalBasic","_ref","onClose","modalOpen","bucket","toDelete","dispatch","useAppDispatch","_useApi","useApi","err","setErrorSnackMessage","_useApi2","_slicedToArray","deleteLoading","invokeDeleteApi","_jsx","ConfirmDialog","title","confirmText","isOpen","isLoading","onConfirm","concat","prefix","titleIcon","ConfirmDeleteIcon","confirmationContent","DialogContentText","children"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9088.81c5bdf9.chunk.js b/portal-ui/build/static/js/9088.81c5bdf9.chunk.js deleted file mode 100644 index 5375a3b96..000000000 --- a/portal-ui/build/static/js/9088.81c5bdf9.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9088],{69088:function(e,t,n){n.r(t);var l=n(29439),r=n(72791),i=n(51691),c=n(9505),o=n(23508),s=n(29945),u=n(61889),a=n(21435),d=n(87995),p=n(81551),f=n(80184);t.default=function(e){var t=e.closeDeleteModalAndRefresh,n=e.deleteOpen,b=e.selectedBucket,h=e.ruleToDelete,x=e.rulesToDelete,v=e.remainingRules,j=e.allSelected,m=e.deleteSelectedRules,k=void 0!==m&&m,D=(0,p.TL)(),T=(0,r.useState)(""),y=(0,l.Z)(T,2),R=y[0],Z=y[1],g=(0,c.Z)((function(){return t(!0)}),(function(e){return D((0,d.Ih)(e))})),C=(0,l.Z)(g,2),E=C[0],w=C[1];if(!b)return null;return(0,f.jsx)(o.Z,{title:k?"Delete Selected Replication Rules":"Delete Replication Rule",confirmText:"Delete",isOpen:n,titleIcon:(0,f.jsx)(s.NvT,{}),isLoading:E,onConfirm:function(){var e="/api/v1/buckets/".concat(b,"/replication/").concat(h);if(k){if(!j)return e="/api/v1/buckets/".concat(b,"/delete-selected-replication-rules"),void w("DELETE",e,{rules:x});e="/api/v1/buckets/".concat(b,"/delete-all-replication-rules")}else 1===v&&(e="/api/v1/buckets/".concat(b,"/delete-all-replication-rules"));w("DELETE",e)},onClose:function(){return t(!1)},confirmButtonProps:{disabled:k&&"Yes, I am sure"!==R},confirmationContent:(0,f.jsx)(i.Z,{children:k?(0,f.jsxs)(r.Fragment,{children:["Are you sure you want to remove the selected replication rules for bucket ",(0,f.jsx)("b",{children:b}),"?",(0,f.jsx)("br",{}),(0,f.jsx)("br",{}),"To continue please type ",(0,f.jsx)("b",{children:"Yes, I am sure"})," in the box.",(0,f.jsx)(u.ZP,{item:!0,xs:12,children:(0,f.jsx)(a.Z,{id:"retype-tenant",name:"retype-tenant",onChange:function(e){Z(e.target.value)},label:"",value:R})})]}):(0,f.jsxs)(r.Fragment,{children:["Are you sure you want to delete replication rule"," ",(0,f.jsx)("b",{children:h}),"?"]})})})}}}]); -//# sourceMappingURL=9088.81c5bdf9.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/9088.81c5bdf9.chunk.js.map b/portal-ui/build/static/js/9088.81c5bdf9.chunk.js.map deleted file mode 100644 index 9d323f84a..000000000 --- a/portal-ui/build/static/js/9088.81c5bdf9.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/9088.81c5bdf9.chunk.js","mappings":"gPAkIA,UA1F8B,SAAHA,GASK,IAR9BC,EAA0BD,EAA1BC,2BACAC,EAAUF,EAAVE,WACAC,EAAcH,EAAdG,eACAC,EAAYJ,EAAZI,aACAC,EAAaL,EAAbK,cACAC,EAAcN,EAAdM,eACAC,EAAWP,EAAXO,YAAWC,EAAAR,EACXS,oBAAAA,OAAmB,IAAAD,GAAQA,EAErBE,GAAWC,EAAAA,EAAAA,MACjBC,GAAgDC,EAAAA,EAAAA,UAAiB,IAAGC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA7DI,EAAgBF,EAAA,GAAEG,EAAmBH,EAAA,GAO5CI,GAAyCC,EAAAA,EAAAA,IALpB,WAAH,OAASlB,GAA2B,EAAM,IACzC,SAACmB,GAAyB,OAC3CV,GAASW,EAAAA,EAAAA,IAAqBD,GAAM,IAGmCE,GAAAP,EAAAA,EAAAA,GAAAG,EAAA,GAAlEK,EAAaD,EAAA,GAAEE,EAAeF,EAAA,GAErC,IAAKnB,EACH,OAAO,KAqBT,OACEsB,EAAAA,EAAAA,KAACC,EAAAA,EAAa,CACZC,MACElB,EACI,oCACA,0BAENmB,YAAa,SACbC,OAAQ3B,EACR4B,WAAWL,EAAAA,EAAAA,KAACM,EAAAA,IAAiB,IAC7BC,UAAWT,EACXU,UA7BoB,WACtB,IAAIC,EAAG,mBAAAC,OAAsBhC,EAAc,iBAAAgC,OAAgB/B,GAE3D,GAAIK,EAAqB,CACvB,IAAIF,EAKF,OAFA2B,EAAG,mBAAAC,OAAsBhC,EAAc,2CACvCqB,EAAgB,SAAUU,EAAK,CAAEE,MAAO/B,IAHxC6B,EAAG,mBAAAC,OAAsBhC,EAAc,gCAM3C,MAA8B,IAAnBG,IACT4B,EAAG,mBAAAC,OAAsBhC,EAAc,kCAGzCqB,EAAgB,SAAUU,EAC5B,EAcIG,QAtCY,WAAH,OAASpC,GAA2B,EAAO,EAuCpDqC,mBAAoB,CAClBC,SAAU9B,GAA4C,mBAArBO,GAEnCwB,qBACEf,EAAAA,EAAAA,KAACgB,EAAAA,EAAiB,CAAAC,SACfjC,GACCkC,EAAAA,EAAAA,MAACC,EAAAA,SAAQ,CAAAF,SAAA,CAAC,8EAEDjB,EAAAA,EAAAA,KAAA,KAAAiB,SAAIvC,IAAmB,KAACsB,EAAAA,EAAAA,KAAA,UAC/BA,EAAAA,EAAAA,KAAA,SAAM,4BACkBA,EAAAA,EAAAA,KAAA,KAAAiB,SAAG,mBAAkB,gBAC7CjB,EAAAA,EAAAA,KAACoB,EAAAA,GAAI,CAACC,MAAI,EAACC,GAAI,GAAGL,UAChBjB,EAAAA,EAAAA,KAACuB,EAAAA,EAAe,CACdC,GAAG,gBACHC,KAAK,gBACLC,SAAU,SAACC,GACTnC,EAAoBmC,EAAMC,OAAOC,MACnC,EACAC,MAAM,GACND,MAAOtC,UAKb2B,EAAAA,EAAAA,MAACC,EAAAA,SAAQ,CAAAF,SAAA,CAAC,mDACyC,KACjDjB,EAAAA,EAAAA,KAAA,KAAAiB,SAAItC,IAAiB,UAOnC,C","sources":["screens/Console/Buckets/BucketDetails/DeleteReplicationRule.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\n\nimport { DialogContentText } from \"@mui/material\";\n\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport Grid from \"@mui/material/Grid\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IDeleteReplicationProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedBucket: string;\n ruleToDelete?: string;\n rulesToDelete?: string[];\n remainingRules: number;\n allSelected: boolean;\n deleteSelectedRules?: boolean;\n}\n\nconst DeleteReplicationRule = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n ruleToDelete,\n rulesToDelete,\n remainingRules,\n allSelected,\n deleteSelectedRules = false,\n}: IDeleteReplicationProps) => {\n const dispatch = useAppDispatch();\n const [confirmationText, setConfirmationText] = useState(\"\");\n\n const onDelSuccess = () => closeDeleteModalAndRefresh(true);\n const onDelError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n const onClose = () => closeDeleteModalAndRefresh(false);\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n\n if (!selectedBucket) {\n return null;\n }\n\n const onConfirmDelete = () => {\n let url = `/api/v1/buckets/${selectedBucket}/replication/${ruleToDelete}`;\n\n if (deleteSelectedRules) {\n if (allSelected) {\n url = `/api/v1/buckets/${selectedBucket}/delete-all-replication-rules`;\n } else {\n url = `/api/v1/buckets/${selectedBucket}/delete-selected-replication-rules`;\n invokeDeleteApi(\"DELETE\", url, { rules: rulesToDelete });\n return;\n }\n } else if (remainingRules === 1) {\n url = `/api/v1/buckets/${selectedBucket}/delete-all-replication-rules`;\n }\n\n invokeDeleteApi(\"DELETE\", url);\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmButtonProps={{\n disabled: deleteSelectedRules && confirmationText !== \"Yes, I am sure\",\n }}\n confirmationContent={\n \n {deleteSelectedRules ? (\n \n Are you sure you want to remove the selected replication rules for\n bucket {selectedBucket}?
\n
\n To continue please type Yes, I am sure in the box.\n \n ) => {\n setConfirmationText(event.target.value);\n }}\n label=\"\"\n value={confirmationText}\n />\n \n
\n ) : (\n \n Are you sure you want to delete replication rule{\" \"}\n {ruleToDelete}?\n \n )}\n
\n }\n />\n );\n};\n\nexport default DeleteReplicationRule;\n"],"names":["_ref","closeDeleteModalAndRefresh","deleteOpen","selectedBucket","ruleToDelete","rulesToDelete","remainingRules","allSelected","_ref$deleteSelectedRu","deleteSelectedRules","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","confirmationText","setConfirmationText","_useApi","useApi","err","setErrorSnackMessage","_useApi2","deleteLoading","invokeDeleteApi","_jsx","ConfirmDialog","title","confirmText","isOpen","titleIcon","ConfirmDeleteIcon","isLoading","onConfirm","url","concat","rules","onClose","confirmButtonProps","disabled","confirmationContent","DialogContentText","children","_jsxs","Fragment","Grid","item","xs","InputBoxWrapper","id","name","onChange","event","target","value","label"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9088.9dd285c2.chunk.js b/portal-ui/build/static/js/9088.9dd285c2.chunk.js new file mode 100644 index 000000000..4606bd946 --- /dev/null +++ b/portal-ui/build/static/js/9088.9dd285c2.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9088],{69088:function(e,t,n){n.r(t);var l=n(29439),r=n(72791),i=n(29945),c=n(87995),o=n(81551),s=n(9505),u=n(23508),a=n(80184);t.default=function(e){var t=e.closeDeleteModalAndRefresh,n=e.deleteOpen,d=e.selectedBucket,p=e.ruleToDelete,f=e.rulesToDelete,b=e.remainingRules,h=e.allSelected,x=e.deleteSelectedRules,j=void 0!==x&&x,m=(0,o.TL)(),v=(0,r.useState)(""),k=(0,l.Z)(v,2),g=k[0],D=k[1],T=(0,s.Z)((function(){return t(!0)}),(function(e){return m((0,c.Ih)(e))})),y=(0,l.Z)(T,2),R=y[0],C=y[1];if(!d)return null;return(0,a.jsx)(u.Z,{title:j?"Delete Selected Replication Rules":"Delete Replication Rule",confirmText:"Delete",isOpen:n,titleIcon:(0,a.jsx)(i.NvT,{}),isLoading:R,onConfirm:function(){var e="/api/v1/buckets/".concat(d,"/replication/").concat(p);if(j){if(!h)return e="/api/v1/buckets/".concat(d,"/delete-selected-replication-rules"),void C("DELETE",e,{rules:f});e="/api/v1/buckets/".concat(d,"/delete-all-replication-rules")}else 1===b&&(e="/api/v1/buckets/".concat(d,"/delete-all-replication-rules"));C("DELETE",e)},onClose:function(){return t(!1)},confirmButtonProps:{disabled:j&&"Yes, I am sure"!==g},confirmationContent:(0,a.jsx)(r.Fragment,{children:j?(0,a.jsxs)(r.Fragment,{children:["Are you sure you want to remove the selected replication rules for bucket ",(0,a.jsx)("b",{children:d}),"?",(0,a.jsx)("br",{}),(0,a.jsx)("br",{}),"To continue please type ",(0,a.jsx)("b",{children:"Yes, I am sure"})," in the box.",(0,a.jsx)(i.rjZ,{item:!0,xs:12,children:(0,a.jsx)(i.Wzg,{id:"retype-tenant",name:"retype-tenant",onChange:function(e){D(e.target.value)},label:"",value:g})})]}):(0,a.jsxs)(r.Fragment,{children:["Are you sure you want to delete replication rule"," ",(0,a.jsx)("b",{children:p}),"?"]})})})}}}]); +//# sourceMappingURL=9088.9dd285c2.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/9088.9dd285c2.chunk.js.map b/portal-ui/build/static/js/9088.9dd285c2.chunk.js.map new file mode 100644 index 000000000..d5a349d30 --- /dev/null +++ b/portal-ui/build/static/js/9088.9dd285c2.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/9088.9dd285c2.chunk.js","mappings":"+MA6HA,UA1F8B,SAAHA,GASK,IAR9BC,EAA0BD,EAA1BC,2BACAC,EAAUF,EAAVE,WACAC,EAAcH,EAAdG,eACAC,EAAYJ,EAAZI,aACAC,EAAaL,EAAbK,cACAC,EAAcN,EAAdM,eACAC,EAAWP,EAAXO,YAAWC,EAAAR,EACXS,oBAAAA,OAAmB,IAAAD,GAAQA,EAErBE,GAAWC,EAAAA,EAAAA,MACjBC,GAAgDC,EAAAA,EAAAA,UAAiB,IAAGC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA7DI,EAAgBF,EAAA,GAAEG,EAAmBH,EAAA,GAO5CI,GAAyCC,EAAAA,EAAAA,IALpB,WAAH,OAASlB,GAA2B,EAAM,IACzC,SAACmB,GAAyB,OAC3CV,GAASW,EAAAA,EAAAA,IAAqBD,GAAM,IAGmCE,GAAAP,EAAAA,EAAAA,GAAAG,EAAA,GAAlEK,EAAaD,EAAA,GAAEE,EAAeF,EAAA,GAErC,IAAKnB,EACH,OAAO,KAqBT,OACEsB,EAAAA,EAAAA,KAACC,EAAAA,EAAa,CACZC,MACElB,EACI,oCACA,0BAENmB,YAAa,SACbC,OAAQ3B,EACR4B,WAAWL,EAAAA,EAAAA,KAACM,EAAAA,IAAiB,IAC7BC,UAAWT,EACXU,UA7BoB,WACtB,IAAIC,EAAG,mBAAAC,OAAsBhC,EAAc,iBAAAgC,OAAgB/B,GAE3D,GAAIK,EAAqB,CACvB,IAAIF,EAKF,OAFA2B,EAAG,mBAAAC,OAAsBhC,EAAc,2CACvCqB,EAAgB,SAAUU,EAAK,CAAEE,MAAO/B,IAHxC6B,EAAG,mBAAAC,OAAsBhC,EAAc,gCAM3C,MAA8B,IAAnBG,IACT4B,EAAG,mBAAAC,OAAsBhC,EAAc,kCAGzCqB,EAAgB,SAAUU,EAC5B,EAcIG,QAtCY,WAAH,OAASpC,GAA2B,EAAO,EAuCpDqC,mBAAoB,CAClBC,SAAU9B,GAA4C,mBAArBO,GAEnCwB,qBACEf,EAAAA,EAAAA,KAACgB,EAAAA,SAAQ,CAAAC,SACNjC,GACCkC,EAAAA,EAAAA,MAACF,EAAAA,SAAQ,CAAAC,SAAA,CAAC,8EAEDjB,EAAAA,EAAAA,KAAA,KAAAiB,SAAIvC,IAAmB,KAACsB,EAAAA,EAAAA,KAAA,UAC/BA,EAAAA,EAAAA,KAAA,SAAM,4BACkBA,EAAAA,EAAAA,KAAA,KAAAiB,SAAG,mBAAkB,gBAC7CjB,EAAAA,EAAAA,KAACmB,EAAAA,IAAI,CAACC,MAAI,EAACC,GAAI,GAAGJ,UAChBjB,EAAAA,EAAAA,KAACsB,EAAAA,IAAQ,CACPC,GAAG,gBACHC,KAAK,gBACLC,SAAU,SAACC,GACTlC,EAAoBkC,EAAMC,OAAOC,MACnC,EACAC,MAAM,GACND,MAAOrC,UAKb2B,EAAAA,EAAAA,MAACF,EAAAA,SAAQ,CAAAC,SAAA,CAAC,mDACyC,KACjDjB,EAAAA,EAAAA,KAAA,KAAAiB,SAAItC,IAAiB,UAOnC,C","sources":["screens/Console/Buckets/BucketDetails/DeleteReplicationRule.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { ConfirmDeleteIcon, Grid, InputBox } from \"mds\";\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\n\ninterface IDeleteReplicationProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedBucket: string;\n ruleToDelete?: string;\n rulesToDelete?: string[];\n remainingRules: number;\n allSelected: boolean;\n deleteSelectedRules?: boolean;\n}\n\nconst DeleteReplicationRule = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n ruleToDelete,\n rulesToDelete,\n remainingRules,\n allSelected,\n deleteSelectedRules = false,\n}: IDeleteReplicationProps) => {\n const dispatch = useAppDispatch();\n const [confirmationText, setConfirmationText] = useState(\"\");\n\n const onDelSuccess = () => closeDeleteModalAndRefresh(true);\n const onDelError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n const onClose = () => closeDeleteModalAndRefresh(false);\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n\n if (!selectedBucket) {\n return null;\n }\n\n const onConfirmDelete = () => {\n let url = `/api/v1/buckets/${selectedBucket}/replication/${ruleToDelete}`;\n\n if (deleteSelectedRules) {\n if (allSelected) {\n url = `/api/v1/buckets/${selectedBucket}/delete-all-replication-rules`;\n } else {\n url = `/api/v1/buckets/${selectedBucket}/delete-selected-replication-rules`;\n invokeDeleteApi(\"DELETE\", url, { rules: rulesToDelete });\n return;\n }\n } else if (remainingRules === 1) {\n url = `/api/v1/buckets/${selectedBucket}/delete-all-replication-rules`;\n }\n\n invokeDeleteApi(\"DELETE\", url);\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmButtonProps={{\n disabled: deleteSelectedRules && confirmationText !== \"Yes, I am sure\",\n }}\n confirmationContent={\n \n {deleteSelectedRules ? (\n \n Are you sure you want to remove the selected replication rules for\n bucket {selectedBucket}?
\n
\n To continue please type Yes, I am sure in the box.\n \n ) => {\n setConfirmationText(event.target.value);\n }}\n label=\"\"\n value={confirmationText}\n />\n \n
\n ) : (\n \n Are you sure you want to delete replication rule{\" \"}\n {ruleToDelete}?\n \n )}\n
\n }\n />\n );\n};\n\nexport default DeleteReplicationRule;\n"],"names":["_ref","closeDeleteModalAndRefresh","deleteOpen","selectedBucket","ruleToDelete","rulesToDelete","remainingRules","allSelected","_ref$deleteSelectedRu","deleteSelectedRules","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","confirmationText","setConfirmationText","_useApi","useApi","err","setErrorSnackMessage","_useApi2","deleteLoading","invokeDeleteApi","_jsx","ConfirmDialog","title","confirmText","isOpen","titleIcon","ConfirmDeleteIcon","isLoading","onConfirm","url","concat","rules","onClose","confirmButtonProps","disabled","confirmationContent","Fragment","children","_jsxs","Grid","item","xs","InputBox","id","name","onChange","event","target","value","label"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9135.9f49ec5b.chunk.js b/portal-ui/build/static/js/9135.9f49ec5b.chunk.js deleted file mode 100644 index 88e5ad0e5..000000000 --- a/portal-ui/build/static/js/9135.9f49ec5b.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9135],{13901:function(e,t,n){var a=n(64836);t.Z=void 0;var o=a(n(45649)),r=n(80184),c=(0,o.default)((0,r.jsx)("path",{d:"M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3v-3h18v3z"}),"CallToAction");t.Z=c},31292:function(e,t,n){var a=n(64836);t.Z=void 0;var o=a(n(45649)),r=n(80184),c=(0,o.default)((0,r.jsx)("path",{d:"M9.4 16.6 4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0 4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z"}),"Code");t.Z=c},61809:function(e,t,n){var a=n(64836);t.Z=void 0;var o=a(n(45649)),r=n(80184),c=(0,o.default)((0,r.jsx)("path",{d:"M8 19h3v3h2v-3h3l-4-4-4 4zm8-15h-3V1h-2v3H8l4 4 4-4zM4 9v2h16V9H4zm0 3h16v2H4z"}),"Compress");t.Z=c},67055:function(e,t,n){var a=n(64836);t.Z=void 0;var o=a(n(45649)),r=n(80184),c=(0,o.default)((0,r.jsx)("path",{d:"M11 6c1.38 0 2.63.56 3.54 1.46L12 10h6V4l-2.05 2.05C14.68 4.78 12.93 4 11 4c-3.53 0-6.43 2.61-6.92 6H6.1c.46-2.28 2.48-4 4.9-4zm5.64 9.14c.66-.9 1.12-1.97 1.28-3.14H15.9c-.46 2.28-2.48 4-4.9 4-1.38 0-2.63-.56-3.54-1.46L10 12H4v6l2.05-2.05C7.32 17.22 9.07 18 11 18c1.55 0 2.98-.51 4.14-1.36L20 21.49 21.49 20l-4.85-4.86z"}),"FindReplace");t.Z=c},98095:function(e,t,n){var a=n(64836);t.Z=void 0;var o=a(n(45649)),r=n(80184),c=(0,o.default)((0,r.jsx)("path",{d:"M19 3H5c-1.1 0-1.99.9-1.99 2L3 19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-1 11h-4v4h-4v-4H6v-4h4V6h4v4h4v4z"}),"LocalHospital");t.Z=c},36909:function(e,t,n){var a=n(64836);t.Z=void 0;var o=a(n(45649)),r=n(80184),c=(0,o.default)((0,r.jsx)("path",{d:"M17 12c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5zm1.65 7.35L16.5 17.2V14h1v2.79l1.85 1.85-.7.71zM18 3h-3.18C14.4 1.84 13.3 1 12 1s-2.4.84-2.82 2H6c-1.1 0-2 .9-2 2v15c0 1.1.9 2 2 2h6.11c-.59-.57-1.07-1.25-1.42-2H6V5h2v3h8V5h2v5.08c.71.1 1.38.31 2 .6V5c0-1.1-.9-2-2-2zm-6 2c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1z"}),"PendingActions");t.Z=c},87569:function(e,t,n){var a=n(64836);t.Z=void 0;var o=a(n(45649)),r=n(80184),c=(0,o.default)((0,r.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z"}),"Public");t.Z=c},21141:function(e,t,n){var a=n(64836);t.Z=void 0;var o=a(n(45649)),r=n(80184),c=(0,o.default)((0,r.jsx)("path",{d:"M12.65 10C11.83 7.67 9.61 6 7 6c-3.31 0-6 2.69-6 6s2.69 6 6 6c2.61 0 4.83-1.67 5.65-4H17v4h4v-4h2v-4H12.65zM7 14c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"}),"VpnKey");t.Z=c},244:function(e,t,n){var a=n(76189),o=n(80184);t.Z=(0,a.Z)((0,o.jsx)("path",{d:"M10 15h5.88c.27-.31.67-.5 1.12-.5.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5c-.44 0-.84-.19-1.12-.5H11.9c-.46 2.28-2.48 4-4.9 4-2.76 0-5-2.24-5-5 0-2.42 1.72-4.44 4-4.9v2.07c-1.16.41-2 1.53-2 2.83 0 1.65 1.35 3 3 3s3-1.35 3-3v-1zm2.5-11c1.65 0 3 1.35 3 3h2c0-2.76-2.24-5-5-5s-5 2.24-5 5c0 1.43.6 2.71 1.55 3.62l-2.35 3.9c-.68.14-1.2.75-1.2 1.48 0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5c0-.16-.02-.31-.07-.45l3.38-5.63C10.49 9.61 9.5 8.42 9.5 7c0-1.65 1.35-3 3-3zm4.5 9c-.64 0-1.23.2-1.72.54l-3.05-5.07C11.53 8.35 11 7.74 11 7c0-.83.67-1.5 1.5-1.5S14 6.17 14 7c0 .15-.02.29-.06.43l2.19 3.65c.28-.05.57-.08.87-.08 2.76 0 5 2.24 5 5s-2.24 5-5 5c-1.85 0-3.47-1.01-4.33-2.5h2.67c.48.32 1.05.5 1.66.5 1.65 0 3-1.35 3-3s-1.35-3-3-3z"}),"Webhook")},83449:function(e,t,n){n.d(t,{ZP:function(){return i},_i:function(){return d},pQ:function(){return l},uU:function(){return u}});var a=n(29439),o=n(72791),r=n(80184),c=o.createContext(null);function i(e){var t=e.children,n=e.value,i=function(){var e=o.useState(null),t=(0,a.Z)(e,2),n=t[0],r=t[1];return o.useEffect((function(){r("mui-p-".concat(Math.round(1e5*Math.random())))}),[]),n}(),d=o.useMemo((function(){return{idPrefix:i,value:n}}),[i,n]);return(0,r.jsx)(c.Provider,{value:d,children:t})}function d(){return o.useContext(c)}function u(e,t){return null===e.idPrefix?null:"".concat(e.idPrefix,"-P-").concat(t)}function l(e,t){return null===e.idPrefix?null:"".concat(e.idPrefix,"-T-").concat(t)}},47283:function(e,t,n){var a=n(87462),o=n(63366),r=n(72791),c=n(18073),i=n(83449),d=n(80184),u=["children"],l=r.forwardRef((function(e,t){var n=e.children,l=(0,o.Z)(e,u),s=(0,i._i)();if(null===s)throw new TypeError("No TabContext provided");var h=r.Children.map(n,(function(e){return r.isValidElement(e)?r.cloneElement(e,{"aria-controls":(0,i.uU)(s,e.props.value),id:(0,i.pQ)(s,e.props.value)}):null}));return(0,d.jsx)(c.Z,(0,a.Z)({},l,{ref:t,value:s.value,children:h}))}));t.Z=l},82851:function(e,t,n){n.d(t,{Z:function(){return m}});var a=n(87462),o=n(63366),r=n(72791),c=n(28182),i=n(66934),d=n(31402),u=n(94419),l=n(21217);function s(e){return(0,l.Z)("MuiTabPanel",e)}(0,n(75878).Z)("MuiTabPanel",["root"]);var h=n(83449),v=n(80184),f=["children","className","value"],p=(0,i.ZP)("div",{name:"MuiTabPanel",slot:"Root",overridesResolver:function(e,t){return t.root}})((function(e){return{padding:e.theme.spacing(3)}})),m=r.forwardRef((function(e,t){var n=(0,d.Z)({props:e,name:"MuiTabPanel"}),r=n.children,i=n.className,l=n.value,m=(0,o.Z)(n,f),Z=(0,a.Z)({},n),b=function(e){var t=e.classes;return(0,u.Z)({root:["root"]},s,t)}(Z),g=(0,h._i)();if(null===g)throw new TypeError("No TabContext provided");var w=(0,h.uU)(g,l),k=(0,h.pQ)(g,l);return(0,v.jsx)(p,(0,a.Z)({"aria-labelledby":k,className:(0,c.Z)(b.root,i),hidden:l!==g.value,id:w,ref:t,role:"tabpanel",ownerState:Z},m,{children:l===g.value&&r}))}))},9955:function(e,t,n){n.d(t,{Z:function(){return S}});var a=n(4942),o=n(63366),r=n(87462),c=n(72791),i=n(28182),d=n(94419),u=n(12065),l=n(14036),s=n(97278),h=n(31402),v=n(66934),f=n(75878),p=n(21217);function m(e){return(0,p.Z)("MuiSwitch",e)}var Z=(0,f.Z)("MuiSwitch",["root","edgeStart","edgeEnd","switchBase","colorPrimary","colorSecondary","sizeSmall","sizeMedium","checked","disabled","input","thumb","track"]),b=n(80184),g=["className","color","edge","size","sx"],w=(0,v.ZP)("span",{name:"MuiSwitch",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,n.edge&&t["edge".concat((0,l.Z)(n.edge))],t["size".concat((0,l.Z)(n.size))]]}})((function(e){var t,n=e.ownerState;return(0,r.Z)({display:"inline-flex",width:58,height:38,overflow:"hidden",padding:12,boxSizing:"border-box",position:"relative",flexShrink:0,zIndex:0,verticalAlign:"middle","@media print":{colorAdjust:"exact"}},"start"===n.edge&&{marginLeft:-8},"end"===n.edge&&{marginRight:-8},"small"===n.size&&(t={width:40,height:24,padding:7},(0,a.Z)(t,"& .".concat(Z.thumb),{width:16,height:16}),(0,a.Z)(t,"& .".concat(Z.switchBase),(0,a.Z)({padding:4},"&.".concat(Z.checked),{transform:"translateX(16px)"})),t))})),k=(0,v.ZP)(s.Z,{name:"MuiSwitch",slot:"SwitchBase",overridesResolver:function(e,t){var n=e.ownerState;return[t.switchBase,(0,a.Z)({},"& .".concat(Z.input),t.input),"default"!==n.color&&t["color".concat((0,l.Z)(n.color))]]}})((function(e){var t,n=e.theme;return t={position:"absolute",top:0,left:0,zIndex:1,color:n.vars?n.vars.palette.Switch.defaultColor:"".concat("light"===n.palette.mode?n.palette.common.white:n.palette.grey[300]),transition:n.transitions.create(["left","transform"],{duration:n.transitions.duration.shortest})},(0,a.Z)(t,"&.".concat(Z.checked),{transform:"translateX(20px)"}),(0,a.Z)(t,"&.".concat(Z.disabled),{color:n.vars?n.vars.palette.Switch.defaultDisabledColor:"".concat("light"===n.palette.mode?n.palette.grey[100]:n.palette.grey[600])}),(0,a.Z)(t,"&.".concat(Z.checked," + .").concat(Z.track),{opacity:.5}),(0,a.Z)(t,"&.".concat(Z.disabled," + .").concat(Z.track),{opacity:n.vars?n.vars.opacity.switchTrackDisabled:"".concat("light"===n.palette.mode?.12:.2)}),(0,a.Z)(t,"& .".concat(Z.input),{left:"-100%",width:"300%"}),t}),(function(e){var t,n=e.theme,o=e.ownerState;return(0,r.Z)({"&:hover":{backgroundColor:n.vars?"rgba(".concat(n.vars.palette.action.activeChannel," / ").concat(n.vars.palette.action.hoverOpacity,")"):(0,u.Fq)(n.palette.action.active,n.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"default"!==o.color&&(t={},(0,a.Z)(t,"&.".concat(Z.checked),(0,a.Z)({color:(n.vars||n).palette[o.color].main,"&:hover":{backgroundColor:n.vars?"rgba(".concat(n.vars.palette[o.color].mainChannel," / ").concat(n.vars.palette.action.hoverOpacity,")"):(0,u.Fq)(n.palette[o.color].main,n.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"&.".concat(Z.disabled),{color:n.vars?n.vars.palette.Switch["".concat(o.color,"DisabledColor")]:"".concat("light"===n.palette.mode?(0,u.$n)(n.palette[o.color].main,.62):(0,u._j)(n.palette[o.color].main,.55))})),(0,a.Z)(t,"&.".concat(Z.checked," + .").concat(Z.track),{backgroundColor:(n.vars||n).palette[o.color].main}),t))})),x=(0,v.ZP)("span",{name:"MuiSwitch",slot:"Track",overridesResolver:function(e,t){return t.track}})((function(e){var t=e.theme;return{height:"100%",width:"100%",borderRadius:7,zIndex:-1,transition:t.transitions.create(["opacity","background-color"],{duration:t.transitions.duration.shortest}),backgroundColor:t.vars?t.vars.palette.common.onBackground:"".concat("light"===t.palette.mode?t.palette.common.black:t.palette.common.white),opacity:t.vars?t.vars.opacity.switchTrack:"".concat("light"===t.palette.mode?.38:.3)}})),z=(0,v.ZP)("span",{name:"MuiSwitch",slot:"Thumb",overridesResolver:function(e,t){return t.thumb}})((function(e){var t=e.theme;return{boxShadow:(t.vars||t).shadows[1],backgroundColor:"currentColor",width:20,height:20,borderRadius:"50%"}})),S=c.forwardRef((function(e,t){var n=(0,h.Z)({props:e,name:"MuiSwitch"}),a=n.className,c=n.color,u=void 0===c?"primary":c,s=n.edge,v=void 0!==s&&s,f=n.size,p=void 0===f?"medium":f,Z=n.sx,S=(0,o.Z)(n,g),C=(0,r.Z)({},n,{color:u,edge:v,size:p}),M=function(e){var t=e.classes,n=e.edge,a=e.size,o=e.color,c=e.checked,i=e.disabled,u={root:["root",n&&"edge".concat((0,l.Z)(n)),"size".concat((0,l.Z)(a))],switchBase:["switchBase","color".concat((0,l.Z)(o)),c&&"checked",i&&"disabled"],thumb:["thumb"],track:["track"],input:["input"]},s=(0,d.Z)(u,m,t);return(0,r.Z)({},t,s)}(C),y=(0,b.jsx)(z,{className:M.thumb,ownerState:C});return(0,b.jsxs)(w,{className:(0,i.Z)(M.root,a),sx:Z,ownerState:C,children:[(0,b.jsx)(k,(0,r.Z)({type:"checkbox",icon:y,checkedIcon:y,ref:t,ownerState:C},S,{classes:(0,r.Z)({},M,{root:M.switchBase})})),(0,b.jsx)(x,{className:M.track,ownerState:C})]})}))},97278:function(e,t,n){n.d(t,{Z:function(){return k}});var a=n(29439),o=n(63366),r=n(87462),c=n(72791),i=n(28182),d=n(94419),u=n(14036),l=n(66934),s=n(98278),h=n(52930),v=n(95080),f=n(75878),p=n(21217);function m(e){return(0,p.Z)("PrivateSwitchBase",e)}(0,f.Z)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var Z=n(80184),b=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],g=(0,l.ZP)(v.Z)((function(e){var t=e.ownerState;return(0,r.Z)({padding:9,borderRadius:"50%"},"start"===t.edge&&{marginLeft:"small"===t.size?-3:-12},"end"===t.edge&&{marginRight:"small"===t.size?-3:-12})})),w=(0,l.ZP)("input")({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),k=c.forwardRef((function(e,t){var n=e.autoFocus,c=e.checked,l=e.checkedIcon,v=e.className,f=e.defaultChecked,p=e.disabled,k=e.disableFocusRipple,x=void 0!==k&&k,z=e.edge,S=void 0!==z&&z,C=e.icon,M=e.id,y=e.inputProps,P=e.inputRef,R=e.name,j=e.onBlur,B=e.onChange,H=e.onFocus,L=e.readOnly,F=e.required,N=void 0!==F&&F,T=e.tabIndex,V=e.type,I=e.value,E=(0,o.Z)(e,b),O=(0,s.Z)({controlled:c,default:Boolean(f),name:"SwitchBase",state:"checked"}),_=(0,a.Z)(O,2),q=_[0],A=_[1],Q=(0,h.Z)(),U=p;Q&&"undefined"===typeof U&&(U=Q.disabled);var D="checkbox"===V||"radio"===V,X=(0,r.Z)({},e,{checked:q,disabled:U,disableFocusRipple:x,edge:S}),K=function(e){var t=e.classes,n=e.checked,a=e.disabled,o=e.edge,r={root:["root",n&&"checked",a&&"disabled",o&&"edge".concat((0,u.Z)(o))],input:["input"]};return(0,d.Z)(r,m,t)}(X);return(0,Z.jsxs)(g,(0,r.Z)({component:"span",className:(0,i.Z)(K.root,v),centerRipple:!0,focusRipple:!x,disabled:U,tabIndex:null,role:void 0,onFocus:function(e){H&&H(e),Q&&Q.onFocus&&Q.onFocus(e)},onBlur:function(e){j&&j(e),Q&&Q.onBlur&&Q.onBlur(e)},ownerState:X,ref:t},E,{children:[(0,Z.jsx)(w,(0,r.Z)({autoFocus:n,checked:c,defaultChecked:f,className:K.input,disabled:U,id:D?M:void 0,name:R,onChange:function(e){if(!e.nativeEvent.defaultPrevented){var t=e.target.checked;A(t),B&&B(e,t)}},readOnly:L,ref:P,required:N,ownerState:X,tabIndex:T,type:V},"checkbox"===V&&void 0===I?{}:{value:I},y)),q?l:C]}))}))},95193:function(e,t,n){var a;n.d(t,{Z:function(){return h}});var o=n(29439),r=n(72791),c=n(69120),i=n(33073),d=n(40162);function u(e,t,n,a,c){var i=r.useState((function(){return c&&n?n(e).matches:a?a(e).matches:t})),u=(0,o.Z)(i,2),l=u[0],s=u[1];return(0,d.Z)((function(){var t=!0;if(n){var a=n(e),o=function(){t&&s(a.matches)};return o(),a.addListener(o),function(){t=!1,a.removeListener(o)}}}),[e,n]),l}var l=(a||(a=n.t(r,2))).useSyncExternalStore;function s(e,t,n,a,c){var i=r.useCallback((function(){return t}),[t]),d=r.useMemo((function(){if(c&&n)return function(){return n(e).matches};if(null!==a){var t=a(e).matches;return function(){return t}}return i}),[i,e,a,c,n]),u=r.useMemo((function(){if(null===n)return[i,function(){return function(){}}];var t=n(e);return[function(){return t.matches},function(e){return t.addListener(e),function(){t.removeListener(e)}}]}),[i,n,e]),s=(0,o.Z)(u,2),h=s[0],v=s[1];return l(v,h,d)}function h(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=(0,c.Z)(),a="undefined"!==typeof window&&"undefined"!==typeof window.matchMedia,o=(0,i.Z)({name:"MuiUseMediaQuery",props:t,theme:n}),r=o.defaultMatches,d=void 0!==r&&r,h=o.matchMedia,v=void 0===h?a?window.matchMedia:null:h,f=o.ssrMatchMedia,p=void 0===f?null:f,m=o.noSsr,Z=void 0!==m&&m;var b="function"===typeof e?e(n):e;return b=b.replace(/^@media( ?)/m,""),(void 0!==l?s:u)(b,d,v,p,Z)}}}]); -//# sourceMappingURL=9135.9f49ec5b.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/9135.9f49ec5b.chunk.js.map b/portal-ui/build/static/js/9135.9f49ec5b.chunk.js.map deleted file mode 100644 index 79b0113c6..000000000 --- a/portal-ui/build/static/js/9135.9f49ec5b.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/9135.9f49ec5b.chunk.js","mappings":"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","sources":["../node_modules/@mui/icons-material/CallToAction.js","../node_modules/@mui/icons-material/Code.js","../node_modules/@mui/icons-material/Compress.js","../node_modules/@mui/icons-material/FindReplace.js","../node_modules/@mui/icons-material/LocalHospital.js","../node_modules/@mui/icons-material/PendingActions.js","../node_modules/@mui/icons-material/Public.js","../node_modules/@mui/icons-material/VpnKey.js","../node_modules/@mui/icons-material/esm/Webhook.js","../node_modules/@mui/lab/TabContext/TabContext.js","../node_modules/@mui/lab/TabList/TabList.js","../node_modules/@mui/lab/TabPanel/tabPanelClasses.js","../node_modules/@mui/lab/TabPanel/TabPanel.js","../node_modules/@mui/material/Switch/switchClasses.js","../node_modules/@mui/material/Switch/Switch.js","../node_modules/@mui/material/internal/switchBaseClasses.js","../node_modules/@mui/material/internal/SwitchBase.js","../node_modules/@mui/material/useMediaQuery/useMediaQuery.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3v-3h18v3z\"\n}), 'CallToAction');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M9.4 16.6 4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0 4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z\"\n}), 'Code');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M8 19h3v3h2v-3h3l-4-4-4 4zm8-15h-3V1h-2v3H8l4 4 4-4zM4 9v2h16V9H4zm0 3h16v2H4z\"\n}), 'Compress');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M11 6c1.38 0 2.63.56 3.54 1.46L12 10h6V4l-2.05 2.05C14.68 4.78 12.93 4 11 4c-3.53 0-6.43 2.61-6.92 6H6.1c.46-2.28 2.48-4 4.9-4zm5.64 9.14c.66-.9 1.12-1.97 1.28-3.14H15.9c-.46 2.28-2.48 4-4.9 4-1.38 0-2.63-.56-3.54-1.46L10 12H4v6l2.05-2.05C7.32 17.22 9.07 18 11 18c1.55 0 2.98-.51 4.14-1.36L20 21.49 21.49 20l-4.85-4.86z\"\n}), 'FindReplace');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M19 3H5c-1.1 0-1.99.9-1.99 2L3 19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-1 11h-4v4h-4v-4H6v-4h4V6h4v4h4v4z\"\n}), 'LocalHospital');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M17 12c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5zm1.65 7.35L16.5 17.2V14h1v2.79l1.85 1.85-.7.71zM18 3h-3.18C14.4 1.84 13.3 1 12 1s-2.4.84-2.82 2H6c-1.1 0-2 .9-2 2v15c0 1.1.9 2 2 2h6.11c-.59-.57-1.07-1.25-1.42-2H6V5h2v3h8V5h2v5.08c.71.1 1.38.31 2 .6V5c0-1.1-.9-2-2-2zm-6 2c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1z\"\n}), 'PendingActions');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z\"\n}), 'Public');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12.65 10C11.83 7.67 9.61 6 7 6c-3.31 0-6 2.69-6 6s2.69 6 6 6c2.61 0 4.83-1.67 5.65-4H17v4h4v-4h2v-4H12.65zM7 14c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z\"\n}), 'VpnKey');\nexports.default = _default;","import createSvgIcon from './utils/createSvgIcon';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default createSvgIcon( /*#__PURE__*/_jsx(\"path\", {\n d: \"M10 15h5.88c.27-.31.67-.5 1.12-.5.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5c-.44 0-.84-.19-1.12-.5H11.9c-.46 2.28-2.48 4-4.9 4-2.76 0-5-2.24-5-5 0-2.42 1.72-4.44 4-4.9v2.07c-1.16.41-2 1.53-2 2.83 0 1.65 1.35 3 3 3s3-1.35 3-3v-1zm2.5-11c1.65 0 3 1.35 3 3h2c0-2.76-2.24-5-5-5s-5 2.24-5 5c0 1.43.6 2.71 1.55 3.62l-2.35 3.9c-.68.14-1.2.75-1.2 1.48 0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5c0-.16-.02-.31-.07-.45l3.38-5.63C10.49 9.61 9.5 8.42 9.5 7c0-1.65 1.35-3 3-3zm4.5 9c-.64 0-1.23.2-1.72.54l-3.05-5.07C11.53 8.35 11 7.74 11 7c0-.83.67-1.5 1.5-1.5S14 6.17 14 7c0 .15-.02.29-.06.43l2.19 3.65c.28-.05.57-.08.87-.08 2.76 0 5 2.24 5 5s-2.24 5-5 5c-1.85 0-3.47-1.01-4.33-2.5h2.67c.48.32 1.05.5 1.66.5 1.65 0 3-1.35 3-3s-1.35-3-3-3z\"\n}), 'Webhook');","import * as React from 'react';\nimport PropTypes from 'prop-types';\n\n/**\n * @type {React.Context<{ idPrefix: string; value: string } | null>}\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst Context = /*#__PURE__*/React.createContext(null);\nif (process.env.NODE_ENV !== 'production') {\n Context.displayName = 'TabContext';\n}\nfunction useUniquePrefix() {\n const [id, setId] = React.useState(null);\n React.useEffect(() => {\n setId(`mui-p-${Math.round(Math.random() * 1e5)}`);\n }, []);\n return id;\n}\nexport default function TabContext(props) {\n const {\n children,\n value\n } = props;\n const idPrefix = useUniquePrefix();\n const context = React.useMemo(() => {\n return {\n idPrefix,\n value\n };\n }, [idPrefix, value]);\n return /*#__PURE__*/_jsx(Context.Provider, {\n value: context,\n children: children\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? TabContext.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * The value of the currently selected `Tab`.\n */\n value: PropTypes.string.isRequired\n} : void 0;\n\n/**\n * @returns {unknown}\n */\nexport function useTabContext() {\n return React.useContext(Context);\n}\nexport function getPanelId(context, value) {\n const {\n idPrefix\n } = context;\n if (idPrefix === null) {\n return null;\n }\n return `${context.idPrefix}-P-${value}`;\n}\nexport function getTabId(context, value) {\n const {\n idPrefix\n } = context;\n if (idPrefix === null) {\n return null;\n }\n return `${context.idPrefix}-T-${value}`;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"children\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport Tabs from '@mui/material/Tabs';\nimport { useTabContext, getTabId, getPanelId } from '../TabContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst TabList = /*#__PURE__*/React.forwardRef(function TabList(props, ref) {\n const {\n children: childrenProp\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const context = useTabContext();\n if (context === null) {\n throw new TypeError('No TabContext provided');\n }\n const children = React.Children.map(childrenProp, child => {\n if (! /*#__PURE__*/React.isValidElement(child)) {\n return null;\n }\n return /*#__PURE__*/React.cloneElement(child, {\n // SOMEDAY: `Tabs` will set those themselves\n 'aria-controls': getPanelId(context, child.props.value),\n id: getTabId(context, child.props.value)\n });\n });\n return /*#__PURE__*/_jsx(Tabs, _extends({}, other, {\n ref: ref,\n value: context.value,\n children: children\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? TabList.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * A list of `` elements.\n */\n children: PropTypes.node\n} : void 0;\nexport default TabList;","import generateUtilityClass from '@mui/material/generateUtilityClass';\nimport generateUtilityClasses from '@mui/material/generateUtilityClasses';\nexport function getTabPanelUtilityClass(slot) {\n return generateUtilityClass('MuiTabPanel', slot);\n}\nconst tabPanelClasses = generateUtilityClasses('MuiTabPanel', ['root']);\nexport default tabPanelClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"children\", \"className\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { styled, useThemeProps } from '@mui/material/styles';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { getTabPanelUtilityClass } from './tabPanelClasses';\nimport { getPanelId, getTabId, useTabContext } from '../TabContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getTabPanelUtilityClass, classes);\n};\nconst TabPanelRoot = styled('div', {\n name: 'MuiTabPanel',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})(({\n theme\n}) => ({\n padding: theme.spacing(3)\n}));\nconst TabPanel = /*#__PURE__*/React.forwardRef(function TabPanel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTabPanel'\n });\n const {\n children,\n className,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props);\n const classes = useUtilityClasses(ownerState);\n const context = useTabContext();\n if (context === null) {\n throw new TypeError('No TabContext provided');\n }\n const id = getPanelId(context, value);\n const tabId = getTabId(context, value);\n return /*#__PURE__*/_jsx(TabPanelRoot, _extends({\n \"aria-labelledby\": tabId,\n className: clsx(classes.root, className),\n hidden: value !== context.value,\n id: id,\n ref: ref,\n role: \"tabpanel\",\n ownerState: ownerState\n }, other, {\n children: value === context.value && children\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? TabPanel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The `value` of the corresponding `Tab`. Must use the index of the `Tab` when\n * no `value` was passed to `Tab`.\n */\n value: PropTypes.string.isRequired\n} : void 0;\nexport default TabPanel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchUtilityClass(slot) {\n return generateUtilityClass('MuiSwitch', slot);\n}\nconst switchClasses = generateUtilityClasses('MuiSwitch', ['root', 'edgeStart', 'edgeEnd', 'switchBase', 'colorPrimary', 'colorSecondary', 'sizeSmall', 'sizeMedium', 'checked', 'disabled', 'input', 'thumb', 'track']);\nexport default switchClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"color\", \"edge\", \"size\", \"sx\"];\n// @inheritedComponent IconButton\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { alpha, darken, lighten } from '@mui/system';\nimport capitalize from '../utils/capitalize';\nimport SwitchBase from '../internal/SwitchBase';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport switchClasses, { getSwitchUtilityClass } from './switchClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n edge,\n size,\n color,\n checked,\n disabled\n } = ownerState;\n const slots = {\n root: ['root', edge && `edge${capitalize(edge)}`, `size${capitalize(size)}`],\n switchBase: ['switchBase', `color${capitalize(color)}`, checked && 'checked', disabled && 'disabled'],\n thumb: ['thumb'],\n track: ['track'],\n input: ['input']\n };\n const composedClasses = composeClasses(slots, getSwitchUtilityClass, classes);\n return _extends({}, classes, composedClasses);\n};\nconst SwitchRoot = styled('span', {\n name: 'MuiSwitch',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, ownerState.edge && styles[`edge${capitalize(ownerState.edge)}`], styles[`size${capitalize(ownerState.size)}`]];\n }\n})(({\n ownerState\n}) => _extends({\n display: 'inline-flex',\n width: 34 + 12 * 2,\n height: 14 + 12 * 2,\n overflow: 'hidden',\n padding: 12,\n boxSizing: 'border-box',\n position: 'relative',\n flexShrink: 0,\n zIndex: 0,\n // Reset the stacking context.\n verticalAlign: 'middle',\n // For correct alignment with the text.\n '@media print': {\n colorAdjust: 'exact'\n }\n}, ownerState.edge === 'start' && {\n marginLeft: -8\n}, ownerState.edge === 'end' && {\n marginRight: -8\n}, ownerState.size === 'small' && {\n width: 40,\n height: 24,\n padding: 7,\n [`& .${switchClasses.thumb}`]: {\n width: 16,\n height: 16\n },\n [`& .${switchClasses.switchBase}`]: {\n padding: 4,\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(16px)'\n }\n }\n}));\nconst SwitchSwitchBase = styled(SwitchBase, {\n name: 'MuiSwitch',\n slot: 'SwitchBase',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.switchBase, {\n [`& .${switchClasses.input}`]: styles.input\n }, ownerState.color !== 'default' && styles[`color${capitalize(ownerState.color)}`]];\n }\n})(({\n theme\n}) => ({\n position: 'absolute',\n top: 0,\n left: 0,\n zIndex: 1,\n // Render above the focus ripple.\n color: theme.vars ? theme.vars.palette.Switch.defaultColor : `${theme.palette.mode === 'light' ? theme.palette.common.white : theme.palette.grey[300]}`,\n transition: theme.transitions.create(['left', 'transform'], {\n duration: theme.transitions.duration.shortest\n }),\n [`&.${switchClasses.checked}`]: {\n transform: 'translateX(20px)'\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch.defaultDisabledColor : `${theme.palette.mode === 'light' ? theme.palette.grey[100] : theme.palette.grey[600]}`\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n opacity: 0.5\n },\n [`&.${switchClasses.disabled} + .${switchClasses.track}`]: {\n opacity: theme.vars ? theme.vars.opacity.switchTrackDisabled : `${theme.palette.mode === 'light' ? 0.12 : 0.2}`\n },\n [`& .${switchClasses.input}`]: {\n left: '-100%',\n width: '300%'\n }\n}), ({\n theme,\n ownerState\n}) => _extends({\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.activeChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette.action.active, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n}, ownerState.color !== 'default' && {\n [`&.${switchClasses.checked}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main,\n '&:hover': {\n backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity),\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n },\n [`&.${switchClasses.disabled}`]: {\n color: theme.vars ? theme.vars.palette.Switch[`${ownerState.color}DisabledColor`] : `${theme.palette.mode === 'light' ? lighten(theme.palette[ownerState.color].main, 0.62) : darken(theme.palette[ownerState.color].main, 0.55)}`\n }\n },\n [`&.${switchClasses.checked} + .${switchClasses.track}`]: {\n backgroundColor: (theme.vars || theme).palette[ownerState.color].main\n }\n}));\nconst SwitchTrack = styled('span', {\n name: 'MuiSwitch',\n slot: 'Track',\n overridesResolver: (props, styles) => styles.track\n})(({\n theme\n}) => ({\n height: '100%',\n width: '100%',\n borderRadius: 14 / 2,\n zIndex: -1,\n transition: theme.transitions.create(['opacity', 'background-color'], {\n duration: theme.transitions.duration.shortest\n }),\n backgroundColor: theme.vars ? theme.vars.palette.common.onBackground : `${theme.palette.mode === 'light' ? theme.palette.common.black : theme.palette.common.white}`,\n opacity: theme.vars ? theme.vars.opacity.switchTrack : `${theme.palette.mode === 'light' ? 0.38 : 0.3}`\n}));\nconst SwitchThumb = styled('span', {\n name: 'MuiSwitch',\n slot: 'Thumb',\n overridesResolver: (props, styles) => styles.thumb\n})(({\n theme\n}) => ({\n boxShadow: (theme.vars || theme).shadows[1],\n backgroundColor: 'currentColor',\n width: 20,\n height: 20,\n borderRadius: '50%'\n}));\nconst Switch = /*#__PURE__*/React.forwardRef(function Switch(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiSwitch'\n });\n const {\n className,\n color = 'primary',\n edge = false,\n size = 'medium',\n sx\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n color,\n edge,\n size\n });\n const classes = useUtilityClasses(ownerState);\n const icon = /*#__PURE__*/_jsx(SwitchThumb, {\n className: classes.thumb,\n ownerState: ownerState\n });\n return /*#__PURE__*/_jsxs(SwitchRoot, {\n className: clsx(classes.root, className),\n sx: sx,\n ownerState: ownerState,\n children: [/*#__PURE__*/_jsx(SwitchSwitchBase, _extends({\n type: \"checkbox\",\n icon: icon,\n checkedIcon: icon,\n ref: ref,\n ownerState: ownerState\n }, other, {\n classes: _extends({}, classes, {\n root: classes.switchBase\n })\n })), /*#__PURE__*/_jsx(SwitchTrack, {\n className: classes.track,\n ownerState: ownerState\n })]\n });\n});\nprocess.env.NODE_ENV !== \"production\" ? Switch.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning']), PropTypes.string]),\n /**\n * The default checked state. Use when the component is not controlled.\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the ripple effect is disabled.\n * @default false\n */\n disableRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.ChangeEvent} event The event source of the callback.\n * You can pull out the new value by accessing `event.target.value` (string).\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the `input` element is required.\n * @default false\n */\n required: PropTypes.bool,\n /**\n * The size of the component.\n * `small` is equivalent to the dense switch styling.\n * @default 'medium'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n */\n value: PropTypes.any\n} : void 0;\nexport default Switch;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getSwitchBaseUtilityClass(slot) {\n return generateUtilityClass('PrivateSwitchBase', slot);\n}\nconst switchBaseClasses = generateUtilityClasses('PrivateSwitchBase', ['root', 'checked', 'disabled', 'input', 'edgeStart', 'edgeEnd']);\nexport default switchBaseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"autoFocus\", \"checked\", \"checkedIcon\", \"className\", \"defaultChecked\", \"disabled\", \"disableFocusRipple\", \"edge\", \"icon\", \"id\", \"inputProps\", \"inputRef\", \"name\", \"onBlur\", \"onChange\", \"onFocus\", \"readOnly\", \"required\", \"tabIndex\", \"type\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useControlled from '../utils/useControlled';\nimport useFormControl from '../FormControl/useFormControl';\nimport ButtonBase from '../ButtonBase';\nimport { getSwitchBaseUtilityClass } from './switchBaseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n checked,\n disabled,\n edge\n } = ownerState;\n const slots = {\n root: ['root', checked && 'checked', disabled && 'disabled', edge && `edge${capitalize(edge)}`],\n input: ['input']\n };\n return composeClasses(slots, getSwitchBaseUtilityClass, classes);\n};\nconst SwitchBaseRoot = styled(ButtonBase)(({\n ownerState\n}) => _extends({\n padding: 9,\n borderRadius: '50%'\n}, ownerState.edge === 'start' && {\n marginLeft: ownerState.size === 'small' ? -3 : -12\n}, ownerState.edge === 'end' && {\n marginRight: ownerState.size === 'small' ? -3 : -12\n}));\nconst SwitchBaseInput = styled('input')({\n cursor: 'inherit',\n position: 'absolute',\n opacity: 0,\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n zIndex: 1\n});\n\n/**\n * @ignore - internal component.\n */\nconst SwitchBase = /*#__PURE__*/React.forwardRef(function SwitchBase(props, ref) {\n const {\n autoFocus,\n checked: checkedProp,\n checkedIcon,\n className,\n defaultChecked,\n disabled: disabledProp,\n disableFocusRipple = false,\n edge = false,\n icon,\n id,\n inputProps,\n inputRef,\n name,\n onBlur,\n onChange,\n onFocus,\n readOnly,\n required = false,\n tabIndex,\n type,\n value\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [checked, setCheckedState] = useControlled({\n controlled: checkedProp,\n default: Boolean(defaultChecked),\n name: 'SwitchBase',\n state: 'checked'\n });\n const muiFormControl = useFormControl();\n const handleFocus = event => {\n if (onFocus) {\n onFocus(event);\n }\n if (muiFormControl && muiFormControl.onFocus) {\n muiFormControl.onFocus(event);\n }\n };\n const handleBlur = event => {\n if (onBlur) {\n onBlur(event);\n }\n if (muiFormControl && muiFormControl.onBlur) {\n muiFormControl.onBlur(event);\n }\n };\n const handleInputChange = event => {\n // Workaround for https://github.com/facebook/react/issues/9023\n if (event.nativeEvent.defaultPrevented) {\n return;\n }\n const newChecked = event.target.checked;\n setCheckedState(newChecked);\n if (onChange) {\n // TODO v6: remove the second argument.\n onChange(event, newChecked);\n }\n };\n let disabled = disabledProp;\n if (muiFormControl) {\n if (typeof disabled === 'undefined') {\n disabled = muiFormControl.disabled;\n }\n }\n const hasLabelFor = type === 'checkbox' || type === 'radio';\n const ownerState = _extends({}, props, {\n checked,\n disabled,\n disableFocusRipple,\n edge\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(SwitchBaseRoot, _extends({\n component: \"span\",\n className: clsx(classes.root, className),\n centerRipple: true,\n focusRipple: !disableFocusRipple,\n disabled: disabled,\n tabIndex: null,\n role: undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/_jsx(SwitchBaseInput, _extends({\n autoFocus: autoFocus,\n checked: checkedProp,\n defaultChecked: defaultChecked,\n className: classes.input,\n disabled: disabled,\n id: hasLabelFor ? id : undefined,\n name: name,\n onChange: handleInputChange,\n readOnly: readOnly,\n ref: inputRef,\n required: required,\n ownerState: ownerState,\n tabIndex: tabIndex,\n type: type\n }, type === 'checkbox' && value === undefined ? {} : {\n value\n }, inputProps)), checked ? checkedIcon : icon]\n }));\n});\n\n// NB: If changed, please update Checkbox, Switch and Radio\n// so that the API documentation is updated.\nprocess.env.NODE_ENV !== \"production\" ? SwitchBase.propTypes = {\n /**\n * If `true`, the `input` element is focused during the first mount.\n */\n autoFocus: PropTypes.bool,\n /**\n * If `true`, the component is checked.\n */\n checked: PropTypes.bool,\n /**\n * The icon to display when the component is checked.\n */\n checkedIcon: PropTypes.node.isRequired,\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * @ignore\n */\n defaultChecked: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the keyboard focus ripple is disabled.\n * @default false\n */\n disableFocusRipple: PropTypes.bool,\n /**\n * If given, uses a negative margin to counteract the padding on one\n * side (this is often helpful for aligning the left or right\n * side of the icon with content above or below, without ruining the border\n * size and shape).\n * @default false\n */\n edge: PropTypes.oneOf(['end', 'start', false]),\n /**\n * The icon to display when the component is unchecked.\n */\n icon: PropTypes.node.isRequired,\n /**\n * The id of the `input` element.\n */\n id: PropTypes.string,\n /**\n * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.\n */\n inputProps: PropTypes.object,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /*\n * @ignore\n */\n name: PropTypes.string,\n /**\n * @ignore\n */\n onBlur: PropTypes.func,\n /**\n * Callback fired when the state is changed.\n *\n * @param {object} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * It prevents the user from changing the value of the field\n * (not from interacting with the field).\n */\n readOnly: PropTypes.bool,\n /**\n * If `true`, the `input` element is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.object,\n /**\n * @ignore\n */\n tabIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The input component prop `type`.\n */\n type: PropTypes.string.isRequired,\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default SwitchBase;","import * as React from 'react';\nimport { getThemeProps, useThemeWithoutDefault as useTheme } from '@mui/system';\nimport useEnhancedEffect from '../utils/useEnhancedEffect';\n\n/**\n * @deprecated Not used internally. Use `MediaQueryListEvent` from lib.dom.d.ts instead.\n */\n\n/**\n * @deprecated Not used internally. Use `MediaQueryList` from lib.dom.d.ts instead.\n */\n\n/**\n * @deprecated Not used internally. Use `(event: MediaQueryListEvent) => void` instead.\n */\n\nfunction useMediaQueryOld(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr) {\n const [match, setMatch] = React.useState(() => {\n if (noSsr && matchMedia) {\n return matchMedia(query).matches;\n }\n if (ssrMatchMedia) {\n return ssrMatchMedia(query).matches;\n }\n\n // Once the component is mounted, we rely on the\n // event listeners to return the correct matches value.\n return defaultMatches;\n });\n useEnhancedEffect(() => {\n let active = true;\n if (!matchMedia) {\n return undefined;\n }\n const queryList = matchMedia(query);\n const updateMatch = () => {\n // Workaround Safari wrong implementation of matchMedia\n // TODO can we remove it?\n // https://github.com/mui/material-ui/pull/17315#issuecomment-528286677\n if (active) {\n setMatch(queryList.matches);\n }\n };\n updateMatch();\n // TODO: Use `addEventListener` once support for Safari < 14 is dropped\n queryList.addListener(updateMatch);\n return () => {\n active = false;\n queryList.removeListener(updateMatch);\n };\n }, [query, matchMedia]);\n return match;\n}\n\n// eslint-disable-next-line no-useless-concat -- Workaround for https://github.com/webpack/webpack/issues/14814\nconst maybeReactUseSyncExternalStore = React['useSyncExternalStore' + ''];\nfunction useMediaQueryNew(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr) {\n const getDefaultSnapshot = React.useCallback(() => defaultMatches, [defaultMatches]);\n const getServerSnapshot = React.useMemo(() => {\n if (noSsr && matchMedia) {\n return () => matchMedia(query).matches;\n }\n if (ssrMatchMedia !== null) {\n const {\n matches\n } = ssrMatchMedia(query);\n return () => matches;\n }\n return getDefaultSnapshot;\n }, [getDefaultSnapshot, query, ssrMatchMedia, noSsr, matchMedia]);\n const [getSnapshot, subscribe] = React.useMemo(() => {\n if (matchMedia === null) {\n return [getDefaultSnapshot, () => () => {}];\n }\n const mediaQueryList = matchMedia(query);\n return [() => mediaQueryList.matches, notify => {\n // TODO: Use `addEventListener` once support for Safari < 14 is dropped\n mediaQueryList.addListener(notify);\n return () => {\n mediaQueryList.removeListener(notify);\n };\n }];\n }, [getDefaultSnapshot, matchMedia, query]);\n const match = maybeReactUseSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n return match;\n}\nexport default function useMediaQuery(queryInput, options = {}) {\n const theme = useTheme();\n // Wait for jsdom to support the match media feature.\n // All the browsers MUI support have this built-in.\n // This defensive check is here for simplicity.\n // Most of the time, the match media logic isn't central to people tests.\n const supportMatchMedia = typeof window !== 'undefined' && typeof window.matchMedia !== 'undefined';\n const {\n defaultMatches = false,\n matchMedia = supportMatchMedia ? window.matchMedia : null,\n ssrMatchMedia = null,\n noSsr = false\n } = getThemeProps({\n name: 'MuiUseMediaQuery',\n props: options,\n theme\n });\n if (process.env.NODE_ENV !== 'production') {\n if (typeof queryInput === 'function' && theme === null) {\n console.error(['MUI: The `query` argument provided is invalid.', 'You are providing a function without a theme in the context.', 'One of the parent elements needs to use a ThemeProvider.'].join('\\n'));\n }\n }\n let query = typeof queryInput === 'function' ? queryInput(theme) : queryInput;\n query = query.replace(/^@media( ?)/m, '');\n\n // TODO: Drop `useMediaQueryOld` and use `use-sync-external-store` shim in `useMediaQueryNew` once the package is stable\n const useMediaQueryImplementation = maybeReactUseSyncExternalStore !== undefined ? useMediaQueryNew : useMediaQueryOld;\n const match = useMediaQueryImplementation(query, defaultMatches, matchMedia, ssrMatchMedia, noSsr);\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useDebugValue({\n query,\n match\n });\n }\n return match;\n}"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","createSvgIcon","_jsx","Context","React","TabContext","props","children","value","idPrefix","_React$useState","_React$useState2","_slicedToArray","id","setId","concat","Math","round","random","useUniquePrefix","context","Provider","useTabContext","getPanelId","getTabId","_excluded","TabList","ref","childrenProp","other","_objectWithoutPropertiesLoose","TypeError","map","child","Tabs","_extends","getTabPanelUtilityClass","slot","generateUtilityClass","generateUtilityClasses","TabPanelRoot","styled","name","overridesResolver","styles","root","_ref","padding","theme","spacing","inProps","useThemeProps","className","ownerState","classes","composeClasses","useUtilityClasses","tabId","clsx","hidden","role","getSwitchUtilityClass","SwitchRoot","edge","capitalize","size","_ref2","display","width","height","overflow","boxSizing","position","flexShrink","zIndex","verticalAlign","colorAdjust","marginLeft","marginRight","_defineProperty","switchClasses","thumb","switchBase","checked","transform","SwitchSwitchBase","SwitchBase","input","color","_ref4","_ref5","top","left","vars","palette","Switch","defaultColor","mode","common","white","grey","transition","transitions","create","duration","shortest","disabled","defaultDisabledColor","track","opacity","switchTrackDisabled","_ref6","_ref7","backgroundColor","action","activeChannel","hoverOpacity","alpha","active","main","mainChannel","lighten","darken","SwitchTrack","_ref8","borderRadius","onBackground","black","switchTrack","SwitchThumb","_ref9","boxShadow","shadows","_props$color","_props$edge","_props$size","sx","slots","composedClasses","icon","_jsxs","type","checkedIcon","getSwitchBaseUtilityClass","SwitchBaseRoot","ButtonBase","SwitchBaseInput","cursor","margin","autoFocus","checkedProp","defaultChecked","disabledProp","_props$disableFocusRi","disableFocusRipple","inputProps","inputRef","onBlur","onChange","onFocus","readOnly","_props$required","required","tabIndex","_useControlled","useControlled","controlled","Boolean","state","_useControlled2","setCheckedState","muiFormControl","useFormControl","hasLabelFor","component","centerRipple","focusRipple","undefined","event","nativeEvent","defaultPrevented","newChecked","target","useMediaQueryOld","query","defaultMatches","matchMedia","ssrMatchMedia","noSsr","matches","match","setMatch","useEnhancedEffect","queryList","updateMatch","addListener","removeListener","maybeReactUseSyncExternalStore","useMediaQueryNew","getDefaultSnapshot","getServerSnapshot","_React$useMemo","mediaQueryList","notify","_React$useMemo2","getSnapshot","subscribe","useMediaQuery","queryInput","options","arguments","length","useTheme","supportMatchMedia","window","_getThemeProps","getThemeProps","_getThemeProps$defaul","_getThemeProps$matchM","_getThemeProps$ssrMat","_getThemeProps$noSsr","replace"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/6389.f2af2345.chunk.js b/portal-ui/build/static/js/9390.564ed238.chunk.js similarity index 86% rename from portal-ui/build/static/js/6389.f2af2345.chunk.js rename to portal-ui/build/static/js/9390.564ed238.chunk.js index 0cd6aa28e..0ba3dd864 100644 --- a/portal-ui/build/static/js/6389.f2af2345.chunk.js +++ b/portal-ui/build/static/js/9390.564ed238.chunk.js @@ -1,2 +1,2 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[6389],{98521:function(e,n,t){"use strict";t.r(n),t.d(n,{SelectStyled:function(){return $},default:function(){return ne}});var r=t(29439),i=t(1413),o=t(72791),s=t(95087),l=t(29945),a=t(11135),c=t(25787),d=t(78687),u=t(886),h=t(61889),f=t(68096),p=t(58406),g=t(77865),x=t(81207),m=t(81551),v=t(26824),y=t(23814),j=t(59114),Z=t(35527),w=t(79836),b=t(53382),S=t(87462),C=t(63366),E=t(28182),T=t(94419),A=t(31402),k=t(66934),L=t(75878),F=t(21217);function R(e){return(0,F.Z)("MuiTableContainer",e)}(0,L.Z)("MuiTableContainer",["root"]);var N=t(80184),z=["className","component"],M=(0,k.ZP)("div",{name:"MuiTableContainer",slot:"Root",overridesResolver:function(e,n){return n.root}})({width:"100%",overflowX:"auto"}),O=o.forwardRef((function(e,n){var t=(0,A.Z)({props:e,name:"MuiTableContainer"}),r=t.className,i=t.component,o=void 0===i?"div":i,s=(0,C.Z)(t,z),l=(0,S.Z)({},t,{component:o}),a=function(e){var n=e.classes;return(0,T.Z)({root:["root"]},R,n)}(l);return(0,N.jsx)(M,(0,S.Z)({ref:n,as:o,className:(0,E.Z)(a.root,r),ownerState:l},s))})),I=t(99779),_=t(35855),P=t(53994),D=t(56125),H=t(64554),U=t(20890),W=t(26181),B=t.n(W),X="HH:mm:ss ZZZZ MM/dd/yyyy",q=function(e){var n=e.log,t=(0,o.useState)(!1),i=(0,r.Z)(t,2),s=i[0],a=i[1],c=function(e){return B()(n,e,"")},d="",u=c("ConsoleMsg"),h=c("error.message");""!==u?d=u:""!==h&&(d=h);var f=(d||"").replace(/\u2501|\u250f|\u2513|\u2503|\u2517|\u251b/g,"");f=f.replace(/([^\x20-\x7F])/g,"");var p=(0,N.jsx)(o.Fragment,{});""!==u?p=function(e){var n=e.ConsoleMsg;return n=(n=n.replace(/\x1B/g," ")).replace(/((\[[0-9;]+m))/g,""),(0,N.jsx)("div",{style:{display:"table",tableLayout:"fixed",width:"100%",paddingLeft:10,paddingRight:10},children:(0,N.jsx)("div",{style:{display:"table-cell",whiteSpace:"nowrap",textOverflow:"ellipsis",overflowX:"auto"},children:(0,N.jsx)("pre",{children:n})})})}(n):""!==h&&(p=function(e){var n={color:"#C83B51",fontWeight:400,fontFamily:"monospace",fontSize:"12px"},t={fontFamily:"monospace",fontSize:"12px"},r=function(n){return B()(e,n,"")},i=I.ou.fromFormat(e.time.toString(),"HH:mm:ss z MM/dd/yyyy",{zone:"UTC"});return(0,N.jsxs)(o.Fragment,{children:[(0,N.jsxs)("div",{children:[(0,N.jsx)("b",{style:t,children:"API:\xa0"}),(0,N.jsx)("span",{style:n,children:r("api.name")})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("b",{style:t,children:"Time:\xa0"}),(0,N.jsx)("span",{style:n,children:i.toFormat(X)})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("b",{style:t,children:"DeploymentID:\xa0"}),(0,N.jsx)("span",{style:n,children:r("deploymentid")})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("b",{style:t,children:"RequestID:\xa0"}),(0,N.jsx)("span",{style:n,children:r("requestID")})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("b",{style:t,children:"RemoteHost:\xa0"}),(0,N.jsx)("span",{style:n,children:r("remotehost")})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("b",{style:t,children:"UserAgent:\xa0"}),(0,N.jsx)("span",{style:n,children:r("userAgent")})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("b",{style:t,children:"Error:\xa0"}),(0,N.jsx)("span",{style:n,children:r("error.message")})]}),(0,N.jsx)("br",{}),(0,N.jsx)("div",{children:(0,N.jsx)("b",{style:t,children:"Backtrace:\xa0"})}),(e.error.source||[]).map((function(e,r){return(0,N.jsxs)("div",{children:[(0,N.jsxs)("b",{style:t,children:[r,":\xa0"]}),(0,N.jsx)("span",{style:n,children:e})]})}))]})}(n)),f=(f||"").replace(/((\[[0-9;]+m))/g,"");var g=I.ou.fromFormat(n.time.toString(),"HH:mm:ss z MM/dd/yyyy",{zone:"UTC"}),x=g.toJSDate(),m=(0,N.jsx)(o.Fragment,{children:g.toFormat(X)});return 1===x.getFullYear()&&(m=(0,N.jsx)(o.Fragment,{children:"n/a"})),(0,N.jsxs)(o.Fragment,{children:[(0,N.jsxs)(_.Z,{sx:{"& > *":{borderBottom:"unset"},cursor:"pointer",borderLeft:"0",borderRight:"0"},style:{backgroundColor:"#FDFDFD"},children:[(0,N.jsx)(P.Z,{onClick:function(){return a(!s)},style:{width:280,color:"#989898",fontSize:12},children:(0,N.jsxs)(H.Z,{sx:{display:"flex",gap:1,alignItems:"center","& .min-icon":{width:12,marginRight:1},fontWeight:"bold",lineHeight:1},children:[(0,N.jsx)(l.AeX,{}),(0,N.jsx)("div",{children:m})]})}),(0,N.jsx)(P.Z,{onClick:function(){return a(!s)},style:{width:200,color:"#989898",fontSize:12},children:(0,N.jsx)(H.Z,{sx:{"& .min-icon":{width:12,marginRight:1},fontWeight:"bold",lineHeight:1},children:n.errKind})}),(0,N.jsx)(P.Z,{onClick:function(){return a(!s)},children:(0,N.jsx)("div",{style:{display:"table",tableLayout:"fixed",width:"100%",paddingLeft:10,paddingRight:10},children:(0,N.jsx)("div",{style:{display:"table-cell",whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden"},children:f})})}),(0,N.jsx)(P.Z,{onClick:function(){return a(!s)},style:{width:40},children:(0,N.jsx)(H.Z,{sx:{"& .min-icon":{display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"2px"},"&:hover .min-icon":{fill:"#eaeaea"}},children:s?(0,N.jsx)(l.Ekf,{}):(0,N.jsx)(l._f_,{})})})]}),s?(0,N.jsxs)(_.Z,{children:[(0,N.jsx)(P.Z,{style:{paddingBottom:0,paddingTop:0,width:200,textTransform:"uppercase",verticalAlign:"top",textAlign:"right",color:"#8399AB",fontWeight:"bold"},children:(0,N.jsx)(D.Z,{in:s,timeout:"auto",unmountOnExit:!0,children:(0,N.jsx)("div",{style:{marginTop:10},children:"Log Details"})})}),(0,N.jsx)(P.Z,{colSpan:2,style:{paddingBottom:0,paddingTop:0},children:(0,N.jsx)(D.Z,{in:s,timeout:"auto",unmountOnExit:!0,children:(0,N.jsx)(H.Z,{sx:{margin:1},children:(0,N.jsx)(U.Z,{style:{background:"#efefef",border:"1px solid #dedede",padding:4,fontSize:14,color:"#666666"},children:p})})})}),(0,N.jsx)(P.Z,{style:{paddingBottom:0,paddingTop:0,width:40}})]}):null]},g.toString())},G=t(69129),J=t(72455),K=t(47974),V=t(99670),Q=t(87995),Y=(0,J.Z)((function(e){return(0,a.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)({logList:{background:"#fff",minHeight:400,height:"calc(100vh - 200px)",overflow:"auto",fontSize:13,borderRadius:4},logerror_tab:{color:"#A52A2A",paddingLeft:25},nodeField:{width:"100%"}},y.OR),{},{actionsTray:(0,i.Z)((0,i.Z)({},y.OR.actionsTray),{},{marginBottom:0})},y.qg),y.IX),y.Bz))})),$=(0,c.Z)((function(e){return(0,a.Z)({root:{lineHeight:"50px","label + &":{marginTop:e.spacing(3)},"& .MuiSelect-select:focus":{backgroundColor:"transparent"}}})}))(u.ZP),ee=null,ne=function(){var e=(0,m.TL)(),n=Y(),t=(0,d.v9)((function(e){return e.logs.logMessages})),i=(0,d.v9)((function(e){return e.logs.logsStarted})),a=(0,o.useState)(""),c=(0,r.Z)(a,2),u=c[0],y=c[1],S=(0,o.useState)([""]),C=(0,r.Z)(S,2),E=C[0],T=C[1],A=(0,o.useState)("all"),k=(0,r.Z)(A,2),L=k[0],F=k[1],R=(0,o.useState)("Select user agent"),z=(0,r.Z)(R,2),M=z[0],I=z[1],_=(0,o.useState)(["All User Agents"]),P=(0,r.Z)(_,2),D=P[0],H=P[1],U=(0,o.useState)("all"),W=(0,r.Z)(U,2),B=W[0],X=W[1],J=(0,o.useState)(!1),ne=(0,r.Z)(J,2),te=ne[0],re=ne[1],ie=u.toLowerCase(),oe=t.filter((function(e){return(e.userAgent===M||"All User Agents"===M||"Select user agent"===M)&&(""===u||(e.ConsoleMsg.toLowerCase().indexOf(ie)>=0||(!!(e.error&&e.error.source&&e.error.source.filter((function(e){return e.toLowerCase().indexOf(ie)>=0})).length>0)||(!!(e.error&&e.error.message.toLowerCase().indexOf(ie)>=0)||!!(e.api&&e.api.name.toLowerCase().indexOf(ie)>=0)))))}));return(0,o.useEffect)((function(){re(!0),x.Z.invoke("GET","/api/v1/nodes").then((function(e){T(e),re(!1)})).catch((function(e){re(!1)}))}),[]),(0,o.useEffect)((function(){e((0,Q.Sc)("error_logs"))}),[]),(0,N.jsxs)(o.Fragment,{children:[(0,N.jsx)(K.Z,{label:"Logs",actions:(0,N.jsx)(V.Z,{})}),(0,N.jsx)(l.Xgh,{children:(0,N.jsxs)(h.ZP,{container:!0,spacing:1,children:[(0,N.jsx)(h.ZP,{item:!0,xs:4,children:te?(0,N.jsx)("h3",{children:" Loading nodes"}):(0,N.jsx)(f.Z,{variant:"outlined",className:n.nodeField,children:(0,N.jsxs)(p.Z,{id:"node",name:"node","data-test-id":"node-selector",value:L,onChange:function(e){F(e.target.value)},className:n.searchField,disabled:te||i,input:(0,N.jsx)($,{}),placeholder:"Select Node",children:[(0,N.jsx)(g.Z,{value:"all",children:"All Nodes"},"select-node-all"),E.map((function(e){return(0,N.jsx)(g.Z,{value:e,children:e},"select-node-name-".concat(e))}))]})})}),(0,N.jsx)(h.ZP,{item:!0,xs:3,children:(0,N.jsx)(f.Z,{variant:"outlined",className:n.nodeField,children:(0,N.jsxs)(p.Z,{id:"logType",name:"logType","data-test-id":"log-type",value:B,onChange:function(e){X(e.target.value)},className:n.searchField,disabled:te||i,input:(0,N.jsx)($,{}),placeholder:"Select Log Type",children:[(0,N.jsx)(g.Z,{value:"all",children:"All Log Types"},"all-log-types"),(0,N.jsx)(g.Z,{value:"minio",children:"MinIO"},"minio-log-type"),(0,N.jsx)(g.Z,{value:"application",children:"Application"},"app-log-type")]})})}),(0,N.jsx)(h.ZP,{item:!0,xs:3,children:D.length>1&&(0,N.jsx)(f.Z,{variant:"outlined",className:n.nodeField,children:(0,N.jsxs)(p.Z,{id:"userAgent",name:"userAgent","data-test-id":"user-agent",value:M,onChange:function(e){I(e.target.value)},className:n.searchField,disabled:D.length<1||i,input:(0,N.jsx)($,{}),children:[(0,N.jsx)(g.Z,{value:M,disabled:!0,children:"Select User Agent"},"select-user-agent-default"),D.map((function(e){return(0,N.jsx)(g.Z,{value:e,children:e},"select-user-agent-".concat(e))}))]})})}),(0,N.jsxs)(h.ZP,{item:!0,xs:2,sx:{display:"flex",justifyContent:"flex-end"},children:[!i&&(0,N.jsx)(l.zxk,{id:"start-logs",type:"submit",variant:"callAction",disabled:!1,onClick:function(){e((0,G.i1)());var n=new URL(window.location.toString()),t=n.port,r=(0,v.x2)(n.protocol),i=new URL(document.baseURI).pathname;ee=new s.w3cwebsocket("".concat(r,"://").concat(n.hostname,":").concat(t).concat(i,"ws/console/?logType=").concat(B,"&node=").concat("Select node"===L?"":L));var o=null;if(null!==ee)return ee.onopen=function(){console.log("WebSocket Client Connected"),e((0,G.v0)(!0)),ee.send("ok"),o=setInterval((function(){ee.send("ok")}),1e4)},ee.onmessage=function(n){var t=JSON.parse(n.data.toString()),r=!0;""===t.level&&""===t.errKind&&"00:00:00 UTC 01/01/0001"===t.time&&""===t.ConsoleMsg&&""===t.node&&(r=!1),t.key=Math.random(),D.indexOf(t.userAgent)<0&&void 0!==t.userAgent&&(D.push(t.userAgent),H(D)),r&&e((0,G.Qo)(t))},ee.onclose=function(){clearInterval(o),console.log("connection closed by server"),e((0,G.v0)(!1))},function(){ee.close(1e3),clearInterval(o),console.log("closing websockets"),e((0,G.v0)(!1))}},label:"Start Logs"}),i&&(0,N.jsx)(l.zxk,{id:"stop-logs",type:"button",variant:"callAction",onClick:function(){null!==ee&&void 0!==ee&&(ee.close(1e3),e((0,G.v0)(!1)))},label:"Stop Logs"})]}),(0,N.jsx)(h.ZP,{item:!0,xs:12,className:n.actionsTray,children:(0,N.jsx)(j.Z,{placeholder:"Filter",onChange:function(e){y(e)},value:u})}),(0,N.jsx)(h.ZP,{item:!0,xs:12,children:(0,N.jsx)("div",{id:"logs-container",className:n.logList,"data-test-id":"logs-list-container",children:(0,N.jsxs)(O,{component:Z.Z,children:[(0,N.jsx)(w.Z,{"aria-label":"collapsible table",children:(0,N.jsx)(b.Z,{children:oe.map((function(e){return(0,N.jsx)(q,{log:e})}))})}),0===oe.length&&(0,N.jsx)("div",{style:{padding:20,textAlign:"center"},children:"No logs to display"})]})})})]})})]})}},26824:function(e,n,t){"use strict";t.d(n,{HE:function(){return o},V9:function(){return r},ci:function(){return i},x2:function(){return s}});var r=1006,i=1008,o=1011,s=function(e){var n="ws";return"https:"===e&&(n="wss"),n}},56125:function(e,n,t){"use strict";t.d(n,{Z:function(){return C}});var r=t(4942),i=t(63366),o=t(87462),s=t(72791),l=t(28182),a=t(18875),c=t(94419),d=t(66934),u=t(31402),h=t(81314),f=t(4999),p=t(13967),g=t(42071),x=t(75878),m=t(21217);function v(e){return(0,m.Z)("MuiCollapse",e)}(0,x.Z)("MuiCollapse",["root","horizontal","vertical","entered","hidden","wrapper","wrapperInner"]);var y=t(80184),j=["addEndListener","children","className","collapsedSize","component","easing","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","orientation","style","timeout","TransitionComponent"],Z=(0,d.ZP)("div",{name:"MuiCollapse",slot:"Root",overridesResolver:function(e,n){var t=e.ownerState;return[n.root,n[t.orientation],"entered"===t.state&&n.entered,"exited"===t.state&&!t.in&&"0px"===t.collapsedSize&&n.hidden]}})((function(e){var n=e.theme,t=e.ownerState;return(0,o.Z)({height:0,overflow:"hidden",transition:n.transitions.create("height")},"horizontal"===t.orientation&&{height:"auto",width:0,transition:n.transitions.create("width")},"entered"===t.state&&(0,o.Z)({height:"auto",overflow:"visible"},"horizontal"===t.orientation&&{width:"auto"}),"exited"===t.state&&!t.in&&"0px"===t.collapsedSize&&{visibility:"hidden"})})),w=(0,d.ZP)("div",{name:"MuiCollapse",slot:"Wrapper",overridesResolver:function(e,n){return n.wrapper}})((function(e){var n=e.ownerState;return(0,o.Z)({display:"flex",width:"100%"},"horizontal"===n.orientation&&{width:"auto",height:"100%"})})),b=(0,d.ZP)("div",{name:"MuiCollapse",slot:"WrapperInner",overridesResolver:function(e,n){return n.wrapperInner}})((function(e){var n=e.ownerState;return(0,o.Z)({width:"100%"},"horizontal"===n.orientation&&{width:"auto",height:"100%"})})),S=s.forwardRef((function(e,n){var t=(0,u.Z)({props:e,name:"MuiCollapse"}),d=t.addEndListener,x=t.children,m=t.className,S=t.collapsedSize,C=void 0===S?"0px":S,E=t.component,T=t.easing,A=t.in,k=t.onEnter,L=t.onEntered,F=t.onEntering,R=t.onExit,N=t.onExited,z=t.onExiting,M=t.orientation,O=void 0===M?"vertical":M,I=t.style,_=t.timeout,P=void 0===_?h.x9.standard:_,D=t.TransitionComponent,H=void 0===D?a.ZP:D,U=(0,i.Z)(t,j),W=(0,o.Z)({},t,{orientation:O,collapsedSize:C}),B=function(e){var n=e.orientation,t=e.classes,r={root:["root","".concat(n)],entered:["entered"],hidden:["hidden"],wrapper:["wrapper","".concat(n)],wrapperInner:["wrapperInner","".concat(n)]};return(0,c.Z)(r,v,t)}(W),X=(0,p.Z)(),q=s.useRef(),G=s.useRef(null),J=s.useRef(),K="number"===typeof C?"".concat(C,"px"):C,V="horizontal"===O,Q=V?"width":"height";s.useEffect((function(){return function(){clearTimeout(q.current)}}),[]);var Y=s.useRef(null),$=(0,g.Z)(n,Y),ee=function(e){return function(n){if(e){var t=Y.current;void 0===n?e(t):e(t,n)}}},ne=function(){return G.current?G.current[V?"clientWidth":"clientHeight"]:0},te=ee((function(e,n){G.current&&V&&(G.current.style.position="absolute"),e.style[Q]=K,k&&k(e,n)})),re=ee((function(e,n){var t=ne();G.current&&V&&(G.current.style.position="");var r=(0,f.C)({style:I,timeout:P,easing:T},{mode:"enter"}),i=r.duration,o=r.easing;if("auto"===P){var s=X.transitions.getAutoHeightDuration(t);e.style.transitionDuration="".concat(s,"ms"),J.current=s}else e.style.transitionDuration="string"===typeof i?i:"".concat(i,"ms");e.style[Q]="".concat(t,"px"),e.style.transitionTimingFunction=o,F&&F(e,n)})),ie=ee((function(e,n){e.style[Q]="auto",L&&L(e,n)})),oe=ee((function(e){e.style[Q]="".concat(ne(),"px"),R&&R(e)})),se=ee(N),le=ee((function(e){var n=ne(),t=(0,f.C)({style:I,timeout:P,easing:T},{mode:"exit"}),r=t.duration,i=t.easing;if("auto"===P){var o=X.transitions.getAutoHeightDuration(n);e.style.transitionDuration="".concat(o,"ms"),J.current=o}else e.style.transitionDuration="string"===typeof r?r:"".concat(r,"ms");e.style[Q]=K,e.style.transitionTimingFunction=i,z&&z(e)}));return(0,y.jsx)(H,(0,o.Z)({in:A,onEnter:te,onEntered:ie,onEntering:re,onExit:oe,onExited:se,onExiting:le,addEndListener:function(e){"auto"===P&&(q.current=setTimeout(e,J.current||0)),d&&d(Y.current,e)},nodeRef:Y,timeout:"auto"===P?null:P},U,{children:function(e,n){return(0,y.jsx)(Z,(0,o.Z)({as:E,className:(0,l.Z)(B.root,m,{entered:B.entered,exited:!A&&"0px"===K&&B.hidden}[e]),style:(0,o.Z)((0,r.Z)({},V?"minWidth":"minHeight",K),I),ownerState:(0,o.Z)({},W,{state:e}),ref:$},n,{children:(0,y.jsx)(w,{ownerState:(0,o.Z)({},W,{state:e}),className:B.wrapper,ref:G,children:(0,y.jsx)(b,{ownerState:(0,o.Z)({},W,{state:e}),className:B.wrapperInner,children:x})})}))}}))}));S.muiSupportAuto=!0;var C=S},19103:function(e,n,t){"use strict";t.d(n,{Z:function(){return i}});var r=t(72791);var i=function(e,n){return r.isValidElement(e)&&-1!==n.indexOf(e.type.muiName)}},78949:function(e,n,t){"use strict";function r(){for(var e=arguments.length,n=new Array(e),t=0;t *":{borderBottom:"unset"},cursor:"pointer",borderLeft:"0",borderRight:"0"},style:{backgroundColor:"#FDFDFD"},children:[(0,N.jsx)(P.Z,{onClick:function(){return a(!s)},style:{width:280,color:"#989898",fontSize:12},children:(0,N.jsxs)(H.Z,{sx:{display:"flex",gap:1,alignItems:"center","& .min-icon":{width:12,marginRight:1},fontWeight:"bold",lineHeight:1},children:[(0,N.jsx)(l.AeX,{}),(0,N.jsx)("div",{children:m})]})}),(0,N.jsx)(P.Z,{onClick:function(){return a(!s)},style:{width:200,color:"#989898",fontSize:12},children:(0,N.jsx)(H.Z,{sx:{"& .min-icon":{width:12,marginRight:1},fontWeight:"bold",lineHeight:1},children:n.errKind})}),(0,N.jsx)(P.Z,{onClick:function(){return a(!s)},children:(0,N.jsx)("div",{style:{display:"table",tableLayout:"fixed",width:"100%",paddingLeft:10,paddingRight:10},children:(0,N.jsx)("div",{style:{display:"table-cell",whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden"},children:f})})}),(0,N.jsx)(P.Z,{onClick:function(){return a(!s)},style:{width:40},children:(0,N.jsx)(H.Z,{sx:{"& .min-icon":{display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"2px"},"&:hover .min-icon":{fill:"#eaeaea"}},children:s?(0,N.jsx)(l.Ekf,{}):(0,N.jsx)(l._f_,{})})})]}),s?(0,N.jsxs)(_.Z,{children:[(0,N.jsx)(P.Z,{style:{paddingBottom:0,paddingTop:0,width:200,textTransform:"uppercase",verticalAlign:"top",textAlign:"right",color:"#8399AB",fontWeight:"bold"},children:(0,N.jsx)(D.Z,{in:s,timeout:"auto",unmountOnExit:!0,children:(0,N.jsx)("div",{style:{marginTop:10},children:"Log Details"})})}),(0,N.jsx)(P.Z,{colSpan:2,style:{paddingBottom:0,paddingTop:0},children:(0,N.jsx)(D.Z,{in:s,timeout:"auto",unmountOnExit:!0,children:(0,N.jsx)(H.Z,{sx:{margin:1},children:(0,N.jsx)(U.Z,{style:{background:"#efefef",border:"1px solid #dedede",padding:4,fontSize:14,color:"#666666"},children:p})})})}),(0,N.jsx)(P.Z,{style:{paddingBottom:0,paddingTop:0,width:40}})]}):null]},g.toString())},G=t(69129),J=t(72455),K=t(47974),V=t(99670),Q=t(87995),Y=(0,J.Z)((function(e){return(0,a.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)({logList:{background:"#fff",minHeight:400,height:"calc(100vh - 200px)",overflow:"auto",fontSize:13,borderRadius:4},logerror_tab:{color:"#A52A2A",paddingLeft:25},nodeField:{width:"100%"}},y.OR),{},{actionsTray:(0,i.Z)((0,i.Z)({},y.OR.actionsTray),{},{marginBottom:0})},y.qg),y.IX),y.Bz))})),$=(0,c.Z)((function(e){return(0,a.Z)({root:{lineHeight:"50px","label + &":{marginTop:e.spacing(3)},"& .MuiSelect-select:focus":{backgroundColor:"transparent"}}})}))(u.ZP),ee=null,ne=function(){var e=(0,m.TL)(),n=Y(),t=(0,d.v9)((function(e){return e.logs.logMessages})),i=(0,d.v9)((function(e){return e.logs.logsStarted})),a=(0,o.useState)(""),c=(0,r.Z)(a,2),u=c[0],y=c[1],S=(0,o.useState)([""]),C=(0,r.Z)(S,2),E=C[0],T=C[1],A=(0,o.useState)("all"),k=(0,r.Z)(A,2),F=k[0],L=k[1],R=(0,o.useState)("Select user agent"),z=(0,r.Z)(R,2),M=z[0],I=z[1],_=(0,o.useState)(["All User Agents"]),P=(0,r.Z)(_,2),D=P[0],H=P[1],U=(0,o.useState)("all"),W=(0,r.Z)(U,2),B=W[0],X=W[1],J=(0,o.useState)(!1),ne=(0,r.Z)(J,2),te=ne[0],re=ne[1],ie=u.toLowerCase(),oe=t.filter((function(e){return(e.userAgent===M||"All User Agents"===M||"Select user agent"===M)&&(""===u||(e.ConsoleMsg.toLowerCase().indexOf(ie)>=0||(!!(e.error&&e.error.source&&e.error.source.filter((function(e){return e.toLowerCase().indexOf(ie)>=0})).length>0)||(!!(e.error&&e.error.message.toLowerCase().indexOf(ie)>=0)||!!(e.api&&e.api.name.toLowerCase().indexOf(ie)>=0)))))}));return(0,o.useEffect)((function(){re(!0),x.Z.invoke("GET","/api/v1/nodes").then((function(e){T(e),re(!1)})).catch((function(e){re(!1)}))}),[]),(0,o.useEffect)((function(){e((0,Q.Sc)("error_logs"))}),[]),(0,N.jsxs)(o.Fragment,{children:[(0,N.jsx)(K.Z,{label:"Logs",actions:(0,N.jsx)(V.Z,{})}),(0,N.jsx)(l.Xgh,{children:(0,N.jsxs)(h.ZP,{container:!0,spacing:1,children:[(0,N.jsx)(h.ZP,{item:!0,xs:4,children:te?(0,N.jsx)("h3",{children:" Loading nodes"}):(0,N.jsx)(f.Z,{variant:"outlined",className:n.nodeField,children:(0,N.jsxs)(p.Z,{id:"node",name:"node","data-test-id":"node-selector",value:F,onChange:function(e){L(e.target.value)},className:n.searchField,disabled:te||i,input:(0,N.jsx)($,{}),placeholder:"Select Node",children:[(0,N.jsx)(g.Z,{value:"all",children:"All Nodes"},"select-node-all"),E.map((function(e){return(0,N.jsx)(g.Z,{value:e,children:e},"select-node-name-".concat(e))}))]})})}),(0,N.jsx)(h.ZP,{item:!0,xs:3,children:(0,N.jsx)(f.Z,{variant:"outlined",className:n.nodeField,children:(0,N.jsxs)(p.Z,{id:"logType",name:"logType","data-test-id":"log-type",value:B,onChange:function(e){X(e.target.value)},className:n.searchField,disabled:te||i,input:(0,N.jsx)($,{}),placeholder:"Select Log Type",children:[(0,N.jsx)(g.Z,{value:"all",children:"All Log Types"},"all-log-types"),(0,N.jsx)(g.Z,{value:"minio",children:"MinIO"},"minio-log-type"),(0,N.jsx)(g.Z,{value:"application",children:"Application"},"app-log-type")]})})}),(0,N.jsx)(h.ZP,{item:!0,xs:3,children:D.length>1&&(0,N.jsx)(f.Z,{variant:"outlined",className:n.nodeField,children:(0,N.jsxs)(p.Z,{id:"userAgent",name:"userAgent","data-test-id":"user-agent",value:M,onChange:function(e){I(e.target.value)},className:n.searchField,disabled:D.length<1||i,input:(0,N.jsx)($,{}),children:[(0,N.jsx)(g.Z,{value:M,disabled:!0,children:"Select User Agent"},"select-user-agent-default"),D.map((function(e){return(0,N.jsx)(g.Z,{value:e,children:e},"select-user-agent-".concat(e))}))]})})}),(0,N.jsxs)(h.ZP,{item:!0,xs:2,sx:{display:"flex",justifyContent:"flex-end"},children:[!i&&(0,N.jsx)(l.zxk,{id:"start-logs",type:"submit",variant:"callAction",disabled:!1,onClick:function(){e((0,G.i1)());var n=new URL(window.location.toString()),t=n.port,r=(0,v.x2)(n.protocol),i=new URL(document.baseURI).pathname;ee=new s.w3cwebsocket("".concat(r,"://").concat(n.hostname,":").concat(t).concat(i,"ws/console/?logType=").concat(B,"&node=").concat("Select node"===F?"":F));var o=null;if(null!==ee)return ee.onopen=function(){console.log("WebSocket Client Connected"),e((0,G.v0)(!0)),ee.send("ok"),o=setInterval((function(){ee.send("ok")}),1e4)},ee.onmessage=function(n){var t=JSON.parse(n.data.toString()),r=!0;""===t.level&&""===t.errKind&&"00:00:00 UTC 01/01/0001"===t.time&&""===t.ConsoleMsg&&""===t.node&&(r=!1),t.key=Math.random(),D.indexOf(t.userAgent)<0&&void 0!==t.userAgent&&(D.push(t.userAgent),H(D)),r&&e((0,G.Qo)(t))},ee.onclose=function(){clearInterval(o),console.log("connection closed by server"),e((0,G.v0)(!1))},function(){ee.close(1e3),clearInterval(o),console.log("closing websockets"),e((0,G.v0)(!1))}},label:"Start Logs"}),i&&(0,N.jsx)(l.zxk,{id:"stop-logs",type:"button",variant:"callAction",onClick:function(){null!==ee&&void 0!==ee&&(ee.close(1e3),e((0,G.v0)(!1)))},label:"Stop Logs"})]}),(0,N.jsx)(h.ZP,{item:!0,xs:12,className:n.actionsTray,children:(0,N.jsx)(j.Z,{placeholder:"Filter",onChange:function(e){y(e)},value:u})}),(0,N.jsx)(h.ZP,{item:!0,xs:12,children:(0,N.jsx)("div",{id:"logs-container",className:n.logList,"data-test-id":"logs-list-container",children:(0,N.jsxs)(O,{component:Z.Z,children:[(0,N.jsx)(w.Z,{"aria-label":"collapsible table",children:(0,N.jsx)(b.Z,{children:oe.map((function(e){return(0,N.jsx)(q,{log:e})}))})}),0===oe.length&&(0,N.jsx)("div",{style:{padding:20,textAlign:"center"},children:"No logs to display"})]})})})]})})]})}},26824:function(e,n,t){"use strict";t.d(n,{HE:function(){return o},V9:function(){return r},ci:function(){return i},x2:function(){return s}});var r=1006,i=1008,o=1011,s=function(e){var n="ws";return"https:"===e&&(n="wss"),n}},56125:function(e,n,t){"use strict";t.d(n,{Z:function(){return C}});var r=t(4942),i=t(63366),o=t(87462),s=t(72791),l=t(28182),a=t(18875),c=t(94419),d=t(66934),u=t(31402),h=t(81314),f=t(4999),p=t(13967),g=t(42071),x=t(75878),m=t(21217);function v(e){return(0,m.Z)("MuiCollapse",e)}(0,x.Z)("MuiCollapse",["root","horizontal","vertical","entered","hidden","wrapper","wrapperInner"]);var y=t(80184),j=["addEndListener","children","className","collapsedSize","component","easing","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","orientation","style","timeout","TransitionComponent"],Z=(0,d.ZP)("div",{name:"MuiCollapse",slot:"Root",overridesResolver:function(e,n){var t=e.ownerState;return[n.root,n[t.orientation],"entered"===t.state&&n.entered,"exited"===t.state&&!t.in&&"0px"===t.collapsedSize&&n.hidden]}})((function(e){var n=e.theme,t=e.ownerState;return(0,o.Z)({height:0,overflow:"hidden",transition:n.transitions.create("height")},"horizontal"===t.orientation&&{height:"auto",width:0,transition:n.transitions.create("width")},"entered"===t.state&&(0,o.Z)({height:"auto",overflow:"visible"},"horizontal"===t.orientation&&{width:"auto"}),"exited"===t.state&&!t.in&&"0px"===t.collapsedSize&&{visibility:"hidden"})})),w=(0,d.ZP)("div",{name:"MuiCollapse",slot:"Wrapper",overridesResolver:function(e,n){return n.wrapper}})((function(e){var n=e.ownerState;return(0,o.Z)({display:"flex",width:"100%"},"horizontal"===n.orientation&&{width:"auto",height:"100%"})})),b=(0,d.ZP)("div",{name:"MuiCollapse",slot:"WrapperInner",overridesResolver:function(e,n){return n.wrapperInner}})((function(e){var n=e.ownerState;return(0,o.Z)({width:"100%"},"horizontal"===n.orientation&&{width:"auto",height:"100%"})})),S=s.forwardRef((function(e,n){var t=(0,u.Z)({props:e,name:"MuiCollapse"}),d=t.addEndListener,x=t.children,m=t.className,S=t.collapsedSize,C=void 0===S?"0px":S,E=t.component,T=t.easing,A=t.in,k=t.onEnter,F=t.onEntered,L=t.onEntering,R=t.onExit,N=t.onExited,z=t.onExiting,M=t.orientation,O=void 0===M?"vertical":M,I=t.style,_=t.timeout,P=void 0===_?h.x9.standard:_,D=t.TransitionComponent,H=void 0===D?a.ZP:D,U=(0,i.Z)(t,j),W=(0,o.Z)({},t,{orientation:O,collapsedSize:C}),B=function(e){var n=e.orientation,t=e.classes,r={root:["root","".concat(n)],entered:["entered"],hidden:["hidden"],wrapper:["wrapper","".concat(n)],wrapperInner:["wrapperInner","".concat(n)]};return(0,c.Z)(r,v,t)}(W),X=(0,p.Z)(),q=s.useRef(),G=s.useRef(null),J=s.useRef(),K="number"===typeof C?"".concat(C,"px"):C,V="horizontal"===O,Q=V?"width":"height";s.useEffect((function(){return function(){clearTimeout(q.current)}}),[]);var Y=s.useRef(null),$=(0,g.Z)(n,Y),ee=function(e){return function(n){if(e){var t=Y.current;void 0===n?e(t):e(t,n)}}},ne=function(){return G.current?G.current[V?"clientWidth":"clientHeight"]:0},te=ee((function(e,n){G.current&&V&&(G.current.style.position="absolute"),e.style[Q]=K,k&&k(e,n)})),re=ee((function(e,n){var t=ne();G.current&&V&&(G.current.style.position="");var r=(0,f.C)({style:I,timeout:P,easing:T},{mode:"enter"}),i=r.duration,o=r.easing;if("auto"===P){var s=X.transitions.getAutoHeightDuration(t);e.style.transitionDuration="".concat(s,"ms"),J.current=s}else e.style.transitionDuration="string"===typeof i?i:"".concat(i,"ms");e.style[Q]="".concat(t,"px"),e.style.transitionTimingFunction=o,L&&L(e,n)})),ie=ee((function(e,n){e.style[Q]="auto",F&&F(e,n)})),oe=ee((function(e){e.style[Q]="".concat(ne(),"px"),R&&R(e)})),se=ee(N),le=ee((function(e){var n=ne(),t=(0,f.C)({style:I,timeout:P,easing:T},{mode:"exit"}),r=t.duration,i=t.easing;if("auto"===P){var o=X.transitions.getAutoHeightDuration(n);e.style.transitionDuration="".concat(o,"ms"),J.current=o}else e.style.transitionDuration="string"===typeof r?r:"".concat(r,"ms");e.style[Q]=K,e.style.transitionTimingFunction=i,z&&z(e)}));return(0,y.jsx)(H,(0,o.Z)({in:A,onEnter:te,onEntered:ie,onEntering:re,onExit:oe,onExited:se,onExiting:le,addEndListener:function(e){"auto"===P&&(q.current=setTimeout(e,J.current||0)),d&&d(Y.current,e)},nodeRef:Y,timeout:"auto"===P?null:P},U,{children:function(e,n){return(0,y.jsx)(Z,(0,o.Z)({as:E,className:(0,l.Z)(B.root,m,{entered:B.entered,exited:!A&&"0px"===K&&B.hidden}[e]),style:(0,o.Z)((0,r.Z)({},V?"minWidth":"minHeight",K),I),ownerState:(0,o.Z)({},W,{state:e}),ref:$},n,{children:(0,y.jsx)(w,{ownerState:(0,o.Z)({},W,{state:e}),className:B.wrapper,ref:G,children:(0,y.jsx)(b,{ownerState:(0,o.Z)({},W,{state:e}),className:B.wrapperInner,children:x})})}))}}))}));S.muiSupportAuto=!0;var C=S},93840:function(e,n,t){"use strict";var r=t(72791).createContext(void 0);n.Z=r},76147:function(e,n,t){"use strict";function r(e){var n=e.props,t=e.states,r=e.muiFormControl;return t.reduce((function(e,t){return e[t]=n[t],r&&"undefined"===typeof n[t]&&(e[t]=r[t]),e}),{})}t.d(n,{Z:function(){return r}})},52930:function(e,n,t){"use strict";t.d(n,{Z:function(){return o}});var r=t(72791),i=t(93840);function o(){return r.useContext(i.Z)}},19103:function(e,n,t){"use strict";t.d(n,{Z:function(){return i}});var r=t(72791);var i=function(e,n){return r.isValidElement(e)&&-1!==n.indexOf(e.type.muiName)}},94210:function(e){var n=function(){if("object"===typeof self&&self)return self;if("object"===typeof window&&window)return window;throw new Error("Unable to resolve global `this`")};e.exports=function(){if(this)return this;if("object"===typeof globalThis&&globalThis)return globalThis;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(e){return n()}try{return __global__||n()}finally{delete Object.prototype.__global__}}()},95087:function(e,n,t){var r;if("object"===typeof globalThis)r=globalThis;else try{r=t(94210)}catch(l){}finally{if(r||"undefined"===typeof window||(r=window),!r)throw new Error("Could not determine global this")}var i=r.WebSocket||r.MozWebSocket,o=t(51496);function s(e,n){return n?new i(e,n):new i(e)}i&&["CONNECTING","OPEN","CLOSING","CLOSED"].forEach((function(e){Object.defineProperty(s,e,{get:function(){return i[e]}})})),e.exports={w3cwebsocket:i?s:null,version:o}},51496:function(e,n,t){e.exports=t(19794).version},19794:function(e){"use strict";e.exports={version:"1.0.34"}}}]); +//# sourceMappingURL=9390.564ed238.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/9390.564ed238.chunk.js.map b/portal-ui/build/static/js/9390.564ed238.chunk.js.map new file mode 100644 index 000000000..185dad46f --- /dev/null +++ b/portal-ui/build/static/js/9390.564ed238.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/9390.564ed238.chunk.js","mappings":"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","sources":["../node_modules/@mui/material/TableContainer/tableContainerClasses.js","../node_modules/@mui/material/TableContainer/TableContainer.js","screens/Console/Logs/ErrorLogs/LogLine.tsx","screens/Console/Logs/ErrorLogs/ErrorLogs.tsx","utils/wsUtils.ts","../node_modules/@mui/material/Collapse/collapseClasses.js","../node_modules/@mui/material/Collapse/Collapse.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/es5-ext/global.js","../node_modules/websocket/lib/browser.js","../node_modules/websocket/lib/version.js"],"sourcesContent":["import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getTableContainerUtilityClass(slot) {\n return generateUtilityClass('MuiTableContainer', slot);\n}\nconst tableContainerClasses = generateUtilityClasses('MuiTableContainer', ['root']);\nexport default tableContainerClasses;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"className\", \"component\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport { getTableContainerUtilityClass } from './tableContainerClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes\n } = ownerState;\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, getTableContainerUtilityClass, classes);\n};\nconst TableContainerRoot = styled('div', {\n name: 'MuiTableContainer',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n})({\n width: '100%',\n overflowX: 'auto'\n});\nconst TableContainer = /*#__PURE__*/React.forwardRef(function TableContainer(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiTableContainer'\n });\n const {\n className,\n component = 'div'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n component\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(TableContainerRoot, _extends({\n ref: ref,\n as: component,\n className: clsx(classes.root, className),\n ownerState: ownerState\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? TableContainer.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component, normally `Table`.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default TableContainer;","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { Fragment, useState } from \"react\";\nimport { DateTime } from \"luxon\";\nimport TableRow from \"@mui/material/TableRow\";\nimport TableCell from \"@mui/material/TableCell\";\nimport Collapse from \"@mui/material/Collapse\";\nimport Box from \"@mui/material/Box\";\nimport Typography from \"@mui/material/Typography\";\nimport { LogMessage } from \"../types\";\nimport { BoxArrowDown, BoxArrowUp, WarnFilledIcon } from \"mds\";\n\nimport getByKey from \"lodash/get\";\n\nconst timestampDisplayFmt = \"HH:mm:ss ZZZZ MM/dd/yyyy\"; //make this same as server logs format.\nconst messageForConsoleMsg = (log: LogMessage) => {\n // regex for terminal colors like e.g. `[31;4m `\n const tColorRegex = /((\\[[0-9;]+m))/g;\n\n let fullMessage = log.ConsoleMsg;\n // remove the 0x1B character\n /* eslint-disable no-control-regex */\n fullMessage = fullMessage.replace(/\\x1B/g, \" \");\n /* eslint-enable no-control-regex */\n // get substring if there was a match for to split what\n // is going to be colored and what not, here we add color\n // only to the first match.\n fullMessage = fullMessage.replace(tColorRegex, \"\");\n return (\n \n \n
{fullMessage}
\n
\n \n );\n};\nconst messageForError = (log: LogMessage) => {\n const dataStyle = {\n color: \"#C83B51\",\n fontWeight: 400,\n fontFamily: \"monospace\",\n fontSize: \"12px\",\n };\n const labelStyle = {\n fontFamily: \"monospace\",\n fontSize: \"12px\",\n };\n\n const getLogEntryKey = (keyPath: string) => {\n return getByKey(log, keyPath, \"\");\n };\n\n const logTime = DateTime.fromFormat(\n log.time.toString(),\n \"HH:mm:ss z MM/dd/yyyy\",\n {\n zone: \"UTC\",\n },\n );\n return (\n \n
\n API: \n {getLogEntryKey(\"api.name\")}\n
\n
\n Time: \n {logTime.toFormat(timestampDisplayFmt)}\n
\n
\n DeploymentID: \n {getLogEntryKey(\"deploymentid\")}\n
\n
\n RequestID: \n {getLogEntryKey(\"requestID\")}\n
\n
\n RemoteHost: \n {getLogEntryKey(\"remotehost\")}\n
\n
\n UserAgent: \n {getLogEntryKey(\"userAgent\")}\n
\n
\n Error: \n {getLogEntryKey(\"error.message\")}\n
\n
\n
\n Backtrace: \n
\n\n {(log.error.source || []).map((e: any, i: number) => {\n return (\n
\n {i}: \n {e}\n
\n );\n })}\n
\n );\n};\n\nconst LogLine = (props: { log: LogMessage }) => {\n const { log } = props;\n const [open, setOpen] = useState(false);\n\n const getLogLineKey = (keyPath: string) => {\n return getByKey(log, keyPath, \"\");\n };\n\n let logMessage = \"\";\n let consoleMsg = getLogLineKey(\"ConsoleMsg\");\n let errMsg = getLogLineKey(\"error.message\");\n if (consoleMsg !== \"\") {\n logMessage = consoleMsg;\n } else if (errMsg !== \"\") {\n logMessage = errMsg;\n }\n // remove any non ascii characters, exclude any control codes\n let titleLogMessage = (logMessage || \"\").replace(/━|┏|┓|┃|┗|┛/g, \"\");\n // remove any non ascii characters, exclude any control codes\n titleLogMessage = titleLogMessage.replace(/([^\\x20-\\x7F])/g, \"\");\n\n // regex for terminal colors like e.g. `[31;4m `\n const tColorRegex = /((\\[[0-9;]+m))/g;\n\n let fullMessage = ;\n if (consoleMsg !== \"\") {\n fullMessage = messageForConsoleMsg(log);\n } else if (errMsg !== \"\") {\n fullMessage = messageForError(log);\n }\n\n titleLogMessage = (titleLogMessage || \"\").replace(tColorRegex, \"\");\n\n const logTime = DateTime.fromFormat(\n log.time.toString(),\n \"HH:mm:ss z MM/dd/yyyy\",\n {\n zone: \"UTC\",\n },\n );\n const dateOfLine = logTime.toJSDate(); //DateTime.fromJSDate(log.time);\n\n let dateStr = {logTime.toFormat(timestampDisplayFmt)};\n\n if (dateOfLine.getFullYear() === 1) {\n dateStr = n/a;\n }\n\n return (\n \n *\": { borderBottom: \"unset\" },\n cursor: \"pointer\",\n borderLeft: \"0\",\n borderRight: \"0\",\n }}\n style={{ backgroundColor: \"#FDFDFD\" }}\n >\n setOpen(!open)}\n style={{ width: 280, color: \"#989898\", fontSize: 12 }}\n >\n \n \n
{dateStr}
\n \n \n setOpen(!open)}\n style={{ width: 200, color: \"#989898\", fontSize: 12 }}\n >\n \n {log.errKind}\n \n \n setOpen(!open)}>\n \n \n {titleLogMessage}\n \n \n \n setOpen(!open)} style={{ width: 40 }}>\n \n {open ? : }\n \n \n \n {open ? (\n \n \n \n
Log Details
\n
\n \n \n \n \n \n {fullMessage}\n \n \n \n \n \n
\n ) : null}\n
\n );\n};\n\nexport default LogLine;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { IMessageEvent, w3cwebsocket as W3CWebSocket } from \"websocket\";\nimport { Theme } from \"@mui/material/styles\";\nimport { Button, PageLayout } from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { useSelector } from \"react-redux\";\nimport { FormControl, Grid, InputBase, MenuItem, Select } from \"@mui/material\";\n\nimport { ErrorResponseHandler } from \"../../../../../src/common/types\";\nimport api from \"../../../../../src/common/api\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\n\nimport { wsProtocol } from \"../../../../utils/wsUtils\";\nimport {\n actionsTray,\n containerForHeader,\n inlineCheckboxes,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport SearchBox from \"../../Common/SearchBox\";\nimport Paper from \"@mui/material/Paper\";\nimport Table from \"@mui/material/Table\";\nimport TableBody from \"@mui/material/TableBody\";\nimport TableContainer from \"@mui/material/TableContainer\";\nimport LogLine from \"./LogLine\";\nimport {\n logMessageReceived,\n logResetMessages,\n setLogsStarted,\n} from \"../logsSlice\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../../HelpMenu\";\nimport { setHelpName } from \"../../../../systemSlice\";\n\nconst useStyles = makeStyles((theme: Theme) =>\n createStyles({\n logList: {\n background: \"#fff\",\n minHeight: 400,\n height: \"calc(100vh - 200px)\",\n overflow: \"auto\",\n fontSize: 13,\n borderRadius: 4,\n },\n logerror_tab: {\n color: \"#A52A2A\",\n paddingLeft: 25,\n },\n nodeField: {\n width: \"100%\",\n },\n ...actionsTray,\n actionsTray: {\n ...actionsTray.actionsTray,\n marginBottom: 0,\n },\n ...searchField,\n\n ...inlineCheckboxes,\n ...containerForHeader,\n }),\n);\n\nexport const SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n lineHeight: \"50px\",\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n \"& .MuiSelect-select:focus\": {\n backgroundColor: \"transparent\",\n },\n },\n }),\n)(InputBase);\n\nvar c: any = null;\n\nconst ErrorLogs = () => {\n const dispatch = useAppDispatch();\n const classes = useStyles();\n\n const messages = useSelector((state: AppState) => state.logs.logMessages);\n const logsStarted = useSelector((state: AppState) => state.logs.logsStarted);\n\n const [filter, setFilter] = useState(\"\");\n const [nodes, setNodes] = useState([\"\"]);\n const [selectedNode, setSelectedNode] = useState(\"all\");\n const [selectedUserAgent, setSelectedUserAgent] =\n useState(\"Select user agent\");\n const [userAgents, setUserAgents] = useState([\"All User Agents\"]);\n const [logType, setLogType] = useState(\"all\");\n const [loadingNodes, setLoadingNodes] = useState(false);\n\n const startLogs = () => {\n dispatch(logResetMessages());\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n // check if we are using base path, if not this always is `/`\n const baseLocation = new URL(document.baseURI);\n const baseUrl = baseLocation.pathname;\n\n c = new W3CWebSocket(\n `${wsProt}://${\n url.hostname\n }:${port}${baseUrl}ws/console/?logType=${logType}&node=${\n selectedNode === \"Select node\" ? \"\" : selectedNode\n }`,\n );\n let interval: any | null = null;\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n dispatch(setLogsStarted(true));\n c.send(\"ok\");\n interval = setInterval(() => {\n c.send(\"ok\");\n }, 10 * 1000);\n };\n c.onmessage = (message: IMessageEvent) => {\n // console.log(message.data.toString())\n // FORMAT: 00:35:17 UTC 01/01/2021\n\n let m: any = JSON.parse(message.data.toString());\n let isValidEntry = true;\n if (\n m.level === \"\" &&\n m.errKind === \"\" &&\n //@ts-ignore\n m.time === \"00:00:00 UTC 01/01/0001\" &&\n m.ConsoleMsg === \"\" &&\n m.node === \"\"\n ) {\n isValidEntry = false;\n }\n\n m.key = Math.random();\n if (userAgents.indexOf(m.userAgent) < 0 && m.userAgent !== undefined) {\n userAgents.push(m.userAgent);\n setUserAgents(userAgents);\n }\n if (isValidEntry) {\n dispatch(logMessageReceived(m));\n }\n };\n c.onclose = () => {\n clearInterval(interval);\n console.log(\"connection closed by server\");\n dispatch(setLogsStarted(false));\n };\n return () => {\n c.close(1000);\n clearInterval(interval);\n console.log(\"closing websockets\");\n dispatch(setLogsStarted(false));\n };\n }\n };\n\n const stopLogs = () => {\n if (c !== null && c !== undefined) {\n c.close(1000);\n dispatch(setLogsStarted(false));\n }\n };\n\n const filtLow = filter.toLowerCase();\n let filteredMessages = messages.filter((m) => {\n if (\n m.userAgent === selectedUserAgent ||\n selectedUserAgent === \"All User Agents\" ||\n selectedUserAgent === \"Select user agent\"\n ) {\n if (filter !== \"\") {\n if (m.ConsoleMsg.toLowerCase().indexOf(filtLow) >= 0) {\n return true;\n } else if (\n m.error &&\n m.error.source &&\n m.error.source.filter((x) => {\n return x.toLowerCase().indexOf(filtLow) >= 0;\n }).length > 0\n ) {\n return true;\n } else if (\n m.error &&\n m.error.message.toLowerCase().indexOf(filtLow) >= 0\n ) {\n return true;\n } else if (m.api && m.api.name.toLowerCase().indexOf(filtLow) >= 0) {\n return true;\n }\n return false;\n }\n return true;\n } else return false;\n });\n\n useEffect(() => {\n setLoadingNodes(true);\n api\n .invoke(\"GET\", `/api/v1/nodes`)\n .then((res: string[]) => {\n setNodes(res);\n // if (res.length > 0) {\n // setSelectedNode(res[0]);\n // }\n setLoadingNodes(false);\n })\n .catch((err: ErrorResponseHandler) => {\n setLoadingNodes(false);\n });\n }, []);\n\n useEffect(() => {\n dispatch(setHelpName(\"error_logs\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n } />\n\n \n \n \n {!loadingNodes ? (\n \n {\n setSelectedNode(e.target.value as string);\n }}\n className={classes.searchField}\n disabled={loadingNodes || logsStarted}\n input={}\n placeholder={\"Select Node\"}\n >\n \n All Nodes\n \n {nodes.map((aNode) => (\n \n {aNode}\n \n ))}\n \n \n ) : (\n

Loading nodes

\n )}\n
\n\n \n \n {\n setLogType(e.target.value as string);\n }}\n className={classes.searchField}\n disabled={loadingNodes || logsStarted}\n input={}\n placeholder={\"Select Log Type\"}\n >\n \n All Log Types\n \n \n MinIO\n \n \n Application\n \n \n \n \n \n {userAgents.length > 1 && (\n \n {\n setSelectedUserAgent(e.target.value as string);\n }}\n className={classes.searchField}\n disabled={userAgents.length < 1 || logsStarted}\n input={}\n >\n \n Select User Agent\n \n {userAgents.map((anAgent) => (\n \n {anAgent}\n \n ))}\n \n \n )}\n \n \n {!logsStarted && (\n \n )}\n {logsStarted && (\n \n )}\n
\n \n {\n setFilter(e);\n }}\n value={filter}\n />\n \n \n \n \n \n \n {filteredMessages.map((m) => {\n return ;\n })}\n \n
\n {filteredMessages.length === 0 && (\n
\n No logs to display\n
\n )}\n
\n \n
\n \n
\n
\n );\n};\n\nexport default ErrorLogs;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\n// Close codes for websockets defined in RFC 6455\nexport const WSCloseAbnormalClosure = 1006;\nexport const WSClosePolicyViolation = 1008;\nexport const WSCloseInternalServerErr = 1011;\n\nexport const wsProtocol = (protocol: string): string => {\n let wsProtocol = \"ws\";\n if (protocol === \"https:\") {\n wsProtocol = \"wss\";\n }\n return wsProtocol;\n};\n","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getCollapseUtilityClass(slot) {\n return generateUtilityClass('MuiCollapse', slot);\n}\nconst collapseClasses = generateUtilityClasses('MuiCollapse', ['root', 'horizontal', 'vertical', 'entered', 'hidden', 'wrapper', 'wrapperInner']);\nexport default collapseClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"addEndListener\", \"children\", \"className\", \"collapsedSize\", \"component\", \"easing\", \"in\", \"onEnter\", \"onEntered\", \"onEntering\", \"onExit\", \"onExited\", \"onExiting\", \"orientation\", \"style\", \"timeout\", \"TransitionComponent\"];\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport PropTypes from 'prop-types';\nimport { Transition } from 'react-transition-group';\nimport { elementTypeAcceptingRef } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport { duration } from '../styles/createTransitions';\nimport { getTransitionProps } from '../transitions/utils';\nimport useTheme from '../styles/useTheme';\nimport { useForkRef } from '../utils';\nimport { getCollapseUtilityClass } from './collapseClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n orientation,\n classes\n } = ownerState;\n const slots = {\n root: ['root', `${orientation}`],\n entered: ['entered'],\n hidden: ['hidden'],\n wrapper: ['wrapper', `${orientation}`],\n wrapperInner: ['wrapperInner', `${orientation}`]\n };\n return composeClasses(slots, getCollapseUtilityClass, classes);\n};\nconst CollapseRoot = styled('div', {\n name: 'MuiCollapse',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[ownerState.orientation], ownerState.state === 'entered' && styles.entered, ownerState.state === 'exited' && !ownerState.in && ownerState.collapsedSize === '0px' && styles.hidden];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n height: 0,\n overflow: 'hidden',\n transition: theme.transitions.create('height')\n}, ownerState.orientation === 'horizontal' && {\n height: 'auto',\n width: 0,\n transition: theme.transitions.create('width')\n}, ownerState.state === 'entered' && _extends({\n height: 'auto',\n overflow: 'visible'\n}, ownerState.orientation === 'horizontal' && {\n width: 'auto'\n}), ownerState.state === 'exited' && !ownerState.in && ownerState.collapsedSize === '0px' && {\n visibility: 'hidden'\n}));\nconst CollapseWrapper = styled('div', {\n name: 'MuiCollapse',\n slot: 'Wrapper',\n overridesResolver: (props, styles) => styles.wrapper\n})(({\n ownerState\n}) => _extends({\n // Hack to get children with a negative margin to not falsify the height computation.\n display: 'flex',\n width: '100%'\n}, ownerState.orientation === 'horizontal' && {\n width: 'auto',\n height: '100%'\n}));\nconst CollapseWrapperInner = styled('div', {\n name: 'MuiCollapse',\n slot: 'WrapperInner',\n overridesResolver: (props, styles) => styles.wrapperInner\n})(({\n ownerState\n}) => _extends({\n width: '100%'\n}, ownerState.orientation === 'horizontal' && {\n width: 'auto',\n height: '100%'\n}));\n\n/**\n * The Collapse transition is used by the\n * [Vertical Stepper](/material-ui/react-stepper/#vertical-stepper) StepContent component.\n * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.\n */\nconst Collapse = /*#__PURE__*/React.forwardRef(function Collapse(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiCollapse'\n });\n const {\n addEndListener,\n children,\n className,\n collapsedSize: collapsedSizeProp = '0px',\n component,\n easing,\n in: inProp,\n onEnter,\n onEntered,\n onEntering,\n onExit,\n onExited,\n onExiting,\n orientation = 'vertical',\n style,\n timeout = duration.standard,\n // eslint-disable-next-line react/prop-types\n TransitionComponent = Transition\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = _extends({}, props, {\n orientation,\n collapsedSize: collapsedSizeProp\n });\n const classes = useUtilityClasses(ownerState);\n const theme = useTheme();\n const timer = React.useRef();\n const wrapperRef = React.useRef(null);\n const autoTransitionDuration = React.useRef();\n const collapsedSize = typeof collapsedSizeProp === 'number' ? `${collapsedSizeProp}px` : collapsedSizeProp;\n const isHorizontal = orientation === 'horizontal';\n const size = isHorizontal ? 'width' : 'height';\n React.useEffect(() => {\n return () => {\n clearTimeout(timer.current);\n };\n }, []);\n const nodeRef = React.useRef(null);\n const handleRef = useForkRef(ref, nodeRef);\n const normalizedTransitionCallback = callback => maybeIsAppearing => {\n if (callback) {\n const node = nodeRef.current;\n\n // onEnterXxx and onExitXxx callbacks have a different arguments.length value.\n if (maybeIsAppearing === undefined) {\n callback(node);\n } else {\n callback(node, maybeIsAppearing);\n }\n }\n };\n const getWrapperSize = () => wrapperRef.current ? wrapperRef.current[isHorizontal ? 'clientWidth' : 'clientHeight'] : 0;\n const handleEnter = normalizedTransitionCallback((node, isAppearing) => {\n if (wrapperRef.current && isHorizontal) {\n // Set absolute position to get the size of collapsed content\n wrapperRef.current.style.position = 'absolute';\n }\n node.style[size] = collapsedSize;\n if (onEnter) {\n onEnter(node, isAppearing);\n }\n });\n const handleEntering = normalizedTransitionCallback((node, isAppearing) => {\n const wrapperSize = getWrapperSize();\n if (wrapperRef.current && isHorizontal) {\n // After the size is read reset the position back to default\n wrapperRef.current.style.position = '';\n }\n const {\n duration: transitionDuration,\n easing: transitionTimingFunction\n } = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'enter'\n });\n if (timeout === 'auto') {\n const duration2 = theme.transitions.getAutoHeightDuration(wrapperSize);\n node.style.transitionDuration = `${duration2}ms`;\n autoTransitionDuration.current = duration2;\n } else {\n node.style.transitionDuration = typeof transitionDuration === 'string' ? transitionDuration : `${transitionDuration}ms`;\n }\n node.style[size] = `${wrapperSize}px`;\n node.style.transitionTimingFunction = transitionTimingFunction;\n if (onEntering) {\n onEntering(node, isAppearing);\n }\n });\n const handleEntered = normalizedTransitionCallback((node, isAppearing) => {\n node.style[size] = 'auto';\n if (onEntered) {\n onEntered(node, isAppearing);\n }\n });\n const handleExit = normalizedTransitionCallback(node => {\n node.style[size] = `${getWrapperSize()}px`;\n if (onExit) {\n onExit(node);\n }\n });\n const handleExited = normalizedTransitionCallback(onExited);\n const handleExiting = normalizedTransitionCallback(node => {\n const wrapperSize = getWrapperSize();\n const {\n duration: transitionDuration,\n easing: transitionTimingFunction\n } = getTransitionProps({\n style,\n timeout,\n easing\n }, {\n mode: 'exit'\n });\n if (timeout === 'auto') {\n // TODO: rename getAutoHeightDuration to something more generic (width support)\n // Actually it just calculates animation duration based on size\n const duration2 = theme.transitions.getAutoHeightDuration(wrapperSize);\n node.style.transitionDuration = `${duration2}ms`;\n autoTransitionDuration.current = duration2;\n } else {\n node.style.transitionDuration = typeof transitionDuration === 'string' ? transitionDuration : `${transitionDuration}ms`;\n }\n node.style[size] = collapsedSize;\n node.style.transitionTimingFunction = transitionTimingFunction;\n if (onExiting) {\n onExiting(node);\n }\n });\n const handleAddEndListener = next => {\n if (timeout === 'auto') {\n timer.current = setTimeout(next, autoTransitionDuration.current || 0);\n }\n if (addEndListener) {\n // Old call signature before `react-transition-group` implemented `nodeRef`\n addEndListener(nodeRef.current, next);\n }\n };\n return /*#__PURE__*/_jsx(TransitionComponent, _extends({\n in: inProp,\n onEnter: handleEnter,\n onEntered: handleEntered,\n onEntering: handleEntering,\n onExit: handleExit,\n onExited: handleExited,\n onExiting: handleExiting,\n addEndListener: handleAddEndListener,\n nodeRef: nodeRef,\n timeout: timeout === 'auto' ? null : timeout\n }, other, {\n children: (state, childProps) => /*#__PURE__*/_jsx(CollapseRoot, _extends({\n as: component,\n className: clsx(classes.root, className, {\n 'entered': classes.entered,\n 'exited': !inProp && collapsedSize === '0px' && classes.hidden\n }[state]),\n style: _extends({\n [isHorizontal ? 'minWidth' : 'minHeight']: collapsedSize\n }, style),\n ownerState: _extends({}, ownerState, {\n state\n }),\n ref: handleRef\n }, childProps, {\n children: /*#__PURE__*/_jsx(CollapseWrapper, {\n ownerState: _extends({}, ownerState, {\n state\n }),\n className: classes.wrapper,\n ref: wrapperRef,\n children: /*#__PURE__*/_jsx(CollapseWrapperInner, {\n ownerState: _extends({}, ownerState, {\n state\n }),\n className: classes.wrapperInner,\n children: children\n })\n })\n }))\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Collapse.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * Add a custom transition end trigger. Called with the transitioning DOM\n * node and a done callback. Allows for more fine grained transition end\n * logic. Note: Timeouts are still used as a fallback if provided.\n */\n addEndListener: PropTypes.func,\n /**\n * The content node to be collapsed.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The width (horizontal) or height (vertical) of the container when collapsed.\n * @default '0px'\n */\n collapsedSize: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: elementTypeAcceptingRef,\n /**\n * The transition timing function.\n * You may specify a single easing or a object containing enter and exit values.\n */\n easing: PropTypes.oneOfType([PropTypes.shape({\n enter: PropTypes.string,\n exit: PropTypes.string\n }), PropTypes.string]),\n /**\n * If `true`, the component will transition in.\n */\n in: PropTypes.bool,\n /**\n * @ignore\n */\n onEnter: PropTypes.func,\n /**\n * @ignore\n */\n onEntered: PropTypes.func,\n /**\n * @ignore\n */\n onEntering: PropTypes.func,\n /**\n * @ignore\n */\n onExit: PropTypes.func,\n /**\n * @ignore\n */\n onExited: PropTypes.func,\n /**\n * @ignore\n */\n onExiting: PropTypes.func,\n /**\n * The transition orientation.\n * @default 'vertical'\n */\n orientation: PropTypes.oneOf(['horizontal', 'vertical']),\n /**\n * @ignore\n */\n style: PropTypes.object,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n *\n * Set to 'auto' to automatically calculate transition time based on height.\n * @default duration.standard\n */\n timeout: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })])\n} : void 0;\nCollapse.muiSupportAuto = true;\nexport default Collapse;","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","var naiveFallback = function () {\n\tif (typeof self === \"object\" && self) return self;\n\tif (typeof window === \"object\" && window) return window;\n\tthrow new Error(\"Unable to resolve global `this`\");\n};\n\nmodule.exports = (function () {\n\tif (this) return this;\n\n\t// Unexpected strict mode (may happen if e.g. bundled into ESM module)\n\n\t// Fallback to standard globalThis if available\n\tif (typeof globalThis === \"object\" && globalThis) return globalThis;\n\n\t// Thanks @mathiasbynens -> https://mathiasbynens.be/notes/globalthis\n\t// In all ES5+ engines global object inherits from Object.prototype\n\t// (if you approached one that doesn't please report)\n\ttry {\n\t\tObject.defineProperty(Object.prototype, \"__global__\", {\n\t\t\tget: function () { return this; },\n\t\t\tconfigurable: true\n\t\t});\n\t} catch (error) {\n\t\t// Unfortunate case of updates to Object.prototype being restricted\n\t\t// via preventExtensions, seal or freeze\n\t\treturn naiveFallback();\n\t}\n\ttry {\n\t\t// Safari case (window.__global__ works, but __global__ does not)\n\t\tif (!__global__) return naiveFallback();\n\t\treturn __global__;\n\t} finally {\n\t\tdelete Object.prototype.__global__;\n\t}\n})();\n","var _globalThis;\nif (typeof globalThis === 'object') {\n\t_globalThis = globalThis;\n} else {\n\ttry {\n\t\t_globalThis = require('es5-ext/global');\n\t} catch (error) {\n\t} finally {\n\t\tif (!_globalThis && typeof window !== 'undefined') { _globalThis = window; }\n\t\tif (!_globalThis) { throw new Error('Could not determine global this'); }\n\t}\n}\n\nvar NativeWebSocket = _globalThis.WebSocket || _globalThis.MozWebSocket;\nvar websocket_version = require('./version');\n\n\n/**\n * Expose a W3C WebSocket class with just one or two arguments.\n */\nfunction W3CWebSocket(uri, protocols) {\n\tvar native_instance;\n\n\tif (protocols) {\n\t\tnative_instance = new NativeWebSocket(uri, protocols);\n\t}\n\telse {\n\t\tnative_instance = new NativeWebSocket(uri);\n\t}\n\n\t/**\n\t * 'native_instance' is an instance of nativeWebSocket (the browser's WebSocket\n\t * class). Since it is an Object it will be returned as it is when creating an\n\t * instance of W3CWebSocket via 'new W3CWebSocket()'.\n\t *\n\t * ECMAScript 5: http://bclary.com/2004/11/07/#a-13.2.2\n\t */\n\treturn native_instance;\n}\nif (NativeWebSocket) {\n\t['CONNECTING', 'OPEN', 'CLOSING', 'CLOSED'].forEach(function(prop) {\n\t\tObject.defineProperty(W3CWebSocket, prop, {\n\t\t\tget: function() { return NativeWebSocket[prop]; }\n\t\t});\n\t});\n}\n\n/**\n * Module exports.\n */\nmodule.exports = {\n 'w3cwebsocket' : NativeWebSocket ? W3CWebSocket : null,\n 'version' : websocket_version\n};\n","module.exports = require('../package.json').version;\n"],"names":["getTableContainerUtilityClass","slot","generateUtilityClass","generateUtilityClasses","_excluded","TableContainerRoot","styled","name","overridesResolver","props","styles","root","width","overflowX","React","inProps","ref","useThemeProps","className","_props$component","component","other","_objectWithoutPropertiesLoose","ownerState","_extends","classes","composeClasses","useUtilityClasses","_jsx","as","clsx","timestampDisplayFmt","log","_useState","useState","_useState2","_slicedToArray","open","setOpen","getLogLineKey","keyPath","getByKey","logMessage","consoleMsg","errMsg","titleLogMessage","replace","fullMessage","Fragment","ConsoleMsg","style","display","tableLayout","paddingLeft","paddingRight","children","whiteSpace","textOverflow","messageForConsoleMsg","dataStyle","color","fontWeight","fontFamily","fontSize","labelStyle","getLogEntryKey","logTime","DateTime","fromFormat","time","toString","zone","_jsxs","toFormat","error","source","map","e","i","messageForError","dateOfLine","toJSDate","dateStr","getFullYear","TableRow","sx","borderBottom","cursor","borderLeft","borderRight","backgroundColor","TableCell","onClick","Box","gap","alignItems","marginRight","lineHeight","WarnFilledIcon","errKind","overflow","justifyContent","borderRadius","fill","BoxArrowUp","BoxArrowDown","paddingBottom","paddingTop","textTransform","verticalAlign","textAlign","Collapse","in","timeout","unmountOnExit","marginTop","colSpan","margin","Typography","background","border","padding","useStyles","makeStyles","theme","createStyles","_objectSpread","logList","minHeight","height","logerror_tab","nodeField","actionsTray","marginBottom","searchField","inlineCheckboxes","containerForHeader","SelectStyled","withStyles","spacing","InputBase","c","dispatch","useAppDispatch","messages","useSelector","state","logs","logMessages","logsStarted","filter","setFilter","_useState3","_useState4","nodes","setNodes","_useState5","_useState6","selectedNode","setSelectedNode","_useState7","_useState8","selectedUserAgent","setSelectedUserAgent","_useState9","_useState10","userAgents","setUserAgents","_useState11","_useState12","logType","setLogType","_useState13","_useState14","loadingNodes","setLoadingNodes","filtLow","toLowerCase","filteredMessages","m","userAgent","indexOf","x","length","message","api","useEffect","invoke","then","res","catch","err","setHelpName","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","Grid","container","item","xs","FormControl","variant","Select","id","value","onChange","target","disabled","input","placeholder","MenuItem","aNode","concat","anAgent","Button","type","logResetMessages","url","URL","window","location","port","wsProt","wsProtocol","protocol","baseUrl","document","baseURI","pathname","W3CWebSocket","hostname","interval","onopen","console","setLogsStarted","send","setInterval","onmessage","JSON","parse","data","isValidEntry","level","node","key","Math","random","undefined","push","logMessageReceived","onclose","clearInterval","close","SearchBox","TableContainer","Paper","Table","TableBody","LogLine","WSCloseAbnormalClosure","WSClosePolicyViolation","WSCloseInternalServerErr","getCollapseUtilityClass","CollapseRoot","orientation","entered","collapsedSize","hidden","_ref","transition","transitions","create","visibility","CollapseWrapper","wrapper","_ref2","CollapseWrapperInner","wrapperInner","_ref3","addEndListener","_props$collapsedSize","collapsedSizeProp","easing","inProp","onEnter","onEntered","onEntering","onExit","onExited","onExiting","_props$orientation","_props$timeout","duration","standard","_props$TransitionComp","TransitionComponent","Transition","slots","useTheme","timer","wrapperRef","autoTransitionDuration","isHorizontal","size","clearTimeout","current","nodeRef","handleRef","useForkRef","normalizedTransitionCallback","callback","maybeIsAppearing","getWrapperSize","handleEnter","isAppearing","position","handleEntering","wrapperSize","_getTransitionProps","getTransitionProps","mode","transitionDuration","transitionTimingFunction","duration2","getAutoHeightDuration","handleEntered","handleExit","handleExited","handleExiting","_getTransitionProps2","next","setTimeout","childProps","_defineProperty","muiSupportAuto","FormControlContext","formControlState","states","muiFormControl","reduce","acc","useFormControl","element","muiNames","muiName","naiveFallback","self","Error","module","exports","this","globalThis","Object","defineProperty","prototype","get","configurable","__global__","_globalThis","require","NativeWebSocket","WebSocket","MozWebSocket","websocket_version","uri","protocols","forEach","prop"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9581.11fc652e.chunk.js b/portal-ui/build/static/js/9581.11fc652e.chunk.js deleted file mode 100644 index 24a78da1f..000000000 --- a/portal-ui/build/static/js/9581.11fc652e.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9581,4882,7981,6662],{3579:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");e.Z=i},20165:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");e.Z=i},45649:function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=t(28610)},93840:function(r,e,t){"use strict";var n=t(72791).createContext(void 0);e.Z=n},76147:function(r,e,t){"use strict";function n(r){var e=r.props,t=r.states,n=r.muiFormControl;return t.reduce((function(r,t){return r[t]=e[t],n&&"undefined"===typeof e[t]&&(r[t]=n[t]),r}),{})}t.d(e,{Z:function(){return n}})},52930:function(r,e,t){"use strict";t.d(e,{Z:function(){return a}});var n=t(72791),o=t(93840);function a(){return n.useContext(o.Z)}},17133:function(r,e,t){"use strict";var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(28182),u=t(94419),l=t(76147),c=t(52930),d=t(14036),f=t(31402),m=t(66934),p=t(10843),Z=t(80184),v=["children","className","color","component","disabled","error","filled","focused","required"],x=(0,m.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return(0,a.Z)({},e.root,"secondary"===t.color&&e.colorSecondary,t.filled&&e.filled)}})((function(r){var e,t=r.theme,o=r.ownerState;return(0,a.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(e={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(e,"&.".concat(p.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(e,"&.".concat(p.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,n.Z)(e,"&.".concat(p.Z.error),{color:(t.vars||t).palette.error.main}),e))})),h=(0,m.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(r,e){return e.asterisk}})((function(r){var e=r.theme;return(0,n.Z)({},"&.".concat(p.Z.error),{color:(e.vars||e).palette.error.main})})),b=i.forwardRef((function(r,e){var t=(0,f.Z)({props:r,name:"MuiFormLabel"}),n=t.children,i=t.className,m=t.component,b=void 0===m?"label":m,k=(0,o.Z)(t,v),w=(0,c.Z)(),y=(0,l.Z)({props:t,muiFormControl:w,states:["color","required","focused","disabled","error","filled"]}),z=(0,a.Z)({},t,{color:y.color||"primary",component:b,disabled:y.disabled,error:y.error,filled:y.filled,focused:y.focused,required:y.required}),C=function(r){var e=r.classes,t=r.color,n=r.focused,o=r.disabled,a=r.error,i=r.filled,s=r.required,l={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",a&&"error"]};return(0,u.Z)(l,p.M,e)}(z);return(0,Z.jsxs)(x,(0,a.Z)({as:b,ownerState:z,className:(0,s.Z)(C.root,i),ref:e},k,{children:[n,y.required&&(0,Z.jsxs)(h,{ownerState:z,"aria-hidden":!0,className:C.asterisk,children:["\u2009","*"]})]}))}));e.Z=b},10843:function(r,e,t){"use strict";t.d(e,{M:function(){return a}});var n=t(75878),o=t(21217);function a(r){return(0,o.Z)("MuiFormLabel",r)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);e.Z=i},30829:function(r,e,t){"use strict";t.d(e,{Z:function(){return w}});var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(94419),u=t(28182),l=t(76147),c=t(52930),d=t(17133),f=t(10843),m=t(31402),p=t(66934),Z=t(75878),v=t(21217);function x(r){return(0,v.Z)("MuiInputLabel",r)}(0,Z.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var h=t(80184),b=["disableAnimation","margin","shrink","variant","className"],k=(0,p.ZP)(d.Z,{shouldForwardProp:function(r){return(0,p.FO)(r)||"classes"===r},name:"MuiInputLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),e.asterisk),e.root,t.formControl&&e.formControl,"small"===t.size&&e.sizeSmall,t.shrink&&e.shrink,!t.disableAnimation&&e.animated,e[t.variant]]}})((function(r){var e=r.theme,t=r.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:e.transitions.create(["color","transform","max-width"],{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut})},"filled"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),w=i.forwardRef((function(r,e){var t=(0,m.Z)({name:"MuiInputLabel",props:r}),n=t.disableAnimation,i=void 0!==n&&n,d=t.shrink,f=t.className,p=(0,o.Z)(t,b),Z=(0,c.Z)(),v=d;"undefined"===typeof v&&Z&&(v=Z.filled||Z.focused||Z.adornedStart);var w=(0,l.Z)({props:t,muiFormControl:Z,states:["size","variant","required"]}),y=(0,a.Z)({},t,{disableAnimation:i,formControl:Z,shrink:v,size:w.size,variant:w.variant,required:w.required}),z=function(r){var e=r.classes,t=r.formControl,n=r.size,o=r.shrink,i={root:["root",t&&"formControl",!r.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",r.variant],asterisk:[r.required&&"asterisk"]},u=(0,s.Z)(i,x,e);return(0,a.Z)({},e,u)}(y);return(0,h.jsx)(k,(0,a.Z)({"data-shrink":v,ownerState:y,ref:e,className:(0,u.Z)(z.root,f)},p,{classes:z}))}))},31260:function(r,e,t){"use strict";var n=t(78949);e.Z=n.Z},28610:function(r,e,t){"use strict";t.r(e),t.d(e,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return u},isMuiElement:function(){return l.Z},ownerDocument:function(){return c.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return m},unstable_ClassNameGenerator:function(){return w},unstable_useEnhancedEffect:function(){return p.Z},unstable_useId:function(){return Z.Z},unsupportedProp:function(){return v},useControlled:function(){return x.Z},useEventCallback:function(){return h.Z},useForkRef:function(){return b.Z},useIsFocusVisible:function(){return k.Z}});var n=t(55902),o=t(14036),a=t(31260),i=t(76189),s=t(83199);var u=function(r,e){return function(){return null}},l=t(19103),c=t(98301),d=t(17602);t(87462);var f=function(r,e){return function(){return null}},m=t(62971).Z,p=t(40162),Z=t(67384);var v=function(r,e,t,n,o){return null},x=t(98278),h=t(89683),b=t(42071),k=t(23031),w={configure:function(r){n.Z.configure(r)}}},19103:function(r,e,t){"use strict";t.d(e,{Z:function(){return o}});var n=t(72791);var o=function(r,e){return n.isValidElement(r)&&-1!==e.indexOf(r.type.muiName)}},78949:function(r,e,t){"use strict";function n(){for(var r=arguments.length,e=new Array(r),t=0;t {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","type","muiName","_len","arguments","length","funcs","Array","_key","func","_len2","args","_key2","apply","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9581.35e0c780.chunk.js b/portal-ui/build/static/js/9581.35e0c780.chunk.js new file mode 100644 index 000000000..67d870f4a --- /dev/null +++ b/portal-ui/build/static/js/9581.35e0c780.chunk.js @@ -0,0 +1,2 @@ +(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9581,4882,7981],{3579:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"}),"RemoveRedEye");e.Z=i},20165:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"}),"VisibilityOff");e.Z=i},45649:function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=t(28610)},93840:function(r,e,t){"use strict";var n=t(72791).createContext(void 0);e.Z=n},76147:function(r,e,t){"use strict";function n(r){var e=r.props,t=r.states,n=r.muiFormControl;return t.reduce((function(r,t){return r[t]=e[t],n&&"undefined"===typeof e[t]&&(r[t]=n[t]),r}),{})}t.d(e,{Z:function(){return n}})},52930:function(r,e,t){"use strict";t.d(e,{Z:function(){return a}});var n=t(72791),o=t(93840);function a(){return n.useContext(o.Z)}},17133:function(r,e,t){"use strict";var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(28182),u=t(94419),l=t(76147),c=t(52930),d=t(14036),f=t(31402),m=t(66934),p=t(10843),Z=t(80184),v=["children","className","color","component","disabled","error","filled","focused","required"],x=(0,m.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return(0,a.Z)({},e.root,"secondary"===t.color&&e.colorSecondary,t.filled&&e.filled)}})((function(r){var e,t=r.theme,o=r.ownerState;return(0,a.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(e={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(e,"&.".concat(p.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(e,"&.".concat(p.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,n.Z)(e,"&.".concat(p.Z.error),{color:(t.vars||t).palette.error.main}),e))})),b=(0,m.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(r,e){return e.asterisk}})((function(r){var e=r.theme;return(0,n.Z)({},"&.".concat(p.Z.error),{color:(e.vars||e).palette.error.main})})),h=i.forwardRef((function(r,e){var t=(0,f.Z)({props:r,name:"MuiFormLabel"}),n=t.children,i=t.className,m=t.component,h=void 0===m?"label":m,k=(0,o.Z)(t,v),z=(0,c.Z)(),C=(0,l.Z)({props:t,muiFormControl:z,states:["color","required","focused","disabled","error","filled"]}),w=(0,a.Z)({},t,{color:C.color||"primary",component:h,disabled:C.disabled,error:C.error,filled:C.filled,focused:C.focused,required:C.required}),M=function(r){var e=r.classes,t=r.color,n=r.focused,o=r.disabled,a=r.error,i=r.filled,s=r.required,l={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",a&&"error"]};return(0,u.Z)(l,p.M,e)}(w);return(0,Z.jsxs)(x,(0,a.Z)({as:h,ownerState:w,className:(0,s.Z)(M.root,i),ref:e},k,{children:[n,C.required&&(0,Z.jsxs)(b,{ownerState:w,"aria-hidden":!0,className:M.asterisk,children:["\u2009","*"]})]}))}));e.Z=h},10843:function(r,e,t){"use strict";t.d(e,{M:function(){return a}});var n=t(75878),o=t(21217);function a(r){return(0,o.Z)("MuiFormLabel",r)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);e.Z=i},30829:function(r,e,t){"use strict";t.d(e,{Z:function(){return z}});var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(94419),u=t(28182),l=t(76147),c=t(52930),d=t(17133),f=t(10843),m=t(31402),p=t(66934),Z=t(75878),v=t(21217);function x(r){return(0,v.Z)("MuiInputLabel",r)}(0,Z.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var b=t(80184),h=["disableAnimation","margin","shrink","variant","className"],k=(0,p.ZP)(d.Z,{shouldForwardProp:function(r){return(0,p.FO)(r)||"classes"===r},name:"MuiInputLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),e.asterisk),e.root,t.formControl&&e.formControl,"small"===t.size&&e.sizeSmall,t.shrink&&e.shrink,!t.disableAnimation&&e.animated,e[t.variant]]}})((function(r){var e=r.theme,t=r.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:e.transitions.create(["color","transform","max-width"],{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut})},"filled"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),z=i.forwardRef((function(r,e){var t=(0,m.Z)({name:"MuiInputLabel",props:r}),n=t.disableAnimation,i=void 0!==n&&n,d=t.shrink,f=t.className,p=(0,o.Z)(t,h),Z=(0,c.Z)(),v=d;"undefined"===typeof v&&Z&&(v=Z.filled||Z.focused||Z.adornedStart);var z=(0,l.Z)({props:t,muiFormControl:Z,states:["size","variant","required"]}),C=(0,a.Z)({},t,{disableAnimation:i,formControl:Z,shrink:v,size:z.size,variant:z.variant,required:z.required}),w=function(r){var e=r.classes,t=r.formControl,n=r.size,o=r.shrink,i={root:["root",t&&"formControl",!r.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",r.variant],asterisk:[r.required&&"asterisk"]},u=(0,s.Z)(i,x,e);return(0,a.Z)({},e,u)}(C);return(0,b.jsx)(k,(0,a.Z)({"data-shrink":v,ownerState:C,ref:e,className:(0,u.Z)(w.root,f)},p,{classes:w}))}))},31260:function(r,e,t){"use strict";var n=t(78949);e.Z=n.Z},28610:function(r,e,t){"use strict";t.r(e),t.d(e,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return u},isMuiElement:function(){return l.Z},ownerDocument:function(){return c.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return m},unstable_ClassNameGenerator:function(){return z},unstable_useEnhancedEffect:function(){return p.Z},unstable_useId:function(){return Z.Z},unsupportedProp:function(){return v},useControlled:function(){return x.Z},useEventCallback:function(){return b.Z},useForkRef:function(){return h.Z},useIsFocusVisible:function(){return k.Z}});var n=t(55902),o=t(14036),a=t(31260),i=t(76189),s=t(83199);var u=function(r,e){return function(){return null}},l=t(19103),c=t(98301),d=t(17602);t(87462);var f=function(r,e){return function(){return null}},m=t(62971).Z,p=t(40162),Z=t(67384);var v=function(r,e,t,n,o){return null},x=t(98278),b=t(89683),h=t(42071),k=t(23031),z={configure:function(r){n.Z.configure(r)}}},19103:function(r,e,t){"use strict";t.d(e,{Z:function(){return o}});var n=t(72791);var o=function(r,e){return n.isValidElement(r)&&-1!==e.indexOf(r.type.muiName)}},64836:function(r){r.exports=function(r){return r&&r.__esModule?r:{default:r}},r.exports.__esModule=!0,r.exports.default=r.exports}}]); +//# sourceMappingURL=9581.35e0c780.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/9581.35e0c780.chunk.js.map b/portal-ui/build/static/js/9581.35e0c780.chunk.js.map new file mode 100644 index 000000000..a5bee0f3e --- /dev/null +++ b/portal-ui/build/static/js/9581.35e0c780.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/9581.35e0c780.chunk.js","mappings":"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","sources":["../node_modules/@mui/icons-material/RemoveRedEye.js","../node_modules/@mui/icons-material/VisibilityOff.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\"\n}), 'RemoveRedEye');\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\"\n}), 'VisibilityOff');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","type","muiName","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9635.de2db92c.chunk.js b/portal-ui/build/static/js/9635.de2db92c.chunk.js new file mode 100644 index 000000000..a02db27df --- /dev/null +++ b/portal-ui/build/static/js/9635.de2db92c.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9635],{75578:function(e,n,t){var r=t(1413),i=t(72791),o=t(80184);n.Z=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(t){return(0,o.jsx)(i.Suspense,{fallback:n,children:(0,o.jsx)(e,(0,r.Z)({},t))})}}},47986:function(e,n,t){t(72791);var r=t(61889),i=t(64554),o=t(29945),s=t(80184);n.Z=function(e){var n=e.iconComponent,t=e.entity;return(0,s.jsx)(r.ZP,{container:!0,alignItems:"center",children:(0,s.jsx)(r.ZP,{item:!0,xs:12,children:(0,s.jsx)(o.KfX,{title:"".concat(t," not available"),iconComponent:n,help:(0,s.jsxs)(i.Z,{sx:{fontSize:"14px",display:"flex",border:"none",flexFlow:{xs:"column",md:"row"},"& a":{color:function(e){return e.colors.link},textDecoration:"underline"}},children:[(0,s.jsx)("div",{children:"This feature is not available for a single-disk setup."}),(0,s.jsxs)("div",{children:["Please deploy a server in"," ",(0,s.jsx)("a",{href:"https://min.io/docs/minio/linux/operations/install-deploy-manage/deploy-minio-multi-node-multi-drive.html?ref=con",target:"_blank",rel:"noopener",children:"Distributed Mode"})," ","to use this feature."]})]})})})})}},89635:function(e,n,t){t.r(n);var r=t(29439),i=t(1413),o=t(72791),s=t(26181),l=t.n(s),a=t(78687),c=t(11135),u=t(25787),d=t(64554),x=t(40986),f=t(29945),m=t(61889),h=t(23814),j=t(92983),p=t(81806),g=t(59114),y=t(75578),b=t(47986),v=t(56087),Z=t(38442),F=t(34345),T=t(87995),C=t(57689),I=t(81551),O=t(27454),S=t(47974),P=t(99670),k=t(31776),w=t(82342),N=t(80184),E=(0,y.Z)(o.lazy((function(){return Promise.all([t.e(1715),t.e(5994),t.e(7391),t.e(4414)]).then(t.bind(t,34414))})));n.default=(0,u.Z)((function(e){return(0,c.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},h.OR),h.qg),h.Je),h.fc),h.Bz),{},{customConfigurationPage:{minHeight:400},actionsTray:(0,i.Z)({},h.OR.actionsTray),searchField:(0,i.Z)((0,i.Z)({},h.qg.searchField),{},{marginRight:"auto",maxWidth:380}),rightActionButtons:{display:"flex","& button":{whiteSpace:"nowrap"}}},h.VX))}))((function(e){var n=e.classes,t=(0,I.TL)(),i=(0,C.s0)(),s=(0,a.v9)(T.N5),c=(0,o.useState)([]),u=(0,r.Z)(c,2),h=u[0],y=u[1],A=(0,o.useState)(""),K=(0,r.Z)(A,2),M=K[0],_=K[1],B=(0,o.useState)(!0),D=(0,r.Z)(B,2),R=D[0],X=D[1],z=(0,o.useState)(!1),L=(0,r.Z)(z,2),Y=L[0],q=L[1],V=(0,o.useState)({type:"unsupported",status:!1}),G=(0,r.Z)(V,2),H=G[0],U=G[1],W=(0,Z.F)(v.C3,[v.Ft.ADMIN_SET_TIER]);(0,o.useEffect)((function(){if(R)if(s){k.h.admin.tiersList().then((function(e){y(e.data.items||[]),X(!1)})).catch((function(e){t((0,T.Ih)((0,w.g)(e.error))),X(!1)}))}else X(!1)}),[R,t,s]);var J=h.filter((function(e){if(""===M)return!0;var n=l()(e,"".concat(e.type,".name"),""),t=l()(e,"type","");return n.indexOf(M)>=0||t.indexOf(M)>=0})),Q=function(){i(v.gA.TIERS_ADD)};return(0,o.useEffect)((function(){t((0,T.Sc)("list-tiers-configuration"))}),[]),(0,N.jsxs)(o.Fragment,{children:[Y&&(0,N.jsx)(E,{open:Y,tierData:H,closeModalAndRefresh:function(){q(!1)}}),(0,N.jsx)(S.Z,{label:"Tiers",actions:(0,N.jsx)(P.Z,{})}),(0,N.jsx)(f.Xgh,{children:s?(0,N.jsxs)(o.Fragment,{children:[(0,N.jsxs)(m.ZP,{item:!0,xs:12,className:n.actionsTray,children:[(0,N.jsx)(g.Z,{placeholder:"Filter",onChange:_,overrideClass:n.searchField,value:M}),(0,N.jsxs)("div",{className:n.rightActionButtons,children:[(0,N.jsx)(f.zxk,{id:"refresh-list",icon:(0,N.jsx)(f.DuK,{}),label:"Refresh List",onClick:function(){X(!0)}}),(0,N.jsx)(O.Z,{tooltip:W?"":"You require additional permissions in order to create a new Tier. Please ask your MinIO administrator to grant you "+v.Ft.ADMIN_SET_TIER+" permission in order to create a Tier.",children:(0,N.jsx)(Z.s,{scopes:[v.Ft.ADMIN_SET_TIER],resource:v.C3,errorProps:{disabled:!0},children:(0,N.jsx)(f.zxk,{id:"add-tier",icon:(0,N.jsx)(f.dtP,{}),label:"Create Tier",onClick:Q,variant:"callAction"})})})]})]}),R&&(0,N.jsx)(x.Z,{}),!R&&(0,N.jsxs)(o.Fragment,{children:[h.length>0&&(0,N.jsxs)(o.Fragment,{children:[(0,N.jsx)(m.ZP,{item:!0,xs:12,className:n.tableBlock,children:(0,N.jsx)(Z.s,{scopes:[v.Ft.ADMIN_LIST_TIERS],resource:v.C3,errorProps:{disabled:!0},children:(0,N.jsx)(d.Z,{sx:{width:"100%"},children:(0,N.jsx)(j.Z,{itemActions:[{type:"edit",onClick:function(e){U(e),q(!0)}}],columns:[{label:"Tier Name",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".name"),"");return null!==n?(0,N.jsx)("b",{children:n}):""},renderFullObject:!0},{label:"Status",elementKey:"status",renderFunction:function(e){return e?(0,N.jsxs)(m.ZP,{container:!0,sx:{display:"flex",alignItems:"center",justifyItems:"start",color:"#4CCB92",fontSize:"8px"},flexDirection:"column",display:"flex",children:[(0,N.jsx)(f.Yp9,{style:{fill:"#4CCB92",width:14,height:14}}),"ONLINE"]}):(0,N.jsxs)(m.ZP,{container:!0,sx:{display:"flex",alignItems:"center",color:"#C83B51",fontSize:"8px"},flexDirection:"column",display:"flex",children:[(0,N.jsx)(f.qwj,{style:{fill:"#C83B51",width:14,height:14}}),"OFFLINE"]})},width:50},{label:"Type",elementKey:"type",renderFunction:function(e){var n=(F.Bh.find((function(n){return n.serviceName===e}))||{}).logoXs;return e?(0,N.jsx)(d.Z,{sx:{display:"flex",alignItems:"center","& .min-icon":{width:"18px",height:"22px"}},children:n}):""},width:50},{label:"Endpoint",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".endpoint"),"");return null!==n?n:""},renderFullObject:!0},{label:"Bucket",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".bucket"),"");return null!==n?n:""},renderFullObject:!0},{label:"Prefix",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".prefix"),"");return null!==n?n:""},renderFullObject:!0},{label:"Region",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".region"),"");return null!==n?n:""},renderFullObject:!0},{label:"Usage",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".usage"),"");return null!==n?n:""},renderFullObject:!0},{label:"Objects",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".objects"),"");return null!==n?n:""},renderFullObject:!0},{label:"Versions",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".versions"),"");return null!==n?n:""},renderFullObject:!0}],isLoading:R,records:J,entityName:"Tiers",idField:"service_name",customPaperHeight:n.customConfigurationPage})})})}),(0,N.jsx)(m.ZP,{item:!0,xs:12,sx:{marginTop:"15px"},children:(0,N.jsx)(f.KfX,{title:"Learn more about TIERS",iconComponent:(0,N.jsx)(f.y2Y,{}),help:(0,N.jsxs)(o.Fragment,{children:["Tiers are used by the MinIO Object Lifecycle Management which allows creating rules for time or date based automatic transition or expiry of objects. For object transition, MinIO automatically moves the object to a configured remote storage tier.",(0,N.jsx)("br",{}),(0,N.jsx)("br",{}),"You can learn more at our"," ",(0,N.jsx)("a",{href:"https://min.io/docs/minio/linux/administration/object-management/object-lifecycle-management.html?ref=con",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})})]}),0===h.length&&(0,N.jsx)(m.ZP,{container:!0,justifyContent:"center",alignContent:"center",alignItems:"center",children:(0,N.jsx)(m.ZP,{item:!0,xs:8,children:(0,N.jsx)(f.KfX,{title:"Tiers",iconComponent:(0,N.jsx)(f.y2Y,{}),help:(0,N.jsxs)(o.Fragment,{children:["Tiers are used by the MinIO Object Lifecycle Management which allows creating rules for time or date based automatic transition or expiry of objects. For object transition, MinIO automatically moves the object to a configured remote storage tier.",(0,N.jsx)("br",{}),(0,N.jsx)("br",{}),W?(0,N.jsxs)("div",{children:["To get started,"," ",(0,N.jsx)(p.Z,{onClick:Q,children:"Create Tier"}),"."]}):""]})})})})]})]}):(0,N.jsx)(b.Z,{entity:"Tiers",iconComponent:(0,N.jsx)(f.gXu,{})})})]})}))},34345:function(e,n,t){t.d(n,{Bh:function(){return c},Pp:function(){return o},b2:function(){return l},f0:function(){return s},vB:function(){return a}});var r=t(29945),i=t(80184),o="minio",s="gcs",l="s3",a="azure",c=[{serviceName:o,targetTitle:"MinIO",logo:(0,i.jsx)(r.$E9,{}),logoXs:(0,i.jsx)(r.YEz,{})},{serviceName:s,targetTitle:"Google Cloud Storage",logo:(0,i.jsx)(r.UQG,{}),logoXs:(0,i.jsx)(r.Vwu,{})},{serviceName:l,targetTitle:"AWS S3",logo:(0,i.jsx)(r.feu,{}),logoXs:(0,i.jsx)(r.Xj3,{})},{serviceName:a,targetTitle:"Azure",logo:(0,i.jsx)(r.jze,{}),logoXs:(0,i.jsx)(r.nAe,{})}]}}]); +//# sourceMappingURL=9635.de2db92c.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/9635.fa7788f9.chunk.js.map b/portal-ui/build/static/js/9635.de2db92c.chunk.js.map similarity index 99% rename from portal-ui/build/static/js/9635.fa7788f9.chunk.js.map rename to portal-ui/build/static/js/9635.de2db92c.chunk.js.map index 612b56c06..c8b6a5242 100644 --- a/portal-ui/build/static/js/9635.fa7788f9.chunk.js.map +++ b/portal-ui/build/static/js/9635.de2db92c.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/9635.fa7788f9.chunk.js","mappings":"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","sources":["screens/Console/Common/Components/withSuspense.tsx","screens/Console/Common/DistributedOnly/DistributedOnly.tsx","screens/Console/Configurations/TiersConfiguration/ListTiersConfiguration.tsx","screens/Console/Configurations/TiersConfiguration/utils.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box, Grid } from \"@mui/material\";\nimport { HelpBox } from \"mds\";\n\ninterface IDistributedOnly {\n iconComponent: any;\n entity: string;\n}\n\nconst DistributedOnly = ({ iconComponent, entity }: IDistributedOnly) => {\n return (\n \n \n theme.colors.link,\n textDecoration: \"underline\",\n },\n }}\n >\n

This feature is not available for a single-disk setup.
\n\n
\n Please deploy a server in{\" \"}\n \n Distributed Mode\n {\" \"}\n to use this feature.\n
\n \n }\n />\n \n \n );\n};\n\nexport default DistributedOnly;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Box, LinearProgress } from \"@mui/material\";\nimport {\n AddIcon,\n Button,\n HelpBox,\n PageLayout,\n RefreshIcon,\n TierOfflineIcon,\n TierOnlineIcon,\n TiersIcon,\n TiersNotAvailableIcon,\n} from \"mds\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n settingsCommon,\n tableStyles,\n typesSelection,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport TableWrapper from \"../../Common/TableWrapper/TableWrapper\";\nimport AButton from \"../../Common/AButton/AButton\";\nimport SearchBox from \"../../Common/SearchBox\";\n\nimport withSuspense from \"../../Common/Components/withSuspense\";\nimport DistributedOnly from \"../../Common/DistributedOnly/DistributedOnly\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_PAGES,\n IAM_SCOPES,\n} from \"../../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\nimport { tierTypes } from \"./utils\";\n\nimport {\n selDistSet,\n setErrorSnackMessage,\n setHelpName,\n} from \"../../../../systemSlice\";\nimport { useNavigate } from \"react-router-dom\";\nimport { useAppDispatch } from \"../../../../store\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\n\nimport HelpMenu from \"../../HelpMenu\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { Tier } from \"api/consoleApi\";\nconst UpdateTierCredentialsModal = withSuspense(\n React.lazy(() => import(\"./UpdateTierCredentialsModal\")),\n);\n\ninterface IListTiersConfig {\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...actionsTray,\n ...searchField,\n ...settingsCommon,\n ...typesSelection,\n ...containerForHeader,\n customConfigurationPage: {\n minHeight: 400,\n },\n actionsTray: {\n ...actionsTray.actionsTray,\n },\n searchField: {\n ...searchField.searchField,\n marginRight: \"auto\",\n maxWidth: 380,\n },\n\n rightActionButtons: {\n display: \"flex\",\n \"& button\": {\n whiteSpace: \"nowrap\",\n },\n },\n ...tableStyles,\n });\n\nconst ListTiersConfiguration = ({ classes }: IListTiersConfig) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const distributedSetup = useSelector(selDistSet);\n const [records, setRecords] = useState([]);\n const [filter, setFilter] = useState(\"\");\n const [isLoading, setIsLoading] = useState(true);\n const [updateCredentialsOpen, setUpdateCredentialsOpen] =\n useState(false);\n const [selectedTier, setSelectedTier] = useState({\n type: \"unsupported\",\n status: false,\n });\n const hasSetTier = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.ADMIN_SET_TIER,\n ]);\n\n useEffect(() => {\n if (isLoading) {\n if (distributedSetup) {\n const fetchRecords = () => {\n api.admin\n .tiersList()\n .then((res) => {\n setRecords(res.data.items || []);\n setIsLoading(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setIsLoading(false);\n });\n };\n fetchRecords();\n } else {\n setIsLoading(false);\n }\n }\n }, [isLoading, dispatch, distributedSetup]);\n\n const filteredRecords = records.filter((b: Tier) => {\n if (filter === \"\") {\n return true;\n }\n const getItemName = get(b, `${b.type}.name`, \"\");\n const getItemType = get(b, `type`, \"\");\n\n return getItemName.indexOf(filter) >= 0 || getItemType.indexOf(filter) >= 0;\n });\n\n const addTier = () => {\n navigate(IAM_PAGES.TIERS_ADD);\n };\n\n const renderTierName = (item: Tier) => {\n const name = get(item, `${item.type}.name`, \"\");\n\n if (name !== null) {\n return {name};\n }\n\n return \"\";\n };\n\n const renderTierType = (item: string) => {\n const { logoXs } =\n tierTypes.find((tierConf) => tierConf.serviceName === item) || {};\n if (item) {\n return (\n \n {logoXs}\n \n );\n }\n return \"\";\n };\n\n const renderTierStatus = (item: boolean) => {\n if (item) {\n return (\n \n \n ONLINE\n \n );\n }\n return (\n \n \n OFFLINE\n \n );\n };\n\n const renderTierPrefix = (item: Tier) => {\n const prefix = get(item, `${item.type}.prefix`, \"\");\n\n if (prefix !== null) {\n return prefix;\n }\n\n return \"\";\n };\n\n const renderTierEndpoint = (item: Tier) => {\n const endpoint = get(item, `${item.type}.endpoint`, \"\");\n\n if (endpoint !== null) {\n return endpoint;\n }\n\n return \"\";\n };\n\n const renderTierBucket = (item: Tier) => {\n const bucket = get(item, `${item.type}.bucket`, \"\");\n\n if (bucket !== null) {\n return bucket;\n }\n\n return \"\";\n };\n\n const renderTierRegion = (item: Tier) => {\n const region = get(item, `${item.type}.region`, \"\");\n\n if (region !== null) {\n return region;\n }\n\n return \"\";\n };\n\n const renderTierUsage = (item: Tier) => {\n const endpoint = get(item, `${item.type}.usage`, \"\");\n\n if (endpoint !== null) {\n return endpoint;\n }\n\n return \"\";\n };\n\n const renderTierObjects = (item: Tier) => {\n const endpoint = get(item, `${item.type}.objects`, \"\");\n\n if (endpoint !== null) {\n return endpoint;\n }\n\n return \"\";\n };\n\n const renderTierVersions = (item: Tier) => {\n const endpoint = get(item, `${item.type}.versions`, \"\");\n\n if (endpoint !== null) {\n return endpoint;\n }\n\n return \"\";\n };\n\n const closeTierCredentials = () => {\n setUpdateCredentialsOpen(false);\n };\n\n useEffect(() => {\n dispatch(setHelpName(\"list-tiers-configuration\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n {updateCredentialsOpen && (\n \n )}\n } />\n\n \n {!distributedSetup ? (\n }\n />\n ) : (\n \n \n \n\n
\n }\n label={`Refresh List`}\n onClick={() => {\n setIsLoading(true);\n }}\n />\n \n \n }\n label={`Create Tier`}\n onClick={addTier}\n variant=\"callAction\"\n />\n \n \n
\n
\n {isLoading && }\n {!isLoading && (\n \n {records.length > 0 && (\n \n \n \n \n {\n setSelectedTier(tierData);\n setUpdateCredentialsOpen(true);\n },\n },\n ]}\n columns={[\n {\n label: \"Tier Name\",\n elementKey: \"type\",\n renderFunction: renderTierName,\n renderFullObject: true,\n },\n {\n label: \"Status\",\n elementKey: \"status\",\n renderFunction: renderTierStatus,\n width: 50,\n },\n {\n label: \"Type\",\n elementKey: \"type\",\n renderFunction: renderTierType,\n width: 50,\n },\n {\n label: \"Endpoint\",\n elementKey: \"type\",\n renderFunction: renderTierEndpoint,\n renderFullObject: true,\n },\n {\n label: \"Bucket\",\n elementKey: \"type\",\n renderFunction: renderTierBucket,\n renderFullObject: true,\n },\n {\n label: \"Prefix\",\n elementKey: \"type\",\n renderFunction: renderTierPrefix,\n renderFullObject: true,\n },\n {\n label: \"Region\",\n elementKey: \"type\",\n renderFunction: renderTierRegion,\n renderFullObject: true,\n },\n {\n label: \"Usage\",\n elementKey: \"type\",\n renderFunction: renderTierUsage,\n renderFullObject: true,\n },\n {\n label: \"Objects\",\n elementKey: \"type\",\n renderFunction: renderTierObjects,\n renderFullObject: true,\n },\n {\n label: \"Versions\",\n elementKey: \"type\",\n renderFunction: renderTierVersions,\n renderFullObject: true,\n },\n ]}\n isLoading={isLoading}\n records={filteredRecords}\n entityName=\"Tiers\"\n idField=\"service_name\"\n customPaperHeight={classes.customConfigurationPage}\n />\n \n \n \n \n }\n help={\n \n Tiers are used by the MinIO Object Lifecycle\n Management which allows creating rules for time or\n date based automatic transition or expiry of\n objects. For object transition, MinIO automatically\n moves the object to a configured remote storage\n tier.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n \n
\n )}\n {records.length === 0 && (\n \n \n }\n help={\n \n Tiers are used by the MinIO Object Lifecycle\n Management which allows creating rules for time or\n date based automatic transition or expiry of\n objects. For object transition, MinIO automatically\n moves the object to a configured remote storage\n tier.\n
\n
\n {hasSetTier ? (\n
\n To get started,{\" \"}\n Create Tier\n .\n
\n ) : (\n \"\"\n )}\n
\n }\n />\n
\n \n )}\n
\n )}\n
\n )}\n
\n
\n );\n};\n\nexport default withStyles(styles)(ListTiersConfiguration);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n AzureTierIcon,\n AzureTierIconXs,\n GoogleTierIcon,\n GoogleTierIconXs,\n MinIOTierIcon,\n MinIOTierIconXs,\n S3TierIcon,\n S3TierIconXs,\n} from \"mds\";\n\nexport const minioServiceName = \"minio\";\nexport const gcsServiceName = \"gcs\";\nexport const s3ServiceName = \"s3\";\nexport const azureServiceName = \"azure\";\n\nexport const tierTypes = [\n {\n serviceName: minioServiceName,\n targetTitle: \"MinIO\",\n logo: ,\n logoXs: ,\n },\n {\n serviceName: gcsServiceName,\n targetTitle: \"Google Cloud Storage\",\n logo: ,\n logoXs: ,\n },\n {\n serviceName: s3ServiceName,\n targetTitle: \"AWS S3\",\n logo: ,\n logoXs: ,\n },\n {\n serviceName: azureServiceName,\n targetTitle: \"Azure\",\n logo: ,\n logoXs: ,\n },\n];\n"],"names":["WrappedComponent","fallback","arguments","length","undefined","props","_jsx","Suspense","children","_objectSpread","_ref","iconComponent","entity","Grid","container","alignItems","item","xs","HelpBox","title","concat","help","_jsxs","Box","sx","fontSize","display","border","flexFlow","md","color","theme","colors","link","textDecoration","href","target","rel","UpdateTierCredentialsModal","withSuspense","React","withStyles","createStyles","actionsTray","searchField","settingsCommon","typesSelection","containerForHeader","customConfigurationPage","minHeight","marginRight","maxWidth","rightActionButtons","whiteSpace","tableStyles","classes","dispatch","useAppDispatch","navigate","useNavigate","distributedSetup","useSelector","selDistSet","_useState","useState","_useState2","_slicedToArray","records","setRecords","_useState3","_useState4","filter","setFilter","_useState5","_useState6","isLoading","setIsLoading","_useState7","_useState8","updateCredentialsOpen","setUpdateCredentialsOpen","_useState9","type","status","_useState10","selectedTier","setSelectedTier","hasSetTier","hasPermission","CONSOLE_UI_RESOURCE","IAM_SCOPES","ADMIN_SET_TIER","useEffect","api","admin","tiersList","then","res","data","items","catch","err","setErrorSnackMessage","errorToHandler","error","filteredRecords","b","getItemName","get","getItemType","indexOf","addTier","IAM_PAGES","TIERS_ADD","setHelpName","Fragment","open","tierData","closeModalAndRefresh","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","className","SearchBox","placeholder","onChange","overrideClass","value","Button","id","icon","RefreshIcon","onClick","TooltipWrapper","tooltip","SecureComponent","scopes","resource","errorProps","disabled","AddIcon","variant","LinearProgress","tableBlock","ADMIN_LIST_TIERS","width","TableWrapper","itemActions","columns","elementKey","renderFunction","name","renderFullObject","justifyItems","flexDirection","TierOnlineIcon","style","fill","height","TierOfflineIcon","logoXs","tierTypes","find","tierConf","serviceName","endpoint","bucket","prefix","region","entityName","idField","customPaperHeight","marginTop","TiersIcon","justifyContent","alignContent","AButton","DistributedOnly","TiersNotAvailableIcon","minioServiceName","gcsServiceName","s3ServiceName","azureServiceName","targetTitle","logo","MinIOTierIcon","MinIOTierIconXs","GoogleTierIcon","GoogleTierIconXs","S3TierIcon","S3TierIconXs","AzureTierIcon","AzureTierIconXs"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/9635.de2db92c.chunk.js","mappings":"iJAiCA,IAfA,SACEA,GAEC,IADDC,EAAmCC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,KAUtC,OARA,SAA+BG,GAC7B,OACEC,EAAAA,EAAAA,KAACC,EAAAA,SAAQ,CAACN,SAAUA,EAASO,UAC3BF,EAAAA,EAAAA,KAACN,GAAgBS,EAAAA,EAAAA,GAAA,GAAMJ,KAG7B,CAGF,C,iFCsCA,IA5CwB,SAAHK,GAAqD,IAA/CC,EAAaD,EAAbC,cAAeC,EAAMF,EAANE,OACxC,OACEN,EAAAA,EAAAA,KAACO,EAAAA,GAAI,CAACC,WAAS,EAACC,WAAY,SAASP,UACnCF,EAAAA,EAAAA,KAACO,EAAAA,GAAI,CAACG,MAAI,EAACC,GAAI,GAAGT,UAChBF,EAAAA,EAAAA,KAACY,EAAAA,IAAO,CACNC,MAAK,GAAAC,OAAKR,EAAM,kBAChBD,cAAeA,EACfU,MACEC,EAAAA,EAAAA,MAACC,EAAAA,EAAG,CACFC,GAAI,CACFC,SAAU,OACVC,QAAS,OACTC,OAAQ,OACRC,SAAU,CACRX,GAAI,SACJY,GAAI,OAEN,MAAO,CACLC,MAAO,SAACC,GAAK,OAAKA,EAAMC,OAAOC,IAAI,EACnCC,eAAgB,cAElB1B,SAAA,EAEFF,EAAAA,EAAAA,KAAA,OAAAE,SAAK,4DAELc,EAAAA,EAAAA,MAAA,OAAAd,SAAA,CAAK,4BACuB,KAC1BF,EAAAA,EAAAA,KAAA,KACE6B,KAAK,oHACLC,OAAO,SACPC,IAAI,WAAU7B,SACf,qBAEI,IAAI,kCASzB,C,0WCQM8B,GAA6BC,EAAAA,EAAAA,GACjCC,EAAAA,MAAW,kBAAM,4EAAsC,KAwdzD,WAAeC,EAAAA,EAAAA,IAjdA,SAACV,GAAY,OAC1BW,EAAAA,EAAAA,IAAYjC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAC,CAAC,EACTkC,EAAAA,IACAC,EAAAA,IACAC,EAAAA,IACAC,EAAAA,IACAC,EAAAA,IAAkB,IACrBC,wBAAyB,CACvBC,UAAW,KAEbN,aAAWlC,EAAAA,EAAAA,GAAA,GACNkC,EAAAA,GAAYA,aAEjBC,aAAWnC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACNmC,EAAAA,GAAYA,aAAW,IAC1BM,YAAa,OACbC,SAAU,MAGZC,mBAAoB,CAClB1B,QAAS,OACT,WAAY,CACV2B,WAAY,YAGbC,EAAAA,IACF,GAubL,EArb+B,SAAH5C,GAAuC,IAAjC6C,EAAO7C,EAAP6C,QAC1BC,GAAWC,EAAAA,EAAAA,MACXC,GAAWC,EAAAA,EAAAA,MAEXC,GAAmBC,EAAAA,EAAAA,IAAYC,EAAAA,IACrCC,GAA8BC,EAAAA,EAAAA,UAAiB,IAAGC,GAAAC,EAAAA,EAAAA,GAAAH,EAAA,GAA3CI,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GAC1BI,GAA4BL,EAAAA,EAAAA,UAAiB,IAAGM,GAAAJ,EAAAA,EAAAA,GAAAG,EAAA,GAAzCE,EAAMD,EAAA,GAAEE,EAASF,EAAA,GACxBG,GAAkCT,EAAAA,EAAAA,WAAkB,GAAKU,GAAAR,EAAAA,EAAAA,GAAAO,EAAA,GAAlDE,EAASD,EAAA,GAAEE,EAAYF,EAAA,GAC9BG,GACEb,EAAAA,EAAAA,WAAkB,GAAMc,GAAAZ,EAAAA,EAAAA,GAAAW,EAAA,GADnBE,EAAqBD,EAAA,GAAEE,EAAwBF,EAAA,GAEtDG,GAAwCjB,EAAAA,EAAAA,UAAe,CACrDkB,KAAM,cACNC,QAAQ,IACRC,GAAAlB,EAAAA,EAAAA,GAAAe,EAAA,GAHKI,EAAYD,EAAA,GAAEE,EAAeF,EAAA,GAI9BG,GAAaC,EAAAA,EAAAA,GAAcC,EAAAA,GAAqB,CACpDC,EAAAA,GAAWC,kBAGbC,EAAAA,EAAAA,YAAU,WACR,GAAIjB,EACF,GAAIf,EAAkB,CAElBiC,EAAAA,EAAIC,MACDC,YACAC,MAAK,SAACC,GACL7B,EAAW6B,EAAIC,KAAKC,OAAS,IAC7BvB,GAAa,EACf,IACCwB,OAAM,SAACC,GACN7C,GAAS8C,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,EAAIG,SACjD5B,GAAa,EACf,GAGN,MACEA,GAAa,EAGnB,GAAG,CAACD,EAAWnB,EAAUI,IAEzB,IAAM6C,EAAkBtC,EAAQI,QAAO,SAACmC,GACtC,GAAe,KAAXnC,EACF,OAAO,EAET,IAAMoC,EAAcC,IAAIF,EAAE,GAADtF,OAAKsF,EAAExB,KAAI,SAAS,IACvC2B,EAAcD,IAAIF,EAAE,OAAS,IAEnC,OAAOC,EAAYG,QAAQvC,IAAW,GAAKsC,EAAYC,QAAQvC,IAAW,CAC5E,IAEMwC,EAAU,WACdrD,EAASsD,EAAAA,GAAUC,UACrB,EAuJA,OALArB,EAAAA,EAAAA,YAAU,WACRpC,GAAS0D,EAAAA,EAAAA,IAAY,4BAEvB,GAAG,KAGD5F,EAAAA,EAAAA,MAAC6F,EAAAA,SAAQ,CAAA3G,SAAA,CACNuE,IACCzE,EAAAA,EAAAA,KAACgC,EAA0B,CACzB8E,KAAMrC,EACNsC,SAAUhC,EACViC,qBAfqB,WAC3BtC,GAAyB,EAC3B,KAgBI1E,EAAAA,EAAAA,KAACiH,EAAAA,EAAiB,CAACC,MAAM,QAAQC,SAASnH,EAAAA,EAAAA,KAACoH,EAAAA,EAAQ,OAEnDpH,EAAAA,EAAAA,KAACqH,EAAAA,IAAU,CAAAnH,SACPoD,GAMAtC,EAAAA,EAAAA,MAAC6F,EAAAA,SAAQ,CAAA3G,SAAA,EACPc,EAAAA,EAAAA,MAACT,EAAAA,GAAI,CAACG,MAAI,EAACC,GAAI,GAAI2G,UAAWrE,EAAQZ,YAAYnC,SAAA,EAChDF,EAAAA,EAAAA,KAACuH,EAAAA,EAAS,CACRC,YAAY,SACZC,SAAUvD,EACVwD,cAAezE,EAAQX,YACvBqF,MAAO1D,KAGTjD,EAAAA,EAAAA,MAAA,OAAKsG,UAAWrE,EAAQH,mBAAmB5C,SAAA,EACzCF,EAAAA,EAAAA,KAAC4H,EAAAA,IAAM,CACLC,GAAI,eACJC,MAAM9H,EAAAA,EAAAA,KAAC+H,EAAAA,IAAW,IAClBb,MAAK,eACLc,QAAS,WACP1D,GAAa,EACf,KAEFtE,EAAAA,EAAAA,KAACiI,EAAAA,EAAc,CACbC,QACEjD,EACI,GACA,sHACAG,EAAAA,GAAWC,eACX,yCACLnF,UAEDF,EAAAA,EAAAA,KAACmI,EAAAA,EAAe,CACdC,OAAQ,CAAChD,EAAAA,GAAWC,gBACpBgD,SAAUlD,EAAAA,GACVmD,WAAY,CAAEC,UAAU,GAAOrI,UAE/BF,EAAAA,EAAAA,KAAC4H,EAAAA,IAAM,CACLC,GAAI,WACJC,MAAM9H,EAAAA,EAAAA,KAACwI,EAAAA,IAAO,IACdtB,MAAK,cACLc,QAASvB,EACTgC,QAAQ,yBAMjBpE,IAAarE,EAAAA,EAAAA,KAAC0I,EAAAA,EAAc,KAC3BrE,IACArD,EAAAA,EAAAA,MAAC6F,EAAAA,SAAQ,CAAA3G,SAAA,CACN2D,EAAQhE,OAAS,IAChBmB,EAAAA,EAAAA,MAAC6F,EAAAA,SAAQ,CAAA3G,SAAA,EACPF,EAAAA,EAAAA,KAACO,EAAAA,GAAI,CAACG,MAAI,EAACC,GAAI,GAAI2G,UAAWrE,EAAQ0F,WAAWzI,UAC/CF,EAAAA,EAAAA,KAACmI,EAAAA,EAAe,CACdC,OAAQ,CAAChD,EAAAA,GAAWwD,kBACpBP,SAAUlD,EAAAA,GACVmD,WAAY,CAAEC,UAAU,GAAOrI,UAE/BF,EAAAA,EAAAA,KAACiB,EAAAA,EAAG,CAACC,GAAI,CAAE2H,MAAO,QAAS3I,UACzBF,EAAAA,EAAAA,KAAC8I,EAAAA,EAAY,CACXC,YAAa,CACX,CACEnE,KAAM,OACNoD,QAAS,SAACjB,GACR/B,EAAgB+B,GAChBrC,GAAyB,EAC3B,IAGJsE,QAAS,CACP,CACE9B,MAAO,YACP+B,WAAY,OACZC,eA5OP,SAACxI,GACtB,IAAMyI,EAAO7C,IAAI5F,EAAK,GAADI,OAAKJ,EAAKkE,KAAI,SAAS,IAE5C,OAAa,OAATuE,GACKnJ,EAAAA,EAAAA,KAAA,KAAAE,SAAIiJ,IAGN,EACT,EAqO8BC,kBAAkB,GAEpB,CACElC,MAAO,SACP+B,WAAY,SACZC,eAlNL,SAACxI,GACxB,OAAIA,GAEAM,EAAAA,EAAAA,MAACT,EAAAA,GAAI,CACHC,WAAS,EACTU,GAAI,CACFE,QAAS,OACTX,WAAY,SACZ4I,aAAc,QACd7H,MAAO,UACPL,SAAU,OAEZmI,cAAe,SACflI,QAAS,OAAOlB,SAAA,EAEhBF,EAAAA,EAAAA,KAACuJ,EAAAA,IAAc,CAACC,MAAO,CAAEC,KAAM,UAAWZ,MAAO,GAAIa,OAAQ,MAAQ,aAMzE1I,EAAAA,EAAAA,MAACT,EAAAA,GAAI,CACHC,WAAS,EACTU,GAAI,CACFE,QAAS,OACTX,WAAY,SACZe,MAAO,UACPL,SAAU,OAEZmI,cAAe,SACflI,QAAS,OAAOlB,SAAA,EAEhBF,EAAAA,EAAAA,KAAC2J,EAAAA,IAAe,CAACH,MAAO,CAAEC,KAAM,UAAWZ,MAAO,GAAIa,OAAQ,MAAQ,YAI5E,EA+K8Bb,MAAO,IAET,CACE3B,MAAO,OACP+B,WAAY,OACZC,eA9OP,SAACxI,GACtB,IAAQkJ,GACNC,EAAAA,GAAUC,MAAK,SAACC,GAAQ,OAAKA,EAASC,cAAgBtJ,CAAI,KAAK,CAAC,GAD1DkJ,OAER,OAAIlJ,GAEAV,EAAAA,EAAAA,KAACiB,EAAAA,EAAG,CACFC,GAAI,CACFE,QAAS,OACTX,WAAY,SACZ,cAAe,CACboI,MAAO,OACPa,OAAQ,SAEVxJ,SAED0J,IAIA,EACT,EA2N8Bf,MAAO,IAET,CACE3B,MAAO,WACP+B,WAAY,OACZC,eA9KH,SAACxI,GAC1B,IAAMuJ,EAAW3D,IAAI5F,EAAK,GAADI,OAAKJ,EAAKkE,KAAI,aAAa,IAEpD,OAAiB,OAAbqF,EACKA,EAGF,EACT,EAuK8Bb,kBAAkB,GAEpB,CACElC,MAAO,SACP+B,WAAY,OACZC,eA1KL,SAACxI,GACxB,IAAMwJ,EAAS5D,IAAI5F,EAAK,GAADI,OAAKJ,EAAKkE,KAAI,WAAW,IAEhD,OAAe,OAAXsF,EACKA,EAGF,EACT,EAmK8Bd,kBAAkB,GAEpB,CACElC,MAAO,SACP+B,WAAY,OACZC,eApML,SAACxI,GACxB,IAAMyJ,EAAS7D,IAAI5F,EAAK,GAADI,OAAKJ,EAAKkE,KAAI,WAAW,IAEhD,OAAe,OAAXuF,EACKA,EAGF,EACT,EA6L8Bf,kBAAkB,GAEpB,CACElC,MAAO,SACP+B,WAAY,OACZC,eA5KL,SAACxI,GACxB,IAAM0J,EAAS9D,IAAI5F,EAAK,GAADI,OAAKJ,EAAKkE,KAAI,WAAW,IAEhD,OAAe,OAAXwF,EACKA,EAGF,EACT,EAqK8BhB,kBAAkB,GAEpB,CACElC,MAAO,QACP+B,WAAY,OACZC,eAxKN,SAACxI,GACvB,IAAMuJ,EAAW3D,IAAI5F,EAAK,GAADI,OAAKJ,EAAKkE,KAAI,UAAU,IAEjD,OAAiB,OAAbqF,EACKA,EAGF,EACT,EAiK8Bb,kBAAkB,GAEpB,CACElC,MAAO,UACP+B,WAAY,OACZC,eApKJ,SAACxI,GACzB,IAAMuJ,EAAW3D,IAAI5F,EAAK,GAADI,OAAKJ,EAAKkE,KAAI,YAAY,IAEnD,OAAiB,OAAbqF,EACKA,EAGF,EACT,EA6J8Bb,kBAAkB,GAEpB,CACElC,MAAO,WACP+B,WAAY,OACZC,eAhKH,SAACxI,GAC1B,IAAMuJ,EAAW3D,IAAI5F,EAAK,GAADI,OAAKJ,EAAKkE,KAAI,aAAa,IAEpD,OAAiB,OAAbqF,EACKA,EAGF,EACT,EAyJ8Bb,kBAAkB,IAGtB/E,UAAWA,EACXR,QAASsC,EACTkE,WAAW,QACXC,QAAQ,eACRC,kBAAmBtH,EAAQP,iCAKnC1C,EAAAA,EAAAA,KAACO,EAAAA,GAAI,CACHG,MAAI,EACJC,GAAI,GACJO,GAAI,CACFsJ,UAAW,QACXtK,UAEFF,EAAAA,EAAAA,KAACY,EAAAA,IAAO,CACNC,MAAO,yBACPR,eAAeL,EAAAA,EAAAA,KAACyK,EAAAA,IAAS,IACzB1J,MACEC,EAAAA,EAAAA,MAAC6F,EAAAA,SAAQ,CAAA3G,SAAA,CAAC,0PAORF,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,SAAM,4BACoB,KAC1BA,EAAAA,EAAAA,KAAA,KACE6B,KAAK,4GACLC,OAAO,SACPC,IAAI,WAAU7B,SACf,kBAEG,cAQI,IAAnB2D,EAAQhE,SACPG,EAAAA,EAAAA,KAACO,EAAAA,GAAI,CACHC,WAAS,EACTkK,eAAgB,SAChBC,aAAc,SACdlK,WAAY,SAASP,UAErBF,EAAAA,EAAAA,KAACO,EAAAA,GAAI,CAACG,MAAI,EAACC,GAAI,EAAET,UACfF,EAAAA,EAAAA,KAACY,EAAAA,IAAO,CACNC,MAAO,QACPR,eAAeL,EAAAA,EAAAA,KAACyK,EAAAA,IAAS,IACzB1J,MACEC,EAAAA,EAAAA,MAAC6F,EAAAA,SAAQ,CAAA3G,SAAA,CAAC,0PAORF,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,SACCiF,GACCjE,EAAAA,EAAAA,MAAA,OAAAd,SAAA,CAAK,kBACa,KAChBF,EAAAA,EAAAA,KAAC4K,EAAAA,EAAO,CAAC5C,QAASvB,EAAQvG,SAAC,gBAAqB,OAIlD,mBA5MpBF,EAAAA,EAAAA,KAAC6K,EAAAA,EAAe,CACdvK,OAAQ,QACRD,eAAeL,EAAAA,EAAAA,KAAC8K,EAAAA,IAAqB,UAyNjD,G,mLCvgBaC,EAAmB,QACnBC,EAAiB,MACjBC,EAAgB,KAChBC,EAAmB,QAEnBrB,EAAY,CACvB,CACEG,YAAae,EACbI,YAAa,QACbC,MAAMpL,EAAAA,EAAAA,KAACqL,EAAAA,IAAa,IACpBzB,QAAQ5J,EAAAA,EAAAA,KAACsL,EAAAA,IAAe,KAE1B,CACEtB,YAAagB,EACbG,YAAa,uBACbC,MAAMpL,EAAAA,EAAAA,KAACuL,EAAAA,IAAc,IACrB3B,QAAQ5J,EAAAA,EAAAA,KAACwL,EAAAA,IAAgB,KAE3B,CACExB,YAAaiB,EACbE,YAAa,SACbC,MAAMpL,EAAAA,EAAAA,KAACyL,EAAAA,IAAU,IACjB7B,QAAQ5J,EAAAA,EAAAA,KAAC0L,EAAAA,IAAY,KAEvB,CACE1B,YAAakB,EACbC,YAAa,QACbC,MAAMpL,EAAAA,EAAAA,KAAC2L,EAAAA,IAAa,IACpB/B,QAAQ5J,EAAAA,EAAAA,KAAC4L,EAAAA,IAAe,K","sources":["screens/Console/Common/Components/withSuspense.tsx","screens/Console/Common/DistributedOnly/DistributedOnly.tsx","screens/Console/Configurations/TiersConfiguration/ListTiersConfiguration.tsx","screens/Console/Configurations/TiersConfiguration/utils.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box, Grid } from \"@mui/material\";\nimport { HelpBox } from \"mds\";\n\ninterface IDistributedOnly {\n iconComponent: any;\n entity: string;\n}\n\nconst DistributedOnly = ({ iconComponent, entity }: IDistributedOnly) => {\n return (\n \n \n theme.colors.link,\n textDecoration: \"underline\",\n },\n }}\n >\n

This feature is not available for a single-disk setup.
\n\n
\n Please deploy a server in{\" \"}\n \n Distributed Mode\n {\" \"}\n to use this feature.\n
\n \n }\n />\n \n \n );\n};\n\nexport default DistributedOnly;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Box, LinearProgress } from \"@mui/material\";\nimport {\n AddIcon,\n Button,\n HelpBox,\n PageLayout,\n RefreshIcon,\n TierOfflineIcon,\n TierOnlineIcon,\n TiersIcon,\n TiersNotAvailableIcon,\n} from \"mds\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n settingsCommon,\n tableStyles,\n typesSelection,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport TableWrapper from \"../../Common/TableWrapper/TableWrapper\";\nimport AButton from \"../../Common/AButton/AButton\";\nimport SearchBox from \"../../Common/SearchBox\";\n\nimport withSuspense from \"../../Common/Components/withSuspense\";\nimport DistributedOnly from \"../../Common/DistributedOnly/DistributedOnly\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_PAGES,\n IAM_SCOPES,\n} from \"../../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\nimport { tierTypes } from \"./utils\";\n\nimport {\n selDistSet,\n setErrorSnackMessage,\n setHelpName,\n} from \"../../../../systemSlice\";\nimport { useNavigate } from \"react-router-dom\";\nimport { useAppDispatch } from \"../../../../store\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\n\nimport HelpMenu from \"../../HelpMenu\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { Tier } from \"api/consoleApi\";\nconst UpdateTierCredentialsModal = withSuspense(\n React.lazy(() => import(\"./UpdateTierCredentialsModal\")),\n);\n\ninterface IListTiersConfig {\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...actionsTray,\n ...searchField,\n ...settingsCommon,\n ...typesSelection,\n ...containerForHeader,\n customConfigurationPage: {\n minHeight: 400,\n },\n actionsTray: {\n ...actionsTray.actionsTray,\n },\n searchField: {\n ...searchField.searchField,\n marginRight: \"auto\",\n maxWidth: 380,\n },\n\n rightActionButtons: {\n display: \"flex\",\n \"& button\": {\n whiteSpace: \"nowrap\",\n },\n },\n ...tableStyles,\n });\n\nconst ListTiersConfiguration = ({ classes }: IListTiersConfig) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const distributedSetup = useSelector(selDistSet);\n const [records, setRecords] = useState([]);\n const [filter, setFilter] = useState(\"\");\n const [isLoading, setIsLoading] = useState(true);\n const [updateCredentialsOpen, setUpdateCredentialsOpen] =\n useState(false);\n const [selectedTier, setSelectedTier] = useState({\n type: \"unsupported\",\n status: false,\n });\n const hasSetTier = hasPermission(CONSOLE_UI_RESOURCE, [\n IAM_SCOPES.ADMIN_SET_TIER,\n ]);\n\n useEffect(() => {\n if (isLoading) {\n if (distributedSetup) {\n const fetchRecords = () => {\n api.admin\n .tiersList()\n .then((res) => {\n setRecords(res.data.items || []);\n setIsLoading(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setIsLoading(false);\n });\n };\n fetchRecords();\n } else {\n setIsLoading(false);\n }\n }\n }, [isLoading, dispatch, distributedSetup]);\n\n const filteredRecords = records.filter((b: Tier) => {\n if (filter === \"\") {\n return true;\n }\n const getItemName = get(b, `${b.type}.name`, \"\");\n const getItemType = get(b, `type`, \"\");\n\n return getItemName.indexOf(filter) >= 0 || getItemType.indexOf(filter) >= 0;\n });\n\n const addTier = () => {\n navigate(IAM_PAGES.TIERS_ADD);\n };\n\n const renderTierName = (item: Tier) => {\n const name = get(item, `${item.type}.name`, \"\");\n\n if (name !== null) {\n return {name};\n }\n\n return \"\";\n };\n\n const renderTierType = (item: string) => {\n const { logoXs } =\n tierTypes.find((tierConf) => tierConf.serviceName === item) || {};\n if (item) {\n return (\n \n {logoXs}\n \n );\n }\n return \"\";\n };\n\n const renderTierStatus = (item: boolean) => {\n if (item) {\n return (\n \n \n ONLINE\n \n );\n }\n return (\n \n \n OFFLINE\n \n );\n };\n\n const renderTierPrefix = (item: Tier) => {\n const prefix = get(item, `${item.type}.prefix`, \"\");\n\n if (prefix !== null) {\n return prefix;\n }\n\n return \"\";\n };\n\n const renderTierEndpoint = (item: Tier) => {\n const endpoint = get(item, `${item.type}.endpoint`, \"\");\n\n if (endpoint !== null) {\n return endpoint;\n }\n\n return \"\";\n };\n\n const renderTierBucket = (item: Tier) => {\n const bucket = get(item, `${item.type}.bucket`, \"\");\n\n if (bucket !== null) {\n return bucket;\n }\n\n return \"\";\n };\n\n const renderTierRegion = (item: Tier) => {\n const region = get(item, `${item.type}.region`, \"\");\n\n if (region !== null) {\n return region;\n }\n\n return \"\";\n };\n\n const renderTierUsage = (item: Tier) => {\n const endpoint = get(item, `${item.type}.usage`, \"\");\n\n if (endpoint !== null) {\n return endpoint;\n }\n\n return \"\";\n };\n\n const renderTierObjects = (item: Tier) => {\n const endpoint = get(item, `${item.type}.objects`, \"\");\n\n if (endpoint !== null) {\n return endpoint;\n }\n\n return \"\";\n };\n\n const renderTierVersions = (item: Tier) => {\n const endpoint = get(item, `${item.type}.versions`, \"\");\n\n if (endpoint !== null) {\n return endpoint;\n }\n\n return \"\";\n };\n\n const closeTierCredentials = () => {\n setUpdateCredentialsOpen(false);\n };\n\n useEffect(() => {\n dispatch(setHelpName(\"list-tiers-configuration\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n {updateCredentialsOpen && (\n \n )}\n } />\n\n \n {!distributedSetup ? (\n }\n />\n ) : (\n \n \n \n\n
\n }\n label={`Refresh List`}\n onClick={() => {\n setIsLoading(true);\n }}\n />\n \n \n }\n label={`Create Tier`}\n onClick={addTier}\n variant=\"callAction\"\n />\n \n \n
\n
\n {isLoading && }\n {!isLoading && (\n \n {records.length > 0 && (\n \n \n \n \n {\n setSelectedTier(tierData);\n setUpdateCredentialsOpen(true);\n },\n },\n ]}\n columns={[\n {\n label: \"Tier Name\",\n elementKey: \"type\",\n renderFunction: renderTierName,\n renderFullObject: true,\n },\n {\n label: \"Status\",\n elementKey: \"status\",\n renderFunction: renderTierStatus,\n width: 50,\n },\n {\n label: \"Type\",\n elementKey: \"type\",\n renderFunction: renderTierType,\n width: 50,\n },\n {\n label: \"Endpoint\",\n elementKey: \"type\",\n renderFunction: renderTierEndpoint,\n renderFullObject: true,\n },\n {\n label: \"Bucket\",\n elementKey: \"type\",\n renderFunction: renderTierBucket,\n renderFullObject: true,\n },\n {\n label: \"Prefix\",\n elementKey: \"type\",\n renderFunction: renderTierPrefix,\n renderFullObject: true,\n },\n {\n label: \"Region\",\n elementKey: \"type\",\n renderFunction: renderTierRegion,\n renderFullObject: true,\n },\n {\n label: \"Usage\",\n elementKey: \"type\",\n renderFunction: renderTierUsage,\n renderFullObject: true,\n },\n {\n label: \"Objects\",\n elementKey: \"type\",\n renderFunction: renderTierObjects,\n renderFullObject: true,\n },\n {\n label: \"Versions\",\n elementKey: \"type\",\n renderFunction: renderTierVersions,\n renderFullObject: true,\n },\n ]}\n isLoading={isLoading}\n records={filteredRecords}\n entityName=\"Tiers\"\n idField=\"service_name\"\n customPaperHeight={classes.customConfigurationPage}\n />\n \n \n \n \n }\n help={\n \n Tiers are used by the MinIO Object Lifecycle\n Management which allows creating rules for time or\n date based automatic transition or expiry of\n objects. For object transition, MinIO automatically\n moves the object to a configured remote storage\n tier.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n \n
\n )}\n {records.length === 0 && (\n \n \n }\n help={\n \n Tiers are used by the MinIO Object Lifecycle\n Management which allows creating rules for time or\n date based automatic transition or expiry of\n objects. For object transition, MinIO automatically\n moves the object to a configured remote storage\n tier.\n
\n
\n {hasSetTier ? (\n
\n To get started,{\" \"}\n Create Tier\n .\n
\n ) : (\n \"\"\n )}\n
\n }\n />\n
\n \n )}\n
\n )}\n
\n )}\n
\n
\n );\n};\n\nexport default withStyles(styles)(ListTiersConfiguration);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n AzureTierIcon,\n AzureTierIconXs,\n GoogleTierIcon,\n GoogleTierIconXs,\n MinIOTierIcon,\n MinIOTierIconXs,\n S3TierIcon,\n S3TierIconXs,\n} from \"mds\";\n\nexport const minioServiceName = \"minio\";\nexport const gcsServiceName = \"gcs\";\nexport const s3ServiceName = \"s3\";\nexport const azureServiceName = \"azure\";\n\nexport const tierTypes = [\n {\n serviceName: minioServiceName,\n targetTitle: \"MinIO\",\n logo: ,\n logoXs: ,\n },\n {\n serviceName: gcsServiceName,\n targetTitle: \"Google Cloud Storage\",\n logo: ,\n logoXs: ,\n },\n {\n serviceName: s3ServiceName,\n targetTitle: \"AWS S3\",\n logo: ,\n logoXs: ,\n },\n {\n serviceName: azureServiceName,\n targetTitle: \"Azure\",\n logo: ,\n logoXs: ,\n },\n];\n"],"names":["WrappedComponent","fallback","arguments","length","undefined","props","_jsx","Suspense","children","_objectSpread","_ref","iconComponent","entity","Grid","container","alignItems","item","xs","HelpBox","title","concat","help","_jsxs","Box","sx","fontSize","display","border","flexFlow","md","color","theme","colors","link","textDecoration","href","target","rel","UpdateTierCredentialsModal","withSuspense","React","withStyles","createStyles","actionsTray","searchField","settingsCommon","typesSelection","containerForHeader","customConfigurationPage","minHeight","marginRight","maxWidth","rightActionButtons","whiteSpace","tableStyles","classes","dispatch","useAppDispatch","navigate","useNavigate","distributedSetup","useSelector","selDistSet","_useState","useState","_useState2","_slicedToArray","records","setRecords","_useState3","_useState4","filter","setFilter","_useState5","_useState6","isLoading","setIsLoading","_useState7","_useState8","updateCredentialsOpen","setUpdateCredentialsOpen","_useState9","type","status","_useState10","selectedTier","setSelectedTier","hasSetTier","hasPermission","CONSOLE_UI_RESOURCE","IAM_SCOPES","ADMIN_SET_TIER","useEffect","api","admin","tiersList","then","res","data","items","catch","err","setErrorSnackMessage","errorToHandler","error","filteredRecords","b","getItemName","get","getItemType","indexOf","addTier","IAM_PAGES","TIERS_ADD","setHelpName","Fragment","open","tierData","closeModalAndRefresh","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","className","SearchBox","placeholder","onChange","overrideClass","value","Button","id","icon","RefreshIcon","onClick","TooltipWrapper","tooltip","SecureComponent","scopes","resource","errorProps","disabled","AddIcon","variant","LinearProgress","tableBlock","ADMIN_LIST_TIERS","width","TableWrapper","itemActions","columns","elementKey","renderFunction","name","renderFullObject","justifyItems","flexDirection","TierOnlineIcon","style","fill","height","TierOfflineIcon","logoXs","tierTypes","find","tierConf","serviceName","endpoint","bucket","prefix","region","entityName","idField","customPaperHeight","marginTop","TiersIcon","justifyContent","alignContent","AButton","DistributedOnly","TiersNotAvailableIcon","minioServiceName","gcsServiceName","s3ServiceName","azureServiceName","targetTitle","logo","MinIOTierIcon","MinIOTierIconXs","GoogleTierIcon","GoogleTierIconXs","S3TierIcon","S3TierIconXs","AzureTierIcon","AzureTierIconXs"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9635.fa7788f9.chunk.js b/portal-ui/build/static/js/9635.fa7788f9.chunk.js deleted file mode 100644 index 5939a1221..000000000 --- a/portal-ui/build/static/js/9635.fa7788f9.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9635],{75578:function(e,n,t){var r=t(1413),i=t(72791),o=t(80184);n.Z=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(t){return(0,o.jsx)(i.Suspense,{fallback:n,children:(0,o.jsx)(e,(0,r.Z)({},t))})}}},47986:function(e,n,t){t(72791);var r=t(61889),i=t(64554),o=t(29945),s=t(80184);n.Z=function(e){var n=e.iconComponent,t=e.entity;return(0,s.jsx)(r.ZP,{container:!0,alignItems:"center",children:(0,s.jsx)(r.ZP,{item:!0,xs:12,children:(0,s.jsx)(o.KfX,{title:"".concat(t," not available"),iconComponent:n,help:(0,s.jsxs)(i.Z,{sx:{fontSize:"14px",display:"flex",border:"none",flexFlow:{xs:"column",md:"row"},"& a":{color:function(e){return e.colors.link},textDecoration:"underline"}},children:[(0,s.jsx)("div",{children:"This feature is not available for a single-disk setup."}),(0,s.jsxs)("div",{children:["Please deploy a server in"," ",(0,s.jsx)("a",{href:"https://min.io/docs/minio/linux/operations/install-deploy-manage/deploy-minio-multi-node-multi-drive.html?ref=con",target:"_blank",rel:"noopener",children:"Distributed Mode"})," ","to use this feature."]})]})})})})}},89635:function(e,n,t){t.r(n);var r=t(29439),i=t(1413),o=t(72791),s=t(26181),l=t.n(s),a=t(78687),c=t(11135),u=t(25787),d=t(64554),x=t(40986),f=t(29945),m=t(61889),h=t(23814),j=t(92983),p=t(81806),g=t(59114),y=t(75578),b=t(47986),v=t(56087),Z=t(38442),F=t(34345),T=t(87995),C=t(57689),I=t(81551),O=t(27454),S=t(47974),P=t(99670),k=t(31776),w=t(82342),N=t(80184),E=(0,y.Z)(o.lazy((function(){return Promise.all([t.e(5994),t.e(7391),t.e(4414)]).then(t.bind(t,34414))})));n.default=(0,u.Z)((function(e){return(0,c.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},h.OR),h.qg),h.Je),h.fc),h.Bz),{},{customConfigurationPage:{minHeight:400},actionsTray:(0,i.Z)({},h.OR.actionsTray),searchField:(0,i.Z)((0,i.Z)({},h.qg.searchField),{},{marginRight:"auto",maxWidth:380}),rightActionButtons:{display:"flex","& button":{whiteSpace:"nowrap"}}},h.VX))}))((function(e){var n=e.classes,t=(0,I.TL)(),i=(0,C.s0)(),s=(0,a.v9)(T.N5),c=(0,o.useState)([]),u=(0,r.Z)(c,2),h=u[0],y=u[1],A=(0,o.useState)(""),K=(0,r.Z)(A,2),M=K[0],_=K[1],B=(0,o.useState)(!0),D=(0,r.Z)(B,2),R=D[0],X=D[1],z=(0,o.useState)(!1),L=(0,r.Z)(z,2),Y=L[0],q=L[1],V=(0,o.useState)({type:"unsupported",status:!1}),G=(0,r.Z)(V,2),H=G[0],U=G[1],W=(0,Z.F)(v.C3,[v.Ft.ADMIN_SET_TIER]);(0,o.useEffect)((function(){if(R)if(s){k.h.admin.tiersList().then((function(e){y(e.data.items||[]),X(!1)})).catch((function(e){t((0,T.Ih)((0,w.g)(e.error))),X(!1)}))}else X(!1)}),[R,t,s]);var J=h.filter((function(e){if(""===M)return!0;var n=l()(e,"".concat(e.type,".name"),""),t=l()(e,"type","");return n.indexOf(M)>=0||t.indexOf(M)>=0})),Q=function(){i(v.gA.TIERS_ADD)};return(0,o.useEffect)((function(){t((0,T.Sc)("list-tiers-configuration"))}),[]),(0,N.jsxs)(o.Fragment,{children:[Y&&(0,N.jsx)(E,{open:Y,tierData:H,closeModalAndRefresh:function(){q(!1)}}),(0,N.jsx)(S.Z,{label:"Tiers",actions:(0,N.jsx)(P.Z,{})}),(0,N.jsx)(f.Xgh,{children:s?(0,N.jsxs)(o.Fragment,{children:[(0,N.jsxs)(m.ZP,{item:!0,xs:12,className:n.actionsTray,children:[(0,N.jsx)(g.Z,{placeholder:"Filter",onChange:_,overrideClass:n.searchField,value:M}),(0,N.jsxs)("div",{className:n.rightActionButtons,children:[(0,N.jsx)(f.zxk,{id:"refresh-list",icon:(0,N.jsx)(f.DuK,{}),label:"Refresh List",onClick:function(){X(!0)}}),(0,N.jsx)(O.Z,{tooltip:W?"":"You require additional permissions in order to create a new Tier. Please ask your MinIO administrator to grant you "+v.Ft.ADMIN_SET_TIER+" permission in order to create a Tier.",children:(0,N.jsx)(Z.s,{scopes:[v.Ft.ADMIN_SET_TIER],resource:v.C3,errorProps:{disabled:!0},children:(0,N.jsx)(f.zxk,{id:"add-tier",icon:(0,N.jsx)(f.dtP,{}),label:"Create Tier",onClick:Q,variant:"callAction"})})})]})]}),R&&(0,N.jsx)(x.Z,{}),!R&&(0,N.jsxs)(o.Fragment,{children:[h.length>0&&(0,N.jsxs)(o.Fragment,{children:[(0,N.jsx)(m.ZP,{item:!0,xs:12,className:n.tableBlock,children:(0,N.jsx)(Z.s,{scopes:[v.Ft.ADMIN_LIST_TIERS],resource:v.C3,errorProps:{disabled:!0},children:(0,N.jsx)(d.Z,{sx:{width:"100%"},children:(0,N.jsx)(j.Z,{itemActions:[{type:"edit",onClick:function(e){U(e),q(!0)}}],columns:[{label:"Tier Name",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".name"),"");return null!==n?(0,N.jsx)("b",{children:n}):""},renderFullObject:!0},{label:"Status",elementKey:"status",renderFunction:function(e){return e?(0,N.jsxs)(m.ZP,{container:!0,sx:{display:"flex",alignItems:"center",justifyItems:"start",color:"#4CCB92",fontSize:"8px"},flexDirection:"column",display:"flex",children:[(0,N.jsx)(f.Yp9,{style:{fill:"#4CCB92",width:14,height:14}}),"ONLINE"]}):(0,N.jsxs)(m.ZP,{container:!0,sx:{display:"flex",alignItems:"center",color:"#C83B51",fontSize:"8px"},flexDirection:"column",display:"flex",children:[(0,N.jsx)(f.qwj,{style:{fill:"#C83B51",width:14,height:14}}),"OFFLINE"]})},width:50},{label:"Type",elementKey:"type",renderFunction:function(e){var n=(F.Bh.find((function(n){return n.serviceName===e}))||{}).logoXs;return e?(0,N.jsx)(d.Z,{sx:{display:"flex",alignItems:"center","& .min-icon":{width:"18px",height:"22px"}},children:n}):""},width:50},{label:"Endpoint",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".endpoint"),"");return null!==n?n:""},renderFullObject:!0},{label:"Bucket",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".bucket"),"");return null!==n?n:""},renderFullObject:!0},{label:"Prefix",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".prefix"),"");return null!==n?n:""},renderFullObject:!0},{label:"Region",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".region"),"");return null!==n?n:""},renderFullObject:!0},{label:"Usage",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".usage"),"");return null!==n?n:""},renderFullObject:!0},{label:"Objects",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".objects"),"");return null!==n?n:""},renderFullObject:!0},{label:"Versions",elementKey:"type",renderFunction:function(e){var n=l()(e,"".concat(e.type,".versions"),"");return null!==n?n:""},renderFullObject:!0}],isLoading:R,records:J,entityName:"Tiers",idField:"service_name",customPaperHeight:n.customConfigurationPage})})})}),(0,N.jsx)(m.ZP,{item:!0,xs:12,sx:{marginTop:"15px"},children:(0,N.jsx)(f.KfX,{title:"Learn more about TIERS",iconComponent:(0,N.jsx)(f.y2Y,{}),help:(0,N.jsxs)(o.Fragment,{children:["Tiers are used by the MinIO Object Lifecycle Management which allows creating rules for time or date based automatic transition or expiry of objects. For object transition, MinIO automatically moves the object to a configured remote storage tier.",(0,N.jsx)("br",{}),(0,N.jsx)("br",{}),"You can learn more at our"," ",(0,N.jsx)("a",{href:"https://min.io/docs/minio/linux/administration/object-management/object-lifecycle-management.html?ref=con",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})})]}),0===h.length&&(0,N.jsx)(m.ZP,{container:!0,justifyContent:"center",alignContent:"center",alignItems:"center",children:(0,N.jsx)(m.ZP,{item:!0,xs:8,children:(0,N.jsx)(f.KfX,{title:"Tiers",iconComponent:(0,N.jsx)(f.y2Y,{}),help:(0,N.jsxs)(o.Fragment,{children:["Tiers are used by the MinIO Object Lifecycle Management which allows creating rules for time or date based automatic transition or expiry of objects. For object transition, MinIO automatically moves the object to a configured remote storage tier.",(0,N.jsx)("br",{}),(0,N.jsx)("br",{}),W?(0,N.jsxs)("div",{children:["To get started,"," ",(0,N.jsx)(p.Z,{onClick:Q,children:"Create Tier"}),"."]}):""]})})})})]})]}):(0,N.jsx)(b.Z,{entity:"Tiers",iconComponent:(0,N.jsx)(f.gXu,{})})})]})}))},34345:function(e,n,t){t.d(n,{Bh:function(){return c},Pp:function(){return o},b2:function(){return l},f0:function(){return s},vB:function(){return a}});var r=t(29945),i=t(80184),o="minio",s="gcs",l="s3",a="azure",c=[{serviceName:o,targetTitle:"MinIO",logo:(0,i.jsx)(r.$E9,{}),logoXs:(0,i.jsx)(r.YEz,{})},{serviceName:s,targetTitle:"Google Cloud Storage",logo:(0,i.jsx)(r.UQG,{}),logoXs:(0,i.jsx)(r.Vwu,{})},{serviceName:l,targetTitle:"AWS S3",logo:(0,i.jsx)(r.feu,{}),logoXs:(0,i.jsx)(r.Xj3,{})},{serviceName:a,targetTitle:"Azure",logo:(0,i.jsx)(r.jze,{}),logoXs:(0,i.jsx)(r.nAe,{})}]}}]); -//# sourceMappingURL=9635.fa7788f9.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/977.90d83636.chunk.js b/portal-ui/build/static/js/977.90d83636.chunk.js new file mode 100644 index 000000000..15a828cf6 --- /dev/null +++ b/portal-ui/build/static/js/977.90d83636.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[977],{10977:function(e,t,n){n.r(t),n.d(t,{default:function(){return O}});var i=n(29439),r=n(72791),a=n(17691),s=n(26181),l=n.n(s),o=n(40986),u=n(57689),c=n(29945),d=n(45248),x=n(81551),h=n(78687),f=n(87995),j=n(84741),b=n(27454),g=n(50896),m=n(64561),p=n(92717),k=n(80184),v=function(e){var t=e.hasErrors,n=(0,x.TL)(),i=(0,h.v9)((function(e){return e.addBucket.name}));return(0,k.jsx)(c.Wzg,{id:"bucket-name",name:"bucket-name",error:t?"Invalid bucket name":"",onFocus:function(){n((0,m.hU)(!0))},onChange:function(e){n((0,m.qC)(e.target.value))},label:"Bucket Name",value:i,required:!0})},C=n(56087),T=n(38442),y=n(61889),B=function(e){var t=e.ruleText;return(0,k.jsx)(r.Fragment,{children:(0,k.jsxs)(y.ZP,{container:!0,style:{display:"flex",justifyContent:"flex-start"},children:[(0,k.jsx)(y.ZP,{item:!0,xs:1,paddingRight:1,children:(0,k.jsx)(c.EjK,{width:"16px",height:"16px",style:{color:"#18BF42"}})}),(0,k.jsx)(y.ZP,{item:!0,xs:9,paddingLeft:1,style:{color:"#8f949c",display:"flex",justifyContent:"flex-start"},children:t})]})})},_=function(e){var t=e.ruleText;return(0,k.jsx)(r.Fragment,{children:(0,k.jsxs)(y.ZP,{container:!0,style:{color:"#C83B51",display:"flex",justifyContent:"flex-start"},children:[(0,k.jsx)(y.ZP,{item:!0,xs:1,paddingRight:1,children:(0,k.jsx)(c.NvT,{width:"16px",height:"16px"})}),(0,k.jsx)(y.ZP,{item:!0,xs:9,paddingLeft:1,style:{color:"#C83B51",display:"flex",justifyContent:"flex-start"},children:t})]})})},F=function(e){var t=e.ruleText;return(0,k.jsx)(r.Fragment,{children:(0,k.jsxs)(y.ZP,{container:!0,style:{display:"flex",justifyContent:"flex-start"},children:[(0,k.jsx)(y.ZP,{item:!0,xs:1,paddingRight:1,children:(0,k.jsx)(c.J$M,{width:"12px",height:"12px",style:{color:"#8f949c"}})}),(0,k.jsx)(y.ZP,{item:!0,xs:9,paddingLeft:1,style:{color:"#8f949c",display:"flex",justifyContent:"flex-start"},children:t})]})})},Z=function(e){var t=e.errorList,n="Bucket names must be between 3 (min) and 63 (max) characters long.",a="Bucket names can consist only of lowercase letters, numbers, dots (.), and hyphens (-).",s="Bucket names must not contain two adjacent periods, or a period adjacent to a hyphen.",l="Bucket names must not be formatted as an IP address (for example, 192.168.5.4).",u="Bucket names must not start with the prefix xn--.",d="Bucket names must not end with the suffix -s3alias. This suffix is reserved for access point alias names.",x="Bucket names must be unique within a partition.",f=(0,h.v9)((function(e){return e.addBucket.name})),j=(0,r.useState)(!1),b=(0,i.Z)(j,2),g=b[0],m=b[1],p=(0,h.v9)((function(e){return e.addBucket.loading})),v=(0,i.Z)(t,7),C=v[0],T=v[1],y=v[2],Z=v[3],S=v[4],E=v[5],N=v[6];return(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)(c.cvr,{id:"toggle-naming-rules",open:g,label:"".concat(g?"Hide":"View"," Bucket Naming Rules"),onClick:function(){m(!g)}}),g&&(0,k.jsxs)(c.rjZ,{container:!0,sx:{fontSize:14,paddingTop:12},children:[(0,k.jsxs)(c.rjZ,{item:!0,xs:6,children:[0===f.length?(0,k.jsx)(F,{ruleText:n}):C?(0,k.jsx)(B,{ruleText:n}):(0,k.jsx)(_,{ruleText:n}),0===f.length?(0,k.jsx)(F,{ruleText:a}):T?(0,k.jsx)(B,{ruleText:a}):(0,k.jsx)(_,{ruleText:a}),0===f.length?(0,k.jsx)(F,{ruleText:s}):y?(0,k.jsx)(B,{ruleText:s}):(0,k.jsx)(_,{ruleText:s}),0===f.length?(0,k.jsx)(F,{ruleText:l}):Z?(0,k.jsx)(B,{ruleText:l}):(0,k.jsx)(_,{ruleText:l})]}),(0,k.jsxs)(c.rjZ,{item:!0,xs:6,children:[0===f.length?(0,k.jsx)(F,{ruleText:u}):S?(0,k.jsx)(B,{ruleText:u}):(0,k.jsx)(_,{ruleText:u}),0===f.length?(0,k.jsx)(F,{ruleText:d}):E?(0,k.jsx)(B,{ruleText:d}):(0,k.jsx)(_,{ruleText:d}),0===f.length?(0,k.jsx)(F,{ruleText:x}):N?(0,k.jsx)(B,{ruleText:x}):(0,k.jsx)(_,{ruleText:x})]})]}),p&&(0,k.jsx)(c.rjZ,{item:!0,xs:12,children:(0,k.jsx)(o.Z,{})})]})},S=n(47974),E=n(31776),N=n(82342),U=n(99670),I=a.ZP.div((function(e){var t=e.theme;return{color:l()(t,"signalColors.danger","#C51B3F"),border:"1px solid ".concat(l()(t,"signalColors.danger","#C51B3F")),padding:8,borderRadius:3}})),O=function(){var e=(0,x.TL)(),t=(0,u.s0)(),n=new RegExp("^[a-z0-9][a-z0-9\\.\\-]{1,61}[a-z0-9]$"),a=new RegExp("^(\\d+\\.){3}\\d+$"),s=(0,h.v9)((function(e){return e.addBucket.name})),l=(0,h.v9)((function(e){return e.addBucket.isDirty})),y=(0,r.useState)([]),B=(0,i.Z)(y,2),_=B[0],F=B[1],O=_.filter((function(e){return!e})).length>0,P=(0,r.useState)([]),w=(0,i.Z)(P,2),z=w[0],R=w[1],q=(0,h.v9)((function(e){return e.addBucket.versioningEnabled})),L=(0,h.v9)((function(e){return e.addBucket.lockingEnabled})),V=(0,h.v9)((function(e){return e.addBucket.quotaEnabled})),K=(0,h.v9)((function(e){return e.addBucket.quotaSize})),A=(0,h.v9)((function(e){return e.addBucket.quotaUnit})),M=(0,h.v9)((function(e){return e.addBucket.retentionEnabled})),G=(0,h.v9)((function(e){return e.addBucket.retentionMode})),D=(0,h.v9)((function(e){return e.addBucket.retentionUnit})),W=(0,h.v9)((function(e){return e.addBucket.retentionValidity})),Y=(0,h.v9)((function(e){return e.addBucket.loading})),J=(0,h.v9)((function(e){return e.addBucket.invalidFields})),Q=(0,h.v9)((function(e){return e.addBucket.lockingFieldDisabled})),$=(0,h.v9)(f.N5),X=(0,h.v9)(f.gw),H=(0,h.v9)((function(e){return e.addBucket.navigateTo})),ee=(0,T.F)("*",[C.Ft.S3_PUT_BUCKET_VERSIONING,C.Ft.S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION,C.Ft.S3_PUT_ACTIONS],!0),te=(0,T.F)("*",[C.Ft.S3_PUT_BUCKET_VERSIONING,C.Ft.S3_PUT_ACTIONS]);(0,r.useEffect)((function(){var e=[!(l&&(s.length<3||s.length>63)),n.test(s),!(s.includes(".-")||s.includes("-.")||s.includes("..")),!a.test(s),!s.startsWith("xn--"),!s.endsWith("-s3alias"),!z.includes(s)];F(e)}),[s,l]),(0,r.useEffect)((function(){e((0,m.qC)("")),e((0,m.hU)(!1));E.h.buckets.listBuckets().then((function(t){if(t.data){var n=[];null!=t.data.buckets&&t.data.buckets.length>0&&t.data.buckets.forEach((function(e){n.push(e.name)})),R(n)}else t.error&&e((0,f.Ih)((0,N.g)(t.error)))})).catch((function(t){e((0,f.Ih)((0,N.g)(t)))}))}),[e]);return(0,r.useEffect)((function(){if(""!==H){var n="".concat(H);e((0,m.Fx)()),t(n)}}),[H,t,e]),(0,r.useEffect)((function(){e((0,f.Sc)("add_bucket"))}),[]),(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)(S.Z,{label:(0,k.jsx)(c.hbI,{label:"Buckets",onClick:function(){return t("/buckets")}}),actions:(0,k.jsx)(U.Z,{})}),(0,k.jsx)(c.Xgh,{children:(0,k.jsx)(c.ltY,{title:"Create Bucket",icon:(0,k.jsx)(c.wNb,{}),helpBox:(0,k.jsx)(c.KfX,{iconComponent:(0,k.jsx)(c.wNb,{}),title:"Buckets",help:(0,k.jsxs)(r.Fragment,{children:["MinIO uses buckets to organize objects. A bucket is similar to a folder or directory in a filesystem, where each bucket can hold an arbitrary number of objects.",(0,k.jsx)("br",{}),(0,k.jsx)("br",{}),(0,k.jsx)("b",{children:"Versioning"})," allows to keep multiple versions of the same object under the same key.",(0,k.jsx)("br",{}),(0,k.jsx)("br",{}),(0,k.jsx)("b",{children:"Object Locking"})," prevents objects from being deleted. Required to support retention and legal hold. Can only be enabled at bucket creation.",(0,k.jsx)("br",{}),(0,k.jsx)("br",{}),(0,k.jsx)("b",{children:"Quota"})," limits the amount of data in the bucket.",ee&&(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)("br",{}),(0,k.jsx)("br",{}),(0,k.jsx)("b",{children:"Retention"})," imposes rules to prevent object deletion for a period of time. Versioning must be enabled in order to set bucket retention policies."]}),(0,k.jsx)("br",{}),(0,k.jsx)("br",{})]})}),children:(0,k.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(t){t.preventDefault(),e((0,p.I)())},children:[(0,k.jsxs)(c.xuv,{children:[(0,k.jsx)(v,{hasErrors:O}),(0,k.jsx)(c.xuv,{sx:{margin:"10px 0"},children:(0,k.jsx)(Z,{errorList:_})}),(0,k.jsx)(g.Z,{children:"Features"}),(0,k.jsxs)(c.xuv,{sx:{marginTop:10},children:[!$&&(0,k.jsxs)(r.Fragment,{children:[(0,k.jsxs)(I,{children:["These features are unavailable in a single-disk setup.",(0,k.jsx)("br",{}),"Please deploy a server in"," ",(0,k.jsx)("a",{href:"https://min.io/docs/minio/linux/operations/install-deploy-manage/deploy-minio-multi-node-multi-drive.html?ref=con",target:"_blank",rel:"noopener",children:"Distributed Mode"})," ","to use these features."]}),(0,k.jsx)("br",{}),(0,k.jsx)("br",{})]}),X.enabled&&(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)("br",{}),(0,k.jsxs)(c.xuv,{withBorders:!0,sx:{display:"flex",alignItems:"center",padding:"10px","& > .min-icon ":{width:20,height:20,marginRight:10}},children:[(0,k.jsx)(c.szr,{})," Versioning setting cannot be changed as cluster replication is enabled for this site."]}),(0,k.jsx)("br",{})]}),(0,k.jsx)(c.rsf,{value:"versioned",id:"versioned",name:"versioned",checked:q,onChange:function(t){e((0,m.E2)(t.target.checked))},label:"Versioning",disabled:!$||L||X.enabled||!te,tooltip:te?L&&q?"You must disable Locking before Versioning can be disabled":"":(0,C.MK)([C.Ft.S3_PUT_BUCKET_VERSIONING,C.Ft.S3_PUT_ACTIONS],"Versioning")}),(0,k.jsx)(c.rsf,{value:"locking",id:"locking",name:"locking",disabled:Q||!$||!ee,checked:L,onChange:function(t){e((0,m.j9)(t.target.checked)),t.target.checked&&!X.enabled&&e((0,m.E2)(!0))},label:"Object Locking",tooltip:ee?"":(0,C.MK)([C.Ft.S3_PUT_BUCKET_VERSIONING,C.Ft.S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION,C.Ft.S3_PUT_ACTIONS],"Locking")}),(0,k.jsx)(c.rsf,{value:"bucket_quota",id:"bucket_quota",name:"bucket_quota",checked:V,onChange:function(t){e((0,m.WC)(t.target.checked))},label:"Quota",disabled:!$}),V&&$&&(0,k.jsx)(r.Fragment,{children:(0,k.jsx)(c.Wzg,{type:"string",id:"quota_size",name:"quota_size",onChange:function(t){e((0,m.Rj)(t.target.value))},label:"Capacity",value:K,required:!0,min:"1",overlayObject:(0,k.jsx)(j.Z,{id:"quota_unit",onUnitChange:function(t){e((0,m.ND)(t))},unitSelected:A,unitsList:(0,d.zQ)(["Ki"]),disabled:!1}),error:J.includes("quotaSize")?"Please enter a valid quota":""})}),q&&$&&ee&&(0,k.jsx)(c.rsf,{value:"bucket_retention",id:"bucket_retention",name:"bucket_retention",checked:M,onChange:function(t){e((0,m.bc)(t.target.checked))},label:"Retention"}),M&&$&&(0,k.jsxs)(r.Fragment,{children:[(0,k.jsx)(c.Eep,{currentValue:G,id:"retention_mode",name:"retention_mode",label:"Mode",onChange:function(t){e((0,m.VK)(t.target.value))},selectorOptions:[{value:"compliance",label:"Compliance"},{value:"governance",label:"Governance"}]}),(0,k.jsx)(c.Wzg,{type:"number",id:"retention_validity",name:"retention_validity",onChange:function(t){e((0,m.Mn)(t.target.valueAsNumber))},label:"Validity",value:String(W),required:!0,overlayObject:(0,k.jsx)(j.Z,{id:"retention_unit",onUnitChange:function(t){e((0,m.hx)(t))},unitSelected:D,unitsList:[{value:"days",label:"Days"},{value:"years",label:"Years"}],disabled:!1})})]})]})]}),(0,k.jsxs)(c.rjZ,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:10,marginTop:15},children:[(0,k.jsx)(c.zxk,{id:"clear",type:"button",variant:"regular",className:"clearButton",onClick:function(){e((0,m.Fx)())},label:"Clear"}),(0,k.jsx)(b.Z,{tooltip:J.length>0||!l||O?"You must apply a valid name to the bucket":"",children:(0,k.jsx)(c.zxk,{id:"create-bucket",type:"submit",variant:"callAction",color:"primary",disabled:Y||J.length>0||!l||O,label:"Create Bucket"})})]}),Y&&(0,k.jsx)(c.rjZ,{item:!0,xs:12,children:(0,k.jsx)(o.Z,{})})]})})})]})}},84741:function(e,t,n){var i=n(29439),r=n(72791),a=n(11135),s=n(25787),l=n(71715),o=n(77865),u=n(80184);t.Z=(0,s.Z)((function(e){return(0,a.Z)({buttonTrigger:{border:"#F0F2F2 1px solid",borderRadius:3,color:"#838383",backgroundColor:"#fff",fontSize:12}})}))((function(e){var t=e.classes,n=e.id,a=e.unitSelected,s=e.unitsList,c=e.disabled,d=void 0!==c&&c,x=e.onUnitChange,h=r.useState(null),f=(0,i.Z)(h,2),j=f[0],b=f[1],g=Boolean(j),m=function(e){b(null),""!==e&&x&&x(e)};return(0,u.jsxs)(r.Fragment,{children:[(0,u.jsx)("button",{id:"".concat(n,"-button"),"aria-controls":"".concat(n,"-menu"),"aria-haspopup":"true","aria-expanded":g?"true":void 0,onClick:function(e){b(e.currentTarget)},className:t.buttonTrigger,disabled:d,type:"button",children:a}),(0,u.jsx)(l.Z,{id:"".concat(n,"-menu"),"aria-labelledby":"".concat(n,"-button"),anchorEl:j,open:g,onClose:function(){m("")},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:s.map((function(e){return(0,u.jsx)(o.Z,{onClick:function(){return m(e.value)},children:e.label},"itemUnit-".concat(e.value,"-").concat(e.label))}))})]})}))}}]); +//# sourceMappingURL=977.90d83636.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/977.90d83636.chunk.js.map b/portal-ui/build/static/js/977.90d83636.chunk.js.map new file mode 100644 index 000000000..87c0c92d8 --- /dev/null +++ b/portal-ui/build/static/js/977.90d83636.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/977.90d83636.chunk.js","mappings":"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","sources":["screens/Console/Buckets/ListBuckets/AddBucket/AddBucketName.tsx","screens/Console/Buckets/ListBuckets/AddBucket/ValidRule.tsx","screens/Console/Buckets/ListBuckets/AddBucket/InvalidRule.tsx","screens/Console/Buckets/ListBuckets/AddBucket/NARule.tsx","screens/Console/Buckets/ListBuckets/AddBucket/BucketNamingRules.tsx","screens/Console/Buckets/ListBuckets/AddBucket/AddBucket.tsx","screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { InputBox } from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { setIsDirty, setName } from \"./addBucketsSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\n\nconst AddBucketName = ({ hasErrors }: { hasErrors: boolean }) => {\n const dispatch = useAppDispatch();\n\n const bucketName = useSelector((state: AppState) => state.addBucket.name);\n return (\n {\n dispatch(setIsDirty(true));\n }}\n onChange={(event: React.ChangeEvent) => {\n dispatch(setName(event.target.value));\n }}\n label=\"Bucket Name\"\n value={bucketName}\n required\n />\n );\n};\n\nexport default AddBucketName;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { ConfirmModalIcon } from \"mds\";\n\ninterface IValidRule {\n ruleText: string;\n}\n\nconst ValidRule = ({ ruleText }: IValidRule) => {\n return (\n \n \n \n \n \n \n {ruleText}\n \n \n \n );\n};\n\nexport default ValidRule;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { ConfirmDeleteIcon } from \"mds\";\n\ninterface IInvalidRule {\n ruleText: string;\n}\n\nconst InvalidRule = ({ ruleText }: IInvalidRule) => {\n return (\n \n \n \n \n \n \n {ruleText}\n \n \n \n );\n};\n\nexport default InvalidRule;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { CircleIcon } from \"mds\";\n\ninterface INARule {\n ruleText: string;\n}\n\nconst NARule = ({ ruleText }: INARule) => {\n return (\n \n \n \n \n \n \n {ruleText}\n \n \n \n );\n};\n\nexport default NARule;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Grid, ExpandOptionsButton } from \"mds\";\nimport { LinearProgress } from \"@mui/material\";\nimport { AppState } from \"../../../../../store\";\nimport { useSelector } from \"react-redux\";\nimport ValidRule from \"./ValidRule\";\nimport InvalidRule from \"./InvalidRule\";\nimport NARule from \"./NARule\";\n\nconst BucketNamingRules = ({ errorList }: { errorList: boolean[] }) => {\n const lengthRuleText =\n \"Bucket names must be between 3 (min) and 63 (max) characters long.\";\n const characterRuleText =\n \"Bucket names can consist only of lowercase letters, numbers, dots (.), and hyphens (-).\";\n const periodRuleText =\n \"Bucket names must not contain two adjacent periods, or a period adjacent to a hyphen.\";\n const ipRuleText =\n \"Bucket names must not be formatted as an IP address (for example, 192.168.5.4).\";\n const prefixRuleText = \"Bucket names must not start with the prefix xn--.\";\n const suffixRuleText =\n \"Bucket names must not end with the suffix -s3alias. This suffix is reserved for access point alias names.\";\n const uniqueRuleText = \"Bucket names must be unique within a partition.\";\n\n const bucketName = useSelector((state: AppState) => state.addBucket.name);\n\n const [showNamingRules, setShowNamingRules] = useState(false);\n\n const addLoading = useSelector((state: AppState) => state.addBucket.loading);\n\n const [\n lengthRule,\n validCharacters,\n noAdjacentPeriods,\n notIPFormat,\n noPrefix,\n noSuffix,\n uniqueName,\n ] = errorList;\n\n const toggleNamingRules = () => {\n setShowNamingRules(!showNamingRules);\n };\n\n return (\n \n {\n toggleNamingRules();\n }}\n />\n {showNamingRules && (\n \n \n {bucketName.length === 0 ? (\n \n ) : lengthRule ? (\n \n ) : (\n \n )}\n {bucketName.length === 0 ? (\n \n ) : validCharacters ? (\n \n ) : (\n \n )}\n {bucketName.length === 0 ? (\n \n ) : noAdjacentPeriods ? (\n \n ) : (\n \n )}\n {bucketName.length === 0 ? (\n \n ) : notIPFormat ? (\n \n ) : (\n \n )}\n \n \n {bucketName.length === 0 ? (\n \n ) : noPrefix ? (\n \n ) : (\n \n )}\n\n {bucketName.length === 0 ? (\n \n ) : noSuffix ? (\n \n ) : (\n \n )}\n\n {bucketName.length === 0 ? (\n \n ) : uniqueName ? (\n \n ) : (\n \n )}\n \n \n )}\n\n {addLoading && (\n \n \n \n )}\n \n );\n};\n\nexport default BucketNamingRules;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { LinearProgress } from \"@mui/material\";\nimport { useNavigate } from \"react-router-dom\";\nimport {\n BackLink,\n Box,\n BucketsIcon,\n Button,\n FormLayout,\n Grid,\n HelpBox,\n InfoIcon,\n InputBox,\n PageLayout,\n RadioGroup,\n Switch,\n} from \"mds\";\nimport { k8sScalarUnitsExcluding } from \"../../../../../common/utils\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\nimport { useSelector } from \"react-redux\";\nimport {\n selDistSet,\n selSiteRep,\n setErrorSnackMessage,\n setHelpName,\n} from \"../../../../../systemSlice\";\nimport InputUnitMenu from \"../../../Common/FormComponents/InputUnitMenu/InputUnitMenu\";\nimport TooltipWrapper from \"../../../Common/TooltipWrapper/TooltipWrapper\";\nimport SectionTitle from \"../../../Common/SectionTitle\";\nimport {\n resetForm,\n setEnableObjectLocking,\n setIsDirty,\n setName,\n setQuota,\n setQuotaSize,\n setQuotaUnit,\n setRetention,\n setRetentionMode,\n setRetentionUnit,\n setRetentionValidity,\n setVersioning,\n} from \"./addBucketsSlice\";\nimport { addBucketAsync } from \"./addBucketThunks\";\nimport AddBucketName from \"./AddBucketName\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../common/SecureComponent/permissions\";\nimport { hasPermission } from \"../../../../../common/SecureComponent\";\nimport BucketNamingRules from \"./BucketNamingRules\";\nimport PageHeaderWrapper from \"../../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport { api } from \"../../../../../api\";\nimport {\n Error,\n HttpResponse,\n ListBucketsResponse,\n ObjectRetentionMode,\n} from \"../../../../../api/consoleApi\";\nimport { errorToHandler } from \"../../../../../api/errors\";\nimport HelpMenu from \"../../../HelpMenu\";\n\nconst ErrorBox = styled.div(({ theme }) => ({\n color: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n border: `1px solid ${get(theme, \"signalColors.danger\", \"#C51B3F\")}`,\n padding: 8,\n borderRadius: 3,\n}));\n\nconst AddBucket = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const validBucketCharacters = new RegExp(\n `^[a-z0-9][a-z0-9\\\\.\\\\-]{1,61}[a-z0-9]$`,\n );\n const ipAddressFormat = new RegExp(`^(\\\\d+\\\\.){3}\\\\d+$`);\n const bucketName = useSelector((state: AppState) => state.addBucket.name);\n const isDirty = useSelector((state: AppState) => state.addBucket.isDirty);\n const [validationResult, setValidationResult] = useState([]);\n const errorList = validationResult.filter((v) => !v);\n const hasErrors = errorList.length > 0;\n const [records, setRecords] = useState([]);\n const versioningEnabled = useSelector(\n (state: AppState) => state.addBucket.versioningEnabled,\n );\n const lockingEnabled = useSelector(\n (state: AppState) => state.addBucket.lockingEnabled,\n );\n const quotaEnabled = useSelector(\n (state: AppState) => state.addBucket.quotaEnabled,\n );\n const quotaSize = useSelector((state: AppState) => state.addBucket.quotaSize);\n const quotaUnit = useSelector((state: AppState) => state.addBucket.quotaUnit);\n const retentionEnabled = useSelector(\n (state: AppState) => state.addBucket.retentionEnabled,\n );\n const retentionMode = useSelector(\n (state: AppState) => state.addBucket.retentionMode,\n );\n const retentionUnit = useSelector(\n (state: AppState) => state.addBucket.retentionUnit,\n );\n const retentionValidity = useSelector(\n (state: AppState) => state.addBucket.retentionValidity,\n );\n const addLoading = useSelector((state: AppState) => state.addBucket.loading);\n const invalidFields = useSelector(\n (state: AppState) => state.addBucket.invalidFields,\n );\n const lockingFieldDisabled = useSelector(\n (state: AppState) => state.addBucket.lockingFieldDisabled,\n );\n const distributedSetup = useSelector(selDistSet);\n const siteReplicationInfo = useSelector(selSiteRep);\n const navigateTo = useSelector(\n (state: AppState) => state.addBucket.navigateTo,\n );\n\n const lockingAllowed = hasPermission(\n \"*\",\n [\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n true,\n );\n\n const versioningAllowed = hasPermission(\"*\", [\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n useEffect(() => {\n const bucketNameErrors = [\n !(isDirty && (bucketName.length < 3 || bucketName.length > 63)),\n validBucketCharacters.test(bucketName),\n !(\n bucketName.includes(\".-\") ||\n bucketName.includes(\"-.\") ||\n bucketName.includes(\"..\")\n ),\n !ipAddressFormat.test(bucketName),\n !bucketName.startsWith(\"xn--\"),\n !bucketName.endsWith(\"-s3alias\"),\n !records.includes(bucketName),\n ];\n setValidationResult(bucketNameErrors);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [bucketName, isDirty]);\n\n useEffect(() => {\n dispatch(setName(\"\"));\n dispatch(setIsDirty(false));\n const fetchRecords = () => {\n api.buckets\n .listBuckets()\n .then((res: HttpResponse) => {\n if (res.data) {\n var bucketList: string[] = [];\n if (res.data.buckets != null && res.data.buckets.length > 0) {\n res.data.buckets.forEach((bucket) => {\n bucketList.push(bucket.name);\n });\n }\n setRecords(bucketList);\n } else if (res.error) {\n dispatch(setErrorSnackMessage(errorToHandler(res.error)));\n }\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n });\n };\n fetchRecords();\n }, [dispatch]);\n\n const resForm = () => {\n dispatch(resetForm());\n };\n\n useEffect(() => {\n if (navigateTo !== \"\") {\n const goTo = `${navigateTo}`;\n dispatch(resetForm());\n navigate(goTo);\n }\n }, [navigateTo, navigate, dispatch]);\n\n useEffect(() => {\n dispatch(setHelpName(\"add_bucket\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n navigate(\"/buckets\")} />\n }\n actions={}\n />\n \n }\n helpBox={\n }\n title={\"Buckets\"}\n help={\n \n MinIO uses buckets to organize objects. A bucket is similar to\n a folder or directory in a filesystem, where each bucket can\n hold an arbitrary number of objects.\n
\n
\n Versioning allows to keep multiple versions of the same\n object under the same key.\n
\n
\n Object Locking prevents objects from being deleted.\n Required to support retention and legal hold. Can only be\n enabled at bucket creation.\n
\n
\n Quota limits the amount of data in the bucket.\n {lockingAllowed && (\n \n
\n
\n Retention imposes rules to prevent object deletion\n for a period of time. Versioning must be enabled in order\n to set bucket retention policies.\n
\n )}\n
\n
\n
\n }\n />\n }\n >\n ) => {\n e.preventDefault();\n dispatch(addBucketAsync());\n }}\n >\n \n \n \n \n \n Features\n \n {!distributedSetup && (\n \n \n These features are unavailable in a single-disk setup.\n
\n Please deploy a server in{\" \"}\n \n Distributed Mode\n {\" \"}\n to use these features.\n
\n
\n
\n
\n )}\n\n {siteReplicationInfo.enabled && (\n \n
\n .min-icon \": {\n width: 20,\n height: 20,\n marginRight: 10,\n },\n }}\n >\n Versioning setting cannot be changed as\n cluster replication is enabled for this site.\n
\n
\n
\n )}\n ) => {\n dispatch(setVersioning(event.target.checked));\n }}\n label={\"Versioning\"}\n disabled={\n !distributedSetup ||\n lockingEnabled ||\n siteReplicationInfo.enabled ||\n !versioningAllowed\n }\n tooltip={\n versioningAllowed\n ? lockingEnabled && versioningEnabled\n ? \"You must disable Locking before Versioning can be disabled\"\n : \"\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"Versioning\",\n )\n }\n />\n ) => {\n dispatch(setEnableObjectLocking(event.target.checked));\n if (event.target.checked && !siteReplicationInfo.enabled) {\n dispatch(setVersioning(true));\n }\n }}\n label={\"Object Locking\"}\n tooltip={\n lockingAllowed\n ? \"\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"Locking\",\n )\n }\n />\n ) => {\n dispatch(setQuota(event.target.checked));\n }}\n label={\"Quota\"}\n disabled={!distributedSetup}\n />\n {quotaEnabled && distributedSetup && (\n \n ) => {\n dispatch(setQuotaSize(e.target.value));\n }}\n label=\"Capacity\"\n value={quotaSize}\n required\n min=\"1\"\n overlayObject={\n {\n dispatch(setQuotaUnit(newValue));\n }}\n unitSelected={quotaUnit}\n unitsList={k8sScalarUnitsExcluding([\"Ki\"])}\n disabled={false}\n />\n }\n error={\n invalidFields.includes(\"quotaSize\")\n ? \"Please enter a valid quota\"\n : \"\"\n }\n />\n \n )}\n {versioningEnabled && distributedSetup && lockingAllowed && (\n ) => {\n dispatch(setRetention(event.target.checked));\n }}\n label={\"Retention\"}\n />\n )}\n {retentionEnabled && distributedSetup && (\n \n ) => {\n dispatch(\n setRetentionMode(\n e.target.value as ObjectRetentionMode,\n ),\n );\n }}\n selectorOptions={[\n { value: \"compliance\", label: \"Compliance\" },\n { value: \"governance\", label: \"Governance\" },\n ]}\n />\n ) => {\n dispatch(setRetentionValidity(e.target.valueAsNumber));\n }}\n label=\"Validity\"\n value={String(retentionValidity)}\n required\n overlayObject={\n {\n dispatch(setRetentionUnit(newValue));\n }}\n unitSelected={retentionUnit}\n unitsList={[\n { value: \"days\", label: \"Days\" },\n { value: \"years\", label: \"Years\" },\n ]}\n disabled={false}\n />\n }\n />\n \n )}\n \n \n \n \n 0 || !isDirty || hasErrors\n ? \"You must apply a valid name to the bucket\"\n : \"\"\n }\n >\n 0 ||\n !isDirty ||\n hasErrors\n }\n label={\"Create Bucket\"}\n />\n \n \n {addLoading && (\n \n \n \n )}\n \n \n \n
\n );\n};\n\nexport default AddBucket;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { selectorTypes } from \"../SelectWrapper/SelectWrapper\";\nimport { Menu, MenuItem } from \"@mui/material\";\n\ninterface IInputUnitBox {\n classes: any;\n id: string;\n unitSelected: string;\n unitsList: selectorTypes[];\n disabled?: boolean;\n onUnitChange?: (newValue: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonTrigger: {\n border: \"#F0F2F2 1px solid\",\n borderRadius: 3,\n color: \"#838383\",\n backgroundColor: \"#fff\",\n fontSize: 12,\n },\n });\n\nconst InputUnitMenu = ({\n classes,\n id,\n unitSelected,\n unitsList,\n disabled = false,\n onUnitChange,\n}: IInputUnitBox) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (newUnit: string) => {\n setAnchorEl(null);\n if (newUnit !== \"\" && onUnitChange) {\n onUnitChange(newUnit);\n }\n };\n\n return (\n \n \n {unitSelected}\n \n {\n handleClose(\"\");\n }}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"center\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"center\",\n }}\n >\n {unitsList.map((unit) => (\n handleClose(unit.value)}\n key={`itemUnit-${unit.value}-${unit.label}`}\n >\n {unit.label}\n \n ))}\n \n \n );\n};\n\nexport default withStyles(styles)(InputUnitMenu);\n"],"names":["_ref","hasErrors","dispatch","useAppDispatch","bucketName","useSelector","state","addBucket","name","_jsx","InputBox","id","error","onFocus","setIsDirty","onChange","event","setName","target","value","label","required","ruleText","Fragment","children","_jsxs","Grid","container","style","display","justifyContent","item","xs","paddingRight","ConfirmModalIcon","width","height","color","paddingLeft","ConfirmDeleteIcon","CircleIcon","errorList","lengthRuleText","characterRuleText","periodRuleText","ipRuleText","prefixRuleText","suffixRuleText","uniqueRuleText","_useState","useState","_useState2","_slicedToArray","showNamingRules","setShowNamingRules","addLoading","loading","_errorList","lengthRule","validCharacters","noAdjacentPeriods","notIPFormat","noPrefix","noSuffix","uniqueName","ExpandOptionsButton","open","concat","onClick","sx","fontSize","paddingTop","length","NARule","ValidRule","InvalidRule","LinearProgress","ErrorBox","styled","div","theme","get","border","padding","borderRadius","navigate","useNavigate","validBucketCharacters","RegExp","ipAddressFormat","isDirty","validationResult","setValidationResult","filter","v","_useState3","_useState4","records","setRecords","versioningEnabled","lockingEnabled","quotaEnabled","quotaSize","quotaUnit","retentionEnabled","retentionMode","retentionUnit","retentionValidity","invalidFields","lockingFieldDisabled","distributedSetup","selDistSet","siteReplicationInfo","selSiteRep","navigateTo","lockingAllowed","hasPermission","IAM_SCOPES","S3_PUT_BUCKET_VERSIONING","S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION","S3_PUT_ACTIONS","versioningAllowed","useEffect","bucketNameErrors","test","includes","startsWith","endsWith","api","buckets","listBuckets","then","res","data","bucketList","forEach","bucket","push","setErrorSnackMessage","errorToHandler","catch","err","goTo","resetForm","setHelpName","PageHeaderWrapper","BackLink","actions","HelpMenu","PageLayout","FormLayout","title","icon","BucketsIcon","helpBox","HelpBox","iconComponent","help","noValidate","autoComplete","onSubmit","e","preventDefault","addBucketAsync","Box","AddBucketName","margin","BucketNamingRules","SectionTitle","marginTop","href","rel","enabled","withBorders","alignItems","marginRight","InfoIcon","Switch","checked","setVersioning","disabled","tooltip","permissionTooltipHelper","setEnableObjectLocking","setQuota","type","setQuotaSize","min","overlayObject","InputUnitMenu","onUnitChange","newValue","setQuotaUnit","unitSelected","unitsList","k8sScalarUnitsExcluding","setRetention","RadioGroup","currentValue","setRetentionMode","selectorOptions","setRetentionValidity","valueAsNumber","String","setRetentionUnit","gap","Button","variant","className","TooltipWrapper","withStyles","createStyles","buttonTrigger","backgroundColor","classes","_ref$disabled","_React$useState","React","_React$useState2","anchorEl","setAnchorEl","Boolean","handleClose","newUnit","undefined","currentTarget","Menu","onClose","anchorOrigin","vertical","horizontal","transformOrigin","map","unit","MenuItem"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/977.fa8b33fa.chunk.js b/portal-ui/build/static/js/977.fa8b33fa.chunk.js deleted file mode 100644 index 756ffe29e..000000000 --- a/portal-ui/build/static/js/977.fa8b33fa.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[977],{10977:function(e,t,n){n.r(t),n.d(t,{default:function(){return R}});var i=n(29439),r=n(1413),a=n(72791),o=n(61889),s=n(40986),l=n(57689),c=n(29945),d=n(23814),u=n(21435),x=n(83679),h=n(45248),b=n(81551),m=n(78687),p=n(81159),j=n(87995),f=n(84741),g=n(27454),v=n(50896),Z=n(64561),k=n(92717),C=n(80184),y=function(e){var t=e.hasErrors,n=(0,b.TL)(),i=(0,m.v9)((function(e){return e.addBucket.name}));return(0,C.jsx)(u.Z,{id:"bucket-name",name:"bucket-name",error:t?"Invalid bucket name":"",onFocus:function(){n((0,Z.hU)(!0))},onChange:function(e){n((0,Z.qC)(e.target.value))},label:"Bucket Name",value:i,required:!0})},F=n(56087),T=n(38442),P=function(e){var t=e.ruleText;return(0,C.jsx)(a.Fragment,{children:(0,C.jsxs)(o.ZP,{container:!0,style:{display:"flex",justifyContent:"flex-start"},children:[(0,C.jsx)(o.ZP,{item:!0,xs:1,paddingRight:1,children:(0,C.jsx)(c.EjK,{width:"16px",height:"16px",style:{color:"#18BF42"}})}),(0,C.jsx)(o.ZP,{item:!0,xs:9,paddingLeft:1,style:{color:"#8f949c",display:"flex",justifyContent:"flex-start"},children:t})]})})},B=function(e){var t=e.ruleText;return(0,C.jsx)(a.Fragment,{children:(0,C.jsxs)(o.ZP,{container:!0,style:{color:"#C83B51",display:"flex",justifyContent:"flex-start"},children:[(0,C.jsx)(o.ZP,{item:!0,xs:1,paddingRight:1,children:(0,C.jsx)(c.NvT,{width:"16px",height:"16px"})}),(0,C.jsx)(o.ZP,{item:!0,xs:9,paddingLeft:1,style:{color:"#C83B51",display:"flex",justifyContent:"flex-start"},children:t})]})})},N=function(e){var t=e.ruleText;return(0,C.jsx)(a.Fragment,{children:(0,C.jsxs)(o.ZP,{container:!0,style:{display:"flex",justifyContent:"flex-start"},children:[(0,C.jsx)(o.ZP,{item:!0,xs:1,paddingRight:1,children:(0,C.jsx)(c.J$M,{width:"12px",height:"12px",style:{color:"#8f949c"}})}),(0,C.jsx)(o.ZP,{item:!0,xs:9,paddingLeft:1,style:{color:"#8f949c",display:"flex",justifyContent:"flex-start"},children:t})]})})},_=function(e){var t=e.errorList,n="Bucket names must be between 3 (min) and 63 (max) characters long.",r="Bucket names can consist only of lowercase letters, numbers, dots (.), and hyphens (-).",l="Bucket names must not contain two adjacent periods, or a period adjacent to a hyphen.",d="Bucket names must not be formatted as an IP address (for example, 192.168.5.4).",u="Bucket names must not start with the prefix xn--.",x="Bucket names must not end with the suffix -s3alias. This suffix is reserved for access point alias names.",h="Bucket names must be unique within a partition.",b=(0,m.v9)((function(e){return e.addBucket.name})),p=(0,a.useState)(!1),j=(0,i.Z)(p,2),f=j[0],g=j[1],v=(0,m.v9)((function(e){return e.addBucket.loading})),Z=(0,i.Z)(t,7),k=Z[0],y=Z[1],F=Z[2],T=Z[3],_=Z[4],S=Z[5],E=Z[6];return(0,C.jsxs)(a.Fragment,{children:[(0,C.jsx)(c.zxk,{type:"button",id:"toggle-naming-rules",onClick:function(){g(!f)},icon:f?(0,C.jsx)(c.ZyT,{}):(0,C.jsx)(c.ASC,{}),label:(f?"Hide":"View")+" Bucket Naming Rules",style:{height:"10px",width:"200px",textAlign:"left",paddingLeft:0,fontSize:"9px",border:"none"}}),f&&(0,C.jsxs)(o.ZP,{container:!0,fontSize:14,paddingTop:2,children:[(0,C.jsxs)(o.ZP,{item:!0,xs:6,children:[0===b.length?(0,C.jsx)(N,{ruleText:n}):k?(0,C.jsx)(P,{ruleText:n}):(0,C.jsx)(B,{ruleText:n}),0===b.length?(0,C.jsx)(N,{ruleText:r}):y?(0,C.jsx)(P,{ruleText:r}):(0,C.jsx)(B,{ruleText:r}),0===b.length?(0,C.jsx)(N,{ruleText:l}):F?(0,C.jsx)(P,{ruleText:l}):(0,C.jsx)(B,{ruleText:l}),0===b.length?(0,C.jsx)(N,{ruleText:d}):T?(0,C.jsx)(P,{ruleText:d}):(0,C.jsx)(B,{ruleText:d})]}),(0,C.jsxs)(o.ZP,{item:!0,xs:6,children:[0===b.length?(0,C.jsx)(N,{ruleText:u}):_?(0,C.jsx)(P,{ruleText:u}):(0,C.jsx)(B,{ruleText:u}),0===b.length?(0,C.jsx)(N,{ruleText:x}):S?(0,C.jsx)(P,{ruleText:x}):(0,C.jsx)(B,{ruleText:x}),0===b.length?(0,C.jsx)(N,{ruleText:h}):E?(0,C.jsx)(P,{ruleText:h}):(0,C.jsx)(B,{ruleText:h})]})]}),v&&(0,C.jsx)(o.ZP,{item:!0,xs:12,children:(0,C.jsx)(s.Z,{})})]})},S=n(47974),E=n(31776),I=n(82342),L=n(72455),w=n(99670),O=(0,L.Z)((function(e){return(0,r.Z)((0,r.Z)({buttonContainer:{marginTop:24,display:"flex",justifyContent:"flex-end","& button":{marginLeft:8}},error:{color:"#b53b4b",border:"1px solid #b53b4b",padding:8,borderRadius:3},alertVersioning:{border:"#E2E2E2 1px solid",backgroundColor:"#FBFAFA",borderRadius:3,display:"flex",alignItems:"center",padding:"10px",color:"#767676","& > .min-icon ":{width:20,height:20,marginRight:10}},h6title:{fontWeight:"bold",color:"#000000",fontSize:20}},d.Bz),d.oO)})),R=function(){var e=(0,b.TL)(),t=(0,l.s0)(),n=O(),r=new RegExp("^[a-z0-9][a-z0-9\\.\\-]{1,61}[a-z0-9]$"),d=new RegExp("^(\\d+\\.){3}\\d+$"),P=(0,m.v9)((function(e){return e.addBucket.name})),B=(0,m.v9)((function(e){return e.addBucket.isDirty})),N=(0,a.useState)([]),L=(0,i.Z)(N,2),R=L[0],U=L[1],z=R.filter((function(e){return!e})).length>0,A=(0,a.useState)([]),q=(0,i.Z)(A,2),K=q[0],V=q[1],M=(0,m.v9)((function(e){return e.addBucket.versioningEnabled})),W=(0,m.v9)((function(e){return e.addBucket.lockingEnabled})),D=(0,m.v9)((function(e){return e.addBucket.quotaEnabled})),G=(0,m.v9)((function(e){return e.addBucket.quotaSize})),Y=(0,m.v9)((function(e){return e.addBucket.quotaUnit})),$=(0,m.v9)((function(e){return e.addBucket.retentionEnabled})),H=(0,m.v9)((function(e){return e.addBucket.retentionMode})),J=(0,m.v9)((function(e){return e.addBucket.retentionUnit})),Q=(0,m.v9)((function(e){return e.addBucket.retentionValidity})),X=(0,m.v9)((function(e){return e.addBucket.loading})),ee=(0,m.v9)((function(e){return e.addBucket.invalidFields})),te=(0,m.v9)((function(e){return e.addBucket.lockingFieldDisabled})),ne=(0,m.v9)(j.N5),ie=(0,m.v9)(j.gw),re=(0,m.v9)((function(e){return e.addBucket.navigateTo})),ae=(0,T.F)("*",[F.Ft.S3_PUT_BUCKET_VERSIONING,F.Ft.S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION,F.Ft.S3_PUT_ACTIONS],!0),oe=(0,T.F)("*",[F.Ft.S3_PUT_BUCKET_VERSIONING,F.Ft.S3_PUT_ACTIONS]);(0,a.useEffect)((function(){var e=[!(B&&(P.length<3||P.length>63)),r.test(P),!(P.includes(".-")||P.includes("-.")||P.includes("..")),!d.test(P),!P.startsWith("xn--"),!P.endsWith("-s3alias"),!K.includes(P)];U(e)}),[P,B]),(0,a.useEffect)((function(){e((0,Z.qC)("")),e((0,Z.hU)(!1));E.h.buckets.listBuckets().then((function(t){if(t.data){var n=[];null!=t.data.buckets&&t.data.buckets.length>0&&t.data.buckets.forEach((function(e){n.push(e.name)})),V(n)}else t.error&&e((0,j.Ih)((0,I.g)(t.error)))})).catch((function(t){e((0,j.Ih)((0,I.g)(t)))}))}),[e]);return(0,a.useEffect)((function(){if(""!==re){var n="".concat(re);e((0,Z.Fx)()),t(n)}}),[re,t,e]),(0,a.useEffect)((function(){e((0,j.Sc)("add_bucket"))}),[]),(0,C.jsxs)(a.Fragment,{children:[(0,C.jsx)(S.Z,{label:(0,C.jsx)(c.hbI,{label:"Buckets",onClick:function(){return t("/buckets")}}),actions:(0,C.jsx)(w.Z,{})}),(0,C.jsx)(c.Xgh,{children:(0,C.jsx)(c.ltY,{title:"Create Bucket",icon:(0,C.jsx)(c.wNb,{}),helpBox:(0,C.jsx)(c.KfX,{iconComponent:(0,C.jsx)(c.wNb,{}),title:"Buckets",help:(0,C.jsxs)(a.Fragment,{children:["MinIO uses buckets to organize objects. A bucket is similar to a folder or directory in a filesystem, where each bucket can hold an arbitrary number of objects.",(0,C.jsx)("br",{}),(0,C.jsx)("br",{}),(0,C.jsx)("b",{children:"Versioning"})," allows to keep multiple versions of the same object under the same key.",(0,C.jsx)("br",{}),(0,C.jsx)("br",{}),(0,C.jsx)("b",{children:"Object Locking"})," prevents objects from being deleted. Required to support retention and legal hold. Can only be enabled at bucket creation.",(0,C.jsx)("br",{}),(0,C.jsx)("br",{}),(0,C.jsx)("b",{children:"Quota"})," limits the amount of data in the bucket.",ae&&(0,C.jsxs)(a.Fragment,{children:[(0,C.jsx)("br",{}),(0,C.jsx)("br",{}),(0,C.jsx)("b",{children:"Retention"})," imposes rules to prevent object deletion for a period of time. Versioning must be enabled in order to set bucket retention policies."]}),(0,C.jsx)("br",{}),(0,C.jsx)("br",{})]})}),children:(0,C.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(t){t.preventDefault(),e((0,k.I)())},children:[(0,C.jsxs)(o.ZP,{container:!0,marginTop:1,spacing:2,children:[(0,C.jsx)(o.ZP,{item:!0,xs:12,children:(0,C.jsx)(y,{hasErrors:z})}),(0,C.jsx)(o.ZP,{item:!0,xs:12,children:(0,C.jsx)(_,{errorList:R})}),(0,C.jsxs)(o.ZP,{item:!0,xs:12,children:[(0,C.jsx)(v.Z,{children:"Features"}),!ne&&(0,C.jsxs)(a.Fragment,{children:[(0,C.jsxs)("div",{className:n.error,children:["These features are unavailable in a single-disk setup.",(0,C.jsx)("br",{}),"Please deploy a server in"," ",(0,C.jsx)("a",{href:"https://min.io/docs/minio/linux/operations/install-deploy-manage/deploy-minio-multi-node-multi-drive.html?ref=con",target:"_blank",rel:"noopener",children:"Distributed Mode"})," ","to use these features."]}),(0,C.jsx)("br",{}),(0,C.jsx)("br",{})]})]}),(0,C.jsxs)(o.ZP,{item:!0,xs:12,children:[ie.enabled&&(0,C.jsxs)(a.Fragment,{children:[(0,C.jsx)("br",{}),(0,C.jsxs)("div",{className:n.alertVersioning,children:[(0,C.jsx)(c.szr,{})," Versioning setting cannot be changed as cluster replication is enabled for this site."]}),(0,C.jsx)("br",{})]}),(0,C.jsx)(g.Z,{tooltip:oe?W&&M?"You must disable Locking before Versioning can be disabled":"":(0,F.MK)([F.Ft.S3_PUT_BUCKET_VERSIONING,F.Ft.S3_PUT_ACTIONS],"Versioning"),children:(0,C.jsx)(p.Z,{value:"versioned",id:"versioned",name:"versioned",checked:M,onChange:function(t){e((0,Z.E2)(t.target.checked))},label:"Versioning",disabled:!ne||W||ie.enabled||!oe})})]}),(0,C.jsx)(o.ZP,{item:!0,xs:12,children:(0,C.jsx)(g.Z,{tooltip:ae?"":(0,F.MK)([F.Ft.S3_PUT_BUCKET_VERSIONING,F.Ft.S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION,F.Ft.S3_PUT_ACTIONS],"Locking"),children:(0,C.jsx)(p.Z,{value:"locking",id:"locking",name:"locking",disabled:te||!ne||!ae,checked:W,onChange:function(t){e((0,Z.j9)(t.target.checked)),t.target.checked&&!ie.enabled&&e((0,Z.E2)(!0))},label:"Object Locking"})})}),(0,C.jsx)(o.ZP,{item:!0,xs:12,children:(0,C.jsx)(p.Z,{value:"bucket_quota",id:"bucket_quota",name:"bucket_quota",checked:D,onChange:function(t){e((0,Z.WC)(t.target.checked))},label:"Quota",disabled:!ne})}),D&&ne&&(0,C.jsx)(a.Fragment,{children:(0,C.jsx)(o.ZP,{item:!0,xs:12,children:(0,C.jsx)(u.Z,{type:"string",id:"quota_size",name:"quota_size",onChange:function(t){e((0,Z.Rj)(t.target.value))},label:"Capacity",value:G,required:!0,min:"1",overlayObject:(0,C.jsx)(f.Z,{id:"quota_unit",onUnitChange:function(t){e((0,Z.ND)(t))},unitSelected:Y,unitsList:(0,h.zQ)(["Ki"]),disabled:!1}),error:ee.includes("quotaSize")?"Please enter a valid quota":""})})}),M&&ne&&ae&&(0,C.jsx)(o.ZP,{item:!0,xs:12,children:(0,C.jsx)(p.Z,{value:"bucket_retention",id:"bucket_retention",name:"bucket_retention",checked:$,onChange:function(t){e((0,Z.bc)(t.target.checked))},label:"Retention"})}),$&&ne&&(0,C.jsxs)(a.Fragment,{children:[(0,C.jsx)(o.ZP,{item:!0,xs:12,children:(0,C.jsx)(x.Z,{currentSelection:H,id:"retention_mode",name:"retention_mode",label:"Mode",onChange:function(t){e((0,Z.VK)(t.target.value))},selectorOptions:[{value:"compliance",label:"Compliance"},{value:"governance",label:"Governance"}]})}),(0,C.jsx)(o.ZP,{item:!0,xs:12,children:(0,C.jsx)(u.Z,{type:"number",id:"retention_validity",name:"retention_validity",onChange:function(t){e((0,Z.Mn)(t.target.valueAsNumber))},label:"Validity",value:String(Q),required:!0,overlayObject:(0,C.jsx)(f.Z,{id:"retention_unit",onUnitChange:function(t){e((0,Z.hx)(t))},unitSelected:J,unitsList:[{value:"days",label:"Days"},{value:"years",label:"Years"}],disabled:!1})})})]})]}),(0,C.jsxs)(o.ZP,{item:!0,xs:12,className:n.buttonContainer,children:[(0,C.jsx)(c.zxk,{id:"clear",type:"button",variant:"regular",className:n.clearButton,onClick:function(){e((0,Z.Fx)())},label:"Clear"}),(0,C.jsx)(g.Z,{tooltip:ee.length>0||!B||z?"You must apply a valid name to the bucket":"",children:(0,C.jsx)(c.zxk,{id:"create-bucket",type:"submit",variant:"callAction",color:"primary",disabled:X||ee.length>0||!B||z,label:"Create Bucket"})})]}),X&&(0,C.jsx)(o.ZP,{item:!0,xs:12,children:(0,C.jsx)(s.Z,{})})]})})})]})}},81159:function(e,t,n){var i=n(4942),r=n(1413),a=n(72791),o=n(11135),s=n(25787),l=n(9955),c=n(30829),d=n(20068),u=n(20890),x=n(61889),h=n(23814),b=n(29945),m=n(28182),p=n(80184),j=(0,s.Z)((function(e){return{root:{width:50,height:24,padding:0,margin:0},switchBase:{padding:1,"&$checked":{transform:"translateX(24px)",color:e.palette.common.white,"& + $track":{backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,border:"none"}},"&$focusVisible $thumb":{color:"#4CCB92",border:"6px solid #fff"}},thumb:{width:22,height:22,backgroundColor:"#FAFAFA",border:"2px solid #FFFFFF",marginLeft:1},track:{borderRadius:12,backgroundColor:"#E2E2E2",boxShadow:"inset 0px 1px 4px rgba(0,0,0,0.1)",opacity:1,transition:e.transitions.create(["background-color","border"])},checked:{},focusVisible:{},switchContainer:{display:"flex",alignItems:"center",justifyContent:"flex-end"}}}))(l.Z);t.Z=(0,s.Z)((function(e){return(0,o.Z)((0,r.Z)((0,r.Z)({indicatorLabelOn:{fontWeight:"bold",color:"#081C42 !important"},indicatorLabel:{fontSize:12,color:"#E2E2E2",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"},tooltip:{fontSize:16}},h.OR),h.YI))}))((function(e){var t=e.label,n=void 0===t?"":t,o=e.onChange,s=e.value,l=e.id,h=e.name,f=e.checked,g=void 0!==f&&f,v=e.disabled,Z=void 0!==v&&v,k=e.switchOnly,C=void 0!==k&&k,y=e.tooltip,F=void 0===y?"":y,T=e.description,P=void 0===T?"":T,B=e.classes,N=e.indicatorLabels,_=e.extraInputProps,S=void 0===_?{}:_,E=(0,p.jsxs)(a.Fragment,{children:[!C&&(0,p.jsx)("span",{className:(0,m.Z)(B.indicatorLabel,(0,i.Z)({},B.indicatorLabelOn,!g)),children:N&&N.length>1?N[1]:"OFF"}),(0,p.jsx)(j,{checked:g,onChange:o,color:"primary",name:h,inputProps:(0,r.Z)({"aria-label":"primary checkbox"},S),disabled:Z,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:s,id:l}),!C&&(0,p.jsx)("span",{className:(0,m.Z)(B.indicatorLabel,(0,i.Z)({},B.indicatorLabelOn,g)),children:N?N[0]:"ON"})]});return C?E:(0,p.jsx)("div",{children:(0,p.jsxs)(x.ZP,{container:!0,alignItems:"center",children:[(0,p.jsx)(x.ZP,{item:!0,xs:12,sm:8,md:8,children:""!==n&&(0,p.jsxs)(c.Z,{htmlFor:l,className:B.inputLabel,children:[(0,p.jsx)("span",{children:n}),""!==F&&(0,p.jsx)("div",{className:B.tooltipContainer,children:(0,p.jsx)(d.Z,{title:F,placement:"top-start",children:(0,p.jsx)("div",{className:B.tooltip,children:(0,p.jsx)(b.byK,{})})})})]})}),(0,p.jsx)(x.ZP,{item:!0,xs:12,sm:""!==n?4:12,md:""!==n?4:12,textAlign:"right",justifyContent:"end",className:B.switchContainer,children:E}),""!==P&&(0,p.jsx)(x.ZP,{item:!0,xs:12,textAlign:"left",children:(0,p.jsx)(u.Z,{component:"p",className:B.fieldDescription,children:P})})]})})}))},21435:function(e,t,n){var i=n(29439),r=n(1413),a=n(72791),o=n(27391),s=n(61889),l=n(30829),c=n(20068),d=n(13400),u=n(20165),x=n(3579),h=n(11135),b=n(72455),m=n(25787),p=n(23814),j=n(29945),f=n(28182),g=n(80184),v=(0,b.Z)((function(e){return(0,h.Z)((0,r.Z)({},p.gM))}));function Z(e){var t=v();return(0,g.jsx)(o.Z,(0,r.Z)({InputProps:{classes:t}},e))}t.Z=(0,m.Z)((function(e){return(0,h.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},p.YI),p.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var t=e.label,n=e.onChange,o=e.value,h=e.id,b=e.name,m=e.type,p=void 0===m?"text":m,v=e.autoComplete,k=void 0===v?"off":v,C=e.disabled,y=void 0!==C&&C,F=e.multiline,T=void 0!==F&&F,P=e.tooltip,B=void 0===P?"":P,N=e.index,_=void 0===N?0:N,S=e.error,E=void 0===S?"":S,I=e.required,L=void 0!==I&&I,w=e.placeholder,O=void 0===w?"":w,R=e.min,U=e.max,z=e.overlayId,A=e.overlayIcon,q=void 0===A?null:A,K=e.overlayObject,V=void 0===K?null:K,M=e.extraInputProps,W=void 0===M?{}:M,D=e.overlayAction,G=e.noLabelMinWidth,Y=void 0!==G&&G,$=e.pattern,H=void 0===$?"":$,J=e.autoFocus,Q=void 0!==J&&J,X=e.classes,ee=e.className,te=void 0===ee?"":ee,ne=e.onKeyPress,ie=e.onFocus,re=e.onPaste,ae=(0,r.Z)({"data-index":_},W),oe=(0,a.useState)(!1),se=(0,i.Z)(oe,2),le=se[0],ce=se[1];"number"===p&&R&&(ae.min=R),"number"===p&&U&&(ae.max=U),""!==H&&(ae.pattern=H);var de=q,ue=p;return"password"===p&&null===q&&(de=le?(0,g.jsx)(u.Z,{}):(0,g.jsx)(x.Z,{}),ue=le?"text":"password"),(0,g.jsx)(a.Fragment,{children:(0,g.jsxs)(s.ZP,{container:!0,className:(0,f.Z)(""!==te?te:"",""!==E?X.errorInField:X.inputBoxContainer),children:[""!==t&&(0,g.jsxs)(l.Z,{htmlFor:h,className:Y?X.noMinWidthLabel:X.inputLabel,children:[(0,g.jsxs)("span",{children:[t,L?"*":""]}),""!==B&&(0,g.jsx)("div",{className:X.tooltipContainer,children:(0,g.jsx)(c.Z,{title:B,placement:"top-start",children:(0,g.jsx)("div",{className:X.tooltip,children:(0,g.jsx)(j.byK,{})})})})]}),(0,g.jsxs)("div",{className:X.textBoxContainer,children:[(0,g.jsx)(Z,{id:h,name:b,fullWidth:!0,value:o,autoFocus:Q,disabled:y,onChange:n,type:ue,multiline:T,autoComplete:k,inputProps:ae,error:""!==E,helperText:E,placeholder:O,className:X.inputRebase,onKeyPress:ne,onFocus:ie,onPaste:re}),de&&(0,g.jsx)("div",{className:"".concat(X.overlayAction," ").concat(""!==t?"withLabel":""),children:(0,g.jsx)(d.Z,{onClick:D?function(){D()}:function(){return ce(!le)},id:z,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:de})}),V&&(0,g.jsx)("div",{className:"".concat(X.overlayAction," ").concat(""!==t?"withLabel":""),children:V})]})]})})}))},84741:function(e,t,n){var i=n(29439),r=n(72791),a=n(11135),o=n(25787),s=n(71715),l=n(77865),c=n(80184);t.Z=(0,o.Z)((function(e){return(0,a.Z)({buttonTrigger:{border:"#F0F2F2 1px solid",borderRadius:3,color:"#838383",backgroundColor:"#fff",fontSize:12}})}))((function(e){var t=e.classes,n=e.id,a=e.unitSelected,o=e.unitsList,d=e.disabled,u=void 0!==d&&d,x=e.onUnitChange,h=r.useState(null),b=(0,i.Z)(h,2),m=b[0],p=b[1],j=Boolean(m),f=function(e){p(null),""!==e&&x&&x(e)};return(0,c.jsxs)(r.Fragment,{children:[(0,c.jsx)("button",{id:"".concat(n,"-button"),"aria-controls":"".concat(n,"-menu"),"aria-haspopup":"true","aria-expanded":j?"true":void 0,onClick:function(e){p(e.currentTarget)},className:t.buttonTrigger,disabled:u,type:"button",children:a}),(0,c.jsx)(s.Z,{id:"".concat(n,"-menu"),"aria-labelledby":"".concat(n,"-button"),anchorEl:m,open:j,onClose:function(){f("")},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:o.map((function(e){return(0,c.jsx)(l.Z,{onClick:function(){return f(e.value)},children:e.label},"itemUnit-".concat(e.value,"-").concat(e.label))}))})]})}))},83679:function(e,t,n){var i=n(4942),r=n(1413),a=(n(72791),n(28182)),o=n(61889),s=n(10765),l=n(85523),c=n(61419),d=n(30829),u=n(20068),x=n(11135),h=n(25787),b=n(72455),m=n(23814),p=n(29945),j=n(80184),f=(0,b.Z)((0,r.Z)({root:{"&:hover":{backgroundColor:"transparent"}}},m.FU)),g=function(e){var t=f();return(0,j.jsx)(c.Z,(0,r.Z)({className:t.root,disableRipple:!0,color:"default",checkedIcon:(0,j.jsx)("span",{className:t.radioSelectedIcon}),icon:(0,j.jsx)("span",{className:t.radioUnselectedIcon})},e))};t.Z=(0,h.Z)((function(e){return(0,x.Z)((0,r.Z)((0,r.Z)((0,r.Z)({},m.YI),m.Hr),{},{optionLabel:{"&.Mui-disabled":{"& .MuiFormControlLabel-label":{color:"#9c9c9c"}},"&:last-child":{marginRight:0},"& .MuiFormControlLabel-label":{fontSize:12,color:"#07193E"}},checkedOption:{"& .MuiFormControlLabel-label":{fontSize:12,color:"#07193E",fontWeight:700}}}))}))((function(e){var t=e.selectorOptions,n=void 0===t?[]:t,r=e.currentSelection,c=e.label,x=e.id,h=e.name,b=e.onChange,m=e.tooltip,f=void 0===m?"":m,v=e.disableOptions,Z=void 0!==v&&v,k=e.classes,C=e.displayInColumn,y=void 0!==C&&C;return(0,j.jsxs)(o.ZP,{container:!0,spacing:1,children:[(0,j.jsx)(o.ZP,{item:!0,fontSize:60,children:(0,j.jsxs)(d.Z,{htmlFor:x,className:k.inputLabel,children:[(0,j.jsx)("span",{children:c}),""!==f&&(0,j.jsx)("div",{className:k.tooltipContainer,children:(0,j.jsx)(u.Z,{title:f,placement:"top-start",children:(0,j.jsx)("div",{children:(0,j.jsx)(p.byK,{})})})})]})}),(0,j.jsx)(o.ZP,{item:!0,children:(0,j.jsx)(s.Z,{"aria-label":x,id:x,name:h,value:r,onChange:b,row:!y,style:{display:"flex",textAlign:"right"},children:n.map((function(e){return(0,j.jsx)(l.Z,{value:e.value,control:(0,j.jsx)(g,{}),label:e.label,disabled:Z,className:(0,a.Z)(k.optionLabel,(0,i.Z)({},k.checkedOption,e.value===r))},"rd-".concat(h,"-").concat(e.value))}))})})]})}))}}]); -//# sourceMappingURL=977.fa8b33fa.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/977.fa8b33fa.chunk.js.map b/portal-ui/build/static/js/977.fa8b33fa.chunk.js.map deleted file mode 100644 index cda149d84..000000000 --- a/portal-ui/build/static/js/977.fa8b33fa.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/977.fa8b33fa.chunk.js","mappings":"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","sources":["screens/Console/Buckets/ListBuckets/AddBucket/AddBucketName.tsx","screens/Console/Buckets/ListBuckets/AddBucket/ValidRule.tsx","screens/Console/Buckets/ListBuckets/AddBucket/InvalidRule.tsx","screens/Console/Buckets/ListBuckets/AddBucket/NARule.tsx","screens/Console/Buckets/ListBuckets/AddBucket/BucketNamingRules.tsx","screens/Console/Buckets/ListBuckets/AddBucket/AddBucket.tsx","screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Common/FormComponents/InputUnitMenu/InputUnitMenu.tsx","screens/Console/Common/FormComponents/RadioGroupSelector/RadioGroupSelector.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { setIsDirty, setName } from \"./addBucketsSlice\";\nimport InputBoxWrapper from \"../../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\n\nconst AddBucketName = ({ hasErrors }: { hasErrors: boolean }) => {\n const dispatch = useAppDispatch();\n\n const bucketName = useSelector((state: AppState) => state.addBucket.name);\n return (\n {\n dispatch(setIsDirty(true));\n }}\n onChange={(event: React.ChangeEvent) => {\n dispatch(setName(event.target.value));\n }}\n label=\"Bucket Name\"\n value={bucketName}\n required\n />\n );\n};\n\nexport default AddBucketName;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { ConfirmModalIcon } from \"mds\";\n\ninterface IValidRule {\n ruleText: string;\n}\n\nconst ValidRule = ({ ruleText }: IValidRule) => {\n return (\n \n \n \n \n \n \n {ruleText}\n \n \n \n );\n};\n\nexport default ValidRule;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { ConfirmDeleteIcon } from \"mds\";\n\ninterface IInvalidRule {\n ruleText: string;\n}\n\nconst InvalidRule = ({ ruleText }: IInvalidRule) => {\n return (\n \n \n \n \n \n \n {ruleText}\n \n \n \n );\n};\n\nexport default InvalidRule;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { CircleIcon } from \"mds\";\n\ninterface INARule {\n ruleText: string;\n}\n\nconst NARule = ({ ruleText }: INARule) => {\n return (\n \n \n \n \n \n \n {ruleText}\n \n \n \n );\n};\n\nexport default NARule;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { LinearProgress } from \"@mui/material\";\nimport { AppState } from \"../../../../../store\";\nimport { useSelector } from \"react-redux\";\nimport { Button, CollapseCaret, ExpandCaret } from \"mds\";\nimport ValidRule from \"./ValidRule\";\nimport InvalidRule from \"./InvalidRule\";\nimport NARule from \"./NARule\";\n\nconst BucketNamingRules = ({ errorList }: { errorList: boolean[] }) => {\n const lengthRuleText =\n \"Bucket names must be between 3 (min) and 63 (max) characters long.\";\n const characterRuleText =\n \"Bucket names can consist only of lowercase letters, numbers, dots (.), and hyphens (-).\";\n const periodRuleText =\n \"Bucket names must not contain two adjacent periods, or a period adjacent to a hyphen.\";\n const ipRuleText =\n \"Bucket names must not be formatted as an IP address (for example, 192.168.5.4).\";\n const prefixRuleText = \"Bucket names must not start with the prefix xn--.\";\n const suffixRuleText =\n \"Bucket names must not end with the suffix -s3alias. This suffix is reserved for access point alias names.\";\n const uniqueRuleText = \"Bucket names must be unique within a partition.\";\n\n const bucketName = useSelector((state: AppState) => state.addBucket.name);\n\n const [showNamingRules, setShowNamingRules] = useState(false);\n\n const addLoading = useSelector((state: AppState) => state.addBucket.loading);\n\n const [\n lengthRule,\n validCharacters,\n noAdjacentPeriods,\n notIPFormat,\n noPrefix,\n noSuffix,\n uniqueName,\n ] = errorList;\n\n const toggleNamingRules = () => {\n setShowNamingRules(!showNamingRules);\n };\n\n return (\n \n {\n toggleNamingRules();\n }}\n icon={showNamingRules ? : }\n label={(showNamingRules ? \"Hide\" : \"View\") + \" Bucket Naming Rules\"}\n style={{\n height: \"10px\",\n width: \"200px\",\n textAlign: \"left\",\n paddingLeft: 0,\n fontSize: \"9px\",\n border: \"none\",\n }}\n />\n {showNamingRules && (\n \n \n {bucketName.length === 0 ? (\n \n ) : lengthRule ? (\n \n ) : (\n \n )}\n {bucketName.length === 0 ? (\n \n ) : validCharacters ? (\n \n ) : (\n \n )}\n {bucketName.length === 0 ? (\n \n ) : noAdjacentPeriods ? (\n \n ) : (\n \n )}\n {bucketName.length === 0 ? (\n \n ) : notIPFormat ? (\n \n ) : (\n \n )}\n \n \n {bucketName.length === 0 ? (\n \n ) : noPrefix ? (\n \n ) : (\n \n )}\n\n {bucketName.length === 0 ? (\n \n ) : noSuffix ? (\n \n ) : (\n \n )}\n\n {bucketName.length === 0 ? (\n \n ) : uniqueName ? (\n \n ) : (\n \n )}\n \n \n )}\n\n {addLoading && (\n \n \n \n )}\n \n );\n};\n\nexport default BucketNamingRules;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { LinearProgress } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport { useNavigate } from \"react-router-dom\";\nimport {\n BackLink,\n BucketsIcon,\n Button,\n FormLayout,\n HelpBox,\n InfoIcon,\n PageLayout,\n} from \"mds\";\nimport {\n containerForHeader,\n modalBasic,\n} from \"../../../Common/FormComponents/common/styleLibrary\";\nimport InputBoxWrapper from \"../../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport RadioGroupSelector from \"../../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector\";\nimport { k8sScalarUnitsExcluding } from \"../../../../../common/utils\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\nimport { useSelector } from \"react-redux\";\nimport FormSwitchWrapper from \"../../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport {\n selDistSet,\n selSiteRep,\n setErrorSnackMessage,\n setHelpName,\n} from \"../../../../../systemSlice\";\nimport InputUnitMenu from \"../../../Common/FormComponents/InputUnitMenu/InputUnitMenu\";\nimport TooltipWrapper from \"../../../Common/TooltipWrapper/TooltipWrapper\";\nimport SectionTitle from \"../../../Common/SectionTitle\";\nimport {\n resetForm,\n setEnableObjectLocking,\n setIsDirty,\n setName,\n setQuota,\n setQuotaSize,\n setQuotaUnit,\n setRetention,\n setRetentionMode,\n setRetentionUnit,\n setRetentionValidity,\n setVersioning,\n} from \"./addBucketsSlice\";\nimport { addBucketAsync } from \"./addBucketThunks\";\nimport AddBucketName from \"./AddBucketName\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../common/SecureComponent/permissions\";\nimport { hasPermission } from \"../../../../../common/SecureComponent\";\nimport BucketNamingRules from \"./BucketNamingRules\";\nimport PageHeaderWrapper from \"../../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport { api } from \"../../../../../api\";\nimport {\n Error,\n HttpResponse,\n ListBucketsResponse,\n ObjectRetentionMode,\n} from \"../../../../../api/consoleApi\";\nimport { errorToHandler } from \"../../../../../api/errors\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport HelpMenu from \"../../../HelpMenu\";\n\nconst useStyles = makeStyles((theme: Theme) => ({\n buttonContainer: {\n marginTop: 24,\n display: \"flex\",\n justifyContent: \"flex-end\",\n \"& button\": {\n marginLeft: 8,\n },\n },\n error: {\n color: \"#b53b4b\",\n border: \"1px solid #b53b4b\",\n padding: 8,\n borderRadius: 3,\n },\n alertVersioning: {\n border: \"#E2E2E2 1px solid\",\n backgroundColor: \"#FBFAFA\",\n borderRadius: 3,\n display: \"flex\",\n alignItems: \"center\",\n padding: \"10px\",\n color: \"#767676\",\n \"& > .min-icon \": {\n width: 20,\n height: 20,\n marginRight: 10,\n },\n },\n h6title: {\n fontWeight: \"bold\",\n color: \"#000000\",\n fontSize: 20,\n },\n ...containerForHeader,\n ...modalBasic,\n}));\n\nconst AddBucket = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const classes = useStyles();\n\n const validBucketCharacters = new RegExp(\n `^[a-z0-9][a-z0-9\\\\.\\\\-]{1,61}[a-z0-9]$`,\n );\n const ipAddressFormat = new RegExp(`^(\\\\d+\\\\.){3}\\\\d+$`);\n const bucketName = useSelector((state: AppState) => state.addBucket.name);\n const isDirty = useSelector((state: AppState) => state.addBucket.isDirty);\n const [validationResult, setValidationResult] = useState([]);\n const errorList = validationResult.filter((v) => !v);\n const hasErrors = errorList.length > 0;\n const [records, setRecords] = useState([]);\n const versioningEnabled = useSelector(\n (state: AppState) => state.addBucket.versioningEnabled,\n );\n const lockingEnabled = useSelector(\n (state: AppState) => state.addBucket.lockingEnabled,\n );\n const quotaEnabled = useSelector(\n (state: AppState) => state.addBucket.quotaEnabled,\n );\n const quotaSize = useSelector((state: AppState) => state.addBucket.quotaSize);\n const quotaUnit = useSelector((state: AppState) => state.addBucket.quotaUnit);\n const retentionEnabled = useSelector(\n (state: AppState) => state.addBucket.retentionEnabled,\n );\n const retentionMode = useSelector(\n (state: AppState) => state.addBucket.retentionMode,\n );\n const retentionUnit = useSelector(\n (state: AppState) => state.addBucket.retentionUnit,\n );\n const retentionValidity = useSelector(\n (state: AppState) => state.addBucket.retentionValidity,\n );\n const addLoading = useSelector((state: AppState) => state.addBucket.loading);\n const invalidFields = useSelector(\n (state: AppState) => state.addBucket.invalidFields,\n );\n const lockingFieldDisabled = useSelector(\n (state: AppState) => state.addBucket.lockingFieldDisabled,\n );\n const distributedSetup = useSelector(selDistSet);\n const siteReplicationInfo = useSelector(selSiteRep);\n const navigateTo = useSelector(\n (state: AppState) => state.addBucket.navigateTo,\n );\n\n const lockingAllowed = hasPermission(\n \"*\",\n [\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n true,\n );\n\n const versioningAllowed = hasPermission(\"*\", [\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n useEffect(() => {\n const bucketNameErrors = [\n !(isDirty && (bucketName.length < 3 || bucketName.length > 63)),\n validBucketCharacters.test(bucketName),\n !(\n bucketName.includes(\".-\") ||\n bucketName.includes(\"-.\") ||\n bucketName.includes(\"..\")\n ),\n !ipAddressFormat.test(bucketName),\n !bucketName.startsWith(\"xn--\"),\n !bucketName.endsWith(\"-s3alias\"),\n !records.includes(bucketName),\n ];\n setValidationResult(bucketNameErrors);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [bucketName, isDirty]);\n\n useEffect(() => {\n dispatch(setName(\"\"));\n dispatch(setIsDirty(false));\n const fetchRecords = () => {\n api.buckets\n .listBuckets()\n .then((res: HttpResponse) => {\n if (res.data) {\n var bucketList: string[] = [];\n if (res.data.buckets != null && res.data.buckets.length > 0) {\n res.data.buckets.forEach((bucket) => {\n bucketList.push(bucket.name);\n });\n }\n setRecords(bucketList);\n } else if (res.error) {\n dispatch(setErrorSnackMessage(errorToHandler(res.error)));\n }\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n });\n };\n fetchRecords();\n }, [dispatch]);\n\n const resForm = () => {\n dispatch(resetForm());\n };\n\n useEffect(() => {\n if (navigateTo !== \"\") {\n const goTo = `${navigateTo}`;\n dispatch(resetForm());\n navigate(goTo);\n }\n }, [navigateTo, navigate, dispatch]);\n\n useEffect(() => {\n dispatch(setHelpName(\"add_bucket\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n navigate(\"/buckets\")} />\n }\n actions={}\n />\n \n }\n helpBox={\n }\n title={\"Buckets\"}\n help={\n \n MinIO uses buckets to organize objects. A bucket is similar to\n a folder or directory in a filesystem, where each bucket can\n hold an arbitrary number of objects.\n
\n
\n Versioning allows to keep multiple versions of the same\n object under the same key.\n
\n
\n Object Locking prevents objects from being deleted.\n Required to support retention and legal hold. Can only be\n enabled at bucket creation.\n
\n
\n Quota limits the amount of data in the bucket.\n {lockingAllowed && (\n \n
\n
\n Retention imposes rules to prevent object deletion\n for a period of time. Versioning must be enabled in order\n to set bucket retention policies.\n
\n )}\n
\n
\n
\n }\n />\n }\n >\n ) => {\n e.preventDefault();\n dispatch(addBucketAsync());\n }}\n >\n \n \n \n \n \n \n \n \n Features\n {!distributedSetup && (\n \n
\n These features are unavailable in a single-disk setup.\n
\n Please deploy a server in{\" \"}\n \n Distributed Mode\n {\" \"}\n to use these features.\n
\n
\n
\n
\n )}\n
\n \n {siteReplicationInfo.enabled && (\n \n
\n
\n Versioning setting cannot be changed as\n cluster replication is enabled for this site.\n
\n
\n
\n )}\n \n ) => {\n dispatch(setVersioning(event.target.checked));\n }}\n label={\"Versioning\"}\n disabled={\n !distributedSetup ||\n lockingEnabled ||\n siteReplicationInfo.enabled ||\n !versioningAllowed\n }\n />\n \n
\n \n \n ) => {\n dispatch(setEnableObjectLocking(event.target.checked));\n if (\n event.target.checked &&\n !siteReplicationInfo.enabled\n ) {\n dispatch(setVersioning(true));\n }\n }}\n label={\"Object Locking\"}\n />\n \n \n\n \n ) => {\n dispatch(setQuota(event.target.checked));\n }}\n label={\"Quota\"}\n disabled={!distributedSetup}\n />\n \n {quotaEnabled && distributedSetup && (\n \n \n ) => {\n dispatch(setQuotaSize(e.target.value));\n }}\n label=\"Capacity\"\n value={quotaSize}\n required\n min=\"1\"\n overlayObject={\n {\n dispatch(setQuotaUnit(newValue));\n }}\n unitSelected={quotaUnit}\n unitsList={k8sScalarUnitsExcluding([\"Ki\"])}\n disabled={false}\n />\n }\n error={\n invalidFields.includes(\"quotaSize\")\n ? \"Please enter a valid quota\"\n : \"\"\n }\n />\n \n \n )}\n {versioningEnabled && distributedSetup && lockingAllowed && (\n \n ) => {\n dispatch(setRetention(event.target.checked));\n }}\n label={\"Retention\"}\n />\n \n )}\n {retentionEnabled && distributedSetup && (\n \n \n ) => {\n dispatch(\n setRetentionMode(\n e.target.value as ObjectRetentionMode,\n ),\n );\n }}\n selectorOptions={[\n { value: \"compliance\", label: \"Compliance\" },\n { value: \"governance\", label: \"Governance\" },\n ]}\n />\n \n \n ) => {\n dispatch(setRetentionValidity(e.target.valueAsNumber));\n }}\n label=\"Validity\"\n value={String(retentionValidity)}\n required\n overlayObject={\n {\n dispatch(setRetentionUnit(newValue));\n }}\n unitSelected={retentionUnit}\n unitsList={[\n { value: \"days\", label: \"Days\" },\n { value: \"years\", label: \"Years\" },\n ]}\n disabled={false}\n />\n }\n />\n \n \n )}\n
\n \n \n 0 || !isDirty || hasErrors\n ? \"You must apply a valid name to the bucket\"\n : \"\"\n }\n >\n 0 ||\n !isDirty ||\n hasErrors\n }\n label={\"Create Bucket\"}\n />\n \n \n {addLoading && (\n \n \n \n )}\n \n \n
\n
\n );\n};\n\nexport default AddBucket;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@mui/material\";\nimport Grid from \"@mui/material/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input/Input\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n checked: boolean;\n switchOnly?: boolean;\n indicatorLabels?: string[];\n extraInputProps?: StandardInputProps[\"inputProps\"];\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n indicatorLabelOn: {\n fontWeight: \"bold\",\n color: \"#081C42 !important\",\n },\n indicatorLabel: {\n fontSize: 12,\n color: \"#E2E2E2\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n tooltip: {\n fontSize: 16,\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles((theme) => ({\n root: {\n width: 50,\n height: 24,\n padding: 0,\n margin: 0,\n },\n switchBase: {\n padding: 1,\n \"&$checked\": {\n transform: \"translateX(24px)\",\n color: theme.palette.common.white,\n \"& + $track\": {\n backgroundColor: \"#4CCB92\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n border: \"none\",\n },\n },\n \"&$focusVisible $thumb\": {\n color: \"#4CCB92\",\n border: \"6px solid #fff\",\n },\n },\n thumb: {\n width: 22,\n height: 22,\n backgroundColor: \"#FAFAFA\",\n border: \"2px solid #FFFFFF\",\n marginLeft: 1,\n },\n track: {\n borderRadius: 24 / 2,\n backgroundColor: \"#E2E2E2\",\n boxShadow: \"inset 0px 1px 4px rgba(0,0,0,0.1)\",\n opacity: 1,\n transition: theme.transitions.create([\"background-color\", \"border\"]),\n },\n checked: {},\n focusVisible: {},\n switchContainer: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n },\n}))(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n classes,\n indicatorLabels,\n extraInputProps = {},\n}: IFormSwitch) => {\n const switchComponent = (\n \n {!switchOnly && (\n \n {indicatorLabels && indicatorLabels.length > 1\n ? indicatorLabels[1]\n : \"OFF\"}\n \n )}\n \n {!switchOnly && (\n \n {indicatorLabels ? indicatorLabels[0] : \"ON\"}\n \n )}\n \n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n
\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n \n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { selectorTypes } from \"../SelectWrapper/SelectWrapper\";\nimport { Menu, MenuItem } from \"@mui/material\";\n\ninterface IInputUnitBox {\n classes: any;\n id: string;\n unitSelected: string;\n unitsList: selectorTypes[];\n disabled?: boolean;\n onUnitChange?: (newValue: string) => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonTrigger: {\n border: \"#F0F2F2 1px solid\",\n borderRadius: 3,\n color: \"#838383\",\n backgroundColor: \"#fff\",\n fontSize: 12,\n },\n });\n\nconst InputUnitMenu = ({\n classes,\n id,\n unitSelected,\n unitsList,\n disabled = false,\n onUnitChange,\n}: IInputUnitBox) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (newUnit: string) => {\n setAnchorEl(null);\n if (newUnit !== \"\" && onUnitChange) {\n onUnitChange(newUnit);\n }\n };\n\n return (\n \n \n {unitSelected}\n \n {\n handleClose(\"\");\n }}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"center\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"center\",\n }}\n >\n {unitsList.map((unit) => (\n handleClose(unit.value)}\n key={`itemUnit-${unit.value}-${unit.label}`}\n >\n {unit.label}\n \n ))}\n \n \n );\n};\n\nexport default withStyles(styles)(InputUnitMenu);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport clsx from \"clsx\";\nimport Grid from \"@mui/material/Grid\";\nimport RadioGroup from \"@mui/material/RadioGroup\";\nimport FormControlLabel from \"@mui/material/FormControlLabel\";\nimport Radio, { RadioProps } from \"@mui/material/Radio\";\nimport { InputLabel, Tooltip } from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport { fieldBasic, radioIcons, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport { ObjectRetentionMode, ObjectRetentionUnit } from \"api/consoleApi\";\n\nexport interface SelectorTypes {\n label: any;\n value: string;\n}\n\ninterface RadioGroupProps {\n selectorOptions: SelectorTypes[];\n currentSelection:\n | ObjectRetentionMode\n | ObjectRetentionUnit\n | undefined\n | \"expiry\"\n | \"transition\";\n label: any;\n id: string;\n name: string;\n tooltip?: string;\n disableOptions?: boolean;\n onChange: (e: React.ChangeEvent) => void;\n classes: any;\n displayInColumn?: boolean;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n optionLabel: {\n \"&.Mui-disabled\": {\n \"& .MuiFormControlLabel-label\": {\n color: \"#9c9c9c\",\n },\n },\n \"&:last-child\": {\n marginRight: 0,\n },\n \"& .MuiFormControlLabel-label\": {\n fontSize: 12,\n color: \"#07193E\",\n },\n },\n checkedOption: {\n \"& .MuiFormControlLabel-label\": {\n fontSize: 12,\n color: \"#07193E\",\n fontWeight: 700,\n },\n },\n });\n\nconst radioStyles = makeStyles({\n root: {\n \"&:hover\": {\n backgroundColor: \"transparent\",\n },\n },\n ...radioIcons,\n});\n\nconst RadioButton = (props: RadioProps) => {\n const classes = radioStyles();\n\n return (\n }\n icon={}\n {...props}\n />\n );\n};\n\nexport const RadioGroupSelector = ({\n selectorOptions = [],\n currentSelection,\n label,\n id,\n name,\n onChange,\n tooltip = \"\",\n disableOptions = false,\n classes,\n displayInColumn = false,\n}: RadioGroupProps) => {\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n
\n \n \n {selectorOptions.map((selectorOption) => {\n return (\n }\n label={selectorOption.label}\n disabled={disableOptions}\n className={clsx(classes.optionLabel, {\n [classes.checkedOption]:\n selectorOption.value === currentSelection,\n })}\n />\n );\n })}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(RadioGroupSelector);\n"],"names":["_ref","hasErrors","dispatch","useAppDispatch","bucketName","useSelector","state","addBucket","name","_jsx","InputBoxWrapper","id","error","onFocus","setIsDirty","onChange","event","setName","target","value","label","required","ruleText","Fragment","children","_jsxs","Grid","container","style","display","justifyContent","item","xs","paddingRight","ConfirmModalIcon","width","height","color","paddingLeft","ConfirmDeleteIcon","CircleIcon","errorList","lengthRuleText","characterRuleText","periodRuleText","ipRuleText","prefixRuleText","suffixRuleText","uniqueRuleText","_useState","useState","_useState2","_slicedToArray","showNamingRules","setShowNamingRules","addLoading","loading","_errorList","lengthRule","validCharacters","noAdjacentPeriods","notIPFormat","noPrefix","noSuffix","uniqueName","Button","type","onClick","icon","CollapseCaret","ExpandCaret","textAlign","fontSize","border","paddingTop","length","NARule","ValidRule","InvalidRule","LinearProgress","useStyles","makeStyles","theme","_objectSpread","buttonContainer","marginTop","marginLeft","padding","borderRadius","alertVersioning","backgroundColor","alignItems","marginRight","h6title","fontWeight","containerForHeader","modalBasic","navigate","useNavigate","classes","validBucketCharacters","RegExp","ipAddressFormat","isDirty","validationResult","setValidationResult","filter","v","_useState3","_useState4","records","setRecords","versioningEnabled","lockingEnabled","quotaEnabled","quotaSize","quotaUnit","retentionEnabled","retentionMode","retentionUnit","retentionValidity","invalidFields","lockingFieldDisabled","distributedSetup","selDistSet","siteReplicationInfo","selSiteRep","navigateTo","lockingAllowed","hasPermission","IAM_SCOPES","S3_PUT_BUCKET_VERSIONING","S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION","S3_PUT_ACTIONS","versioningAllowed","useEffect","bucketNameErrors","test","includes","startsWith","endsWith","api","buckets","listBuckets","then","res","data","bucketList","forEach","bucket","push","setErrorSnackMessage","errorToHandler","catch","err","goTo","concat","resetForm","setHelpName","PageHeaderWrapper","BackLink","actions","HelpMenu","PageLayout","FormLayout","title","BucketsIcon","helpBox","HelpBox","iconComponent","help","noValidate","autoComplete","onSubmit","e","preventDefault","addBucketAsync","spacing","AddBucketName","BucketNamingRules","SectionTitle","className","href","rel","enabled","InfoIcon","TooltipWrapper","tooltip","permissionTooltipHelper","FormSwitchWrapper","checked","setVersioning","disabled","setEnableObjectLocking","setQuota","React","setQuotaSize","min","overlayObject","InputUnitMenu","onUnitChange","newValue","setQuotaUnit","unitSelected","unitsList","k8sScalarUnitsExcluding","setRetention","RadioGroupSelector","currentSelection","setRetentionMode","selectorOptions","setRetentionValidity","valueAsNumber","String","setRetentionUnit","variant","clearButton","StyledSwitch","withStyles","root","margin","switchBase","transform","palette","common","white","boxShadow","opacity","thumb","track","transition","transitions","create","focusVisible","switchContainer","Switch","createStyles","indicatorLabelOn","indicatorLabel","fieldDescription","actionsTray","fieldBasic","_ref$label","_ref$checked","_ref$disabled","_ref$switchOnly","switchOnly","_ref$tooltip","_ref$description","description","indicatorLabels","_ref$extraInputProps","extraInputProps","switchComponent","clsx","_defineProperty","inputProps","disableRipple","disableFocusRipple","disableTouchRipple","sm","md","InputLabel","htmlFor","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","Typography","component","inputStyles","inputFieldStyles","InputField","props","TextField","InputProps","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","_ref$type","_ref$autoComplete","_ref$multiline","multiline","_ref$index","index","_ref$error","_ref$required","_ref$placeholder","placeholder","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","autoFocus","_ref$className","onKeyPress","onPaste","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","errorInField","inputBoxContainer","noMinWidthLabel","fullWidth","helperText","inputRebase","IconButton","size","buttonTrigger","_React$useState","_React$useState2","anchorEl","setAnchorEl","open","Boolean","handleClose","newUnit","undefined","currentTarget","Menu","onClose","anchorOrigin","vertical","horizontal","transformOrigin","map","unit","MenuItem","radioStyles","radioIcons","RadioButton","Radio","checkedIcon","radioSelectedIcon","radioUnselectedIcon","optionLabel","checkedOption","_ref$selectorOptions","_ref$disableOptions","disableOptions","_ref$displayInColumn","displayInColumn","RadioGroup","row","selectorOption","FormControlLabel","control"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9816.9d5974a5.chunk.js b/portal-ui/build/static/js/9816.9d5974a5.chunk.js deleted file mode 100644 index 3f3b6346b..000000000 --- a/portal-ui/build/static/js/9816.9d5974a5.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9816],{33690:function(e,t,r){"use strict";r.r(t);var n=r(29439),o=r(1413),a=r(72791),i=r(29945),l=r(11135),s=r(25787),c=r(61889),u=r(23814),d=r(56028),f=r(90673),p=r(92217),m=r(87995),b=r(81551),y=r(19859),v=r(31776),h=r(66315),x=r(82342),Z=r(80184);(0,l.Z)((0,o.Z)((0,o.Z)({},u.ID),u.bK));t.default=(0,s.Z)((function(e){return(0,l.Z)((0,o.Z)((0,o.Z)((0,o.Z)({codeMirrorContainer:{marginBottom:20,"& label":{marginBottom:".5rem"},"& label + div":{display:"none"}}},u.DF),u.ID),u.bK))}))((function(e){var t=e.classes,r=e.open,o=e.bucketName,l=e.actualPolicy,s=e.actualDefinition,u=e.closeModalAndRefresh,g=(0,b.TL)(),C=(0,a.useState)(!1),w=(0,n.Z)(C,2),j=w[0],O=w[1],k=(0,a.useState)(""),S=(0,n.Z)(k,2),P=S[0],E=S[1],D=(0,a.useState)(y.L),R=(0,n.Z)(D,2),A=R[0],z=R[1];return(0,a.useEffect)((function(){E(l),z(s?JSON.stringify(JSON.parse(s),null,4):y.L)}),[E,l,z,s]),(0,Z.jsx)(d.Z,{title:"Change Access Policy",modalOpen:r,onClose:function(){u()},titleIcon:(0,Z.jsx)(i.QXQ,{}),children:(0,Z.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),!j&&P&&(O(!0),v.h.buckets.bucketSetPolicy(o,{access:P,definition:A}).then((function(e){O(!1),u()})).catch((function(e){O(!1),g((0,m.zb)((0,x.g)(e.error)))})))},children:(0,Z.jsxs)(c.ZP,{container:!0,children:[(0,Z.jsxs)(c.ZP,{item:!0,xs:12,className:t.modalFormScrollable,children:[(0,Z.jsx)(c.ZP,{item:!0,xs:12,className:t.formFieldRow,children:(0,Z.jsx)(f.Z,{value:P,label:"Access Policy",id:"select-access-policy",name:"select-access-policy",onChange:function(e){E(e.target.value)},options:[{value:h.cv.PRIVATE,label:"Private"},{value:h.cv.PUBLIC,label:"Public"},{value:h.cv.CUSTOM,label:"Custom"}]})}),"PUBLIC"===P&&(0,Z.jsx)("div",{style:{marginTop:"25px",fontSize:"14px",fontStyle:"italic",color:"#5E5E5E"},children:"* Warning: With Public access anyone will be able to upload, download and delete files from this Bucket *"}),"CUSTOM"===P&&(0,Z.jsx)(c.ZP,{item:!0,xs:12,children:(0,Z.jsx)(p.Z,{label:"Write Policy",value:A,onChange:function(e){z(e)},editorHeight:"300px"})})]}),(0,Z.jsxs)(c.ZP,{item:!0,xs:12,className:t.modalButtonBar,children:[(0,Z.jsx)(i.zxk,{id:"cancel",type:"button",variant:"regular",onClick:function(){u()},disabled:j,label:"Cancel"}),(0,Z.jsx)(i.zxk,{id:"set",type:"submit",variant:"callAction",disabled:j||"CUSTOM"===P&&!A,label:"Set"})]})]})})})}))},92217:function(e,t,r){"use strict";var n=r(72791),o=r(29945),a=r(78029),i=r.n(a),l=r(27454),s=r(80184);t.Z=function(e){var t=e.value,r=e.label,a=void 0===r?"":r,c=e.tooltip,u=void 0===c?"":c,d=e.mode,f=void 0===d?"json":d,p=e.onChange,m=e.editorHeight,b=void 0===m?250:m;return(0,s.jsx)(o.pq4,{value:t,onChange:function(e){return p(e)},mode:f,tooltip:u,editorHeight:b,label:a,helpTools:(0,s.jsx)(n.Fragment,{children:(0,s.jsx)(l.Z,{tooltip:"Copy to Clipboard",children:(0,s.jsx)(i(),{text:t,children:(0,s.jsx)(o.zxk,{type:"button",id:"copy-code-mirror",icon:(0,s.jsx)(o.TIy,{}),color:"primary",variant:"regular"})})})})})}},90673:function(e,t,r){"use strict";var n=r(1413),o=r(72791),a=r(61889),i=r(886),l=r(30829),s=r(20068),c=r(68096),u=r(58406),d=r(77865),f=r(11135),p=r(25787),m=r(23814),b=r(29945),y=r(80184),v=(0,p.Z)((function(e){return(0,f.Z)({root:{height:38,lineHeight:1,"label + &":{marginTop:e.spacing(3)}},input:{height:38,position:"relative",color:"#07193E",fontSize:13,fontWeight:600,padding:"8px 20px 10px 10px",border:"#e5e5e5 1px solid",borderRadius:4,display:"flex",alignItems:"center","&:hover":{borderColor:"#393939"},"&:focus":{backgroundColor:"#fff"}}})}))(i.ZP);t.Z=(0,p.Z)((function(e){return(0,f.Z)((0,n.Z)((0,n.Z)((0,n.Z)({},m.YI),m.Hr),{},{fieldContainer:{display:"flex","@media (max-width: 600px)":{flexFlow:"column"}}}))}))((function(e){var t=e.classes,r=e.id,n=e.name,i=e.onChange,f=e.options,p=e.label,m=e.tooltip,h=void 0===m?"":m,x=e.value,Z=e.disabled,g=void 0!==Z&&Z;return(0,y.jsx)(o.Fragment,{children:(0,y.jsxs)(a.ZP,{item:!0,xs:12,className:t.fieldContainer,children:[""!==p&&(0,y.jsxs)(l.Z,{htmlFor:r,className:t.inputLabel,children:[(0,y.jsx)("span",{children:p}),""!==h&&(0,y.jsx)("div",{className:t.tooltipContainer,children:(0,y.jsx)(s.Z,{title:h,placement:"top-start",children:(0,y.jsx)("div",{className:t.tooltip,children:(0,y.jsx)(b.byK,{})})})})]}),(0,y.jsx)(c.Z,{fullWidth:!0,children:(0,y.jsx)(u.Z,{id:r,name:n,value:x,onChange:i,input:(0,y.jsx)(v,{}),disabled:g,children:f.map((function(e){return(0,y.jsx)(d.Z,{value:e.value,children:e.label},"select-".concat(n,"-").concat(e.label))}))})})]})})}))},19859:function(e,t,r){"use strict";r.d(t,{L:function(){return n}});var n='{\n "Version": "2012-10-17",\n "Statement": [\n \n ]\n}'},93840:function(e,t,r){"use strict";var n=r(72791).createContext(void 0);t.Z=n},76147:function(e,t,r){"use strict";function n(e){var t=e.props,r=e.states,n=e.muiFormControl;return r.reduce((function(e,r){return e[r]=t[r],n&&"undefined"===typeof t[r]&&(e[r]=n[r]),e}),{})}r.d(t,{Z:function(){return n}})},52930:function(e,t,r){"use strict";r.d(t,{Z:function(){return a}});var n=r(72791),o=r(93840);function a(){return n.useContext(o.Z)}},17133:function(e,t,r){"use strict";var n=r(4942),o=r(63366),a=r(87462),i=r(72791),l=r(28182),s=r(94419),c=r(76147),u=r(52930),d=r(14036),f=r(31402),p=r(66934),m=r(10843),b=r(80184),y=["children","className","color","component","disabled","error","filled","focused","required"],v=(0,p.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return(0,a.Z)({},t.root,"secondary"===r.color&&t.colorSecondary,r.filled&&t.filled)}})((function(e){var t,r=e.theme,o=e.ownerState;return(0,a.Z)({color:(r.vars||r).palette.text.secondary},r.typography.body1,(t={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(t,"&.".concat(m.Z.focused),{color:(r.vars||r).palette[o.color].main}),(0,n.Z)(t,"&.".concat(m.Z.disabled),{color:(r.vars||r).palette.text.disabled}),(0,n.Z)(t,"&.".concat(m.Z.error),{color:(r.vars||r).palette.error.main}),t))})),h=(0,p.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(e,t){return t.asterisk}})((function(e){var t=e.theme;return(0,n.Z)({},"&.".concat(m.Z.error),{color:(t.vars||t).palette.error.main})})),x=i.forwardRef((function(e,t){var r=(0,f.Z)({props:e,name:"MuiFormLabel"}),n=r.children,i=r.className,p=r.component,x=void 0===p?"label":p,Z=(0,o.Z)(r,y),g=(0,u.Z)(),C=(0,c.Z)({props:r,muiFormControl:g,states:["color","required","focused","disabled","error","filled"]}),w=(0,a.Z)({},r,{color:C.color||"primary",component:x,disabled:C.disabled,error:C.error,filled:C.filled,focused:C.focused,required:C.required}),j=function(e){var t=e.classes,r=e.color,n=e.focused,o=e.disabled,a=e.error,i=e.filled,l=e.required,c={root:["root","color".concat((0,d.Z)(r)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",l&&"required"],asterisk:["asterisk",a&&"error"]};return(0,s.Z)(c,m.M,t)}(w);return(0,b.jsxs)(v,(0,a.Z)({as:x,ownerState:w,className:(0,l.Z)(j.root,i),ref:t},Z,{children:[n,C.required&&(0,b.jsxs)(h,{ownerState:w,"aria-hidden":!0,className:j.asterisk,children:["\u2009","*"]})]}))}));t.Z=x},10843:function(e,t,r){"use strict";r.d(t,{M:function(){return a}});var n=r(75878),o=r(21217);function a(e){return(0,o.Z)("MuiFormLabel",e)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);t.Z=i},30829:function(e,t,r){"use strict";r.d(t,{Z:function(){return g}});var n=r(4942),o=r(63366),a=r(87462),i=r(72791),l=r(94419),s=r(28182),c=r(76147),u=r(52930),d=r(17133),f=r(10843),p=r(31402),m=r(66934),b=r(75878),y=r(21217);function v(e){return(0,y.Z)("MuiInputLabel",e)}(0,b.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var h=r(80184),x=["disableAnimation","margin","shrink","variant","className"],Z=(0,m.ZP)(d.Z,{shouldForwardProp:function(e){return(0,m.FO)(e)||"classes"===e},name:"MuiInputLabel",slot:"Root",overridesResolver:function(e,t){var r=e.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),t.asterisk),t.root,r.formControl&&t.formControl,"small"===r.size&&t.sizeSmall,r.shrink&&t.shrink,!r.disableAnimation&&t.animated,t[r.variant]]}})((function(e){var t=e.theme,r=e.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},r.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===r.size&&{transform:"translate(0, 17px) scale(1)"},r.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!r.disableAnimation&&{transition:t.transitions.create(["color","transform","max-width"],{duration:t.transitions.duration.shorter,easing:t.transitions.easing.easeOut})},"filled"===r.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(12px, 13px) scale(1)"},r.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===r.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===r.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===r.size&&{transform:"translate(14px, 9px) scale(1)"},r.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),g=i.forwardRef((function(e,t){var r=(0,p.Z)({name:"MuiInputLabel",props:e}),n=r.disableAnimation,i=void 0!==n&&n,d=r.shrink,f=r.className,m=(0,o.Z)(r,x),b=(0,u.Z)(),y=d;"undefined"===typeof y&&b&&(y=b.filled||b.focused||b.adornedStart);var g=(0,c.Z)({props:r,muiFormControl:b,states:["size","variant","required"]}),C=(0,a.Z)({},r,{disableAnimation:i,formControl:b,shrink:y,size:g.size,variant:g.variant,required:g.required}),w=function(e){var t=e.classes,r=e.formControl,n=e.size,o=e.shrink,i={root:["root",r&&"formControl",!e.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",e.variant],asterisk:[e.required&&"asterisk"]},s=(0,l.Z)(i,v,t);return(0,a.Z)({},t,s)}(C);return(0,h.jsx)(Z,(0,a.Z)({"data-shrink":y,ownerState:C,ref:t,className:(0,s.Z)(w.root,f)},m,{classes:w}))}))},19103:function(e,t,r){"use strict";r.d(t,{Z:function(){return o}});var n=r(72791);var o=function(e,t){return n.isValidElement(e)&&-1!==t.indexOf(e.type.muiName)}},78949:function(e,t,r){"use strict";function n(){for(var e=arguments.length,t=new Array(e),r=0;r=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function d(e,t){for(var r=0;r.\n\nimport React, { useEffect, useState } from \"react\";\nimport { Theme } from \"@mui/material/styles\";\nimport { Button, ChangeAccessPolicyIcon } from \"mds\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n spacingUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport CodeMirrorWrapper from \"../../Common/FormComponents/CodeMirrorWrapper/CodeMirrorWrapper\";\n\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { emptyPolicy } from \"../../Policies/utils\";\nimport { api } from \"api\";\nimport { BucketAccess } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n codeMirrorContainer: {\n marginBottom: 20,\n \"& label\": {\n marginBottom: \".5rem\",\n },\n \"& label + div\": {\n display: \"none\",\n },\n },\n ...formFieldStyles,\n ...modalStyleUtils,\n ...spacingUtils,\n });\ncreateStyles({\n ...modalStyleUtils,\n ...spacingUtils,\n});\n\ninterface ISetAccessPolicyProps {\n classes: any;\n open: boolean;\n bucketName: string;\n actualPolicy: BucketAccess | string;\n actualDefinition: string;\n closeModalAndRefresh: () => void;\n}\n\nconst SetAccessPolicy = ({\n classes,\n open,\n bucketName,\n actualPolicy,\n actualDefinition,\n closeModalAndRefresh,\n}: ISetAccessPolicyProps) => {\n const dispatch = useAppDispatch();\n const [addLoading, setAddLoading] = useState(false);\n const [accessPolicy, setAccessPolicy] = useState(\"\");\n const [policyDefinition, setPolicyDefinition] = useState(emptyPolicy);\n const addRecord = (event: React.FormEvent) => {\n event.preventDefault();\n if (addLoading || !accessPolicy) {\n return;\n }\n setAddLoading(true);\n api.buckets\n .bucketSetPolicy(bucketName, {\n access: accessPolicy as BucketAccess,\n definition: policyDefinition,\n })\n .then((res) => {\n setAddLoading(false);\n closeModalAndRefresh();\n })\n .catch((err) => {\n setAddLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n useEffect(() => {\n setAccessPolicy(actualPolicy);\n setPolicyDefinition(\n actualDefinition\n ? JSON.stringify(JSON.parse(actualDefinition), null, 4)\n : emptyPolicy,\n );\n }, [setAccessPolicy, actualPolicy, setPolicyDefinition, actualDefinition]);\n\n return (\n {\n closeModalAndRefresh();\n }}\n titleIcon={}\n >\n ) => {\n addRecord(e);\n }}\n >\n \n \n \n {\n setAccessPolicy(e.target.value as BucketAccess);\n }}\n options={[\n { value: BucketAccess.PRIVATE, label: \"Private\" },\n { value: BucketAccess.PUBLIC, label: \"Public\" },\n { value: BucketAccess.CUSTOM, label: \"Custom\" },\n ]}\n />\n \n {accessPolicy === \"PUBLIC\" && (\n \n * Warning: With Public access anyone will be able to upload,\n download and delete files from this Bucket *\n \n )}\n {accessPolicy === \"CUSTOM\" && (\n \n {\n setPolicyDefinition(value);\n }}\n editorHeight={\"300px\"}\n />\n \n )}\n \n \n {\n closeModalAndRefresh();\n }}\n disabled={addLoading}\n label={\"Cancel\"}\n />\n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(SetAccessPolicy);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { Button, CodeEditor, CopyIcon } from \"mds\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport TooltipWrapper from \"../../TooltipWrapper/TooltipWrapper\";\n\ninterface ICodeWrapper {\n value: string;\n label?: string;\n mode?: string;\n tooltip?: string;\n onChange: (value: string) => any;\n editorHeight?: string | number;\n}\n\nconst CodeMirrorWrapper = ({\n value,\n label = \"\",\n tooltip = \"\",\n mode = \"json\",\n onChange,\n editorHeight = 250,\n}: ICodeWrapper) => {\n return (\n onChange(value)}\n mode={mode}\n tooltip={tooltip}\n editorHeight={editorHeight}\n label={label}\n helpTools={\n \n \n \n }\n color={\"primary\"}\n variant={\"regular\"}\n />\n \n \n \n }\n />\n );\n};\n\nexport default CodeMirrorWrapper;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n FormControl,\n InputBase,\n InputLabel,\n MenuItem,\n Select,\n SelectChangeEvent,\n Tooltip,\n} from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\nexport interface selectorTypes {\n label: string;\n value: string;\n}\n\ninterface SelectProps {\n options: selectorTypes[];\n value: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n onChange: (e: SelectChangeEvent) => void;\n disabled?: boolean;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n fieldContainer: {\n display: \"flex\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n height: 38,\n lineHeight: 1,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n },\n input: {\n height: 38,\n position: \"relative\",\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n padding: \"8px 20px 10px 10px\",\n border: \"#e5e5e5 1px solid\",\n borderRadius: 4,\n display: \"flex\",\n alignItems: \"center\",\n \"&:hover\": {\n borderColor: \"#393939\",\n },\n \"&:focus\": {\n backgroundColor: \"#fff\",\n },\n },\n }),\n)(InputBase);\n\nconst SelectWrapper = ({\n classes,\n id,\n name,\n onChange,\n options,\n label,\n tooltip = \"\",\n value,\n disabled = false,\n}: SelectProps) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n \n }\n disabled={disabled}\n >\n {options.map((option) => (\n \n {option.label}\n \n ))}\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(SelectWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const emptyPolicy =\n \"{\\n\" +\n ' \"Version\": \"2012-10-17\",\\n' +\n ' \"Statement\": [\\n' +\n \" \\n\" +\n \" ]\\n\" +\n \"}\";\n","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n"],"names":["createStyles","_objectSpread","modalStyleUtils","spacingUtils","withStyles","theme","codeMirrorContainer","marginBottom","display","formFieldStyles","_ref","classes","open","bucketName","actualPolicy","actualDefinition","closeModalAndRefresh","dispatch","useAppDispatch","_useState","useState","_useState2","_slicedToArray","addLoading","setAddLoading","_useState3","_useState4","accessPolicy","setAccessPolicy","_useState5","emptyPolicy","_useState6","policyDefinition","setPolicyDefinition","useEffect","JSON","stringify","parse","_jsx","ModalWrapper","title","modalOpen","onClose","titleIcon","ChangeAccessPolicyIcon","children","noValidate","autoComplete","onSubmit","e","preventDefault","api","buckets","bucketSetPolicy","access","definition","then","res","catch","err","setModalErrorSnackMessage","errorToHandler","error","_jsxs","Grid","container","item","xs","className","modalFormScrollable","formFieldRow","SelectWrapper","value","label","id","name","onChange","target","options","BucketAccess","PRIVATE","PUBLIC","CUSTOM","style","marginTop","fontSize","fontStyle","color","CodeMirrorWrapper","editorHeight","modalButtonBar","Button","type","variant","onClick","disabled","_ref$label","_ref$tooltip","tooltip","_ref$mode","mode","_ref$editorHeight","CodeEditor","helpTools","Fragment","TooltipWrapper","CopyToClipboard","text","icon","CopyIcon","SelectStyled","root","height","lineHeight","spacing","input","position","fontWeight","padding","border","borderRadius","alignItems","borderColor","backgroundColor","InputBase","fieldBasic","tooltipHelper","fieldContainer","flexFlow","_ref$disabled","React","InputLabel","htmlFor","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","FormControl","fullWidth","Select","map","option","MenuItem","concat","FormControlContext","undefined","formControlState","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","slot","overridesResolver","styles","ownerState","_extends","colorSecondary","filled","_ref2","_extends2","vars","palette","secondary","typography","body1","_defineProperty","formLabelClasses","focused","main","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","element","muiNames","indexOf","muiName","createChainedFunction","_len","arguments","length","funcs","Array","_key","func","_len2","args","_key2","apply","this","deselectCurrent","require","clipboardToIE11Formatting","module","exports","debug","message","reselectPrevious","range","selection","mark","success","document","createRange","getSelection","createElement","textContent","ariaHidden","all","clip","webkitUserSelect","MozUserSelect","msUserSelect","addEventListener","stopPropagation","format","clipboardData","console","warn","window","clearData","setData","onCopy","body","appendChild","selectNodeContents","addRange","execCommand","Error","copyKey","test","navigator","userAgent","replace","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","Object","defineProperty","_react","_interopRequireDefault","_copyToClipboard","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","i","source","forEach","key","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","sourceKeys","sourceSymbolKeys","propertyIsEnumerable","call","_defineProperties","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","self","TypeError","_assertThisInitialized","_possibleConstructorReturn","ReferenceError","getPrototypeOf","_React$PureComponent","subClass","superClass","_inherits","Constructor","protoProps","staticProps","_super","_this","instance","_classCallCheck","event","_this$props","elem","Children","only","_this$props2","cloneElement","PureComponent","rangeCount","active","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","focus"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9817.97fe9a05.chunk.js.map b/portal-ui/build/static/js/9817.97fe9a05.chunk.js.map deleted file mode 100644 index 50aa8b8b0..000000000 --- a/portal-ui/build/static/js/9817.97fe9a05.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/9817.97fe9a05.chunk.js","mappings":"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","sources":["../node_modules/@mui/icons-material/WatchLater.js","../node_modules/@mui/icons-material/utils/createSvgIcon.js","../node_modules/@mui/material/FormControl/FormControlContext.js","../node_modules/@mui/material/FormControl/formControlState.js","../node_modules/@mui/material/FormControl/useFormControl.js","../node_modules/@mui/material/FormLabel/FormLabel.js","../node_modules/@mui/material/FormLabel/formLabelClasses.js","../node_modules/@mui/material/InputLabel/inputLabelClasses.js","../node_modules/@mui/material/InputLabel/InputLabel.js","../node_modules/@mui/material/utils/createChainedFunction.js","../node_modules/@mui/material/utils/deprecatedPropType.js","../node_modules/@mui/utils/esm/deprecatedPropType.js","../node_modules/@mui/material/utils/requirePropFactory.js","../node_modules/@mui/utils/esm/requirePropFactory.js","../node_modules/@mui/material/utils/setRef.js","../node_modules/@mui/material/utils/unsupportedProp.js","../node_modules/@mui/utils/esm/unsupportedProp.js","../node_modules/@mui/material/utils/index.js","../node_modules/@mui/material/utils/isMuiElement.js","../node_modules/@mui/utils/esm/isMuiElement.js","../node_modules/@mui/utils/esm/createChainedFunction.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js"],"sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2zm4.2 14.2L11 13V7h1.5v5.2l4.5 2.7-.8 1.3z\"\n}), 'WatchLater');\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function () {\n return _utils.createSvgIcon;\n }\n});\nvar _utils = require(\"@mui/material/utils\");","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\nconst FormControlContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport default FormControlContext;","export default function formControlState({\n props,\n states,\n muiFormControl\n}) {\n return states.reduce((acc, state) => {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","/**\n * Safe chained function.\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n */\nexport default function createChainedFunction(...funcs) {\n return funcs.reduce((acc, func) => {\n if (func == null) {\n return acc;\n }\n return function chainedFunction(...args) {\n acc.apply(this, args);\n func.apply(this, args);\n };\n }, () => {});\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","type","muiName","_len","arguments","length","funcs","Array","_key","func","_len2","args","_key2","apply","this","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9817.97fe9a05.chunk.js b/portal-ui/build/static/js/9817.d6ea67be.chunk.js similarity index 64% rename from portal-ui/build/static/js/9817.97fe9a05.chunk.js rename to portal-ui/build/static/js/9817.d6ea67be.chunk.js index 4d48bba17..22f82a372 100644 --- a/portal-ui/build/static/js/9817.97fe9a05.chunk.js +++ b/portal-ui/build/static/js/9817.d6ea67be.chunk.js @@ -1,2 +1,2 @@ -(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9817],{32686:function(r,e,t){"use strict";var n=t(64836);e.Z=void 0;var o=n(t(45649)),a=t(80184),i=(0,o.default)((0,a.jsx)("path",{d:"M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2zm4.2 14.2L11 13V7h1.5v5.2l4.5 2.7-.8 1.3z"}),"WatchLater");e.Z=i},45649:function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=t(28610)},93840:function(r,e,t){"use strict";var n=t(72791).createContext(void 0);e.Z=n},76147:function(r,e,t){"use strict";function n(r){var e=r.props,t=r.states,n=r.muiFormControl;return t.reduce((function(r,t){return r[t]=e[t],n&&"undefined"===typeof e[t]&&(r[t]=n[t]),r}),{})}t.d(e,{Z:function(){return n}})},52930:function(r,e,t){"use strict";t.d(e,{Z:function(){return a}});var n=t(72791),o=t(93840);function a(){return n.useContext(o.Z)}},17133:function(r,e,t){"use strict";var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(28182),u=t(94419),l=t(76147),c=t(52930),d=t(14036),f=t(31402),p=t(66934),m=t(10843),Z=t(80184),v=["children","className","color","component","disabled","error","filled","focused","required"],h=(0,p.ZP)("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return(0,a.Z)({},e.root,"secondary"===t.color&&e.colorSecondary,t.filled&&e.filled)}})((function(r){var e,t=r.theme,o=r.ownerState;return(0,a.Z)({color:(t.vars||t).palette.text.secondary},t.typography.body1,(e={lineHeight:"1.4375em",padding:0,position:"relative"},(0,n.Z)(e,"&.".concat(m.Z.focused),{color:(t.vars||t).palette[o.color].main}),(0,n.Z)(e,"&.".concat(m.Z.disabled),{color:(t.vars||t).palette.text.disabled}),(0,n.Z)(e,"&.".concat(m.Z.error),{color:(t.vars||t).palette.error.main}),e))})),x=(0,p.ZP)("span",{name:"MuiFormLabel",slot:"Asterisk",overridesResolver:function(r,e){return e.asterisk}})((function(r){var e=r.theme;return(0,n.Z)({},"&.".concat(m.Z.error),{color:(e.vars||e).palette.error.main})})),b=i.forwardRef((function(r,e){var t=(0,f.Z)({props:r,name:"MuiFormLabel"}),n=t.children,i=t.className,p=t.component,b=void 0===p?"label":p,k=(0,o.Z)(t,v),w=(0,c.Z)(),y=(0,l.Z)({props:t,muiFormControl:w,states:["color","required","focused","disabled","error","filled"]}),C=(0,a.Z)({},t,{color:y.color||"primary",component:b,disabled:y.disabled,error:y.error,filled:y.filled,focused:y.focused,required:y.required}),S=function(r){var e=r.classes,t=r.color,n=r.focused,o=r.disabled,a=r.error,i=r.filled,s=r.required,l={root:["root","color".concat((0,d.Z)(t)),o&&"disabled",a&&"error",i&&"filled",n&&"focused",s&&"required"],asterisk:["asterisk",a&&"error"]};return(0,u.Z)(l,m.M,e)}(C);return(0,Z.jsxs)(h,(0,a.Z)({as:b,ownerState:C,className:(0,s.Z)(S.root,i),ref:e},k,{children:[n,y.required&&(0,Z.jsxs)(x,{ownerState:C,"aria-hidden":!0,className:S.asterisk,children:["\u2009","*"]})]}))}));e.Z=b},10843:function(r,e,t){"use strict";t.d(e,{M:function(){return a}});var n=t(75878),o=t(21217);function a(r){return(0,o.Z)("MuiFormLabel",r)}var i=(0,n.Z)("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]);e.Z=i},30829:function(r,e,t){"use strict";t.d(e,{Z:function(){return w}});var n=t(4942),o=t(63366),a=t(87462),i=t(72791),s=t(94419),u=t(28182),l=t(76147),c=t(52930),d=t(17133),f=t(10843),p=t(31402),m=t(66934),Z=t(75878),v=t(21217);function h(r){return(0,v.Z)("MuiInputLabel",r)}(0,Z.Z)("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);var x=t(80184),b=["disableAnimation","margin","shrink","variant","className"],k=(0,m.ZP)(d.Z,{shouldForwardProp:function(r){return(0,m.FO)(r)||"classes"===r},name:"MuiInputLabel",slot:"Root",overridesResolver:function(r,e){var t=r.ownerState;return[(0,n.Z)({},"& .".concat(f.Z.asterisk),e.asterisk),e.root,t.formControl&&e.formControl,"small"===t.size&&e.sizeSmall,t.shrink&&e.shrink,!t.disableAnimation&&e.animated,e[t.variant]]}})((function(r){var e=r.theme,t=r.ownerState;return(0,a.Z)({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%"},t.formControl&&{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"},"small"===t.size&&{transform:"translate(0, 17px) scale(1)"},t.shrink&&{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"},!t.disableAnimation&&{transition:e.transitions.create(["color","transform","max-width"],{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut})},"filled"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(12px, 13px) scale(1)"},t.shrink&&(0,a.Z)({userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"},"small"===t.size&&{transform:"translate(12px, 4px) scale(0.75)"})),"outlined"===t.variant&&(0,a.Z)({zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"},"small"===t.size&&{transform:"translate(14px, 9px) scale(1)"},t.shrink&&{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}))})),w=i.forwardRef((function(r,e){var t=(0,p.Z)({name:"MuiInputLabel",props:r}),n=t.disableAnimation,i=void 0!==n&&n,d=t.shrink,f=t.className,m=(0,o.Z)(t,b),Z=(0,c.Z)(),v=d;"undefined"===typeof v&&Z&&(v=Z.filled||Z.focused||Z.adornedStart);var w=(0,l.Z)({props:t,muiFormControl:Z,states:["size","variant","required"]}),y=(0,a.Z)({},t,{disableAnimation:i,formControl:Z,shrink:v,size:w.size,variant:w.variant,required:w.required}),C=function(r){var e=r.classes,t=r.formControl,n=r.size,o=r.shrink,i={root:["root",t&&"formControl",!r.disableAnimation&&"animated",o&&"shrink","small"===n&&"sizeSmall",r.variant],asterisk:[r.required&&"asterisk"]},u=(0,s.Z)(i,h,e);return(0,a.Z)({},e,u)}(y);return(0,x.jsx)(k,(0,a.Z)({"data-shrink":v,ownerState:y,ref:e,className:(0,u.Z)(C.root,f)},m,{classes:C}))}))},31260:function(r,e,t){"use strict";var n=t(78949);e.Z=n.Z},28610:function(r,e,t){"use strict";t.r(e),t.d(e,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return i.Z},debounce:function(){return s.Z},deprecatedPropType:function(){return u},isMuiElement:function(){return l.Z},ownerDocument:function(){return c.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return f},setRef:function(){return p},unstable_ClassNameGenerator:function(){return w},unstable_useEnhancedEffect:function(){return m.Z},unstable_useId:function(){return Z.Z},unsupportedProp:function(){return v},useControlled:function(){return h.Z},useEventCallback:function(){return x.Z},useForkRef:function(){return b.Z},useIsFocusVisible:function(){return k.Z}});var n=t(55902),o=t(14036),a=t(31260),i=t(76189),s=t(83199);var u=function(r,e){return function(){return null}},l=t(19103),c=t(98301),d=t(17602);t(87462);var f=function(r,e){return function(){return null}},p=t(62971).Z,m=t(40162),Z=t(67384);var v=function(r,e,t,n,o){return null},h=t(98278),x=t(89683),b=t(42071),k=t(23031),w={configure:function(r){n.Z.configure(r)}}},19103:function(r,e,t){"use strict";t.d(e,{Z:function(){return o}});var n=t(72791);var o=function(r,e){return n.isValidElement(r)&&-1!==e.indexOf(r.type.muiName)}},78949:function(r,e,t){"use strict";function n(){for(var r=arguments.length,e=new Array(r),t=0;t {\n acc[state] = props[state];\n if (muiFormControl) {\n if (typeof props[state] === 'undefined') {\n acc[state] = muiFormControl[state];\n }\n }\n return acc;\n }, {});\n}","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"children\", \"className\", \"color\", \"component\", \"disabled\", \"error\", \"filled\", \"focused\", \"required\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport capitalize from '../utils/capitalize';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport formLabelClasses, { getFormLabelUtilityClasses } from './formLabelClasses';\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n color,\n focused,\n disabled,\n error,\n filled,\n required\n } = ownerState;\n const slots = {\n root: ['root', `color${capitalize(color)}`, disabled && 'disabled', error && 'error', filled && 'filled', focused && 'focused', required && 'required'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormLabelUtilityClasses, classes);\n};\nexport const FormLabelRoot = styled('label', {\n name: 'MuiFormLabel',\n slot: 'Root',\n overridesResolver: ({\n ownerState\n }, styles) => {\n return _extends({}, styles.root, ownerState.color === 'secondary' && styles.colorSecondary, ownerState.filled && styles.filled);\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n color: (theme.vars || theme).palette.text.secondary\n}, theme.typography.body1, {\n lineHeight: '1.4375em',\n padding: 0,\n position: 'relative',\n [`&.${formLabelClasses.focused}`]: {\n color: (theme.vars || theme).palette[ownerState.color].main\n },\n [`&.${formLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n },\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\nconst FormLabel = /*#__PURE__*/React.forwardRef(function FormLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormLabel'\n });\n const {\n children,\n className,\n component = 'label'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['color', 'required', 'focused', 'disabled', 'error', 'filled']\n });\n const ownerState = _extends({}, props, {\n color: fcs.color || 'primary',\n component,\n disabled: fcs.disabled,\n error: fcs.error,\n filled: fcs.filled,\n focused: fcs.focused,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormLabelRoot, _extends({\n as: component,\n ownerState: ownerState,\n className: clsx(classes.root, className),\n ref: ref\n }, other, {\n children: [children, fcs.required && /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * If `true`, the label should be displayed in a disabled state.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the label should use filled classes key.\n */\n filled: PropTypes.bool,\n /**\n * If `true`, the input of this label is focused (used by `FormGroup` components).\n */\n focused: PropTypes.bool,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default FormLabel;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getFormLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormLabel', slot);\n}\nconst formLabelClasses = generateUtilityClasses('MuiFormLabel', ['root', 'colorSecondary', 'focused', 'disabled', 'error', 'filled', 'required', 'asterisk']);\nexport default formLabelClasses;","import { unstable_generateUtilityClasses as generateUtilityClasses } from '@mui/utils';\nimport generateUtilityClass from '../generateUtilityClass';\nexport function getInputLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiInputLabel', slot);\n}\nconst inputLabelClasses = generateUtilityClasses('MuiInputLabel', ['root', 'focused', 'disabled', 'error', 'required', 'asterisk', 'formControl', 'sizeSmall', 'shrink', 'animated', 'standard', 'filled', 'outlined']);\nexport default inputLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"disableAnimation\", \"margin\", \"shrink\", \"variant\", \"className\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport clsx from 'clsx';\nimport formControlState from '../FormControl/formControlState';\nimport useFormControl from '../FormControl/useFormControl';\nimport FormLabel, { formLabelClasses } from '../FormLabel';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled, { rootShouldForwardProp } from '../styles/styled';\nimport { getInputLabelUtilityClasses } from './inputLabelClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n formControl,\n size,\n shrink,\n disableAnimation,\n variant,\n required\n } = ownerState;\n const slots = {\n root: ['root', formControl && 'formControl', !disableAnimation && 'animated', shrink && 'shrink', size === 'small' && 'sizeSmall', variant],\n asterisk: [required && 'asterisk']\n };\n const composedClasses = composeClasses(slots, getInputLabelUtilityClasses, classes);\n return _extends({}, classes, composedClasses);\n};\nconst InputLabelRoot = styled(FormLabel, {\n shouldForwardProp: prop => rootShouldForwardProp(prop) || prop === 'classes',\n name: 'MuiInputLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formLabelClasses.asterisk}`]: styles.asterisk\n }, styles.root, ownerState.formControl && styles.formControl, ownerState.size === 'small' && styles.sizeSmall, ownerState.shrink && styles.shrink, !ownerState.disableAnimation && styles.animated, styles[ownerState.variant]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'block',\n transformOrigin: 'top left',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n maxWidth: '100%'\n}, ownerState.formControl && {\n position: 'absolute',\n left: 0,\n top: 0,\n // slight alteration to spec spacing to match visual spec result\n transform: 'translate(0, 20px) scale(1)'\n}, ownerState.size === 'small' && {\n // Compensation for the `Input.inputSizeSmall` style.\n transform: 'translate(0, 17px) scale(1)'\n}, ownerState.shrink && {\n transform: 'translate(0, -1.5px) scale(0.75)',\n transformOrigin: 'top left',\n maxWidth: '133%'\n}, !ownerState.disableAnimation && {\n transition: theme.transitions.create(['color', 'transform', 'max-width'], {\n duration: theme.transitions.duration.shorter,\n easing: theme.transitions.easing.easeOut\n })\n}, ownerState.variant === 'filled' && _extends({\n // Chrome's autofill feature gives the input field a yellow background.\n // Since the input field is behind the label in the HTML tree,\n // the input field is drawn last and hides the label with an opaque background color.\n // zIndex: 1 will raise the label above opaque background-colors of input.\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(12px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 13px) scale(1)'\n}, ownerState.shrink && _extends({\n userSelect: 'none',\n pointerEvents: 'auto',\n transform: 'translate(12px, 7px) scale(0.75)',\n maxWidth: 'calc(133% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(12px, 4px) scale(0.75)'\n})), ownerState.variant === 'outlined' && _extends({\n // see comment above on filled.zIndex\n zIndex: 1,\n pointerEvents: 'none',\n transform: 'translate(14px, 16px) scale(1)',\n maxWidth: 'calc(100% - 24px)'\n}, ownerState.size === 'small' && {\n transform: 'translate(14px, 9px) scale(1)'\n}, ownerState.shrink && {\n userSelect: 'none',\n pointerEvents: 'auto',\n // Theoretically, we should have (8+5)*2/0.75 = 34px\n // but it feels a better when it bleeds a bit on the left, so 32px.\n maxWidth: 'calc(133% - 32px)',\n transform: 'translate(14px, -9px) scale(0.75)'\n})));\nconst InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, ref) {\n const props = useThemeProps({\n name: 'MuiInputLabel',\n props: inProps\n });\n const {\n disableAnimation = false,\n shrink: shrinkProp,\n className\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n let shrink = shrinkProp;\n if (typeof shrink === 'undefined' && muiFormControl) {\n shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;\n }\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['size', 'variant', 'required']\n });\n const ownerState = _extends({}, props, {\n disableAnimation,\n formControl: muiFormControl,\n shrink,\n size: fcs.size,\n variant: fcs.variant,\n required: fcs.required\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(InputLabelRoot, _extends({\n \"data-shrink\": shrink,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n classes: classes\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? InputLabel.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the component.\n * It supports both default and custom theme colors, which can be added as shown in the\n * [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']), PropTypes.string]),\n /**\n * If `true`, the transition animation is disabled.\n * @default false\n */\n disableAnimation: PropTypes.bool,\n /**\n * If `true`, the component is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is displayed in an error state.\n */\n error: PropTypes.bool,\n /**\n * If `true`, the `input` of this label is focused.\n */\n focused: PropTypes.bool,\n /**\n * If `dense`, will adjust vertical spacing. This is normally obtained via context from\n * FormControl.\n */\n margin: PropTypes.oneOf(['dense']),\n /**\n * if `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * If `true`, the label is shrunk.\n */\n shrink: PropTypes.bool,\n /**\n * The size of the component.\n * @default 'normal'\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['normal', 'small']), PropTypes.string]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The variant to use.\n */\n variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])\n} : void 0;\nexport default InputLabel;","import { unstable_createChainedFunction as createChainedFunction } from '@mui/utils';\nexport default createChainedFunction;","import { unstable_deprecatedPropType as deprecatedPropType } from '@mui/utils';\nexport default deprecatedPropType;","export default function deprecatedPropType(validator, reason) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n return (props, propName, componentName, location, propFullName) => {\n const componentNameSafe = componentName || '<>';\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The ${location} \\`${propFullNameSafe}\\` of ` + `\\`${componentNameSafe}\\` is deprecated. ${reason}`);\n }\n return null;\n };\n}","import { unstable_requirePropFactory as requirePropFactory } from '@mui/utils';\nexport default requirePropFactory;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function requirePropFactory(componentNameInError, Component) {\n if (process.env.NODE_ENV === 'production') {\n return () => null;\n }\n\n // eslint-disable-next-line react/forbid-foreign-prop-types\n const prevPropTypes = Component ? _extends({}, Component.propTypes) : null;\n const requireProp = requiredProp => (props, propName, componentName, location, propFullName, ...args) => {\n const propFullNameSafe = propFullName || propName;\n const defaultTypeChecker = prevPropTypes == null ? void 0 : prevPropTypes[propFullNameSafe];\n if (defaultTypeChecker) {\n const typeCheckerResult = defaultTypeChecker(props, propName, componentName, location, propFullName, ...args);\n if (typeCheckerResult) {\n return typeCheckerResult;\n }\n }\n if (typeof props[propName] !== 'undefined' && !props[requiredProp]) {\n return new Error(`The prop \\`${propFullNameSafe}\\` of ` + `\\`${componentNameInError}\\` can only be used together with the \\`${requiredProp}\\` prop.`);\n }\n return null;\n };\n return requireProp;\n}","import { unstable_setRef as setRef } from '@mui/utils';\nexport default setRef;","import { unstable_unsupportedProp as unsupportedProp } from '@mui/utils';\nexport default unsupportedProp;","export default function unsupportedProp(props, propName, componentName, location, propFullName) {\n if (process.env.NODE_ENV === 'production') {\n return null;\n }\n const propFullNameSafe = propFullName || propName;\n if (typeof props[propName] !== 'undefined') {\n return new Error(`The prop \\`${propFullNameSafe}\\` is not supported. Please remove it.`);\n }\n return null;\n}","import { unstable_ClassNameGenerator as ClassNameGenerator } from '@mui/base/className';\nexport { default as capitalize } from './capitalize';\nexport { default as createChainedFunction } from './createChainedFunction';\nexport { default as createSvgIcon } from './createSvgIcon';\nexport { default as debounce } from './debounce';\nexport { default as deprecatedPropType } from './deprecatedPropType';\nexport { default as isMuiElement } from './isMuiElement';\nexport { default as ownerDocument } from './ownerDocument';\nexport { default as ownerWindow } from './ownerWindow';\nexport { default as requirePropFactory } from './requirePropFactory';\nexport { default as setRef } from './setRef';\nexport { default as unstable_useEnhancedEffect } from './useEnhancedEffect';\nexport { default as unstable_useId } from './useId';\nexport { default as unsupportedProp } from './unsupportedProp';\nexport { default as useControlled } from './useControlled';\nexport { default as useEventCallback } from './useEventCallback';\nexport { default as useForkRef } from './useForkRef';\nexport { default as useIsFocusVisible } from './useIsFocusVisible';\n// TODO: remove this export once ClassNameGenerator is stable\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const unstable_ClassNameGenerator = {\n configure: generator => {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['MUI: `ClassNameGenerator` import from `@mui/material/utils` is outdated and might cause unexpected issues.', '', \"You should use `import { unstable_ClassNameGenerator } from '@mui/material/className'` instead\", '', 'The detail of the issue: https://github.com/mui/material-ui/issues/30011#issuecomment-1024993401', '', 'The updated documentation: https://mui.com/guides/classname-generator/'].join('\\n'));\n }\n ClassNameGenerator.configure(generator);\n }\n};","import { unstable_isMuiElement as isMuiElement } from '@mui/utils';\nexport default isMuiElement;","import * as React from 'react';\nexport default function isMuiElement(element, muiNames) {\n return /*#__PURE__*/React.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1;\n}","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","_default","default","jsx","d","Object","defineProperty","value","enumerable","get","_utils","createSvgIcon","FormControlContext","React","undefined","formControlState","_ref","props","states","muiFormControl","reduce","acc","state","useFormControl","_excluded","FormLabelRoot","styled","name","slot","overridesResolver","styles","ownerState","_extends","root","color","colorSecondary","filled","_ref2","_extends2","theme","vars","palette","text","secondary","typography","body1","lineHeight","padding","position","_defineProperty","concat","formLabelClasses","focused","main","disabled","error","AsteriskComponent","asterisk","_ref3","FormLabel","inProps","ref","useThemeProps","children","className","_props$component","component","other","_objectWithoutPropertiesLoose","fcs","required","classes","slots","capitalize","composeClasses","getFormLabelUtilityClasses","useUtilityClasses","_jsxs","as","clsx","generateUtilityClass","generateUtilityClasses","getInputLabelUtilityClasses","InputLabelRoot","shouldForwardProp","prop","rootShouldForwardProp","formControl","size","sizeSmall","shrink","disableAnimation","animated","variant","display","transformOrigin","whiteSpace","overflow","textOverflow","maxWidth","left","top","transform","transition","transitions","create","duration","shorter","easing","easeOut","zIndex","pointerEvents","userSelect","_props$disableAnimati","shrinkProp","adornedStart","composedClasses","_jsx","createChainedFunction","validator","reason","componentNameInError","Component","propName","componentName","location","propFullName","unstable_ClassNameGenerator","configure","generator","ClassNameGenerator","element","muiNames","indexOf","type","muiName","module","obj","__esModule"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9918.d7fc90b7.chunk.js b/portal-ui/build/static/js/9918.d7fc90b7.chunk.js deleted file mode 100644 index 4b1ec1578..000000000 --- a/portal-ui/build/static/js/9918.d7fc90b7.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9918],{79918:function(e,t,n){n.r(t),n.d(t,{default:function(){return W}});var s=n(29439),i=n(1413),r=n(72791),o=n(78687),l=n(57689),a=n(11135),c=n(25787),u=n(61889),d=n(64554),f=n(26181),x=n.n(f),p=n(23814),h=n(56087),m=n(38442),g=n(75578),v=n(59197),j=n(84861),Z=n(29945),S=n(45987),b=n(36151),T=n(80184),_=["isLoading","onClick","label"],E=function(e){var t=e.isLoading,n=e.onClick,s=e.label,r=(0,S.Z)(e,_);return(0,T.jsx)(b.Z,(0,i.Z)((0,i.Z)({color:"primary",onClick:n,variant:"text",sx:{padding:0,margin:0,alignItems:"flex-start",justifyContent:"flex-start",display:"inline-flex",height:"auto",textDecoration:"underline",color:"#2781B0","&:hover":{background:"#ffffff",textDecoration:"underline"}},disableRipple:!0,disableFocusRipple:!0},r),{},{children:t?(0,T.jsx)(Z.aNw,{style:{width:16,height:16}}):s}))},y=n(13400),C=["disabled","onClick"],N=(0,c.Z)((function(e){return(0,a.Z)({root:{"&:hover":{backgroundColor:"#E2E2E2"}}})}))((function(e){var t=e.disabled,n=e.onClick,s=(0,S.Z)(e,C);return(0,T.jsx)(y.Z,(0,i.Z)((0,i.Z)({size:"small",disabled:t,onClick:n},s),{},{children:(0,T.jsx)(Z.dY8,{})}))})),I=function(e){var t=e.resourceName,n=e.iamScopes,s=e.secureCmpProps,r=void 0===s?{}:s,o=e.children;return(0,T.jsx)(m.s,(0,i.Z)((0,i.Z)({scopes:n,resource:t,errorProps:{disabled:!0}},r),{},{children:o}))},k=function(e){var t=e.isLoading,n=void 0===t||t,s=e.resourceName,i=void 0===s?"":s,r=e.iamScopes,o=e.secureCmpProps,l=void 0===o?{}:o,a=e.property,c=void 0===a?null:a,u=e.value,f=void 0===u?null:u,x=e.onEdit;return(0,T.jsxs)(d.Z,{sx:{display:"flex",alignItems:"baseline",justifyContent:"flex-start"},children:[(0,T.jsx)(v.Z,{label:c,value:(0,T.jsx)(I,{resourceName:i,iamScopes:r,secureCmpProps:l,children:(0,T.jsx)(E,{isLoading:n,onClick:x,label:f})})}),(0,T.jsx)(I,{resourceName:i,iamScopes:r,secureCmpProps:l,children:(0,T.jsx)(N,{onClick:x,sx:{background:"#f8f8f8",marginLeft:"3px",top:3,"& .min-icon":{width:"16px",height:"16px"}}})})]})},F=n(45248),O=function(e){var t=e.bucketSize;return(0,T.jsxs)(d.Z,{sx:{display:"flex",alignItems:"center","& .min-icon":{height:37,width:37}},children:[(0,T.jsx)(Z.Mhr,{}),(0,T.jsxs)(d.Z,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"center",flexFlow:"column",marginLeft:"20px",fontSize:"19px"},children:[(0,T.jsx)("label",{style:{fontWeight:600},children:"Reported Usage:"}),(0,T.jsx)("label",{children:(0,F.ae)(t)})]})]})},P=function(e){var t=e.quota;return(0,T.jsxs)(d.Z,{sx:{display:"flex",alignItems:"center","& .min-icon":{height:37,width:37}},children:[(0,T.jsx)(Z.sjJ,{}),(0,T.jsxs)(d.Z,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"center",flexFlow:"column",marginLeft:"20px",fontSize:"19px"},children:[(0,T.jsxs)("label",{style:{fontWeight:600,textTransform:"capitalize"},children:[null===t||void 0===t?void 0:t.type," Quota"]}),(0,T.jsxs)("label",{children:[" ",(0,F.ae)("".concat(null===t||void 0===t?void 0:t.quota),!0)]})]})]})},A=n(50896),R=n(87995),G=n(9859),U=n(81551),B=n(91685),w=n(31776),L=n(82342),D=(0,g.Z)(r.lazy((function(){return Promise.all([n.e(5994),n.e(5473),n.e(9816)]).then(n.bind(n,33690))}))),M=(0,g.Z)(r.lazy((function(){return Promise.all([n.e(5994),n.e(5473),n.e(7391),n.e(1520),n.e(7584)]).then(n.bind(n,1604))}))),K=(0,g.Z)(r.lazy((function(){return Promise.all([n.e(5994),n.e(5473),n.e(7391),n.e(4882),n.e(9952)]).then(n.bind(n,99952))}))),z=(0,g.Z)(r.lazy((function(){return n.e(402).then(n.bind(n,70402))}))),V=(0,g.Z)(r.lazy((function(){return Promise.all([n.e(6993),n.e(1705)]).then(n.bind(n,71705))}))),Y=(0,g.Z)(r.lazy((function(){return Promise.all([n.e(5994),n.e(5473),n.e(7391),n.e(1581)]).then(n.bind(n,1581))}))),Q={display:"grid",gridTemplateColumns:{xs:"1fr",sm:"2fr 1fr"},gridAutoFlow:{xs:"dense",sm:"row"},gap:2},W=(0,c.Z)((function(e){return(0,a.Z)((0,i.Z)((0,i.Z)({},p.bK),p.VI))}))((function(e){var t,n=e.classes,a=(0,U.TL)(),c=(0,l.UO)(),f=(0,o.v9)(G.HQ),p=(0,o.v9)(G.G6),g=(0,o.v9)(R.N5),S=(0,r.useState)(null),b=(0,s.Z)(S,2),_=b[0],E=b[1],y=(0,r.useState)("0"),C=(0,s.Z)(y,2),N=C[0],I=C[1],F=(0,r.useState)(!1),W=(0,s.Z)(F,2),q=W[0],J=W[1],$=(0,r.useState)(!1),H=(0,s.Z)($,2),X=H[0],ee=H[1],te=(0,r.useState)(!1),ne=(0,s.Z)(te,2),se=ne[0],ie=ne[1],re=(0,r.useState)(!0),oe=(0,s.Z)(re,2),le=oe[0],ae=oe[1],ce=(0,r.useState)(!0),ue=(0,s.Z)(ce,2),de=ue[0],fe=ue[1],xe=(0,r.useState)(!0),pe=(0,s.Z)(xe,2),he=pe[0],me=pe[1],ge=(0,r.useState)(!0),ve=(0,s.Z)(ge,2),je=ve[0],Ze=ve[1],Se=(0,r.useState)(!0),be=(0,s.Z)(Se,2),Te=be[0],_e=be[1],Ee=(0,r.useState)(!0),ye=(0,s.Z)(Ee,2),Ce=ye[0],Ne=ye[1],Ie=(0,r.useState)(!0),ke=(0,s.Z)(Ie,2),Fe=ke[0],Oe=ke[1],Pe=(0,r.useState)(!0),Ae=(0,s.Z)(Pe,2),Re=Ae[0],Ge=Ae[1],Ue=(0,r.useState)(),Be=(0,s.Z)(Ue,2),we=Be[0],Le=Be[1],De=(0,r.useState)(!1),Me=(0,s.Z)(De,2),Ke=Me[0],ze=Me[1],Ve=(0,r.useState)(null),Ye=(0,s.Z)(Ve,2),Qe=Ye[0],We=Ye[1],qe=(0,r.useState)(!1),Je=(0,s.Z)(qe,2),$e=Je[0],He=Je[1],Xe=(0,r.useState)(!1),et=(0,s.Z)(Xe,2),tt=et[0],nt=et[1],st=(0,r.useState)(null),it=(0,s.Z)(st,2),rt=it[0],ot=it[1],lt=(0,r.useState)(!1),at=(0,s.Z)(lt,2),ct=at[0],ut=at[1],dt=(0,r.useState)(!1),ft=(0,s.Z)(dt,2),xt=ft[0],pt=ft[1],ht=(0,r.useState)(!1),mt=(0,s.Z)(ht,2),gt=mt[0],vt=mt[1],jt=(0,r.useState)(!1),Zt=(0,s.Z)(jt,2),St=Zt[0],bt=Zt[1];(0,r.useEffect)((function(){a((0,R.Sc)("bucket_detail_summary"))}),[]);var Tt=c.bucketName||"",_t="n/a",Et="";null!==p&&p.access&&p.definition&&(_t=p.access,Et=p.definition);var yt=(0,m.F)(Tt,[h.Ft.S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION,h.Ft.S3_GET_ACTIONS]),Ct=(0,m.F)(Tt,[h.Ft.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,h.Ft.S3_GET_ACTIONS]),Nt=(0,m.F)(Tt,[h.Ft.ADMIN_GET_BUCKET_QUOTA]);(0,r.useEffect)((function(){me(!!f)}),[f,me]),(0,r.useEffect)((function(){je&&(Ct?w.h.buckets.getBucketEncryptionInfo(Tt).then((function(e){e.data.algorithm&&(He(!0),E(e.data)),Ze(!1)})).catch((function(e){"The server side encryption configuration was not found"===(e=(0,L.g)(e.error)).errorMessage&&(He(!1),E(null)),Ze(!1)})):(He(!1),E(null),Ze(!1)))}),[je,Tt,Ct]),(0,r.useEffect)((function(){Te&&g&&w.h.buckets.getBucketVersioning(Tt).then((function(e){Le(e.data),_e(!1)})).catch((function(e){a((0,R.Ih)((0,L.g)(e.error))),_e(!1)}))}),[Te,a,Tt,g]),(0,r.useEffect)((function(){Ce&&g&&(Nt?w.h.buckets.getBucketQuota(Tt).then((function(e){We(e.data),e.data.quota?ze(!0):ze(!1),Ne(!1)})).catch((function(e){a((0,R.Ih)((0,L.g)(e.error))),ze(!1),Ne(!1)})):(ze(!1),Ne(!1)))}),[Ce,_e,a,Tt,g,Nt]),(0,r.useEffect)((function(){Te&&g&&(yt?w.h.buckets.getBucketObjectLockingStatus(Tt).then((function(e){J(e.data.object_locking_enabled),ae(!1)})).catch((function(e){a((0,R.Ih)((0,L.g)(e.error))),ae(!1)})):ae(!1))}),[le,a,Tt,Te,g,yt]),(0,r.useEffect)((function(){de&&w.h.buckets.listBuckets().then((function(e){var t=x()(e.data,"buckets",[]).find((function(e){return e.name===Tt})),n=x()(t,"size","0");fe(!1),I(n)})).catch((function(e){fe(!1),a((0,R.Ih)((0,L.g)(e.error)))}))}),[de,a,Tt]),(0,r.useEffect)((function(){Fe&&g&&w.h.buckets.getBucketReplication(Tt).then((function(e){var t=e.data.rules?e.data.rules:[];ie(t.length>0),Oe(!1)})).catch((function(e){a((0,R.Ih)((0,L.g)(e.error))),Oe(!1)}))}),[Fe,a,Tt,g]),(0,r.useEffect)((function(){Re&&q&&w.h.buckets.getBucketRetentionConfig(Tt).then((function(e){Ge(!1),nt(!0),ot(e.data)})).catch((function(e){nt(!1),Ge(!1),ot(null)}))}),[Re,q,Tt]);var It=function(){a((0,G.d5)(!0)),me(!0),fe(!0),_e(!0),Ze(!0),Ge(!0)},kt=null===we||void 0===we?void 0:we.status,Ft="Unversioned (Default)";return"Enabled"===kt?Ft="Versioned":"Suspended"===kt&&(Ft="Suspended"),(0,T.jsxs)(r.Fragment,{children:[xt&&(0,T.jsx)(K,{open:xt,selectedBucket:Tt,encryptionEnabled:$e,encryptionCfg:_,closeModalAndRefresh:function(){pt(!1),Ze(!0)}}),gt&&(0,T.jsx)(Y,{open:gt,selectedBucket:Tt,enabled:Ke,cfg:Qe,closeModalAndRefresh:function(){vt(!1),Ne(!0)}}),X&&(0,T.jsx)(D,{bucketName:Tt,open:X,actualPolicy:_t,actualDefinition:Et,closeModalAndRefresh:function(){ee(!1),It()}}),ct&&(0,T.jsx)(M,{bucketName:Tt,open:ct,closeModalAndRefresh:function(){ut(!1),It()}}),St&&(0,T.jsx)(z,{closeVersioningModalAndRefresh:function(e){bt(!1),e&&It()},modalOpen:St,selectedBucket:Tt,versioningInfo:we}),(0,T.jsx)(A.Z,{children:"Summary"}),(0,T.jsxs)(u.ZP,{container:!0,spacing:1,children:[(0,T.jsx)(m.s,{scopes:[h.Ft.S3_GET_BUCKET_POLICY,h.Ft.S3_GET_ACTIONS],resource:Tt,children:(0,T.jsx)(u.ZP,{item:!0,xs:12,children:(0,T.jsxs)(d.Z,{sx:(0,i.Z)({},Q),children:[(0,T.jsxs)(d.Z,{sx:(0,i.Z)({},Q),children:[(0,T.jsx)(m.s,{scopes:[h.Ft.S3_GET_BUCKET_POLICY,h.Ft.S3_GET_ACTIONS],resource:Tt,children:(0,T.jsx)(k,{iamScopes:[h.Ft.S3_PUT_BUCKET_POLICY,h.Ft.S3_PUT_ACTIONS],resourceName:Tt,property:"Access Policy:",value:_t.toLowerCase(),onEdit:function(){ee(!0)},isLoading:he})}),(0,T.jsx)(m.s,{scopes:[h.Ft.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,h.Ft.S3_GET_ACTIONS],resource:Tt,children:(0,T.jsx)(k,{iamScopes:[h.Ft.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,h.Ft.S3_PUT_ACTIONS],resourceName:Tt,property:"Encryption:",value:$e?"Enabled":"Disabled",onEdit:function(){pt(!0)},isLoading:je})}),(0,T.jsx)(m.s,{scopes:[h.Ft.S3_GET_REPLICATION_CONFIGURATION,h.Ft.S3_GET_ACTIONS],resource:Tt,children:(0,T.jsx)(v.Z,{label:"Replication:",value:(0,T.jsx)(j.Z,{icon:se?(0,T.jsx)(Z.E31,{}):(0,T.jsx)(Z.dRf,{}),label:(0,T.jsx)("label",{className:n.textMuted,children:se?"Enabled":"Disabled"})})})}),(0,T.jsx)(m.s,{scopes:[h.Ft.S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION,h.Ft.S3_GET_ACTIONS],resource:Tt,children:(0,T.jsx)(v.Z,{label:"Object Locking:",value:(0,T.jsx)(j.Z,{icon:q?(0,T.jsx)(Z.E31,{}):(0,T.jsx)(Z.dRf,{}),label:(0,T.jsx)("label",{className:n.textMuted,children:q?"Enabled":"Disabled"})})})}),(0,T.jsx)(d.Z,{className:n.spacerTop,children:(0,T.jsx)(v.Z,{label:"Tags:",value:(0,T.jsx)(V,{bucketName:Tt})})}),(0,T.jsx)(k,{iamScopes:[h.Ft.ADMIN_SET_BUCKET_QUOTA],resourceName:Tt,property:"Quota:",value:Ke?"Enabled":"Disabled",onEdit:function(){vt(!0)},isLoading:Ce})]}),(0,T.jsxs)(d.Z,{sx:{display:"grid",gridTemplateColumns:"1fr",alignItems:"flex-start"},children:[(0,T.jsx)(O,{bucketSize:"".concat(N)}),Ke&&Qe?(0,T.jsx)(P,{quota:Qe}):null]})]})})}),g&&(0,T.jsx)(m.s,{scopes:[h.Ft.S3_GET_BUCKET_VERSIONING,h.Ft.S3_GET_ACTIONS],resource:Tt,children:(0,T.jsxs)(u.ZP,{item:!0,xs:12,children:[(0,T.jsx)(A.Z,{children:"Versioning"}),(0,T.jsx)(d.Z,{sx:(0,i.Z)({},Q),children:(0,T.jsxs)(d.Z,{sx:(0,i.Z)({},Q),children:[(0,T.jsx)(k,{iamScopes:[h.Ft.S3_PUT_BUCKET_VERSIONING,h.Ft.S3_PUT_ACTIONS],resourceName:Tt,property:"Current Status:",value:(0,T.jsx)(d.Z,{sx:{display:"flex",flexDirection:"column",textDecorationStyle:"normal",placeItems:"flex-start",justifyItems:"flex-start",gap:3},children:(0,T.jsxs)("div",{children:[" ",Ft]})}),onEdit:function(){bt(!0)},isLoading:Te}),"Enabled"===(null===we||void 0===we?void 0:we.status)?(0,T.jsx)(B.Z,{versioningState:we}):null]})})]})}),q&&(0,T.jsx)(m.s,{scopes:[h.Ft.S3_GET_OBJECT_RETENTION,h.Ft.S3_GET_ACTIONS],resource:Tt,children:(0,T.jsxs)(u.ZP,{item:!0,xs:12,children:[(0,T.jsx)(A.Z,{children:"Retention"}),(0,T.jsxs)(d.Z,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"2fr 1fr"},gridAutoFlow:{xs:"dense",sm:"row"},gap:2},children:[(0,T.jsxs)(d.Z,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"2fr 1fr"},gridAutoFlow:{xs:"dense",sm:"row"},gap:2},children:[(0,T.jsx)(k,{iamScopes:[h.Ft.ADMIN_SET_BUCKET_QUOTA],resourceName:Tt,property:"Retention:",value:tt?"Enabled":"Disabled",onEdit:function(){ut(!0)},isLoading:Re}),(0,T.jsx)(v.Z,{label:"Mode:",value:(0,T.jsx)("label",{className:n.textMuted,style:{textTransform:"capitalize"},children:rt&&rt.mode?rt.mode:"-"})}),(0,T.jsx)(v.Z,{label:"Validity:",value:(0,T.jsxs)("label",{className:n.textMuted,style:{textTransform:"capitalize"},children:[rt&&rt.validity," ",rt&&(1===rt.validity?null===(t=rt.unit)||void 0===t?void 0:t.slice(0,-1):rt.unit)]})})]}),(0,T.jsx)(d.Z,{sx:{display:"grid",gridTemplateColumns:"1fr",alignItems:"flex-start"}})]})]})})]})]})}))},84861:function(e,t,n){n(72791);var s=n(64554),i=n(80184);t.Z=function(e){var t=e.icon,n=void 0===t?null:t,r=e.label,o=void 0===r?null:r;return(0,i.jsxs)(s.Z,{sx:{display:"flex"},children:[(0,i.jsx)("div",{style:{height:16,width:16,display:"flex",alignItems:"center",marginTop:5},children:n}),(0,i.jsx)("div",{style:{marginLeft:n?5:"none"},children:o})]})}},91685:function(e,t,n){n(72791);var s=n(64554),i=n(84861),r=n(29945),o=n(80184);t.Z=function(e){var t,n,l=e.versioningState,a=void 0===l?{}:l;return(0,o.jsxs)(s.Z,{sx:{display:"flex",flexDirection:"column",gap:2},children:[(0,o.jsx)(s.Z,{sx:{fontWeight:"medium",display:"flex",gap:2},children:a.excludeFolders?(0,o.jsx)(i.Z,{icon:a.excludeFolders?(0,o.jsx)(r.E31,{style:{color:"green"}}):(0,o.jsx)(r.dRf,{}),label:(0,o.jsx)("label",{style:{textDecoration:"normal"},children:"Exclude Folders"})}):null}),null!==(t=a.excludedPrefixes)&&void 0!==t&&t.length?(0,o.jsxs)(s.Z,{sx:{fontWeight:"medium",display:"flex",justifyItems:"end",placeItems:"flex-start",flexDirection:"column",gap:1},children:[(0,o.jsx)(s.Z,{children:"Excluded Prefixes :"}),(0,o.jsx)("div",{style:{maxHeight:"200px",overflowY:"auto",placeItems:"flex-start",justifyItems:"end",flexDirection:"column",display:"flex"},children:null===(n=a.excludedPrefixes)||void 0===n?void 0:n.map((function(e){return(0,o.jsx)("div",{children:(0,o.jsx)("strong",{children:e.prefix})})}))})]}):null]})}},59197:function(e,t,n){n.d(t,{Z:function(){return I}});var s=n(1413),i=n(72791),r=n(4942),o=n(63366),l=n(87462),a=n(28182),c=n(82466),u=n(94419),d=n(21217),f=(0,n(44046).ZP)(),x=n(86083),p=n(78519),h=n(85080),m=n(51184),g=n(45682),v=n(80184),j=["component","direction","spacing","divider","children","className","useFlexGap"],Z=(0,h.Z)(),S=f("div",{name:"MuiStack",slot:"Root",overridesResolver:function(e,t){return t.root}});function b(e){return(0,x.Z)({props:e,name:"MuiStack",defaultTheme:Z})}function T(e,t){var n=i.Children.toArray(e).filter(Boolean);return n.reduce((function(e,s,r){return e.push(s),r0?a[n[t-1]]:"column";a[e]=s}}));s=(0,c.Z)(s,(0,m.k9)({theme:n},u,(function(e,n){return t.useFlexGap?{gap:(0,g.NA)(i,e)}:{"& > :not(style) + :not(style)":(0,r.Z)({margin:0},"margin".concat((s=n?a[n]:t.direction,{row:"Left","row-reverse":"Right",column:"Top","column-reverse":"Bottom"}[s])),(0,g.NA)(i,e))};var s})))}return s=(0,m.dt)(n.breakpoints,s)};var E=n(66934),y=n(31402),C=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.createStyledComponent,n=void 0===t?S:t,s=e.useThemeProps,r=void 0===s?b:s,c=e.componentName,f=void 0===c?"MuiStack":c,x=n(_),h=i.forwardRef((function(e,t){var n=r(e),s=(0,p.Z)(n),i=s.component,c=void 0===i?"div":i,h=s.direction,m=void 0===h?"column":h,g=s.spacing,Z=void 0===g?0:g,S=s.divider,b=s.children,_=s.className,E=s.useFlexGap,y=void 0!==E&&E,C=(0,o.Z)(s,j),N={direction:m,spacing:Z,useFlexGap:y},I=(0,u.Z)({root:["root"]},(function(e){return(0,d.Z)(f,e)}),{});return(0,v.jsx)(x,(0,l.Z)({as:c,ownerState:N,ref:t,className:(0,a.Z)(I.root,_)},C,{children:S?T(b,S):b}))}));return h}({createStyledComponent:(0,E.ZP)("div",{name:"MuiStack",slot:"Root",overridesResolver:function(e,t){return t.root}}),useThemeProps:function(e){return(0,y.Z)({props:e,name:"MuiStack"})}}),N=C,I=function(e){var t=e.label,n=void 0===t?null:t,i=e.value,r=void 0===i?"-":i,o=e.orientation,l=void 0===o?"column":o,a=e.stkProps,c=void 0===a?{}:a,u=e.lblProps,d=void 0===u?{}:u,f=e.valProps,x=void 0===f?{}:f;return(0,v.jsxs)(N,(0,s.Z)((0,s.Z)({direction:{xs:"column",sm:l}},c),{},{children:[(0,v.jsx)("label",(0,s.Z)((0,s.Z)({style:{marginRight:5,fontWeight:600}},d),{},{children:n})),(0,v.jsx)("label",(0,s.Z)((0,s.Z)({style:{marginRight:5,fontWeight:500}},x),{},{children:r}))]}))}}}]); -//# sourceMappingURL=9918.d7fc90b7.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/9918.d7fc90b7.chunk.js.map b/portal-ui/build/static/js/9918.d7fc90b7.chunk.js.map deleted file mode 100644 index 5ff2e6a3c..000000000 --- a/portal-ui/build/static/js/9918.d7fc90b7.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/9918.d7fc90b7.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/SummaryItems/ActionLink.tsx","screens/Console/Buckets/BucketDetails/SummaryItems/EditActionButton.tsx","screens/Console/Buckets/BucketDetails/SummaryItems/EditablePropertyItem.tsx","screens/Console/Buckets/BucketDetails/SummaryItems/ReportedUsage.tsx","screens/Console/Buckets/BucketDetails/SummaryItems/BucketQuotaSize.tsx","screens/Console/Buckets/BucketDetails/BucketSummaryPanel.tsx","screens/Console/Buckets/BucketDetails/SummaryItems/LabelWithIcon.tsx","screens/Console/Buckets/VersioningInfo.tsx","../node_modules/@mui/system/esm/styled.js","../node_modules/@mui/system/esm/Stack/createStack.js","../node_modules/@mui/material/Stack/Stack.js","screens/Console/Common/UsageBarWrapper/LabelValuePair.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Button } from \"@mui/material\";\nimport { Loader } from \"mds\";\n\ntype ActionLinkProps = {\n isLoading: boolean;\n onClick: () => void;\n classes?: any;\n label: any;\n [x: string]: any;\n};\n\n// TODO: Create an mds version of this.\nconst ActionLink = ({\n isLoading,\n onClick,\n label,\n ...restProps\n}: ActionLinkProps) => {\n return (\n \n {isLoading ? : label}\n \n );\n};\n\nexport default ActionLink;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { IconButton } from \"@mui/material\";\nimport { EditIcon } from \"mds\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\n\ntype EditActionButtonProps = {\n disabled?: boolean;\n onClick: () => void | any;\n [x: string]: any;\n};\n\nconst styles = (theme: Theme) =>\n createStyles({\n root: {\n \"&:hover\": {\n backgroundColor: \"#E2E2E2\",\n },\n },\n });\n\nconst EditActionButton = ({\n disabled,\n onClick,\n ...restProps\n}: EditActionButtonProps) => {\n return (\n \n \n \n );\n};\n\nexport default withStyles(styles)(EditActionButton);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport LabelValuePair from \"../../../Common/UsageBarWrapper/LabelValuePair\";\nimport { SecureComponent } from \"../../../../../common/SecureComponent\";\nimport ActionLink from \"./ActionLink\";\nimport { Box } from \"@mui/material\";\nimport EditActionButton from \"./EditActionButton\";\n\ntype EditablePropertyItemProps = {\n isLoading: boolean;\n resourceName: string;\n iamScopes: string[];\n property: any;\n value: any;\n onEdit: () => void;\n secureCmpProps?: Record;\n};\n\nconst SecureAction = ({\n resourceName,\n iamScopes,\n secureCmpProps = {},\n children,\n}: {\n resourceName: string;\n iamScopes: string[];\n children: any;\n secureCmpProps?: Record;\n}) => {\n return (\n \n {children}\n \n );\n};\n\nconst EditablePropertyItem = ({\n isLoading = true,\n resourceName = \"\",\n iamScopes,\n secureCmpProps = {},\n property = null,\n value = null,\n onEdit,\n}: EditablePropertyItemProps) => {\n return (\n \n \n \n \n }\n />\n \n \n \n \n );\n};\n\nexport default EditablePropertyItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box } from \"@mui/material\";\nimport { niceBytes } from \"../../../../../common/utils\";\nimport { ReportedUsageFullIcon } from \"mds\";\n\nconst ReportedUsage = ({ bucketSize }: { bucketSize: string }) => {\n return (\n \n \n\n \n \n Reported Usage:\n \n \n \n \n );\n};\n\nexport default ReportedUsage;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box } from \"@mui/material\";\nimport { niceBytes } from \"../../../../../common/utils\";\nimport { HardBucketQuotaIcon } from \"mds\";\n\nconst BucketQuotaSize = ({ quota }: { quota: any }) => {\n return (\n \n \n\n \n \n {quota?.type} Quota\n \n \n \n \n );\n};\n\nexport default BucketQuotaSize;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useParams } from \"react-router-dom\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { Box, Grid } from \"@mui/material\";\nimport get from \"lodash/get\";\nimport {\n spacingUtils,\n textStyleUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../common/SecureComponent\";\n\nimport withSuspense from \"../../Common/Components/withSuspense\";\nimport LabelValuePair from \"../../Common/UsageBarWrapper/LabelValuePair\";\nimport LabelWithIcon from \"./SummaryItems/LabelWithIcon\";\nimport { DisabledIcon, EnabledIcon } from \"mds\";\nimport EditablePropertyItem from \"./SummaryItems/EditablePropertyItem\";\nimport ReportedUsage from \"./SummaryItems/ReportedUsage\";\nimport BucketQuotaSize from \"./SummaryItems/BucketQuotaSize\";\nimport SectionTitle from \"../../Common/SectionTitle\";\nimport {\n selDistSet,\n setErrorSnackMessage,\n setHelpName,\n} from \"../../../../systemSlice\";\nimport {\n selBucketDetailsInfo,\n selBucketDetailsLoading,\n setBucketDetailsLoad,\n} from \"./bucketDetailsSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport VersioningInfo from \"../VersioningInfo\";\nimport { api } from \"api\";\nimport {\n BucketEncryptionInfo,\n BucketQuota,\n BucketVersioningResponse,\n GetBucketRetentionConfig,\n} from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\nconst SetAccessPolicy = withSuspense(\n React.lazy(() => import(\"./SetAccessPolicy\")),\n);\nconst SetRetentionConfig = withSuspense(\n React.lazy(() => import(\"./SetRetentionConfig\")),\n);\nconst EnableBucketEncryption = withSuspense(\n React.lazy(() => import(\"./EnableBucketEncryption\")),\n);\nconst EnableVersioningModal = withSuspense(\n React.lazy(() => import(\"./EnableVersioningModal\")),\n);\nconst BucketTags = withSuspense(\n React.lazy(() => import(\"./SummaryItems/BucketTags\")),\n);\n\nconst EnableQuota = withSuspense(React.lazy(() => import(\"./EnableQuota\")));\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...spacingUtils,\n ...textStyleUtils,\n });\n\nconst twoColCssGridLayoutConfig = {\n display: \"grid\",\n gridTemplateColumns: { xs: \"1fr\", sm: \"2fr 1fr\" },\n gridAutoFlow: { xs: \"dense\", sm: \"row\" },\n gap: 2,\n};\n\ninterface IBucketSummaryProps {\n classes: any;\n}\n\nconst BucketSummary = ({ classes }: IBucketSummaryProps) => {\n const dispatch = useAppDispatch();\n const params = useParams();\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n const bucketInfo = useSelector(selBucketDetailsInfo);\n\n const distributedSetup = useSelector(selDistSet);\n\n const [encryptionCfg, setEncryptionCfg] =\n useState(null);\n const [bucketSize, setBucketSize] = useState(\"0\");\n const [hasObjectLocking, setHasObjectLocking] = useState(\n false,\n );\n const [accessPolicyScreenOpen, setAccessPolicyScreenOpen] =\n useState(false);\n const [replicationRules, setReplicationRules] = useState(false);\n const [loadingObjectLocking, setLoadingLocking] = useState(true);\n const [loadingSize, setLoadingSize] = useState(true);\n const [bucketLoading, setBucketLoading] = useState(true);\n const [loadingEncryption, setLoadingEncryption] = useState(true);\n const [loadingVersioning, setLoadingVersioning] = useState(true);\n const [loadingQuota, setLoadingQuota] = useState(true);\n const [loadingReplication, setLoadingReplication] = useState(true);\n const [loadingRetention, setLoadingRetention] = useState(true);\n const [versioningInfo, setVersioningInfo] =\n useState();\n const [quotaEnabled, setQuotaEnabled] = useState(false);\n const [quota, setQuota] = useState(null);\n const [encryptionEnabled, setEncryptionEnabled] = useState(false);\n const [retentionEnabled, setRetentionEnabled] = useState(false);\n const [retentionConfig, setRetentionConfig] =\n useState(null);\n const [retentionConfigOpen, setRetentionConfigOpen] =\n useState(false);\n const [enableEncryptionScreenOpen, setEnableEncryptionScreenOpen] =\n useState(false);\n const [enableQuotaScreenOpen, setEnableQuotaScreenOpen] =\n useState(false);\n const [enableVersioningOpen, setEnableVersioningOpen] =\n useState(false);\n\n useEffect(() => {\n dispatch(setHelpName(\"bucket_detail_summary\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const bucketName = params.bucketName || \"\";\n\n let accessPolicy = \"n/a\";\n let policyDefinition = \"\";\n\n if (bucketInfo !== null && bucketInfo.access && bucketInfo.definition) {\n accessPolicy = bucketInfo.access;\n policyDefinition = bucketInfo.definition;\n }\n\n const displayGetBucketObjectLockConfiguration = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n\n const displayGetBucketEncryptionConfiguration = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n\n const displayGetBucketQuota = hasPermission(bucketName, [\n IAM_SCOPES.ADMIN_GET_BUCKET_QUOTA,\n ]);\n\n useEffect(() => {\n if (loadingBucket) {\n setBucketLoading(true);\n } else {\n setBucketLoading(false);\n }\n }, [loadingBucket, setBucketLoading]);\n\n useEffect(() => {\n if (loadingEncryption) {\n if (displayGetBucketEncryptionConfiguration) {\n api.buckets\n .getBucketEncryptionInfo(bucketName)\n .then((res) => {\n if (res.data.algorithm) {\n setEncryptionEnabled(true);\n setEncryptionCfg(res.data);\n }\n setLoadingEncryption(false);\n })\n .catch((err) => {\n err = errorToHandler(err.error);\n if (\n err.errorMessage ===\n \"The server side encryption configuration was not found\"\n ) {\n setEncryptionEnabled(false);\n setEncryptionCfg(null);\n }\n setLoadingEncryption(false);\n });\n } else {\n setEncryptionEnabled(false);\n setEncryptionCfg(null);\n setLoadingEncryption(false);\n }\n }\n }, [loadingEncryption, bucketName, displayGetBucketEncryptionConfiguration]);\n\n useEffect(() => {\n if (loadingVersioning && distributedSetup) {\n api.buckets\n .getBucketVersioning(bucketName)\n .then((res) => {\n setVersioningInfo(res.data);\n setLoadingVersioning(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setLoadingVersioning(false);\n });\n }\n }, [loadingVersioning, dispatch, bucketName, distributedSetup]);\n\n useEffect(() => {\n if (loadingQuota && distributedSetup) {\n if (displayGetBucketQuota) {\n api.buckets\n .getBucketQuota(bucketName)\n .then((res) => {\n setQuota(res.data);\n if (res.data.quota) {\n setQuotaEnabled(true);\n } else {\n setQuotaEnabled(false);\n }\n setLoadingQuota(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setQuotaEnabled(false);\n setLoadingQuota(false);\n });\n } else {\n setQuotaEnabled(false);\n setLoadingQuota(false);\n }\n }\n }, [\n loadingQuota,\n setLoadingVersioning,\n dispatch,\n bucketName,\n distributedSetup,\n displayGetBucketQuota,\n ]);\n\n useEffect(() => {\n if (loadingVersioning && distributedSetup) {\n if (displayGetBucketObjectLockConfiguration) {\n api.buckets\n .getBucketObjectLockingStatus(bucketName)\n .then((res) => {\n setHasObjectLocking(res.data.object_locking_enabled);\n setLoadingLocking(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setLoadingLocking(false);\n });\n } else {\n setLoadingLocking(false);\n }\n }\n }, [\n loadingObjectLocking,\n dispatch,\n bucketName,\n loadingVersioning,\n distributedSetup,\n displayGetBucketObjectLockConfiguration,\n ]);\n\n useEffect(() => {\n if (loadingSize) {\n api.buckets\n .listBuckets()\n .then((res) => {\n const resBuckets = get(res.data, \"buckets\", []);\n\n const bucketInfo = resBuckets.find(\n (bucket) => bucket.name === bucketName,\n );\n\n const size = get(bucketInfo, \"size\", \"0\");\n\n setLoadingSize(false);\n setBucketSize(size);\n })\n .catch((err) => {\n setLoadingSize(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [loadingSize, dispatch, bucketName]);\n\n useEffect(() => {\n if (loadingReplication && distributedSetup) {\n api.buckets\n .getBucketReplication(bucketName)\n .then((res) => {\n const r = res.data.rules ? res.data.rules : [];\n setReplicationRules(r.length > 0);\n setLoadingReplication(false);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setLoadingReplication(false);\n });\n }\n }, [loadingReplication, dispatch, bucketName, distributedSetup]);\n\n useEffect(() => {\n if (loadingRetention && hasObjectLocking) {\n api.buckets\n .getBucketRetentionConfig(bucketName)\n .then((res) => {\n setLoadingRetention(false);\n setRetentionEnabled(true);\n setRetentionConfig(res.data);\n })\n .catch((err) => {\n setRetentionEnabled(false);\n setLoadingRetention(false);\n setRetentionConfig(null);\n });\n }\n }, [loadingRetention, hasObjectLocking, bucketName]);\n\n const loadAllBucketData = () => {\n dispatch(setBucketDetailsLoad(true));\n setBucketLoading(true);\n setLoadingSize(true);\n setLoadingVersioning(true);\n setLoadingEncryption(true);\n setLoadingRetention(true);\n };\n\n const setBucketVersioning = () => {\n setEnableVersioningOpen(true);\n };\n const setBucketQuota = () => {\n setEnableQuotaScreenOpen(true);\n };\n\n const closeEnableBucketEncryption = () => {\n setEnableEncryptionScreenOpen(false);\n setLoadingEncryption(true);\n };\n const closeEnableBucketQuota = () => {\n setEnableQuotaScreenOpen(false);\n setLoadingQuota(true);\n };\n\n const closeSetAccessPolicy = () => {\n setAccessPolicyScreenOpen(false);\n loadAllBucketData();\n };\n\n const closeRetentionConfig = () => {\n setRetentionConfigOpen(false);\n loadAllBucketData();\n };\n\n const closeEnableVersioning = (refresh: boolean) => {\n setEnableVersioningOpen(false);\n if (refresh) {\n loadAllBucketData();\n }\n };\n\n let versioningStatus = versioningInfo?.status;\n let versioningText = \"Unversioned (Default)\";\n if (versioningStatus === \"Enabled\") {\n versioningText = \"Versioned\";\n } else if (versioningStatus === \"Suspended\") {\n versioningText = \"Suspended\";\n }\n\n // @ts-ignore\n return (\n \n {enableEncryptionScreenOpen && (\n \n )}\n {enableQuotaScreenOpen && (\n \n )}\n {accessPolicyScreenOpen && (\n \n )}\n {retentionConfigOpen && (\n \n )}\n {enableVersioningOpen && (\n \n )}\n\n Summary\n \n \n \n \n \n \n {\n setAccessPolicyScreenOpen(true);\n }}\n isLoading={bucketLoading}\n />\n \n\n \n {\n setEnableEncryptionScreenOpen(true);\n }}\n isLoading={loadingEncryption}\n />\n \n\n \n : \n }\n label={\n \n }\n />\n }\n />\n \n\n \n : \n }\n label={\n \n }\n />\n }\n />\n \n \n }\n />\n \n \n \n\n \n \n {quotaEnabled && quota ? (\n \n ) : null}\n \n \n \n \n\n {distributedSetup && (\n \n \n Versioning\n\n \n \n \n
{versioningText}
\n \n }\n onEdit={setBucketVersioning}\n isLoading={loadingVersioning}\n />\n\n {versioningInfo?.status === \"Enabled\" ? (\n \n ) : null}\n \n \n
\n \n )}\n\n {hasObjectLocking && (\n \n \n Retention\n\n \n \n {\n setRetentionConfigOpen(true);\n }}\n isLoading={loadingRetention}\n />\n\n \n {retentionConfig && retentionConfig.mode\n ? retentionConfig.mode\n : \"-\"}\n \n }\n />\n \n {retentionConfig && retentionConfig.validity}{\" \"}\n {retentionConfig &&\n (retentionConfig.validity === 1\n ? retentionConfig.unit?.slice(0, -1)\n : retentionConfig.unit)}\n \n }\n />\n \n\n \n {/*Spacer*/}\n \n \n \n \n )}\n
\n
\n );\n};\n\nexport default withStyles(styles)(BucketSummary);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Box } from \"@mui/material\";\n\ntype LabelWithIconProps = {\n icon: React.ReactNode | null;\n label: React.ReactNode | null;\n};\n\nconst LabelWithIcon = ({ icon = null, label = null }: LabelWithIconProps) => {\n return (\n \n \n {icon}\n \n
{label}
\n \n );\n};\n\nexport default LabelWithIcon;\n","import React from \"react\";\nimport { Box } from \"@mui/material\";\nimport LabelWithIcon from \"./BucketDetails/SummaryItems/LabelWithIcon\";\nimport { DisabledIcon, EnabledIcon } from \"mds\";\nimport { BucketVersioningResponse } from \"api/consoleApi\";\n\nconst VersioningInfo = ({\n versioningState = {},\n}: {\n versioningState?: BucketVersioningResponse;\n}) => {\n return (\n \n \n {versioningState.excludeFolders ? (\n \n ) : (\n \n )\n }\n label={\n \n }\n />\n ) : null}\n \n {versioningState.excludedPrefixes?.length ? (\n \n Excluded Prefixes :\n \n {versioningState.excludedPrefixes?.map((it) => (\n
\n {it.prefix}\n
\n ))}\n \n \n ) : null}\n \n );\n};\n\nexport default VersioningInfo;\n","import createStyled from './createStyled';\nconst styled = createStyled();\nexport default styled;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"component\", \"direction\", \"spacing\", \"divider\", \"children\", \"className\", \"useFlexGap\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { deepmerge, unstable_composeClasses as composeClasses, unstable_generateUtilityClass as generateUtilityClass } from '@mui/utils';\nimport systemStyled from '../styled';\nimport useThemePropsSystem from '../useThemeProps';\nimport { extendSxProp } from '../styleFunctionSx';\nimport createTheme from '../createTheme';\nimport { handleBreakpoints, mergeBreakpointsInOrder, resolveBreakpointValues } from '../breakpoints';\nimport { createUnarySpacing, getValue } from '../spacing';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst defaultTheme = createTheme();\n// widening Theme to any so that the consumer can own the theme structure.\nconst defaultCreateStyledComponent = systemStyled('div', {\n name: 'MuiStack',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n});\nfunction useThemePropsDefault(props) {\n return useThemePropsSystem({\n props,\n name: 'MuiStack',\n defaultTheme\n });\n}\n\n/**\n * Return an array with the separator React element interspersed between\n * each React node of the input children.\n *\n * > joinChildren([1,2,3], 0)\n * [1,0,2,0,3]\n */\nfunction joinChildren(children, separator) {\n const childrenArray = React.Children.toArray(children).filter(Boolean);\n return childrenArray.reduce((output, child, index) => {\n output.push(child);\n if (index < childrenArray.length - 1) {\n output.push( /*#__PURE__*/React.cloneElement(separator, {\n key: `separator-${index}`\n }));\n }\n return output;\n }, []);\n}\nconst getSideFromDirection = direction => {\n return {\n row: 'Left',\n 'row-reverse': 'Right',\n column: 'Top',\n 'column-reverse': 'Bottom'\n }[direction];\n};\nexport const style = ({\n ownerState,\n theme\n}) => {\n let styles = _extends({\n display: 'flex',\n flexDirection: 'column'\n }, handleBreakpoints({\n theme\n }, resolveBreakpointValues({\n values: ownerState.direction,\n breakpoints: theme.breakpoints.values\n }), propValue => ({\n flexDirection: propValue\n })));\n if (ownerState.spacing) {\n const transformer = createUnarySpacing(theme);\n const base = Object.keys(theme.breakpoints.values).reduce((acc, breakpoint) => {\n if (typeof ownerState.spacing === 'object' && ownerState.spacing[breakpoint] != null || typeof ownerState.direction === 'object' && ownerState.direction[breakpoint] != null) {\n acc[breakpoint] = true;\n }\n return acc;\n }, {});\n const directionValues = resolveBreakpointValues({\n values: ownerState.direction,\n base\n });\n const spacingValues = resolveBreakpointValues({\n values: ownerState.spacing,\n base\n });\n if (typeof directionValues === 'object') {\n Object.keys(directionValues).forEach((breakpoint, index, breakpoints) => {\n const directionValue = directionValues[breakpoint];\n if (!directionValue) {\n const previousDirectionValue = index > 0 ? directionValues[breakpoints[index - 1]] : 'column';\n directionValues[breakpoint] = previousDirectionValue;\n }\n });\n }\n const styleFromPropValue = (propValue, breakpoint) => {\n if (ownerState.useFlexGap) {\n return {\n gap: getValue(transformer, propValue)\n };\n }\n return {\n '& > :not(style) + :not(style)': {\n margin: 0,\n [`margin${getSideFromDirection(breakpoint ? directionValues[breakpoint] : ownerState.direction)}`]: getValue(transformer, propValue)\n }\n };\n };\n styles = deepmerge(styles, handleBreakpoints({\n theme\n }, spacingValues, styleFromPropValue));\n }\n styles = mergeBreakpointsInOrder(theme.breakpoints, styles);\n return styles;\n};\nexport default function createStack(options = {}) {\n const {\n // This will allow adding custom styled fn (for example for custom sx style function)\n createStyledComponent = defaultCreateStyledComponent,\n useThemeProps = useThemePropsDefault,\n componentName = 'MuiStack'\n } = options;\n const useUtilityClasses = () => {\n const slots = {\n root: ['root']\n };\n return composeClasses(slots, slot => generateUtilityClass(componentName, slot), {});\n };\n const StackRoot = createStyledComponent(style);\n const Stack = /*#__PURE__*/React.forwardRef(function Grid(inProps, ref) {\n const themeProps = useThemeProps(inProps);\n const props = extendSxProp(themeProps); // `color` type conflicts with html color attribute.\n const {\n component = 'div',\n direction = 'column',\n spacing = 0,\n divider,\n children,\n className,\n useFlexGap = false\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const ownerState = {\n direction,\n spacing,\n useFlexGap\n };\n const classes = useUtilityClasses();\n return /*#__PURE__*/_jsx(StackRoot, _extends({\n as: component,\n ownerState: ownerState,\n ref: ref,\n className: clsx(classes.root, className)\n }, other, {\n children: divider ? joinChildren(children, divider) : children\n }));\n });\n process.env.NODE_ENV !== \"production\" ? Stack.propTypes /* remove-proptypes */ = {\n children: PropTypes.node,\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n divider: PropTypes.node,\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n } : void 0;\n return Stack;\n}","import PropTypes from 'prop-types';\nimport { createStack } from '@mui/system';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nconst Stack = createStack({\n createStyledComponent: styled('div', {\n name: 'MuiStack',\n slot: 'Root',\n overridesResolver: (props, styles) => styles.root\n }),\n useThemeProps: inProps => useThemeProps({\n props: inProps,\n name: 'MuiStack'\n })\n});\nprocess.env.NODE_ENV !== \"production\" ? Stack.propTypes /* remove-proptypes */ = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Defines the `flex-direction` style property.\n * It is applied for all screen sizes.\n * @default 'column'\n */\n direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),\n /**\n * Add an element between each child.\n */\n divider: PropTypes.node,\n /**\n * Defines the space between immediate children.\n * @default 0\n */\n spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),\n /**\n * The system prop, which allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * If `true`, the CSS flexbox `gap` is used instead of applying `margin` to children.\n *\n * While CSS `gap` removes the [known limitations](https://mui.com/joy-ui/react-stack/#limitations),\n * it is not fully supported in some browsers. We recommend checking https://caniuse.com/?search=flex%20gap before using this flag.\n *\n * To enable this flag globally, follow the [theme's default props](https://mui.com/material-ui/customization/theme-components/#default-props) configuration.\n * @default false\n */\n useFlexGap: PropTypes.bool\n} : void 0;\nexport default Stack;","import React from \"react\";\nimport { Stack } from \"@mui/material\";\n\ntype LabelValuePairProps = {\n label?: any;\n value?: any;\n orientation?: any;\n stkProps?: any;\n lblProps?: any;\n valProps?: any;\n};\n\nconst LabelValuePair = ({\n label = null,\n value = \"-\",\n orientation = \"column\",\n stkProps = {},\n lblProps = {},\n valProps = {},\n}: LabelValuePairProps) => {\n return (\n \n \n \n \n );\n};\n\nexport default LabelValuePair;\n"],"names":["_ref","isLoading","onClick","label","restProps","_objectWithoutProperties","_excluded","_jsx","Button","_objectSpread","color","variant","sx","padding","margin","alignItems","justifyContent","display","height","textDecoration","background","disableRipple","disableFocusRipple","children","Loader","style","width","withStyles","theme","createStyles","root","backgroundColor","disabled","IconButton","size","EditIcon","SecureAction","resourceName","iamScopes","_ref$secureCmpProps","secureCmpProps","SecureComponent","scopes","resource","errorProps","_ref2","_ref2$isLoading","_ref2$resourceName","_ref2$secureCmpProps","_ref2$property","property","_ref2$value","value","onEdit","_jsxs","Box","LabelValuePair","ActionLink","EditActionButton","marginLeft","top","bucketSize","ReportedUsageFullIcon","flexFlow","fontSize","fontWeight","niceBytes","quota","HardBucketQuotaIcon","textTransform","type","concat","SetAccessPolicy","withSuspense","React","SetRetentionConfig","EnableBucketEncryption","EnableVersioningModal","BucketTags","EnableQuota","twoColCssGridLayoutConfig","gridTemplateColumns","xs","sm","gridAutoFlow","gap","spacingUtils","textStyleUtils","_retentionConfig$unit","classes","dispatch","useAppDispatch","params","useParams","loadingBucket","useSelector","selBucketDetailsLoading","bucketInfo","selBucketDetailsInfo","distributedSetup","selDistSet","_useState","useState","_useState2","_slicedToArray","encryptionCfg","setEncryptionCfg","_useState3","_useState4","setBucketSize","_useState5","_useState6","hasObjectLocking","setHasObjectLocking","_useState7","_useState8","accessPolicyScreenOpen","setAccessPolicyScreenOpen","_useState9","_useState10","replicationRules","setReplicationRules","_useState11","_useState12","loadingObjectLocking","setLoadingLocking","_useState13","_useState14","loadingSize","setLoadingSize","_useState15","_useState16","bucketLoading","setBucketLoading","_useState17","_useState18","loadingEncryption","setLoadingEncryption","_useState19","_useState20","loadingVersioning","setLoadingVersioning","_useState21","_useState22","loadingQuota","setLoadingQuota","_useState23","_useState24","loadingReplication","setLoadingReplication","_useState25","_useState26","loadingRetention","setLoadingRetention","_useState27","_useState28","versioningInfo","setVersioningInfo","_useState29","_useState30","quotaEnabled","setQuotaEnabled","_useState31","_useState32","setQuota","_useState33","_useState34","encryptionEnabled","setEncryptionEnabled","_useState35","_useState36","retentionEnabled","setRetentionEnabled","_useState37","_useState38","retentionConfig","setRetentionConfig","_useState39","_useState40","retentionConfigOpen","setRetentionConfigOpen","_useState41","_useState42","enableEncryptionScreenOpen","setEnableEncryptionScreenOpen","_useState43","_useState44","enableQuotaScreenOpen","setEnableQuotaScreenOpen","_useState45","_useState46","enableVersioningOpen","setEnableVersioningOpen","useEffect","setHelpName","bucketName","accessPolicy","policyDefinition","access","definition","displayGetBucketObjectLockConfiguration","hasPermission","IAM_SCOPES","S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION","S3_GET_ACTIONS","displayGetBucketEncryptionConfiguration","S3_GET_BUCKET_ENCRYPTION_CONFIGURATION","displayGetBucketQuota","ADMIN_GET_BUCKET_QUOTA","api","buckets","getBucketEncryptionInfo","then","res","data","algorithm","catch","err","errorToHandler","error","errorMessage","getBucketVersioning","setErrorSnackMessage","getBucketQuota","getBucketObjectLockingStatus","object_locking_enabled","listBuckets","get","find","bucket","name","getBucketReplication","r","rules","length","getBucketRetentionConfig","loadAllBucketData","setBucketDetailsLoad","versioningStatus","status","versioningText","Fragment","open","selectedBucket","closeModalAndRefresh","enabled","cfg","actualPolicy","actualDefinition","closeVersioningModalAndRefresh","refresh","modalOpen","SectionTitle","Grid","container","spacing","S3_GET_BUCKET_POLICY","item","EditablePropertyItem","S3_PUT_BUCKET_POLICY","S3_PUT_ACTIONS","toLowerCase","S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION","S3_GET_REPLICATION_CONFIGURATION","LabelWithIcon","icon","EnabledIcon","DisabledIcon","className","textMuted","spacerTop","ADMIN_SET_BUCKET_QUOTA","ReportedUsage","BucketQuotaSize","S3_GET_BUCKET_VERSIONING","S3_PUT_BUCKET_VERSIONING","flexDirection","textDecorationStyle","placeItems","justifyItems","VersioningInfo","versioningState","S3_GET_OBJECT_RETENTION","mode","validity","unit","slice","_ref$icon","_ref$label","marginTop","_versioningState$excl","_versioningState$excl2","_ref$versioningState","excludeFolders","excludedPrefixes","maxHeight","overflowY","map","it","prefix","createStyled","defaultTheme","createTheme","defaultCreateStyledComponent","systemStyled","slot","overridesResolver","props","styles","useThemePropsDefault","useThemePropsSystem","joinChildren","separator","childrenArray","toArray","filter","Boolean","reduce","output","child","index","push","key","ownerState","_extends","handleBreakpoints","resolveBreakpointValues","values","direction","breakpoints","propValue","transformer","createUnarySpacing","base","Object","keys","acc","breakpoint","directionValues","spacingValues","forEach","previousDirectionValue","deepmerge","useFlexGap","getValue","_defineProperty","row","column","mergeBreakpointsInOrder","Stack","options","arguments","undefined","_options$createStyled","createStyledComponent","_options$useThemeProp","useThemeProps","_options$componentNam","componentName","StackRoot","inProps","ref","themeProps","extendSxProp","_props$component","component","_props$direction","_props$spacing","divider","_props$useFlexGap","other","_objectWithoutPropertiesLoose","composeClasses","generateUtilityClass","as","clsx","createStack","styled","_ref$value","_ref$orientation","orientation","_ref$stkProps","stkProps","_ref$lblProps","lblProps","_ref$valProps","valProps","marginRight"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9952.df7cc0cb.chunk.js b/portal-ui/build/static/js/9952.df7cc0cb.chunk.js deleted file mode 100644 index bc1da6ab1..000000000 --- a/portal-ui/build/static/js/9952.df7cc0cb.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9952],{99952:function(e,n,t){t.r(n),t.d(n,{default:function(){return K}});var i=t(74165),a=t(15861),s=t(29439),o=t(1413),r=t(72791),l=t(61889),c=t(40986),d=t(29945),u=t(11135),p=t(25787),x=t(23814),m=t(56028),h=t(90673),f=t(87995),v=t(81551),Z=t(56087),b=t(38442),j=t(27454),y=t(51691),g=t(21435),k=t(9505),C=t(23508),S=t(40214),P=t(80184),w=function(e){var n=e.closeAddModalAndRefresh,t=e.addOpen,i=(0,v.TL)(),a=(0,k.Z)((function(){return n(!0)}),(function(e){n(!1),i((0,f.Ih)(e))})),o=(0,s.Z)(a,2),c=o[0],d=o[1],u=(0,r.useState)(""),p=(0,s.Z)(u,2),x=p[0],m=p[1];return(0,P.jsx)(C.Z,{title:"",confirmText:"Create",isOpen:t,isLoading:c,onConfirm:function(){d("POST","/api/v1/kms/keys/",{key:x})},onClose:function(){return n(!1)},confirmButtonProps:{disabled:-1!==x.indexOf(" ")||""===x||c,variant:"callAction"},confirmationContent:(0,P.jsxs)(y.Z,{children:[(0,P.jsx)(S.Z,{helpText:"Create Key",contents:["Create a new cryptographic key in the Key Management Service server connected to MINIO."]}),(0,P.jsx)(l.ZP,{item:!0,xs:12,marginTop:3,children:(0,P.jsx)(g.Z,{id:"key-name",name:"key-name",label:"Key Name",autoFocus:!0,value:x,error:-1!==x.indexOf(" ")?"Key name cannot contain spaces":"",onChange:function(e){m(e.target.value)}})})]})})},F=t(66315),N=t(31776),I=t(82342),K=(0,p.Z)((function(e){return(0,u.Z)((0,o.Z)((0,o.Z)({},x.ID),x.DF))}))((function(e){var n=e.classes,t=e.open,o=e.encryptionCfg,u=e.selectedBucket,p=e.closeModalAndRefresh,x=(0,v.TL)(),y=(0,r.useState)(!1),g=(0,s.Z)(y,2),k=g[0],C=g[1],S=(0,r.useState)(""),K=(0,s.Z)(S,2),A=K[0],B=K[1],M=(0,r.useState)("disabled"),R=(0,s.Z)(M,2),T=R[0],E=R[1],L=(0,r.useState)([]),z=(0,s.Z)(L,2),O=z[0],D=z[1],W=(0,r.useState)(!1),H=(0,s.Z)(W,2),J=H[0],_=H[1],Y=(0,r.useState)(!1),q=(0,s.Z)(Y,2),G=q[0],V=q[1];(0,r.useEffect)((function(){o&&("AES256"===o.algorithm?E(F.bJ.SseS3):(E(F.bJ.SseKms),B(o.kmsMasterKeyID||"")))}),[o]),(0,r.useEffect)((function(){"sse-kms"===T&&N.h.kms.kmsListKeys().then((function(e){D(e.data.results),_(!1)})).catch((function(e){_(!1),x((0,f.zb)((0,I.g)(e.error)))}))}),[T,J,x]);return(0,P.jsxs)(r.Fragment,{children:[G&&(0,P.jsx)(w,{addOpen:G,closeAddModalAndRefresh:function(e){V(!1),_(!0)}}),(0,P.jsx)(m.Z,{modalOpen:t,onClose:function(){p()},title:"Enable Bucket Encryption",titleIcon:(0,P.jsx)(d.Xn4,{}),children:(0,P.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),k||("disabled"===T?N.h.buckets.disableBucketEncryption(u).then((function(){C(!1),p()})).catch(function(){var e=(0,a.Z)((0,i.Z)().mark((function e(n){var t;return(0,i.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.json();case 2:t=e.sent,C(!1),x((0,f.zb)((0,I.g)(t)));case 5:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}()):N.h.buckets.enableBucketEncryption(u,{encType:T,kmsKeyID:A}).then((function(e){C(!1),p()})).catch(function(){var e=(0,a.Z)((0,i.Z)().mark((function e(n){var t;return(0,i.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.json();case 2:t=e.sent,C(!1),x((0,f.zb)((0,I.g)(t)));case 5:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}()))},children:(0,P.jsxs)(l.ZP,{container:!0,children:[(0,P.jsxs)(l.ZP,{item:!0,xs:12,className:n.modalFormScrollable,children:[(0,P.jsx)(l.ZP,{item:!0,xs:12,className:n.formFieldRow,children:(0,P.jsx)(h.Z,{onChange:function(e){E(e.target.value)},id:"select-encryption-type",name:"select-encryption-type",label:"Encryption Type",value:T,options:[{label:"Disabled",value:"disabled"},{label:"SSE-S3",value:F.bJ.SseS3},{label:"SSE-KMS",value:F.bJ.SseKms}]})}),"sse-kms"===T&&(0,P.jsxs)(l.ZP,{item:!0,xs:12,className:n.formFieldRow,display:"flex",children:[O&&(0,P.jsx)(h.Z,{onChange:function(e){B(e.target.value)},id:"select-kms-key-id",name:"select-kms-key-id",label:"KMS Key ID",value:A,options:O.map((function(e){return{label:e.name||"",value:e.name||""}}))}),(0,P.jsx)(l.ZP,{marginLeft:1,children:(0,P.jsx)(b.s,{scopes:[Z.Ft.KMS_IMPORT_KEY],resource:Z.C3,errorProps:{disabled:!0},children:(0,P.jsx)(j.Z,{tooltip:"Add key",children:(0,P.jsx)(d.zxk,{id:"import-key",variant:"regular",icon:(0,P.jsx)(d.dtP,{}),onClick:function(e){V(!0),e.preventDefault()}})})})})]})]}),(0,P.jsxs)(l.ZP,{item:!0,xs:12,className:n.modalButtonBar,children:[(0,P.jsx)(d.zxk,{id:"cancel",type:"submit",variant:"regular",onClick:function(){p()},disabled:k,label:"Cancel"}),(0,P.jsx)(d.zxk,{id:"save",type:"submit",variant:"callAction",disabled:k,label:"Save"})]}),k&&(0,P.jsx)(l.ZP,{item:!0,xs:12,children:(0,P.jsx)(c.Z,{})})]})})})]})}))},21435:function(e,n,t){var i=t(29439),a=t(1413),s=t(72791),o=t(27391),r=t(61889),l=t(30829),c=t(20068),d=t(13400),u=t(20165),p=t(3579),x=t(11135),m=t(72455),h=t(25787),f=t(23814),v=t(29945),Z=t(28182),b=t(80184),j=(0,m.Z)((function(e){return(0,x.Z)((0,a.Z)({},f.gM))}));function y(e){var n=j();return(0,b.jsx)(o.Z,(0,a.Z)({InputProps:{classes:n}},e))}n.Z=(0,h.Z)((function(e){return(0,x.Z)((0,a.Z)((0,a.Z)((0,a.Z)({},f.YI),f.Hr),{},{textBoxContainer:{flexGrow:1,position:"relative"},overlayAction:{position:"absolute",right:5,top:6,"& svg":{maxWidth:15,maxHeight:15},"&.withLabel":{top:5}}}))}))((function(e){var n=e.label,t=e.onChange,o=e.value,x=e.id,m=e.name,h=e.type,f=void 0===h?"text":h,j=e.autoComplete,g=void 0===j?"off":j,k=e.disabled,C=void 0!==k&&k,S=e.multiline,P=void 0!==S&&S,w=e.tooltip,F=void 0===w?"":w,N=e.index,I=void 0===N?0:N,K=e.error,A=void 0===K?"":K,B=e.required,M=void 0!==B&&B,R=e.placeholder,T=void 0===R?"":R,E=e.min,L=e.max,z=e.overlayId,O=e.overlayIcon,D=void 0===O?null:O,W=e.overlayObject,H=void 0===W?null:W,J=e.extraInputProps,_=void 0===J?{}:J,Y=e.overlayAction,q=e.noLabelMinWidth,G=void 0!==q&&q,V=e.pattern,X=void 0===V?"":V,Q=e.autoFocus,U=void 0!==Q&&Q,$=e.classes,ee=e.className,ne=void 0===ee?"":ee,te=e.onKeyPress,ie=e.onFocus,ae=e.onPaste,se=(0,a.Z)({"data-index":I},_),oe=(0,s.useState)(!1),re=(0,i.Z)(oe,2),le=re[0],ce=re[1];"number"===f&&E&&(se.min=E),"number"===f&&L&&(se.max=L),""!==X&&(se.pattern=X);var de=D,ue=f;return"password"===f&&null===D&&(de=le?(0,b.jsx)(u.Z,{}):(0,b.jsx)(p.Z,{}),ue=le?"text":"password"),(0,b.jsx)(s.Fragment,{children:(0,b.jsxs)(r.ZP,{container:!0,className:(0,Z.Z)(""!==ne?ne:"",""!==A?$.errorInField:$.inputBoxContainer),children:[""!==n&&(0,b.jsxs)(l.Z,{htmlFor:x,className:G?$.noMinWidthLabel:$.inputLabel,children:[(0,b.jsxs)("span",{children:[n,M?"*":""]}),""!==F&&(0,b.jsx)("div",{className:$.tooltipContainer,children:(0,b.jsx)(c.Z,{title:F,placement:"top-start",children:(0,b.jsx)("div",{className:$.tooltip,children:(0,b.jsx)(v.byK,{})})})})]}),(0,b.jsxs)("div",{className:$.textBoxContainer,children:[(0,b.jsx)(y,{id:x,name:m,fullWidth:!0,value:o,autoFocus:U,disabled:C,onChange:t,type:ue,multiline:P,autoComplete:g,inputProps:se,error:""!==A,helperText:A,placeholder:T,className:$.inputRebase,onKeyPress:te,onFocus:ie,onPaste:ae}),de&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==n?"withLabel":""),children:(0,b.jsx)(d.Z,{onClick:Y?function(){Y()}:function(){return ce(!le)},id:z,size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:de})}),H&&(0,b.jsx)("div",{className:"".concat($.overlayAction," ").concat(""!==n?"withLabel":""),children:H})]})]})})}))},90673:function(e,n,t){var i=t(1413),a=t(72791),s=t(61889),o=t(886),r=t(30829),l=t(20068),c=t(68096),d=t(58406),u=t(77865),p=t(11135),x=t(25787),m=t(23814),h=t(29945),f=t(80184),v=(0,x.Z)((function(e){return(0,p.Z)({root:{height:38,lineHeight:1,"label + &":{marginTop:e.spacing(3)}},input:{height:38,position:"relative",color:"#07193E",fontSize:13,fontWeight:600,padding:"8px 20px 10px 10px",border:"#e5e5e5 1px solid",borderRadius:4,display:"flex",alignItems:"center","&:hover":{borderColor:"#393939"},"&:focus":{backgroundColor:"#fff"}}})}))(o.ZP);n.Z=(0,x.Z)((function(e){return(0,p.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},m.YI),m.Hr),{},{fieldContainer:{display:"flex","@media (max-width: 600px)":{flexFlow:"column"}}}))}))((function(e){var n=e.classes,t=e.id,i=e.name,o=e.onChange,p=e.options,x=e.label,m=e.tooltip,Z=void 0===m?"":m,b=e.value,j=e.disabled,y=void 0!==j&&j;return(0,f.jsx)(a.Fragment,{children:(0,f.jsxs)(s.ZP,{item:!0,xs:12,className:n.fieldContainer,children:[""!==x&&(0,f.jsxs)(r.Z,{htmlFor:t,className:n.inputLabel,children:[(0,f.jsx)("span",{children:x}),""!==Z&&(0,f.jsx)("div",{className:n.tooltipContainer,children:(0,f.jsx)(l.Z,{title:Z,placement:"top-start",children:(0,f.jsx)("div",{className:n.tooltip,children:(0,f.jsx)(h.byK,{})})})})]}),(0,f.jsx)(c.Z,{fullWidth:!0,children:(0,f.jsx)(d.Z,{id:t,name:i,value:b,onChange:o,input:(0,f.jsx)(v,{}),disabled:y,children:p.map((function(e){return(0,f.jsx)(u.Z,{value:e.value,children:e.label},"select-".concat(i,"-").concat(e.label))}))})})]})})}))},40214:function(e,n,t){t(72791);var i=t(64554),a=t(29945),s=t(80184);n.Z=function(e){var n=e.helpText,t=e.contents;return(0,s.jsxs)(i.Z,{sx:{flex:1,border:"1px solid #eaeaea",borderRadius:"2px",display:"flex",flexFlow:"column",padding:"20px"},children:[(0,s.jsxs)(i.Z,{sx:{fontSize:"16px",fontWeight:600,display:"flex",alignItems:"center",marginBottom:"16px",paddingBottom:"20px","& .min-icon":{height:"21px",width:"21px",marginRight:"15px"}},children:[(0,s.jsx)(a.M9A,{}),(0,s.jsx)("div",{children:n})]}),(0,s.jsx)(i.Z,{sx:{fontSize:"14px",marginBottom:"15px"},children:t.map((function(e){return(0,s.jsx)(i.Z,{sx:{paddingBottom:"20px"},children:e})}))})]})}}}]); -//# sourceMappingURL=9952.df7cc0cb.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/9952.df7cc0cb.chunk.js.map b/portal-ui/build/static/js/9952.df7cc0cb.chunk.js.map deleted file mode 100644 index 1ed5d21cc..000000000 --- a/portal-ui/build/static/js/9952.df7cc0cb.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/9952.df7cc0cb.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AddKeyModal.tsx","screens/Console/Buckets/BucketDetails/EnableBucketEncryption.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Common/FormComponents/SelectWrapper/SelectWrapper.tsx","screens/Console/KMS/KMSHelpbox.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { DialogContentText, Grid } from \"@mui/material\";\nimport React, { useState } from \"react\";\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport KMSHelpBox from \"../../KMS/KMSHelpbox\";\n\ninterface IAddKeyModalProps {\n closeAddModalAndRefresh: (refresh: boolean) => void;\n addOpen: boolean;\n}\n\nconst AddKeyModal = ({\n closeAddModalAndRefresh,\n addOpen,\n}: IAddKeyModalProps) => {\n const dispatch = useAppDispatch();\n const onAddSuccess = () => closeAddModalAndRefresh(true);\n const onAddError = (err: ErrorResponseHandler) => {\n closeAddModalAndRefresh(false);\n dispatch(setErrorSnackMessage(err));\n };\n const onClose = () => closeAddModalAndRefresh(false);\n\n const [addLoading, invokeAddApi] = useApi(onAddSuccess, onAddError);\n const [keyName, setKeyName] = useState(\"\");\n\n const onConfirmAdd = () => {\n invokeAddApi(\"POST\", \"/api/v1/kms/keys/\", { key: keyName });\n };\n\n return (\n \n \n\n \n ) => {\n setKeyName(e.target.value);\n }}\n />\n \n \n }\n />\n );\n};\n\nexport default AddKeyModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport { LinearProgress, SelectChangeEvent } from \"@mui/material\";\nimport { AddIcon, BucketEncryptionIcon, Button } from \"mds\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n formFieldStyles,\n modalStyleUtils,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\n\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_SCOPES,\n} from \"../../../../common/SecureComponent/permissions\";\nimport { SecureComponent } from \"../../../../common/SecureComponent\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport AddKeyModal from \"./AddKeyModal\";\nimport {\n BucketEncryptionInfo,\n BucketEncryptionType,\n Error,\n HttpResponse,\n KmsKeyInfo,\n} from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...modalStyleUtils,\n ...formFieldStyles,\n });\n\ninterface IEnableBucketEncryptionProps {\n classes: any;\n open: boolean;\n encryptionEnabled: boolean;\n encryptionCfg: BucketEncryptionInfo | null;\n selectedBucket: string;\n closeModalAndRefresh: () => void;\n}\n\nconst EnableBucketEncryption = ({\n classes,\n open,\n encryptionCfg,\n selectedBucket,\n closeModalAndRefresh,\n}: IEnableBucketEncryptionProps) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [kmsKeyID, setKmsKeyID] = useState(\"\");\n const [encryptionType, setEncryptionType] = useState<\n BucketEncryptionType | \"disabled\"\n >(\"disabled\");\n const [keys, setKeys] = useState([]);\n const [loadingKeys, setLoadingKeys] = useState(false);\n const [addOpen, setAddOpen] = useState(false);\n\n useEffect(() => {\n if (encryptionCfg) {\n if (encryptionCfg.algorithm === \"AES256\") {\n setEncryptionType(BucketEncryptionType.SseS3);\n } else {\n setEncryptionType(BucketEncryptionType.SseKms);\n setKmsKeyID(encryptionCfg.kmsMasterKeyID || \"\");\n }\n }\n }, [encryptionCfg]);\n\n useEffect(() => {\n if (encryptionType === \"sse-kms\") {\n api.kms\n .kmsListKeys()\n .then((res) => {\n setKeys(res.data.results);\n setLoadingKeys(false);\n })\n .catch((err) => {\n setLoadingKeys(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [encryptionType, loadingKeys, dispatch]);\n\n const enableBucketEncryption = (event: React.FormEvent) => {\n event.preventDefault();\n if (loading) {\n return;\n }\n if (encryptionType === \"disabled\") {\n api.buckets\n .disableBucketEncryption(selectedBucket)\n .then(() => {\n setLoading(false);\n closeModalAndRefresh();\n })\n .catch(async (res: HttpResponse) => {\n const err = (await res.json()) as Error;\n setLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err)));\n });\n } else {\n api.buckets\n .enableBucketEncryption(selectedBucket, {\n encType: encryptionType,\n kmsKeyID: kmsKeyID,\n })\n .then((res) => {\n setLoading(false);\n closeModalAndRefresh();\n })\n\n .catch(async (res: HttpResponse) => {\n const err = (await res.json()) as Error;\n setLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err)));\n });\n }\n };\n\n return (\n \n {addOpen && (\n {\n setAddOpen(false);\n setLoadingKeys(true);\n }}\n />\n )}\n\n {\n closeModalAndRefresh();\n }}\n title=\"Enable Bucket Encryption\"\n titleIcon={}\n >\n ) => {\n enableBucketEncryption(e);\n }}\n >\n \n \n \n {\n setEncryptionType(\n e.target.value as BucketEncryptionType | \"disabled\",\n );\n }}\n id=\"select-encryption-type\"\n name=\"select-encryption-type\"\n label={\"Encryption Type\"}\n value={encryptionType}\n options={[\n {\n label: \"Disabled\",\n value: \"disabled\",\n },\n {\n label: \"SSE-S3\",\n value: BucketEncryptionType.SseS3,\n },\n {\n label: \"SSE-KMS\",\n value: BucketEncryptionType.SseKms,\n },\n ]}\n />\n \n\n {encryptionType === \"sse-kms\" && (\n \n {keys && (\n ) => {\n setKmsKeyID(e.target.value);\n }}\n id=\"select-kms-key-id\"\n name=\"select-kms-key-id\"\n label={\"KMS Key ID\"}\n value={kmsKeyID}\n options={keys.map((key: KmsKeyInfo) => {\n return {\n label: key.name || \"\",\n value: key.name || \"\",\n };\n })}\n />\n )}\n \n \n \n }\n onClick={(e) => {\n setAddOpen(true);\n e.preventDefault();\n }}\n />\n \n \n \n \n )}\n \n \n {\n closeModalAndRefresh();\n }}\n disabled={loading}\n label={\"Cancel\"}\n />\n \n \n {loading && (\n \n \n \n )}\n \n \n \n \n );\n};\n\nexport default withStyles(styles)(EnableBucketEncryption);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { ClipboardEvent, useState } from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@mui/material\";\nimport { OutlinedInputProps } from \"@mui/material/OutlinedInput\";\nimport { InputProps as StandardInputProps } from \"@mui/material/Input\";\nimport VisibilityOffIcon from \"@mui/icons-material/VisibilityOff\";\nimport RemoveRedEyeIcon from \"@mui/icons-material/RemoveRedEye\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport makeStyles from \"@mui/styles/makeStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport {\n fieldBasic,\n inputFieldStyles,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\nimport clsx from \"clsx\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n onKeyPress?: (e: any) => void;\n onFocus?: () => void;\n onPaste?: (e: ClipboardEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayId?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n overlayObject?: any;\n extraInputProps?: StandardInputProps[\"inputProps\"];\n noLabelMinWidth?: boolean;\n pattern?: string;\n autoFocus?: boolean;\n className?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n position: \"relative\",\n },\n overlayAction: {\n position: \"absolute\",\n right: 5,\n top: 6,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n \"&.withLabel\": {\n top: 5,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n ...inputFieldStyles,\n }),\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayId,\n overlayIcon = null,\n overlayObject = null,\n extraInputProps = {},\n overlayAction,\n noLabelMinWidth = false,\n pattern = \"\",\n autoFocus = false,\n classes,\n className = \"\",\n onKeyPress,\n onFocus,\n onPaste,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index, ...extraInputProps };\n const [toggleTextInput, setToggleTextInput] = useState(false);\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n if (pattern !== \"\") {\n inputProps[\"pattern\"] = pattern;\n }\n\n let inputBoxWrapperIcon = overlayIcon;\n let inputBoxWrapperType = type;\n\n if (type === \"password\" && overlayIcon === null) {\n inputBoxWrapperIcon = toggleTextInput ? (\n \n ) : (\n \n );\n inputBoxWrapperType = toggleTextInput ? \"text\" : \"password\";\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n \n )}\n\n
\n \n {inputBoxWrapperIcon && (\n \n {\n overlayAction();\n }\n : () => setToggleTextInput(!toggleTextInput)\n }\n id={overlayId}\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {inputBoxWrapperIcon}\n \n
\n )}\n {overlayObject && (\n \n {overlayObject}\n \n )}\n \n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport Grid from \"@mui/material/Grid\";\nimport {\n FormControl,\n InputBase,\n InputLabel,\n MenuItem,\n Select,\n SelectChangeEvent,\n Tooltip,\n} from \"@mui/material\";\nimport { Theme } from \"@mui/material/styles\";\nimport createStyles from \"@mui/styles/createStyles\";\nimport withStyles from \"@mui/styles/withStyles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport { HelpIcon } from \"mds\";\n\nexport interface selectorTypes {\n label: string;\n value: string;\n}\n\ninterface SelectProps {\n options: selectorTypes[];\n value: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n onChange: (e: SelectChangeEvent) => void;\n disabled?: boolean;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n fieldContainer: {\n display: \"flex\",\n \"@media (max-width: 600px)\": {\n flexFlow: \"column\",\n },\n },\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n height: 38,\n lineHeight: 1,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n },\n input: {\n height: 38,\n position: \"relative\",\n color: \"#07193E\",\n fontSize: 13,\n fontWeight: 600,\n padding: \"8px 20px 10px 10px\",\n border: \"#e5e5e5 1px solid\",\n borderRadius: 4,\n display: \"flex\",\n alignItems: \"center\",\n \"&:hover\": {\n borderColor: \"#393939\",\n },\n \"&:focus\": {\n backgroundColor: \"#fff\",\n },\n },\n }),\n)(InputBase);\n\nconst SelectWrapper = ({\n classes,\n id,\n name,\n onChange,\n options,\n label,\n tooltip = \"\",\n value,\n disabled = false,\n}: SelectProps) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n \n }\n disabled={disabled}\n >\n {options.map((option) => (\n \n {option.label}\n \n ))}\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(SelectWrapper);\n","import React from \"react\";\n\nimport { Box } from \"@mui/material\";\nimport { HelpIconFilled } from \"mds\";\n\ninterface IKMSHelpBoxProps {\n helpText: string;\n contents: string[];\n}\n\nconst KMSHelpBox = ({ helpText, contents }: IKMSHelpBoxProps) => {\n return (\n \n \n \n
{helpText}
\n \n \n {contents.map((content) => (\n {content}\n ))}\n \n \n );\n};\n\nexport default KMSHelpBox;\n"],"names":["_ref","closeAddModalAndRefresh","addOpen","dispatch","useAppDispatch","_useApi","useApi","err","setErrorSnackMessage","_useApi2","_slicedToArray","addLoading","invokeAddApi","_useState","useState","_useState2","keyName","setKeyName","_jsx","ConfirmDialog","title","confirmText","isOpen","isLoading","onConfirm","key","onClose","confirmButtonProps","disabled","indexOf","variant","confirmationContent","_jsxs","DialogContentText","children","KMSHelpBox","helpText","contents","Grid","item","xs","marginTop","InputBoxWrapper","id","name","label","autoFocus","value","error","onChange","e","target","withStyles","theme","createStyles","_objectSpread","modalStyleUtils","formFieldStyles","classes","open","encryptionCfg","selectedBucket","closeModalAndRefresh","loading","setLoading","_useState3","_useState4","kmsKeyID","setKmsKeyID","_useState5","_useState6","encryptionType","setEncryptionType","_useState7","_useState8","keys","setKeys","_useState9","_useState10","loadingKeys","setLoadingKeys","_useState11","_useState12","setAddOpen","useEffect","algorithm","BucketEncryptionType","SseS3","SseKms","kmsMasterKeyID","api","kms","kmsListKeys","then","res","data","results","catch","setModalErrorSnackMessage","errorToHandler","Fragment","AddKeyModal","refresh","ModalWrapper","modalOpen","titleIcon","BucketEncryptionIcon","noValidate","autoComplete","onSubmit","preventDefault","buckets","disableBucketEncryption","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","json","sent","stop","_x","apply","arguments","enableBucketEncryption","encType","_ref3","_callee2","_context2","_x2","container","className","modalFormScrollable","formFieldRow","SelectWrapper","options","display","map","marginLeft","SecureComponent","scopes","IAM_SCOPES","KMS_IMPORT_KEY","resource","CONSOLE_UI_RESOURCE","errorProps","TooltipWrapper","tooltip","Button","icon","AddIcon","onClick","modalButtonBar","type","LinearProgress","inputStyles","makeStyles","inputFieldStyles","InputField","props","TextField","InputProps","fieldBasic","tooltipHelper","textBoxContainer","flexGrow","position","overlayAction","right","top","maxWidth","maxHeight","_ref$type","_ref$autoComplete","_ref$disabled","_ref$multiline","multiline","_ref$tooltip","_ref$index","index","_ref$error","_ref$required","required","_ref$placeholder","placeholder","min","max","overlayId","_ref$overlayIcon","overlayIcon","_ref$overlayObject","overlayObject","_ref$extraInputProps","extraInputProps","_ref$noLabelMinWidth","noLabelMinWidth","_ref$pattern","pattern","_ref$autoFocus","_ref$className","onKeyPress","onFocus","onPaste","inputProps","toggleTextInput","setToggleTextInput","inputBoxWrapperIcon","inputBoxWrapperType","VisibilityOffIcon","RemoveRedEyeIcon","React","clsx","errorInField","inputBoxContainer","InputLabel","htmlFor","noMinWidthLabel","inputLabel","tooltipContainer","Tooltip","placement","HelpIcon","fullWidth","helperText","inputRebase","concat","IconButton","size","disableFocusRipple","disableRipple","disableTouchRipple","SelectStyled","root","height","lineHeight","spacing","input","color","fontSize","fontWeight","padding","border","borderRadius","alignItems","borderColor","backgroundColor","InputBase","fieldContainer","flexFlow","FormControl","Select","option","MenuItem","Box","sx","flex","marginBottom","paddingBottom","width","marginRight","HelpIconFilled","content"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9952.e9660829.chunk.js b/portal-ui/build/static/js/9952.e9660829.chunk.js new file mode 100644 index 000000000..244be6ee1 --- /dev/null +++ b/portal-ui/build/static/js/9952.e9660829.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9952],{99952:function(e,n,t){t.r(n),t.d(n,{default:function(){return g}});var s=t(74165),a=t(15861),r=t(29439),i=t(72791),c=t(40986),o=t(29945),l=t(66315),u=t(31776),d=t(82342),f=t(23814),p=t(87995),x=t(81551),m=t(56087),h=t(38442),k=t(27454),b=t(9505),y=t(23508),j=t(40214),v=t(80184),S=function(e){var n=e.closeAddModalAndRefresh,t=e.addOpen,s=(0,x.TL)(),a=(0,b.Z)((function(){return n(!0)}),(function(e){n(!1),s((0,p.Ih)(e))})),c=(0,r.Z)(a,2),l=c[0],u=c[1],d=(0,i.useState)(""),f=(0,r.Z)(d,2),m=f[0],h=f[1];return(0,v.jsx)(y.Z,{title:"",confirmText:"Create",isOpen:t,isLoading:l,onConfirm:function(){u("POST","/api/v1/kms/keys/",{key:m})},onClose:function(){return n(!1)},confirmButtonProps:{disabled:-1!==m.indexOf(" ")||""===m||l,variant:"callAction"},confirmationContent:(0,v.jsxs)(i.Fragment,{children:[(0,v.jsx)(j.Z,{helpText:"Create Key",contents:["Create a new cryptographic key in the Key Management Service server connected to MINIO."]}),(0,v.jsx)(o.rjZ,{item:!0,xs:12,sx:{marginTop:15},children:(0,v.jsx)(o.Wzg,{id:"key-name",name:"key-name",label:"Key Name",autoFocus:!0,value:m,error:-1!==m.indexOf(" ")?"Key name cannot contain spaces":"",onChange:function(e){h(e.target.value)}})})]})})},Z=t(56028),g=function(e){var n=e.open,t=e.encryptionCfg,b=e.selectedBucket,y=e.closeModalAndRefresh,j=(0,x.TL)(),g=(0,i.useState)(!1),C=(0,r.Z)(g,2),K=C[0],E=C[1],M=(0,i.useState)(""),A=(0,r.Z)(M,2),I=A[0],T=A[1],B=(0,i.useState)("disabled"),O=(0,r.Z)(B,2),w=O[0],P=O[1],z=(0,i.useState)([]),D=(0,r.Z)(z,2),F=D[0],J=D[1],L=(0,i.useState)(!1),R=(0,r.Z)(L,2),_=R[0],N=R[1],X=(0,i.useState)(!1),Y=(0,r.Z)(X,2),V=Y[0],W=Y[1];(0,i.useEffect)((function(){t&&("AES256"===t.algorithm?P(l.bJ.SseS3):(P(l.bJ.SseKms),T(t.kmsMasterKeyID||"")))}),[t]),(0,i.useEffect)((function(){"sse-kms"===w&&u.h.kms.kmsListKeys().then((function(e){J(e.data.results),N(!1)})).catch((function(e){N(!1),j((0,p.zb)((0,d.g)(e.error)))}))}),[w,_,j]);return(0,v.jsxs)(i.Fragment,{children:[V&&(0,v.jsx)(S,{addOpen:V,closeAddModalAndRefresh:function(e){W(!1),N(!0)}}),(0,v.jsx)(Z.Z,{modalOpen:n,onClose:function(){y()},title:"Enable Bucket Encryption",titleIcon:(0,v.jsx)(o.Xn4,{}),children:(0,v.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),K||("disabled"===w?u.h.buckets.disableBucketEncryption(b).then((function(){E(!1),y()})).catch(function(){var e=(0,a.Z)((0,s.Z)().mark((function e(n){var t;return(0,s.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.json();case 2:t=e.sent,E(!1),j((0,p.zb)((0,d.g)(t)));case 5:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}()):u.h.buckets.enableBucketEncryption(b,{encType:w,kmsKeyID:I}).then((function(){E(!1),y()})).catch(function(){var e=(0,a.Z)((0,s.Z)().mark((function e(n){var t;return(0,s.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.json();case 2:t=e.sent,E(!1),j((0,p.zb)((0,d.g)(t)));case 5:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}()))},children:(0,v.jsxs)(o.ltY,{withBorders:!1,containerPadding:!1,children:[(0,v.jsx)(o.PhF,{onChange:function(e){P(e)},id:"select-encryption-type",name:"select-encryption-type",label:"Encryption Type",value:w,options:[{label:"Disabled",value:"disabled"},{label:"SSE-S3",value:l.bJ.SseS3},{label:"SSE-KMS",value:l.bJ.SseKms}]}),"sse-kms"===w&&(0,v.jsxs)(o.xuv,{sx:{display:"flex",gap:10},className:"inputItem",children:[F&&(0,v.jsx)(o.PhF,{onChange:function(e){T(e)},id:"select-kms-key-id",name:"select-kms-key-id",label:"KMS Key ID",value:I,options:F.map((function(e){return{label:e.name||"",value:e.name||""}}))}),(0,v.jsx)(h.s,{scopes:[m.Ft.KMS_IMPORT_KEY],resource:m.C3,errorProps:{disabled:!0},children:(0,v.jsx)(k.Z,{tooltip:"Add key",children:(0,v.jsx)(o.zxk,{id:"import-key",variant:"regular",icon:(0,v.jsx)(o.dtP,{}),onClick:function(e){W(!0),e.preventDefault()}})})})]}),(0,v.jsxs)(o.rjZ,{item:!0,xs:12,sx:f.ID.modalButtonBar,children:[(0,v.jsx)(o.zxk,{id:"cancel",type:"submit",variant:"regular",onClick:function(){y()},disabled:K,label:"Cancel"}),(0,v.jsx)(o.zxk,{id:"save",type:"submit",variant:"callAction",disabled:K,label:"Save"})]}),K&&(0,v.jsx)(o.rjZ,{item:!0,xs:12,children:(0,v.jsx)(c.Z,{})})]})})})]})}},40214:function(e,n,t){var s=t(72791),a=t(29945),r=t(80184);n.Z=function(e){var n=e.helpText,t=e.contents;return(0,r.jsx)(a.KfX,{iconComponent:(0,r.jsx)(a.M9A,{}),title:n,help:(0,r.jsx)(s.Fragment,{children:t.map((function(e){return(0,r.jsx)(a.xuv,{sx:{paddingBottom:"20px"},children:e})}))})})}}}]); +//# sourceMappingURL=9952.e9660829.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/9952.e9660829.chunk.js.map b/portal-ui/build/static/js/9952.e9660829.chunk.js.map new file mode 100644 index 000000000..87ed54383 --- /dev/null +++ b/portal-ui/build/static/js/9952.e9660829.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/9952.e9660829.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AddKeyModal.tsx","screens/Console/Buckets/BucketDetails/EnableBucketEncryption.tsx","screens/Console/KMS/KMSHelpbox.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { Grid, InputBox } from \"mds\";\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport KMSHelpBox from \"../../KMS/KMSHelpbox\";\n\ninterface IAddKeyModalProps {\n closeAddModalAndRefresh: (refresh: boolean) => void;\n addOpen: boolean;\n}\n\nconst AddKeyModal = ({\n closeAddModalAndRefresh,\n addOpen,\n}: IAddKeyModalProps) => {\n const dispatch = useAppDispatch();\n const onAddSuccess = () => closeAddModalAndRefresh(true);\n const onAddError = (err: ErrorResponseHandler) => {\n closeAddModalAndRefresh(false);\n dispatch(setErrorSnackMessage(err));\n };\n const onClose = () => closeAddModalAndRefresh(false);\n\n const [addLoading, invokeAddApi] = useApi(onAddSuccess, onAddError);\n const [keyName, setKeyName] = useState(\"\");\n\n const onConfirmAdd = () => {\n invokeAddApi(\"POST\", \"/api/v1/kms/keys/\", { key: keyName });\n };\n\n return (\n \n \n\n \n ) => {\n setKeyName(e.target.value);\n }}\n />\n \n
\n }\n />\n );\n};\n\nexport default AddKeyModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { LinearProgress } from \"@mui/material\";\nimport {\n AddIcon,\n Box,\n BucketEncryptionIcon,\n Button,\n FormLayout,\n Grid,\n Select,\n} from \"mds\";\nimport {\n BucketEncryptionInfo,\n BucketEncryptionType,\n Error,\n HttpResponse,\n KmsKeyInfo,\n} from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_SCOPES,\n} from \"../../../../common/SecureComponent/permissions\";\nimport { SecureComponent } from \"../../../../common/SecureComponent\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport AddKeyModal from \"./AddKeyModal\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\n\ninterface IEnableBucketEncryptionProps {\n open: boolean;\n encryptionEnabled: boolean;\n encryptionCfg: BucketEncryptionInfo | null;\n selectedBucket: string;\n closeModalAndRefresh: () => void;\n}\n\nconst EnableBucketEncryption = ({\n open,\n encryptionCfg,\n selectedBucket,\n closeModalAndRefresh,\n}: IEnableBucketEncryptionProps) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [kmsKeyID, setKmsKeyID] = useState(\"\");\n const [encryptionType, setEncryptionType] = useState<\n BucketEncryptionType | \"disabled\"\n >(\"disabled\");\n const [keys, setKeys] = useState([]);\n const [loadingKeys, setLoadingKeys] = useState(false);\n const [addOpen, setAddOpen] = useState(false);\n\n useEffect(() => {\n if (encryptionCfg) {\n if (encryptionCfg.algorithm === \"AES256\") {\n setEncryptionType(BucketEncryptionType.SseS3);\n } else {\n setEncryptionType(BucketEncryptionType.SseKms);\n setKmsKeyID(encryptionCfg.kmsMasterKeyID || \"\");\n }\n }\n }, [encryptionCfg]);\n\n useEffect(() => {\n if (encryptionType === \"sse-kms\") {\n api.kms\n .kmsListKeys()\n .then((res) => {\n setKeys(res.data.results);\n setLoadingKeys(false);\n })\n .catch((err) => {\n setLoadingKeys(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [encryptionType, loadingKeys, dispatch]);\n\n const enableBucketEncryption = (event: React.FormEvent) => {\n event.preventDefault();\n if (loading) {\n return;\n }\n if (encryptionType === \"disabled\") {\n api.buckets\n .disableBucketEncryption(selectedBucket)\n .then(() => {\n setLoading(false);\n closeModalAndRefresh();\n })\n .catch(async (res: HttpResponse) => {\n const err = (await res.json()) as Error;\n setLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err)));\n });\n } else {\n api.buckets\n .enableBucketEncryption(selectedBucket, {\n encType: encryptionType,\n kmsKeyID: kmsKeyID,\n })\n .then(() => {\n setLoading(false);\n closeModalAndRefresh();\n })\n\n .catch(async (res: HttpResponse) => {\n const err = (await res.json()) as Error;\n setLoading(false);\n dispatch(setModalErrorSnackMessage(errorToHandler(err)));\n });\n }\n };\n\n return (\n \n {addOpen && (\n {\n setAddOpen(false);\n setLoadingKeys(true);\n }}\n />\n )}\n\n {\n closeModalAndRefresh();\n }}\n title=\"Enable Bucket Encryption\"\n titleIcon={}\n >\n ) => {\n enableBucketEncryption(e);\n }}\n >\n \n {\n setEncryptionType(value as BucketEncryptionType | \"disabled\");\n }}\n id=\"select-encryption-type\"\n name=\"select-encryption-type\"\n label={\"Encryption Type\"}\n value={encryptionType}\n options={[\n {\n label: \"Disabled\",\n value: \"disabled\",\n },\n {\n label: \"SSE-S3\",\n value: BucketEncryptionType.SseS3,\n },\n {\n label: \"SSE-KMS\",\n value: BucketEncryptionType.SseKms,\n },\n ]}\n />\n {encryptionType === \"sse-kms\" && (\n \n {keys && (\n {\n setKmsKeyID(value);\n }}\n id=\"select-kms-key-id\"\n name=\"select-kms-key-id\"\n label={\"KMS Key ID\"}\n value={kmsKeyID}\n options={keys.map((key: KmsKeyInfo) => {\n return {\n label: key.name || \"\",\n value: key.name || \"\",\n };\n })}\n />\n )}\n \n \n }\n onClick={(e) => {\n setAddOpen(true);\n e.preventDefault();\n }}\n />\n \n \n \n )}\n \n {\n closeModalAndRefresh();\n }}\n disabled={loading}\n label={\"Cancel\"}\n />\n \n \n {loading && (\n \n \n \n )}\n \n \n \n \n );\n};\n\nexport default EnableBucketEncryption;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { HelpBox, HelpIconFilled, Box } from \"mds\";\n\ninterface IKMSHelpBoxProps {\n helpText: string;\n contents: string[];\n}\n\nconst KMSHelpBox = ({ helpText, contents }: IKMSHelpBoxProps) => {\n return (\n }\n title={helpText}\n help={\n \n {contents.map((content) => (\n {content}\n ))}\n \n }\n />\n );\n};\n\nexport default KMSHelpBox;\n"],"names":["_ref","closeAddModalAndRefresh","addOpen","dispatch","useAppDispatch","_useApi","useApi","err","setErrorSnackMessage","_useApi2","_slicedToArray","addLoading","invokeAddApi","_useState","useState","_useState2","keyName","setKeyName","_jsx","ConfirmDialog","title","confirmText","isOpen","isLoading","onConfirm","key","onClose","confirmButtonProps","disabled","indexOf","variant","confirmationContent","_jsxs","Fragment","children","KMSHelpBox","helpText","contents","Grid","item","xs","sx","marginTop","InputBox","id","name","label","autoFocus","value","error","onChange","e","target","open","encryptionCfg","selectedBucket","closeModalAndRefresh","loading","setLoading","_useState3","_useState4","kmsKeyID","setKmsKeyID","_useState5","_useState6","encryptionType","setEncryptionType","_useState7","_useState8","keys","setKeys","_useState9","_useState10","loadingKeys","setLoadingKeys","_useState11","_useState12","setAddOpen","useEffect","algorithm","BucketEncryptionType","SseS3","SseKms","kmsMasterKeyID","api","kms","kmsListKeys","then","res","data","results","catch","setModalErrorSnackMessage","errorToHandler","AddKeyModal","refresh","ModalWrapper","modalOpen","titleIcon","BucketEncryptionIcon","noValidate","autoComplete","onSubmit","preventDefault","buckets","disableBucketEncryption","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","json","sent","stop","_x","apply","arguments","enableBucketEncryption","encType","_ref3","_callee2","_context2","_x2","FormLayout","withBorders","containerPadding","Select","options","Box","display","gap","className","map","SecureComponent","scopes","IAM_SCOPES","KMS_IMPORT_KEY","resource","CONSOLE_UI_RESOURCE","errorProps","TooltipWrapper","tooltip","Button","icon","AddIcon","onClick","modalStyleUtils","modalButtonBar","type","LinearProgress","HelpBox","iconComponent","HelpIconFilled","help","content","paddingBottom"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9968.392f895d.chunk.js b/portal-ui/build/static/js/9968.392f895d.chunk.js deleted file mode 100644 index 348105a9b..000000000 --- a/portal-ui/build/static/js/9968.392f895d.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9968],{39968:function(e,t,n){n.r(t);var u=n(29439),o=(n(72791),n(51691)),r=n(9505),c=n(23508),i=n(29945),l=n(87995),s=n(81551),a=n(80184);t.default=function(e){var t=e.closeDeleteModalAndRefresh,n=e.deleteOpen,f=e.selectedBucket,d=(0,s.TL)(),k=(0,r.Z)((function(){return t(!0)}),(function(e){return d((0,l.Ih)(e))})),p=(0,u.Z)(k,2),b=p[0],h=p[1];if(!f)return null;return(0,a.jsx)(c.Z,{title:"Delete Bucket",confirmText:"Delete",isOpen:n,titleIcon:(0,a.jsx)(i.NvT,{}),isLoading:b,onConfirm:function(){h("DELETE","/api/v1/buckets/".concat(f),{name:f})},onClose:function(){return t(!1)},confirmationContent:(0,a.jsxs)(o.Z,{children:["Are you sure you want to delete bucket ",(0,a.jsx)("b",{children:f}),"? ",(0,a.jsx)("br",{}),"A bucket can only be deleted if it's empty."]})})}}}]); -//# sourceMappingURL=9968.392f895d.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/9968.392f895d.chunk.js.map b/portal-ui/build/static/js/9968.392f895d.chunk.js.map deleted file mode 100644 index 0a9e7db1c..000000000 --- a/portal-ui/build/static/js/9968.392f895d.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/9968.392f895d.chunk.js","mappings":"0NA2EA,UA1CqB,SAAHA,GAIS,IAHzBC,EAA0BD,EAA1BC,2BACAC,EAAUF,EAAVE,WACAC,EAAcH,EAAdG,eAEMC,GAAWC,EAAAA,EAAAA,MAMjBC,GAAyCC,EAAAA,EAAAA,IALpB,WAAH,OAASN,GAA2B,EAAM,IACzC,SAACO,GAAyB,OAC3CJ,GAASK,EAAAA,EAAAA,IAAqBD,GAAM,IAGmCE,GAAAC,EAAAA,EAAAA,GAAAL,EAAA,GAAlEM,EAAaF,EAAA,GAAEG,EAAeH,EAAA,GAErC,IAAKP,EACH,OAAO,KAST,OACEW,EAAAA,EAAAA,KAACC,EAAAA,EAAa,CACZC,MAAK,gBACLC,YAAa,SACbC,OAAQhB,EACRiB,WAAWL,EAAAA,EAAAA,KAACM,EAAAA,IAAiB,IAC7BC,UAAWT,EACXU,UAboB,WACtBT,EAAgB,SAAS,mBAADU,OAAqBpB,GAAkB,CAC7DqB,KAAMrB,GAEV,EAUIsB,QAtBY,WAAH,OAASxB,GAA2B,EAAO,EAuBpDyB,qBACEC,EAAAA,EAAAA,MAACC,EAAAA,EAAiB,CAAAC,SAAA,CAAC,2CACsBf,EAAAA,EAAAA,KAAA,KAAAe,SAAI1B,IAAmB,MAAEW,EAAAA,EAAAA,KAAA,SAAM,kDAMhF,C","sources":["screens/Console/Buckets/ListBuckets/DeleteBucket.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\n\nimport { DialogContentText } from \"@mui/material\";\n\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IDeleteBucketProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedBucket: string;\n}\n\nconst DeleteBucket = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n}: IDeleteBucketProps) => {\n const dispatch = useAppDispatch();\n const onDelSuccess = () => closeDeleteModalAndRefresh(true);\n const onDelError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n const onClose = () => closeDeleteModalAndRefresh(false);\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n\n if (!selectedBucket) {\n return null;\n }\n\n const onConfirmDelete = () => {\n invokeDeleteApi(\"DELETE\", `/api/v1/buckets/${selectedBucket}`, {\n name: selectedBucket,\n });\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete bucket {selectedBucket}?
\n A bucket can only be deleted if it's empty.\n
\n }\n />\n );\n};\n\nexport default DeleteBucket;\n"],"names":["_ref","closeDeleteModalAndRefresh","deleteOpen","selectedBucket","dispatch","useAppDispatch","_useApi","useApi","err","setErrorSnackMessage","_useApi2","_slicedToArray","deleteLoading","invokeDeleteApi","_jsx","ConfirmDialog","title","confirmText","isOpen","titleIcon","ConfirmDeleteIcon","isLoading","onConfirm","concat","name","onClose","confirmationContent","_jsxs","DialogContentText","children"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/9968.741ebf65.chunk.js b/portal-ui/build/static/js/9968.741ebf65.chunk.js new file mode 100644 index 000000000..c60b1fb22 --- /dev/null +++ b/portal-ui/build/static/js/9968.741ebf65.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkportal_ui=self.webpackChunkportal_ui||[]).push([[9968],{39968:function(e,t,n){n.r(t);var u=n(29439),r=n(72791),o=n(29945),c=n(87995),i=n(81551),l=n(9505),s=n(23508),a=n(80184);t.default=function(e){var t=e.closeDeleteModalAndRefresh,n=e.deleteOpen,f=e.selectedBucket,d=(0,i.TL)(),k=(0,l.Z)((function(){return t(!0)}),(function(e){return d((0,c.Ih)(e))})),p=(0,u.Z)(k,2),b=p[0],h=p[1];if(!f)return null;return(0,a.jsx)(s.Z,{title:"Delete Bucket",confirmText:"Delete",isOpen:n,titleIcon:(0,a.jsx)(o.NvT,{}),isLoading:b,onConfirm:function(){h("DELETE","/api/v1/buckets/".concat(f),{name:f})},onClose:function(){return t(!1)},confirmationContent:(0,a.jsxs)(r.Fragment,{children:["Are you sure you want to delete bucket ",(0,a.jsx)("b",{children:f}),"? ",(0,a.jsx)("br",{}),"A bucket can only be deleted if it's empty."]})})}}}]); +//# sourceMappingURL=9968.741ebf65.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/9968.741ebf65.chunk.js.map b/portal-ui/build/static/js/9968.741ebf65.chunk.js.map new file mode 100644 index 000000000..1447c510a --- /dev/null +++ b/portal-ui/build/static/js/9968.741ebf65.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/9968.741ebf65.chunk.js","mappings":"+MAwEA,UA1CqB,SAAHA,GAIS,IAHzBC,EAA0BD,EAA1BC,2BACAC,EAAUF,EAAVE,WACAC,EAAcH,EAAdG,eAEMC,GAAWC,EAAAA,EAAAA,MAMjBC,GAAyCC,EAAAA,EAAAA,IALpB,WAAH,OAASN,GAA2B,EAAM,IACzC,SAACO,GAAyB,OAC3CJ,GAASK,EAAAA,EAAAA,IAAqBD,GAAM,IAGmCE,GAAAC,EAAAA,EAAAA,GAAAL,EAAA,GAAlEM,EAAaF,EAAA,GAAEG,EAAeH,EAAA,GAErC,IAAKP,EACH,OAAO,KAST,OACEW,EAAAA,EAAAA,KAACC,EAAAA,EAAa,CACZC,MAAK,gBACLC,YAAa,SACbC,OAAQhB,EACRiB,WAAWL,EAAAA,EAAAA,KAACM,EAAAA,IAAiB,IAC7BC,UAAWT,EACXU,UAboB,WACtBT,EAAgB,SAAS,mBAADU,OAAqBpB,GAAkB,CAC7DqB,KAAMrB,GAEV,EAUIsB,QAtBY,WAAH,OAASxB,GAA2B,EAAO,EAuBpDyB,qBACEC,EAAAA,EAAAA,MAACC,EAAAA,SAAQ,CAAAC,SAAA,CAAC,2CAC+Bf,EAAAA,EAAAA,KAAA,KAAAe,SAAI1B,IAAmB,MAAEW,EAAAA,EAAAA,KAAA,SAAM,kDAMhF,C","sources":["screens/Console/Buckets/ListBuckets/DeleteBucket.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { ErrorResponseHandler } from \"../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\n\ninterface IDeleteBucketProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedBucket: string;\n}\n\nconst DeleteBucket = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n}: IDeleteBucketProps) => {\n const dispatch = useAppDispatch();\n const onDelSuccess = () => closeDeleteModalAndRefresh(true);\n const onDelError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n const onClose = () => closeDeleteModalAndRefresh(false);\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n\n if (!selectedBucket) {\n return null;\n }\n\n const onConfirmDelete = () => {\n invokeDeleteApi(\"DELETE\", `/api/v1/buckets/${selectedBucket}`, {\n name: selectedBucket,\n });\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete bucket {selectedBucket}?
\n A bucket can only be deleted if it's empty.\n
\n }\n />\n );\n};\n\nexport default DeleteBucket;\n"],"names":["_ref","closeDeleteModalAndRefresh","deleteOpen","selectedBucket","dispatch","useAppDispatch","_useApi","useApi","err","setErrorSnackMessage","_useApi2","_slicedToArray","deleteLoading","invokeDeleteApi","_jsx","ConfirmDialog","title","confirmText","isOpen","titleIcon","ConfirmDeleteIcon","isLoading","onConfirm","concat","name","onClose","confirmationContent","_jsxs","Fragment","children"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/build/static/js/main.6166ac41.js b/portal-ui/build/static/js/main.6166ac41.js new file mode 100644 index 000000000..51efa347a --- /dev/null +++ b/portal-ui/build/static/js/main.6166ac41.js @@ -0,0 +1,3 @@ +/*! For license information please see main.6166ac41.js.LICENSE.txt */ +!function(){var e={66315:function(e,t,n){"use strict";n.d(t,{Ln:function(){return h},V0:function(){return S},bJ:function(){return f},cv:function(){return m},nY:function(){return g},oO:function(){return v},zR:function(){return b},zc:function(){return y}});var r=n(60136),o=n(29388),a=n(74165),i=n(1413),s=n(45987),l=n(15861),c=n(4942),u=n(15671),d=n(43144),p=["body","secure","path","type","query","format","baseUrl","cancelToken"],f=function(e){return e.SseS3="sse-s3",e.SseKms="sse-kms",e}({}),m=function(e){return e.PRIVATE="PRIVATE",e.PUBLIC="PUBLIC",e.CUSTOM="CUSTOM",e}({}),h=function(e){return e.Put="put",e.Delete="delete",e.Get="get",e.Replica="replica",e.Ilm="ilm",e}({}),g=function(e){return e.Enabled="enabled",e.Disabled="disabled",e}({}),v=function(e){return e.Governance="governance",e.Compliance="compliance",e}({}),b=function(e){return e.Days="days",e.Years="years",e}({}),y=function(e){return e.Json="application/json",e.FormData="multipart/form-data",e.UrlEncoded="application/x-www-form-urlencoded",e.Text="text/plain",e}({}),E=function(){function e(){var t,n=this,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,u.Z)(this,e),this.baseUrl="/api/v1",this.securityData=null,this.securityWorker=void 0,this.abortControllers=new Map,this.customFetch=function(){return fetch.apply(void 0,arguments)},this.baseApiParams={credentials:"same-origin",headers:{},redirect:"follow",referrerPolicy:"no-referrer"},this.setSecurityData=function(e){n.securityData=e},this.contentFormatters=(t={},(0,c.Z)(t,y.Json,(function(e){return null===e||"object"!==typeof e&&"string"!==typeof e?e:JSON.stringify(e)})),(0,c.Z)(t,y.Text,(function(e){return null!==e&&"string"!==typeof e?JSON.stringify(e):e})),(0,c.Z)(t,y.FormData,(function(e){return Object.keys(e||{}).reduce((function(t,n){var r=e[n];return t.append(n,r instanceof Blob?r:"object"===typeof r&&null!==r?JSON.stringify(r):"".concat(r)),t}),new FormData)})),(0,c.Z)(t,y.UrlEncoded,(function(e){return n.toQueryString(e)})),t),this.createAbortSignal=function(e){if(n.abortControllers.has(e)){var t=n.abortControllers.get(e);return t?t.signal:void 0}var r=new AbortController;return n.abortControllers.set(e,r),r.signal},this.abortRequest=function(e){var t=n.abortControllers.get(e);t&&(t.abort(),n.abortControllers.delete(e))},this.request=function(){var e=(0,l.Z)((0,a.Z)().mark((function e(t){var r,o,c,u,d,f,m,h,g,v,b,E,S,w;return(0,a.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=t.body,o=t.secure,c=t.path,u=t.type,d=t.query,f=t.format,m=t.baseUrl,h=t.cancelToken,g=(0,s.Z)(t,p),e.t1=("boolean"===typeof o?o:n.baseApiParams.secure)&&n.securityWorker,!e.t1){e.next=6;break}return e.next=5,n.securityWorker(n.securityData);case 5:e.t1=e.sent;case 6:if(e.t0=e.t1,e.t0){e.next=9;break}e.t0={};case 9:return v=e.t0,b=n.mergeRequestParams(g,v),E=d&&n.toQueryString(d),S=n.contentFormatters[u||y.Json],w=f||b.format,e.abrupt("return",n.customFetch("".concat(m||n.baseUrl||"").concat(c).concat(E?"?".concat(E):""),(0,i.Z)((0,i.Z)({},b),{},{headers:(0,i.Z)((0,i.Z)({},b.headers||{}),u&&u!==y.FormData?{"Content-Type":u}:{}),signal:(h?n.createAbortSignal(h):b.signal)||null,body:"undefined"===typeof r||null===r?null:S(r)})).then(function(){var e=(0,l.Z)((0,a.Z)().mark((function e(t){var r,o;return(0,a.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((r=t).data=null,r.error=null,w){e.next=7;break}e.t0=r,e.next=10;break;case 7:return e.next=9,t[w]().then((function(e){return r.ok?r.data=e:r.error=e,r})).catch((function(e){return r.error=e,r}));case 9:e.t0=e.sent;case 10:if(o=e.t0,h&&n.abortControllers.delete(h),t.ok){e.next=14;break}throw o;case 14:return e.abrupt("return",o);case 15:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 15:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),Object.assign(this,r)}return(0,d.Z)(e,[{key:"encodeQueryParam",value:function(e,t){var n=encodeURIComponent(e);return"".concat(n,"=").concat(encodeURIComponent("number"===typeof t?t:"".concat(t)))}},{key:"addQueryParam",value:function(e,t){return this.encodeQueryParam(t,e[t])}},{key:"addArrayQueryParam",value:function(e,t){var n=this;return e[t].map((function(e){return n.encodeQueryParam(t,e)})).join("&")}},{key:"toQueryString",value:function(e){var t=this,n=e||{};return Object.keys(n).filter((function(e){return"undefined"!==typeof n[e]})).map((function(e){return Array.isArray(n[e])?t.addArrayQueryParam(n,e):t.addQueryParam(n,e)})).join("&")}},{key:"addQueryParams",value:function(e){var t=this.toQueryString(e);return t?"?".concat(t):""}},{key:"mergeRequestParams",value:function(e,t){return(0,i.Z)((0,i.Z)((0,i.Z)((0,i.Z)({},this.baseApiParams),e),t||{}),{},{headers:(0,i.Z)((0,i.Z)((0,i.Z)({},this.baseApiParams.headers||{}),e.headers||{}),t&&t.headers||{})})}}]),e}(),S=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){var e;(0,u.Z)(this,n);for(var r=arguments.length,o=new Array(r),a=0;a0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/login",method:"GET",format:"json"},t))},login:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/login",method:"POST",body:t,type:y.Json},n))},loginOauth2Auth:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/login/oauth2/auth",method:"POST",body:t,type:y.Json},n))}},e.logout={logout:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/logout",method:"POST",body:t,secure:!0,type:y.Json},n))}},e.session={sessionCheck:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/session",method:"GET",secure:!0,format:"json"},t))}},e.checkVersion={checkMinIoVersion:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/check-version",method:"GET",format:"json"},t))}},e.account={accountChangePassword:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/account/change-password",method:"POST",body:t,secure:!0,type:y.Json},n))},changeUserPassword:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/account/change-user-password",method:"POST",body:t,secure:!0,type:y.Json},n))}},e.buckets={listBuckets:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/buckets",method:"GET",secure:!0,format:"json"},t))},makeBucket:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets",method:"POST",body:t,secure:!0,type:y.Json,format:"json"},n))},bucketInfo:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t),method:"GET",secure:!0,format:"json"},n))},deleteBucket:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t),method:"DELETE",secure:!0},n))},getBucketRetentionConfig:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/retention"),method:"GET",secure:!0,format:"json"},n))},setBucketRetentionConfig:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/retention"),method:"PUT",body:n,secure:!0,type:y.Json},r))},listObjects:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/objects"),method:"GET",query:n,secure:!0,format:"json"},r))},deleteObject:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/objects"),method:"DELETE",query:n,secure:!0},r))},deleteMultipleObjects:function(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/delete-objects"),method:"POST",query:r,body:n,secure:!0,type:y.Json},o))},objectsUploadCreate:function(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/objects/upload"),method:"POST",query:n,body:r,secure:!0,type:y.FormData},o))},downloadObject:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/objects/download"),method:"GET",query:n,secure:!0},r))},shareObject:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/objects/share"),method:"GET",query:n,secure:!0,format:"json"},r))},putObjectLegalHold:function(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/objects/legalhold"),method:"PUT",query:n,body:r,secure:!0,type:y.Json},o))},putObjectRetention:function(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/objects/retention"),method:"PUT",query:n,body:r,secure:!0,type:y.Json},o))},deleteObjectRetention:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/objects/retention"),method:"DELETE",query:n,secure:!0},r))},putObjectTags:function(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/objects/tags"),method:"PUT",query:n,body:r,secure:!0,type:y.Json},o))},putObjectRestore:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/objects/restore"),method:"PUT",query:n,secure:!0},r))},getObjectMetadata:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/objects/metadata"),method:"GET",query:n,secure:!0,format:"json"},r))},putBucketTags:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/tags"),method:"PUT",body:n,secure:!0,type:y.Json},r))},bucketSetPolicy:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/set-policy"),method:"PUT",body:n,secure:!0,type:y.Json,format:"json"},r))},getBucketQuota:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/quota"),method:"GET",secure:!0,format:"json"},n))},setBucketQuota:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/quota"),method:"PUT",body:n,secure:!0,type:y.Json,format:"json"},r))},listBucketEvents:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/events"),method:"GET",query:n,secure:!0,format:"json"},r))},createBucketEvent:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/events"),method:"POST",body:n,secure:!0,type:y.Json},r))},deleteBucketEvent:function(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/events/").concat(n),method:"DELETE",body:r,secure:!0,type:y.Json},o))},getBucketReplication:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/replication"),method:"GET",secure:!0,format:"json"},n))},getBucketReplicationRule:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/replication/").concat(n),method:"GET",secure:!0,format:"json"},r))},updateMultiBucketReplication:function(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/replication/").concat(n),method:"PUT",body:r,secure:!0,type:y.Json},o))},deleteBucketReplicationRule:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/replication/").concat(n),method:"DELETE",secure:!0},r))},deleteAllReplicationRules:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/delete-all-replication-rules"),method:"DELETE",secure:!0},n))},deleteSelectedReplicationRules:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/delete-selected-replication-rules"),method:"DELETE",body:n,secure:!0,type:y.Json},r))},getBucketVersioning:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/versioning"),method:"GET",secure:!0,format:"json"},n))},setBucketVersioning:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/versioning"),method:"PUT",body:n,secure:!0,type:y.Json},r))},getBucketObjectLockingStatus:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/object-locking"),method:"GET",secure:!0,format:"json"},n))},enableBucketEncryption:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/encryption/enable"),method:"POST",body:n,secure:!0,type:y.Json},r))},disableBucketEncryption:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/encryption/disable"),method:"POST",secure:!0},n))},getBucketEncryptionInfo:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/encryption/info"),method:"GET",secure:!0,format:"json"},n))},getBucketLifecycle:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/lifecycle"),method:"GET",secure:!0,format:"json"},n))},addBucketLifecycle:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/lifecycle"),method:"POST",body:n,secure:!0,type:y.Json},r))},addMultiBucketLifecycle:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets/multi-lifecycle",method:"POST",body:t,secure:!0,type:y.Json,format:"json"},n))},updateBucketLifecycle:function(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/lifecycle/").concat(n),method:"PUT",body:r,secure:!0,type:y.Json},o))},deleteBucketLifecycleRule:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/lifecycle/").concat(n),method:"DELETE",secure:!0},r))},getBucketRewind:function(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request((0,i.Z)({path:"/buckets/".concat(t,"/rewind/").concat(n),method:"GET",query:r,secure:!0,format:"json"},o))}},e.listExternalBuckets={listExternalBuckets:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/list-external-buckets",method:"POST",body:t,secure:!0,type:y.Json,format:"json"},n))}},e.bucketsReplication={setMultiBucketReplication:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/buckets-replication",method:"POST",body:t,secure:!0,type:y.Json,format:"json"},n))}},e.serviceAccounts={listUserServiceAccounts:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/service-accounts",method:"GET",query:t,secure:!0,format:"json"},n))},createServiceAccount:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/service-accounts",method:"POST",body:t,secure:!0,format:"json"},n))},deleteServiceAccount:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/service-accounts/".concat(t),method:"DELETE",secure:!0},n))},deleteMultipleServiceAccounts:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/service-accounts/delete-multi",method:"DELETE",body:t,secure:!0},n))},getServiceAccountPolicy:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/service-accounts/".concat(t,"/policy"),method:"GET",secure:!0,format:"json"},n))},setServiceAccountPolicy:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/service-accounts/".concat(t,"/policy"),method:"PUT",body:n,secure:!0,type:y.Json},r))}},e.serviceAccountCredentials={createServiceAccountCreds:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/service-account-credentials",method:"POST",body:t,secure:!0,format:"json"},n))}},e.users={listUsers:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/users",method:"GET",query:t,secure:!0,format:"json"},n))},addUser:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/users",method:"POST",body:t,secure:!0,type:y.Json,format:"json"},n))},checkUserServiceAccounts:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/users/service-accounts",method:"POST",body:t,secure:!0,format:"json"},n))}},e.user={getUserInfo:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/user/".concat(t),method:"GET",secure:!0,format:"json"},n))},updateUserInfo:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/user/".concat(t),method:"PUT",body:n,secure:!0,type:y.Json,format:"json"},r))},removeUser:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/user/".concat(t),method:"DELETE",secure:!0},n))},updateUserGroups:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/user/".concat(t,"/groups"),method:"PUT",body:n,secure:!0,type:y.Json,format:"json"},r))},getUserPolicy:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/user/policy",method:"GET",secure:!0,format:"json"},t))},getSaUserPolicy:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/user/".concat(t,"/policies"),method:"GET",secure:!0,format:"json"},n))},listAUserServiceAccounts:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/user/".concat(t,"/service-accounts"),method:"GET",secure:!0,format:"json"},n))},createAUserServiceAccount:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/user/".concat(t,"/service-accounts"),method:"POST",body:n,secure:!0,format:"json"},r))},createServiceAccountCredentials:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/user/".concat(t,"/service-account-credentials"),method:"POST",body:n,secure:!0,format:"json"},r))}},e.usersGroupsBulk={bulkUpdateUsersGroups:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/users-groups-bulk",method:"PUT",body:t,secure:!0,type:y.Json},n))}},e.groups={listGroups:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/groups",method:"GET",query:t,secure:!0,format:"json"},n))},addGroup:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/groups",method:"POST",body:t,secure:!0,type:y.Json},n))}},e.group={groupInfo:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/group/".concat(t),method:"GET",secure:!0,format:"json"},n))},removeGroup:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/group/".concat(t),method:"DELETE",secure:!0},n))},updateGroup:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/group/".concat(t),method:"PUT",body:n,secure:!0,type:y.Json,format:"json"},r))}},e.policies={listPolicies:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/policies",method:"GET",query:t,secure:!0,format:"json"},n))},addPolicy:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/policies",method:"POST",body:t,secure:!0,type:y.Json,format:"json"},n))},listUsersForPolicy:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/policies/".concat(t,"/users"),method:"GET",secure:!0,format:"json"},n))},listGroupsForPolicy:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/policies/".concat(t,"/groups"),method:"GET",secure:!0,format:"json"},n))}},e.bucketPolicy={listPoliciesWithBucket:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/bucket-policy/".concat(t),method:"GET",query:n,secure:!0,format:"json"},r))}},e.bucket={setAccessRuleWithBucket:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/bucket/".concat(t,"/access-rules"),method:"PUT",body:n,secure:!0,type:y.Json,format:"json"},r))},listAccessRulesWithBucket:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/bucket/".concat(t,"/access-rules"),method:"GET",query:n,secure:!0,format:"json"},r))},deleteAccessRuleWithBucket:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/bucket/".concat(t,"/access-rules"),method:"DELETE",body:n,secure:!0,type:y.Json,format:"json"},r))}},e.bucketUsers={listUsersWithAccessToBucket:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/bucket-users/".concat(t),method:"GET",query:n,secure:!0,format:"json"},r))}},e.policy={policyInfo:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/policy/".concat(t),method:"GET",secure:!0,format:"json"},n))},removePolicy:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/policy/".concat(t),method:"DELETE",secure:!0},n))}},e.configs={listConfig:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/configs",method:"GET",query:t,secure:!0,format:"json"},n))},configInfo:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/configs/".concat(t),method:"GET",secure:!0,format:"json"},n))},setConfig:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/configs/".concat(t),method:"PUT",body:n,secure:!0,type:y.Json,format:"json"},r))},resetConfig:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/configs/".concat(t,"/reset"),method:"POST",secure:!0,format:"json"},n))},exportConfig:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/configs/export",method:"GET",secure:!0,format:"json"},t))},importCreate:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/configs/import",method:"POST",body:t,secure:!0,type:y.FormData},n))}},e.setPolicy={setPolicy:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/set-policy",method:"PUT",body:t,secure:!0,type:y.Json},n))}},e.setPolicyMulti={setPolicyMultiple:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/set-policy-multi",method:"PUT",body:t,secure:!0,type:y.Json},n))}},e.service={restartService:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/service/restart",method:"POST",secure:!0},t))}},e.profiling={profilingStart:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/profiling/start",method:"POST",body:t,secure:!0,type:y.Json,format:"json"},n))},profilingStop:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/profiling/stop",method:"POST",secure:!0},t))}},e.subnet={subnetRegToken:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/subnet/registration-token",method:"GET",secure:!0,format:"json"},t))},subnetInfo:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/subnet/info",method:"GET",secure:!0,format:"json"},t))},subnetApiKey:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/subnet/apikey",method:"GET",query:t,secure:!0,format:"json"},n))},subnetRegister:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/subnet/register",method:"POST",body:t,secure:!0,type:y.Json},n))},subnetLogin:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/subnet/login",method:"POST",body:t,secure:!0,type:y.Json,format:"json"},n))},subnetLoginMfa:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/subnet/login/mfa",method:"POST",body:t,secure:!0,type:y.Json,format:"json"},n))}},e.admin={adminInfo:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/admin/info",method:"GET",query:t,secure:!0,format:"json"},n))},dashboardWidgetDetails:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/admin/info/widgets/".concat(t),method:"GET",query:n,secure:!0,format:"json"},r))},arnList:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/admin/arns",method:"GET",secure:!0,format:"json"},t))},notificationEndpointList:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/admin/notification_endpoints",method:"GET",secure:!0,format:"json"},t))},addNotificationEndpoint:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/admin/notification_endpoints",method:"POST",body:t,secure:!0,type:y.Json,format:"json"},n))},getSiteReplicationInfo:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/admin/site-replication",method:"GET",secure:!0,format:"json"},t))},siteReplicationInfoAdd:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/admin/site-replication",method:"POST",body:t,secure:!0,type:y.Json,format:"json"},n))},siteReplicationEdit:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/admin/site-replication",method:"PUT",body:t,secure:!0,type:y.Json,format:"json"},n))},siteReplicationRemove:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/admin/site-replication",method:"DELETE",body:t,secure:!0,type:y.Json,format:"json"},n))},getSiteReplicationStatus:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/admin/site-replication/status",method:"GET",query:t,secure:!0,format:"json"},n))},tiersList:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/admin/tiers",method:"GET",secure:!0,format:"json"},t))},addTier:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/admin/tiers",method:"POST",body:t,secure:!0,type:y.Json},n))},getTier:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/admin/tiers/".concat(t,"/").concat(n),method:"GET",secure:!0,format:"json"},r))},editTierCredentials:function(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request((0,i.Z)({path:"/admin/tiers/".concat(t,"/").concat(n,"/credentials"),method:"PUT",body:r,secure:!0,type:y.Json},o))},inspect:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/admin/inspect",method:"GET",query:t,secure:!0},n))}},e.nodes={listNodes:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/nodes",method:"GET",secure:!0,format:"json"},t))}},e.remoteBuckets={listRemoteBuckets:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/remote-buckets",method:"GET",secure:!0,format:"json"},t))},addRemoteBucket:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/remote-buckets",method:"POST",body:t,secure:!0,type:y.Json},n))},remoteBucketDetails:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/remote-buckets/".concat(t),method:"GET",secure:!0,format:"json"},n))},deleteRemoteBucket:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/remote-buckets/".concat(t,"/").concat(n),method:"DELETE",secure:!0},r))}},e.logs={logSearch:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/logs/search",method:"GET",query:t,secure:!0,format:"json"},n))}},e.kms={kmsStatus:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/kms/status",method:"GET",secure:!0,format:"json"},t))},kmsMetrics:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/kms/metrics",method:"GET",secure:!0,format:"json"},t))},kmsapIs:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/kms/apis",method:"GET",secure:!0,format:"json"},t))},kmsVersion:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/kms/version",method:"GET",secure:!0,format:"json"},t))},kmsCreateKey:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/kms/keys",method:"POST",body:t,secure:!0,type:y.Json},n))},kmsListKeys:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/kms/keys",method:"GET",query:t,secure:!0,format:"json"},n))},kmsKeyStatus:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/kms/keys/".concat(t),method:"GET",secure:!0,format:"json"},n))},kmsDeleteKey:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/kms/keys/".concat(t),method:"DELETE",secure:!0},n))},kmsImportKey:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/kms/keys/".concat(t,"/import"),method:"POST",body:n,secure:!0,type:y.Json},r))},kmsSetPolicy:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/kms/policies",method:"POST",body:t,secure:!0,type:y.Json},n))},kmsListPolicies:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/kms/policies",method:"GET",query:t,secure:!0,format:"json"},n))},kmsGetPolicy:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/kms/policies/".concat(t),method:"GET",secure:!0,format:"json"},n))},kmsDeletePolicy:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/kms/policies/".concat(t),method:"DELETE",secure:!0},n))},kmsAssignPolicy:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/kms/policies/".concat(t,"/assign"),method:"POST",body:n,secure:!0,type:y.Json},r))},kmsDescribePolicy:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/kms/policies/".concat(t,"/describe"),method:"GET",secure:!0,format:"json"},n))},kmsDeleteIdentity:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/kms/identities/".concat(t),method:"DELETE",secure:!0},n))},kmsDescribeIdentity:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/kms/identities/".concat(t,"/describe"),method:"GET",secure:!0,format:"json"},n))},kmsDescribeSelfIdentity:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/kms/describe-self/identity",method:"GET",secure:!0,format:"json"},t))},kmsListIdentities:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/kms/identities",method:"GET",query:t,secure:!0,format:"json"},n))}},e.idp={createConfiguration:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/idp/".concat(t),method:"POST",body:n,secure:!0,format:"json"},r))},listConfigurations:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/idp/".concat(t),method:"GET",secure:!0,format:"json"},n))},getConfiguration:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/idp/".concat(n,"/").concat(t),method:"GET",secure:!0,format:"json"},r))},deleteConfiguration:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request((0,i.Z)({path:"/idp/".concat(n,"/").concat(t),method:"DELETE",secure:!0,format:"json"},r))},updateConfiguration:function(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request((0,i.Z)({path:"/idp/".concat(n,"/").concat(t),method:"PUT",body:r,secure:!0,format:"json"},o))}},e.ldapEntities={getLdapEntities:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/ldap-entities",method:"POST",body:t,secure:!0,type:y.Json,format:"json"},n))}},e.releases={listReleases:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/releases",method:"GET",query:t,secure:!0,format:"json"},n))}},e.support={getCallHomeOptionValue:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request((0,i.Z)({path:"/support/callhome",method:"GET",secure:!0,format:"json"},t))},setCallHomeStatus:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request((0,i.Z)({path:"/support/callhome",method:"PUT",body:t,secure:!0,type:y.Json},n))}},e}return(0,d.Z)(n)}(E)},82342:function(e,t,n){"use strict";n.d(t,{g:function(){return r}});var r=function(e){return e?{statusCode:e.code,errorMessage:e.message||"",detailedError:e.detailedMessage||""}:{statusCode:0,errorMessage:"",detailedError:""}}},31776:function(e,t,n){"use strict";n.d(t,{h:function(){return c}});var r=n(74165),o=n(1413),a=n(45987),i=n(15861),s=n(66315),l=["body","secure","path","type","query","format","baseUrl","cancelToken"],c=new s.V0;c.baseUrl="".concat(new URL(document.baseURI).pathname,"api/v1");var u=c.request;function d(e){var t=e.error;return t&&403===t.code&&"invalid session"===t.message&&(document.location="/"),e}c.request=function(){var e=(0,i.Z)((0,r.Z)().mark((function e(t){var n,i,s,c,p,f,m,h,g,v;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.body,i=t.secure,s=t.path,c=t.type,p=t.query,f=t.format,m=t.baseUrl,h=t.cancelToken,g=(0,a.Z)(t,l),v=u((0,o.Z)({body:n,secure:i,path:s,type:c,query:p,format:f,baseUrl:m,cancelToken:h},g)),e.abrupt("return",v.then(d));case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()},7241:function(e,t,n){"use strict";n(72791);var r=n(61889),o=n(29945),a=n(80184);t.Z=function(){return(0,a.jsx)(r.ZP,{container:!0,spacing:0,direction:"column",alignItems:"center",justifyContent:"center",style:{minHeight:"100vh"},children:(0,a.jsx)(r.ZP,{item:!0,xs:3,style:{textAlign:"center"},children:(0,a.jsx)(o.aNw,{style:{width:35,height:35}})})})}},49535:function(e,t,n){"use strict";var r=n(29439),o=n(93433),a=n(81551),i=n(26181),s=n.n(i),l=n(56087),c=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2?arguments[2]:void 0;if(!e)return!1;var r=e.includes(l.Ft.S3_ALL_ACTIONS),o=e.includes(l.Ft.ADMIN_ALL_ACTIONS),a=t.filter((function(t){return-1!==e.indexOf(t)||-1!==t.indexOf("s3:")&&r||-1!==t.indexOf("admin:")&&o}));return n?a.length===t.length:a.length>0};t.Z=function(e,t,n,i){if(!e)return!1;var l=a.h.getState(),u=l.console.session&&l.console.session.permissions||{},d=u["arn:aws:s3:::*"]||[],p=[],f=[],m=[];if(e){Array.isArray(e)?p=[].concat((0,o.Z)(p),(0,o.Z)(e)):p.push(e);var h=Object.keys(u).filter((function(e){return e.includes("*")&&"arn:aws:s3:::*"!==e}));p.forEach((function(e){var t,n=(t=e,h.map((function(e){var n=e.split(":").slice(-1)[0].replace("/","\\/").replace("*","($|\\/?(.*?))");return new RegExp("".concat(n),"gm").test(t)?e:null})).filter((function(e){return null!==e}))),a=[];n.forEach((function(e){if(e){var t=s()(u,e,[]);a=[].concat((0,o.Z)(a),(0,o.Z)(t))}}));var l=s()(u,e,[]);l=l||[];var c=s()(u,"arn:aws:s3:::".concat(e,"/*"),[]),d=s()(u,"arn:aws:s3:::".concat(e,"/"),[]),p=s()(u,"arn:aws:s3:::".concat(e),[]);if(f=[].concat((0,o.Z)(l),(0,o.Z)(c),(0,o.Z)(a),(0,o.Z)(d),(0,o.Z)(p)),i){var g="arn:aws:s3:::".concat(e);Object.entries(u).forEach((function(e){var t=(0,r.Z)(e,2),n=t[0],a=t[1];n.includes(g)&&(m=[].concat((0,o.Z)(m),(0,o.Z)(a)))}))}}))}var g=[],v=t||[];return"*"===e&&Object.entries(u).forEach((function(e){var t=(0,r.Z)(e,2),n=(t[0],t[1]),a=(void 0===n?[]:n)||[];v.forEach((function(e){a.forEach((function(t){t!==e&&"s3:*"!==t||(g=[].concat((0,o.Z)(g),[e]))}))}))})),c([].concat((0,o.Z)(f),(0,o.Z)(d),(0,o.Z)(m),(0,o.Z)(g)),t,n)}},38442:function(e,t,n){"use strict";n.d(t,{s:function(){return s},F:function(){return r.Z}});var r=n(49535),o=n(1413),a=n(72791),i=n(80184),s=function(e){var t=e.children,n=e.RenderError,s=void 0===n?function(){return(0,i.jsx)(i.Fragment,{})}:n,l=e.errorProps,c=void 0===l?null:l,u=e.matchAll,d=void 0!==u&&u,p=e.scopes,f=void 0===p?[]:p,m=e.resource,h=e.containsResource,g=void 0!==h&&h,v=(0,r.Z)(m,f,d,g);return v||c?!v&&c?Array.isArray(t)?(0,i.jsx)(i.Fragment,{children:t.map((function(e){return(0,a.cloneElement)(e,(0,o.Z)({},c))}))}):(0,a.cloneElement)(t,(0,o.Z)({},c)):(0,i.jsx)(i.Fragment,{children:t}):(0,i.jsx)(s,{})}},56087:function(e,t,n){"use strict";n.d(t,{B:function(){return F},C3:function(){return f},D:function(){return u},EI:function(){return s},Ft:function(){return l},GD:function(){return M},HQ:function(){return p},K$:function(){return Z},K6:function(){return B},LC:function(){return d},LE:function(){return x},MK:function(){return m},Rs:function(){return h},UA:function(){return N},W2:function(){return S},XM:function(){return P},Yj:function(){return v},bE:function(){return D},cI:function(){return b},ck:function(){return w},fC:function(){return C},gA:function(){return c},iw:function(){return O},kZ:function(){return y},k_:function(){return _},kt:function(){return R},lQ:function(){return E},o3:function(){return z},oX:function(){return A},uH:function(){return g},vN:function(){return I},vh:function(){return k},xQ:function(){return T},xh:function(){return L}});var r,o,a=n(93433),i=n(4942),s={BUCKET_OWNER:"BUCKET_OWNER",BUCKET_VIEWER:"BUCKET_VIEWER",BUCKET_ADMIN:"BUCKET_ADMIN",BUCKET_LIFECYCLE:"BUCKET_LIFECYCLE"},l={S3_STAR_BUCKET:"s3:*Bucket",S3_LIST_BUCKET:"s3:ListBucket",S3_ALL_LIST_BUCKET:"s3:List*",S3_GET_BUCKET_POLICY:"s3:GetBucketPolicy",S3_PUT_BUCKET_POLICY:"s3:PutBucketPolicy",S3_GET_OBJECT:"s3:GetObject",S3_PUT_OBJECT:"s3:PutObject",S3_GET_ACTIONS:"s3:Get*",S3_PUT_ACTIONS:"s3:Put*",S3_GET_OBJECT_LEGAL_HOLD:"s3:GetObjectLegalHold",S3_PUT_OBJECT_LEGAL_HOLD:"s3:PutObjectLegalHold",S3_DELETE_OBJECT:"s3:DeleteObject",S3_GET_BUCKET_VERSIONING:"s3:GetBucketVersioning",S3_PUT_BUCKET_VERSIONING:"s3:PutBucketVersioning",S3_GET_OBJECT_RETENTION:"s3:GetObjectRetention",S3_PUT_OBJECT_RETENTION:"s3:PutObjectRetention",S3_GET_OBJECT_TAGGING:"s3:GetObjectTagging",S3_PUT_OBJECT_TAGGING:"s3:PutObjectTagging",S3_DELETE_OBJECT_TAGGING:"s3:DeleteObjectTagging",S3_GET_BUCKET_ENCRYPTION_CONFIGURATION:"s3:GetEncryptionConfiguration",S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION:"s3:PutEncryptionConfiguration",S3_CREATE_BUCKET:"s3:CreateBucket",S3_DELETE_BUCKET:"s3:DeleteBucket",S3_FORCE_DELETE_BUCKET:"s3:ForceDeleteBucket",S3_GET_BUCKET_NOTIFICATIONS:"s3:GetBucketNotification",S3_LISTEN_BUCKET_NOTIFICATIONS:"s3:ListenBucketNotification",S3_PUT_BUCKET_NOTIFICATIONS:"s3:PutBucketNotification",S3_GET_REPLICATION_CONFIGURATION:"s3:GetReplicationConfiguration",S3_PUT_REPLICATION_CONFIGURATION:"s3:PutReplicationConfiguration",S3_GET_LIFECYCLE_CONFIGURATION:"s3:GetLifecycleConfiguration",S3_PUT_LIFECYCLE_CONFIGURATION:"s3:PutLifecycleConfiguration",S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION:"s3:GetBucketObjectLockConfiguration",S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION:"s3:PutBucketObjectLockConfiguration",ADMIN_GET_POLICY:"admin:GetPolicy",ADMIN_LIST_USERS:"admin:ListUsers",ADMIN_CREATE_USER:"admin:CreateUser",ADMIN_DELETE_USER:"admin:DeleteUser",ADMIN_ENABLE_USER:"admin:EnableUser",ADMIN_DISABLE_USER:"admin:DisableUser",ADMIN_GET_USER:"admin:GetUser",ADMIN_LIST_USER_POLICIES:"admin:ListUserPolicies",ADMIN_SERVER_INFO:"admin:ServerInfo",ADMIN_GET_BUCKET_QUOTA:"admin:GetBucketQuota",ADMIN_SET_BUCKET_QUOTA:"admin:SetBucketQuota",ADMIN_LIST_TIERS:"admin:ListTier",ADMIN_SET_TIER:"admin:SetTier",ADMIN_LIST_GROUPS:"admin:ListGroups",S3_GET_OBJECT_VERSION_FOR_REPLICATION:"s3:GetObjectVersionForReplication",S3_REPLICATE_TAGS:"s3:ReplicateTags",S3_REPLICATE_DELETE:"s3:ReplicateDelete",S3_REPLICATE_OBJECT:"s3:ReplicateObject",S3_PUT_OBJECT_VERSION_TAGGING:"s3:PutObjectVersionTagging",S3_DELETE_OBJECT_VERSION_TAGGING:"s3:DeleteObjectVersionTagging",S3_DELETE_OBJECT_VERSION:"s3:DeleteObjectVersion",S3_GET_OBJECT_VERSION_TAGGING:"s3:GetObjectVersionTagging",S3_GET_OBJECT_VERSION:"s3:GetObjectVersion",S3_PUT_BUCKET_TAGGING:"s3:PutBucketTagging",S3_GET_BUCKET_TAGGING:"s3:GetBucketTagging",S3_BYPASS_GOVERNANCE_RETENTION:"s3:BypassGovernanceRetention",S3_LIST_MULTIPART_UPLOAD_PARTS:"s3:ListMultipartUploadParts",S3_LISTEN_NOTIFICATIONS:"s3:ListenNotification",S3_LIST_BUCKET_MULTIPART_UPLOADS:"s3:ListBucketMultipartUploads",S3_LIST_BUCKET_VERSIONS:"s3:ListBucketVersions",S3_GET_BUCKET_POLICY_STATUS:"s3:GetBucketPolicyStatus",S3_LIST_ALL_MY_BUCKETS:"s3:ListAllMyBuckets",S3_HEAD_BUCKET:"s3:HeadBucket",S3_GET_BUCKET_LOCATION:"s3:GetBucketLocation",S3_DELETE_BUCKET_POLICY:"s3:DeleteBucketPolicy",S3_ABORT_MULTIPART_UPLOAD:"s3:AbortMultipartUpload",ADMIN_ADD_USER_TO_GROUP:"admin:AddUserToGroup",ADMIN_REMOVE_USER_FROM_GROUP:"admin:RemoveUserFromGroup",ADMIN_GET_GROUP:"admin:GetGroup",ADMIN_ENABLE_GROUP:"admin:EnableGroup",ADMIN_DISABLE_GROUP:"admin:DisableGroup",ADMIN_CREATE_POLICY:"admin:CreatePolicy",ADMIN_DELETE_POLICY:"admin:DeletePolicy",ADMIN_ATTACH_USER_OR_GROUP_POLICY:"admin:AttachUserOrGroupPolicy",ADMIN_CREATE_SERVICEACCOUNT:"admin:CreateServiceAccount",ADMIN_UPDATE_SERVICEACCOUNT:"admin:UpdateServiceAccount",ADMIN_REMOVE_SERVICEACCOUNT:"admin:RemoveServiceAccount",ADMIN_LIST_SERVICEACCOUNTS:"admin:ListServiceAccounts",ADMIN_CONFIG_UPDATE:"admin:ConfigUpdate",ADMIN_GET_CONSOLE_LOG:"admin:ConsoleLog",ADMIN_SERVER_TRACE:"admin:ServerTrace",ADMIN_HEALTH_INFO:"admin:OBDInfo",ADMIN_HEAL:"admin:Heal",ADMIN_INSPECT_DATA:"admin:InspectData",S3_ALL_ACTIONS:"s3:*",ADMIN_ALL_ACTIONS:"admin:*",KMS_ALL_ACTIONS:"kms:*",KMS_STATUS:"kms:Status",KMS_METRICS:"kms:Metrics",KMS_APIS:"kms:API",KMS_Version:"kms:Version",KMS_CREATE_KEY:"kms:CreateKey",KMS_DELETE_KEY:"kms:DeleteKey",KMS_LIST_KEYS:"kms:ListKeys",KMS_IMPORT_KEY:"kms:ImportKey",KMS_KEY_STATUS:"kms:KeyStatus",KMS_DESCRIBE_POLICY:"kms:DescribePolicy",KMS_ASSIGN_POLICY:"kms:AssignPolicy",KMS_DELETE_POLICY:"kms:DeletePolicy",KMS_SET_POLICY:"kms:SetPolicy",KMS_GET_POLICY:"kms:GetPolicy",KMS_LIST_POLICIES:"kms:ListPolicies",KMS_DESCRIBE_IDENTITY:"kms:DescribeIdentity",KMS_DESCRIBE_SELF_IDENTITY:"kms:DescribeSelfIdentity",KMS_DELETE_IDENTITY:"kms:DeleteIdentity",KMS_LIST_IDENTITIES:"kms:ListIdentities"},c={BUCKETS:"/buckets",ADD_BUCKETS:"add-bucket",BUCKETS_ADMIN_VIEW:":bucketName/admin/*",OBJECT_BROWSER_VIEW:"/browser",OBJECT_BROWSER_BUCKET_VIEW:"/browser/:bucketName",OBJECT_BROWSER_BUCKET_DETAILS_VIEW:"/browser/:bucketName/*",IDENTITY:"/identity",USERS:"/identity/users",USERS_VIEW:"/identity/users/:userName",USER_ADD:"/identity/users/add-user",GROUPS:"/identity/groups",GROUPS_ADD:"/identity/groups/create-group",GROUPS_VIEW:"/identity/groups/:groupName",ACCOUNT:"/access-keys",ACCOUNT_ADD:"/access-keys/new-account",USER_SA_ACCOUNT_ADD:"/identity/users/new-user-sa/:userName",IDP_LDAP_CONFIGURATIONS:"/identity/ldap/configuration",IDP_OPENID_CONFIGURATIONS:"/identity/idp/openid/configurations",IDP_OPENID_CONFIGURATIONS_VIEW:"/identity/idp/openid/configurations/:idpName",IDP_OPENID_CONFIGURATIONS_ADD:"/identity/idp/openid/configurations/add-idp",POLICIES:"/policies",POLICY_ADD:"/add-policy",POLICIES_VIEW:"/policies/*",TOOLS_LOGS:"/tools/logs",TOOLS_AUDITLOGS:"/tools/audit-logs",TOOLS_TRACE:"/tools/trace",DASHBOARD:"/tools/metrics",TOOLS_HEAL:"/tools/heal",TOOLS_WATCH:"/tools/watch",KMS:"/kms",KMS_STATUS:"/kms/status",KMS_KEYS:"/kms/keys",KMS_KEYS_ADD:"/kms/add-key/",KMS_KEYS_IMPORT:"/kms/import-key/",TOOLS:"/support",REGISTER_SUPPORT:"/support/register",TOOLS_DIAGNOSTICS:"/support/diagnostics",TOOLS_SPEEDTEST:"/support/speedtest",CALL_HOME:"/support/call-home",PROFILE:"/support/profile",SUPPORT_INSPECT:"/support/inspect",LICENSE:"/license",SETTINGS:"/settings/configurations",SETTINGS_VIEW:"/settings/configurations/:option",DOCUMENTATION:"/documentation",EVENT_DESTINATIONS:"/settings/event-destinations",EVENT_DESTINATIONS_ADD:"/settings/event-destinations/add",EVENT_DESTINATIONS_ADD_SERVICE:"/settings/event-destinations/add/:service",TIERS:"/settings/tiers",TIERS_ADD:"/settings/tiers/add",TIERS_ADD_SERVICE:"/settings/tiers/add/:service",SITE_REPLICATION:"/settings/site-replication",SITE_REPLICATION_STATUS:"/settings/site-replication/status",SITE_REPLICATION_ADD:"/settings/site-replication/add"},u=(r={},(0,i.Z)(r,s.BUCKET_OWNER,[l.S3_PUT_OBJECT,l.S3_PUT_ACTIONS,l.S3_DELETE_OBJECT]),(0,i.Z)(r,s.BUCKET_VIEWER,[l.S3_LIST_BUCKET,l.S3_ALL_LIST_BUCKET]),(0,i.Z)(r,s.BUCKET_ADMIN,[l.S3_ALL_ACTIONS,l.ADMIN_ALL_ACTIONS,l.S3_REPLICATE_OBJECT,l.S3_REPLICATE_DELETE,l.S3_REPLICATE_TAGS,l.S3_GET_OBJECT_VERSION_FOR_REPLICATION,l.S3_PUT_REPLICATION_CONFIGURATION,l.S3_GET_REPLICATION_CONFIGURATION,l.S3_GET_BUCKET_VERSIONING,l.S3_PUT_BUCKET_VERSIONING,l.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,l.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,l.S3_DELETE_OBJECT_TAGGING,l.S3_PUT_OBJECT_TAGGING,l.S3_GET_OBJECT_TAGGING,l.S3_PUT_OBJECT_VERSION_TAGGING,l.S3_DELETE_OBJECT_VERSION_TAGGING,l.S3_DELETE_OBJECT_VERSION,l.S3_GET_OBJECT_VERSION_TAGGING,l.S3_GET_OBJECT_VERSION,l.S3_PUT_BUCKET_TAGGING,l.S3_GET_BUCKET_TAGGING,l.S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION,l.S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION,l.S3_PUT_OBJECT_LEGAL_HOLD,l.S3_GET_OBJECT_LEGAL_HOLD,l.S3_GET_OBJECT_RETENTION,l.S3_PUT_OBJECT_RETENTION,l.S3_BYPASS_GOVERNANCE_RETENTION,l.S3_PUT_BUCKET_POLICY,l.S3_PUT_BUCKET_NOTIFICATIONS,l.S3_GET_LIFECYCLE_CONFIGURATION,l.S3_PUT_LIFECYCLE_CONFIGURATION,l.S3_LIST_MULTIPART_UPLOAD_PARTS,l.S3_LISTEN_BUCKET_NOTIFICATIONS,l.S3_LISTEN_NOTIFICATIONS,l.S3_LIST_BUCKET_MULTIPART_UPLOADS,l.S3_LIST_BUCKET_VERSIONS,l.S3_GET_BUCKET_POLICY_STATUS,l.S3_LIST_ALL_MY_BUCKETS,l.S3_HEAD_BUCKET,l.S3_GET_BUCKET_POLICY,l.S3_GET_BUCKET_NOTIFICATIONS,l.S3_GET_BUCKET_LOCATION,l.S3_DELETE_BUCKET_POLICY,l.S3_FORCE_DELETE_BUCKET,l.S3_DELETE_BUCKET,l.S3_CREATE_BUCKET,l.S3_ABORT_MULTIPART_UPLOAD,l.ADMIN_GET_POLICY,l.ADMIN_LIST_USER_POLICIES,l.ADMIN_LIST_USERS,l.ADMIN_HEAL,l.S3_GET_ACTIONS,l.S3_PUT_ACTIONS]),(0,i.Z)(r,s.BUCKET_LIFECYCLE,[l.S3_GET_LIFECYCLE_CONFIGURATION,l.S3_PUT_LIFECYCLE_CONFIGURATION,l.S3_GET_ACTIONS,l.S3_PUT_ACTIONS,l.ADMIN_LIST_TIERS,l.ADMIN_SET_TIER]),r),d=(o={},(0,i.Z)(o,c.ADD_BUCKETS,[l.S3_CREATE_BUCKET]),(0,i.Z)(o,c.BUCKETS_ADMIN_VIEW,(0,a.Z)(u[s.BUCKET_ADMIN])),(0,i.Z)(o,c.OBJECT_BROWSER_VIEW,[].concat((0,a.Z)(u[s.BUCKET_OWNER]),(0,a.Z)(u[s.BUCKET_VIEWER]))),(0,i.Z)(o,c.GROUPS,[l.ADMIN_LIST_GROUPS,l.ADMIN_ADD_USER_TO_GROUP]),(0,i.Z)(o,c.GROUPS_VIEW,[l.ADMIN_GET_GROUP,l.ADMIN_DISABLE_GROUP,l.ADMIN_ENABLE_GROUP,l.ADMIN_REMOVE_USER_FROM_GROUP,l.ADMIN_LIST_USER_POLICIES,l.ADMIN_ADD_USER_TO_GROUP,l.ADMIN_ATTACH_USER_OR_GROUP_POLICY]),(0,i.Z)(o,c.GROUPS_ADD,[l.ADMIN_LIST_USERS,l.ADMIN_CREATE_USER]),(0,i.Z)(o,c.USERS,[l.ADMIN_LIST_USERS,l.ADMIN_CREATE_USER]),(0,i.Z)(o,c.USERS_VIEW,[l.ADMIN_GET_USER,l.ADMIN_ADD_USER_TO_GROUP,l.ADMIN_ENABLE_USER,l.ADMIN_DISABLE_USER,l.ADMIN_DELETE_USER]),(0,i.Z)(o,c.USER_SA_ACCOUNT_ADD,[l.ADMIN_CREATE_SERVICEACCOUNT,l.ADMIN_UPDATE_SERVICEACCOUNT,l.ADMIN_REMOVE_SERVICEACCOUNT,l.ADMIN_LIST_SERVICEACCOUNTS]),(0,i.Z)(o,c.USER_ADD,[l.ADMIN_CREATE_USER]),(0,i.Z)(o,c.ACCOUNT_ADD,[l.ADMIN_CREATE_SERVICEACCOUNT]),(0,i.Z)(o,c.DASHBOARD,[l.ADMIN_SERVER_INFO]),(0,i.Z)(o,c.POLICIES_VIEW,[l.ADMIN_DELETE_POLICY,l.ADMIN_LIST_GROUPS,l.ADMIN_GET_GROUP,l.ADMIN_GET_POLICY,l.ADMIN_CREATE_POLICY]),(0,i.Z)(o,c.POLICIES,[l.ADMIN_LIST_USER_POLICIES,l.ADMIN_CREATE_POLICY]),(0,i.Z)(o,c.POLICY_ADD,[l.ADMIN_CREATE_POLICY]),(0,i.Z)(o,c.SETTINGS,[l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.SETTINGS_VIEW,[l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.EVENT_DESTINATIONS_ADD_SERVICE,[l.ADMIN_SERVER_INFO,l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.EVENT_DESTINATIONS_ADD,[l.ADMIN_SERVER_INFO,l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.EVENT_DESTINATIONS,[l.ADMIN_SERVER_INFO,l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.TIERS,[l.ADMIN_LIST_TIERS]),(0,i.Z)(o,c.TIERS_ADD,[l.ADMIN_SET_TIER,l.ADMIN_LIST_TIERS]),(0,i.Z)(o,c.TIERS_ADD_SERVICE,[l.ADMIN_SET_TIER,l.ADMIN_LIST_TIERS]),(0,i.Z)(o,c.TOOLS,[l.S3_LISTEN_NOTIFICATIONS,l.S3_LISTEN_BUCKET_NOTIFICATIONS,l.ADMIN_GET_CONSOLE_LOG,l.ADMIN_SERVER_TRACE,l.ADMIN_HEAL,l.ADMIN_HEALTH_INFO,l.ADMIN_SERVER_INFO]),(0,i.Z)(o,c.TOOLS_LOGS,[l.ADMIN_GET_CONSOLE_LOG]),(0,i.Z)(o,c.TOOLS_AUDITLOGS,[l.ADMIN_HEALTH_INFO]),(0,i.Z)(o,c.TOOLS_WATCH,[l.S3_LISTEN_NOTIFICATIONS,l.S3_LISTEN_BUCKET_NOTIFICATIONS]),(0,i.Z)(o,c.TOOLS_TRACE,[l.ADMIN_SERVER_TRACE]),(0,i.Z)(o,c.TOOLS_HEAL,[l.ADMIN_HEAL]),(0,i.Z)(o,c.TOOLS_DIAGNOSTICS,[l.ADMIN_HEALTH_INFO,l.ADMIN_SERVER_INFO]),(0,i.Z)(o,c.TOOLS_SPEEDTEST,[l.ADMIN_HEALTH_INFO]),(0,i.Z)(o,c.REGISTER_SUPPORT,[l.ADMIN_SERVER_INFO,l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.CALL_HOME,[l.ADMIN_HEALTH_INFO]),(0,i.Z)(o,c.PROFILE,[l.ADMIN_HEALTH_INFO]),(0,i.Z)(o,c.SUPPORT_INSPECT,[l.ADMIN_HEALTH_INFO]),(0,i.Z)(o,c.LICENSE,[l.ADMIN_SERVER_INFO,l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.SITE_REPLICATION,[l.ADMIN_SERVER_INFO,l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.SITE_REPLICATION_STATUS,[l.ADMIN_SERVER_INFO,l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.SITE_REPLICATION_ADD,[l.ADMIN_SERVER_INFO,l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.KMS,[l.KMS_ALL_ACTIONS]),(0,i.Z)(o,c.KMS_STATUS,[l.KMS_ALL_ACTIONS,l.KMS_STATUS]),(0,i.Z)(o,c.KMS_KEYS,[l.KMS_ALL_ACTIONS,l.KMS_CREATE_KEY,l.KMS_DELETE_KEY,l.KMS_LIST_KEYS,l.KMS_IMPORT_KEY,l.KMS_KEY_STATUS]),(0,i.Z)(o,c.KMS_KEYS_ADD,[l.KMS_ALL_ACTIONS,l.KMS_CREATE_KEY]),(0,i.Z)(o,c.KMS_KEYS_IMPORT,[l.KMS_ALL_ACTIONS,l.KMS_IMPORT_KEY]),(0,i.Z)(o,c.IDP_LDAP_CONFIGURATIONS,[l.ADMIN_ALL_ACTIONS,l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.IDP_OPENID_CONFIGURATIONS,[l.ADMIN_ALL_ACTIONS,l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.IDP_OPENID_CONFIGURATIONS_ADD,[l.ADMIN_ALL_ACTIONS,l.ADMIN_CONFIG_UPDATE]),(0,i.Z)(o,c.IDP_OPENID_CONFIGURATIONS_VIEW,[l.ADMIN_ALL_ACTIONS,l.ADMIN_CONFIG_UPDATE]),o),p="arn:aws:s3:::*",f="console-ui",m=function(e,t){return"You require additional permissions in order to "+t+". Please ask your MinIO administrator to grant you "+e.join(", ").toString()+" permission"+(e.length>1?"s":"")+" in order to "+t+"."},h=[l.ADMIN_LIST_USERS],g=[l.ADMIN_ADD_USER_TO_GROUP],v=[l.ADMIN_DELETE_USER],b=[l.ADMIN_ENABLE_USER],y=[l.ADMIN_DISABLE_USER],E=[l.ADMIN_LIST_USER_POLICIES,l.ADMIN_LIST_USERS,l.ADMIN_ADD_USER_TO_GROUP,l.ADMIN_REMOVE_USER_FROM_GROUP,l.ADMIN_ATTACH_USER_OR_GROUP_POLICY,l.ADMIN_LIST_USERS,l.ADMIN_DELETE_USER,l.ADMIN_ENABLE_USER,l.ADMIN_DISABLE_USER,l.ADMIN_GET_USER,l.ADMIN_LIST_USER_POLICIES],S=[l.ADMIN_ATTACH_USER_OR_GROUP_POLICY,l.ADMIN_LIST_USER_POLICIES,l.ADMIN_GET_POLICY],w=[l.ADMIN_ADD_USER_TO_GROUP,l.ADMIN_REMOVE_USER_FROM_GROUP,l.ADMIN_LIST_GROUPS,l.ADMIN_ENABLE_USER],_=[l.ADMIN_GET_GROUP],T=[l.ADMIN_ENABLE_USER,l.ADMIN_DISABLE_USER],x=[l.ADMIN_LIST_SERVICEACCOUNTS,l.ADMIN_UPDATE_SERVICEACCOUNT,l.ADMIN_REMOVE_SERVICEACCOUNT],C=[l.ADMIN_ATTACH_USER_OR_GROUP_POLICY,l.ADMIN_LIST_USER_POLICIES],A=[l.ADMIN_REMOVE_USER_FROM_GROUP],k=[l.ADMIN_LIST_GROUPS],I=[l.ADMIN_ADD_USER_TO_GROUP,l.ADMIN_LIST_USERS],O=[l.ADMIN_GET_USER,l.ADMIN_LIST_USERS],R=[l.ADMIN_ADD_USER_TO_GROUP,l.ADMIN_LIST_USERS],N=[l.ADMIN_ATTACH_USER_OR_GROUP_POLICY,l.ADMIN_LIST_USER_POLICIES],M=[l.ADMIN_GET_POLICY],L=[l.ADMIN_ENABLE_GROUP,l.ADMIN_DISABLE_GROUP],P=[l.ADMIN_CREATE_POLICY],D=[l.ADMIN_DELETE_POLICY],Z=[l.ADMIN_LIST_USER_POLICIES],B=[l.ADMIN_LIST_GROUPS,l.ADMIN_GET_GROUP],z=[l.S3_DELETE_BUCKET,l.S3_FORCE_DELETE_BUCKET],F=[l.S3_LIST_BUCKET,l.S3_ALL_LIST_BUCKET]},81207:function(e,t,n){"use strict";var r=n(15671),o=n(43144),a=n(37004),i=n.n(a),s=n(26181),l=n.n(s),c=n(45248),u=n(62666),d=new(function(){function e(){(0,r.Z)(this,e)}return(0,o.Z)(e,[{key:"invoke",value:function(e,t,n,r){var o=this,a=t;"/"===a[0]&&(a=a.slice(1));var s=i()(e,a);if(r)for(var l in r)s.set(l,r[l]);return s.send(n).then((function(e){return e.body})).catch((function(e){return 401===e.status&&localStorage.getItem("userLoggedIn")&&!a.includes("api/v1/login")?("/"!==window.location.pathname&&localStorage.setItem("redirect-path",window.location.pathname),(0,c.Ov)(),void(window.location.href="".concat(u.F,"login"))):o.onError(e)}))}},{key:"onError",value:function(e){if(e.status){var t=l()(e.response,"body.message","Error ".concat(e.status.toString())),n=l()(e.response,"body.detailedMessage","");t===n&&(n="");var r={errorMessage:t.charAt(0).toUpperCase()+t.slice(1),detailedError:n.charAt(0).toUpperCase()+n.slice(1),statusCode:e.status};return Promise.reject(r)}(0,c.Ov)(),window.location.href="".concat(u.F,"login")}}]),e}());t.Z=d},45248:function(e,t,n){"use strict";n.d(t,{Am:function(){return S},C5:function(){return _},CE:function(){return T},Dl:function(){return i},Do:function(){return I},IO:function(){return A},LL:function(){return C},Ov:function(){return p},Pw:function(){return h},Ue:function(){return E},Yj:function(){return w},ae:function(){return c},e3:function(){return M},eC:function(){return L},hn:function(){return O},kT:function(){return d},l5:function(){return u},mv:function(){return R},nF:function(){return b},nk:function(){return x},v1:function(){return v},zO:function(){return N},zQ:function(){return m},zZ:function(){return k},zk:function(){return f}});var r=n(51607),o=n(26181),a=n.n(o),i=["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],s=["Ki","Mi","Gi","Ti","Pi","Ei"],l=["B"].concat(s),c=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=parseInt(e,10)||0;return u(n,t)},u=function(e){for(var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=0;e>=1024&&++n;)e/=1024;var r=["B"].concat(s);return e.toFixed(1)+" "+(t?r[n]:i[n])},d=function(e){document.cookie=e+"=; expires=Thu, 01 Jan 1970 00:00:01 GMT;"},p=function(){r.ZP.removeItem("token"),r.ZP.removeItem("auth-state"),d("token"),d("idp-refresh-token")},f=function(e){var t=e.getHours()<10?"0".concat(e.getHours()):"".concat(e.getHours()),n=e.getMinutes()<10?"0".concat(e.getMinutes()):"".concat(e.getMinutes()),r=e.getSeconds()<10?"0".concat(e.getSeconds()):"".concat(e.getSeconds());return"".concat(t,":").concat(n,":").concat(r,":").concat(e.getMilliseconds())},m=function(e){return s.filter((function(t){return!e||!e.includes(t)})).map((function(e){return{label:e,value:e}}))},h=function(e,t){return g(e,t,arguments.length>2&&void 0!==arguments[2]&&arguments[2]).toString(10)},g=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=parseFloat(e),o=(n?l:i).findIndex((function(e){return e===t}));return-1===o?0:r*Math.pow(1024,o)},v=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"s",n=parseFloat(e);return b(n,t)},b=function(e){switch(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"s"){case"ns":e=Math.floor(1e-9*e);break;case"ms":e=Math.floor(.001*e)}var t=Math.floor(e/86400);e-=3600*t*24;var n=Math.floor(e/3600);e-=3600*n;var r=Math.floor(e/60);if(e-=60*r,t>365){var o=t/365;return"".concat(o," year").concat(1===Math.floor(o)?"":"s")}if(t>30){var a=Math.floor(t/30),i=t-30*a;return"".concat(a," month").concat(1===Math.floor(a)?"":"s"," ").concat(i>0?"".concat(i," day").concat(i>1?"s":""):"")}if(t>=7&&t<=30){var s=Math.floor(t/7);return"".concat(Math.floor(s)," week").concat(1===s?"":"s")}return t>=1&&t<=6?"".concat(t," day").concat(t>1?"s":""):"".concat(n>=1?"".concat(n," hour").concat(n>1?"s":""):""," ").concat(r>=1&&0===n?"".concat(r," minute").concat(r>1?"s":""):""," ").concat(e>=1&&0===r&&0===n?"".concat(e," second").concat(e>1?"s":""):"")},y=function(e){return"".concat(e<10?"0":"").concat(e)},E=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=parseInt(e);if(isNaN(r))return"";var o=new Date(1e3*r);return t?n?"".concat(y(o.getMonth()+1),"/").concat(y(o.getDate())," ").concat(y(o.getHours()),":").concat(y(o.getMinutes())):o.toLocaleString():"".concat(o.getHours(),":").concat(String(o.getMinutes()).padStart(2,"0"))},S=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(0===(t="string"===typeof e?parseInt(e,10):e))return{total:0,unit:i[0]};var a=Math.floor(Math.log(t)/Math.log(1024)),s=n?1:0,c=t/Math.pow(1024,a),u=r?Math.floor(c):c;return{total:parseFloat(u.toFixed(s)),unit:o?l[a]:i[a]}},w=function(e){var t=1e-9*e,n=Math.round(1e4*(t+Number.EPSILON))/1e4;return"".concat(n," s")},_=function(e){var t=(100*e.split("").reduce((function(e,t){return e+t.charCodeAt(0)+((e<<5)-e)}),0)&16777215).toString(16).toUpperCase();return"#".concat(t.padStart(6,"0"))},T=function(e){return void 0===e?0:e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")},x=function(e){if(void 0===e)return"0";var t=e.toString(),n="";return e>999&&e<1e6?(t=(e/1e3).toFixed(1),n="K"):e>=1e6&&e<1e9?(t=(e/1e6).toFixed(1),n="M"):e>=1e9&&(t=(e/1e9).toFixed(1),n="B"),t.endsWith(".0")&&(t=t.slice(0,-2)),"".concat(t).concat(n)},C=function(e){if(!e)return"";try{return function(e){var t=Array.from(e,(function(e){return String.fromCodePoint(e)})).join("");return btoa(t)}((new TextEncoder).encode(e))}catch(t){return""}},A=function(e){try{return(new TextDecoder).decode(function(e){var t=atob(e);return Uint8Array.from(t,(function(e){return e.codePointAt(0)}))}(e))}catch(t){return e}},k=function(e,t){var n=document.createElement("a");n.href=window.URL.createObjectURL(e),n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)},I=function(e){var t;return(null===(t=document.cookie.match("(^|;)\\s*"+e+"\\s*=\\s*([^;]+)"))||void 0===t?void 0:t.pop())||""},O=function(e,t){var n=100*e/t;return n>=90?"#C83B51":n>=70?"#FFAB0F":"#07193E"},R=function(){var e=a()(window.navigator,"platform","undefined");return e||"undefined"},N=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:16,t="",n="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",r=0;r")},L=function(e){try{return decodeURIComponent(e)}catch(t){return e}}},9478:function(e,t,n){"use strict";var r;n.d(t,{$G:function(){return a},Yc:function(){return i}});var o=(null===(r=document.head.querySelector("[name~=minio-license][content]"))||void 0===r?void 0:r.content)||"AGPL",a=function(){var e="AGPL";switch(o.toLowerCase()){case"enterprise":e="enterprise";break;case"standard":e="standard";break;default:e="AGPL"}return e},i=function(){var e=a();return"standard"===e||"enterprise"===e}},62666:function(e,t,n){"use strict";n.d(t,{F:function(){return r}});var r=new URL(document.baseURI).pathname},9859:function(e,t,n){"use strict";n.d(t,{G6:function(){return l},HQ:function(){return s},d5:function(){return i},f4:function(){return a}});var r=(0,n(96382).oM)({name:"trace",initialState:{selectedTab:"summary",loadingBucket:!1,bucketInfo:null},reducers:{setBucketDetailsTab:function(e,t){e.selectedTab=t.payload},setBucketDetailsLoad:function(e,t){e.loadingBucket=t.payload},setBucketInfo:function(e,t){e.bucketInfo=t.payload}}}),o=r.actions,a=(o.setBucketDetailsTab,o.setBucketInfo),i=o.setBucketDetailsLoad,s=function(e){return e.bucketDetails.loadingBucket},l=function(e){return e.bucketDetails.bucketInfo};t.ZP=r.reducer},92717:function(e,t,n){"use strict";n.d(t,{I:function(){return l}});var r=n(74165),o=n(15861),a=n(45248),i=n(96382),s=n(31776),l=(0,i.hg)("buckets/addBucketAsync",function(){var e=(0,o.Z)((0,r.Z)().mark((function e(t,n){var o,i,l,c,u,d,p,f,m,h,g,v,b,y,E,S;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=n.getState,n.rejectWithValue,n.dispatch,i=o(),l=i.addBucket.name,c=i.addBucket.versioningEnabled,u=i.addBucket.lockingEnabled,d=i.addBucket.quotaEnabled,p=i.addBucket.quotaSize,f=i.addBucket.quotaUnit,m=i.addBucket.retentionEnabled,h=i.addBucket.retentionMode,g=i.addBucket.retentionUnit,v=i.addBucket.retentionValidity,b=i.system.distributedSetup,y=i.system.siteReplicationInfo,E={name:l,versioning:!(!b||y.enabled)&&c,locking:!!b&&u},b&&(d&&(S=(0,a.Pw)(p,f,!0),E.quota={enabled:!0,quota_type:"hard",amount:parseInt(S)}),m&&(E.retention={mode:h,unit:g,validity:v})),e.abrupt("return",s.h.buckets.makeBucket(E));case 17:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}())},64561:function(e,t,n){"use strict";n.d(t,{E2:function(){return p},Fx:function(){return v},Mn:function(){return S},ND:function(){return g},Rj:function(){return h},VK:function(){return y},WC:function(){return m},bc:function(){return b},hU:function(){return d},hx:function(){return E},j9:function(){return f},qC:function(){return u}});var r=n(93433),o=n(96382),a=n(92717),i=n(66315),s={loading:!1,isDirty:!1,invalidFields:[],name:"",versioningEnabled:!1,lockingEnabled:!1,lockingFieldDisabled:!1,quotaEnabled:!1,quotaSize:"1",quotaUnit:"Ti",retentionEnabled:!1,retentionMode:i.oO.Compliance,retentionUnit:"days",retentionValidity:180,navigateTo:""},l=(0,o.oM)({name:"addBuckets",initialState:s,reducers:{setIsDirty:function(e,t){e.isDirty=t.payload},setName:function(e,t){e.name=t.payload,""===e.name.trim()?e.invalidFields=[].concat((0,r.Z)(e.invalidFields),["name"]):e.invalidFields=e.invalidFields.filter((function(e){return"name"!==e}))},setVersioning:function(e,t){e.versioningEnabled=t.payload,e.versioningEnabled&&e.retentionEnabled||(e.retentionEnabled=!1,e.retentionMode=i.oO.Compliance,e.retentionUnit="days",e.retentionValidity=180)},setEnableObjectLocking:function(e,t){e.lockingEnabled=t.payload},setQuota:function(e,t){e.quotaEnabled=t.payload,t.payload||(e.quotaSize="1",e.quotaUnit="Ti",e.invalidFields=e.invalidFields.filter((function(e){return"quotaSize"!==e})))},setQuotaSize:function(e,t){e.quotaSize=t.payload,e.quotaEnabled&&(""!==e.quotaSize.trim()&&0!==parseInt(e.quotaSize)&&/^\d*(?:\.\d{1,2})?$/.test(e.quotaSize)?e.invalidFields=e.invalidFields.filter((function(e){return"quotaSize"!==e})):e.invalidFields=[].concat((0,r.Z)(e.invalidFields),["quotaSize"]))},setQuotaUnit:function(e,t){e.quotaUnit=t.payload},setRetention:function(e,t){e.retentionEnabled=t.payload,e.versioningEnabled&&e.retentionEnabled||(e.retentionEnabled=!1,e.retentionMode=i.oO.Compliance,e.retentionUnit="days",e.retentionValidity=180),e.retentionEnabled?(e.lockingEnabled=!0,e.lockingFieldDisabled=!0):e.lockingFieldDisabled=!1,e.retentionEnabled&&(Number.isNaN(e.retentionValidity)||e.retentionValidity<1)?e.invalidFields=[].concat((0,r.Z)(e.invalidFields),["retentionValidity"]):e.invalidFields=e.invalidFields.filter((function(e){return"retentionValidity"!==e}))},setRetentionMode:function(e,t){e.retentionMode=t.payload},setRetentionUnit:function(e,t){e.retentionUnit=t.payload},setRetentionValidity:function(e,t){e.retentionValidity=t.payload,e.retentionEnabled&&(Number.isNaN(e.retentionValidity)||e.retentionValidity<1)?e.invalidFields=[].concat((0,r.Z)(e.invalidFields),["retentionValidity"]):e.invalidFields=e.invalidFields.filter((function(e){return"retentionValidity"!==e}))},resetForm:function(e){return s}},extraReducers:function(e){e.addCase(a.I.pending,(function(e){e.loading=!0})).addCase(a.I.rejected,(function(e){e.loading=!1})).addCase(a.I.fulfilled,(function(e,t){e.loading=!1,e.navigateTo=t.payload.data.bucketName?"/buckets":"/buckets/".concat(t.payload.data.bucketName,"/admin")}))}}),c=l.actions,u=c.setName,d=c.setIsDirty,p=c.setVersioning,f=c.setEnableObjectLocking,m=c.setQuota,h=c.setQuotaSize,g=c.setQuotaUnit,v=c.resetForm,b=c.setRetention,y=c.setRetentionMode,E=c.setRetentionUnit,S=c.setRetentionValidity;t.ZP=l.reducer},81806:function(e,t,n){"use strict";var r=n(1413),o=n(45987),a=(n(72791),n(11135)),i=n(25787),s=n(80184),l=["classes","children"];t.Z=(0,i.Z)((function(e){return(0,a.Z)({root:{padding:0,margin:0,border:0,backgroundColor:"transparent",textDecoration:"underline",cursor:"pointer",fontSize:"inherit",color:e.palette.info.main,fontFamily:"Inter, sans-serif"}})}))((function(e){var t=e.classes,n=e.children,a=(0,o.Z)(e,l);return(0,s.jsx)("button",(0,r.Z)((0,r.Z)({},a),{},{className:t.root,children:n}))}))},73996:function(e,t,n){"use strict";n(72791);var r=n(29945),o=n(78687),a=n(80184);t.Z=function(e){var t=e.marginRight,i=e.marginTop,s=n(49963),l=(0,o.v9)((function(e){return e.system.overrideStyles})),c=s((null===l||void 0===l?void 0:l.backgroundColor)||"#fff").getBrightness()<=128;return(0,a.jsx)(r.rjZ,{sx:{"& svg":{width:105,marginRight:t,marginTop:i,fill:c?"#fff":"#081C42"}},children:(0,a.jsx)(r.uhQ,{})})}},23814:function(e,t,n){"use strict";n.d(t,{$b:function(){return B},AK:function(){return T},Bz:function(){return m},C4:function(){return z},DF:function(){return R},FU:function(){return f},Hr:function(){return c},ID:function(){return D},IX:function(){return C},Je:function(){return y},NP:function(){return S},OR:function(){return h},QV:function(){return P},Qw:function(){return M},Rp:function(){return w},S:function(){return L},SJ:function(){return k},VI:function(){return Z},VX:function(){return I},YI:function(){return s},bK:function(){return O},bV:function(){return N},cx:function(){return b},fc:function(){return E},gM:function(){return x},lM:function(){return d},nl:function(){return F},oO:function(){return l},qg:function(){return g},sN:function(){return _},xS:function(){return U},xx:function(){return v}});var r=n(4942),o=n(1413),a=n(29945),i={fontWeight:600,marginRight:10,fontSize:14,color:"#07193E",textAlign:"left",overflow:"hidden",alignItems:"center",display:"flex","& span":{display:"flex",alignItems:"center"}},s={inputLabel:(0,o.Z)((0,o.Z)({},i),{},{minWidth:160}),noMinWidthLabel:(0,o.Z)({},i),fieldLabelError:{paddingBottom:22},fieldContainer:{marginBottom:20,position:"relative",display:"flex",flexWrap:"wrap","@media (max-width: 600px)":{flexFlow:"column"}},tooltipContainer:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},switchContainer:{display:"flex",maxWidth:840}},l={formScrollable:{maxHeight:"calc(100vh - 300px)",overflowY:"auto",marginBottom:25},clearButton:{fontFamily:"Inter, sans-serif",border:"0",backgroundColor:"transparent",color:"#393939",fontWeight:600,fontSize:14,marginRight:10,outline:"0",padding:"16px 25px 16px 25px",cursor:"pointer"},configureString:{border:"#EAEAEA 1px solid",borderRadius:4,padding:"24px 50px",overflowY:"auto",height:170,backgroundColor:"#FBFAFA"}},c={tooltip:{"& .min-icon":{width:13}}},u={width:16,height:16,borderRadius:2},d={unCheckedIcon:(0,o.Z)((0,o.Z)({},u),{},{border:"1px solid #c3c3c3",boxShadow:"inset 0px 1px 3px rgba(0,0,0,0.1)"}),checkedIcon:(0,o.Z)((0,o.Z)({},u),{},{border:"1px solid #FFFFFF",backgroundColor:"#4CCB92",boxShadow:"inset 0px 1px 3px rgba(0,0,0,0.1)",width:14,height:14,marginLeft:1,"&:before":{content:"''",display:"block",marginLeft:-2,marginTop:-2,width:16,height:16,top:0,bottom:0,left:0,right:0,borderRadius:2,border:"1px solid #ccc"}})},p={width:16,height:16,borderRadius:"100%","input:disabled ~ &":{border:"1px solid #E5E5E5"},padding:1},f={radioUnselectedIcon:(0,o.Z)((0,o.Z)({},p),{},{border:"2px solid #E5E5E5"}),radioSelectedIcon:(0,o.Z)((0,o.Z)({},p),{},{border:"2px solid #E5E5E5",backgroundColor:"#072C4F"})},m={container:{position:"relative",padding:"20px 35px 0","& h6":{color:"#777777",fontSize:30},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}},sectionTitle:{margin:0,marginBottom:".8rem",fontSize:"1.3rem"},boxy:{border:"#E5E5E5 1px solid",borderRadius:2,padding:40,backgroundColor:"#fff"}},h={label:{color:"#07193E",fontSize:13,alignSelf:"center",whiteSpace:"nowrap","&:not(:first-of-type)":{marginLeft:10}},actionsTray:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"1rem","& button":{flexGrow:0,marginLeft:8}}},g={searchField:{}},v={prefinedContainer:{display:"flex",width:"100%",alignItems:"center",margin:"15px 0 0"},predefinedTitle:{color:"rgba(0, 0, 0, 0.87)",display:"flex",overflow:"hidden",fontSize:14,maxWidth:160,textAlign:"left",marginRight:10,flexGrow:0,fontWeight:"normal"},predefinedList:{backgroundColor:"#fbfafa",border:"#e5e5e5 1px solid",padding:"12px 10px",color:"#696969",fontSize:12,fontWeight:600,minHeight:41,borderRadius:4},innerContent:{width:"100%",overflowX:"auto",whiteSpace:"nowrap",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},innerContentMultiline:{width:"100%",maxHeight:100,overflowY:"auto",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},includesActionButton:{paddingRight:45,position:"relative"},overlayShareOption:{position:"absolute",width:45,right:0,top:"50%",transform:"translate(0, -50%)"}},b={breadcrumbsMain:{display:"flex"},breadcrumbs:{fontSize:12,color:"#969FA8",fontWeight:"bold",border:"#EAEDEE 1px solid",height:38,display:"flex",alignItems:"center",backgroundColor:"#FCFCFD",marginRight:10,"& a":{textDecoration:"none",color:"#969FA8","&:hover":{textDecoration:"underline"}},"& .min-icon":{width:16,minWidth:16}},additionalOptions:{paddingRight:"10px",display:"flex",alignItems:"center","@media (max-width: 1060px)":{display:"none"}},bucketDetails:{marginLeft:10,fontSize:14,color:"#969FA8","@media (max-width: 600px)":{marginLeft:0,"& span":{marginBottom:10,display:"flex",flexDirection:"column"}}},detailsSpacer:{marginRight:18,"@media (max-width: 600px)":{marginRight:0}},breadcrumbsList:{textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap",display:"inline-block",flexGrow:1,textAlign:"left",marginLeft:15,marginRight:10,width:0},breadcrumbsSecond:{display:"none",marginTop:15,marginBottom:5,justifyContent:"flex-start","& > div":{fontSize:12,fontWeight:"normal",flexDirection:"row",flexWrap:"nowrap"},"@media (max-width: 1060px)":{display:"flex"}},overrideShowDeleted:{"@media (max-width: 600px)":{flexDirection:"row"}}},y={settingsFormContainer:{padding:38,overflowY:"auto",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},settingsButtonContainer:{padding:"15px 38px",display:"flex",justifyContent:"flex-end"},settingsOptionsContainer:{height:"calc(100vh - 244px)",backgroundColor:"#fff",border:"#EAEDEE 1px solid",borderRadius:3,marginTop:15}},E={iconContainer:{display:"flex",flexDirection:"row",maxWidth:1180,justifyContent:"start",flexWrap:"wrap",width:"100%"},logoButton:{height:"80px"},lambdaNotif:{background:"#ffffff50",border:"#E5E5E5 1px solid",borderRadius:5,width:250,height:80,display:"flex",alignItems:"center",justifyContent:"start",marginBottom:16,marginRight:8,cursor:"pointer",padding:0,overflow:"hidden","&:hover":{backgroundColor:"#ebebeb"}},lambdaNotifIcon:{background:"transparent",display:"flex",alignItems:"center",justifyContent:"center",width:80,height:80,"& img":{maxWidth:46,maxHeight:46}},lambdaNotifTitle:{color:"#07193E",fontSize:16,fontFamily:"Inter,sans-serif",paddingLeft:18}},S={singleValueContainer:{height:200,border:"#eaeaea 1px solid",backgroundColor:"#fff",borderRadius:"3px",padding:16},titleContainer:{color:"#404143",fontSize:16,fontWeight:600,paddingBottom:14,marginBottom:5,display:"flex",justifyContent:"space-between"},contentContainer:{justifyContent:"center",alignItems:"center",display:"flex",width:"100%",height:140},singleLegendContainer:{display:"flex",alignItems:"center",padding:"0 10px",maxWidth:"100%"},colorContainer:{width:8,height:8,minWidth:8,marginRight:5},legendLabel:{fontSize:"80%",color:"#393939",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},zoomChartCont:{position:"relative",height:340,width:"100%"}},w={customTooltip:{backgroundColor:"rgba(255, 255, 255, 0.90)",border:"#eaeaea 1px solid",borderRadius:3,padding:"5px 10px",maxHeight:300,overflowY:"auto"},labelContainer:{display:"flex",alignItems:"center"},labelColor:{width:6,height:6,display:"block",borderRadius:"100%",marginRight:5},itemValue:{fontSize:"75%",color:"#393939"},valueContainer:{fontWeight:600},timeStampTitle:{fontSize:"80%",color:"#9c9c9c",textAlign:"center",marginBottom:6}},_={snackBar:{backgroundColor:"#081F44",fontWeight:400,fontFamily:"Inter, sans-serif",fontSize:14,boxShadow:"none","&.MuiPaper-root.MuiSnackbarContent-root":{borderRadius:"0px 0px 5px 5px"},"& div":{textAlign:"center",padding:"6px 30px",width:"100%",overflowX:"hidden",textOverflow:"ellipsis"},"&.MuiPaper-root":{padding:"0px 20px 0px 20px"}},errorSnackBar:{backgroundColor:"#C72C48",color:"#fff"},snackBarExternal:{top:-1,height:33,position:"fixed",minWidth:348,whiteSpace:"nowrap",left:0,width:"100%",justifyContent:"center"},snackDiv:{top:"17px",left:"50%",position:"absolute"},snackBarModal:{top:0,position:"absolute",minWidth:"348px",whiteSpace:"nowrap",height:"33px",width:"100%",justifyContent:"center",left:0}},T={multiContainer:{display:"flex",alignItems:"center",justifyContent:"flex-start"},multiContainerStackNarrow:{display:"flex",alignItems:"center",justifyContent:"flex-start",gap:"8px","@media (max-width: 750px)":{flexFlow:"column",flexDirection:"column"}},headerElement:{position:"sticky",top:0,paddingTop:5,marginBottom:10,zIndex:500,backgroundColor:"#fff"},error:{color:"#dc1f2e",fontSize:"0.75rem"},descriptionText:{fontSize:14},container:{padding:"77px 0 0 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}},paperWrapper:{padding:12,border:0}},x={root:{borderRadius:3,"&::before":{borderColor:"#9c9c9c"},"& fieldset":{borderColor:"#e5e5e5"},"&:hover fieldset":{borderColor:"#07193E"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:"#07193E",borderWidth:1},"&.Mui-error + p":{marginLeft:3}},disabled:{"&.MuiOutlinedInput-root::before":{borderColor:"#e5e5e5",borderBottomStyle:"solid",borderRadius:3}},input:{height:38,padding:"0 35px 0 15px",color:"#07193E",fontSize:13,fontWeight:600,"&:placeholder":{color:"#858585",opacity:1,fontWeight:400}},error:{color:"#b53b4b"}},C={inlineCheckboxes:{display:"flex",justifyContent:"flex-start"}},A={marginRight:10,lineHeight:1,display:"inline-flex",marginTop:6},k={redState:(0,o.Z)({color:"#F55B5B"},A),greenState:(0,o.Z)({color:"#9FF281"},A),yellowState:(0,o.Z)({color:"#F7A25A"},A),greyState:(0,o.Z)({color:"grey"},A),healthStatusIcon:{position:"absolute",fontSize:8,left:18,height:10,bottom:2,marginRight:10,"& .min-icon":{width:5,height:5}}},I={tableBlock:{display:"flex",flexDirection:"row","& .optionsAlignment ":{textAlign:"right","& .MuiButtonBase-root":{backgroundColor:"#F8F8F8"},"&:hover":{backgroundColor:"#E2E2E2"},"& .min-icon":{width:13,margin:3}}}},O={spacerRight:{marginRight:".9rem"},spacerLeft:{marginLeft:".9rem"},spacerBottom:{marginBottom:".9rem"},spacerTop:{marginTop:".9rem"}},R={formFieldRow:{marginBottom:".8rem","& .MuiInputLabel-root":{fontWeight:"normal"}}},N={fieldBottom:{borderBottom:0},fileReselect:{border:"1px solid #EAEAEA",width:"100%",paddingLeft:10,display:"flex",alignItems:"center",justifyContent:"center",height:36,maxWidth:300},textBoxContainer:{border:"1px solid #EAEAEA",borderRadius:3,height:36,padding:5,"& input":{width:"100%",margin:"auto"},display:"flex",alignItems:"center",justifyContent:"center",maxWidth:300}},M={root:{"& .MuiPaper-root":{padding:"1rem 2rem 2rem 1rem"}},title:{display:"flex",alignItems:"center",justifyContent:"space-between"},titleText:{fontSize:20,fontWeight:600,display:"flex",alignItems:"center","& svg":{marginRight:10},wordBreak:"break-all",whiteSpace:"normal"},closeContainer:{"& .MuiIconButton-root":{top:-20,left:30,position:"relative",padding:1,"&:focus, &:hover":{background:"#EAEAEA"}},"& .min-icon":{height:16,width:16}}},L={advancedButton:{flexGrow:1,alignItems:"flex-end",display:"flex",justifyContent:"flex-end"},advancedConfiguration:{color:"#2781B0",fontSize:10,textDecoration:"underline",border:"none",backgroundColor:"transparent",cursor:"pointer",alignItems:"center",display:"flex",float:"right","&:hover":{color:"#07193E"},"& svg":{width:10,alignSelf:"center",marginLeft:5}},advancedOpen:{transform:"rotateZ(-90deg) translateX(-4px) translateY(2px)"},advancedClosed:{transform:"rotateZ(90deg)"}},P={fieldGroup:{border:"1px solid #EAEAEA",paddingTop:15},descriptionText:{fontSize:14}},D={modalButtonBar:{marginTop:15,display:"flex",alignItems:"center",justifyContent:"flex-end",gap:10},modalFormScrollable:{maxHeight:"calc(100vh - 300px)",overflowY:"auto",paddingTop:10}},Z={textMuted:{color:"#8399AB"}},B={metadataLinear:{marginBottom:15,fontSize:14,maxHeight:180,overflowY:"auto"},detailContainer:{padding:"0 22px",marginBottom:20,fontSize:14},titleLabel:{fontSize:14,fontWeight:"700",color:"#000",padding:"12px 30px 8px 22px",whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",alignItems:"center"},objectActions:{backgroundColor:"#F8F8F8",border:"#F1F1F1 1px solid",borderRadius:3,margin:"8px 22px",padding:0,color:"#696969","& li":{listStyle:"none",padding:6,margin:0,borderBottom:"#E5E5E5 1px solid",fontSize:14,"&:first-of-type":{padding:10,fontWeight:"bold",color:"#000"},"&:last-of-type":{borderBottom:0},"&::before":{content:"' '!important"}}}},z={listIcon:{display:"block",marginTop:"-10px","& .min-icon":{width:20,height:20}},titleSpacer:{marginLeft:10,"@media (max-width: 600px)":{marginLeft:0}}},F=(0,r.Z)({display:"grid",gridTemplateColumns:"2fr 1fr",gridAutoFlow:"row",gap:10},"@media (max-width: ".concat(a.Egj.sm,"px)"),{gridTemplateColumns:"1fr",gridAutoFlow:"dense"}),U={deleted:{color:"#707070",backgroundColor:"#f1f0f0","&.selected":{color:"#b2b2b2"}}}},9505:function(e,t,n){"use strict";var r=n(29439),o=n(72791),a=n(81207);t.Z=function(e,t){var n=(0,o.useState)(!1),i=(0,r.Z)(n,2),s=i[0],l=i[1];return[s,function(n,r,o,i){l(!0),a.Z.invoke(n,r,o,i).then((function(t){l(!1),e(t)})).catch((function(e){l(!1),t(e)}))}]}},86352:function(e,t,n){"use strict";n.d(t,{Z:function(){return S}});var r=n(29439),o=n(72791),a=n(78687),i=n(26181),s=n.n(i),l=n(81551),c=n(64554),u=n(29945),d=n(54164),p=n(6117),f=n(62876),m=n(62971),h=n(80184);var g,v=o.forwardRef((function(e,t){var n=e.children,a=e.container,i=e.disablePortal,s=void 0!==i&&i,l=o.useState(null),c=(0,r.Z)(l,2),u=c[0],g=c[1],v=(0,p.Z)(o.isValidElement(n)?n.ref:null,t);if((0,f.Z)((function(){s||g(function(e){return"function"===typeof e?e():e}(a)||document.body)}),[a,s]),(0,f.Z)((function(){if(u&&!s)return(0,m.Z)(t,u),function(){(0,m.Z)(t,null)}}),[t,u,s]),s){if(o.isValidElement(n)){var b={ref:v};return o.cloneElement(n,b)}return(0,h.jsx)(o.Fragment,{children:n})}return(0,h.jsx)(o.Fragment,{children:u?d.createPortal(n,u):u})})),b=n(87995),y=function(e){g=setInterval(e,1e4)},E=function(){clearInterval(g)},S=function(e){var t=e.isModal,n=void 0!==t&&t,i=(0,l.TL)(),d=(0,a.v9)((function(e){return n?e.system.modalSnackBar:e.system.snackBar})),p=(0,o.useState)(!1),f=(0,r.Z)(p,2),m=f[0],S=f[1],w=(0,o.useCallback)((function(){S(!1)}),[]);(0,o.useEffect)((function(){m||(i((0,b.Ih)({detailedError:"",errorMessage:""})),i((0,b.MK)("")),clearInterval(g))}),[i,m]),(0,o.useEffect)((function(){""!==d.message&&"error"===d.type&&(S(!0),y(w))}),[w,d.message,d.type]);var _=s()(d,"message",""),T=s()(d,"detailedErrorMsg","");return"error"!==d.type||""===_?null:(0,h.jsx)(v,{children:(0,h.jsxs)(c.Z,{sx:{"&.alert":{border:0,left:0,right:0,top:0,height:"75px",position:"fixed",color:"#ffffff",padding:"0 30px 0 30px",zIndex:1e4,display:"flex",justifyContent:"center",alignItems:"center",fontWeight:600,backgroundColor:"#C72C48",opacity:0,width:"100%","&.show":{opacity:1}},"& .message-text":{flex:2,fontSize:"14px",textAlign:{md:"center",xs:"left"}},"& .close-btn-container":{cursor:"pointer",border:0,display:"flex",alignItems:"center",justifyContent:"center",height:"100%",marginLeft:{sm:"0px",xs:"10px"},"& .close-btn":{display:"flex",alignItems:"center",justifyContent:"center",height:"23px",width:"23px",borderRadius:"50%",border:0,backgroundColor:"transparent",cursor:"pointer","&:hover,&:focus":{border:0,outline:0,backgroundColor:"#ba0202"},"& .min-icon":{height:"11px",width:"11px",fill:"#ffffff"}}}},onMouseOver:E,onMouseLeave:function(){return y(w)},className:"alert ".concat(m?"show":""),children:[(0,h.jsx)("div",{className:"message-text",children:T||"".concat(_,".")}),(0,h.jsx)("div",{className:"close-btn-container",children:(0,h.jsx)("button",{className:"close-btn",autoFocus:!0,onClick:w,children:(0,h.jsx)(u.eEZ,{})})})]})})}},23508:function(e,t,n){"use strict";var r=n(1413),o=(n(72791),n(29945)),a=n(11135),i=n(25787),s=n(23814),l=n(80184);t.Z=(0,i.Z)((function(e){return(0,a.Z)((0,r.Z)({},s.Qw))}))((function(e){var t=e.isOpen,n=void 0!==t&&t,a=e.onClose,i=e.onCancel,s=e.onConfirm,c=e.classes,u=void 0===c?{}:c,d=e.title,p=void 0===d?"":d,f=e.isLoading,m=e.confirmationContent,h=e.cancelText,g=void 0===h?"Cancel":h,v=e.confirmText,b=void 0===v?"Confirm":v,y=e.confirmButtonProps,E=void 0===y?void 0:y,S=e.cancelButtonProps,w=void 0===S?void 0:S,_=e.titleIcon,T=void 0===_?null:_;e.confirmationButtonSimple;return(0,l.jsxs)(o.cFD,{title:p,titleIcon:T,onClose:a,open:n,customMaxWidth:510,children:[(0,l.jsx)(o.xuv,{className:u.content,children:m}),(0,l.jsxs)(o.xuv,{sx:{display:"flex",justifyContent:"flex-end",gap:10,marginTop:20},children:[(0,l.jsx)(o.zxk,(0,r.Z)((0,r.Z)({onClick:i||a,disabled:f,type:"button"},w),{},{variant:"regular",id:"confirm-cancel",label:g})),(0,l.jsx)(o.zxk,(0,r.Z)({id:"confirm-ok",onClick:s,label:b,disabled:f,variant:"secondary"},E))]})]})}))},56028:function(e,t,n){"use strict";var r=n(29439),o=n(1413),a=n(72791),i=n(78687),s=n(48888),l=n(11135),c=n(25787),u=n(23814),d=n(81551),p=n(86352),f=n(87995),m=n(29945),h=n(80184);t.Z=(0,c.Z)((function(e){return(0,l.Z)((0,o.Z)((0,o.Z)({},u.Qw),u.sN))}))((function(e){var t=e.onClose,n=e.modalOpen,o=e.title,l=e.children,c=e.classes,u=e.wideLimit,g=void 0===u||u,v=e.titleIcon,b=void 0===v?null:v,y=e.sx,E=(0,d.TL)(),S=(0,a.useState)(!1),w=(0,r.Z)(S,2),_=w[0],T=w[1],x=(0,i.v9)((function(e){return e.system.modalSnackBar}));(0,a.useEffect)((function(){E((0,f.MK)(""))}),[E]),(0,a.useEffect)((function(){if(x){if(""===x.message)return void T(!1);"error"!==x.type&&T(!0)}}),[x]);var C="";return x&&(C=x.detailedErrorMsg,(""===x.detailedErrorMsg||x.detailedErrorMsg.length<5)&&(C=x.message)),(0,h.jsxs)(m.cFD,{onClose:t,open:n,title:o,titleIcon:b,widthLimit:g,sx:y,children:[(0,h.jsx)(p.Z,{isModal:!0}),(0,h.jsx)(s.Z,{open:_,className:c.snackBarModal,onClose:function(){T(!1),E((0,f.MK)(""))},message:C,ContentProps:{className:"".concat(c.snackBar," ").concat(x&&"error"===x.type?c.errorSnackBar:"")},autoHideDuration:x&&"error"===x.type?1e4:5e3}),l]})}))},65926:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return y}});var r=n(4942),o=n(72791),a=n(78687),i=n(11135),s=n(25787),l=n(20068),c=n(13400),u=n(81551),d=n(29945),p=n(87998),f=n(28182),m=n(76610),h=n(80184),g=(0,s.Z)((function(e){return(0,i.Z)({container:{borderBottom:"#E2E2E2 1px solid",padding:"15px 5px",margin:"0 30px",position:"relative","& .showOnHover":{opacity:1,transitionDuration:"0.2s"},"&.inProgress":{"& .hideOnProgress":{}},"&:hover":{"& .showOnHover":{opacity:1}}},headItem:{fontSize:14,fontWeight:"bold",width:"100%",whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden"},downloadHeader:{display:"flex",alignItems:"center",width:"100%"},progressContainer:{marginTop:5},objectDetails:{display:"flex",alignItems:"center"},iconContainer:{paddingTop:5,marginRight:5,"& svg":{width:16,height:16}},completedSuccess:{color:"#4CCB92"},inProgress:{color:"#2781B0"},completedError:{color:"#C83B51"},cancelledAction:{color:"#FFBD62"},closeIcon:{backgroundColor:"#E9EDEE",display:"block",width:18,height:18,borderRadius:"100%","&:hover":{backgroundColor:"#cecbcb"},"&::before":{width:1,height:9,top:"50%",content:"' '",position:"absolute",transform:"translate(-50%, -50%) rotate(45deg)",borderLeft:"#000 2px solid"},"&::after":{width:1,height:9,top:"50%",content:"' '",position:"absolute",transform:"translate(-50%, -50%) rotate(-45deg)",borderLeft:"#000 2px solid"}},closeButton:{backgroundColor:"transparent",border:0,right:0,top:5,marginTop:15,position:"absolute"},fileName:{width:295},bucketName:{fontSize:12,color:"#696969",fontWeight:"normal"},errorMessage:{fontSize:12,color:"#C83B51",fontWeight:"normal",marginTop:6,overflowWrap:"break-word"}})}))((function(e){var t,n=e.classes,a=e.objectToDisplay,i=e.deleteFromList,s="".concat(a.prefix);return(0,h.jsx)(o.Fragment,{children:(0,h.jsxs)("div",{className:"".concat(n.container," ").concat(100!==a.percentage?"inProgress":""),children:[(0,h.jsx)("div",{className:n.clearListIcon,children:(0,h.jsx)("button",{onClick:function(){if(a.done)i(a.instanceID);else{var e=(0,m.Gy)(a.ID);e&&e.abort()}},className:"".concat(n.closeButton," hideOnProgress"),children:(0,h.jsx)("span",{className:n.closeIcon})})}),(0,h.jsx)("div",{className:n.objectDetails,children:(0,h.jsxs)("div",{className:n.fileName,children:[(0,h.jsx)(l.Z,{title:s,placement:"top-start",children:(0,h.jsxs)("div",{className:n.downloadHeader,children:[(0,h.jsx)("span",{className:(0,f.Z)(n.iconContainer,(t={},(0,r.Z)(t,n.inProgress,!a.done&&!a.failed&&!a.cancelled),(0,r.Z)(t,n.completedSuccess,a.done&&!a.failed&&!a.cancelled),(0,r.Z)(t,n.completedError,a.failed),(0,r.Z)(t,n.cancelledAction,a.cancelled),t)),children:a.cancelled?(0,h.jsx)(d.W3U,{}):(0,h.jsx)(o.Fragment,{children:a.failed?(0,h.jsx)(d.dRf,{}):(0,h.jsx)(o.Fragment,{children:a.done?(0,h.jsx)(d.E31,{}):(0,h.jsx)(o.Fragment,{children:"download"===a.type?(0,h.jsx)(d.Q_z,{}):(0,h.jsx)(d.jhp,{})})})})}),(0,h.jsx)("span",{className:(0,f.Z)(n.headItem,(0,r.Z)({},n.completedError,a.failed)),children:s})]})}),(0,h.jsxs)("span",{className:n.bucketName,children:[(0,h.jsx)("strong",{children:"Bucket: "}),a.bucketName]})]})}),(0,h.jsx)("div",{className:n.progressContainer,children:a.waitingForFile?(0,h.jsx)(p.Z,{indeterminate:!0,value:0,ready:!1}):(0,h.jsx)(p.Z,{value:a.percentage,ready:a.done,error:a.failed,cancelled:a.cancelled,withLabel:!0})}),""!==a.errorMessage&&(0,h.jsxs)("div",{className:n.errorMessage,children:[(0,h.jsx)("strong",{children:"Error: "}),a.errorMessage]})]})})})),v=n(54756),b=n(66514),y=(0,s.Z)((function(e){return(0,i.Z)({downloadContainer:{boxShadow:"rgba(0, 0, 0, 0.08) 0 2px 10px",position:"absolute",right:20,top:62,width:400,overflowY:"hidden",overflowX:"hidden",borderRadius:3,zIndex:1e3,padding:0,height:0,transitionDuration:"0.3s",visibility:"hidden","&.open":{visibility:"visible",minHeight:400}},downloadContainerAnonymous:{top:70},title:{fontSize:16,fontWeight:"bold",textAlign:"left",paddingBottom:20,borderBottom:"#E2E2E2 1px solid",margin:"25px 30px 5px 30px"},actionsContainer:{overflowY:"auto",overflowX:"hidden",minHeight:250,maxHeight:335,height:"100%",width:"100%",display:"flex",flexDirection:"column"},cleanIcon:{position:"absolute",right:28,top:25},cleanButton:{"& svg":{width:25}}})}))((function(e){var t,n=e.classes,i=(0,u.TL)(),s=(0,a.v9)((function(e){return e.objectBrowser.objectManager.objectsToManage})),p=(0,a.v9)((function(e){return e.objectBrowser.objectManager.managerOpen})),m=(0,a.v9)((function(e){return e.system.anonymousMode}));return(0,h.jsx)(o.Fragment,{children:p&&(0,h.jsxs)(d.xuv,{className:(0,f.Z)(n.downloadContainer,(t={},(0,r.Z)(t,n.downloadContainerAnonymous,m),(0,r.Z)(t,"open",p),t)),useBackground:!0,withBorders:!0,children:[(0,h.jsx)("div",{className:n.cleanIcon,children:(0,h.jsx)(l.Z,{title:"Clean Completed Objects",placement:"bottom-start",children:(0,h.jsx)(c.Z,{"aria-label":"Clear Completed List",size:"small",onClick:function(){return i((0,v.XH)())},className:n.cleanButton,children:(0,h.jsx)(d.tMF,{})})})}),(0,h.jsx)("div",{className:n.title,children:"Downloads / Uploads"}),(0,h.jsx)("div",{className:n.actionsContainer,children:(0,h.jsx)(b.Z,{rowRenderFunction:function(e){return(0,h.jsx)(g,{objectToDisplay:s[e],deleteFromList:function(e){return i((0,v.lF)(e))}})},totalItems:s.length,defaultHeight:110})})]})})}))},4677:function(e,t,n){"use strict";var r=n(29439),o=n(72791),a=n(29945),i=n(54756),s=n(81551),l=n(78687),c=n(72455),u=n(80184),d=(0,c.Z)((function(e){return{indicator:{position:"absolute",display:"block",width:15,height:15,top:0,right:4,marginTop:4,transitionDuration:"0.2s",color:"#32C787","& svg":{width:10,height:10,top:"50%",left:"50%",transitionDuration:"0.2s"},"&.newItem":{color:"#2781B0","& svg":{width:15,height:15}}}}}));t.Z=function(){var e=(0,s.TL)(),t=d(),n=(0,l.v9)((function(e){return e.objectBrowser.objectManager.objectsToManage})),c=(0,l.v9)((function(e){return e.objectBrowser.objectManager.newItems})),p=(0,l.v9)((function(e){return e.objectBrowser.objectManager.managerOpen})),f=(0,o.useState)(!1),m=(0,r.Z)(f,2),h=m[0],g=m[1];return(0,o.useEffect)((function(){n.length>0&&!p&&(g(!0),setTimeout((function(){g(!1)}),300))}),[n.length,p]),(0,u.jsx)(o.Fragment,{children:n&&n.length>0&&(0,u.jsx)(a.zxk,{"aria-label":"Refresh List",onClick:function(){e((0,i.kQ)())},icon:(0,u.jsxs)(o.Fragment,{children:[(0,u.jsx)("div",{className:"".concat(t.indicator," ").concat(h?"newItem":""),style:{opacity:n.length>0&&c?1:0},children:(0,u.jsx)(a.J$M,{})}),(0,u.jsx)(a.gxm,{style:{width:20,height:20,marginTop:-2}})]}),id:"object-manager-toggle",style:{position:"relative",padding:"0 10px"}})})}},47974:function(e,t,n){"use strict";var r=n(72791),o=n(29945),a=n(4677),i=n(80184);t.Z=function(e){var t=e.label,n=e.actions,s=e.middleComponent;return(0,i.jsx)(o.mr1,{label:t,actions:(0,i.jsxs)(r.Fragment,{children:[n,(0,i.jsx)(a.Z,{})]}),middleComponent:s})}},87998:function(e,t,n){"use strict";var r=n(1413),o=n(4942),a=n(72791),i=n(66934),s=n(40986),l=n(78917),c=n(64554),u=n(80184),d=(0,i.ZP)(s.Z)((function(){var e;return e={height:10,borderRadius:5},(0,o.Z)(e,"&.".concat(l.Z.colorPrimary),{backgroundColor:"#f1f1f1"}),(0,o.Z)(e,"& .".concat(l.Z.bar),{borderRadius:5}),e})),p=(0,i.ZP)(d)((function(){return(0,o.Z)({height:6,borderRadius:3},"& .".concat(l.Z.bar),{borderRadius:3})}));function f(e){var t="#000",n=18;return e.error?(t="#C83B51",n=14):e.cancelled&&(t="#FFBD62",n=14),(0,u.jsxs)(c.Z,{sx:{display:"flex",alignItems:"center"},children:[(0,u.jsx)(c.Z,{sx:{width:"100%",mr:3},children:(0,u.jsx)(d,(0,r.Z)({variant:"determinate"},e))}),(0,u.jsx)(c.Z,{sx:{minWidth:35,fontSize:n,color:t},className:"value",children:e.cancelled?"Cancelled":(0,u.jsx)(a.Fragment,{children:e.error?"Failed":"".concat(Math.round(e.value||0),"%")})})]})}t.Z=function(e){var t=e.value,n=e.ready,o=e.indeterminate,a=e.withLabel,i=e.size,s=void 0===i?"regular":i,l=e.error,c=e.cancelled,m={variant:!o||n||c?"determinate":"indeterminate",value:n?100:t,color:l?"error":c?"warning":100===t&&n?"success":"primary"};return a?(0,u.jsx)(f,(0,r.Z)((0,r.Z)({},m),{},{error:!!l,cancelled:!!c})):"small"===s?(0,u.jsx)(p,(0,r.Z)({},m)):(0,u.jsx)(d,(0,r.Z)({},m))}},59114:function(e,t,n){"use strict";n(72791);var r=n(29945),o=n(80184);t.Z=function(e){var t=e.placeholder,n=void 0===t?"":t,a=e.onChange,i=e.overrideClass,s=e.value,l=e.id,c=void 0===l?"search-resource":l,u=e.label,d=void 0===u?"":u,p=e.sx;return(0,o.jsx)(r.Wzg,{placeholder:n,className:i||"",id:c,label:d,onChange:function(e){a(e.target.value)},value:s,startIcon:(0,o.jsx)(r.W1M,{}),sx:p})}},50896:function(e,t,n){"use strict";n(72791);var r=n(61889),o=n(80184);t.Z=function(e){var t=e.children,n=e.separator,a=void 0===n||n,i=e.actions,s=e.icon;return(0,o.jsxs)(r.ZP,{container:!0,alignItems:"center",justifyContent:"space-between",sx:{borderBottom:a?"1px solid #eaeaea":""},children:[(0,o.jsx)(r.ZP,{item:!0,xs:!0,children:(0,o.jsxs)("h3",{style:{margin:0,marginBottom:10},children:[s&&(0,o.jsxs)(r.ZP,{container:!0,alignItems:"center",justifyContent:"flex-start",spacing:1,children:[(0,o.jsx)(r.ZP,{item:!0,children:s}),(0,o.jsx)(r.ZP,{item:!0,children:t})]}),!s&&t]})}),i&&(0,o.jsxs)(r.ZP,{item:!0,children:[" ",i]})]})}},27454:function(e,t,n){"use strict";var r=n(1413),o=n(72791),a=n(29945),i=n(80184);t.Z=function(e){var t=e.tooltip,n=e.children,s=e.errorProps,l=void 0===s?null:s,c=e.placement;return(0,i.jsx)(a.ua7,{tooltip:t,placement:c,children:(0,i.jsx)("span",{children:l?(0,o.cloneElement)(n,(0,r.Z)({},l)):n})})}},66514:function(e,t,n){"use strict";n.d(t,{Z:function(){return k}});var r=n(72791),o=n(87462),a=n(97326),i=n(94578),s=Number.isNaN||function(e){return"number"===typeof e&&e!==e};function l(e,t){if(e.length!==t.length)return!1;for(var n=0;n=t?e.call(null):r.id=requestAnimationFrame(o)}))};return r}var f=-1;function m(e){if(void 0===e&&(e=!1),-1===f||e){var t=document.createElement("div"),n=t.style;n.width="50px",n.height="50px",n.overflow="scroll",document.body.appendChild(t),f=t.offsetWidth-t.clientWidth,document.body.removeChild(t)}return f}var h=null;function g(e){if(void 0===e&&(e=!1),null===h||e){var t=document.createElement("div"),n=t.style;n.width="50px",n.height="50px",n.overflow="scroll",n.direction="rtl";var r=document.createElement("div"),o=r.style;return o.width="100px",o.height="100px",t.appendChild(r),document.body.appendChild(t),t.scrollLeft>0?h="positive-descending":(t.scrollLeft=1,h=0===t.scrollLeft?"negative":"positive-ascending"),document.body.removeChild(t),h}return h}var v=function(e,t){return e};function b(e){var t,n=e.getItemOffset,s=e.getEstimatedTotalSize,l=e.getItemSize,u=e.getOffsetForIndexAndAlignment,f=e.getStartIndexForOffset,h=e.getStopIndexForStartIndex,b=e.initInstanceProps,E=e.shouldResetStyleCacheOnItemSizeChange,S=e.validateProps;return t=function(e){function t(t){var r;return(r=e.call(this,t)||this)._instanceProps=b(r.props,(0,a.Z)(r)),r._outerRef=void 0,r._resetIsScrollingTimeoutId=null,r.state={instance:(0,a.Z)(r),isScrolling:!1,scrollDirection:"forward",scrollOffset:"number"===typeof r.props.initialScrollOffset?r.props.initialScrollOffset:0,scrollUpdateWasRequested:!1},r._callOnItemsRendered=void 0,r._callOnItemsRendered=c((function(e,t,n,o){return r.props.onItemsRendered({overscanStartIndex:e,overscanStopIndex:t,visibleStartIndex:n,visibleStopIndex:o})})),r._callOnScroll=void 0,r._callOnScroll=c((function(e,t,n){return r.props.onScroll({scrollDirection:e,scrollOffset:t,scrollUpdateWasRequested:n})})),r._getItemStyle=void 0,r._getItemStyle=function(e){var t,o=r.props,a=o.direction,i=o.itemSize,s=o.layout,c=r._getItemStyleCache(E&&i,E&&s,E&&a);if(c.hasOwnProperty(e))t=c[e];else{var u=n(r.props,e,r._instanceProps),d=l(r.props,e,r._instanceProps),p="horizontal"===a||"horizontal"===s,f="rtl"===a,m=p?u:0;c[e]=t={position:"absolute",left:f?void 0:m,right:f?m:void 0,top:p?0:u,height:p?"100%":d,width:p?d:"100%"}}return t},r._getItemStyleCache=void 0,r._getItemStyleCache=c((function(e,t,n){return{}})),r._onScrollHorizontal=function(e){var t=e.currentTarget,n=t.clientWidth,o=t.scrollLeft,a=t.scrollWidth;r.setState((function(e){if(e.scrollOffset===o)return null;var t=r.props.direction,i=o;if("rtl"===t)switch(g()){case"negative":i=-o;break;case"positive-descending":i=a-n-o}return i=Math.max(0,Math.min(i,a-n)),{isScrolling:!0,scrollDirection:e.scrollOffsets.clientWidth?m():0:s.scrollHeight>s.clientHeight?m():0}this.scrollTo(u(this.props,e,t,a,this._instanceProps,i))},w.componentDidMount=function(){var e=this.props,t=e.direction,n=e.initialScrollOffset,r=e.layout;if("number"===typeof n&&null!=this._outerRef){var o=this._outerRef;"horizontal"===t||"horizontal"===r?o.scrollLeft=n:o.scrollTop=n}this._callPropsCallbacks()},w.componentDidUpdate=function(){var e=this.props,t=e.direction,n=e.layout,r=this.state,o=r.scrollOffset;if(r.scrollUpdateWasRequested&&null!=this._outerRef){var a=this._outerRef;if("horizontal"===t||"horizontal"===n)if("rtl"===t)switch(g()){case"negative":a.scrollLeft=-o;break;case"positive-ascending":a.scrollLeft=o;break;default:var i=a.clientWidth,s=a.scrollWidth;a.scrollLeft=s-i-o}else a.scrollLeft=o;else a.scrollTop=o}this._callPropsCallbacks()},w.componentWillUnmount=function(){null!==this._resetIsScrollingTimeoutId&&d(this._resetIsScrollingTimeoutId)},w.render=function(){var e=this.props,t=e.children,n=e.className,a=e.direction,i=e.height,l=e.innerRef,c=e.innerElementType,u=e.innerTagName,d=e.itemCount,p=e.itemData,f=e.itemKey,m=void 0===f?v:f,h=e.layout,g=e.outerElementType,b=e.outerTagName,y=e.style,E=e.useIsScrolling,S=e.width,w=this.state.isScrolling,_="horizontal"===a||"horizontal"===h,T=_?this._onScrollHorizontal:this._onScrollVertical,x=this._getRangeToRender(),C=x[0],A=x[1],k=[];if(d>0)for(var I=C;I<=A;I++)k.push((0,r.createElement)(t,{data:p,key:m(I,p),index:I,isScrolling:E?w:void 0,style:this._getItemStyle(I)}));var O=s(this.props,this._instanceProps);return(0,r.createElement)(g||b||"div",{className:n,onScroll:T,ref:this._outerRefSetter,style:(0,o.Z)({position:"relative",height:i,width:S,overflow:"auto",WebkitOverflowScrolling:"touch",willChange:"transform",direction:a},y)},(0,r.createElement)(c||u||"div",{children:k,ref:l,style:{height:_?"100%":O,pointerEvents:w?"none":void 0,width:_?O:"100%"}}))},w._callPropsCallbacks=function(){if("function"===typeof this.props.onItemsRendered&&this.props.itemCount>0){var e=this._getRangeToRender(),t=e[0],n=e[1],r=e[2],o=e[3];this._callOnItemsRendered(t,n,r,o)}if("function"===typeof this.props.onScroll){var a=this.state,i=a.scrollDirection,s=a.scrollOffset,l=a.scrollUpdateWasRequested;this._callOnScroll(i,s,l)}},w._getRangeToRender=function(){var e=this.props,t=e.itemCount,n=e.overscanCount,r=this.state,o=r.isScrolling,a=r.scrollDirection,i=r.scrollOffset;if(0===t)return[0,0,0,0];var s=f(this.props,i,this._instanceProps),l=h(this.props,s,i,this._instanceProps),c=o&&"backward"!==a?1:Math.max(1,n),u=o&&"forward"!==a?1:Math.max(1,n);return[Math.max(0,s-c),Math.max(0,Math.min(t-1,l+u)),s,l]},t}(r.PureComponent),t.defaultProps={direction:"ltr",itemData:void 0,layout:"vertical",overscanCount:2,useIsScrolling:!1},t}var y=function(e,t){e.children,e.direction,e.height,e.layout,e.innerTagName,e.outerTagName,e.width,t.instance},E=b({getItemOffset:function(e,t){return t*e.itemSize},getItemSize:function(e,t){return e.itemSize},getEstimatedTotalSize:function(e){var t=e.itemCount;return e.itemSize*t},getOffsetForIndexAndAlignment:function(e,t,n,r,o,a){var i=e.direction,s=e.height,l=e.itemCount,c=e.itemSize,u=e.layout,d=e.width,p="horizontal"===i||"horizontal"===u?d:s,f=Math.max(0,l*c-p),m=Math.min(f,t*c),h=Math.max(0,t*c-p+c+a);switch("smart"===n&&(n=r>=h-p&&r<=m+p?"auto":"center"),n){case"start":return m;case"end":return h;case"center":var g=Math.round(h+(m-h)/2);return gf+Math.floor(p/2)?f:g;default:return r>=h&&r<=m?r:r0&&void 0!==arguments[0]&&arguments[0];this._memoizedUnloadedRanges=[],e&&this._ensureRowsLoaded(this._lastRenderedStartIndex,this._lastRenderedStopIndex)}},{key:"componentDidMount",value:function(){0}},{key:"render",value:function(){return(0,this.props.children)({onItemsRendered:this._onItemsRendered,ref:this._setRef})}},{key:"_ensureRowsLoaded",value:function(e,t){var n=this.props,r=n.isItemLoaded,o=n.itemCount,a=n.minimumBatchSize,i=void 0===a?10:a,s=n.threshold,l=void 0===s?15:s,c=function(e){for(var t=e.isItemLoaded,n=e.itemCount,r=e.minimumBatchSize,o=e.startIndex,a=e.stopIndex,i=[],s=null,l=null,c=o;c<=a;c++)t(c)?null!==l&&(i.push(s,l),s=l=null):(l=c,null===s&&(s=c));if(null!==l){for(var u=Math.min(Math.max(l,s+r-1),n-1),d=l+1;d<=u&&!t(d);d++)l=d;i.push(s,l)}if(i.length)for(;i[1]-i[0]+10;){var p=i[0]-1;if(t(p))break;i[0]=p}return i}({isItemLoaded:r,itemCount:o,minimumBatchSize:i,startIndex:Math.max(0,e-l),stopIndex:Math.min(o-1,t+l)});(this._memoizedUnloadedRanges.length!==c.length||this._memoizedUnloadedRanges.some((function(e,t){return c[t]!==e})))&&(this._memoizedUnloadedRanges=c,this._loadUnloadedRanges(c))}},{key:"_loadUnloadedRanges",value:function(e){for(var t=this,n=this.props.loadMoreItems||this.props.loadMoreRows,r=function(r){var o=e[r],a=e[r+1],i=n(o,a);null!=i&&i.then((function(){if(function(e){var t=e.lastRenderedStartIndex,n=e.lastRenderedStopIndex,r=e.startIndex,o=e.stopIndex;return!(r>n||oe.length){for(;a--;)if(47===e.charCodeAt(a)){if(n){r=a+1;break}}else o<0&&(n=!0,o=a+1);return o<0?"":e.slice(r,o)}if(t===e)return"";var i=-1,s=t.length-1;for(;a--;)if(47===e.charCodeAt(a)){if(n){r=a+1;break}}else i<0&&(n=!0,i=a+1),s>-1&&(e.charCodeAt(a)===t.charCodeAt(s--)?s<0&&(o=a):(s=-1,o=i));r===o?o=i:o<0&&(o=e.length);return e.slice(r,o)},dirname:function(e){if(M(e),0===e.length)return".";var t,n=-1,r=e.length;for(;--r;)if(47===e.charCodeAt(r)){if(t){n=r;break}}else t||(t=!0);return n<0?47===e.charCodeAt(0)?"/":".":1===n&&47===e.charCodeAt(0)?"//":e.slice(0,n)},extname:function(e){M(e);var t,n=e.length,r=-1,o=0,a=-1,i=0;for(;n--;){var s=e.charCodeAt(n);if(47!==s)r<0&&(t=!0,r=n+1),46===s?a<0?a=n:1!==i&&(i=1):a>-1&&(i=-1);else if(t){o=n+1;break}}if(a<0||r<0||0===i||1===i&&a===r-1&&a===o+1)return"";return e.slice(a,r)},join:function(){for(var e,t=-1,n=arguments.length,r=new Array(n),o=0;o2){if((r=o.lastIndexOf("/"))!==o.length-1){r<0?(o="",a=0):a=(o=o.slice(0,r)).length-1-o.lastIndexOf("/"),i=l,s=0;continue}}else if(o.length>0){o="",a=0,i=l,s=0;continue}t&&(o=o.length>0?o+"/..":"..",a=2)}else o.length>0?o+="/"+e.slice(i+1,l):o=e.slice(i+1,l),a=l-i-1;i=l,s=0}else 46===n&&s>-1?s++:s=-1}return o}(e,!t);0!==n.length||t||(n=".");n.length>0&&47===e.charCodeAt(e.length-1)&&(n+="/");return t?"/"+n:n}(e)},sep:"/"};function M(e){if("string"!==typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}var L={cwd:function(){return"/"}};function P(e){return null!==e&&"object"===typeof e&&e.href&&e.origin}function D(e){if("string"===typeof e)e=new URL(e);else if(!P(e)){var t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if("file:"!==e.protocol){var n=new TypeError("The URL must be of scheme file");throw n.code="ERR_INVALID_URL_SCHEME",n}return function(e){if(""!==e.hostname){var t=new TypeError('File URL host must be "localhost" or empty on darwin');throw t.code="ERR_INVALID_FILE_URL_HOST",t}var n=e.pathname,r=-1;for(;++r1?l-1:0),u=1;uo.length;c&&o.push(a);try{l=e.apply(this,o)}catch(r){if(c&&n)throw r;return a(r)}c||(l instanceof Promise?l.then(i,a):l instanceof Error?a(l):i(l))}function a(e){if(!n){n=!0;for(var r=arguments.length,o=new Array(r>1?r-1:0),a=1;a1?n-1:0),s=1;sa?0:a+t:t>a?a:t,n=n>0?n:0,r.length<1e4)(o=Array.from(r)).unshift(t,n),e.splice.apply(e,(0,S.Z)(o));else for(n&&e.splice(t,n);i0?(ae(e,e.length,0,t),e):t}var se={}.hasOwnProperty;function le(e,t){var n;for(n in t){var r=(se.call(e,n)?e[n]:void 0)||(e[n]={}),o=t[n],a=void 0;if(o)for(a in o){se.call(r,a)||(r[a]=[]);var i=o[a];ce(r[a],Array.isArray(i)?i:i?[i]:[])}}}function ce(e,t){for(var n=-1,r=[];++nr))return;for(var c,u,d=o.events.length,p=d;p--;)if("exit"===o.events[p][0]&&"chunkFlow"===o.events[p][1].type){if(c){u=o.events[p][1].end;break}c=!0}for(v(i),l=d;lt;){var r=a[n];o.containerState=r[1],r[0].exit.call(o,e)}a.length=t}function b(){t.write([null]),n=void 0,t=void 0,o.containerState._closeFlow=void 0}}},Ce={tokenize:function(e,t,n){return _e(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}};var Ae={tokenize:function(e,t,n){return function(t){return ye(t)?_e(e,r,"linePrefix")(t):r(t)};function r(e){return null===e||ve(e)?t(e):n(e)}},partial:!0};function ke(e){for(var t,n,r,o,a,i,s,l={},c=-1;++c=4?t(o):e.interrupt(r.parser.constructs.flow,n,t)(o)}},partial:!0};var Ne={tokenize:function(e){var t=this,n=e.attempt(Ae,(function(r){if(null===r)return void e.consume(r);return e.enter("lineEndingBlank"),e.consume(r),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}),e.attempt(this.parser.constructs.flowInitial,r,_e(e,e.attempt(this.parser.constructs.flow,r,e.attempt(Oe,r)),"linePrefix")));return n;function r(r){if(null!==r)return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),t.currentConstruct=void 0,n;e.consume(r)}}};var Me={resolveAll:Ze()},Le=De("string"),Pe=De("text");function De(e){return{tokenize:function(t){var n=this,r=this.parser.constructs[e],o=t.attempt(r,a,i);return a;function a(e){return l(e)?o(e):i(e)}function i(e){if(null!==e)return t.enter("data"),t.consume(e),s;t.consume(e)}function s(e){return l(e)?(t.exit("data"),o(e)):(t.consume(e),s)}function l(e){if(null===e)return!0;var t=r[e],o=-1;if(t)for(;++o-1){var s=n[0];"string"===typeof s?n[0]=s.slice(o):n.shift()}i>0&&n.push(e[a].slice(0,i))}return n}(i,e)}function p(){var e=r;return{line:e.line,column:e.column,offset:e.offset,_index:e._index,_bufferIndex:e._bufferIndex}}function f(){for(var e;r._index=3&&(null===a||ve(a))?(e.exit("thematicBreak"),t(a)):n(a)}function i(t){return t===r?(e.consume(t),o++,i):(e.exit("thematicBreakSequence"),ye(t)?_e(e,a,"whitespace")(t):a(t))}}};var He={name:"list",tokenize:function(e,t,n){var r=this,o=r.events[r.events.length-1],a=o&&"linePrefix"===o[1].type?o[2].sliceSerialize(o[1],!0).length:0,i=0;return function(t){var o=r.containerState.type||(42===t||43===t||45===t?"listUnordered":"listOrdered");if("listUnordered"===o?!r.containerState.marker||t===r.containerState.marker:me(t)){if(r.containerState.type||(r.containerState.type=o,e.enter(o,{_container:!0})),"listUnordered"===o)return e.enter("listItemPrefix"),42===t||45===t?e.check(je,n,l)(t):l(t);if(!r.interrupt||49===t)return e.enter("listItemPrefix"),e.enter("listItemValue"),s(t)}return n(t)};function s(t){return me(t)&&++i<10?(e.consume(t),s):(!r.interrupt||i<2)&&(r.containerState.marker?t===r.containerState.marker:41===t||46===t)?(e.exit("listItemValue"),l(t)):n(t)}function l(t){return e.enter("listItemMarker"),e.consume(t),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||t,e.check(Ae,r.interrupt?n:c,e.attempt(Ge,d,u))}function c(e){return r.containerState.initialBlankLine=!0,a++,d(e)}function u(t){return ye(t)?(e.enter("listItemPrefixWhitespace"),e.consume(t),e.exit("listItemPrefixWhitespace"),d):n(t)}function d(n){return r.containerState.size=a+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(n)}},continuation:{tokenize:function(e,t,n){var r=this;return r.containerState._closeFlow=void 0,e.check(Ae,o,a);function o(n){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,_e(e,t,"listItemIndent",r.containerState.size+1)(n)}function a(n){return r.containerState.furtherBlankLines||!ye(n)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,i(n)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(Ve,t,i)(n))}function i(o){return r.containerState._closeFlow=!0,r.interrupt=void 0,_e(e,e.attempt(He,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(o)}}},exit:function(e){e.exit(this.containerState.type)}},Ge={tokenize:function(e,t,n){var r=this;return _e(e,(function(e){var o=r.events[r.events.length-1];return!ye(e)&&o&&"listItemPrefixWhitespace"===o[1].type?t(e):n(e)}),"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5)},partial:!0},Ve={tokenize:function(e,t,n){var r=this;return _e(e,(function(e){var o=r.events[r.events.length-1];return o&&"listItemIndent"===o[1].type&&o[2].sliceSerialize(o[1],!0).length===r.containerState.size?t(e):n(e)}),"listItemIndent",r.containerState.size+1)},partial:!0};var We={name:"blockQuote",tokenize:function(e,t,n){var r=this;return function(t){if(62===t){var a=r.containerState;return a.open||(e.enter("blockQuote",{_container:!0}),a.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(t),e.exit("blockQuoteMarker"),o}return n(t)};function o(n){return ye(n)?(e.enter("blockQuotePrefixWhitespace"),e.consume(n),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(n))}},continuation:{tokenize:function(e,t,n){var r=this;return function(t){if(ye(t))return _e(e,o,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(t);return o(t)};function o(r){return e.attempt(We,t,n)(r)}}},exit:function(e){e.exit("blockQuote")}};function qe(e,t,n,r,o,a,i,s,l){var c=l||Number.POSITIVE_INFINITY,u=0;return function(t){if(60===t)return e.enter(r),e.enter(o),e.enter(a),e.consume(t),e.exit(a),d;if(null===t||32===t||41===t||fe(t))return n(t);return e.enter(r),e.enter(i),e.enter(s),e.enter("chunkString",{contentType:"string"}),m(t)};function d(n){return 62===n?(e.enter(a),e.consume(n),e.exit(a),e.exit(o),e.exit(r),t):(e.enter(s),e.enter("chunkString",{contentType:"string"}),p(n))}function p(t){return 62===t?(e.exit("chunkString"),e.exit(s),d(t)):null===t||60===t||ve(t)?n(t):(e.consume(t),92===t?f:p)}function f(t){return 60===t||62===t||92===t?(e.consume(t),p):p(t)}function m(o){return u||null!==o&&41!==o&&!be(o)?u999||null===d||91===d||93===d&&!i||94===d&&!l&&"_hiddenFootnoteSupport"in s.parser.constructs?n(d):93===d?(e.exit(a),e.enter(o),e.consume(d),e.exit(o),e.exit(r),t):ve(d)?(e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),c):(e.enter("chunkString",{contentType:"string"}),u(d))}function u(t){return null===t||91===t||93===t||ve(t)||l++>999?(e.exit("chunkString"),c(t)):(e.consume(t),i||(i=!ye(t)),92===t?d:u)}function d(t){return 91===t||92===t||93===t?(e.consume(t),l++,u):u(t)}}function Ke(e,t,n,r,o,a){var i;return function(t){if(34===t||39===t||40===t)return e.enter(r),e.enter(o),e.consume(t),e.exit(o),i=40===t?41:t,s;return n(t)};function s(n){return n===i?(e.enter(o),e.consume(n),e.exit(o),e.exit(r),t):(e.enter(a),l(n))}function l(t){return t===i?(e.exit(a),s(i)):null===t?n(t):ve(t)?(e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),_e(e,l,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),c(t))}function c(t){return t===i||null===t||ve(t)?(e.exit("chunkString"),l(t)):(e.consume(t),92===t?u:c)}function u(t){return t===i||92===t?(e.consume(t),c):c(t)}}function Ye(e,t){var n;return function r(o){if(ve(o))return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),n=!0,r;if(ye(o))return _e(e,r,n?"linePrefix":"lineSuffix")(o);return t(o)}}function Xe(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}var Qe={name:"definition",tokenize:function(e,t,n){var r,o=this;return function(t){return e.enter("definition"),function(t){return $e.call(o,e,a,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(t)}(t)};function a(t){return r=Xe(o.sliceSerialize(o.events[o.events.length-1][1]).slice(1,-1)),58===t?(e.enter("definitionMarker"),e.consume(t),e.exit("definitionMarker"),i):n(t)}function i(t){return be(t)?Ye(e,s)(t):s(t)}function s(t){return qe(e,l,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(t)}function l(t){return e.attempt(Je,c,c)(t)}function c(t){return ye(t)?_e(e,u,"whitespace")(t):u(t)}function u(a){return null===a||ve(a)?(e.exit("definition"),o.parser.defined.push(r),t(a)):n(a)}}},Je={tokenize:function(e,t,n){return function(t){return be(t)?Ye(e,r)(t):n(t)};function r(t){return Ke(e,o,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(t)}function o(t){return ye(t)?_e(e,a,"whitespace")(t):a(t)}function a(e){return null===e||ve(e)?t(e):n(e)}},partial:!0};var et={name:"codeIndented",tokenize:function(e,t,n){var r=this;return function(t){return e.enter("codeIndented"),_e(e,o,"linePrefix",5)(t)};function o(e){var t=r.events[r.events.length-1];return t&&"linePrefix"===t[1].type&&t[2].sliceSerialize(t[1],!0).length>=4?a(e):n(e)}function a(t){return null===t?s(t):ve(t)?e.attempt(tt,a,s)(t):(e.enter("codeFlowValue"),i(t))}function i(t){return null===t||ve(t)?(e.exit("codeFlowValue"),a(t)):(e.consume(t),i)}function s(n){return e.exit("codeIndented"),t(n)}}},tt={tokenize:function(e,t,n){var r=this;return o;function o(t){return r.parser.lazy[r.now().line]?n(t):ve(t)?(e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),o):_e(e,a,"linePrefix",5)(t)}function a(e){var a=r.events[r.events.length-1];return a&&"linePrefix"===a[1].type&&a[2].sliceSerialize(a[1],!0).length>=4?t(e):ve(e)?o(e):n(e)}},partial:!0};var nt={name:"headingAtx",tokenize:function(e,t,n){var r=0;return function(t){return e.enter("atxHeading"),function(t){return e.enter("atxHeadingSequence"),o(t)}(t)};function o(t){return 35===t&&r++<6?(e.consume(t),o):null===t||be(t)?(e.exit("atxHeadingSequence"),a(t)):n(t)}function a(n){return 35===n?(e.enter("atxHeadingSequence"),i(n)):null===n||ve(n)?(e.exit("atxHeading"),t(n)):ye(n)?_e(e,a,"whitespace")(n):(e.enter("atxHeadingText"),s(n))}function i(t){return 35===t?(e.consume(t),i):(e.exit("atxHeadingSequence"),a(t))}function s(t){return null===t||35===t||be(t)?(e.exit("atxHeadingText"),a(t)):(e.consume(t),s)}},resolve:function(e,t){var n,r,o=e.length-2,a=3;"whitespace"===e[a][1].type&&(a+=2);o-2>a&&"whitespace"===e[o][1].type&&(o-=2);"atxHeadingSequence"===e[o][1].type&&(a===o-1||o-4>a&&"whitespace"===e[o-2][1].type)&&(o-=a+1===o?2:4);o>a&&ae(e,a,o-a+1,[["enter",n={type:"atxHeadingText",start:e[a][1].start,end:e[o][1].end},t],["enter",r={type:"chunkText",start:e[a][1].start,end:e[o][1].end,contentType:"text"},t],["exit",r,t],["exit",n,t]]);return e}};var rt={name:"setextUnderline",tokenize:function(e,t,n){var r,o=this;return function(t){var i,s=o.events.length;for(;s--;)if("lineEnding"!==o.events[s][1].type&&"linePrefix"!==o.events[s][1].type&&"content"!==o.events[s][1].type){i="paragraph"===o.events[s][1].type;break}if(!o.parser.lazy[o.now().line]&&(o.interrupt||i))return e.enter("setextHeadingLine"),r=t,function(t){return e.enter("setextHeadingLineSequence"),a(t)}(t);return n(t)};function a(t){return t===r?(e.consume(t),a):(e.exit("setextHeadingLineSequence"),ye(t)?_e(e,i,"lineSuffix")(t):i(t))}function i(r){return null===r||ve(r)?(e.exit("setextHeadingLine"),t(r)):n(r)}},resolveTo:function(e,t){var n,r,o,a=e.length;for(;a--;)if("enter"===e[a][0]){if("content"===e[a][1].type){n=a;break}"paragraph"===e[a][1].type&&(r=a)}else"content"===e[a][1].type&&e.splice(a,1),o||"definition"!==e[a][1].type||(o=a);var i={type:"setextHeading",start:Object.assign({},e[r][1].start),end:Object.assign({},e[e.length-1][1].end)};e[r][1].type="setextHeadingText",o?(e.splice(r,0,["enter",i,t]),e.splice(o+1,0,["exit",e[n][1],t]),e[n][1].end=Object.assign({},e[o][1].end)):e[n][1]=i;return e.push(["exit",i,t]),e}};var ot=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],at=["pre","script","style","textarea"],it={name:"htmlFlow",tokenize:function(e,t,n){var r,o,a,i,s,l=this;return function(t){return function(t){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(t),c}(t)};function c(i){return 33===i?(e.consume(i),u):47===i?(e.consume(i),o=!0,f):63===i?(e.consume(i),r=3,l.interrupt?t:L):ue(i)?(e.consume(i),a=String.fromCharCode(i),m):n(i)}function u(o){return 45===o?(e.consume(o),r=2,d):91===o?(e.consume(o),r=5,i=0,p):ue(o)?(e.consume(o),r=4,l.interrupt?t:L):n(o)}function d(r){return 45===r?(e.consume(r),l.interrupt?t:L):n(r)}function p(r){var o="CDATA[";return r===o.charCodeAt(i++)?(e.consume(r),6===i?l.interrupt?t:C:p):n(r)}function f(t){return ue(t)?(e.consume(t),a=String.fromCharCode(t),m):n(t)}function m(i){if(null===i||47===i||62===i||be(i)){var s=47===i,c=a.toLowerCase();return s||o||!at.includes(c)?ot.includes(a.toLowerCase())?(r=6,s?(e.consume(i),h):l.interrupt?t(i):C(i)):(r=7,l.interrupt&&!l.parser.lazy[l.now().line]?n(i):o?g(i):v(i)):(r=1,l.interrupt?t(i):C(i))}return 45===i||de(i)?(e.consume(i),a+=String.fromCharCode(i),m):n(i)}function h(r){return 62===r?(e.consume(r),l.interrupt?t:C):n(r)}function g(t){return ye(t)?(e.consume(t),g):T(t)}function v(t){return 47===t?(e.consume(t),T):58===t||95===t||ue(t)?(e.consume(t),b):ye(t)?(e.consume(t),v):T(t)}function b(t){return 45===t||46===t||58===t||95===t||de(t)?(e.consume(t),b):y(t)}function y(t){return 61===t?(e.consume(t),E):ye(t)?(e.consume(t),y):v(t)}function E(t){return null===t||60===t||61===t||62===t||96===t?n(t):34===t||39===t?(e.consume(t),s=t,S):ye(t)?(e.consume(t),E):w(t)}function S(t){return t===s?(e.consume(t),s=null,_):null===t||ve(t)?n(t):(e.consume(t),S)}function w(t){return null===t||34===t||39===t||47===t||60===t||61===t||62===t||96===t||be(t)?y(t):(e.consume(t),w)}function _(e){return 47===e||62===e||ye(e)?v(e):n(e)}function T(t){return 62===t?(e.consume(t),x):n(t)}function x(t){return null===t||ve(t)?C(t):ye(t)?(e.consume(t),x):n(t)}function C(t){return 45===t&&2===r?(e.consume(t),O):60===t&&1===r?(e.consume(t),R):62===t&&4===r?(e.consume(t),P):63===t&&3===r?(e.consume(t),L):93===t&&5===r?(e.consume(t),M):!ve(t)||6!==r&&7!==r?null===t||ve(t)?(e.exit("htmlFlowData"),A(t)):(e.consume(t),C):(e.exit("htmlFlowData"),e.check(st,D,A)(t))}function A(t){return e.check(lt,k,D)(t)}function k(t){return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),I}function I(t){return null===t||ve(t)?A(t):(e.enter("htmlFlowData"),C(t))}function O(t){return 45===t?(e.consume(t),L):C(t)}function R(t){return 47===t?(e.consume(t),a="",N):C(t)}function N(t){if(62===t){var n=a.toLowerCase();return at.includes(n)?(e.consume(t),P):C(t)}return ue(t)&&a.length<8?(e.consume(t),a+=String.fromCharCode(t),N):C(t)}function M(t){return 93===t?(e.consume(t),L):C(t)}function L(t){return 62===t?(e.consume(t),P):45===t&&2===r?(e.consume(t),L):C(t)}function P(t){return null===t||ve(t)?(e.exit("htmlFlowData"),D(t)):(e.consume(t),P)}function D(n){return e.exit("htmlFlow"),t(n)}},resolveTo:function(e){var t=e.length;for(;t--&&("enter"!==e[t][0]||"htmlFlow"!==e[t][1].type););t>1&&"linePrefix"===e[t-2][1].type&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2));return e},concrete:!0},st={tokenize:function(e,t,n){return function(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),e.attempt(Ae,t,n)}},partial:!0},lt={tokenize:function(e,t,n){var r=this;return function(t){if(ve(t))return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),o;return n(t)};function o(e){return r.parser.lazy[r.now().line]?n(e):t(e)}},partial:!0};var ct={tokenize:function(e,t,n){var r=this;return function(t){if(null===t)return n(t);return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),o};function o(e){return r.parser.lazy[r.now().line]?n(e):t(e)}},partial:!0},ut={name:"codeFenced",tokenize:function(e,t,n){var r,o=this,a={tokenize:function(e,t,n){var a=0;return i;function i(t){return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),l}function l(t){return e.enter("codeFencedFence"),ye(t)?_e(e,c,"linePrefix",o.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(t):c(t)}function c(t){return t===r?(e.enter("codeFencedFenceSequence"),u(t)):n(t)}function u(t){return t===r?(a++,e.consume(t),u):a>=s?(e.exit("codeFencedFenceSequence"),ye(t)?_e(e,d,"whitespace")(t):d(t)):n(t)}function d(r){return null===r||ve(r)?(e.exit("codeFencedFence"),t(r)):n(r)}},partial:!0},i=0,s=0;return function(t){return function(t){var n=o.events[o.events.length-1];return i=n&&"linePrefix"===n[1].type?n[2].sliceSerialize(n[1],!0).length:0,r=t,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),l(t)}(t)};function l(t){return t===r?(s++,e.consume(t),l):s<3?n(t):(e.exit("codeFencedFenceSequence"),ye(t)?_e(e,c,"whitespace")(t):c(t))}function c(n){return null===n||ve(n)?(e.exit("codeFencedFence"),o.interrupt?t(n):e.check(ct,f,b)(n)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),u(n))}function u(t){return null===t||ve(t)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),c(t)):ye(t)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),_e(e,d,"whitespace")(t)):96===t&&t===r?n(t):(e.consume(t),u)}function d(t){return null===t||ve(t)?c(t):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),p(t))}function p(t){return null===t||ve(t)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),c(t)):96===t&&t===r?n(t):(e.consume(t),p)}function f(t){return e.attempt(a,b,m)(t)}function m(t){return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),h}function h(t){return i>0&&ye(t)?_e(e,g,"linePrefix",i+1)(t):g(t)}function g(t){return null===t||ve(t)?e.check(ct,f,b)(t):(e.enter("codeFlowValue"),v(t))}function v(t){return null===t||ve(t)?(e.exit("codeFlowValue"),g(t)):(e.consume(t),v)}function b(n){return e.exit("codeFenced"),t(n)}},concrete:!0};var dt=document.createElement("i");function pt(e){var t="&"+e+";";dt.innerHTML=t;var n=dt.textContent;return(59!==n.charCodeAt(n.length-1)||"semi"===e)&&(n!==t&&n)}var ft={name:"characterReference",tokenize:function(e,t,n){var r,o,a=this,i=0;return function(t){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(t),e.exit("characterReferenceMarker"),s};function s(t){return 35===t?(e.enter("characterReferenceMarkerNumeric"),e.consume(t),e.exit("characterReferenceMarkerNumeric"),l):(e.enter("characterReferenceValue"),r=31,o=de,c(t))}function l(t){return 88===t||120===t?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(t),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),r=6,o=he,c):(e.enter("characterReferenceValue"),r=7,o=me,c(t))}function c(s){if(59===s&&i){var l=e.exit("characterReferenceValue");return o!==de||pt(a.sliceSerialize(l))?(e.enter("characterReferenceMarker"),e.consume(s),e.exit("characterReferenceMarker"),e.exit("characterReference"),t):n(s)}return o(s)&&i++1&&e[u][1].end.offset-e[u][1].start.offset>1?2:1;var d=Object.assign({},e[n][1].end),p=Object.assign({},e[u][1].start);_t(d,-s),_t(p,s),a={type:s>1?"strongSequence":"emphasisSequence",start:d,end:Object.assign({},e[n][1].end)},i={type:s>1?"strongSequence":"emphasisSequence",start:Object.assign({},e[u][1].start),end:p},o={type:s>1?"strongText":"emphasisText",start:Object.assign({},e[n][1].end),end:Object.assign({},e[u][1].start)},r={type:s>1?"strong":"emphasis",start:Object.assign({},a.start),end:Object.assign({},i.end)},e[n][1].end=Object.assign({},a.start),e[u][1].start=Object.assign({},i.end),l=[],e[n][1].end.offset-e[n][1].start.offset&&(l=ie(l,[["enter",e[n][1],t],["exit",e[n][1],t]])),l=ie(l,[["enter",r,t],["enter",a,t],["exit",a,t],["enter",o,t]]),l=ie(l,ze(t.parser.constructs.insideSpan.null,e.slice(n+1,u),t)),l=ie(l,[["exit",o,t],["enter",i,t],["exit",i,t],["exit",r,t]]),e[u][1].end.offset-e[u][1].start.offset?(c=2,l=ie(l,[["enter",e[u][1],t],["exit",e[u][1],t]])):c=0,ae(e,n-1,u-n+3,l),u=n+l.length-c-2;break}u=-1;for(;++u13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||65535===(65535&n)||65534===(65535&n)||n>1114111?"\ufffd":String.fromCharCode(n)}var Wt=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function qt(e,t,n){if(t)return t;if(35===n.charCodeAt(0)){var r=n.charCodeAt(1),o=120===r||88===r;return Vt(n.slice(o?2:1),o?16:10)}return pt(n)||e}var $t={}.hasOwnProperty,Kt=function(e,t,n){return"string"!==typeof t&&(n=t,t=void 0),function(e){var t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:s(ae),autolinkProtocol:k,autolinkEmail:k,atxHeading:s(J),blockQuote:s($),characterEscape:k,characterReference:k,codeFenced:s(K),codeFencedFenceInfo:l,codeFencedFenceMeta:l,codeIndented:s(K,l),codeText:s(Y,l),codeTextData:k,data:k,codeFlowValue:k,definition:s(X),definitionDestinationString:l,definitionLabelString:l,definitionTitleString:l,emphasis:s(Q),hardBreakEscape:s(ee),hardBreakTrailing:s(ee),htmlFlow:s(te,l),htmlFlowData:k,htmlText:s(te,l),htmlTextData:k,image:s(oe),label:l,link:s(ae),listItem:s(se),listItemValue:m,listOrdered:s(ie,f),listUnordered:s(ie),paragraph:s(le),reference:j,referenceString:l,resourceDestinationString:l,resourceTitleString:l,setextHeading:s(J),strong:s(ce),thematicBreak:s(de)},exit:{atxHeading:u(),atxHeadingSequence:_,autolink:u(),autolinkEmail:q,autolinkProtocol:W,blockQuote:u(),characterEscapeValue:I,characterReferenceMarkerHexadecimal:G,characterReferenceMarkerNumeric:G,characterReferenceValue:V,codeFenced:u(b),codeFencedFence:v,codeFencedFenceInfo:h,codeFencedFenceMeta:g,codeFlowValue:I,codeIndented:u(y),codeText:u(L),codeTextData:I,data:I,definition:u(),definitionDestinationString:w,definitionLabelString:E,definitionTitleString:S,emphasis:u(),hardBreakEscape:u(R),hardBreakTrailing:u(R),htmlFlow:u(N),htmlFlowData:I,htmlText:u(M),htmlTextData:I,image:u(D),label:B,labelText:Z,lineEnding:O,link:u(P),listItem:u(),listOrdered:u(),listUnordered:u(),paragraph:u(),referenceString:H,resourceDestinationString:z,resourceTitleString:F,resource:U,setextHeading:u(C),setextHeadingLineSequence:x,setextHeadingText:T,strong:u(),thematicBreak:u()}};Xt(t,(e||{}).mdastExtensions||[]);var n={};return r;function r(e){for(var n={type:"root",children:[]},r={stack:[n],tokenStack:[],config:t,enter:c,exit:d,buffer:l,resume:p,setData:a,getData:i},s=[],u=-1;++u0){var m=r.tokenStack[r.tokenStack.length-1];(m[1]||Jt).call(r,void 0,m[0])}for(n.position={start:Yt(e.length>0?e[0][1].start:{line:1,column:1,offset:0}),end:Yt(e.length>0?e[e.length-2][1].end:{line:1,column:1,offset:0})},u=-1;++u55295&&a<57344){var s=e.charCodeAt(n+1);a<56320&&s>56319&&s<57344?(i=String.fromCharCode(a,s),o=1):i="\ufffd"}else i=String.fromCharCode(a);i&&(t.push(e.slice(r,n),encodeURIComponent(i)),r=n+o+1,i=""),o&&(n+=o,o=0)}return t.join("")+e.slice(r)}var nn=function(e){if(void 0===e||null===e)return an;if("string"===typeof e)return function(e){return on(t);function t(t){return t&&t.type===e}}(e);if("object"===typeof e)return Array.isArray(e)?rn(e):function(e){return on(t);function t(t){var n;for(n in e)if(t[n]!==e[n])return!1;return!0}}(e);if("function"===typeof e)return on(e);throw new Error("Expected function, string, or object as test")};function rn(e){for(var t=[],n=-1;++n1?n-1:0),o=1;o":"")+")"})}return d;function d(){var c,u,d,p=[];if((!t||o(i,s,l[l.length-1]||null))&&(p=function(e){if(Array.isArray(e))return e;if("number"===typeof e)return[true,e];return[e]}(n(i,l)),false===p[0]))return p;if(i.children&&"skip"!==p[0])for(u=(r?i.children.length:-1)+a,d=l.concat(i);u>-1&&u-1?n.offset:null}}}var pn={}.hasOwnProperty;function fn(e){return String(e||"").toUpperCase()}function mn(e,t){var n,r=String(t.identifier).toUpperCase(),o=tn(r.toLowerCase()),a=e.footnoteOrder.indexOf(r);-1===a?(e.footnoteOrder.push(r),e.footnoteCounts[r]=1,n=e.footnoteOrder.length):(e.footnoteCounts[r]++,n=a+1);var i=e.footnoteCounts[r],s={type:"element",tagName:"a",properties:{href:"#"+e.clobberPrefix+"fn-"+o,id:e.clobberPrefix+"fnref-"+o+(i>1?"-"+i:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(n)}]};e.patch(t,s);var l={type:"element",tagName:"sup",properties:{},children:[s]};return e.patch(t,l),e.applyData(t,l)}function hn(e,t){var n=t.referenceType,r="]";if("collapsed"===n?r+="[]":"full"===n&&(r+="["+(t.label||t.identifier)+"]"),"imageReference"===t.type)return{type:"text",value:"!["+t.alt+r};var o=e.all(t),a=o[0];a&&"text"===a.type?a.value="["+a.value:o.unshift({type:"text",value:"["});var i=o[o.length-1];return i&&"text"===i.type?i.value+=r:o.push({type:"text",value:r}),o}function gn(e){var t=e.spread;return void 0===t||null===t?e.children.length>1:t}var vn=9,bn=32;function yn(e){for(var t=String(e),n=/\r?\n|\r/g,r=n.exec(t),o=0,a=[];r;)a.push(En(t.slice(o,r.index),o>0,!0),r[0]),o=r.index+r[0].length,r=n.exec(t);return a.push(En(t.slice(o),o>0,!1)),a.join("")}function En(e,t,n){var r=0,o=e.length;if(t)for(var a=e.codePointAt(r);a===vn||a===bn;)r++,a=e.codePointAt(r);if(n)for(var i=e.codePointAt(o-1);i===vn||i===bn;)o--,i=e.codePointAt(o-1);return o>r?e.slice(r,o):""}var Sn={blockquote:function(e,t){var n={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)},break:function(e,t){var n={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:"text",value:"\n"}]},code:function(e,t){var n=t.value?t.value+"\n":"",r=t.lang?t.lang.match(/^[^ \t]+(?=[ \t]|$)/):null,o={};r&&(o.className=["language-"+r]);var a={type:"element",tagName:"code",properties:o,children:[{type:"text",value:n}]};return t.meta&&(a.data={meta:t.meta}),e.patch(t,a),a={type:"element",tagName:"pre",properties:{},children:[a=e.applyData(t,a)]},e.patch(t,a),a},delete:function(e,t){var n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},emphasis:function(e,t){var n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},footnoteReference:mn,footnote:function(e,t){for(var n=e.footnoteById,r=1;r in n;)r++;var o=String(r);return n[o]={type:"footnoteDefinition",identifier:o,children:[{type:"paragraph",children:t.children}],position:t.position},mn(e,{type:"footnoteReference",identifier:o,position:t.position})},heading:function(e,t){var n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},html:function(e,t){if(e.dangerous){var n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}return null},imageReference:function(e,t){var n=e.definition(t.identifier);if(!n)return hn(e,t);var r={src:tn(n.url||""),alt:t.alt};null!==n.title&&void 0!==n.title&&(r.title=n.title);var o={type:"element",tagName:"img",properties:r,children:[]};return e.patch(t,o),e.applyData(t,o)},image:function(e,t){var n={src:tn(t.url)};null!==t.alt&&void 0!==t.alt&&(n.alt=t.alt),null!==t.title&&void 0!==t.title&&(n.title=t.title);var r={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)},inlineCode:function(e,t){var n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);var r={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)},linkReference:function(e,t){var n=e.definition(t.identifier);if(!n)return hn(e,t);var r={href:tn(n.url||"")};null!==n.title&&void 0!==n.title&&(r.title=n.title);var o={type:"element",tagName:"a",properties:r,children:e.all(t)};return e.patch(t,o),e.applyData(t,o)},link:function(e,t){var n={href:tn(t.url)};null!==t.title&&void 0!==t.title&&(n.title=t.title);var r={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)},listItem:function(e,t,n){var r=e.all(t),o=n?function(e){var t=!1;if("list"===e.type){t=e.spread||!1;for(var n=e.children,r=-1;!t&&++r0&&s.children.unshift({type:"text",value:" "}),s.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),a.className=["task-list-item"]}for(var c=-1;++c0){var i={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},s=cn(t.children[1]),l=un(t.children[t.children.length-1]);s.line&&l.line&&(i.position={start:s,end:l}),o.push(i)}var c={type:"element",tagName:"table",properties:{},children:e.wrap(o,!0)};return e.patch(t,c),e.applyData(t,c)},tableCell:function(e,t){var n={type:"element",tagName:"td",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},tableRow:function(e,t,n){for(var r=n?n.children:void 0,o=0===(r?r.indexOf(t):1)?"th":"td",a=n&&"table"===n.type?n.align:void 0,i=a?a.length:t.children.length,s=-1,l=[];++s0&&n.push({type:"text",value:"\n"}),n}function On(e,t){var n=Tn(e,t),r=n.one(e,null),o=function(e){for(var t=[],n=-1;++n1?"-"+l:""),dataFootnoteBackref:!0,className:["data-footnote-backref"],ariaLabel:e.footnoteBackLabel},children:[{type:"text",value:"\u21a9"}]};l>1&&u.children.push({type:"element",tagName:"sup",children:[{type:"text",value:String(l)}]}),c.length>0&&c.push({type:"text",value:" "}),c.push(u)}var d=o[o.length-1];if(d&&"element"===d.type&&"p"===d.tagName){var p,f=d.children[d.children.length-1];f&&"text"===f.type?f.value+=" ":d.children.push({type:"text",value:" "}),(p=d.children).push.apply(p,c)}else o.push.apply(o,c);var m={type:"element",tagName:"li",properties:{id:e.clobberPrefix+"fn-"+s},children:e.wrap(o,!0)};e.patch(r,m),t.push(m)}}if(0!==t.length)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:e.footnoteLabelTagName,properties:(0,a.Z)((0,a.Z)({},JSON.parse(JSON.stringify(e.footnoteLabelProperties))),{},{id:"footnote-label"}),children:[{type:"text",value:e.footnoteLabel}]},{type:"text",value:"\n"},{type:"element",tagName:"ol",properties:{},children:e.wrap(t,!0)},{type:"text",value:"\n"}]}}(n);return o&&r.children.push({type:"text",value:"\n"},o),Array.isArray(r)?{type:"root",children:r}:r}var Rn=function(e,t){return e&&"run"in e?function(e,t){return function(n,r,o){e.run(On(n,t),r,(function(e){o(e)}))}}(e,t):function(e){return function(t){return On(t,e)}}(e||t)};var Nn=n(52007),Mn=(0,_.Z)((function e(t,n,r){(0,w.Z)(this,e),this.property=t,this.normal=n,r&&(this.space=r)}));function Ln(e,t){for(var n={},r={},o=-1;++oo||-1!==(o=t.indexOf("#"))&&r>o?t:"javascript:void(0)"}var Er={}.hasOwnProperty,Sr=new Set(["table","thead","tbody","tfoot","tr"]);function wr(e,t){for(var n,r=[],o=-1;++o0?s.createElement(h,u,p):s.createElement(h,u)}function Tr(e,t){for(var n=-1,r=0;++n4&&"data"===n.slice(0,4)&&dr.test(t)){if("-"===t.charAt(4)){var a=t.slice(5).replace(pr,hr);r="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{var i=t.slice(4);if(!pr.test(i)){var s=i.replace(fr,mr);"-"!==s.charAt(0)&&(s="-"+s),t="data"+s}}o=$n}return new o(r,t)}(r.schema,t),a=n;null!==a&&void 0!==a&&a===a&&(Array.isArray(a)&&(a=o.commaSeparated?function(e,t){var n=t||{};return(""===e[e.length-1]?[].concat((0,S.Z)(e),[""]):e).join((n.padRight?" ":"")+","+(!1===n.padLeft?"":" ")).trim()}(a):a.join(" ").trim()),"style"===o.property&&"string"===typeof a&&(a=function(e){var t={};try{vr(e,n)}catch(r){}return t;function n(e,n){var r="-ms-"===e.slice(0,4)?"ms-".concat(e.slice(4)):e;t[r.replace(/-([a-z])/g,Cr)]=n}}(a)),o.space&&o.property?e[Er.call(gr,o.property)?gr[o.property]:o.property]=a:o.attribute&&(e[o.attribute]=a))}function Cr(e,t){return t.toUpperCase()}var Ar={}.hasOwnProperty,kr={plugins:{to:"remarkPlugins",id:"change-plugins-to-remarkplugins"},renderers:{to:"components",id:"change-renderers-to-components"},astPlugins:{id:"remove-buggy-html-in-markdown-parser"},allowDangerousHtml:{id:"remove-buggy-html-in-markdown-parser"},escapeHtml:{id:"remove-buggy-html-in-markdown-parser"},source:{to:"children",id:"change-source-to-children"},allowNode:{to:"allowElement",id:"replace-allownode-allowedtypes-and-disallowedtypes"},allowedTypes:{to:"allowedElements",id:"replace-allownode-allowedtypes-and-disallowedtypes"},disallowedTypes:{to:"disallowedElements",id:"replace-allownode-allowedtypes-and-disallowedtypes"},includeNodeIndex:{to:"includeElementIndex",id:"change-includenodeindex-to-includeelementindex"}};function Ir(e){for(var t in kr)if(Ar.call(kr,t)&&Ar.call(e,t)){var n=kr[t];console.warn("[react-markdown] Warning: please ".concat(n.to?"use `".concat(n.to,"` instead of"):"remove"," `").concat(t,"` (see <").concat("https://github.com/remarkjs/react-markdown/blob/main/changelog.md","#").concat(n.id,"> for more info)")),delete kr[t]}var r=q().use(en).use(e.remarkPlugins||[]).use(Rn,(0,a.Z)((0,a.Z)({},e.remarkRehypeOptions),{},{allowDangerousHtml:!0})).use(e.rehypePlugins||[]).use(lr,e),o=new B;"string"===typeof e.children?o.value=e.children:void 0!==e.children&&null!==e.children&&console.warn("[react-markdown] Warning: please pass a string as `children` (not: `".concat(e.children,"`)"));var i=r.runSync(r.parse(o),o);if("root"!==i.type)throw new TypeError("Expected a `root` node");var l=s.createElement(s.Fragment,{},wr({options:e,schema:ir,listDepth:0},i));return e.className&&(l=s.createElement("div",{className:e.className},l)),l}Ir.propTypes={children:Nn.string,className:Nn.string,allowElement:Nn.func,allowedElements:Nn.arrayOf(Nn.string),disallowedElements:Nn.arrayOf(Nn.string),unwrapDisallowed:Nn.bool,remarkPlugins:Nn.arrayOf(Nn.oneOfType([Nn.object,Nn.func,Nn.arrayOf(Nn.oneOfType([Nn.bool,Nn.string,Nn.object,Nn.func,Nn.arrayOf(Nn.any)]))])),rehypePlugins:Nn.arrayOf(Nn.oneOfType([Nn.object,Nn.func,Nn.arrayOf(Nn.oneOfType([Nn.bool,Nn.string,Nn.object,Nn.func,Nn.arrayOf(Nn.any)]))])),sourcePos:Nn.bool,rawSourcePos:Nn.bool,skipHtml:Nn.bool,includeElementIndex:Nn.bool,transformLinkUri:Nn.oneOfType([Nn.func,Nn.bool]),linkTarget:Nn.oneOfType([Nn.func,Nn.string]),transformImageUri:Nn.func,components:Nn.object};var Or=function(){var e=n(37624),t=(0,s.useState)([]),r=(0,i.Z)(t,2),o=r[0],h=r[1],S=(0,s.useState)(null),w=(0,i.Z)(S,2),_=w[0],T=w[1],x=(0,s.useState)([]),C=(0,i.Z)(x,2),A=C[0],k=C[1],I=(0,s.useState)(null),O=(0,i.Z)(I,2),R=O[0],N=O[1],M=(0,s.useState)([]),L=(0,i.Z)(M,2),P=L[0],D=L[1],Z=(0,s.useState)(null),B=(0,i.Z)(Z,2),z=B[0],F=B[1],U=(0,s.useState)(!1),j=(0,i.Z)(U,2),H=j[0],G=j[1],V=(0,v.v9)((function(e){return e.system.helpName})),W=(0,v.v9)((function(e){return e.system.helpTabName})),q=(0,b.TL)();var $,K=(0,s.useRef)(null);$=K,(0,s.useEffect)((function(){function e(e){$.current&&!$.current.contains(e.target)&&G(!1)}return document.addEventListener("mousedown",e),function(){document.removeEventListener("mousedown",e)}}),[$]),(0,s.useEffect)((function(){var t=0,n=0,r=0;if(e[V]){e[V].docs&&(T(e[V].docs.header),h(e[V].docs.links),t=e[V].docs.links.length),e[V].blog&&(F(e[V].blog.header),D(e[V].blog.links),n=e[V].blog.links.length),e[V].video&&(N(e[V].video.header),k(e[V].video.links),r=e[V].video.links.length);var o="docs",a=!1;0===t&&null===_&&"docs"===W&&(o=0!==r||null!==R?"video":"blog",a=!0),0===r&&null===R&&"video"===W&&(o=0!==t||null!==_?"docs":"blog",a=!0),0===n&&null===z&&"blog"===W&&(o=0!==t||null!==_?"docs":"video",a=!0),a&&q((0,E.IF)(o))}else h(e.help.docs.links),D([]),k([])}),[V,W,q,e,z,_,R]);var Y=(0,f.jsxs)(s.Fragment,{children:[_&&(0,f.jsxs)("div",{style:{paddingLeft:16,paddingRight:16},children:[(0,f.jsx)("div",{children:(0,f.jsx)(Ir,{children:"".concat(_)})}),(0,f.jsx)("div",{style:{borderBottom:"1px solid #dedede"}})]}),o&&o.map((function(e,t){return(0,f.jsx)(l.Z,{value:"".concat(t),children:(0,f.jsx)(g,{item:e,displayImage:!1})},"help-item-".concat(e))})),(0,f.jsx)("div",{style:{padding:16},children:(0,f.jsx)(m,{LeadingIcon:p.$E9,text:"Visit MinIO Documentation",link:"https://docs.min.io/?ref=con",color:"#C5293F"})})]}),X=(0,f.jsxs)(s.Fragment,{children:[R&&(0,f.jsxs)(s.Fragment,{children:[(0,f.jsx)("div",{style:{paddingLeft:16,paddingRight:16},children:(0,f.jsx)(Ir,{children:"".concat(R)})}),(0,f.jsx)("div",{style:{borderBottom:"1px solid #dedede"}})]}),A&&A.map((function(e,t){return(0,f.jsx)(l.Z,{value:"".concat(t),children:(0,f.jsx)(g,{item:e})},"help-item-".concat(e))})),(0,f.jsx)("div",{style:{padding:16},children:(0,f.jsx)(m,{LeadingIcon:p.$E9,text:"Visit MinIO Videos",link:"https://min.io/videos?ref=con",color:"#C5293F"})})]}),Q=(0,f.jsxs)(s.Fragment,{children:[z&&(0,f.jsxs)(s.Fragment,{children:[(0,f.jsx)("div",{style:{paddingLeft:16,paddingRight:16},children:(0,f.jsx)(Ir,{children:"".concat(z)})}),(0,f.jsx)("div",{style:{borderBottom:"1px solid #dedede"}})]}),P&&P.map((function(e,t){return(0,f.jsx)(l.Z,{value:"".concat(t),children:(0,f.jsx)(g,{item:e})},"help-item-".concat(e))})),(0,f.jsx)("div",{style:{padding:16},children:(0,f.jsx)(m,{LeadingIcon:p.$E9,text:"Visit MinIO Blog",link:"https://blog.min.io/?ref=con",color:"#C5293F"})})]});function J(e){return{id:"simple-tab-".concat(e),"aria-controls":"simple-tabpanel-".concat(e),style:{fontWeight:"bold"}}}return(0,f.jsxs)(s.Fragment,{children:[H&&(0,f.jsx)("div",{ref:K,style:{position:"absolute",zIndex:"10",background:"#F7F7F7 0% 0% no-repeat padding-box",borderRadius:"4px",width:754,boxShadow:"0px 0px 10px #0000001A",border:"1px solid #E5E5E5"},children:(0,f.jsxs)(p.xuv,{children:[(0,f.jsxs)("div",{style:{display:"flex",flexDirection:"row"},children:[(0,f.jsx)("div",{style:{padding:14},children:(0,f.jsx)(p.M9A,{style:{color:"#3874A6",width:16}})}),(0,f.jsx)("div",{style:{flexGrow:1},children:(0,f.jsxs)(c.Z,{value:W,onChange:function(e,t){q((0,E.IF)(t))},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[0!==o.length&&(0,f.jsx)(u.Z,(0,a.Z)({value:"docs",label:"Documentation"},J(0))),0!==A.length&&(0,f.jsx)(u.Z,(0,a.Z)({value:"video",label:"Video"},J(1))),0!==P.length&&(0,f.jsx)(u.Z,(0,a.Z)({value:"blog",label:"Blog"},J(2)))]})}),(0,f.jsx)("div",{style:{padding:10},children:(0,f.jsx)(p.hU,{onClick:function(){G(!1)},size:"small",children:(0,f.jsx)(p.eEZ,{style:{color:"#919191",width:12}})})})]}),(0,f.jsxs)(d.Z,{style:{maxHeight:400,overflowY:"auto"},children:[0!==o.length&&(0,f.jsx)(y.x,{index:"docs",value:W,children:Y}),0!==A.length&&(0,f.jsx)(y.x,{index:"video",value:W,children:X}),0!==P.length&&(0,f.jsx)(y.x,{index:"blog",value:W,children:Q})]})]})}),(0,f.jsx)(p.zxk,{id:null!==V&&void 0!==V?V:"help_button",icon:(0,f.jsx)(p.byK,{}),onClick:function(){G(!H)}})]})}},33713:function(e,t,n){"use strict";var r=n(72791),o=n(72455),a=n(80184),i=(0,o.Z)((function(e){return{linkText:{color:"#2781B0",fontWeight:600}}})),s=function(e,t,n){return(0,a.jsx)("a",{href:t,target:"_blank",className:n,children:e})};t.Z=function(){var e=i();return(0,a.jsxs)(r.Fragment,{children:[(0,a.jsx)("h2",{children:"What is the GNU AGPL v3?"}),(0,a.jsxs)("p",{children:['The GNU AGPL v3 is short for the "GNU Affero General Public License v3". It is a'," ",s("FOSS","https://en.wikipedia.org/wiki/Free_and_open-source_software",e.linkText)," ","license certified by the"," ",s("Free Software Foundation","https://www.fsf.org/",e.linkText)," ","and the Open Source Initiative. You can get a copy of the GNU AGPL v3 license with MinIO source code or at"," ",s("https://www.gnu.org/licenses/agpl-3.0.en.html","https://min.io/compliance?ref=con",e.linkText),"."]}),(0,a.jsx)("h2",{children:"What does it mean for me to comply with the GNU AGPL v3?"}),(0,a.jsx)("p",{children:"When you host or distribute MinIO over a network, the AGPL v3 applies to you. Any distribution or copying of MinIO software modified or not has to comply with the obligations specified in the AGPL v3 license. You must include the source code, full license text and the original copyright notice along with the object code."}),(0,a.jsxs)("p",{children:["We recommend the"," ",s("Free Software Foundation\u2019s interpretation","https://www.gnu.org/licenses/agpl-3.0.en.html",e.linkText)," ","of the GNU AGPL v3 license."]}),(0,a.jsx)("h2",{children:"Making combined or derivative works of MinIO"}),(0,a.jsx)("p",{children:"Creating combined or derivative works of MinIO requires all such works to be released under the same license."}),(0,a.jsx)("p",{children:"If MinIO source code is included in the same executable file, they are definitely combined in one program. If modules are designed to run linked together in a shared address space, that almost surely means combining them into one program."}),(0,a.jsx)("p",{children:"By contrast, pipes, sockets, RESTful APIs, and command-line arguments are communication mechanisms normally used between two separate programs. So when they are used for communication, the modules normally are separate programs. But if the semantics of the communication are intimate enough, exchanging complex internal data structures, that too could be a basis to consider the two parts as combined into a larger program."}),(0,a.jsxs)("p",{children:["Merely aggregating MinIO software into your distribution does not constitute derivative works. For more information, please refer to the"," ",s("GPL FAQ","https://www.gnu.org/licenses/gpl-faq.en.html#MereAggregation",e.linkText),"."]}),(0,a.jsx)("p",{}),(0,a.jsx)("h2",{children:"Talking to your Legal Counsel"}),(0,a.jsx)("p",{children:"If you have questions, we recommend that you talk to your own attorney for legal advice. Purchasing a commercial license from MinIO removes the GNU AGPL v3 obligations from MinIO software."})]})}},88824:function(e,t,n){"use strict";n(72791);var r=n(80184);t.Z=function(){return(0,r.jsx)("a",{className:"link-text",href:"https://min.io/compliance?ref=con",children:"GNU AGPL v3"})}},59563:function(e,t,n){"use strict";n.d(t,{eu:function(){return i},hm:function(){return a}});var r=(0,n(96382).oM)({name:"license",initialState:{faqModalOpen:!1},reducers:{openFAQModal:function(e){e.faqModalOpen=!0},closeFAQModal:function(e){e.faqModalOpen=!1}}}),o=r.actions,a=o.openFAQModal,i=o.closeFAQModal;t.ZP=r.reducer},78290:function(e,t,n){"use strict";n.d(t,{RY:function(){return h},u9:function(){return v},Of:function(){return m},a6:function(){return p},eo:function(){return b},zR:function(){return g},Y0:function(){return w},BK:function(){return y},NI:function(){return S}});var r=n(64554),o=n(88824),a=n(59563),i=n(81551),s=(n(72791),n(56028)),l=n(33713),c=n(78687),u=n(80184),d=function(){var e=(0,i.TL)(),t=(0,c.v9)((function(e){return e.license.faqModalOpen}));return(0,u.jsx)(s.Z,{modalOpen:t,title:"License FAQ",onClose:function(){e((0,a.eu)())},children:(0,u.jsx)(l.Z,{})})},p={COMMUNITY:"community",STANDARD:"standard",ENTERPRISE:"enterprise"},f=function(e){var t=e.text,n=e.anchor;return(0,u.jsx)("a",{href:"https://min.io/product/subnet?ref=con#".concat(n),className:"link-text",target:"_blank",rel:"noopener ",style:{color:"#2781B0"},children:t})},m=[{label:"License ",isHeader:!0},{label:"",isHeader:!1,style:{height:"400px",verticalAlign:"top",alignItems:"start"}},{desc:"Features",featureTitleRow:!0},{desc:"Unit Price"},{desc:function(){return(0,u.jsx)(f,{anchor:"sa-long-term-support",text:"Software Release"})}},{desc:"SLA"},{desc:"Support"},{desc:"Critical Security and Bug Detection"},{desc:function(){return(0,u.jsx)(f,{anchor:"sa-panic-button",text:"Panic Button"})}},{desc:function(){return(0,u.jsx)(f,{anchor:"sa-healthcheck",text:"Health Diagnostics"})}},{desc:"Annual Architecture Review"},{desc:"Annual Performance Review"},{desc:"Indemnification"},{desc:"Security and Policy Review"}],h=[{label:"Community",isHeader:!0,style:{borderBottom:0}},{label:function(){return(0,u.jsx)(r.Z,{sx:{textAlign:"left"},children:(0,u.jsxs)("span",{children:["Designed for developers who are building open source applications in compliance with the ",(0,u.jsx)(o.Z,{})," license, MinIO Trademarks and are able to self support themselves. It is fully featured. If you distribute, host or create derivative works of the MinIO software over the network, the ",(0,u.jsx)(o.Z,{})," license requires that you also distribute the complete, corresponding source code of the combined work under the same ",(0,u.jsx)(o.Z,{})," license. This requirement applies whether or not you modified MinIO.",(0,u.jsx)("br",{}),(0,u.jsx)("br",{}),(0,u.jsx)("span",{className:"link-text",onClick:function(){i.ZP.dispatch((0,a.hm)())},children:"Compliance FAQ"}),(0,u.jsx)(d,{})]})})},isHeader:!1,style:{height:"400px",borderBottom:0}},{id:"com_feat_title",featureTitleRow:!0},{id:"com_license_cost"},{id:"com_release",label:"Upstream"},{id:"com_sla",label:"No SLA"},{id:"com_support",label:"Community:",detail:"Slack + GitHub"},{id:"com_security",label:"Self"},{id:"com_panic",xsLabel:"N/A"},{id:"com_diag",xsLabel:"N/A"},{id:"com_arch",xsLabel:"N/A"},{id:"com_perf",xsLabel:"N/A"},{id:"com_indemnity",xsLabel:"N/A"},{id:"com_sec_policy",xsLabel:"N/A"}],g=[{label:"Standard",isHeader:!0,style:{borderBottom:0}},{isHeader:!1,label:function(){return(0,u.jsxs)(r.Z,{sx:{marginTop:"-85px",textAlign:"left"},children:[(0,u.jsxs)("span",{children:["Designed for customers who require a commercial license and can mostly self-support but want the peace of mind that comes with the MinIO Subscription Network\u2019s suite of operational capabilities and direct-to-engineer interaction. The Standard version is fully featured but with SLA limitations. ",(0,u.jsx)("br",{})," ",(0,u.jsx)("br",{})," To learn more about the MinIO Subscription Network"]})," ",(0,u.jsx)("a",{href:"https://min.io/product/subnet?ref=con",className:"link-text",target:"_blank",rel:"noopener",children:"click here"}),"."]})},style:{height:"400px",borderBottom:0}},{id:"std_feat_title",featureTitleRow:!0},{id:"std_license_cost",label:function(){return(0,u.jsx)(r.Z,{sx:{fontSize:"16px",fontWeight:600},children:"$10 per TiB per month"})},detail:function(){return(0,u.jsx)(r.Z,{sx:{fontSize:"14px",fontWeight:400,marginBottom:"5px"},children:"(Minimum of 100TiB)"})}},{id:"std_release",label:"1 Year Long Term Support"},{id:"std_sla",label:"<48 Hours",detail:"(Local Business Hours)"},{id:"std_support",label:"L4 Direct Engineering",detail:"support via SUBNET"},{id:"std_security",label:"Continuous Scan and Alert"},{id:"std_panic",label:"1 Per year"},{id:"std_diag",label:"24/7/365"},{id:"std_arch",xsLabel:"N/A"},{id:"std_perf",xsLabel:"N/A"},{id:"std_indemnity",xsLabel:"N/A"},{id:"std_sec_policy",xsLabel:"N/A"}],v=[{label:"Enterprise",isHeader:!0,style:{borderBottom:0}},{isHeader:!1,label:function(){return(0,u.jsxs)(r.Z,{sx:{marginTop:"-135px",textAlign:"left"},children:[(0,u.jsxs)("span",{children:["Designed for mission critical environments where both a license and strict SLAs are required. The Enterprise version is fully featured but comes with additional capabilities. ",(0,u.jsx)("br",{})," ",(0,u.jsx)("br",{})," To learn more about the MinIO Subscription Network"]})," ",(0,u.jsx)("a",{href:"https://min.io/product/subnet?ref=con",className:"link-text",target:"_blank",rel:"noopener",children:"click here"}),"."]})},style:{height:"400px",borderBottom:0}},{id:"end_feat_title",featureTitleRow:!0},{id:"ent_license_cost",label:function(){return(0,u.jsx)(r.Z,{sx:{fontSize:"16px",fontWeight:600},children:"$20 per TiB per month"})},detail:function(){return(0,u.jsx)(r.Z,{sx:{fontSize:"14px",fontWeight:400,marginBottom:"5px"},children:"(Minimum of 100TiB)"})}},{id:"ent_release",label:"5 Years Long Term Support"},{id:"ent_sla",label:"<1 hour"},{id:"ent_support",label:"L4 Direct Engineering support via",detail:"SUBNET, Phone, Web Conference"},{id:"ent_security",label:"Continuous Scan and Alert"},{id:"ent_panic",label:"Unlimited"},{id:"ent_diag",label:"24/7/365"},{id:"ent_arch",yesIcon:!0},{id:"ent_perf",yesIcon:!0},{id:"ent_indemnity",yesIcon:!0},{id:"ent_sec_policy",yesIcon:!0}],b=[p.STANDARD,p.ENTERPRISE],y=function(e){return"function"===typeof e?e():e},E="agpl_minio_license_consent",S=function(){localStorage.setItem(E,"true")},w=function(){return"true"===localStorage.getItem(E)}},69129:function(e,t,n){"use strict";n.d(t,{Qo:function(){return s},i1:function(){return l},v0:function(){return c}});var r=n(96382),o=n(99779),a=(0,r.oM)({name:"logs",initialState:{logMessages:[],logsStarted:!1},reducers:{logMessageReceived:function(e,t){var n=e.logMessages,r=o.ou.fromFormat(t.payload.time.toString(),"HH:mm:ss z MM/dd/yyyy",{zone:"UTC"}).toJSDate();if(n.length>0&&1===r.getFullYear()&&""!==t.payload.ConsoleMsg)for(var a in n)1===n[a].time.getFullYear()&&(n[a].ConsoleMsg="".concat(n[a].ConsoleMsg,"\n").concat(t.payload.ConsoleMsg));else n.push(t.payload);e.logMessages=n},logResetMessages:function(e){e.logMessages=[]},setLogsStarted:function(e,t){e.logsStarted=t.payload}}}),i=a.actions,s=i.logMessageReceived,l=i.logResetMessages,c=i.setLogsStarted;t.ZP=a.reducer},35977:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return Z}});var r=n(72791),o=n(57689),a=n(56087),i=n(7241),s=n(50099),l=n(29439),c=n(1413),u=n(29945),d=n(11135),p=n(40986),f=n(61889),m=n(23814),h=n(38442),g=n(59114),v=n(49535),b=n(87995),y=n(81551),E=n(78687),S=n(46078),w=n(73996),_=n(27454),T=n(81806),x=n(72455),C=n(45248),A=n(47974),k=n(31776),I=n(82342),O=n(54756),R=n(99670),N=n(80184),M=(0,x.Z)((function(e){return(0,d.Z)((0,c.Z)((0,c.Z)({bucketList:{marginTop:25,height:"calc(100vh - 211px)","&.isEmbedded":{height:"calc(100vh - 128px)"}},searchField:(0,c.Z)((0,c.Z)({},m.qg.searchField),{},{minWidth:380,"@media (max-width: 900px)":{minWidth:220}})},m.OR),m.Bz))})),L=function(){var e=(0,y.TL)(),t=(0,o.s0)(),n=M(),i=(0,r.useState)([]),s=(0,l.Z)(i,2),c=s[0],d=s[1],m=(0,r.useState)(!0),x=(0,l.Z)(m,2),L=x[0],P=x[1],D=(0,r.useState)(""),Z=(0,l.Z)(D,2),B=Z[0],z=Z[1],F=(0,E.v9)(S.$4),U=!(null===F||void 0===F||!F.includes("object-browser-only"));(0,r.useEffect)((function(){if(L){P(!0),k.h.buckets.listBuckets().then((function(t){t.data&&(P(!1),d(t.data.buckets||[]),e((0,O.Cn)(!0)))})).catch((function(t){P(!1),e((0,b.Ih)((0,I.g)(t)))}))}}),[L,e]);var j=c.filter((function(e){return""===B||e.name.indexOf(B)>=0})),H=c.length>0,G=(0,v.Z)("*",[a.Ft.S3_LIST_BUCKET,a.Ft.S3_ALL_LIST_BUCKET]),V=[{type:"view",onClick:function(e){t("".concat(a.gA.OBJECT_BROWSER_VIEW,"/").concat(e.name))}}];return(0,r.useEffect)((function(){e((0,b.Sc)("object_browser"))}),[e]),(0,N.jsxs)(r.Fragment,{children:[!U&&(0,N.jsx)(A.Z,{label:"Object Browser",actions:(0,N.jsx)(R.Z,{})}),(0,N.jsxs)(u.Xgh,{children:[(0,N.jsxs)(f.ZP,{item:!0,xs:12,className:n.actionsTray,display:"flex",children:[U&&(0,N.jsx)(f.ZP,{item:!0,xs:!0,children:(0,N.jsx)(w.Z,{marginRight:15,marginTop:10})}),H&&(0,N.jsx)(g.Z,{onChange:z,placeholder:"Filter Buckets",overrideClass:n.searchField,value:B}),(0,N.jsx)(f.ZP,{item:!0,xs:12,display:"flex",alignItems:"center",justifyContent:"flex-end",sx:{"& button":{marginLeft:"8px"}},children:(0,N.jsx)(_.Z,{tooltip:"Refresh",children:(0,N.jsx)(u.zxk,{id:"refresh-buckets",onClick:function(){P(!0)},icon:(0,N.jsx)(u.DuK,{}),variant:"regular"})})})]}),L&&(0,N.jsx)(p.Z,{}),!L&&(0,N.jsxs)(f.ZP,{item:!0,xs:12,className:"".concat(n.bucketList," ").concat(U?"isEmbedded":""),children:[0!==j.length&&(0,N.jsx)(u.wQF,{isLoading:L,records:j,entityName:"Buckets",idField:"name",columns:[{label:"Name",elementKey:"name",renderFunction:function(e){return(0,N.jsxs)("div",{style:{display:"flex"},children:[(0,N.jsx)(u.wNb,{style:{width:15,marginRight:5,minWidth:15}}),(0,N.jsx)("span",{id:"browse-".concat(e),style:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",minWidth:0},children:e})]})}},{label:"Objects",elementKey:"objects",renderFunction:function(e){return e?e.toLocaleString():0}},{label:"Size",elementKey:"size",renderFunction:function(e){return(0,C.l5)(e||0)}},{label:"Access",elementKey:"rw_access",renderFullObject:!0,renderFunction:function(e){var t,n,r=[];return null!==(t=e.rw_access)&&void 0!==t&&t.read&&r.push("R"),null!==(n=e.rw_access)&&void 0!==n&&n.write&&r.push("W"),(0,N.jsx)("span",{children:r.join("/")})}}],itemActions:V}),0===j.length&&""!==B&&(0,N.jsx)(f.ZP,{container:!0,justifyContent:"center",alignContent:"center",alignItems:"center",children:(0,N.jsx)(f.ZP,{item:!0,xs:8,children:(0,N.jsx)(u.KfX,{iconComponent:(0,N.jsx)(u.wNb,{}),title:"No Results",help:(0,N.jsx)(r.Fragment,{children:"No buckets match the filtering condition"})})})}),!H&&(0,N.jsx)(f.ZP,{container:!0,justifyContent:"center",alignContent:"center",alignItems:"center",children:(0,N.jsx)(f.ZP,{item:!0,xs:8,children:(0,N.jsx)(u.KfX,{iconComponent:(0,N.jsx)(u.wNb,{}),title:"Buckets",help:(0,N.jsxs)(r.Fragment,{children:["MinIO uses buckets to organize objects. A bucket is similar to a folder or directory in a filesystem, where each bucket can hold an arbitrary number of objects.",(0,N.jsx)("br",{}),G?"":(0,N.jsxs)(r.Fragment,{children:[(0,N.jsx)("br",{}),(0,a.MK)([a.Ft.S3_LIST_BUCKET,a.Ft.S3_ALL_LIST_BUCKET],"view the buckets on this server"),(0,N.jsx)("br",{})]}),(0,N.jsxs)(h.s,{scopes:[a.Ft.S3_CREATE_BUCKET],resource:a.C3,children:[(0,N.jsx)("br",{}),"To get started,\xa0",(0,N.jsx)(T.Z,{onClick:function(){t(a.gA.ADD_BUCKETS)},children:"Create a Bucket."})]})]})})})})]})]})]})},P=r.lazy((function(){return Promise.all([n.e(5473),n.e(1715),n.e(5994),n.e(7391),n.e(222),n.e(8941),n.e(3801),n.e(5980),n.e(2603)]).then(n.bind(n,32603))})),D=r.lazy((function(){return Promise.all([n.e(5473),n.e(1715),n.e(977)]).then(n.bind(n,10977))})),Z=function(){return(0,N.jsxs)(o.Z5,{children:[(0,N.jsx)(o.AW,{path:a.gA.ADD_BUCKETS,element:(0,N.jsx)(r.Suspense,{fallback:(0,N.jsx)(i.Z,{}),children:(0,N.jsx)(D,{})})}),(0,N.jsx)(o.AW,{path:"/",element:(0,N.jsx)(r.Suspense,{fallback:(0,N.jsx)(i.Z,{}),children:(0,N.jsx)(L,{})})}),(0,N.jsx)(o.AW,{path:"/:bucketName/*",element:(0,N.jsx)(r.Suspense,{fallback:(0,N.jsx)(i.Z,{}),children:(0,N.jsx)(P,{})})}),(0,N.jsx)(o.AW,{path:":bucketName/",element:(0,N.jsx)(r.Suspense,{fallback:(0,N.jsx)(i.Z,{}),children:(0,N.jsx)(P,{})})}),(0,N.jsx)(o.AW,{element:(0,N.jsx)(o.Fg,{to:"/browser"}),path:"*"}),(0,N.jsx)(o.AW,{element:(0,N.jsx)(r.Suspense,{fallback:(0,N.jsx)(i.Z,{}),children:(0,N.jsx)(s.Z,{})})})]})}},54756:function(e,t,n){"use strict";n.d(t,{$y:function(){return U},Cn:function(){return S},EE:function(){return I},Eq:function(){return C},G4:function(){return E},Hg:function(){return Y},IJ:function(){return P},Im:function(){return w},Jn:function(){return Z},LD:function(){return y},M3:function(){return T},Mc:function(){return p},Pr:function(){return _},Qf:function(){return G},RO:function(){return f},RS:function(){return K},S2:function(){return F},SV:function(){return c},Su:function(){return O},XH:function(){return v},ZJ:function(){return M},ZR:function(){return Q},_D:function(){return V},_w:function(){return u},c8:function(){return $},d_:function(){return q},db:function(){return d},eP:function(){return j},ei:function(){return H},kQ:function(){return b},lF:function(){return g},lS:function(){return D},lY:function(){return B},lr:function(){return R},mz:function(){return x},oK:function(){return m},o_:function(){return L},qJ:function(){return h},rI:function(){return W},rW:function(){return z},s:function(){return N},vH:function(){return A},vb:function(){return k},xV:function(){return X}});var r=n(93433),o=n(1413),a=n(96382),i={selectedBucket:"",versionsMode:!1,loadingObjects:!0,objectDetailsOpen:!1,loadingVersions:!0,loadingObjectInfo:!0,connectionError:!1,rewind:(0,o.Z)({},{rewindEnabled:!1,bucketToRewind:"",dateToRewind:null}),objectManager:{objectsToManage:[],managerOpen:!1,newItems:!1,startedItems:[],currentDownloads:[],currentUploads:[]},searchObjects:"",versionedFile:"",searchVersions:"",selectedVersion:"",showDeleted:!1,selectedInternalPaths:null,simplePath:null,records:[],loadRecords:!0,loadingVersioning:!0,versionInfo:{},lockingEnabled:!1,loadingLocking:!0,selectedObjects:[],downloadRenameModal:null,selectedPreview:null,previewOpen:!1,shareFileModalOpen:!1,isOpeningObjectDetail:!1,anonymousAccessOpen:!1,retentionConfig:{mode:void 0,unit:void 0,validity:0},longFileOpen:!1},s=(0,a.oM)({name:"objectBrowser",initialState:i,reducers:{setRewindEnable:function(e,t){e.rewind.rewindEnabled=t.payload.state,e.rewind.bucketToRewind=t.payload.bucket,e.rewind.dateToRewind=t.payload.dateRewind},resetRewind:function(e){e.rewind.rewindEnabled=!1,e.rewind.bucketToRewind="",e.rewind.dateToRewind=null},setVersionsModeEnabled:function(e,t){var n="";t.payload.objectName&&(n=t.payload.objectName);var r=t.payload.status?n:"";e.versionsMode=t.payload.status,e.versionedFile=r,e.selectedVersion=""},setNewObject:function(e,t){e.objectManager.objectsToManage.push(t.payload),e.objectManager.newItems=!0},updateProgress:function(e,t){var n=e.objectManager.objectsToManage.findIndex((function(e){return e.instanceID===t.payload.instanceID}));-1!==n&&(e.objectManager.objectsToManage[n].percentage=t.payload.progress,e.objectManager.objectsToManage[n].waitingForFile=!1)},completeObject:function(e,t){var n=e.objectManager.objectsToManage.findIndex((function(e){return e.instanceID===t.payload}));if(-1!==n){e.objectManager.objectsToManage[n].percentage=100,e.objectManager.objectsToManage[n].waitingForFile=!1,e.objectManager.objectsToManage[n].done=!0;var r=e.objectManager.objectsToManage[n].type,o=e.objectManager.objectsToManage[n].ID;"download"===r?e.objectManager.currentDownloads=e.objectManager.currentDownloads.filter((function(e){return e!==o})):"upload"===r&&(e.objectManager.currentUploads=e.objectManager.currentUploads.filter((function(e){return e!==o})))}},failObject:function(e,t){var n=e.objectManager.objectsToManage.findIndex((function(e){return e.instanceID===t.payload.instanceID}));e.objectManager.objectsToManage[n].failed=!0,e.objectManager.objectsToManage[n].waitingForFile=!1,e.objectManager.objectsToManage[n].done=!0,e.objectManager.objectsToManage[n].errorMessage=t.payload.msg;var r=e.objectManager.objectsToManage[n].type,o=e.objectManager.objectsToManage[n].ID;"download"===r?e.objectManager.currentDownloads=e.objectManager.currentDownloads.filter((function(e){return e!==o})):"upload"===r&&(e.objectManager.currentUploads=e.objectManager.currentUploads.filter((function(e){return e!==o})))},cancelObjectInList:function(e,t){var n=e.objectManager.objectsToManage.findIndex((function(e){return e.instanceID===t.payload}));if(-1===n)return(0,o.Z)({},e);e.objectManager.objectsToManage[n].cancelled=!0,e.objectManager.objectsToManage[n].done=!0,e.objectManager.objectsToManage[n].percentage=0;var r=e.objectManager.objectsToManage[n].type,a=e.objectManager.objectsToManage[n].ID;"download"===r?e.objectManager.currentDownloads=e.objectManager.currentDownloads.filter((function(e){return e!==a})):"upload"===r&&(e.objectManager.currentUploads=e.objectManager.currentUploads.filter((function(e){return e!==a})))},deleteFromList:function(e,t){var n=e.objectManager.objectsToManage.filter((function(e){return e.instanceID!==t.payload}));e.objectManager.objectsToManage=n,e.objectManager.managerOpen=0!==n.length&&e.objectManager.managerOpen},cleanList:function(e){var t=e.objectManager.objectsToManage.filter((function(e){return 100!==e.percentage}));e.objectManager.objectsToManage=t,e.objectManager.managerOpen=0!==t.length&&e.objectManager.managerOpen,e.objectManager.newItems=!1},toggleList:function(e){e.objectManager.managerOpen=!e.objectManager.managerOpen,e.objectManager.newItems=!1},openList:function(e){e.objectManager.managerOpen=!0},closeList:function(e){e.objectManager.managerOpen=!1},setSearchObjects:function(e,t){e.searchObjects=t.payload},setLoadingObjects:function(e,t){e.loadingObjects=t.payload},setSearchVersions:function(e,t){e.searchVersions=t.payload},setSelectedVersion:function(e,t){e.selectedVersion=t.payload},setShowDeletedObjects:function(e,t){e.showDeleted=t.payload},setLoadingVersions:function(e,t){e.loadingVersions=t.payload},setLoadingObjectInfo:function(e,t){e.loadingObjectInfo=t.payload},setObjectDetailsView:function(e,t){e.objectDetailsOpen=t.payload,e.selectedInternalPaths=t.payload?e.selectedInternalPaths:null},setSelectedObjectView:function(e,t){e.selectedInternalPaths=t.payload},setSimplePathHandler:function(e,t){e.simplePath=t.payload},newDownloadInit:function(e,t){e.objectManager.currentDownloads=[].concat((0,r.Z)(e.objectManager.currentDownloads),[t.payload])},newUploadInit:function(e,t){e.objectManager.currentUploads=[].concat((0,r.Z)(e.objectManager.currentUploads),[t.payload])},setRecords:function(e,t){e.records=t.payload},setLoadingVersioning:function(e,t){e.loadingVersioning=t.payload},setIsVersioned:function(e,t){e.versionInfo=t.payload},setLockingEnabled:function(e,t){e.lockingEnabled=t.payload},setLoadingLocking:function(e,t){e.loadingLocking=t.payload},newMessage:function(e,t){e.records=[].concat((0,r.Z)(e.records),(0,r.Z)(t.payload))},resetMessages:function(e){e.records=[]},setLoadingRecords:function(e,t){e.loadRecords=t.payload},setSelectedObjects:function(e,t){e.selectedObjects=t.payload},setDownloadRenameModal:function(e,t){e.downloadRenameModal=t.payload},setSelectedPreview:function(e,t){e.selectedPreview=t.payload},setPreviewOpen:function(e,t){e.previewOpen=t.payload},setShareFileModalOpen:function(e,t){e.shareFileModalOpen=t.payload},restoreLocalObjectList:function(e,t){var n=e.records.findIndex((function(e){return e.name===t.payload.prefix}));n>=0&&(e.records[n].delete_flag=t.payload.objectInfo.is_delete_marker,e.records[n].size=t.payload.objectInfo.size||0)},setIsOpeningOD:function(e,t){e.isOpeningObjectDetail=t.payload},setRetentionConfig:function(e,t){e.retentionConfig=t.payload},setSelectedBucket:function(e,t){e.selectedBucket=t.payload},setLongFileOpen:function(e,t){e.longFileOpen=t.payload},setAnonymousAccessOpen:function(e,t){e.anonymousAccessOpen=t.payload},errorInConnection:function(e,t){e.connectionError=t.payload,t.payload&&(e.loadingObjects=!1,e.loadingObjectInfo=!1,e.objectDetailsOpen=!1)}}}),l=s.actions,c=l.setRewindEnable,u=l.resetRewind,d=l.setVersionsModeEnabled,p=l.setNewObject,f=l.updateProgress,m=l.completeObject,h=l.failObject,g=l.deleteFromList,v=l.cleanList,b=l.toggleList,y=l.openList,E=(l.closeList,l.setSearchObjects),S=l.setLoadingObjects,w=l.cancelObjectInList,_=l.setSearchVersions,T=l.setSelectedVersion,x=l.setShowDeletedObjects,C=l.setLoadingVersions,A=l.setLoadingObjectInfo,k=l.setObjectDetailsView,I=l.setSelectedObjectView,O=l.setSimplePathHandler,R=l.newDownloadInit,N=l.newUploadInit,M=l.setRecords,L=l.resetMessages,P=l.setLoadingVersioning,D=l.setIsVersioned,Z=l.setLoadingLocking,B=l.setLockingEnabled,z=l.newMessage,F=l.setSelectedObjects,U=l.setDownloadRenameModal,j=l.setSelectedPreview,H=l.setPreviewOpen,G=l.setShareFileModalOpen,V=l.setLoadingRecords,W=l.restoreLocalObjectList,q=l.setIsOpeningOD,$=l.setRetentionConfig,K=l.setSelectedBucket,Y=l.setLongFileOpen,X=l.setAnonymousAccessOpen,Q=l.errorInConnection;t.ZP=s.reducer},76610:function(e,t,n){"use strict";n.d(t,{B4:function(){return l},EN:function(){return a},GM:function(){return c},Gy:function(){return i},N5:function(){return s},YO:function(){return u}});var r={},o={},a=function(e,t){r[e]=t},i=function(e){return r[e]},s=function(e,t){o[e]=t},l=function(e){return o[e]},c=function(e){delete r[e],delete o[e]},u=function(e){for(var t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r=0;r0&&(A=t.map((function(e){return{label:"".concat(e.displayName).concat(e.serviceType?" - ".concat(e.serviceType):""),value:e.redirect,icon:(0,h.jsx)(i.R0g,{})}})),C=[{label:"Use Credentials",value:"use-sts-cred"},{label:"Use STS",value:"use-sts"}]);var k=function(e){window.location.href=e};return(0,h.jsxs)(o.Fragment,{children:[t.length>0&&(0,h.jsx)(o.Fragment,{children:(0,h.jsxs)(i.xuv,{sx:{marginBottom:40},children:[(0,h.jsx)(i.zxk,{id:"SSOSelector",variant:"subAction",label:1===t.length?"".concat(t[0].displayName).concat(t[0].serviceType?" - ".concat(t[0].serviceType):""):"Login with SSO",fullWidth:!0,sx:{height:50},onClick:function(e){if(t.length>1)return l(!s),void y(e.currentTarget);k("".concat(t[0].redirect))}}),t.length>1&&(0,h.jsx)(i.udT,{id:"redirect-rules",options:A,selectedOption:"",onSelect:function(e){return k(e)},hideTriggerAction:function(){l(!1)},open:s,anchorEl:b})]})}),(0,h.jsxs)("form",{noValidate:!0,onSubmit:function(e){e.preventDefault(),n((0,d.DZ)())},style:{width:"100%"},children:[(T&&t.length>0||0===t.length)&&(0,h.jsxs)(o.Fragment,{children:[(0,h.jsxs)(i.rjZ,{container:!0,sx:{marginTop:t.length>0?55:0},children:[(0,h.jsx)(i.rjZ,{item:!0,xs:12,sx:{marginBottom:14},children:(0,h.jsx)(i.Wzg,{fullWidth:!0,id:"accessKey",value:E,onChange:function(e){return n((0,p.Jp)(e.target.value))},placeholder:_?"STS Username":"Username",name:"accessKey",autoComplete:"username",disabled:x,startIcon:(0,h.jsx)(i.uIx,{})})}),(0,h.jsx)(i.rjZ,{item:!0,xs:12,sx:{marginBottom:_?14:0},children:(0,h.jsx)(i.Wzg,{fullWidth:!0,value:S,onChange:function(e){return n((0,p.xz)(e.target.value))},name:"secretKey",type:"password",id:"secretKey",autoComplete:"current-password",disabled:x,placeholder:_?"STS Secret":"Password",startIcon:(0,h.jsx)(i.EPS,{})})}),_&&(0,h.jsx)(i.rjZ,{item:!0,xs:12,children:(0,h.jsx)(i.Wzg,{fullWidth:!0,id:"sts",value:w,onChange:function(e){return n((0,p.yL)(e.target.value))},placeholder:"STS Token",name:"STS",autoComplete:"sts",disabled:x,startIcon:(0,h.jsx)(i.tvm,{})})})]}),(0,h.jsx)(i.rjZ,{item:!0,xs:12,sx:{textAlign:"right",marginTop:30},children:(0,h.jsx)(i.zxk,{type:"submit",variant:"callAction",color:"primary",id:"do-login",disabled:!_&&(""===E||""===S)||_&&(""===E||""===S||""===w)||x,label:"Login",sx:{margin:"30px 0px 8px",height:40,width:"100%",boxShadow:"none",padding:"16px 30px"},fullWidth:!0})}),(0,h.jsx)(i.rjZ,{item:!0,xs:12,sx:{height:10},children:x&&(0,h.jsx)(m.Z,{})})]}),(0,h.jsx)(i.rjZ,{item:!0,xs:12,sx:{marginTop:45},children:(0,h.jsx)(i.PhF,{id:"alternativeMethods",name:"alternativeMethods",fixedLabel:"Other Authentication Methods",options:C,onChange:function(e){if(e){if(t.length>0){var r=!0;return"use-sts-cred"===e&&(r=!1),n((0,p.ZC)(r)),void n((0,p.Cw)(!0))}if(e.includes("use-sts"))return void n((0,p.ZC)(!_))}},value:""})})]})]})},v=n(9478),b=function(e,t){if(e.displayName&&t.displayName){if(e.displayName>t.displayName)return 1;if(e.displayName0&&(T=(0,r.Z)(f.redirectRules).sort(b)),e=(0,h.jsx)(g,{redirectRules:T});break;default:e=(0,h.jsx)(i.xuv,{sx:{textAlign:"center","& .loadingLoginStrategy":{textAlign:"center",width:40,height:40},"& .buttonRetry":{display:"flex",justifyContent:"center"}},children:m?(0,h.jsx)(i.aNw,{className:"loadingLoginStrategy"}):(0,h.jsxs)(o.Fragment,{children:[(0,h.jsx)(i.xuv,{children:(0,h.jsxs)("p",{style:{textAlign:"center"},children:["An error has occurred",(0,h.jsx)("br",{}),"The backend cannot be reached."]})}),(0,h.jsx)("div",{className:"buttonRetry",children:(0,h.jsx)(i.zxk,{onClick:function(){t((0,d.hu)())},icon:(0,h.jsx)(i.DuK,{}),iconLocation:"end",variant:"regular",id:"retry",label:"Retry"})})]})})}var x="https://min.io/docs/minio/linux/index.html?ref=con";return w&&(x="https://min.io/docs/minio/kubernetes/upstream/index.html?ref=con"),(0,o.useEffect)((function(){t((0,y.Sc)("login"))}),[]),(0,h.jsxs)(o.Fragment,{children:[(0,h.jsx)(l.Z,{}),(0,h.jsx)(i.uce,{logoProps:{applicationName:"console",subVariant:(0,v.$G)()},form:e,formFooter:(0,h.jsxs)(i.xuv,{sx:{"& .separator":{marginLeft:4,marginRight:4}},children:[(0,h.jsx)("a",{href:x,target:"_blank",rel:"noopener",children:"Documentation"}),(0,h.jsx)("span",{className:"separator",children:"|"}),(0,h.jsx)("a",{href:"https://github.com/minio/minio",target:"_blank",rel:"noopener",children:"GitHub"}),(0,h.jsx)("span",{className:"separator",children:"|"}),(0,h.jsx)("a",{href:"https://subnet.min.io/?ref=con",target:"_blank",rel:"noopener",children:"Support"}),(0,h.jsx)("span",{className:"separator",children:"|"}),(0,h.jsx)("a",{href:"https://min.io/download/?ref=con",target:"_blank",rel:"noopener",children:"Download"})]}),promoHeader:(0,h.jsx)("span",{style:{fontSize:28},children:"High-Performance Object Store"}),promoInfo:(0,h.jsxs)("span",{style:{fontSize:14,lineHeight:1},children:["MinIO is a cloud-native object store built to run on any infrastructure - public, private or edge clouds. Primary use cases include data lakes, databases, AI/ML, SaaS applications and fast backup & recovery. MinIO is dual licensed under GNU AGPL v3 and commercial license. To learn more, visit"," ",(0,h.jsx)("a",{href:"https://min.io/?ref=con",target:"_blank",rel:"noopener",children:"www.min.io"}),"."]}),backgroundAnimation:_})]})}},62978:function(e,t,n){"use strict";n.d(t,{Cw:function(){return f},Fx:function(){return m},Jp:function(){return l},W3:function(){return p},ZC:function(){return u},xz:function(){return c},yL:function(){return d}});var r=n(96382),o=n(99288),a={accessKey:"",secretKey:"",sts:"",useSTS:!1,loginStrategy:{loginStrategy:void 0,redirectRules:[]},loginSending:!1,loadingFetchConfiguration:!0,latestMinIOVersion:"",loadingVersion:!0,isK8S:!1,backgroundAnimation:!1,navigateTo:"",ssoEmbeddedIDPDisplay:!1},i=(0,r.oM)({name:"login",initialState:a,reducers:{setAccessKey:function(e,t){e.accessKey=t.payload},setSecretKey:function(e,t){e.secretKey=t.payload},setUseSTS:function(e,t){e.useSTS=t.payload},setSTS:function(e,t){e.sts=t.payload},setNavigateTo:function(e,t){e.navigateTo=t.payload},setDisplayEmbeddedIDPForms:function(e,t){e.ssoEmbeddedIDPDisplay=t.payload},resetForm:function(e){return a}},extraReducers:function(e){e.addCase(o.BA.pending,(function(e,t){e.loadingVersion=!0})).addCase(o.BA.rejected,(function(e,t){e.loadingVersion=!1})).addCase(o.BA.fulfilled,(function(e,t){e.loadingVersion=!1,t.payload&&(e.latestMinIOVersion=t.payload)})).addCase(o.hu.pending,(function(e,t){e.loadingFetchConfiguration=!0})).addCase(o.hu.rejected,(function(e,t){e.loadingFetchConfiguration=!1})).addCase(o.hu.fulfilled,(function(e,t){e.loadingFetchConfiguration=!1,t.payload&&(e.loginStrategy=t.payload,e.isK8S=!!t.payload.isK8S,e.backgroundAnimation=!!t.payload.animatedLogin)})).addCase(o.DZ.pending,(function(e,t){e.loginSending=!0})).addCase(o.DZ.rejected,(function(e,t){e.loginSending=!1})).addCase(o.DZ.fulfilled,(function(e,t){e.loginSending=!1}))}}),s=i.actions,l=s.setAccessKey,c=s.setSecretKey,u=s.setUseSTS,d=s.setSTS,p=s.setNavigateTo,f=s.setDisplayEmbeddedIDPForms,m=s.resetForm;t.ZP=i.reducer},99288:function(e,t,n){"use strict";n.d(t,{BA:function(){return f},DZ:function(){return d},hu:function(){return p}});var r=n(74165),o=n(15861),a=n(96382),i=n(87995),s=n(62978),l=n(6067),c=n(31776),u=n(82342),d=(0,a.hg)("login/doLoginAsync",function(){var e=(0,o.Z)((0,r.Z)().mark((function e(t,n){var a,d,p,f,m,h,g,v,b;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=n.getState,d=n.rejectWithValue,p=n.dispatch,f=a(),m=f.login.accessKey,h=f.login.secretKey,g=f.login.sts,v=f.login.useSTS,b={accessKey:m,secretKey:h},v&&(b={accessKey:m,secretKey:h,sts:g}),e.abrupt("return",c.h.login.login(b).then((function(e){p((0,i.wr)(!0)),localStorage.setItem("userLoggedIn",m),p((0,s.W3)((0,l.getTargetPath)()))})).catch(function(){var e=(0,o.Z)((0,r.Z)().mark((function e(t){var n;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.json();case 2:return n=e.sent,p((0,i.Ih)((0,u.g)(n))),e.abrupt("return",d(!1));case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 9:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),p=(0,a.hg)("login/getFetchConfigurationAsync",function(){var e=(0,o.Z)((0,r.Z)().mark((function e(t,n){var a,s;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=n.dispatch,s=n.rejectWithValue,e.abrupt("return",c.h.login.loginDetail().then((function(e){if(e.data)return e.data})).catch(function(){var e=(0,o.Z)((0,r.Z)().mark((function e(t){var n;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.json();case 2:return n=e.sent,a((0,i.Ih)((0,u.g)(n))),e.abrupt("return",s(!1));case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 2:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),f=(0,a.hg)("login/getVersionAsync",function(){var e=(0,o.Z)((0,r.Z)().mark((function e(t,n){var a,s;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.getState,a=n.rejectWithValue,s=n.dispatch,e.abrupt("return",c.h.checkVersion.checkMinIoVersion().then((function(e){if(void 0!==e.data)return e.data.latest_version})).catch(function(){var e=(0,o.Z)((0,r.Z)().mark((function e(t){var n;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.json();case 2:return n=e.sent,s((0,i.Ih)((0,u.g)(n))),e.abrupt("return",a(!1));case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 2:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}())},98461:function(e,t,n){"use strict";n.d(t,{B:function(){return p}});var r=n(74165),o=n(15861),a=n(96382),i=n(87995),s=n(31776),l=n(82342),c=n(46078),u=n(96198),d=n(73921),p=(0,a.hg)("session/fetchSession",function(){var e=(0,o.Z)((0,r.Z)().mark((function e(t,n){var a,p,f,m,h,g;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=n.getState,p=n.dispatch,f=n.rejectWithValue,m=a(),h=m.system.locationPath.split("/"),g=h.length>2?h[1]:"",e.abrupt("return",s.h.session.sessionCheck().then((function(e){if(p((0,i.wr)(!0)),p((0,c.YL)(e.data)),p((0,i.Zv)(e.data.distributedMode||!1)),e.data.customStyles&&""!==e.data.customStyles){var t=(0,d.T)(e.data.customStyles);!1!==t&&p((0,i.qO)(t))}})).catch(function(){var e=(0,o.Z)((0,r.Z)().mark((function e(t){var n;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("browser"!==g){e.next=7;break}if(""!==(n=h.length>=3?h[2]:"")){e.next=4;break}return e.abrupt("return");case 4:s.h.buckets.listObjects(n,{limit:1},{headers:{"X-Anonymous":"1"}}).then((function(){p((0,i.AQ)())})).catch((function(e){p((0,i.Ih)((0,l.g)(e.error)))})).finally((function(){p((0,c.cJ)(u.e.Done))})),e.next=9;break;case 7:p((0,c.cJ)(u.e.Done)),p((0,i.Ih)((0,l.g)(t.error)));case 9:return e.abrupt("return",f(t.error));case 10:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 5:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}())},50099:function(e,t,n){"use strict";n.d(t,{Z:function(){return c}});n(72791);var r=n(64554),o=n(20890),a=n(50533),i=n(80184);function s(){return(0,i.jsxs)(o.Z,{variant:"body2",color:"textSecondary",align:"center",children:["Copyright \xa9 ",(0,i.jsx)(a.Z,{color:"inherit",href:"https://min.io/?ref=con",children:"MinIO"})," ",(new Date).getFullYear(),"."]})}var l=n(29945),c=function(){return(0,i.jsx)(l.Xgh,{children:(0,i.jsxs)(r.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",textAlign:"center",margin:"auto",flexFlow:"column"},children:[(0,i.jsx)(r.Z,{sx:{fontSize:"110%",margin:"0 0 0.25rem",color:"#909090"},children:"404 Error"}),(0,i.jsx)(r.Z,{sx:{fontStyle:"normal",fontSize:"clamp(2rem,calc(2rem + 1.2vw),3rem)",fontWeight:700},children:"Sorry, the page could not be found."}),(0,i.jsx)(r.Z,{mt:5,children:(0,i.jsx)(s,{})})]})})}},19847:function(e,t,n){"use strict";n.d(t,{x:function(){return l}});var r=n(1413),o=n(45987),a=n(72791),i=n(80184),s=["children","value","index"],l=function(e){var t=e.children,n=e.value,l=e.index,c=(0,o.Z)(e,s);return(0,i.jsx)("div",(0,r.Z)((0,r.Z)({role:"tabpanel",hidden:n!==l,id:"simple-tabpanel-".concat(l),"aria-labelledby":"simple-tab-".concat(l),style:{marginTop:"5px"}},c),{},{children:n===l&&(0,i.jsx)(a.Fragment,{children:t})}))}},81551:function(e,t,n){"use strict";n.d(t,{TL:function(){return _},h:function(){return w}});var r=n(78687),o=n(87781),a=n(96382),i=n(87995),s=n(62978),l=n(5172),c=n(69129),u=n(12808),d=n(10679),p=n(46078),f=n(64561),m=n(9859),h=n(54756),g=n(71080),v=n(74616),b=n(59563),y=n(36825),E=n(53669),S=(0,o.UY)({system:i.ZP,login:s.ZP,trace:l.ZP,logs:c.ZP,watch:d.ZP,console:p.ZP,addBucket:f.ZP,bucketDetails:m.ZP,objectBrowser:h.ZP,healthInfo:u.ZP,dashboard:g.ZP,register:y.ZP,createUser:v.ZP,license:b.ZP,destination:E.ZP}),w=(0,a.xC)({reducer:S});var _=function(){return(0,r.I0)()};t.ZP=w},87995:function(e,t,n){"use strict";n.d(t,{AQ:function(){return y},BZ:function(){return v},IF:function(){return _},Ie:function(){return S},Ih:function(){return p},Jc:function(){return T},KY:function(){return h},MK:function(){return m},N5:function(){return x},Sc:function(){return w},Zv:function(){return g},cN:function(){return c},cm:function(){return E},fH:function(){return l},gw:function(){return C},qO:function(){return b},wr:function(){return s},xo:function(){return u},y1:function(){return d},zb:function(){return f}});var r=n(96382),o={value:0,loggedIn:!1,showMarketplace:!1,userName:"",sidebarOpen:!localStorage.getItem("sidebarOpen")||JSON.parse(localStorage.getItem("sidebarOpen")).open,siteReplicationInfo:{siteName:"",curSite:!1,enabled:!1},serverNeedsRestart:!1,serverIsLoading:!1,loadingConfigurations:!0,loadingProgress:100,snackBar:{message:"",detailedErrorMsg:"",type:"message"},modalSnackBar:{message:"",detailedErrorMsg:"",type:"message"},serverDiagnosticStatus:"",distributedSetup:!1,licenseInfo:null,overrideStyles:null,anonymousMode:!1,helpName:"help",helpTabName:"docs",locationPath:""},a=(0,r.oM)({name:"system",initialState:o,reducers:{userLogged:function(e,t){e.loggedIn=t.payload},showMarketplace:function(e,t){e.showMarketplace=t.payload},menuOpen:function(e,t){localStorage.setItem("sidebarOpen",JSON.stringify({open:t.payload})),e.sidebarOpen=t.payload},setServerNeedsRestart:function(e,t){e.serverNeedsRestart=t.payload},serverIsLoading:function(e,t){e.serverIsLoading=t.payload},configurationIsLoading:function(e,t){e.loadingConfigurations=t.payload},setLoadingProgress:function(e,t){e.loadingProgress=t.payload},setSnackBarMessage:function(e,t){e.snackBar={message:t.payload,detailedErrorMsg:"",type:"message"}},setErrorSnackMessage:function(e,t){e.snackBar={message:t.payload.errorMessage,detailedErrorMsg:t.payload.detailedError,type:"error"}},setModalSnackMessage:function(e,t){e.modalSnackBar={message:t.payload,detailedErrorMsg:"",type:"message"}},setModalErrorSnackMessage:function(e,t){e.modalSnackBar={message:t.payload.errorMessage,detailedErrorMsg:t.payload.detailedError,type:"error"}},setServerDiagStat:function(e,t){e.serverDiagnosticStatus=t.payload},globalSetDistributedSetup:function(e,t){e.distributedSetup=t.payload},setSiteReplicationInfo:function(e,t){e.siteReplicationInfo=t.payload},setSystemLicenseInfo:function(e,t){e.licenseInfo=t.payload},setHelpName:function(e,t){e.helpName=t.payload},setHelpTabName:function(e,t){e.helpTabName=t.payload},setOverrideStyles:function(e,t){e.overrideStyles=t.payload},setAnonymousMode:function(e){e.anonymousMode=!0,e.loggedIn=!0},setLocationPath:function(e,t){e.locationPath=t.payload},resetSystem:function(){return o}}}),i=a.actions,s=i.userLogged,l=(i.showMarketplace,i.menuOpen),c=i.setServerNeedsRestart,u=i.serverIsLoading,d=(i.setLoadingProgress,i.setSnackBarMessage),p=i.setErrorSnackMessage,f=i.setModalErrorSnackMessage,m=i.setModalSnackMessage,h=i.setServerDiagStat,g=i.globalSetDistributedSetup,v=i.setSiteReplicationInfo,b=(i.setSystemLicenseInfo,i.setOverrideStyles),y=i.setAnonymousMode,E=i.resetSystem,S=i.configurationIsLoading,w=i.setHelpName,_=i.setHelpTabName,T=i.setLocationPath,x=function(e){return e.system.distributedSetup},C=function(e){return e.system.siteReplicationInfo};t.ZP=a.reducer},73921:function(e,t,n){"use strict";n.d(t,{E:function(){return o},T:function(){return r}});var r=function(e){try{return JSON.parse(atob(e))}catch(t){return console.error("Error processing override styles, skipping.",t),!1}},o=function(e){var t=void 0;try{t={bgColor:e.backgroundColor,fontColor:e.fontColor,borderColor:e.borderColor,bulletColor:e.fontColor,logoColor:"#C51B3F",logoLabelColor:e.fontColor,logoLabelInverse:"#FFF",loaderColor:e.loaderColor,boxBackground:e.boxBackground,mutedText:"#9c9c9c",buttons:{regular:{enabled:{border:e.regularButtonStyles.textColor,text:e.regularButtonStyles.textColor,background:"transparent",iconColor:e.regularButtonStyles.textColor},disabled:{border:e.regularButtonStyles.disabledText,text:e.regularButtonStyles.disabledText,background:"transparent",iconColor:e.regularButtonStyles.disabledText},hover:{border:e.regularButtonStyles.hoverText,text:e.regularButtonStyles.hoverText,background:"transparent",iconColor:e.regularButtonStyles.hoverText},pressed:{border:e.regularButtonStyles.activeText,text:e.regularButtonStyles.activeText,background:"transparent",iconColor:e.regularButtonStyles.activeText}},callAction:{enabled:{border:e.buttonStyles.backgroundColor,text:e.buttonStyles.textColor,background:e.buttonStyles.backgroundColor,iconColor:e.buttonStyles.textColor},disabled:{border:e.buttonStyles.disabledColor,text:e.buttonStyles.disabledText,background:e.buttonStyles.disabledColor,iconColor:e.buttonStyles.disabledText},hover:{border:e.buttonStyles.hoverColor,text:e.buttonStyles.hoverText,background:e.buttonStyles.hoverColor,iconColor:e.buttonStyles.hoverText},pressed:{border:e.buttonStyles.activeColor,text:e.buttonStyles.activeText,background:e.buttonStyles.activeColor,iconColor:e.buttonStyles.activeText}},secondary:{enabled:{border:e.secondaryButtonStyles.textColor,text:e.secondaryButtonStyles.textColor,background:"transparent",iconColor:e.secondaryButtonStyles.textColor},disabled:{border:e.secondaryButtonStyles.disabledText,text:e.secondaryButtonStyles.disabledText,background:"transparent",iconColor:e.secondaryButtonStyles.disabledText},hover:{border:e.secondaryButtonStyles.hoverText,text:e.secondaryButtonStyles.hoverText,background:"transparent",iconColor:e.secondaryButtonStyles.hoverText},pressed:{border:e.secondaryButtonStyles.activeText,text:e.secondaryButtonStyles.activeText,background:"transparent",iconColor:e.secondaryButtonStyles.activeText}},text:{enabled:{border:"transparent",text:e.fontColor,background:"transparent",iconColor:e.fontColor},disabled:{border:"transparent",text:e.fontColor,background:"transparent",iconColor:e.fontColor},hover:{border:"transparent",text:e.fontColor,background:"transparent",iconColor:e.fontColor},pressed:{border:"transparent",text:e.fontColor,background:"transparent",iconColor:e.fontColor}}},login:{formBG:"#fff",bgFilter:"none",promoBG:"#000110",promoHeader:"#fff",promoText:"#A6DFEF",footerElements:"#2781B0",footerDivider:"#F2F2F2"},pageHeader:{background:e.boxBackground,border:e.borderColor,color:e.fontColor},tooltip:{background:e.boxBackground,color:e.fontColor},commonInput:{labelColor:e.fontColor},checkbox:{checkBoxBorder:e.borderColor,checkBoxColor:e.okColor,disabledBorder:e.buttonStyles.disabledColor,disabledColor:e.buttonStyles.disabledColor},iconButton:{buttonBG:e.buttonStyles.backgroundColor,activeBG:e.buttonStyles.activeColor,hoverBG:e.buttonStyles.hoverColor,disabledBG:e.buttonStyles.disabledColor,color:e.buttonStyles.textColor},dataTable:{border:e.tableColors.border,disabledBorder:e.tableColors.disabledBorder,disabledBG:e.tableColors.disabledBG,selected:e.tableColors.selected,deletedDisabled:e.tableColors.deletedDisabled,hoverColor:e.tableColors.hoverColor},backLink:{color:e.linkColor,arrow:e.linkColor,hover:e.hoverLinkColor},inputBox:{border:e.inputBox.border,hoverBorder:e.inputBox.hoverBorder,color:e.inputBox.textColor,backgroundColor:e.inputBox.backgroundColor,error:e.errorColor,placeholderColor:e.inputBox.textColor,disabledBorder:e.buttonStyles.disabledColor,disabledBackground:e.inputBox.backgroundColor,disabledPlaceholder:e.buttonStyles.disabledColor,disabledText:e.buttonStyles.disabledColor},breadcrumbs:{border:e.borderColor,linksColor:e.linkColor,textColor:e.fontColor,backgroundColor:e.boxBackground,backButton:{border:e.borderColor,backgroundColor:e.boxBackground}},actionsList:{containerBorderColor:e.boxBackground,backgroundColor:e.boxBackground,disabledOptionsTextColor:e.disabledLinkColor,optionsBorder:e.borderColor,optionsHoverTextColor:e.hoverLinkColor,optionsTextColor:e.linkColor,titleColor:e.fontColor},screenTitle:{border:e.borderColor,subtitleColor:e.secondaryFontColor,iconColor:e.fontColor},modalBox:{closeColor:e.regularButtonStyles.textColor,closeHoverBG:e.regularButtonStyles.hoverColor,closeHoverColor:e.regularButtonStyles.hoverText,containerColor:e.backgroundColor,overlayColor:"#00000050",titleColor:e.fontColor,iconColor:{default:e.fontColor,accept:e.okColor,delete:e.errorColor}},switchButton:{bulletBGColor:e.switch.bulletBGColor,bulletBorderColor:e.switch.bulletBorderColor,disabledBulletBGColor:e.switch.disabledBulletBGColor,disabledBulletBorderColor:e.switch.disabledBulletBorderColor,offLabelColor:e.secondaryFontColor,onLabelColor:e.fontColor,onBackgroundColor:e.okColor,switchBackground:e.switch.switchBackground,disabledBackground:e.switch.disabledBackground,disabledOnBackground:e.switch.disabledBackground},dropdownSelector:{hoverText:e.buttonStyles.hoverText,backgroundColor:e.boxBackground,hoverBG:e.buttonStyles.hoverColor,selectedBGColor:e.buttonStyles.hoverColor,selectedTextColor:e.buttonStyles.hoverText,optionTextColor:e.fontColor},readBox:{borderColor:e.borderColor,backgroundColor:e.boxBackground,textColor:e.fontColor}}}catch(n){console.warn("Invalid theme provided. Fallback to original theme.")}return t}},83361:function(e,t,n){"use strict";n.d(t,{Z:function(){return oe}});var r=function(){function e(e){var t=this;this._insertTag=function(e){var n;n=0===t.tags.length?t.insertionPoint?t.insertionPoint.nextSibling:t.prepend?t.container.firstChild:t.before:t.tags[t.tags.length-1].nextSibling,t.container.insertBefore(e,n),t.tags.push(e)},this.isSpeedy=void 0===e.speedy||e.speedy,this.tags=[],this.ctr=0,this.nonce=e.nonce,this.key=e.key,this.container=e.container,this.prepend=e.prepend,this.insertionPoint=e.insertionPoint,this.before=null}var t=e.prototype;return t.hydrate=function(e){e.forEach(this._insertTag)},t.insert=function(e){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag(function(e){var t=document.createElement("style");return t.setAttribute("data-emotion",e.key),void 0!==e.nonce&&t.setAttribute("nonce",e.nonce),t.appendChild(document.createTextNode("")),t.setAttribute("data-s",""),t}(this));var t=this.tags[this.tags.length-1];if(this.isSpeedy){var n=function(e){if(e.sheet)return e.sheet;for(var t=0;t0?u(E,--b):0,g--,10===y&&(g=1,h--),y}function T(){return y=b2||k(y)>3?"":" "}function M(e,t){for(;--t&&T()&&!(y<48||y>102||y>57&&y<65||y>70&&y<97););return A(e,C()+(t<6&&32==x()&&32==T()))}function L(e){for(;T();)switch(y){case e:return b;case 34:case 39:34!==e&&39!==e&&L(y);break;case 40:41===e&&L(e);break;case 92:T()}return b}function P(e,t){for(;T()&&e+y!==57&&(e+y!==84||47!==x()););return"/*"+A(t,b-1)+"*"+a(47===e?e:T())}function D(e){for(;!k(x());)T();return A(e,b)}var Z="-ms-",B="-moz-",z="-webkit-",F="comm",U="rule",j="decl",H="@keyframes";function G(e,t){for(var n="",r=f(e),o=0;o0&&p(B)-v&&m(y>32?Y(B+";",r,n,v-1):Y(l(B," ","")+";",r,n,v-2),f);break;case 59:B+=";";default:if(m(Z=$(B,t,n,h,g,o,d,I,O=[],L=[],v),i),123===k)if(0===g)q(B,t,Z,Z,O,i,v,d,L);else switch(99===b&&110===u(B,3)?100:b){case 100:case 108:case 109:case 115:q(e,Z,Z,r&&m($(e,Z,Z,0,0,o,d,I,o,O=[],v),L),o,L,v,d,r?O:L);break;default:q(B,Z,Z,Z,[""],L,0,d,L)}}h=g=y=0,S=A=1,I=B="",v=s;break;case 58:v=1+p(B),y=E;default:if(S<1)if(123==k)--S;else if(125==k&&0==S++&&125==_())continue;switch(B+=a(k),k*S){case 38:A=g>0?1:(B+="\f",-1);break;case 44:d[h++]=(p(B)-1)*A,A=1;break;case 64:45===x()&&(B+=R(T())),b=x(),g=v=p(I=B+=D(C())),k++;break;case 45:45===E&&2==p(B)&&(S=0)}}return i}function $(e,t,n,r,a,i,c,u,p,m,h){for(var g=a-1,v=0===a?i:[""],b=f(v),y=0,E=0,w=0;y0?v[_]+" "+T:l(T,/&\f/g,v[_])))&&(p[w++]=x);return S(e,t,n,0===a?U:u,p,m,h)}function K(e,t,n){return S(e,t,n,F,a(y),d(e,2,-2),0)}function Y(e,t,n,r){return S(e,t,n,j,d(e,0,r),d(e,r+1,-1),r)}var X=function(e,t,n){for(var r=0,o=0;r=o,o=x(),38===r&&12===o&&(t[n]=1),!k(o);)T();return A(e,b)},Q=function(e,t){return O(function(e,t){var n=-1,r=44;do{switch(k(r)){case 0:38===r&&12===x()&&(t[n]=1),e[n]+=X(b-1,t,n);break;case 2:e[n]+=R(r);break;case 4:if(44===r){e[++n]=58===x()?"&\f":"",t[n]=e[n].length;break}default:e[n]+=a(r)}}while(r=T());return e}(I(e),t))},J=new WeakMap,ee=function(e){if("rule"===e.type&&e.parent&&!(e.length<1)){for(var t=e.value,n=e.parent,r=e.column===n.column&&e.line===n.line;"rule"!==n.type;)if(!(n=n.parent))return;if((1!==e.props.length||58===t.charCodeAt(0)||J.get(n))&&!r){J.set(e,!0);for(var o=[],a=Q(t,o),i=n.props,s=0,l=0;s6)switch(u(e,t+1)){case 109:if(45!==u(e,t+4))break;case 102:return l(e,/(.+:)(.+)-([^]+)/,"$1"+z+"$2-$3$1"+B+(108==u(e,t+3)?"$3":"$2-$3"))+e;case 115:return~c(e,"stretch")?ne(l(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==u(e,t+1))break;case 6444:switch(u(e,p(e)-3-(~c(e,"!important")&&10))){case 107:return l(e,":",":"+z)+e;case 101:return l(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+z+(45===u(e,14)?"inline-":"")+"box$3$1"+z+"$2$3$1"+Z+"$2box$3")+e}break;case 5936:switch(u(e,t+11)){case 114:return z+e+Z+l(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return z+e+Z+l(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return z+e+Z+l(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return z+e+Z+e+e}return e}var re=[function(e,t,n,r){if(e.length>-1&&!e.return)switch(e.type){case j:e.return=ne(e.value,e.length);break;case H:return G([w(e,{value:l(e.value,"@","@"+z)})],r);case U:if(e.length)return function(e,t){return e.map(t).join("")}(e.props,(function(t){switch(function(e,t){return(e=t.exec(e))?e[0]:e}(t,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return G([w(e,{props:[l(t,/:(read-\w+)/,":-moz-$1")]})],r);case"::placeholder":return G([w(e,{props:[l(t,/:(plac\w+)/,":"+z+"input-$1")]}),w(e,{props:[l(t,/:(plac\w+)/,":-moz-$1")]}),w(e,{props:[l(t,/:(plac\w+)/,Z+"input-$1")]})],r)}return""}))}}],oe=function(e){var t=e.key;if("css"===t){var n=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(n,(function(e){-1!==e.getAttribute("data-emotion").indexOf(" ")&&(document.head.appendChild(e),e.setAttribute("data-s",""))}))}var o=e.stylisPlugins||re;var a,i,s={},l=[];a=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+t+' "]'),(function(e){for(var t=e.getAttribute("data-emotion").split(" "),n=1;n=4;++r,o-=4)t=1540483477*(65535&(t=255&e.charCodeAt(r)|(255&e.charCodeAt(++r))<<8|(255&e.charCodeAt(++r))<<16|(255&e.charCodeAt(++r))<<24))+(59797*(t>>>16)<<16),n=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&n)+(59797*(n>>>16)<<16);switch(o){case 3:n^=(255&e.charCodeAt(r+2))<<16;case 2:n^=(255&e.charCodeAt(r+1))<<8;case 1:n=1540483477*(65535&(n^=255&e.charCodeAt(r)))+(59797*(n>>>16)<<16)}return(((n=1540483477*(65535&(n^=n>>>13))+(59797*(n>>>16)<<16))^n>>>15)>>>0).toString(36)}(o)+l;return{name:c,styles:o,next:p}}},82561:function(e,t,n){"use strict";var r;n.d(t,{L:function(){return i},j:function(){return s}});var o=n(72791),a=!!(r||(r=n.t(o,2))).useInsertionEffect&&(r||(r=n.t(o,2))).useInsertionEffect,i=a||function(e){return e()},s=a||o.useLayoutEffect},95438:function(e,t,n){"use strict";n.d(t,{My:function(){return a},fp:function(){return r},hC:function(){return o}});function r(e,t,n){var r="";return n.split(" ").forEach((function(n){void 0!==e[n]?t.push(e[n]+";"):r+=n+" "})),r}var o=function(e,t,n){var r=e.key+"-"+t.name;!1===n&&void 0===e.registered[r]&&(e.registered[r]=t.styles)},a=function(e,t,n){o(e,t,n);var r=e.key+"-"+t.name;if(void 0===e.inserted[t.name]){var a=t;do{e.insert(t===a?"."+r:"",a,e.sheet,!0),a=a.next}while(void 0!==a)}}},64554:function(e,t,n){"use strict";n.d(t,{Z:function(){return b}});var r=n(87462),o=n(63366),a=n(72791),i=n(28182),s=n(53842),l=n(60104),c=n(78519),u=n(30418),d=n(80184),p=["className","component"];var f=n(55902),m=n(83625),h=n(988),g=(0,m.Z)(),v=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.themeId,n=e.defaultTheme,f=e.defaultClassName,m=void 0===f?"MuiBox-root":f,h=e.generateClassName,g=(0,s.ZP)("div",{shouldForwardProp:function(e){return"theme"!==e&&"sx"!==e&&"as"!==e}})(l.Z);return a.forwardRef((function(e,a){var s=(0,u.Z)(n),l=(0,c.Z)(e),f=l.className,v=l.component,b=void 0===v?"div":v,y=(0,o.Z)(l,p);return(0,d.jsx)(g,(0,r.Z)({as:b,ref:a,className:(0,i.Z)(f,h?h(m):m),theme:t&&s[t]||s},y))}))}({themeId:h.Z,defaultTheme:g,defaultClassName:"MuiBox-root",generateClassName:f.Z.generate}),b=v},36151:function(e,t,n){"use strict";n.d(t,{Z:function(){return C}});var r=n(4942),o=n(63366),a=n(87462),i=n(72791),s=n(28182),l=n(35735),c=n(94419),u=n(12065),d=n(66934),p=n(31402),f=n(95080),m=n(14036),h=n(75878),g=n(21217);function v(e){return(0,g.Z)("MuiButton",e)}var b=(0,h.Z)("MuiButton",["root","text","textInherit","textPrimary","textSecondary","textSuccess","textError","textInfo","textWarning","outlined","outlinedInherit","outlinedPrimary","outlinedSecondary","outlinedSuccess","outlinedError","outlinedInfo","outlinedWarning","contained","containedInherit","containedPrimary","containedSecondary","containedSuccess","containedError","containedInfo","containedWarning","disableElevation","focusVisible","disabled","colorInherit","textSizeSmall","textSizeMedium","textSizeLarge","outlinedSizeSmall","outlinedSizeMedium","outlinedSizeLarge","containedSizeSmall","containedSizeMedium","containedSizeLarge","sizeMedium","sizeSmall","sizeLarge","fullWidth","startIcon","endIcon","iconSizeSmall","iconSizeMedium","iconSizeLarge"]);var y=i.createContext({}),E=n(80184),S=["children","color","component","className","disabled","disableElevation","disableFocusRipple","endIcon","focusVisibleClassName","fullWidth","size","startIcon","type","variant"],w=function(e){return(0,a.Z)({},"small"===e.size&&{"& > *:nth-of-type(1)":{fontSize:18}},"medium"===e.size&&{"& > *:nth-of-type(1)":{fontSize:20}},"large"===e.size&&{"& > *:nth-of-type(1)":{fontSize:22}})},_=(0,d.ZP)(f.Z,{shouldForwardProp:function(e){return(0,d.FO)(e)||"classes"===e},name:"MuiButton",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,t[n.variant],t["".concat(n.variant).concat((0,m.Z)(n.color))],t["size".concat((0,m.Z)(n.size))],t["".concat(n.variant,"Size").concat((0,m.Z)(n.size))],"inherit"===n.color&&t.colorInherit,n.disableElevation&&t.disableElevation,n.fullWidth&&t.fullWidth]}})((function(e){var t,n,o,i=e.theme,s=e.ownerState,l="light"===i.palette.mode?i.palette.grey[300]:i.palette.grey[800],c="light"===i.palette.mode?i.palette.grey.A100:i.palette.grey[700];return(0,a.Z)({},i.typography.button,(t={minWidth:64,padding:"6px 16px",borderRadius:(i.vars||i).shape.borderRadius,transition:i.transitions.create(["background-color","box-shadow","border-color","color"],{duration:i.transitions.duration.short}),"&:hover":(0,a.Z)({textDecoration:"none",backgroundColor:i.vars?"rgba(".concat(i.vars.palette.text.primaryChannel," / ").concat(i.vars.palette.action.hoverOpacity,")"):(0,u.Fq)(i.palette.text.primary,i.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},"text"===s.variant&&"inherit"!==s.color&&{backgroundColor:i.vars?"rgba(".concat(i.vars.palette[s.color].mainChannel," / ").concat(i.vars.palette.action.hoverOpacity,")"):(0,u.Fq)(i.palette[s.color].main,i.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},"outlined"===s.variant&&"inherit"!==s.color&&{border:"1px solid ".concat((i.vars||i).palette[s.color].main),backgroundColor:i.vars?"rgba(".concat(i.vars.palette[s.color].mainChannel," / ").concat(i.vars.palette.action.hoverOpacity,")"):(0,u.Fq)(i.palette[s.color].main,i.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},"contained"===s.variant&&{backgroundColor:i.vars?i.vars.palette.Button.inheritContainedHoverBg:c,boxShadow:(i.vars||i).shadows[4],"@media (hover: none)":{boxShadow:(i.vars||i).shadows[2],backgroundColor:(i.vars||i).palette.grey[300]}},"contained"===s.variant&&"inherit"!==s.color&&{backgroundColor:(i.vars||i).palette[s.color].dark,"@media (hover: none)":{backgroundColor:(i.vars||i).palette[s.color].main}}),"&:active":(0,a.Z)({},"contained"===s.variant&&{boxShadow:(i.vars||i).shadows[8]})},(0,r.Z)(t,"&.".concat(b.focusVisible),(0,a.Z)({},"contained"===s.variant&&{boxShadow:(i.vars||i).shadows[6]})),(0,r.Z)(t,"&.".concat(b.disabled),(0,a.Z)({color:(i.vars||i).palette.action.disabled},"outlined"===s.variant&&{border:"1px solid ".concat((i.vars||i).palette.action.disabledBackground)},"contained"===s.variant&&{color:(i.vars||i).palette.action.disabled,boxShadow:(i.vars||i).shadows[0],backgroundColor:(i.vars||i).palette.action.disabledBackground})),t),"text"===s.variant&&{padding:"6px 8px"},"text"===s.variant&&"inherit"!==s.color&&{color:(i.vars||i).palette[s.color].main},"outlined"===s.variant&&{padding:"5px 15px",border:"1px solid currentColor"},"outlined"===s.variant&&"inherit"!==s.color&&{color:(i.vars||i).palette[s.color].main,border:i.vars?"1px solid rgba(".concat(i.vars.palette[s.color].mainChannel," / 0.5)"):"1px solid ".concat((0,u.Fq)(i.palette[s.color].main,.5))},"contained"===s.variant&&{color:i.vars?i.vars.palette.text.primary:null==(n=(o=i.palette).getContrastText)?void 0:n.call(o,i.palette.grey[300]),backgroundColor:i.vars?i.vars.palette.Button.inheritContainedBg:l,boxShadow:(i.vars||i).shadows[2]},"contained"===s.variant&&"inherit"!==s.color&&{color:(i.vars||i).palette[s.color].contrastText,backgroundColor:(i.vars||i).palette[s.color].main},"inherit"===s.color&&{color:"inherit",borderColor:"currentColor"},"small"===s.size&&"text"===s.variant&&{padding:"4px 5px",fontSize:i.typography.pxToRem(13)},"large"===s.size&&"text"===s.variant&&{padding:"8px 11px",fontSize:i.typography.pxToRem(15)},"small"===s.size&&"outlined"===s.variant&&{padding:"3px 9px",fontSize:i.typography.pxToRem(13)},"large"===s.size&&"outlined"===s.variant&&{padding:"7px 21px",fontSize:i.typography.pxToRem(15)},"small"===s.size&&"contained"===s.variant&&{padding:"4px 10px",fontSize:i.typography.pxToRem(13)},"large"===s.size&&"contained"===s.variant&&{padding:"8px 22px",fontSize:i.typography.pxToRem(15)},s.fullWidth&&{width:"100%"})}),(function(e){var t;return e.ownerState.disableElevation&&(t={boxShadow:"none","&:hover":{boxShadow:"none"}},(0,r.Z)(t,"&.".concat(b.focusVisible),{boxShadow:"none"}),(0,r.Z)(t,"&:active",{boxShadow:"none"}),(0,r.Z)(t,"&.".concat(b.disabled),{boxShadow:"none"}),t)})),T=(0,d.ZP)("span",{name:"MuiButton",slot:"StartIcon",overridesResolver:function(e,t){var n=e.ownerState;return[t.startIcon,t["iconSize".concat((0,m.Z)(n.size))]]}})((function(e){var t=e.ownerState;return(0,a.Z)({display:"inherit",marginRight:8,marginLeft:-4},"small"===t.size&&{marginLeft:-2},w(t))})),x=(0,d.ZP)("span",{name:"MuiButton",slot:"EndIcon",overridesResolver:function(e,t){var n=e.ownerState;return[t.endIcon,t["iconSize".concat((0,m.Z)(n.size))]]}})((function(e){var t=e.ownerState;return(0,a.Z)({display:"inherit",marginRight:-4,marginLeft:8},"small"===t.size&&{marginRight:-2},w(t))})),C=i.forwardRef((function(e,t){var n=i.useContext(y),r=(0,l.Z)(n,e),u=(0,p.Z)({props:r,name:"MuiButton"}),d=u.children,f=u.color,h=void 0===f?"primary":f,g=u.component,b=void 0===g?"button":g,w=u.className,C=u.disabled,A=void 0!==C&&C,k=u.disableElevation,I=void 0!==k&&k,O=u.disableFocusRipple,R=void 0!==O&&O,N=u.endIcon,M=u.focusVisibleClassName,L=u.fullWidth,P=void 0!==L&&L,D=u.size,Z=void 0===D?"medium":D,B=u.startIcon,z=u.type,F=u.variant,U=void 0===F?"text":F,j=(0,o.Z)(u,S),H=(0,a.Z)({},u,{color:h,component:b,disabled:A,disableElevation:I,disableFocusRipple:R,fullWidth:P,size:Z,type:z,variant:U}),G=function(e){var t=e.color,n=e.disableElevation,r=e.fullWidth,o=e.size,i=e.variant,s=e.classes,l={root:["root",i,"".concat(i).concat((0,m.Z)(t)),"size".concat((0,m.Z)(o)),"".concat(i,"Size").concat((0,m.Z)(o)),"inherit"===t&&"colorInherit",n&&"disableElevation",r&&"fullWidth"],label:["label"],startIcon:["startIcon","iconSize".concat((0,m.Z)(o))],endIcon:["endIcon","iconSize".concat((0,m.Z)(o))]},u=(0,c.Z)(l,v,s);return(0,a.Z)({},s,u)}(H),V=B&&(0,E.jsx)(T,{className:G.startIcon,ownerState:H,children:B}),W=N&&(0,E.jsx)(x,{className:G.endIcon,ownerState:H,children:N});return(0,E.jsxs)(_,(0,a.Z)({ownerState:H,className:(0,s.Z)(n.className,G.root,w),component:b,disabled:A,focusRipple:!R,focusVisibleClassName:(0,s.Z)(G.focusVisible,M),ref:t,type:z},j,{classes:G,children:[V,d,W]}))}))},95080:function(e,t,n){"use strict";n.d(t,{Z:function(){return W}});var r=n(29439),o=n(4942),a=n(87462),i=n(63366),s=n(72791),l=n(28182),c=n(94419),u=n(66934),d=n(31402),p=n(42071),f=n(89683),m=n(23031),h=n(93433),g=n(30168),v=n(75660),b=n(52554),y=n(80184);var E=function(e){var t=e.className,n=e.classes,o=e.pulsate,a=void 0!==o&&o,i=e.rippleX,c=e.rippleY,u=e.rippleSize,d=e.in,p=e.onExited,f=e.timeout,m=s.useState(!1),h=(0,r.Z)(m,2),g=h[0],v=h[1],b=(0,l.Z)(t,n.ripple,n.rippleVisible,a&&n.ripplePulsate),E={width:u,height:u,top:-u/2+c,left:-u/2+i},S=(0,l.Z)(n.child,g&&n.childLeaving,a&&n.childPulsate);return d||g||v(!0),s.useEffect((function(){if(!d&&null!=p){var e=setTimeout(p,f);return function(){clearTimeout(e)}}}),[p,d,f]),(0,y.jsx)("span",{className:b,style:E,children:(0,y.jsx)("span",{className:S})})},S=n(75878);var w,_,T,x,C,A,k,I,O=(0,S.Z)("MuiTouchRipple",["root","ripple","rippleVisible","ripplePulsate","child","childLeaving","childPulsate"]),R=["center","classes","className"],N=(0,b.F4)(C||(C=w||(w=(0,g.Z)(["\n 0% {\n transform: scale(0);\n opacity: 0.1;\n }\n\n 100% {\n transform: scale(1);\n opacity: 0.3;\n }\n"])))),M=(0,b.F4)(A||(A=_||(_=(0,g.Z)(["\n 0% {\n opacity: 1;\n }\n\n 100% {\n opacity: 0;\n }\n"])))),L=(0,b.F4)(k||(k=T||(T=(0,g.Z)(["\n 0% {\n transform: scale(1);\n }\n\n 50% {\n transform: scale(0.92);\n }\n\n 100% {\n transform: scale(1);\n }\n"])))),P=(0,u.ZP)("span",{name:"MuiTouchRipple",slot:"Root"})({overflow:"hidden",pointerEvents:"none",position:"absolute",zIndex:0,top:0,right:0,bottom:0,left:0,borderRadius:"inherit"}),D=(0,u.ZP)(E,{name:"MuiTouchRipple",slot:"Ripple"})(I||(I=x||(x=(0,g.Z)(["\n opacity: 0;\n position: absolute;\n\n &."," {\n opacity: 0.3;\n transform: scale(1);\n animation-name: ",";\n animation-duration: ","ms;\n animation-timing-function: ",";\n }\n\n &."," {\n animation-duration: ","ms;\n }\n\n & ."," {\n opacity: 1;\n display: block;\n width: 100%;\n height: 100%;\n border-radius: 50%;\n background-color: currentColor;\n }\n\n & ."," {\n opacity: 0;\n animation-name: ",";\n animation-duration: ","ms;\n animation-timing-function: ",";\n }\n\n & ."," {\n position: absolute;\n /* @noflip */\n left: 0px;\n top: 0;\n animation-name: ",";\n animation-duration: 2500ms;\n animation-timing-function: ",";\n animation-iteration-count: infinite;\n animation-delay: 200ms;\n }\n"]))),O.rippleVisible,N,550,(function(e){return e.theme.transitions.easing.easeInOut}),O.ripplePulsate,(function(e){return e.theme.transitions.duration.shorter}),O.child,O.childLeaving,M,550,(function(e){return e.theme.transitions.easing.easeInOut}),O.childPulsate,L,(function(e){return e.theme.transitions.easing.easeInOut})),Z=s.forwardRef((function(e,t){var n=(0,d.Z)({props:e,name:"MuiTouchRipple"}),o=n.center,c=void 0!==o&&o,u=n.classes,p=void 0===u?{}:u,f=n.className,m=(0,i.Z)(n,R),g=s.useState([]),b=(0,r.Z)(g,2),E=b[0],S=b[1],w=s.useRef(0),_=s.useRef(null);s.useEffect((function(){_.current&&(_.current(),_.current=null)}),[E]);var T=s.useRef(!1),x=s.useRef(0),C=s.useRef(null),A=s.useRef(null);s.useEffect((function(){return function(){x.current&&clearTimeout(x.current)}}),[]);var k=s.useCallback((function(e){var t=e.pulsate,n=e.rippleX,r=e.rippleY,o=e.rippleSize,a=e.cb;S((function(e){return[].concat((0,h.Z)(e),[(0,y.jsx)(D,{classes:{ripple:(0,l.Z)(p.ripple,O.ripple),rippleVisible:(0,l.Z)(p.rippleVisible,O.rippleVisible),ripplePulsate:(0,l.Z)(p.ripplePulsate,O.ripplePulsate),child:(0,l.Z)(p.child,O.child),childLeaving:(0,l.Z)(p.childLeaving,O.childLeaving),childPulsate:(0,l.Z)(p.childPulsate,O.childPulsate)},timeout:550,pulsate:t,rippleX:n,rippleY:r,rippleSize:o},w.current)])})),w.current+=1,_.current=a}),[p]),I=s.useCallback((function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){},r=t.pulsate,o=void 0!==r&&r,a=t.center,i=void 0===a?c||t.pulsate:a,s=t.fakeElement,l=void 0!==s&&s;if("mousedown"===(null==e?void 0:e.type)&&T.current)T.current=!1;else{"touchstart"===(null==e?void 0:e.type)&&(T.current=!0);var u,d,p,f=l?null:A.current,m=f?f.getBoundingClientRect():{width:0,height:0,left:0,top:0};if(i||void 0===e||0===e.clientX&&0===e.clientY||!e.clientX&&!e.touches)u=Math.round(m.width/2),d=Math.round(m.height/2);else{var h=e.touches&&e.touches.length>0?e.touches[0]:e,g=h.clientX,v=h.clientY;u=Math.round(g-m.left),d=Math.round(v-m.top)}if(i)(p=Math.sqrt((2*Math.pow(m.width,2)+Math.pow(m.height,2))/3))%2===0&&(p+=1);else{var b=2*Math.max(Math.abs((f?f.clientWidth:0)-u),u)+2,y=2*Math.max(Math.abs((f?f.clientHeight:0)-d),d)+2;p=Math.sqrt(Math.pow(b,2)+Math.pow(y,2))}null!=e&&e.touches?null===C.current&&(C.current=function(){k({pulsate:o,rippleX:u,rippleY:d,rippleSize:p,cb:n})},x.current=setTimeout((function(){C.current&&(C.current(),C.current=null)}),80)):k({pulsate:o,rippleX:u,rippleY:d,rippleSize:p,cb:n})}}),[c,k]),N=s.useCallback((function(){I({},{pulsate:!0})}),[I]),M=s.useCallback((function(e,t){if(clearTimeout(x.current),"touchend"===(null==e?void 0:e.type)&&C.current)return C.current(),C.current=null,void(x.current=setTimeout((function(){M(e,t)})));C.current=null,S((function(e){return e.length>0?e.slice(1):e})),_.current=t}),[]);return s.useImperativeHandle(t,(function(){return{pulsate:N,start:I,stop:M}}),[N,I,M]),(0,y.jsx)(P,(0,a.Z)({className:(0,l.Z)(O.root,p.root,f),ref:A},m,{children:(0,y.jsx)(v.Z,{component:null,exit:!0,children:E})}))})),B=Z,z=n(21217);function F(e){return(0,z.Z)("MuiButtonBase",e)}var U,j=(0,S.Z)("MuiButtonBase",["root","disabled","focusVisible"]),H=["action","centerRipple","children","className","component","disabled","disableRipple","disableTouchRipple","focusRipple","focusVisibleClassName","LinkComponent","onBlur","onClick","onContextMenu","onDragLeave","onFocus","onFocusVisible","onKeyDown","onKeyUp","onMouseDown","onMouseLeave","onMouseUp","onTouchEnd","onTouchMove","onTouchStart","tabIndex","TouchRippleProps","touchRippleRef","type"],G=(0,u.ZP)("button",{name:"MuiButtonBase",slot:"Root",overridesResolver:function(e,t){return t.root}})((U={display:"inline-flex",alignItems:"center",justifyContent:"center",position:"relative",boxSizing:"border-box",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle",MozAppearance:"none",WebkitAppearance:"none",textDecoration:"none",color:"inherit","&::-moz-focus-inner":{borderStyle:"none"}},(0,o.Z)(U,"&.".concat(j.disabled),{pointerEvents:"none",cursor:"default"}),(0,o.Z)(U,"@media print",{colorAdjust:"exact"}),U)),V=s.forwardRef((function(e,t){var n=(0,d.Z)({props:e,name:"MuiButtonBase"}),o=n.action,u=n.centerRipple,h=void 0!==u&&u,g=n.children,v=n.className,b=n.component,E=void 0===b?"button":b,S=n.disabled,w=void 0!==S&&S,_=n.disableRipple,T=void 0!==_&&_,x=n.disableTouchRipple,C=void 0!==x&&x,A=n.focusRipple,k=void 0!==A&&A,I=n.LinkComponent,O=void 0===I?"a":I,R=n.onBlur,N=n.onClick,M=n.onContextMenu,L=n.onDragLeave,P=n.onFocus,D=n.onFocusVisible,Z=n.onKeyDown,z=n.onKeyUp,U=n.onMouseDown,j=n.onMouseLeave,V=n.onMouseUp,W=n.onTouchEnd,q=n.onTouchMove,$=n.onTouchStart,K=n.tabIndex,Y=void 0===K?0:K,X=n.TouchRippleProps,Q=n.touchRippleRef,J=n.type,ee=(0,i.Z)(n,H),te=s.useRef(null),ne=s.useRef(null),re=(0,p.Z)(ne,Q),oe=(0,m.Z)(),ae=oe.isFocusVisibleRef,ie=oe.onFocus,se=oe.onBlur,le=oe.ref,ce=s.useState(!1),ue=(0,r.Z)(ce,2),de=ue[0],pe=ue[1];w&&de&&pe(!1),s.useImperativeHandle(o,(function(){return{focusVisible:function(){pe(!0),te.current.focus()}}}),[]);var fe=s.useState(!1),me=(0,r.Z)(fe,2),he=me[0],ge=me[1];s.useEffect((function(){ge(!0)}),[]);var ve=he&&!T&&!w;function be(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:C;return(0,f.Z)((function(r){return t&&t(r),!n&&ne.current&&ne.current[e](r),!0}))}s.useEffect((function(){de&&k&&!T&&he&&ne.current.pulsate()}),[T,k,de,he]);var ye=be("start",U),Ee=be("stop",M),Se=be("stop",L),we=be("stop",V),_e=be("stop",(function(e){de&&e.preventDefault(),j&&j(e)})),Te=be("start",$),xe=be("stop",W),Ce=be("stop",q),Ae=be("stop",(function(e){se(e),!1===ae.current&&pe(!1),R&&R(e)}),!1),ke=(0,f.Z)((function(e){te.current||(te.current=e.currentTarget),ie(e),!0===ae.current&&(pe(!0),D&&D(e)),P&&P(e)})),Ie=function(){var e=te.current;return E&&"button"!==E&&!("A"===e.tagName&&e.href)},Oe=s.useRef(!1),Re=(0,f.Z)((function(e){k&&!Oe.current&&de&&ne.current&&" "===e.key&&(Oe.current=!0,ne.current.stop(e,(function(){ne.current.start(e)}))),e.target===e.currentTarget&&Ie()&&" "===e.key&&e.preventDefault(),Z&&Z(e),e.target===e.currentTarget&&Ie()&&"Enter"===e.key&&!w&&(e.preventDefault(),N&&N(e))})),Ne=(0,f.Z)((function(e){k&&" "===e.key&&ne.current&&de&&!e.defaultPrevented&&(Oe.current=!1,ne.current.stop(e,(function(){ne.current.pulsate(e)}))),z&&z(e),N&&e.target===e.currentTarget&&Ie()&&" "===e.key&&!e.defaultPrevented&&N(e)})),Me=E;"button"===Me&&(ee.href||ee.to)&&(Me=O);var Le={};"button"===Me?(Le.type=void 0===J?"button":J,Le.disabled=w):(ee.href||ee.to||(Le.role="button"),w&&(Le["aria-disabled"]=w));var Pe=(0,p.Z)(t,le,te);var De=(0,a.Z)({},n,{centerRipple:h,component:E,disabled:w,disableRipple:T,disableTouchRipple:C,focusRipple:k,tabIndex:Y,focusVisible:de}),Ze=function(e){var t=e.disabled,n=e.focusVisible,r=e.focusVisibleClassName,o=e.classes,a={root:["root",t&&"disabled",n&&"focusVisible"]},i=(0,c.Z)(a,F,o);return n&&r&&(i.root+=" ".concat(r)),i}(De);return(0,y.jsxs)(G,(0,a.Z)({as:Me,className:(0,l.Z)(Ze.root,v),ownerState:De,onBlur:Ae,onClick:N,onContextMenu:Ee,onFocus:ke,onKeyDown:Re,onKeyUp:Ne,onMouseDown:ye,onMouseLeave:_e,onMouseUp:we,onDragLeave:Se,onTouchEnd:xe,onTouchMove:Ce,onTouchStart:Te,ref:Pe,tabIndex:w?-1:Y,type:J},Le,ee,{children:[g,ve?(0,y.jsx)(B,(0,a.Z)({ref:re,center:h},X)):null]}))})),W=V},51691:function(e,t,n){"use strict";n.d(t,{Z:function(){return v}});var r=n(63366),o=n(87462),a=n(72791),i=n(28182),s=n(94419),l=n(66934),c=n(31402),u=n(20890),d=n(75878),p=n(21217);function f(e){return(0,p.Z)("MuiDialogContentText",e)}(0,d.Z)("MuiDialogContentText",["root"]);var m=n(80184),h=["children","className"],g=(0,l.ZP)(u.Z,{shouldForwardProp:function(e){return(0,l.FO)(e)||"classes"===e},name:"MuiDialogContentText",slot:"Root",overridesResolver:function(e,t){return t.root}})({}),v=a.forwardRef((function(e,t){var n=(0,c.Z)({props:e,name:"MuiDialogContentText"}),a=n.className,l=(0,r.Z)(n,h),u=function(e){var t=e.classes,n=(0,s.Z)({root:["root"]},f,t);return(0,o.Z)({},t,n)}(l);return(0,m.jsx)(g,(0,o.Z)({component:"p",variant:"body1",color:"text.secondary",ref:t,ownerState:l,className:(0,i.Z)(u.root,a)},n,{classes:u}))}))},61889:function(e,t,n){"use strict";n.d(t,{ZP:function(){return k}});var r=n(93433),o=n(4942),a=n(63366),i=n(87462),s=n(72791),l=n(28182),c=n(51184),u=n(78519),d=n(94419),p=n(66934),f=n(31402),m=n(13967);var h=s.createContext(),g=n(75878),v=n(21217);function b(e){return(0,v.Z)("MuiGrid",e)}var y=["auto",!0,1,2,3,4,5,6,7,8,9,10,11,12],E=(0,g.Z)("MuiGrid",["root","container","item","zeroMinWidth"].concat((0,r.Z)([0,1,2,3,4,5,6,7,8,9,10].map((function(e){return"spacing-xs-".concat(e)}))),(0,r.Z)(["column-reverse","column","row-reverse","row"].map((function(e){return"direction-xs-".concat(e)}))),(0,r.Z)(["nowrap","wrap-reverse","wrap"].map((function(e){return"wrap-xs-".concat(e)}))),(0,r.Z)(y.map((function(e){return"grid-xs-".concat(e)}))),(0,r.Z)(y.map((function(e){return"grid-sm-".concat(e)}))),(0,r.Z)(y.map((function(e){return"grid-md-".concat(e)}))),(0,r.Z)(y.map((function(e){return"grid-lg-".concat(e)}))),(0,r.Z)(y.map((function(e){return"grid-xl-".concat(e)}))))),S=n(80184),w=["className","columns","columnSpacing","component","container","direction","item","rowSpacing","spacing","wrap","zeroMinWidth"];function _(e){var t=parseFloat(e);return"".concat(t).concat(String(e).replace(String(t),"")||"px")}function T(e){var t=e.breakpoints,n=e.values,r="";Object.keys(n).forEach((function(e){""===r&&0!==n[e]&&(r=e)}));var o=Object.keys(t).sort((function(e,n){return t[e]-t[n]}));return o.slice(0,o.indexOf(r))}var x=(0,p.ZP)("div",{name:"MuiGrid",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState,o=n.container,a=n.direction,i=n.item,s=n.spacing,l=n.wrap,c=n.zeroMinWidth,u=n.breakpoints,d=[];o&&(d=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!e||e<=0)return[];if("string"===typeof e&&!Number.isNaN(Number(e))||"number"===typeof e)return[n["spacing-xs-".concat(String(e))]];var r=[];return t.forEach((function(t){var o=e[t];Number(o)>0&&r.push(n["spacing-".concat(t,"-").concat(String(o))])})),r}(s,u,t));var p=[];return u.forEach((function(e){var r=n[e];r&&p.push(t["grid-".concat(e,"-").concat(String(r))])})),[t.root,o&&t.container,i&&t.item,c&&t.zeroMinWidth].concat((0,r.Z)(d),["row"!==a&&t["direction-xs-".concat(String(a))],"wrap"!==l&&t["wrap-xs-".concat(String(l))]],p)}})((function(e){var t=e.ownerState;return(0,i.Z)({boxSizing:"border-box"},t.container&&{display:"flex",flexWrap:"wrap",width:"100%"},t.item&&{margin:0},t.zeroMinWidth&&{minWidth:0},"wrap"!==t.wrap&&{flexWrap:t.wrap})}),(function(e){var t=e.theme,n=e.ownerState,r=(0,c.P$)({values:n.direction,breakpoints:t.breakpoints.values});return(0,c.k9)({theme:t},r,(function(e){var t={flexDirection:e};return 0===e.indexOf("column")&&(t["& > .".concat(E.item)]={maxWidth:"none"}),t}))}),(function(e){var t=e.theme,n=e.ownerState,r=n.container,a=n.rowSpacing,i={};if(r&&0!==a){var s,l=(0,c.P$)({values:a,breakpoints:t.breakpoints.values});"object"===typeof l&&(s=T({breakpoints:t.breakpoints.values,values:l})),i=(0,c.k9)({theme:t},l,(function(e,n){var r,a=t.spacing(e);return"0px"!==a?(0,o.Z)({marginTop:"-".concat(_(a))},"& > .".concat(E.item),{paddingTop:_(a)}):null!=(r=s)&&r.includes(n)?{}:(0,o.Z)({marginTop:0},"& > .".concat(E.item),{paddingTop:0})}))}return i}),(function(e){var t=e.theme,n=e.ownerState,r=n.container,a=n.columnSpacing,i={};if(r&&0!==a){var s,l=(0,c.P$)({values:a,breakpoints:t.breakpoints.values});"object"===typeof l&&(s=T({breakpoints:t.breakpoints.values,values:l})),i=(0,c.k9)({theme:t},l,(function(e,n){var r,a=t.spacing(e);return"0px"!==a?(0,o.Z)({width:"calc(100% + ".concat(_(a),")"),marginLeft:"-".concat(_(a))},"& > .".concat(E.item),{paddingLeft:_(a)}):null!=(r=s)&&r.includes(n)?{}:(0,o.Z)({width:"100%",marginLeft:0},"& > .".concat(E.item),{paddingLeft:0})}))}return i}),(function(e){var t,n=e.theme,r=e.ownerState;return n.breakpoints.keys.reduce((function(e,o){var a={};if(r[o]&&(t=r[o]),!t)return e;if(!0===t)a={flexBasis:0,flexGrow:1,maxWidth:"100%"};else if("auto"===t)a={flexBasis:"auto",flexGrow:0,flexShrink:0,maxWidth:"none",width:"auto"};else{var s=(0,c.P$)({values:r.columns,breakpoints:n.breakpoints.values}),l="object"===typeof s?s[o]:s;if(void 0===l||null===l)return e;var u="".concat(Math.round(t/l*1e8)/1e6,"%"),d={};if(r.container&&r.item&&0!==r.columnSpacing){var p=n.spacing(r.columnSpacing);if("0px"!==p){var f="calc(".concat(u," + ").concat(_(p),")");d={flexBasis:f,maxWidth:f}}}a=(0,i.Z)({flexBasis:u,flexGrow:0,maxWidth:u},d)}return 0===n.breakpoints.values[o]?Object.assign(e,a):e[n.breakpoints.up(o)]=a,e}),{})}));var C=function(e){var t=e.classes,n=e.container,o=e.direction,a=e.item,i=e.spacing,s=e.wrap,l=e.zeroMinWidth,c=e.breakpoints,u=[];n&&(u=function(e,t){if(!e||e<=0)return[];if("string"===typeof e&&!Number.isNaN(Number(e))||"number"===typeof e)return["spacing-xs-".concat(String(e))];var n=[];return t.forEach((function(t){var r=e[t];if(Number(r)>0){var o="spacing-".concat(t,"-").concat(String(r));n.push(o)}})),n}(i,c));var p=[];c.forEach((function(t){var n=e[t];n&&p.push("grid-".concat(t,"-").concat(String(n)))}));var f={root:["root",n&&"container",a&&"item",l&&"zeroMinWidth"].concat((0,r.Z)(u),["row"!==o&&"direction-xs-".concat(String(o)),"wrap"!==s&&"wrap-xs-".concat(String(s))],p)};return(0,d.Z)(f,b,t)},A=s.forwardRef((function(e,t){var n=(0,f.Z)({props:e,name:"MuiGrid"}),r=(0,m.Z)().breakpoints,o=(0,u.Z)(n),c=o.className,d=o.columns,p=o.columnSpacing,g=o.component,v=void 0===g?"div":g,b=o.container,y=void 0!==b&&b,E=o.direction,_=void 0===E?"row":E,T=o.item,A=void 0!==T&&T,k=o.rowSpacing,I=o.spacing,O=void 0===I?0:I,R=o.wrap,N=void 0===R?"wrap":R,M=o.zeroMinWidth,L=void 0!==M&&M,P=(0,a.Z)(o,w),D=k||O,Z=p||O,B=s.useContext(h),z=y?d||12:B,F={},U=(0,i.Z)({},P);r.keys.forEach((function(e){null!=P[e]&&(F[e]=P[e],delete U[e])}));var j=(0,i.Z)({},o,{columns:z,container:y,direction:_,item:A,rowSpacing:D,columnSpacing:Z,wrap:N,zeroMinWidth:L,spacing:O},F,{breakpoints:r.keys}),H=C(j);return(0,S.jsx)(h.Provider,{value:z,children:(0,S.jsx)(x,(0,i.Z)({ownerState:j,className:(0,l.Z)(H.root,c),as:v,ref:t},U))})})),k=A},13208:function(e,t,n){"use strict";var r=n(87462),o=n(63366),a=n(72791),i=n(18875),s=n(13967),l=n(4999),c=n(42071),u=n(80184),d=["addEndListener","appear","children","easing","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","style","timeout","TransitionComponent"];function p(e){return"scale(".concat(e,", ").concat(Math.pow(e,2),")")}var f={entering:{opacity:1,transform:p(1)},entered:{opacity:1,transform:"none"}},m="undefined"!==typeof navigator&&/^((?!chrome|android).)*(safari|mobile)/i.test(navigator.userAgent)&&/(os |version\/)15(.|_)4/i.test(navigator.userAgent),h=a.forwardRef((function(e,t){var n=e.addEndListener,h=e.appear,g=void 0===h||h,v=e.children,b=e.easing,y=e.in,E=e.onEnter,S=e.onEntered,w=e.onEntering,_=e.onExit,T=e.onExited,x=e.onExiting,C=e.style,A=e.timeout,k=void 0===A?"auto":A,I=e.TransitionComponent,O=void 0===I?i.ZP:I,R=(0,o.Z)(e,d),N=a.useRef(),M=a.useRef(),L=(0,s.Z)(),P=a.useRef(null),D=(0,c.Z)(P,v.ref,t),Z=function(e){return function(t){if(e){var n=P.current;void 0===t?e(n):e(n,t)}}},B=Z(w),z=Z((function(e,t){(0,l.n)(e);var n,r=(0,l.C)({style:C,timeout:k,easing:b},{mode:"enter"}),o=r.duration,a=r.delay,i=r.easing;"auto"===k?(n=L.transitions.getAutoHeightDuration(e.clientHeight),M.current=n):n=o,e.style.transition=[L.transitions.create("opacity",{duration:n,delay:a}),L.transitions.create("transform",{duration:m?n:.666*n,delay:a,easing:i})].join(","),E&&E(e,t)})),F=Z(S),U=Z(x),j=Z((function(e){var t,n=(0,l.C)({style:C,timeout:k,easing:b},{mode:"exit"}),r=n.duration,o=n.delay,a=n.easing;"auto"===k?(t=L.transitions.getAutoHeightDuration(e.clientHeight),M.current=t):t=r,e.style.transition=[L.transitions.create("opacity",{duration:t,delay:o}),L.transitions.create("transform",{duration:m?t:.666*t,delay:m?o:o||.333*t,easing:a})].join(","),e.style.opacity=0,e.style.transform=p(.75),_&&_(e)})),H=Z(T);return a.useEffect((function(){return function(){clearTimeout(N.current)}}),[]),(0,u.jsx)(O,(0,r.Z)({appear:g,in:y,nodeRef:P,onEnter:z,onEntered:F,onEntering:B,onExit:j,onExited:H,onExiting:U,addEndListener:function(e){"auto"===k&&(N.current=setTimeout(e,M.current||0)),n&&n(P.current,e)},timeout:"auto"===k?null:k},R,{children:function(e,t){return a.cloneElement(v,(0,r.Z)({style:(0,r.Z)({opacity:0,transform:p(.75),visibility:"exited"!==e||y?void 0:"hidden"},f[e],C,v.props.style),ref:D},t))}}))}));h.muiSupportAuto=!0,t.Z=h},13400:function(e,t,n){"use strict";n.d(t,{Z:function(){return S}});var r=n(4942),o=n(63366),a=n(87462),i=n(72791),s=n(28182),l=n(94419),c=n(12065),u=n(66934),d=n(31402),p=n(95080),f=n(14036),m=n(75878),h=n(21217);function g(e){return(0,h.Z)("MuiIconButton",e)}var v=(0,m.Z)("MuiIconButton",["root","disabled","colorInherit","colorPrimary","colorSecondary","colorError","colorInfo","colorSuccess","colorWarning","edgeStart","edgeEnd","sizeSmall","sizeMedium","sizeLarge"]),b=n(80184),y=["edge","children","className","color","disabled","disableFocusRipple","size"],E=(0,u.ZP)(p.Z,{name:"MuiIconButton",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,"default"!==n.color&&t["color".concat((0,f.Z)(n.color))],n.edge&&t["edge".concat((0,f.Z)(n.edge))],t["size".concat((0,f.Z)(n.size))]]}})((function(e){var t=e.theme,n=e.ownerState;return(0,a.Z)({textAlign:"center",flex:"0 0 auto",fontSize:t.typography.pxToRem(24),padding:8,borderRadius:"50%",overflow:"visible",color:(t.vars||t).palette.action.active,transition:t.transitions.create("background-color",{duration:t.transitions.duration.shortest})},!n.disableRipple&&{"&:hover":{backgroundColor:t.vars?"rgba(".concat(t.vars.palette.action.activeChannel," / ").concat(t.vars.palette.action.hoverOpacity,")"):(0,c.Fq)(t.palette.action.active,t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"start"===n.edge&&{marginLeft:"small"===n.size?-3:-12},"end"===n.edge&&{marginRight:"small"===n.size?-3:-12})}),(function(e){var t,n=e.theme,o=e.ownerState,i=null==(t=(n.vars||n).palette)?void 0:t[o.color];return(0,a.Z)({},"inherit"===o.color&&{color:"inherit"},"inherit"!==o.color&&"default"!==o.color&&(0,a.Z)({color:null==i?void 0:i.main},!o.disableRipple&&{"&:hover":(0,a.Z)({},i&&{backgroundColor:n.vars?"rgba(".concat(i.mainChannel," / ").concat(n.vars.palette.action.hoverOpacity,")"):(0,c.Fq)(i.main,n.palette.action.hoverOpacity)},{"@media (hover: none)":{backgroundColor:"transparent"}})}),"small"===o.size&&{padding:5,fontSize:n.typography.pxToRem(18)},"large"===o.size&&{padding:12,fontSize:n.typography.pxToRem(28)},(0,r.Z)({},"&.".concat(v.disabled),{backgroundColor:"transparent",color:(n.vars||n).palette.action.disabled}))})),S=i.forwardRef((function(e,t){var n=(0,d.Z)({props:e,name:"MuiIconButton"}),r=n.edge,i=void 0!==r&&r,c=n.children,u=n.className,p=n.color,m=void 0===p?"default":p,h=n.disabled,v=void 0!==h&&h,S=n.disableFocusRipple,w=void 0!==S&&S,_=n.size,T=void 0===_?"medium":_,x=(0,o.Z)(n,y),C=(0,a.Z)({},n,{edge:i,color:m,disabled:v,disableFocusRipple:w,size:T}),A=function(e){var t=e.classes,n=e.disabled,r=e.color,o=e.edge,a=e.size,i={root:["root",n&&"disabled","default"!==r&&"color".concat((0,f.Z)(r)),o&&"edge".concat((0,f.Z)(o)),"size".concat((0,f.Z)(a))]};return(0,l.Z)(i,g,t)}(C);return(0,b.jsx)(E,(0,a.Z)({className:(0,s.Z)(A.root,u),centerRipple:!0,focusRipple:!w,disabled:v,ref:t,ownerState:C},x,{children:c}))}))},40986:function(e,t,n){"use strict";var r,o,a,i,s,l,c,u,d,p,f,m,h=n(30168),g=n(63366),v=n(87462),b=n(72791),y=n(28182),E=n(94419),S=n(52554),w=n(12065),_=n(14036),T=n(13967),x=n(66934),C=n(31402),A=n(78917),k=n(80184),I=["className","color","value","valueBuffer","variant"],O=(0,S.F4)(c||(c=r||(r=(0,h.Z)(["\n 0% {\n left: -35%;\n right: 100%;\n }\n\n 60% {\n left: 100%;\n right: -90%;\n }\n\n 100% {\n left: 100%;\n right: -90%;\n }\n"])))),R=(0,S.F4)(u||(u=o||(o=(0,h.Z)(["\n 0% {\n left: -200%;\n right: 100%;\n }\n\n 60% {\n left: 107%;\n right: -8%;\n }\n\n 100% {\n left: 107%;\n right: -8%;\n }\n"])))),N=(0,S.F4)(d||(d=a||(a=(0,h.Z)(["\n 0% {\n opacity: 1;\n background-position: 0 -23px;\n }\n\n 60% {\n opacity: 0;\n background-position: 0 -23px;\n }\n\n 100% {\n opacity: 1;\n background-position: -200px -23px;\n }\n"])))),M=function(e,t){return"inherit"===t?"currentColor":e.vars?e.vars.palette.LinearProgress["".concat(t,"Bg")]:"light"===e.palette.mode?(0,w.$n)(e.palette[t].main,.62):(0,w._j)(e.palette[t].main,.5)},L=(0,x.ZP)("span",{name:"MuiLinearProgress",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,t["color".concat((0,_.Z)(n.color))],t[n.variant]]}})((function(e){var t=e.ownerState,n=e.theme;return(0,v.Z)({position:"relative",overflow:"hidden",display:"block",height:4,zIndex:0,"@media print":{colorAdjust:"exact"},backgroundColor:M(n,t.color)},"inherit"===t.color&&"buffer"!==t.variant&&{backgroundColor:"none","&::before":{content:'""',position:"absolute",left:0,top:0,right:0,bottom:0,backgroundColor:"currentColor",opacity:.3}},"buffer"===t.variant&&{backgroundColor:"transparent"},"query"===t.variant&&{transform:"rotate(180deg)"})})),P=(0,x.ZP)("span",{name:"MuiLinearProgress",slot:"Dashed",overridesResolver:function(e,t){var n=e.ownerState;return[t.dashed,t["dashedColor".concat((0,_.Z)(n.color))]]}})((function(e){var t=e.ownerState,n=e.theme,r=M(n,t.color);return(0,v.Z)({position:"absolute",marginTop:0,height:"100%",width:"100%"},"inherit"===t.color&&{opacity:.3},{backgroundImage:"radial-gradient(".concat(r," 0%, ").concat(r," 16%, transparent 42%)"),backgroundSize:"10px 10px",backgroundPosition:"0 -23px"})}),(0,S.iv)(p||(p=i||(i=(0,h.Z)(["\n animation: "," 3s infinite linear;\n "]))),N)),D=(0,x.ZP)("span",{name:"MuiLinearProgress",slot:"Bar1",overridesResolver:function(e,t){var n=e.ownerState;return[t.bar,t["barColor".concat((0,_.Z)(n.color))],("indeterminate"===n.variant||"query"===n.variant)&&t.bar1Indeterminate,"determinate"===n.variant&&t.bar1Determinate,"buffer"===n.variant&&t.bar1Buffer]}})((function(e){var t=e.ownerState,n=e.theme;return(0,v.Z)({width:"100%",position:"absolute",left:0,bottom:0,top:0,transition:"transform 0.2s linear",transformOrigin:"left",backgroundColor:"inherit"===t.color?"currentColor":(n.vars||n).palette[t.color].main},"determinate"===t.variant&&{transition:"transform .".concat(4,"s linear")},"buffer"===t.variant&&{zIndex:1,transition:"transform .".concat(4,"s linear")})}),(function(e){var t=e.ownerState;return("indeterminate"===t.variant||"query"===t.variant)&&(0,S.iv)(f||(f=s||(s=(0,h.Z)(["\n width: auto;\n animation: "," 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n "]))),O)})),Z=(0,x.ZP)("span",{name:"MuiLinearProgress",slot:"Bar2",overridesResolver:function(e,t){var n=e.ownerState;return[t.bar,t["barColor".concat((0,_.Z)(n.color))],("indeterminate"===n.variant||"query"===n.variant)&&t.bar2Indeterminate,"buffer"===n.variant&&t.bar2Buffer]}})((function(e){var t=e.ownerState,n=e.theme;return(0,v.Z)({width:"100%",position:"absolute",left:0,bottom:0,top:0,transition:"transform 0.2s linear",transformOrigin:"left"},"buffer"!==t.variant&&{backgroundColor:"inherit"===t.color?"currentColor":(n.vars||n).palette[t.color].main},"inherit"===t.color&&{opacity:.3},"buffer"===t.variant&&{backgroundColor:M(n,t.color),transition:"transform .".concat(4,"s linear")})}),(function(e){var t=e.ownerState;return("indeterminate"===t.variant||"query"===t.variant)&&(0,S.iv)(m||(m=l||(l=(0,h.Z)(["\n width: auto;\n animation: "," 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.15s infinite;\n "]))),R)})),B=b.forwardRef((function(e,t){var n=(0,C.Z)({props:e,name:"MuiLinearProgress"}),r=n.className,o=n.color,a=void 0===o?"primary":o,i=n.value,s=n.valueBuffer,l=n.variant,c=void 0===l?"indeterminate":l,u=(0,g.Z)(n,I),d=(0,v.Z)({},n,{color:a,variant:c}),p=function(e){var t=e.classes,n=e.variant,r=e.color,o={root:["root","color".concat((0,_.Z)(r)),n],dashed:["dashed","dashedColor".concat((0,_.Z)(r))],bar1:["bar","barColor".concat((0,_.Z)(r)),("indeterminate"===n||"query"===n)&&"bar1Indeterminate","determinate"===n&&"bar1Determinate","buffer"===n&&"bar1Buffer"],bar2:["bar","buffer"!==n&&"barColor".concat((0,_.Z)(r)),"buffer"===n&&"color".concat((0,_.Z)(r)),("indeterminate"===n||"query"===n)&&"bar2Indeterminate","buffer"===n&&"bar2Buffer"]};return(0,E.Z)(o,A.E,t)}(d),f=(0,T.Z)(),m={},h={bar1:{},bar2:{}};if("determinate"===c||"buffer"===c)if(void 0!==i){m["aria-valuenow"]=Math.round(i),m["aria-valuemin"]=0,m["aria-valuemax"]=100;var b=i-100;"rtl"===f.direction&&(b=-b),h.bar1.transform="translateX(".concat(b,"%)")}else 0;if("buffer"===c)if(void 0!==s){var S=(s||0)-100;"rtl"===f.direction&&(S=-S),h.bar2.transform="translateX(".concat(S,"%)")}else 0;return(0,k.jsxs)(L,(0,v.Z)({className:(0,y.Z)(p.root,r),ownerState:d,role:"progressbar"},m,{ref:t},u,{children:["buffer"===c?(0,k.jsx)(P,{className:p.dashed,ownerState:d}):null,(0,k.jsx)(D,{className:p.bar1,ownerState:d,style:h.bar1}),"determinate"===c?null:(0,k.jsx)(Z,{className:p.bar2,ownerState:d,style:h.bar2})]}))}));t.Z=B},78917:function(e,t,n){"use strict";n.d(t,{E:function(){return a}});var r=n(75878),o=n(21217);function a(e){return(0,o.Z)("MuiLinearProgress",e)}var i=(0,r.Z)("MuiLinearProgress",["root","colorPrimary","colorSecondary","determinate","indeterminate","buffer","query","dashed","dashedColorPrimary","dashedColorSecondary","bar","barColorPrimary","barColorSecondary","bar1Indeterminate","bar1Determinate","bar1Buffer","bar2Indeterminate","bar2Buffer"]);t.Z=i},50533:function(e,t,n){"use strict";n.d(t,{Z:function(){return k}});var r=n(93433),o=n(29439),a=n(4942),i=n(63366),s=n(87462),l=n(72791),c=n(28182),u=n(94419),d=n(14036),p=n(66934),f=n(31402),m=n(23031),h=n(42071),g=n(20890),v=n(75878),b=n(21217);function y(e){return(0,b.Z)("MuiLink",e)}var E=(0,v.Z)("MuiLink",["root","underlineNone","underlineHover","underlineAlways","button","focusVisible"]),S=n(18529),w=n(12065),_={primary:"primary.main",textPrimary:"text.primary",secondary:"secondary.main",textSecondary:"text.secondary",error:"error.main"},T=function(e){var t=e.theme,n=e.ownerState,r=function(e){return _[e]||e}(n.color),o=(0,S.DW)(t,"palette.".concat(r),!1)||n.color,a=(0,S.DW)(t,"palette.".concat(r,"Channel"));return"vars"in t&&a?"rgba(".concat(a," / 0.4)"):(0,w.Fq)(o,.4)},x=n(80184),C=["className","color","component","onBlur","onFocus","TypographyClasses","underline","variant","sx"],A=(0,p.ZP)(g.Z,{name:"MuiLink",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,t["underline".concat((0,d.Z)(n.underline))],"button"===n.component&&t.button]}})((function(e){var t=e.theme,n=e.ownerState;return(0,s.Z)({},"none"===n.underline&&{textDecoration:"none"},"hover"===n.underline&&{textDecoration:"none","&:hover":{textDecoration:"underline"}},"always"===n.underline&&(0,s.Z)({textDecoration:"underline"},"inherit"!==n.color&&{textDecorationColor:T({theme:t,ownerState:n})},{"&:hover":{textDecorationColor:"inherit"}}),"button"===n.component&&(0,a.Z)({position:"relative",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle",MozAppearance:"none",WebkitAppearance:"none","&::-moz-focus-inner":{borderStyle:"none"}},"&.".concat(E.focusVisible),{outline:"auto"}))})),k=l.forwardRef((function(e,t){var n=(0,f.Z)({props:e,name:"MuiLink"}),a=n.className,p=n.color,g=void 0===p?"primary":p,v=n.component,b=void 0===v?"a":v,E=n.onBlur,S=n.onFocus,w=n.TypographyClasses,T=n.underline,k=void 0===T?"always":T,I=n.variant,O=void 0===I?"inherit":I,R=n.sx,N=(0,i.Z)(n,C),M=(0,m.Z)(),L=M.isFocusVisibleRef,P=M.onBlur,D=M.onFocus,Z=M.ref,B=l.useState(!1),z=(0,o.Z)(B,2),F=z[0],U=z[1],j=(0,h.Z)(t,Z),H=(0,s.Z)({},n,{color:g,component:b,focusVisible:F,underline:k,variant:O}),G=function(e){var t=e.classes,n=e.component,r=e.focusVisible,o=e.underline,a={root:["root","underline".concat((0,d.Z)(o)),"button"===n&&"button",r&&"focusVisible"]};return(0,u.Z)(a,y,t)}(H);return(0,x.jsx)(A,(0,s.Z)({color:g,className:(0,c.Z)(G.root,a),classes:w,component:b,onBlur:function(e){P(e),!1===L.current&&U(!1),E&&E(e)},onFocus:function(e){D(e),!0===L.current&&U(!0),S&&S(e)},ref:j,ownerState:H,variant:O,sx:[].concat((0,r.Z)(Object.keys(_).includes(g)?[]:[{color:g}]),(0,r.Z)(Array.isArray(R)?R:[R]))},N))}))},66199:function(e,t,n){"use strict";var r=n(72791).createContext({});t.Z=r},96014:function(e,t,n){"use strict";n.d(t,{f:function(){return a}});var r=n(75878),o=n(21217);function a(e){return(0,o.Z)("MuiListItemIcon",e)}var i=(0,r.Z)("MuiListItemIcon",["root","alignItemsFlexStart"]);t.Z=i},29849:function(e,t,n){"use strict";n.d(t,{L:function(){return a}});var r=n(75878),o=n(21217);function a(e){return(0,o.Z)("MuiListItemText",e)}var i=(0,r.Z)("MuiListItemText",["root","multiline","dense","inset","primary","secondary"]);t.Z=i},77865:function(e,t,n){"use strict";n.d(t,{Z:function(){return C}});var r=n(4942),o=n(63366),a=n(87462),i=n(72791),s=n(28182),l=n(94419),c=n(12065),u=n(66934),d=n(31402),p=n(66199),f=n(95080),m=n(40162),h=n(42071),g=n(75878);var v=(0,g.Z)("MuiDivider",["root","absolute","fullWidth","inset","middle","flexItem","light","vertical","withChildren","withChildrenVertical","textAlignRight","textAlignLeft","wrapper","wrapperVertical"]),b=n(96014),y=n(29849),E=n(21217);function S(e){return(0,E.Z)("MuiMenuItem",e)}var w=(0,g.Z)("MuiMenuItem",["root","focusVisible","dense","disabled","divider","gutters","selected"]),_=n(80184),T=["autoFocus","component","dense","divider","disableGutters","focusVisibleClassName","role","tabIndex","className"],x=(0,u.ZP)(f.Z,{shouldForwardProp:function(e){return(0,u.FO)(e)||"classes"===e},name:"MuiMenuItem",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,n.dense&&t.dense,n.divider&&t.divider,!n.disableGutters&&t.gutters]}})((function(e){var t,n=e.theme,o=e.ownerState;return(0,a.Z)({},n.typography.body1,{display:"flex",justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",minHeight:48,paddingTop:6,paddingBottom:6,boxSizing:"border-box",whiteSpace:"nowrap"},!o.disableGutters&&{paddingLeft:16,paddingRight:16},o.divider&&{borderBottom:"1px solid ".concat((n.vars||n).palette.divider),backgroundClip:"padding-box"},(t={"&:hover":{textDecoration:"none",backgroundColor:(n.vars||n).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}}},(0,r.Z)(t,"&.".concat(w.selected),(0,r.Z)({backgroundColor:n.vars?"rgba(".concat(n.vars.palette.primary.mainChannel," / ").concat(n.vars.palette.action.selectedOpacity,")"):(0,c.Fq)(n.palette.primary.main,n.palette.action.selectedOpacity)},"&.".concat(w.focusVisible),{backgroundColor:n.vars?"rgba(".concat(n.vars.palette.primary.mainChannel," / calc(").concat(n.vars.palette.action.selectedOpacity," + ").concat(n.vars.palette.action.focusOpacity,"))"):(0,c.Fq)(n.palette.primary.main,n.palette.action.selectedOpacity+n.palette.action.focusOpacity)})),(0,r.Z)(t,"&.".concat(w.selected,":hover"),{backgroundColor:n.vars?"rgba(".concat(n.vars.palette.primary.mainChannel," / calc(").concat(n.vars.palette.action.selectedOpacity," + ").concat(n.vars.palette.action.hoverOpacity,"))"):(0,c.Fq)(n.palette.primary.main,n.palette.action.selectedOpacity+n.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:n.vars?"rgba(".concat(n.vars.palette.primary.mainChannel," / ").concat(n.vars.palette.action.selectedOpacity,")"):(0,c.Fq)(n.palette.primary.main,n.palette.action.selectedOpacity)}}),(0,r.Z)(t,"&.".concat(w.focusVisible),{backgroundColor:(n.vars||n).palette.action.focus}),(0,r.Z)(t,"&.".concat(w.disabled),{opacity:(n.vars||n).palette.action.disabledOpacity}),(0,r.Z)(t,"& + .".concat(v.root),{marginTop:n.spacing(1),marginBottom:n.spacing(1)}),(0,r.Z)(t,"& + .".concat(v.inset),{marginLeft:52}),(0,r.Z)(t,"& .".concat(y.Z.root),{marginTop:0,marginBottom:0}),(0,r.Z)(t,"& .".concat(y.Z.inset),{paddingLeft:36}),(0,r.Z)(t,"& .".concat(b.Z.root),{minWidth:36}),t),!o.dense&&(0,r.Z)({},n.breakpoints.up("sm"),{minHeight:"auto"}),o.dense&&(0,a.Z)({minHeight:32,paddingTop:4,paddingBottom:4},n.typography.body2,(0,r.Z)({},"& .".concat(b.Z.root," svg"),{fontSize:"1.25rem"})))})),C=i.forwardRef((function(e,t){var n=(0,d.Z)({props:e,name:"MuiMenuItem"}),r=n.autoFocus,c=void 0!==r&&r,u=n.component,f=void 0===u?"li":u,g=n.dense,v=void 0!==g&&g,b=n.divider,y=void 0!==b&&b,E=n.disableGutters,w=void 0!==E&&E,C=n.focusVisibleClassName,A=n.role,k=void 0===A?"menuitem":A,I=n.tabIndex,O=n.className,R=(0,o.Z)(n,T),N=i.useContext(p.Z),M=i.useMemo((function(){return{dense:v||N.dense||!1,disableGutters:w}}),[N.dense,v,w]),L=i.useRef(null);(0,m.Z)((function(){c&&L.current&&L.current.focus()}),[c]);var P,D=(0,a.Z)({},n,{dense:M.dense,divider:y,disableGutters:w}),Z=function(e){var t=e.disabled,n=e.dense,r=e.divider,o=e.disableGutters,i=e.selected,s=e.classes,c={root:["root",n&&"dense",t&&"disabled",!o&&"gutters",r&&"divider",i&&"selected"]},u=(0,l.Z)(c,S,s);return(0,a.Z)({},s,u)}(n),B=(0,h.Z)(L,t);return n.disabled||(P=void 0!==I?I:-1),(0,_.jsx)(p.Z.Provider,{value:M,children:(0,_.jsx)(x,(0,a.Z)({ref:B,role:k,tabIndex:P,component:f,focusVisibleClassName:(0,s.Z)(Z.focusVisible,C),className:(0,s.Z)(Z.root,O)},R,{ownerState:D,classes:Z}))})}))},35527:function(e,t,n){"use strict";n.d(t,{Z:function(){return b}});var r=n(63366),o=n(87462),a=n(72791),i=n(28182),s=n(94419),l=n(12065),c=n(66934),u=function(e){return((e<1?5.11916*Math.pow(e,2):4.5*Math.log(e+1)+2)/100).toFixed(2)},d=n(31402),p=n(75878),f=n(21217);function m(e){return(0,f.Z)("MuiPaper",e)}(0,p.Z)("MuiPaper",["root","rounded","outlined","elevation","elevation0","elevation1","elevation2","elevation3","elevation4","elevation5","elevation6","elevation7","elevation8","elevation9","elevation10","elevation11","elevation12","elevation13","elevation14","elevation15","elevation16","elevation17","elevation18","elevation19","elevation20","elevation21","elevation22","elevation23","elevation24"]);var h=n(80184),g=["className","component","elevation","square","variant"],v=(0,c.ZP)("div",{name:"MuiPaper",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,t[n.variant],!n.square&&t.rounded,"elevation"===n.variant&&t["elevation".concat(n.elevation)]]}})((function(e){var t,n=e.theme,r=e.ownerState;return(0,o.Z)({backgroundColor:(n.vars||n).palette.background.paper,color:(n.vars||n).palette.text.primary,transition:n.transitions.create("box-shadow")},!r.square&&{borderRadius:n.shape.borderRadius},"outlined"===r.variant&&{border:"1px solid ".concat((n.vars||n).palette.divider)},"elevation"===r.variant&&(0,o.Z)({boxShadow:(n.vars||n).shadows[r.elevation]},!n.vars&&"dark"===n.palette.mode&&{backgroundImage:"linear-gradient(".concat((0,l.Fq)("#fff",u(r.elevation)),", ").concat((0,l.Fq)("#fff",u(r.elevation)),")")},n.vars&&{backgroundImage:null==(t=n.vars.overlays)?void 0:t[r.elevation]}))})),b=a.forwardRef((function(e,t){var n=(0,d.Z)({props:e,name:"MuiPaper"}),a=n.className,l=n.component,c=void 0===l?"div":l,u=n.elevation,p=void 0===u?1:u,f=n.square,b=void 0!==f&&f,y=n.variant,E=void 0===y?"elevation":y,S=(0,r.Z)(n,g),w=(0,o.Z)({},n,{component:c,elevation:p,square:b,variant:E}),_=function(e){var t=e.square,n=e.elevation,r=e.variant,o=e.classes,a={root:["root",r,!t&&"rounded","elevation"===r&&"elevation".concat(n)]};return(0,s.Z)(a,m,o)}(w);return(0,h.jsx)(v,(0,o.Z)({as:c,ownerState:w,className:(0,i.Z)(_.root,a),ref:t},S))}))},41:function(e,t,n){"use strict";n.d(t,{Z:function(){return Ge}});var r=n(87462),o=n(63366),a=n(29439),i=n(72791),s=n(6117),l=n(62876),c=n(84913);function u(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function d(e){return e instanceof u(e).Element||e instanceof Element}function p(e){return e instanceof u(e).HTMLElement||e instanceof HTMLElement}function f(e){return"undefined"!==typeof ShadowRoot&&(e instanceof u(e).ShadowRoot||e instanceof ShadowRoot)}var m=Math.max,h=Math.min,g=Math.round;function v(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function b(){return!/^((?!chrome|android).)*safari/i.test(v())}function y(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!1);var r=e.getBoundingClientRect(),o=1,a=1;t&&p(e)&&(o=e.offsetWidth>0&&g(r.width)/e.offsetWidth||1,a=e.offsetHeight>0&&g(r.height)/e.offsetHeight||1);var i=(d(e)?u(e):window).visualViewport,s=!b()&&n,l=(r.left+(s&&i?i.offsetLeft:0))/o,c=(r.top+(s&&i?i.offsetTop:0))/a,f=r.width/o,m=r.height/a;return{width:f,height:m,top:c,right:l+f,bottom:c+m,left:l,x:l,y:c}}function E(e){var t=u(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function S(e){return e?(e.nodeName||"").toLowerCase():null}function w(e){return((d(e)?e.ownerDocument:e.document)||window.document).documentElement}function _(e){return y(w(e)).left+E(e).scrollLeft}function T(e){return u(e).getComputedStyle(e)}function x(e){var t=T(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function C(e,t,n){void 0===n&&(n=!1);var r=p(t),o=p(t)&&function(e){var t=e.getBoundingClientRect(),n=g(t.width)/e.offsetWidth||1,r=g(t.height)/e.offsetHeight||1;return 1!==n||1!==r}(t),a=w(t),i=y(e,o,n),s={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(r||!r&&!n)&&(("body"!==S(t)||x(a))&&(s=function(e){return e!==u(e)&&p(e)?{scrollLeft:(t=e).scrollLeft,scrollTop:t.scrollTop}:E(e);var t}(t)),p(t)?((l=y(t,!0)).x+=t.clientLeft,l.y+=t.clientTop):a&&(l.x=_(a))),{x:i.left+s.scrollLeft-l.x,y:i.top+s.scrollTop-l.y,width:i.width,height:i.height}}function A(e){var t=y(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function k(e){return"html"===S(e)?e:e.assignedSlot||e.parentNode||(f(e)?e.host:null)||w(e)}function I(e){return["html","body","#document"].indexOf(S(e))>=0?e.ownerDocument.body:p(e)&&x(e)?e:I(k(e))}function O(e,t){var n;void 0===t&&(t=[]);var r=I(e),o=r===(null==(n=e.ownerDocument)?void 0:n.body),a=u(r),i=o?[a].concat(a.visualViewport||[],x(r)?r:[]):r,s=t.concat(i);return o?s:s.concat(O(k(i)))}function R(e){return["table","td","th"].indexOf(S(e))>=0}function N(e){return p(e)&&"fixed"!==T(e).position?e.offsetParent:null}function M(e){for(var t=u(e),n=N(e);n&&R(n)&&"static"===T(n).position;)n=N(n);return n&&("html"===S(n)||"body"===S(n)&&"static"===T(n).position)?t:n||function(e){var t=/firefox/i.test(v());if(/Trident/i.test(v())&&p(e)&&"fixed"===T(e).position)return null;var n=k(e);for(f(n)&&(n=n.host);p(n)&&["html","body"].indexOf(S(n))<0;){var r=T(n);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||t&&"filter"===r.willChange||t&&r.filter&&"none"!==r.filter)return n;n=n.parentNode}return null}(e)||t}var L="top",P="bottom",D="right",Z="left",B="auto",z=[L,P,D,Z],F="start",U="end",j="clippingParents",H="viewport",G="popper",V="reference",W=z.reduce((function(e,t){return e.concat([t+"-"+F,t+"-"+U])}),[]),q=[].concat(z,[B]).reduce((function(e,t){return e.concat([t,t+"-"+F,t+"-"+U])}),[]),$=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function K(e){var t=new Map,n=new Set,r=[];function o(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&o(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||o(e)})),r}function Y(e){var t;return function(){return t||(t=new Promise((function(n){Promise.resolve().then((function(){t=void 0,n(e())}))}))),t}}var X={placement:"bottom",modifiers:[],strategy:"absolute"};function Q(){for(var e=arguments.length,t=new Array(e),n=0;n=0?"x":"y"}function oe(e){var t,n=e.reference,r=e.element,o=e.placement,a=o?te(o):null,i=o?ne(o):null,s=n.x+n.width/2-r.width/2,l=n.y+n.height/2-r.height/2;switch(a){case L:t={x:s,y:n.y-r.height};break;case P:t={x:s,y:n.y+n.height};break;case D:t={x:n.x+n.width,y:l};break;case Z:t={x:n.x-r.width,y:l};break;default:t={x:n.x,y:n.y}}var c=a?re(a):null;if(null!=c){var u="y"===c?"height":"width";switch(i){case F:t[c]=t[c]-(n[u]/2-r[u]/2);break;case U:t[c]=t[c]+(n[u]/2-r[u]/2)}}return t}var ae={top:"auto",right:"auto",bottom:"auto",left:"auto"};function ie(e){var t,n=e.popper,r=e.popperRect,o=e.placement,a=e.variation,i=e.offsets,s=e.position,l=e.gpuAcceleration,c=e.adaptive,d=e.roundOffsets,p=e.isFixed,f=i.x,m=void 0===f?0:f,h=i.y,v=void 0===h?0:h,b="function"===typeof d?d({x:m,y:v}):{x:m,y:v};m=b.x,v=b.y;var y=i.hasOwnProperty("x"),E=i.hasOwnProperty("y"),S=Z,_=L,x=window;if(c){var C=M(n),A="clientHeight",k="clientWidth";if(C===u(n)&&"static"!==T(C=w(n)).position&&"absolute"===s&&(A="scrollHeight",k="scrollWidth"),o===L||(o===Z||o===D)&&a===U)_=P,v-=(p&&C===x&&x.visualViewport?x.visualViewport.height:C[A])-r.height,v*=l?1:-1;if(o===Z||(o===L||o===P)&&a===U)S=D,m-=(p&&C===x&&x.visualViewport?x.visualViewport.width:C[k])-r.width,m*=l?1:-1}var I,O=Object.assign({position:s},c&&ae),R=!0===d?function(e,t){var n=e.x,r=e.y,o=t.devicePixelRatio||1;return{x:g(n*o)/o||0,y:g(r*o)/o||0}}({x:m,y:v},u(n)):{x:m,y:v};return m=R.x,v=R.y,l?Object.assign({},O,((I={})[_]=E?"0":"",I[S]=y?"0":"",I.transform=(x.devicePixelRatio||1)<=1?"translate("+m+"px, "+v+"px)":"translate3d("+m+"px, "+v+"px, 0)",I)):Object.assign({},O,((t={})[_]=E?v+"px":"",t[S]=y?m+"px":"",t.transform="",t))}var se={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.offset,a=void 0===o?[0,0]:o,i=q.reduce((function(e,n){return e[n]=function(e,t,n){var r=te(e),o=[Z,L].indexOf(r)>=0?-1:1,a="function"===typeof n?n(Object.assign({},t,{placement:e})):n,i=a[0],s=a[1];return i=i||0,s=(s||0)*o,[Z,D].indexOf(r)>=0?{x:s,y:i}:{x:i,y:s}}(n,t.rects,a),e}),{}),s=i[t.placement],l=s.x,c=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=c),t.modifiersData[r]=i}},le={left:"right",right:"left",bottom:"top",top:"bottom"};function ce(e){return e.replace(/left|right|bottom|top/g,(function(e){return le[e]}))}var ue={start:"end",end:"start"};function de(e){return e.replace(/start|end/g,(function(e){return ue[e]}))}function pe(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&f(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function fe(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function me(e,t,n){return t===H?fe(function(e,t){var n=u(e),r=w(e),o=n.visualViewport,a=r.clientWidth,i=r.clientHeight,s=0,l=0;if(o){a=o.width,i=o.height;var c=b();(c||!c&&"fixed"===t)&&(s=o.offsetLeft,l=o.offsetTop)}return{width:a,height:i,x:s+_(e),y:l}}(e,n)):d(t)?function(e,t){var n=y(e,!1,"fixed"===t);return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}(t,n):fe(function(e){var t,n=w(e),r=E(e),o=null==(t=e.ownerDocument)?void 0:t.body,a=m(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),i=m(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),s=-r.scrollLeft+_(e),l=-r.scrollTop;return"rtl"===T(o||n).direction&&(s+=m(n.clientWidth,o?o.clientWidth:0)-a),{width:a,height:i,x:s,y:l}}(w(e)))}function he(e,t,n,r){var o="clippingParents"===t?function(e){var t=O(k(e)),n=["absolute","fixed"].indexOf(T(e).position)>=0&&p(e)?M(e):e;return d(n)?t.filter((function(e){return d(e)&&pe(e,n)&&"body"!==S(e)})):[]}(e):[].concat(t),a=[].concat(o,[n]),i=a[0],s=a.reduce((function(t,n){var o=me(e,n,r);return t.top=m(o.top,t.top),t.right=h(o.right,t.right),t.bottom=h(o.bottom,t.bottom),t.left=m(o.left,t.left),t}),me(e,i,r));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function ge(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function ve(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}function be(e,t){void 0===t&&(t={});var n=t,r=n.placement,o=void 0===r?e.placement:r,a=n.strategy,i=void 0===a?e.strategy:a,s=n.boundary,l=void 0===s?j:s,c=n.rootBoundary,u=void 0===c?H:c,p=n.elementContext,f=void 0===p?G:p,m=n.altBoundary,h=void 0!==m&&m,g=n.padding,v=void 0===g?0:g,b=ge("number"!==typeof v?v:ve(v,z)),E=f===G?V:G,S=e.rects.popper,_=e.elements[h?E:f],T=he(d(_)?_:_.contextElement||w(e.elements.popper),l,u,i),x=y(e.elements.reference),C=oe({reference:x,element:S,strategy:"absolute",placement:o}),A=fe(Object.assign({},S,C)),k=f===G?A:x,I={top:T.top-k.top+b.top,bottom:k.bottom-T.bottom+b.bottom,left:T.left-k.left+b.left,right:k.right-T.right+b.right},O=e.modifiersData.offset;if(f===G&&O){var R=O[o];Object.keys(I).forEach((function(e){var t=[D,P].indexOf(e)>=0?1:-1,n=[L,P].indexOf(e)>=0?"y":"x";I[e]+=R[n]*t}))}return I}function ye(e,t,n){return m(e,h(t,n))}var Ee={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.mainAxis,a=void 0===o||o,i=n.altAxis,s=void 0!==i&&i,l=n.boundary,c=n.rootBoundary,u=n.altBoundary,d=n.padding,p=n.tether,f=void 0===p||p,g=n.tetherOffset,v=void 0===g?0:g,b=be(t,{boundary:l,rootBoundary:c,padding:d,altBoundary:u}),y=te(t.placement),E=ne(t.placement),S=!E,w=re(y),_="x"===w?"y":"x",T=t.modifiersData.popperOffsets,x=t.rects.reference,C=t.rects.popper,k="function"===typeof v?v(Object.assign({},t.rects,{placement:t.placement})):v,I="number"===typeof k?{mainAxis:k,altAxis:k}:Object.assign({mainAxis:0,altAxis:0},k),O=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,R={x:0,y:0};if(T){if(a){var N,B="y"===w?L:Z,z="y"===w?P:D,U="y"===w?"height":"width",j=T[w],H=j+b[B],G=j-b[z],V=f?-C[U]/2:0,W=E===F?x[U]:C[U],q=E===F?-C[U]:-x[U],$=t.elements.arrow,K=f&&$?A($):{width:0,height:0},Y=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},X=Y[B],Q=Y[z],J=ye(0,x[U],K[U]),ee=S?x[U]/2-V-J-X-I.mainAxis:W-J-X-I.mainAxis,oe=S?-x[U]/2+V+J+Q+I.mainAxis:q+J+Q+I.mainAxis,ae=t.elements.arrow&&M(t.elements.arrow),ie=ae?"y"===w?ae.clientTop||0:ae.clientLeft||0:0,se=null!=(N=null==O?void 0:O[w])?N:0,le=j+oe-se,ce=ye(f?h(H,j+ee-se-ie):H,j,f?m(G,le):G);T[w]=ce,R[w]=ce-j}if(s){var ue,de="x"===w?L:Z,pe="x"===w?P:D,fe=T[_],me="y"===_?"height":"width",he=fe+b[de],ge=fe-b[pe],ve=-1!==[L,Z].indexOf(y),Ee=null!=(ue=null==O?void 0:O[_])?ue:0,Se=ve?he:fe-x[me]-C[me]-Ee+I.altAxis,we=ve?fe+x[me]+C[me]-Ee-I.altAxis:ge,_e=f&&ve?function(e,t,n){var r=ye(e,t,n);return r>n?n:r}(Se,fe,we):ye(f?Se:he,fe,f?we:ge);T[_]=_e,R[_]=_e-fe}t.modifiersData[r]=R}},requiresIfExists:["offset"]};var Se={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,r=e.name,o=e.options,a=n.elements.arrow,i=n.modifiersData.popperOffsets,s=te(n.placement),l=re(s),c=[Z,D].indexOf(s)>=0?"height":"width";if(a&&i){var u=function(e,t){return ge("number"!==typeof(e="function"===typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:ve(e,z))}(o.padding,n),d=A(a),p="y"===l?L:Z,f="y"===l?P:D,m=n.rects.reference[c]+n.rects.reference[l]-i[l]-n.rects.popper[c],h=i[l]-n.rects.reference[l],g=M(a),v=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,b=m/2-h/2,y=u[p],E=v-d[c]-u[f],S=v/2-d[c]/2+b,w=ye(y,S,E),_=l;n.modifiersData[r]=((t={})[_]=w,t.centerOffset=w-S,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!==typeof r||(r=t.elements.popper.querySelector(r)))&&pe(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function we(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function _e(e){return[L,D,P,Z].some((function(t){return e[t]>=0}))}var Te=J({defaultModifiers:[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,n=e.instance,r=e.options,o=r.scroll,a=void 0===o||o,i=r.resize,s=void 0===i||i,l=u(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return a&&c.forEach((function(e){e.addEventListener("scroll",n.update,ee)})),s&&l.addEventListener("resize",n.update,ee),function(){a&&c.forEach((function(e){e.removeEventListener("scroll",n.update,ee)})),s&&l.removeEventListener("resize",n.update,ee)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=oe({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=void 0===r||r,a=n.adaptive,i=void 0===a||a,s=n.roundOffsets,l=void 0===s||s,c={placement:te(t.placement),variation:ne(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,ie(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:i,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,ie(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}},{name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},r=t.attributes[e]||{},o=t.elements[e];p(o)&&S(o)&&(Object.assign(o.style,n),Object.keys(r).forEach((function(e){var t=r[e];!1===t?o.removeAttribute(e):o.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var r=t.elements[e],o=t.attributes[e]||{},a=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});p(r)&&S(r)&&(Object.assign(r.style,a),Object.keys(o).forEach((function(e){r.removeAttribute(e)})))}))}},requires:["computeStyles"]},se,{name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var o=n.mainAxis,a=void 0===o||o,i=n.altAxis,s=void 0===i||i,l=n.fallbackPlacements,c=n.padding,u=n.boundary,d=n.rootBoundary,p=n.altBoundary,f=n.flipVariations,m=void 0===f||f,h=n.allowedAutoPlacements,g=t.options.placement,v=te(g),b=l||(v===g||!m?[ce(g)]:function(e){if(te(e)===B)return[];var t=ce(e);return[de(e),t,de(t)]}(g)),y=[g].concat(b).reduce((function(e,n){return e.concat(te(n)===B?function(e,t){void 0===t&&(t={});var n=t,r=n.placement,o=n.boundary,a=n.rootBoundary,i=n.padding,s=n.flipVariations,l=n.allowedAutoPlacements,c=void 0===l?q:l,u=ne(r),d=u?s?W:W.filter((function(e){return ne(e)===u})):z,p=d.filter((function(e){return c.indexOf(e)>=0}));0===p.length&&(p=d);var f=p.reduce((function(t,n){return t[n]=be(e,{placement:n,boundary:o,rootBoundary:a,padding:i})[te(n)],t}),{});return Object.keys(f).sort((function(e,t){return f[e]-f[t]}))}(t,{placement:n,boundary:u,rootBoundary:d,padding:c,flipVariations:m,allowedAutoPlacements:h}):n)}),[]),E=t.rects.reference,S=t.rects.popper,w=new Map,_=!0,T=y[0],x=0;x=0,O=I?"width":"height",R=be(t,{placement:C,boundary:u,rootBoundary:d,altBoundary:p,padding:c}),N=I?k?D:Z:k?P:L;E[O]>S[O]&&(N=ce(N));var M=ce(N),U=[];if(a&&U.push(R[A]<=0),s&&U.push(R[N]<=0,R[M]<=0),U.every((function(e){return e}))){T=C,_=!1;break}w.set(C,U)}if(_)for(var j=function(e){var t=y.find((function(t){var n=w.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return T=t,"break"},H=m?3:1;H>0;H--){if("break"===j(H))break}t.placement!==T&&(t.modifiersData[r]._skip=!0,t.placement=T,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}},Ee,Se,{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,a=t.modifiersData.preventOverflow,i=be(t,{elementContext:"reference"}),s=be(t,{altBoundary:!0}),l=we(i,r),c=we(s,o,a),u=_e(l),d=_e(c);t.modifiersData[n]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:u,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}}]}),xe=n(94419),Ce=n(50209),Ae=n(21217);function ke(e){return(0,Ae.Z)("MuiPopper",e)}(0,n(75878).Z)("MuiPopper",["root"]);var Ie=n(21607),Oe=n(42871),Re=n(80184),Ne=["anchorEl","children","direction","disablePortal","modifiers","open","placement","popperOptions","popperRef","slotProps","slots","TransitionProps","ownerState"],Me=["anchorEl","children","container","direction","disablePortal","keepMounted","modifiers","open","placement","popperOptions","popperRef","style","transition","slotProps","slots"];function Le(e){return"function"===typeof e?e():e}function Pe(e){return void 0!==e.nodeType}var De={},Ze=i.forwardRef((function(e,t){var n,c=e.anchorEl,u=e.children,d=e.direction,p=e.disablePortal,f=e.modifiers,m=e.open,h=e.placement,g=e.popperOptions,v=e.popperRef,b=e.slotProps,y=void 0===b?{}:b,E=e.slots,S=void 0===E?{}:E,w=e.TransitionProps,_=(0,o.Z)(e,Ne),T=i.useRef(null),x=(0,s.Z)(T,t),C=i.useRef(null),A=(0,s.Z)(C,v),k=i.useRef(A);(0,l.Z)((function(){k.current=A}),[A]),i.useImperativeHandle(v,(function(){return C.current}),[]);var I=function(e,t){if("ltr"===t)return e;switch(e){case"bottom-end":return"bottom-start";case"bottom-start":return"bottom-end";case"top-end":return"top-start";case"top-start":return"top-end";default:return e}}(h,d),O=i.useState(I),R=(0,a.Z)(O,2),N=R[0],M=R[1],L=i.useState(Le(c)),P=(0,a.Z)(L,2),D=P[0],Z=P[1];i.useEffect((function(){C.current&&C.current.forceUpdate()})),i.useEffect((function(){c&&Z(Le(c))}),[c]),(0,l.Z)((function(){if(D&&m){var e=[{name:"preventOverflow",options:{altBoundary:p}},{name:"flip",options:{altBoundary:p}},{name:"onUpdate",enabled:!0,phase:"afterWrite",fn:function(e){var t=e.state;M(t.placement)}}];null!=f&&(e=e.concat(f)),g&&null!=g.modifiers&&(e=e.concat(g.modifiers));var t=Te(D,T.current,(0,r.Z)({placement:I},g,{modifiers:e}));return k.current(t),function(){t.destroy(),k.current(null)}}}),[D,p,f,m,g,I]);var B={placement:N};null!==w&&(B.TransitionProps=w);var z=(0,xe.Z)({root:["root"]},(0,Oe.T)(ke)),F=null!=(n=S.root)?n:"div",U=(0,Ie.Z)({elementType:F,externalSlotProps:y.root,externalForwardedProps:_,additionalProps:{role:"tooltip",ref:x},ownerState:e,className:z.root});return(0,Re.jsx)(F,(0,r.Z)({},U,{children:"function"===typeof u?u(B):u}))})),Be=i.forwardRef((function(e,t){var n,s=e.anchorEl,l=e.children,u=e.container,d=e.direction,p=void 0===d?"ltr":d,f=e.disablePortal,m=void 0!==f&&f,h=e.keepMounted,g=void 0!==h&&h,v=e.modifiers,b=e.open,y=e.placement,E=void 0===y?"bottom":y,S=e.popperOptions,w=void 0===S?De:S,_=e.popperRef,T=e.style,x=e.transition,C=void 0!==x&&x,A=e.slotProps,k=void 0===A?{}:A,I=e.slots,O=void 0===I?{}:I,R=(0,o.Z)(e,Me),N=i.useState(!0),M=(0,a.Z)(N,2),L=M[0],P=M[1];if(!g&&!b&&(!C||L))return null;if(u)n=u;else if(s){var D=Le(s);n=D&&Pe(D)?(0,c.Z)(D).body:(0,c.Z)(null).body}var Z=b||!g||C&&!L?void 0:"none",B=C?{in:b,onEnter:function(){P(!1)},onExited:function(){P(!0)}}:void 0;return(0,Re.jsx)(Ce.Z,{disablePortal:m,container:n,children:(0,Re.jsx)(Ze,(0,r.Z)({anchorEl:s,direction:p,disablePortal:m,modifiers:v,ref:t,open:C?!L:b,placement:E,popperOptions:w,popperRef:_,slotProps:k,slots:O},R,{style:(0,r.Z)({position:"fixed",top:0,left:0,display:Z},T),TransitionProps:B,children:l}))})})),ze=n(69120),Fe=n(66934),Ue=n(31402),je=["anchorEl","component","components","componentsProps","container","disablePortal","keepMounted","modifiers","open","placement","popperOptions","popperRef","transition","slots","slotProps"],He=(0,Fe.ZP)(Be,{name:"MuiPopper",slot:"Root",overridesResolver:function(e,t){return t.root}})({}),Ge=i.forwardRef((function(e,t){var n,a=(0,ze.Z)(),i=(0,Ue.Z)({props:e,name:"MuiPopper"}),s=i.anchorEl,l=i.component,c=i.components,u=i.componentsProps,d=i.container,p=i.disablePortal,f=i.keepMounted,m=i.modifiers,h=i.open,g=i.placement,v=i.popperOptions,b=i.popperRef,y=i.transition,E=i.slots,S=i.slotProps,w=(0,o.Z)(i,je),_=null!=(n=null==E?void 0:E.root)?n:null==c?void 0:c.Root,T=(0,r.Z)({anchorEl:s,container:d,disablePortal:p,keepMounted:f,modifiers:m,open:h,placement:g,popperOptions:v,popperRef:b,transition:y},w);return(0,Re.jsx)(He,(0,r.Z)({as:l,direction:null==a?void 0:a.direction,slots:{root:_},slotProps:null!=S?S:u},T,{ref:t}))}))},48888:function(e,t,n){"use strict";n.d(t,{Z:function(){return B}});var r=n(29439),o=n(4942),a=n(63366),i=n(87462),s=n(72791),l=n(94419),c=n(21607),u=n(6117),d=n(97054),p=n(84913),f=n(80184);function m(e){return e.substring(2).toLowerCase()}var h=function(e){var t=e.children,n=e.disableReactTree,r=void 0!==n&&n,o=e.mouseEvent,a=void 0===o?"onClick":o,i=e.onClickAway,l=e.touchEvent,c=void 0===l?"onTouchEnd":l,h=s.useRef(!1),g=s.useRef(null),v=s.useRef(!1),b=s.useRef(!1);s.useEffect((function(){return setTimeout((function(){v.current=!0}),0),function(){v.current=!1}}),[]);var y=(0,u.Z)(t.ref,g),E=(0,d.Z)((function(e){var t=b.current;b.current=!1;var n=(0,p.Z)(g.current);!v.current||!g.current||"clientX"in e&&function(e,t){return t.documentElement.clientWidth-1:!n.documentElement.contains(e.target)||g.current.contains(e.target))||!r&&t||i(e))})),S=function(e){return function(n){b.current=!0;var r=t.props[e];r&&r(n)}},w={ref:y};return!1!==c&&(w[c]=S(c)),s.useEffect((function(){if(!1!==c){var e=m(c),t=(0,p.Z)(g.current),n=function(){h.current=!0};return t.addEventListener(e,E),t.addEventListener("touchmove",n),function(){t.removeEventListener(e,E),t.removeEventListener("touchmove",n)}}}),[E,c]),!1!==a&&(w[a]=S(a)),s.useEffect((function(){if(!1!==a){var e=m(a),t=(0,p.Z)(g.current);return t.addEventListener(e,E),function(){t.removeEventListener(e,E)}}}),[E,a]),(0,f.jsx)(s.Fragment,{children:s.cloneElement(t,w)})},g=n(64373);var v=n(66934),b=n(13967),y=n(31402),E=n(14036),S=n(13208),w=n(28182),_=n(12065),T=n(35527),x=n(75878),C=n(21217);function A(e){return(0,C.Z)("MuiSnackbarContent",e)}(0,x.Z)("MuiSnackbarContent",["root","message","action"]);var k=["action","className","message","role"],I=(0,v.ZP)(T.Z,{name:"MuiSnackbarContent",slot:"Root",overridesResolver:function(e,t){return t.root}})((function(e){var t=e.theme,n="light"===t.palette.mode?.8:.98,r=(0,_._4)(t.palette.background.default,n);return(0,i.Z)({},t.typography.body2,(0,o.Z)({color:t.vars?t.vars.palette.SnackbarContent.color:t.palette.getContrastText(r),backgroundColor:t.vars?t.vars.palette.SnackbarContent.bg:r,display:"flex",alignItems:"center",flexWrap:"wrap",padding:"6px 16px",borderRadius:(t.vars||t).shape.borderRadius,flexGrow:1},t.breakpoints.up("sm"),{flexGrow:"initial",minWidth:288}))})),O=(0,v.ZP)("div",{name:"MuiSnackbarContent",slot:"Message",overridesResolver:function(e,t){return t.message}})({padding:"8px 0"}),R=(0,v.ZP)("div",{name:"MuiSnackbarContent",slot:"Action",overridesResolver:function(e,t){return t.action}})({display:"flex",alignItems:"center",marginLeft:"auto",paddingLeft:16,marginRight:-8}),N=s.forwardRef((function(e,t){var n=(0,y.Z)({props:e,name:"MuiSnackbarContent"}),r=n.action,o=n.className,s=n.message,c=n.role,u=void 0===c?"alert":c,d=(0,a.Z)(n,k),p=n,m=function(e){var t=e.classes;return(0,l.Z)({root:["root"],action:["action"],message:["message"]},A,t)}(p);return(0,f.jsxs)(I,(0,i.Z)({role:u,square:!0,elevation:6,className:(0,w.Z)(m.root,o),ownerState:p,ref:t},d,{children:[(0,f.jsx)(O,{className:m.message,ownerState:p,children:s}),r?(0,f.jsx)(R,{className:m.action,ownerState:p,children:r}):null]}))}));function M(e){return(0,C.Z)("MuiSnackbar",e)}(0,x.Z)("MuiSnackbar",["root","anchorOriginTopCenter","anchorOriginBottomCenter","anchorOriginTopRight","anchorOriginBottomRight","anchorOriginTopLeft","anchorOriginBottomLeft"]);var L=["onEnter","onExited"],P=["action","anchorOrigin","autoHideDuration","children","className","ClickAwayListenerProps","ContentProps","disableWindowBlurListener","message","onBlur","onClose","onFocus","onMouseEnter","onMouseLeave","open","resumeHideDuration","TransitionComponent","transitionDuration","TransitionProps"],D=(0,v.ZP)("div",{name:"MuiSnackbar",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,t["anchorOrigin".concat((0,E.Z)(n.anchorOrigin.vertical)).concat((0,E.Z)(n.anchorOrigin.horizontal))]]}})((function(e){var t=e.theme,n=e.ownerState;return(0,i.Z)({zIndex:(t.vars||t).zIndex.snackbar,position:"fixed",display:"flex",left:8,right:8,justifyContent:"center",alignItems:"center"},"top"===n.anchorOrigin.vertical?{top:8}:{bottom:8},"left"===n.anchorOrigin.horizontal&&{justifyContent:"flex-start"},"right"===n.anchorOrigin.horizontal&&{justifyContent:"flex-end"},(0,o.Z)({},t.breakpoints.up("sm"),(0,i.Z)({},"top"===n.anchorOrigin.vertical?{top:24}:{bottom:24},"center"===n.anchorOrigin.horizontal&&{left:"50%",right:"auto",transform:"translateX(-50%)"},"left"===n.anchorOrigin.horizontal&&{left:24,right:"auto"},"right"===n.anchorOrigin.horizontal&&{right:24,left:"auto"})))})),Z=s.forwardRef((function(e,t){var n=(0,y.Z)({props:e,name:"MuiSnackbar"}),o=(0,b.Z)(),u={enter:o.transitions.duration.enteringScreen,exit:o.transitions.duration.leavingScreen},p=n.action,m=n.anchorOrigin,v=void 0===m?{vertical:"bottom",horizontal:"left"}:m,w=v.vertical,_=v.horizontal,T=n.autoHideDuration,x=void 0===T?null:T,C=n.children,A=n.className,k=n.ClickAwayListenerProps,I=n.ContentProps,O=n.disableWindowBlurListener,R=void 0!==O&&O,Z=n.message,B=n.open,z=n.TransitionComponent,F=void 0===z?S.Z:z,U=n.transitionDuration,j=void 0===U?u:U,H=n.TransitionProps,G=void 0===H?{}:H,V=G.onEnter,W=G.onExited,q=(0,a.Z)(n.TransitionProps,L),$=(0,a.Z)(n,P),K=(0,i.Z)({},n,{anchorOrigin:{vertical:w,horizontal:_},autoHideDuration:x,disableWindowBlurListener:R,TransitionComponent:F,transitionDuration:j}),Y=function(e){var t=e.classes,n=e.anchorOrigin,r={root:["root","anchorOrigin".concat((0,E.Z)(n.vertical)).concat((0,E.Z)(n.horizontal))]};return(0,l.Z)(r,M,t)}(K),X=function(e){var t=e.autoHideDuration,n=void 0===t?null:t,r=e.disableWindowBlurListener,o=void 0!==r&&r,a=e.onClose,l=e.open,c=e.resumeHideDuration,u=s.useRef();s.useEffect((function(){if(l)return document.addEventListener("keydown",e),function(){document.removeEventListener("keydown",e)};function e(e){e.defaultPrevented||"Escape"!==e.key&&"Esc"!==e.key||null==a||a(e,"escapeKeyDown")}}),[l,a]);var p=(0,d.Z)((function(e,t){null==a||a(e,t)})),f=(0,d.Z)((function(e){a&&null!=e&&(clearTimeout(u.current),u.current=setTimeout((function(){p(null,"timeout")}),e))}));s.useEffect((function(){return l&&f(n),function(){clearTimeout(u.current)}}),[l,n,f]);var m=function(){clearTimeout(u.current)},h=s.useCallback((function(){null!=n&&f(null!=c?c:.5*n)}),[n,c,f]),v=function(e){return function(t){var n=e.onBlur;null==n||n(t),h()}},b=function(e){return function(t){var n=e.onFocus;null==n||n(t),m()}},y=function(e){return function(t){var n=e.onMouseEnter;null==n||n(t),m()}},E=function(e){return function(t){var n=e.onMouseLeave;null==n||n(t),h()}};return s.useEffect((function(){if(!o&&l)return window.addEventListener("focus",h),window.addEventListener("blur",m),function(){window.removeEventListener("focus",h),window.removeEventListener("blur",m)}}),[o,h,l]),{getRootProps:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=(0,g.Z)(e),r=(0,i.Z)({},n,t);return(0,i.Z)({role:"presentation"},r,{onBlur:v(r),onFocus:b(r),onMouseEnter:y(r),onMouseLeave:E(r)})},onClickAway:function(e){null==a||a(e,"clickaway")}}}((0,i.Z)({},K)),Q=X.getRootProps,J=X.onClickAway,ee=s.useState(!0),te=(0,r.Z)(ee,2),ne=te[0],re=te[1],oe=(0,c.Z)({elementType:D,getSlotProps:Q,externalForwardedProps:$,ownerState:K,additionalProps:{ref:t},className:[Y.root,A]});return!B&&ne?null:(0,f.jsx)(h,(0,i.Z)({onClickAway:J},k,{children:(0,f.jsx)(D,(0,i.Z)({},oe,{children:(0,f.jsx)(F,(0,i.Z)({appear:!0,in:B,timeout:j,direction:"top"===w?"down":"up",onEnter:function(e,t){re(!1),V&&V(e,t)},onExited:function(e){re(!0),W&&W(e)}},q,{children:C||(0,f.jsx)(N,(0,i.Z)({message:Z,action:p},I))}))}))}))})),B=Z},43896:function(e,t,n){"use strict";n.d(t,{Z:function(){return E}});var r=n(4942),o=n(63366),a=n(87462),i=n(72791),s=n(28182),l=n(94419),c=n(95080),u=n(14036),d=n(31402),p=n(66934),f=n(75878),m=n(21217);function h(e){return(0,m.Z)("MuiTab",e)}var g=(0,f.Z)("MuiTab",["root","labelIcon","textColorInherit","textColorPrimary","textColorSecondary","selected","disabled","fullWidth","wrapped","iconWrapper"]),v=n(80184),b=["className","disabled","disableFocusRipple","fullWidth","icon","iconPosition","indicator","label","onChange","onClick","onFocus","selected","selectionFollowsFocus","textColor","value","wrapped"],y=(0,p.ZP)(c.Z,{name:"MuiTab",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,n.label&&n.icon&&t.labelIcon,t["textColor".concat((0,u.Z)(n.textColor))],n.fullWidth&&t.fullWidth,n.wrapped&&t.wrapped]}})((function(e){var t,n,o,i=e.theme,s=e.ownerState;return(0,a.Z)({},i.typography.button,{maxWidth:360,minWidth:90,position:"relative",minHeight:48,flexShrink:0,padding:"12px 16px",overflow:"hidden",whiteSpace:"normal",textAlign:"center"},s.label&&{flexDirection:"top"===s.iconPosition||"bottom"===s.iconPosition?"column":"row"},{lineHeight:1.25},s.icon&&s.label&&(0,r.Z)({minHeight:72,paddingTop:9,paddingBottom:9},"& > .".concat(g.iconWrapper),(0,a.Z)({},"top"===s.iconPosition&&{marginBottom:6},"bottom"===s.iconPosition&&{marginTop:6},"start"===s.iconPosition&&{marginRight:i.spacing(1)},"end"===s.iconPosition&&{marginLeft:i.spacing(1)})),"inherit"===s.textColor&&(t={color:"inherit",opacity:.6},(0,r.Z)(t,"&.".concat(g.selected),{opacity:1}),(0,r.Z)(t,"&.".concat(g.disabled),{opacity:(i.vars||i).palette.action.disabledOpacity}),t),"primary"===s.textColor&&(n={color:(i.vars||i).palette.text.secondary},(0,r.Z)(n,"&.".concat(g.selected),{color:(i.vars||i).palette.primary.main}),(0,r.Z)(n,"&.".concat(g.disabled),{color:(i.vars||i).palette.text.disabled}),n),"secondary"===s.textColor&&(o={color:(i.vars||i).palette.text.secondary},(0,r.Z)(o,"&.".concat(g.selected),{color:(i.vars||i).palette.secondary.main}),(0,r.Z)(o,"&.".concat(g.disabled),{color:(i.vars||i).palette.text.disabled}),o),s.fullWidth&&{flexShrink:1,flexGrow:1,flexBasis:0,maxWidth:"none"},s.wrapped&&{fontSize:i.typography.pxToRem(12)})})),E=i.forwardRef((function(e,t){var n=(0,d.Z)({props:e,name:"MuiTab"}),r=n.className,c=n.disabled,p=void 0!==c&&c,f=n.disableFocusRipple,m=void 0!==f&&f,g=n.fullWidth,E=n.icon,S=n.iconPosition,w=void 0===S?"top":S,_=n.indicator,T=n.label,x=n.onChange,C=n.onClick,A=n.onFocus,k=n.selected,I=n.selectionFollowsFocus,O=n.textColor,R=void 0===O?"inherit":O,N=n.value,M=n.wrapped,L=void 0!==M&&M,P=(0,o.Z)(n,b),D=(0,a.Z)({},n,{disabled:p,disableFocusRipple:m,selected:k,icon:!!E,iconPosition:w,label:!!T,fullWidth:g,textColor:R,wrapped:L}),Z=function(e){var t=e.classes,n=e.textColor,r=e.fullWidth,o=e.wrapped,a=e.icon,i=e.label,s=e.selected,c=e.disabled,d={root:["root",a&&i&&"labelIcon","textColor".concat((0,u.Z)(n)),r&&"fullWidth",o&&"wrapped",s&&"selected",c&&"disabled"],iconWrapper:["iconWrapper"]};return(0,l.Z)(d,h,t)}(D),B=E&&T&&i.isValidElement(E)?i.cloneElement(E,{className:(0,s.Z)(Z.iconWrapper,E.props.className)}):E;return(0,v.jsxs)(y,(0,a.Z)({focusRipple:!m,className:(0,s.Z)(Z.root,r),ref:t,role:"tab","aria-selected":k,disabled:p,onClick:function(e){!k&&x&&x(e,N),C&&C(e)},onFocus:function(e){I&&!k&&x&&x(e,N),A&&A(e)},ownerState:D,tabIndex:k?0:-1},P,{children:["top"===w||"start"===w?(0,v.jsxs)(i.Fragment,{children:[B,T]}):(0,v.jsxs)(i.Fragment,{children:[T,B]}),_]}))}))},18073:function(e,t,n){"use strict";n.d(t,{Z:function(){return K}});var r,o=n(29439),a=n(4942),i=n(63366),s=n(87462),l=n(72791),c=(n(57441),n(28182)),u=n(94419),d=n(21607),p=n(66934),f=n(31402),m=n(13967),h=n(83199);function g(){if(r)return r;var e=document.createElement("div"),t=document.createElement("div");return t.style.width="10px",t.style.height="1px",e.appendChild(t),e.dir="rtl",e.style.fontSize="14px",e.style.width="4px",e.style.height="1px",e.style.position="absolute",e.style.top="-1000px",e.style.overflow="scroll",document.body.appendChild(e),r="reverse",e.scrollLeft>0?r="default":(e.scrollLeft=1,0===e.scrollLeft&&(r="negative")),document.body.removeChild(e),r}function v(e,t){var n=e.scrollLeft;if("rtl"!==t)return n;switch(g()){case"negative":return e.scrollWidth-e.clientWidth+n;case"reverse":return e.scrollWidth-e.clientWidth-n;default:return n}}function b(e){return(1+Math.sin(Math.PI*e-Math.PI/2))/2}var y=n(40162),E=n(17602),S=n(80184),w=["onChange"],_={width:99,height:99,position:"absolute",top:-9999,overflow:"scroll"};var T=n(76189),x=(0,T.Z)((0,S.jsx)("path",{d:"M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z"}),"KeyboardArrowLeft"),C=(0,T.Z)((0,S.jsx)("path",{d:"M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"}),"KeyboardArrowRight"),A=n(95080),k=n(75878),I=n(21217);function O(e){return(0,I.Z)("MuiTabScrollButton",e)}var R=(0,k.Z)("MuiTabScrollButton",["root","vertical","horizontal","disabled"]),N=["className","slots","slotProps","direction","orientation","disabled"],M=(0,p.ZP)(A.Z,{name:"MuiTabScrollButton",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,n.orientation&&t[n.orientation]]}})((function(e){var t=e.ownerState;return(0,s.Z)((0,a.Z)({width:40,flexShrink:0,opacity:.8},"&.".concat(R.disabled),{opacity:0}),"vertical"===t.orientation&&{width:"100%",height:40,"& svg":{transform:"rotate(".concat(t.isRtl?-90:90,"deg)")}})})),L=l.forwardRef((function(e,t){var n,r,o=(0,f.Z)({props:e,name:"MuiTabScrollButton"}),a=o.className,l=o.slots,p=void 0===l?{}:l,h=o.slotProps,g=void 0===h?{}:h,v=o.direction,b=(0,i.Z)(o,N),y="rtl"===(0,m.Z)().direction,E=(0,s.Z)({isRtl:y},o),w=function(e){var t=e.classes,n={root:["root",e.orientation,e.disabled&&"disabled"]};return(0,u.Z)(n,O,t)}(E),_=null!=(n=p.StartScrollButtonIcon)?n:x,T=null!=(r=p.EndScrollButtonIcon)?r:C,A=(0,d.Z)({elementType:_,externalSlotProps:g.startScrollButtonIcon,additionalProps:{fontSize:"small"},ownerState:E}),k=(0,d.Z)({elementType:T,externalSlotProps:g.endScrollButtonIcon,additionalProps:{fontSize:"small"},ownerState:E});return(0,S.jsx)(M,(0,s.Z)({component:"div",className:(0,c.Z)(w.root,a),ref:t,role:null,ownerState:E,tabIndex:null},b,{children:"left"===v?(0,S.jsx)(_,(0,s.Z)({},A)):(0,S.jsx)(T,(0,s.Z)({},k))}))})),P=n(89683),D=n(85860),Z=n(98301),B=["aria-label","aria-labelledby","action","centered","children","className","component","allowScrollButtonsMobile","indicatorColor","onChange","orientation","ScrollButtonComponent","scrollButtons","selectionFollowsFocus","slots","slotProps","TabIndicatorProps","TabScrollButtonProps","textColor","value","variant","visibleScrollbar"],z=function(e,t){return e===t?e.firstChild:t&&t.nextElementSibling?t.nextElementSibling:e.firstChild},F=function(e,t){return e===t?e.lastChild:t&&t.previousElementSibling?t.previousElementSibling:e.lastChild},U=function(e,t,n){for(var r=!1,o=n(e,t);o;){if(o===e.firstChild){if(r)return;r=!0}var a=o.disabled||"true"===o.getAttribute("aria-disabled");if(o.hasAttribute("tabindex")&&!a)return void o.focus();o=n(e,o)}},j=(0,p.ZP)("div",{name:"MuiTabs",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[(0,a.Z)({},"& .".concat(D.Z.scrollButtons),t.scrollButtons),(0,a.Z)({},"& .".concat(D.Z.scrollButtons),n.scrollButtonsHideMobile&&t.scrollButtonsHideMobile),t.root,n.vertical&&t.vertical]}})((function(e){var t=e.ownerState,n=e.theme;return(0,s.Z)({overflow:"hidden",minHeight:48,WebkitOverflowScrolling:"touch",display:"flex"},t.vertical&&{flexDirection:"column"},t.scrollButtonsHideMobile&&(0,a.Z)({},"& .".concat(D.Z.scrollButtons),(0,a.Z)({},n.breakpoints.down("sm"),{display:"none"})))})),H=(0,p.ZP)("div",{name:"MuiTabs",slot:"Scroller",overridesResolver:function(e,t){var n=e.ownerState;return[t.scroller,n.fixed&&t.fixed,n.hideScrollbar&&t.hideScrollbar,n.scrollableX&&t.scrollableX,n.scrollableY&&t.scrollableY]}})((function(e){var t=e.ownerState;return(0,s.Z)({position:"relative",display:"inline-block",flex:"1 1 auto",whiteSpace:"nowrap"},t.fixed&&{overflowX:"hidden",width:"100%"},t.hideScrollbar&&{scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},t.scrollableX&&{overflowX:"auto",overflowY:"hidden"},t.scrollableY&&{overflowY:"auto",overflowX:"hidden"})})),G=(0,p.ZP)("div",{name:"MuiTabs",slot:"FlexContainer",overridesResolver:function(e,t){var n=e.ownerState;return[t.flexContainer,n.vertical&&t.flexContainerVertical,n.centered&&t.centered]}})((function(e){var t=e.ownerState;return(0,s.Z)({display:"flex"},t.vertical&&{flexDirection:"column"},t.centered&&{justifyContent:"center"})})),V=(0,p.ZP)("span",{name:"MuiTabs",slot:"Indicator",overridesResolver:function(e,t){return t.indicator}})((function(e){var t=e.ownerState,n=e.theme;return(0,s.Z)({position:"absolute",height:2,bottom:0,width:"100%",transition:n.transitions.create()},"primary"===t.indicatorColor&&{backgroundColor:(n.vars||n).palette.primary.main},"secondary"===t.indicatorColor&&{backgroundColor:(n.vars||n).palette.secondary.main},t.vertical&&{height:"100%",width:2,right:0})})),W=(0,p.ZP)((function(e){var t=e.onChange,n=(0,i.Z)(e,w),r=l.useRef(),o=l.useRef(null),a=function(){r.current=o.current.offsetHeight-o.current.clientHeight};return(0,y.Z)((function(){var e=(0,h.Z)((function(){var e=r.current;a(),e!==r.current&&t(r.current)})),n=(0,E.Z)(o.current);return n.addEventListener("resize",e),function(){e.clear(),n.removeEventListener("resize",e)}}),[t]),l.useEffect((function(){a(),t(r.current)}),[t]),(0,S.jsx)("div",(0,s.Z)({style:_,ref:o},n))}),{name:"MuiTabs",slot:"ScrollbarSize"})({overflowX:"auto",overflowY:"hidden",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}),q={},$=l.forwardRef((function(e,t){var n=(0,f.Z)({props:e,name:"MuiTabs"}),r=(0,m.Z)(),p="rtl"===r.direction,y=n["aria-label"],w=n["aria-labelledby"],_=n.action,T=n.centered,x=void 0!==T&&T,C=n.children,A=n.className,k=n.component,I=void 0===k?"div":k,O=n.allowScrollButtonsMobile,R=void 0!==O&&O,N=n.indicatorColor,M=void 0===N?"primary":N,$=n.onChange,K=n.orientation,Y=void 0===K?"horizontal":K,X=n.ScrollButtonComponent,Q=void 0===X?L:X,J=n.scrollButtons,ee=void 0===J?"auto":J,te=n.selectionFollowsFocus,ne=n.slots,re=void 0===ne?{}:ne,oe=n.slotProps,ae=void 0===oe?{}:oe,ie=n.TabIndicatorProps,se=void 0===ie?{}:ie,le=n.TabScrollButtonProps,ce=void 0===le?{}:le,ue=n.textColor,de=void 0===ue?"primary":ue,pe=n.value,fe=n.variant,me=void 0===fe?"standard":fe,he=n.visibleScrollbar,ge=void 0!==he&&he,ve=(0,i.Z)(n,B),be="scrollable"===me,ye="vertical"===Y,Ee=ye?"scrollTop":"scrollLeft",Se=ye?"top":"left",we=ye?"bottom":"right",_e=ye?"clientHeight":"clientWidth",Te=ye?"height":"width",xe=(0,s.Z)({},n,{component:I,allowScrollButtonsMobile:R,indicatorColor:M,orientation:Y,vertical:ye,scrollButtons:ee,textColor:de,variant:me,visibleScrollbar:ge,fixed:!be,hideScrollbar:be&&!ge,scrollableX:be&&!ye,scrollableY:be&&ye,centered:x&&!be,scrollButtonsHideMobile:!R}),Ce=function(e){var t=e.vertical,n=e.fixed,r=e.hideScrollbar,o=e.scrollableX,a=e.scrollableY,i=e.centered,s=e.scrollButtonsHideMobile,l=e.classes,c={root:["root",t&&"vertical"],scroller:["scroller",n&&"fixed",r&&"hideScrollbar",o&&"scrollableX",a&&"scrollableY"],flexContainer:["flexContainer",t&&"flexContainerVertical",i&&"centered"],indicator:["indicator"],scrollButtons:["scrollButtons",s&&"scrollButtonsHideMobile"],scrollableX:[o&&"scrollableX"],hideScrollbar:[r&&"hideScrollbar"]};return(0,u.Z)(c,D.m,l)}(xe),Ae=(0,d.Z)({elementType:re.StartScrollButtonIcon,externalSlotProps:ae.startScrollButtonIcon,ownerState:xe}),ke=(0,d.Z)({elementType:re.EndScrollButtonIcon,externalSlotProps:ae.endScrollButtonIcon,ownerState:xe});var Ie=l.useState(!1),Oe=(0,o.Z)(Ie,2),Re=Oe[0],Ne=Oe[1],Me=l.useState(q),Le=(0,o.Z)(Me,2),Pe=Le[0],De=Le[1],Ze=l.useState({start:!1,end:!1}),Be=(0,o.Z)(Ze,2),ze=Be[0],Fe=Be[1],Ue=l.useState({overflow:"hidden",scrollbarWidth:0}),je=(0,o.Z)(Ue,2),He=je[0],Ge=je[1],Ve=new Map,We=l.useRef(null),qe=l.useRef(null),$e=function(){var e,t,n=We.current;if(n){var o=n.getBoundingClientRect();e={clientWidth:n.clientWidth,scrollLeft:n.scrollLeft,scrollTop:n.scrollTop,scrollLeftNormalized:v(n,r.direction),scrollWidth:n.scrollWidth,top:o.top,bottom:o.bottom,left:o.left,right:o.right}}if(n&&!1!==pe){var a=qe.current.children;if(a.length>0){var i=a[Ve.get(pe)];0,t=i?i.getBoundingClientRect():null}}return{tabsMeta:e,tabMeta:t}},Ke=(0,P.Z)((function(){var e,t,n=$e(),r=n.tabsMeta,o=n.tabMeta,i=0;if(ye)t="top",o&&r&&(i=o.top-r.top+r.scrollTop);else if(t=p?"right":"left",o&&r){var s=p?r.scrollLeftNormalized+r.clientWidth-r.scrollWidth:r.scrollLeft;i=(p?-1:1)*(o[t]-r[t]+s)}var l=(e={},(0,a.Z)(e,t,i),(0,a.Z)(e,Te,o?o[Te]:0),e);if(isNaN(Pe[t])||isNaN(Pe[Te]))De(l);else{var c=Math.abs(Pe[t]-l[t]),u=Math.abs(Pe[Te]-l[Te]);(c>=1||u>=1)&&De(l)}})),Ye=function(e){var t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).animation;void 0===t||t?function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:function(){},a=r.ease,i=void 0===a?b:a,s=r.duration,l=void 0===s?300:s,c=null,u=t[e],d=!1,p=function(){d=!0};u===n?o(new Error("Element already at target position")):requestAnimationFrame((function r(a){if(d)o(new Error("Animation cancelled"));else{null===c&&(c=a);var s=Math.min(1,(a-c)/l);t[e]=i(s)*(n-u)+u,s>=1?requestAnimationFrame((function(){o(null)})):requestAnimationFrame(r)}}))}(Ee,We.current,e,{duration:r.transitions.duration.standard}):We.current[Ee]=e},Xe=function(e){var t=We.current[Ee];ye?t+=e:(t+=e*(p?-1:1),t*=p&&"reverse"===g()?-1:1),Ye(t)},Qe=function(){for(var e=We.current[_e],t=0,n=Array.from(qe.current.children),r=0;re){0===r&&(t=e);break}t+=o[_e]}return t},Je=function(){Xe(-1*Qe())},et=function(){Xe(Qe())},tt=l.useCallback((function(e){Ge({overflow:null,scrollbarWidth:e})}),[]),nt=(0,P.Z)((function(e){var t=$e(),n=t.tabsMeta,r=t.tabMeta;if(r&&n)if(r[Se]n[we]){var a=n[Ee]+(r[we]-n[we]);Ye(a,{animation:e})}})),rt=(0,P.Z)((function(){if(be&&!1!==ee){var e,t,n=We.current,o=n.scrollTop,a=n.scrollHeight,i=n.clientHeight,s=n.scrollWidth,l=n.clientWidth;if(ye)e=o>1,t=o1,t=p?c>1:c1&&void 0!==arguments[1]?arguments[1]:[];if(void 0===e)return{};var n={};return Object.keys(e).filter((function(n){return n.match(/^on[A-Z]/)&&"function"===typeof e[n]&&!t.includes(n)})).forEach((function(t){n[t]=e[t]})),n}n.d(t,{Z:function(){return r}})},52474:function(e,t,n){"use strict";function r(e){return"string"===typeof e}n.d(t,{Z:function(){return r}})},96605:function(e,t,n){"use strict";function r(e,t){return"function"===typeof e?e(t):e}n.d(t,{Z:function(){return r}})},21607:function(e,t,n){"use strict";n.d(t,{Z:function(){return p}});var r=n(87462),o=n(63366),a=n(6117),i=n(64381),s=n(28182),l=n(64373);function c(e){if(void 0===e)return{};var t={};return Object.keys(e).filter((function(t){return!(t.match(/^on[A-Z]/)&&"function"===typeof e[t])})).forEach((function(n){t[n]=e[n]})),t}var u=n(96605),d=["elementType","externalSlotProps","ownerState"];function p(e){var t,n=e.elementType,p=e.externalSlotProps,f=e.ownerState,m=(0,o.Z)(e,d),h=(0,u.Z)(p,f),g=function(e){var t=e.getSlotProps,n=e.additionalProps,o=e.externalSlotProps,a=e.externalForwardedProps,i=e.className;if(!t){var u=(0,s.Z)(null==a?void 0:a.className,null==o?void 0:o.className,i,null==n?void 0:n.className),d=(0,r.Z)({},null==n?void 0:n.style,null==a?void 0:a.style,null==o?void 0:o.style),p=(0,r.Z)({},n,a,o);return u.length>0&&(p.className=u),Object.keys(d).length>0&&(p.style=d),{props:p,internalRef:void 0}}var f=(0,l.Z)((0,r.Z)({},a,o)),m=c(o),h=c(a),g=t(f),v=(0,s.Z)(null==g?void 0:g.className,null==n?void 0:n.className,i,null==a?void 0:a.className,null==o?void 0:o.className),b=(0,r.Z)({},null==g?void 0:g.style,null==n?void 0:n.style,null==a?void 0:a.style,null==o?void 0:o.style),y=(0,r.Z)({},g,n,h,m);return v.length>0&&(y.className=v),Object.keys(b).length>0&&(y.style=b),{props:y,internalRef:g.ref}}((0,r.Z)({},m,{externalSlotProps:h})),v=g.props,b=g.internalRef,y=(0,a.Z)(b,null==h?void 0:h.ref,null==(t=e.additionalProps)?void 0:t.ref);return(0,i.Z)(n,(0,r.Z)({},v,{ref:y}),f)}},83625:function(e,t,n){"use strict";n.d(t,{Z:function(){return D}});var r=n(87462),o=n(63366),a=n(46189),i=n(82466),s=n(85080),l=n(87416),c=n(60104),u=n(4942);function d(e,t){var n;return(0,r.Z)({toolbar:(n={minHeight:56},(0,u.Z)(n,e.up("xs"),{"@media (orientation: landscape)":{minHeight:48}}),(0,u.Z)(n,e.up("sm"),{minHeight:64}),n)},t)}var p=n(12065),f={black:"#000",white:"#fff"},m={50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121",A100:"#f5f5f5",A200:"#eeeeee",A400:"#bdbdbd",A700:"#616161"},h={50:"#f3e5f5",100:"#e1bee7",200:"#ce93d8",300:"#ba68c8",400:"#ab47bc",500:"#9c27b0",600:"#8e24aa",700:"#7b1fa2",800:"#6a1b9a",900:"#4a148c",A100:"#ea80fc",A200:"#e040fb",A400:"#d500f9",A700:"#aa00ff"},g=n(82460),v={50:"#fff3e0",100:"#ffe0b2",200:"#ffcc80",300:"#ffb74d",400:"#ffa726",500:"#ff9800",600:"#fb8c00",700:"#f57c00",800:"#ef6c00",900:"#e65100",A100:"#ffd180",A200:"#ffab40",A400:"#ff9100",A700:"#ff6d00"},b={50:"#e3f2fd",100:"#bbdefb",200:"#90caf9",300:"#64b5f6",400:"#42a5f5",500:"#2196f3",600:"#1e88e5",700:"#1976d2",800:"#1565c0",900:"#0d47a1",A100:"#82b1ff",A200:"#448aff",A400:"#2979ff",A700:"#2962ff"},y={50:"#e1f5fe",100:"#b3e5fc",200:"#81d4fa",300:"#4fc3f7",400:"#29b6f6",500:"#03a9f4",600:"#039be5",700:"#0288d1",800:"#0277bd",900:"#01579b",A100:"#80d8ff",A200:"#40c4ff",A400:"#00b0ff",A700:"#0091ea"},E={50:"#e8f5e9",100:"#c8e6c9",200:"#a5d6a7",300:"#81c784",400:"#66bb6a",500:"#4caf50",600:"#43a047",700:"#388e3c",800:"#2e7d32",900:"#1b5e20",A100:"#b9f6ca",A200:"#69f0ae",A400:"#00e676",A700:"#00c853"},S=["mode","contrastThreshold","tonalOffset"],w={text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.38)"},divider:"rgba(0, 0, 0, 0.12)",background:{paper:f.white,default:f.white},action:{active:"rgba(0, 0, 0, 0.54)",hover:"rgba(0, 0, 0, 0.04)",hoverOpacity:.04,selected:"rgba(0, 0, 0, 0.08)",selectedOpacity:.08,disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(0, 0, 0, 0.12)",disabledOpacity:.38,focus:"rgba(0, 0, 0, 0.12)",focusOpacity:.12,activatedOpacity:.12}},_={text:{primary:f.white,secondary:"rgba(255, 255, 255, 0.7)",disabled:"rgba(255, 255, 255, 0.5)",icon:"rgba(255, 255, 255, 0.5)"},divider:"rgba(255, 255, 255, 0.12)",background:{paper:"#121212",default:"#121212"},action:{active:f.white,hover:"rgba(255, 255, 255, 0.08)",hoverOpacity:.08,selected:"rgba(255, 255, 255, 0.16)",selectedOpacity:.16,disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)",disabledOpacity:.38,focus:"rgba(255, 255, 255, 0.12)",focusOpacity:.12,activatedOpacity:.24}};function T(e,t,n,r){var o=r.light||r,a=r.dark||1.5*r;e[t]||(e.hasOwnProperty(n)?e[t]=e[n]:"light"===t?e.light=(0,p.$n)(e.main,o):"dark"===t&&(e.dark=(0,p._j)(e.main,a)))}function x(e){var t=e.mode,n=void 0===t?"light":t,s=e.contrastThreshold,l=void 0===s?3:s,c=e.tonalOffset,u=void 0===c?.2:c,d=(0,o.Z)(e,S),x=e.primary||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:b[200],light:b[50],dark:b[400]}:{main:b[700],light:b[400],dark:b[800]}}(n),C=e.secondary||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:h[200],light:h[50],dark:h[400]}:{main:h[500],light:h[300],dark:h[700]}}(n),A=e.error||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:g.Z[500],light:g.Z[300],dark:g.Z[700]}:{main:g.Z[700],light:g.Z[400],dark:g.Z[800]}}(n),k=e.info||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:y[400],light:y[300],dark:y[700]}:{main:y[700],light:y[500],dark:y[900]}}(n),I=e.success||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:E[400],light:E[300],dark:E[700]}:{main:E[800],light:E[500],dark:E[900]}}(n),O=e.warning||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:v[400],light:v[300],dark:v[700]}:{main:"#ed6c02",light:v[500],dark:v[900]}}(n);function R(e){return(0,p.mi)(e,_.text.primary)>=l?_.text.primary:w.text.primary}var N=function(e){var t=e.color,n=e.name,o=e.mainShade,i=void 0===o?500:o,s=e.lightShade,l=void 0===s?300:s,c=e.darkShade,d=void 0===c?700:c;if(!(t=(0,r.Z)({},t)).main&&t[i]&&(t.main=t[i]),!t.hasOwnProperty("main"))throw new Error((0,a.Z)(11,n?" (".concat(n,")"):"",i));if("string"!==typeof t.main)throw new Error((0,a.Z)(12,n?" (".concat(n,")"):"",JSON.stringify(t.main)));return T(t,"light",l,u),T(t,"dark",d,u),t.contrastText||(t.contrastText=R(t.main)),t},M={dark:_,light:w};return(0,i.Z)((0,r.Z)({common:(0,r.Z)({},f),mode:n,primary:N({color:x,name:"primary"}),secondary:N({color:C,name:"secondary",mainShade:"A400",lightShade:"A200",darkShade:"A700"}),error:N({color:A,name:"error"}),warning:N({color:O,name:"warning"}),info:N({color:k,name:"info"}),success:N({color:I,name:"success"}),grey:m,contrastThreshold:l,getContrastText:R,augmentColor:N,tonalOffset:u},M[n]),d)}var C=["fontFamily","fontSize","fontWeightLight","fontWeightRegular","fontWeightMedium","fontWeightBold","htmlFontSize","allVariants","pxToRem"];var A={textTransform:"uppercase"},k='"Roboto", "Helvetica", "Arial", sans-serif';function I(e,t){var n="function"===typeof t?t(e):t,a=n.fontFamily,s=void 0===a?k:a,l=n.fontSize,c=void 0===l?14:l,u=n.fontWeightLight,d=void 0===u?300:u,p=n.fontWeightRegular,f=void 0===p?400:p,m=n.fontWeightMedium,h=void 0===m?500:m,g=n.fontWeightBold,v=void 0===g?700:g,b=n.htmlFontSize,y=void 0===b?16:b,E=n.allVariants,S=n.pxToRem,w=(0,o.Z)(n,C);var _=c/14,T=S||function(e){return"".concat(e/y*_,"rem")},x=function(e,t,n,o,a){return(0,r.Z)({fontFamily:s,fontWeight:e,fontSize:T(t),lineHeight:n},s===k?{letterSpacing:"".concat((i=o/t,Math.round(1e5*i)/1e5),"em")}:{},a,E);var i},I={h1:x(d,96,1.167,-1.5),h2:x(d,60,1.2,-.5),h3:x(f,48,1.167,0),h4:x(f,34,1.235,.25),h5:x(f,24,1.334,0),h6:x(h,20,1.6,.15),subtitle1:x(f,16,1.75,.15),subtitle2:x(h,14,1.57,.1),body1:x(f,16,1.5,.15),body2:x(f,14,1.43,.15),button:x(h,14,1.75,.4,A),caption:x(f,12,1.66,.4),overline:x(f,12,2.66,1,A),inherit:{fontFamily:"inherit",fontWeight:"inherit",fontSize:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}};return(0,i.Z)((0,r.Z)({htmlFontSize:y,pxToRem:T,fontFamily:s,fontSize:c,fontWeightLight:d,fontWeightRegular:f,fontWeightMedium:h,fontWeightBold:v},I),w,{clone:!1})}function O(){return["".concat(arguments.length<=0?void 0:arguments[0],"px ").concat(arguments.length<=1?void 0:arguments[1],"px ").concat(arguments.length<=2?void 0:arguments[2],"px ").concat(arguments.length<=3?void 0:arguments[3],"px rgba(0,0,0,").concat(.2,")"),"".concat(arguments.length<=4?void 0:arguments[4],"px ").concat(arguments.length<=5?void 0:arguments[5],"px ").concat(arguments.length<=6?void 0:arguments[6],"px ").concat(arguments.length<=7?void 0:arguments[7],"px rgba(0,0,0,").concat(.14,")"),"".concat(arguments.length<=8?void 0:arguments[8],"px ").concat(arguments.length<=9?void 0:arguments[9],"px ").concat(arguments.length<=10?void 0:arguments[10],"px ").concat(arguments.length<=11?void 0:arguments[11],"px rgba(0,0,0,").concat(.12,")")].join(",")}var R=["none",O(0,2,1,-1,0,1,1,0,0,1,3,0),O(0,3,1,-2,0,2,2,0,0,1,5,0),O(0,3,3,-2,0,3,4,0,0,1,8,0),O(0,2,4,-1,0,4,5,0,0,1,10,0),O(0,3,5,-1,0,5,8,0,0,1,14,0),O(0,3,5,-1,0,6,10,0,0,1,18,0),O(0,4,5,-2,0,7,10,1,0,2,16,1),O(0,5,5,-3,0,8,10,1,0,3,14,2),O(0,5,6,-3,0,9,12,1,0,3,16,2),O(0,6,6,-3,0,10,14,1,0,4,18,3),O(0,6,7,-4,0,11,15,1,0,4,20,3),O(0,7,8,-4,0,12,17,2,0,5,22,4),O(0,7,8,-4,0,13,19,2,0,5,24,4),O(0,7,9,-4,0,14,21,2,0,5,26,4),O(0,8,9,-5,0,15,22,2,0,6,28,5),O(0,8,10,-5,0,16,24,2,0,6,30,5),O(0,8,11,-5,0,17,26,2,0,6,32,5),O(0,9,11,-5,0,18,28,2,0,7,34,6),O(0,9,12,-6,0,19,29,2,0,7,36,6),O(0,10,13,-6,0,20,31,3,0,8,38,7),O(0,10,13,-6,0,21,33,3,0,8,40,7),O(0,10,14,-6,0,22,35,3,0,8,42,7),O(0,11,14,-7,0,23,36,3,0,9,44,8),O(0,11,15,-7,0,24,38,3,0,9,46,8)],N=n(81314),M={mobileStepper:1e3,fab:1050,speedDial:1050,appBar:1100,drawer:1200,modal:1300,snackbar:1400,tooltip:1500},L=["breakpoints","mixins","spacing","palette","transitions","typography","shape"];function P(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.mixins,n=void 0===t?{}:t,u=e.palette,p=void 0===u?{}:u,f=e.transitions,m=void 0===f?{}:f,h=e.typography,g=void 0===h?{}:h,v=(0,o.Z)(e,L);if(e.vars)throw new Error((0,a.Z)(18));var b=x(p),y=(0,s.Z)(e),E=(0,i.Z)(y,{mixins:d(y.breakpoints,n),palette:b,shadows:R.slice(),typography:I(b,g),transitions:(0,N.ZP)(m),zIndex:(0,r.Z)({},M)});E=(0,i.Z)(E,v);for(var S=arguments.length,w=new Array(S>1?S-1:0),_=1;_0&&void 0!==arguments[0]?arguments[0]:["all"],o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=o.duration,s=void 0===i?n.standard:i,c=o.easing,u=void 0===c?t.easeInOut:c,d=o.delay,p=void 0===d?0:d;(0,r.Z)(o,a);return(Array.isArray(e)?e:[e]).map((function(e){return"".concat(e," ").concat("string"===typeof s?s:l(s)," ").concat(u," ").concat("string"===typeof p?p:l(p))})).join(",")}},e,{easing:t,duration:n})}},36482:function(e,t,n){"use strict";var r=(0,n(83625).Z)();t.Z=r},988:function(e,t){"use strict";t.Z="$$material"},66934:function(e,t,n){"use strict";n.d(t,{Dz:function(){return s},FO:function(){return i}});var r=n(44046),o=n(36482),a=n(988),i=function(e){return(0,r.x9)(e)&&"classes"!==e},s=r.x9,l=(0,r.ZP)({themeId:a.Z,defaultTheme:o.Z,rootShouldForwardProp:i});t.ZP=l},13967:function(e,t,n){"use strict";n.d(t,{Z:function(){return i}});n(72791);var r=n(30418),o=n(36482),a=n(988);function i(){var e=(0,r.Z)(o.Z);return e[a.Z]||e}},31402:function(e,t,n){"use strict";n.d(t,{Z:function(){return i}});var r=n(86083),o=n(36482),a=n(988);function i(e){var t=e.props,n=e.name;return(0,r.Z)({props:t,name:n,defaultTheme:o.Z,themeId:a.Z})}},4999:function(e,t,n){"use strict";n.d(t,{C:function(){return o},n:function(){return r}});var r=function(e){return e.scrollTop};function o(e,t){var n,r,o=e.timeout,a=e.easing,i=e.style,s=void 0===i?{}:i;return{duration:null!=(n=s.transitionDuration)?n:"number"===typeof o?o:o[t.mode]||0,easing:null!=(r=s.transitionTimingFunction)?r:"object"===typeof a?a[t.mode]:a,delay:s.transitionDelay}}},14036:function(e,t,n){"use strict";var r=n(31122);t.Z=r.Z},76189:function(e,t,n){"use strict";n.d(t,{Z:function(){return y}});var r=n(87462),o=n(72791),a=n(63366),i=n(28182),s=n(94419),l=n(14036),c=n(31402),u=n(66934),d=n(75878),p=n(21217);function f(e){return(0,p.Z)("MuiSvgIcon",e)}(0,d.Z)("MuiSvgIcon",["root","colorPrimary","colorSecondary","colorAction","colorError","colorDisabled","fontSizeInherit","fontSizeSmall","fontSizeMedium","fontSizeLarge"]);var m=n(80184),h=["children","className","color","component","fontSize","htmlColor","inheritViewBox","titleAccess","viewBox"],g=(0,u.ZP)("svg",{name:"MuiSvgIcon",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,"inherit"!==n.color&&t["color".concat((0,l.Z)(n.color))],t["fontSize".concat((0,l.Z)(n.fontSize))]]}})((function(e){var t,n,r,o,a,i,s,l,c,u,d,p,f,m,h,g,v,b=e.theme,y=e.ownerState;return{userSelect:"none",width:"1em",height:"1em",display:"inline-block",fill:y.hasSvgAsChild?void 0:"currentColor",flexShrink:0,transition:null==(t=b.transitions)||null==(n=t.create)?void 0:n.call(t,"fill",{duration:null==(r=b.transitions)||null==(o=r.duration)?void 0:o.shorter}),fontSize:{inherit:"inherit",small:(null==(a=b.typography)||null==(i=a.pxToRem)?void 0:i.call(a,20))||"1.25rem",medium:(null==(s=b.typography)||null==(l=s.pxToRem)?void 0:l.call(s,24))||"1.5rem",large:(null==(c=b.typography)||null==(u=c.pxToRem)?void 0:u.call(c,35))||"2.1875rem"}[y.fontSize],color:null!=(d=null==(p=(b.vars||b).palette)||null==(f=p[y.color])?void 0:f.main)?d:{action:null==(m=(b.vars||b).palette)||null==(h=m.action)?void 0:h.active,disabled:null==(g=(b.vars||b).palette)||null==(v=g.action)?void 0:v.disabled,inherit:void 0}[y.color]}})),v=o.forwardRef((function(e,t){var n=(0,c.Z)({props:e,name:"MuiSvgIcon"}),u=n.children,d=n.className,p=n.color,v=void 0===p?"inherit":p,b=n.component,y=void 0===b?"svg":b,E=n.fontSize,S=void 0===E?"medium":E,w=n.htmlColor,_=n.inheritViewBox,T=void 0!==_&&_,x=n.titleAccess,C=n.viewBox,A=void 0===C?"0 0 24 24":C,k=(0,a.Z)(n,h),I=o.isValidElement(u)&&"svg"===u.type,O=(0,r.Z)({},n,{color:v,component:y,fontSize:S,instanceFontSize:e.fontSize,inheritViewBox:T,viewBox:A,hasSvgAsChild:I}),R={};T||(R.viewBox=A);var N=function(e){var t=e.color,n=e.fontSize,r=e.classes,o={root:["root","inherit"!==t&&"color".concat((0,l.Z)(t)),"fontSize".concat((0,l.Z)(n))]};return(0,s.Z)(o,f,r)}(O);return(0,m.jsxs)(g,(0,r.Z)({as:y,className:(0,i.Z)(N.root,d),focusable:"false",color:w,"aria-hidden":!x||void 0,role:x?"img":void 0,ref:t},R,k,I&&u.props,{ownerState:O,children:[I?u.props.children:u,x?(0,m.jsx)("title",{children:x}):null]}))}));v.muiName="SvgIcon";var b=v;function y(e,t){function n(n,o){return(0,m.jsx)(b,(0,r.Z)({"data-testid":"".concat(t,"Icon"),ref:o},n,{children:e}))}return n.muiName=b.muiName,o.memo(o.forwardRef(n))}},83199:function(e,t,n){"use strict";var r=n(82254);t.Z=r.Z},98301:function(e,t,n){"use strict";var r=n(84913);t.Z=r.Z},17602:function(e,t,n){"use strict";var r=n(65202);t.Z=r.Z},98278:function(e,t,n){"use strict";var r=n(88637);t.Z=r.Z},40162:function(e,t,n){"use strict";var r=n(62876);t.Z=r.Z},89683:function(e,t,n){"use strict";var r=n(97054);t.Z=r.Z},42071:function(e,t,n){"use strict";var r=n(6117);t.Z=r.Z},67384:function(e,t,n){"use strict";var r=n(18252);t.Z=r.Z},23031:function(e,t,n){"use strict";n.d(t,{Z:function(){return p}});var r,o=n(72791),a=!0,i=!1,s={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function l(e){e.metaKey||e.altKey||e.ctrlKey||(a=!0)}function c(){a=!1}function u(){"hidden"===this.visibilityState&&i&&(a=!0)}function d(e){var t=e.target;try{return t.matches(":focus-visible")}catch(n){}return a||function(e){var t=e.type,n=e.tagName;return!("INPUT"!==n||!s[t]||e.readOnly)||"TEXTAREA"===n&&!e.readOnly||!!e.isContentEditable}(t)}var p=function(){var e=o.useCallback((function(e){var t;null!=e&&((t=e.ownerDocument).addEventListener("keydown",l,!0),t.addEventListener("mousedown",c,!0),t.addEventListener("pointerdown",c,!0),t.addEventListener("touchstart",c,!0),t.addEventListener("visibilitychange",u,!0))}),[]),t=o.useRef(!1);return{isFocusVisibleRef:t,onFocus:function(e){return!!d(e)&&(t.current=!0,!0)},onBlur:function(){return!!t.current&&(i=!0,window.clearTimeout(r),r=window.setTimeout((function(){i=!1}),100),t.current=!1,!0)},ref:e}}},20919:function(e,t){"use strict";var n="function"===typeof Symbol&&Symbol.for;t.Z=n?Symbol.for("mui.nested"):"__THEME_NESTED__"},68023:function(e,t,n){"use strict";var r=n(72791).createContext(null);t.Z=r},29598:function(e,t,n){"use strict";n.d(t,{Z:function(){return a}});var r=n(72791),o=n(68023);function a(){return r.useContext(o.Z)}},53842:function(e,t,n){"use strict";n.d(t,{ZP:function(){return g},Co:function(){return v}});var r=n(87462),o=n(72791),a=n(29791),i=n(62564),s=n(95438),l=n(95207),c=n(82561),u=a.Z,d=function(e){return"theme"!==e},p=function(e){return"string"===typeof e&&e.charCodeAt(0)>96?u:d},f=function(e,t,n){var r;if(t){var o=t.shouldForwardProp;r=e.__emotion_forwardProp&&o?function(t){return e.__emotion_forwardProp(t)&&o(t)}:o}return"function"!==typeof r&&n&&(r=e.__emotion_forwardProp),r},m=function(e){var t=e.cache,n=e.serialized,r=e.isStringTag;return(0,s.hC)(t,n,r),(0,c.L)((function(){return(0,s.My)(t,n,r)})),null},h=function e(t,n){var a,c,u=t.__emotion_real===t,d=u&&t.__emotion_base||t;void 0!==n&&(a=n.label,c=n.target);var h=f(t,n,u),g=h||p(d),v=!g("as");return function(){var b=arguments,y=u&&void 0!==t.__emotion_styles?t.__emotion_styles.slice(0):[];if(void 0!==a&&y.push("label:"+a+";"),null==b[0]||void 0===b[0].raw)y.push.apply(y,b);else{0,y.push(b[0][0]);for(var E=b.length,S=1;S<+~=|^:(),"'`\s])/g,E="undefined"!==typeof CSS&&CSS.escape,S=function(e){return E?E(e):e.replace(y,"\\$1")},w=function(){function e(e,t,n){this.type="style",this.isProcessed=!1;var r=n.sheet,o=n.Renderer;this.key=e,this.options=n,this.style=t,r?this.renderer=r.renderer:o&&(this.renderer=new o)}return e.prototype.prop=function(e,t,n){if(void 0===t)return this.style[e];var r=!!n&&n.force;if(!r&&this.style[e]===t)return this;var o=t;n&&!1===n.process||(o=this.options.jss.plugins.onChangeValue(t,e,this));var a=null==o||!1===o,i=e in this.style;if(a&&!i&&!r)return this;var s=a&&i;if(s?delete this.style[e]:this.style[e]=o,this.renderable&&this.renderer)return s?this.renderer.removeProperty(this.renderable,e):this.renderer.setProperty(this.renderable,e,o),this;var l=this.options.sheet;return l&&l.attached,this},e}(),_=function(e){function t(t,n,r){var o;o=e.call(this,t,n,r)||this;var a=r.selector,i=r.scoped,s=r.sheet,l=r.generateId;return a?o.selectorText=a:!1!==i&&(o.id=l((0,u.Z)((0,u.Z)(o)),s),o.selectorText="."+S(o.id)),o}(0,c.Z)(t,e);var n=t.prototype;return n.applyTo=function(e){var t=this.renderer;if(t){var n=this.toJSON();for(var r in n)t.setProperty(e,r,n[r])}return this},n.toJSON=function(){var e={};for(var t in this.style){var n=this.style[t];"object"!==typeof n?e[t]=n:Array.isArray(n)&&(e[t]=h(n))}return e},n.toString=function(e){var t=this.options.sheet,n=!!t&&t.options.link?(0,o.Z)({},e,{allowEmpty:!0}):e;return b(this.selectorText,this.style,n)},(0,l.Z)(t,[{key:"selector",set:function(e){if(e!==this.selectorText){this.selectorText=e;var t=this.renderer,n=this.renderable;if(n&&t)t.setSelector(n,e)||t.replaceRule(n,this)}},get:function(){return this.selectorText}}]),t}(w),T={onCreateRule:function(e,t,n){return"@"===e[0]||n.parent&&"keyframes"===n.parent.type?null:new _(e,t,n)}},x={indent:1,children:!0},C=/@([\w-]+)/,A=function(){function e(e,t,n){this.type="conditional",this.isProcessed=!1,this.key=e;var r=e.match(C);for(var a in this.at=r?r[1]:"unknown",this.query=n.name||"@"+this.at,this.options=n,this.rules=new X((0,o.Z)({},n,{parent:this})),t)this.rules.add(a,t[a]);this.rules.process()}var t=e.prototype;return t.getRule=function(e){return this.rules.get(e)},t.indexOf=function(e){return this.rules.indexOf(e)},t.addRule=function(e,t,n){var r=this.rules.add(e,t,n);return r?(this.options.jss.plugins.onProcessRule(r),r):null},t.replaceRule=function(e,t,n){var r=this.rules.replace(e,t,n);return r&&this.options.jss.plugins.onProcessRule(r),r},t.toString=function(e){void 0===e&&(e=x);var t=g(e).linebreak;if(null==e.indent&&(e.indent=x.indent),null==e.children&&(e.children=x.children),!1===e.children)return this.query+" {}";var n=this.rules.toString(e);return n?this.query+" {"+t+n+t+"}":""},e}(),k=/@container|@media|@supports\s+/,I={onCreateRule:function(e,t,n){return k.test(e)?new A(e,t,n):null}},O={indent:1,children:!0},R=/@keyframes\s+([\w-]+)/,N=function(){function e(e,t,n){this.type="keyframes",this.at="@keyframes",this.isProcessed=!1;var r=e.match(R);r&&r[1]?this.name=r[1]:this.name="noname",this.key=this.type+"-"+this.name,this.options=n;var a=n.scoped,i=n.sheet,s=n.generateId;for(var l in this.id=!1===a?this.name:S(s(this,i)),this.rules=new X((0,o.Z)({},n,{parent:this})),t)this.rules.add(l,t[l],(0,o.Z)({},n,{parent:this}));this.rules.process()}return e.prototype.toString=function(e){void 0===e&&(e=O);var t=g(e).linebreak;if(null==e.indent&&(e.indent=O.indent),null==e.children&&(e.children=O.children),!1===e.children)return this.at+" "+this.id+" {}";var n=this.rules.toString(e);return n&&(n=""+t+n+t),this.at+" "+this.id+" {"+n+"}"},e}(),M=/@keyframes\s+/,L=/\$([\w-]+)/g,P=function(e,t){return"string"===typeof e?e.replace(L,(function(e,n){return n in t?t[n]:e})):e},D=function(e,t,n){var r=e[t],o=P(r,n);o!==r&&(e[t]=o)},Z={onCreateRule:function(e,t,n){return"string"===typeof e&&M.test(e)?new N(e,t,n):null},onProcessStyle:function(e,t,n){return"style"===t.type&&n?("animation-name"in e&&D(e,"animation-name",n.keyframes),"animation"in e&&D(e,"animation",n.keyframes),e):e},onChangeValue:function(e,t,n){var r=n.options.sheet;if(!r)return e;switch(t){case"animation":case"animation-name":return P(e,r.keyframes);default:return e}}},B=function(e){function t(){return e.apply(this,arguments)||this}return(0,c.Z)(t,e),t.prototype.toString=function(e){var t=this.options.sheet,n=!!t&&t.options.link?(0,o.Z)({},e,{allowEmpty:!0}):e;return b(this.key,this.style,n)},t}(w),z={onCreateRule:function(e,t,n){return n.parent&&"keyframes"===n.parent.type?new B(e,t,n):null}},F=function(){function e(e,t,n){this.type="font-face",this.at="@font-face",this.isProcessed=!1,this.key=e,this.style=t,this.options=n}return e.prototype.toString=function(e){var t=g(e).linebreak;if(Array.isArray(this.style)){for(var n="",r=0;r=this.index)t.push(e);else for(var r=0;rn)return void t.splice(r,0,e)},t.reset=function(){this.registry=[]},t.remove=function(e){var t=this.registry.indexOf(e);this.registry.splice(t,1)},t.toString=function(e){for(var t=void 0===e?{}:e,n=t.attached,o=(0,r.Z)(t,["attached"]),a=g(o).linebreak,i="",s=0;s-1?r.substr(0,o-1):r;e.style.setProperty(t,a,o>-1?"important":"")}}catch(i){return!1}return!0},ce=function(e,t){try{e.attributeStyleMap?e.attributeStyleMap.delete(t):e.style.removeProperty(t)}catch(n){}},ue=function(e,t){return e.selectorText=t,e.selectorText===t},de=ie((function(){return document.querySelector("head")}));function pe(e){var t=te.registry;if(t.length>0){var n=function(e,t){for(var n=0;nt.index&&r.options.insertionPoint===t.insertionPoint)return r}return null}(t,e);if(n&&n.renderer)return{parent:n.renderer.element.parentNode,node:n.renderer.element};if(n=function(e,t){for(var n=e.length-1;n>=0;n--){var r=e[n];if(r.attached&&r.options.insertionPoint===t.insertionPoint)return r}return null}(t,e),n&&n.renderer)return{parent:n.renderer.element.parentNode,node:n.renderer.element.nextSibling}}var r=e.insertionPoint;if(r&&"string"===typeof r){var o=function(e){for(var t=de(),n=0;nn?n:t},ge=function(){function e(e){this.getPropertyValue=se,this.setProperty=le,this.removeProperty=ce,this.setSelector=ue,this.hasInsertedRules=!1,this.cssRules=[],e&&te.add(e),this.sheet=e;var t=this.sheet?this.sheet.options:{},n=t.media,r=t.meta,o=t.element;this.element=o||function(){var e=document.createElement("style");return e.textContent="\n",e}(),this.element.setAttribute("data-jss",""),n&&this.element.setAttribute("media",n),r&&this.element.setAttribute("data-meta",r);var a=fe();a&&this.element.setAttribute("nonce",a)}var t=e.prototype;return t.attach=function(){if(!this.element.parentNode&&this.sheet){!function(e,t){var n=t.insertionPoint,r=pe(t);if(!1!==r&&r.parent)r.parent.insertBefore(e,r.node);else if(n&&"number"===typeof n.nodeType){var o=n,a=o.parentNode;a&&a.insertBefore(e,o.nextSibling)}else de().appendChild(e)}(this.element,this.sheet.options);var e=Boolean(this.sheet&&this.sheet.deployed);this.hasInsertedRules&&e&&(this.hasInsertedRules=!1,this.deploy())}},t.detach=function(){if(this.sheet){var e=this.element.parentNode;e&&e.removeChild(this.element),this.sheet.options.link&&(this.cssRules=[],this.element.textContent="\n")}},t.deploy=function(){var e=this.sheet;e&&(e.options.link?this.insertRules(e.rules):this.element.textContent="\n"+e.toString()+"\n")},t.insertRules=function(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{},t=e.baseClasses,n=e.newClasses;e.Component;if(!n)return t;var r=(0,o.Z)({},t);return Object.keys(n).forEach((function(e){n[e]&&(r[e]="".concat(t[e]," ").concat(n[e]))})),r}var _e={set:function(e,t,n,r){var o=e.get(t);o||(o=new Map,e.set(t,o)),o.set(n,r)},get:function(e,t,n){var r=e.get(t);return r?r.get(n):void 0},delete:function(e,t,n){e.get(t).delete(n)}},Te=_e,xe=n(30374),Ce=n(20919),Ae=["checked","disabled","error","focused","focusVisible","required","expanded","selected"];var ke=Date.now(),Ie="fnValues"+ke,Oe="fnStyle"+ ++ke,Re=function(){return{onCreateRule:function(e,t,n){if("function"!==typeof t)return null;var r=f(e,{},n);return r[Oe]=t,r},onProcessStyle:function(e,t){if(Ie in t||Oe in t)return e;var n={};for(var r in e){var o=e[r];"function"===typeof o&&(delete e[r],n[r]=o)}return t[Ie]=n,e},onUpdate:function(e,t,n,r){var o=t,a=o[Oe];a&&(o.style=a(e)||{});var i=o[Ie];if(i)for(var s in i)o.prop(s,i[s](e),r)}}},Ne="@global",Me="@global ",Le=function(){function e(e,t,n){for(var r in this.type="global",this.at=Ne,this.isProcessed=!1,this.key=e,this.options=n,this.rules=new X((0,o.Z)({},n,{parent:this})),t)this.rules.add(r,t[r]);this.rules.process()}var t=e.prototype;return t.getRule=function(e){return this.rules.get(e)},t.addRule=function(e,t,n){var r=this.rules.add(e,t,n);return r&&this.options.jss.plugins.onProcessRule(r),r},t.replaceRule=function(e,t,n){var r=this.rules.replace(e,t,n);return r&&this.options.jss.plugins.onProcessRule(r),r},t.indexOf=function(e){return this.rules.indexOf(e)},t.toString=function(e){return this.rules.toString(e)},e}(),Pe=function(){function e(e,t,n){this.type="global",this.at=Ne,this.isProcessed=!1,this.key=e,this.options=n;var r=e.substr(8);this.rule=n.jss.createRule(r,t,(0,o.Z)({},n,{parent:this}))}return e.prototype.toString=function(e){return this.rule?this.rule.toString(e):""},e}(),De=/\s*,\s*/g;function Ze(e,t){for(var n=e.split(De),r="",o=0;o-1){var o=Lt[e];if(!Array.isArray(o))return pt.js+bt(o)in t&&pt.css+o;if(!r)return!1;for(var a=0;at?1:-1:e.length-t.length};return{onProcessStyle:function(t,n){if("style"!==n.type)return t;for(var r={},o=Object.keys(t).sort(e),a=0;a0&&void 0!==arguments[0]?arguments[0]:{},t=e.disableGlobal,n=void 0!==t&&t,r=e.productionPrefix,o=void 0===r?"jss":r,a=e.seed,i=void 0===a?"":a,s=""===i?"":"".concat(i,"-"),l=0,c=function(){return l+=1};return function(e,t){var r=t.options.name;if(r&&0===r.indexOf("Mui")&&!t.options.link&&!n){if(-1!==Ae.indexOf(e.key))return"Mui-".concat(e.key);var a="".concat(s).concat(r,"-").concat(e.key);return t.options.theme[Ce.Z]&&""===i?"".concat(a,"-").concat(c()):a}return"".concat(s).concat(o).concat(c())}}(),tn={disableGeneration:!1,generateClassName:en,jss:Jt,sheetsCache:null,sheetsManager:new Map,sheetsRegistry:null},nn=a.createContext(tn);var rn=-1e9;var on=n(82466),an=n(31122),sn=["variant"];function ln(e){return 0===e.length}function cn(e){var t="function"===typeof e;return{create:function(n,a){var i;try{i=t?e(n):e}catch(u){throw u}if(!a||!n.components||!n.components[a]||!n.components[a].styleOverrides&&!n.components[a].variants)return i;var s=n.components[a].styleOverrides||{},l=n.components[a].variants||[],c=(0,o.Z)({},i);return Object.keys(s).forEach((function(e){c[e]=(0,on.Z)(c[e]||{},s[e])})),l.forEach((function(e){var t=function(e){var t=e.variant,n=(0,r.Z)(e,sn),o=t||"";return Object.keys(n).sort().forEach((function(t){o+="color"===t?ln(o)?e[t]:(0,an.Z)(e[t]):"".concat(ln(o)?t:(0,an.Z)(t)).concat((0,an.Z)(e[t].toString()))})),o}(e.props);c[t]=(0,on.Z)(c[t]||{},e.style)})),c},options:{}}}var un={},dn=["name","classNamePrefix","Component","defaultTheme"];function pn(e,t){var n=e.state,r=e.theme,a=e.stylesOptions,i=e.stylesCreator,s=e.name;if(!a.disableGeneration){var l=Te.get(a.sheetsManager,i,r);l||(l={refs:0,staticSheet:null,dynamicStyles:null},Te.set(a.sheetsManager,i,r,l));var c=(0,o.Z)({},i.options,a,{theme:r,flip:"boolean"===typeof a.flip?a.flip:"rtl"===r.direction});c.generateId=c.serverGenerateClassName||c.generateClassName;var u=a.sheetsRegistry;if(0===l.refs){var d;a.sheetsCache&&(d=Te.get(a.sheetsCache,i,r));var p=i.create(r,s);d||((d=a.jss.createStyleSheet(p,(0,o.Z)({link:!1},c))).attach(),a.sheetsCache&&Te.set(a.sheetsCache,i,r,d)),u&&u.add(d),l.staticSheet=d,l.dynamicStyles=Se(p)}if(l.dynamicStyles){var f=a.jss.createStyleSheet(l.dynamicStyles,(0,o.Z)({link:!0},c));f.update(t),f.attach(),n.dynamicSheet=f,n.classes=we({baseClasses:l.staticSheet.classes,newClasses:f.classes}),u&&u.add(f)}else n.classes=l.staticSheet.classes;l.refs+=1}}function fn(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.name,i=t.classNamePrefix,s=t.Component,l=t.defaultTheme,c=void 0===l?un:l,u=(0,r.Z)(t,dn),d=cn(e),p=n||i||"makeStyles";d.options={index:rn+=1,name:n,meta:p,classNamePrefix:p};return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=(0,xe.Z)()||c,r=(0,o.Z)({},a.useContext(nn),u),i=a.useRef(),l=a.useRef();!function(e,t){var n,r=a.useRef([]),o=a.useMemo((function(){return{}}),t);r.current!==o&&(r.current=o,n=e()),a.useEffect((function(){return function(){n&&n()}}),[o])}((function(){var o={name:n,state:{},stylesCreator:d,stylesOptions:r,theme:t};return pn(o,e),l.current=!1,i.current=o,function(){!function(e){var t=e.state,n=e.theme,r=e.stylesOptions,o=e.stylesCreator;if(!r.disableGeneration){var a=Te.get(r.sheetsManager,o,n);a.refs-=1;var i=r.sheetsRegistry;0===a.refs&&(Te.delete(r.sheetsManager,o,n),r.jss.removeStyleSheet(a.staticSheet),i&&i.remove(a.staticSheet)),t.dynamicSheet&&(r.jss.removeStyleSheet(t.dynamicSheet),i&&i.remove(t.dynamicSheet))}}(o)}}),[t,d]),a.useEffect((function(){l.current&&function(e,t){var n=e.state;n.dynamicSheet&&n.dynamicSheet.update(t)}(i.current,e),l.current=!0}));var p=function(e,t,n){var r=e.state;if(e.stylesOptions.disableGeneration)return t||{};r.cacheClasses||(r.cacheClasses={value:null,lastProp:null,lastJSS:{}});var o=!1;return r.classes!==r.cacheClasses.lastJSS&&(r.cacheClasses.lastJSS=r.classes,o=!0),t!==r.cacheClasses.lastProp&&(r.cacheClasses.lastProp=t,o=!0),o&&(r.cacheClasses.value=we({baseClasses:r.cacheClasses.lastJSS,newClasses:t,Component:n})),r.cacheClasses.value}(i.current,e.classes,s);return p}}},30374:function(e,t,n){"use strict";n.d(t,{Z:function(){return o}});var r=n(29598);function o(){var e,t=(0,r.Z)();return null!=(e=null==t?void 0:t.$$material)?e:t}},25787:function(e,t,n){"use strict";n.d(t,{Z:function(){return f}});var r=n(87462),o=n(63366),a=n(72791),i=n(62110),s=n.n(i),l=n(72455);var c=n(30374),u=n(80184),d=["defaultTheme","withTheme","name"],p=["classes"],f=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(n){var i=t.defaultTheme,f=t.withTheme,m=void 0!==f&&f,h=t.name,g=(0,o.Z)(t,d);var v=h,b=(0,l.Z)(e,(0,r.Z)({defaultTheme:i,Component:n,name:h||n.displayName,classNamePrefix:v},g)),y=a.forwardRef((function(e,t){var a,s=(0,o.Z)(e,p),l=b((0,r.Z)({},n.defaultProps,e)),d=s;return("string"===typeof h||m)&&(a=(0,c.Z)()||i,h&&(d=function(e){var t=e.theme,n=e.name,o=e.props;if(!t||!t.components||!t.components[n]||!t.components[n].defaultProps)return o;var a,i=(0,r.Z)({},o),s=t.components[n].defaultProps;for(a in s)void 0===i[a]&&(i[a]=s[a]);return i}({theme:a,name:h,props:s})),m&&!d.theme&&(d.theme=a)),(0,u.jsx)(n,(0,r.Z)({ref:t,classes:l},d))}));return s()(y,n),y}}},51184:function(e,t,n){"use strict";n.d(t,{L7:function(){return l},P$:function(){return u},VO:function(){return o},W8:function(){return s},dt:function(){return c},k9:function(){return i}});var r=n(82466),o={xs:0,sm:600,md:900,lg:1200,xl:1536},a={keys:["xs","sm","md","lg","xl"],up:function(e){return"@media (min-width:".concat(o[e],"px)")}};function i(e,t,n){var r=e.theme||{};if(Array.isArray(t)){var i=r.breakpoints||a;return t.reduce((function(e,r,o){return e[i.up(i.keys[o])]=n(t[o]),e}),{})}if("object"===typeof t){var s=r.breakpoints||a;return Object.keys(t).reduce((function(e,r){if(-1!==Object.keys(s.values||o).indexOf(r)){e[s.up(r)]=n(t[r],r)}else{var a=r;e[a]=t[a]}return e}),{})}return n(t)}function s(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(null==(e=t.keys)?void 0:e.reduce((function(e,n){return e[t.up(n)]={},e}),{}))||{}}function l(e,t){return e.reduce((function(e,t){var n=e[t];return(!n||0===Object.keys(n).length)&&delete e[t],e}),t)}function c(e){for(var t=s(e),n=arguments.length,o=new Array(n>1?n-1:0),a=1;a1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return Math.min(Math.max(t,e),n)}function a(e){if(e.type)return e;if("#"===e.charAt(0))return a(function(e){e=e.slice(1);var t=new RegExp(".{1,".concat(e.length>=6?2:1,"}"),"g"),n=e.match(t);return n&&1===n[0].length&&(n=n.map((function(e){return e+e}))),n?"rgb".concat(4===n.length?"a":"","(").concat(n.map((function(e,t){return t<3?parseInt(e,16):Math.round(parseInt(e,16)/255*1e3)/1e3})).join(", "),")"):""}(e));var t=e.indexOf("("),n=e.substring(0,t);if(-1===["rgb","rgba","hsl","hsla","color"].indexOf(n))throw new Error((0,r.Z)(9,e));var o,i=e.substring(t+1,e.length-1);if("color"===n){if(o=(i=i.split(" ")).shift(),4===i.length&&"/"===i[3].charAt(0)&&(i[3]=i[3].slice(1)),-1===["srgb","display-p3","a98-rgb","prophoto-rgb","rec-2020"].indexOf(o))throw new Error((0,r.Z)(10,o))}else i=i.split(",");return{type:n,values:i=i.map((function(e){return parseFloat(e)})),colorSpace:o}}function i(e){var t=e.type,n=e.colorSpace,r=e.values;return-1!==t.indexOf("rgb")?r=r.map((function(e,t){return t<3?parseInt(e,10):e})):-1!==t.indexOf("hsl")&&(r[1]="".concat(r[1],"%"),r[2]="".concat(r[2],"%")),r=-1!==t.indexOf("color")?"".concat(n," ").concat(r.join(" ")):"".concat(r.join(", ")),"".concat(t,"(").concat(r,")")}function s(e){var t="hsl"===(e=a(e)).type||"hsla"===e.type?a(function(e){var t=(e=a(e)).values,n=t[0],r=t[1]/100,o=t[2]/100,s=r*Math.min(o,1-o),l=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(e+n/30)%12;return o-s*Math.max(Math.min(t-3,9-t,1),-1)},c="rgb",u=[Math.round(255*l(0)),Math.round(255*l(8)),Math.round(255*l(4))];return"hsla"===e.type&&(c+="a",u.push(t[3])),i({type:c,values:u})}(e)).values:e.values;return t=t.map((function(t){return"color"!==e.type&&(t/=255),t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)})),Number((.2126*t[0]+.7152*t[1]+.0722*t[2]).toFixed(3))}function l(e,t){var n=s(e),r=s(t);return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function c(e,t){return e=a(e),t=o(t),"rgb"!==e.type&&"hsl"!==e.type||(e.type+="a"),"color"===e.type?e.values[3]="/".concat(t):e.values[3]=t,i(e)}function u(e,t){if(e=a(e),t=o(t),-1!==e.type.indexOf("hsl"))e.values[2]*=1-t;else if(-1!==e.type.indexOf("rgb")||-1!==e.type.indexOf("color"))for(var n=0;n<3;n+=1)e.values[n]*=1-t;return i(e)}function d(e,t){if(e=a(e),t=o(t),-1!==e.type.indexOf("hsl"))e.values[2]+=(100-e.values[2])*t;else if(-1!==e.type.indexOf("rgb"))for(var n=0;n<3;n+=1)e.values[n]+=(255-e.values[n])*t;else if(-1!==e.type.indexOf("color"))for(var r=0;r<3;r+=1)e.values[r]+=(1-e.values[r])*t;return i(e)}function p(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.15;return s(e)>.5?u(e,t):d(e,t)}},44046:function(e,t,n){"use strict";n.d(t,{ZP:function(){return S},x9:function(){return b}});var r=n(93433),o=n(29439),a=n(63366),i=n(87462),s=n(53842),l=n(85080),c=n(31122),u=["variant"];function d(e){return 0===e.length}function p(e){var t=e.variant,n=(0,a.Z)(e,u),r=t||"";return Object.keys(n).sort().forEach((function(t){r+="color"===t?d(r)?e[t]:(0,c.Z)(e[t]):"".concat(d(r)?t:(0,c.Z)(t)).concat((0,c.Z)(e[t].toString()))})),r}var f=n(60104),m=["name","slot","skipVariantsResolver","skipSx","overridesResolver"];var h=function(e,t){return t.components&&t.components[e]&&t.components[e].styleOverrides?t.components[e].styleOverrides:null},g=function(e,t){var n=[];t&&t.components&&t.components[e]&&t.components[e].variants&&(n=t.components[e].variants);var r={};return n.forEach((function(e){var t=p(e.props);r[t]=e.style})),r},v=function(e,t,n,r){var o,a,i=e.ownerState,s=void 0===i?{}:i,l=[],c=null==n||null==(o=n.components)||null==(a=o[r])?void 0:a.variants;return c&&c.forEach((function(n){var r=!0;Object.keys(n.props).forEach((function(t){s[t]!==n.props[t]&&e[t]!==n.props[t]&&(r=!1)})),r&&l.push(t[p(n.props)])})),l};function b(e){return"ownerState"!==e&&"theme"!==e&&"sx"!==e&&"as"!==e}var y=(0,l.Z)();function E(e){var t,n=e.defaultTheme,r=e.theme,o=e.themeId;return t=r,0===Object.keys(t).length?n:r[o]||r}function S(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.themeId,n=e.defaultTheme,l=void 0===n?y:n,c=e.rootShouldForwardProp,u=void 0===c?b:c,d=e.slotShouldForwardProp,p=void 0===d?b:d,S=function(e){return(0,f.Z)((0,i.Z)({},e,{theme:E((0,i.Z)({},e,{defaultTheme:l,themeId:t}))}))};return S.__mui_systemSx=!0,function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(0,s.Co)(e,(function(e){return e.filter((function(e){return!(null!=e&&e.__mui_systemSx)}))}));var c=n.name,d=n.slot,f=n.skipVariantsResolver,y=n.skipSx,w=n.overridesResolver,_=(0,a.Z)(n,m),T=void 0!==f?f:d&&"Root"!==d||!1,x=y||!1;var C=b;"Root"===d?C=u:d?C=p:function(e){return"string"===typeof e&&e.charCodeAt(0)>96}(e)&&(C=void 0);var A=(0,s.ZP)(e,(0,i.Z)({shouldForwardProp:C,label:undefined},_)),k=function(n){for(var a=arguments.length,s=new Array(a>1?a-1:0),u=1;u0){var m=new Array(f).fill("");(p=[].concat((0,r.Z)(n),(0,r.Z)(m))).raw=[].concat((0,r.Z)(n.raw),(0,r.Z)(m))}else"function"===typeof n&&n.__emotion_real!==n&&(p=function(e){return n((0,i.Z)({},e,{theme:E((0,i.Z)({},e,{defaultTheme:l,themeId:t}))}))});var b=A.apply(void 0,[p].concat((0,r.Z)(d)));return e.muiName&&(b.muiName=e.muiName),b};return A.withConfig&&(k.withConfig=A.withConfig),k}}},85080:function(e,t,n){"use strict";n.d(t,{Z:function(){return m}});var r=n(87462),o=n(63366),a=n(82466),i=n(4942),s=["values","unit","step"],l=function(e){var t=Object.keys(e).map((function(t){return{key:t,val:e[t]}}))||[];return t.sort((function(e,t){return e.val-t.val})),t.reduce((function(e,t){return(0,r.Z)({},e,(0,i.Z)({},t.key,t.val))}),{})};var c={borderRadius:4},u=n(45682);var d=n(60104),p=n(87416),f=["breakpoints","palette","spacing","shape"];var m=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.breakpoints,n=void 0===t?{}:t,i=e.palette,m=void 0===i?{}:i,h=e.spacing,g=e.shape,v=void 0===g?{}:g,b=(0,o.Z)(e,f),y=function(e){var t=e.values,n=void 0===t?{xs:0,sm:600,md:900,lg:1200,xl:1536}:t,a=e.unit,i=void 0===a?"px":a,c=e.step,u=void 0===c?5:c,d=(0,o.Z)(e,s),p=l(n),f=Object.keys(p);function m(e){var t="number"===typeof n[e]?n[e]:e;return"@media (min-width:".concat(t).concat(i,")")}function h(e){var t="number"===typeof n[e]?n[e]:e;return"@media (max-width:".concat(t-u/100).concat(i,")")}function g(e,t){var r=f.indexOf(t);return"@media (min-width:".concat("number"===typeof n[e]?n[e]:e).concat(i,") and ")+"(max-width:".concat((-1!==r&&"number"===typeof n[f[r]]?n[f[r]]:t)-u/100).concat(i,")")}return(0,r.Z)({keys:f,values:p,up:m,down:h,between:g,only:function(e){return f.indexOf(e)+10&&void 0!==arguments[0]?arguments[0]:8;if(e.mui)return e;var t=(0,u.hB)({spacing:e}),n=function(){for(var e=arguments.length,n=new Array(e),r=0;r1?w-1:0),T=1;T2){if(!c[e])return[e];e=c[e]}var t=e.split(""),n=(0,r.Z)(t,2),o=n[0],a=n[1],i=s[o],u=l[a]||"";return Array.isArray(u)?u.map((function(e){return i+e})):[i+u]})),d=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],p=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"],f=[].concat(d,p);function m(e,t,n,r){var o,i=null!=(o=(0,a.DW)(e,t,!1))?o:n;return"number"===typeof i?function(e){return"string"===typeof e?e:i*e}:Array.isArray(i)?function(e){return"string"===typeof e?e:i[e]}:"function"===typeof i?i:function(){}}function h(e){return m(e,"spacing",8)}function g(e,t){if("string"===typeof t||null==t)return t;var n=e(Math.abs(t));return t>=0?n:"number"===typeof n?-n:"-".concat(n)}function v(e,t,n,r){if(-1===t.indexOf(n))return null;var a=function(e,t){return function(n){return e.reduce((function(e,r){return e[r]=g(t,n),e}),{})}}(u(n),r),i=e[n];return(0,o.k9)(e,i,a)}function b(e,t){var n=h(e.theme);return Object.keys(e).map((function(r){return v(e,t,r,n)})).reduce(i.Z,{})}function y(e){return b(e,d)}function E(e){return b(e,p)}function S(e){return b(e,f)}y.propTypes={},y.filterProps=d,E.propTypes={},E.filterProps=p,S.propTypes={},S.filterProps=f},18529:function(e,t,n){"use strict";n.d(t,{DW:function(){return i},Jq:function(){return s}});var r=n(4942),o=n(31122),a=n(51184);function i(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(!t||"string"!==typeof t)return null;if(e&&e.vars&&n){var r="vars.".concat(t).split(".").reduce((function(e,t){return e&&e[t]?e[t]:null}),e);if(null!=r)return r}return t.split(".").reduce((function(e,t){return e&&null!=e[t]?e[t]:null}),e)}function s(e,t,n){var r,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:n;return r="function"===typeof e?e(n):Array.isArray(e)?e[n]||o:i(e,n)||o,t&&(r=t(r,o,e)),r}t.ZP=function(e){var t=e.prop,n=e.cssProperty,l=void 0===n?e.prop:n,c=e.themeKey,u=e.transform,d=function(e){if(null==e[t])return null;var n=e[t],d=i(e.theme,c)||{};return(0,a.k9)(e,n,(function(e){var n=s(d,u,e);return e===n&&"string"===typeof e&&(n=s(d,u,"".concat(t).concat("default"===e?"":(0,o.Z)(e)),e)),!1===l?n:(0,r.Z)({},l,n)}))};return d.propTypes={},d.filterProps=[t],d}},87416:function(e,t,n){"use strict";n.d(t,{Z:function(){return R}});var r=n(45682),o=n(18529),a=n(98247);var i=function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&void 0!==arguments[0]?arguments[0]:a;return(0,o.Z)(e)}},33073:function(e,t,n){"use strict";n.d(t,{Z:function(){return o}});var r=n(35735);function o(e){var t=e.theme,n=e.name,o=e.props;return t&&t.components&&t.components[n]&&t.components[n].defaultProps?(0,r.Z)(t.components[n].defaultProps,o):o}},86083:function(e,t,n){"use strict";n.d(t,{Z:function(){return a}});var r=n(33073),o=n(30418);function a(e){var t=e.props,n=e.name,a=e.defaultTheme,i=e.themeId,s=(0,o.Z)(a);return i&&(s=s[i]||s),(0,r.Z)({theme:s,name:n,props:t})}},69120:function(e,t,n){"use strict";var r=n(72791),o=n(62564);t.Z=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=r.useContext(o.T);return n&&(e=n,0!==Object.keys(e).length)?n:t}},55902:function(e,t){"use strict";var n=function(e){return e},r=function(){var e=n;return{configure:function(t){e=t},generate:function(t){return e(t)},reset:function(){e=n}}}();t.Z=r},31122:function(e,t,n){"use strict";n.d(t,{Z:function(){return o}});var r=n(46189);function o(e){if("string"!==typeof e)throw new Error((0,r.Z)(7));return e.charAt(0).toUpperCase()+e.slice(1)}},94419:function(e,t,n){"use strict";function r(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,r={};return Object.keys(e).forEach((function(o){r[o]=e[o].reduce((function(e,r){if(r){var o=t(r);""!==o&&e.push(o),n&&n[r]&&e.push(n[r])}return e}),[]).join(" ")})),r}n.d(t,{Z:function(){return r}})},82254:function(e,t,n){"use strict";function r(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:166;function r(){for(var r=this,o=arguments.length,a=new Array(o),i=0;i2&&void 0!==arguments[2]?arguments[2]:{clone:!0},s=n.clone?(0,r.Z)({},e):e;return o(e)&&o(t)&&Object.keys(t).forEach((function(r){"__proto__"!==r&&(o(t[r])&&r in e&&o(e[r])?s[r]=i(e[r],t[r],n):n.clone?s[r]=o(t[r])?a(t[r]):t[r]:s[r]=t[r])})),s}},46189:function(e,t,n){"use strict";function r(e){for(var t="https://mui.com/production-error/?code="+e,n=1;n2&&void 0!==arguments[2]?arguments[2]:"Mui",a=o[t];return a?"".concat(n,"-").concat(a):"".concat(r.Z.generate(e),"-").concat(t)}},75878:function(e,t,n){"use strict";n.d(t,{Z:function(){return o}});var r=n(21217);function o(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Mui",o={};return t.forEach((function(t){o[t]=(0,r.Z)(e,t,n)})),o}},84913:function(e,t,n){"use strict";function r(e){return e&&e.ownerDocument||document}n.d(t,{Z:function(){return r}})},65202:function(e,t,n){"use strict";n.d(t,{Z:function(){return o}});var r=n(84913);function o(e){return(0,r.Z)(e).defaultView||window}},35735:function(e,t,n){"use strict";n.d(t,{Z:function(){return o}});var r=n(87462);function o(e,t){var n=(0,r.Z)({},t);return Object.keys(e).forEach((function(a){if(a.toString().match(/^(components|slots)$/))n[a]=(0,r.Z)({},e[a],n[a]);else if(a.toString().match(/^(componentsProps|slotProps)$/)){var i=e[a]||{},s=t[a];n[a]={},s&&Object.keys(s)?i&&Object.keys(i)?(n[a]=(0,r.Z)({},s),Object.keys(i).forEach((function(e){n[a][e]=o(i[e],s[e])}))):n[a]=s:n[a]=i}else void 0===n[a]&&(n[a]=e[a])})),n}},62971:function(e,t,n){"use strict";function r(e,t){"function"===typeof e?e(t):e&&(e.current=t)}n.d(t,{Z:function(){return r}})},88637:function(e,t,n){"use strict";n.d(t,{Z:function(){return a}});var r=n(29439),o=n(72791);function a(e){var t=e.controlled,n=e.default,a=(e.name,e.state,o.useRef(void 0!==t).current),i=o.useState(n),s=(0,r.Z)(i,2),l=s[0],c=s[1];return[a?t:l,o.useCallback((function(e){a||c(e)}),[])]}},62876:function(e,t,n){"use strict";var r=n(72791),o="undefined"!==typeof window?r.useLayoutEffect:r.useEffect;t.Z=o},97054:function(e,t,n){"use strict";n.d(t,{Z:function(){return a}});var r=n(72791),o=n(62876);function a(e){var t=r.useRef(e);return(0,o.Z)((function(){t.current=e})),r.useCallback((function(){return t.current.apply(void 0,arguments)}),[])}},6117:function(e,t,n){"use strict";n.d(t,{Z:function(){return a}});var r=n(72791),o=n(62971);function a(){for(var e=arguments.length,t=new Array(e),n=0;n1?l.Children.only(null):l.isValidElement(u)?u.props.children:null:e}));return l.createElement(f,d(s)({},r,{ref:t}),l.isValidElement(u)?l.cloneElement(u,void 0,p):null)}return l.createElement(f,d(s)({},r,{ref:t}),n)}));p.displayName="Slot";var f=l.forwardRef((function(e,t){var n=e.children,a=o(e,i);return l.isValidElement(n)?l.cloneElement(n,r(r({},function(e,t){var n=r({},t),o=function(){var o=e[a],i=t[a];/^on[A-Z]/.test(a)?o&&i?n[a]=function(){i.apply(void 0,arguments),o.apply(void 0,arguments)}:o&&(n[a]=o):"style"===a?n[a]=r(r({},o),i):"className"===a&&(n[a]=[o,i].filter(Boolean).join(" "))};for(var a in t)o();return r(r({},e),n)}(a,n.props)),{},{ref:t?c.composeRefs(t,n.ref):n.ref})):l.Children.count(n)>1?l.Children.only(null):null}));f.displayName="SlotClone";var m=function(e){var t=e.children;return l.createElement(l.Fragment,null,t)};function h(e){return l.isValidElement(e)&&e.type===m}var g=p},96382:function(e,t,n){"use strict";function r(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r3?t.i-4:t.i:Array.isArray(e)?1:p(e)?2:f(e)?3:0}function l(e,t){return 2===s(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function c(e,t){return 2===s(e)?e.get(t):e[t]}function u(e,t,n){var r=s(e);2===r?e.set(t,n):3===r?e.add(n):e[t]=n}function d(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function p(e){return j&&e instanceof Map}function f(e){return H&&e instanceof Set}function m(e){return e.o||e.t}function h(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=Y(e);delete t[q];for(var n=K(t),r=0;r1&&(e.set=e.add=e.clear=e.delete=v),Object.freeze(e),t&&i(e,(function(e,t){return g(t,!0)}),!0)),e}function v(){r(2)}function b(e){return null==e||"object"!=typeof e||Object.isFrozen(e)}function y(e){var t=X[e];return t||r(18,e),t}function E(e,t){X[e]||(X[e]=t)}function S(){return F}function w(e,t){t&&(y("Patches"),e.u=[],e.s=[],e.v=t)}function _(e){T(e),e.p.forEach(C),e.p=null}function T(e){e===F&&(F=e.l)}function x(e){return F={p:[],l:F,h:e,m:!0,_:0}}function C(e){var t=e[q];0===t.i||1===t.i?t.j():t.g=!0}function A(e,t){t._=t.p.length;var n=t.p[0],o=void 0!==e&&e!==n;return t.h.O||y("ES5").S(t,e,o),o?(n[q].P&&(_(t),r(4)),a(e)&&(e=k(t,e),t.l||O(t,e)),t.u&&y("Patches").M(n[q].t,e,t.u,t.s)):e=k(t,n,[]),_(t),t.u&&t.v(t.u,t.s),e!==V?e:void 0}function k(e,t,n){if(b(t))return t;var r=t[q];if(!r)return i(t,(function(o,a){return I(e,r,t,o,a,n)}),!0),t;if(r.A!==e)return t;if(!r.P)return O(e,r.t,!0),r.t;if(!r.I){r.I=!0,r.A._--;var o=4===r.i||5===r.i?r.o=h(r.k):r.o,a=o,s=!1;3===r.i&&(a=new Set(o),o.clear(),s=!0),i(a,(function(t,a){return I(e,r,o,t,a,n,s)})),O(e,o,!1),n&&e.u&&y("Patches").N(r,n,e.u,e.s)}return r.o}function I(e,t,n,r,i,s,c){if(o(i)){var d=k(e,i,s&&t&&3!==t.i&&!l(t.R,r)?s.concat(r):void 0);if(u(n,r,d),!o(d))return;e.m=!1}else c&&n.add(i);if(a(i)&&!b(i)){if(!e.h.D&&e._<1)return;k(e,i),t&&t.A.l||O(e,i)}}function O(e,t,n){void 0===n&&(n=!1),!e.l&&e.h.D&&e.m&&g(t,n)}function R(e,t){var n=e[q];return(n?m(n):e)[t]}function N(e,t){if(t in e)for(var n=Object.getPrototypeOf(e);n;){var r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=Object.getPrototypeOf(n)}}function M(e){e.P||(e.P=!0,e.l&&M(e.l))}function L(e){e.o||(e.o=h(e.t))}function P(e,t,n){var r=p(t)?y("MapSet").F(t,n):f(t)?y("MapSet").T(t,n):e.O?function(e,t){var n=Array.isArray(e),r={i:n?1:0,A:t?t.A:S(),P:!1,I:!1,R:{},l:t,t:e,k:null,o:null,j:null,C:!1},o=r,a=Q;n&&(o=[r],a=J);var i=Proxy.revocable(o,a),s=i.revoke,l=i.proxy;return r.k=l,r.j=s,l}(t,n):y("ES5").J(t,n);return(n?n.A:S()).p.push(r),r}function D(e){return o(e)||r(22,e),function e(t){if(!a(t))return t;var n,r=t[q],o=s(t);if(r){if(!r.P&&(r.i<4||!y("ES5").K(r)))return r.t;r.I=!0,n=Z(t,o),r.I=!1}else n=Z(t,o);return i(n,(function(t,o){r&&c(r.t,t)===o||u(n,t,e(o))})),3===o?new Set(n):n}(e)}function Z(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return h(e)}function B(){function e(e,t){var n=a[e];return n?n.enumerable=t:a[e]=n={configurable:!0,enumerable:t,get:function(){var t=this[q];return Q.get(t,e)},set:function(t){var n=this[q];Q.set(n,e,t)}},n}function t(e){for(var t=e.length-1;t>=0;t--){var o=e[t][q];if(!o.P)switch(o.i){case 5:r(o)&&M(o);break;case 4:n(o)&&M(o)}}}function n(e){for(var t=e.t,n=e.k,r=K(n),o=r.length-1;o>=0;o--){var a=r[o];if(a!==q){var i=t[a];if(void 0===i&&!l(t,a))return!0;var s=n[a],c=s&&s[q];if(c?c.t!==i:!d(s,i))return!0}}var u=!!t[q];return r.length!==K(t).length+(u?0:1)}function r(e){var t=e.k;if(t.length!==e.t.length)return!0;var n=Object.getOwnPropertyDescriptor(t,t.length-1);if(n&&!n.get)return!0;for(var r=0;r1?r-1:0),a=1;a1?r-1:0),a=1;a=0;n--){var r=t[n];if(0===r.path.length&&"replace"===r.op){e=r.value;break}}n>-1&&(t=t.slice(n+1));var a=y("Patches").$;return o(e)?a(e,t):this.produce(e,(function(e){return a(e,t)}))},e}(),te=new ee,ne=te.produce,re=(te.produceWithPatches.bind(te),te.setAutoFreeze.bind(te),te.setUseProxies.bind(te),te.applyPatches.bind(te),te.createDraft.bind(te),te.finishDraft.bind(te),ne),oe=n(87781);function ae(e){return function(t){var n=t.dispatch,r=t.getState;return function(t){return function(o){return"function"===typeof o?o(n,r,e):t(o)}}}}var ie=ae();ie.withExtraArgument=ae;var se=ie,le=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!==typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),ce=function(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===a[0]||2===a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]=0&&(t.hash=e.substr(n),e=e.substr(0,n));var r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function _(e,t,n,o){void 0===o&&(o={});var a=o,i=a.window,s=void 0===i?document.defaultView:i,l=a.v5Compat,c=void 0!==l&&l,u=s.history,d=r.Pop,p=null,m=g();function g(){return(u.state||{idx:null}).idx}function b(){d=r.Pop;var e=g(),t=null==e?null:e-m;m=e,p&&p({action:d,location:_.location,delta:t})}function w(e){var t="null"!==s.location.origin?s.location.origin:s.location.href,n="string"===typeof e?e:S(e);return v(t,"No window.location.(origin|href) available to create URL for href: "+n),new URL(n,t)}null==m&&(m=0,u.replaceState(f({},u.state,{idx:m}),""));var _={get action(){return d},get location(){return e(s,u)},listen:function(e){if(p)throw new Error("A history only accepts one active listener");return s.addEventListener(h,b),p=e,function(){s.removeEventListener(h,b),p=null}},createHref:function(e){return t(s,e)},createURL:w,encodeLocation:function(e){var t=w(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){d=r.Push;var o=E(_.location,e,t);n&&n(o,e);var a=y(o,m=g()+1),i=_.createHref(o);try{u.pushState(a,"",i)}catch(l){if(l instanceof DOMException&&"DataCloneError"===l.name)throw l;s.location.assign(i)}c&&p&&p({action:d,location:_.location,delta:1})},replace:function(e,t){d=r.Replace;var o=E(_.location,e,t);n&&n(o,e);var a=y(o,m=g()),i=_.createHref(o);u.replaceState(a,"",i),c&&p&&p({action:d,location:_.location,delta:0})},go:function(e){return u.go(e)}};return _}!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(m||(m={}));new Set(["lazy","caseSensitive","path","id","index","children"]);function T(e,t,n){void 0===n&&(n="/");var r=B(("string"===typeof t?w(t):t).pathname||"/",n);if(null==r)return null;var o=x(e);!function(e){e.sort((function(e,t){return e.score!==t.score?t.score-e.score:function(e,t){var n=e.length===t.length&&e.slice(0,-1).every((function(e,n){return e===t[n]}));return n?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map((function(e){return e.childrenIndex})),t.routesMeta.map((function(e){return e.childrenIndex})))}))}(o);for(var a=null,i=0;null==a&&i0&&(v(!0!==e.index,'Index routes must not have child routes. Please remove all child routes from route path "'+s+'".'),x(e.children,t,l,s)),(null!=e.path||e.index)&&t.push({path:s,score:L(s,e.index),routesMeta:l})};return e.forEach((function(e,t){var n;if(""!==e.path&&null!=(n=e.path)&&n.includes("?")){var r,a=(0,d.Z)(C(e.path));try{for(a.s();!(r=a.n()).done;){var i=r.value;o(e,t,i)}}catch(s){a.e(s)}finally{a.f()}}else o(e,t)})),t}function C(e){var t=e.split("/");if(0===t.length)return[];var n=(0,u.Z)(t),r=n[0],o=n.slice(1),a=r.endsWith("?"),i=r.replace(/\?$/,"");if(0===o.length)return a?[i,""]:[i];var s=C(o.join("/")),l=[];return l.push.apply(l,(0,p.Z)(s.map((function(e){return""===e?i:[i,e].join("/")})))),a&&l.push.apply(l,(0,p.Z)(s)),l.map((function(t){return e.startsWith("/")&&""===t?"/":t}))}var A=/^:\w+$/,k=3,I=2,O=1,R=10,N=-2,M=function(e){return"*"===e};function L(e,t){var n=e.split("/"),r=n.length;return n.some(M)&&(r+=N),t&&(r+=I),n.filter((function(e){return!M(e)})).reduce((function(e,t){return e+(A.test(t)?k:""===t?O:R)}),r)}function P(e,t){for(var n=e.routesMeta,r={},o="/",a=[],i=0;i and the router will parse it for you.'}function F(e){return e.filter((function(e,t){return 0===t||e.route.path&&e.route.path.length>0}))}function U(e,t,n,r){var o;void 0===r&&(r=!1),"string"===typeof e?o=w(e):(v(!(o=f({},e)).pathname||!o.pathname.includes("?"),z("?","pathname","search",o)),v(!o.pathname||!o.pathname.includes("#"),z("#","pathname","hash",o)),v(!o.search||!o.search.includes("#"),z("#","search","hash",o)));var a,i=""===e||""===o.pathname,s=i?"/":o.pathname;if(r||null==s)a=n;else{var l=t.length-1;if(s.startsWith("..")){for(var c=s.split("/");".."===c[0];)c.shift(),l-=1;o.pathname=c.join("/")}a=l>=0?t[l]:"/"}var u=function(e,t){void 0===t&&(t="/");var n="string"===typeof e?w(e):e,r=n.pathname,o=n.search,a=void 0===o?"":o,i=n.hash,s=void 0===i?"":i,l=r?r.startsWith("/")?r:function(e,t){var n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach((function(e){".."===e?n.length>1&&n.pop():"."!==e&&n.push(e)})),n.length>1?n.join("/"):"/"}(r,t):t;return{pathname:l,search:G(a),hash:V(s)}}(o,a),d=s&&"/"!==s&&s.endsWith("/"),p=(i||"."===s)&&n.endsWith("/");return u.pathname.endsWith("/")||!d&&!p||(u.pathname+="/"),u}var j=function(e){return e.join("/").replace(/\/\/+/g,"/")},H=function(e){return e.replace(/\/+$/,"").replace(/^\/*/,"/")},G=function(e){return e&&"?"!==e?e.startsWith("?")?e:"?"+e:""},V=function(e){return e&&"#"!==e?e.startsWith("#")?e:"#"+e:""},W=function(e){(0,i.Z)(n,e);var t=(0,s.Z)(n);function n(){return(0,a.Z)(this,n),t.apply(this,arguments)}return(0,o.Z)(n)}((0,l.Z)(Error));function q(e){return null!=e&&"number"===typeof e.status&&"string"===typeof e.statusText&&"boolean"===typeof e.internal&&"data"in e}var $=["post","put","patch","delete"],K=(new Set($),["get"].concat($));new Set(K),new Set([301,302,303,307,308]),new Set([307,308]);Symbol("deferred")},44037:function(e,t,n){"use strict";var r=n(52506),o=n(19722),a=o(r("String.prototype.indexOf"));e.exports=function(e,t){var n=r(e,!!t);return"function"===typeof n&&a(e,".prototype.")>-1?o(n):n}},19722:function(e,t,n){"use strict";var r=n(33350),o=n(52506),a=o("%Function.prototype.apply%"),i=o("%Function.prototype.call%"),s=o("%Reflect.apply%",!0)||r.call(i,a),l=o("%Object.getOwnPropertyDescriptor%",!0),c=o("%Object.defineProperty%",!0),u=o("%Math.max%");if(c)try{c({},"a",{value:1})}catch(p){c=null}e.exports=function(e){var t=s(r,i,arguments);l&&c&&(l(t,"length").configurable&&c(t,"length",{value:1+u(0,e.length-(arguments.length-1))}));return t};var d=function(){return s(r,a,arguments)};c?c(e.exports,"apply",{value:d}):e.exports.apply=d},28182:function(e,t,n){"use strict";function r(e){var t,n,o="";if("string"==typeof e||"number"==typeof e)o+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t=0;)(v=d(e,p,f,m,S+1,g+1))>w&&(S===h?v*=t:c.test(e.charAt(S-1))?(v*=n,(y=e.slice(h,S-1).match(u))&&h>0&&(v*=Math.pow(i,y.length))):c.test(e.slice(h,S-1))?(v*=a,h>0&&(v*=Math.pow(i,S-h))):(v*=r,h>0&&(v*=Math.pow(i,S-h))),e.charAt(S)!==p.charAt(g)&&(v*=s)),vv&&(v=b*o),v>w&&(w=v),S=f.indexOf(E,S+1);return w}e.exports=function(e,t){return d(e,t,e.toLowerCase(),t.toLowerCase(),0,0)}},79773:function(e){function t(e){if(e)return function(e){for(var n in t.prototype)e[n]=t.prototype[n];return e}(e)}e.exports=t,t.prototype.on=t.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},t.prototype.once=function(e,t){function n(){this.off(e,n),t.apply(this,arguments)}return n.fn=t,this.on(e,n),this},t.prototype.off=t.prototype.removeListener=t.prototype.removeAllListeners=t.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var n,r=this._callbacks["$"+e];if(!r)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var o=0;o0;)if(!n(e[o],t[o],r))return!1;return!0}function d(e,t,n,r){var o=e.size===t.size;if(o&&e.size){var a={};e.forEach((function(e,i){if(o){var s=!1,l=0;t.forEach((function(t,o){s||a[l]||(s=n(i,o,r)&&n(e,t,r))&&(a[l]=!0),l++})),o=s}}))}return o}var p="_owner",f=Function.prototype.bind.call(Function.prototype.call,Object.prototype.hasOwnProperty);function m(e,t,r,o){var a=n(e),s=a.length;if(n(t).length!==s)return!1;if(s)for(var l=void 0;s-- >0;){if((l=a[s])===p){var c=i(e),u=i(t);if((c||u)&&c!==u)return!1}if(!f(t,l)||!r(e[l],t[l],o))return!1}return!0}function h(e,t){return e.source===t.source&&e.global===t.global&&e.ignoreCase===t.ignoreCase&&e.multiline===t.multiline&&e.unicode===t.unicode&&e.sticky===t.sticky&&e.lastIndex===t.lastIndex}function g(e,t,n,r){var o=e.size===t.size;if(o&&e.size){var a={};e.forEach((function(e){if(o){var i=!1,s=0;t.forEach((function(t){i||a[s]||(i=n(e,t,r))&&(a[s]=!0),s++})),o=i}}))}return o}var v="function"===typeof Map,b="function"===typeof Set;function y(e){var t="function"===typeof e?e(n):n;function n(e,n,i){if(e===n)return!0;if(e&&n&&"object"===typeof e&&"object"===typeof n){if(o(e)&&o(n))return m(e,n,t,i);var s=Array.isArray(e),l=Array.isArray(n);return s||l?s===l&&u(e,n,t,i):(s=e instanceof Date,l=n instanceof Date,s||l?s===l&&r(e.getTime(),n.getTime()):(s=e instanceof RegExp,l=n instanceof RegExp,s||l?s===l&&h(e,n):a(e)||a(n)?e===n:v&&(s=e instanceof Map,l=n instanceof Map,s||l)?s===l&&d(e,n,t,i):b&&(s=e instanceof Set,l=n instanceof Set,s||l)?s===l&&g(e,n,t,i):m(e,n,t,i)))}return e!==e&&n!==n}return n}var E=y(),S=y((function(){return r})),w=y(c()),_=y(c(r));e.circularDeepEqual=w,e.circularShallowEqual=_,e.createCustomEqual=y,e.deepEqual=E,e.sameValueZeroEqual=r,e.shallowEqual=S,Object.defineProperty(e,"__esModule",{value:!0})}(t)},11053:function(e){e.exports=i,i.default=i,i.stable=u,i.stableStringify=u;var t="[...]",n="[Circular]",r=[],o=[];function a(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function i(e,t,n,i){var s;"undefined"===typeof i&&(i=a()),l(e,"",0,[],void 0,0,i);try{s=0===o.length?JSON.stringify(e,t,n):JSON.stringify(e,p(t),n)}catch(u){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;0!==r.length;){var c=r.pop();4===c.length?Object.defineProperty(c[0],c[1],c[3]):c[0][c[1]]=c[2]}}return s}function s(e,t,n,a){var i=Object.getOwnPropertyDescriptor(a,n);void 0!==i.get?i.configurable?(Object.defineProperty(a,n,{value:e}),r.push([a,n,t,i])):o.push([t,n,e]):(a[n]=e,r.push([a,n,t]))}function l(e,r,o,a,i,c,u){var d;if(c+=1,"object"===typeof e&&null!==e){for(d=0;du.depthLimit)return void s(t,e,r,i);if("undefined"!==typeof u.edgesLimit&&o+1>u.edgesLimit)return void s(t,e,r,i);if(a.push(e),Array.isArray(e))for(d=0;dt?1:0}function u(e,t,n,i){"undefined"===typeof i&&(i=a());var s,l=d(e,"",0,[],void 0,0,i)||e;try{s=0===o.length?JSON.stringify(l,t,n):JSON.stringify(l,p(t),n)}catch(u){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;0!==r.length;){var c=r.pop();4===c.length?Object.defineProperty(c[0],c[1],c[3]):c[0][c[1]]=c[2]}}return s}function d(e,o,a,i,l,u,p){var f;if(u+=1,"object"===typeof e&&null!==e){for(f=0;fp.depthLimit)return void s(t,e,o,l);if("undefined"!==typeof p.edgesLimit&&a+1>p.edgesLimit)return void s(t,e,o,l);if(i.push(e),Array.isArray(e))for(f=0;f0)for(var r=0;r1&&"boolean"!==typeof t)throw new i('"allowMissing" argument must be a boolean');if(null===C(/^%?[^%]*%?$/,e))throw new o("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=function(e){var t=x(e,0,1),n=x(e,-1);if("%"===t&&"%"!==n)throw new o("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==t)throw new o("invalid intrinsic syntax, expected opening `%`");var r=[];return T(e,A,(function(e,t,n,o){r[r.length]=n?T(o,k,"$1"):t||e})),r}(e),r=n.length>0?n[0]:"",a=I("%"+r+"%",t),s=a.name,c=a.value,u=!1,d=a.alias;d&&(r=d[0],_(n,w([0,1],d)));for(var p=1,f=!0;p=n.length){var b=l(c,m);c=(f=!!b)&&"get"in b&&!("originalValue"in b.get)?b.get:c[m]}else f=S(c,m),c=c[m];f&&!u&&(g[s]=c)}}return c}},92203:function(e){"use strict";var t={foo:{}},n=Object;e.exports=function(){return{__proto__:t}.foo===t.foo&&!({__proto__:null}instanceof n)}},80697:function(e,t,n){"use strict";var r="undefined"!==typeof Symbol&&Symbol,o=n(63297);e.exports=function(){return"function"===typeof r&&("function"===typeof Symbol&&("symbol"===typeof r("foo")&&("symbol"===typeof Symbol("bar")&&o())))}},63297:function(e){"use strict";e.exports=function(){if("function"!==typeof Symbol||"function"!==typeof Object.getOwnPropertySymbols)return!1;if("symbol"===typeof Symbol.iterator)return!0;var e={},t=Symbol("test"),n=Object(t);if("string"===typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(t in e[t]=42,e)return!1;if("function"===typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"===typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;var r=Object.getOwnPropertySymbols(e);if(1!==r.length||r[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"===typeof Object.getOwnPropertyDescriptor){var o=Object.getOwnPropertyDescriptor(e,t);if(42!==o.value||!0!==o.enumerable)return!1}return!0}},58316:function(e,t,n){"use strict";var r=n(33350);e.exports=r.call(Function.call,Object.prototype.hasOwnProperty)},62110:function(e,t,n){"use strict";var r=n(48309),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return r.isMemo(e)?i:s[e.$$typeof]||o}s[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[r.Memo]=i;var c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!==typeof n){if(m){var o=f(n);o&&o!==m&&e(t,o,r)}var i=u(n);d&&(i=i.concat(d(n)));for(var s=l(t),h=l(n),g=0;g0?e-1:e;if("string"===typeof o.current[t]){if(0===t)return e;t-=1}return t}))):"ArrowDown"===e.key||e.ctrlKey&&"n"===e.key?(e.preventDefault(),p.setActiveIndex((function(e){var t=e1?d.set(r,s.slice(1)):(d.delete(r),a(e)):o(e,e.key)||d.delete(r)})),p&&clearTimeout(p),p=setTimeout(d.clear.bind(d),l))};return e.addEventListener(c,f),function(){e.removeEventListener(c,f)}}},34018:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VisualState=void 0,function(e){e.animatingIn="animating-in",e.showing="showing",e.animatingOut="animating-out",e.hidden="hidden"}(t.VisualState||(t.VisualState={}))},44870:function(e,t,n){"use strict";var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0){for(var a=n[o].children,i=0;i0&&e.push({score:r,action:n})}return e}),[o,a])}(s.useMemo((function(){return p?a:i(a)}),[i,a,p]),n),m=s.useMemo((function(){for(var e,n,r,o={},a=[],i=0;i-1)return this.subscribers.splice(t,1)}},e.prototype.notify=function(){this.subscribers.forEach((function(e){return e.collect()}))},e}(),h=function(){function e(e,t){this.collector=e,this.onChange=t}return e.prototype.collect=function(){try{var e=this.collector();(0,l.deepEqual)(e,this.collected)||(this.collected=e,this.onChange&&this.onChange(this.collected))}catch(t){console.warn(t)}},e}()},98240:function(e,t,n){"use strict";var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0&&void 0!==arguments[0]?arguments[0]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.cookieOptions=Object.assign({path:"/"},t),s=void 0===t.prefix?s:t.prefix}return r(e,[{key:"getItem",value:function(e){var t=i.default.parse(document.cookie);return t&&t.hasOwnProperty(s+e)?t[s+e]:null}},{key:"setItem",value:function(e,t){return document.cookie=i.default.serialize(s+e,t,this.cookieOptions),t}},{key:"removeItem",value:function(e){var t=Object.assign({},this.cookieOptions,{maxAge:-1});return document.cookie=i.default.serialize(s+e,"",t),null}},{key:"clear",value:function(){var e=i.default.parse(document.cookie);for(var t in e)0===t.indexOf(s)&&this.removeItem(t.substr(s.length));return null}}]),e}();t.default=l},89493:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:"localStorage",t=String(e).replace(/storage$/i,"").toLowerCase();if("local"===t)return a("localStorage");if("session"===t)return a("sessionStorage");if("cookie"===t)return(0,r.hasCookies)();if("memory"===t)return!0;throw new Error("Storage method `"+e+"` is not available.\n Please use one of the following: localStorage, sessionStorage, cookieStorage, memoryStorage.")};var r=n(92260),o="__test";function a(e){try{var t=window[e];return t.setItem(o,"1"),t.removeItem(o),!0}catch(n){return!1}}},29676:function(e,t,n){var r=n(85403),o=n(62747),a=n(16037),i=n(94154),s=n(77728);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t-1}},87109:function(e,t,n){var r=n(27112);e.exports=function(e,t){var n=this.__data__,o=r(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}},34086:function(e,t,n){var r=n(29676),o=n(38384),a=n(95797);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(a||o),string:new r}}},9255:function(e,t,n){var r=n(32799);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},29186:function(e,t,n){var r=n(32799);e.exports=function(e){return r(this,e).get(e)}},13423:function(e,t,n){var r=n(32799);e.exports=function(e){return r(this,e).has(e)}},73739:function(e,t,n){var r=n(32799);e.exports=function(e,t){var n=r(this,e),o=n.size;return n.set(e,t),this.size+=n.size==o?0:1,this}},14634:function(e,t,n){var r=n(49151);e.exports=function(e){var t=r(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},49620:function(e,t,n){var r=n(68136)(Object,"create");e.exports=r},43581:function(e){var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},97009:function(e,t,n){var r=n(31032),o="object"==typeof self&&self&&self.Object===Object&&self,a=r||o||Function("return this")();e.exports=a},10170:function(e,t,n){var r=n(14634),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,a=/\\(\\)?/g,i=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(o,(function(e,n,r,o){t.push(r?o.replace(a,"$1"):n||e)})),t}));e.exports=i},69793:function(e,t,n){var r=n(70152);e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t}},27907:function(e){var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(n){}try{return e+""}catch(n){}}return""}},26050:function(e){var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},48573:function(e,t,n){var r=n(8092),o=n(50072),a=n(42582),i=Math.max,s=Math.min;e.exports=function(e,t,n){var l,c,u,d,p,f,m=0,h=!1,g=!1,v=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function b(t){var n=l,r=c;return l=c=void 0,m=t,d=e.apply(r,n)}function y(e){var n=e-f;return void 0===f||n>=t||n<0||g&&e-m>=u}function E(){var e=o();if(y(e))return S(e);p=setTimeout(E,function(e){var n=t-(e-f);return g?s(n,u-(e-m)):n}(e))}function S(e){return p=void 0,v&&l?b(e):(l=c=void 0,d)}function w(){var e=o(),n=y(e);if(l=arguments,c=this,f=e,n){if(void 0===p)return function(e){return m=e,p=setTimeout(E,t),h?b(e):d}(f);if(g)return clearTimeout(p),p=setTimeout(E,t),b(f)}return void 0===p&&(p=setTimeout(E,t)),d}return t=a(t)||0,r(n)&&(h=!!n.leading,u=(g="maxWait"in n)?i(a(n.maxWait)||0,t):u,v="trailing"in n?!!n.trailing:v),w.cancel=function(){void 0!==p&&clearTimeout(p),m=0,l=f=c=p=void 0},w.flush=function(){return void 0===p?d:S(o())},w}},29231:function(e){e.exports=function(e,t){return e===t||e!==e&&t!==t}},26181:function(e,t,n){var r=n(98667);e.exports=function(e,t,n){var o=null==e?void 0:r(e,t);return void 0===o?n:o}},93629:function(e){var t=Array.isArray;e.exports=t},74786:function(e,t,n){var r=n(39066),o=n(8092);e.exports=function(e){if(!o(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},8092:function(e){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},43141:function(e){e.exports=function(e){return null!=e&&"object"==typeof e}},70152:function(e,t,n){var r=n(39066),o=n(43141);e.exports=function(e){return"symbol"==typeof e||o(e)&&"[object Symbol]"==r(e)}},49151:function(e,t,n){var r=n(78059);function o(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function n(){var r=arguments,o=t?t.apply(this,r):r[0],a=n.cache;if(a.has(o))return a.get(o);var i=e.apply(this,r);return n.cache=a.set(o,i)||a,i};return n.cache=new(o.Cache||r),n}o.Cache=r,e.exports=o},50072:function(e,t,n){var r=n(97009);e.exports=function(){return r.Date.now()}},42582:function(e,t,n){var r=n(20821),o=n(8092),a=n(70152),i=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,l=/^0o[0-7]+$/i,c=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(a(e))return NaN;if(o(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=o(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=s.test(e);return n||l.test(e)?c(e.slice(2),n?2:8):i.test(e)?NaN:+e}},63518:function(e,t,n){var r=n(2446);e.exports=function(e){return null==e?"":r(e)}},29945:function(e,t,n){"use strict";n.d(t,{$30:function(){return QT},$E9:function(){return sx},AG2:function(){return cc},AZs:function(){return ba},AeX:function(){return qC},B7x:function(){return lx},BI:function(){return FA},BKr:function(){return jC},BNr:function(){return uA},CRn:function(){return gA},C_0:function(){return yx},CxS:function(){return WT},D6F:function(){return dx},D7Y:function(){return sC},DJX:function(){return _x},Dbk:function(){return mT},Dez:function(){return Ax},DgT:function(){return _C},DuK:function(){return fT},E31:function(){return XT},E9d:function(){return wC},EHn:function(){return JT},EOM:function(){return lT},EPS:function(){return XC},EQx:function(){return GC},EY8:function(){return hA},Eep:function(){return Nc},Egj:function(){return Q},EjK:function(){return GT},Ekf:function(){return $C},FU8:function(){return ex},F_y:function(){return eC},Fsz:function(){return Cx},G1u:function(){return $x},Gp8:function(){return nA},Gvh:function(){return yC},HFL:function(){return Tx},HNx:function(){return wx},H_l:function(){return UC},I$E:function(){return fC},IHw:function(){return Hx},IaT:function(){return hC},J$M:function(){return Dc},JUp:function(){return TC},Jpd:function(){return IC},KfX:function(){return Ul},LZ3:function(){return ZT},M9A:function(){return gT},MXM:function(){return ax},Mhr:function(){return nx},MoH:function(){return HA},N$q:function(){return bC},NZf:function(){return Hl},NqG:function(){return TA},NvT:function(){return Vx},OCT:function(){return rx},OkY:function(){return LA},OoM:function(){return rc},P3B:function(){return tC},P99:function(){return rl},PhF:function(){return kc},Q2V:function(){return ux},QBB:function(){return dT},QGC:function(){return xT},QIv:function(){return hx},QQb:function(){return CC},QXQ:function(){return wT},Q_z:function(){return Fx},QaX:function(){return uT},Que:function(){return dC},Qz3:function(){return rA},R0g:function(){return Pc},R4E:function(){return ix},R7e:function(){return yA},ROc:function(){return JC},SA:function(){return vx},SBZ:function(){return _T},Sxo:function(){return Zx},T0F:function(){return PC},TIy:function(){return cx},UHn:function(){return dc},UMk:function(){return Dx},UQG:function(){return qT},UU9:function(){return xA},Udo:function(){return aA},Uxq:function(){return NC},V1I:function(){return vA},Vp9:function(){return rT},Vwu:function(){return Sx},W1M:function(){return bT},W3U:function(){return LC},W5x:function(){return su},Wk:function(){return sc},Wqw:function(){return BT},Wzg:function(){return ec},X2A:function(){return Yx},XHJ:function(){return il},XZJ:function(){return _a},Xgh:function(){return Wl},Xj3:function(){return kx},Xn4:function(){return Rx},YEz:function(){return ou},YL8:function(){return Wx},Yp9:function(){return VC},Z9m:function(){return tx},ZAy:function(){return CA},ZmA:function(){return px},ZyT:function(){return Ec},_8t:function(){return sl},_FR:function(){return cA},_f_:function(){return KC},_qw:function(){return bx},a$2:function(){return mx},aAc:function(){return ol},aNw:function(){return ia},aWt:function(){return CT},agv:function(){return bA},amE:function(){return zT},anK:function(){return sA},arU:function(){return IA},awm:function(){return fA},bPE:function(){return AA},bSr:function(){return Lc},b_P:function(){return iC},bnu:function(){return Xx},byK:function(){return Sa},c3W:function(){return Px},cCG:function(){return Bx},cFD:function(){return mc},cRd:function(){return vC},cSV:function(){return FC},cYX:function(){return Nx},cg1:function(){return lA},cno:function(){return gx},cuP:function(){return eA},cvr:function(){return mu},dRf:function(){return cT},dRy:function(){return ox},dY8:function(){return al},dtP:function(){return Ex},dv$:function(){return pC},e0j:function(){return IT},e6P:function(){return yT},eEZ:function(){return pc},ep1:function(){return mA},ewm:function(){return lC},fNL:function(){return SC},fOu:function(){return MT},fRO:function(){return EC},feu:function(){return DT},frP:function(){return $T},gXu:function(){return xx},gxm:function(){return aC},hFZ:function(){return VT},hU:function(){return xa},hbI:function(){return zl},hjP:function(){return MA},hz9:function(){return BA},iH5:function(){return vT},idV:function(){return pT},jG9:function(){return NA},jR_:function(){return xC},jhp:function(){return rC},jze:function(){return uC},k1n:function(){return QC},kKA:function(){return sT},lTO:function(){return hT},ljo:function(){return dA},lnI:function(){return PT},lrl:function(){return RA},ltY:function(){return Gl},lx4:function(){return oA},mBM:function(){return gC},mQc:function(){return yu},mYf:function(){return jA},mr1:function(){return da},n9O:function(){return DA},nAe:function(){return Qx},nFR:function(){return Ox},nO6:function(){return OT},nfT:function(){return UA},nwx:function(){return AT},nz8:function(){return Yr},o0P:function(){return SA},oEX:function(){return kT},oNq:function(){return YT},oXh:function(){return Ux},oto:function(){return TT},oyc:function(){return Ix},p2x:function(){return PA},pGX:function(){return It},pJl:function(){return FT},pPN:function(){return RT},pq4:function(){return tT},q$4:function(){return kA},qND:function(){return NT},qwj:function(){return WC},r7p:function(){return HC},rG2:function(){return cC},rHZ:function(){return jT},rjZ:function(){return bo},rsf:function(){return yc},rt$:function(){return HT},rtI:function(){return OA},sR0:function(){return KT},sjJ:function(){return mC},sxT:function(){return wA},szr:function(){return BC},tFJ:function(){return EA},tKS:function(){return zC},tMF:function(){return MC},tVY:function(){return LT},tmp:function(){return OC},toM:function(){return Mx},tvm:function(){return Lx},tzD:function(){return Kl},uIx:function(){return YC},uV5:function(){return pA},uV6:function(){return mo},ua7:function(){return ga},ubG:function(){return iA},uce:function(){return qo},udT:function(){return xc},uhQ:function(){return go},utM:function(){return kC},v1N:function(){return fx},v2r:function(){return pu},v42:function(){return nl},v9P:function(){return _A},vUj:function(){return RC},vmT:function(){return aT},wK7:function(){return UT},wNb:function(){return nC},wQF:function(){return Dl},wZd:function(){return tA},wws:function(){return zx},x2_:function(){return Kx},xCe:function(){return AC},xDw:function(){return ZA},xND:function(){return Zl},xPt:function(){return DC},xRg:function(){return oC},xgP:function(){return ET},xhr:function(){return zA},xpX:function(){return Jx},xuv:function(){return ul},y2Y:function(){return jx},yeO:function(){return Gx},zD0:function(){return Js},zGS:function(){return ST},zMQ:function(){return ZC},zb0:function(){return qx},zxk:function(){return Qr}});var r,o,a,i,s,l,c,u,d,p,f,m,h,g,v,b,y,E,S,w,_,T,x,C,A,k,I,O,R,N,M,L=n(11752),P=n(61120),D=n(4942),Z=n(84506),B=n(82963),z=n(93433),F=n(37762),U=n(29439),j=n(74165),H=n(43144),G=n(15671),V=n(97326),W=n(60136),q=n(29388),$=n(98737),K=n(72791),Y=n(17691),X=n(54164),Q={xs:0,sm:576,md:768,lg:992,xl:1200},J=function(e){if("auto"===e||"boolean"==typeof e&&e)return"100%";if(!1===e)return"initial";var t=Math.floor(e);return t>12?(t=12,console.warn("Grid fraction cannot be greater than 12")):t<1&&(t=1,console.warn("Grid fraction cannot be smaller than 1")),"".concat(100*t/12,"%")},ee="#fff",te="#000",ne="#2781B0",re="#E2E2E2",oe="#FBFAFA",ae="#5B5C5C",ie="#E6EBEB",se="#E6EAEB",le="#D5D7D8",ce="#E7EAEB",ue="#07193E",de="#0D2453",pe="#05132F",fe="#C51B3F",me="#C83B51",he="#D5D7D7",ge="#B4B4B4",ve="#000110",be="#E5E5E5",ye="#4CCB92",Ee="#F8F8F8",Se="#969FA8",we="#5E5E5E",_e="#F1F4F4",Te="#005C7E",xe="#1B779A",Ce="#07506A",Ae="#FFBD62",ke="linear-gradient(90deg, rgba(2,49,80,1) 0%, rgba(0,39,77,1) 50%, rgba(11,34,69,1) 100%)",Ie="#8399AB",Oe="#0A1C3C",Re="linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(20,88,122,1) 100%)",Ne="#CADAE8",Me="#0F446C",Le="#E8E8E8",Pe="#06274E",De="#052148",Ze="#EAEAEA",Be="#6e7781",ze="#116329",Fe="#8250df",Ue="#8c959f",je="#0550ae",He="#0a3069",Ge="#cf222e",Ve="#24292f",We="#ffaa00",qe="#2781B0",$e="#87888d",Ke="#181F2A",Ye="#283140",Xe="#8E98A9",Qe="#4B586A",Je="#8E98A9",et="#283140",tt="#A2ADC0",nt="#494A4D",rt="#4B586A",ot="#707988",at="#333D4B",it="#E6ECEC",st="#B5BCBD",lt="#EFEDED",ct="#C3CBCB",ut="#FF3958",dt="#616A7C",pt="#3A3F4A",ft="#A3B7D9",mt="#191E28",ht="#E9F5F6",gt="#58FAB1",vt="#A2ADC0",bt="#A2ADC0",yt="#1B637E",Et="#297E9D",St="#145B76",wt="#fCCE9D",_t="#242D3E",Tt="#8E98A9",xt="#323C4E",Ct="#151E2E",At={bgColor:ee,fontColor:te,borderColor:re,bulletColor:ne,logoColor:fe,logoLabelColor:"#000000",logoLabelInverse:"#fff",loaderColor:"#113053",linkColor:qe,boxBackground:oe,mutedText:$e,signalColors:{danger:fe,good:ye,info:ne,warning:Ae,disabled:ie},buttons:{regular:{enabled:{border:ae,text:ae,background:ee,iconColor:ae},disabled:{border:ge,text:ge,background:he,iconColor:ge},hover:{border:ae,text:ae,background:se,iconColor:ae},pressed:{border:ae,text:ae,background:le,iconColor:ae}},callAction:{enabled:{border:ue,text:ee,background:ue,iconColor:ee},disabled:{border:ce,text:ae,background:ce,iconColor:ae},hover:{border:de,text:ee,background:de,iconColor:ee},pressed:{border:pe,text:ee,background:pe,iconColor:ee}},secondary:{enabled:{border:fe,text:fe,background:ee,iconColor:fe},disabled:{border:ge,text:ge,background:he,iconColor:ge},hover:{border:me,text:fe,background:"#FCF2F4",iconColor:fe},pressed:{border:fe,text:ee,background:fe,iconColor:ee}},text:{enabled:{border:"transparent",text:ae,background:"transparent",iconColor:ae},disabled:{border:"transparent",text:ge,background:"transparent",iconColor:ge},hover:{border:se,text:ae,background:se,iconColor:ae},pressed:{border:le,text:ae,background:le,iconColor:ae}},subAction:{enabled:{border:Te,text:ee,background:Te,iconColor:ee},disabled:{border:ce,text:ae,background:ce,iconColor:ae},hover:{border:xe,text:ee,background:xe,iconColor:ee},pressed:{border:Ce,text:ee,background:Ce,iconColor:ee}}},login:{formBG:"#fff",bgFilter:"none",promoBG:ve,promoHeader:ee,promoText:"#A6DFEF",footerElements:ne,footerDivider:"#F2F2F2"},pageHeader:{background:"#FFFFFF",border:be,color:"#000000"},tooltip:{background:"#737373",color:"#FFFFFF"},commonInput:{labelColor:"#07193E"},checkbox:{checkBoxBorder:"#c3c3c3",checkBoxColor:ye,disabledBorder:ge,disabledColor:he},iconButton:{buttonBG:Ee,activeBG:"#5B5C5C80",hoverBG:"#EFEFEF",disabledBG:"#E6EBEB",color:"#7C7C7C"},dataTable:{border:re,disabledBorder:ie,disabledBG:he,selected:ue,deletedDisabled:fe,hoverColor:se},backLink:{color:"#073052",arrow:"#081C42",hover:"#eaedee"},inputBox:{border:re,hoverBorder:ve,color:ue,backgroundColor:ee,error:fe,placeholderColor:"#858585",disabledBorder:ge,disabledBackground:ie,disabledPlaceholder:ie,disabledText:ge},breadcrumbs:{border:re,linksColor:Se,textColor:"#969FA8",backgroundColor:"#FCFCFD",backButton:{border:"#EAEDEE",backgroundColor:ee}},actionsList:{containerBorderColor:"#F1F1F1",backgroundColor:Ee,disabledOptionsTextColor:"#EBEBEB",optionsBorder:be,optionsHoverTextColor:te,optionsTextColor:we,titleColor:te},screenTitle:{border:re,subtitleColor:Se,iconColor:ue},modalBox:{closeColor:"#757575",closeHoverBG:"#EAEAEA",closeHoverColor:te,containerColor:ee,overlayColor:"#00000050",titleColor:te,iconColor:{default:ue,accept:ye,delete:fe}},switchButton:{bulletBGColor:_e,bulletBorderColor:ee,disabledBulletBGColor:se,disabledBulletBorderColor:_e,offLabelColor:ge,onLabelColor:ue,onBackgroundColor:ye,switchBackground:se,disabledBackground:se,disabledOnBackground:"#a9d3c5"},dropdownSelector:{hoverText:te,backgroundColor:ee,hoverBG:se,selectedBGColor:le,selectedTextColor:te,optionTextColor:te},readBox:{borderColor:be,backgroundColor:oe,textColor:"#696969"},menu:{vertical:{background:ke,textColor:Ne,hoverSelectedIconBorder:ee,iconBorderColor:De,iconBGColor:Pe,dropArrowColor:Ie,dropArrowBackground:Oe,hoverSelectedBackground:Re,hoverSelectedColor:ee,notificationColor:fe,sectionDividerColor:Me,sectionLabelColor:ee,menuCollapseColor:Le},horizontal:{menuHeaderBackground:ke,textColor:we,hoverSelectedIconBorder:te,iconBorderColor:De,iconBGColor:oe,dropArrowColor:Ie,dropArrowBackground:oe,hoverSelectedBackground:ue,hoverSelectedColor:te,notificationColor:me,sectionDividerColor:Me,barBackground:oe,dropBackground:oe,dropHoverSelectedColor:ee,noOptionsBar:ne}},tabs:{vertical:{buttons:{hoverLabelColor:ue,hoverBackground:"transparent",backgroundColor:Ee,labelColor:ae,disabledBackgroundColor:he,disabledColor:ge,selectedBackground:be,selectedLabelColor:ue},backgroundColor:Ee,borders:Ze},horizontal:{buttons:{hoverLabelColor:ue,hoverBackground:"transparent",backgroundColor:"transparent",labelColor:ae,disabledBackgroundColor:"transparent",disabledColor:ge,selectedBackground:"transparent",selectedLabelColor:ue},backgroundColor:"transparent",selectedIndicatorColor:ue}},codeEditor:{backgroundColor:ee,textColor:te,helpToolsBarBG:oe,comment:Be,entityTag:ze,entity:Fe,sublimelinterGutterMark:Ue,constant:je,string:He,keyword:Ge,markupBold:Ve,codeEditorRegexp:We},tag:{alert:{background:fe,label:ee,deleteColor:ee},default:{background:ue,label:ee,deleteColor:ee},secondary:{background:Te,label:ee,deleteColor:ee},warn:{background:Ae,label:te,deleteColor:te},ok:{background:ye,label:te,deleteColor:te}}},kt={bgColor:Ke,fontColor:Xe,borderColor:Je,bulletColor:Qe,logoColor:ut,logoLabelColor:ft,logoLabelInverse:"#fff",loaderColor:"#8E98A9",linkColor:"#85B3EE",boxBackground:et,mutedText:"#767a80",signalColors:{danger:ut,good:gt,info:Et,warning:wt,disabled:nt},buttons:{regular:{enabled:{border:tt,text:tt,background:Ke,iconColor:tt},disabled:{border:pt,text:pt,background:dt,iconColor:pt},hover:{border:tt,text:tt,background:rt,iconColor:tt},pressed:{border:ot,text:ot,background:at,iconColor:ot}},callAction:{enabled:{border:it,text:Ke,background:it,iconColor:Ke},disabled:{border:st,text:Ke,background:st,iconColor:Ke},hover:{border:lt,text:Ke,background:lt,iconColor:Ke},pressed:{border:ct,text:Ke,background:ct,iconColor:Ke}},secondary:{enabled:{border:ut,text:ut,background:Ke,iconColor:ut},disabled:{border:pt,text:pt,background:dt,iconColor:pt},hover:{border:ut,text:ut,background:"#4B586A",iconColor:ut},pressed:{border:ut,text:Ke,background:ut,iconColor:Ke}},text:{enabled:{border:"transparent",text:tt,background:"transparent",iconColor:tt},disabled:{border:"transparent",text:pt,background:"transparent",iconColor:pt},hover:{border:rt,text:tt,background:rt,iconColor:tt},pressed:{border:at,text:ot,background:at,iconColor:ot}},subAction:{enabled:{border:yt,text:it,background:yt,iconColor:it},disabled:{border:st,text:Ke,background:st,iconColor:Ke},hover:{border:Et,text:it,background:Et,iconColor:it},pressed:{border:St,text:it,background:St,iconColor:it}}},login:{formBG:Ye,promoBG:"#000106",bgFilter:"grayscale(50%)",promoHeader:ft,promoText:ft,footerElements:"#85B3EE",footerDivider:"#545D6A"},pageHeader:{background:"#212936",border:mt,color:ht},tooltip:{background:"#8E98A9",color:"#161C24"},commonInput:{labelColor:"#A2ADC0"},checkbox:{checkBoxBorder:"#8E98A9",checkBoxColor:gt,disabledBorder:pt,disabledColor:dt},iconButton:{buttonBG:vt,activeBG:"#707988",hoverBG:"#4B586A",disabledBG:"#494A4D",color:"#283140"},dataTable:{border:Je,disabledBorder:nt,disabledBG:dt,selected:it,deletedDisabled:ut,hoverColor:rt},backLink:{color:"#8E98A9",arrow:bt,hover:"#3A3F4A"},inputBox:{border:Je,hoverBorder:it,color:tt,backgroundColor:Ke,error:ut,placeholderColor:"#494A4D",disabledBorder:nt,disabledBackground:pt,disabledPlaceholder:nt,disabledText:dt},breadcrumbs:{border:Je,linksColor:tt,textColor:tt,backgroundColor:Ye,backButton:{border:Je,backgroundColor:Ye}},actionsList:{containerBorderColor:Qe,backgroundColor:Ye,disabledOptionsTextColor:nt,optionsBorder:Qe,optionsHoverTextColor:lt,optionsTextColor:Xe,titleColor:Xe},screenTitle:{border:Je,subtitleColor:rt,iconColor:tt},modalBox:{closeColor:"#4B586A",closeHoverBG:"#4B586A",closeHoverColor:Xe,containerColor:et,overlayColor:"#00010650",titleColor:Xe,iconColor:{default:tt,accept:gt,delete:ut}},switchButton:{bulletBGColor:"#D5DEEF",bulletBorderColor:it,disabledBulletBGColor:"#4B586B",disabledBulletBorderColor:bt,offLabelColor:rt,onLabelColor:lt,onBackgroundColor:gt,switchBackground:bt,disabledBackground:"#494A4C",disabledOnBackground:"#a2d7c3"},dropdownSelector:{hoverText:Ke,backgroundColor:Ye,hoverBG:tt,selectedBGColor:Qe,selectedTextColor:it,optionTextColor:Xe},readBox:{borderColor:mt,backgroundColor:et,textColor:"#707988"},menu:{vertical:{background:_t,textColor:"#8E98A9",hoverSelectedIconBorder:"#0E1119",iconBorderColor:Ct,iconBGColor:"#161F30",dropArrowColor:Tt,dropArrowBackground:"#1C2436",hoverSelectedBackground:"linear-gradient(90deg, rgba(0,0,0,0) 0%, #1B212C 100%)",hoverSelectedColor:ht,notificationColor:ut,sectionDividerColor:xt,sectionLabelColor:ht,menuCollapseColor:"#E8E8E8"},horizontal:{menuHeaderBackground:_t,textColor:Xe,hoverSelectedIconBorder:Xe,iconBorderColor:Ct,iconBGColor:et,dropArrowColor:Tt,dropArrowBackground:et,hoverSelectedBackground:tt,hoverSelectedColor:ht,notificationColor:ut,sectionDividerColor:xt,barBackground:et,dropBackground:et,dropHoverSelectedColor:Ke,noOptionsBar:tt}},tabs:{vertical:{buttons:{hoverLabelColor:it,hoverBackground:"transparent",backgroundColor:et,labelColor:Xe,disabledBackgroundColor:dt,disabledColor:pt,selectedBackground:vt,selectedLabelColor:Ke},backgroundColor:et,borders:Je},horizontal:{buttons:{hoverLabelColor:it,hoverBackground:"transparent",backgroundColor:"transparent",labelColor:Xe,disabledBackgroundColor:"transparent",disabledColor:pt,selectedBackground:"transparent",selectedLabelColor:it},backgroundColor:"transparent",selectedIndicatorColor:it}},codeEditor:{backgroundColor:et,textColor:it,helpToolsBarBG:et,comment:"#8b949e",entityTag:"#7ee787",entity:"#d2a8ff",sublimelinterGutterMark:"#8E98A9",constant:"#79c0ff",string:"#a5d6ff",keyword:"#ff7b72",markupBold:"#c9d1d9",codeEditorRegexp:"#ffd582"},tag:{alert:{background:ut,label:it,deleteColor:it},default:{background:tt,label:Ke,deleteColor:Ke},secondary:{background:yt,label:it,deleteColor:it},warn:{background:wt,label:Ke,deleteColor:Ke},ok:{background:gt,label:Ke,deleteColor:Ke}}},It=function(e){var t=e.darkMode,n=void 0!==t&&t,r=e.children,o=e.customTheme,a=n?kt:At;return o&&(a=o),K.createElement(Y.f6,{theme:a},r)},Ot=function(){return Ot=Object.assign||function(e){for(var t,n=1,r=arguments.length;n-1},$n=function(e,t){var n=this.__data__,r=Hn(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this};function Kn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t svg":{fill:Rr(n,"buttons.".concat(d,".enabled.text"),"#000"),color:Rr(n,"buttons.".concat(d,".enabled.text"),"#000"),width:14,height:14}},"&:disabled":{cursor:"not-allowed",backgroundColor:Rr(n,"buttons.".concat(d,".disabled.background"),"#fff"),borderColor:Rr(n,"buttons.".concat(d,".disabled.border"),"#000"),borderWeight:1,borderStyle:"solid",color:Rr(n,"buttons.".concat(d,".disabled.text"),"#000"),"& .buttonIcon > svg":{fill:Rr(n,"buttons.".concat(d,".disabled.text"),"#000"),color:Rr(n,"buttons.".concat(d,".disabled.text"),"#000")}},"&:hover:not(:disabled)":{backgroundColor:Rr(n,"buttons.".concat(d,".hover.background"),"#fff"),borderColor:Rr(n,"buttons.".concat(d,".hover.border"),"#000"),color:Rr(n,"buttons.".concat(d,".hover.text"),"#000"),"& .buttonIcon > svg":{fill:Rr(n,"buttons.".concat(d,".hover.text"),"#000"),color:Rr(n,"buttons.".concat(d,".hover.text"),"#000")}},"&:active:not(:disabled)":{backgroundColor:Rr(n,"buttons.".concat(d,".pressed.background"),"#fff"),borderColor:Rr(n,"buttons.".concat(d,".pressed.border"),"#000"),color:Rr(n,"buttons.".concat(d,".pressed.text"),"#000"),"& .buttonIcon > svg":{fill:Rr(n,"buttons.".concat(d,".pressed.text"),"#000"),color:Rr(n,"buttons.".concat(d,".pressed.text"),"#000")}}},f),u)})),Qr=function(e){var t=e.label,n=e.variant,r=void 0===n?"regular":n,o=e.icon,a=e.iconLocation,i=void 0===a?"end":a,s=e.onClick,l=e.disabled,c=e.fullWidth,u=e.collapseOnSmall,d=void 0===u||u,p=e.children,f=Rt(e,["label","variant","icon","iconLocation","onClick","disabled","fullWidth","collapseOnSmall","children"]),m=null;return o&&(m=K.createElement("span",{className:"buttonIcon"},o)),K.createElement(Xr,Ot({onClick:s,disabled:l||!1,variant:r||"regular",iconLocation:i||"end",label:t||"",fullWidth:c||!1,collapseOnSmall:!!d,icon:m,parentChildren:p||null},f),K.createElement(K.Fragment,null,o&&"start"===i&&m,K.createElement("span",{className:"button-label"},p,p&&t?" ":"",t),o&&"end"===i&&m))},Jr=Y.ZP.svg((function(e){var t=Rr(e,"theme.logoLabelColor","#000");return e.inverse&&(t=Rr(e,"theme.logoLabelInverse","#fff")),{"& .minioSection":{fill:Rr(e,"theme.logoColor","#C51C3F")},"& .minioApplicationName":{fill:t}}})),eo=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 184.538 51",inverse:t},K.createElement("g",{transform:"translate(-31.65 -18.133)"},K.createElement("g",{transform:"translate(-995 -63.754)"},K.createElement("g",{transform:"translate(1025.5 81.887)"},K.createElement("g",{transform:"translate(0 0)"},K.createElement("g",{transform:"translate(0 0)"},K.createElement("path",{d:"M10.338-17.825A8.815,8.815,0,0,0,1.15-8.75,8.815,8.815,0,0,0,10.338.325a8.825,8.825,0,0,0,9.2-9.075A8.825,8.825,0,0,0,10.338-17.825Zm0,3.35a5.4,5.4,0,0,1,5.55,5.725,5.4,5.4,0,0,1-5.55,5.725A5.41,5.41,0,0,1,4.788-8.75,5.41,5.41,0,0,1,10.338-14.475ZM22.05-17.5V0h7.575c4.2,0,6.588-1.65,6.588-5.013A4.2,4.2,0,0,0,33.3-8.938a3.9,3.9,0,0,0,2.537-3.713c0-3.337-2.562-4.85-6.638-4.85Zm7.4,10.225c1.925,0,3.138.45,3.138,2.088,0,1.675-1.212,2.125-3.138,2.125l-3.913-.013v-4.2Zm-.35-7.15c1.725,0,3.1.375,3.1,2.025,0,1.7-1.35,2.063-3.087,2.063H25.538v-4.088ZM48.788-17.5H45.3V-6.7c0,2.525-1.1,3.675-2.95,3.675a4.214,4.214,0,0,1-3.4-1.625L36.925-2.113A6.9,6.9,0,0,0,42.513.313c3.65,0,6.275-2.3,6.275-6.688ZM65.113-3.2H55.525V-7.225h9.05v-3.2h-9.05V-14.3h9.487v-3.2H52.037V0H65.113ZM76.3-17.825A8.794,8.794,0,0,0,67.113-8.75,8.794,8.794,0,0,0,76.3.325a8.713,8.713,0,0,0,7.387-3.7l-2.85-2.05a5.355,5.355,0,0,1-4.562,2.4A5.4,5.4,0,0,1,70.75-8.75a5.411,5.411,0,0,1,5.525-5.725A5.237,5.237,0,0,1,80.8-12.063l3-1.838A8.5,8.5,0,0,0,76.3-17.825Zm22.9.325H84.863v3.262h5.425V0h3.487V-14.238H99.2Zm19.787,1.738a10.5,10.5,0,0,0-6.25-1.925c-3.6,0-6.475,1.812-6.475,5.037,0,2.688,1.938,4.125,5.138,4.488l1.987.225c2.913.325,4.438,1.25,4.438,3.15,0,2.363-2.337,3.525-5.3,3.525a10.115,10.115,0,0,1-5.925-1.95L105.762-2A11.524,11.524,0,0,0,112.537.188c3.775,0,6.875-1.7,6.875-5.1,0-2.913-2.262-4.138-5.375-4.488l-1.912-.212c-2.988-.338-4.275-1.4-4.275-3.138,0-2.187,2.063-3.488,4.875-3.488a9.323,9.323,0,0,1,5.475,1.713ZM135.025-17.5H120.888v1.45h6.3V0h1.525V-16.05h6.313Zm9.875-.2a8.672,8.672,0,0,0-8.963,8.95A8.672,8.672,0,0,0,144.9.2a8.672,8.672,0,0,0,8.962-8.95A8.672,8.672,0,0,0,144.9-17.7Zm0,1.475a7.174,7.174,0,0,1,7.363,7.475A7.174,7.174,0,0,1,144.9-1.275a7.177,7.177,0,0,1-7.375-7.475A7.177,7.177,0,0,1,144.9-16.225ZM157.413-17.5V0h1.525V-7.763h2.675L168.138,0h1.9l-6.625-7.763h.688c3.725,0,6.025-1.862,6.025-4.875,0-3.1-2.175-4.863-6.037-4.863Zm6.663,1.438c2.875,0,4.475,1.188,4.475,3.425s-1.575,3.488-4.475,3.488h-5.138v-6.913ZM185.6-1.438H175.075V-8.1h10.138V-9.525H175.075v-6.538h10.438V-17.5H173.55V0H185.6Z",transform:"translate(0 32.612)",className:"minioApplicationName"}),K.createElement("g",{transform:"translate(2.003)"},K.createElement("g",{transform:"translate(0 0.129)"},K.createElement("rect",{width:"2.49",height:"7.352",transform:"translate(14.42)",className:"minioSection"}),K.createElement("path",{d:"M237.8,365.332l-5.053,3.086a.226.226,0,0,1-.235,0l-5.053-3.086a.694.694,0,0,0-.362-.1H227.1a.693.693,0,0,0-.693.693v6.65h2.489v-3.165a.249.249,0,0,1,.379-.212l2.832,1.733a.886.886,0,0,0,.912.009L236,369.184a.249.249,0,0,1,.374.215v3.174h2.488v-6.65a.693.693,0,0,0-.692-.693h-.006A.694.694,0,0,0,237.8,365.332Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),K.createElement("path",{d:"M257.822,365.23H255.3v3.346a.249.249,0,0,1-.366.22l-6.543-3.485a.7.7,0,0,0-.326-.081h0a.693.693,0,0,0-.693.693v6.651h2.5v-3.343a.249.249,0,0,1,.365-.22L256.8,372.5a.692.692,0,0,0,.325.081h0a.693.693,0,0,0,.693-.693Z",transform:"translate(-228.498 -365.23)",className:"minioSection"})),K.createElement("path",{d:"M261.159,372.582V365.23H262.3v7.352Z",transform:"translate(-229.877 -365.101)",className:"minioSection"}),K.createElement("path",{d:"M269.337,372.7c-3.082,0-5.268-1.462-5.268-3.805s2.2-3.806,5.268-3.806,5.281,1.462,5.281,3.806S272.458,372.7,269.337,372.7Zm0-6.637c-2.292,0-4.056,1-4.056,2.832s1.765,2.831,4.056,2.831,4.07-.988,4.07-2.831S271.628,366.062,269.337,366.062Z",transform:"translate(-230.168 -365.087)",className:"minioSection"})))))),K.createElement("path",{d:"M5.344-6a1.226,1.226,0,0,0-.57-.922A2.188,2.188,0,0,0,3.547-7.25a2.317,2.317,0,0,0-.928.172A1.468,1.468,0,0,0,2-6.605a1.126,1.126,0,0,0-.221.684.957.957,0,0,0,.154.549,1.3,1.3,0,0,0,.4.379,2.686,2.686,0,0,0,.508.246q.266.1.488.154l.813.219a7.221,7.221,0,0,1,.7.227,3.309,3.309,0,0,1,.738.393,2.04,2.04,0,0,1,.584.635,1.824,1.824,0,0,1,.23.949A2.115,2.115,0,0,1,6.053-1a2.329,2.329,0,0,1-.984.832A3.618,3.618,0,0,1,3.5.141,3.653,3.653,0,0,1,2.014-.137,2.355,2.355,0,0,1,1.029-.91a2.2,2.2,0,0,1-.4-1.152h1a1.236,1.236,0,0,0,.307.748,1.608,1.608,0,0,0,.68.438A2.7,2.7,0,0,0,3.5-.734a2.6,2.6,0,0,0,1-.182,1.687,1.687,0,0,0,.7-.508,1.2,1.2,0,0,0,.258-.764.938.938,0,0,0-.223-.648,1.634,1.634,0,0,0-.586-.406,6.157,6.157,0,0,0-.785-.273L2.875-3.8a3.666,3.666,0,0,1-1.484-.77A1.69,1.69,0,0,1,.844-5.875a1.942,1.942,0,0,1,.365-1.174,2.417,2.417,0,0,1,.984-.781,3.331,3.331,0,0,1,1.385-.279,3.269,3.269,0,0,1,1.375.275,2.409,2.409,0,0,1,.955.752A1.875,1.875,0,0,1,6.281-6Zm3.3-1.141V-8h6v.859H12.131V0h-.969V-7.141ZM16.638,0H15.622l2.938-8h1L22.5,0H21.481L19.091-6.734h-.062Zm.375-3.125h4.094v.859H17.013ZM31.191-8V0h-.937L25.894-6.281h-.078V0h-.969V-8h.938l4.375,6.3h.078V-8ZM36.7,0H34.228V-8h2.578a3.918,3.918,0,0,1,1.992.479,3.16,3.16,0,0,1,1.27,1.371,4.771,4.771,0,0,1,.441,2.135,4.8,4.8,0,0,1-.445,2.15,3.159,3.159,0,0,1-1.3,1.383A4.14,4.14,0,0,1,36.7,0ZM35.2-.859h1.438a3.209,3.209,0,0,0,1.645-.383,2.359,2.359,0,0,0,.973-1.09,4.054,4.054,0,0,0,.32-1.684,4.035,4.035,0,0,0-.316-1.67,2.347,2.347,0,0,0-.945-1.078,3,3,0,0,0-1.566-.377H35.2ZM43.188,0H42.172l2.938-8h1l2.938,8H48.031L45.641-6.734h-.062Zm.375-3.125h4.094v.859H43.563ZM51.4,0V-8h2.7a3.277,3.277,0,0,1,1.539.318,2.054,2.054,0,0,1,.891.873,2.69,2.69,0,0,1,.289,1.262,2.643,2.643,0,0,1-.289,1.254,2.026,2.026,0,0,1-.887.857,3.3,3.3,0,0,1-1.527.311H51.928V-4h2.156a2.415,2.415,0,0,0,1.033-.187,1.194,1.194,0,0,0,.57-.533,1.787,1.787,0,0,0,.178-.826,1.856,1.856,0,0,0-.18-.84,1.235,1.235,0,0,0-.574-.557,2.345,2.345,0,0,0-1.043-.2h-1.7V0Zm3.766-3.594L57.131,0H56.006L54.069-3.594ZM62,0H59.528V-8h2.578a3.918,3.918,0,0,1,1.992.479,3.16,3.16,0,0,1,1.27,1.371,4.771,4.771,0,0,1,.441,2.135,4.8,4.8,0,0,1-.445,2.15,3.159,3.159,0,0,1-1.3,1.383A4.14,4.14,0,0,1,62,0ZM60.5-.859h1.438a3.209,3.209,0,0,0,1.645-.383,2.359,2.359,0,0,0,.973-1.09,4.055,4.055,0,0,0,.32-1.684,4.035,4.035,0,0,0-.316-1.67,2.347,2.347,0,0,0-.945-1.078,3,3,0,0,0-1.566-.377H60.5ZM72.728,0V-8H73.7V-.859h3.719V0Zm8.256-8V0h-.969V-8Zm9.475,2.5h-.969a2.034,2.034,0,0,0-.3-.734,2.072,2.072,0,0,0-.516-.533,2.24,2.24,0,0,0-.67-.326,2.668,2.668,0,0,0-.766-.109,2.431,2.431,0,0,0-1.314.367,2.536,2.536,0,0,0-.934,1.082A4.007,4.007,0,0,0,84.647-4a4.007,4.007,0,0,0,.346,1.754,2.536,2.536,0,0,0,.934,1.082A2.431,2.431,0,0,0,87.241-.8a2.668,2.668,0,0,0,.766-.109,2.24,2.24,0,0,0,.67-.326,2.06,2.06,0,0,0,.516-.535,2.053,2.053,0,0,0,.3-.732h.969a3.227,3.227,0,0,1-.4,1.1,2.973,2.973,0,0,1-.719.822,3.129,3.129,0,0,1-.963.514,3.614,3.614,0,0,1-1.139.176,3.353,3.353,0,0,1-1.82-.5,3.431,3.431,0,0,1-1.254-1.422A4.874,4.874,0,0,1,83.709-4a4.874,4.874,0,0,1,.457-2.187A3.431,3.431,0,0,1,85.42-7.609a3.353,3.353,0,0,1,1.82-.5,3.614,3.614,0,0,1,1.139.176,3.129,3.129,0,0,1,.963.514,2.984,2.984,0,0,1,.719.82A3.208,3.208,0,0,1,90.459-5.5ZM93.122,0V-8H97.95v.859H94.091v2.7H97.7v.859H94.091V-.859h3.922V0Zm14.022-8V0h-.937l-4.359-6.281h-.078V0H100.8V-8h.938l4.375,6.3h.078V-8Zm7.412,2a1.226,1.226,0,0,0-.57-.922,2.188,2.188,0,0,0-1.227-.328,2.317,2.317,0,0,0-.928.172,1.468,1.468,0,0,0-.617.473,1.126,1.126,0,0,0-.221.684.957.957,0,0,0,.154.549,1.3,1.3,0,0,0,.4.379,2.686,2.686,0,0,0,.508.246q.266.1.488.154l.813.219a7.22,7.22,0,0,1,.7.227,3.309,3.309,0,0,1,.738.393,2.04,2.04,0,0,1,.584.635,1.824,1.824,0,0,1,.23.949A2.115,2.115,0,0,1,115.265-1a2.329,2.329,0,0,1-.984.832,3.618,3.618,0,0,1-1.568.309,3.653,3.653,0,0,1-1.486-.277,2.355,2.355,0,0,1-.984-.773,2.2,2.2,0,0,1-.4-1.152h1a1.236,1.236,0,0,0,.307.748,1.608,1.608,0,0,0,.68.438,2.7,2.7,0,0,0,.889.143,2.6,2.6,0,0,0,1-.182,1.687,1.687,0,0,0,.7-.508,1.2,1.2,0,0,0,.258-.764.938.938,0,0,0-.223-.648,1.634,1.634,0,0,0-.586-.406,6.157,6.157,0,0,0-.785-.273l-.984-.281a3.666,3.666,0,0,1-1.484-.77,1.69,1.69,0,0,1-.547-1.309,1.942,1.942,0,0,1,.365-1.174,2.417,2.417,0,0,1,.984-.781,3.331,3.331,0,0,1,1.385-.279,3.269,3.269,0,0,1,1.375.275,2.409,2.409,0,0,1,.955.752A1.875,1.875,0,0,1,115.494-6ZM118.3,0V-8h4.828v.859h-3.859v2.7h3.609v.859h-3.609V-.859h3.922V0Z",transform:"translate(93 68)",className:"minioApplicationName"})))},to=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 184.45 55",inverse:t},K.createElement("g",{transform:"translate(-31.65 -18.133)"},K.createElement("g",{transform:"translate(-995 -63.754)"},K.createElement("g",{transform:"translate(1025.5 81.887)"},K.createElement("g",{transform:"translate(0 0)"},K.createElement("g",{transform:"translate(0 0)"},K.createElement("path",{d:"M10.338-17.825A8.815,8.815,0,0,0,1.15-8.75,8.815,8.815,0,0,0,10.338.325a8.825,8.825,0,0,0,9.2-9.075A8.825,8.825,0,0,0,10.338-17.825Zm0,3.35a5.4,5.4,0,0,1,5.55,5.725,5.4,5.4,0,0,1-5.55,5.725A5.41,5.41,0,0,1,4.788-8.75,5.41,5.41,0,0,1,10.338-14.475ZM22.05-17.5V0h7.575c4.2,0,6.588-1.65,6.588-5.013A4.2,4.2,0,0,0,33.3-8.938a3.9,3.9,0,0,0,2.537-3.713c0-3.337-2.562-4.85-6.638-4.85Zm7.4,10.225c1.925,0,3.138.45,3.138,2.088,0,1.675-1.212,2.125-3.138,2.125l-3.913-.013v-4.2Zm-.35-7.15c1.725,0,3.1.375,3.1,2.025,0,1.7-1.35,2.063-3.087,2.063H25.538v-4.088ZM48.788-17.5H45.3V-6.7c0,2.525-1.1,3.675-2.95,3.675a4.214,4.214,0,0,1-3.4-1.625L36.925-2.113A6.9,6.9,0,0,0,42.513.313c3.65,0,6.275-2.3,6.275-6.688ZM65.113-3.2H55.525V-7.225h9.05v-3.2h-9.05V-14.3h9.487v-3.2H52.037V0H65.113ZM76.3-17.825A8.794,8.794,0,0,0,67.113-8.75,8.794,8.794,0,0,0,76.3.325a8.713,8.713,0,0,0,7.387-3.7l-2.85-2.05a5.355,5.355,0,0,1-4.562,2.4A5.4,5.4,0,0,1,70.75-8.75a5.411,5.411,0,0,1,5.525-5.725A5.237,5.237,0,0,1,80.8-12.063l3-1.838A8.5,8.5,0,0,0,76.3-17.825Zm22.9.325H84.863v3.262h5.425V0h3.487V-14.238H99.2Zm19.787,1.738a10.5,10.5,0,0,0-6.25-1.925c-3.6,0-6.475,1.812-6.475,5.037,0,2.688,1.938,4.125,5.138,4.488l1.987.225c2.913.325,4.438,1.25,4.438,3.15,0,2.363-2.337,3.525-5.3,3.525a10.115,10.115,0,0,1-5.925-1.95L105.762-2A11.524,11.524,0,0,0,112.537.188c3.775,0,6.875-1.7,6.875-5.1,0-2.913-2.262-4.138-5.375-4.488l-1.912-.212c-2.988-.338-4.275-1.4-4.275-3.138,0-2.187,2.063-3.488,4.875-3.488a9.323,9.323,0,0,1,5.475,1.713ZM135.025-17.5H120.888v1.45h6.3V0h1.525V-16.05h6.313Zm9.875-.2a8.672,8.672,0,0,0-8.963,8.95A8.672,8.672,0,0,0,144.9.2a8.672,8.672,0,0,0,8.962-8.95A8.672,8.672,0,0,0,144.9-17.7Zm0,1.475a7.174,7.174,0,0,1,7.363,7.475A7.174,7.174,0,0,1,144.9-1.275a7.177,7.177,0,0,1-7.375-7.475A7.177,7.177,0,0,1,144.9-16.225ZM157.413-17.5V0h1.525V-7.763h2.675L168.138,0h1.9l-6.625-7.763h.688c3.725,0,6.025-1.862,6.025-4.875,0-3.1-2.175-4.863-6.037-4.863Zm6.663,1.438c2.875,0,4.475,1.188,4.475,3.425s-1.575,3.488-4.475,3.488h-5.138v-6.913ZM185.6-1.438H175.075V-8.1h10.138V-9.525H175.075v-6.538h10.438V-17.5H173.55V0H185.6Z",transform:"translate(0 32.612)",className:"minioApplicationName"}),K.createElement("g",{transform:"translate(2.003)"},K.createElement("g",{transform:"translate(0 0.129)"},K.createElement("rect",{width:"2.49",height:"7.352",transform:"translate(14.42)",className:"minioSection"}),K.createElement("path",{d:"M237.8,365.332l-5.053,3.086a.226.226,0,0,1-.235,0l-5.053-3.086a.694.694,0,0,0-.362-.1H227.1a.693.693,0,0,0-.693.693v6.65h2.489v-3.165a.249.249,0,0,1,.379-.212l2.832,1.733a.886.886,0,0,0,.912.009L236,369.184a.249.249,0,0,1,.374.215v3.174h2.488v-6.65a.693.693,0,0,0-.692-.693h-.006A.694.694,0,0,0,237.8,365.332Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),K.createElement("path",{d:"M257.822,365.23H255.3v3.346a.249.249,0,0,1-.366.22l-6.543-3.485a.7.7,0,0,0-.326-.081h0a.693.693,0,0,0-.693.693v6.651h2.5v-3.343a.249.249,0,0,1,.365-.22L256.8,372.5a.692.692,0,0,0,.325.081h0a.693.693,0,0,0,.693-.693Z",transform:"translate(-228.498 -365.23)",className:"minioSection"})),K.createElement("path",{d:"M261.159,372.582V365.23H262.3v7.352Z",transform:"translate(-229.877 -365.101)",className:"minioSection"}),K.createElement("path",{d:"M269.337,372.7c-3.082,0-5.268-1.462-5.268-3.805s2.2-3.806,5.268-3.806,5.281,1.462,5.281,3.806S272.458,372.7,269.337,372.7Zm0-6.637c-2.292,0-4.056,1-4.056,2.832s1.765,2.831,4.056,2.831,4.07-.988,4.07-2.831S271.628,366.062,269.337,366.062Z",transform:"translate(-230.168 -365.087)",className:"minioSection"}))))),K.createElement("g",{transform:"translate(1168.671 120.754)"},K.createElement("g",{transform:"translate(-65 0)"},K.createElement("path",{d:"M106.959,1769.479l-3.274,14.286h31.641a2.814,2.814,0,0,1-2.121-1.012,2.15,2.15,0,0,1-.209-.356c-.038-.092-.073-.185-.109-.28a2.832,2.832,0,0,1-.115-.985,7.182,7.182,0,0,1,1.312-3.389,18.271,18.271,0,0,1,3.616-3.945c.343-.284.7-.566,1.068-.839.458-.337.92-.648,1.383-.938a17.592,17.592,0,0,1,4.907-2.2,18.957,18.957,0,0,0-4.651,2.351l-.171.118a20.8,20.8,0,0,0-2.389,1.924c-2.254,2.119-3.445,4.315-2.9,5.6a1.6,1.6,0,0,0,.138.253c.582.856,2.024,1,3.851.544.124-.031.249-.067.377-.1a14.878,14.878,0,0,0,1.842-.677c.153-.068.309-.137.465-.212l.047-.023c2.015-1,3.563-2.153,3.9-2.845a.43.43,0,0,0,.041-.379c-.239-.485-1.912-.157-3.939.72-.163.07-.328.143-.494.221.136-.125.277-.252.421-.377.23-.2.468-.391.721-.582a14.277,14.277,0,0,1,1.191-.812c1.847-1.394,2.781-2.712,2.586-3.2a.343.343,0,0,0-.235-.194,3.4,3.4,0,0,0-1.942.374,14.514,14.514,0,0,0-2.333,1.25l-.112.073-.021.012-.394.262.226-.415a7.126,7.126,0,0,1,1.565-1.853,11.116,11.116,0,0,1,1.686-1.206c.233-.136.465-.262.7-.376s.476-.22.709-.312a8.2,8.2,0,0,1,1.98-.649c-.051,0-1.677.175-1.677.175H106.959Zm25.5.021a19.123,19.123,0,0,0,.8,5.76q.165.612.362,1.242.123.388.253.765c-.051.075-.1.149-.15.224a7.909,7.909,0,0,0-1.339,3.277,20.169,20.169,0,0,1-.712-3.562q-.059-.546-.091-1.08a15.688,15.688,0,0,1,.877-6.625Zm-15.424,1.833h3.533a1.217,1.217,0,0,1,.691.168.394.394,0,0,1,.185.435l-.415,1.874h-1.227l.4-1.824h-3.071L116.03,1777l-.4,1.815H118.7l0-.011.615-2.778h-1.442l.138-.626h2.668l-.765,3.466a.488.488,0,0,1-.053.138.765.765,0,0,1-.327.294,1.621,1.621,0,0,1-.765.168h-3.477a1.214,1.214,0,0,1-.691-.168.388.388,0,0,1-.185-.432l1.533-6.928a.664.664,0,0,1,.377-.435c.008,0,.016,0,.024-.009a1.6,1.6,0,0,1,.688-.159Zm5.454,0h4.38a1.215,1.215,0,0,1,.688.168.392.392,0,0,1,.188.435l-.818,3.695a.663.663,0,0,1-.38.433,1.612,1.612,0,0,1-.762.171h-3.183l-.615,2.774-.1.456h-1.2l.091-.412Zm6.051,0h1.2l-1.359,6.14-.3,1.341h2.871c.03.22.065.437.1.65h-4.319l.341-1.542Zm-5,.653-.8,3.6h2.992l.794-3.6Zm-6.38,8.485h.035a.85.85,0,0,1,.359.07.428.428,0,0,1,.221.218.532.532,0,0,1,.029.315l-.009.044h-.344l0-.041a.271.271,0,0,0-.032-.188l-.015-.018a.2.2,0,0,0-.029-.024.426.426,0,0,0-.221-.047.511.511,0,0,0-.291.068.258.258,0,0,0-.118.153.113.113,0,0,0,.024.109l0,0a.81.81,0,0,0,.291.1,2,2,0,0,1,.38.12.448.448,0,0,1,.218.209.458.458,0,0,1,.024.291.665.665,0,0,1-.156.291.789.789,0,0,1-.3.212,1,1,0,0,1-.382.076.955.955,0,0,1-.412-.076.473.473,0,0,1-.238-.244.6.6,0,0,1-.029-.356l.009-.041h.338l0,.041a.373.373,0,0,0,.021.189.23.23,0,0,0,.118.112.543.543,0,0,0,.235.047.649.649,0,0,0,.224-.038.4.4,0,0,0,.156-.094.261.261,0,0,0,.068-.126.138.138,0,0,0-.009-.1.214.214,0,0,0-.109-.08l-.288-.085a1.274,1.274,0,0,1-.332-.118.411.411,0,0,1-.18-.194.418.418,0,0,1-.015-.256.622.622,0,0,1,.144-.28.72.72,0,0,1,.288-.2A1.01,1.01,0,0,1,117.169,1780.47Zm3.089.006c.019,0,.036,0,.056,0l.212.023.071.006-.1.262-.021.041-.162-.015a.186.186,0,0,0-.106.023l-.006.006-.012.012a.279.279,0,0,0-.044.112l-.012.047h.253l-.065.292h-.247l-.25,1.121h-.341s.222-1,.25-1.121h-.2l.065-.292h.194c.009-.04.024-.091.024-.091a.717.717,0,0,1,.071-.209.441.441,0,0,1,.162-.159.491.491,0,0,1,.209-.059Zm.815.015-.112.5h.221l-.065.292H120.9c-.018.081-.159.709-.159.709s-.012.076-.012.1c0,0,0,0,0,0s0,0,0,0h0l.035,0,.162-.012-.018.262,0,.047-.232.026a.375.375,0,0,1-.209-.047.209.209,0,0,1-.094-.135.221.221,0,0,1-.006-.047,1.206,1.206,0,0,1,.035-.239s.124-.554.15-.671h-.162l.065-.292h.162c.015-.068.068-.3.068-.3l.274-.144.112-.059Zm-10.841.011h1.324l-.074.329h-.968l-.1.436h.838l-.074.329h-.838c-.018.082-.179.809-.179.809h-.356Zm1.774.465a.331.331,0,0,1,.041,0,.4.4,0,0,1,.238.079l.047.032-.182.3-.05-.035a.214.214,0,0,0-.118-.036.185.185,0,0,0-.1.036.258.258,0,0,0-.088.1.93.93,0,0,0-.088.241l-.159.724H111.2l.315-1.413h.318s-.011.043-.015.059c.015-.012.031-.027.044-.035A.358.358,0,0,1,112.006,1780.968Zm1.012,0c.021,0,.041,0,.062,0a.5.5,0,0,1,.432.2.545.545,0,0,1,.091.317,1.064,1.064,0,0,1-.026.227l-.026.1h-.959c0,.02,0,.041,0,.059a.28.28,0,0,0,.047.173.216.216,0,0,0,.053.053.261.261,0,0,0,.144.038.339.339,0,0,0,.188-.056.5.5,0,0,0,.153-.167h.365l-.032.07a.806.806,0,0,1-.288.329.779.779,0,0,1-.427.121.531.531,0,0,1-.459-.2.644.644,0,0,1-.065-.536.975.975,0,0,1,.3-.541.76.76,0,0,1,.45-.191Zm1.533,0c.021,0,.041,0,.062,0a.5.5,0,0,1,.432.2.545.545,0,0,1,.091.317,1.04,1.04,0,0,1-.026.224l-.026.106h-.959l0,.038s0,.012,0,.018v0c0,.013,0,.028,0,.041a.254.254,0,0,0,.044.132.227.227,0,0,0,.015.021.239.239,0,0,0,.182.071.336.336,0,0,0,.188-.056.5.5,0,0,0,.153-.167h.368l-.035.07a.806.806,0,0,1-.288.329.779.779,0,0,1-.427.121.49.49,0,0,1-.55-.52c0-.02,0-.041,0-.062a1.067,1.067,0,0,1,.024-.153.975.975,0,0,1,.3-.541A.768.768,0,0,1,114.551,1780.968Zm4.175,0c.021,0,.04,0,.062,0a.523.523,0,0,1,.444.2.627.627,0,0,1,.071.529,1.086,1.086,0,0,1-.171.415.811.811,0,0,1-.644.326.516.516,0,0,1-.444-.2.528.528,0,0,1-.094-.321,1.011,1.011,0,0,1,.026-.227.925.925,0,0,1,.341-.568.794.794,0,0,1,.409-.153Zm5.169,0c.025,0,.048,0,.074,0a.748.748,0,0,1,.282.041.31.31,0,0,1,.159.124.337.337,0,0,1,.044.179l-.035.215-.065.291a3.187,3.187,0,0,0-.071.377.377.377,0,0,0,.015.135l.024.077h-.347l-.015-.045a.417.417,0,0,1-.006-.07,1.03,1.03,0,0,1-.191.1.83.83,0,0,1-.271.047.446.446,0,0,1-.35-.123.313.313,0,0,1-.079-.218.474.474,0,0,1,.012-.1.492.492,0,0,1,.091-.2.55.55,0,0,1,.159-.141.71.71,0,0,1,.191-.077l.209-.035a2.331,2.331,0,0,0,.368-.068.185.185,0,0,1,.006-.021.188.188,0,0,0,0-.129l-.006-.006-.012-.012a.29.29,0,0,0-.177-.041.391.391,0,0,0-.206.044.382.382,0,0,0-.127.159h-.356l.032-.071a.75.75,0,0,1,.156-.241.648.648,0,0,1,.247-.144A.974.974,0,0,1,123.895,1780.968Zm1.492,0a.331.331,0,0,1,.041,0,.4.4,0,0,1,.241.079l.044.032-.182.3-.05-.035a.207.207,0,0,0-.115-.036.2.2,0,0,0-.106.036.259.259,0,0,0-.085.1.965.965,0,0,0-.088.241l-.162.724h-.341l.315-1.413h.318s-.008.043-.012.059a.536.536,0,0,1,.044-.035A.342.342,0,0,1,125.386,1780.968Zm1.009,0c.02,0,.041,0,.062,0a.5.5,0,0,1,.432.2.538.538,0,0,1,.091.317,1.077,1.077,0,0,1-.029.227l-.024.1h-.959c0,.02-.006.041-.006.059a.286.286,0,0,0,.047.173.251.251,0,0,0,.018.021l.012.012a.246.246,0,0,0,.171.059.339.339,0,0,0,.188-.056.508.508,0,0,0,.153-.167h.368l-.035.07a.813.813,0,0,1-.288.329.779.779,0,0,1-.427.121.525.525,0,0,1-.456-.2.647.647,0,0,1-.068-.536.972.972,0,0,1,.3-.541A.77.77,0,0,1,126.4,1780.968Zm-5.151.026h.35s.043.838.044.85c.014-.03.025-.055.026-.059l.385-.792h.321s.029.828.029.833l.438-.833h.347l-.765,1.413h-.315s-.03-.766-.032-.809l-.394.809h-.324Zm-8.22.268a.374.374,0,0,0-.224.088.433.433,0,0,0-.121.167h.58c0-.01,0-.023,0-.032a.244.244,0,0,0-.026-.123.207.207,0,0,0-.194-.1Zm1.533,0a.374.374,0,0,0-.224.088.443.443,0,0,0-.121.167h.58c0-.01,0-.023,0-.032a.234.234,0,0,0-.026-.123.244.244,0,0,0-.029-.038.219.219,0,0,0-.165-.062Zm11.856,0a.381.381,0,0,0-.232.088.454.454,0,0,0-.121.167h.577c0-.01,0-.023,0-.032a.234.234,0,0,0-.027-.123.21.21,0,0,0-.194-.1Zm-7.708.006a.39.39,0,0,0-.218.106.637.637,0,0,0-.174.341.779.779,0,0,0-.021.168.289.289,0,0,0,.038.159.316.316,0,0,0,.024.03.229.229,0,0,0,.174.068.372.372,0,0,0,.259-.109.654.654,0,0,0,.174-.347.419.419,0,0,0-.018-.317.213.213,0,0,0-.194-.1C118.734,1781.267,118.72,1781.266,118.705,1781.267Zm5.316.515a2.16,2.16,0,0,1-.288.056.968.968,0,0,0-.188.042.208.208,0,0,0-.079.056.173.173,0,0,0-.041.077.2.2,0,0,0,0,.032s0,0,0,0,0,.007,0,.009a.113.113,0,0,0,0,.015l0,.006a.087.087,0,0,0,0,.009l.006.009.009.012a.185.185,0,0,0,.138.038.465.465,0,0,0,.212-.047.409.409,0,0,0,.156-.135A.545.545,0,0,0,124.021,1781.782Zm-17.969-2.359,7.9-8.152h1.289l-1.906,8.152H112.27l.541-2.347H109.5l-2.249,2.347h-1.2m4.254-3.186h2.707l.5-2.047q.3-1.217.582-2.029-.559.7-1.479,1.662l-2.309,2.413",transform:"translate(-103.684 -1768.875)",className:"minioApplicationName"}),K.createElement("path",{d:"M627.829,1776.9a3.183,3.183,0,0,1-2.4-1.149,2.464,2.464,0,0,1-.241-.411c-.045-.107-.084-.207-.123-.307l.439-.17c.038.1.075.193.114.287a2,2,0,0,0,.19.323,2.685,2.685,0,0,0,2.04.958h1.032a9.027,9.027,0,0,0,1-.141,12.945,12.945,0,0,0,1.935-.55c.524-.191,1.054-.415,1.575-.666a22.265,22.265,0,0,0,3.559-2.154c.377-.278.756-.574,1.124-.881q.494-.411.947-.834a9.057,9.057,0,0,0,1.807-2.317c.348-.7.407-1.259.167-1.576a.989.989,0,0,0-.749-.326l-.622-.048.5-.375c1.786-1.34,2.8-2.927,2.457-3.858a1,1,0,0,0-.638-.59,2.032,2.032,0,0,0-.516-.106h-.549a8.415,8.415,0,0,0-2.824.8l-.207-.423a8.932,8.932,0,0,1,3.014-.845h.585a2.509,2.509,0,0,1,.656.133,1.455,1.455,0,0,1,.921.871c.387,1.063-.5,2.665-2.216,4.081a1.2,1.2,0,0,1,.564.4,1.959,1.959,0,0,1-.121,2.07,9.408,9.408,0,0,1-1.9,2.449q-.466.435-.97.854c-.376.313-.761.615-1.146.9a22.77,22.77,0,0,1-3.635,2.2c-.535.257-1.079.487-1.617.683a13.4,13.4,0,0,1-2.006.569,9.406,9.406,0,0,1-1.07.148Z",transform:"translate(-596.283 -1761.542)",className:"minioApplicationName"})))),K.createElement("path",{d:"M.969,0V-8h.969V-.859H5.656V0ZM9.225-8V0H8.256V-8ZM18.7-5.5h-.969a2.034,2.034,0,0,0-.3-.734,2.072,2.072,0,0,0-.516-.533,2.24,2.24,0,0,0-.67-.326,2.668,2.668,0,0,0-.766-.109,2.431,2.431,0,0,0-1.314.367,2.536,2.536,0,0,0-.934,1.082A4.007,4.007,0,0,0,12.887-4a4.007,4.007,0,0,0,.346,1.754,2.536,2.536,0,0,0,.934,1.082A2.431,2.431,0,0,0,15.481-.8a2.668,2.668,0,0,0,.766-.109,2.24,2.24,0,0,0,.67-.326,2.06,2.06,0,0,0,.516-.535,2.053,2.053,0,0,0,.3-.732H18.7a3.227,3.227,0,0,1-.4,1.1,2.973,2.973,0,0,1-.719.822,3.129,3.129,0,0,1-.963.514,3.614,3.614,0,0,1-1.139.176,3.353,3.353,0,0,1-1.82-.5,3.431,3.431,0,0,1-1.254-1.422A4.874,4.874,0,0,1,11.95-4a4.874,4.874,0,0,1,.457-2.187,3.431,3.431,0,0,1,1.254-1.422,3.353,3.353,0,0,1,1.82-.5,3.614,3.614,0,0,1,1.139.176,3.129,3.129,0,0,1,.963.514,2.984,2.984,0,0,1,.719.82A3.208,3.208,0,0,1,18.7-5.5ZM21.362,0V-8h4.828v.859H22.331v2.7h3.609v.859H22.331V-.859h3.922V0ZM35.384-8V0h-.937L30.087-6.281h-.078V0h-.969V-8h.938l4.375,6.3h.078V-8ZM42.8-6a1.226,1.226,0,0,0-.57-.922A2.188,2.188,0,0,0,41-7.25a2.317,2.317,0,0,0-.928.172,1.468,1.468,0,0,0-.617.473,1.126,1.126,0,0,0-.221.684.957.957,0,0,0,.154.549,1.3,1.3,0,0,0,.4.379,2.686,2.686,0,0,0,.508.246q.266.1.488.154l.813.219a7.221,7.221,0,0,1,.7.227,3.309,3.309,0,0,1,.738.393,2.04,2.04,0,0,1,.584.635,1.824,1.824,0,0,1,.23.949A2.115,2.115,0,0,1,43.506-1a2.329,2.329,0,0,1-.984.832,3.618,3.618,0,0,1-1.568.309,3.653,3.653,0,0,1-1.486-.277,2.355,2.355,0,0,1-.984-.773,2.2,2.2,0,0,1-.4-1.152h1a1.236,1.236,0,0,0,.307.748,1.608,1.608,0,0,0,.68.438,2.7,2.7,0,0,0,.889.143,2.6,2.6,0,0,0,1-.182,1.687,1.687,0,0,0,.7-.508,1.2,1.2,0,0,0,.258-.764.938.938,0,0,0-.223-.648,1.634,1.634,0,0,0-.586-.406,6.157,6.157,0,0,0-.785-.273L40.328-3.8a3.666,3.666,0,0,1-1.484-.77A1.69,1.69,0,0,1,38.3-5.875a1.942,1.942,0,0,1,.365-1.174,2.417,2.417,0,0,1,.984-.781,3.331,3.331,0,0,1,1.385-.279,3.269,3.269,0,0,1,1.375.275,2.409,2.409,0,0,1,.955.752A1.875,1.875,0,0,1,43.734-6Zm3.741,6V-8h4.828v.859H47.506v2.7h3.609v.859H47.506V-.859h3.922V0Z",transform:"translate(164 68)",className:"minioApplicationName"})))},no=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 184.45 51",inverse:t},K.createElement("g",{transform:"translate(-31.65 -18.133)"},K.createElement("g",{transform:"translate(-995 -63.754)"},K.createElement("g",{transform:"translate(1025.5 81.887)"},K.createElement("g",{transform:"translate(0 0)"},K.createElement("g",{transform:"translate(0 0)"},K.createElement("path",{d:"M10.338-17.825A8.815,8.815,0,0,0,1.15-8.75,8.815,8.815,0,0,0,10.338.325a8.825,8.825,0,0,0,9.2-9.075A8.825,8.825,0,0,0,10.338-17.825Zm0,3.35a5.4,5.4,0,0,1,5.55,5.725,5.4,5.4,0,0,1-5.55,5.725A5.41,5.41,0,0,1,4.788-8.75,5.41,5.41,0,0,1,10.338-14.475ZM22.05-17.5V0h7.575c4.2,0,6.588-1.65,6.588-5.013A4.2,4.2,0,0,0,33.3-8.938a3.9,3.9,0,0,0,2.537-3.713c0-3.337-2.562-4.85-6.638-4.85Zm7.4,10.225c1.925,0,3.138.45,3.138,2.088,0,1.675-1.212,2.125-3.138,2.125l-3.913-.013v-4.2Zm-.35-7.15c1.725,0,3.1.375,3.1,2.025,0,1.7-1.35,2.063-3.087,2.063H25.538v-4.088ZM48.788-17.5H45.3V-6.7c0,2.525-1.1,3.675-2.95,3.675a4.214,4.214,0,0,1-3.4-1.625L36.925-2.113A6.9,6.9,0,0,0,42.513.313c3.65,0,6.275-2.3,6.275-6.688ZM65.113-3.2H55.525V-7.225h9.05v-3.2h-9.05V-14.3h9.487v-3.2H52.037V0H65.113ZM76.3-17.825A8.794,8.794,0,0,0,67.113-8.75,8.794,8.794,0,0,0,76.3.325a8.713,8.713,0,0,0,7.387-3.7l-2.85-2.05a5.355,5.355,0,0,1-4.562,2.4A5.4,5.4,0,0,1,70.75-8.75a5.411,5.411,0,0,1,5.525-5.725A5.237,5.237,0,0,1,80.8-12.063l3-1.838A8.5,8.5,0,0,0,76.3-17.825Zm22.9.325H84.863v3.262h5.425V0h3.487V-14.238H99.2Zm19.787,1.738a10.5,10.5,0,0,0-6.25-1.925c-3.6,0-6.475,1.812-6.475,5.037,0,2.688,1.938,4.125,5.138,4.488l1.987.225c2.913.325,4.438,1.25,4.438,3.15,0,2.363-2.337,3.525-5.3,3.525a10.115,10.115,0,0,1-5.925-1.95L105.762-2A11.524,11.524,0,0,0,112.537.188c3.775,0,6.875-1.7,6.875-5.1,0-2.913-2.262-4.138-5.375-4.488l-1.912-.212c-2.988-.338-4.275-1.4-4.275-3.138,0-2.187,2.063-3.488,4.875-3.488a9.323,9.323,0,0,1,5.475,1.713ZM135.025-17.5H120.888v1.45h6.3V0h1.525V-16.05h6.313Zm9.875-.2a8.672,8.672,0,0,0-8.963,8.95A8.672,8.672,0,0,0,144.9.2a8.672,8.672,0,0,0,8.962-8.95A8.672,8.672,0,0,0,144.9-17.7Zm0,1.475a7.174,7.174,0,0,1,7.363,7.475A7.174,7.174,0,0,1,144.9-1.275a7.177,7.177,0,0,1-7.375-7.475A7.177,7.177,0,0,1,144.9-16.225ZM157.413-17.5V0h1.525V-7.763h2.675L168.138,0h1.9l-6.625-7.763h.688c3.725,0,6.025-1.862,6.025-4.875,0-3.1-2.175-4.863-6.037-4.863Zm6.663,1.438c2.875,0,4.475,1.188,4.475,3.425s-1.575,3.488-4.475,3.488h-5.138v-6.913ZM185.6-1.438H175.075V-8.1h10.138V-9.525H175.075v-6.538h10.438V-17.5H173.55V0H185.6Z",transform:"translate(0 32.612)",className:"minioApplicationName"}),K.createElement("g",{transform:"translate(2.003)"},K.createElement("g",{transform:"translate(0 0.129)"},K.createElement("rect",{width:"2.49",height:"7.352",transform:"translate(14.42)",className:"minioSection"}),K.createElement("path",{d:"M237.8,365.332l-5.053,3.086a.226.226,0,0,1-.235,0l-5.053-3.086a.694.694,0,0,0-.362-.1H227.1a.693.693,0,0,0-.693.693v6.65h2.489v-3.165a.249.249,0,0,1,.379-.212l2.832,1.733a.886.886,0,0,0,.912.009L236,369.184a.249.249,0,0,1,.374.215v3.174h2.488v-6.65a.693.693,0,0,0-.692-.693h-.006A.694.694,0,0,0,237.8,365.332Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),K.createElement("path",{d:"M257.822,365.23H255.3v3.346a.249.249,0,0,1-.366.22l-6.543-3.485a.7.7,0,0,0-.326-.081h0a.693.693,0,0,0-.693.693v6.651h2.5v-3.343a.249.249,0,0,1,.365-.22L256.8,372.5a.692.692,0,0,0,.325.081h0a.693.693,0,0,0,.693-.693Z",transform:"translate(-228.498 -365.23)",className:"minioSection"})),K.createElement("path",{d:"M261.159,372.582V365.23H262.3v7.352Z",transform:"translate(-229.877 -365.101)",className:"minioSection"}),K.createElement("path",{d:"M269.337,372.7c-3.082,0-5.268-1.462-5.268-3.805s2.2-3.806,5.268-3.806,5.281,1.462,5.281,3.806S272.458,372.7,269.337,372.7Zm0-6.637c-2.292,0-4.056,1-4.056,2.832s1.765,2.831,4.056,2.831,4.07-.988,4.07-2.831S271.628,366.062,269.337,366.062Z",transform:"translate(-230.168 -365.087)",className:"minioSection"})))))),K.createElement("path",{d:"M.969,0V-8H5.8v.859H1.938v2.7H5.547v.859H1.938V-.859H5.859V0ZM14.991-8V0h-.937L9.694-6.281H9.616V0H8.647V-8h.938l4.375,6.3h.078V-8Zm2.6.859V-8h6v.859H21.075V0h-.969V-7.141ZM26.191,0V-8h4.828v.859H27.159v2.7h3.609v.859H27.159V-.859h3.922V0Zm7.678,0V-8h2.7a3.277,3.277,0,0,1,1.539.318A2.054,2.054,0,0,1,39-6.809a2.69,2.69,0,0,1,.289,1.262A2.643,2.643,0,0,1,39-4.293a2.026,2.026,0,0,1-.887.857,3.3,3.3,0,0,1-1.527.311H34.4V-4h2.156a2.415,2.415,0,0,0,1.033-.187,1.194,1.194,0,0,0,.57-.533,1.787,1.787,0,0,0,.178-.826,1.856,1.856,0,0,0-.18-.84,1.235,1.235,0,0,0-.574-.557,2.345,2.345,0,0,0-1.043-.2h-1.7V0Zm3.766-3.594L39.6,0H38.478L36.541-3.594ZM42,0V-8h2.7a3.116,3.116,0,0,1,1.541.338,2.141,2.141,0,0,1,.889.912,2.809,2.809,0,0,1,.289,1.281,2.849,2.849,0,0,1-.287,1.285,2.149,2.149,0,0,1-.885.92,3.057,3.057,0,0,1-1.531.342H42.781v-.859h1.906A2.084,2.084,0,0,0,45.723-4a1.337,1.337,0,0,0,.568-.6,2.013,2.013,0,0,0,.178-.861,2,2,0,0,0-.178-.859,1.3,1.3,0,0,0-.572-.6,2.173,2.173,0,0,0-1.047-.217h-1.7V0Zm8.084,0V-8h2.7a3.277,3.277,0,0,1,1.539.318,2.054,2.054,0,0,1,.891.873,2.69,2.69,0,0,1,.289,1.262,2.643,2.643,0,0,1-.289,1.254,2.026,2.026,0,0,1-.887.857,3.3,3.3,0,0,1-1.527.311H50.616V-4h2.156a2.415,2.415,0,0,0,1.033-.187,1.194,1.194,0,0,0,.57-.533,1.787,1.787,0,0,0,.178-.826,1.856,1.856,0,0,0-.18-.84,1.235,1.235,0,0,0-.574-.557,2.345,2.345,0,0,0-1.043-.2h-1.7V0ZM53.85-3.594,55.819,0H54.694L52.756-3.594ZM59.184-8V0h-.969V-8ZM66.6-6a1.226,1.226,0,0,0-.57-.922A2.188,2.188,0,0,0,64.8-7.25a2.318,2.318,0,0,0-.928.172,1.468,1.468,0,0,0-.617.473,1.126,1.126,0,0,0-.221.684.957.957,0,0,0,.154.549,1.3,1.3,0,0,0,.4.379,2.686,2.686,0,0,0,.508.246q.266.1.488.154l.813.219a7.22,7.22,0,0,1,.7.227,3.308,3.308,0,0,1,.738.393,2.04,2.04,0,0,1,.584.635,1.824,1.824,0,0,1,.23.949A2.115,2.115,0,0,1,67.306-1a2.329,2.329,0,0,1-.984.832,3.618,3.618,0,0,1-1.568.309,3.653,3.653,0,0,1-1.486-.277,2.355,2.355,0,0,1-.984-.773,2.2,2.2,0,0,1-.4-1.152h1a1.236,1.236,0,0,0,.307.748,1.608,1.608,0,0,0,.68.438,2.7,2.7,0,0,0,.889.143,2.6,2.6,0,0,0,1-.182,1.687,1.687,0,0,0,.7-.508,1.2,1.2,0,0,0,.258-.764.938.938,0,0,0-.223-.648,1.634,1.634,0,0,0-.586-.406,6.157,6.157,0,0,0-.785-.273L64.128-3.8a3.666,3.666,0,0,1-1.484-.77A1.69,1.69,0,0,1,62.1-5.875a1.942,1.942,0,0,1,.365-1.174,2.417,2.417,0,0,1,.984-.781,3.331,3.331,0,0,1,1.385-.279,3.269,3.269,0,0,1,1.375.275,2.409,2.409,0,0,1,.955.752A1.875,1.875,0,0,1,67.534-6Zm3.741,6V-8h4.828v.859H71.306v2.7h3.609v.859H71.306V-.859h3.922V0ZM82.209,0V-8h.969V-.859H86.9V0Zm8.256-8V0H89.5V-8Zm9.475,2.5h-.969a2.034,2.034,0,0,0-.3-.734,2.072,2.072,0,0,0-.516-.533,2.24,2.24,0,0,0-.67-.326,2.668,2.668,0,0,0-.766-.109,2.431,2.431,0,0,0-1.314.367,2.536,2.536,0,0,0-.934,1.082A4.007,4.007,0,0,0,94.128-4a4.007,4.007,0,0,0,.346,1.754,2.536,2.536,0,0,0,.934,1.082A2.431,2.431,0,0,0,96.722-.8a2.668,2.668,0,0,0,.766-.109,2.24,2.24,0,0,0,.67-.326,2.06,2.06,0,0,0,.516-.535,2.053,2.053,0,0,0,.3-.732h.969a3.227,3.227,0,0,1-.4,1.1,2.973,2.973,0,0,1-.719.822,3.129,3.129,0,0,1-.963.514,3.614,3.614,0,0,1-1.139.176,3.353,3.353,0,0,1-1.82-.5,3.431,3.431,0,0,1-1.254-1.422A4.874,4.874,0,0,1,93.191-4a4.874,4.874,0,0,1,.457-2.187A3.431,3.431,0,0,1,94.9-7.609a3.353,3.353,0,0,1,1.82-.5,3.614,3.614,0,0,1,1.139.176,3.129,3.129,0,0,1,.963.514,2.984,2.984,0,0,1,.719.82A3.208,3.208,0,0,1,99.941-5.5ZM102.6,0V-8h4.828v.859h-3.859v2.7h3.609v.859h-3.609V-.859h3.922V0Zm14.022-8V0h-.937l-4.359-6.281h-.078V0h-.969V-8h.938l4.375,6.3h.078V-8Zm7.412,2a1.226,1.226,0,0,0-.57-.922,2.188,2.188,0,0,0-1.227-.328,2.317,2.317,0,0,0-.928.172,1.468,1.468,0,0,0-.617.473,1.126,1.126,0,0,0-.221.684.957.957,0,0,0,.154.549,1.3,1.3,0,0,0,.4.379,2.686,2.686,0,0,0,.508.246q.266.1.488.154l.813.219a7.22,7.22,0,0,1,.7.227,3.309,3.309,0,0,1,.738.393,2.04,2.04,0,0,1,.584.635,1.824,1.824,0,0,1,.23.949A2.115,2.115,0,0,1,124.746-1a2.329,2.329,0,0,1-.984.832,3.618,3.618,0,0,1-1.568.309,3.653,3.653,0,0,1-1.486-.277,2.355,2.355,0,0,1-.984-.773,2.2,2.2,0,0,1-.4-1.152h1a1.236,1.236,0,0,0,.307.748,1.608,1.608,0,0,0,.68.438,2.7,2.7,0,0,0,.889.143,2.6,2.6,0,0,0,1-.182,1.687,1.687,0,0,0,.7-.508,1.2,1.2,0,0,0,.258-.764.938.938,0,0,0-.223-.648,1.634,1.634,0,0,0-.586-.406,6.157,6.157,0,0,0-.785-.273l-.984-.281a3.666,3.666,0,0,1-1.484-.77,1.69,1.69,0,0,1-.547-1.309,1.942,1.942,0,0,1,.365-1.174,2.417,2.417,0,0,1,.984-.781,3.331,3.331,0,0,1,1.385-.279,3.269,3.269,0,0,1,1.375.275,2.409,2.409,0,0,1,.955.752A1.875,1.875,0,0,1,124.975-6Zm3.741,6V-8h4.828v.859h-3.859v2.7h3.609v.859h-3.609V-.859h3.922V0Z",transform:"translate(83 68)",className:"minioApplicationName"})))},ro=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 154.498 50.008",inverse:t},K.createElement("g",{transform:"translate(27.666 -11)"},K.createElement("g",{transform:"translate(-29 11)"},K.createElement("g",{transform:"translate(0 0)"},K.createElement("path",{d:"M11.992-20.677A10.225,10.225,0,0,0,1.334-10.15,10.225,10.225,0,0,0,11.992.377,10.237,10.237,0,0,0,22.664-10.15,10.237,10.237,0,0,0,11.992-20.677Zm0,3.886A6.268,6.268,0,0,1,18.43-10.15a6.268,6.268,0,0,1-6.438,6.641A6.276,6.276,0,0,1,5.554-10.15,6.276,6.276,0,0,1,11.992-16.791ZM33.887-7.424c4.814,0,7.4-2.523,7.4-6.424,0-3.929-2.581-6.453-7.424-6.453h-8.28V0h4.046V-7.424Zm-.1-9.15c2.2,0,3.35.914,3.35,2.726s-1.146,2.726-3.35,2.726H29.624v-5.452ZM59.174-3.712H48.053V-8.381h10.5v-3.712h-10.5v-4.5H59.059V-20.3H44.007V0H59.174ZM62.6-20.3V0h4.045V-8.077h1.189L73.747,0h4.9L72.4-8.135c3.9-.377,6.221-2.654,6.221-5.989,0-3.886-2.6-6.177-7.438-6.177Zm8.512,3.726c2.146,0,3.35.769,3.35,2.451,0,1.711-1.146,2.523-3.35,2.523H66.642v-4.974ZM92.278-20.3h-4.93L79.445,0h4.22l1.769-4.727H94.09L95.86,0h4.321Zm-2.508,4L92.7-8.454H86.826Zm25.288-4H98.426v3.785h6.293V0h4.045V-16.516h6.293Zm11.136-.377A10.225,10.225,0,0,0,115.536-10.15,10.225,10.225,0,0,0,126.194.377,10.237,10.237,0,0,0,136.866-10.15,10.237,10.237,0,0,0,126.194-20.677Zm0,3.886a6.268,6.268,0,0,1,6.438,6.641,6.268,6.268,0,0,1-6.438,6.641,6.276,6.276,0,0,1-6.438-6.641A6.276,6.276,0,0,1,126.194-16.791ZM139.78-20.3V0h4.046V-8.077h1.189L150.931,0h4.9l-6.25-8.135c3.9-.377,6.221-2.654,6.221-5.989,0-3.886-2.6-6.177-7.439-6.177Zm8.512,3.726c2.146,0,3.35.769,3.35,2.451,0,1.711-1.146,2.523-3.35,2.523h-4.466v-4.974Z",transform:"translate(0 37.951)",className:"minioApplicationName"}),K.createElement("g",{transform:"translate(2.356 0)"},K.createElement("g",{transform:"translate(0 0.151)"},K.createElement("rect",{width:"2.928",height:"8.645",transform:"translate(16.956)",className:"minioSection"}),K.createElement("path",{d:"M239.81,365.349l-5.942,3.629a.265.265,0,0,1-.276,0l-5.942-3.629a.816.816,0,0,0-.425-.119h-.007a.815.815,0,0,0-.815.815v7.82h2.926v-3.722a.293.293,0,0,1,.446-.25l3.33,2.037a1.042,1.042,0,0,0,1.072.011l3.515-2.062a.293.293,0,0,1,.44.253v3.733h2.925v-7.82a.814.814,0,0,0-.814-.815h-.007A.816.816,0,0,0,239.81,365.349Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),K.createElement("path",{d:"M259.662,365.23h-2.969v3.935a.293.293,0,0,1-.431.258l-7.694-4.1a.818.818,0,0,0-.383-.1h-.005a.815.815,0,0,0-.815.815v7.821h2.945v-3.931a.293.293,0,0,1,.43-.258l7.725,4.1a.814.814,0,0,0,.382.1h0a.815.815,0,0,0,.815-.815Z",transform:"translate(-225.18 -365.23)",className:"minioSection"})),K.createElement("path",{d:"M261.159,373.875V365.23h1.347v8.646Z",transform:"translate(-224.375 -365.079)",className:"minioSection"}),K.createElement("path",{d:"M270.264,374.038c-3.624,0-6.195-1.719-6.195-4.475s2.587-4.476,6.195-4.476,6.21,1.719,6.21,4.476S273.934,374.038,270.264,374.038Zm0-7.8c-2.695,0-4.77,1.177-4.77,3.33s2.075,3.329,4.77,3.329,4.786-1.162,4.786-3.329S272.958,366.233,270.264,366.233Z",transform:"translate(-224.205 -365.087)",className:"minioSection"}))))))},oo=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 184.538 50.008",inverse:t},K.createElement("g",{transform:"translate(26.456 -11)"},K.createElement("g",{transform:"translate(-29 11)"},K.createElement("g",{transform:"translate(0 0)"},K.createElement("path",{d:"M2.544-22.4V0h9.232c7.008,0,11.632-4.448,11.632-11.2S18.784-22.4,11.776-22.4Zm9.184,4.176c4.72,0,7.008,2.912,7.008,7.024,0,4.064-2.288,7.024-7.008,7.024H7.008V-18.224ZM31.088-22.4H26.624V0h4.464Zm4.288,0V0H39.84V-8.912h1.312L47.68,0h5.408l-6.9-8.976c4.3-.416,6.864-2.928,6.864-6.608,0-4.288-2.864-6.816-8.208-6.816Zm9.392,4.112c2.368,0,3.7.848,3.7,2.7,0,1.888-1.264,2.784-3.7,2.784H39.84v-5.488ZM73.072-4.1H60.8V-9.248H72.384v-4.1H60.8V-18.3H72.944v-4.1H56.336V0H73.072Zm14.32-18.72c-6.9,0-11.76,4.88-11.76,11.616S80.5.416,87.392.416A11.153,11.153,0,0,0,96.848-4.32L93.2-6.944a6.855,6.855,0,0,1-5.84,3.072c-3.952,0-7.056-2.832-7.072-7.328,0-4.352,3.008-7.328,7.072-7.328a6.7,6.7,0,0,1,5.792,3.088l3.84-2.352A10.88,10.88,0,0,0,87.392-22.816ZM116.7-22.4H98.352v4.176H105.3V0h4.464V-18.224H116.7ZM128.08-9.12c4.944,0,7.92-2.448,7.92-6.64s-2.976-6.64-7.92-6.64h-8.32V0h1.952V-9.12Zm-.048-11.44c3.744,0,5.936,1.632,5.936,4.8s-2.192,4.784-5.936,4.784h-6.32V-20.56Zm30.4-1.84h-2.016l-8.4,20.464L139.632-22.4h-2.08L146.784,0H149.2Z",transform:"translate(0 42.065)",className:"minioApplicationName"}),K.createElement("g",{transform:"translate(2.649 0)"},K.createElement("g",{transform:"translate(0 0.17)"},K.createElement("rect",{width:"3.292",height:"9.721",transform:"translate(19.066)",className:"minioSection"}),K.createElement("path",{d:"M241.479,365.364l-6.681,4.081a.3.3,0,0,1-.311,0l-6.681-4.081a.917.917,0,0,0-.478-.134h-.008a.917.917,0,0,0-.916.916v8.793h3.29v-4.185a.329.329,0,0,1,.5-.281l3.744,2.291a1.172,1.172,0,0,0,1.206.012l3.952-2.318a.329.329,0,0,1,.5.284v4.2h3.289v-8.793a.916.916,0,0,0-.915-.916h-.008A.917.917,0,0,0,241.479,365.364Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),K.createElement("path",{d:"M261.192,365.23h-3.338v4.425a.329.329,0,0,1-.484.29l-8.652-4.608a.919.919,0,0,0-.431-.107h-.006a.917.917,0,0,0-.916.916v8.795h3.312v-4.42a.329.329,0,0,1,.483-.29l8.686,4.607a.916.916,0,0,0,.43.107h0a.917.917,0,0,0,.916-.916Z",transform:"translate(-222.419 -365.23)",className:"minioSection"})),K.createElement("path",{d:"M261.159,374.952V365.23h1.515v9.722Z",transform:"translate(-219.797 -365.06)",className:"minioSection"}),K.createElement("path",{d:"M271.034,375.151c-4.075,0-6.965-1.933-6.965-5.032,0-3.082,2.908-5.033,6.965-5.033s6.983,1.933,6.983,5.033S275.162,375.151,271.034,375.151Zm0-8.776c-3.03,0-5.364,1.323-5.364,3.744,0,2.437,2.334,3.744,5.364,3.744s5.382-1.307,5.382-3.744C276.416,367.7,274.064,366.376,271.034,366.376Z",transform:"translate(-219.244 -365.087)",className:"minioSection"}))))))},ao=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 184.538 51",inverse:t},K.createElement("g",{transform:"translate(26.059 -11)"},K.createElement("g",{transform:"translate(-29 11)"},K.createElement("g",{transform:"translate(0 0)"},K.createElement("path",{d:"M19.7,0h6.7L14.726-13.265,25.586-25.9H19.111l-8.566,10.49H8.1V-25.9H2.942V0H8.1V-10.656H10.49ZM47.712-4.736H33.522v-5.957H46.916v-4.736H33.522v-5.735H47.564V-25.9h-19.2V0H47.712ZM72.039-23.588a18.223,18.223,0,0,0-9.9-2.757c-5.513,0-10.323,2.812-10.323,8.214,0,4.681,3.33,6.7,7.9,7.419l1.646.259c3.607.574,5.495,1.24,5.495,3.034,0,2-2.22,3.127-5.088,3.127a13.674,13.674,0,0,1-8.251-2.794L50.838-2.923C53.613-.685,57.831.463,61.753.463c5.568,0,10.6-2.72,10.6-8.436,0-4.514-3.626-6.494-8.251-7.252l-1.462-.241c-3.108-.518-5.347-1.092-5.347-3,0-1.961,2.054-3.108,4.958-3.108a13.919,13.919,0,0,1,7.345,2.2Z",transform:"translate(0 49.495)",className:"minioApplicationName"}),K.createElement("g",{transform:"translate(3.025 0)"},K.createElement("g",{transform:"translate(0 0.194)"},K.createElement("rect",{width:"3.76",height:"11.103",transform:"translate(21.776)",className:"minioSection"}),K.createElement("path",{d:"M243.621,365.383l-7.631,4.661a.34.34,0,0,1-.355,0l-7.631-4.661a1.048,1.048,0,0,0-.546-.153h-.009a1.047,1.047,0,0,0-1.047,1.046V376.32h3.758v-4.78a.376.376,0,0,1,.572-.321l4.276,2.616a1.338,1.338,0,0,0,1.377.014L240.9,371.2a.376.376,0,0,1,.565.325v4.794h3.757V366.276a1.046,1.046,0,0,0-1.045-1.046h-.01A1.047,1.047,0,0,0,243.621,365.383Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),K.createElement("path",{d:"M263.158,365.23h-3.813v5.053a.376.376,0,0,1-.553.332l-9.881-5.263a1.051,1.051,0,0,0-.492-.122h-.007a1.047,1.047,0,0,0-1.047,1.046v10.045h3.783v-5.048a.376.376,0,0,1,.552-.332l9.921,5.262a1.046,1.046,0,0,0,.491.122h0a1.047,1.047,0,0,0,1.047-1.047Z",transform:"translate(-218.873 -365.23)",className:"minioSection"})),K.createElement("path",{d:"M261.159,376.333v-11.1h1.73v11.1Z",transform:"translate(-213.918 -365.036)",className:"minioSection"}),K.createElement("path",{d:"M272.024,376.582c-4.654,0-7.955-2.207-7.955-5.747,0-3.52,3.322-5.748,7.955-5.748S280,367.294,280,370.835,276.738,376.582,272.024,376.582Zm0-10.023c-3.461,0-6.126,1.511-6.126,4.276,0,2.784,2.665,4.276,6.126,4.276s6.146-1.492,6.146-4.276C278.171,368.07,275.485,366.559,272.024,366.559Z",transform:"translate(-212.873 -365.087)",className:"minioSection"}))))))},io=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 184.538 50.008",inverse:t},K.createElement("g",{transform:"translate(27.622 -11)"},K.createElement("g",{transform:"translate(-29 11)"},K.createElement("g",{transform:"translate(0 0)"},K.createElement("path",{d:"M17.995-18.488a14.283,14.283,0,0,0-7.758-2.161c-4.321,0-8.091,2.2-8.091,6.438,0,3.668,2.61,5.249,6.192,5.814l1.29.2c2.828.45,4.307.972,4.307,2.378,0,1.566-1.74,2.451-3.988,2.451A10.718,10.718,0,0,1,3.48-5.554l-2.1,3.263A14.124,14.124,0,0,0,9.933.363c4.365,0,8.309-2.132,8.309-6.612,0-3.538-2.842-5.09-6.467-5.684l-1.146-.188c-2.436-.406-4.191-.856-4.191-2.349,0-1.537,1.609-2.436,3.886-2.436a10.91,10.91,0,0,1,5.757,1.726ZM38.353-20.3h-4.06V-8.309c0,3.335-1.885,4.8-4.684,4.8s-4.684-1.465-4.684-4.8V-20.3h-4.06V-8.106c0,5.612,3.582,8.468,8.744,8.468s8.743-2.857,8.743-8.468Zm3.654,0V0h8.787c4.872,0,7.642-1.914,7.642-5.815a4.874,4.874,0,0,0-3.379-4.553A4.528,4.528,0,0,0,58-14.674c0-3.871-2.972-5.626-7.7-5.626ZM50.59-8.439c2.233,0,3.64.522,3.64,2.421,0,1.943-1.407,2.465-3.64,2.465l-4.538-.015V-8.439Zm-.406-8.294c2,0,3.6.435,3.6,2.349,0,1.972-1.566,2.393-3.582,2.393H46.052v-4.741ZM79.5-20.3h-4.06V-6.743L65.134-20.3H61.349V0h4.045l.015-13.558L75.7,0h3.8ZM98.557-3.712H87.435V-8.381h10.5v-3.712h-10.5v-4.5H98.441V-20.3H83.39V0H98.557ZM116.769-20.3H100.137v3.785h6.293V0h4.045V-16.516h6.293Z",transform:"translate(0 38.028)",className:"minioApplicationName"}),K.createElement("g",{transform:"translate(2.376 0)"},K.createElement("g",{transform:"translate(0 0.153)"},K.createElement("rect",{width:"2.953",height:"8.72",transform:"translate(17.103)",className:"minioSection"}),K.createElement("path",{d:"M239.926,365.35l-5.993,3.661a.267.267,0,0,1-.279,0l-5.993-3.661a.823.823,0,0,0-.429-.12h-.007a.822.822,0,0,0-.822.822v7.888h2.952v-3.754a.3.3,0,0,1,.449-.252l3.358,2.055a1.051,1.051,0,0,0,1.081.011l3.545-2.08a.3.3,0,0,1,.444.255v3.765h2.951v-7.888a.821.821,0,0,0-.821-.822h-.007A.823.823,0,0,0,239.926,365.35Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),K.createElement("path",{d:"M259.769,365.23h-2.994V369.2a.3.3,0,0,1-.434.26l-7.761-4.133a.825.825,0,0,0-.386-.1h-.005a.822.822,0,0,0-.822.822v7.889h2.971v-3.965a.3.3,0,0,1,.433-.26l7.792,4.132a.822.822,0,0,0,.385.1h0a.822.822,0,0,0,.822-.822Z",transform:"translate(-224.988 -365.23)",className:"minioSection"})),K.createElement("path",{d:"M261.159,373.95v-8.72h1.359v8.72Z",transform:"translate(-224.056 -365.077)",className:"minioSection"}),K.createElement("path",{d:"M270.317,374.115c-3.655,0-6.248-1.734-6.248-4.513s2.609-4.515,6.248-4.515,6.264,1.734,6.264,4.515S274.019,374.115,270.317,374.115Zm0-7.872c-2.718,0-4.811,1.187-4.811,3.358s2.093,3.358,4.811,3.358,4.827-1.172,4.827-3.358S273.035,366.243,270.317,366.243Z",transform:"translate(-223.86 -365.087)",className:"minioSection"}))))))},so=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 184.45 55",inverse:t},K.createElement("g",{transform:"translate(-31.65 -18.133)"},K.createElement("g",{transform:"translate(-995 -63.754)"},K.createElement("g",{transform:"translate(1025.5 81.887)"},K.createElement("g",{transform:"translate(0 0)"},K.createElement("g",{transform:"translate(0 0)"},K.createElement("path",{d:"M10.338-17.825A8.815,8.815,0,0,0,1.15-8.75,8.815,8.815,0,0,0,10.338.325a8.825,8.825,0,0,0,9.2-9.075A8.825,8.825,0,0,0,10.338-17.825Zm0,3.35a5.4,5.4,0,0,1,5.55,5.725,5.4,5.4,0,0,1-5.55,5.725A5.41,5.41,0,0,1,4.788-8.75,5.41,5.41,0,0,1,10.338-14.475ZM22.05-17.5V0h7.575c4.2,0,6.588-1.65,6.588-5.013A4.2,4.2,0,0,0,33.3-8.938a3.9,3.9,0,0,0,2.537-3.713c0-3.337-2.562-4.85-6.638-4.85Zm7.4,10.225c1.925,0,3.138.45,3.138,2.088,0,1.675-1.212,2.125-3.138,2.125l-3.913-.013v-4.2Zm-.35-7.15c1.725,0,3.1.375,3.1,2.025,0,1.7-1.35,2.063-3.087,2.063H25.538v-4.088ZM48.788-17.5H45.3V-6.7c0,2.525-1.1,3.675-2.95,3.675a4.214,4.214,0,0,1-3.4-1.625L36.925-2.113A6.9,6.9,0,0,0,42.513.313c3.65,0,6.275-2.3,6.275-6.688ZM65.113-3.2H55.525V-7.225h9.05v-3.2h-9.05V-14.3h9.487v-3.2H52.037V0H65.113ZM76.3-17.825A8.794,8.794,0,0,0,67.113-8.75,8.794,8.794,0,0,0,76.3.325a8.713,8.713,0,0,0,7.387-3.7l-2.85-2.05a5.355,5.355,0,0,1-4.562,2.4A5.4,5.4,0,0,1,70.75-8.75a5.411,5.411,0,0,1,5.525-5.725A5.237,5.237,0,0,1,80.8-12.063l3-1.838A8.5,8.5,0,0,0,76.3-17.825Zm22.9.325H84.863v3.262h5.425V0h3.487V-14.238H99.2Zm19.787,1.738a10.5,10.5,0,0,0-6.25-1.925c-3.6,0-6.475,1.812-6.475,5.037,0,2.688,1.938,4.125,5.138,4.488l1.987.225c2.913.325,4.438,1.25,4.438,3.15,0,2.363-2.337,3.525-5.3,3.525a10.115,10.115,0,0,1-5.925-1.95L105.762-2A11.524,11.524,0,0,0,112.537.188c3.775,0,6.875-1.7,6.875-5.1,0-2.913-2.262-4.138-5.375-4.488l-1.912-.212c-2.988-.338-4.275-1.4-4.275-3.138,0-2.187,2.063-3.488,4.875-3.488a9.323,9.323,0,0,1,5.475,1.713ZM135.025-17.5H120.888v1.45h6.3V0h1.525V-16.05h6.313Zm9.875-.2a8.672,8.672,0,0,0-8.963,8.95A8.672,8.672,0,0,0,144.9.2a8.672,8.672,0,0,0,8.962-8.95A8.672,8.672,0,0,0,144.9-17.7Zm0,1.475a7.174,7.174,0,0,1,7.363,7.475A7.174,7.174,0,0,1,144.9-1.275a7.177,7.177,0,0,1-7.375-7.475A7.177,7.177,0,0,1,144.9-16.225ZM157.413-17.5V0h1.525V-7.763h2.675L168.138,0h1.9l-6.625-7.763h.688c3.725,0,6.025-1.862,6.025-4.875,0-3.1-2.175-4.863-6.037-4.863Zm6.663,1.438c2.875,0,4.475,1.188,4.475,3.425s-1.575,3.488-4.475,3.488h-5.138v-6.913ZM185.6-1.438H175.075V-8.1h10.138V-9.525H175.075v-6.538h10.438V-17.5H173.55V0H185.6Z",transform:"translate(0 32.612)",className:"minioApplicationName"}),K.createElement("g",{transform:"translate(2.003)"},K.createElement("g",{transform:"translate(0 0.129)"},K.createElement("rect",{width:"2.49",height:"7.352",transform:"translate(14.42)",className:"minioSection"}),K.createElement("path",{d:"M237.8,365.332l-5.053,3.086a.226.226,0,0,1-.235,0l-5.053-3.086a.694.694,0,0,0-.362-.1H227.1a.693.693,0,0,0-.693.693v6.65h2.489v-3.165a.249.249,0,0,1,.379-.212l2.832,1.733a.886.886,0,0,0,.912.009L236,369.184a.249.249,0,0,1,.374.215v3.174h2.488v-6.65a.693.693,0,0,0-.692-.693h-.006A.694.694,0,0,0,237.8,365.332Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),K.createElement("path",{d:"M257.822,365.23H255.3v3.346a.249.249,0,0,1-.366.22l-6.543-3.485a.7.7,0,0,0-.326-.081h0a.693.693,0,0,0-.693.693v6.651h2.5v-3.343a.249.249,0,0,1,.365-.22L256.8,372.5a.692.692,0,0,0,.325.081h0a.693.693,0,0,0,.693-.693Z",transform:"translate(-228.498 -365.23)",className:"minioSection"})),K.createElement("path",{d:"M261.159,372.582V365.23H262.3v7.352Z",transform:"translate(-229.877 -365.101)",className:"minioSection"}),K.createElement("path",{d:"M269.337,372.7c-3.082,0-5.268-1.462-5.268-3.805s2.2-3.806,5.268-3.806,5.281,1.462,5.281,3.806S272.458,372.7,269.337,372.7Zm0-6.637c-2.292,0-4.056,1-4.056,2.832s1.765,2.831,4.056,2.831,4.07-.988,4.07-2.831S271.628,366.062,269.337,366.062Z",transform:"translate(-230.168 -365.087)",className:"minioSection"}))))))))},lo=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 665.85156 145.5",inverse:t},K.createElement("g",null,K.createElement("rect",{className:"minioSection",x:"67.37841",y:".72967",width:"11.2565",height:"32.97504"}),K.createElement("path",{className:"minioSection",d:"m53.83768,1.04115l-22.84946,13.95519c-.32497.19877-.73368.19877-1.05894,0L7.07897,1.04115c-.49161-.30001-1.05636-.45948-1.63315-.45948h-.02811c-1.73067,0-3.13293,1.40226-3.13293,3.13293v29.99011s11.24934,0,11.24934,0v-14.23111c0-.87853.96228-1.41832,1.71202-.95998l12.80533,7.83389c1.26229.7724,2.84639.78674,4.12331.03872l13.51263-7.92568c.74975-.43998,1.69453.10067,1.69453.97031v14.27385s11.24934,0,11.24934,0V3.7146c0-1.73067-1.40226-3.13293-3.13293-3.13293h-.02811c-.57536,0-1.14097.15861-1.63258.45948Z"}),K.createElement("path",{className:"minioSection",d:"m134.87128.72164h-11.41598s0,15.13144,0,15.13144c0,.8487-.90435,1.39193-1.65409.99297L92.2161,1.08934c-.45289-.2415-.95912-.3677-1.47224-.3677h-.02008c-1.73067,0-3.13293,1.40226-3.13293,3.13293v29.85014s11.32505,0,11.32505,0v-14.88936c0-.84812.90262-1.39107,1.65265-.99354l29.70271,15.75412c.45202.23978.95568.36541,1.46822.36541h0c1.73067,0,3.13293-1.40226,3.13293-3.13293V.72164s-.00114,0-.00114,0Z"}),K.createElement("path",{className:"minioSection",d:"m144.00791,33.69667V.72164h5.23446v32.97504h-5.23446Z"}),K.createElement("path",{className:"minioSection",d:"m179.38707,34.41831c-13.93426,0-23.8189-6.61032-23.8189-17.20887C155.56787,6.66969,165.51219,0,179.38707,0c13.8746,0,23.87856,6.60946,23.87856,17.20887,0,10.59941-9.76591,17.20944-23.87856,17.20944Zm0-30.01248c-10.36107,0-18.34066,4.52572-18.34066,12.80304,0,8.33698,7.97959,12.80218,18.34066,12.80218,10.36107,0,18.40032-4.46606,18.40032-12.80218,0-8.27732-8.03927-12.80304-18.40032-12.80304Z"})),K.createElement("g",null,K.createElement("path",{className:"minioApplicationName",d:"m54.1377,87.12884c-5.87305-3.63086-13.02734-6.35352-21.1958-6.35352-8.38232,0-14.30859,3.30957-14.30859,8.96875,0,5.5,6.45996,7.15527,15.42969,8.64941l4.21777.69434c13.34766,2.18945,23.81201,7.90137,23.81201,20.92871,0,16.49805-14.52197,24.34668-30.59277,24.34668-11.31836,0-23.4917-3.31055-31.5-9.77051l7.74121-12.0127c5.39258,4.32422,14.20215,8.06152,23.8125,8.06152,8.27539,0,14.68213-3.25684,14.68213-9.02246,0-5.17969-5.4458-7.10156-15.85693-8.75684l-4.75146-.74707c-13.1875-2.08203-22.79785-7.90137-22.79785-21.40918,0-15.59082,13.88135-23.70605,29.79199-23.70605,10.46436,0,19.16699,2.34961,28.56396,7.95508l-7.04785,12.17383Z"}),K.createElement("path",{className:"minioApplicationName",d:"m138.80615,113.18255c0,20.66211-13.1875,31.18066-32.19482,31.18066s-32.19434-10.51855-32.19434-31.18066v-44.90137h14.94922v44.1543c0,12.28027,6.94092,17.67188,17.24512,17.67188s17.24512-5.3916,17.24512-17.67188v-44.1543h14.94971v44.90137Z"}),K.createElement("path",{className:"minioApplicationName",d:"m185.45703,68.28118c17.40527,0,28.35059,6.46094,28.35059,20.71582,0,7.52832-4.5918,13.56152-10.83838,15.85742,6.83398,2.29492,12.43994,8.70215,12.43994,16.76465,0,14.36133-10.19775,21.40918-28.13672,21.40918h-32.35449v-74.74707h30.53906Zm-15.64307,13.13477v17.45801h15.26953c7.42139,0,13.1875-1.54785,13.1875-8.80859,0-7.04785-5.87305-8.64941-13.24072-8.64941h-15.21631Zm0,30.53906v17.93945l16.71094.05273c8.22217,0,13.40088-1.92188,13.40088-9.07617,0-6.99414-5.17871-8.91602-13.40088-8.91602h-16.71094Z"}),K.createElement("path",{className:"minioApplicationName",d:"m295.64355,143.02825h-13.98828l-37.90723-49.91992-.05322,49.91992h-14.896v-74.74707h13.93457l37.96094,49.9209v-49.9209h14.94922v74.74707Z"}),K.createElement("path",{className:"minioApplicationName",d:"m368.45557,143.02825h-55.84619v-74.74707h55.41895v13.66797h-40.52295v16.55176h38.6543v13.66797h-38.6543v17.19141h40.9502v13.66797Z"}),K.createElement("path",{className:"minioApplicationName",d:"m438.17188,82.21673h-23.17139v60.81152h-14.896v-60.81152h-23.17139v-13.93555h61.23877v13.93555Z"}),K.createElement("path",{className:"minioApplicationName",d:"m523.16113,105.65521c0,22.42383-16.44434,38.22754-38.28076,38.22754s-38.28125-15.80371-38.28125-38.22754,16.44434-38.22754,38.28125-38.22754,38.28076,15.80371,38.28076,38.22754Zm-69.78125,0c0,19.06055,13.7749,31.92676,31.50049,31.92676,17.67236,0,31.44678-12.86621,31.44678-31.92676s-13.77441-31.92773-31.44678-31.92773c-17.72559,0-31.50049,12.86719-31.50049,31.92773Z"}),K.createElement("path",{className:"minioApplicationName",d:"m547.49512,112.59564v30.43262h-6.51367v-74.74707h27.76318c16.49756,0,26.42822,8.16895,26.42822,22.15723s-9.93066,22.15723-26.42822,22.15723h-21.24951Zm0-38.17383v31.98047h21.08936c12.49316,0,19.80762-5.39258,19.80762-15.96387s-7.31445-16.0166-19.80762-16.0166h-21.08936Z"}),K.createElement("path",{className:"minioApplicationName",d:"m660.67285,80.98821c-5.81934-4.11035-13.56104-7.31445-23.38525-7.31445-12.0127,0-20.82227,5.55273-20.82227,14.89648,0,7.4209,5.49951,11.95898,18.25977,13.40039l8.16895.9082c13.29395,1.49512,22.95752,6.72656,22.95752,19.16699,0,14.52246-13.24072,21.7832-29.36475,21.7832-11.21191,0-22.31689-4.11133-28.9375-9.34375l3.57715-5.17871c5.23242,4.16504,14.94922,8.3291,25.30713,8.3291,12.65332,0,22.6377-4.96484,22.6377-15.05566,0-8.11523-6.51367-12.06641-18.95361-13.45508l-8.48926-.96094c-13.66797-1.54785-21.94336-7.6875-21.94336-19.16699,0-13.77441,12.27979-21.5166,27.65625-21.5166,11.58545,0,20.23486,3.63086,26.69531,8.22266l-3.36377,5.28516Z"})))},co=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 184.538 52",inverse:t},K.createElement("path",{d:"m22.19,31.57h-3.13c-.19-.9-.51-1.69-.96-2.37-.46-.68-1.01-1.25-1.66-1.72-.65-.47-1.37-.82-2.16-1.05-.79-.24-1.61-.35-2.47-.35-1.56,0-2.98.4-4.24,1.19s-2.27,1.95-3.01,3.49c-.74,1.54-1.12,3.42-1.12,5.66s.37,4.12,1.12,5.66c.74,1.54,1.75,2.7,3.01,3.49,1.27.79,2.68,1.19,4.24,1.19.86,0,1.68-.12,2.47-.35.79-.24,1.51-.59,2.16-1.05.65-.47,1.21-1.04,1.66-1.73.46-.68.78-1.47.96-2.36h3.13c-.24,1.32-.66,2.5-1.29,3.54-.62,1.04-1.4,1.93-2.32,2.65-.92.73-1.96,1.28-3.11,1.66s-2.37.57-3.68.57c-2.2,0-4.16-.54-5.88-1.61s-3.06-2.61-4.05-4.59c-.98-1.98-1.48-4.34-1.48-7.06s.49-5.08,1.48-7.06c.98-1.98,2.33-3.51,4.05-4.59,1.71-1.08,3.67-1.61,5.88-1.61,1.3,0,2.53.19,3.68.57s2.18.93,3.11,1.66c.92.73,1.7,1.61,2.32,2.65.62,1.04,1.05,2.22,1.29,3.55h0Z",className:"minioApplicationName"}),K.createElement("path",{d:"m27.23,49.32v-25.82h3.13v23.05h12v2.77h-15.13Z",className:"minioApplicationName"}),K.createElement("path",{d:"m67.98,36.41c0,2.72-.49,5.08-1.48,7.06-.98,1.98-2.33,3.51-4.05,4.59s-3.67,1.61-5.88,1.61-4.16-.54-5.88-1.61-3.06-2.61-4.05-4.59c-.98-1.98-1.48-4.34-1.48-7.06s.49-5.08,1.48-7.06c.98-1.98,2.33-3.51,4.05-4.59,1.71-1.08,3.67-1.61,5.88-1.61s4.16.54,5.88,1.61c1.71,1.08,3.06,2.61,4.05,4.59.98,1.98,1.48,4.34,1.48,7.06Zm-3.03,0c0-2.24-.37-4.12-1.12-5.66-.74-1.54-1.75-2.7-3.01-3.49-1.27-.79-2.68-1.19-4.24-1.19s-2.98.4-4.24,1.19-2.27,1.95-3.01,3.49c-.74,1.54-1.12,3.42-1.12,5.66s.37,4.12,1.12,5.66c.74,1.54,1.75,2.7,3.01,3.49,1.27.79,2.68,1.19,4.24,1.19s2.98-.39,4.24-1.19c1.26-.79,2.27-1.95,3.01-3.49.74-1.54,1.12-3.42,1.12-5.66Z",className:"minioApplicationName"}),K.createElement("path",{d:"m90.17,23.5h3.13v17.1c0,1.76-.41,3.34-1.24,4.72-.83,1.38-1.99,2.47-3.5,3.27-1.5.79-3.27,1.19-5.3,1.19s-3.79-.4-5.3-1.19c-1.5-.79-2.67-1.88-3.5-3.27-.83-1.38-1.24-2.96-1.24-4.72v-17.1h3.13v16.84c0,1.26.28,2.38.83,3.36.55.98,1.35,1.75,2.38,2.31,1.03.56,2.26.84,3.7.84s2.67-.28,3.71-.84c1.03-.56,1.83-1.33,2.38-2.31.55-.98.83-2.1.83-3.36v-16.84Z",className:"minioApplicationName"}),K.createElement("path",{d:"m107.52,49.32h-7.97v-25.82h8.32c2.5,0,4.65.52,6.43,1.54,1.78,1.03,3.15,2.5,4.1,4.43.95,1.92,1.42,4.22,1.42,6.89s-.48,5-1.44,6.94c-.96,1.94-2.35,3.43-4.19,4.46-1.83,1.04-4.06,1.56-6.68,1.56Zm-4.84-2.77h4.64c2.13,0,3.9-.41,5.31-1.24,1.4-.82,2.45-2,3.14-3.52.69-1.52,1.03-3.33,1.03-5.43s-.34-3.88-1.02-5.39c-.68-1.51-1.7-2.67-3.05-3.48-1.35-.81-3.04-1.22-5.06-1.22h-4.99v20.27h0Z",className:"minioApplicationName"}),K.createElement("rect",{x:"21.65",y:".24",width:"3.74",height:"10.97",className:"minioSection"}),K.createElement("path",{d:"m17.14.35l-7.6,4.64c-.11.07-.24.07-.35,0L1.59.35c-.16-.1-.35-.15-.54-.15h0C.47.19,0,.66,0,1.24v9.97h3.74v-4.73c0-.29.32-.47.57-.32l4.26,2.61c.42.26.95.26,1.37.01l4.49-2.64c.25-.15.56.03.56.32v4.75h3.74V1.24c0-.58-.47-1.04-1.04-1.04h0c-.19,0-.38.05-.54.15h0Z",className:"minioSection"}),K.createElement("path",{d:"m44.09.24h-3.8v5.03c0,.28-.3.46-.55.33L29.9.36c-.15-.08-.32-.12-.49-.12h0c-.58,0-1.04.47-1.04,1.04v9.93h3.77v-4.95c0-.28.3-.46.55-.33l9.88,5.24c.15.08.32.12.49.12h0c.58,0,1.04-.47,1.04-1.04V.24h0,0Z",className:"minioSection"}),K.createElement("path",{d:"m47.13,11.21V.24h1.74v10.97h-1.74Z",className:"minioSection"}),K.createElement("path",{d:"m58.89,11.45c-4.63,0-7.92-2.2-7.92-5.72,0-3.5,3.31-5.72,7.92-5.72s7.94,2.2,7.94,5.72-3.25,5.72-7.94,5.72Zm0-9.98c-3.45,0-6.1,1.5-6.1,4.26s2.65,4.26,6.1,4.26,6.12-1.49,6.12-4.26-2.67-4.26-6.12-4.26h0Z",className:"minioSection"}))},uo=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 189.7 49.96",inverse:t},K.createElement("g",null,K.createElement("g",null,K.createElement("rect",{x:"21.86",y:".19",width:"3.76",height:"11.1",className:"minioSection"}),K.createElement("path",{d:"m17.3.35l-7.63,4.66c-.11.07-.25.07-.35,0L1.69.35c-.16-.1-.35-.15-.55-.15h0C.55.19.08.66.08,1.24v10.04h3.76v-4.78c0-.21.17-.38.38-.38.07,0,.14.02.2.06l4.28,2.62c.42.26.95.26,1.38.01l4.51-2.65c.18-.1.41-.04.51.14.03.06.05.12.05.19v4.79h3.76V1.24c0-.58-.47-1.05-1.04-1.05h0c-.19,0-.38.05-.55.15Z",className:"minioSection"}),K.createElement("path",{d:"m44.37.19h-3.81v5.05c0,.21-.17.38-.38.38-.06,0-.12-.02-.18-.04L30.12.32c-.15-.08-.32-.12-.49-.12h0c-.58,0-1.05.47-1.05,1.05v10.05h3.78v-5.05c0-.21.17-.38.38-.38.06,0,.12.02.18.04l9.92,5.26c.15.08.32.12.49.12h0c.58,0,1.05-.47,1.05-1.05V.19Z",className:"minioSection"})),K.createElement("path",{d:"m47.32,11.3V.2h1.73v11.1h-1.73Z",className:"minioSection"}),K.createElement("path",{d:"m59.23,11.49c-4.65,0-7.95-2.21-7.95-5.75s3.32-5.75,7.95-5.75,7.98,2.21,7.98,5.75-3.26,5.75-7.98,5.75Zm0-10.02c-3.46,0-6.13,1.51-6.13,4.28s2.67,4.28,6.13,4.28,6.15-1.49,6.15-4.28c0-2.76-2.68-4.28-6.15-4.28Z",className:"minioSection"})),K.createElement("g",null,K.createElement("path",{d:"m0,24.14h10.73c3,0,5.29.67,6.89,2.02,1.6,1.35,2.4,3.25,2.4,5.7,0,2.09-.69,3.8-2.07,5.14s-3.28,2.12-5.71,2.35l7.81,10.17h-6.12l-7.39-10.09h-1.49v10.09H0v-25.37Zm10.64,4.66h-5.58v6.21h5.58c2.79,0,4.19-1.05,4.19-3.15s-1.4-3.06-4.19-3.06Z",className:"minioApplicationName"}),K.createElement("path",{d:"m43.59,44.87v4.64h-18.95v-25.37h18.81v4.64h-13.75v5.62h13.12v4.64h-13.12v5.83h13.9Z",className:"minioApplicationName"}),K.createElement("path",{d:"m67.24,44.78v4.73h-18.46v-25.37h5.06v20.64h13.41Z",className:"minioApplicationName"}),K.createElement("path",{d:"m89.65,44.87v4.64h-18.95v-25.37h18.81v4.64h-13.75v5.62h13.12v4.64h-13.12v5.83h13.9Z",className:"minioApplicationName"}),K.createElement("path",{d:"m108.37,24.14l9.88,25.37h-5.4l-2.21-5.91h-10.82l-2.21,5.91h-5.27l9.88-25.37h6.16Zm-3.13,5l-3.68,9.8h7.34l-3.66-9.8Z",className:"minioApplicationName"}),K.createElement("path",{d:"m140.8,26.4l-2.39,4.13c-2.33-1.44-4.73-2.16-7.19-2.16-1.45,0-2.62.27-3.51.81-.89.54-1.34,1.29-1.34,2.23,0,.45.12.83.36,1.16.24.33.62.6,1.14.82s1.05.4,1.6.53c.55.13,1.26.27,2.13.42l1.43.24c5.39.88,8.08,3.25,8.08,7.1,0,1.35-.28,2.57-.85,3.64-.57,1.08-1.33,1.94-2.3,2.6-.97.66-2.07,1.16-3.3,1.5-1.23.34-2.54.52-3.93.52-1.98,0-3.93-.29-5.84-.86-1.92-.57-3.53-1.39-4.85-2.46l2.63-4.08c.99.79,2.2,1.44,3.62,1.96,1.42.52,2.91.78,4.46.78,1.45,0,2.64-.27,3.58-.81.94-.54,1.4-1.29,1.4-2.25,0-.83-.42-1.46-1.27-1.88-.85-.42-2.22-.78-4.11-1.09l-1.61-.25c-5.16-.81-7.74-3.23-7.74-7.27,0-1.28.27-2.44.82-3.48.54-1.04,1.28-1.88,2.22-2.54.94-.65,2.01-1.15,3.22-1.5,1.21-.35,2.49-.53,3.86-.53,1.79,0,3.46.21,5,.64s3.11,1.11,4.69,2.06Z",className:"minioApplicationName"}),K.createElement("path",{d:"m164.66,44.87v4.64h-18.95v-25.37h18.81v4.64h-13.75v5.62h13.12v4.64h-13.12v5.83h13.9Z",className:"minioApplicationName"}),K.createElement("path",{d:"m189.4,26.4l-2.39,4.13c-2.33-1.44-4.73-2.16-7.19-2.16-1.45,0-2.62.27-3.51.81-.89.54-1.34,1.29-1.34,2.23,0,.45.12.83.36,1.16.24.33.62.6,1.14.82s1.05.4,1.6.53c.55.13,1.26.27,2.13.42l1.43.24c5.39.88,8.08,3.25,8.08,7.1,0,1.35-.28,2.57-.85,3.64-.57,1.08-1.33,1.94-2.3,2.6-.97.66-2.07,1.16-3.3,1.5-1.23.34-2.54.52-3.93.52-1.98,0-3.93-.29-5.84-.86-1.92-.57-3.53-1.39-4.85-2.46l2.63-4.08c.99.79,2.2,1.44,3.62,1.96,1.42.52,2.91.78,4.46.78,1.45,0,2.64-.27,3.58-.81.94-.54,1.4-1.29,1.4-2.25,0-.83-.42-1.46-1.27-1.88-.85-.42-2.22-.78-4.11-1.09l-1.61-.25c-5.16-.81-7.74-3.23-7.74-7.27,0-1.28.27-2.44.82-3.48.54-1.04,1.28-1.88,2.22-2.54.94-.65,2.01-1.15,3.22-1.5,1.21-.35,2.49-.53,3.86-.53,1.79,0,3.46.21,5,.64s3.11,1.11,4.69,2.06Z",className:"minioApplicationName"})))},po=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 189.7 49.96",inverse:t},K.createElement("g",null,K.createElement("g",null,K.createElement("rect",{x:"21.92",y:".09",width:"3.8",height:"11.1",className:"minioSection"}),K.createElement("path",{d:"m17.33.29l-7.6,4.6c-.1.1-.2.1-.4,0L1.73.29c-.2-.1-.4-.2-.5-.2h0C.62.09.12.59.12,1.09v10h3.8v-4.7c0-.2.2-.4.4-.4q.1,0,.2.1l4.3,2.6c.4.3,1,.3,1.4,0l4.4-2.6c.2-.1.4,0,.5.1,0,.1.1.1.1.2v4.8h3.8V1.09c0-.6-.5-1-1-1h0c-.3,0-.5.1-.7.2Z",className:"minioSection"}),K.createElement("path",{d:"m44.42.09h-3.8v5.1c0,.2-.2.4-.4.4h-.2L30.12.19c-.1-.1-.3-.1-.5-.1h0c-.6,0-1,.5-1,1v10h3.8v-5c0-.2.2-.4.4-.4h.2l9.9,5.3c.2.1.3.1.5.1h0c.6,0,1-.5,1-1V.09Z",className:"minioSection"})),K.createElement("path",{d:"m47.33,11.2V.1h1.8v11.1h-1.8Z",className:"minioSection"}),K.createElement("path",{d:"m59.33,11.4c-4.7,0-8-2.2-8-5.7s3.3-5.7,8-5.7,8,2.2,8,5.7-3.3,5.7-8,5.7Zm0-10c-3.5,0-6.2,1.5-6.2,4.2s2.7,4.3,6.1,4.3,6.1-1.5,6.1-4.3c.1-2.7-2.6-4.2-6-4.2Z",className:"minioSection"})),K.createElement("g",null,K.createElement("path",{d:"m21.7,23.5l-8.2,21.8h-5.3L0,23.5h4.6l6.3,17.4,6.3-17.4h4.5Z",className:"minioApplicationName"}),K.createElement("path",{d:"m48.6,23.5v21.8h-4.3v-16.5l-5.4,14.4h-4.6l-5.4-14.2v16.3h-4.3v-21.8h6.4l5.7,14.7,5.7-14.7s6.2,0,6.2,0Z",className:"minioApplicationName"}),K.createElement("path",{d:"m51.9,23.5h8.4c2.4,0,4.4.5,5.8,1.4s2.1,2.4,2.1,4.4c0,1.2-.3,2.2-.9,3-.6.8-1.4,1.4-2.4,1.8,1.1.4,2.1,1,2.7,1.9s1,2,1,3.3c0,2.1-.7,3.6-2.1,4.6s-3.3,1.5-5.9,1.5h-8.9v-21.9h.2Zm8.4,2.4h-5.8v7.2h5.9c.8,0,1.5-.1,2.1-.2s1.2-.3,1.7-.6.9-.6,1.2-1.1c.3-.5.4-1.1.4-1.8s-.1-1.3-.4-1.8-.7-.9-1.2-1.1-1.1-.4-1.7-.6c-.7,0-1.4,0-2.2,0Zm.4,9.5h-6.2v7.5h6.2c.9,0,1.6-.1,2.2-.2.6-.1,1.2-.3,1.7-.6s.9-.7,1.1-1.2.4-1.1.4-1.8c0-1.4-.5-2.3-1.4-2.9s-2.3-.8-4-.8Z",className:"minioApplicationName"}),K.createElement("path",{d:"m73.8,23.5h8.6c2.5,0,4.3.5,5.6,1.6,1.3,1.1,2,2.6,2,4.6s-.7,3.4-2,4.5c-1.4,1.1-3.2,1.7-5.5,1.7h-.4l7.8,9.5h-3.1l-7.7-9.6h-2.8v9.5h-2.5v-21.8Zm8.5,2.4h-6v7.7h6c1.7,0,2.9-.3,3.8-1s1.3-1.6,1.3-2.9-.4-2.2-1.3-2.8-2.1-1-3.8-1Z",className:"minioApplicationName"}),K.createElement("path",{d:"m104.9,23.2c2.1,0,4.1.5,5.8,1.4,1.7,1,3.1,2.3,4,4,1,1.7,1.5,3.6,1.5,5.8s-.5,4.1-1.5,5.8-2.3,3-4,4-3.6,1.4-5.8,1.4c-1.6,0-3.1-.3-4.5-.8-1.4-.6-2.6-1.3-3.6-2.3s-1.8-2.2-2.3-3.6c-.6-1.4-.9-2.9-.9-4.5s.3-3.1.9-4.5,1.4-2.6,2.3-3.6c1-1,2.2-1.8,3.6-2.3s2.9-.8,4.5-.8Zm0,2.4c-1.2,0-2.4.2-3.4.6-1.1.4-2,1-2.7,1.8-.8.8-1.4,1.7-1.8,2.8-.4,1.1-.7,2.3-.7,3.6s.2,2.5.7,3.6c.4,1.1,1,2,1.8,2.8s1.7,1.4,2.7,1.8c1.1.4,2.2.6,3.4.6,1.6,0,3.1-.4,4.4-1.1,1.3-.7,2.3-1.8,3.1-3.1s1.1-2.9,1.1-4.6-.4-3.2-1.1-4.6-1.8-2.4-3.1-3.1c-1.3-.7-2.8-1.1-4.4-1.1Z",className:"minioApplicationName"}),K.createElement("path",{d:"m135.9,45.3l-9.6-9.8h-2.6v9.8h-2.5v-21.8h2.5v9.7h2.6l9.1-9.7h3.2l-10.3,10.7,10.9,11.1h-3.3Z",className:"minioApplicationName"}),K.createElement("path",{d:"m158.2,43v2.4h-15.4v-21.9h15.2v2.4h-12.7v7.3h12.3v2.3h-12.3v7.5h12.9Z",className:"minioApplicationName"}),K.createElement("path",{d:"m163.8,23.5h8.6c2.5,0,4.3.5,5.6,1.6s2,2.6,2,4.6-.7,3.4-2,4.5c-1.4,1.1-3.2,1.7-5.5,1.7h-.4l7.8,9.5h-3.1l-7.7-9.5h-2.8v9.5h-2.5v-21.9Zm8.6,2.4h-6v7.7h6c1.7,0,2.9-.3,3.8-1s1.3-1.6,1.3-2.9-.4-2.2-1.3-2.8-2.2-1-3.8-1Z",className:"minioApplicationName"})))},fo=function(e){var t=e.inverse;return K.createElement(Jr,{viewBox:"0 0 184.538 52",inverse:t},K.createElement("path",{d:"m1.42,49.54v-25.94h15.65v2.79H4.56v8.76h11.7v2.79H4.56v8.82h12.72v2.79H1.42Z",className:"minioApplicationName"}),K.createElement("path",{d:"m39.77,23.61h3.14v17.17c0,1.77-.42,3.35-1.25,4.74-.83,1.39-2,2.48-3.51,3.28-1.51.8-3.28,1.2-5.32,1.2s-3.81-.4-5.32-1.2c-1.51-.8-2.68-1.89-3.51-3.28-.83-1.39-1.25-2.97-1.25-4.74v-17.17h3.14v16.92c0,1.27.28,2.39.84,3.38.56.98,1.35,1.76,2.39,2.32,1.03.56,2.27.84,3.72.84s2.68-.28,3.72-.84c1.04-.56,1.83-1.33,2.39-2.32.55-.98.83-2.11.83-3.38v-16.92h0Z",className:"minioApplicationName"}),K.createElement("path",{d:"m49.19,49.54v-25.94h8.76c2.03,0,3.69.34,4.99,1.03,1.3.69,2.26,1.63,2.89,2.83.62,1.2.94,2.56.94,4.09s-.31,2.88-.94,4.07c-.63,1.18-1.58,2.11-2.87,2.78-1.29.67-2.94,1.01-4.95,1.01h-7.09v-2.84h6.99c1.38,0,2.5-.2,3.35-.61.85-.41,1.46-.98,1.85-1.73.38-.75.58-1.64.58-2.68s-.19-1.95-.58-2.72c-.39-.78-1.01-1.38-1.86-1.8-.85-.43-1.98-.64-3.38-.64h-5.52v23.15h-3.14Zm12.21-11.65l6.38,11.65h-3.65l-6.28-11.65h3.55Z",className:"minioApplicationName"}),K.createElement("path",{d:"m71.99,49.54v-25.94h15.65v2.79h-12.51v8.76h11.7v2.79h-11.7v8.82h12.72v2.79h-15.86Z",className:"minioApplicationName"}),K.createElement("path",{d:"m93.32,49.54v-25.94h3.14v12.87h.3l11.65-12.87h4.1l-10.89,11.7,10.89,14.24h-3.8l-9.02-12.06-3.24,3.65v8.41h-3.14Z",className:"minioApplicationName"}),K.createElement("path",{d:"m117.63,49.54h-3.29l9.52-25.94h3.24l9.52,25.94h-3.29l-7.75-21.83h-.2l-7.75,21.83Zm1.22-10.13h13.27v2.79h-13.27v-2.79Z",className:"minioApplicationName"}),K.createElement("rect",{x:"21.74",y:".24",width:"3.76",height:"11.02",className:"minioSection"}),K.createElement("path",{d:"m17.22.35l-7.63,4.66c-.11.07-.25.07-.35,0L1.6.35c-.16-.1-.35-.15-.55-.15h0C.47.19,0,.66,0,1.24v10.02h3.76v-4.75c0-.29.32-.47.57-.32l4.28,2.62c.42.26.95.26,1.38.01l4.51-2.65c.25-.15.57.03.57.32v4.77h3.76V1.24c0-.58-.47-1.05-1.05-1.05h0c-.19,0-.38.05-.55.15h0Z",className:"minioSection"}),K.createElement("path",{d:"m44.29.24h-3.81v5.05c0,.28-.3.46-.55.33L30.04.36c-.15-.08-.32-.12-.49-.12h0c-.58,0-1.05.47-1.05,1.05v9.97h3.78v-4.97c0-.28.3-.46.55-.33l9.92,5.26c.15.08.32.12.49.12h0c.58,0,1.05-.47,1.05-1.05V.24h0,0Z",className:"minioSection"}),K.createElement("path",{d:"m47.34,11.26V.24h1.75v11.02h-1.75Z",className:"minioSection"}),K.createElement("path",{d:"m59.16,11.5c-4.65,0-7.96-2.21-7.96-5.75,0-3.52,3.32-5.75,7.96-5.75s7.98,2.21,7.98,5.75-3.26,5.75-7.98,5.75Zm0-10.03c-3.46,0-6.13,1.51-6.13,4.28s2.67,4.28,6.13,4.28,6.15-1.49,6.15-4.28-2.69-4.28-6.15-4.28h0Z",className:"minioSection"}))},mo=function(e){var t=e.applicationName,n=e.subVariant,r=void 0===n?"simple":n,o=e.inverse;switch(t){case"console":switch(r){case"standard":return K.createElement(eo,{inverse:!!o});case"enterprise":return K.createElement(no,{inverse:!!o});case"AGPL":return K.createElement(to,{inverse:!!o});default:return K.createElement(so,{inverse:!!o})}case"directpv":return K.createElement(oo,{inverse:!!o});case"subnet":return K.createElement(io,{inverse:!!o});case"kes":return K.createElement(ao,{inverse:!!o});case"operator":return K.createElement(ro,{inverse:!!o});case"subnetops":return K.createElement(lo,{inverse:!!o});case"cloud":return K.createElement(co,{inverse:!!o});case"releases":return K.createElement(uo,{inverse:!!o});case"vmbroker":return K.createElement(po,{inverse:!!o});case"eureka":return K.createElement(fo,{inverse:!!o})}},ho=Y.ZP.svg((function(e){return{fill:Rr(e,"theme.logoColor","#C51C3F")}})),go=function(e){var t=e.width;return K.createElement(ho,{viewBox:"0 0 162.612 24.465",width:t},K.createElement("path",{d:"M52.751.414h9.108v23.63h-9.108zM41.711.74l-18.488 9.92a.919.919 0 0 1-.856 0L3.879.74A2.808 2.808 0 0 0 2.558.414h-.023A2.4 2.4 0 0 0 0 2.641v21.376h9.1V13.842a.918.918 0 0 1 1.385-.682l10.361 5.568a3.634 3.634 0 0 0 3.336.028l10.933-5.634a.917.917 0 0 1 1.371.69v10.205h9.1V2.641A2.4 2.4 0 0 0 43.055.414h-.023a2.808 2.808 0 0 0-1.321.326zm65.564-.326h-9.237v10.755a.913.913 0 0 1-1.338.706L72.762.675a2.824 2.824 0 0 0-1.191-.261h-.016a2.4 2.4 0 0 0-2.535 2.227v21.377h9.163V13.275a.914.914 0 0 1 1.337-.707l24.032 11.2a2.813 2.813 0 0 0 1.188.26 2.4 2.4 0 0 0 2.535-2.227zm7.161 23.63V.414h4.191v23.63zm28.856.421c-11.274 0-19.272-4.7-19.272-12.232C124.02 4.741 132.066 0 143.292 0s19.32 4.7 19.32 12.233-7.902 12.232-19.32 12.232zm0-21.333c-8.383 0-14.84 3.217-14.84 9.1 0 5.926 6.457 9.1 14.84 9.1s14.887-3.174 14.887-9.1c0-5.883-6.504-9.1-14.887-9.1z"}))},vo=Y.ZP.div((function(e){var t={boxSizing:"border-box"};if(e.container)t={display:"flex",flexWrap:e.wrap||"wrap",flexDirection:e.direction||"row",columnGap:"".concat(e.columnSpacing,"px")||0,rowGap:"".concat(e.rowSpacing,"px")||0,boxSizing:"content-box"};else if(e.item){var n=Object.keys(Q);n.forEach((function(r,o){var a,i,s=Rr(e,r,!1);if(s){var l={};if("number"==typeof s&&(l={flexBasis:J(Rr(e,r,12)),width:J(Rr(e,r,12))}),"hidden"===s){var c="";n[o+1]&&(c="and (max-width: ".concat(Rr(Q,n[o+1],0),"px)")),t=Ot(Ot({},t),((a={})["@media (min-width: ".concat(Rr(Q,r,0),"px) ").concat(c)]={display:"none"},a))}t=Ot(Ot({},t),((i={})["@media (min-width: ".concat(Rr(Q,r,0),"px)")]=Ot({flexGrow:"1"},l),i))}}))}return Ot(Ot({},t),e.sx)})),bo=function(e){return K.createElement(vo,Ot({},e),e.children)};function yo(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{l(r.next(e))}catch(e){a(e)}}function s(e){try{l(r.throw(e))}catch(e){a(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,s)}l((r=r.apply(e,t||[])).next())}))}var Eo=["geforce 320m","geforce 8600","geforce 8600m gt","geforce 8800 gs","geforce 8800 gt","geforce 9400","geforce 9400m g","geforce 9400m","geforce 9600m gt","geforce 9600m","geforce fx go5200","geforce gt 120","geforce gt 130","geforce gt 330m","geforce gtx 285","google swiftshader","intel g41","intel g45","intel gma 4500mhd","intel gma x3100","intel hd 3000","intel q45","legacy","mali-2","mali-3","mali-4","quadro fx 1500","quadro fx 4","quadro fx 5","radeon hd 2400","radeon hd 2600","radeon hd 4670","radeon hd 4850","radeon hd 4870","radeon hd 5670","radeon hd 5750","radeon hd 6290","radeon hd 6300","radeon hd 6310","radeon hd 6320","radeon hd 6490m","radeon hd 6630m","radeon hd 6750m","radeon hd 6770m","radeon hd 6970m","sgx 543","sgx543"];function So(e){return e.toLowerCase().replace(/.*angle ?\((.+)\)(?: on vulkan [0-9.]+)?$/i,"$1").replace(/\s(\d{1,2}gb|direct3d.+$)|\(r\)| \([^)]+\)$/g,"").replace(/(?:vulkan|opengl) \d+\.\d+(?:\.\d+)?(?: \((.*)\))?/,"$1")}var wo="undefined"==typeof window,_o=function(){if(!wo){var e=window.navigator,t=e.userAgent,n=e.platform,r=e.maxTouchPoints,o=/(iphone|ipod|ipad)/i.test(t),a="iPad"===n||"MacIntel"===n&&r>0&&!window.MSStream;return{isIpad:a,isMobile:/android/i.test(t)||o||a,isSafari12:/Version\/12.+Safari/.test(t)}}}(),To=function(e){(0,W.Z)(n,e);var t=(0,q.Z)(n);function n(e){var r;return(0,G.Z)(this,n),r=t.call(this,e),Object.setPrototypeOf((0,V.Z)(r),(this instanceof n?this.constructor:void 0).prototype),r}return(0,H.Z)(n)}((0,$.Z)(Error)),xo=[],Co=[];function Ao(e,t){if(e===t)return 0;var n=e;e.length>t.length&&(e=t,t=n);for(var r=e.length,o=t.length;r>0&&e.charCodeAt(~-r)===t.charCodeAt(~-o);)r--,o--;for(var a,i=0;ic?l>c?c+1:l:l>s?s+1:l;return c}function ko(e){return null!=e}var Io,Oo,Ro,No,Mo,Lo,Po,Do,Zo,Bo,zo,Fo,Uo,jo,Ho=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.mobileTiers,n=void 0===t?[0,15,30,60]:t,r=e.desktopTiers,o=void 0===r?[0,15,30,60]:r,a=e.override,i=void 0===a?{}:a,s=e.glContext,l=e.failIfMajorPerformanceCaveat,c=void 0!==l&&l,u=e.benchmarksURL,d=void 0===u?"https://unpkg.com/detect-gpu@5.0.34/dist/benchmarks":u;return yo(void 0,void 0,void 0,(0,j.Z)().mark((function e(){var t,r,a,l,u,p,f,m,h,g,v,b,y,E,S,w,_,T,x,C,A,k,I,O;return(0,j.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t={},!wo){e.next=3;break}return e.abrupt("return",{tier:0,type:"SSR"});case 3:if(r=i.isIpad,a=void 0===r?!!(null==_o?void 0:_o.isIpad):r,l=i.isMobile,u=void 0===l?!!(null==_o?void 0:_o.isMobile):l,p=i.screenSize,f=void 0===p?window.screen:p,m=i.loadBenchmarks,h=void 0===m?function(e){return yo(void 0,void 0,void 0,(0,j.Z)().mark((function t(){var n;return(0,j.Z)().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,fetch("".concat(d,"/").concat(e)).then((function(e){return e.json()}));case 2:if(n=t.sent,!(parseInt(n.shift().split(".")[0],10)<4)){t.next=5;break}throw new To("Detect GPU benchmark data is out of date. Please update to version 4x");case 5:return t.abrupt("return",n);case 6:case"end":return t.stop()}}),t)})))}:m,g=i.renderer,v=function(e,t,n,r,o){return{device:o,fps:r,gpu:n,isMobile:u,tier:e,type:t}},y="",!g){e.next=11;break}g=So(g),b=[g],e.next=18;break;case 11:if(E=s||function(e){var t={alpha:!1,antialias:!1,depth:!1,failIfMajorPerformanceCaveat:arguments.length>1&&void 0!==arguments[1]&&arguments[1],powerPreference:"high-performance",stencil:!1};e&&delete t.powerPreference;var n=window.document.createElement("canvas"),r=n.getContext("webgl",t)||n.getContext("experimental-webgl",t);return null!=r?r:void 0}(null==_o?void 0:_o.isSafari12,c),E){e.next=14;break}return e.abrupt("return",v(0,"WEBGL_UNSUPPORTED"));case 14:if((S=E.getExtension("WEBGL_debug_renderer_info"))&&(g=E.getParameter(S.UNMASKED_RENDERER_WEBGL)),g){e.next=17;break}return e.abrupt("return",v(1,"FALLBACK"));case 17:y=g,g=So(g),b=function(e,t,n){return"apple gpu"===t?function(e,t,n){if(!n)return[t];var r,o=function(e){var t=e.createShader(35633),n=e.createShader(35632),r=e.createProgram();if(n&&t&&r){e.shaderSource(t,"\n precision highp float;\n attribute vec3 aPosition;\n varying float vvv;\n void main() {\n vvv = 0.31622776601683794;\n gl_Position = vec4(aPosition, 1.0);\n }\n "),e.shaderSource(n,"\n precision highp float;\n varying float vvv;\n void main() {\n vec4 enc = vec4(1.0, 255.0, 65025.0, 16581375.0) * vvv;\n enc = fract(enc);\n enc -= enc.yzww * vec4(1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0, 0.0);\n gl_FragColor = enc;\n }\n "),e.compileShader(t),e.compileShader(n),e.attachShader(r,t),e.attachShader(r,n),e.linkProgram(r),e.detachShader(r,t),e.detachShader(r,n),e.deleteShader(t),e.deleteShader(n),e.useProgram(r);var o=e.createBuffer();e.bindBuffer(34962,o),e.bufferData(34962,new Float32Array([-1,-1,0,3,-1,0,-1,3,0]),35044);var a=e.getAttribLocation(r,"aPosition");e.vertexAttribPointer(a,3,5126,!1,0,0),e.enableVertexAttribArray(a),e.clearColor(1,1,1,1),e.clear(16384),e.viewport(0,0,1,1),e.drawArrays(4,0,3);var i=new Uint8Array(4);return e.readPixels(0,0,1,1,6408,5121,i),e.deleteProgram(r),e.deleteBuffer(o),i.join("")}}(e),a="801621810",i="8016218135",s="80162181161",l=(null==_o?void 0:_o.isIpad)?[["a7",s,12],["a8",i,15],["a8x",i,15],["a9",i,15],["a9x",i,15],["a10",i,15],["a10x",i,15],["a12",a,15],["a12x",a,15],["a12z",a,15],["a14",a,15],["m1",a,15]]:[["a7",s,12],["a8",i,12],["a9",i,15],["a10",i,15],["a11",a,15],["a12",a,15],["a13",a,15],["a14",a,15]];return"80162181255"===o?r=l.filter((function(e){return(0,U.Z)(e,3)[2]>=14})):(r=l.filter((function(e){return(0,U.Z)(e,2)[1]===o}))).length||(r=l),r.map((function(e){var t=(0,U.Z)(e,1)[0];return"apple ".concat(t," gpu")}))}(e,t,n):[t]}(E,g,u);case 18:return e.next=20,Promise.all(b.map((function(e){var n;return yo(this,void 0,void 0,(0,j.Z)().mark((function r(){var o,i,s,l,c,d,p,m,g,v,b,y,E,S,w,_,T,x,C,A,k,I,O,R,N,M,L,P,D;return(0,j.Z)().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(o=function(e){for(var t=0,n=u?["adreno","apple","mali-t","mali","nvidia","powervr","samsung"]:["intel","apple","amd","radeon","nvidia","geforce"];t1?d.map((function(e){return[e,Ao(m,e[2])]})).sort((function(e,t){return(0,U.Z)(e,2)[1]-(0,U.Z)(t,2)[1]}))[0][0]:d[0],b=(0,U.Z)(v,5),y=b[0],E=b[4],S=Number.MAX_VALUE,w=window,_=w.devicePixelRatio,T=f.width*_*f.height*_,x=(0,F.Z)(E);try{for(x.s();!(C=x.n()).done;)A=C.value,k=(0,U.Z)(A,2),I=k[0],O=k[1],R=I*O,(N=Math.abs(T-R))=k[O]&&(I=O);return e.abrupt("return",v(I,"BENCHMARK",C,x,A));case 31:case"end":return e.stop()}}),e)})))},Go=n(50829),Vo=n(32410),Wo=Y.ZP.div((function(e){var t,n=e.theme;return{"& .mainContainer":{height:"100vh"},"& .decorationPanel":{position:"relative",backgroundColor:Rr(n,"login.promoBG","#000110"),"& .videoContainer":{width:"100%",height:"auto",minHeight:200,position:"absolute",bottom:"0",right:0,filter:Rr(n,"login.bgFilter","none"),"&:before":{position:"absolute",width:"100%",height:60,display:"block",content:"' '",background:"linear-gradient(to bottom, rgba(0,1,16,1) 0%,rgba(0,0,0,0.02) 100%)",top:0},"&:after":{position:"absolute",width:120,height:"100%",display:"block",content:"' '",background:"linear-gradient(to right, rgba(0,1,16,1) 0%,rgba(0,0,0,0.02) 100%)",top:0},"& .videoBG":{width:"100%"}},"& .bgExtend":{backgroundImage:"linear-gradient(45deg,rgba(172,223,234,0) 0,#7fc0e4 100%)",position:"absolute",width:500,left:0},"& .promoContainer":{zIndex:100,width:"80%",maxWidth:"687px",position:"absolute",top:"190px",left:"50%",transform:"translateX(-50%)","& .promoHeader":{color:Rr(n,"login.promoHeader","#fff"),fontSize:"46px",textAlign:"left",fontWeight:"900",lineHeight:"60px"},"& .promoInfo":{marginTop:"31px",maxWidth:"542px",color:Rr(n,"login.promoText","#fff"),fontSize:"18px",textAlign:"left",fontWeight:"300",lineHeight:"30px",textShadow:"0 0 5ppx #000","& a":{color:Rr(n,"login.promoText","#fff"),textDecoration:"none",fontWeight:"bold","&:hover":{textDecoration:"underline"}}}}},"& .formPanel":(t={maxWidth:"520px",backgroundColor:Rr(n,"login.formBG","#fff")},t["@media (min-width: ".concat(Rr(Q,"xs",0),"px) and (max-width: ").concat(Rr(Q,"md",0),"px)")]={maxWidth:"100%"},t["& .logoContainer"]={display:"flex",height:"215px",alignItems:"center",justifyContent:"center",boxShadow:"0 3px 10px 2px #00000010","& svg":{width:"325px"}},t["& .formContainer"]={paddingTop:"40px",display:"flex",flexDirection:"column",alignItems:"center",minHeight:"calc(100vh - 215px)","& .form":{width:"328px",flexGrow:"1",height:"100%"},"& .footer":{display:"flex",width:"328px",borderTop:"".concat(Rr(n,"login.footerDivider","#f2f2f2")," 1px solid"),padding:"35px 0",textAlign:"center",alignItems:"flex-end",justifyContent:"center"},"& .footer, & .footer a":{color:Rr(n,"login.footerElements","#000"),fontSize:"14px",textDecoration:"none"}},t)}})),qo=function(e){var t=e.logoProps,n=e.form,r=e.formFooter,o=e.promoInfo,a=e.promoHeader,i=e.backgroundAnimation,s=void 0===i||i,l=(0,K.useState)(!1),c=l[0],u=l[1];return(0,K.useEffect)((function(){!function(e,t,n,r){new(n||(n=Promise))((function(o,a){function i(e){try{l(r.next(e))}catch(e){a(e)}}function s(e){try{l(r.throw(e))}catch(e){a(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,s)}l((r=r.apply(e,t||[])).next())}))}(void 0,void 0,void 0,(function(){var e;return function(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]=2),[2]}}))}))}),[]),K.createElement(Wo,null,K.createElement(bo,{container:!0,className:"mainContainer",wrap:"nowrap"},K.createElement(bo,{item:!0,xs:"hidden",sm:"hidden",md:!0,className:"decorationPanel"},(o||a)&&K.createElement(bo,{container:!0},K.createElement(bo,{item:!0,className:"promoContainer"},K.createElement(bo,{item:!0,className:"promoHeader"},a),K.createElement(bo,{item:!0,className:"promoInfo"},o))),K.createElement(bo,{item:!0,className:"videoContainer"},c&&s?K.createElement("video",{autoPlay:!0,playsInline:!0,muted:!0,loop:!0,disablePictureInPicture:!0,poster:Vo,className:"videoBG"},K.createElement("source",{src:Go,type:"video/mp4"})):K.createElement("img",{src:Vo,className:"videoBG"}))),K.createElement(bo,{item:!0,xs:12,className:"formPanel"},K.createElement(bo,{container:!0},K.createElement(bo,{item:!0,xs:12,className:"logoContainer"},K.createElement(mo,Ot({},t))),K.createElement(bo,{item:!0,xs:12,className:"formContainer"},K.createElement(bo,{item:!0,xs:!0,className:"form"},n),r&&K.createElement(bo,{item:!0,xs:!0,className:"footer"},r))))))},$o=(0,Y.F4)(Io||(Io=Nt(["0% {\n transform: translate(139.785027px, 140.086989px) rotate(45.236493deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 10% {\n transform: translate(139.785027px, 140.086989px) rotate(-197.740907deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 20% {\n transform: translate(139.785027px, 140.086989px) rotate(-108.6deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 30% {\n transform: translate(139.785027px, 140.086989px) rotate(-17.484014deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 33.333333% {\n transform: translate(139.785027px, 140.086989px) rotate(-17.48deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 43.333333% {\n transform: translate(139.785027px, 140.086989px) rotate(160.887995deg);\n }\n 100% {\n transform: translate(139.785027px, 140.086989px) rotate(160.887995deg);\n }"],["0% {\n transform: translate(139.785027px, 140.086989px) rotate(45.236493deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 10% {\n transform: translate(139.785027px, 140.086989px) rotate(-197.740907deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 20% {\n transform: translate(139.785027px, 140.086989px) rotate(-108.6deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 30% {\n transform: translate(139.785027px, 140.086989px) rotate(-17.484014deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 33.333333% {\n transform: translate(139.785027px, 140.086989px) rotate(-17.48deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 43.333333% {\n transform: translate(139.785027px, 140.086989px) rotate(160.887995deg);\n }\n 100% {\n transform: translate(139.785027px, 140.086989px) rotate(160.887995deg);\n }"]))),Ko=(0,Y.F4)(Oo||(Oo=Nt(["\n0% {\n transform: scale(1, 0.995019);\n }\n 33.333333% {\n transform: scale(1, 0.995019);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 43.333333% {\n transform: scale(0.101121, 0.102033);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 50% {\n transform: scale(0.1, 0.1);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 60% {\n transform: scale(1, 1);\n }\n 100% {\n transform: scale(1, 1);\n }\n"],["\n0% {\n transform: scale(1, 0.995019);\n }\n 33.333333% {\n transform: scale(1, 0.995019);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 43.333333% {\n transform: scale(0.101121, 0.102033);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 50% {\n transform: scale(0.1, 0.1);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 60% {\n transform: scale(1, 1);\n }\n 100% {\n transform: scale(1, 1);\n }\n"]))),Yo=(0,Y.F4)(Ro||(Ro=Nt(["\n0% {\n opacity: 1;\n }\n 6.666667% {\n opacity: 1;\n }\n 10% {\n opacity: 0;\n }\n 13.333333% {\n opacity: 0;\n }\n 20% {\n opacity: 1;\n }\n 30% {\n opacity: 1;\n }\n 36.666667% {\n opacity: 1;\n }\n 40% {\n opacity: 0;\n }\n 100% {\n opacity: 0;\n }\n"],["\n0% {\n opacity: 1;\n }\n 6.666667% {\n opacity: 1;\n }\n 10% {\n opacity: 0;\n }\n 13.333333% {\n opacity: 0;\n }\n 20% {\n opacity: 1;\n }\n 30% {\n opacity: 1;\n }\n 36.666667% {\n opacity: 1;\n }\n 40% {\n opacity: 0;\n }\n 100% {\n opacity: 0;\n }\n"]))),Xo=(0,Y.F4)(No||(No=Nt(['\n0% {\n d: path(\n "M85.4,249.8C109.08,255.3,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,110.79,235.19,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z"\n );\n }\n 10% {\n d: path(\n "M85.4,249.8C85.4,249.8,85.399999,249.800001,85.399999,249.800001C85.399999,249.800001,85.4,249.800002,85.4,249.800002C85.4,249.800002,90.484102,251.966034,95.043213,248.269966C100.484052,243.859082,98.694728,236.722769,97.073675,234.469349C95.517658,232.306335,94.559418,231.751273,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z"\n );\n }\n 20% {\n d: path(\n "M85.4,249.8C85.4,249.8,85.399999,249.800001,85.399999,249.800001C85.399999,249.800001,85.4,249.800002,85.4,249.800002C85.4,249.800002,90.484102,251.966034,95.043213,248.269966C100.484052,243.859082,98.694728,236.722769,97.073675,234.469349C95.517658,232.306335,94.559418,231.751273,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z"\n );\n }\n 30% {\n d: path(\n "M85.4,249.8C109.08,255.3,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,110.79,235.19,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z"\n );\n }\n 33.333333% {\n d: path(\n "M85.4,249.8C109.08,255.3,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,110.79,235.19,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z"\n );\n }\n 43.333333% {\n d: path(\n "M84.281285,246.076032C107.50521,254.051555,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,86.465691,239.82846,53.85604,207.193233C41.31604,204.283233,32.439249,213.928672,40.474905,219.54755C40.474905,219.54755,61.310295,238.187372,84.281285,246.076032Z"\n );\n }\n 100% {\n d: path(\n "M84.281285,246.076032C107.50521,254.051555,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,86.465691,239.82846,53.85604,207.193233C41.31604,204.283233,32.439249,213.928672,40.474905,219.54755C40.474905,219.54755,61.310295,238.187372,84.281285,246.076032Z"\n );\n }\n'],['\n0% {\n d: path(\n "M85.4,249.8C109.08,255.3,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,110.79,235.19,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z"\n );\n }\n 10% {\n d: path(\n "M85.4,249.8C85.4,249.8,85.399999,249.800001,85.399999,249.800001C85.399999,249.800001,85.4,249.800002,85.4,249.800002C85.4,249.800002,90.484102,251.966034,95.043213,248.269966C100.484052,243.859082,98.694728,236.722769,97.073675,234.469349C95.517658,232.306335,94.559418,231.751273,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z"\n );\n }\n 20% {\n d: path(\n "M85.4,249.8C85.4,249.8,85.399999,249.800001,85.399999,249.800001C85.399999,249.800001,85.4,249.800002,85.4,249.800002C85.4,249.800002,90.484102,251.966034,95.043213,248.269966C100.484052,243.859082,98.694728,236.722769,97.073675,234.469349C95.517658,232.306335,94.559418,231.751273,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z"\n );\n }\n 30% {\n d: path(\n "M85.4,249.8C109.08,255.3,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,110.79,235.19,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z"\n );\n }\n 33.333333% {\n d: path(\n "M85.4,249.8C109.08,255.3,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,110.79,235.19,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z"\n );\n }\n 43.333333% {\n d: path(\n "M84.281285,246.076032C107.50521,254.051555,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,86.465691,239.82846,53.85604,207.193233C41.31604,204.283233,32.439249,213.928672,40.474905,219.54755C40.474905,219.54755,61.310295,238.187372,84.281285,246.076032Z"\n );\n }\n 100% {\n d: path(\n "M84.281285,246.076032C107.50521,254.051555,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,86.465691,239.82846,53.85604,207.193233C41.31604,204.283233,32.439249,213.928672,40.474905,219.54755C40.474905,219.54755,61.310295,238.187372,84.281285,246.076032Z"\n );\n }\n']))),Qo=(0,Y.F4)(Mo||(Mo=Nt(['\n 0% {\n d: path(\n "M249.74,169.63C255.24,145.95,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,191.54,41.29,201.15,49.9C217.04,64.13,228.2,81.76,232.8,102.69C237.26,123,235.13,144.24,230.46,164.3C227.54,176.84,246.82,182.18,249.74,169.63C249.74,169.63,249.74,169.63,249.74,169.63Z"\n );\n }\n 10% {\n d: path(\n "M250.887564,168.08137C250.887564,168.081368,250.887563,168.081375,250.887563,168.081375C250.887563,168.081375,253.7831,157.676613,244.778825,154.781475C235.762034,151.882313,232.694053,158.881918,231.752888,162.486547C231.017121,165.304508,231.564293,168.517464,232.231509,169.666243C233.407087,171.690293,235.517449,173.828597,238.467701,174.606956C241.339242,175.364549,245.542656,175.427978,248.770823,172.704057C248.770823,172.704057,250.400569,171.202441,250.887564,168.08137Z"\n );\n }\n 20% {\n d: path(\n "M250.887564,168.08137C250.887564,168.081368,250.887563,168.081375,250.887563,168.081375C250.887563,168.081375,253.7831,157.676613,244.778825,154.781475C235.762034,151.882313,232.694053,158.881918,231.752888,162.486547C231.017121,165.304508,231.564293,168.517464,232.231509,169.666243C233.407087,171.690293,235.517449,173.828597,238.467701,174.606956C241.339242,175.364549,245.542656,175.427978,248.770823,172.704057C248.770823,172.704057,250.400569,171.202441,250.887564,168.08137Z"\n );\n }\n 30% {\n d: path(\n "M249.74,169.63C255.24,145.95,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,191.54,41.29,201.15,49.9C217.04,64.13,228.2,81.76,232.8,102.69C237.26,123,235.13,144.24,230.46,164.3C227.54,176.84,246.82,182.18,249.74,169.63C249.74,169.63,249.74,169.63,249.74,169.63Z"\n );\n }\n 33.333333% {\n d: path(\n "M249.74,169.63C255.24,145.95,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,191.54,41.29,201.15,49.9C217.04,64.13,228.2,81.76,232.8,102.69C237.26,123,235.13,144.24,230.46,164.3C227.54,176.84,246.82,182.18,249.74,169.63C249.74,169.63,249.74,169.63,249.74,169.63Z"\n );\n }\n 43.333333% {\n d: path(\n "M241.985702,180.287452C255.201364,145.393106,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,189.760952,38.146938,199.370952,46.756938C229.706596,66.855753,234.126292,101.544407,234.194759,127.574104C235.798839,155.047874,216.192342,185.901625,205.13,201.21C199.980012,208.336696,214.039151,220.128533,219.270001,215.35C219.270001,215.35,237.299554,192.660656,241.985702,180.287452Z"\n );\n }\n 100% {\n d: path(\n "M241.985702,180.287452C255.201364,145.393106,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,189.760952,38.146938,199.370952,46.756938C229.706596,66.855753,234.126292,101.544407,234.194759,127.574104C235.798839,155.047874,216.192342,185.901625,205.13,201.21C199.980012,208.336696,214.039151,220.128533,219.270001,215.35C219.270001,215.35,237.299554,192.660656,241.985702,180.287452Z"\n );\n }\n'],['\n 0% {\n d: path(\n "M249.74,169.63C255.24,145.95,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,191.54,41.29,201.15,49.9C217.04,64.13,228.2,81.76,232.8,102.69C237.26,123,235.13,144.24,230.46,164.3C227.54,176.84,246.82,182.18,249.74,169.63C249.74,169.63,249.74,169.63,249.74,169.63Z"\n );\n }\n 10% {\n d: path(\n "M250.887564,168.08137C250.887564,168.081368,250.887563,168.081375,250.887563,168.081375C250.887563,168.081375,253.7831,157.676613,244.778825,154.781475C235.762034,151.882313,232.694053,158.881918,231.752888,162.486547C231.017121,165.304508,231.564293,168.517464,232.231509,169.666243C233.407087,171.690293,235.517449,173.828597,238.467701,174.606956C241.339242,175.364549,245.542656,175.427978,248.770823,172.704057C248.770823,172.704057,250.400569,171.202441,250.887564,168.08137Z"\n );\n }\n 20% {\n d: path(\n "M250.887564,168.08137C250.887564,168.081368,250.887563,168.081375,250.887563,168.081375C250.887563,168.081375,253.7831,157.676613,244.778825,154.781475C235.762034,151.882313,232.694053,158.881918,231.752888,162.486547C231.017121,165.304508,231.564293,168.517464,232.231509,169.666243C233.407087,171.690293,235.517449,173.828597,238.467701,174.606956C241.339242,175.364549,245.542656,175.427978,248.770823,172.704057C248.770823,172.704057,250.400569,171.202441,250.887564,168.08137Z"\n );\n }\n 30% {\n d: path(\n "M249.74,169.63C255.24,145.95,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,191.54,41.29,201.15,49.9C217.04,64.13,228.2,81.76,232.8,102.69C237.26,123,235.13,144.24,230.46,164.3C227.54,176.84,246.82,182.18,249.74,169.63C249.74,169.63,249.74,169.63,249.74,169.63Z"\n );\n }\n 33.333333% {\n d: path(\n "M249.74,169.63C255.24,145.95,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,191.54,41.29,201.15,49.9C217.04,64.13,228.2,81.76,232.8,102.69C237.26,123,235.13,144.24,230.46,164.3C227.54,176.84,246.82,182.18,249.74,169.63C249.74,169.63,249.74,169.63,249.74,169.63Z"\n );\n }\n 43.333333% {\n d: path(\n "M241.985702,180.287452C255.201364,145.393106,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,189.760952,38.146938,199.370952,46.756938C229.706596,66.855753,234.126292,101.544407,234.194759,127.574104C235.798839,155.047874,216.192342,185.901625,205.13,201.21C199.980012,208.336696,214.039151,220.128533,219.270001,215.35C219.270001,215.35,237.299554,192.660656,241.985702,180.287452Z"\n );\n }\n 100% {\n d: path(\n "M241.985702,180.287452C255.201364,145.393106,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,189.760952,38.146938,199.370952,46.756938C229.706596,66.855753,234.126292,101.544407,234.194759,127.574104C235.798839,155.047874,216.192342,185.901625,205.13,201.21C199.980012,208.336696,214.039151,220.128533,219.270001,215.35C219.270001,215.35,237.299554,192.660656,241.985702,180.287452Z"\n );\n }\n']))),Jo=(0,Y.F4)(Lo||(Lo=Nt(['\n0% {\n d: path(\n "M171.68,7.71C148.17,1.51,123.61,-1.28,99.53,3.25C75.39,7.79,53.7,20.49,36.85,38.21C28.01,47.52,41.68,62.11,50.57,52.76C65.27,37.3,83.22,26.66,104.27,22.68C124.7,18.82,145.87,21.58,165.79,26.83C178.22,30.11,184.14,11,171.68,7.71C171.68,7.71,171.68,7.71,171.68,7.71Z"\n );\n }\n 10% {\n d: path(\n "M171.58686,7.8192C164.834536,7.661923,162.882928,13.414575,162.613915,14.669774C162.613914,14.669774,161.858025,17.37084,162.366976,18.743708C162.782522,19.864622,163.527502,21.022768,164.723558,21.957074C165.842173,22.830886,168.859974,24.254302,168.859974,24.254302C168.859974,24.254302,168.859968,24.254306,168.859967,24.254304C181.289967,27.534304,184.046866,11.109212,171.586866,7.819212C171.586866,7.819212,171.58686,7.8192,171.58686,7.8192Z"\n );\n }\n 20% {\n d: path(\n "M171.58686,7.8192C164.834536,7.661923,162.882928,13.414575,162.613915,14.669774C162.613914,14.669774,161.858025,17.37084,162.366976,18.743708C162.782522,19.864622,163.527502,21.022768,164.723558,21.957074C165.842173,22.830886,168.859974,24.254302,168.859974,24.254302C168.859974,24.254302,168.859968,24.254306,168.859967,24.254304C181.289967,27.534304,184.046866,11.109212,171.586866,7.819212C171.586866,7.819212,171.58686,7.8192,171.58686,7.8192Z"\n );\n }\n 30% {\n d: path(\n "M171.68,7.71C148.17,1.51,123.61,-1.28,99.53,3.25C75.39,7.79,53.7,20.49,36.85,38.21C28.01,47.52,41.68,62.11,50.57,52.76C65.27,37.3,83.22,26.66,104.27,22.68C124.7,18.82,145.87,21.58,165.79,26.83C178.22,30.11,184.14,11,171.68,7.71C171.68,7.71,171.68,7.71,171.68,7.71Z"\n );\n }\n 33.333333% {\n d: path(\n "M171.68,7.71C148.17,1.51,123.61,-1.28,99.53,3.25C75.39,7.79,53.7,20.49,36.85,38.21C28.01,47.52,41.68,62.11,50.57,52.76C65.27,37.3,83.22,26.66,104.27,22.68C124.7,18.82,145.87,21.58,165.79,26.83C178.22,30.11,184.14,11,171.68,7.71C171.68,7.71,171.68,7.71,171.68,7.71Z"\n );\n }\n 43.333333% {\n d: path(\n "M154.601291,1.547478C127.732134,-3.659063,101.676041,0.16217,89.834975,4.047622C73.018778,9.565582,43.015709,29.967817,36.85,38.21C28.01,47.52,41.568561,62.002759,50.57,52.76C67.005248,35.884138,77.788003,22.937369,100.935291,18.024709C148.028227,8.029949,175.904245,24.591662,199.370952,46.756938C210.775532,51.88401,219.463487,39.878796,215.289997,35.759998C189.664787,10.470596,154.601291,1.547478,154.601291,1.547478Z"\n );\n }\n 100% {\n d: path(\n "M154.601291,1.547478C127.732134,-3.659063,101.676041,0.16217,89.834975,4.047622C73.018778,9.565582,43.015709,29.967817,36.85,38.21C28.01,47.52,41.568561,62.002759,50.57,52.76C67.005248,35.884138,77.788003,22.937369,100.935291,18.024709C148.028227,8.029949,175.904245,24.591662,199.370952,46.756938C210.775532,51.88401,219.463487,39.878796,215.289997,35.759998C189.664787,10.470596,154.601291,1.547478,154.601291,1.547478Z"\n );\n }\n'],['\n0% {\n d: path(\n "M171.68,7.71C148.17,1.51,123.61,-1.28,99.53,3.25C75.39,7.79,53.7,20.49,36.85,38.21C28.01,47.52,41.68,62.11,50.57,52.76C65.27,37.3,83.22,26.66,104.27,22.68C124.7,18.82,145.87,21.58,165.79,26.83C178.22,30.11,184.14,11,171.68,7.71C171.68,7.71,171.68,7.71,171.68,7.71Z"\n );\n }\n 10% {\n d: path(\n "M171.58686,7.8192C164.834536,7.661923,162.882928,13.414575,162.613915,14.669774C162.613914,14.669774,161.858025,17.37084,162.366976,18.743708C162.782522,19.864622,163.527502,21.022768,164.723558,21.957074C165.842173,22.830886,168.859974,24.254302,168.859974,24.254302C168.859974,24.254302,168.859968,24.254306,168.859967,24.254304C181.289967,27.534304,184.046866,11.109212,171.586866,7.819212C171.586866,7.819212,171.58686,7.8192,171.58686,7.8192Z"\n );\n }\n 20% {\n d: path(\n "M171.58686,7.8192C164.834536,7.661923,162.882928,13.414575,162.613915,14.669774C162.613914,14.669774,161.858025,17.37084,162.366976,18.743708C162.782522,19.864622,163.527502,21.022768,164.723558,21.957074C165.842173,22.830886,168.859974,24.254302,168.859974,24.254302C168.859974,24.254302,168.859968,24.254306,168.859967,24.254304C181.289967,27.534304,184.046866,11.109212,171.586866,7.819212C171.586866,7.819212,171.58686,7.8192,171.58686,7.8192Z"\n );\n }\n 30% {\n d: path(\n "M171.68,7.71C148.17,1.51,123.61,-1.28,99.53,3.25C75.39,7.79,53.7,20.49,36.85,38.21C28.01,47.52,41.68,62.11,50.57,52.76C65.27,37.3,83.22,26.66,104.27,22.68C124.7,18.82,145.87,21.58,165.79,26.83C178.22,30.11,184.14,11,171.68,7.71C171.68,7.71,171.68,7.71,171.68,7.71Z"\n );\n }\n 33.333333% {\n d: path(\n "M171.68,7.71C148.17,1.51,123.61,-1.28,99.53,3.25C75.39,7.79,53.7,20.49,36.85,38.21C28.01,47.52,41.68,62.11,50.57,52.76C65.27,37.3,83.22,26.66,104.27,22.68C124.7,18.82,145.87,21.58,165.79,26.83C178.22,30.11,184.14,11,171.68,7.71C171.68,7.71,171.68,7.71,171.68,7.71Z"\n );\n }\n 43.333333% {\n d: path(\n "M154.601291,1.547478C127.732134,-3.659063,101.676041,0.16217,89.834975,4.047622C73.018778,9.565582,43.015709,29.967817,36.85,38.21C28.01,47.52,41.568561,62.002759,50.57,52.76C67.005248,35.884138,77.788003,22.937369,100.935291,18.024709C148.028227,8.029949,175.904245,24.591662,199.370952,46.756938C210.775532,51.88401,219.463487,39.878796,215.289997,35.759998C189.664787,10.470596,154.601291,1.547478,154.601291,1.547478Z"\n );\n }\n 100% {\n d: path(\n "M154.601291,1.547478C127.732134,-3.659063,101.676041,0.16217,89.834975,4.047622C73.018778,9.565582,43.015709,29.967817,36.85,38.21C28.01,47.52,41.568561,62.002759,50.57,52.76C67.005248,35.884138,77.788003,22.937369,100.935291,18.024709C148.028227,8.029949,175.904245,24.591662,199.370952,46.756938C210.775532,51.88401,219.463487,39.878796,215.289997,35.759998C189.664787,10.470596,154.601291,1.547478,154.601291,1.547478Z"\n );\n }\n']))),ea=(0,Y.F4)(Po||(Po=Nt(['\n0% {\n d: path(\n "M5.83,85.46C0.33,109.14,-1.74,133.78,3.49,157.71C8.74,181.71,22.08,203.01,40.28,219.33C49.84,227.9,64.03,213.8,54.42,205.19C38.53,190.96,27.37,173.33,22.77,152.4C18.31,132.09,20.44,110.85,25.11,90.79C28.03,78.25,8.75,72.91,5.83,85.46L5.83,85.46Z"\n );\n }\n 3.333333% {\n d: path(\n "M4.90273,88.748028C1.236063,104.534694,0.694614,122.375568,4.181281,138.328902C7.119767,155.82704,18.329955,178.442148,31.722495,188.944182C39.448991,194.869945,48.960631,181.919808,35.808325,167.974185C27.053341,155.46954,26.778713,144.786038,23.180834,130.168643C19.139468,114.899686,18.114526,100.786543,20.952073,87.411869C21.572437,79.045425,6.897064,77.595457,4.916661,86.915441L4.90273,88.748028Z"\n );\n }\n 10% {\n d: path(\n "M3.04819,95.324083C3.04819,95.324083,5.563842,99.566705,5.563842,99.566705C5.563842,99.566705,11.253926,104.287825,15.031546,103.153927C19.091035,103.791214,24.274539,98.764542,25.851733,95.404259C27.275674,92.370488,25.596139,87.698114,24.002501,85.705929C20.798403,80.519057,13.463578,80.659628,12.636219,80.655608C8.65731,80.636275,3.191193,86.96637,3.089982,89.826322L3.04819,95.324083Z"\n );\n }\n 20% {\n d: path(\n "M3.04819,95.324083C3.04819,95.324083,5.563842,99.566705,5.563842,99.566705C5.563842,99.566705,11.253926,104.287825,15.031546,103.153927C19.091035,103.791214,24.274539,98.764542,25.851733,95.404259C27.275674,92.370488,25.596139,87.698114,24.002501,85.705929C20.798403,80.519057,13.463578,80.659628,12.636219,80.655608C8.65731,80.636275,3.191193,86.96637,3.089982,89.826322L3.04819,95.324083Z"\n );\n }\n 30% {\n d: path(\n "M5.83,85.46C0.33,109.14,-1.74,133.78,3.49,157.71C8.74,181.71,22.08,203.01,40.28,219.33C49.84,227.9,64.03,213.8,54.42,205.19C38.53,190.96,27.37,173.33,22.77,152.4C18.31,132.09,20.44,110.85,25.11,90.79C28.03,78.25,8.75,72.91,5.83,85.46L5.83,85.46Z"\n );\n }\n 33.333333% {\n d: path(\n "M5.83,85.46C0.33,109.14,-1.74,133.78,3.49,157.71C8.74,181.71,22.08,203.01,40.28,219.33C49.84,227.9,64.03,213.8,54.42,205.19C38.53,190.96,27.37,173.33,22.77,152.4C18.31,132.09,20.44,110.85,25.11,90.79C28.03,78.25,8.75,72.91,5.83,85.46L5.83,85.46Z"\n );\n }\n 43.333333% {\n d: path(\n "M36.436007,38.11681C-7.498754,85.801617,-0.826469,134.911183,5.658972,158.164678C15.873566,192.855226,35.43893,215.965329,40.28,219.33C49.84,227.9,63.271136,215.585685,53.661136,206.975685C38.384036,191.128398,25.999041,166.121323,22.77,152.4C12.429986,121.009925,27.020185,73.061168,50.245766,52.61587C65.058304,39.576508,51.054205,23.186387,36.436019,38.116819L36.436007,38.11681Z"\n );\n }\n 100% {\n d: path(\n "M36.436007,38.11681C-7.498754,85.801617,-0.826469,134.911183,5.658972,158.164678C15.873566,192.855226,35.43893,215.965329,40.28,219.33C49.84,227.9,63.271136,215.585685,53.661136,206.975685C38.384036,191.128398,25.999041,166.121323,22.77,152.4C12.429986,121.009925,27.020185,73.061168,50.245766,52.61587C65.058304,39.576508,51.054205,23.186387,36.436019,38.116819L36.436007,38.11681Z"\n );\n }\n'],['\n0% {\n d: path(\n "M5.83,85.46C0.33,109.14,-1.74,133.78,3.49,157.71C8.74,181.71,22.08,203.01,40.28,219.33C49.84,227.9,64.03,213.8,54.42,205.19C38.53,190.96,27.37,173.33,22.77,152.4C18.31,132.09,20.44,110.85,25.11,90.79C28.03,78.25,8.75,72.91,5.83,85.46L5.83,85.46Z"\n );\n }\n 3.333333% {\n d: path(\n "M4.90273,88.748028C1.236063,104.534694,0.694614,122.375568,4.181281,138.328902C7.119767,155.82704,18.329955,178.442148,31.722495,188.944182C39.448991,194.869945,48.960631,181.919808,35.808325,167.974185C27.053341,155.46954,26.778713,144.786038,23.180834,130.168643C19.139468,114.899686,18.114526,100.786543,20.952073,87.411869C21.572437,79.045425,6.897064,77.595457,4.916661,86.915441L4.90273,88.748028Z"\n );\n }\n 10% {\n d: path(\n "M3.04819,95.324083C3.04819,95.324083,5.563842,99.566705,5.563842,99.566705C5.563842,99.566705,11.253926,104.287825,15.031546,103.153927C19.091035,103.791214,24.274539,98.764542,25.851733,95.404259C27.275674,92.370488,25.596139,87.698114,24.002501,85.705929C20.798403,80.519057,13.463578,80.659628,12.636219,80.655608C8.65731,80.636275,3.191193,86.96637,3.089982,89.826322L3.04819,95.324083Z"\n );\n }\n 20% {\n d: path(\n "M3.04819,95.324083C3.04819,95.324083,5.563842,99.566705,5.563842,99.566705C5.563842,99.566705,11.253926,104.287825,15.031546,103.153927C19.091035,103.791214,24.274539,98.764542,25.851733,95.404259C27.275674,92.370488,25.596139,87.698114,24.002501,85.705929C20.798403,80.519057,13.463578,80.659628,12.636219,80.655608C8.65731,80.636275,3.191193,86.96637,3.089982,89.826322L3.04819,95.324083Z"\n );\n }\n 30% {\n d: path(\n "M5.83,85.46C0.33,109.14,-1.74,133.78,3.49,157.71C8.74,181.71,22.08,203.01,40.28,219.33C49.84,227.9,64.03,213.8,54.42,205.19C38.53,190.96,27.37,173.33,22.77,152.4C18.31,132.09,20.44,110.85,25.11,90.79C28.03,78.25,8.75,72.91,5.83,85.46L5.83,85.46Z"\n );\n }\n 33.333333% {\n d: path(\n "M5.83,85.46C0.33,109.14,-1.74,133.78,3.49,157.71C8.74,181.71,22.08,203.01,40.28,219.33C49.84,227.9,64.03,213.8,54.42,205.19C38.53,190.96,27.37,173.33,22.77,152.4C18.31,132.09,20.44,110.85,25.11,90.79C28.03,78.25,8.75,72.91,5.83,85.46L5.83,85.46Z"\n );\n }\n 43.333333% {\n d: path(\n "M36.436007,38.11681C-7.498754,85.801617,-0.826469,134.911183,5.658972,158.164678C15.873566,192.855226,35.43893,215.965329,40.28,219.33C49.84,227.9,63.271136,215.585685,53.661136,206.975685C38.384036,191.128398,25.999041,166.121323,22.77,152.4C12.429986,121.009925,27.020185,73.061168,50.245766,52.61587C65.058304,39.576508,51.054205,23.186387,36.436019,38.116819L36.436007,38.11681Z"\n );\n }\n 100% {\n d: path(\n "M36.436007,38.11681C-7.498754,85.801617,-0.826469,134.911183,5.658972,158.164678C15.873566,192.855226,35.43893,215.965329,40.28,219.33C49.84,227.9,63.271136,215.585685,53.661136,206.975685C38.384036,191.128398,25.999041,166.121323,22.77,152.4C12.429986,121.009925,27.020185,73.061168,50.245766,52.61587C65.058304,39.576508,51.054205,23.186387,36.436019,38.116819L36.436007,38.11681Z"\n );\n }\n']))),ta=(0,Y.F4)(Do||(Do=Nt(["\n0% {\n transform: translate(139.784999px, 140.086986px) scale(1, 1);\n }\n 30% {\n transform: translate(139.784999px, 140.086986px) scale(1, 1);\n }\n 43.333333% {\n transform: translate(139.784999px, 140.086986px) scale(0.102813, 0.102813);\n }\n 50% {\n transform: translate(139.784999px, 140.086986px) scale(0.102813, 0.102813);\n }\n 60% {\n transform: translate(139.784999px, 140.086986px) scale(1.001075, 1.001075);\n }\n 100% {\n transform: translate(139.784999px, 140.086986px) scale(1.001075, 1.001075);\n }\n"],["\n0% {\n transform: translate(139.784999px, 140.086986px) scale(1, 1);\n }\n 30% {\n transform: translate(139.784999px, 140.086986px) scale(1, 1);\n }\n 43.333333% {\n transform: translate(139.784999px, 140.086986px) scale(0.102813, 0.102813);\n }\n 50% {\n transform: translate(139.784999px, 140.086986px) scale(0.102813, 0.102813);\n }\n 60% {\n transform: translate(139.784999px, 140.086986px) scale(1.001075, 1.001075);\n }\n 100% {\n transform: translate(139.784999px, 140.086986px) scale(1.001075, 1.001075);\n }\n"]))),na=(0,Y.F4)(Zo||(Zo=Nt(["\n0% {\n opacity: 0;\n }\n 30% {\n opacity: 0;\n }\n 36.666667% {\n opacity: 0;\n }\n 40% {\n opacity: 1;\n }\n 100% {\n opacity: 1;\n }\n"],["\n0% {\n opacity: 0;\n }\n 30% {\n opacity: 0;\n }\n 36.666667% {\n opacity: 0;\n }\n 40% {\n opacity: 1;\n }\n 100% {\n opacity: 1;\n }\n"]))),ra=(0,Y.F4)(Bo||(Bo=Nt(["0% {\n transform: translate(139.785004px, 140.086979px) rotate(0deg);\n }\n 10% {\n transform: translate(139.785004px, 140.086979px) rotate(0deg);\n }\n 20% {\n transform: translate(139.785004px, 140.086979px) rotate(90.041277deg);\n }\n 100% {\n transform: translate(139.785004px, 140.086979px) rotate(90.041277deg);\n }"],["0% {\n transform: translate(139.785004px, 140.086979px) rotate(0deg);\n }\n 10% {\n transform: translate(139.785004px, 140.086979px) rotate(0deg);\n }\n 20% {\n transform: translate(139.785004px, 140.086979px) rotate(90.041277deg);\n }\n 100% {\n transform: translate(139.785004px, 140.086979px) rotate(90.041277deg);\n }"]))),oa=(0,Y.F4)(zo||(zo=Nt(["\n0% {\n opacity: 0;\n }\n 6.666667% {\n opacity: 0;\n }\n 10% {\n opacity: 1;\n }\n 13.333333% {\n opacity: 1;\n }\n 20% {\n opacity: 0;\n }\n 100% {\n opacity: 0;\n }\n"],["\n0% {\n opacity: 0;\n }\n 6.666667% {\n opacity: 0;\n }\n 10% {\n opacity: 1;\n }\n 13.333333% {\n opacity: 1;\n }\n 20% {\n opacity: 0;\n }\n 100% {\n opacity: 0;\n }\n"]))),aa=Y.ZP.svg({width:40,height:40},(0,Y.iv)(Fo||(Fo=Nt(["\n path {\n fill: ",";\n }\n #section1 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section2 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section3 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section4 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section5 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section6 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section7 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section8 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section9 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section10 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section11 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n "],["\n path {\n fill: ",";\n }\n #section1 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section2 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section3 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section4 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section5 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section6 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section7 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section8 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section9 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section10 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section11 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n "])),(function(e){return Rr(e,"theme.loaderColor","#113053")}),$o,Ko,Yo,Xo,Qo,Jo,ea,ta,na,ra,oa)),ia=function(e){return K.createElement(aa,Ot({viewBox:"0 0 280 280",shapeRendering:"geometricPrecision",textRendering:"geometricPrecision",className:"min-loader"},e),K.createElement("g",{id:"section1",transform:"translate(139.785027,140.086989) rotate(45.236493)"},K.createElement("g",{id:"section2",transform:"scale(1,0.995019)"},K.createElement("g",{id:"section3",transform:"translate(-127.784998,-128.086989)"},K.createElement("g",null,K.createElement("path",{id:"section4",d:"M85.4,249.8c23.68,5.5,48.32,7.57,72.25,2.34c24-5.25,45.3-18.59,61.62-36.79c8.57-9.56-5.53-23.75-14.14-14.14-14.23,15.89-31.86,27.05-52.79,31.65-20.31,4.46-41.55,2.33-61.61-2.34-12.54-2.91-17.88,16.36-5.33,19.28c0,0,0,0,0,0Z"})),K.createElement("g",null,K.createElement("path",{id:"section5",d:"M249.74,169.63c5.5-23.68,7.57-48.32,2.34-72.25-5.25-24-18.59-45.3-36.79-61.62-9.56-8.57-23.75,5.53-14.14,14.14c15.89,14.23,27.05,31.86,31.65,52.79c4.46,20.31,2.33,41.55-2.34,61.61-2.92,12.54,16.36,17.88,19.28,5.33c0,0,0,0,0,0Z"})),K.createElement("g",null,K.createElement("path",{id:"section6",d:"M171.68,7.71c-23.51-6.2-48.07-8.99-72.15-4.46C75.39,7.79,53.7,20.49,36.85,38.21c-8.84,9.31,4.83,23.9,13.72,14.55c14.7-15.46,32.65-26.1,53.7-30.08c20.43-3.86,41.6-1.1,61.52,4.15c12.43,3.28,18.35-15.83,5.89-19.12c0,0,0,0,0,0Z"})),K.createElement("g",null,K.createElement("path",{id:"section7",d:"M5.83,85.46c-5.5,23.68-7.57,48.32-2.34,72.25c5.25,24,18.59,45.3,36.79,61.62c9.56,8.57,23.75-5.53,14.14-14.14-15.89-14.23-27.05-31.86-31.65-52.79-4.46-20.31-2.33-41.55,2.34-61.61C28.03,78.25,8.75,72.91,5.83,85.46v0Z",transform:"translate(.194904 0.217549)"}))))),K.createElement("g",{id:"section8",transform:"translate(139.784999,140.086986) scale(1,1)"},K.createElement("g",{id:"section9",transform:"translate(-127.999996,-128.000003)",opacity:"0"},K.createElement("path",{d:"M234.23,128c0-58.67-47.56-106.23-106.23-106.23s-106.23,47.56-106.23,106.23s47.56,106.23,106.23,106.23c58.64-.06,106.17-47.59,106.23-106.23m21.25,0c0,70.4-57.07,127.48-127.48,127.48s-127.48-57.08-127.48-127.48s57.08-127.48,127.48-127.48s127.48,57.08,127.48,127.48Z"}))),K.createElement("g",{id:"section10",transform:"translate(139.785004,140.086979) rotate(0)"},K.createElement("g",{id:"section11",transform:"translate(-127.999968,-127.995139)",opacity:"0"},K.createElement("path",{d:"M128,0.47h.33c.36,0,.73,0,1.09.01h.17c5.45.09,9.79,4.57,9.73,10.02-.07,5.51-4.57,9.93-10.07,9.91h-1.24c-5.51-.04-9.96-4.51-9.96-10.02-.01-5.45,4.39-9.88,9.84-9.91h.11ZM245.62,118.39h.03c5.45.01,9.86,4.42,9.88,9.87c0,.04,0,.08,0,.12v0c0,.12,0,.24,0,.36v0c0,.01,0,.03,0,.04v.09c0,.37,0,.73-.01,1.09-.11,5.45-4.6,9.78-10.05,9.7-5.51-.08-9.92-4.6-9.88-10.1l.01-1.24c.06-5.49,4.52-9.92,10.02-9.93ZM126.01,235.58h.12l1.24.01c5.51.07,9.93,4.57,9.9,10.08-.04,5.48-4.51,9.89-9.99,9.85-.01,0-.02,0-.03,0h-.46-.19l-.82-.01h-.12c-5.45-.12-9.77-4.63-9.67-10.07.09-5.47,4.55-9.85,10.02-9.86ZM10.4,115.63h.2c5.51.12,9.89,4.65,9.82,10.16l-.02,1.24c-.09,5.5-4.59,9.91-10.1,9.88-5.45-.04-9.85-4.47-9.83-9.93c0-.04,0-.08,0-.12v0c0-.36,0-.73.01-1.09v-.09v0c0-.13,0-.27.01-.41.14-5.37,4.54-9.64,9.91-9.64Z"}))))},sa=Y.ZP.div((function(e){var t,n=e.theme;return(t={display:"flex",flexDirection:"row",width:"100%",minHeight:83,backgroundColor:Rr(n,"pageHeader.background","#fff"),left:0,borderBottom:"1px solid ".concat(Rr(n,"pageHeader.border","#E5E5E5")),flexWrap:"wrap",justifyContent:"space-between",alignItems:"center"})["@media (max-width: ".concat(Rr(Q,"md",0),"px)")]={"& > div":{margin:"4px 0",padding:"0 20px,"}},t})),la=Y.ZP.div((function(e){var t=e.theme;return{color:Rr(t,"pageHeader.color","#000"),fontSize:18,fontWeight:700,paddingLeft:20,display:"flex",flexGrow:1,marginRight:10,"& a":{color:Rr(t,"pageHeader.color","#000"),textDecoration:"none"}}})),ca=Y.ZP.div((function(){return{display:"flex",justifyContent:"center",alignItems:"center",flexGrow:1,margin:"0 10px"}})),ua=Y.ZP.div((function(){return{display:"flex",justifyContent:"flex-end",paddingRight:20,flexGrow:1,marginLeft:10,"& button":{marginLeft:8}}})),da=function(e){var t=e.label,n=e.middleComponent,r=e.actions;return K.createElement(sa,{className:"page-header"},K.createElement(bo,{item:!0,xs:12,sm:12,md:n?4:6},K.createElement(la,null,t)),n&&K.createElement(bo,{item:!0,xs:12,sm:12,md:4},K.createElement(ca,null,n)),K.createElement(bo,{item:!0,xs:12,sm:12,md:n?4:6},K.createElement(ua,null,r)))},pa=(0,Y.F4)(Uo||(Uo=Nt(["\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n"],["\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n"]))),fa=Y.ZP.span({display:"inline-flex",position:"relative"},(0,Y.iv)(jo||(jo=Nt(["\n &:hover {\n & .tooltipElement {\n display: block;\n animation: "," 1s;\n }\n }\n "],["\n &:hover {\n & .tooltipElement {\n display: block;\n animation: "," 1s;\n }\n }\n "])),pa)),ma=Y.ZP.div((function(e){var t=e.theme,n=e.placement,r="6px",o=Rr(t,"tooltip.background","#737373"),a=Rr(t,"tooltip.color","#FFFFFF"),i={},s={content:"' '",left:"50%",border:"solid transparent",height:0,width:0,position:"absolute",pointerEvents:"none",borderWidth:r,marginLeft:"calc(".concat(r," * -1);")};switch(n){case"top":i={transform:"translateX(-50%) translateY(-50%)","&::before":Ot(Ot({},s),{top:"100%",borderTopColor:o})};break;case"right":i={transform:"translateX(0) translateY(-50%)","&::before":Ot(Ot({},s),{left:"calc(".concat(r," * -1)"),top:"50%",transform:"translateX(0) translateY(-50%)",borderRightColor:o})};break;case"left":i={transform:"translateX(-100%) translateY(-50%)","&::before":Ot(Ot({},s),{left:"auto",right:"calc(".concat(r," * -2)"),top:"50%",transform:"translateX(0) translateY(-50%)",borderLeftColor:o})};break;default:i={transform:"translateX(-50%)","&::before":Ot(Ot({},s),{bottom:"100%",borderBottomColor:o})}}return Ot({position:"fixed",borderRadius:4,color:a,background:o,lineHeight:1,zIndex:10001,padding:8,fontSize:12,boxShadow:"#00000050 0px 3px 10px",maxWidth:350},i)})),ha=function(e){var t=e.placement,n=e.content,r=e.anchorEl,o={},a=t;if(r){var i=r.getBoundingClientRect(),s=document.documentElement.offsetWidth,l=document.documentElement.offsetHeight;switch(t){case"bottom":i.top+i.height+45>l&&(a="top");break;case"left":i.left-175<0&&(a="right");break;case"right":i.left+i.width+175>s&&(a="left");break;case"top":i.top<45&&(a="bottom")}switch(a){case"bottom":o={top:i.top+i.height+10,left:i.left+i.width/2};break;case"left":o={top:i.top+i.height/2,left:i.left-12};break;case"right":o={top:i.top+i.height/2,left:i.left+i.width+12};break;case"top":o={top:i.top-i.height/2-10,left:i.left+i.width/2}}}return K.createElement(ma,{placement:a,style:o},n)},ga=function(e){var t=e.children,n=e.tooltip,r=e.errorProps,o=e.placement,a=void 0===o?"bottom":o,i=(0,K.useState)(null),s=i[0],l=i[1],c=(0,K.useState)(!1),u=c[0],d=c[1];return""===n?K.createElement(K.Fragment,null,r?(0,K.cloneElement)(t,Ot({},r)):t):K.createElement(K.Fragment,null,K.createElement(fa,{onPointerEnter:function(e){l(e.currentTarget),d(!0)},onPointerLeave:function(){d(!1)}},r?(0,K.cloneElement)(t,Ot({},r)):t,u&&(0,X.createPortal)(K.createElement(ha,{placement:a,content:n,anchorEl:s}),document.body)))},va=Y.ZP.label((function(e){var t=e.theme,n=e.sx;return Ot({fontWeight:600,marginRight:10,fontSize:14,color:Rr(t,"commonInput.labelColor","#07193E"),textAlign:"left",alignItems:"center",display:"flex",userSelect:"none",whiteSpace:"nowrap","& > span":{display:"flex",alignItems:"center",minWidth:160,"&.noMinWidthLabel":{minWidth:"initial"}}},n)})),ba=function(e){var t=e.children,n=e.sx,r=e.noMinWidth,o=e.htmlFor,a=Rt(e,["children","sx","noMinWidth","htmlFor"]);return K.createElement(va,Ot({sx:n,htmlFor:o},a),K.createElement("span",{className:"".concat(r?"noMinWidthLabel":"")},t))},ya=Y.ZP.div((function(e){var t,n=e.sx;return Ot(((t={position:"relative",display:"flex",flexWrap:"wrap",width:"100%",flexBasis:"100%"})["@media (max-width: ".concat(Q.sm,")")]={flexFlow:"column"},t["& .tooltipContainer"]={marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},t),n)})),Ea=function(e){var t=e.children,n=e.sx,r=e.className;return K.createElement(ya,{sx:n,className:r},t)},Sa=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("defs",null,K.createElement("clipPath",{id:"prefix__a"},K.createElement("path",{d:"M0 0h256v256H0z"}))),K.createElement("g",{clipPath:"url(#prefix__a)"},K.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),K.createElement("path",{"data-name":"Uni\\xF3n 30",d:"M.002 128.002a128 128 0 0 1 128-128 128 128 0 0 1 128 128 128 128 0 0 1-128 128 127.993 127.993 0 0 1-128-128Zm25 0a103.115 103.115 0 0 0 103 103 103.116 103.116 0 0 0 103-103 103.117 103.117 0 0 0-103-103A103.116 103.116 0 0 0 25 128.002Zm75.211 58.614c0-10.971 9.48-20.238 20.342-20.238a20.541 20.541 0 0 1 20.133 20.133c0 10.966-9.377 20.447-20.133 20.447-10.864 0-20.344-9.481-20.344-20.342Zm7.457-33.227v-36.213h10.223c20.557 0 31.633-6.495 31.633-18.956 0-11.5-10.971-17.675-31.312-17.675-5.748 0-11.715.423-16.186.846l-2.023-28.008a165.912 165.912 0 0 1 21.508-1.386c37.17 0 58.684 17.147 58.684 44.094 0 24.6-16.4 40.365-46.008 45.051l-.852 12.247Z"}),K.createElement("path",{"data-name":"Rect\\xE1ngulo 917",fill:"none",d:"M0 0h256v256H0z"})))},wa=Y.ZP.label((function(e){var t=e.sx,n=e.theme;return Ot({"& input":{display:"none"},"& .checkbox":{position:"relative",display:"block",width:16,height:16,borderRadius:2,border:"1px solid ".concat(Rr(n,"checkbox.checkBoxBorder","#c3c3c3")),boxShadow:"inset 0px 1px 3px rgba(0,0,0,0.1)"},"input:checked ~ .checkbox":{"&:before":{content:"' '",position:"absolute",display:"block",width:12,height:12,backgroundColor:Rr(n,"checkbox.checkBoxColor","#4CCB92"),borderRadius:1,top:"50%",left:"50%",transform:"translateX(-50%) translateY(-50%)"}},"input:disabled":{"& ~ .checkbox":{border:"1px solid ".concat(Rr(n,"checkbox.disabledBorder","#B4B4B4"))},"&:checked ~ .checkbox":{"&:before":{backgroundColor:Rr(n,"checkbox.disabledColor","#D5D7D7")}}}},t)})),_a=function(e){var t=e.tooltip,n=e.label,r=e.id,o=e.overrideLabelClasses,a=e.sx,i=e.className,s=Rt(e,["tooltip","label","id","overrideLabelClasses","sx","className"]);return K.createElement(Ea,{className:"inputItem ".concat(i||""),sx:{display:"flex",justifyContent:"flex-start",alignItems:"center",flexBasis:"initial",flexWrap:"nowrap"}},K.createElement(wa,{sx:a,onClick:function(e){return e.stopPropagation()}},K.createElement("input",Ot({type:"checkbox",id:r},s)),K.createElement("span",{className:"checkbox"})),""!==n&&K.createElement(ba,{htmlFor:r,noMinWidth:!0,className:"".concat(o||""),sx:{marginLeft:10}},n,t&&""!==t&&K.createElement("div",{className:"tooltipContainer"},K.createElement(ga,{tooltip:t,placement:"top"},K.createElement(Sa,null)))))},Ta=Y.ZP.button((function(e){var t=e.theme,n=e.size,r=30;if(n&&"string"==typeof n)switch(n){case"small":r=28;break;case"medium":r=30;break;case"large":r=48;break;default:r=n}return{width:r,height:r,display:"flex",justifyContent:"center",alignItems:"center",borderRadius:"100%",border:0,position:"relative",cursor:"pointer",transitionDuration:"0.2s",backgroundColor:Rr(t,"iconButton.buttonBG","#000"),"& svg":{fill:Rr(t,"iconButton.color","#000"),margin:"calc(25% - 2px)"},"&:hover:not(:disabled)":{backgroundColor:Rr(t,"iconButton.hoverBG","#000")},"&:active:not(:disabled)":{backgroundColor:Rr(t,"iconButton.activeBG","#000")},"&:disabled":{cursor:"not-allowed",backgroundColor:Rr(t,"iconButton.disabledBG","#000")}}})),xa=function(e){var t=e.children,n=Rt(e,["children"]);return K.createElement(Ta,Ot({},n),t)};function Ca(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Aa(e){return Aa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Aa(e)}function ka(e){var t=function(e,t){if("object"!==Aa(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==Aa(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Aa(t)?t:String(t)}function Ia(e,t){for(var n=0;n=0&&l===s&&c())}function Va(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}function Wa(e,t){if(null==e)return{};var n,r,o=Va(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}Za.__suppressDeprecationWarning=!0,Ba.__suppressDeprecationWarning=!0,za.__suppressDeprecationWarning=!0;var qa,$a,Ka,Ya,Xa={exports:{}};Xa.exports=function(){if(Ya)return Ka;Ya=1;var e=$a?qa:($a=1,qa="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED");function t(){}function n(){}return n.resetWarningCache=t,Ka=function(){function r(t,n,r,o,a,i){if(i!==e){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function o(){return r}r.isRequired=r;var a={array:r,bigint:r,bool:r,func:r,number:r,object:r,string:r,symbol:r,any:r,arrayOf:o,element:r,elementType:r,instanceOf:o,node:r,objectOf:o,oneOf:o,oneOfType:o,shape:o,exact:o,checkPropTypes:n,resetWarningCache:t};return a.PropTypes=a,a}}()();Lt(Xa.exports);var Qa=function(){function e(t){var n=t.cellCount,r=t.cellSizeGetter,o=t.estimatedCellSize;Ca(this,e),Da(this,"_cellSizeAndPositionData",{}),Da(this,"_lastMeasuredIndex",-1),Da(this,"_lastBatchedIndex",-1),Da(this,"_cellCount",void 0),Da(this,"_cellSizeGetter",void 0),Da(this,"_estimatedCellSize",void 0),this._cellSizeGetter=r,this._cellCount=n,this._estimatedCellSize=o}return Oa(e,[{key:"areOffsetsAdjusted",value:function(){return!1}},{key:"configure",value:function(e){var t=e.cellCount,n=e.estimatedCellSize,r=e.cellSizeGetter;this._cellCount=t,this._estimatedCellSize=n,this._cellSizeGetter=r}},{key:"getCellCount",value:function(){return this._cellCount}},{key:"getEstimatedCellSize",value:function(){return this._estimatedCellSize}},{key:"getLastMeasuredIndex",value:function(){return this._lastMeasuredIndex}},{key:"getOffsetAdjustment",value:function(){return 0}},{key:"getSizeAndPositionOfCell",value:function(e){if(e<0||e>=this._cellCount)throw Error("Requested index ".concat(e," is outside of range 0..").concat(this._cellCount));if(e>this._lastMeasuredIndex)for(var t=this.getSizeAndPositionOfLastMeasuredCell(),n=t.offset+t.size,r=this._lastMeasuredIndex+1;r<=e;r++){var o=this._cellSizeGetter({index:r});if(void 0===o||isNaN(o))throw Error("Invalid size returned for cell ".concat(r," of value ").concat(o));null===o?(this._cellSizeAndPositionData[r]={offset:n,size:0},this._lastBatchedIndex=e):(this._cellSizeAndPositionData[r]={offset:n,size:o},n+=o,this._lastMeasuredIndex=e)}return this._cellSizeAndPositionData[e]}},{key:"getSizeAndPositionOfLastMeasuredCell",value:function(){return this._lastMeasuredIndex>=0?this._cellSizeAndPositionData[this._lastMeasuredIndex]:{offset:0,size:0}}},{key:"getTotalSize",value:function(){var e=this.getSizeAndPositionOfLastMeasuredCell();return e.offset+e.size+(this._cellCount-this._lastMeasuredIndex-1)*this._estimatedCellSize}},{key:"getUpdatedOffsetForIndex",value:function(e){var t=e.align,n=void 0===t?"auto":t,r=e.containerSize,o=e.currentOffset,a=e.targetIndex;if(r<=0)return 0;var i,s=this.getSizeAndPositionOfCell(a),l=s.offset,c=l-r+s.size;switch(n){case"start":i=l;break;case"end":i=c;break;case"center":i=l-(r-s.size)/2;break;default:i=Math.max(c,Math.min(l,o))}var u=this.getTotalSize();return Math.max(0,Math.min(u-r,i))}},{key:"getVisibleCellRange",value:function(e){var t=e.containerSize,n=e.offset;if(0===this.getTotalSize())return{};var r=n+t,o=this._findNearestCell(n),a=this.getSizeAndPositionOfCell(o);n=a.offset+a.size;for(var i=o;nn&&(e=r-1)}return t>0?t-1:0}},{key:"_exponentialSearch",value:function(e,t){for(var n=1;e=e?this._binarySearch(n,0,e):this._exponentialSearch(n,e)}}]),e}(),Ja=function(){function e(t){var n=t.maxScrollSize,r=void 0===n?"undefined"!=typeof window&&window.chrome?16777100:15e5:n,o=Wa(t,["maxScrollSize"]);Ca(this,e),Da(this,"_cellSizeAndPositionManager",void 0),Da(this,"_maxScrollSize",void 0),this._cellSizeAndPositionManager=new Qa(o),this._maxScrollSize=r}return Oa(e,[{key:"areOffsetsAdjusted",value:function(){return this._cellSizeAndPositionManager.getTotalSize()>this._maxScrollSize}},{key:"configure",value:function(e){this._cellSizeAndPositionManager.configure(e)}},{key:"getCellCount",value:function(){return this._cellSizeAndPositionManager.getCellCount()}},{key:"getEstimatedCellSize",value:function(){return this._cellSizeAndPositionManager.getEstimatedCellSize()}},{key:"getLastMeasuredIndex",value:function(){return this._cellSizeAndPositionManager.getLastMeasuredIndex()}},{key:"getOffsetAdjustment",value:function(e){var t=e.containerSize,n=e.offset,r=this._cellSizeAndPositionManager.getTotalSize(),o=this.getTotalSize(),a=this._getOffsetPercentage({containerSize:t,offset:n,totalSize:o});return Math.round(a*(o-r))}},{key:"getSizeAndPositionOfCell",value:function(e){return this._cellSizeAndPositionManager.getSizeAndPositionOfCell(e)}},{key:"getSizeAndPositionOfLastMeasuredCell",value:function(){return this._cellSizeAndPositionManager.getSizeAndPositionOfLastMeasuredCell()}},{key:"getTotalSize",value:function(){return Math.min(this._maxScrollSize,this._cellSizeAndPositionManager.getTotalSize())}},{key:"getUpdatedOffsetForIndex",value:function(e){var t=e.align,n=void 0===t?"auto":t,r=e.containerSize,o=e.currentOffset,a=e.targetIndex;o=this._safeOffsetToOffset({containerSize:r,offset:o});var i=this._cellSizeAndPositionManager.getUpdatedOffsetForIndex({align:n,containerSize:r,currentOffset:o,targetIndex:a});return this._offsetToSafeOffset({containerSize:r,offset:i})}},{key:"getVisibleCellRange",value:function(e){var t=e.containerSize,n=e.offset;return n=this._safeOffsetToOffset({containerSize:t,offset:n}),this._cellSizeAndPositionManager.getVisibleCellRange({containerSize:t,offset:n})}},{key:"resetCell",value:function(e){this._cellSizeAndPositionManager.resetCell(e)}},{key:"_getOffsetPercentage",value:function(e){var t=e.containerSize,n=e.offset,r=e.totalSize;return r<=t?0:n/(r-t)}},{key:"_offsetToSafeOffset",value:function(e){var t=e.containerSize,n=e.offset,r=this._cellSizeAndPositionManager.getTotalSize(),o=this.getTotalSize();if(r===o)return n;var a=this._getOffsetPercentage({containerSize:t,offset:n,totalSize:r});return Math.round(a*(o-t))}},{key:"_safeOffsetToOffset",value:function(e){var t=e.containerSize,n=e.offset,r=this._cellSizeAndPositionManager.getTotalSize(),o=this.getTotalSize();if(r===o)return n;var a=this._getOffsetPercentage({containerSize:t,offset:n,totalSize:o});return Math.round(a*(r-t))}}]),e}();function ei(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t={};return function(n){var r=n.callback,o=n.indices,a=Object.keys(o),i=!e||a.every((function(e){var t=o[e];return Array.isArray(t)?t.length>0:t>=0})),s=a.length!==Object.keys(t).length||a.some((function(e){var n=t[e],r=o[e];return Array.isArray(r)?n.join(",")!==r.join(","):n!==r}));t=o,i&&s&&r(o)}}function ti(e){var t=e.cellSize,n=e.cellSizeAndPositionManager,r=e.previousCellsCount,o=e.previousCellSize,a=e.previousScrollToAlignment,i=e.previousScrollToIndex,s=e.previousSize,l=e.scrollOffset,c=e.scrollToAlignment,u=e.scrollToIndex,d=e.size,p=e.sizeJustIncreasedFromZero,f=e.updateScrollIndexCallback,m=n.getCellCount(),h=u>=0&&u0&&(dn.getTotalSize()-d&&f(m-1)}var ni,ri,oi=!("undefined"==typeof window||!window.document||!window.document.createElement);function ai(e){if((!ni&&0!==ni||e)&&oi){var t=document.createElement("div");t.style.position="absolute",t.style.top="-9999px",t.style.width="50px",t.style.height="50px",t.style.overflow="scroll",document.body.appendChild(t),ni=t.offsetWidth-t.clientWidth,document.body.removeChild(t)}return ni}var ii,si,li=(ri="undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).requestAnimationFrame||ri.webkitRequestAnimationFrame||ri.mozRequestAnimationFrame||ri.oRequestAnimationFrame||ri.msRequestAnimationFrame||function(e){return ri.setTimeout(e,1e3/60)},ci=ri.cancelAnimationFrame||ri.webkitCancelAnimationFrame||ri.mozCancelAnimationFrame||ri.oCancelAnimationFrame||ri.msCancelAnimationFrame||function(e){ri.clearTimeout(e)},ui=li,di=ci,pi=function(e){return di(e.id)},fi=function(e,t){var n;Promise.resolve().then((function(){n=Date.now()}));var r={id:ui((function o(){Date.now()-n>=t?e.call():r.id=ui(o)}))};return r};function mi(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function hi(e){for(var t=1;t0&&(n._initialScrollTop=n._getCalculatedScrollTop(e,n.state)),e.scrollToColumn>0&&(n._initialScrollLeft=n._getCalculatedScrollLeft(e,n.state)),n}return Pa(t,K.PureComponent),Oa(t,[{key:"getOffsetForCell",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.alignment,n=void 0===t?this.props.scrollToAlignment:t,r=e.columnIndex,o=void 0===r?this.props.scrollToColumn:r,a=e.rowIndex,i=void 0===a?this.props.scrollToRow:a,s=hi({},this.props,{scrollToAlignment:n,scrollToColumn:o,scrollToRow:i});return{scrollLeft:this._getCalculatedScrollLeft(s),scrollTop:this._getCalculatedScrollTop(s)}}},{key:"getTotalRowsHeight",value:function(){return this.state.instanceProps.rowSizeAndPositionManager.getTotalSize()}},{key:"getTotalColumnsWidth",value:function(){return this.state.instanceProps.columnSizeAndPositionManager.getTotalSize()}},{key:"handleScrollEvent",value:function(e){var t=e.scrollLeft,n=void 0===t?0:t,r=e.scrollTop,o=void 0===r?0:r;if(!(o<0)){this._debounceScrollEnded();var a=this.props,i=a.autoHeight,s=a.autoWidth,l=a.height,c=a.width,u=this.state.instanceProps,d=u.scrollbarSize,p=u.rowSizeAndPositionManager.getTotalSize(),f=u.columnSizeAndPositionManager.getTotalSize(),m=Math.min(Math.max(0,f-c+d),n),h=Math.min(Math.max(0,p-l+d),o);if(this.state.scrollLeft!==m||this.state.scrollTop!==h){var g={isScrolling:!0,scrollDirectionHorizontal:m!==this.state.scrollLeft?m>this.state.scrollLeft?1:-1:this.state.scrollDirectionHorizontal,scrollDirectionVertical:h!==this.state.scrollTop?h>this.state.scrollTop?1:-1:this.state.scrollDirectionVertical,scrollPositionChangeReason:"observed"};i||(g.scrollTop=h),s||(g.scrollLeft=m),g.needToResetStyleCache=!1,this.setState(g)}this._invokeOnScrollMemoizer({scrollLeft:m,scrollTop:h,totalColumnsWidth:f,totalRowsHeight:p})}}},{key:"invalidateCellSizeAfterRender",value:function(e){var t=e.columnIndex,n=e.rowIndex;this._deferredInvalidateColumnIndex="number"==typeof this._deferredInvalidateColumnIndex?Math.min(this._deferredInvalidateColumnIndex,t):t,this._deferredInvalidateRowIndex="number"==typeof this._deferredInvalidateRowIndex?Math.min(this._deferredInvalidateRowIndex,n):n}},{key:"measureAllCells",value:function(){var e=this.props,t=e.columnCount,n=e.rowCount,r=this.state.instanceProps;r.columnSizeAndPositionManager.getSizeAndPositionOfCell(t-1),r.rowSizeAndPositionManager.getSizeAndPositionOfCell(n-1)}},{key:"recomputeGridSize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.columnIndex,n=void 0===t?0:t,r=e.rowIndex,o=void 0===r?0:r,a=this.props,i=a.scrollToColumn,s=a.scrollToRow,l=this.state.instanceProps;l.columnSizeAndPositionManager.resetCell(n),l.rowSizeAndPositionManager.resetCell(o),this._recomputeScrollLeftFlag=i>=0&&(1===this.state.scrollDirectionHorizontal?n<=i:n>=i),this._recomputeScrollTopFlag=s>=0&&(1===this.state.scrollDirectionVertical?o<=s:o>=s),this._styleCache={},this._cellCache={},this.forceUpdate()}},{key:"scrollToCell",value:function(e){var t=e.columnIndex,n=e.rowIndex,r=this.props.columnCount,o=this.props;r>1&&void 0!==t&&this._updateScrollLeftForScrollToColumn(hi({},o,{scrollToColumn:t})),void 0!==n&&this._updateScrollTopForScrollToRow(hi({},o,{scrollToRow:n}))}},{key:"componentDidMount",value:function(){var e=this.props,n=e.getScrollbarSize,r=e.height,o=e.scrollLeft,a=e.scrollToColumn,i=e.scrollTop,s=e.scrollToRow,l=e.width,c=this.state.instanceProps;if(this._initialScrollTop=0,this._initialScrollLeft=0,this._handleInvalidatedGridSize(),c.scrollbarSizeMeasured||this.setState((function(e){var t=hi({},e,{needToResetStyleCache:!1});return t.instanceProps.scrollbarSize=n(),t.instanceProps.scrollbarSizeMeasured=!0,t})),"number"==typeof o&&o>=0||"number"==typeof i&&i>=0){var u=t._getScrollToPositionStateUpdate({prevState:this.state,scrollLeft:o,scrollTop:i});u&&(u.needToResetStyleCache=!1,this.setState(u))}this._scrollingContainer&&(this._scrollingContainer.scrollLeft!==this.state.scrollLeft&&(this._scrollingContainer.scrollLeft=this.state.scrollLeft),this._scrollingContainer.scrollTop!==this.state.scrollTop&&(this._scrollingContainer.scrollTop=this.state.scrollTop));var d=r>0&&l>0;a>=0&&d&&this._updateScrollLeftForScrollToColumn(),s>=0&&d&&this._updateScrollTopForScrollToRow(),this._invokeOnGridRenderedHelper(),this._invokeOnScrollMemoizer({scrollLeft:o||0,scrollTop:i||0,totalColumnsWidth:c.columnSizeAndPositionManager.getTotalSize(),totalRowsHeight:c.rowSizeAndPositionManager.getTotalSize()}),this._maybeCallOnScrollbarPresenceChange()}},{key:"componentDidUpdate",value:function(e,t){var n=this,r=this.props,o=r.autoHeight,a=r.autoWidth,i=r.columnCount,s=r.height,l=r.rowCount,c=r.scrollToAlignment,u=r.scrollToColumn,d=r.scrollToRow,p=r.width,f=this.state,m=f.scrollLeft,h=f.scrollPositionChangeReason,g=f.scrollTop,v=f.instanceProps;this._handleInvalidatedGridSize();var b=i>0&&0===e.columnCount||l>0&&0===e.rowCount;h===bi&&(!a&&m>=0&&(m!==this._scrollingContainer.scrollLeft||b)&&(this._scrollingContainer.scrollLeft=m),!o&&g>=0&&(g!==this._scrollingContainer.scrollTop||b)&&(this._scrollingContainer.scrollTop=g));var y=(0===e.width||0===e.height)&&s>0&&p>0;if(this._recomputeScrollLeftFlag?(this._recomputeScrollLeftFlag=!1,this._updateScrollLeftForScrollToColumn(this.props)):ti({cellSizeAndPositionManager:v.columnSizeAndPositionManager,previousCellsCount:e.columnCount,previousCellSize:e.columnWidth,previousScrollToAlignment:e.scrollToAlignment,previousScrollToIndex:e.scrollToColumn,previousSize:e.width,scrollOffset:m,scrollToAlignment:c,scrollToIndex:u,size:p,sizeJustIncreasedFromZero:y,updateScrollIndexCallback:function(){return n._updateScrollLeftForScrollToColumn(n.props)}}),this._recomputeScrollTopFlag?(this._recomputeScrollTopFlag=!1,this._updateScrollTopForScrollToRow(this.props)):ti({cellSizeAndPositionManager:v.rowSizeAndPositionManager,previousCellsCount:e.rowCount,previousCellSize:e.rowHeight,previousScrollToAlignment:e.scrollToAlignment,previousScrollToIndex:e.scrollToRow,previousSize:e.height,scrollOffset:g,scrollToAlignment:c,scrollToIndex:d,size:s,sizeJustIncreasedFromZero:y,updateScrollIndexCallback:function(){return n._updateScrollTopForScrollToRow(n.props)}}),this._invokeOnGridRenderedHelper(),m!==t.scrollLeft||g!==t.scrollTop){var E=v.rowSizeAndPositionManager.getTotalSize(),S=v.columnSizeAndPositionManager.getTotalSize();this._invokeOnScrollMemoizer({scrollLeft:m,scrollTop:g,totalColumnsWidth:S,totalRowsHeight:E})}this._maybeCallOnScrollbarPresenceChange()}},{key:"componentWillUnmount",value:function(){this._disablePointerEventsTimeoutId&&pi(this._disablePointerEventsTimeoutId)}},{key:"render",value:function(){var e=this.props,t=e.autoContainerWidth,n=e.autoHeight,r=e.autoWidth,o=e.className,a=e.containerProps,i=e.containerRole,s=e.containerStyle,l=e.height,c=e.id,u=e.noContentRenderer,d=e.role,p=e.style,f=e.tabIndex,m=e.width,h=this.state,g=h.instanceProps,v=h.needToResetStyleCache,b=this._isScrolling(),y={boxSizing:"border-box",direction:"ltr",height:n?"auto":l,position:"relative",width:r?"auto":m,WebkitOverflowScrolling:"touch",willChange:"transform"};v&&(this._styleCache={}),this.state.isScrolling||this._resetStyleCache(),this._calculateChildrenToRender(this.props,this.state);var E=g.columnSizeAndPositionManager.getTotalSize(),S=g.rowSizeAndPositionManager.getTotalSize(),w=S>l?g.scrollbarSize:0,_=E>m?g.scrollbarSize:0;_===this._horizontalScrollBarSize&&w===this._verticalScrollBarSize||(this._horizontalScrollBarSize=_,this._verticalScrollBarSize=w,this._scrollbarPresenceChanged=!0),y.overflowX=E+w<=m?"hidden":"auto",y.overflowY=S+_<=l?"hidden":"auto";var T=this._childrenToDisplay,x=0===T.length&&l>0&&m>0;return K.createElement("div",Ua({ref:this._setScrollingContainerRef},a,{"aria-label":this.props["aria-label"],"aria-readonly":this.props["aria-readonly"],className:Ha("ReactVirtualized__Grid",o),id:c,onScroll:this._onScroll,role:d,style:hi({},y,{},p),tabIndex:f}),T.length>0&&K.createElement("div",{className:"ReactVirtualized__Grid__innerScrollContainer",role:i,style:hi({width:t?"auto":E,height:S,maxWidth:E,maxHeight:S,overflow:"hidden",pointerEvents:b?"none":"",position:"relative"},s)},T),x&&u())}},{key:"_calculateChildrenToRender",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state,n=e.cellRenderer,r=e.cellRangeRenderer,o=e.columnCount,a=e.deferredMeasurementCache,i=e.height,s=e.overscanColumnCount,l=e.overscanIndicesGetter,c=e.overscanRowCount,u=e.rowCount,d=e.width,p=e.isScrollingOptOut,f=t.scrollDirectionHorizontal,m=t.scrollDirectionVertical,h=t.instanceProps,g=this._initialScrollTop>0?this._initialScrollTop:t.scrollTop,v=this._initialScrollLeft>0?this._initialScrollLeft:t.scrollLeft,b=this._isScrolling(e,t);if(this._childrenToDisplay=[],i>0&&d>0){var y=h.columnSizeAndPositionManager.getVisibleCellRange({containerSize:d,offset:v}),E=h.rowSizeAndPositionManager.getVisibleCellRange({containerSize:i,offset:g}),S=h.columnSizeAndPositionManager.getOffsetAdjustment({containerSize:d,offset:v}),w=h.rowSizeAndPositionManager.getOffsetAdjustment({containerSize:i,offset:g});this._renderedColumnStartIndex=y.start,this._renderedColumnStopIndex=y.stop,this._renderedRowStartIndex=E.start,this._renderedRowStopIndex=E.stop;var _=l({direction:"horizontal",cellCount:o,overscanCellsCount:s,scrollDirection:f,startIndex:"number"==typeof y.start?y.start:0,stopIndex:"number"==typeof y.stop?y.stop:-1}),T=l({direction:"vertical",cellCount:u,overscanCellsCount:c,scrollDirection:m,startIndex:"number"==typeof E.start?E.start:0,stopIndex:"number"==typeof E.stop?E.stop:-1}),x=_.overscanStartIndex,C=_.overscanStopIndex,A=T.overscanStartIndex,k=T.overscanStopIndex;if(a){if(!a.hasFixedHeight())for(var I=A;I<=k;I++)if(!a.has(I,0)){x=0,C=o-1;break}if(!a.hasFixedWidth())for(var O=x;O<=C;O++)if(!a.has(0,O)){A=0,k=u-1;break}}this._childrenToDisplay=r({cellCache:this._cellCache,cellRenderer:n,columnSizeAndPositionManager:h.columnSizeAndPositionManager,columnStartIndex:x,columnStopIndex:C,deferredMeasurementCache:a,horizontalOffsetAdjustment:S,isScrolling:b,isScrollingOptOut:p,parent:this,rowSizeAndPositionManager:h.rowSizeAndPositionManager,rowStartIndex:A,rowStopIndex:k,scrollLeft:v,scrollTop:g,styleCache:this._styleCache,verticalOffsetAdjustment:w,visibleColumnIndices:y,visibleRowIndices:E}),this._columnStartIndex=x,this._columnStopIndex=C,this._rowStartIndex=A,this._rowStopIndex=k}}},{key:"_debounceScrollEnded",value:function(){var e=this.props.scrollingResetTimeInterval;this._disablePointerEventsTimeoutId&&pi(this._disablePointerEventsTimeoutId),this._disablePointerEventsTimeoutId=fi(this._debounceScrollEndedCallback,e)}},{key:"_handleInvalidatedGridSize",value:function(){if("number"==typeof this._deferredInvalidateColumnIndex&&"number"==typeof this._deferredInvalidateRowIndex){var e=this._deferredInvalidateColumnIndex,t=this._deferredInvalidateRowIndex;this._deferredInvalidateColumnIndex=null,this._deferredInvalidateRowIndex=null,this.recomputeGridSize({columnIndex:e,rowIndex:t})}}},{key:"_invokeOnScrollMemoizer",value:function(e){var t=this,n=e.scrollLeft,r=e.scrollTop,o=e.totalColumnsWidth,a=e.totalRowsHeight;this._onScrollMemoizer({callback:function(e){var n=e.scrollLeft,r=e.scrollTop,i=t.props,s=i.height;(0,i.onScroll)({clientHeight:s,clientWidth:i.width,scrollHeight:a,scrollLeft:n,scrollTop:r,scrollWidth:o})},indices:{scrollLeft:n,scrollTop:r}})}},{key:"_isScrolling",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state;return Object.hasOwnProperty.call(e,"isScrolling")?Boolean(e.isScrolling):Boolean(t.isScrolling)}},{key:"_maybeCallOnScrollbarPresenceChange",value:function(){if(this._scrollbarPresenceChanged){var e=this.props.onScrollbarPresenceChange;this._scrollbarPresenceChanged=!1,e({horizontal:this._horizontalScrollBarSize>0,size:this.state.instanceProps.scrollbarSize,vertical:this._verticalScrollBarSize>0})}}},{key:"scrollToPosition",value:function(e){var n=e.scrollLeft,r=e.scrollTop,o=t._getScrollToPositionStateUpdate({prevState:this.state,scrollLeft:n,scrollTop:r});o&&(o.needToResetStyleCache=!1,this.setState(o))}},{key:"_getCalculatedScrollLeft",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state;return t._getCalculatedScrollLeft(e,n)}},{key:"_updateScrollLeftForScrollToColumn",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state,r=t._getScrollLeftForScrollToColumnStateUpdate(e,n);r&&(r.needToResetStyleCache=!1,this.setState(r))}},{key:"_getCalculatedScrollTop",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state;return t._getCalculatedScrollTop(e,n)}},{key:"_resetStyleCache",value:function(){var e=this._styleCache,t=this._cellCache,n=this.props.isScrollingOptOut;this._cellCache={},this._styleCache={};for(var r=this._rowStartIndex;r<=this._rowStopIndex;r++)for(var o=this._columnStartIndex;o<=this._columnStopIndex;o++){var a="".concat(r,"-").concat(o);this._styleCache[a]=e[a],n&&(this._cellCache[a]=t[a])}}},{key:"_updateScrollTopForScrollToRow",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state,r=t._getScrollTopForScrollToRowStateUpdate(e,n);r&&(r.needToResetStyleCache=!1,this.setState(r))}}],[{key:"getDerivedStateFromProps",value:function(e,n){var r={};0===e.columnCount&&0!==n.scrollLeft||0===e.rowCount&&0!==n.scrollTop?(r.scrollLeft=0,r.scrollTop=0):(e.scrollLeft!==n.scrollLeft&&e.scrollToColumn<0||e.scrollTop!==n.scrollTop&&e.scrollToRow<0)&&Object.assign(r,t._getScrollToPositionStateUpdate({prevState:n,scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}));var o,a,i=n.instanceProps;return r.needToResetStyleCache=!1,e.columnWidth===i.prevColumnWidth&&e.rowHeight===i.prevRowHeight||(r.needToResetStyleCache=!0),i.columnSizeAndPositionManager.configure({cellCount:e.columnCount,estimatedCellSize:t._getEstimatedColumnSize(e),cellSizeGetter:t._wrapSizeGetter(e.columnWidth)}),i.rowSizeAndPositionManager.configure({cellCount:e.rowCount,estimatedCellSize:t._getEstimatedRowSize(e),cellSizeGetter:t._wrapSizeGetter(e.rowHeight)}),0!==i.prevColumnCount&&0!==i.prevRowCount||(i.prevColumnCount=0,i.prevRowCount=0),e.autoHeight&&!1===e.isScrolling&&!0===i.prevIsScrolling&&Object.assign(r,{isScrolling:!1}),Ga({cellCount:i.prevColumnCount,cellSize:"number"==typeof i.prevColumnWidth?i.prevColumnWidth:null,computeMetadataCallback:function(){return i.columnSizeAndPositionManager.resetCell(0)},computeMetadataCallbackProps:e,nextCellsCount:e.columnCount,nextCellSize:"number"==typeof e.columnWidth?e.columnWidth:null,nextScrollToIndex:e.scrollToColumn,scrollToIndex:i.prevScrollToColumn,updateScrollOffsetForScrollToIndex:function(){o=t._getScrollLeftForScrollToColumnStateUpdate(e,n)}}),Ga({cellCount:i.prevRowCount,cellSize:"number"==typeof i.prevRowHeight?i.prevRowHeight:null,computeMetadataCallback:function(){return i.rowSizeAndPositionManager.resetCell(0)},computeMetadataCallbackProps:e,nextCellsCount:e.rowCount,nextCellSize:"number"==typeof e.rowHeight?e.rowHeight:null,nextScrollToIndex:e.scrollToRow,scrollToIndex:i.prevScrollToRow,updateScrollOffsetForScrollToIndex:function(){a=t._getScrollTopForScrollToRowStateUpdate(e,n)}}),i.prevColumnCount=e.columnCount,i.prevColumnWidth=e.columnWidth,i.prevIsScrolling=!0===e.isScrolling,i.prevRowCount=e.rowCount,i.prevRowHeight=e.rowHeight,i.prevScrollToColumn=e.scrollToColumn,i.prevScrollToRow=e.scrollToRow,i.scrollbarSize=e.getScrollbarSize(),void 0===i.scrollbarSize?(i.scrollbarSizeMeasured=!1,i.scrollbarSize=0):i.scrollbarSizeMeasured=!0,r.instanceProps=i,hi({},r,{},o,{},a)}},{key:"_getEstimatedColumnSize",value:function(e){return"number"==typeof e.columnWidth?e.columnWidth:e.estimatedColumnSize}},{key:"_getEstimatedRowSize",value:function(e){return"number"==typeof e.rowHeight?e.rowHeight:e.estimatedRowSize}},{key:"_getScrollToPositionStateUpdate",value:function(e){var t=e.prevState,n=e.scrollLeft,r=e.scrollTop,o={scrollPositionChangeReason:bi};return"number"==typeof n&&n>=0&&(o.scrollDirectionHorizontal=n>t.scrollLeft?1:-1,o.scrollLeft=n),"number"==typeof r&&r>=0&&(o.scrollDirectionVertical=r>t.scrollTop?1:-1,o.scrollTop=r),"number"==typeof n&&n>=0&&n!==t.scrollLeft||"number"==typeof r&&r>=0&&r!==t.scrollTop?o:{}}},{key:"_wrapSizeGetter",value:function(e){return"function"==typeof e?e:function(){return e}}},{key:"_getCalculatedScrollLeft",value:function(e,t){var n=e.columnCount,r=e.height,o=e.scrollToAlignment,a=e.scrollToColumn,i=e.width,s=t.scrollLeft,l=t.instanceProps;if(n>0){var c=n-1,u=a<0?c:Math.min(c,a),d=l.rowSizeAndPositionManager.getTotalSize(),p=l.scrollbarSizeMeasured&&d>r?l.scrollbarSize:0;return l.columnSizeAndPositionManager.getUpdatedOffsetForIndex({align:o,containerSize:i-p,currentOffset:s,targetIndex:u})}return 0}},{key:"_getScrollLeftForScrollToColumnStateUpdate",value:function(e,n){var r=n.scrollLeft,o=t._getCalculatedScrollLeft(e,n);return"number"==typeof o&&o>=0&&r!==o?t._getScrollToPositionStateUpdate({prevState:n,scrollLeft:o,scrollTop:-1}):{}}},{key:"_getCalculatedScrollTop",value:function(e,t){var n=e.height,r=e.rowCount,o=e.scrollToAlignment,a=e.scrollToRow,i=e.width,s=t.scrollTop,l=t.instanceProps;if(r>0){var c=r-1,u=a<0?c:Math.min(c,a),d=l.columnSizeAndPositionManager.getTotalSize(),p=l.scrollbarSizeMeasured&&d>i?l.scrollbarSize:0;return l.rowSizeAndPositionManager.getUpdatedOffsetForIndex({align:o,containerSize:n-p,currentOffset:s,targetIndex:u})}return 0}},{key:"_getScrollTopForScrollToRowStateUpdate",value:function(e,n){var r=n.scrollTop,o=t._getCalculatedScrollTop(e,n);return"number"==typeof o&&o>=0&&r!==o?t._getScrollToPositionStateUpdate({prevState:n,scrollLeft:-1,scrollTop:o}):{}}}]),t}(),Da(ii,"propTypes",null),si);function Ei(e){var t=e.cellCount,n=e.overscanCellsCount,r=e.scrollDirection,o=e.startIndex,a=e.stopIndex;return n=Math.max(1,n),1===r?{overscanStartIndex:Math.max(0,o-1),overscanStopIndex:Math.min(t-1,a+n)}:{overscanStartIndex:Math.max(0,o-n),overscanStopIndex:Math.min(t-1,a+1)}}function Si(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}Da(yi,"defaultProps",{"aria-label":"grid","aria-readonly":!0,autoContainerWidth:!1,autoHeight:!1,autoWidth:!1,cellRangeRenderer:function(e){for(var t=e.cellCache,n=e.cellRenderer,r=e.columnSizeAndPositionManager,o=e.columnStartIndex,a=e.columnStopIndex,i=e.deferredMeasurementCache,s=e.horizontalOffsetAdjustment,l=e.isScrolling,c=e.isScrollingOptOut,u=e.parent,d=e.rowSizeAndPositionManager,p=e.rowStartIndex,f=e.rowStopIndex,m=e.styleCache,h=e.verticalOffsetAdjustment,g=e.visibleColumnIndices,v=e.visibleRowIndices,b=[],y=r.areOffsetsAdjusted()||d.areOffsetsAdjusted(),E=!l&&!y,S=p;S<=f;S++)for(var w=d.getSizeAndPositionOfCell(S),_=o;_<=a;_++){var T=r.getSizeAndPositionOfCell(_),x=_>=g.start&&_<=g.stop&&S>=v.start&&S<=v.stop,C="".concat(S,"-").concat(_),A=void 0;E&&m[C]?A=m[C]:i&&!i.has(S,_)?A={height:"auto",left:0,position:"absolute",top:0,width:"auto"}:(A={height:w.size,left:T.offset+s,position:"absolute",top:w.offset+h,width:T.size},m[C]=A);var k={columnIndex:_,isScrolling:l,isVisible:x,key:C,parent:u,rowIndex:S,style:A},I=void 0;!c&&!l||s||h?I=n(k):(t[C]||(t[C]=n(k)),I=t[C]),null!=I&&!1!==I&&b.push(I)}return b},containerRole:"rowgroup",containerStyle:{},estimatedColumnSize:100,estimatedRowSize:30,getScrollbarSize:ai,noContentRenderer:function(){return null},onScroll:function(){},onScrollbarPresenceChange:function(){},onSectionRendered:function(){},overscanColumnCount:0,overscanIndicesGetter:function(e){var t=e.cellCount,n=e.overscanCellsCount,r=e.scrollDirection,o=e.startIndex,a=e.stopIndex;return 1===r?{overscanStartIndex:Math.max(0,o),overscanStopIndex:Math.min(t-1,a+n)}:{overscanStartIndex:Math.max(0,o-n),overscanStopIndex:Math.min(t-1,a)}},overscanRowCount:10,role:"grid",scrollingResetTimeInterval:150,scrollToAlignment:"auto",scrollToColumn:-1,scrollToRow:-1,style:{},tabIndex:0,isScrollingOptOut:!1}),Fa(yi);var wi,_i,Ti=(vi=gi=function(e){function t(){var e,n;Ca(this,t);for(var r=arguments.length,o=new Array(r),a=0;a div, .contract-trigger:before { content: " "; display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; z-index: -1; } .resize-triggers > div { background: #eee; overflow: auto; } .contract-trigger:before { width: 200%; height: 200%; }',r=t.head||t.getElementsByTagName("head")[0],o=t.createElement("style");o.id="detectElementResize",o.type="text/css",null!=e&&o.setAttribute("nonce",e),o.styleSheet?o.styleSheet.cssText=n:o.appendChild(t.createTextNode(n)),r.appendChild(o)}}(a),t.__resizeLast__={},t.__resizeListeners__=[],(t.__resizeTriggers__=a.createElement("div")).className="resize-triggers";var c='
';if(window.trustedTypes){var u=trustedTypes.createPolicy("react-virtualized-auto-sizer",{createHTML:function(){return c}});t.__resizeTriggers__.innerHTML=u.createHTML("")}else t.__resizeTriggers__.innerHTML=c;t.appendChild(t.__resizeTriggers__),s(t),t.addEventListener("scroll",l,!0),d&&(t.__resizeTriggers__.__animationListener__=function(e){e.animationName==g&&s(t)},t.__resizeTriggers__.addEventListener(d,t.__resizeTriggers__.__animationListener__))}t.__resizeListeners__.push(n)}},removeResizeListener:function(e,t){if(o)e.detachEvent("onresize",t);else if(e.__resizeListeners__.splice(e.__resizeListeners__.indexOf(t),1),!e.__resizeListeners__.length){e.removeEventListener("scroll",l,!0),e.__resizeTriggers__.__animationListener__&&(e.__resizeTriggers__.removeEventListener(d,e.__resizeTriggers__.__animationListener__),e.__resizeTriggers__.__animationListener__=null);try{e.__resizeTriggers__=!e.removeChild(e.__resizeTriggers__)}catch(e){}}}}}function Ci(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ai(e){for(var t=1;t=0){var u=t.getScrollPositionForCell({align:o,cellIndex:a,height:r,scrollLeft:l,scrollTop:c,width:i});u.scrollLeft===l&&u.scrollTop===c||n._setScrollPosition(u)}})),Da(Ra(n),"_onScroll",(function(e){if(e.target===n._scrollingContainer){n._enablePointerEventsAfterDelay();var t=n.props,r=t.cellLayoutManager,o=t.height,a=t.isScrollingChange,i=t.width,s=n._scrollbarSize,l=r.getTotalSize(),c=l.height,u=l.width,d=Math.max(0,Math.min(u-i+s,e.target.scrollLeft)),p=Math.max(0,Math.min(c-o+s,e.target.scrollTop));if(n.state.scrollLeft!==d||n.state.scrollTop!==p){var f=e.cancelable?"observed":Li;n.state.isScrolling||a(!0),n.setState({isScrolling:!0,scrollLeft:d,scrollPositionChangeReason:f,scrollTop:p})}n._invokeOnScrollMemoizer({scrollLeft:d,scrollTop:p,totalWidth:u,totalHeight:c})}})),n._scrollbarSize=ai(),void 0===n._scrollbarSize?(n._scrollbarSizeMeasured=!1,n._scrollbarSize=0):n._scrollbarSizeMeasured=!0,n}return Pa(t,K.PureComponent),Oa(t,[{key:"recomputeCellSizesAndPositions",value:function(){this._calculateSizeAndPositionDataOnNextUpdate=!0,this.forceUpdate()}},{key:"componentDidMount",value:function(){var e=this.props,t=e.cellLayoutManager,n=e.scrollLeft,r=e.scrollToCell,o=e.scrollTop;this._scrollbarSizeMeasured||(this._scrollbarSize=ai(),this._scrollbarSizeMeasured=!0,this.setState({})),r>=0?this._updateScrollPositionForScrollToCell():(n>=0||o>=0)&&this._setScrollPosition({scrollLeft:n,scrollTop:o}),this._invokeOnSectionRenderedHelper();var a=t.getTotalSize(),i=a.height,s=a.width;this._invokeOnScrollMemoizer({scrollLeft:n||0,scrollTop:o||0,totalHeight:i,totalWidth:s})}},{key:"componentDidUpdate",value:function(e,t){var n=this.props,r=n.height,o=n.scrollToAlignment,a=n.scrollToCell,i=n.width,s=this.state,l=s.scrollLeft,c=s.scrollPositionChangeReason,u=s.scrollTop;c===Li&&(l>=0&&l!==t.scrollLeft&&l!==this._scrollingContainer.scrollLeft&&(this._scrollingContainer.scrollLeft=l),u>=0&&u!==t.scrollTop&&u!==this._scrollingContainer.scrollTop&&(this._scrollingContainer.scrollTop=u)),r===e.height&&o===e.scrollToAlignment&&a===e.scrollToCell&&i===e.width||this._updateScrollPositionForScrollToCell(),this._invokeOnSectionRenderedHelper()}},{key:"componentWillUnmount",value:function(){this._disablePointerEventsTimeoutId&&clearTimeout(this._disablePointerEventsTimeoutId)}},{key:"render",value:function(){var e=this.props,t=e.autoHeight,n=e.cellCount,r=e.cellLayoutManager,o=e.className,a=e.height,i=e.horizontalOverscanSize,s=e.id,l=e.noContentRenderer,c=e.style,u=e.verticalOverscanSize,d=e.width,p=this.state,f=p.isScrolling,m=p.scrollLeft,h=p.scrollTop;(this._lastRenderedCellCount!==n||this._lastRenderedCellLayoutManager!==r||this._calculateSizeAndPositionDataOnNextUpdate)&&(this._lastRenderedCellCount=n,this._lastRenderedCellLayoutManager=r,this._calculateSizeAndPositionDataOnNextUpdate=!1,r.calculateSizeAndPositionData());var g=r.getTotalSize(),v=g.height,b=g.width,y=Math.max(0,m-i),E=Math.max(0,h-u),S=Math.min(b,m+d+i),w=Math.min(v,h+a+u),_=a>0&&d>0?r.cellRenderers({height:w-E,isScrolling:f,width:S-y,x:y,y:E}):[],T={boxSizing:"border-box",direction:"ltr",height:t?"auto":a,position:"relative",WebkitOverflowScrolling:"touch",width:d,willChange:"transform"},x=v>a?this._scrollbarSize:0,C=b>d?this._scrollbarSize:0;return T.overflowX=b+x<=d?"hidden":"auto",T.overflowY=v+C<=a?"hidden":"auto",K.createElement("div",{ref:this._setScrollingContainerRef,"aria-label":this.props["aria-label"],className:Ha("ReactVirtualized__Collection",o),id:s,onScroll:this._onScroll,role:"grid",style:Mi({},T,{},c),tabIndex:0},n>0&&K.createElement("div",{className:"ReactVirtualized__Collection__innerScrollContainer",style:{height:v,maxHeight:v,maxWidth:b,overflow:"hidden",pointerEvents:f?"none":"",width:b}},_),0===n&&l())}},{key:"_enablePointerEventsAfterDelay",value:function(){var e=this;this._disablePointerEventsTimeoutId&&clearTimeout(this._disablePointerEventsTimeoutId),this._disablePointerEventsTimeoutId=setTimeout((function(){(0,e.props.isScrollingChange)(!1),e._disablePointerEventsTimeoutId=null,e.setState({isScrolling:!1})}),150)}},{key:"_invokeOnScrollMemoizer",value:function(e){var t=this,n=e.scrollLeft,r=e.scrollTop,o=e.totalHeight,a=e.totalWidth;this._onScrollMemoizer({callback:function(e){var n=e.scrollLeft,r=e.scrollTop,i=t.props,s=i.height;(0,i.onScroll)({clientHeight:s,clientWidth:i.width,scrollHeight:o,scrollLeft:n,scrollTop:r,scrollWidth:a})},indices:{scrollLeft:n,scrollTop:r}})}},{key:"_setScrollPosition",value:function(e){var t=e.scrollLeft,n=e.scrollTop,r={scrollPositionChangeReason:Li};t>=0&&(r.scrollLeft=t),n>=0&&(r.scrollTop=n),(t>=0&&t!==this.state.scrollLeft||n>=0&&n!==this.state.scrollTop)&&this.setState(r)}}],[{key:"getDerivedStateFromProps",value:function(e,t){return 0!==e.cellCount||0===t.scrollLeft&&0===t.scrollTop?e.scrollLeft!==t.scrollLeft||e.scrollTop!==t.scrollTop?{scrollLeft:null!=e.scrollLeft?e.scrollLeft:t.scrollLeft,scrollTop:null!=e.scrollTop?e.scrollTop:t.scrollTop,scrollPositionChangeReason:Li}:null:{scrollLeft:0,scrollTop:0,scrollPositionChangeReason:Li}}}]),t}();Da(Pi,"defaultProps",{"aria-label":"grid",horizontalOverscanSize:0,noContentRenderer:function(){return null},onScroll:function(){return null},onSectionRendered:function(){return null},scrollToAlignment:"auto",scrollToCell:-1,style:{},verticalOverscanSize:0}),Pi.propTypes={},Fa(Pi);var Di=function(){function e(t){var n=t.height,r=t.width,o=t.x,a=t.y;Ca(this,e),this.height=n,this.width=r,this.x=o,this.y=a,this._indexMap={},this._indices=[]}return Oa(e,[{key:"addCellIndex",value:function(e){var t=e.index;this._indexMap[t]||(this._indexMap[t]=!0,this._indices.push(t))}},{key:"getCellIndices",value:function(){return this._indices}},{key:"toString",value:function(){return"".concat(this.x,",").concat(this.y," ").concat(this.width,"x").concat(this.height)}}]),e}(),Zi=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;Ca(this,e),this._sectionSize=t,this._cellMetadata=[],this._sections={}}return Oa(e,[{key:"getCellIndices",value:function(e){var t=e.height,n=e.width,r=e.x,o=e.y,a={};return this.getSections({height:t,width:n,x:r,y:o}).forEach((function(e){return e.getCellIndices().forEach((function(e){a[e]=e}))})),Object.keys(a).map((function(e){return a[e]}))}},{key:"getCellMetadata",value:function(e){var t=e.index;return this._cellMetadata[t]}},{key:"getSections",value:function(e){for(var t=e.height,n=e.width,r=e.x,o=e.y,a=Math.floor(r/this._sectionSize),i=Math.floor((r+n-1)/this._sectionSize),s=Math.floor(o/this._sectionSize),l=Math.floor((o+t-1)/this._sectionSize),c=[],u=a;u<=i;u++)for(var d=s;d<=l;d++){var p="".concat(u,".").concat(d);this._sections[p]||(this._sections[p]=new Di({height:this._sectionSize,width:this._sectionSize,x:u*this._sectionSize,y:d*this._sectionSize})),c.push(this._sections[p])}return c}},{key:"getTotalSectionCount",value:function(){return Object.keys(this._sections).length}},{key:"toString",value:function(){var e=this;return Object.keys(this._sections).map((function(t){return e._sections[t].toString()}))}},{key:"registerCell",value:function(e){var t=e.cellMetadatum,n=e.index;this._cellMetadata[n]=t,this.getSections(t).forEach((function(e){return e.addCellIndex({index:n})}))}}]),e}();function Bi(e){var t=e.align,n=void 0===t?"auto":t,r=e.cellOffset,o=e.cellSize,a=e.containerSize,i=e.currentOffset,s=r,l=s-a+o;switch(n){case"start":return s;case"end":return l;case"center":return s-(a-o)/2;default:return Math.max(l,Math.min(s,i))}}var zi=function(e){function t(e,n){var r;return Ca(this,t),(r=Na(this,Ma(t).call(this,e,n)))._cellMetadata=[],r._lastRenderedCellIndices=[],r._cellCache=[],r._isScrollingChange=r._isScrollingChange.bind(Ra(r)),r._setCollectionViewRef=r._setCollectionViewRef.bind(Ra(r)),r}return Pa(t,K.PureComponent),Oa(t,[{key:"forceUpdate",value:function(){void 0!==this._collectionView&&this._collectionView.forceUpdate()}},{key:"recomputeCellSizesAndPositions",value:function(){this._cellCache=[],this._collectionView.recomputeCellSizesAndPositions()}},{key:"render",value:function(){var e=Ua({},this.props);return K.createElement(Pi,Ua({cellLayoutManager:this,isScrollingChange:this._isScrollingChange,ref:this._setCollectionViewRef},e))}},{key:"calculateSizeAndPositionData",value:function(){var e=this.props,t=function(e){for(var t=e.cellCount,n=e.cellSizeAndPositionGetter,r=[],o=new Zi(e.sectionSize),a=0,i=0,s=0;s=0&&ne.length)&&(t=e.length);for(var n=0,r=new Array(t);nn.lastRenderedStopIndex||n.stopIndex1&&void 0!==arguments[1]?arguments[1]:0,n="function"==typeof e.recomputeGridSize?e.recomputeGridSize:e.recomputeRowHeights;n?n.call(e,t):e.forceUpdate()}(t._registeredChild,t._lastRenderedStartIndex)}))}))}},{key:"_onRowsRendered",value:function(e){var t=e.startIndex,n=e.stopIndex;this._lastRenderedStartIndex=t,this._lastRenderedStopIndex=n,this._doStuff(t,n)}},{key:"_doStuff",value:function(e,t){var n,r=this,o=this.props,a=o.isRowLoaded,i=o.minimumBatchSize,s=o.rowCount,l=o.threshold,c=function(e){for(var t=e.isRowLoaded,n=e.minimumBatchSize,r=e.rowCount,o=e.stopIndex,a=[],i=null,s=null,l=e.startIndex;l<=o;l++)t({index:l})?null!==s&&(a.push({startIndex:i,stopIndex:s}),i=s=null):(s=l,null===i&&(i=l));if(null!==s){for(var c=Math.min(Math.max(s,i+n-1),r-1),u=s+1;u<=c&&!t({index:u});u++)s=u;a.push({startIndex:i,stopIndex:s})}if(a.length)for(var d=a[0];d.stopIndex-d.startIndex+10;){var p=d.startIndex-1;if(t({index:p}))break;d.startIndex=p}return a}({isRowLoaded:a,minimumBatchSize:i,rowCount:s,startIndex:Math.max(0,e-l),stopIndex:Math.min(s-1,t+l)}),u=(n=[]).concat.apply(n,function(e){return function(e){if(Array.isArray(e))return Fi(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Ui(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(c.map((function(e){return[e.startIndex,e.stopIndex]}))));this._loadMoreRowsMemoizer({callback:function(){r._loadUnloadedRanges(c)},indices:{squashedUnloadedRanges:u}})}},{key:"_registerChild",value:function(e){this._registeredChild=e}}]),t}();Da(ji,"defaultProps",{minimumBatchSize:10,rowCount:0,threshold:15}),ji.propTypes={};var Hi,Gi,Vi=(Gi=Hi=function(e){function t(){var e,n;Ca(this,t);for(var r=arguments.length,o=new Array(r),a=0;a0&&void 0!==arguments[0]?arguments[0]:{},t=e.columnIndex,n=void 0===t?0:t,r=e.rowIndex,o=void 0===r?0:r;this.Grid&&this.Grid.recomputeGridSize({rowIndex:o,columnIndex:n})}},{key:"recomputeRowHeights",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.recomputeGridSize({rowIndex:e,columnIndex:0})}},{key:"scrollToPosition",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.scrollToPosition({scrollTop:e})}},{key:"scrollToRow",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.scrollToCell({columnIndex:0,rowIndex:e})}},{key:"render",value:function(){var e=this.props,t=e.className,n=e.noRowsRenderer,r=e.scrollToIndex,o=e.width,a=Ha("ReactVirtualized__List",t);return K.createElement(yi,Ua({},this.props,{autoContainerWidth:!0,cellRenderer:this._cellRenderer,className:a,columnWidth:o,columnCount:1,noContentRenderer:n,onScroll:this._onScroll,onSectionRendered:this._onSectionRendered,ref:this._setRef,scrollToRow:r}))}}]),t}(),Da(Hi,"propTypes",null),Gi);Da(Vi,"defaultProps",{autoHeight:!1,estimatedRowSize:30,onScroll:function(){},noRowsRenderer:function(){return null},onRowsRendered:function(){},overscanIndicesGetter:Ei,overscanRowCount:10,scrollToAlignment:"auto",scrollToIndex:-1,style:{}});var Wi=function(e,t,n,r,o){return"function"==typeof n?function(e,t,n,r,o){for(var a=n+1;t<=n;){var i=t+n>>>1;o(e[i],r)>=0?(a=i,n=i-1):t=i+1}return a}(e,void 0===r?0:0|r,void 0===o?e.length-1:0|o,t,n):function(e,t,n,r){for(var o=n+1;t<=n;){var a=t+n>>>1;e[a]>=r?(o=a,n=a-1):t=a+1}return o}(e,void 0===n?0:0|n,void 0===r?e.length-1:0|r,t)};function qi(e,t,n,r,o){this.mid=e,this.left=t,this.right=n,this.leftPoints=r,this.rightPoints=o,this.count=(t?t.count:0)+(n?n.count:0)+r.length}var $i=qi.prototype;function Ki(e,t){e.mid=t.mid,e.left=t.left,e.right=t.right,e.leftPoints=t.leftPoints,e.rightPoints=t.rightPoints,e.count=t.count}function Yi(e,t){var n=as(t);e.mid=n.mid,e.left=n.left,e.right=n.right,e.leftPoints=n.leftPoints,e.rightPoints=n.rightPoints,e.count=n.count}function Xi(e,t){var n=e.intervals([]);n.push(t),Yi(e,n)}function Qi(e,t){var n=e.intervals([]),r=n.indexOf(t);return r<0?0:(n.splice(r,1),Yi(e,n),1)}function Ji(e,t,n){for(var r=0;r=0&&e[r][1]>=t;--r){var o=n(e[r]);if(o)return o}}function ts(e,t){for(var n=0;n>1],o=[],a=[],i=[];for(n=0;n3*(t+1)?Xi(this,e):this.left.insert(e):this.left=as([e]);else if(e[0]>this.mid)this.right?4*(this.right.count+1)>3*(t+1)?Xi(this,e):this.right.insert(e):this.right=as([e]);else{var n=Wi(this.leftPoints,e,rs),r=Wi(this.rightPoints,e,os);this.leftPoints.splice(n,0,e),this.rightPoints.splice(r,0,e)}},$i.remove=function(e){var t=this.count-this.leftPoints;if(e[1]3*(t-1)?Qi(this,e):2===(a=this.left.remove(e))?(this.left=null,this.count-=1,1):(1===a&&(this.count-=1),a):0;if(e[0]>this.mid)return this.right?4*(this.left?this.left.count:0)>3*(t-1)?Qi(this,e):2===(a=this.right.remove(e))?(this.right=null,this.count-=1,1):(1===a&&(this.count-=1),a):0;if(1===this.count)return this.leftPoints[0]===e?2:0;if(1===this.leftPoints.length&&this.leftPoints[0]===e){if(this.left&&this.right){for(var n=this,r=this.left;r.right;)n=r,r=r.right;if(n===this)r.right=this.right;else{var o=this.left,a=this.right;n.count-=r.count,n.right=r.left,r.left=o,r.right=a}Ki(this,r),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?Ki(this,this.left):Ki(this,this.right);return 1}for(o=Wi(this.leftPoints,e,rs);othis.mid?this.right&&(n=this.right.queryPoint(e,t))?n:es(this.rightPoints,e,t):ts(this.leftPoints,t);var n},$i.queryInterval=function(e,t,n){var r;return ethis.mid&&this.right&&(r=this.right.queryInterval(e,t,n))?r:tthis.mid?es(this.rightPoints,e,n):ts(this.leftPoints,n)};var ss=is.prototype;ss.insert=function(e){this.root?this.root.insert(e):this.root=new qi(e[0],null,null,[e],[e])},ss.remove=function(e){if(this.root){var t=this.root.remove(e);return 2===t&&(this.root=null),0!==t}return!1},ss.queryPoint=function(e,t){if(this.root)return this.root.queryPoint(e,t)},ss.queryInterval=function(e,t,n){if(e<=t&&this.root)return this.root.queryInterval(e,t,n)},Object.defineProperty(ss,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(ss,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}});var ls,cs,us=function(){function e(){Ca(this,e),Da(this,"_columnSizeMap",{}),Da(this,"_intervalTree",new is(null)),Da(this,"_leftMap",{})}return Oa(e,[{key:"estimateTotalHeight",value:function(e,t,n){var r=e-this.count;return this.tallestColumnSize+Math.ceil(r/t)*n}},{key:"range",value:function(e,t,n){var r=this;this._intervalTree.queryInterval(e,e+t,(function(e){var t=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a,i,s=[],l=!0,c=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,o=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw o}}return s}}(e,t)||Ui(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e,3),o=t[0];t[1];var a=t[2];return n(a,r._leftMap[a],o)}))}},{key:"setPosition",value:function(e,t,n,r){this._intervalTree.insert([n,n+r,e]),this._leftMap[e]=t;var o=this._columnSizeMap,a=o[t];o[t]=void 0===a?n+r:Math.max(a,n+r)}},{key:"count",get:function(){return this._intervalTree.count}},{key:"shortestColumnSize",get:function(){var e=this._columnSizeMap,t=0;for(var n in e){var r=e[n];t=0===t?r:Math.min(t,r)}return t}},{key:"tallestColumnSize",get:function(){var e=this._columnSizeMap,t=0;for(var n in e){var r=e[n];t=Math.max(t,r)}return t}}]),e}();function ds(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ps(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{};Ca(this,e),Da(this,"_cellMeasurerCache",void 0),Da(this,"_columnIndexOffset",void 0),Da(this,"_rowIndexOffset",void 0),Da(this,"columnWidth",(function(e){var n=e.index;t._cellMeasurerCache.columnWidth({index:n+t._columnIndexOffset})})),Da(this,"rowHeight",(function(e){var n=e.index;t._cellMeasurerCache.rowHeight({index:n+t._rowIndexOffset})}));var r=n.cellMeasurerCache,o=n.columnIndexOffset,a=void 0===o?0:o,i=n.rowIndexOffset,s=void 0===i?0:i;this._cellMeasurerCache=r,this._columnIndexOffset=a,this._rowIndexOffset=s}return Oa(e,[{key:"clear",value:function(e,t){this._cellMeasurerCache.clear(e+this._rowIndexOffset,t+this._columnIndexOffset)}},{key:"clearAll",value:function(){this._cellMeasurerCache.clearAll()}},{key:"hasFixedHeight",value:function(){return this._cellMeasurerCache.hasFixedHeight()}},{key:"hasFixedWidth",value:function(){return this._cellMeasurerCache.hasFixedWidth()}},{key:"getHeight",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this._cellMeasurerCache.getHeight(e+this._rowIndexOffset,t+this._columnIndexOffset)}},{key:"getWidth",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this._cellMeasurerCache.getWidth(e+this._rowIndexOffset,t+this._columnIndexOffset)}},{key:"has",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this._cellMeasurerCache.has(e+this._rowIndexOffset,t+this._columnIndexOffset)}},{key:"set",value:function(e,t,n,r){this._cellMeasurerCache.set(e+this._rowIndexOffset,t+this._columnIndexOffset,n,r)}},{key:"defaultHeight",get:function(){return this._cellMeasurerCache.defaultHeight}},{key:"defaultWidth",get:function(){return this._cellMeasurerCache.defaultWidth}}]),e}();function gs(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function vs(e){for(var t=1;t0?new hs({cellMeasurerCache:o,columnIndexOffset:0,rowIndexOffset:i}):o,r._deferredMeasurementCacheBottomRightGrid=a>0||i>0?new hs({cellMeasurerCache:o,columnIndexOffset:a,rowIndexOffset:i}):o,r._deferredMeasurementCacheTopRightGrid=a>0?new hs({cellMeasurerCache:o,columnIndexOffset:a,rowIndexOffset:0}):o),r}return Pa(t,K.PureComponent),Oa(t,[{key:"forceUpdateGrids",value:function(){this._bottomLeftGrid&&this._bottomLeftGrid.forceUpdate(),this._bottomRightGrid&&this._bottomRightGrid.forceUpdate(),this._topLeftGrid&&this._topLeftGrid.forceUpdate(),this._topRightGrid&&this._topRightGrid.forceUpdate()}},{key:"invalidateCellSizeAfterRender",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.columnIndex,n=void 0===t?0:t,r=e.rowIndex,o=void 0===r?0:r;this._deferredInvalidateColumnIndex="number"==typeof this._deferredInvalidateColumnIndex?Math.min(this._deferredInvalidateColumnIndex,n):n,this._deferredInvalidateRowIndex="number"==typeof this._deferredInvalidateRowIndex?Math.min(this._deferredInvalidateRowIndex,o):o}},{key:"measureAllCells",value:function(){this._bottomLeftGrid&&this._bottomLeftGrid.measureAllCells(),this._bottomRightGrid&&this._bottomRightGrid.measureAllCells(),this._topLeftGrid&&this._topLeftGrid.measureAllCells(),this._topRightGrid&&this._topRightGrid.measureAllCells()}},{key:"recomputeGridSize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.columnIndex,n=void 0===t?0:t,r=e.rowIndex,o=void 0===r?0:r,a=this.props,i=a.fixedColumnCount,s=a.fixedRowCount,l=Math.max(0,n-i),c=Math.max(0,o-s);this._bottomLeftGrid&&this._bottomLeftGrid.recomputeGridSize({columnIndex:n,rowIndex:c}),this._bottomRightGrid&&this._bottomRightGrid.recomputeGridSize({columnIndex:l,rowIndex:c}),this._topLeftGrid&&this._topLeftGrid.recomputeGridSize({columnIndex:n,rowIndex:o}),this._topRightGrid&&this._topRightGrid.recomputeGridSize({columnIndex:l,rowIndex:o}),this._leftGridWidth=null,this._topGridHeight=null,this._maybeCalculateCachedStyles(!0)}},{key:"componentDidMount",value:function(){var e=this.props,t=e.scrollLeft,n=e.scrollTop;if(t>0||n>0){var r={};t>0&&(r.scrollLeft=t),n>0&&(r.scrollTop=n),this.setState(r)}this._handleInvalidatedGridSize()}},{key:"componentDidUpdate",value:function(){this._handleInvalidatedGridSize()}},{key:"render",value:function(){var e=this.props,t=e.onScroll,n=e.onSectionRendered;e.onScrollbarPresenceChange,e.scrollLeft;var r=e.scrollToColumn;e.scrollTop;var o=e.scrollToRow,a=Wa(e,["onScroll","onSectionRendered","onScrollbarPresenceChange","scrollLeft","scrollToColumn","scrollTop","scrollToRow"]);if(this._prepareForRender(),0===this.props.width||0===this.props.height)return null;var i=this.state,s=i.scrollLeft,l=i.scrollTop;return K.createElement("div",{style:this._containerOuterStyle},K.createElement("div",{style:this._containerTopStyle},this._renderTopLeftGrid(a),this._renderTopRightGrid(vs({},a,{onScroll:t,scrollLeft:s}))),K.createElement("div",{style:this._containerBottomStyle},this._renderBottomLeftGrid(vs({},a,{onScroll:t,scrollTop:l})),this._renderBottomRightGrid(vs({},a,{onScroll:t,onSectionRendered:n,scrollLeft:s,scrollToColumn:r,scrollToRow:o,scrollTop:l}))))}},{key:"_getBottomGridHeight",value:function(e){return e.height-this._getTopGridHeight(e)}},{key:"_getLeftGridWidth",value:function(e){var t=e.fixedColumnCount,n=e.columnWidth;if(null==this._leftGridWidth)if("function"==typeof n){for(var r=0,o=0;o=0?e.scrollLeft:t.scrollLeft,scrollTop:null!=e.scrollTop&&e.scrollTop>=0?e.scrollTop:t.scrollTop}:null}}]),t}();Da(bs,"defaultProps",{classNameBottomLeftGrid:"",classNameBottomRightGrid:"",classNameTopLeftGrid:"",classNameTopRightGrid:"",enableFixedColumnScroll:!1,enableFixedRowScroll:!1,fixedColumnCount:0,fixedRowCount:0,scrollToColumn:-1,scrollToRow:-1,style:{},styleBottomLeftGrid:{},styleBottomRightGrid:{},styleTopLeftGrid:{},styleTopRightGrid:{},hideTopRightGridScrollbar:!1,hideBottomLeftGridScrollbar:!1}),bs.propTypes={},Fa(bs);function ys(e){var t=e.className,n=e.columns,r=e.style;return K.createElement("div",{className:t,role:"row",style:r},n)}ys.propTypes=null;var Es={ASC:"ASC",DESC:"DESC"};function Ss(e){var t=e.sortDirection,n=Ha("ReactVirtualized__Table__sortableHeaderIcon",{"ReactVirtualized__Table__sortableHeaderIcon--ASC":t===Es.ASC,"ReactVirtualized__Table__sortableHeaderIcon--DESC":t===Es.DESC});return K.createElement("svg",{className:n,width:18,height:18,viewBox:"0 0 24 24"},t===Es.ASC?K.createElement("path",{d:"M7 14l5-5 5 5z"}):K.createElement("path",{d:"M7 10l5 5 5-5z"}),K.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}))}function ws(e){var t=e.dataKey,n=e.label,r=e.sortBy,o=e.sortDirection,a=r===t,i=[K.createElement("span",{className:"ReactVirtualized__Table__headerTruncatedText",key:"label",title:"string"==typeof n?n:null},n)];return a&&i.push(K.createElement(Ss,{key:"SortIndicator",sortDirection:o})),i}function _s(e){var t=e.className,n=e.columns,r=e.index,o=e.key,a=e.onRowClick,i=e.onRowDoubleClick,s=e.onRowMouseOut,l=e.onRowMouseOver,c=e.onRowRightClick,u=e.rowData,d=e.style,p={"aria-rowindex":r+1};return(a||i||s||l||c)&&(p["aria-label"]="row",p.tabIndex=0,a&&(p.onClick=function(e){return a({event:e,index:r,rowData:u})}),i&&(p.onDoubleClick=function(e){return i({event:e,index:r,rowData:u})}),s&&(p.onMouseOut=function(e){return s({event:e,index:r,rowData:u})}),l&&(p.onMouseOver=function(e){return l({event:e,index:r,rowData:u})}),c&&(p.onContextMenu=function(e){return c({event:e,index:r,rowData:u})})),K.createElement("div",Ua({},p,{className:t,key:o,role:"row",style:d}),n)}Ss.propTypes={},ws.propTypes=null,_s.propTypes=null;var Ts=function(e){function t(){return Ca(this,t),Na(this,Ma(t).apply(this,arguments))}return Pa(t,K.Component),t}();function xs(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Cs(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{},t=e.columnIndex,n=void 0===t?0:t,r=e.rowIndex,o=void 0===r?0:r;this.Grid&&this.Grid.recomputeGridSize({rowIndex:o,columnIndex:n})}},{key:"recomputeRowHeights",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.recomputeGridSize({rowIndex:e})}},{key:"scrollToPosition",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.scrollToPosition({scrollTop:e})}},{key:"scrollToRow",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.scrollToCell({columnIndex:0,rowIndex:e})}},{key:"getScrollbarWidth",value:function(){if(this.Grid){var e=(0,X.findDOMNode)(this.Grid),t=e.clientWidth||0;return(e.offsetWidth||0)-t}return 0}},{key:"componentDidMount",value:function(){this._setScrollbarWidth()}},{key:"componentDidUpdate",value:function(){this._setScrollbarWidth()}},{key:"render",value:function(){var e=this,t=this.props,n=t.children,r=t.className,o=t.disableHeader,a=t.gridClassName,i=t.gridStyle,s=t.headerHeight,l=t.headerRowRenderer,c=t.height,u=t.id,d=t.noRowsRenderer,p=t.rowClassName,f=t.rowStyle,m=t.scrollToIndex,h=t.style,g=t.width,v=this.state.scrollbarWidth,b=o?c:c-s,y="function"==typeof p?p({index:-1}):p,E="function"==typeof f?f({index:-1}):f;return this._cachedColumnStyles=[],K.Children.toArray(n).forEach((function(t,n){var r=e._getFlexStyleForColumn(t,t.props.style);e._cachedColumnStyles[n]=Cs({overflow:"hidden"},r)})),K.createElement("div",{"aria-label":this.props["aria-label"],"aria-labelledby":this.props["aria-labelledby"],"aria-colcount":K.Children.toArray(n).length,"aria-rowcount":this.props.rowCount,className:Ha("ReactVirtualized__Table",r),id:u,role:"grid",style:h},!o&&l({className:Ha("ReactVirtualized__Table__headerRow",y),columns:this._getHeaderColumns(),style:Cs({height:s,overflow:"hidden",paddingRight:v,width:g},E)}),K.createElement(yi,Ua({},this.props,{"aria-readonly":null,autoContainerWidth:!0,className:Ha("ReactVirtualized__Table__Grid",a),cellRenderer:this._createRow,columnWidth:g,columnCount:1,height:b,id:void 0,noContentRenderer:d,onScroll:this._onScroll,onSectionRendered:this._onSectionRendered,ref:this._setRef,role:"rowgroup",scrollbarWidth:v,scrollToRow:m,style:Cs({},i,{overflowX:"hidden"})})))}},{key:"_createColumn",value:function(e){var t=e.column,n=e.columnIndex,r=e.isScrolling,o=e.parent,a=e.rowData,i=e.rowIndex,s=this.props.onColumnClick,l=t.props,c=l.cellDataGetter,u=l.cellRenderer,d=l.className,p=l.columnData,f=l.dataKey,m=l.id,h=u({cellData:c({columnData:p,dataKey:f,rowData:a}),columnData:p,columnIndex:n,dataKey:f,isScrolling:r,parent:o,rowData:a,rowIndex:i}),g=this._cachedColumnStyles[n],v="string"==typeof h?h:null;return K.createElement("div",{"aria-colindex":n+1,"aria-describedby":m,className:Ha("ReactVirtualized__Table__rowColumn",d),key:"Row"+i+"-Col"+n,onClick:function(e){s&&s({columnData:p,dataKey:f,event:e})},role:"gridcell",style:g,title:v},h)}},{key:"_createHeader",value:function(e){var t,n,r,o,a,i=e.column,s=e.index,l=this.props,c=l.headerClassName,u=l.headerStyle,d=l.onHeaderClick,p=l.sort,f=l.sortBy,m=l.sortDirection,h=i.props,g=h.columnData,v=h.dataKey,b=h.defaultSortDirection,y=h.disableSort,E=h.headerRenderer,S=h.id,w=h.label,_=!y&&p,T=Ha("ReactVirtualized__Table__headerColumn",c,i.props.headerClassName,{ReactVirtualized__Table__sortableHeaderColumn:_}),x=this._getFlexStyleForColumn(i,Cs({},u,{},i.props.headerStyle)),C=E({columnData:g,dataKey:v,disableSort:y,label:w,sortBy:f,sortDirection:m});if(_||d){var A=f!==v?b:m===Es.DESC?Es.ASC:Es.DESC,k=function(e){_&&p({defaultSortDirection:b,event:e,sortBy:v,sortDirection:A}),d&&d({columnData:g,dataKey:v,event:e})};a=i.props["aria-label"]||w||v,o="none",r=0,t=k,n=function(e){"Enter"!==e.key&&" "!==e.key||k(e)}}return f===v&&(o=m===Es.ASC?"ascending":"descending"),K.createElement("div",{"aria-label":a,"aria-sort":o,className:T,id:S,key:"Header-Col"+s,onClick:t,onKeyDown:n,role:"columnheader",style:x,tabIndex:r},C)}},{key:"_createRow",value:function(e){var t=this,n=e.rowIndex,r=e.isScrolling,o=e.key,a=e.parent,i=e.style,s=this.props,l=s.children,c=s.onRowClick,u=s.onRowDoubleClick,d=s.onRowRightClick,p=s.onRowMouseOver,f=s.onRowMouseOut,m=s.rowClassName,h=s.rowGetter,g=s.rowRenderer,v=s.rowStyle,b=this.state.scrollbarWidth,y="function"==typeof m?m({index:n}):m,E="function"==typeof v?v({index:n}):v,S=h({index:n}),w=K.Children.toArray(l).map((function(e,o){return t._createColumn({column:e,columnIndex:o,isScrolling:r,parent:a,rowData:S,rowIndex:n,scrollbarWidth:b})})),_=Ha("ReactVirtualized__Table__row",y),T=Cs({},i,{height:this._getRowHeight(n),overflow:"hidden",paddingRight:b},E);return g({className:_,columns:w,index:n,isScrolling:r,key:o,onRowClick:c,onRowDoubleClick:u,onRowRightClick:d,onRowMouseOver:p,onRowMouseOut:f,rowData:S,style:T})}},{key:"_getFlexStyleForColumn",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n="".concat(e.props.flexGrow," ").concat(e.props.flexShrink," ").concat(e.props.width,"px"),r=Cs({},t,{flex:n,msFlex:n,WebkitFlex:n});return e.props.maxWidth&&(r.maxWidth=e.props.maxWidth),e.props.minWidth&&(r.minWidth=e.props.minWidth),r}},{key:"_getHeaderColumns",value:function(){var e=this,t=this.props,n=t.children;return(t.disableHeader?[]:K.Children.toArray(n)).map((function(t,n){return e._createHeader({column:t,index:n})}))}},{key:"_getRowHeight",value:function(e){var t=this.props.rowHeight;return"function"==typeof t?t({index:e}):t}},{key:"_onScroll",value:function(e){var t=e.clientHeight,n=e.scrollHeight,r=e.scrollTop;(0,this.props.onScroll)({clientHeight:t,scrollHeight:n,scrollTop:r})}},{key:"_onSectionRendered",value:function(e){var t=e.rowOverscanStartIndex,n=e.rowOverscanStopIndex,r=e.rowStartIndex,o=e.rowStopIndex;(0,this.props.onRowsRendered)({overscanStartIndex:t,overscanStopIndex:n,startIndex:r,stopIndex:o})}},{key:"_setRef",value:function(e){this.Grid=e}},{key:"_setScrollbarWidth",value:function(){var e=this.getScrollbarWidth();this.setState({scrollbarWidth:e})}}]),t}();Da(As,"defaultProps",{disableHeader:!1,estimatedRowSize:30,headerHeight:0,headerStyle:{},noRowsRenderer:function(){return null},onRowsRendered:function(){return null},onScroll:function(){return null},overscanIndicesGetter:Ei,overscanRowCount:10,rowRenderer:_s,headerRowRenderer:ys,rowStyle:{},scrollToAlignment:"auto",scrollToIndex:-1,style:{}}),As.propTypes={};var ks=[],Is=null,Os=null;function Rs(){Os&&(Os=null,document.body&&null!=Is&&(document.body.style.pointerEvents=Is),Is=null)}function Ns(){Rs(),ks.forEach((function(e){return e.__resetIsScrolling()}))}function Ms(e){e.currentTarget===window&&null==Is&&document.body&&(Is=document.body.style.pointerEvents,document.body.style.pointerEvents="none"),function(){Os&&pi(Os);var e=0;ks.forEach((function(t){e=Math.max(e,t.props.scrollingResetTimeInterval)})),Os=fi(Ns,e)}(),ks.forEach((function(t){t.props.scrollElement===e.currentTarget&&t.__handleWindowScrollEvent()}))}function Ls(e,t){ks.some((function(e){return e.props.scrollElement===t}))||t.addEventListener("scroll",Ms),ks.push(e)}function Ps(e,t){(ks=ks.filter((function(t){return t!==e}))).length||(t.removeEventListener("scroll",Ms),Os&&(pi(Os),Rs()))}var Ds,Zs,Bs=function(e){return e===window},zs=function(e){return e.getBoundingClientRect()};function Fs(e,t){if(e){if(Bs(e)){var n=window,r=n.innerHeight,o=n.innerWidth;return{height:"number"==typeof r?r:0,width:"number"==typeof o?o:0}}return zs(e)}return{height:t.serverHeight,width:t.serverWidth}}function Us(e){return Bs(e)&&document.documentElement?{top:"scrollY"in window?window.scrollY:document.documentElement.scrollTop,left:"scrollX"in window?window.scrollX:document.documentElement.scrollLeft}:{top:e.scrollTop,left:e.scrollLeft}}function js(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var Hs=function(){return"undefined"!=typeof window?window:void 0},Gs=(Zs=Ds=function(e){function t(){var e,n;Ca(this,t);for(var r=arguments.length,o=new Array(r),a=0;a0&&void 0!==arguments[0]?arguments[0]:this.props.scrollElement,t=this.props.onResize,n=this.state,r=n.height,o=n.width,a=this._child||X.findDOMNode(this);if(a instanceof Element&&e){var i=function(e,t){if(Bs(t)&&document.documentElement){var n=document.documentElement,r=zs(e),o=zs(n);return{top:r.top-o.top,left:r.left-o.left}}var a=Us(t),i=zs(e),s=zs(t);return{top:i.top+a.top-s.top,left:i.left+a.left-s.left}}(a,e);this._positionFromTop=i.top,this._positionFromLeft=i.left}var s=Fs(e,this.props);r===s.height&&o===s.width||(this.setState({height:s.height,width:s.width}),t({height:s.height,width:s.width}))}},{key:"componentDidMount",value:function(){var e=this.props.scrollElement;this._detectElementResize=xi(),this.updatePosition(e),e&&(Ls(this,e),this._registerResizeListener(e)),this._isMounted=!0}},{key:"componentDidUpdate",value:function(e,t){var n=this.props.scrollElement,r=e.scrollElement;r!==n&&null!=r&&null!=n&&(this.updatePosition(n),Ps(this,r),Ls(this,n),this._unregisterResizeListener(r),this._registerResizeListener(n))}},{key:"componentWillUnmount",value:function(){var e=this.props.scrollElement;e&&(Ps(this,e),this._unregisterResizeListener(e)),this._isMounted=!1}},{key:"render",value:function(){var e=this.props.children,t=this.state,n=t.isScrolling,r=t.scrollTop,o=t.scrollLeft,a=t.height,i=t.width;return e({onChildScroll:this._onChildScroll,registerChild:this._registerChild,height:a,isScrolling:n,scrollLeft:o,scrollTop:r,width:i})}}]),t}(),Da(Ds,"propTypes",null),Zs);Da(Gs,"defaultProps",{onResize:function(){},onScroll:function(){},scrollingResetTimeInterval:150,scrollElement:Hs(),serverHeight:0,serverWidth:0});var Vs=Kt,Ws=Dt,qs=Yt,$s=Lt((function(e){return"string"==typeof e||!Ws(e)&&qs(e)&&"[object String]"==Vs(e)})),Ks=["view","edit","delete","description","share","cloud","console","download","disable","format","preview"],Ys=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("path",{d:"m117.59.78l112.57,101.97c2.03,1.84.73,5.22-2.01,5.22H3.01c-2.74,0-4.05-3.38-2.01-5.22L113.56.78c1.14-1.04,2.89-1.04,4.03,0Z"}))},Xs=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("path",{d:"m113.56,107.2L.99,5.22C-1.04,3.38.26,0,3.01,0h225.15c2.74,0,4.05,3.38,2.01,5.22l-112.57,101.97c-1.14,1.04-2.89,1.04-4.03,0Z"}))},Qs=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("path",{d:"m199.51,62.28C192.5,26.7,161.26,0,123.73,0c-29.8,0-55.68,16.91-68.57,41.66C24.13,44.95,0,71.25,0,103.11c0,34.13,27.74,61.86,61.86,61.86h134.04c28.46,0,51.55-23.1,51.55-51.55s-21.14-49.28-47.94-51.14Z"}))},Js=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("path",{d:"m215.56,0H21.56C9.7,0,0,9.7,0,21.56v150.89c0,11.86,9.7,21.56,21.56,21.56h194c11.86,0,21.56-9.7,21.56-21.56V21.56c0-11.86-9.7-21.56-21.56-21.56Zm0,172.44H21.56v-32.33h194v32.33Z"}))},el=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("path",{d:"m119,0C53.31,0,0,53.31,0,119s53.31,119,119,119,119-53.31,119-119S184.69,0,119,0Zm59.5,130.9H59.5v-23.8h119v23.8Z"}))},tl=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("path",{d:"m217.35,144.9h24.15v-24.15h-24.15v24.15Zm0-108.67v60.38h24.15v-60.38h-24.15ZM96.6,0C43.23,0,0,43.23,0,96.6s43.23,96.6,96.6,96.6,96.6-43.23,96.6-96.6S149.97,0,96.6,0Zm0,120.75c-13.28,0-24.15-10.87-24.15-24.15s10.87-24.15,24.15-24.15,24.15,10.87,24.15,24.15-10.87,24.15-24.15,24.15Z"}))},nl=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("defs",null,K.createElement("clipPath",{id:"prefix__a"},K.createElement("path",{d:"M0 0h256v256H0z"}))),K.createElement("g",{"data-name":"IAM Policies",clipPath:"url(#prefix__a)"},K.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),K.createElement("g",{"data-name":"iam-policies-icn"},K.createElement("path",{"data-name":"Trazado 339",d:"M234.915 46.468v-.073a12.276 12.276 0 0 0-12.458-11.593c-19.233.3-55.932-3-86.768-28.92a12.132 12.132 0 0 0-15.811-.046C88.971 31.804 52.271 35.119 33.152 34.81a12.226 12.226 0 0 0-12.561 11.657c-1.8 46.628-1.509 112.307 21.777 144.214 21.779 29.942 64.527 54.463 77.79 60.687a17.75 17.75 0 0 0 7.584 1.7 17.744 17.744 0 0 0 7.619-1.713c14.233-6.71 55.947-30.7 77.768-60.659 23.292-31.913 23.59-97.599 21.786-144.228Zm-33.666 135.567c-19.9 27.341-59.77 50.186-72.17 56.035a3.18 3.18 0 0 1-2.687 0c-12.364-5.814-52.168-28.577-72.141-56.044-22.29-30.539-20.117-104.8-19.071-132.5h.273c21.464 0 59.431-4.411 92.3-31.128 32.821 26.709 70.8 31.119 92.384 31.119h.18c1.052 27.835 3.211 101.997-19.068 132.518Z"}),K.createElement("path",{"data-name":"Trazado 339 - Contorno",d:"M127.739.004a15.2 15.2 0 0 1 9.855 3.655c29.229 24.565 64.3 28.236 82.6 28.236l2.217-.017h.01a15.346 15.346 0 0 1 15.422 14.381c1.821 47.169 1.485 113.518-22.347 146.172-22.2 30.473-64.469 54.785-78.885 61.582a20.555 20.555 0 0 1-8.869 1.993 20.584 20.584 0 0 1-8.833-1.978c-13.426-6.3-56.751-31.147-78.912-61.614-23.821-32.639-24.156-98.986-22.335-146.052a15.124 15.124 0 0 1 15.023-14.484l2.764.028c18.245 0 53.229-3.677 82.542-28.306a15.029 15.029 0 0 1 9.748-3.596Zm92.455 37.753c-19.1 0-55.72-3.849-86.39-29.625a9.344 9.344 0 0 0-6.065-2.265 9.18 9.18 0 0 0-5.956 2.2c-30.753 25.84-67.289 29.7-86.332 29.7l-2.345-.019h-.019a9.344 9.344 0 0 0-9.568 8.874c-1.785 46.156-1.53 111.17 21.217 142.338 21.44 29.477 63.592 53.625 76.668 59.761a14.916 14.916 0 0 0 12.7-.009c14.043-6.621 55.179-30.255 76.653-59.736 22.757-31.181 23.013-96.2 21.227-142.389a9.343 9.343 0 0 0-9.2-8.852Zm-92.44-23.131 1.849 1.5c32.569 26.5 70.7 30.462 90.534 30.462h2.822l.286 2.82c.957 25.27 3.867 102.168-19.628 134.352-20.261 27.833-60.713 51.027-73.287 56.958a6.169 6.169 0 0 1-5.167.01c-12.568-5.909-52.967-29.043-73.282-56.98C28.394 151.57 31.298 74.683 32.252 49.417l.107-2.821h2.822c20.053 0 58.106-3.959 90.724-30.471Zm89.734 37.8c-21.007-.373-57.672-5.123-89.736-30.274-32.229 25.255-68.984 29.947-89.744 30.287-2.23 64.873 4.028 107.88 18.61 127.858 19.6 26.948 58.824 49.384 71.021 55.119l.1.019a.225.225 0 0 0 .1-.021c12.214-5.762 51.5-28.26 71.043-55.106 14.585-19.984 20.843-63.004 18.606-127.883Z"}),K.createElement("path",{"data-name":"Trazado 339 - Contorno",d:"M127.739 2.837a12.358 12.358 0 0 1 8.015 2.976 120.447 120.447 0 0 0 45.936 23.8 142.22 142.22 0 0 0 21.155 4.1 149.679 149.679 0 0 0 17.35 1.015c.753 0 1.514-.006 2.262-.018h.333a12.159 12.159 0 0 1 8.378 3.393 12.225 12.225 0 0 1 3.846 8.3v.077c1.8 46.64 1.506 112.345-21.805 144.286-21.848 29.994-63.571 53.979-77.8 60.689a17.751 17.751 0 0 1-7.66 1.722 17.771 17.771 0 0 1-7.625-1.708c-13.258-6.222-56.016-30.731-77.828-60.718-23.3-31.93-23.6-97.632-21.8-144.275a12.414 12.414 0 0 1 3.8-8.343 12.055 12.055 0 0 1 8.393-3.417c.156 0 .314 0 .47.009.757.012 1.529.018 2.294.018a148.3 148.3 0 0 0 17.294-1.019 141.918 141.918 0 0 0 21.123-4.113 120.786 120.786 0 0 0 45.948-23.838 12.209 12.209 0 0 1 7.921-2.936Zm92.455 32.086a149.9 149.9 0 0 1-17.373-1.016 142.431 142.431 0 0 1-21.184-4.107 120.644 120.644 0 0 1-46.01-23.838 12.163 12.163 0 0 0-7.888-2.929 12.012 12.012 0 0 0-7.8 2.883 120.985 120.985 0 0 1-46.021 23.877 142.125 142.125 0 0 1-21.153 4.119 148.491 148.491 0 0 1-17.317 1.021c-.766 0-1.54-.006-2.3-.018a12.138 12.138 0 0 0-.465-.009 11.861 11.861 0 0 0-8.258 3.362 12.22 12.22 0 0 0-3.739 8.211c-1.8 46.613-1.509 112.271 21.758 144.151 21.788 29.954 64.506 54.44 77.753 60.656a17.576 17.576 0 0 0 7.542 1.69 17.555 17.555 0 0 0 7.577-1.7c14.221-6.7 55.907-30.666 77.73-60.628 23.276-31.892 23.571-97.552 21.768-144.167v-.076a12.027 12.027 0 0 0-3.785-8.16 11.963 11.963 0 0 0-8.243-3.339h-.329c-.746.006-1.508.012-2.263.012Zm-92.441-16.645.062.05a135.656 135.656 0 0 0 50.371 25.557 157.366 157.366 0 0 0 23.039 4.435 163.564 163.564 0 0 0 18.913 1.106h.273v.094c.294 7.782.6 17.213.6 28.16 0 13.373-.462 25.856-1.382 37.1-2.583 31.568-8.74 54.215-18.3 67.312-19.915 27.358-59.8 50.216-72.208 56.066a3.228 3.228 0 0 1-1.38.307 3.288 3.288 0 0 1-1.389-.307c-12.38-5.821-52.213-28.618-72.179-56.075-9.563-13.1-15.723-35.768-18.3-67.365-.919-11.247-1.384-23.729-1.381-37.1 0-10.914.3-20.327.6-28.1v-.094h.367a162.536 162.536 0 0 0 18.844-1.106 157.194 157.194 0 0 0 23-4.436 135.97 135.97 0 0 0 50.391-25.564Zm92.469 31.343h-.085a163.735 163.735 0 0 1-18.936-1.107 157.57 157.57 0 0 1-23.067-4.44 135.854 135.854 0 0 1-50.381-25.544 136.178 136.178 0 0 1-50.4 25.551 157.4 157.4 0 0 1-23.033 4.441 162.713 162.713 0 0 1-18.866 1.107h-.179c-.292 7.748-.59 17.127-.592 27.994 0 13.364.461 25.84 1.38 37.082 2.579 31.56 8.725 54.192 18.268 67.266 19.942 27.424 59.736 50.2 72.1 56.013a3.094 3.094 0 0 0 1.307.288 3.035 3.035 0 0 0 1.3-.288c12.392-5.845 52.242-28.68 72.132-56 9.541-13.068 15.686-35.681 18.265-67.213.919-11.241 1.384-23.719 1.382-37.086-.002-10.91-.301-20.307-.594-28.069Z"}),K.createElement("path",{"data-name":"Trazado 340",d:"m154.932 82.763-7.4-3.7-5.737-2.866-14.1-7.057v12.363l-15.307 6.115 15.307-6.115v-12.37L100.447 82.76v9.628l-5.029 2.014v18.257l5.029.589v8.032l11.941-1.191v54.127l7.145 2.86v11.538l8.162 4.08v-86.488l-7.206 1.441V90.14l7.206-2.528v.007l7.195 2.521v17.5l-7.195-1.435v86.488l8.159-4.08v-11.538l13.528-5.367-.024-10.18-13.5 4.006v-11.54l13.528-2.689v-9.99l5.55-.5v-9.9h-11.929v-10.822l5.524.552 6.4.639v-9.628l5.036 1.008V94.407l-5.036-2.014Zm3.2 12.886v14.772l-2.83-.567-2.2-.44v9.843l-4.4-.441-5.525-.552-2.019-.206v14.7h11.941v6.387l-3.88.344-1.67.147v10.166l-12.063 2.4-1.473.293v15.51l2.353-.7 11.151-3.315.032 6.476-12.376 4.909-1.16.455v11.657l-4.487 2.242v-81.286l5 1.008 2.2.434v-1.876l6.277 1.265V87.622l-7.149-2.866-4.933-1.971-1.39-.552v-10.12l11.433 5.717 5.749 2.875 6.391 3.19v9.745l1.152.457Z"}),K.createElement("path",{"data-name":"Trazado 340 - Contorno",d:"m126.229 66.764 1.465.734 1.466-.733v1.466l13.293 6.652 5.736 2.866 8.208 4.11V91.4l5.036 2.014v21.037l-5.036-1.008v9.46l-11.93-1.191v7.741h11.93v12.707l-5.55.5v9.853l-13.529 2.689v8.373l13.5-4 .032 13.136-13.531 5.368v11.449l-8.158 4.08v1.465l-1.466-.733-1.465.733v-1.466l-8.163-4.08v-11.452l-7.145-2.86v-53.5l-11.941 1.191v-8.347l-5.028-.589V93.417l5.028-2.014v-9.542l27.249-13.627Zm0 13.743v-9l-24.317 12.161v9.714l-5.029 2.014v15.961l5.029.589v7.717l11.941-1.191v54.754l7.145 2.86v11.624l5.231 2.615v-82.33l-7.206 1.441V89.102l10.137-3.556v1.035l7.195 2.521v17.336l5.181 1.044v-18.87l-6.229-2.5-4.932-1.971-2.311-.917v-.3L112.93 88.97l-1.088-2.722Zm25.408 4.3-5.58-2.786-15.061-7.532v6.754l.464.184 4.937 1.973 8.07 3.235v24.434l-6.276-1.265v1.869l-3.954-.781-3.241-.654v77.122l1.555-.777v-11.751l2.086-.818 11.446-4.54-.018-3.52-13.514 4.017v-18.682l2.653-.528 10.884-2.162v-10.3l5.549-.491v-3.581h-11.941V116.44l3.633.37 8.308.831V107.63l5.029 1.007V96.645l-2.95-1.182-2.079-.823Zm-18.214 6.38-5.739-2.011-5.73 2.01v14.68l4.275-.855v-.585l1.465.292 1.466-.293v.586l4.263.85Z"}),K.createElement("path",{"data-name":"Trazado 340 - Contorno",d:"m127.597 68.978.1.049.1-.049v.1l14.049 7.03 5.737 2.866 7.451 3.731v9.623l5.037 2.014v18.443l-5.037-1.008v9.617l-11.929-1.191v10.621h11.929v10.088l-5.549.5v9.98l-.079.016-13.45 2.674v11.329l13.5-4.006v.131l.025 10.246-.062.025-13.467 5.342v11.532l-.054.027-8.1 4.053v.1l-.1-.049-.1.049v-.1l-8.162-4.08v-11.532l-7.145-2.86v-54.085l-11.941 1.191v-8.058l-5.029-.589V94.337l.062-.025 4.967-1.99v-9.623l.054-.027 27.194-13.6Zm0 12.455V69.294l-27.053 13.529v9.634l-5.028 2.014v18.1l5.028.589v8.011l11.941-1.191v54.168l7.145 2.86v11.544l7.967 3.982v-86.211l-7.206 1.441v-17.7l.065-.023 7.336-2.573v.076l7.194 2.521v17.689l-.117-.023-7.078-1.411v86.217l7.962-3.982v-11.544l.062-.024 13.467-5.342-.024-9.983-13.5 4.006v-11.751l.079-.016 13.45-2.674v-10l5.55-.5v-9.714h-11.93v-11.032l11.93 1.191v-9.64l5.036 1.008V94.468l-5.036-2.014V82.82l-7.343-3.677-5.736-2.866-13.961-6.986v12.271l-.062.025-15.308 6.115-.072-.181Zm7.195 8.779-7.107-2.49-7.1 2.49v17.319l7.011-1.4v-.039l.1.019.1-.019v.039l7 1.4Zm-5.359-18.257.142.071 17.181 8.592 6.445 3.217v9.739l1.091.432 3.938 1.577v14.954l-5.029-1.008v9.831l-4.5-.452-5.525-.552-1.912-.195v14.493h11.941v6.574l-5.55.492v10.156l-13.536 2.689v15.3l13.5-4.014v.13l.032 6.542-.062.025-12.376 4.909-1.1.431v11.651l-.054.027-4.628 2.313v-81.561l5.113 1.031 2.082.411v-1.876l6.276 1.265V87.683l-7.087-2.841-4.933-1.971-1.451-.576Zm23.573 12-6.337-3.163-17.04-8.521v9.9l1.328.527 4.933 1.971 7.21 2.891v21.837l-6.277-1.265v1.876l-2.315-.457-4.879-.984v81.007l4.291-2.145v-11.664l1.222-.479 12.313-4.885-.031-6.279-13.5 4.014v-15.721l1.552-.309 11.984-2.38v-10.179l5.55-.492v-6.2h-11.941v-14.9l2.127.217 9.814.982V109.3l5.028 1.008V95.721l-3.814-1.528-1.214-.481Z"})),K.createElement("path",{"data-name":"Rect\\xE1ngulo 887",fill:"none",d:"M0 0h256v256H0z"})))},rl=function(e){return K.createElement("svg",Ot({version:"1.1",id:"Layer_1",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("g",null,K.createElement("defs",null,K.createElement("rect",{id:"SVGID_1_",x:"2.6",y:"47.4",width:"250.4",height:"161.2"})),K.createElement("g",null,K.createElement("path",{d:"M127.8,95.5c-18,0-32.5,14.6-32.5,32.5c0,18,14.6,32.5,32.5,32.5l0,0\n\t\t\tc18,0,32.5-14.6,32.5-32.5C160.3,110,145.8,95.5,127.8,95.5",fill:"currentcolor"}),K.createElement("path",{d:"M248.2,112C204.1,45.5,114.5,27.4,48,71.4C31.9,82.1,18.1,95.9,7.5,112\n\t\t\tc-6.5,9.7-6.5,22.3,0,32c44.1,66.5,133.7,84.6,200.1,40.5c16.1-10.7,29.9-24.5,40.5-40.5C254.6,134.3,254.6,121.7,248.2,112\n\t\t\t M127.8,181.2c-29.4,0-53.2-23.8-53.2-53.2s23.8-53.2,53.2-53.2S181,98.6,181,128l0,0C181,157.4,157.2,181.2,127.8,181.2",fill:"currentcolor"}))))},ol=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("defs",null,K.createElement("clipPath",{id:"prefix__a"},K.createElement("path",{d:"M0 0h256v256H0z"}))),K.createElement("g",{clipPath:"url(#prefix__a)"},K.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),K.createElement("path",{"data-name":"Rect\\xE1ngulo 860",fill:"none",d:"M0 0h256v256H0z"}),K.createElement("g",{"data-name":"share-icn"},K.createElement("path",{"data-name":"Trazado 410",d:"M251.315 67.671 207.79 25.459c-14.279-13.851-35.342 7.862-21.063 21.716l12.959 12.567a156.689 156.689 0 0 0-82.95 23.182 156.774 156.774 0 0 0-71.051 97.677 15.547 15.547 0 0 0 11.474 18.755 15.62 15.62 0 0 0 3.655.438 15.555 15.555 0 0 0 15.1-11.909c14.6-60.586 70.74-100.461 130.9-96.758l-3.335 4.317-15.767 16.248c-13.849 14.285 7.867 35.345 21.719 21.063l42.214-43.518a15.131 15.131 0 0 0-.33-21.566Z"}),K.createElement("path",{"data-name":"Trazado 411",d:"M229.501 156.071c-7.927 0-14.351 6.747-14.351 15.066v54.731H28.703V30.133h126.71c7.925 0 14.351-6.744 14.351-15.066S163.337.001 155.413.001h-130.1C11.356.001.002 11.921.002 26.575v202.854c0 14.652 11.354 26.572 25.311 26.572h193.23c13.957 0 25.311-11.92 25.311-26.572v-58.291c-.001-8.32-6.428-15.067-14.353-15.067Z"}))))},al=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("defs",null,K.createElement("clipPath",{id:"prefix__a"},K.createElement("path",{d:"M0 0h256v256H0z"}))),K.createElement("g",{clipPath:"url(#prefix__a)"},K.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),K.createElement("path",{"data-name":"edit-icn",d:"M201.683 0a56.44 56.44 0 0 0-38.86 15.85L18.897 159.94a13.219 13.219 0 0 0-3.838 7.2L.187 239.67a13.355 13.355 0 0 0 3.838 12.488A14.56 14.56 0 0 0 14.1 256a6.078 6.078 0 0 0 2.879-.48l71.962-13.932a13.2 13.2 0 0 0 7.2-3.842L240.063 93.658c21.109-21.133 21.109-56.2 0-77.328A52.948 52.948 0 0 0 201.683 0ZM51.521 220.938a29.883 29.883 0 0 0-6.717-9.126 40.622 40.622 0 0 0-9.115-6.724l5.277-24.976a46.056 46.056 0 0 1 23.508 12.008 42.7 42.7 0 0 1 11.994 23.535ZM220.393 73.966 92.299 201.726a56.271 56.271 0 0 0-14.872-23.054 65.573 65.573 0 0 0-23.028-14.89l128.094-128.24a26.406 26.406 0 0 1 19.19-7.685 28.509 28.509 0 0 1 19.19 7.685 27.729 27.729 0 0 1-.48 38.424Z"}),K.createElement("path",{"data-name":"Rect\\xE1ngulo 867",fill:"none",d:"M0 0h256v256H0z"})))},il=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("defs",null,K.createElement("clipPath",{id:"prefix__a"},K.createElement("path",{d:"M0 0h256v256H0z"}))),K.createElement("g",{clipPath:"url(#prefix__a)"},K.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),K.createElement("g",{"data-name":"Grupo 1557"},K.createElement("path",{"data-name":"Rect\\xE1ngulo 826",fill:"none",d:"M0 0h256v256H0z"}),K.createElement("path",{"data-name":"Uni\\xF3n 10",d:"M71.113 256a37.94 37.94 0 01-37.889-37.9V60.906a15.426 15.426 0 01-14.227-15.353V29.621a15.423 15.423 0 0115.4-15.4h41.541A15.378 15.378 0 0191.258.003h72.871a15.393 15.393 0 0115.334 14.218h41.531a15.423 15.423 0 0115.4 15.4v15.932a15.426 15.426 0 01-14.227 15.353V218.1a37.942 37.942 0 01-37.9 37.9zm-19.605-37.9a19.634 19.634 0 0019.605 19.614h113.164A19.637 19.637 0 00203.89 218.1V60.951H51.507zM218.117 38.6v-6.1h-56.893V18.278H94.177V32.5H37.286v6.1z"}))))},sl=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("defs",null,K.createElement("clipPath",{id:"prefix__a"},K.createElement("path",{d:"M0 0h256v256H0z"}))),K.createElement("g",{clipPath:"url(#prefix__a)"},K.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),K.createElement("path",{"data-name":"Rect\\xE1ngulo 870",fill:"none",d:"M0 0h256v256H0z"}),K.createElement("g",{"data-name":"download-icn"},K.createElement("path",{"data-name":"Trazado 362",d:"M0 104.08c0-21.751 32.822-21.751 32.822 0v118.833h190.356V104.08c0-21.751 32.822-21.751 32.822 0v135.381a16.48 16.48 0 0 1-16.4 16.54H16.415a16.485 16.485 0 0 1-16.413-16.54V104.08Zm144.415-87.773c0-21.741-32.826-21.741-32.826 0v138.227l-18.591-18.743c-15.263-15.385-38.474 8.006-23.211 23.391l46.51 46.879a16.339 16.339 0 0 0 23.406 0l46.507-46.879c15.266-15.385-7.945-38.776-23.208-23.391l-18.587 18.743V16.306Z"}))))},ll=function(e){var t=e.type,n=e.onClick,r=e.valueToSend,o=e.idField,a=e.sendOnlyId,i=void 0!==a&&a,s=e.disabled,l=void 0!==s&&s,c=e.tooltip,u=i?r[o]:r,d=pl(t)?function(e){switch(e){case"view":case"preview":return K.createElement(rl,null);case"edit":return K.createElement(al,null);case"delete":return K.createElement(il,null);case"description":return K.createElement(nl,null);case"share":return K.createElement(ol,null);case"cloud":return K.createElement(Qs,null);case"console":return K.createElement(Js,null);case"download":return K.createElement(sl,null);case"disable":return K.createElement(el,null);case"format":return K.createElement(tl,null)}return null}(t):t,p=K.createElement(xa,{type:"button","aria-label":"string"==typeof t?t:"",size:"30px",sx:{margin:"0 8px"},disabled:l,onClick:n?function(e){e.stopPropagation(),l?e.preventDefault():n(u)}:function(){return null}},d);return c&&""!==c&&(p=K.createElement(ga,{tooltip:c},p)),n?p:null},cl=Y.ZP.div((function(e){var t=e.theme,n=e.sx,r=e.withBorders,o=e.customBorderPadding,a=e.useBackground,i={};return r&&(i={border:"".concat(Rr(t,"borderColor","#eaeaea")," 1px solid"),borderRadius:2,padding:o||15}),Ot(Ot({backgroundColor:a?Rr(t,"boxBackground","#FBFAFA"):"transparent"},i),n)})),ul=function(e){var t=e.sx,n=e.children,r=e.customBorderPadding,o=Rt(e,["sx","children","customBorderPadding"]);return K.createElement(cl,Ot({},o,{sx:t,customBorderPadding:r}),n)},dl=function(e,t,n,r,o,a,i,s,l,c,u){var d=function(e,t,n,r,o,a,i){if(e){var s=function(e,t,n){if(n||2===arguments.length)for(var r,o=0,a=t.length;o=t||n<0||d&&e-c>=a}function h(){var e=xl();if(m(e))return g(e);s=setTimeout(h,function(e){var n=t-(e-l);return d?kl(n,a-(e-c)):n}(e))}function g(e){return s=void 0,p&&r?f(e):(r=o=void 0,i)}function v(){var e=xl(),n=m(e);if(r=arguments,o=this,l=e,n){if(void 0===s)return function(e){return c=e,s=setTimeout(h,t),u?f(e):i}(l);if(d)return clearTimeout(s),s=setTimeout(h,t),f(l)}return void 0===s&&(s=setTimeout(h,t)),i}return t=Cl(t)||0,Tl(n)&&(u=!!n.leading,a=(d="maxWait"in n)?Al(Cl(n.maxWait)||0,t):a,p="trailing"in n?!!n.trailing:p),v.cancel=function(){void 0!==s&&clearTimeout(s),c=0,r=l=o=s=void 0},v.flush=function(){return void 0===s?i:g(xl())},v})),Ol=Y.ZP.div((function(e){return{position:"fixed",top:0,left:0,width:"100vw",height:"100vh",backgroundColor:"transparent",zIndex:500,overscrollBehavior:"contain"}})),Rl=Y.ZP.div((function(e){var t=e.theme,n=e.sx;return Ot({position:"absolute",display:"flex",flexDirection:"column",backgroundColor:Rr(t,"dropdownSelector.backgroundColor",ee),border:"1px solid ".concat(Rr(t,"borderColor",re)),padding:"10px 10px",minWidth:150,borderRadius:4,boxShadow:"rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px","& .columnsSelectorTitle":{fontWeight:"bold",padding:"0 0 5px",borderBottom:"1px solid ".concat(Rr(t,"borderColor",re)),marginBottom:5,color:Rr(t,"fontColor",te)},"& .columnsSelectorContainer":{display:"flex",flexDirection:"column",gap:5,maxHeight:250,overflowY:"auto"}},n)})),Nl=function(e){if(!e)return{top:0,right:0};var t=e.getBoundingClientRect(),n=document.documentElement.offsetWidth;return{top:t.top+t.height,right:n-t.right}},Ml=function(e){var t=e.columns,n=e.selectedOptionIDs,r=e.onSelect,o=e.closeTriggerAction,a=e.open,i=e.anchorEl,s=void 0===i?null:i,l=(0,K.useState)(null),c=l[0],u=l[1];return(0,K.useEffect)((function(){u(a?Nl(s):null)}),[a]),(0,K.useEffect)((function(){var e=Il((function(e){e&&e.getBoundingClientRect()&&u(Nl(e))}),300);window.addEventListener("resize",(function(){o()})),window.addEventListener("scroll",(function(){e(s)}))})),a&&c?(s||console.warn("AnchorEl not set. Element will be rendered on the top of the page"),(0,X.createPortal)(K.createElement(Ol,{onClick:o},K.createElement(Rl,{sx:c,onClick:function(e){e.preventDefault(),e.stopPropagation()}},K.createElement(ul,{className:"columnsSelectorTitle"},"Shown Columns"),K.createElement(ul,{className:"columnsSelectorContainer"},t.map((function(e){return K.createElement(_a,{key:"tableColumns-".concat(e.label),label:e.label,checked:n.findIndex((function(t){return t===e.elementKey}))>=0,onChange:function(){r(e.elementKey||"")},id:"chbox-".concat(e.label),name:"chbox-".concat(e.label),value:e.label})}))))),document.body)):null},Ll=Y.ZP.div((function(e){var t=e.theme,n=e.customPaperHeight,r=e.disabled;e.noBackground;var o=e.sx;return Ot({display:"flex",overflow:"auto",flexDirection:"column",padding:"0 16px 8px",boxShadow:"none",border:"".concat(Rr(t,r?"dataTable.disabledBorder":"dataTable.border","#E2E2E2")," 1px solid"),borderRadius:3,minHeight:200,overflowY:"scroll",position:"relative",height:n||"calc(100vh - 205px)",backgroundColor:r?Rr(t,"dataTable.disabledBG","transparent"):"transparent","&.noBackground":{backgroundColor:"transparent",border:0},"& .loadingBox":{padding:"100px 0"},"& .overlayColumnSelection":{position:"absolute",right:0,top:0,"& .popoverContent":{maxHeight:250,overflowY:"auto",padding:"0 10px 10px","& .shownColumnsLabel":{color:Rr(t,"mainGrey","#000"),fontSize:12,padding:10,borderBottom:"".concat(Rr(t,"dataTable.border","#E2E2E2")," 1px solid"),width:"100%"}}},"&::-webkit-scrollbar":{width:0,height:3},"& .rowLine":{borderBottom:"".concat(Rr(t,"dataTable.border","#E2E2E2")," 1px solid"),height:40,fontSize:14,transitionDuration:"0.3s","&:focus":{outline:"initial"},"&:hover:not(.ReactVirtualized__Table__headerRow)":{userSelect:"none",backgroundColor:Rr(t,"dataTable.hoverColor","#ececec"),fontWeight:600,"&.canClick":{cursor:"pointer"},"&.canSelectText":{userSelect:"text"}},"& .selected":{fontWeight:600},"&:not(.deleted) .selected":{color:Rr(t,"dataTable.selected","#081C42")},"&.deleted .selected":{color:Rr(t,"dataTable.selectedDisabled","#C51B3F")}},"& .headerItem":{userSelect:"none",fontWeight:700,fontSize:14,fontStyle:"initial",display:"flex",alignItems:"center",outline:"none"},"& .ReactVirtualized__Table__row":{width:"100% !important",display:"flex",flexDirection:"row",alignItems:"center"},"& .ReactVirtualized__Table__headerRow":{display:"flex",flexDirection:"row",alignItems:"center",fontWeight:700,fontSize:14,borderColor:Rr(t,"dataTable.border","#39393980"),textTransform:"initial",transitionDuration:"0s"},"& .ReactVirtualized__Table__headerTruncatedText":{display:"inline-block",maxWidth:"100%",whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden"},"& .ReactVirtualized__Table__headerColumn":{marginRight:10,minWidth:0,"&:first-of-type":{marginLeft:10},"& svg":{width:12,height:12,marginRight:5,alignSelf:"flex-end"}},"& .ReactVirtualized__Table__rowColumn":{marginRight:10,minWidth:0,textOverflow:"ellipsis",whiteSpace:"nowrap","&:first-of-type":{marginLeft:10}},"& .ReactVirtualized__Table__sortableHeaderColumn":{cursor:"pointer"},"& .ReactVirtualized__Table__sortableHeaderIconContainer":{display:"flex",alignItems:"center"},"& .ReactVirtualized__Table__sortableHeaderIcon":{flex:"0 0 24px",height:"1em",width:"1em",fill:"currentColor"},"& .optionsAlignment":{display:"flex",gap:5,"& .min-icon":{width:16,height:16}},"& .text-center":{textAlign:"center"},"& .text-right":{textAlign:"right"},"& .progress-enabled":{display:"inline-flex",position:"relative",alignItems:"center",justifyContent:"center",width:30,height:30}},o)})),Pl={deleted:{color:"#00000080",backgroundColor:"#f1f0f040","&.selected":{color:"#b2b2b270"}}},Dl=function(e){var t=e.itemActions,n=e.columns,r=e.onSelect,o=e.records,a=e.isLoading,i=e.loadingMessage,s=void 0===i?K.createElement("h3",null,"Loading..."):i,l=e.entityName,c=e.selectedItems,u=e.idField,d=e.customEmptyMessage,p=void 0===d?"":d,f=e.customPaperHeight,m=void 0===f?"":f,h=e.noBackground,g=void 0!==h&&h,v=e.columnsSelector,b=void 0!==v&&v,y=e.textSelectable,E=void 0!==y&&y,S=e.columnsShown,w=void 0===S?[]:S,_=e.onColumnChange,T=void 0===_?function(e){}:_,x=e.infiniteScrollConfig,C=e.sortConfig,A=e.autoScrollToBottom,k=void 0!==A&&A;e.disabled;var I=e.onSelectAll,O=e.rowStyle,R=e.parentClassName,N=void 0===R?"":R,M=e.sx,L=(0,K.useState)(!1),P=L[0],D=L[1],Z=(0,K.useState)(null),B=Z[0],z=Z[1],F=u||"",U=t?t.find((function(e){return"view"===e.type})):null,j=function(e){D(!P),z(e.currentTarget)},H=function(){D(!1),z(null)};return K.createElement(bo,{item:!0,xs:12,className:N},K.createElement(Ll,{className:"".concat(g?"noBackground":""),customPaperHeight:m,sx:M},a&&K.createElement(bo,{container:!0,className:"loadingBox"},K.createElement(bo,{item:!0,xs:12,style:{textAlign:"center"}},s),K.createElement(bo,{item:!0,xs:12,sx:{textAlign:"center"}},K.createElement(ia,null))),b&&!a&&o.length>0&&K.createElement(K.Fragment,null,function(e){return K.createElement(ul,{sx:{margin:"10px 0 0",display:"flex",justifyContent:"flex-end"}},K.createElement(Qr,{id:"columns-selector",variant:"regular",icon:K.createElement(fl,null),iconLocation:"end",onClick:j},"Columns"),P&&K.createElement(Ml,{open:P,closeTriggerAction:H,onSelect:function(e){return T(e)},columns:e,selectedOptionIDs:w,anchorEl:B}))}(n)),o&&!a&&o.length>0?K.createElement(ji,{isRowLoaded:function(e){var t=e.index;return!!o[t]},loadMoreRows:x?x.loadMoreRecords:function(){return new Promise((function(){return!0}))},rowCount:x?x.recordsCount:o.length},(function(e){var a=e.onRowsRendered,i=e.registerChild;return K.createElement(ki,null,(function(e){var s,d,f,m=e.width,h=e.height,g=(s=m,d=t?t.filter((function(e){return"view"!==e.type})).length:0,(f=45*d+15)<80?80:f>s?s:f),v=!(!r||!c),y=!!(t&&t.length>1||t&&1===t.length&&"view"!==t[0].type);return K.createElement(As,{ref:i,disableHeader:!1,headerClassName:"headerItem",headerHeight:40,height:h,noRowsRenderer:function(){return K.createElement(K.Fragment,null,""!==p?p:"There are no ".concat(l||"items"," yet."))},overscanRowCount:10,rowHeight:40,width:m,rowCount:o.length,rowGetter:function(e){var t=e.index;return o[t]},onRowClick:function(e){!function(e){if(U){var t=U.sendOnlyId&&u?e[F]:e,n=!1;U.isDisabled&&(n="boolean"==typeof U.isDisabled?U.isDisabled:U.isDisabled(e)),U.onClick&&!n&&U.onClick(t)}}(e.rowData)},rowClassName:function(e){return"rowLine ".concat(U?"canClick":""," ").concat(!U&&E?"canSelectText":""," ").concat(O?O(e):"")},onRowsRendered:a,sort:C?C.triggerSort:void 0,sortBy:C?C.currentSort:void 0,sortDirection:C?C.currentDirection:void 0,scrollToIndex:k?o.length-1:-1,rowStyle:function(e){if(O){var t=O(e);return"string"==typeof t?Rr(Pl,t,{}):t}return{}}},v&&K.createElement(Ts,{headerRenderer:function(){return K.createElement(K.Fragment,null,I?K.createElement("div",{className:"checkAllWrapper"},K.createElement(_a,{label:"",onChange:I,value:"all",id:"selectAll",name:"selectAll",checked:(null==c?void 0:c.length)===o.length})):K.createElement(K.Fragment,null,"Select"))},dataKey:"select-".concat(F),width:45,disableSort:!0,cellRenderer:function(e){var t=e.rowData,n=!!c&&c.includes($s(t)?t:"".concat(t[F]));return K.createElement(_a,{value:$s(t)?t:"".concat(t[F]),color:"primary",className:"TableCheckbox",checked:n,onChange:r,onClick:function(e){e.stopPropagation()}})}}),dl(n,m,g,v,y,c||[],F,b,w,C?C.currentSort:"",C?C.currentDirection:void 0),y&&K.createElement(Ts,{dataKey:"column-options",width:g,headerClassName:"optionsAlignment",className:"optionsAlignment",cellRenderer:function(e){var n=e.rowData,r=!!c&&c.includes($s(n)?n:"".concat(n[F]));return function(e,t,n,r){return e.map((function(e,o){if("view"===e.type)return null;var a=!1;return e.isDisabled&&(a="boolean"==typeof e.isDisabled?e.isDisabled:e.isDisabled(t)),e.showLoader&&("boolean"==typeof e.showLoader&&e.showLoader||e.showLoader(t))?K.createElement("div",{className:"progress-enabled"},K.createElement(ia,{style:{width:18,height:18},key:"actions-loader-".concat(e.type,"-").concat(o.toString())})):K.createElement(ll,{tooltip:e.tooltip,type:e.type,onClick:e.onClick,valueToSend:t,selected:n,key:"actions-".concat(e.type,"-").concat(o.toString()),idField:r,sendOnlyId:!!e.sendOnlyId,disabled:a})}))}(t||[],n,r,F)}}))}))})):K.createElement(K.Fragment,null,!a&&K.createElement("div",{id:"empty-results"},""!==p?p:"There are no ".concat(l||"items"," yet.")))))},Zl=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("defs",null,K.createElement("clipPath",{id:"prefix__a"},K.createElement("path",{d:"M0 0h256v256H0z"}))),K.createElement("g",{"data-name":"Back Settings",clipPath:"url(#prefix__a)"},K.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),K.createElement("path",{"data-name":"arrow-icn",d:"M236.198 108.063c26.394 0 26.394 40.032 0 40.032H68.514l22.739 22.668c18.656 18.623-9.726 46.923-28.382 28.318L5.998 142.348a19.991 19.991 0 0 1 0-28.548l56.877-56.716c18.656-18.6 47.038 9.684 28.382 28.3l-22.743 22.679h167.684Z"}),K.createElement("path",{"data-name":"Rect\\xE1ngulo 863",fill:"none",d:"M0 0h256v256H0z"})))},Bl=Y.ZP.button((function(e){var t=e.theme,n=e.sx;return Ot({display:"flex",alignItems:"center",textDecoration:"none",justifyContent:"center",flexDirection:"row",height:"30px",paddingLeft:0,background:"transparent",border:0,cursor:"pointer","& .label":{color:Rr(t,"backLink.color","#073052"),fontSize:14,fontWeight:600,lineHeight:1,paddingTop:1,marginRight:10},"&:hover .icon":{background:Rr(t,"backLink.hover","#eaedee"),borderRadius:"2px"},"& .icon":{lineHeight:1,marginRight:"3px",display:"flex",alignItems:"center",width:"28px",height:"30px","& .min-icon":{width:"17px",height:"11px",margin:"auto",color:Rr(t,"backLink.arrow","#081C42")}}},n)})),zl=function(e){var t=e.label,n=e.sx,r=Rt(e,["label","sx"]);return K.createElement(Bl,Ot({sx:n},r),K.createElement("span",{className:"icon"},K.createElement(Zl,null)),K.createElement("span",{className:"label"},t))},Fl=Y.ZP.div((function(e){var t=e.theme;return{border:"1px solid ".concat(Rr(t,"borderColor","#E2E2E2")),borderRadius:2,backgroundColor:Rr(t,"boxBackground","#FBFAFA"),paddingLeft:25,paddingTop:20,paddingBottom:20,paddingRight:30,"& .leftItems":{fontSize:16,fontWeight:"bold",display:"flex",alignItems:"center","& .min-icon":{marginRight:15,height:28,width:38}},"& .helpText":{fontSize:16,paddingLeft:5,marginTop:15}}})),Ul=function(e){var t=e.iconComponent,n=e.title,r=e.help;return K.createElement(Fl,null,K.createElement(bo,{container:!0},K.createElement(bo,{item:!0,xs:12,className:"leftItems"},t||null,n),r&&K.createElement(bo,{item:!0,xs:12,className:"helpText"},r)))},jl=Y.ZP.div((function(e){var t=e.theme,n=e.separator,r=e.sx;return Ot({display:"flex",alignItems:"center",justifyContent:"flex-start",borderBottom:n?"1px solid ".concat(Rr(t,"borderColor","#eaeaea")):"",gap:"10px"},r)})),Hl=function(e){var t=e.separator,n=e.icon,r=e.children,o=e.actions,a=e.sx;return K.createElement(jl,{separator:t,sx:a},K.createElement(bo,{item:!0,xs:!0,sx:{display:"flex",flexGrow:1,justifyContent:"flex-start",alignItems:"center",marginLeft:"10px","& svg":{marginRight:"10px"}}},n,K.createElement("h3",null,r)),o&&K.createElement(bo,{item:!0,xs:!0,sx:{display:"flex",justifyContent:"flex-end",marginRight:"10px"}}," ",o))},Gl=function(e){var t,n=e.children,r=e.title,o=void 0===r?"":r,a=e.helpBox,i=e.icon,s=e.sx,l=e.containerPadding,c=void 0===l||l,u=e.withBorders,d=void 0===u||u;return K.createElement(ul,{withBorders:d,sx:Ot((t={display:"grid",padding:c?25:0,gap:"25px",gridTemplateColumns:"1fr","& .inputItem:not(:last-of-type)":{marginBottom:12}},t["@media (min-width: ".concat(Rr(Q,"md",0),"px)")]={gridTemplateColumns:a?"2fr 1.2fr":"1fr"},t),s)},K.createElement(ul,null,""!==o&&K.createElement(Hl,{icon:i,sx:{marginBottom:16}},o),n),a)},Vl=Y.ZP.div((function(e){e.theme;var t=e.sx,n=e.variant;return Ot({boxSizing:"content-box",maxWidth:"constrained"===n?1220:"initial",padding:32},t)})),Wl=function(e){var t=e.sx,n=e.children,r=e.variant,o=e.className,a=Rt(e,["sx","children","variant","className"]);return K.createElement(Vl,Ot({sx:t,variant:r},a),K.createElement(bo,{container:!0},K.createElement(bo,{item:!0,xs:12,className:o},n)))},ql=Y.ZP.main((function(e){var t=e.theme;return{flexGrow:1,height:"100vh",overflow:"auto",position:"relative",backgroundColor:Rr(t,"bgColor","#fff"),color:Rr(t,"fontColor","#000")}})),$l=Y.ZP.div((function(e){var t,n=e.horizontal,r={};return e.mobileModeAuto&&((t={})["@media (max-width: ".concat(Rr(Q,"md",0),"px)")]={flexDirection:"column"},r=t),Ot({display:"flex",flexDirection:n?"column":"row"},r)})),Kl=function(e){var t=e.children,n=e.menu,r=e.horizontal,o=e.mobileModeAuto,a=void 0===o||o;return K.createElement($l,{horizontal:r,mobileModeAuto:a},n&&(0,K.cloneElement)(n,{mobileModeAuto:a}),K.createElement(ql,null,t))},Yl=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("path",{d:"m128,66.5c30.9,0,56,25.1,56,56,0,7.3-1.5,14.1-4,20.5l32.7,32.7c16.9-14.1,30.2-32.3,38.4-53.2-19.4-49.1-67.1-83.9-123.1-83.9-15.7,0-30.7,2.8-44.5,7.8l24.2,24.2c6.2-2.7,13-4.1,20.3-4.1ZM16.1,35.9l25.5,25.5,5.1,5.1c-18.6,14.5-33.1,33.7-41.8,55.9,19.4,49.1,67.1,83.9,123.1,83.9,17.3,0,33.9-3.4,49-9.4l4.7,4.7,32.8,32.7,14.2-14.2L30.3,21.7l-14.2,14.2Zm61.8,61.9l17.3,17.3c-.6,2.3-.9,4.8-.9,7.3,0,18.6,15,33.6,33.6,33.6,2.5,0,4.9-.3,7.3-.9l17.3,17.3c-7.5,3.7-15.8,5.9-24.6,5.9-30.9,0-56-25.1-56-56,.1-8.7,2.3-17,6-24.5Zm48.3-8.7l35.2,35.2.2-1.8c0-18.6-15-33.6-33.6-33.6l-1.8.2Z"}))},Xl=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("path",{d:"m127.98,44.38c-55.8,0-103.5,34.8-122.9,83.8,19.3,49,67,83.8,122.9,83.8s103.5-34.8,122.9-83.8c-19.4-49-67.1-83.8-122.9-83.8Zm0,139.6c-30.8,0-55.8-25-55.8-55.8s25-55.8,55.8-55.8,55.8,25,55.8,55.8-25,55.8-55.8,55.8Zm0-89.3c-18.5,0-33.5,15-33.5,33.5s15,33.5,33.5,33.5,33.5-15,33.5-33.5-15-33.5-33.5-33.5Z"}))},Ql=Y.ZP.input((function(e){var t=e.theme,n=e.error,r=e.startIcon,o=e.overlayIcon,a=e.overlayObject,i=e.originType,s=Rr(t,"inputBox.border","#E2E2E2"),l=Rr(t,"inputBox.hoverBorder","#000110");return n&&""!==n&&(s=Rr(t,"inputBox.error","#C51B3F"),l=Rr(t,"inputBox.error","#C51B3F")),{height:38,width:"100%",paddingTop:0,paddingRight:o||a||"password"===i?35:15,paddingLeft:r?35:15,paddingBottom:0,color:Rr(t,"inputBox.color","#07193E"),fontSize:13,fontWeight:600,border:"".concat(s," 1px solid"),borderRadius:3,outline:"none",transitionDuration:"0.1s",backgroundColor:Rr(t,"inputBox.backgroundColor","#fff"),"&:placeholder":{color:Rr(t,"inputBox.placeholderColor","#858585"),opacity:1,fontWeight:400},"&:hover":{borderColor:l},"&:focus":{borderColor:l},"&:disabled":{border:Rr(t,"inputBox.disabledBorder","#494A4D"),backgroundColor:Rr(t,"inputBox.disabledBackground","#B4B4B4"),color:Rr(t,"inputBox.disabledText","#E6EBEB"),"&:placeholder":{color:Rr(t,"inputBox.disabledPlaceholder","#E6EBEB")}}}})),Jl=Y.ZP.div((function(e){var t=e.theme,n=e.error,r=e.sx;return Ot({display:"flex",flexGrow:1,width:"100%","& .errorText":{fontSize:12,color:Rr(t,"inputBox.error","#C51B3F"),marginTop:3},"& .textBoxContainer":{width:"100%",flexGrow:1,position:"relative",minWidth:160},"& .tooltipContainer":{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},"& .overlayAction":{position:"absolute",right:5,top:6},"& .inputLabel":{marginBottom:n?18:0},"& .startOverlayIcon":{position:"absolute",left:10,top:10,"& svg":{width:14,height:14,fill:Rr(t,"inputBox.color","#07193E")}}},r)})),ec=function(e){var t=e.id,n=e.tooltip,r=void 0===n?"":n,o=e.index,a=e.type,i=e.overlayIcon,s=e.noLabelMinWidth,l=e.overlayId,c=e.overlayAction,u=e.overlayObject,d=e.label,p=void 0===d?"":d,f=e.required,m=e.startIcon,h=e.className,g=e.error,v=e.sx,b=Rt(e,["id","tooltip","index","type","overlayIcon","noLabelMinWidth","overlayId","overlayAction","overlayObject","label","required","startIcon","className","error","sx"]),y=(0,K.useState)(!1),E=y[0],S=y[1],w=i,_=a;return"password"!==a||i||(w=E?K.createElement(Yl,null):K.createElement(Xl,null),_=E?"text":"password"),K.createElement(Jl,{error:!!g&&""!==g,sx:v,className:"inputItem ".concat(h)},""!==p&&K.createElement(ba,{htmlFor:t,noMinWidth:s,className:"inputLabel"},p,f?"*":"",""!==r&&K.createElement(ul,{className:"tooltipContainer"},K.createElement(ga,{tooltip:r,placement:"top"},K.createElement(ul,{className:r},K.createElement(Sa,null))))),K.createElement(ul,{className:"textBoxContainer"},m&&K.createElement(ul,{className:"startOverlayIcon"},m),K.createElement(Ql,Ot({id:t,fullWidth:!0,type:_,error:g,className:"inputRebase","data-index":o,startIcon:m,overlayObject:u,overlayIcon:i,originType:a},b)),w&&K.createElement(ul,{className:"overlayAction"},K.createElement(xa,{onClick:c?function(){c()}:function(){return S(!E)},id:l,size:"25px",type:"button"},w)),u&&K.createElement(ul,{className:"overlayAction"},u),""!==g&&K.createElement(ul,{className:"errorText"},g)))},tc=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("g",{id:"noun_chevron_2320228",transform:"translate(5.595 10) rotate(180)"},K.createElement("path",{id:"Path_6842",d:"M-178.01,7.8c-3.9-0.03-7.62-1.63-10.34-4.43c-5.81-5.68-5.92-15-0.25-20.81\n\t\tc0.08-0.08,0.16-0.16,0.25-0.25l100.13-100.13l-100.13-100.48c-5.81-5.68-5.92-15-0.25-20.81c0.08-0.08,0.16-0.16,0.25-0.25\n\t\tc5.68-5.81,15-5.92,20.81-0.25c0.08,0.08,0.16,0.16,0.25,0.25l110.82,110.82c2.8,2.72,4.39,6.44,4.43,10.34\n\t\tc0.11,3.93-1.51,7.71-4.43,10.34L-167.29,2.99C-170.07,5.97-173.93,7.71-178.01,7.8z"})))},nc=Y.ZP.div((function(e){var t=e.theme,n=e.sx;return Ot({boxSizing:"border-box",flexBasis:"100%",width:"100%",fontSize:12,color:Rr(t,"breadcrumbs.textColor","#969FA8"),fontWeight:"bold",border:"".concat(Rr(t,"breadcrumbs.border","#eaeaea")," 1px solid"),height:38,display:"flex",alignItems:"center",backgroundColor:Rr(t,"breadcrumbs.backgroundColor","#FCFCFD"),marginRight:10,"& a":{textDecoration:"none",color:Rr(t,"breadcrumbs.linksColor","#969FA8"),"&:hover":{textDecoration:"underline"}},"& .min-icon":{width:16,minWidth:16},"& .backButton":{border:"".concat(Rr(t,"breadcrumbs.backButton.border","#EAEDEE")," 1px solid"),backgroundColor:Rr(t,"breadcrumbs.backButton.backgroundColor","#FFF"),borderLeft:0,borderRadius:0,width:38,height:38,marginRight:"10px","& > svg":{fill:Rr(t,"breadcrumbs.textColor","#969FA8")}},"& .breadcrumbsList":{textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap",display:"inline-block",flexGrow:1,textAlign:"left",marginLeft:15,marginRight:10,width:0},"& .slashSpacingStyle":{margin:"0 5px"}},n)})),rc=function(e){var t=e.sx,n=e.children,r=e.additionalOptions,o=e.goBackFunction;return K.createElement(nc,{sx:t},K.createElement(xa,{onClick:o,className:"backButton"},K.createElement(tc,null)),K.createElement(ul,{className:"breadcrumbsList",dir:"rtl"},n),r)},oc=Y.ZP.button((function(e){var t=e.theme;return{display:"inline-flex",alignItems:"center",justifyContent:"flex-start",color:Rr(t,"actionsList.optionsTextColor","#5E5E5E"),width:"100%",height:22,margin:0,padding:"0 15px",fontSize:14,fontWeight:"normal",whiteSpace:"nowrap",backgroundColor:"transparent",border:"none",cursor:"pointer","&:hover":{backgroundColor:"transparent",color:Rr(t,"actionsList.optionsHoverTextColor","#000")},"& svg":{width:11,marginRight:8},"&:disabled":{color:Rr(t,"actionsList.disabledOptionsTextColor","#EBEBEB"),cursor:"not-allowed"},"& .buttonIcon":{width:11}}})),ac=function(e){var t=e.icon,n=e.label,r=Rt(e,["icon","label"]);return K.createElement(oc,Ot({},r),t,n)},ic=Y.ZP.div((function(e){var t=e.theme,n=e.sx;return Ot({"& .titleLabel":{fontSize:14,fontWeight:"700",color:Rr(t,"actionsList.titleColor","#000"),padding:"12px 30px 8px 22px",whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",alignItems:"center"},"& .objectActions":{backgroundColor:Rr(t,"actionsList.backgroundColor","#F8F8F8"),border:"".concat(Rr(t,"actionsList.containerBorderColor","#F1F1F1")," 1px solid"),borderRadius:3,margin:"8px 22px",padding:0,"& span":{width:"100%"},"& li":{listStyle:"none",padding:6,margin:0,borderBottom:"".concat(Rr(t,"actionsList.optionsBorder","#E5E5E5")," 1px solid"),fontSize:14,"&:first-of-type":{padding:10,fontWeight:"bold",color:Rr(t,"actionsList.titleColor","#000")},"&:last-of-type":{borderBottom:0},"&::before":{content:"' '!important"}}}},n)})),sc=function(e){var t=e.sx,n=e.items,r=e.title;return K.createElement(ic,{sx:t},K.createElement("div",{className:"titleLabel"},r),K.createElement("ul",{className:"objectActions"},K.createElement("li",null,"Actions:"),n.map((function(e,t){return K.createElement("li",{key:"action-element-".concat(t.toString())},K.createElement(ga,{tooltip:e.tooltip||""},K.createElement(ac,{label:e.label,icon:e.icon,onClick:e.action,disabled:e.disabled,style:{pointerEvents:e.disabled?"none":"initial"}})))}))))},lc=Y.ZP.div((function(e){var t=e.theme,n=e.sx;return Ot({display:"flex",justifyContent:"space-between",alignItems:"center",paddingBottom:15,borderBottom:"1px solid ".concat(Rr(t,"borderColor","#E5E5E5")),fontWeight:"bold",fontSize:18,color:Rr(t,"fontColor","#000"),margin:"20px 22px"},n)})),cc=function(e){var t=e.label,n=e.icon,r=e.sx;return K.createElement(lc,{sx:r},K.createElement("span",null,t),n)},uc=Y.ZP.div((function(e){var t,n=e.theme,r=e.sx,o=e.bottomBorder;return Ot(((t={boxSizing:"border-box",display:"flex",flexDirection:"row",flexWrap:"wrap",width:"100%","& .stContainer":{display:"flex",alignItems:"center",justifyContent:"space-between",padding:8,width:"100%",borderBottom:o?"1px solid ".concat(Rr(n,"screenTitle.border","#E5E5E5")):"none"},"& .headerBarIcon":{color:Rr(n,"screenTitle.iconColor","#000"),"& .min-icon":{width:44,height:44}},"& .headerBarSubheader":{color:Rr(n,"screenTitle.subtitleColor","#5B5C5C")},"& .titleColumn":{height:"auto",justifyContent:"center",display:"flex",flexFlow:"column",alignItems:"flex-start","& h1":{fontSize:20}},"& .leftItems":{display:"flex",alignItems:"center",gap:12},"& .rightItems":{display:"flex",alignItems:"center",gap:10}})["@media (max-width: ".concat(Rr(Q,"md",0),"px)")]={"& .stContainer":{flexDirection:"column",gap:12,flexFlow:"column",alignItems:"flex-start"},"& .headerBarIcon":{display:"none"},"& .headerBarSubheader":{display:"flex",flexDirection:"column"},"& .rightItems":{width:"100%",justifyContent:"center"}},t),r)})),dc=function(e){var t=e.icon,n=e.subTitle,r=void 0===n?"":n,o=e.title,a=e.actions,i=e.bottomBorder,s=void 0===i||i,l=e.sx;return K.createElement(uc,{sx:l,bottomBorder:s},K.createElement(ul,{className:"stContainer"},K.createElement(ul,{className:"leftItems"},t?K.createElement(ul,{className:"headerBarIcon"},t):null,K.createElement(ul,{className:"titleColumn"},K.createElement("h1",{style:{margin:0}},o),K.createElement("span",{className:"headerBarSubheader"},r))),K.createElement(ul,{className:"rightItems"},a)))},pc=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("defs",null,K.createElement("clipPath",{id:"clip-path-alert-close-icon"},K.createElement("rect",{id:"Rect\xe1ngulo_1612","data-name":"Rect\xe1ngulo 1612",width:"256",height:"256",fill:"none"})),K.createElement("clipPath",{id:"clip-path-2-alert-close-icon"},K.createElement("rect",{id:"Rect\xe1ngulo_1611","data-name":"Rect\xe1ngulo 1611",width:"256",height:"256"}))),K.createElement("g",{id:"AlertCloseIcon",clipPath:"url(#clip-path-alert-close-icon)"},K.createElement("g",{id:"AlertCloseIcon-2","data-name":"AlertCloseIcon"},K.createElement("g",{id:"Grupo_2527","data-name":"Grupo 2527",clipPath:"url(#clip-path-2-alert-close-icon)"},K.createElement("path",{id:"Trazado_7276","data-name":"Trazado 7276",d:"M230.082,256.006a25.853,25.853,0,0,1-18.328-7.6l-83.761-83.735L44.259,248.41A25.92,25.92,0,0,1,7.6,211.754l83.735-83.735L7.6,44.259A25.92,25.92,0,0,1,44.259,7.6l83.735,83.735L211.754,7.6A25.92,25.92,0,0,1,248.41,44.259l-83.735,83.761,83.735,83.735a25.924,25.924,0,0,1-18.328,44.252",transform:"translate(-0.006 -0.006)"})))))},fc=Y.ZP.div((function(e){var t=e.theme,n=e.backgroundOverlay,r=e.widthLimit,o=e.iconColor,a=e.customMaxWidth;return{"& .overlay":{position:"fixed",zIndex:1200,width:"100vw",height:"100vh",top:0,left:0,backgroundColor:n?Rr(t,"modalBox.overlayColor","#00000050"):"transparent",display:"flex",alignItems:"center",justifyContent:"center",opacity:0,"&.active":{opacity:1,transition:"opacity 0.3s"}},"& .modalContainer":{color:Rr(t,"fontColor","#000"),width:"100%",maxWidth:r?a:"100%",margin:32,backgroundColor:Rr(t,"modalBox.containerColor","#FFF"),padding:"16px 40px",borderRadius:4,boxShadow:"rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px"},"& .modalTitleBar":{position:"relative",padding:"10px 0","& .closeModalButton":{display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",top:-2,right:-14,cursor:"pointer",border:"none",backgroundColor:"transparent",fontSize:24,color:Rr(t,"modalBox.closeColor","#FFF"),padding:0,borderRadius:"100%",width:28,height:28,"& > svg":{width:14,height:14},"&:hover":{color:Rr(t,"modalBox.closeHoverColor","#EAEAEA"),backgroundColor:Rr(t,"modalBox.closeHoverBG","#000")}},"& .title":{display:"flex",alignItems:"center",justifyContent:"flex-start",gap:8,fontSize:20,color:Rr(t,"modalBox.titleColor","#000"),fontWeight:"bold","& > svg":{fill:Rr(t,"modalBox.iconColor.".concat(o),"#07193E")}}},"& .dialogContent":{maxHeight:"calc(100vh - 150px)",overflowY:"auto"}}})),mc=function(e){var t,n,r=e.onClose,o=e.open,a=e.title,i=e.children,s=e.widthLimit,l=void 0===s||s,c=e.titleIcon,u=e.backgroundOverlay,d=void 0===u||u,p=e.iconColor,f=void 0===p?"default":p,m=e.customMaxWidth,h=void 0===m?750:m,g=e.sx;n=(0,K.useCallback)((function(e){"Escape"!==e.key&&"Esc"!==e.key||t()}),[t=r]),(0,K.useEffect)((function(){return document.addEventListener("keyup",n,!1),function(){document.removeEventListener("keyup",n,!1)}}),[n]);var v=(0,K.useState)(!1),b=v[0],y=v[1];if((0,K.useEffect)((function(){o?setTimeout((function(){return y(!0)}),100):y(!1)}),[o]),!o)return null;var E=K.createElement(fc,{widthLimit:l,backgroundOverlay:d,iconColor:f,customMaxWidth:h,sx:g},K.createElement(ul,{className:"overlay ".concat(b?"active":"")},K.createElement(ul,{className:"modalContainer"},K.createElement(ul,{className:"modalTitleBar"},K.createElement(ul,{className:"title"},c,a),K.createElement("button",{className:"closeModalButton",id:"close",onClick:r},K.createElement(pc,null))),K.createElement(ul,{className:"dialogContent"},i))));return(0,X.createPortal)(E,document.body)},hc=Y.ZP.span((function(e){var t=e.theme,n=e.on;return{fontSize:12,color:n?Rr(t,"switchButton.onLabelColor","#081C42"):Rr(t,"switchButton.offLabelColor","#E2E2E2"),margin:"0 8px 0 10px",fontWeight:n?"bold":"normal"}})),gc=Y.ZP.label((function(e){var t=e.theme;return{width:54,height:24,position:"relative","& .switchRail":{position:"relative",display:"block",width:54,height:24,borderRadius:24,padding:2,boxShadow:"inset 0px 1px 3px rgba(0,0,0,0.1)"},"& input":{display:"none","& ~.switchRail":{backgroundColor:Rr(t,"switchButton.switchBackground","#E6EBEB"),"&:before":{content:"' '",position:"absolute",display:"block",width:22,height:22,top:1,left:1,borderRadius:"100%",border:"".concat(Rr(t,"switchButton.bulletBorderColor","#FFF")," 2px solid "),backgroundColor:Rr(t,"switchButton.bulletBGColor","#F1F4F4"),transitionDuration:"0.1s"}},"&:checked ~.switchRail":{backgroundColor:Rr(t,"switchButton.onBackgroundColor","#4CCB92"),"&:before":{left:"calc(100% - 23px)"}},"&:disabled:checked ~.switchRail":{backgroundColor:Rr(t,"switchButton.disabledOnBackground","#8bb0a0")},"&:disabled ~.switchRail":{cursor:"not-allowed",backgroundColor:Rr(t,"switchButton.disabledBackground","#E6EAEB"),"&:before":{borderColor:Rr(t,"switchButton.disabledBulletBorderColor","#F1F4F4"),backgroundColor:Rr(t,"switchButton.disabledBulletBGColor","#E6EAEB")}}}}})),vc=Y.ZP.div((function(){return{display:"flex",alignItems:"center"}})),bc=Y.ZP.div((function(e){e.theme;var t=e.sx;return Ot({"& .inputBase":{display:"flex",justifyContent:"space-between",alignItems:"center",flexBasis:"initial",flexWrap:"nowrap"},"& .actionDescription":{marginTop:4,padding:"0 10px",color:"#999999"}},t)})),yc=function(e){var t=e.tooltip,n=e.label,r=e.id,o=e.sx,a=e.className,i=e.switchOnly,s=e.indicatorLabels,l=e.description,c=e.checked,u=Rt(e,["tooltip","label","id","sx","className","switchOnly","indicatorLabels","description","checked"]),d=K.createElement(vc,null,!i&&K.createElement(hc,{on:!c},s&&s.length>1?s[1]:"OFF"),K.createElement(gc,{id:"".concat(r,"-switch")},K.createElement("input",Ot({type:"checkbox",id:r,checked:c},u)),K.createElement("span",{className:"switchRail"})),!i&&K.createElement(hc,{on:!!c},s?s[0]:"ON"));return i?d:K.createElement(bc,{className:"inputItem ".concat(a||""),sx:o},K.createElement(Ea,{className:"inputBase"},""!==n&&K.createElement(ba,{htmlFor:r,noMinWidth:!0},n,t&&""!==t&&K.createElement("div",{className:"tooltipContainer"},K.createElement(ga,{tooltip:t,placement:"top"},K.createElement(Sa,null)))),d),l&&K.createElement(ul,{className:"actionDescription"},l))},Ec=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 15 15"},e),K.createElement("g",{id:"OpenListIcon-full",transform:"translate(4 4.984)"},K.createElement("g",{id:"noun_chevron_2320228",transform:"translate(0.167 4.016) rotate(-90)"},K.createElement("path",{id:"Trazado_6842","data-name":"Trazado 6842",d:"M.422,0a.433.433,0,0,0-.3.117.37.37,0,0,0,0,.557L2.983,3.325.126,5.986a.37.37,0,0,0,0,.557.443.443,0,0,0,.6,0L3.889,3.609a.373.373,0,0,0,.126-.274.344.344,0,0,0-.126-.274L.727.127A.443.443,0,0,0,.422,0Z",transform:"translate(0 0)"})),K.createElement("rect",{id:"Rect\xe1ngulo_896","data-name":"Rect\xe1ngulo 896",width:"0.462",height:"0.462",transform:"translate(0 1.75)",fill:"none"})))},Sc=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 15 15"},e),K.createElement("g",{id:"Grupo_2449","data-name":"Grupo 2449",transform:"translate(-140 -181)"},K.createElement("g",{id:"OpenListIcon-full",transform:"translate(144 250.612)"},K.createElement("g",{id:"noun_chevron_2320228",transform:"translate(6.827 -63.612) rotate(90)"},K.createElement("path",{id:"Trazado_6842","data-name":"Trazado 6842",d:"M.422,6.661a.433.433,0,0,1-.3-.117.37.37,0,0,1,0-.557L2.983,3.335.126.675a.37.37,0,0,1,0-.557.443.443,0,0,1,.6,0L3.889,3.052a.373.373,0,0,1,.126.274.344.344,0,0,1-.126.274L.727,6.533a.443.443,0,0,1-.306.127Z",transform:"translate(0 0)"})),K.createElement("rect",{id:"Rect\xe1ngulo_896","data-name":"Rect\xe1ngulo 896",width:"0.462",height:"0.462",transform:"translate(0 -61.808)",fill:"none"}))))},wc=Y.ZP.div((function(e){return{position:"fixed",top:0,left:0,width:"100vw",height:"100vh",backgroundColor:"transparent",zIndex:5e3,overscrollBehavior:"contain"}})),_c=Y.ZP.div((function(e){var t=e.theme,n=e.sx;return Ot({position:"absolute",display:"flex",backgroundColor:Rr(t,"dropdownSelector.backgroundColor","#fff"),border:"1px solid ".concat(Rr(t,"borderColor","#E2E2E2")),padding:"10px 0",maxHeight:450,minWidth:150,overflowY:"auto",borderRadius:4,boxShadow:"rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px","& ul":{padding:0,margin:0,display:"flex",flexDirection:"column",width:"100%","& > li":{cursor:"pointer",listStyle:"none",width:"100%",color:Rr(t,"dropdownSelector.optionTextColor","#000"),padding:"6px 15px",fontSize:14,userSelect:"none",display:"flex",alignItems:"center",gap:10,"& svg":{width:16,height:16},'&:not([class*="Mui"])::before':{content:"' '"},"&.selected":{backgroundColor:Rr(t,"dropdownSelector.selectedBGColor","#D5D7D8"),color:Rr(t,"dropdownSelector.optionTextColor","#000")},"&:hover":{backgroundColor:Rr(t,"dropdownSelector.hoverBG","#E6EAEB"),color:Rr(t,"dropdownSelector.hoverText","#000")}}}},n)})),Tc=function(e){if(!e)return{top:0,left:0,width:0};var t=e.getBoundingClientRect();return{top:t.top+t.height,left:t.left,width:t.width}},xc=function(e){var t=e.id,n=e.options,r=e.selectedOption,o=void 0===r?"":r,a=e.onSelect,i=e.hideTriggerAction,s=e.open,l=e.anchorEl,c=void 0===l?null:l,u=(0,K.useState)(null),d=u[0],p=u[1];return(0,K.useEffect)((function(){p(s?Tc(c):null)}),[s]),(0,K.useEffect)((function(){var e=Il((function(e){e&&e.getBoundingClientRect()&&p(Tc(e))}),300);window.addEventListener("resize",(function(){i()})),window.addEventListener("scroll",(function(){e(c)}))})),s&&d?(c||console.warn("AnchorEl not set. Element will be rendered on the top of the page"),(0,X.createPortal)(K.createElement(wc,{onClick:i},K.createElement(_c,{id:t,sx:d},K.createElement("ul",null,n.map((function(e,t){return K.createElement("li",{className:"".concat(o===e.value?"selected":""),onClick:function(){a(e.value,e.extraValue||null)},key:"option-".concat(t)},e.icon,e.label)}))))),document.body)):null},Cc=Y.ZP.div((function(e){var t=e.theme,n=Rr(t,"inputBox.border","#E2E2E2"),r=Rr(t,"inputBox.hoverBorder","#000110");return{display:"flex",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",alignItems:"center",height:38,width:"100%",padding:"0 35px 0 15px",color:Rr(t,"inputBox.color","#07193E"),fontSize:13,fontWeight:600,border:"".concat(n," 1px solid"),borderRadius:3,outline:"none",transitionDuration:"0.1s",backgroundColor:Rr(t,"inputBox.backgroundColor","#fff"),userSelect:"none","&:placeholder":{color:"#858585",opacity:1,fontWeight:400},"&:hover":{borderColor:r},"&:focus":{borderColor:r},"&.disabled":{border:Rr(t,"inputBox.disabledBorder","#494A4D"),backgroundColor:Rr(t,"inputBox.disabledBackground","#B4B4B4"),color:Rr(t,"inputBox.disabledText","#E6EBEB"),"&:placeholder":{color:Rr(t,"inputBox.disabledPlaceholder","#E6EBEB")},"&:hover":{borderColor:Rr(t,"inputBox.disabledBorder","#494A4D")},"&:focus":{borderColor:Rr(t,"inputBox.disabledBorder","#494A4D")}}}})),Ac=Y.ZP.div((function(e){var t=e.theme,n=e.error,r=e.sx;return Ot({display:"flex",flexGrow:1,width:"100%","& .selectContainer":{width:"100%",flexGrow:1,position:"relative",minWidth:80},"& .tooltipContainer":{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},"& .overlayArrow":{position:"absolute",top:"50%",transform:"translateY(-50%)",marginTop:2,right:5,"& svg":{width:26,height:26,fill:Rr(t,"inputBox.color","#07193E")}},"& .inputLabel":{marginBottom:n?18:0}},r)})),kc=function(e){var t=e.id,n=e.label,r=void 0===n?"":n,o=e.required,a=e.className,i=e.tooltip,s=void 0===i?"":i,l=e.noLabelMinWidth,c=void 0!==l&&l,u=e.value,d=void 0===u?"":u,p=e.sx,f=e.options,m=e.onChange,h=e.disabled,g=void 0!==h&&h,v=e.fixedLabel,b=void 0===v?"":v,y=e.name,E=(0,K.useState)(!1),S=E[0],w=E[1],_=K.useState(null),T=_[0],x=_[1],C=f.find((function(e){return e.value===d}));return C||""!==b||console.warn("The selected value is not included in Options List"),K.createElement(Ac,{sx:p,className:"inputItem ".concat(a)},""!==r&&K.createElement(ba,{htmlFor:t,noMinWidth:c,className:"inputLabel"},r,o?"*":"",""!==s&&K.createElement(ul,{className:"tooltipContainer"},K.createElement(ga,{tooltip:s,placement:"top"},K.createElement(ul,{className:s},K.createElement(Sa,null))))),K.createElement(ul,{id:"".concat(t,"-select"),className:"selectContainer",onClick:function(e){g||(w(!S),x(e.currentTarget))}},K.createElement(Cc,{className:g?"disabled":""},K.createElement(K.Fragment,null,""!==b?b:K.createElement(K.Fragment,null,(null==C?void 0:C.label)||"")),K.createElement("input",{type:"hidden",id:t,name:y,value:d})),K.createElement(ul,{className:"overlayArrow"},S?K.createElement(Ec,null):K.createElement(Sc,null)),K.createElement(xc,{id:"".concat(t,"-options-selector"),options:f,selectedOption:d,onSelect:function(e,t){return m(e,t)},hideTriggerAction:function(){w(!1)},open:S,anchorEl:T})))},Ic=Y.ZP.label((function(e){var t=e.sx,n=e.theme;return Ot({"& input":{display:"none"},"& .radio":{position:"relative",display:"block",width:16,height:16,borderRadius:"100%",border:"1px solid ".concat(Rr(n,"checkbox.checkBoxBorder","#c3c3c3")),boxShadow:"inset 0px 1px 3px rgba(0,0,0,0.1)"},"input:checked":{"& ~ .radio":{"&:before":{content:"' '",position:"absolute",display:"block",width:12,height:12,backgroundColor:Rr(n,"checkbox.checkBoxColor","#4CCB92"),borderRadius:"100%",top:"50%",left:"50%",transform:"translateX(-50%) translateY(-50%)"}}},"input:disabled":{"& ~ .radio":{border:"1px solid ".concat(Rr(n,"checkbox.disabledBorder","#B4B4B4"))},"&:checked ~ .radio":{"&:before":{backgroundColor:Rr(n,"checkbox.disabledColor","#D5D7D7")}}}},t)})),Oc=Y.ZP.div((function(e){return{flexGrow:1,width:"100%",display:"flex",flexDirection:e.inColumn?"column":"row",justifyContent:"flex-end",gap:15,"& .optionLabel":{userSelect:"none","&.checked":{fontWeight:"bold"}}}})),Rc=Y.ZP.div((function(e){return{display:"flex",alignItems:"center",gap:5}})),Nc=function(e){var t=e.tooltip,n=e.label,r=e.id,o=e.sx,a=e.onChange,i=e.className,s=e.name,l=e.selectorOptions,c=e.currentValue,u=e.disableOptions,d=void 0!==u&&u,p=e.displayInColumn,f=void 0!==p&&p;return K.createElement(Ea,{className:"inputItem ".concat(i||""),sx:{display:"flex",justifyContent:"flex-start",alignItems:"center",flexBasis:"initial",flexWrap:"nowrap"}},""!==n&&K.createElement(ba,{htmlFor:r,noMinWidth:!0},n,t&&""!==t&&K.createElement("div",{className:"tooltipContainer"},K.createElement(ga,{tooltip:t,placement:"top"},K.createElement(Sa,null)))),K.createElement(Oc,{inColumn:f},l&&K.createElement(K.Fragment,null,l.map((function(e){return K.createElement(Rc,{key:"option-".concat(r,"-").concat(e.value)},K.createElement(Ic,{sx:o},K.createElement("input",{type:"radio",name:s,id:"option-".concat(r,"-").concat(e.value),value:e.value,defaultChecked:c===e.value,onChange:function(t){return a(t,e.extraValue)},disabled:d}),K.createElement("span",{className:"radio"})),K.createElement("label",{htmlFor:"option-".concat(r,"-").concat(e.value),className:"optionLabel ".concat(c===e.value?"checked":"")},e.label))})))))},Mc=Y.ZP.div((function(e){var t=e.theme,n=e.sx,r=e.label,o=e.multiLine;return Ot({display:"flex",width:""===r||o?"100%":"calc(100% - 170px)",alignItems:"center","& .predefinedList":{backgroundColor:Rr(t,"readBox.backgroundColor","#fbfafa"),border:"".concat(Rr(t,"readBox.borderColor","#e5e5e5")," 1px solid"),padding:"12px 10px",color:Rr(t,"readBox.textColor","#696969"),fontSize:12,fontWeight:600,minHeight:41,borderRadius:4,width:"100%"},"& .innerContent":{width:"100%",overflowX:"auto",whiteSpace:"nowrap",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},"& .innerContentMultiline":{width:"100%",maxHeight:100,overflowY:"auto",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},"& .includesActionButton":{paddingRight:45,position:"relative"},"& .overlayShareOption":{position:"absolute",width:45,right:0,top:"50%",transform:"translate(0, -50%)"}},n)})),Lc=function(e){var t=e.label,n=void 0===t?"":t,r=e.children,o=e.multiLine,a=e.actionButton,i=e.sx;return K.createElement(Mc,{className:"inputItem",label:n,multiLine:o,sx:i},""!==n&&K.createElement(ba,{className:"inputLabel"},n),K.createElement(ul,{className:"predefinedList ".concat(a?"includesActionButton":"")},K.createElement(ul,{className:o?"innerContentMultiline":"innerContent"},r),a&&K.createElement(ul,{className:"overlayShareOption"},a)))},Pc=(Y.ZP.textarea((function(e){var t=e.theme,n=e.error;e.originType;var r=Rr(t,"inputBox.border","#E2E2E2"),o=Rr(t,"inputBox.hoverBorder","#000110");return n&&""!==n&&(r=Rr(t,"inputBox.error","#C51B3F"),o=Rr(t,"inputBox.error","#C51B3F")),{fontFamily:"'Inter',sans-serif",width:"100%",resize:"none",padding:"16px 14px",color:Rr(t,"inputBox.color","#07193E"),fontSize:13,fontWeight:600,border:"".concat(r," 1px solid"),borderRadius:3,outline:"none",transitionDuration:"0.1s",backgroundColor:Rr(t,"inputBox.backgroundColor","#fff"),"&:placeholder":{color:Rr(t,"inputBox.placeholderColor","#858585"),opacity:1,fontWeight:400},"&:hover":{borderColor:o},"&:focus":{borderColor:o},"&:disabled":{border:Rr(t,"inputBox.disabledBorder","#494A4D"),backgroundColor:Rr(t,"inputBox.disabledBackground","#B4B4B4"),color:Rr(t,"inputBox.disabledText","#E6EBEB"),"&:placeholder":{color:Rr(t,"inputBox.disabledPlaceholder","#E6EBEB")}}}})),Y.ZP.div((function(e){var t=e.theme,n=e.error,r=e.sx;return Ot({display:"flex",alignItems:"flex-start",flexGrow:1,width:"100%","& .errorText":{fontSize:12,color:Rr(t,"inputBox.error","#C51B3F"),marginTop:3},"& .textBoxContainer":{width:"100%",flexGrow:1,position:"relative",minWidth:160},"& .tooltipContainer":{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},"& .inputLabel":{marginBottom:n?18:0}},r)})),function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("defs",null,K.createElement("clipPath",{id:"prefix__a"},K.createElement("path",{d:"M0 0h256v256H0z"}))),K.createElement("g",{clipPath:"url(#prefix__a)"},K.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),K.createElement("path",{"data-name":"Rect\\xE1ngulo 870",fill:"none",d:"M255.999.001v256h-256v-256z"}),K.createElement("path",{"data-name":"Trazado 454",d:"M-.001 16.413A16.487 16.487 0 0 1 16.536-.001h135.381c21.752 0 21.752 32.824 0 32.824H33.088v190.355h118.829c21.752 0 21.752 32.822 0 32.822H16.536A16.477 16.477 0 0 1-.001 239.6Zm61.308 95.176h138.227l-18.743-18.588c-15.385-15.262 8-38.471 23.393-23.205l46.878 46.5a16.345 16.345 0 0 1 0 23.408l-46.878 46.51c-15.39 15.266-38.777-7.949-23.393-23.211l18.744-18.592H61.308c-10.872 0-16.307-8.205-16.307-16.41s5.435-16.412 16.307-16.412Z"}),K.createElement("path",{"data-name":"Trazado 454 - Contorno",d:"M-.501 239.601V16.417A17 17 0 0 1 16.536-.497h135.381a16.259 16.259 0 0 1 12.61 5.3 16.393 16.393 0 0 1 3.156 5.422 18.547 18.547 0 0 1 1.048 6.193 18.547 18.547 0 0 1-1.048 6.193 16.393 16.393 0 0 1-3.156 5.422 16.259 16.259 0 0 1-12.61 5.3H33.588v189.355h118.329a16.259 16.259 0 0 1 12.61 5.3 16.374 16.374 0 0 1 3.156 5.422 18.528 18.528 0 0 1 1.048 6.191 18.531 18.531 0 0 1-1.048 6.193 16.374 16.374 0 0 1-3.156 5.422 16.259 16.259 0 0 1-12.61 5.3H16.536a17.034 17.034 0 0 1-6.625-1.328 16.992 16.992 0 0 1-5.416-3.621 16.846 16.846 0 0 1-3.655-5.373 16.663 16.663 0 0 1-1.341-6.593ZM167.731 16.415a17.535 17.535 0 0 0-.991-5.859 15.388 15.388 0 0 0-2.962-5.094A15.286 15.286 0 0 0 151.917.503H16.536A15.994 15.994 0 0 0 .499 16.417v223.184a15.989 15.989 0 0 0 16.037 15.9h135.381a15.286 15.286 0 0 0 11.861-4.959 15.368 15.368 0 0 0 2.962-5.094 17.518 17.518 0 0 0 .991-5.859 17.515 17.515 0 0 0-.991-5.857 15.368 15.368 0 0 0-2.962-5.094 15.286 15.286 0 0 0-11.861-4.959H32.588V32.324h119.329a15.286 15.286 0 0 0 11.861-4.959 15.388 15.388 0 0 0 2.962-5.094 17.526 17.526 0 0 0 .992-5.86ZM44.499 128.001a18.547 18.547 0 0 1 1.048-6.193 16.37 16.37 0 0 1 3.154-5.422 16.248 16.248 0 0 1 12.6-5.3h137.013L180.432 93.35a16.238 16.238 0 0 1-5.179-11.6 16.682 16.682 0 0 1 3.251-9.711 19.071 19.071 0 0 1 8.051-6.451 15.968 15.968 0 0 1 8.961-1.051 17 17 0 0 1 9.013 4.9l46.878 46.5a16.869 16.869 0 0 1 5.084 12.006 16.81 16.81 0 0 1-1.3 6.482 17.213 17.213 0 0 1-3.786 5.631l-46.879 46.51a16.976 16.976 0 0 1-9.01 4.9 15.975 15.975 0 0 1-8.958-1.049 19.084 19.084 0 0 1-8.054-6.453 16.694 16.694 0 0 1-3.254-9.715 16.237 16.237 0 0 1 5.179-11.6l17.882-17.736H61.298a16.249 16.249 0 0 1-12.6-5.3 16.351 16.351 0 0 1-3.154-5.422 18.527 18.527 0 0 1-1.045-6.19Zm156.248-15.912H61.306a15.275 15.275 0 0 0-11.855 4.959 15.365 15.365 0 0 0-2.961 5.094 17.538 17.538 0 0 0-.991 5.859 17.547 17.547 0 0 0 .991 5.859 15.375 15.375 0 0 0 2.961 5.092 15.276 15.276 0 0 0 11.855 4.959h139.443l-.862.855-18.744 18.592a15.257 15.257 0 0 0-4.883 10.891 15.7 15.7 0 0 0 3.067 9.133 18.064 18.064 0 0 0 7.625 6.111 14.955 14.955 0 0 0 8.4.988 16 16 0 0 0 8.482-4.625l46.878-46.51a16.222 16.222 0 0 0 3.567-5.3 15.825 15.825 0 0 0 1.222-6.1 15.868 15.868 0 0 0-4.789-11.295l-46.878-46.5a16.011 16.011 0 0 0-8.485-4.627 15 15 0 0 0-8.4.988 18.055 18.055 0 0 0-7.623 6.111 15.688 15.688 0 0 0-3.064 9.129 15.259 15.259 0 0 0 4.883 10.893Z",fill:"rgba(0,0,0,0)"})))}),Dc=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("defs",null,K.createElement("clipPath",{id:"prefix__a"},K.createElement("path",{d:"M0 0h256v256H0z"}))),K.createElement("g",{clipPath:"url(#prefix__a)"},K.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),K.createElement("circle",{"data-name":"circle-icn",cx:128,cy:128,r:128}),K.createElement("path",{"data-name":"Rect\\xE1ngulo 852",fill:"none",d:"M0 0h256v256H0z"})))},Zc=Y.ZP.div((function(e){var t=e.theme;return{position:"fixed",top:0,left:0,width:"100vw",height:"100vh",backgroundColor:"transparent",zIndex:5e3,overscrollBehavior:"contain","& > .subItemsBox":{position:"absolute",display:"inline-block",minWidth:180,backgroundColor:Rr(t,"menu.horizontal.dropBackground",oe),border:"".concat(Rr(t,"borderColor",re)),"& .menuItemButton":{width:"100%","&:hover, &.selected":{backgroundColor:Rr(t,"menu.horizontal.hoverSelectedBackground",ue),borderBottom:0,color:Rr(t,"menu.horizontal.dropHoverSelectedColor",ee),"& .iconContainer":{border:"".concat(Rr(t,"menu.horizontal.dropHoverSelectedColor",ee)," 1px solid")}}}}}})),Bc=function(e){var t=e.open,n=e.anchorEl,r=e.hideTriggerAction,o=e.children,a=(0,K.useState)(null),i=a[0],s=a[1],l=document.documentElement.offsetWidth,c=function(e){if(!e)return{top:0,left:0};var t=e.getBoundingClientRect(),n=t.left;return n+180>l?{top:t.top+t.height,right:0}:{top:t.top+t.height,left:n}};return(0,K.useEffect)((function(){s(t?c(n):null)}),[t]),(0,K.useEffect)((function(){var e=Il((function(e){e&&e.getBoundingClientRect()&&s(c(e))}),300);window.addEventListener("resize",(function(){r()})),window.addEventListener("scroll",(function(){e(n)}))})),t&&n&&i?K.createElement(Zc,{onClick:r},K.createElement(ul,{className:"subItemsBox",sx:Ot({},i)},o)):null},zc=function(e){return{display:"flex",justifyContent:"space-between",alignItems:"center",backgroundColor:"transparent",cursor:"pointer",border:"none",height:45,padding:"0 15px",whiteSpace:"nowrap",color:Rr(e,"menu.horizontal.textColor",we),borderBottom:"transparent 2px solid","& .iconContainer":{border:"".concat(Rr(e,"menu.horizontal.iconBorderColor",De)," 1px solid"),backgroundColor:"transparent"},"&.selected, &:hover":{color:Rr(e,"menu.horizontal.hoverSelectedColor",ee),borderBottom:"".concat(Rr(e,"menu.horizontal.hoverSelectedBackground",ue)," 2px solid"),"& .iconContainer":{border:"".concat(Rr(e,"menu.horizontal.hoverSelectedIconBorder",ee)," 1px solid")}}}},Fc=Y.ZP.div((function(e){var t=e.theme;return{display:"flex",flexDirection:"column",alignItems:"flex-start",justifyContent:"center",userSelect:"none",cursor:"pointer",position:"relative","& .statusArrow":{display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:Rr(t,"menu.horizontal.dropArrowBackground",Oe),width:15,height:15,minWidth:15,minHeight:15,borderRadius:2,marginLeft:5}}})),Uc=Y.ZP.button((function(e){var t=e.theme;return Ot(Ot({},zc(t)),{"& .subOption":{padding:0}})})),jc=Y.ZP.a((function(e){var t=e.theme;return Ot(Ot({},zc(t)),{textDecoration:"none"})})),Hc=Y.ZP.span((function(e){var t=e.theme;return{display:"flex",alignItems:"center",gap:22,"& .iconContainer":{position:"relative",borderRadius:"100%",width:27,height:27,minWidth:27,minHeight:27,display:"flex",alignItems:"center",justifyContent:"center","& svg:not(.badgeIcon)":{width:14,height:14},"& svg.badgeIcon":{width:8,height:8,fill:Rr(t,"menu.horizontal.notificationColor",fe),position:"absolute",top:4,right:3}},"& .labelContainer":{fontFamily:"'Inter', sans-serif",fontSize:14}}})),Gc=function(e){var t=e.icon,n=e.name,r=e.badge;return K.createElement(Hc,{className:"option"},K.createElement("span",{className:"iconContainer"},t,r&&K.createElement(Dc,{className:"badgeIcon"})),K.createElement("span",{className:"labelContainer"},n))},Vc=function e(t){var n=t.children,r=t.icon,o=t.id,a=t.name,i=t.path,s=t.onClick,l=t.badge,c=t.currentPath,u=t.isVisible,d=void 0===u||u,p=(0,K.useState)(!1),f=p[0],m=p[1],h=K.useState(null),g=h[0],v=h[1],b=!1;return c&&i&&c.startsWith(i)&&(b=!0),n&&0===n.length||!d?null:n&&n.length>0?0===n.filter((function(e){return!1!==e.isVisible})).length?null:K.createElement(Fc,null,K.createElement(Uc,{id:o,type:"button",onClick:function(e){e.stopPropagation(),m(!0),v(e.currentTarget)},className:"menuItemButton ".concat(f?"selected":"")},K.createElement(Gc,{icon:r,name:a,badge:!!l}),K.createElement(ul,{className:"statusArrow"},f?K.createElement(Ec,null):K.createElement(Sc,null))),f&&(0,X.createPortal)(K.createElement(Bc,{anchorEl:g,hideTriggerAction:function(){m(!1),v(null)},open:f},n.map((function(t){return K.createElement(e,{key:"sub-menu-opt-".concat(a,"-").concat(t.id||t.name),onClick:s,name:t.name,badge:t.badge,icon:t.icon,id:t.id,path:t.path,group:t.group,currentPath:c})}))),document.body)):(null==i?void 0:i.match(/^(https?:\/\/)?([\da-z\u0430-\u044f\.\-_]+)\.([a-z\u0430-\u044f\._]{2,6})([a-z\u0430-\u044f\d\.\-\?\/&=#%_]*)*/))?K.createElement(jc,{className:"menuItemButton",id:o,href:i,target:"_blank"},K.createElement(Gc,{icon:r,name:a,badge:!!l})):K.createElement(Uc,{className:"menuItemButton ".concat(b?"selected":""),type:"button",id:o,onClick:function(){s&&s(i||"")}},K.createElement(Gc,{icon:r,name:a,badge:!!l}))},Wc=Y.ZP.div((function(e){var t=e.theme,n=e.sx;return Ot({"& .headerBar":{padding:15,display:"flex",justifyContent:"space-between",alignItems:"center",gap:15,background:Rr(t,"menu.horizontal.menuHeaderBackground",ke),borderBottom:"".concat(Rr(t,"menu.horizontal.sectionDividerColor",Me)," 1px solid"),"& svg":{width:200},"& .endComponent":{display:"flex",alignItems:"center",gap:10}},"& .sections":{backgroundColor:Rr(t,"menu.horizontal.barBackground",ae),width:"100%",height:45,display:"flex",overflowY:"hidden",overflowX:"auto",scrollbarWidth:"none",msOverflowStyle:"none",borderBottom:"".concat(Rr(t,"borderColor",re)," 1px solid"),"&.compact":{height:5,backgroundColor:Rr(t,"menu.horizontal.noOptionsBar",ae)},"&::-webkit-scrollbar":{width:0,height:0}}},n)})),qc=function(e){var t=e.applicationLogo,n=e.options,r=e.signOutAction,o=e.callPathAction,a=e.middleComponent,i=e.endComponent,s=e.currentPath,l=e.sx;return K.createElement(Wc,{sx:l},K.createElement(ul,{className:"headerBar"},K.createElement(mo,Ot({inverse:!0},t)),a,K.createElement(ul,{className:"endComponent"},i,r&&K.createElement(xa,{id:"sign-out",onClick:r},K.createElement(Pc,null)))),K.createElement(ul,{className:"sections ".concat(n&&0!==n.length?"":"compact")},n&&n.map((function(e){return K.createElement(Vc,{key:"menu-section-".concat(e.group,"-").concat(e.id),onClick:function(t){e.onClick&&e.onClick(t),o(t)},icon:e.icon,name:e.name,group:e.group,id:e.id,path:e.path,currentPath:s,badge:e.badge,children:e.children})}))))},$c=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("g",{transform:"translate(0 0.004)"},K.createElement("path",{d:"M79.8,115.3h158c2.7-0.4,5.5,0.4,7.6,2.3c2.2,1.9,3.1,5,2.3,7.8c-0.7,3-3.1,5.3-6.1,5.9\n\t\tc-1.4,0.2-2.7,0.2-4.1,0.2H79.2c1,1,1.6,1.8,2.3,2.5l56.7,56.7c2.4,2,3.4,5.2,2.5,8.2c-0.7,3-3.1,5.3-6.1,5.9\n\t\tc-2.8,0.5-5.7-0.5-7.6-2.7L114,189.2c-19.4-19.4-39.1-38.9-58.3-58.5c-1.7-1.8-3-4-3.7-6.3c-0.4-3,0.7-5.9,3.1-7.8\n\t\tC75.5,96.1,96,75.8,116.3,55.4c3.7-3.7,7.4-7.6,11.3-11.1c2.7-2.5,6.7-3,9.8-1c3.1,1.5,4.6,5.1,3.5,8.4c-0.6,1.9-1.8,3.6-3.3,4.9\n\t\tc-18.6,18.8-37.5,37.5-56.3,56.3l-2.3,2.3L79.8,115.3z"}),K.createElement("path",{d:"M25.6,128.2V16.9c0.1-1.4-0.1-2.9-0.4-4.3C24.5,9.5,22.1,7,19,6.2c-2.9-0.8-6,0.2-8,2.5\n\t\tc-2,2.2-2.9,5.1-2.5,8v111.6l0,0v111.4c-0.1,1.4,0.1,2.9,0.4,4.3c0.6,3.1,3,5.6,6.1,6.3c2.9,0.9,6.1-0.1,8-2.5\n\t\tc1.9-2.2,2.8-5.1,2.5-8L25.6,128.2C25.6,128.2,25.6,128.2,25.6,128.2z"})))},Kc=function(e){return{display:"flex",justifyContent:"space-between",alignItems:"center",backgroundColor:"transparent",cursor:"pointer",border:"none",width:"100%",height:44,padding:"0 25px",color:Rr(e,"menu.vertical.textColor",Ne),"& .iconContainer":{border:"".concat(Rr(e,"menu.vertical.iconBorderColor",De)," 1px solid"),backgroundColor:Rr(e,"menu.vertical.iconBGColor",Pe)},"&.selected, &:hover":{color:Rr(e,"menu.vertical.hoverSelectedColor",ee),background:Rr(e,"menu.vertical.hoverSelectedBackground",Re),"& .iconContainer":{border:"".concat(Rr(e,"menu.vertical.hoverSelectedIconBorder",ee)," 1px solid")}}}},Yc=Y.ZP.div((function(e){var t=e.theme;return{display:"flex",flexDirection:"column",alignItems:"flex-start",justifyContent:"center",userSelect:"none",cursor:"pointer","& > span":{width:"100%"},"& > .subItemsBox":{paddingLeft:20,width:"100%"},"& .statusArrow":{display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:Rr(t,"menu.vertical.dropArrowBackground",Oe),width:15,height:15,minWidth:15,minHeight:15,borderRadius:2}}})),Xc=Y.ZP.button((function(e){var t=e.theme;return Ot(Ot({},Kc(t)),{"& .subOption":{padding:0}})})),Qc=Y.ZP.a((function(e){var t=e.theme;return Ot(Ot({},Kc(t)),{textDecoration:"none"})})),Jc=Y.ZP.span((function(e){var t=e.theme;return{display:"flex",alignItems:"center",gap:22,"& .iconContainer":{position:"relative",borderRadius:"100%",width:27,height:27,minWidth:27,minHeight:27,display:"flex",alignItems:"center",justifyContent:"center","& svg:not(.badgeIcon)":{width:12,height:12},"& svg.badgeIcon":{width:8,height:8,fill:Rr(t,"menu.vertical.notificationColor",fe),position:"absolute",top:4,right:3}},"& .labelContainer":{fontFamily:"'Inter', sans-serif",fontSize:14}}})),eu=function(e){var t=e.icon,n=e.name,r=e.badge;return K.createElement(Jc,{className:"option"},K.createElement("span",{className:"iconContainer"},t,r&&K.createElement(Dc,{className:"badgeIcon"})),K.createElement("span",{className:"labelContainer"},n))},tu=function e(t){var n=t.children,r=t.icon,o=t.id,a=t.name,i=t.path,s=t.onClick,l=t.badge,c=t.currentPath,u=t.visibleTooltip,d=void 0!==u&&u,p=t.isVisible,f=void 0===p||p,m=(0,K.useState)(!1),h=m[0],g=m[1];(0,K.useEffect)((function(){n&&n.length>0&&n.findIndex((function(e){return e.path&&(null==c?void 0:c.startsWith(e.path))}))>=0&&g(!0)}),[c,n]);var v=!1;return c&&i&&c.startsWith(i)&&(v=!0),n&&0===n.length||!f?null:n&&n.length>0?0===n.filter((function(e){return!1!==e.isVisible})).length?null:K.createElement(Yc,null,K.createElement(ga,{tooltip:d?a:"",placement:"right"},K.createElement(Xc,{id:o,type:"button",onClick:function(){g(!h)},className:"menuItemButton"},K.createElement(eu,{icon:r,name:a,badge:!!l}),K.createElement(ul,{className:"statusArrow"},h?K.createElement(Ec,null):K.createElement(Sc,null)))),h&&K.createElement(ul,{className:"subItemsBox"},n.map((function(t){return K.createElement(ga,{tooltip:d?t.name:"",placement:"right"},K.createElement(e,{onClick:s,name:t.name,badge:t.badge,icon:t.icon,id:t.id,path:t.path,group:t.group,currentPath:c}))})))):(null==i?void 0:i.match(/^(https?:\/\/)?([\da-z\u0430-\u044f\.\-_]+)\.([a-z\u0430-\u044f\._]{2,6})([a-z\u0430-\u044f\d\.\-\?\/&=#%_]*)*/))?K.createElement(ga,{tooltip:d?a:"",placement:"right"},K.createElement(Qc,{className:"menuItemButton",id:o,href:i,target:"_blank"},K.createElement(eu,{icon:r,name:a,badge:!!l}))):K.createElement(ga,{tooltip:d?a:"",placement:"right"},K.createElement(Xc,{className:"menuItemButton ".concat(v?"selected":""),type:"button",id:o,onClick:function(){s&&s(i||"")}},K.createElement(eu,{icon:r,name:a,badge:!!l})))},nu=Y.ZP.div((function(e){var t=e.theme;return{borderBottom:"".concat(Rr(t,"menu.vertical.sectionDividerColor",Me)," 1px solid"),margin:"30px 25px 0",paddingBottom:5,userSelect:"none","& > .labelHeader":{fontSize:14,color:Rr(t,"menu.vertical.sectionLabelColor",ee),paddingBottom:6,display:"block"}}})),ru=function(e){var t=e.label,n=e.divider;return K.createElement(nu,{className:"menuHeader",divider:n},K.createElement("span",{className:"labelHeader"},t))},ou=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 10.868 22"},e),K.createElement("path",{id:"minio-logo-color",d:"M36.179,13.541q-.834-1.379-1.673-2.755c-.29-.476-.585-.949-.88-1.422l-.116-.172a2.047,2.047,0,0,0-2.624-.836,1.84,1.84,0,0,0-.846,2.481,4.385,4.385,0,0,0,.749.931c.841.894,1.709,1.762,2.544,2.662a2.626,2.626,0,0,1-.915,4.225l-.056.023V14.492a13.556,13.556,0,0,0-3.918,3.036,13.227,13.227,0,0,0-3.075,6.117L28.2,22.2c.942-.479,1.878-.95,2.856-1.446V28.83l1.3,1.323V20.076s.03-.014.127-.067a10.787,10.787,0,0,0,1.143-.633,3.862,3.862,0,0,0,.567-5.84c-.969-1.013-1.942-2.022-2.91-3.037a.623.623,0,0,1,0-.93.643.643,0,0,1,.935.053c.135.136,1.043,1.1,1.367,1.435q1.228,1.286,2.459,2.567a1.752,1.752,0,0,0,.136.116l.051-.03A.815.815,0,0,0,36.179,13.541Zm-5.124,5.715a.235.235,0,0,1-.119.159c-.519.275-1.042.543-1.564.811l-1.9.976a12.318,12.318,0,0,1,3.568-4.421l.023-.019C31.06,17.572,31.063,18.448,31.055,19.257Z",transform:"translate(-25.369 -8.153)"}))},au=Y.ZP.div((function(e){var t=e.theme,n=e.sx;return Ot({width:250,maxWidth:250,minWidth:250,height:"100vh",overflow:"auto",position:"relative",scrollbarWidth:"none",msOverflowStyle:"none","&::-webkit-scrollbar":{width:5},"&::-webkit-scrollbar-thumb":{background:Rr(t,"menu.vertical.sectionDividerColor",Me),borderRadius:0},"&::-webkit-scrollbar-track":{background:Rr(t,"borderColor",re),boxShadow:"inset 0px 0px 0px 0px ".concat(Rr(t,"borderColor",re)),borderRadius:0},background:Rr(t,"menu.vertical.background",ke),transitionDuration:"0.3s","& .menuContainer":{height:"inherit",position:"relative",display:"flex",flexDirection:"column","& .collapseButton":{position:"absolute",right:11,top:10,"& > svg":{width:12,height:12,fill:Rr(t,"menu.vertical.menuCollapseColor",Le)}}},"& .menuLogoContainer":{position:"relative",margin:"20px 30px 0",paddingBottom:20,borderBottom:"".concat(Rr(t,"menu.vertical.sectionDividerColor",Me)," 1px solid")},"& .collapsedMenuHeader":{display:"none"},"& .menuItems":{display:"flex",flexDirection:"column",flexGrow:1},"& .menuHeaderContainer":{cursor:"pointer"},"&.collapsed":{width:80,minWidth:80,boxSizing:"content-box","& .collapseButton, & .menuLogoContainer":{display:"none"},"& .labelHeader":{display:"none"},"& .collapsedMenuHeader":{display:"flex",position:"relative",alignItems:"center",justifyContent:"center",width:43,height:43,minWidth:43,minHeight:43,border:"".concat(Rr(t,"menu.vertical.iconBorderColor",De)," 1px solid"),backgroundColor:Rr(t,"menu.vertical.iconBGColor",Pe),borderRadius:"100%",margin:"25px 0","&:hover":{borderColor:Rr(t,"menu.vertical.hoverSelectedIconBorder",ee)},"& .collapsedIcon":{display:"inline-flex",color:Rr(t,"menu.vertical.menuCollapseColor",Le),"& svg":{width:30,height:30}},"& svg":{width:36,height:36}},"& .menuHeader":{marginLeft:0,marginRight:0,marginTop:0},"& .labelContainer":{display:"none"},"& .subItemsBox":{padding:0},"& span":{display:"flex",padding:0,justifyContent:"center"},"& .menuItemButton":{padding:0,display:"flex",justifyContent:"center",position:"relative"},"& .menuHeaderContainer":{display:"flex",justifyContent:"center"},"& .statusArrow":{position:"absolute",left:"50%",top:"50%",transform:"translateX(50%) translateY(20%)"}}},n)})),iu=function(e){var t=e.applicationLogo,n=e.options,r=e.displayGroupTitles,o=e.signOutAction,a=e.callPathAction,i=e.isOpen,s=e.collapseAction,l=e.currentPath,c=e.endComponent,u=e.sx,d="";return K.createElement(au,{sx:u,className:"".concat(i?"":"collapsed")},K.createElement(ul,{className:"menuContainer"},K.createElement(ul,{className:"menuHeaderContainer",onClick:s},K.createElement(ul,{className:"collapseButton"},K.createElement($c,null)),K.createElement(ul,{className:"menuLogoContainer"},K.createElement(mo,Ot({inverse:!0},t))),K.createElement(ul,{className:"collapsedMenuHeader"},K.createElement(ga,{tooltip:"Expand Menu",placement:"right"},K.createElement("span",{className:"collapsedIcon"},K.createElement(ou,null))))),K.createElement(ul,{className:"menuItems"},n&&n.map((function(e){var t=null;return r&&e.group&&d!==e.group&&(d=e.group,t=K.createElement(ru,{label:e.group})),K.createElement(K.Fragment,{key:"menu-section-".concat(e.group||"common","-").concat(e.id||e.name)},t,K.createElement(tu,{onClick:function(t){e.onClick?e.onClick(t):a(t)},icon:e.icon,name:e.name,group:e.group,id:e.id,path:e.path,currentPath:l,badge:e.badge,children:e.children,visibleTooltip:!i}))})),o&&K.createElement(ul,{sx:{marginTop:"auto"}},c,K.createElement(ru,{label:""}),K.createElement(tu,{id:"sign-out",group:"common",name:"Sign Out",icon:K.createElement(Pc,null),onClick:o,visibleTooltip:!i})))))},su=function(e){return K.createElement("svg",Ot({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),K.createElement("defs",null,K.createElement("clipPath",{id:"prefix__a"},K.createElement("path",{d:"M0 0h256v256H0z"}))),K.createElement("g",{clipPath:"url(#prefix__a)"},K.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),K.createElement("g",{"data-name":"CollapseIcon"},K.createElement("path",{"data-name":"Rect\\xE1ngulo 841",fill:"none",d:"M0 0h256v256H0z"}),K.createElement("path",{"data-name":"Rect\\xE1ngulo 842",d:"M0 46h256v28H0z"}),K.createElement("path",{"data-name":"Rect\\xE1ngulo 843",d:"M0 116h256v28H0z"}),K.createElement("path",{"data-name":"Rect\\xE1ngulo 844",d:"M0 186h256v28H0z"}))))},lu=Y.ZP.div((function(e){var t=e.theme,n=e.sx;return Ot({width:"100vw",height:"100vh",overflow:"auto",position:"fixed",top:0,left:0,background:Rr(t,"menu.vertical.background",ke),transitionDuration:"0.3s","& .menuContainer":{height:"inherit",position:"relative",display:"flex",flexDirection:"column","& .collapseButton":{position:"absolute",right:15,top:15,"& > svg":{width:20,height:20,fill:Rr(t,"menu.vertical.menuCollapseColor",Le)}}},"& .menuLogoContainer":{display:"flex",justifyContent:"center",position:"relative",margin:"20px 30px 0","& svg":{width:150}},"& .collapsedMenuHeader":{display:"none"},"& .menuItems":{display:"flex",flexDirection:"column",flexGrow:1,height:"100%"},"& .menuHeaderContainer":{cursor:"pointer"}},n)})),cu=function(e){var t=e.applicationLogo,n=e.options,r=e.displayGroupTitles,o=e.signOutAction,a=e.callPathAction,i=e.collapseAction,s=e.currentPath,l=e.endComponent,c="";return K.createElement(lu,null,K.createElement(ul,{className:"menuContainer"},K.createElement(ul,{className:"menuHeaderContainer",onClick:i},K.createElement(ul,{className:"collapseButton"},K.createElement(pc,null)),K.createElement(ul,{className:"menuLogoContainer"},K.createElement(mo,Ot({inverse:!0},t))),K.createElement(ul,{className:"collapsedMenuHeader"},K.createElement(ga,{tooltip:"Expand Menu"},K.createElement("span",{className:"collapsedIcon"},K.createElement(ou,null))))),K.createElement(ul,{className:"menuItems"},n&&n.map((function(e){var t=null;return r&&e.group&&c!==e.group&&(c=e.group,t=K.createElement(ru,{label:e.group})),K.createElement(K.Fragment,{key:"menu-section-".concat(e.group,"-").concat(e.id)},t,K.createElement(tu,{onClick:function(t){if(e.onClick)return e.onClick(t),void i();a(t),i()},icon:e.icon,name:e.name,group:e.group,id:e.id,path:e.path,currentPath:s,badge:e.badge,children:e.children}))})),o&&K.createElement(ul,{sx:{marginTop:"auto"}},l,K.createElement(ru,{label:""}),K.createElement(tu,{group:"common",name:"Sign Out",icon:K.createElement(Pc,null),onClick:o})))))},uu=Y.ZP.div((function(e){var t=e.theme,n=e.sx;return Ot({"& .headerBar":{padding:15,display:"flex",justifyContent:"space-between",background:Rr(t,"menu.horizontal.menuHeaderBackground",ke),alignItems:"center","& svg":{width:150}},"& .sections":{backgroundColor:"#ff0",width:"100%",height:45,display:"flex",overflowY:"hidden",overflowX:"auto",scrollbarWidth:"none",msOverflowStyle:"none","&::-webkit-scrollbar":{width:0,height:0}}},n)})),du=function(e){var t=e.applicationLogo,n=e.options,r=e.displayGroupTitles,o=e.signOutAction,a=e.callPathAction,i=e.horizontal,s=e.currentPath,l=e.endComponent,c=e.sx,u=(0,K.useState)(!1),d=u[0],p=u[1];return K.createElement(K.Fragment,null,K.createElement(uu,{sx:c},K.createElement(ul,{className:"headerBar"},K.createElement(mo,Ot({inverse:!0},t)),K.createElement(xa,{id:"menu-open",onClick:function(){p(!0)}},K.createElement(su,null))),i&&K.createElement(ul,null,"middleComponent"),K.createElement(ul,{className:"menuOpen"})),d&&(0,X.createPortal)(K.createElement(cu,{options:n,applicationLogo:t,callPathAction:a,isOpen:d,collapseAction:function(){p(!1)},signOutAction:o,displayGroupTitles:r,currentPath:s,endComponent:l}),document.body))},pu=function(e){var t=e.horizontal,n=void 0!==t&&t,r=e.mobileModeAuto,o=void 0===r||r,a=Rt(e,["horizontal","mobileModeAuto"]),i=(0,K.useState)(!1),s=i[0],l=i[1];return(0,K.useEffect)((function(){var e=Il((function(){var e=document.documentElement.offsetWidth;l(e<=Q.md)}),400);window.addEventListener("resize",e)})),s&&o?K.createElement(du,Ot({},a)):n?K.createElement(qc,Ot({},a)):(a.middleComponent&&console.warn("Middle component is set, this cannot be rendered in Vertical Menu"),K.createElement(iu,Ot({},a)))},fu=Y.ZP.button((function(e){var t=e.sx,n=e.theme;return Ot({display:"flex",cursor:"pointer",alignItems:"center",backgroundColor:"transparent",borderRadius:3,padding:5,height:10,fontSize:10,border:"none",color:Rr(n,"buttons.regular.enabled.text",ae),"& svg":{width:16,height:16},"&:hover":{color:Rr(n,"buttons.regular.hover.text",ae),backgroundColor:Rr(n,"buttons.regular.hover.background",se)},"&:active":{color:Rr(n,"buttons.regular.pressed.text",ae),backgroundColor:Rr(n,"buttons.regular.pressed.background",le)},"&:disabled":{color:Rr(n,"buttons.regular.disabled.text",ge),backgroundColor:"transparent",cursor:"not-allowed"}},t)})),mu=function(e){var t=e.open,n=e.label,r=e.sx,o=Rt(e,["open","label","sx"]);return K.createElement(fu,Ot({sx:r},o),n,t?K.createElement(Ec,null):K.createElement(Sc,null))},hu=function(e){var t=e.selectedTab,n=e.useRouteTabs,r=e.id,o=e.children;return n||t===r?K.createElement(ul,{id:r},o):null},gu=Y.ZP.button((function(e){var t=e.theme,n=e.horizontal;return{cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"flex-start",gap:10,height:n?50:60,width:n?"auto":255,padding:"0 16px",border:"none",fontSize:14,fontWeight:n?"bold":"inherit",backgroundColor:n?Rr(t,"tabs.horizontal.buttons.backgroundColor","transparent"):Rr(t,"tabs.vertical.buttons.backgroundColor",Ee),color:Rr(t,n?"tabs.horizontal.buttons.labelColor":"tabs.vertical.buttons.labelColor",ae),borderBottom:n?"transparent 2px solid":"".concat(Rr(t,"tabs.vertical.borders",Ze)," 1px solid"),"&:hover":{backgroundColor:Rr(t,n?"tabs.horizontal.buttons.backgroundColor":"tabs.vertical.buttons.hoverBackground","transparent"),color:Rr(t,n?"tabs.horizontal.buttons.hoverLabelColor":"tabs.vertical.buttons.hoverLabelColor",ue)},"&:disabled":{cursor:"not-allowed",backgroundColor:n?Rr(t,"tabs.horizontal.buttons.backgroundColor","transparent"):Rr(t,"tabs.vertical.buttons.disabledBackgroundColor",he),color:Rr(t,n?"tabs.horizontal.buttons.disabledColor":"tabs.vertical.buttons.disabledColor",ge)},"& svg":{width:18,height:18},"&.selected":{fontWeight:"bold",backgroundColor:n?Rr(t,"tabs.horizontal.buttons.backgroundColor","transparent"):Rr(t,"tabs.vertical.buttons.selectedBackground",be),color:Rr(t,n?"tabs.horizontal.buttons.selectedLabelColor":"tabs.vertical.buttons.selectedLabelColor",ue),borderBottom:n?"".concat(Rr(t,"tabs.horizontal.selectedIndicatorColor",ue)," 2px solid"):"".concat(Rr(t,"tabs.vertical.borders",Ze)," 1px solid")}}})),vu=function(e){var t=e.horizontal,n=e.id,r=e.onClick,o=e.label,a=e.disabled,i=e.icon,s=e.selected;return K.createElement(gu,{horizontal:!!t,id:n,onClick:function(){return r()},disabled:a,className:"".concat(s?"selected":"")},i,o)},bu=Y.ZP.div((function(e){var t=e.theme,n=e.horizontal;return{display:"flex",flexDirection:n?"column":"row",height:"100%","& .optionsList":{display:"flex",flexDirection:n?"row":"column",flexGrow:1,width:n?"100%":"auto",border:n?"none":"".concat(Rr(t,"tabs.vertical.borders",Ze)," 1px solid"),borderBottom:"".concat(n?Rr(t,"borderColor",re):Rr(t,"tabs.vertical.borders",Ze)," 1px solid"),backgroundColor:n?Rr(t,"tabs.horizontal.backgroundColor","transparent"):Rr(t,"tabs.vertical.backgroundColor",Ee)},"& .tabsPanels":{flexGrow:1,width:"100%",padding:15,border:n?"none":"".concat(Rr(t,"tabs.vertical.borders",Ze)," 1px solid"),borderLeft:"none"}}})),yu=function(e){var t=e.horizontal,n=e.options,r=e.currentTabOrPath,o=e.useRouteTabs,a=void 0!==o&&o,i=e.routes,s=e.onTabClick,l=e.sx;return K.createElement(bu,{horizontal:!!t,sx:l},K.createElement(ul,{className:"optionsList"},n.map((function(e,n){return e?K.createElement(vu,{key:"v-tab-".concat(n),id:e.tabConfig.id,onClick:function(){s(a?e.tabConfig.to||"":e.tabConfig.id)},horizontal:!!t,label:e.tabConfig.label,disabled:!!e.tabConfig.disabled,icon:e.tabConfig.icon,selected:a?e.tabConfig.to===r:e.tabConfig.id===r}):null}))),K.createElement(ul,{className:"tabsPanels"},a?K.createElement(hu,{id:"routes-tab-container",useRouteTabs:!!a},i):n.map((function(e,t){return e.tabConfig.disabled?null:K.createElement(hu,{key:"v-tab-p-".concat(t),id:e.tabConfig.id,selectedTab:r,useRouteTabs:!!a},e?e.content:null)}))))};function Eu(e){if(e)throw e}var Su=Lt((function(e){return null!=e&&null!=e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)})),wu=Object.prototype.hasOwnProperty,_u=Object.prototype.toString,Tu=Object.defineProperty,xu=Object.getOwnPropertyDescriptor,Cu=function(e){return"function"==typeof Array.isArray?Array.isArray(e):"[object Array]"===_u.call(e)},Au=function(e){if(!e||"[object Object]"!==_u.call(e))return!1;var t,n=wu.call(e,"constructor"),r=e.constructor&&e.constructor.prototype&&wu.call(e.constructor.prototype,"isPrototypeOf");if(e.constructor&&!n&&!r)return!1;for(t in e);return void 0===t||wu.call(e,t)},ku=function(e,t){Tu&&"__proto__"===t.name?Tu(e,t.name,{enumerable:!0,configurable:!0,value:t.newValue,writable:!0}):e[t.name]=t.newValue},Iu=function(e,t){if("__proto__"===t){if(!wu.call(e,t))return;if(xu)return xu(e,t).value}return e[t]},Ou=Lt((function e(){var t,n,r,o,a,i,s=arguments[0],l=1,c=arguments.length,u=!1;for("boolean"==typeof s&&(u=s,s=arguments[1]||{},l=2),(null==s||"object"!=typeof s&&"function"!=typeof s)&&(s={});le.length){for(;a--;)if(47===e.charCodeAt(a)){if(n){r=a+1;break}}else o<0&&(n=!0,o=a+1);return o<0?"":e.slice(r,o)}if(t===e)return"";for(var i=-1,s=t.length-1;a--;)if(47===e.charCodeAt(a)){if(n){r=a+1;break}}else i<0&&(n=!0,i=a+1),s>-1&&(e.charCodeAt(a)===t.charCodeAt(s--)?s<0&&(o=a):(s=-1,o=i));return r===o?o=i:o<0&&(o=e.length),e.slice(r,o)},Zu=function(e){if(Uu(e),0===e.length)return".";for(var t,n=-1,r=e.length;--r;)if(47===e.charCodeAt(r)){if(t){n=r;break}}else t||(t=!0);return n<0?47===e.charCodeAt(0)?"/":".":1===n&&47===e.charCodeAt(0)?"//":e.slice(0,n)},Bu=function(e){Uu(e);for(var t,n=e.length,r=-1,o=0,a=-1,i=0;n--;){var s=e.charCodeAt(n);if(47!==s)r<0&&(t=!0,r=n+1),46===s?a<0?a=n:1!==i&&(i=1):a>-1&&(i=-1);else if(t){o=n+1;break}}return a<0||r<0||0===i||1===i&&a===r-1&&a===o+1?"":e.slice(a,r)},zu=function(){for(var e,t=-1,n=arguments.length,r=new Array(n),o=0;o2){if((r=o.lastIndexOf("/"))!==o.length-1){r<0?(o="",a=0):a=(o=o.slice(0,r)).length-1-o.lastIndexOf("/"),i=l,s=0;continue}}else if(o.length>0){o="",a=0,i=l,s=0;continue}t&&(o=o.length>0?o+"/..":"..",a=2)}else o.length>0?o+="/"+e.slice(i+1,l):o=e.slice(i+1,l),a=l-i-1;i=l,s=0}else 46===n&&s>-1?s++:s=-1}return o}(e,!t);return 0!==n.length||t||(n="."),n.length>0&&47===e.charCodeAt(e.length-1)&&(n+="/"),t?"/"+n:n}(e)},Fu="/";function Uu(e){if("string"!=typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}var ju=function(){return"/"};function Hu(e){return null!==e&&"object"==typeof e&&e.href&&e.origin}var Gu=["history","path","basename","stem","extname","dirname"],Vu=function(){function e(t){var n;(0,G.Z)(this,e),n=t?"string"==typeof t||function(e){return Su(e)}(t)?{value:t}:Hu(t)?{path:t}:t:{},this.data={},this.messages=[],this.history=[],this.cwd=ju(),this.value,this.stored,this.result,this.map;for(var r,o=-1;++o1?l-1:0),u=1;ua.length;l&&a.push(r);try{s=e.apply(this,a)}catch(e){if(l&&n)throw e;return r(e)}l||(s instanceof Promise?s.then(o,r):s instanceof Error?r(s):o(s))};function r(e){for(var r=arguments.length,o=new Array(r>1?r-1:0),a=1;a1?n-1:0),s=1;s=55296&&e<=57343},od.isSurrogatePair=function(e){return e>=56320&&e<=57343},od.getSurrogatePairCodePoint=function(e,t){return 1024*(e-55296)+9216+t},od.isControlCodePoint=function(e){return 32!==e&&10!==e&&13!==e&&9!==e&&12!==e&&e>=1&&e<=31||e>=127&&e<=159},od.isUndefinedCodePoint=function(e){return e>=64976&&e<=65007||ad.indexOf(e)>-1};var id={controlCharacterInInputStream:"control-character-in-input-stream",noncharacterInInputStream:"noncharacter-in-input-stream",surrogateInInputStream:"surrogate-in-input-stream",nonVoidHtmlElementStartTagWithTrailingSolidus:"non-void-html-element-start-tag-with-trailing-solidus",endTagWithAttributes:"end-tag-with-attributes",endTagWithTrailingSolidus:"end-tag-with-trailing-solidus",unexpectedSolidusInTag:"unexpected-solidus-in-tag",unexpectedNullCharacter:"unexpected-null-character",unexpectedQuestionMarkInsteadOfTagName:"unexpected-question-mark-instead-of-tag-name",invalidFirstCharacterOfTagName:"invalid-first-character-of-tag-name",unexpectedEqualsSignBeforeAttributeName:"unexpected-equals-sign-before-attribute-name",missingEndTagName:"missing-end-tag-name",unexpectedCharacterInAttributeName:"unexpected-character-in-attribute-name",unknownNamedCharacterReference:"unknown-named-character-reference",missingSemicolonAfterCharacterReference:"missing-semicolon-after-character-reference",unexpectedCharacterAfterDoctypeSystemIdentifier:"unexpected-character-after-doctype-system-identifier",unexpectedCharacterInUnquotedAttributeValue:"unexpected-character-in-unquoted-attribute-value",eofBeforeTagName:"eof-before-tag-name",eofInTag:"eof-in-tag",missingAttributeValue:"missing-attribute-value",missingWhitespaceBetweenAttributes:"missing-whitespace-between-attributes",missingWhitespaceAfterDoctypePublicKeyword:"missing-whitespace-after-doctype-public-keyword",missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers:"missing-whitespace-between-doctype-public-and-system-identifiers",missingWhitespaceAfterDoctypeSystemKeyword:"missing-whitespace-after-doctype-system-keyword",missingQuoteBeforeDoctypePublicIdentifier:"missing-quote-before-doctype-public-identifier",missingQuoteBeforeDoctypeSystemIdentifier:"missing-quote-before-doctype-system-identifier",missingDoctypePublicIdentifier:"missing-doctype-public-identifier",missingDoctypeSystemIdentifier:"missing-doctype-system-identifier",abruptDoctypePublicIdentifier:"abrupt-doctype-public-identifier",abruptDoctypeSystemIdentifier:"abrupt-doctype-system-identifier",cdataInHtmlContent:"cdata-in-html-content",incorrectlyOpenedComment:"incorrectly-opened-comment",eofInScriptHtmlCommentLikeText:"eof-in-script-html-comment-like-text",eofInDoctype:"eof-in-doctype",nestedComment:"nested-comment",abruptClosingOfEmptyComment:"abrupt-closing-of-empty-comment",eofInComment:"eof-in-comment",incorrectlyClosedComment:"incorrectly-closed-comment",eofInCdata:"eof-in-cdata",absenceOfDigitsInNumericCharacterReference:"absence-of-digits-in-numeric-character-reference",nullCharacterReference:"null-character-reference",surrogateCharacterReference:"surrogate-character-reference",characterReferenceOutsideUnicodeRange:"character-reference-outside-unicode-range",controlCharacterReference:"control-character-reference",noncharacterCharacterReference:"noncharacter-character-reference",missingWhitespaceBeforeDoctypeName:"missing-whitespace-before-doctype-name",missingDoctypeName:"missing-doctype-name",invalidCharacterSequenceAfterDoctypeName:"invalid-character-sequence-after-doctype-name",duplicateAttribute:"duplicate-attribute",nonConformingDoctype:"non-conforming-doctype",missingDoctype:"missing-doctype",misplacedDoctype:"misplaced-doctype",endTagWithoutMatchingOpenElement:"end-tag-without-matching-open-element",closingOfElementWithOpenChildElements:"closing-of-element-with-open-child-elements",disallowedContentInNoscriptInHead:"disallowed-content-in-noscript-in-head",openElementsLeftAfterEof:"open-elements-left-after-eof",abandonedHeadElementChild:"abandoned-head-element-child",misplacedStartTagForHeadElement:"misplaced-start-tag-for-head-element",nestedNoscriptInHead:"nested-noscript-in-head",eofInElementThatCanContainOnlyText:"eof-in-element-that-can-contain-only-text"},sd=od,ld=id,cd=sd.CODE_POINTS,ud=function(){function e(){(0,G.Z)(this,e),this.html=null,this.pos=-1,this.lastGapPos=-1,this.lastCharPos=-1,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=65536}return(0,H.Z)(e,[{key:"_err",value:function(){}},{key:"_addGap",value:function(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}},{key:"_processSurrogate",value:function(e){if(this.pos!==this.lastCharPos){var t=this.html.charCodeAt(this.pos+1);if(sd.isSurrogatePair(t))return this.pos++,this._addGap(),sd.getSurrogatePairCodePoint(e,t)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,cd.EOF;return this._err(ld.surrogateInInputStream),e}},{key:"dropParsedChunk",value:function(){this.pos>this.bufferWaterline&&(this.lastCharPos-=this.pos,this.html=this.html.substring(this.pos),this.pos=0,this.lastGapPos=-1,this.gapStack=[])}},{key:"write",value:function(e,t){this.html?this.html+=e:this.html=e,this.lastCharPos=this.html.length-1,this.endOfChunkHit=!1,this.lastChunkWritten=t}},{key:"insertHtmlAtCurrentPos",value:function(e){this.html=this.html.substring(0,this.pos+1)+e+this.html.substring(this.pos+1,this.html.length),this.lastCharPos=this.html.length-1,this.endOfChunkHit=!1}},{key:"advance",value:function(){if(this.pos++,this.pos>this.lastCharPos)return this.endOfChunkHit=!this.lastChunkWritten,cd.EOF;var e=this.html.charCodeAt(this.pos);return this.skipNextNewLine&&e===cd.LINE_FEED?(this.skipNextNewLine=!1,this._addGap(),this.advance()):e===cd.CARRIAGE_RETURN?(this.skipNextNewLine=!0,cd.LINE_FEED):(this.skipNextNewLine=!1,sd.isSurrogate(e)&&(e=this._processSurrogate(e)),e>31&&e<127||e===cd.LINE_FEED||e===cd.CARRIAGE_RETURN||e>159&&e<64976||this._checkForProblematicCharacters(e),e)}},{key:"_checkForProblematicCharacters",value:function(e){sd.isControlCodePoint(e)?this._err(ld.controlCharacterInInputStream):sd.isUndefinedCodePoint(e)&&this._err(ld.noncharacterInInputStream)}},{key:"retreat",value:function(){this.pos===this.lastGapPos&&(this.lastGapPos=this.gapStack.pop(),this.pos--),this.pos--}}]),e}(),dd=new Uint16Array([4,52,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,106,303,412,810,1432,1701,1796,1987,2114,2360,2420,2484,3170,3251,4140,4393,4575,4610,5106,5512,5728,6117,6274,6315,6345,6427,6516,7002,7910,8733,9323,9870,10170,10631,10893,11318,11386,11467,12773,13092,14474,14922,15448,15542,16419,17666,18166,18611,19004,19095,19298,19397,4,16,69,77,97,98,99,102,103,108,109,110,111,112,114,115,116,117,140,150,158,169,176,194,199,210,216,222,226,242,256,266,283,294,108,105,103,5,198,1,59,148,1,198,80,5,38,1,59,156,1,38,99,117,116,101,5,193,1,59,167,1,193,114,101,118,101,59,1,258,4,2,105,121,182,191,114,99,5,194,1,59,189,1,194,59,1,1040,114,59,3,55349,56580,114,97,118,101,5,192,1,59,208,1,192,112,104,97,59,1,913,97,99,114,59,1,256,100,59,1,10835,4,2,103,112,232,237,111,110,59,1,260,102,59,3,55349,56632,112,108,121,70,117,110,99,116,105,111,110,59,1,8289,105,110,103,5,197,1,59,264,1,197,4,2,99,115,272,277,114,59,3,55349,56476,105,103,110,59,1,8788,105,108,100,101,5,195,1,59,292,1,195,109,108,5,196,1,59,301,1,196,4,8,97,99,101,102,111,114,115,117,321,350,354,383,388,394,400,405,4,2,99,114,327,336,107,115,108,97,115,104,59,1,8726,4,2,118,119,342,345,59,1,10983,101,100,59,1,8966,121,59,1,1041,4,3,99,114,116,362,369,379,97,117,115,101,59,1,8757,110,111,117,108,108,105,115,59,1,8492,97,59,1,914,114,59,3,55349,56581,112,102,59,3,55349,56633,101,118,101,59,1,728,99,114,59,1,8492,109,112,101,113,59,1,8782,4,14,72,79,97,99,100,101,102,104,105,108,111,114,115,117,442,447,456,504,542,547,569,573,577,616,678,784,790,796,99,121,59,1,1063,80,89,5,169,1,59,454,1,169,4,3,99,112,121,464,470,497,117,116,101,59,1,262,4,2,59,105,476,478,1,8914,116,97,108,68,105,102,102,101,114,101,110,116,105,97,108,68,59,1,8517,108,101,121,115,59,1,8493,4,4,97,101,105,111,514,520,530,535,114,111,110,59,1,268,100,105,108,5,199,1,59,528,1,199,114,99,59,1,264,110,105,110,116,59,1,8752,111,116,59,1,266,4,2,100,110,553,560,105,108,108,97,59,1,184,116,101,114,68,111,116,59,1,183,114,59,1,8493,105,59,1,935,114,99,108,101,4,4,68,77,80,84,591,596,603,609,111,116,59,1,8857,105,110,117,115,59,1,8854,108,117,115,59,1,8853,105,109,101,115,59,1,8855,111,4,2,99,115,623,646,107,119,105,115,101,67,111,110,116,111,117,114,73,110,116,101,103,114,97,108,59,1,8754,101,67,117,114,108,121,4,2,68,81,658,671,111,117,98,108,101,81,117,111,116,101,59,1,8221,117,111,116,101,59,1,8217,4,4,108,110,112,117,688,701,736,753,111,110,4,2,59,101,696,698,1,8759,59,1,10868,4,3,103,105,116,709,717,722,114,117,101,110,116,59,1,8801,110,116,59,1,8751,111,117,114,73,110,116,101,103,114,97,108,59,1,8750,4,2,102,114,742,745,59,1,8450,111,100,117,99,116,59,1,8720,110,116,101,114,67,108,111,99,107,119,105,115,101,67,111,110,116,111,117,114,73,110,116,101,103,114,97,108,59,1,8755,111,115,115,59,1,10799,99,114,59,3,55349,56478,112,4,2,59,67,803,805,1,8915,97,112,59,1,8781,4,11,68,74,83,90,97,99,101,102,105,111,115,834,850,855,860,865,888,903,916,921,1011,1415,4,2,59,111,840,842,1,8517,116,114,97,104,100,59,1,10513,99,121,59,1,1026,99,121,59,1,1029,99,121,59,1,1039,4,3,103,114,115,873,879,883,103,101,114,59,1,8225,114,59,1,8609,104,118,59,1,10980,4,2,97,121,894,900,114,111,110,59,1,270,59,1,1044,108,4,2,59,116,910,912,1,8711,97,59,1,916,114,59,3,55349,56583,4,2,97,102,927,998,4,2,99,109,933,992,114,105,116,105,99,97,108,4,4,65,68,71,84,950,957,978,985,99,117,116,101,59,1,180,111,4,2,116,117,964,967,59,1,729,98,108,101,65,99,117,116,101,59,1,733,114,97,118,101,59,1,96,105,108,100,101,59,1,732,111,110,100,59,1,8900,102,101,114,101,110,116,105,97,108,68,59,1,8518,4,4,112,116,117,119,1021,1026,1048,1249,102,59,3,55349,56635,4,3,59,68,69,1034,1036,1041,1,168,111,116,59,1,8412,113,117,97,108,59,1,8784,98,108,101,4,6,67,68,76,82,85,86,1065,1082,1101,1189,1211,1236,111,110,116,111,117,114,73,110,116,101,103,114,97,108,59,1,8751,111,4,2,116,119,1089,1092,59,1,168,110,65,114,114,111,119,59,1,8659,4,2,101,111,1107,1141,102,116,4,3,65,82,84,1117,1124,1136,114,114,111,119,59,1,8656,105,103,104,116,65,114,114,111,119,59,1,8660,101,101,59,1,10980,110,103,4,2,76,82,1149,1177,101,102,116,4,2,65,82,1158,1165,114,114,111,119,59,1,10232,105,103,104,116,65,114,114,111,119,59,1,10234,105,103,104,116,65,114,114,111,119,59,1,10233,105,103,104,116,4,2,65,84,1199,1206,114,114,111,119,59,1,8658,101,101,59,1,8872,112,4,2,65,68,1218,1225,114,114,111,119,59,1,8657,111,119,110,65,114,114,111,119,59,1,8661,101,114,116,105,99,97,108,66,97,114,59,1,8741,110,4,6,65,66,76,82,84,97,1264,1292,1299,1352,1391,1408,114,114,111,119,4,3,59,66,85,1276,1278,1283,1,8595,97,114,59,1,10515,112,65,114,114,111,119,59,1,8693,114,101,118,101,59,1,785,101,102,116,4,3,82,84,86,1310,1323,1334,105,103,104,116,86,101,99,116,111,114,59,1,10576,101,101,86,101,99,116,111,114,59,1,10590,101,99,116,111,114,4,2,59,66,1345,1347,1,8637,97,114,59,1,10582,105,103,104,116,4,2,84,86,1362,1373,101,101,86,101,99,116,111,114,59,1,10591,101,99,116,111,114,4,2,59,66,1384,1386,1,8641,97,114,59,1,10583,101,101,4,2,59,65,1399,1401,1,8868,114,114,111,119,59,1,8615,114,114,111,119,59,1,8659,4,2,99,116,1421,1426,114,59,3,55349,56479,114,111,107,59,1,272,4,16,78,84,97,99,100,102,103,108,109,111,112,113,115,116,117,120,1466,1470,1478,1489,1515,1520,1525,1536,1544,1593,1609,1617,1650,1664,1668,1677,71,59,1,330,72,5,208,1,59,1476,1,208,99,117,116,101,5,201,1,59,1487,1,201,4,3,97,105,121,1497,1503,1512,114,111,110,59,1,282,114,99,5,202,1,59,1510,1,202,59,1,1069,111,116,59,1,278,114,59,3,55349,56584,114,97,118,101,5,200,1,59,1534,1,200,101,109,101,110,116,59,1,8712,4,2,97,112,1550,1555,99,114,59,1,274,116,121,4,2,83,86,1563,1576,109,97,108,108,83,113,117,97,114,101,59,1,9723,101,114,121,83,109,97,108,108,83,113,117,97,114,101,59,1,9643,4,2,103,112,1599,1604,111,110,59,1,280,102,59,3,55349,56636,115,105,108,111,110,59,1,917,117,4,2,97,105,1624,1640,108,4,2,59,84,1631,1633,1,10869,105,108,100,101,59,1,8770,108,105,98,114,105,117,109,59,1,8652,4,2,99,105,1656,1660,114,59,1,8496,109,59,1,10867,97,59,1,919,109,108,5,203,1,59,1675,1,203,4,2,105,112,1683,1689,115,116,115,59,1,8707,111,110,101,110,116,105,97,108,69,59,1,8519,4,5,99,102,105,111,115,1713,1717,1722,1762,1791,121,59,1,1060,114,59,3,55349,56585,108,108,101,100,4,2,83,86,1732,1745,109,97,108,108,83,113,117,97,114,101,59,1,9724,101,114,121,83,109,97,108,108,83,113,117,97,114,101,59,1,9642,4,3,112,114,117,1770,1775,1781,102,59,3,55349,56637,65,108,108,59,1,8704,114,105,101,114,116,114,102,59,1,8497,99,114,59,1,8497,4,12,74,84,97,98,99,100,102,103,111,114,115,116,1822,1827,1834,1848,1855,1877,1882,1887,1890,1896,1978,1984,99,121,59,1,1027,5,62,1,59,1832,1,62,109,109,97,4,2,59,100,1843,1845,1,915,59,1,988,114,101,118,101,59,1,286,4,3,101,105,121,1863,1869,1874,100,105,108,59,1,290,114,99,59,1,284,59,1,1043,111,116,59,1,288,114,59,3,55349,56586,59,1,8921,112,102,59,3,55349,56638,101,97,116,101,114,4,6,69,70,71,76,83,84,1915,1933,1944,1953,1959,1971,113,117,97,108,4,2,59,76,1925,1927,1,8805,101,115,115,59,1,8923,117,108,108,69,113,117,97,108,59,1,8807,114,101,97,116,101,114,59,1,10914,101,115,115,59,1,8823,108,97,110,116,69,113,117,97,108,59,1,10878,105,108,100,101,59,1,8819,99,114,59,3,55349,56482,59,1,8811,4,8,65,97,99,102,105,111,115,117,2005,2012,2026,2032,2036,2049,2073,2089,82,68,99,121,59,1,1066,4,2,99,116,2018,2023,101,107,59,1,711,59,1,94,105,114,99,59,1,292,114,59,1,8460,108,98,101,114,116,83,112,97,99,101,59,1,8459,4,2,112,114,2055,2059,102,59,1,8461,105,122,111,110,116,97,108,76,105,110,101,59,1,9472,4,2,99,116,2079,2083,114,59,1,8459,114,111,107,59,1,294,109,112,4,2,68,69,2097,2107,111,119,110,72,117,109,112,59,1,8782,113,117,97,108,59,1,8783,4,14,69,74,79,97,99,100,102,103,109,110,111,115,116,117,2144,2149,2155,2160,2171,2189,2194,2198,2209,2245,2307,2329,2334,2341,99,121,59,1,1045,108,105,103,59,1,306,99,121,59,1,1025,99,117,116,101,5,205,1,59,2169,1,205,4,2,105,121,2177,2186,114,99,5,206,1,59,2184,1,206,59,1,1048,111,116,59,1,304,114,59,1,8465,114,97,118,101,5,204,1,59,2207,1,204,4,3,59,97,112,2217,2219,2238,1,8465,4,2,99,103,2225,2229,114,59,1,298,105,110,97,114,121,73,59,1,8520,108,105,101,115,59,1,8658,4,2,116,118,2251,2281,4,2,59,101,2257,2259,1,8748,4,2,103,114,2265,2271,114,97,108,59,1,8747,115,101,99,116,105,111,110,59,1,8898,105,115,105,98,108,101,4,2,67,84,2293,2300,111,109,109,97,59,1,8291,105,109,101,115,59,1,8290,4,3,103,112,116,2315,2320,2325,111,110,59,1,302,102,59,3,55349,56640,97,59,1,921,99,114,59,1,8464,105,108,100,101,59,1,296,4,2,107,109,2347,2352,99,121,59,1,1030,108,5,207,1,59,2358,1,207,4,5,99,102,111,115,117,2372,2386,2391,2397,2414,4,2,105,121,2378,2383,114,99,59,1,308,59,1,1049,114,59,3,55349,56589,112,102,59,3,55349,56641,4,2,99,101,2403,2408,114,59,3,55349,56485,114,99,121,59,1,1032,107,99,121,59,1,1028,4,7,72,74,97,99,102,111,115,2436,2441,2446,2452,2467,2472,2478,99,121,59,1,1061,99,121,59,1,1036,112,112,97,59,1,922,4,2,101,121,2458,2464,100,105,108,59,1,310,59,1,1050,114,59,3,55349,56590,112,102,59,3,55349,56642,99,114,59,3,55349,56486,4,11,74,84,97,99,101,102,108,109,111,115,116,2508,2513,2520,2562,2585,2981,2986,3004,3011,3146,3167,99,121,59,1,1033,5,60,1,59,2518,1,60,4,5,99,109,110,112,114,2532,2538,2544,2548,2558,117,116,101,59,1,313,98,100,97,59,1,923,103,59,1,10218,108,97,99,101,116,114,102,59,1,8466,114,59,1,8606,4,3,97,101,121,2570,2576,2582,114,111,110,59,1,317,100,105,108,59,1,315,59,1,1051,4,2,102,115,2591,2907,116,4,10,65,67,68,70,82,84,85,86,97,114,2614,2663,2672,2728,2735,2760,2820,2870,2888,2895,4,2,110,114,2620,2633,103,108,101,66,114,97,99,107,101,116,59,1,10216,114,111,119,4,3,59,66,82,2644,2646,2651,1,8592,97,114,59,1,8676,105,103,104,116,65,114,114,111,119,59,1,8646,101,105,108,105,110,103,59,1,8968,111,4,2,117,119,2679,2692,98,108,101,66,114,97,99,107,101,116,59,1,10214,110,4,2,84,86,2699,2710,101,101,86,101,99,116,111,114,59,1,10593,101,99,116,111,114,4,2,59,66,2721,2723,1,8643,97,114,59,1,10585,108,111,111,114,59,1,8970,105,103,104,116,4,2,65,86,2745,2752,114,114,111,119,59,1,8596,101,99,116,111,114,59,1,10574,4,2,101,114,2766,2792,101,4,3,59,65,86,2775,2777,2784,1,8867,114,114,111,119,59,1,8612,101,99,116,111,114,59,1,10586,105,97,110,103,108,101,4,3,59,66,69,2806,2808,2813,1,8882,97,114,59,1,10703,113,117,97,108,59,1,8884,112,4,3,68,84,86,2829,2841,2852,111,119,110,86,101,99,116,111,114,59,1,10577,101,101,86,101,99,116,111,114,59,1,10592,101,99,116,111,114,4,2,59,66,2863,2865,1,8639,97,114,59,1,10584,101,99,116,111,114,4,2,59,66,2881,2883,1,8636,97,114,59,1,10578,114,114,111,119,59,1,8656,105,103,104,116,97,114,114,111,119,59,1,8660,115,4,6,69,70,71,76,83,84,2922,2936,2947,2956,2962,2974,113,117,97,108,71,114,101,97,116,101,114,59,1,8922,117,108,108,69,113,117,97,108,59,1,8806,114,101,97,116,101,114,59,1,8822,101,115,115,59,1,10913,108,97,110,116,69,113,117,97,108,59,1,10877,105,108,100,101,59,1,8818,114,59,3,55349,56591,4,2,59,101,2992,2994,1,8920,102,116,97,114,114,111,119,59,1,8666,105,100,111,116,59,1,319,4,3,110,112,119,3019,3110,3115,103,4,4,76,82,108,114,3030,3058,3070,3098,101,102,116,4,2,65,82,3039,3046,114,114,111,119,59,1,10229,105,103,104,116,65,114,114,111,119,59,1,10231,105,103,104,116,65,114,114,111,119,59,1,10230,101,102,116,4,2,97,114,3079,3086,114,114,111,119,59,1,10232,105,103,104,116,97,114,114,111,119,59,1,10234,105,103,104,116,97,114,114,111,119,59,1,10233,102,59,3,55349,56643,101,114,4,2,76,82,3123,3134,101,102,116,65,114,114,111,119,59,1,8601,105,103,104,116,65,114,114,111,119,59,1,8600,4,3,99,104,116,3154,3158,3161,114,59,1,8466,59,1,8624,114,111,107,59,1,321,59,1,8810,4,8,97,99,101,102,105,111,115,117,3188,3192,3196,3222,3227,3237,3243,3248,112,59,1,10501,121,59,1,1052,4,2,100,108,3202,3213,105,117,109,83,112,97,99,101,59,1,8287,108,105,110,116,114,102,59,1,8499,114,59,3,55349,56592,110,117,115,80,108,117,115,59,1,8723,112,102,59,3,55349,56644,99,114,59,1,8499,59,1,924,4,9,74,97,99,101,102,111,115,116,117,3271,3276,3283,3306,3422,3427,4120,4126,4137,99,121,59,1,1034,99,117,116,101,59,1,323,4,3,97,101,121,3291,3297,3303,114,111,110,59,1,327,100,105,108,59,1,325,59,1,1053,4,3,103,115,119,3314,3380,3415,97,116,105,118,101,4,3,77,84,86,3327,3340,3365,101,100,105,117,109,83,112,97,99,101,59,1,8203,104,105,4,2,99,110,3348,3357,107,83,112,97,99,101,59,1,8203,83,112,97,99,101,59,1,8203,101,114,121,84,104,105,110,83,112,97,99,101,59,1,8203,116,101,100,4,2,71,76,3389,3405,114,101,97,116,101,114,71,114,101,97,116,101,114,59,1,8811,101,115,115,76,101,115,115,59,1,8810,76,105,110,101,59,1,10,114,59,3,55349,56593,4,4,66,110,112,116,3437,3444,3460,3464,114,101,97,107,59,1,8288,66,114,101,97,107,105,110,103,83,112,97,99,101,59,1,160,102,59,1,8469,4,13,59,67,68,69,71,72,76,78,80,82,83,84,86,3492,3494,3517,3536,3578,3657,3685,3784,3823,3860,3915,4066,4107,1,10988,4,2,111,117,3500,3510,110,103,114,117,101,110,116,59,1,8802,112,67,97,112,59,1,8813,111,117,98,108,101,86,101,114,116,105,99,97,108,66,97,114,59,1,8742,4,3,108,113,120,3544,3552,3571,101,109,101,110,116,59,1,8713,117,97,108,4,2,59,84,3561,3563,1,8800,105,108,100,101,59,3,8770,824,105,115,116,115,59,1,8708,114,101,97,116,101,114,4,7,59,69,70,71,76,83,84,3600,3602,3609,3621,3631,3637,3650,1,8815,113,117,97,108,59,1,8817,117,108,108,69,113,117,97,108,59,3,8807,824,114,101,97,116,101,114,59,3,8811,824,101,115,115,59,1,8825,108,97,110,116,69,113,117,97,108,59,3,10878,824,105,108,100,101,59,1,8821,117,109,112,4,2,68,69,3666,3677,111,119,110,72,117,109,112,59,3,8782,824,113,117,97,108,59,3,8783,824,101,4,2,102,115,3692,3724,116,84,114,105,97,110,103,108,101,4,3,59,66,69,3709,3711,3717,1,8938,97,114,59,3,10703,824,113,117,97,108,59,1,8940,115,4,6,59,69,71,76,83,84,3739,3741,3748,3757,3764,3777,1,8814,113,117,97,108,59,1,8816,114,101,97,116,101,114,59,1,8824,101,115,115,59,3,8810,824,108,97,110,116,69,113,117,97,108,59,3,10877,824,105,108,100,101,59,1,8820,101,115,116,101,100,4,2,71,76,3795,3812,114,101,97,116,101,114,71,114,101,97,116,101,114,59,3,10914,824,101,115,115,76,101,115,115,59,3,10913,824,114,101,99,101,100,101,115,4,3,59,69,83,3838,3840,3848,1,8832,113,117,97,108,59,3,10927,824,108,97,110,116,69,113,117,97,108,59,1,8928,4,2,101,105,3866,3881,118,101,114,115,101,69,108,101,109,101,110,116,59,1,8716,103,104,116,84,114,105,97,110,103,108,101,4,3,59,66,69,3900,3902,3908,1,8939,97,114,59,3,10704,824,113,117,97,108,59,1,8941,4,2,113,117,3921,3973,117,97,114,101,83,117,4,2,98,112,3933,3952,115,101,116,4,2,59,69,3942,3945,3,8847,824,113,117,97,108,59,1,8930,101,114,115,101,116,4,2,59,69,3963,3966,3,8848,824,113,117,97,108,59,1,8931,4,3,98,99,112,3981,4e3,4045,115,101,116,4,2,59,69,3990,3993,3,8834,8402,113,117,97,108,59,1,8840,99,101,101,100,115,4,4,59,69,83,84,4015,4017,4025,4037,1,8833,113,117,97,108,59,3,10928,824,108,97,110,116,69,113,117,97,108,59,1,8929,105,108,100,101,59,3,8831,824,101,114,115,101,116,4,2,59,69,4056,4059,3,8835,8402,113,117,97,108,59,1,8841,105,108,100,101,4,4,59,69,70,84,4080,4082,4089,4100,1,8769,113,117,97,108,59,1,8772,117,108,108,69,113,117,97,108,59,1,8775,105,108,100,101,59,1,8777,101,114,116,105,99,97,108,66,97,114,59,1,8740,99,114,59,3,55349,56489,105,108,100,101,5,209,1,59,4135,1,209,59,1,925,4,14,69,97,99,100,102,103,109,111,112,114,115,116,117,118,4170,4176,4187,4205,4212,4217,4228,4253,4259,4292,4295,4316,4337,4346,108,105,103,59,1,338,99,117,116,101,5,211,1,59,4185,1,211,4,2,105,121,4193,4202,114,99,5,212,1,59,4200,1,212,59,1,1054,98,108,97,99,59,1,336,114,59,3,55349,56594,114,97,118,101,5,210,1,59,4226,1,210,4,3,97,101,105,4236,4241,4246,99,114,59,1,332,103,97,59,1,937,99,114,111,110,59,1,927,112,102,59,3,55349,56646,101,110,67,117,114,108,121,4,2,68,81,4272,4285,111,117,98,108,101,81,117,111,116,101,59,1,8220,117,111,116,101,59,1,8216,59,1,10836,4,2,99,108,4301,4306,114,59,3,55349,56490,97,115,104,5,216,1,59,4314,1,216,105,4,2,108,109,4323,4332,100,101,5,213,1,59,4330,1,213,101,115,59,1,10807,109,108,5,214,1,59,4344,1,214,101,114,4,2,66,80,4354,4380,4,2,97,114,4360,4364,114,59,1,8254,97,99,4,2,101,107,4372,4375,59,1,9182,101,116,59,1,9140,97,114,101,110,116,104,101,115,105,115,59,1,9180,4,9,97,99,102,104,105,108,111,114,115,4413,4422,4426,4431,4435,4438,4448,4471,4561,114,116,105,97,108,68,59,1,8706,121,59,1,1055,114,59,3,55349,56595,105,59,1,934,59,1,928,117,115,77,105,110,117,115,59,1,177,4,2,105,112,4454,4467,110,99,97,114,101,112,108,97,110,101,59,1,8460,102,59,1,8473,4,4,59,101,105,111,4481,4483,4526,4531,1,10939,99,101,100,101,115,4,4,59,69,83,84,4498,4500,4507,4519,1,8826,113,117,97,108,59,1,10927,108,97,110,116,69,113,117,97,108,59,1,8828,105,108,100,101,59,1,8830,109,101,59,1,8243,4,2,100,112,4537,4543,117,99,116,59,1,8719,111,114,116,105,111,110,4,2,59,97,4555,4557,1,8759,108,59,1,8733,4,2,99,105,4567,4572,114,59,3,55349,56491,59,1,936,4,4,85,102,111,115,4585,4594,4599,4604,79,84,5,34,1,59,4592,1,34,114,59,3,55349,56596,112,102,59,1,8474,99,114,59,3,55349,56492,4,12,66,69,97,99,101,102,104,105,111,114,115,117,4636,4642,4650,4681,4704,4763,4767,4771,5047,5069,5081,5094,97,114,114,59,1,10512,71,5,174,1,59,4648,1,174,4,3,99,110,114,4658,4664,4668,117,116,101,59,1,340,103,59,1,10219,114,4,2,59,116,4675,4677,1,8608,108,59,1,10518,4,3,97,101,121,4689,4695,4701,114,111,110,59,1,344,100,105,108,59,1,342,59,1,1056,4,2,59,118,4710,4712,1,8476,101,114,115,101,4,2,69,85,4722,4748,4,2,108,113,4728,4736,101,109,101,110,116,59,1,8715,117,105,108,105,98,114,105,117,109,59,1,8651,112,69,113,117,105,108,105,98,114,105,117,109,59,1,10607,114,59,1,8476,111,59,1,929,103,104,116,4,8,65,67,68,70,84,85,86,97,4792,4840,4849,4905,4912,4972,5022,5040,4,2,110,114,4798,4811,103,108,101,66,114,97,99,107,101,116,59,1,10217,114,111,119,4,3,59,66,76,4822,4824,4829,1,8594,97,114,59,1,8677,101,102,116,65,114,114,111,119,59,1,8644,101,105,108,105,110,103,59,1,8969,111,4,2,117,119,4856,4869,98,108,101,66,114,97,99,107,101,116,59,1,10215,110,4,2,84,86,4876,4887,101,101,86,101,99,116,111,114,59,1,10589,101,99,116,111,114,4,2,59,66,4898,4900,1,8642,97,114,59,1,10581,108,111,111,114,59,1,8971,4,2,101,114,4918,4944,101,4,3,59,65,86,4927,4929,4936,1,8866,114,114,111,119,59,1,8614,101,99,116,111,114,59,1,10587,105,97,110,103,108,101,4,3,59,66,69,4958,4960,4965,1,8883,97,114,59,1,10704,113,117,97,108,59,1,8885,112,4,3,68,84,86,4981,4993,5004,111,119,110,86,101,99,116,111,114,59,1,10575,101,101,86,101,99,116,111,114,59,1,10588,101,99,116,111,114,4,2,59,66,5015,5017,1,8638,97,114,59,1,10580,101,99,116,111,114,4,2,59,66,5033,5035,1,8640,97,114,59,1,10579,114,114,111,119,59,1,8658,4,2,112,117,5053,5057,102,59,1,8477,110,100,73,109,112,108,105,101,115,59,1,10608,105,103,104,116,97,114,114,111,119,59,1,8667,4,2,99,104,5087,5091,114,59,1,8475,59,1,8625,108,101,68,101,108,97,121,101,100,59,1,10740,4,13,72,79,97,99,102,104,105,109,111,113,115,116,117,5134,5150,5157,5164,5198,5203,5259,5265,5277,5283,5374,5380,5385,4,2,67,99,5140,5146,72,99,121,59,1,1065,121,59,1,1064,70,84,99,121,59,1,1068,99,117,116,101,59,1,346,4,5,59,97,101,105,121,5176,5178,5184,5190,5195,1,10940,114,111,110,59,1,352,100,105,108,59,1,350,114,99,59,1,348,59,1,1057,114,59,3,55349,56598,111,114,116,4,4,68,76,82,85,5216,5227,5238,5250,111,119,110,65,114,114,111,119,59,1,8595,101,102,116,65,114,114,111,119,59,1,8592,105,103,104,116,65,114,114,111,119,59,1,8594,112,65,114,114,111,119,59,1,8593,103,109,97,59,1,931,97,108,108,67,105,114,99,108,101,59,1,8728,112,102,59,3,55349,56650,4,2,114,117,5289,5293,116,59,1,8730,97,114,101,4,4,59,73,83,85,5306,5308,5322,5367,1,9633,110,116,101,114,115,101,99,116,105,111,110,59,1,8851,117,4,2,98,112,5329,5347,115,101,116,4,2,59,69,5338,5340,1,8847,113,117,97,108,59,1,8849,101,114,115,101,116,4,2,59,69,5358,5360,1,8848,113,117,97,108,59,1,8850,110,105,111,110,59,1,8852,99,114,59,3,55349,56494,97,114,59,1,8902,4,4,98,99,109,112,5395,5420,5475,5478,4,2,59,115,5401,5403,1,8912,101,116,4,2,59,69,5411,5413,1,8912,113,117,97,108,59,1,8838,4,2,99,104,5426,5468,101,101,100,115,4,4,59,69,83,84,5440,5442,5449,5461,1,8827,113,117,97,108,59,1,10928,108,97,110,116,69,113,117,97,108,59,1,8829,105,108,100,101,59,1,8831,84,104,97,116,59,1,8715,59,1,8721,4,3,59,101,115,5486,5488,5507,1,8913,114,115,101,116,4,2,59,69,5498,5500,1,8835,113,117,97,108,59,1,8839,101,116,59,1,8913,4,11,72,82,83,97,99,102,104,105,111,114,115,5536,5546,5552,5567,5579,5602,5607,5655,5695,5701,5711,79,82,78,5,222,1,59,5544,1,222,65,68,69,59,1,8482,4,2,72,99,5558,5563,99,121,59,1,1035,121,59,1,1062,4,2,98,117,5573,5576,59,1,9,59,1,932,4,3,97,101,121,5587,5593,5599,114,111,110,59,1,356,100,105,108,59,1,354,59,1,1058,114,59,3,55349,56599,4,2,101,105,5613,5631,4,2,114,116,5619,5627,101,102,111,114,101,59,1,8756,97,59,1,920,4,2,99,110,5637,5647,107,83,112,97,99,101,59,3,8287,8202,83,112,97,99,101,59,1,8201,108,100,101,4,4,59,69,70,84,5668,5670,5677,5688,1,8764,113,117,97,108,59,1,8771,117,108,108,69,113,117,97,108,59,1,8773,105,108,100,101,59,1,8776,112,102,59,3,55349,56651,105,112,108,101,68,111,116,59,1,8411,4,2,99,116,5717,5722,114,59,3,55349,56495,114,111,107,59,1,358,4,14,97,98,99,100,102,103,109,110,111,112,114,115,116,117,5758,5789,5805,5823,5830,5835,5846,5852,5921,5937,6089,6095,6101,6108,4,2,99,114,5764,5774,117,116,101,5,218,1,59,5772,1,218,114,4,2,59,111,5781,5783,1,8607,99,105,114,59,1,10569,114,4,2,99,101,5796,5800,121,59,1,1038,118,101,59,1,364,4,2,105,121,5811,5820,114,99,5,219,1,59,5818,1,219,59,1,1059,98,108,97,99,59,1,368,114,59,3,55349,56600,114,97,118,101,5,217,1,59,5844,1,217,97,99,114,59,1,362,4,2,100,105,5858,5905,101,114,4,2,66,80,5866,5892,4,2,97,114,5872,5876,114,59,1,95,97,99,4,2,101,107,5884,5887,59,1,9183,101,116,59,1,9141,97,114,101,110,116,104,101,115,105,115,59,1,9181,111,110,4,2,59,80,5913,5915,1,8899,108,117,115,59,1,8846,4,2,103,112,5927,5932,111,110,59,1,370,102,59,3,55349,56652,4,8,65,68,69,84,97,100,112,115,5955,5985,5996,6009,6026,6033,6044,6075,114,114,111,119,4,3,59,66,68,5967,5969,5974,1,8593,97,114,59,1,10514,111,119,110,65,114,114,111,119,59,1,8645,111,119,110,65,114,114,111,119,59,1,8597,113,117,105,108,105,98,114,105,117,109,59,1,10606,101,101,4,2,59,65,6017,6019,1,8869,114,114,111,119,59,1,8613,114,114,111,119,59,1,8657,111,119,110,97,114,114,111,119,59,1,8661,101,114,4,2,76,82,6052,6063,101,102,116,65,114,114,111,119,59,1,8598,105,103,104,116,65,114,114,111,119,59,1,8599,105,4,2,59,108,6082,6084,1,978,111,110,59,1,933,105,110,103,59,1,366,99,114,59,3,55349,56496,105,108,100,101,59,1,360,109,108,5,220,1,59,6115,1,220,4,9,68,98,99,100,101,102,111,115,118,6137,6143,6148,6152,6166,6250,6255,6261,6267,97,115,104,59,1,8875,97,114,59,1,10987,121,59,1,1042,97,115,104,4,2,59,108,6161,6163,1,8873,59,1,10982,4,2,101,114,6172,6175,59,1,8897,4,3,98,116,121,6183,6188,6238,97,114,59,1,8214,4,2,59,105,6194,6196,1,8214,99,97,108,4,4,66,76,83,84,6209,6214,6220,6231,97,114,59,1,8739,105,110,101,59,1,124,101,112,97,114,97,116,111,114,59,1,10072,105,108,100,101,59,1,8768,84,104,105,110,83,112,97,99,101,59,1,8202,114,59,3,55349,56601,112,102,59,3,55349,56653,99,114,59,3,55349,56497,100,97,115,104,59,1,8874,4,5,99,101,102,111,115,6286,6292,6298,6303,6309,105,114,99,59,1,372,100,103,101,59,1,8896,114,59,3,55349,56602,112,102,59,3,55349,56654,99,114,59,3,55349,56498,4,4,102,105,111,115,6325,6330,6333,6339,114,59,3,55349,56603,59,1,926,112,102,59,3,55349,56655,99,114,59,3,55349,56499,4,9,65,73,85,97,99,102,111,115,117,6365,6370,6375,6380,6391,6405,6410,6416,6422,99,121,59,1,1071,99,121,59,1,1031,99,121,59,1,1070,99,117,116,101,5,221,1,59,6389,1,221,4,2,105,121,6397,6402,114,99,59,1,374,59,1,1067,114,59,3,55349,56604,112,102,59,3,55349,56656,99,114,59,3,55349,56500,109,108,59,1,376,4,8,72,97,99,100,101,102,111,115,6445,6450,6457,6472,6477,6501,6505,6510,99,121,59,1,1046,99,117,116,101,59,1,377,4,2,97,121,6463,6469,114,111,110,59,1,381,59,1,1047,111,116,59,1,379,4,2,114,116,6483,6497,111,87,105,100,116,104,83,112,97,99,101,59,1,8203,97,59,1,918,114,59,1,8488,112,102,59,1,8484,99,114,59,3,55349,56501,4,16,97,98,99,101,102,103,108,109,110,111,112,114,115,116,117,119,6550,6561,6568,6612,6622,6634,6645,6672,6699,6854,6870,6923,6933,6963,6974,6983,99,117,116,101,5,225,1,59,6559,1,225,114,101,118,101,59,1,259,4,6,59,69,100,105,117,121,6582,6584,6588,6591,6600,6609,1,8766,59,3,8766,819,59,1,8767,114,99,5,226,1,59,6598,1,226,116,101,5,180,1,59,6607,1,180,59,1,1072,108,105,103,5,230,1,59,6620,1,230,4,2,59,114,6628,6630,1,8289,59,3,55349,56606,114,97,118,101,5,224,1,59,6643,1,224,4,2,101,112,6651,6667,4,2,102,112,6657,6663,115,121,109,59,1,8501,104,59,1,8501,104,97,59,1,945,4,2,97,112,6678,6692,4,2,99,108,6684,6688,114,59,1,257,103,59,1,10815,5,38,1,59,6697,1,38,4,2,100,103,6705,6737,4,5,59,97,100,115,118,6717,6719,6724,6727,6734,1,8743,110,100,59,1,10837,59,1,10844,108,111,112,101,59,1,10840,59,1,10842,4,7,59,101,108,109,114,115,122,6753,6755,6758,6762,6814,6835,6848,1,8736,59,1,10660,101,59,1,8736,115,100,4,2,59,97,6770,6772,1,8737,4,8,97,98,99,100,101,102,103,104,6790,6793,6796,6799,6802,6805,6808,6811,59,1,10664,59,1,10665,59,1,10666,59,1,10667,59,1,10668,59,1,10669,59,1,10670,59,1,10671,116,4,2,59,118,6821,6823,1,8735,98,4,2,59,100,6830,6832,1,8894,59,1,10653,4,2,112,116,6841,6845,104,59,1,8738,59,1,197,97,114,114,59,1,9084,4,2,103,112,6860,6865,111,110,59,1,261,102,59,3,55349,56658,4,7,59,69,97,101,105,111,112,6886,6888,6891,6897,6900,6904,6908,1,8776,59,1,10864,99,105,114,59,1,10863,59,1,8778,100,59,1,8779,115,59,1,39,114,111,120,4,2,59,101,6917,6919,1,8776,113,59,1,8778,105,110,103,5,229,1,59,6931,1,229,4,3,99,116,121,6941,6946,6949,114,59,3,55349,56502,59,1,42,109,112,4,2,59,101,6957,6959,1,8776,113,59,1,8781,105,108,100,101,5,227,1,59,6972,1,227,109,108,5,228,1,59,6981,1,228,4,2,99,105,6989,6997,111,110,105,110,116,59,1,8755,110,116,59,1,10769,4,16,78,97,98,99,100,101,102,105,107,108,110,111,112,114,115,117,7036,7041,7119,7135,7149,7155,7219,7224,7347,7354,7463,7489,7786,7793,7814,7866,111,116,59,1,10989,4,2,99,114,7047,7094,107,4,4,99,101,112,115,7058,7064,7073,7080,111,110,103,59,1,8780,112,115,105,108,111,110,59,1,1014,114,105,109,101,59,1,8245,105,109,4,2,59,101,7088,7090,1,8765,113,59,1,8909,4,2,118,119,7100,7105,101,101,59,1,8893,101,100,4,2,59,103,7113,7115,1,8965,101,59,1,8965,114,107,4,2,59,116,7127,7129,1,9141,98,114,107,59,1,9142,4,2,111,121,7141,7146,110,103,59,1,8780,59,1,1073,113,117,111,59,1,8222,4,5,99,109,112,114,116,7167,7181,7188,7193,7199,97,117,115,4,2,59,101,7176,7178,1,8757,59,1,8757,112,116,121,118,59,1,10672,115,105,59,1,1014,110,111,117,59,1,8492,4,3,97,104,119,7207,7210,7213,59,1,946,59,1,8502,101,101,110,59,1,8812,114,59,3,55349,56607,103,4,7,99,111,115,116,117,118,119,7241,7262,7288,7305,7328,7335,7340,4,3,97,105,117,7249,7253,7258,112,59,1,8898,114,99,59,1,9711,112,59,1,8899,4,3,100,112,116,7270,7275,7281,111,116,59,1,10752,108,117,115,59,1,10753,105,109,101,115,59,1,10754,4,2,113,116,7294,7300,99,117,112,59,1,10758,97,114,59,1,9733,114,105,97,110,103,108,101,4,2,100,117,7318,7324,111,119,110,59,1,9661,112,59,1,9651,112,108,117,115,59,1,10756,101,101,59,1,8897,101,100,103,101,59,1,8896,97,114,111,119,59,1,10509,4,3,97,107,111,7362,7436,7458,4,2,99,110,7368,7432,107,4,3,108,115,116,7377,7386,7394,111,122,101,110,103,101,59,1,10731,113,117,97,114,101,59,1,9642,114,105,97,110,103,108,101,4,4,59,100,108,114,7411,7413,7419,7425,1,9652,111,119,110,59,1,9662,101,102,116,59,1,9666,105,103,104,116,59,1,9656,107,59,1,9251,4,2,49,51,7442,7454,4,2,50,52,7448,7451,59,1,9618,59,1,9617,52,59,1,9619,99,107,59,1,9608,4,2,101,111,7469,7485,4,2,59,113,7475,7478,3,61,8421,117,105,118,59,3,8801,8421,116,59,1,8976,4,4,112,116,119,120,7499,7504,7517,7523,102,59,3,55349,56659,4,2,59,116,7510,7512,1,8869,111,109,59,1,8869,116,105,101,59,1,8904,4,12,68,72,85,86,98,100,104,109,112,116,117,118,7549,7571,7597,7619,7655,7660,7682,7708,7715,7721,7728,7750,4,4,76,82,108,114,7559,7562,7565,7568,59,1,9559,59,1,9556,59,1,9558,59,1,9555,4,5,59,68,85,100,117,7583,7585,7588,7591,7594,1,9552,59,1,9574,59,1,9577,59,1,9572,59,1,9575,4,4,76,82,108,114,7607,7610,7613,7616,59,1,9565,59,1,9562,59,1,9564,59,1,9561,4,7,59,72,76,82,104,108,114,7635,7637,7640,7643,7646,7649,7652,1,9553,59,1,9580,59,1,9571,59,1,9568,59,1,9579,59,1,9570,59,1,9567,111,120,59,1,10697,4,4,76,82,108,114,7670,7673,7676,7679,59,1,9557,59,1,9554,59,1,9488,59,1,9484,4,5,59,68,85,100,117,7694,7696,7699,7702,7705,1,9472,59,1,9573,59,1,9576,59,1,9516,59,1,9524,105,110,117,115,59,1,8863,108,117,115,59,1,8862,105,109,101,115,59,1,8864,4,4,76,82,108,114,7738,7741,7744,7747,59,1,9563,59,1,9560,59,1,9496,59,1,9492,4,7,59,72,76,82,104,108,114,7766,7768,7771,7774,7777,7780,7783,1,9474,59,1,9578,59,1,9569,59,1,9566,59,1,9532,59,1,9508,59,1,9500,114,105,109,101,59,1,8245,4,2,101,118,7799,7804,118,101,59,1,728,98,97,114,5,166,1,59,7812,1,166,4,4,99,101,105,111,7824,7829,7834,7846,114,59,3,55349,56503,109,105,59,1,8271,109,4,2,59,101,7841,7843,1,8765,59,1,8909,108,4,3,59,98,104,7855,7857,7860,1,92,59,1,10693,115,117,98,59,1,10184,4,2,108,109,7872,7885,108,4,2,59,101,7879,7881,1,8226,116,59,1,8226,112,4,3,59,69,101,7894,7896,7899,1,8782,59,1,10926,4,2,59,113,7905,7907,1,8783,59,1,8783,4,15,97,99,100,101,102,104,105,108,111,114,115,116,117,119,121,7942,8021,8075,8080,8121,8126,8157,8279,8295,8430,8446,8485,8491,8707,8726,4,3,99,112,114,7950,7956,8007,117,116,101,59,1,263,4,6,59,97,98,99,100,115,7970,7972,7977,7984,7998,8003,1,8745,110,100,59,1,10820,114,99,117,112,59,1,10825,4,2,97,117,7990,7994,112,59,1,10827,112,59,1,10823,111,116,59,1,10816,59,3,8745,65024,4,2,101,111,8013,8017,116,59,1,8257,110,59,1,711,4,4,97,101,105,117,8031,8046,8056,8061,4,2,112,114,8037,8041,115,59,1,10829,111,110,59,1,269,100,105,108,5,231,1,59,8054,1,231,114,99,59,1,265,112,115,4,2,59,115,8069,8071,1,10828,109,59,1,10832,111,116,59,1,267,4,3,100,109,110,8088,8097,8104,105,108,5,184,1,59,8095,1,184,112,116,121,118,59,1,10674,116,5,162,2,59,101,8112,8114,1,162,114,100,111,116,59,1,183,114,59,3,55349,56608,4,3,99,101,105,8134,8138,8154,121,59,1,1095,99,107,4,2,59,109,8146,8148,1,10003,97,114,107,59,1,10003,59,1,967,114,4,7,59,69,99,101,102,109,115,8174,8176,8179,8258,8261,8268,8273,1,9675,59,1,10691,4,3,59,101,108,8187,8189,8193,1,710,113,59,1,8791,101,4,2,97,100,8200,8223,114,114,111,119,4,2,108,114,8210,8216,101,102,116,59,1,8634,105,103,104,116,59,1,8635,4,5,82,83,97,99,100,8235,8238,8241,8246,8252,59,1,174,59,1,9416,115,116,59,1,8859,105,114,99,59,1,8858,97,115,104,59,1,8861,59,1,8791,110,105,110,116,59,1,10768,105,100,59,1,10991,99,105,114,59,1,10690,117,98,115,4,2,59,117,8288,8290,1,9827,105,116,59,1,9827,4,4,108,109,110,112,8305,8326,8376,8400,111,110,4,2,59,101,8313,8315,1,58,4,2,59,113,8321,8323,1,8788,59,1,8788,4,2,109,112,8332,8344,97,4,2,59,116,8339,8341,1,44,59,1,64,4,3,59,102,108,8352,8354,8358,1,8705,110,59,1,8728,101,4,2,109,120,8365,8371,101,110,116,59,1,8705,101,115,59,1,8450,4,2,103,105,8382,8395,4,2,59,100,8388,8390,1,8773,111,116,59,1,10861,110,116,59,1,8750,4,3,102,114,121,8408,8412,8417,59,3,55349,56660,111,100,59,1,8720,5,169,2,59,115,8424,8426,1,169,114,59,1,8471,4,2,97,111,8436,8441,114,114,59,1,8629,115,115,59,1,10007,4,2,99,117,8452,8457,114,59,3,55349,56504,4,2,98,112,8463,8474,4,2,59,101,8469,8471,1,10959,59,1,10961,4,2,59,101,8480,8482,1,10960,59,1,10962,100,111,116,59,1,8943,4,7,100,101,108,112,114,118,119,8507,8522,8536,8550,8600,8697,8702,97,114,114,4,2,108,114,8516,8519,59,1,10552,59,1,10549,4,2,112,115,8528,8532,114,59,1,8926,99,59,1,8927,97,114,114,4,2,59,112,8545,8547,1,8630,59,1,10557,4,6,59,98,99,100,111,115,8564,8566,8573,8587,8592,8596,1,8746,114,99,97,112,59,1,10824,4,2,97,117,8579,8583,112,59,1,10822,112,59,1,10826,111,116,59,1,8845,114,59,1,10821,59,3,8746,65024,4,4,97,108,114,118,8610,8623,8663,8672,114,114,4,2,59,109,8618,8620,1,8631,59,1,10556,121,4,3,101,118,119,8632,8651,8656,113,4,2,112,115,8639,8645,114,101,99,59,1,8926,117,99,99,59,1,8927,101,101,59,1,8910,101,100,103,101,59,1,8911,101,110,5,164,1,59,8670,1,164,101,97,114,114,111,119,4,2,108,114,8684,8690,101,102,116,59,1,8630,105,103,104,116,59,1,8631,101,101,59,1,8910,101,100,59,1,8911,4,2,99,105,8713,8721,111,110,105,110,116,59,1,8754,110,116,59,1,8753,108,99,116,121,59,1,9005,4,19,65,72,97,98,99,100,101,102,104,105,106,108,111,114,115,116,117,119,122,8773,8778,8783,8821,8839,8854,8887,8914,8930,8944,9036,9041,9058,9197,9227,9258,9281,9297,9305,114,114,59,1,8659,97,114,59,1,10597,4,4,103,108,114,115,8793,8799,8805,8809,103,101,114,59,1,8224,101,116,104,59,1,8504,114,59,1,8595,104,4,2,59,118,8816,8818,1,8208,59,1,8867,4,2,107,108,8827,8834,97,114,111,119,59,1,10511,97,99,59,1,733,4,2,97,121,8845,8851,114,111,110,59,1,271,59,1,1076,4,3,59,97,111,8862,8864,8880,1,8518,4,2,103,114,8870,8876,103,101,114,59,1,8225,114,59,1,8650,116,115,101,113,59,1,10871,4,3,103,108,109,8895,8902,8907,5,176,1,59,8900,1,176,116,97,59,1,948,112,116,121,118,59,1,10673,4,2,105,114,8920,8926,115,104,116,59,1,10623,59,3,55349,56609,97,114,4,2,108,114,8938,8941,59,1,8643,59,1,8642,4,5,97,101,103,115,118,8956,8986,8989,8996,9001,109,4,3,59,111,115,8965,8967,8983,1,8900,110,100,4,2,59,115,8975,8977,1,8900,117,105,116,59,1,9830,59,1,9830,59,1,168,97,109,109,97,59,1,989,105,110,59,1,8946,4,3,59,105,111,9009,9011,9031,1,247,100,101,5,247,2,59,111,9020,9022,1,247,110,116,105,109,101,115,59,1,8903,110,120,59,1,8903,99,121,59,1,1106,99,4,2,111,114,9048,9053,114,110,59,1,8990,111,112,59,1,8973,4,5,108,112,116,117,119,9070,9076,9081,9130,9144,108,97,114,59,1,36,102,59,3,55349,56661,4,5,59,101,109,112,115,9093,9095,9109,9116,9122,1,729,113,4,2,59,100,9102,9104,1,8784,111,116,59,1,8785,105,110,117,115,59,1,8760,108,117,115,59,1,8724,113,117,97,114,101,59,1,8865,98,108,101,98,97,114,119,101,100,103,101,59,1,8966,110,4,3,97,100,104,9153,9160,9172,114,114,111,119,59,1,8595,111,119,110,97,114,114,111,119,115,59,1,8650,97,114,112,111,111,110,4,2,108,114,9184,9190,101,102,116,59,1,8643,105,103,104,116,59,1,8642,4,2,98,99,9203,9211,107,97,114,111,119,59,1,10512,4,2,111,114,9217,9222,114,110,59,1,8991,111,112,59,1,8972,4,3,99,111,116,9235,9248,9252,4,2,114,121,9241,9245,59,3,55349,56505,59,1,1109,108,59,1,10742,114,111,107,59,1,273,4,2,100,114,9264,9269,111,116,59,1,8945,105,4,2,59,102,9276,9278,1,9663,59,1,9662,4,2,97,104,9287,9292,114,114,59,1,8693,97,114,59,1,10607,97,110,103,108,101,59,1,10662,4,2,99,105,9311,9315,121,59,1,1119,103,114,97,114,114,59,1,10239,4,18,68,97,99,100,101,102,103,108,109,110,111,112,113,114,115,116,117,120,9361,9376,9398,9439,9444,9447,9462,9495,9531,9585,9598,9614,9659,9755,9771,9792,9808,9826,4,2,68,111,9367,9372,111,116,59,1,10871,116,59,1,8785,4,2,99,115,9382,9392,117,116,101,5,233,1,59,9390,1,233,116,101,114,59,1,10862,4,4,97,105,111,121,9408,9414,9430,9436,114,111,110,59,1,283,114,4,2,59,99,9421,9423,1,8790,5,234,1,59,9428,1,234,108,111,110,59,1,8789,59,1,1101,111,116,59,1,279,59,1,8519,4,2,68,114,9453,9458,111,116,59,1,8786,59,3,55349,56610,4,3,59,114,115,9470,9472,9482,1,10906,97,118,101,5,232,1,59,9480,1,232,4,2,59,100,9488,9490,1,10902,111,116,59,1,10904,4,4,59,105,108,115,9505,9507,9515,9518,1,10905,110,116,101,114,115,59,1,9191,59,1,8467,4,2,59,100,9524,9526,1,10901,111,116,59,1,10903,4,3,97,112,115,9539,9544,9564,99,114,59,1,275,116,121,4,3,59,115,118,9554,9556,9561,1,8709,101,116,59,1,8709,59,1,8709,112,4,2,49,59,9571,9583,4,2,51,52,9577,9580,59,1,8196,59,1,8197,1,8195,4,2,103,115,9591,9594,59,1,331,112,59,1,8194,4,2,103,112,9604,9609,111,110,59,1,281,102,59,3,55349,56662,4,3,97,108,115,9622,9635,9640,114,4,2,59,115,9629,9631,1,8917,108,59,1,10723,117,115,59,1,10865,105,4,3,59,108,118,9649,9651,9656,1,949,111,110,59,1,949,59,1,1013,4,4,99,115,117,118,9669,9686,9716,9747,4,2,105,111,9675,9680,114,99,59,1,8790,108,111,110,59,1,8789,4,2,105,108,9692,9696,109,59,1,8770,97,110,116,4,2,103,108,9705,9710,116,114,59,1,10902,101,115,115,59,1,10901,4,3,97,101,105,9724,9729,9734,108,115,59,1,61,115,116,59,1,8799,118,4,2,59,68,9741,9743,1,8801,68,59,1,10872,112,97,114,115,108,59,1,10725,4,2,68,97,9761,9766,111,116,59,1,8787,114,114,59,1,10609,4,3,99,100,105,9779,9783,9788,114,59,1,8495,111,116,59,1,8784,109,59,1,8770,4,2,97,104,9798,9801,59,1,951,5,240,1,59,9806,1,240,4,2,109,114,9814,9822,108,5,235,1,59,9820,1,235,111,59,1,8364,4,3,99,105,112,9834,9838,9843,108,59,1,33,115,116,59,1,8707,4,2,101,111,9849,9859,99,116,97,116,105,111,110,59,1,8496,110,101,110,116,105,97,108,101,59,1,8519,4,12,97,99,101,102,105,106,108,110,111,112,114,115,9896,9910,9914,9921,9954,9960,9967,9989,9994,10027,10036,10164,108,108,105,110,103,100,111,116,115,101,113,59,1,8786,121,59,1,1092,109,97,108,101,59,1,9792,4,3,105,108,114,9929,9935,9950,108,105,103,59,1,64259,4,2,105,108,9941,9945,103,59,1,64256,105,103,59,1,64260,59,3,55349,56611,108,105,103,59,1,64257,108,105,103,59,3,102,106,4,3,97,108,116,9975,9979,9984,116,59,1,9837,105,103,59,1,64258,110,115,59,1,9649,111,102,59,1,402,4,2,112,114,1e4,10005,102,59,3,55349,56663,4,2,97,107,10011,10016,108,108,59,1,8704,4,2,59,118,10022,10024,1,8916,59,1,10969,97,114,116,105,110,116,59,1,10765,4,2,97,111,10042,10159,4,2,99,115,10048,10155,4,6,49,50,51,52,53,55,10062,10102,10114,10135,10139,10151,4,6,50,51,52,53,54,56,10076,10083,10086,10093,10096,10099,5,189,1,59,10081,1,189,59,1,8531,5,188,1,59,10091,1,188,59,1,8533,59,1,8537,59,1,8539,4,2,51,53,10108,10111,59,1,8532,59,1,8534,4,3,52,53,56,10122,10129,10132,5,190,1,59,10127,1,190,59,1,8535,59,1,8540,53,59,1,8536,4,2,54,56,10145,10148,59,1,8538,59,1,8541,56,59,1,8542,108,59,1,8260,119,110,59,1,8994,99,114,59,3,55349,56507,4,17,69,97,98,99,100,101,102,103,105,106,108,110,111,114,115,116,118,10206,10217,10247,10254,10268,10273,10358,10363,10374,10380,10385,10406,10458,10464,10470,10497,10610,4,2,59,108,10212,10214,1,8807,59,1,10892,4,3,99,109,112,10225,10231,10244,117,116,101,59,1,501,109,97,4,2,59,100,10239,10241,1,947,59,1,989,59,1,10886,114,101,118,101,59,1,287,4,2,105,121,10260,10265,114,99,59,1,285,59,1,1075,111,116,59,1,289,4,4,59,108,113,115,10283,10285,10288,10308,1,8805,59,1,8923,4,3,59,113,115,10296,10298,10301,1,8805,59,1,8807,108,97,110,116,59,1,10878,4,4,59,99,100,108,10318,10320,10324,10345,1,10878,99,59,1,10921,111,116,4,2,59,111,10332,10334,1,10880,4,2,59,108,10340,10342,1,10882,59,1,10884,4,2,59,101,10351,10354,3,8923,65024,115,59,1,10900,114,59,3,55349,56612,4,2,59,103,10369,10371,1,8811,59,1,8921,109,101,108,59,1,8503,99,121,59,1,1107,4,4,59,69,97,106,10395,10397,10400,10403,1,8823,59,1,10898,59,1,10917,59,1,10916,4,4,69,97,101,115,10416,10419,10434,10453,59,1,8809,112,4,2,59,112,10426,10428,1,10890,114,111,120,59,1,10890,4,2,59,113,10440,10442,1,10888,4,2,59,113,10448,10450,1,10888,59,1,8809,105,109,59,1,8935,112,102,59,3,55349,56664,97,118,101,59,1,96,4,2,99,105,10476,10480,114,59,1,8458,109,4,3,59,101,108,10489,10491,10494,1,8819,59,1,10894,59,1,10896,5,62,6,59,99,100,108,113,114,10512,10514,10527,10532,10538,10545,1,62,4,2,99,105,10520,10523,59,1,10919,114,59,1,10874,111,116,59,1,8919,80,97,114,59,1,10645,117,101,115,116,59,1,10876,4,5,97,100,101,108,115,10557,10574,10579,10599,10605,4,2,112,114,10563,10570,112,114,111,120,59,1,10886,114,59,1,10616,111,116,59,1,8919,113,4,2,108,113,10586,10592,101,115,115,59,1,8923,108,101,115,115,59,1,10892,101,115,115,59,1,8823,105,109,59,1,8819,4,2,101,110,10616,10626,114,116,110,101,113,113,59,3,8809,65024,69,59,3,8809,65024,4,10,65,97,98,99,101,102,107,111,115,121,10653,10658,10713,10718,10724,10760,10765,10786,10850,10875,114,114,59,1,8660,4,4,105,108,109,114,10668,10674,10678,10684,114,115,112,59,1,8202,102,59,1,189,105,108,116,59,1,8459,4,2,100,114,10690,10695,99,121,59,1,1098,4,3,59,99,119,10703,10705,10710,1,8596,105,114,59,1,10568,59,1,8621,97,114,59,1,8463,105,114,99,59,1,293,4,3,97,108,114,10732,10748,10754,114,116,115,4,2,59,117,10741,10743,1,9829,105,116,59,1,9829,108,105,112,59,1,8230,99,111,110,59,1,8889,114,59,3,55349,56613,115,4,2,101,119,10772,10779,97,114,111,119,59,1,10533,97,114,111,119,59,1,10534,4,5,97,109,111,112,114,10798,10803,10809,10839,10844,114,114,59,1,8703,116,104,116,59,1,8763,107,4,2,108,114,10816,10827,101,102,116,97,114,114,111,119,59,1,8617,105,103,104,116,97,114,114,111,119,59,1,8618,102,59,3,55349,56665,98,97,114,59,1,8213,4,3,99,108,116,10858,10863,10869,114,59,3,55349,56509,97,115,104,59,1,8463,114,111,107,59,1,295,4,2,98,112,10881,10887,117,108,108,59,1,8259,104,101,110,59,1,8208,4,15,97,99,101,102,103,105,106,109,110,111,112,113,115,116,117,10925,10936,10958,10977,10990,11001,11039,11045,11101,11192,11220,11226,11237,11285,11299,99,117,116,101,5,237,1,59,10934,1,237,4,3,59,105,121,10944,10946,10955,1,8291,114,99,5,238,1,59,10953,1,238,59,1,1080,4,2,99,120,10964,10968,121,59,1,1077,99,108,5,161,1,59,10975,1,161,4,2,102,114,10983,10986,59,1,8660,59,3,55349,56614,114,97,118,101,5,236,1,59,10999,1,236,4,4,59,105,110,111,11011,11013,11028,11034,1,8520,4,2,105,110,11019,11024,110,116,59,1,10764,116,59,1,8749,102,105,110,59,1,10716,116,97,59,1,8489,108,105,103,59,1,307,4,3,97,111,112,11053,11092,11096,4,3,99,103,116,11061,11065,11088,114,59,1,299,4,3,101,108,112,11073,11076,11082,59,1,8465,105,110,101,59,1,8464,97,114,116,59,1,8465,104,59,1,305,102,59,1,8887,101,100,59,1,437,4,5,59,99,102,111,116,11113,11115,11121,11136,11142,1,8712,97,114,101,59,1,8453,105,110,4,2,59,116,11129,11131,1,8734,105,101,59,1,10717,100,111,116,59,1,305,4,5,59,99,101,108,112,11154,11156,11161,11179,11186,1,8747,97,108,59,1,8890,4,2,103,114,11167,11173,101,114,115,59,1,8484,99,97,108,59,1,8890,97,114,104,107,59,1,10775,114,111,100,59,1,10812,4,4,99,103,112,116,11202,11206,11211,11216,121,59,1,1105,111,110,59,1,303,102,59,3,55349,56666,97,59,1,953,114,111,100,59,1,10812,117,101,115,116,5,191,1,59,11235,1,191,4,2,99,105,11243,11248,114,59,3,55349,56510,110,4,5,59,69,100,115,118,11261,11263,11266,11271,11282,1,8712,59,1,8953,111,116,59,1,8949,4,2,59,118,11277,11279,1,8948,59,1,8947,59,1,8712,4,2,59,105,11291,11293,1,8290,108,100,101,59,1,297,4,2,107,109,11305,11310,99,121,59,1,1110,108,5,239,1,59,11316,1,239,4,6,99,102,109,111,115,117,11332,11346,11351,11357,11363,11380,4,2,105,121,11338,11343,114,99,59,1,309,59,1,1081,114,59,3,55349,56615,97,116,104,59,1,567,112,102,59,3,55349,56667,4,2,99,101,11369,11374,114,59,3,55349,56511,114,99,121,59,1,1112,107,99,121,59,1,1108,4,8,97,99,102,103,104,106,111,115,11404,11418,11433,11438,11445,11450,11455,11461,112,112,97,4,2,59,118,11413,11415,1,954,59,1,1008,4,2,101,121,11424,11430,100,105,108,59,1,311,59,1,1082,114,59,3,55349,56616,114,101,101,110,59,1,312,99,121,59,1,1093,99,121,59,1,1116,112,102,59,3,55349,56668,99,114,59,3,55349,56512,4,23,65,66,69,72,97,98,99,100,101,102,103,104,106,108,109,110,111,112,114,115,116,117,118,11515,11538,11544,11555,11560,11721,11780,11818,11868,12136,12160,12171,12203,12208,12246,12275,12327,12509,12523,12569,12641,12732,12752,4,3,97,114,116,11523,11528,11532,114,114,59,1,8666,114,59,1,8656,97,105,108,59,1,10523,97,114,114,59,1,10510,4,2,59,103,11550,11552,1,8806,59,1,10891,97,114,59,1,10594,4,9,99,101,103,109,110,112,113,114,116,11580,11586,11594,11600,11606,11624,11627,11636,11694,117,116,101,59,1,314,109,112,116,121,118,59,1,10676,114,97,110,59,1,8466,98,100,97,59,1,955,103,4,3,59,100,108,11615,11617,11620,1,10216,59,1,10641,101,59,1,10216,59,1,10885,117,111,5,171,1,59,11634,1,171,114,4,8,59,98,102,104,108,112,115,116,11655,11657,11669,11673,11677,11681,11685,11690,1,8592,4,2,59,102,11663,11665,1,8676,115,59,1,10527,115,59,1,10525,107,59,1,8617,112,59,1,8619,108,59,1,10553,105,109,59,1,10611,108,59,1,8610,4,3,59,97,101,11702,11704,11709,1,10923,105,108,59,1,10521,4,2,59,115,11715,11717,1,10925,59,3,10925,65024,4,3,97,98,114,11729,11734,11739,114,114,59,1,10508,114,107,59,1,10098,4,2,97,107,11745,11758,99,4,2,101,107,11752,11755,59,1,123,59,1,91,4,2,101,115,11764,11767,59,1,10635,108,4,2,100,117,11774,11777,59,1,10639,59,1,10637,4,4,97,101,117,121,11790,11796,11811,11815,114,111,110,59,1,318,4,2,100,105,11802,11807,105,108,59,1,316,108,59,1,8968,98,59,1,123,59,1,1083,4,4,99,113,114,115,11828,11832,11845,11864,97,59,1,10550,117,111,4,2,59,114,11840,11842,1,8220,59,1,8222,4,2,100,117,11851,11857,104,97,114,59,1,10599,115,104,97,114,59,1,10571,104,59,1,8626,4,5,59,102,103,113,115,11880,11882,12008,12011,12031,1,8804,116,4,5,97,104,108,114,116,11895,11913,11935,11947,11996,114,114,111,119,4,2,59,116,11905,11907,1,8592,97,105,108,59,1,8610,97,114,112,111,111,110,4,2,100,117,11925,11931,111,119,110,59,1,8637,112,59,1,8636,101,102,116,97,114,114,111,119,115,59,1,8647,105,103,104,116,4,3,97,104,115,11959,11974,11984,114,114,111,119,4,2,59,115,11969,11971,1,8596,59,1,8646,97,114,112,111,111,110,115,59,1,8651,113,117,105,103,97,114,114,111,119,59,1,8621,104,114,101,101,116,105,109,101,115,59,1,8907,59,1,8922,4,3,59,113,115,12019,12021,12024,1,8804,59,1,8806,108,97,110,116,59,1,10877,4,5,59,99,100,103,115,12043,12045,12049,12070,12083,1,10877,99,59,1,10920,111,116,4,2,59,111,12057,12059,1,10879,4,2,59,114,12065,12067,1,10881,59,1,10883,4,2,59,101,12076,12079,3,8922,65024,115,59,1,10899,4,5,97,100,101,103,115,12095,12103,12108,12126,12131,112,112,114,111,120,59,1,10885,111,116,59,1,8918,113,4,2,103,113,12115,12120,116,114,59,1,8922,103,116,114,59,1,10891,116,114,59,1,8822,105,109,59,1,8818,4,3,105,108,114,12144,12150,12156,115,104,116,59,1,10620,111,111,114,59,1,8970,59,3,55349,56617,4,2,59,69,12166,12168,1,8822,59,1,10897,4,2,97,98,12177,12198,114,4,2,100,117,12184,12187,59,1,8637,4,2,59,108,12193,12195,1,8636,59,1,10602,108,107,59,1,9604,99,121,59,1,1113,4,5,59,97,99,104,116,12220,12222,12227,12235,12241,1,8810,114,114,59,1,8647,111,114,110,101,114,59,1,8990,97,114,100,59,1,10603,114,105,59,1,9722,4,2,105,111,12252,12258,100,111,116,59,1,320,117,115,116,4,2,59,97,12267,12269,1,9136,99,104,101,59,1,9136,4,4,69,97,101,115,12285,12288,12303,12322,59,1,8808,112,4,2,59,112,12295,12297,1,10889,114,111,120,59,1,10889,4,2,59,113,12309,12311,1,10887,4,2,59,113,12317,12319,1,10887,59,1,8808,105,109,59,1,8934,4,8,97,98,110,111,112,116,119,122,12345,12359,12364,12421,12446,12467,12474,12490,4,2,110,114,12351,12355,103,59,1,10220,114,59,1,8701,114,107,59,1,10214,103,4,3,108,109,114,12373,12401,12409,101,102,116,4,2,97,114,12382,12389,114,114,111,119,59,1,10229,105,103,104,116,97,114,114,111,119,59,1,10231,97,112,115,116,111,59,1,10236,105,103,104,116,97,114,114,111,119,59,1,10230,112,97,114,114,111,119,4,2,108,114,12433,12439,101,102,116,59,1,8619,105,103,104,116,59,1,8620,4,3,97,102,108,12454,12458,12462,114,59,1,10629,59,3,55349,56669,117,115,59,1,10797,105,109,101,115,59,1,10804,4,2,97,98,12480,12485,115,116,59,1,8727,97,114,59,1,95,4,3,59,101,102,12498,12500,12506,1,9674,110,103,101,59,1,9674,59,1,10731,97,114,4,2,59,108,12517,12519,1,40,116,59,1,10643,4,5,97,99,104,109,116,12535,12540,12548,12561,12564,114,114,59,1,8646,111,114,110,101,114,59,1,8991,97,114,4,2,59,100,12556,12558,1,8651,59,1,10605,59,1,8206,114,105,59,1,8895,4,6,97,99,104,105,113,116,12583,12589,12594,12597,12614,12635,113,117,111,59,1,8249,114,59,3,55349,56513,59,1,8624,109,4,3,59,101,103,12606,12608,12611,1,8818,59,1,10893,59,1,10895,4,2,98,117,12620,12623,59,1,91,111,4,2,59,114,12630,12632,1,8216,59,1,8218,114,111,107,59,1,322,5,60,8,59,99,100,104,105,108,113,114,12660,12662,12675,12680,12686,12692,12698,12705,1,60,4,2,99,105,12668,12671,59,1,10918,114,59,1,10873,111,116,59,1,8918,114,101,101,59,1,8907,109,101,115,59,1,8905,97,114,114,59,1,10614,117,101,115,116,59,1,10875,4,2,80,105,12711,12716,97,114,59,1,10646,4,3,59,101,102,12724,12726,12729,1,9667,59,1,8884,59,1,9666,114,4,2,100,117,12739,12746,115,104,97,114,59,1,10570,104,97,114,59,1,10598,4,2,101,110,12758,12768,114,116,110,101,113,113,59,3,8808,65024,69,59,3,8808,65024,4,14,68,97,99,100,101,102,104,105,108,110,111,112,115,117,12803,12809,12893,12908,12914,12928,12933,12937,13011,13025,13032,13049,13052,13069,68,111,116,59,1,8762,4,4,99,108,112,114,12819,12827,12849,12887,114,5,175,1,59,12825,1,175,4,2,101,116,12833,12836,59,1,9794,4,2,59,101,12842,12844,1,10016,115,101,59,1,10016,4,2,59,115,12855,12857,1,8614,116,111,4,4,59,100,108,117,12869,12871,12877,12883,1,8614,111,119,110,59,1,8615,101,102,116,59,1,8612,112,59,1,8613,107,101,114,59,1,9646,4,2,111,121,12899,12905,109,109,97,59,1,10793,59,1,1084,97,115,104,59,1,8212,97,115,117,114,101,100,97,110,103,108,101,59,1,8737,114,59,3,55349,56618,111,59,1,8487,4,3,99,100,110,12945,12954,12985,114,111,5,181,1,59,12952,1,181,4,4,59,97,99,100,12964,12966,12971,12976,1,8739,115,116,59,1,42,105,114,59,1,10992,111,116,5,183,1,59,12983,1,183,117,115,4,3,59,98,100,12995,12997,13e3,1,8722,59,1,8863,4,2,59,117,13006,13008,1,8760,59,1,10794,4,2,99,100,13017,13021,112,59,1,10971,114,59,1,8230,112,108,117,115,59,1,8723,4,2,100,112,13038,13044,101,108,115,59,1,8871,102,59,3,55349,56670,59,1,8723,4,2,99,116,13058,13063,114,59,3,55349,56514,112,111,115,59,1,8766,4,3,59,108,109,13077,13079,13087,1,956,116,105,109,97,112,59,1,8888,97,112,59,1,8888,4,24,71,76,82,86,97,98,99,100,101,102,103,104,105,106,108,109,111,112,114,115,116,117,118,119,13142,13165,13217,13229,13247,13330,13359,13414,13420,13508,13513,13579,13602,13626,13631,13762,13767,13855,13936,13995,14214,14285,14312,14432,4,2,103,116,13148,13152,59,3,8921,824,4,2,59,118,13158,13161,3,8811,8402,59,3,8811,824,4,3,101,108,116,13173,13200,13204,102,116,4,2,97,114,13181,13188,114,114,111,119,59,1,8653,105,103,104,116,97,114,114,111,119,59,1,8654,59,3,8920,824,4,2,59,118,13210,13213,3,8810,8402,59,3,8810,824,105,103,104,116,97,114,114,111,119,59,1,8655,4,2,68,100,13235,13241,97,115,104,59,1,8879,97,115,104,59,1,8878,4,5,98,99,110,112,116,13259,13264,13270,13275,13308,108,97,59,1,8711,117,116,101,59,1,324,103,59,3,8736,8402,4,5,59,69,105,111,112,13287,13289,13293,13298,13302,1,8777,59,3,10864,824,100,59,3,8779,824,115,59,1,329,114,111,120,59,1,8777,117,114,4,2,59,97,13316,13318,1,9838,108,4,2,59,115,13325,13327,1,9838,59,1,8469,4,2,115,117,13336,13344,112,5,160,1,59,13342,1,160,109,112,4,2,59,101,13352,13355,3,8782,824,59,3,8783,824,4,5,97,101,111,117,121,13371,13385,13391,13407,13411,4,2,112,114,13377,13380,59,1,10819,111,110,59,1,328,100,105,108,59,1,326,110,103,4,2,59,100,13399,13401,1,8775,111,116,59,3,10861,824,112,59,1,10818,59,1,1085,97,115,104,59,1,8211,4,7,59,65,97,100,113,115,120,13436,13438,13443,13466,13472,13478,13494,1,8800,114,114,59,1,8663,114,4,2,104,114,13450,13454,107,59,1,10532,4,2,59,111,13460,13462,1,8599,119,59,1,8599,111,116,59,3,8784,824,117,105,118,59,1,8802,4,2,101,105,13484,13489,97,114,59,1,10536,109,59,3,8770,824,105,115,116,4,2,59,115,13503,13505,1,8708,59,1,8708,114,59,3,55349,56619,4,4,69,101,115,116,13523,13527,13563,13568,59,3,8807,824,4,3,59,113,115,13535,13537,13559,1,8817,4,3,59,113,115,13545,13547,13551,1,8817,59,3,8807,824,108,97,110,116,59,3,10878,824,59,3,10878,824,105,109,59,1,8821,4,2,59,114,13574,13576,1,8815,59,1,8815,4,3,65,97,112,13587,13592,13597,114,114,59,1,8654,114,114,59,1,8622,97,114,59,1,10994,4,3,59,115,118,13610,13612,13623,1,8715,4,2,59,100,13618,13620,1,8956,59,1,8954,59,1,8715,99,121,59,1,1114,4,7,65,69,97,100,101,115,116,13647,13652,13656,13661,13665,13737,13742,114,114,59,1,8653,59,3,8806,824,114,114,59,1,8602,114,59,1,8229,4,4,59,102,113,115,13675,13677,13703,13725,1,8816,116,4,2,97,114,13684,13691,114,114,111,119,59,1,8602,105,103,104,116,97,114,114,111,119,59,1,8622,4,3,59,113,115,13711,13713,13717,1,8816,59,3,8806,824,108,97,110,116,59,3,10877,824,4,2,59,115,13731,13734,3,10877,824,59,1,8814,105,109,59,1,8820,4,2,59,114,13748,13750,1,8814,105,4,2,59,101,13757,13759,1,8938,59,1,8940,105,100,59,1,8740,4,2,112,116,13773,13778,102,59,3,55349,56671,5,172,3,59,105,110,13787,13789,13829,1,172,110,4,4,59,69,100,118,13800,13802,13806,13812,1,8713,59,3,8953,824,111,116,59,3,8949,824,4,3,97,98,99,13820,13823,13826,59,1,8713,59,1,8951,59,1,8950,105,4,2,59,118,13836,13838,1,8716,4,3,97,98,99,13846,13849,13852,59,1,8716,59,1,8958,59,1,8957,4,3,97,111,114,13863,13892,13899,114,4,4,59,97,115,116,13874,13876,13883,13888,1,8742,108,108,101,108,59,1,8742,108,59,3,11005,8421,59,3,8706,824,108,105,110,116,59,1,10772,4,3,59,99,101,13907,13909,13914,1,8832,117,101,59,1,8928,4,2,59,99,13920,13923,3,10927,824,4,2,59,101,13929,13931,1,8832,113,59,3,10927,824,4,4,65,97,105,116,13946,13951,13971,13982,114,114,59,1,8655,114,114,4,3,59,99,119,13961,13963,13967,1,8603,59,3,10547,824,59,3,8605,824,103,104,116,97,114,114,111,119,59,1,8603,114,105,4,2,59,101,13990,13992,1,8939,59,1,8941,4,7,99,104,105,109,112,113,117,14011,14036,14060,14080,14085,14090,14106,4,4,59,99,101,114,14021,14023,14028,14032,1,8833,117,101,59,1,8929,59,3,10928,824,59,3,55349,56515,111,114,116,4,2,109,112,14045,14050,105,100,59,1,8740,97,114,97,108,108,101,108,59,1,8742,109,4,2,59,101,14067,14069,1,8769,4,2,59,113,14075,14077,1,8772,59,1,8772,105,100,59,1,8740,97,114,59,1,8742,115,117,4,2,98,112,14098,14102,101,59,1,8930,101,59,1,8931,4,3,98,99,112,14114,14157,14171,4,4,59,69,101,115,14124,14126,14130,14133,1,8836,59,3,10949,824,59,1,8840,101,116,4,2,59,101,14141,14144,3,8834,8402,113,4,2,59,113,14151,14153,1,8840,59,3,10949,824,99,4,2,59,101,14164,14166,1,8833,113,59,3,10928,824,4,4,59,69,101,115,14181,14183,14187,14190,1,8837,59,3,10950,824,59,1,8841,101,116,4,2,59,101,14198,14201,3,8835,8402,113,4,2,59,113,14208,14210,1,8841,59,3,10950,824,4,4,103,105,108,114,14224,14228,14238,14242,108,59,1,8825,108,100,101,5,241,1,59,14236,1,241,103,59,1,8824,105,97,110,103,108,101,4,2,108,114,14254,14269,101,102,116,4,2,59,101,14263,14265,1,8938,113,59,1,8940,105,103,104,116,4,2,59,101,14279,14281,1,8939,113,59,1,8941,4,2,59,109,14291,14293,1,957,4,3,59,101,115,14301,14303,14308,1,35,114,111,59,1,8470,112,59,1,8199,4,9,68,72,97,100,103,105,108,114,115,14332,14338,14344,14349,14355,14369,14376,14408,14426,97,115,104,59,1,8877,97,114,114,59,1,10500,112,59,3,8781,8402,97,115,104,59,1,8876,4,2,101,116,14361,14365,59,3,8805,8402,59,3,62,8402,110,102,105,110,59,1,10718,4,3,65,101,116,14384,14389,14393,114,114,59,1,10498,59,3,8804,8402,4,2,59,114,14399,14402,3,60,8402,105,101,59,3,8884,8402,4,2,65,116,14414,14419,114,114,59,1,10499,114,105,101,59,3,8885,8402,105,109,59,3,8764,8402,4,3,65,97,110,14440,14445,14468,114,114,59,1,8662,114,4,2,104,114,14452,14456,107,59,1,10531,4,2,59,111,14462,14464,1,8598,119,59,1,8598,101,97,114,59,1,10535,4,18,83,97,99,100,101,102,103,104,105,108,109,111,112,114,115,116,117,118,14512,14515,14535,14560,14597,14603,14618,14643,14657,14662,14701,14741,14747,14769,14851,14877,14907,14916,59,1,9416,4,2,99,115,14521,14531,117,116,101,5,243,1,59,14529,1,243,116,59,1,8859,4,2,105,121,14541,14557,114,4,2,59,99,14548,14550,1,8858,5,244,1,59,14555,1,244,59,1,1086,4,5,97,98,105,111,115,14572,14577,14583,14587,14591,115,104,59,1,8861,108,97,99,59,1,337,118,59,1,10808,116,59,1,8857,111,108,100,59,1,10684,108,105,103,59,1,339,4,2,99,114,14609,14614,105,114,59,1,10687,59,3,55349,56620,4,3,111,114,116,14626,14630,14640,110,59,1,731,97,118,101,5,242,1,59,14638,1,242,59,1,10689,4,2,98,109,14649,14654,97,114,59,1,10677,59,1,937,110,116,59,1,8750,4,4,97,99,105,116,14672,14677,14693,14698,114,114,59,1,8634,4,2,105,114,14683,14687,114,59,1,10686,111,115,115,59,1,10683,110,101,59,1,8254,59,1,10688,4,3,97,101,105,14709,14714,14719,99,114,59,1,333,103,97,59,1,969,4,3,99,100,110,14727,14733,14736,114,111,110,59,1,959,59,1,10678,117,115,59,1,8854,112,102,59,3,55349,56672,4,3,97,101,108,14755,14759,14764,114,59,1,10679,114,112,59,1,10681,117,115,59,1,8853,4,7,59,97,100,105,111,115,118,14785,14787,14792,14831,14837,14841,14848,1,8744,114,114,59,1,8635,4,4,59,101,102,109,14802,14804,14817,14824,1,10845,114,4,2,59,111,14811,14813,1,8500,102,59,1,8500,5,170,1,59,14822,1,170,5,186,1,59,14829,1,186,103,111,102,59,1,8886,114,59,1,10838,108,111,112,101,59,1,10839,59,1,10843,4,3,99,108,111,14859,14863,14873,114,59,1,8500,97,115,104,5,248,1,59,14871,1,248,108,59,1,8856,105,4,2,108,109,14884,14893,100,101,5,245,1,59,14891,1,245,101,115,4,2,59,97,14901,14903,1,8855,115,59,1,10806,109,108,5,246,1,59,14914,1,246,98,97,114,59,1,9021,4,12,97,99,101,102,104,105,108,109,111,114,115,117,14948,14992,14996,15033,15038,15068,15090,15189,15192,15222,15427,15441,114,4,4,59,97,115,116,14959,14961,14976,14989,1,8741,5,182,2,59,108,14968,14970,1,182,108,101,108,59,1,8741,4,2,105,108,14982,14986,109,59,1,10995,59,1,11005,59,1,8706,121,59,1,1087,114,4,5,99,105,109,112,116,15009,15014,15019,15024,15027,110,116,59,1,37,111,100,59,1,46,105,108,59,1,8240,59,1,8869,101,110,107,59,1,8241,114,59,3,55349,56621,4,3,105,109,111,15046,15057,15063,4,2,59,118,15052,15054,1,966,59,1,981,109,97,116,59,1,8499,110,101,59,1,9742,4,3,59,116,118,15076,15078,15087,1,960,99,104,102,111,114,107,59,1,8916,59,1,982,4,2,97,117,15096,15119,110,4,2,99,107,15103,15115,107,4,2,59,104,15110,15112,1,8463,59,1,8462,118,59,1,8463,115,4,9,59,97,98,99,100,101,109,115,116,15140,15142,15148,15151,15156,15168,15171,15179,15184,1,43,99,105,114,59,1,10787,59,1,8862,105,114,59,1,10786,4,2,111,117,15162,15165,59,1,8724,59,1,10789,59,1,10866,110,5,177,1,59,15177,1,177,105,109,59,1,10790,119,111,59,1,10791,59,1,177,4,3,105,112,117,15200,15208,15213,110,116,105,110,116,59,1,10773,102,59,3,55349,56673,110,100,5,163,1,59,15220,1,163,4,10,59,69,97,99,101,105,110,111,115,117,15244,15246,15249,15253,15258,15334,15347,15367,15416,15421,1,8826,59,1,10931,112,59,1,10935,117,101,59,1,8828,4,2,59,99,15264,15266,1,10927,4,6,59,97,99,101,110,115,15280,15282,15290,15299,15303,15329,1,8826,112,112,114,111,120,59,1,10935,117,114,108,121,101,113,59,1,8828,113,59,1,10927,4,3,97,101,115,15311,15319,15324,112,112,114,111,120,59,1,10937,113,113,59,1,10933,105,109,59,1,8936,105,109,59,1,8830,109,101,4,2,59,115,15342,15344,1,8242,59,1,8473,4,3,69,97,115,15355,15358,15362,59,1,10933,112,59,1,10937,105,109,59,1,8936,4,3,100,102,112,15375,15378,15404,59,1,8719,4,3,97,108,115,15386,15392,15398,108,97,114,59,1,9006,105,110,101,59,1,8978,117,114,102,59,1,8979,4,2,59,116,15410,15412,1,8733,111,59,1,8733,105,109,59,1,8830,114,101,108,59,1,8880,4,2,99,105,15433,15438,114,59,3,55349,56517,59,1,968,110,99,115,112,59,1,8200,4,6,102,105,111,112,115,117,15462,15467,15472,15478,15485,15491,114,59,3,55349,56622,110,116,59,1,10764,112,102,59,3,55349,56674,114,105,109,101,59,1,8279,99,114,59,3,55349,56518,4,3,97,101,111,15499,15520,15534,116,4,2,101,105,15506,15515,114,110,105,111,110,115,59,1,8461,110,116,59,1,10774,115,116,4,2,59,101,15528,15530,1,63,113,59,1,8799,116,5,34,1,59,15540,1,34,4,21,65,66,72,97,98,99,100,101,102,104,105,108,109,110,111,112,114,115,116,117,120,15586,15609,15615,15620,15796,15855,15893,15931,15977,16001,16039,16183,16204,16222,16228,16285,16312,16318,16363,16408,16416,4,3,97,114,116,15594,15599,15603,114,114,59,1,8667,114,59,1,8658,97,105,108,59,1,10524,97,114,114,59,1,10511,97,114,59,1,10596,4,7,99,100,101,110,113,114,116,15636,15651,15656,15664,15687,15696,15770,4,2,101,117,15642,15646,59,3,8765,817,116,101,59,1,341,105,99,59,1,8730,109,112,116,121,118,59,1,10675,103,4,4,59,100,101,108,15675,15677,15680,15683,1,10217,59,1,10642,59,1,10661,101,59,1,10217,117,111,5,187,1,59,15694,1,187,114,4,11,59,97,98,99,102,104,108,112,115,116,119,15721,15723,15727,15739,15742,15746,15750,15754,15758,15763,15767,1,8594,112,59,1,10613,4,2,59,102,15733,15735,1,8677,115,59,1,10528,59,1,10547,115,59,1,10526,107,59,1,8618,112,59,1,8620,108,59,1,10565,105,109,59,1,10612,108,59,1,8611,59,1,8605,4,2,97,105,15776,15781,105,108,59,1,10522,111,4,2,59,110,15788,15790,1,8758,97,108,115,59,1,8474,4,3,97,98,114,15804,15809,15814,114,114,59,1,10509,114,107,59,1,10099,4,2,97,107,15820,15833,99,4,2,101,107,15827,15830,59,1,125,59,1,93,4,2,101,115,15839,15842,59,1,10636,108,4,2,100,117,15849,15852,59,1,10638,59,1,10640,4,4,97,101,117,121,15865,15871,15886,15890,114,111,110,59,1,345,4,2,100,105,15877,15882,105,108,59,1,343,108,59,1,8969,98,59,1,125,59,1,1088,4,4,99,108,113,115,15903,15907,15914,15927,97,59,1,10551,100,104,97,114,59,1,10601,117,111,4,2,59,114,15922,15924,1,8221,59,1,8221,104,59,1,8627,4,3,97,99,103,15939,15966,15970,108,4,4,59,105,112,115,15950,15952,15957,15963,1,8476,110,101,59,1,8475,97,114,116,59,1,8476,59,1,8477,116,59,1,9645,5,174,1,59,15975,1,174,4,3,105,108,114,15985,15991,15997,115,104,116,59,1,10621,111,111,114,59,1,8971,59,3,55349,56623,4,2,97,111,16007,16028,114,4,2,100,117,16014,16017,59,1,8641,4,2,59,108,16023,16025,1,8640,59,1,10604,4,2,59,118,16034,16036,1,961,59,1,1009,4,3,103,110,115,16047,16167,16171,104,116,4,6,97,104,108,114,115,116,16063,16081,16103,16130,16143,16155,114,114,111,119,4,2,59,116,16073,16075,1,8594,97,105,108,59,1,8611,97,114,112,111,111,110,4,2,100,117,16093,16099,111,119,110,59,1,8641,112,59,1,8640,101,102,116,4,2,97,104,16112,16120,114,114,111,119,115,59,1,8644,97,114,112,111,111,110,115,59,1,8652,105,103,104,116,97,114,114,111,119,115,59,1,8649,113,117,105,103,97,114,114,111,119,59,1,8605,104,114,101,101,116,105,109,101,115,59,1,8908,103,59,1,730,105,110,103,100,111,116,115,101,113,59,1,8787,4,3,97,104,109,16191,16196,16201,114,114,59,1,8644,97,114,59,1,8652,59,1,8207,111,117,115,116,4,2,59,97,16214,16216,1,9137,99,104,101,59,1,9137,109,105,100,59,1,10990,4,4,97,98,112,116,16238,16252,16257,16278,4,2,110,114,16244,16248,103,59,1,10221,114,59,1,8702,114,107,59,1,10215,4,3,97,102,108,16265,16269,16273,114,59,1,10630,59,3,55349,56675,117,115,59,1,10798,105,109,101,115,59,1,10805,4,2,97,112,16291,16304,114,4,2,59,103,16298,16300,1,41,116,59,1,10644,111,108,105,110,116,59,1,10770,97,114,114,59,1,8649,4,4,97,99,104,113,16328,16334,16339,16342,113,117,111,59,1,8250,114,59,3,55349,56519,59,1,8625,4,2,98,117,16348,16351,59,1,93,111,4,2,59,114,16358,16360,1,8217,59,1,8217,4,3,104,105,114,16371,16377,16383,114,101,101,59,1,8908,109,101,115,59,1,8906,105,4,4,59,101,102,108,16394,16396,16399,16402,1,9657,59,1,8885,59,1,9656,116,114,105,59,1,10702,108,117,104,97,114,59,1,10600,59,1,8478,4,19,97,98,99,100,101,102,104,105,108,109,111,112,113,114,115,116,117,119,122,16459,16466,16472,16572,16590,16672,16687,16746,16844,16850,16924,16963,16988,17115,17121,17154,17206,17614,17656,99,117,116,101,59,1,347,113,117,111,59,1,8218,4,10,59,69,97,99,101,105,110,112,115,121,16494,16496,16499,16513,16518,16531,16536,16556,16564,16569,1,8827,59,1,10932,4,2,112,114,16505,16508,59,1,10936,111,110,59,1,353,117,101,59,1,8829,4,2,59,100,16524,16526,1,10928,105,108,59,1,351,114,99,59,1,349,4,3,69,97,115,16544,16547,16551,59,1,10934,112,59,1,10938,105,109,59,1,8937,111,108,105,110,116,59,1,10771,105,109,59,1,8831,59,1,1089,111,116,4,3,59,98,101,16582,16584,16587,1,8901,59,1,8865,59,1,10854,4,7,65,97,99,109,115,116,120,16606,16611,16634,16642,16646,16652,16668,114,114,59,1,8664,114,4,2,104,114,16618,16622,107,59,1,10533,4,2,59,111,16628,16630,1,8600,119,59,1,8600,116,5,167,1,59,16640,1,167,105,59,1,59,119,97,114,59,1,10537,109,4,2,105,110,16659,16665,110,117,115,59,1,8726,59,1,8726,116,59,1,10038,114,4,2,59,111,16679,16682,3,55349,56624,119,110,59,1,8994,4,4,97,99,111,121,16697,16702,16716,16739,114,112,59,1,9839,4,2,104,121,16708,16713,99,121,59,1,1097,59,1,1096,114,116,4,2,109,112,16724,16729,105,100,59,1,8739,97,114,97,108,108,101,108,59,1,8741,5,173,1,59,16744,1,173,4,2,103,109,16752,16770,109,97,4,3,59,102,118,16762,16764,16767,1,963,59,1,962,59,1,962,4,8,59,100,101,103,108,110,112,114,16788,16790,16795,16806,16817,16828,16832,16838,1,8764,111,116,59,1,10858,4,2,59,113,16801,16803,1,8771,59,1,8771,4,2,59,69,16812,16814,1,10910,59,1,10912,4,2,59,69,16823,16825,1,10909,59,1,10911,101,59,1,8774,108,117,115,59,1,10788,97,114,114,59,1,10610,97,114,114,59,1,8592,4,4,97,101,105,116,16860,16883,16891,16904,4,2,108,115,16866,16878,108,115,101,116,109,105,110,117,115,59,1,8726,104,112,59,1,10803,112,97,114,115,108,59,1,10724,4,2,100,108,16897,16900,59,1,8739,101,59,1,8995,4,2,59,101,16910,16912,1,10922,4,2,59,115,16918,16920,1,10924,59,3,10924,65024,4,3,102,108,112,16932,16938,16958,116,99,121,59,1,1100,4,2,59,98,16944,16946,1,47,4,2,59,97,16952,16954,1,10692,114,59,1,9023,102,59,3,55349,56676,97,4,2,100,114,16970,16985,101,115,4,2,59,117,16978,16980,1,9824,105,116,59,1,9824,59,1,8741,4,3,99,115,117,16996,17028,17089,4,2,97,117,17002,17015,112,4,2,59,115,17009,17011,1,8851,59,3,8851,65024,112,4,2,59,115,17022,17024,1,8852,59,3,8852,65024,117,4,2,98,112,17035,17062,4,3,59,101,115,17043,17045,17048,1,8847,59,1,8849,101,116,4,2,59,101,17056,17058,1,8847,113,59,1,8849,4,3,59,101,115,17070,17072,17075,1,8848,59,1,8850,101,116,4,2,59,101,17083,17085,1,8848,113,59,1,8850,4,3,59,97,102,17097,17099,17112,1,9633,114,4,2,101,102,17106,17109,59,1,9633,59,1,9642,59,1,9642,97,114,114,59,1,8594,4,4,99,101,109,116,17131,17136,17142,17148,114,59,3,55349,56520,116,109,110,59,1,8726,105,108,101,59,1,8995,97,114,102,59,1,8902,4,2,97,114,17160,17172,114,4,2,59,102,17167,17169,1,9734,59,1,9733,4,2,97,110,17178,17202,105,103,104,116,4,2,101,112,17188,17197,112,115,105,108,111,110,59,1,1013,104,105,59,1,981,115,59,1,175,4,5,98,99,109,110,112,17218,17351,17420,17423,17427,4,9,59,69,100,101,109,110,112,114,115,17238,17240,17243,17248,17261,17267,17279,17285,17291,1,8834,59,1,10949,111,116,59,1,10941,4,2,59,100,17254,17256,1,8838,111,116,59,1,10947,117,108,116,59,1,10945,4,2,69,101,17273,17276,59,1,10955,59,1,8842,108,117,115,59,1,10943,97,114,114,59,1,10617,4,3,101,105,117,17299,17335,17339,116,4,3,59,101,110,17308,17310,17322,1,8834,113,4,2,59,113,17317,17319,1,8838,59,1,10949,101,113,4,2,59,113,17330,17332,1,8842,59,1,10955,109,59,1,10951,4,2,98,112,17345,17348,59,1,10965,59,1,10963,99,4,6,59,97,99,101,110,115,17366,17368,17376,17385,17389,17415,1,8827,112,112,114,111,120,59,1,10936,117,114,108,121,101,113,59,1,8829,113,59,1,10928,4,3,97,101,115,17397,17405,17410,112,112,114,111,120,59,1,10938,113,113,59,1,10934,105,109,59,1,8937,105,109,59,1,8831,59,1,8721,103,59,1,9834,4,13,49,50,51,59,69,100,101,104,108,109,110,112,115,17455,17462,17469,17476,17478,17481,17496,17509,17524,17530,17536,17548,17554,5,185,1,59,17460,1,185,5,178,1,59,17467,1,178,5,179,1,59,17474,1,179,1,8835,59,1,10950,4,2,111,115,17487,17491,116,59,1,10942,117,98,59,1,10968,4,2,59,100,17502,17504,1,8839,111,116,59,1,10948,115,4,2,111,117,17516,17520,108,59,1,10185,98,59,1,10967,97,114,114,59,1,10619,117,108,116,59,1,10946,4,2,69,101,17542,17545,59,1,10956,59,1,8843,108,117,115,59,1,10944,4,3,101,105,117,17562,17598,17602,116,4,3,59,101,110,17571,17573,17585,1,8835,113,4,2,59,113,17580,17582,1,8839,59,1,10950,101,113,4,2,59,113,17593,17595,1,8843,59,1,10956,109,59,1,10952,4,2,98,112,17608,17611,59,1,10964,59,1,10966,4,3,65,97,110,17622,17627,17650,114,114,59,1,8665,114,4,2,104,114,17634,17638,107,59,1,10534,4,2,59,111,17644,17646,1,8601,119,59,1,8601,119,97,114,59,1,10538,108,105,103,5,223,1,59,17664,1,223,4,13,97,98,99,100,101,102,104,105,111,112,114,115,119,17694,17709,17714,17737,17742,17749,17754,17860,17905,17957,17964,18090,18122,4,2,114,117,17700,17706,103,101,116,59,1,8982,59,1,964,114,107,59,1,9140,4,3,97,101,121,17722,17728,17734,114,111,110,59,1,357,100,105,108,59,1,355,59,1,1090,111,116,59,1,8411,108,114,101,99,59,1,8981,114,59,3,55349,56625,4,4,101,105,107,111,17764,17805,17836,17851,4,2,114,116,17770,17786,101,4,2,52,102,17777,17780,59,1,8756,111,114,101,59,1,8756,97,4,3,59,115,118,17795,17797,17802,1,952,121,109,59,1,977,59,1,977,4,2,99,110,17811,17831,107,4,2,97,115,17818,17826,112,112,114,111,120,59,1,8776,105,109,59,1,8764,115,112,59,1,8201,4,2,97,115,17842,17846,112,59,1,8776,105,109,59,1,8764,114,110,5,254,1,59,17858,1,254,4,3,108,109,110,17868,17873,17901,100,101,59,1,732,101,115,5,215,3,59,98,100,17884,17886,17898,1,215,4,2,59,97,17892,17894,1,8864,114,59,1,10801,59,1,10800,116,59,1,8749,4,3,101,112,115,17913,17917,17953,97,59,1,10536,4,4,59,98,99,102,17927,17929,17934,17939,1,8868,111,116,59,1,9014,105,114,59,1,10993,4,2,59,111,17945,17948,3,55349,56677,114,107,59,1,10970,97,59,1,10537,114,105,109,101,59,1,8244,4,3,97,105,112,17972,17977,18082,100,101,59,1,8482,4,7,97,100,101,109,112,115,116,17993,18051,18056,18059,18066,18072,18076,110,103,108,101,4,5,59,100,108,113,114,18009,18011,18017,18032,18035,1,9653,111,119,110,59,1,9663,101,102,116,4,2,59,101,18026,18028,1,9667,113,59,1,8884,59,1,8796,105,103,104,116,4,2,59,101,18045,18047,1,9657,113,59,1,8885,111,116,59,1,9708,59,1,8796,105,110,117,115,59,1,10810,108,117,115,59,1,10809,98,59,1,10701,105,109,101,59,1,10811,101,122,105,117,109,59,1,9186,4,3,99,104,116,18098,18111,18116,4,2,114,121,18104,18108,59,3,55349,56521,59,1,1094,99,121,59,1,1115,114,111,107,59,1,359,4,2,105,111,18128,18133,120,116,59,1,8812,104,101,97,100,4,2,108,114,18143,18154,101,102,116,97,114,114,111,119,59,1,8606,105,103,104,116,97,114,114,111,119,59,1,8608,4,18,65,72,97,98,99,100,102,103,104,108,109,111,112,114,115,116,117,119,18204,18209,18214,18234,18250,18268,18292,18308,18319,18343,18379,18397,18413,18504,18547,18553,18584,18603,114,114,59,1,8657,97,114,59,1,10595,4,2,99,114,18220,18230,117,116,101,5,250,1,59,18228,1,250,114,59,1,8593,114,4,2,99,101,18241,18245,121,59,1,1118,118,101,59,1,365,4,2,105,121,18256,18265,114,99,5,251,1,59,18263,1,251,59,1,1091,4,3,97,98,104,18276,18281,18287,114,114,59,1,8645,108,97,99,59,1,369,97,114,59,1,10606,4,2,105,114,18298,18304,115,104,116,59,1,10622,59,3,55349,56626,114,97,118,101,5,249,1,59,18317,1,249,4,2,97,98,18325,18338,114,4,2,108,114,18332,18335,59,1,8639,59,1,8638,108,107,59,1,9600,4,2,99,116,18349,18374,4,2,111,114,18355,18369,114,110,4,2,59,101,18363,18365,1,8988,114,59,1,8988,111,112,59,1,8975,114,105,59,1,9720,4,2,97,108,18385,18390,99,114,59,1,363,5,168,1,59,18395,1,168,4,2,103,112,18403,18408,111,110,59,1,371,102,59,3,55349,56678,4,6,97,100,104,108,115,117,18427,18434,18445,18470,18475,18494,114,114,111,119,59,1,8593,111,119,110,97,114,114,111,119,59,1,8597,97,114,112,111,111,110,4,2,108,114,18457,18463,101,102,116,59,1,8639,105,103,104,116,59,1,8638,117,115,59,1,8846,105,4,3,59,104,108,18484,18486,18489,1,965,59,1,978,111,110,59,1,965,112,97,114,114,111,119,115,59,1,8648,4,3,99,105,116,18512,18537,18542,4,2,111,114,18518,18532,114,110,4,2,59,101,18526,18528,1,8989,114,59,1,8989,111,112,59,1,8974,110,103,59,1,367,114,105,59,1,9721,99,114,59,3,55349,56522,4,3,100,105,114,18561,18566,18572,111,116,59,1,8944,108,100,101,59,1,361,105,4,2,59,102,18579,18581,1,9653,59,1,9652,4,2,97,109,18590,18595,114,114,59,1,8648,108,5,252,1,59,18601,1,252,97,110,103,108,101,59,1,10663,4,15,65,66,68,97,99,100,101,102,108,110,111,112,114,115,122,18643,18648,18661,18667,18847,18851,18857,18904,18909,18915,18931,18937,18943,18949,18996,114,114,59,1,8661,97,114,4,2,59,118,18656,18658,1,10984,59,1,10985,97,115,104,59,1,8872,4,2,110,114,18673,18679,103,114,116,59,1,10652,4,7,101,107,110,112,114,115,116,18695,18704,18711,18720,18742,18754,18810,112,115,105,108,111,110,59,1,1013,97,112,112,97,59,1,1008,111,116,104,105,110,103,59,1,8709,4,3,104,105,114,18728,18732,18735,105,59,1,981,59,1,982,111,112,116,111,59,1,8733,4,2,59,104,18748,18750,1,8597,111,59,1,1009,4,2,105,117,18760,18766,103,109,97,59,1,962,4,2,98,112,18772,18791,115,101,116,110,101,113,4,2,59,113,18784,18787,3,8842,65024,59,3,10955,65024,115,101,116,110,101,113,4,2,59,113,18803,18806,3,8843,65024,59,3,10956,65024,4,2,104,114,18816,18822,101,116,97,59,1,977,105,97,110,103,108,101,4,2,108,114,18834,18840,101,102,116,59,1,8882,105,103,104,116,59,1,8883,121,59,1,1074,97,115,104,59,1,8866,4,3,101,108,114,18865,18884,18890,4,3,59,98,101,18873,18875,18880,1,8744,97,114,59,1,8891,113,59,1,8794,108,105,112,59,1,8942,4,2,98,116,18896,18901,97,114,59,1,124,59,1,124,114,59,3,55349,56627,116,114,105,59,1,8882,115,117,4,2,98,112,18923,18927,59,3,8834,8402,59,3,8835,8402,112,102,59,3,55349,56679,114,111,112,59,1,8733,116,114,105,59,1,8883,4,2,99,117,18955,18960,114,59,3,55349,56523,4,2,98,112,18966,18981,110,4,2,69,101,18973,18977,59,3,10955,65024,59,3,8842,65024,110,4,2,69,101,18988,18992,59,3,10956,65024,59,3,8843,65024,105,103,122,97,103,59,1,10650,4,7,99,101,102,111,112,114,115,19020,19026,19061,19066,19072,19075,19089,105,114,99,59,1,373,4,2,100,105,19032,19055,4,2,98,103,19038,19043,97,114,59,1,10847,101,4,2,59,113,19050,19052,1,8743,59,1,8793,101,114,112,59,1,8472,114,59,3,55349,56628,112,102,59,3,55349,56680,59,1,8472,4,2,59,101,19081,19083,1,8768,97,116,104,59,1,8768,99,114,59,3,55349,56524,4,14,99,100,102,104,105,108,109,110,111,114,115,117,118,119,19125,19146,19152,19157,19173,19176,19192,19197,19202,19236,19252,19269,19286,19291,4,3,97,105,117,19133,19137,19142,112,59,1,8898,114,99,59,1,9711,112,59,1,8899,116,114,105,59,1,9661,114,59,3,55349,56629,4,2,65,97,19163,19168,114,114,59,1,10234,114,114,59,1,10231,59,1,958,4,2,65,97,19182,19187,114,114,59,1,10232,114,114,59,1,10229,97,112,59,1,10236,105,115,59,1,8955,4,3,100,112,116,19210,19215,19230,111,116,59,1,10752,4,2,102,108,19221,19225,59,3,55349,56681,117,115,59,1,10753,105,109,101,59,1,10754,4,2,65,97,19242,19247,114,114,59,1,10233,114,114,59,1,10230,4,2,99,113,19258,19263,114,59,3,55349,56525,99,117,112,59,1,10758,4,2,112,116,19275,19281,108,117,115,59,1,10756,114,105,59,1,9651,101,101,59,1,8897,101,100,103,101,59,1,8896,4,8,97,99,101,102,105,111,115,117,19316,19335,19349,19357,19362,19367,19373,19379,99,4,2,117,121,19323,19332,116,101,5,253,1,59,19330,1,253,59,1,1103,4,2,105,121,19341,19346,114,99,59,1,375,59,1,1099,110,5,165,1,59,19355,1,165,114,59,3,55349,56630,99,121,59,1,1111,112,102,59,3,55349,56682,99,114,59,3,55349,56526,4,2,99,109,19385,19389,121,59,1,1102,108,5,255,1,59,19395,1,255,4,10,97,99,100,101,102,104,105,111,115,119,19419,19426,19441,19446,19462,19467,19472,19480,19486,19492,99,117,116,101,59,1,378,4,2,97,121,19432,19438,114,111,110,59,1,382,59,1,1079,111,116,59,1,380,4,2,101,116,19452,19458,116,114,102,59,1,8488,97,59,1,950,114,59,3,55349,56631,99,121,59,1,1078,103,114,97,114,114,59,1,8669,112,102,59,3,55349,56683,99,114,59,3,55349,56527,4,2,106,110,19498,19501,59,1,8205,106,59,1,8204]),pd=ud,fd=od,md=dd,hd=id,gd=fd.CODE_POINTS,vd=fd.CODE_POINT_SEQUENCES,bd={128:8364,130:8218,131:402,132:8222,133:8230,134:8224,135:8225,136:710,137:8240,138:352,139:8249,140:338,142:381,145:8216,146:8217,147:8220,148:8221,149:8226,150:8211,151:8212,152:732,153:8482,154:353,155:8250,156:339,158:382,159:376},yd="DATA_STATE",Ed="RCDATA_STATE",Sd="RAWTEXT_STATE",wd="SCRIPT_DATA_STATE",_d="PLAINTEXT_STATE",Td="TAG_OPEN_STATE",xd="END_TAG_OPEN_STATE",Cd="TAG_NAME_STATE",Ad="RCDATA_LESS_THAN_SIGN_STATE",kd="RCDATA_END_TAG_OPEN_STATE",Id="RCDATA_END_TAG_NAME_STATE",Od="RAWTEXT_LESS_THAN_SIGN_STATE",Rd="RAWTEXT_END_TAG_OPEN_STATE",Nd="RAWTEXT_END_TAG_NAME_STATE",Md="SCRIPT_DATA_LESS_THAN_SIGN_STATE",Ld="SCRIPT_DATA_END_TAG_OPEN_STATE",Pd="SCRIPT_DATA_END_TAG_NAME_STATE",Dd="SCRIPT_DATA_ESCAPE_START_STATE",Zd="SCRIPT_DATA_ESCAPE_START_DASH_STATE",Bd="SCRIPT_DATA_ESCAPED_STATE",zd="SCRIPT_DATA_ESCAPED_DASH_STATE",Fd="SCRIPT_DATA_ESCAPED_DASH_DASH_STATE",Ud="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN_STATE",jd="SCRIPT_DATA_ESCAPED_END_TAG_OPEN_STATE",Hd="SCRIPT_DATA_ESCAPED_END_TAG_NAME_STATE",Gd="SCRIPT_DATA_DOUBLE_ESCAPE_START_STATE",Vd="SCRIPT_DATA_DOUBLE_ESCAPED_STATE",Wd="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_STATE",qd="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH_STATE",$d="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN_STATE",Kd="SCRIPT_DATA_DOUBLE_ESCAPE_END_STATE",Yd="BEFORE_ATTRIBUTE_NAME_STATE",Xd="ATTRIBUTE_NAME_STATE",Qd="AFTER_ATTRIBUTE_NAME_STATE",Jd="BEFORE_ATTRIBUTE_VALUE_STATE",ep="ATTRIBUTE_VALUE_DOUBLE_QUOTED_STATE",tp="ATTRIBUTE_VALUE_SINGLE_QUOTED_STATE",np="ATTRIBUTE_VALUE_UNQUOTED_STATE",rp="AFTER_ATTRIBUTE_VALUE_QUOTED_STATE",op="SELF_CLOSING_START_TAG_STATE",ap="BOGUS_COMMENT_STATE",ip="MARKUP_DECLARATION_OPEN_STATE",sp="COMMENT_START_STATE",lp="COMMENT_START_DASH_STATE",cp="COMMENT_STATE",up="COMMENT_LESS_THAN_SIGN_STATE",dp="COMMENT_LESS_THAN_SIGN_BANG_STATE",pp="COMMENT_LESS_THAN_SIGN_BANG_DASH_STATE",fp="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH_STATE",mp="COMMENT_END_DASH_STATE",hp="COMMENT_END_STATE",gp="COMMENT_END_BANG_STATE",vp="DOCTYPE_STATE",bp="BEFORE_DOCTYPE_NAME_STATE",yp="DOCTYPE_NAME_STATE",Ep="AFTER_DOCTYPE_NAME_STATE",Sp="AFTER_DOCTYPE_PUBLIC_KEYWORD_STATE",wp="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER_STATE",_p="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED_STATE",Tp="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED_STATE",xp="AFTER_DOCTYPE_PUBLIC_IDENTIFIER_STATE",Cp="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS_STATE",Ap="AFTER_DOCTYPE_SYSTEM_KEYWORD_STATE",kp="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER_STATE",Ip="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED_STATE",Op="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED_STATE",Rp="AFTER_DOCTYPE_SYSTEM_IDENTIFIER_STATE",Np="BOGUS_DOCTYPE_STATE",Mp="CDATA_SECTION_STATE",Lp="CDATA_SECTION_BRACKET_STATE",Pp="CDATA_SECTION_END_STATE",Dp="CHARACTER_REFERENCE_STATE",Zp="NAMED_CHARACTER_REFERENCE_STATE",Bp="AMBIGUOS_AMPERSAND_STATE",zp="NUMERIC_CHARACTER_REFERENCE_STATE",Fp="HEXADEMICAL_CHARACTER_REFERENCE_START_STATE",Up="DECIMAL_CHARACTER_REFERENCE_START_STATE",jp="HEXADEMICAL_CHARACTER_REFERENCE_STATE",Hp="DECIMAL_CHARACTER_REFERENCE_STATE",Gp="NUMERIC_CHARACTER_REFERENCE_END_STATE";function Vp(e){return e===gd.SPACE||e===gd.LINE_FEED||e===gd.TABULATION||e===gd.FORM_FEED}function Wp(e){return e>=gd.DIGIT_0&&e<=gd.DIGIT_9}function qp(e){return e>=gd.LATIN_CAPITAL_A&&e<=gd.LATIN_CAPITAL_Z}function $p(e){return e>=gd.LATIN_SMALL_A&&e<=gd.LATIN_SMALL_Z}function Kp(e){return $p(e)||qp(e)}function Yp(e){return Kp(e)||Wp(e)}function Xp(e){return e>=gd.LATIN_CAPITAL_A&&e<=gd.LATIN_CAPITAL_F}function Qp(e){return e>=gd.LATIN_SMALL_A&&e<=gd.LATIN_SMALL_F}function Jp(e){return e+32}function ef(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(e>>>10&1023|55296)+String.fromCharCode(56320|1023&e))}function tf(e){return String.fromCharCode(Jp(e))}function nf(e,t){for(var n=md[++e],r=++e,o=r+n-1;r<=o;){var a=r+o>>>1,i=md[a];if(it))return md[a+n];o=a-1}}return-1}var rf=function(){function e(){(0,G.Z)(this,e),this.preprocessor=new pd,this.tokenQueue=[],this.allowCDATA=!1,this.state=yd,this.returnState="",this.charRefCode=-1,this.tempBuff=[],this.lastStartTagName="",this.consumedAfterSnapshot=-1,this.active=!1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr=null}return(0,H.Z)(e,[{key:"_err",value:function(){}},{key:"_errOnNextCodePoint",value:function(e){this._consume(),this._err(e),this._unconsume()}},{key:"getNextToken",value:function(){for(;!this.tokenQueue.length&&this.active;){this.consumedAfterSnapshot=0;var e=this._consume();this._ensureHibernation()||this[this.state](e)}return this.tokenQueue.shift()}},{key:"write",value:function(e,t){this.active=!0,this.preprocessor.write(e,t)}},{key:"insertHtmlAtCurrentPos",value:function(e){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(e)}},{key:"_ensureHibernation",value:function(){if(this.preprocessor.endOfChunkHit){for(;this.consumedAfterSnapshot>0;this.consumedAfterSnapshot--)this.preprocessor.retreat();return this.active=!1,this.tokenQueue.push({type:e.HIBERNATION_TOKEN}),!0}return!1}},{key:"_consume",value:function(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}},{key:"_unconsume",value:function(){this.consumedAfterSnapshot--,this.preprocessor.retreat()}},{key:"_reconsumeInState",value:function(e){this.state=e,this._unconsume()}},{key:"_consumeSequenceIfMatch",value:function(e,t,n){for(var r,o=0,a=!0,i=e.length,s=0,l=t;s0&&(l=this._consume(),o++),l===gd.EOF){a=!1;break}if(l!==(r=e[s])&&(n||l!==Jp(r))){a=!1;break}}if(!a)for(;o--;)this._unconsume();return a}},{key:"_isTempBufferEqualToScriptString",value:function(){if(this.tempBuff.length!==vd.SCRIPT_STRING.length)return!1;for(var e=0;e0&&this._err(hd.endTagWithAttributes),t.selfClosing&&this._err(hd.endTagWithTrailingSolidus)),this.tokenQueue.push(t)}},{key:"_emitCurrentCharacterToken",value:function(){this.currentCharacterToken&&(this.tokenQueue.push(this.currentCharacterToken),this.currentCharacterToken=null)}},{key:"_emitEOFToken",value:function(){this._createEOFToken(),this._emitCurrentToken()}},{key:"_appendCharToCurrentCharacterToken",value:function(e,t){this.currentCharacterToken&&this.currentCharacterToken.type!==e&&this._emitCurrentCharacterToken(),this.currentCharacterToken?this.currentCharacterToken.chars+=t:this._createCharacterToken(e,t)}},{key:"_emitCodePoint",value:function(t){var n=e.CHARACTER_TOKEN;Vp(t)?n=e.WHITESPACE_CHARACTER_TOKEN:t===gd.NULL&&(n=e.NULL_CHARACTER_TOKEN),this._appendCharToCurrentCharacterToken(n,ef(t))}},{key:"_emitSeveralCodePoints",value:function(e){for(var t=0;t-1;){var o=md[r],a=o<7;a&&1&o&&(t=2&o?[md[++r],md[++r]]:[md[++r]],n=0);var i=this._consume();if(this.tempBuff.push(i),n++,i===gd.EOF)break;r=a?4&o?nf(r,i):-1:i===o?++r:-1}for(;n--;)this.tempBuff.pop(),this._unconsume();return t}},{key:"_isCharacterReferenceInAttribute",value:function(){return this.returnState===ep||this.returnState===tp||this.returnState===np}},{key:"_isCharacterReferenceAttributeQuirk",value:function(e){if(!e&&this._isCharacterReferenceInAttribute()){var t=this._consume();return this._unconsume(),t===gd.EQUALS_SIGN||Yp(t)}return!1}},{key:"_flushCodePointsConsumedAsCharacterReference",value:function(){if(this._isCharacterReferenceInAttribute())for(var e=0;e")):e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.state=Bd,this._emitChars(fd.REPLACEMENT_CHARACTER)):e===gd.EOF?(this._err(hd.eofInScriptHtmlCommentLikeText),this._emitEOFToken()):(this.state=Bd,this._emitCodePoint(e))}},{key:Ud,value:function(e){e===gd.SOLIDUS?(this.tempBuff=[],this.state=jd):Kp(e)?(this.tempBuff=[],this._emitChars("<"),this._reconsumeInState(Gd)):(this._emitChars("<"),this._reconsumeInState(Bd))}},{key:jd,value:function(e){Kp(e)?(this._createEndTagToken(),this._reconsumeInState(Hd)):(this._emitChars("")):e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.state=Vd,this._emitChars(fd.REPLACEMENT_CHARACTER)):e===gd.EOF?(this._err(hd.eofInScriptHtmlCommentLikeText),this._emitEOFToken()):(this.state=Vd,this._emitCodePoint(e))}},{key:$d,value:function(e){e===gd.SOLIDUS?(this.tempBuff=[],this.state=Kd,this._emitChars("/")):this._reconsumeInState(Vd)}},{key:Kd,value:function(e){Vp(e)||e===gd.SOLIDUS||e===gd.GREATER_THAN_SIGN?(this.state=this._isTempBufferEqualToScriptString()?Bd:Vd,this._emitCodePoint(e)):qp(e)?(this.tempBuff.push(Jp(e)),this._emitCodePoint(e)):$p(e)?(this.tempBuff.push(e),this._emitCodePoint(e)):this._reconsumeInState(Vd)}},{key:Yd,value:function(e){Vp(e)||(e===gd.SOLIDUS||e===gd.GREATER_THAN_SIGN||e===gd.EOF?this._reconsumeInState(Qd):e===gd.EQUALS_SIGN?(this._err(hd.unexpectedEqualsSignBeforeAttributeName),this._createAttr("="),this.state=Xd):(this._createAttr(""),this._reconsumeInState(Xd)))}},{key:Xd,value:function(e){Vp(e)||e===gd.SOLIDUS||e===gd.GREATER_THAN_SIGN||e===gd.EOF?(this._leaveAttrName(Qd),this._unconsume()):e===gd.EQUALS_SIGN?this._leaveAttrName(Jd):qp(e)?this.currentAttr.name+=tf(e):e===gd.QUOTATION_MARK||e===gd.APOSTROPHE||e===gd.LESS_THAN_SIGN?(this._err(hd.unexpectedCharacterInAttributeName),this.currentAttr.name+=ef(e)):e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.currentAttr.name+=fd.REPLACEMENT_CHARACTER):this.currentAttr.name+=ef(e)}},{key:Qd,value:function(e){Vp(e)||(e===gd.SOLIDUS?this.state=op:e===gd.EQUALS_SIGN?this.state=Jd:e===gd.GREATER_THAN_SIGN?(this.state=yd,this._emitCurrentToken()):e===gd.EOF?(this._err(hd.eofInTag),this._emitEOFToken()):(this._createAttr(""),this._reconsumeInState(Xd)))}},{key:Jd,value:function(e){Vp(e)||(e===gd.QUOTATION_MARK?this.state=ep:e===gd.APOSTROPHE?this.state=tp:e===gd.GREATER_THAN_SIGN?(this._err(hd.missingAttributeValue),this.state=yd,this._emitCurrentToken()):this._reconsumeInState(np))}},{key:ep,value:function(e){e===gd.QUOTATION_MARK?this.state=rp:e===gd.AMPERSAND?(this.returnState=ep,this.state=Dp):e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.currentAttr.value+=fd.REPLACEMENT_CHARACTER):e===gd.EOF?(this._err(hd.eofInTag),this._emitEOFToken()):this.currentAttr.value+=ef(e)}},{key:tp,value:function(e){e===gd.APOSTROPHE?this.state=rp:e===gd.AMPERSAND?(this.returnState=tp,this.state=Dp):e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.currentAttr.value+=fd.REPLACEMENT_CHARACTER):e===gd.EOF?(this._err(hd.eofInTag),this._emitEOFToken()):this.currentAttr.value+=ef(e)}},{key:np,value:function(e){Vp(e)?this._leaveAttrValue(Yd):e===gd.AMPERSAND?(this.returnState=np,this.state=Dp):e===gd.GREATER_THAN_SIGN?(this._leaveAttrValue(yd),this._emitCurrentToken()):e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.currentAttr.value+=fd.REPLACEMENT_CHARACTER):e===gd.QUOTATION_MARK||e===gd.APOSTROPHE||e===gd.LESS_THAN_SIGN||e===gd.EQUALS_SIGN||e===gd.GRAVE_ACCENT?(this._err(hd.unexpectedCharacterInUnquotedAttributeValue),this.currentAttr.value+=ef(e)):e===gd.EOF?(this._err(hd.eofInTag),this._emitEOFToken()):this.currentAttr.value+=ef(e)}},{key:rp,value:function(e){Vp(e)?this._leaveAttrValue(Yd):e===gd.SOLIDUS?this._leaveAttrValue(op):e===gd.GREATER_THAN_SIGN?(this._leaveAttrValue(yd),this._emitCurrentToken()):e===gd.EOF?(this._err(hd.eofInTag),this._emitEOFToken()):(this._err(hd.missingWhitespaceBetweenAttributes),this._reconsumeInState(Yd))}},{key:op,value:function(e){e===gd.GREATER_THAN_SIGN?(this.currentToken.selfClosing=!0,this.state=yd,this._emitCurrentToken()):e===gd.EOF?(this._err(hd.eofInTag),this._emitEOFToken()):(this._err(hd.unexpectedSolidusInTag),this._reconsumeInState(Yd))}},{key:ap,value:function(e){e===gd.GREATER_THAN_SIGN?(this.state=yd,this._emitCurrentToken()):e===gd.EOF?(this._emitCurrentToken(),this._emitEOFToken()):e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.currentToken.data+=fd.REPLACEMENT_CHARACTER):this.currentToken.data+=ef(e)}},{key:ip,value:function(e){this._consumeSequenceIfMatch(vd.DASH_DASH_STRING,e,!0)?(this._createCommentToken(),this.state=sp):this._consumeSequenceIfMatch(vd.DOCTYPE_STRING,e,!1)?this.state=vp:this._consumeSequenceIfMatch(vd.CDATA_START_STRING,e,!0)?this.allowCDATA?this.state=Mp:(this._err(hd.cdataInHtmlContent),this._createCommentToken(),this.currentToken.data="[CDATA[",this.state=ap):this._ensureHibernation()||(this._err(hd.incorrectlyOpenedComment),this._createCommentToken(),this._reconsumeInState(ap))}},{key:sp,value:function(e){e===gd.HYPHEN_MINUS?this.state=lp:e===gd.GREATER_THAN_SIGN?(this._err(hd.abruptClosingOfEmptyComment),this.state=yd,this._emitCurrentToken()):this._reconsumeInState(cp)}},{key:lp,value:function(e){e===gd.HYPHEN_MINUS?this.state=hp:e===gd.GREATER_THAN_SIGN?(this._err(hd.abruptClosingOfEmptyComment),this.state=yd,this._emitCurrentToken()):e===gd.EOF?(this._err(hd.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):(this.currentToken.data+="-",this._reconsumeInState(cp))}},{key:cp,value:function(e){e===gd.HYPHEN_MINUS?this.state=mp:e===gd.LESS_THAN_SIGN?(this.currentToken.data+="<",this.state=up):e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.currentToken.data+=fd.REPLACEMENT_CHARACTER):e===gd.EOF?(this._err(hd.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.data+=ef(e)}},{key:up,value:function(e){e===gd.EXCLAMATION_MARK?(this.currentToken.data+="!",this.state=dp):e===gd.LESS_THAN_SIGN?this.currentToken.data+="!":this._reconsumeInState(cp)}},{key:dp,value:function(e){e===gd.HYPHEN_MINUS?this.state=pp:this._reconsumeInState(cp)}},{key:pp,value:function(e){e===gd.HYPHEN_MINUS?this.state=fp:this._reconsumeInState(mp)}},{key:fp,value:function(e){e!==gd.GREATER_THAN_SIGN&&e!==gd.EOF&&this._err(hd.nestedComment),this._reconsumeInState(hp)}},{key:mp,value:function(e){e===gd.HYPHEN_MINUS?this.state=hp:e===gd.EOF?(this._err(hd.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):(this.currentToken.data+="-",this._reconsumeInState(cp))}},{key:hp,value:function(e){e===gd.GREATER_THAN_SIGN?(this.state=yd,this._emitCurrentToken()):e===gd.EXCLAMATION_MARK?this.state=gp:e===gd.HYPHEN_MINUS?this.currentToken.data+="-":e===gd.EOF?(this._err(hd.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):(this.currentToken.data+="--",this._reconsumeInState(cp))}},{key:gp,value:function(e){e===gd.HYPHEN_MINUS?(this.currentToken.data+="--!",this.state=mp):e===gd.GREATER_THAN_SIGN?(this._err(hd.incorrectlyClosedComment),this.state=yd,this._emitCurrentToken()):e===gd.EOF?(this._err(hd.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):(this.currentToken.data+="--!",this._reconsumeInState(cp))}},{key:vp,value:function(e){Vp(e)?this.state=bp:e===gd.GREATER_THAN_SIGN?this._reconsumeInState(bp):e===gd.EOF?(this._err(hd.eofInDoctype),this._createDoctypeToken(null),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(hd.missingWhitespaceBeforeDoctypeName),this._reconsumeInState(bp))}},{key:bp,value:function(e){Vp(e)||(qp(e)?(this._createDoctypeToken(tf(e)),this.state=yp):e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this._createDoctypeToken(fd.REPLACEMENT_CHARACTER),this.state=yp):e===gd.GREATER_THAN_SIGN?(this._err(hd.missingDoctypeName),this._createDoctypeToken(null),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=yd):e===gd.EOF?(this._err(hd.eofInDoctype),this._createDoctypeToken(null),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._createDoctypeToken(ef(e)),this.state=yp))}},{key:yp,value:function(e){Vp(e)?this.state=Ep:e===gd.GREATER_THAN_SIGN?(this.state=yd,this._emitCurrentToken()):qp(e)?this.currentToken.name+=tf(e):e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.currentToken.name+=fd.REPLACEMENT_CHARACTER):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.name+=ef(e)}},{key:Ep,value:function(e){Vp(e)||(e===gd.GREATER_THAN_SIGN?(this.state=yd,this._emitCurrentToken()):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this._consumeSequenceIfMatch(vd.PUBLIC_STRING,e,!1)?this.state=Sp:this._consumeSequenceIfMatch(vd.SYSTEM_STRING,e,!1)?this.state=Ap:this._ensureHibernation()||(this._err(hd.invalidCharacterSequenceAfterDoctypeName),this.currentToken.forceQuirks=!0,this._reconsumeInState(Np)))}},{key:Sp,value:function(e){Vp(e)?this.state=wp:e===gd.QUOTATION_MARK?(this._err(hd.missingWhitespaceAfterDoctypePublicKeyword),this.currentToken.publicId="",this.state=_p):e===gd.APOSTROPHE?(this._err(hd.missingWhitespaceAfterDoctypePublicKeyword),this.currentToken.publicId="",this.state=Tp):e===gd.GREATER_THAN_SIGN?(this._err(hd.missingDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this.state=yd,this._emitCurrentToken()):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(hd.missingQuoteBeforeDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState(Np))}},{key:wp,value:function(e){Vp(e)||(e===gd.QUOTATION_MARK?(this.currentToken.publicId="",this.state=_p):e===gd.APOSTROPHE?(this.currentToken.publicId="",this.state=Tp):e===gd.GREATER_THAN_SIGN?(this._err(hd.missingDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this.state=yd,this._emitCurrentToken()):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(hd.missingQuoteBeforeDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState(Np)))}},{key:_p,value:function(e){e===gd.QUOTATION_MARK?this.state=xp:e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.currentToken.publicId+=fd.REPLACEMENT_CHARACTER):e===gd.GREATER_THAN_SIGN?(this._err(hd.abruptDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=yd):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.publicId+=ef(e)}},{key:Tp,value:function(e){e===gd.APOSTROPHE?this.state=xp:e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.currentToken.publicId+=fd.REPLACEMENT_CHARACTER):e===gd.GREATER_THAN_SIGN?(this._err(hd.abruptDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=yd):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.publicId+=ef(e)}},{key:xp,value:function(e){Vp(e)?this.state=Cp:e===gd.GREATER_THAN_SIGN?(this.state=yd,this._emitCurrentToken()):e===gd.QUOTATION_MARK?(this._err(hd.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),this.currentToken.systemId="",this.state=Ip):e===gd.APOSTROPHE?(this._err(hd.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),this.currentToken.systemId="",this.state=Op):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(hd.missingQuoteBeforeDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState(Np))}},{key:Cp,value:function(e){Vp(e)||(e===gd.GREATER_THAN_SIGN?(this._emitCurrentToken(),this.state=yd):e===gd.QUOTATION_MARK?(this.currentToken.systemId="",this.state=Ip):e===gd.APOSTROPHE?(this.currentToken.systemId="",this.state=Op):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(hd.missingQuoteBeforeDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState(Np)))}},{key:Ap,value:function(e){Vp(e)?this.state=kp:e===gd.QUOTATION_MARK?(this._err(hd.missingWhitespaceAfterDoctypeSystemKeyword),this.currentToken.systemId="",this.state=Ip):e===gd.APOSTROPHE?(this._err(hd.missingWhitespaceAfterDoctypeSystemKeyword),this.currentToken.systemId="",this.state=Op):e===gd.GREATER_THAN_SIGN?(this._err(hd.missingDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this.state=yd,this._emitCurrentToken()):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(hd.missingQuoteBeforeDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState(Np))}},{key:kp,value:function(e){Vp(e)||(e===gd.QUOTATION_MARK?(this.currentToken.systemId="",this.state=Ip):e===gd.APOSTROPHE?(this.currentToken.systemId="",this.state=Op):e===gd.GREATER_THAN_SIGN?(this._err(hd.missingDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this.state=yd,this._emitCurrentToken()):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(hd.missingQuoteBeforeDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState(Np)))}},{key:Ip,value:function(e){e===gd.QUOTATION_MARK?this.state=Rp:e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.currentToken.systemId+=fd.REPLACEMENT_CHARACTER):e===gd.GREATER_THAN_SIGN?(this._err(hd.abruptDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=yd):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.systemId+=ef(e)}},{key:Op,value:function(e){e===gd.APOSTROPHE?this.state=Rp:e===gd.NULL?(this._err(hd.unexpectedNullCharacter),this.currentToken.systemId+=fd.REPLACEMENT_CHARACTER):e===gd.GREATER_THAN_SIGN?(this._err(hd.abruptDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=yd):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.systemId+=ef(e)}},{key:Rp,value:function(e){Vp(e)||(e===gd.GREATER_THAN_SIGN?(this._emitCurrentToken(),this.state=yd):e===gd.EOF?(this._err(hd.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(hd.unexpectedCharacterAfterDoctypeSystemIdentifier),this._reconsumeInState(Np)))}},{key:Np,value:function(e){e===gd.GREATER_THAN_SIGN?(this._emitCurrentToken(),this.state=yd):e===gd.NULL?this._err(hd.unexpectedNullCharacter):e===gd.EOF&&(this._emitCurrentToken(),this._emitEOFToken())}},{key:Mp,value:function(e){e===gd.RIGHT_SQUARE_BRACKET?this.state=Lp:e===gd.EOF?(this._err(hd.eofInCdata),this._emitEOFToken()):this._emitCodePoint(e)}},{key:Lp,value:function(e){e===gd.RIGHT_SQUARE_BRACKET?this.state=Pp:(this._emitChars("]"),this._reconsumeInState(Mp))}},{key:Pp,value:function(e){e===gd.GREATER_THAN_SIGN?this.state=yd:e===gd.RIGHT_SQUARE_BRACKET?this._emitChars("]"):(this._emitChars("]]"),this._reconsumeInState(Mp))}},{key:Dp,value:function(e){this.tempBuff=[gd.AMPERSAND],e===gd.NUMBER_SIGN?(this.tempBuff.push(e),this.state=zp):Yp(e)?this._reconsumeInState(Zp):(this._flushCodePointsConsumedAsCharacterReference(),this._reconsumeInState(this.returnState))}},{key:Zp,value:function(e){var t=this._matchNamedCharacterReference(e);if(this._ensureHibernation())this.tempBuff=[gd.AMPERSAND];else if(t){var n=this.tempBuff[this.tempBuff.length-1]===gd.SEMICOLON;this._isCharacterReferenceAttributeQuirk(n)||(n||this._errOnNextCodePoint(hd.missingSemicolonAfterCharacterReference),this.tempBuff=t),this._flushCodePointsConsumedAsCharacterReference(),this.state=this.returnState}else this._flushCodePointsConsumedAsCharacterReference(),this.state=Bp}},{key:Bp,value:function(e){Yp(e)?this._isCharacterReferenceInAttribute()?this.currentAttr.value+=ef(e):this._emitCodePoint(e):(e===gd.SEMICOLON&&this._err(hd.unknownNamedCharacterReference),this._reconsumeInState(this.returnState))}},{key:zp,value:function(e){this.charRefCode=0,e===gd.LATIN_SMALL_X||e===gd.LATIN_CAPITAL_X?(this.tempBuff.push(e),this.state=Fp):this._reconsumeInState(Up)}},{key:Fp,value:function(e){!function(e){return Wp(e)||Xp(e)||Qp(e)}(e)?(this._err(hd.absenceOfDigitsInNumericCharacterReference),this._flushCodePointsConsumedAsCharacterReference(),this._reconsumeInState(this.returnState)):this._reconsumeInState(jp)}},{key:Up,value:function(e){Wp(e)?this._reconsumeInState(Hp):(this._err(hd.absenceOfDigitsInNumericCharacterReference),this._flushCodePointsConsumedAsCharacterReference(),this._reconsumeInState(this.returnState))}},{key:jp,value:function(e){Xp(e)?this.charRefCode=16*this.charRefCode+e-55:Qp(e)?this.charRefCode=16*this.charRefCode+e-87:Wp(e)?this.charRefCode=16*this.charRefCode+e-48:e===gd.SEMICOLON?this.state=Gp:(this._err(hd.missingSemicolonAfterCharacterReference),this._reconsumeInState(Gp))}},{key:Hp,value:function(e){Wp(e)?this.charRefCode=10*this.charRefCode+e-48:e===gd.SEMICOLON?this.state=Gp:(this._err(hd.missingSemicolonAfterCharacterReference),this._reconsumeInState(Gp))}},{key:Gp,value:function(){if(this.charRefCode===gd.NULL)this._err(hd.nullCharacterReference),this.charRefCode=gd.REPLACEMENT_CHARACTER;else if(this.charRefCode>1114111)this._err(hd.characterReferenceOutsideUnicodeRange),this.charRefCode=gd.REPLACEMENT_CHARACTER;else if(fd.isSurrogate(this.charRefCode))this._err(hd.surrogateCharacterReference),this.charRefCode=gd.REPLACEMENT_CHARACTER;else if(fd.isUndefinedCodePoint(this.charRefCode))this._err(hd.noncharacterCharacterReference);else if(fd.isControlCodePoint(this.charRefCode)||this.charRefCode===gd.CARRIAGE_RETURN){this._err(hd.controlCharacterReference);var e=bd[this.charRefCode];e&&(this.charRefCode=e)}this.tempBuff=[this.charRefCode],this._flushCodePointsConsumedAsCharacterReference(),this._reconsumeInState(this.returnState)}}]),e}();rf.CHARACTER_TOKEN="CHARACTER_TOKEN",rf.NULL_CHARACTER_TOKEN="NULL_CHARACTER_TOKEN",rf.WHITESPACE_CHARACTER_TOKEN="WHITESPACE_CHARACTER_TOKEN",rf.START_TAG_TOKEN="START_TAG_TOKEN",rf.END_TAG_TOKEN="END_TAG_TOKEN",rf.COMMENT_TOKEN="COMMENT_TOKEN",rf.DOCTYPE_TOKEN="DOCTYPE_TOKEN",rf.EOF_TOKEN="EOF_TOKEN",rf.HIBERNATION_TOKEN="HIBERNATION_TOKEN",rf.MODE={DATA:yd,RCDATA:Ed,RAWTEXT:Sd,SCRIPT_DATA:wd,PLAINTEXT:_d},rf.getTokenAttr=function(e,t){for(var n=e.attrs.length-1;n>=0;n--)if(e.attrs[n].name===t)return e.attrs[n].value;return null};var of=rf,af={},sf=af.NAMESPACES={HTML:"http://www.w3.org/1999/xhtml",MATHML:"http://www.w3.org/1998/Math/MathML",SVG:"http://www.w3.org/2000/svg",XLINK:"http://www.w3.org/1999/xlink",XML:"http://www.w3.org/XML/1998/namespace",XMLNS:"http://www.w3.org/2000/xmlns/"};af.ATTRS={TYPE:"type",ACTION:"action",ENCODING:"encoding",PROMPT:"prompt",NAME:"name",COLOR:"color",FACE:"face",SIZE:"size"},af.DOCUMENT_MODE={NO_QUIRKS:"no-quirks",QUIRKS:"quirks",LIMITED_QUIRKS:"limited-quirks"};var lf=af.TAG_NAMES={A:"a",ADDRESS:"address",ANNOTATION_XML:"annotation-xml",APPLET:"applet",AREA:"area",ARTICLE:"article",ASIDE:"aside",B:"b",BASE:"base",BASEFONT:"basefont",BGSOUND:"bgsound",BIG:"big",BLOCKQUOTE:"blockquote",BODY:"body",BR:"br",BUTTON:"button",CAPTION:"caption",CENTER:"center",CODE:"code",COL:"col",COLGROUP:"colgroup",DD:"dd",DESC:"desc",DETAILS:"details",DIALOG:"dialog",DIR:"dir",DIV:"div",DL:"dl",DT:"dt",EM:"em",EMBED:"embed",FIELDSET:"fieldset",FIGCAPTION:"figcaption",FIGURE:"figure",FONT:"font",FOOTER:"footer",FOREIGN_OBJECT:"foreignObject",FORM:"form",FRAME:"frame",FRAMESET:"frameset",H1:"h1",H2:"h2",H3:"h3",H4:"h4",H5:"h5",H6:"h6",HEAD:"head",HEADER:"header",HGROUP:"hgroup",HR:"hr",HTML:"html",I:"i",IMG:"img",IMAGE:"image",INPUT:"input",IFRAME:"iframe",KEYGEN:"keygen",LABEL:"label",LI:"li",LINK:"link",LISTING:"listing",MAIN:"main",MALIGNMARK:"malignmark",MARQUEE:"marquee",MATH:"math",MENU:"menu",META:"meta",MGLYPH:"mglyph",MI:"mi",MO:"mo",MN:"mn",MS:"ms",MTEXT:"mtext",NAV:"nav",NOBR:"nobr",NOFRAMES:"noframes",NOEMBED:"noembed",NOSCRIPT:"noscript",OBJECT:"object",OL:"ol",OPTGROUP:"optgroup",OPTION:"option",P:"p",PARAM:"param",PLAINTEXT:"plaintext",PRE:"pre",RB:"rb",RP:"rp",RT:"rt",RTC:"rtc",RUBY:"ruby",S:"s",SCRIPT:"script",SECTION:"section",SELECT:"select",SOURCE:"source",SMALL:"small",SPAN:"span",STRIKE:"strike",STRONG:"strong",STYLE:"style",SUB:"sub",SUMMARY:"summary",SUP:"sup",TABLE:"table",TBODY:"tbody",TEMPLATE:"template",TEXTAREA:"textarea",TFOOT:"tfoot",TD:"td",TH:"th",THEAD:"thead",TITLE:"title",TR:"tr",TRACK:"track",TT:"tt",U:"u",UL:"ul",SVG:"svg",VAR:"var",WBR:"wbr",XMP:"xmp"};af.SPECIAL_ELEMENTS=(i={},(0,D.Z)(i,sf.HTML,(r={},(0,D.Z)(r,lf.ADDRESS,!0),(0,D.Z)(r,lf.APPLET,!0),(0,D.Z)(r,lf.AREA,!0),(0,D.Z)(r,lf.ARTICLE,!0),(0,D.Z)(r,lf.ASIDE,!0),(0,D.Z)(r,lf.BASE,!0),(0,D.Z)(r,lf.BASEFONT,!0),(0,D.Z)(r,lf.BGSOUND,!0),(0,D.Z)(r,lf.BLOCKQUOTE,!0),(0,D.Z)(r,lf.BODY,!0),(0,D.Z)(r,lf.BR,!0),(0,D.Z)(r,lf.BUTTON,!0),(0,D.Z)(r,lf.CAPTION,!0),(0,D.Z)(r,lf.CENTER,!0),(0,D.Z)(r,lf.COL,!0),(0,D.Z)(r,lf.COLGROUP,!0),(0,D.Z)(r,lf.DD,!0),(0,D.Z)(r,lf.DETAILS,!0),(0,D.Z)(r,lf.DIR,!0),(0,D.Z)(r,lf.DIV,!0),(0,D.Z)(r,lf.DL,!0),(0,D.Z)(r,lf.DT,!0),(0,D.Z)(r,lf.EMBED,!0),(0,D.Z)(r,lf.FIELDSET,!0),(0,D.Z)(r,lf.FIGCAPTION,!0),(0,D.Z)(r,lf.FIGURE,!0),(0,D.Z)(r,lf.FOOTER,!0),(0,D.Z)(r,lf.FORM,!0),(0,D.Z)(r,lf.FRAME,!0),(0,D.Z)(r,lf.FRAMESET,!0),(0,D.Z)(r,lf.H1,!0),(0,D.Z)(r,lf.H2,!0),(0,D.Z)(r,lf.H3,!0),(0,D.Z)(r,lf.H4,!0),(0,D.Z)(r,lf.H5,!0),(0,D.Z)(r,lf.H6,!0),(0,D.Z)(r,lf.HEAD,!0),(0,D.Z)(r,lf.HEADER,!0),(0,D.Z)(r,lf.HGROUP,!0),(0,D.Z)(r,lf.HR,!0),(0,D.Z)(r,lf.HTML,!0),(0,D.Z)(r,lf.IFRAME,!0),(0,D.Z)(r,lf.IMG,!0),(0,D.Z)(r,lf.INPUT,!0),(0,D.Z)(r,lf.LI,!0),(0,D.Z)(r,lf.LINK,!0),(0,D.Z)(r,lf.LISTING,!0),(0,D.Z)(r,lf.MAIN,!0),(0,D.Z)(r,lf.MARQUEE,!0),(0,D.Z)(r,lf.MENU,!0),(0,D.Z)(r,lf.META,!0),(0,D.Z)(r,lf.NAV,!0),(0,D.Z)(r,lf.NOEMBED,!0),(0,D.Z)(r,lf.NOFRAMES,!0),(0,D.Z)(r,lf.NOSCRIPT,!0),(0,D.Z)(r,lf.OBJECT,!0),(0,D.Z)(r,lf.OL,!0),(0,D.Z)(r,lf.P,!0),(0,D.Z)(r,lf.PARAM,!0),(0,D.Z)(r,lf.PLAINTEXT,!0),(0,D.Z)(r,lf.PRE,!0),(0,D.Z)(r,lf.SCRIPT,!0),(0,D.Z)(r,lf.SECTION,!0),(0,D.Z)(r,lf.SELECT,!0),(0,D.Z)(r,lf.SOURCE,!0),(0,D.Z)(r,lf.STYLE,!0),(0,D.Z)(r,lf.SUMMARY,!0),(0,D.Z)(r,lf.TABLE,!0),(0,D.Z)(r,lf.TBODY,!0),(0,D.Z)(r,lf.TD,!0),(0,D.Z)(r,lf.TEMPLATE,!0),(0,D.Z)(r,lf.TEXTAREA,!0),(0,D.Z)(r,lf.TFOOT,!0),(0,D.Z)(r,lf.TH,!0),(0,D.Z)(r,lf.THEAD,!0),(0,D.Z)(r,lf.TITLE,!0),(0,D.Z)(r,lf.TR,!0),(0,D.Z)(r,lf.TRACK,!0),(0,D.Z)(r,lf.UL,!0),(0,D.Z)(r,lf.WBR,!0),(0,D.Z)(r,lf.XMP,!0),r)),(0,D.Z)(i,sf.MATHML,(o={},(0,D.Z)(o,lf.MI,!0),(0,D.Z)(o,lf.MO,!0),(0,D.Z)(o,lf.MN,!0),(0,D.Z)(o,lf.MS,!0),(0,D.Z)(o,lf.MTEXT,!0),(0,D.Z)(o,lf.ANNOTATION_XML,!0),o)),(0,D.Z)(i,sf.SVG,(a={},(0,D.Z)(a,lf.TITLE,!0),(0,D.Z)(a,lf.FOREIGN_OBJECT,!0),(0,D.Z)(a,lf.DESC,!0),a)),i);var cf=af,uf=cf.TAG_NAMES,df=cf.NAMESPACES;function pf(e){switch(e.length){case 1:return e===uf.P;case 2:return e===uf.RB||e===uf.RP||e===uf.RT||e===uf.DD||e===uf.DT||e===uf.LI;case 3:return e===uf.RTC;case 6:return e===uf.OPTION;case 8:return e===uf.OPTGROUP}return!1}function ff(e){switch(e.length){case 1:return e===uf.P;case 2:return e===uf.RB||e===uf.RP||e===uf.RT||e===uf.DD||e===uf.DT||e===uf.LI||e===uf.TD||e===uf.TH||e===uf.TR;case 3:return e===uf.RTC;case 5:return e===uf.TBODY||e===uf.TFOOT||e===uf.THEAD;case 6:return e===uf.OPTION;case 7:return e===uf.CAPTION;case 8:return e===uf.OPTGROUP||e===uf.COLGROUP}return!1}function mf(e,t){switch(e.length){case 2:if(e===uf.TD||e===uf.TH)return t===df.HTML;if(e===uf.MI||e===uf.MO||e===uf.MN||e===uf.MS)return t===df.MATHML;break;case 4:if(e===uf.HTML)return t===df.HTML;if(e===uf.DESC)return t===df.SVG;break;case 5:if(e===uf.TABLE)return t===df.HTML;if(e===uf.MTEXT)return t===df.MATHML;if(e===uf.TITLE)return t===df.SVG;break;case 6:return(e===uf.APPLET||e===uf.OBJECT)&&t===df.HTML;case 7:return(e===uf.CAPTION||e===uf.MARQUEE)&&t===df.HTML;case 8:return e===uf.TEMPLATE&&t===df.HTML;case 13:return e===uf.FOREIGN_OBJECT&&t===df.SVG;case 14:return e===uf.ANNOTATION_XML&&t===df.MATHML}return!1}var hf=function(){function e(t,n){(0,G.Z)(this,e),this.stackTop=-1,this.items=[],this.current=t,this.currentTagName=null,this.currentTmplContent=null,this.tmplCount=0,this.treeAdapter=n}return(0,H.Z)(e,[{key:"_indexOf",value:function(e){for(var t=-1,n=this.stackTop;n>=0;n--)if(this.items[n]===e){t=n;break}return t}},{key:"_isInTemplate",value:function(){return this.currentTagName===uf.TEMPLATE&&this.treeAdapter.getNamespaceURI(this.current)===df.HTML}},{key:"_updateCurrentElement",value:function(){this.current=this.items[this.stackTop],this.currentTagName=this.current&&this.treeAdapter.getTagName(this.current),this.currentTmplContent=this._isInTemplate()?this.treeAdapter.getTemplateContent(this.current):null}},{key:"push",value:function(e){this.items[++this.stackTop]=e,this._updateCurrentElement(),this._isInTemplate()&&this.tmplCount++}},{key:"pop",value:function(){this.stackTop--,this.tmplCount>0&&this._isInTemplate()&&this.tmplCount--,this._updateCurrentElement()}},{key:"replace",value:function(e,t){var n=this._indexOf(e);this.items[n]=t,n===this.stackTop&&this._updateCurrentElement()}},{key:"insertAfter",value:function(e,t){var n=this._indexOf(e)+1;this.items.splice(n,0,t),n===++this.stackTop&&this._updateCurrentElement()}},{key:"popUntilTagNamePopped",value:function(e){for(;this.stackTop>-1;){var t=this.currentTagName,n=this.treeAdapter.getNamespaceURI(this.current);if(this.pop(),t===e&&n===df.HTML)break}}},{key:"popUntilElementPopped",value:function(e){for(;this.stackTop>-1;){var t=this.current;if(this.pop(),t===e)break}}},{key:"popUntilNumberedHeaderPopped",value:function(){for(;this.stackTop>-1;){var e=this.currentTagName,t=this.treeAdapter.getNamespaceURI(this.current);if(this.pop(),e===uf.H1||e===uf.H2||e===uf.H3||e===uf.H4||e===uf.H5||e===uf.H6&&t===df.HTML)break}}},{key:"popUntilTableCellPopped",value:function(){for(;this.stackTop>-1;){var e=this.currentTagName,t=this.treeAdapter.getNamespaceURI(this.current);if(this.pop(),e===uf.TD||e===uf.TH&&t===df.HTML)break}}},{key:"popAllUpToHtmlElement",value:function(){this.stackTop=0,this._updateCurrentElement()}},{key:"clearBackToTableContext",value:function(){for(;this.currentTagName!==uf.TABLE&&this.currentTagName!==uf.TEMPLATE&&this.currentTagName!==uf.HTML||this.treeAdapter.getNamespaceURI(this.current)!==df.HTML;)this.pop()}},{key:"clearBackToTableBodyContext",value:function(){for(;this.currentTagName!==uf.TBODY&&this.currentTagName!==uf.TFOOT&&this.currentTagName!==uf.THEAD&&this.currentTagName!==uf.TEMPLATE&&this.currentTagName!==uf.HTML||this.treeAdapter.getNamespaceURI(this.current)!==df.HTML;)this.pop()}},{key:"clearBackToTableRowContext",value:function(){for(;this.currentTagName!==uf.TR&&this.currentTagName!==uf.TEMPLATE&&this.currentTagName!==uf.HTML||this.treeAdapter.getNamespaceURI(this.current)!==df.HTML;)this.pop()}},{key:"remove",value:function(e){for(var t=this.stackTop;t>=0;t--)if(this.items[t]===e){this.items.splice(t,1),this.stackTop--,this._updateCurrentElement();break}}},{key:"tryPeekProperlyNestedBodyElement",value:function(){var e=this.items[1];return e&&this.treeAdapter.getTagName(e)===uf.BODY?e:null}},{key:"contains",value:function(e){return this._indexOf(e)>-1}},{key:"getCommonAncestor",value:function(e){var t=this._indexOf(e);return--t>=0?this.items[t]:null}},{key:"isRootHtmlElementCurrent",value:function(){return 0===this.stackTop&&this.currentTagName===uf.HTML}},{key:"hasInScope",value:function(e){for(var t=this.stackTop;t>=0;t--){var n=this.treeAdapter.getTagName(this.items[t]),r=this.treeAdapter.getNamespaceURI(this.items[t]);if(n===e&&r===df.HTML)return!0;if(mf(n,r))return!1}return!0}},{key:"hasNumberedHeaderInScope",value:function(){for(var e=this.stackTop;e>=0;e--){var t=this.treeAdapter.getTagName(this.items[e]),n=this.treeAdapter.getNamespaceURI(this.items[e]);if((t===uf.H1||t===uf.H2||t===uf.H3||t===uf.H4||t===uf.H5||t===uf.H6)&&n===df.HTML)return!0;if(mf(t,n))return!1}return!0}},{key:"hasInListItemScope",value:function(e){for(var t=this.stackTop;t>=0;t--){var n=this.treeAdapter.getTagName(this.items[t]),r=this.treeAdapter.getNamespaceURI(this.items[t]);if(n===e&&r===df.HTML)return!0;if((n===uf.UL||n===uf.OL)&&r===df.HTML||mf(n,r))return!1}return!0}},{key:"hasInButtonScope",value:function(e){for(var t=this.stackTop;t>=0;t--){var n=this.treeAdapter.getTagName(this.items[t]),r=this.treeAdapter.getNamespaceURI(this.items[t]);if(n===e&&r===df.HTML)return!0;if(n===uf.BUTTON&&r===df.HTML||mf(n,r))return!1}return!0}},{key:"hasInTableScope",value:function(e){for(var t=this.stackTop;t>=0;t--){var n=this.treeAdapter.getTagName(this.items[t]);if(this.treeAdapter.getNamespaceURI(this.items[t])===df.HTML){if(n===e)return!0;if(n===uf.TABLE||n===uf.TEMPLATE||n===uf.HTML)return!1}}return!0}},{key:"hasTableBodyContextInTableScope",value:function(){for(var e=this.stackTop;e>=0;e--){var t=this.treeAdapter.getTagName(this.items[e]);if(this.treeAdapter.getNamespaceURI(this.items[e])===df.HTML){if(t===uf.TBODY||t===uf.THEAD||t===uf.TFOOT)return!0;if(t===uf.TABLE||t===uf.HTML)return!1}}return!0}},{key:"hasInSelectScope",value:function(e){for(var t=this.stackTop;t>=0;t--){var n=this.treeAdapter.getTagName(this.items[t]);if(this.treeAdapter.getNamespaceURI(this.items[t])===df.HTML){if(n===e)return!0;if(n!==uf.OPTION&&n!==uf.OPTGROUP)return!1}}return!0}},{key:"generateImpliedEndTags",value:function(){for(;pf(this.currentTagName);)this.pop()}},{key:"generateImpliedEndTagsThoroughly",value:function(){for(;ff(this.currentTagName);)this.pop()}},{key:"generateImpliedEndTagsWithExclusion",value:function(e){for(;pf(this.currentTagName)&&this.currentTagName!==e;)this.pop()}}]),e}(),gf=function(){function e(t){(0,G.Z)(this,e),this.length=0,this.entries=[],this.treeAdapter=t,this.bookmark=null}return(0,H.Z)(e,[{key:"_getNoahArkConditionCandidates",value:function(t){var n=[];if(this.length>=3)for(var r=this.treeAdapter.getAttrList(t).length,o=this.treeAdapter.getTagName(t),a=this.treeAdapter.getNamespaceURI(t),i=this.length-1;i>=0;i--){var s=this.entries[i];if(s.type===e.MARKER_ENTRY)break;var l=s.element,c=this.treeAdapter.getAttrList(l);this.treeAdapter.getTagName(l)===o&&this.treeAdapter.getNamespaceURI(l)===a&&c.length===r&&n.push({idx:i,attrs:c})}return n.length<3?[]:n}},{key:"_ensureNoahArkCondition",value:function(e){var t=this._getNoahArkConditionCandidates(e),n=t.length;if(n){for(var r=this.treeAdapter.getAttrList(e),o=r.length,a=Object.create(null),i=0;i=2;d--)this.entries.splice(t[d].idx,1),this.length--}}},{key:"insertMarker",value:function(){this.entries.push({type:e.MARKER_ENTRY}),this.length++}},{key:"pushElement",value:function(t,n){this._ensureNoahArkCondition(t),this.entries.push({type:e.ELEMENT_ENTRY,element:t,token:n}),this.length++}},{key:"insertElementAfterBookmark",value:function(t,n){for(var r=this.length-1;r>=0&&this.entries[r]!==this.bookmark;r--);this.entries.splice(r+1,0,{type:e.ELEMENT_ENTRY,element:t,token:n}),this.length++}},{key:"removeEntry",value:function(e){for(var t=this.length-1;t>=0;t--)if(this.entries[t]===e){this.entries.splice(t,1),this.length--;break}}},{key:"clearToLastMarker",value:function(){for(;this.length;){var t=this.entries.pop();if(this.length--,t.type===e.MARKER_ENTRY)break}}},{key:"getElementEntryInScopeWithTagName",value:function(t){for(var n=this.length-1;n>=0;n--){var r=this.entries[n];if(r.type===e.MARKER_ENTRY)return null;if(this.treeAdapter.getTagName(r.element)===t)return r}return null}},{key:"getElementEntry",value:function(t){for(var n=this.length-1;n>=0;n--){var r=this.entries[n];if(r.type===e.ELEMENT_ENTRY&&r.element===t)return r}return null}}]),e}();gf.MARKER_ENTRY="MARKER_ENTRY",gf.ELEMENT_ENTRY="ELEMENT_ENTRY";var vf=gf,bf=function(){function e(t){(0,G.Z)(this,e);for(var n={},r=this._getOverriddenMethods(this,n),o=0,a=Object.keys(r);o0;n--)e.onItemPop(this.items[n]);t.popAllUpToHtmlElement.call(this)},remove:function(n){e.onItemPop(this.current),t.remove.call(this,n)}}}}]),n}(yf),If=af.TAG_NAMES,Of=function(e){(0,W.Z)(n,e);var t=(0,q.Z)(n);function n(e){var r;return(0,G.Z)(this,n),(r=t.call(this,e)).parser=e,r.treeAdapter=r.parser.treeAdapter,r.posTracker=null,r.lastStartTagToken=null,r.lastFosterParentingLocation=null,r.currentToken=null,r}return(0,H.Z)(n,[{key:"_setStartLocation",value:function(e){var t=null;this.lastStartTagToken&&((t=Object.assign({},this.lastStartTagToken.location)).startTag=this.lastStartTagToken.location),this.treeAdapter.setNodeSourceCodeLocation(e,t)}},{key:"_setEndLocation",value:function(e,t){if(this.treeAdapter.getNodeSourceCodeLocation(e)&&t.location){var n=t.location,r=this.treeAdapter.getTagName(e),o={};t.type===Cf.END_TAG_TOKEN&&r===t.tagName?(o.endTag=Object.assign({},n),o.endLine=n.endLine,o.endCol=n.endCol,o.endOffset=n.endOffset):(o.endLine=n.startLine,o.endCol=n.startCol,o.endOffset=n.startOffset),this.treeAdapter.updateNodeSourceCodeLocation(e,o)}}},{key:"_getOverriddenMethods",value:function(e,t){return{_bootstrap:function(n,r){t._bootstrap.call(this,n,r),e.lastStartTagToken=null,e.lastFosterParentingLocation=null,e.currentToken=null;var o=xf.install(this.tokenizer,Af);e.posTracker=o.posTracker,xf.install(this.openElements,kf,{onItemPop:function(t){e._setEndLocation(t,e.currentToken)}})},_runParsingLoop:function(n){t._runParsingLoop.call(this,n);for(var r=this.openElements.stackTop;r>=0;r--)e._setEndLocation(this.openElements.items[r],e.currentToken)},_processTokenInForeignContent:function(n){e.currentToken=n,t._processTokenInForeignContent.call(this,n)},_processToken:function(n){if(e.currentToken=n,t._processToken.call(this,n),n.type===Cf.END_TAG_TOKEN&&(n.tagName===If.HTML||n.tagName===If.BODY&&this.openElements.hasInScope(If.BODY)))for(var r=this.openElements.stackTop;r>=0;r--){var o=this.openElements.items[r];if(this.treeAdapter.getTagName(o)===n.tagName){e._setEndLocation(o,n);break}}},_setDocumentType:function(e){t._setDocumentType.call(this,e);for(var n=this.treeAdapter.getChildNodes(this.document),r=n.length,o=0;o-1)return Wf.QUIRKS;var r=null===t?Kf:$f;if(em(n,r))return Wf.QUIRKS;if(em(n,r=null===t?Xf:Qf))return Wf.LIMITED_QUIRKS}return Wf.NO_QUIRKS},Vf.serializeContent=function(e,t,n){var r="!DOCTYPE ";return e&&(r+=e),t?r+=" PUBLIC "+Jf(t):n&&(r+=" SYSTEM"),null!==n&&(r+=" "+Jf(n)),r};var tm={},nm=of,rm=af,om=rm.TAG_NAMES,am=rm.NAMESPACES,im=rm.ATTRS,sm={attributename:"attributeName",attributetype:"attributeType",basefrequency:"baseFrequency",baseprofile:"baseProfile",calcmode:"calcMode",clippathunits:"clipPathUnits",diffuseconstant:"diffuseConstant",edgemode:"edgeMode",filterunits:"filterUnits",glyphref:"glyphRef",gradienttransform:"gradientTransform",gradientunits:"gradientUnits",kernelmatrix:"kernelMatrix",kernelunitlength:"kernelUnitLength",keypoints:"keyPoints",keysplines:"keySplines",keytimes:"keyTimes",lengthadjust:"lengthAdjust",limitingconeangle:"limitingConeAngle",markerheight:"markerHeight",markerunits:"markerUnits",markerwidth:"markerWidth",maskcontentunits:"maskContentUnits",maskunits:"maskUnits",numoctaves:"numOctaves",pathlength:"pathLength",patterncontentunits:"patternContentUnits",patterntransform:"patternTransform",patternunits:"patternUnits",pointsatx:"pointsAtX",pointsaty:"pointsAtY",pointsatz:"pointsAtZ",preservealpha:"preserveAlpha",preserveaspectratio:"preserveAspectRatio",primitiveunits:"primitiveUnits",refx:"refX",refy:"refY",repeatcount:"repeatCount",repeatdur:"repeatDur",requiredextensions:"requiredExtensions",requiredfeatures:"requiredFeatures",specularconstant:"specularConstant",specularexponent:"specularExponent",spreadmethod:"spreadMethod",startoffset:"startOffset",stddeviation:"stdDeviation",stitchtiles:"stitchTiles",surfacescale:"surfaceScale",systemlanguage:"systemLanguage",tablevalues:"tableValues",targetx:"targetX",targety:"targetY",textlength:"textLength",viewbox:"viewBox",viewtarget:"viewTarget",xchannelselector:"xChannelSelector",ychannelselector:"yChannelSelector",zoomandpan:"zoomAndPan"},lm={"xlink:actuate":{prefix:"xlink",name:"actuate",namespace:am.XLINK},"xlink:arcrole":{prefix:"xlink",name:"arcrole",namespace:am.XLINK},"xlink:href":{prefix:"xlink",name:"href",namespace:am.XLINK},"xlink:role":{prefix:"xlink",name:"role",namespace:am.XLINK},"xlink:show":{prefix:"xlink",name:"show",namespace:am.XLINK},"xlink:title":{prefix:"xlink",name:"title",namespace:am.XLINK},"xlink:type":{prefix:"xlink",name:"type",namespace:am.XLINK},"xml:base":{prefix:"xml",name:"base",namespace:am.XML},"xml:lang":{prefix:"xml",name:"lang",namespace:am.XML},"xml:space":{prefix:"xml",name:"space",namespace:am.XML},xmlns:{prefix:"",name:"xmlns",namespace:am.XMLNS},"xmlns:xlink":{prefix:"xmlns",name:"xlink",namespace:am.XMLNS}},cm=tm.SVG_TAG_NAMES_ADJUSTMENT_MAP={altglyph:"altGlyph",altglyphdef:"altGlyphDef",altglyphitem:"altGlyphItem",animatecolor:"animateColor",animatemotion:"animateMotion",animatetransform:"animateTransform",clippath:"clipPath",feblend:"feBlend",fecolormatrix:"feColorMatrix",fecomponenttransfer:"feComponentTransfer",fecomposite:"feComposite",feconvolvematrix:"feConvolveMatrix",fediffuselighting:"feDiffuseLighting",fedisplacementmap:"feDisplacementMap",fedistantlight:"feDistantLight",feflood:"feFlood",fefunca:"feFuncA",fefuncb:"feFuncB",fefuncg:"feFuncG",fefuncr:"feFuncR",fegaussianblur:"feGaussianBlur",feimage:"feImage",femerge:"feMerge",femergenode:"feMergeNode",femorphology:"feMorphology",feoffset:"feOffset",fepointlight:"fePointLight",fespecularlighting:"feSpecularLighting",fespotlight:"feSpotLight",fetile:"feTile",feturbulence:"feTurbulence",foreignobject:"foreignObject",glyphref:"glyphRef",lineargradient:"linearGradient",radialgradient:"radialGradient",textpath:"textPath"},um=(s={},(0,D.Z)(s,om.B,!0),(0,D.Z)(s,om.BIG,!0),(0,D.Z)(s,om.BLOCKQUOTE,!0),(0,D.Z)(s,om.BODY,!0),(0,D.Z)(s,om.BR,!0),(0,D.Z)(s,om.CENTER,!0),(0,D.Z)(s,om.CODE,!0),(0,D.Z)(s,om.DD,!0),(0,D.Z)(s,om.DIV,!0),(0,D.Z)(s,om.DL,!0),(0,D.Z)(s,om.DT,!0),(0,D.Z)(s,om.EM,!0),(0,D.Z)(s,om.EMBED,!0),(0,D.Z)(s,om.H1,!0),(0,D.Z)(s,om.H2,!0),(0,D.Z)(s,om.H3,!0),(0,D.Z)(s,om.H4,!0),(0,D.Z)(s,om.H5,!0),(0,D.Z)(s,om.H6,!0),(0,D.Z)(s,om.HEAD,!0),(0,D.Z)(s,om.HR,!0),(0,D.Z)(s,om.I,!0),(0,D.Z)(s,om.IMG,!0),(0,D.Z)(s,om.LI,!0),(0,D.Z)(s,om.LISTING,!0),(0,D.Z)(s,om.MENU,!0),(0,D.Z)(s,om.META,!0),(0,D.Z)(s,om.NOBR,!0),(0,D.Z)(s,om.OL,!0),(0,D.Z)(s,om.P,!0),(0,D.Z)(s,om.PRE,!0),(0,D.Z)(s,om.RUBY,!0),(0,D.Z)(s,om.S,!0),(0,D.Z)(s,om.SMALL,!0),(0,D.Z)(s,om.SPAN,!0),(0,D.Z)(s,om.STRONG,!0),(0,D.Z)(s,om.STRIKE,!0),(0,D.Z)(s,om.SUB,!0),(0,D.Z)(s,om.SUP,!0),(0,D.Z)(s,om.TABLE,!0),(0,D.Z)(s,om.TT,!0),(0,D.Z)(s,om.U,!0),(0,D.Z)(s,om.UL,!0),(0,D.Z)(s,om.VAR,!0),s);tm.causesExit=function(e){var t=e.tagName;return!(t!==om.FONT||null===nm.getTokenAttr(e,im.COLOR)&&null===nm.getTokenAttr(e,im.SIZE)&&null===nm.getTokenAttr(e,im.FACE))||um[t]},tm.adjustTokenMathMLAttrs=function(e){for(var t=0;t=0;r--){var o=e.openElements.items[r];if(o===t.element)break;e._isSpecialElement(o)&&(n=o)}return n||(e.openElements.popUntilElementPopped(t.element),e.activeFormattingElements.removeEntry(t)),n}function oh(e,t,n){for(var r=t,o=e.openElements.getCommonAncestor(t),a=0,i=o;i!==n;a++,i=o){o=e.openElements.getCommonAncestor(i);var s=e.activeFormattingElements.getElementEntry(i),l=s&&a>=Im;!s||l?(l&&e.activeFormattingElements.removeEntry(s),e.openElements.remove(i)):(i=ah(e,s),r===t&&(e.activeFormattingElements.bookmark=s),e.treeAdapter.detachNode(r),e.treeAdapter.appendChild(i,r),r=i)}return r}function ah(e,t){var n=e.treeAdapter.getNamespaceURI(t.element),r=e.treeAdapter.createElement(t.token.tagName,n,t.token.attrs);return e.openElements.replace(t.element,r),t.element=r,r}function ih(e,t,n){if(e._isElementCausesFosterParenting(t))e._fosterParentElement(n);else{var r=e.treeAdapter.getTagName(t),o=e.treeAdapter.getNamespaceURI(t);r===_m.TEMPLATE&&o===Tm.HTML&&(t=e.treeAdapter.getTemplateContent(t)),e.treeAdapter.appendChild(t,n)}}function sh(e,t,n){var r=e.treeAdapter.getNamespaceURI(n.element),o=n.token,a=e.treeAdapter.createElement(o.tagName,r,o.attrs);e._adoptNodes(t,a),e.treeAdapter.appendChild(t,a),e.activeFormattingElements.insertElementAfterBookmark(a,n.token),e.activeFormattingElements.removeEntry(n),e.openElements.remove(n.element),e.openElements.insertAfter(t,a)}function lh(e,t){for(var n,r=0;r0?(e.openElements.generateImpliedEndTagsThoroughly(),e.openElements.currentTagName!==_m.TEMPLATE&&e._err(Em.closingOfElementWithOpenChildElements),e.openElements.popUntilTagNamePopped(_m.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e._popTmplInsertionMode(),e._resetInsertionMode()):e._err(Em.endTagWithoutMatchingOpenElement)}function Eh(e,t){e.openElements.pop(),e.insertionMode=Pm,e._processToken(t)}function Sh(e,t){var n=t.type===dm.EOF_TOKEN?Em.openElementsLeftAfterEof:Em.disallowedContentInNoscriptInHead;e._err(n),e.openElements.pop(),e.insertionMode=Mm,e._processToken(t)}function wh(e,t){e._insertFakeElement(_m.BODY),e.insertionMode=Dm,e._processToken(t)}function _h(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t)}function Th(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t),e.framesetOk=!1}function xh(e,t){e.openElements.hasInButtonScope(_m.P)&&e._closePElement(),e._insertElement(t,Tm.HTML)}function Ch(e,t){e.openElements.hasInButtonScope(_m.P)&&e._closePElement(),e._insertElement(t,Tm.HTML),e.skipNextNewLine=!0,e.framesetOk=!1}function Ah(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Tm.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function kh(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Tm.HTML),e.activeFormattingElements.insertMarker(),e.framesetOk=!1}function Ih(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,Tm.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function Oh(e,t){e._appendElement(t,Tm.HTML),t.ackSelfClosing=!0}function Rh(e,t){e._switchToTextParsing(t,dm.MODE.RAWTEXT)}function Nh(e,t){e.openElements.currentTagName===_m.OPTION&&e.openElements.pop(),e._reconstructActiveFormattingElements(),e._insertElement(t,Tm.HTML)}function Mh(e,t){e.openElements.hasInScope(_m.RUBY)&&e.openElements.generateImpliedEndTags(),e._insertElement(t,Tm.HTML)}function Lh(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Tm.HTML)}function Ph(e,t){var n=t.tagName;switch(n.length){case 1:n===_m.I||n===_m.S||n===_m.B||n===_m.U?Ah(e,t):n===_m.P?xh(e,t):n===_m.A?function(e,t){var n=e.activeFormattingElements.getElementEntryInScopeWithTagName(_m.A);n&&(lh(e,t),e.openElements.remove(n.element),e.activeFormattingElements.removeEntry(n)),e._reconstructActiveFormattingElements(),e._insertElement(t,Tm.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}(e,t):Lh(e,t);break;case 2:n===_m.DL||n===_m.OL||n===_m.UL?xh(e,t):n===_m.H1||n===_m.H2||n===_m.H3||n===_m.H4||n===_m.H5||n===_m.H6?function(e,t){e.openElements.hasInButtonScope(_m.P)&&e._closePElement();var n=e.openElements.currentTagName;n!==_m.H1&&n!==_m.H2&&n!==_m.H3&&n!==_m.H4&&n!==_m.H5&&n!==_m.H6||e.openElements.pop(),e._insertElement(t,Tm.HTML)}(e,t):n===_m.LI||n===_m.DD||n===_m.DT?function(e,t){e.framesetOk=!1;for(var n=t.tagName,r=e.openElements.stackTop;r>=0;r--){var o=e.openElements.items[r],a=e.treeAdapter.getTagName(o),i=null;if(n===_m.LI&&a===_m.LI?i=_m.LI:n!==_m.DD&&n!==_m.DT||a!==_m.DD&&a!==_m.DT||(i=a),i){e.openElements.generateImpliedEndTagsWithExclusion(i),e.openElements.popUntilTagNamePopped(i);break}if(a!==_m.ADDRESS&&a!==_m.DIV&&a!==_m.P&&e._isSpecialElement(o))break}e.openElements.hasInButtonScope(_m.P)&&e._closePElement(),e._insertElement(t,Tm.HTML)}(e,t):n===_m.EM||n===_m.TT?Ah(e,t):n===_m.BR?Ih(e,t):n===_m.HR?function(e,t){e.openElements.hasInButtonScope(_m.P)&&e._closePElement(),e._appendElement(t,Tm.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}(e,t):n===_m.RB?Mh(e,t):n===_m.RT||n===_m.RP?function(e,t){e.openElements.hasInScope(_m.RUBY)&&e.openElements.generateImpliedEndTagsWithExclusion(_m.RTC),e._insertElement(t,Tm.HTML)}(e,t):n!==_m.TH&&n!==_m.TD&&n!==_m.TR&&Lh(e,t);break;case 3:n===_m.DIV||n===_m.DIR||n===_m.NAV?xh(e,t):n===_m.PRE?Ch(e,t):n===_m.BIG?Ah(e,t):n===_m.IMG||n===_m.WBR?Ih(e,t):n===_m.XMP?function(e,t){e.openElements.hasInButtonScope(_m.P)&&e._closePElement(),e._reconstructActiveFormattingElements(),e.framesetOk=!1,e._switchToTextParsing(t,dm.MODE.RAWTEXT)}(e,t):n===_m.SVG?function(e,t){e._reconstructActiveFormattingElements(),ym.adjustTokenSVGAttrs(t),ym.adjustTokenXMLAttrs(t),t.selfClosing?e._appendElement(t,Tm.SVG):e._insertElement(t,Tm.SVG),t.ackSelfClosing=!0}(e,t):n===_m.RTC?Mh(e,t):n!==_m.COL&&Lh(e,t);break;case 4:n===_m.HTML?function(e,t){0===e.openElements.tmplCount&&e.treeAdapter.adoptAttributes(e.openElements.items[0],t.attrs)}(e,t):n===_m.BASE||n===_m.LINK||n===_m.META?bh(e,t):n===_m.BODY?function(e,t){var n=e.openElements.tryPeekProperlyNestedBodyElement();n&&0===e.openElements.tmplCount&&(e.framesetOk=!1,e.treeAdapter.adoptAttributes(n,t.attrs))}(e,t):n===_m.MAIN||n===_m.MENU?xh(e,t):n===_m.FORM?function(e,t){var n=e.openElements.tmplCount>0;e.formElement&&!n||(e.openElements.hasInButtonScope(_m.P)&&e._closePElement(),e._insertElement(t,Tm.HTML),n||(e.formElement=e.openElements.current))}(e,t):n===_m.CODE||n===_m.FONT?Ah(e,t):n===_m.NOBR?function(e,t){e._reconstructActiveFormattingElements(),e.openElements.hasInScope(_m.NOBR)&&(lh(e,t),e._reconstructActiveFormattingElements()),e._insertElement(t,Tm.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}(e,t):n===_m.AREA?Ih(e,t):n===_m.MATH?function(e,t){e._reconstructActiveFormattingElements(),ym.adjustTokenMathMLAttrs(t),ym.adjustTokenXMLAttrs(t),t.selfClosing?e._appendElement(t,Tm.MATHML):e._insertElement(t,Tm.MATHML),t.ackSelfClosing=!0}(e,t):n===_m.MENU?function(e,t){e.openElements.hasInButtonScope(_m.P)&&e._closePElement(),e._insertElement(t,Tm.HTML)}(e,t):n!==_m.HEAD&&Lh(e,t);break;case 5:n===_m.STYLE||n===_m.TITLE?bh(e,t):n===_m.ASIDE?xh(e,t):n===_m.SMALL?Ah(e,t):n===_m.TABLE?function(e,t){e.treeAdapter.getDocumentMode(e.document)!==wm.DOCUMENT_MODE.QUIRKS&&e.openElements.hasInButtonScope(_m.P)&&e._closePElement(),e._insertElement(t,Tm.HTML),e.framesetOk=!1,e.insertionMode=Bm}(e,t):n===_m.EMBED?Ih(e,t):n===_m.INPUT?function(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,Tm.HTML);var n=dm.getTokenAttr(t,xm.TYPE);n&&n.toLowerCase()===Am||(e.framesetOk=!1),t.ackSelfClosing=!0}(e,t):n===_m.PARAM||n===_m.TRACK?Oh(e,t):n===_m.IMAGE?function(e,t){t.tagName=_m.IMG,Ih(e,t)}(e,t):n!==_m.FRAME&&n!==_m.TBODY&&n!==_m.TFOOT&&n!==_m.THEAD&&Lh(e,t);break;case 6:n===_m.SCRIPT?bh(e,t):n===_m.CENTER||n===_m.FIGURE||n===_m.FOOTER||n===_m.HEADER||n===_m.HGROUP||n===_m.DIALOG?xh(e,t):n===_m.BUTTON?function(e,t){e.openElements.hasInScope(_m.BUTTON)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(_m.BUTTON)),e._reconstructActiveFormattingElements(),e._insertElement(t,Tm.HTML),e.framesetOk=!1}(e,t):n===_m.STRIKE||n===_m.STRONG?Ah(e,t):n===_m.APPLET||n===_m.OBJECT?kh(e,t):n===_m.KEYGEN?Ih(e,t):n===_m.SOURCE?Oh(e,t):n===_m.IFRAME?function(e,t){e.framesetOk=!1,e._switchToTextParsing(t,dm.MODE.RAWTEXT)}(e,t):n===_m.SELECT?function(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Tm.HTML),e.framesetOk=!1,e.insertionMode===Bm||e.insertionMode===Fm||e.insertionMode===jm||e.insertionMode===Hm||e.insertionMode===Gm?e.insertionMode=Wm:e.insertionMode=Vm}(e,t):n===_m.OPTION?Nh(e,t):Lh(e,t);break;case 7:n===_m.BGSOUND?bh(e,t):n===_m.DETAILS||n===_m.ADDRESS||n===_m.ARTICLE||n===_m.SECTION||n===_m.SUMMARY?xh(e,t):n===_m.LISTING?Ch(e,t):n===_m.MARQUEE?kh(e,t):n===_m.NOEMBED?Rh(e,t):n!==_m.CAPTION&&Lh(e,t);break;case 8:n===_m.BASEFONT?bh(e,t):n===_m.FRAMESET?function(e,t){var n=e.openElements.tryPeekProperlyNestedBodyElement();e.framesetOk&&n&&(e.treeAdapter.detachNode(n),e.openElements.popAllUpToHtmlElement(),e._insertElement(t,Tm.HTML),e.insertionMode=Km)}(e,t):n===_m.FIELDSET?xh(e,t):n===_m.TEXTAREA?function(e,t){e._insertElement(t,Tm.HTML),e.skipNextNewLine=!0,e.tokenizer.state=dm.MODE.RCDATA,e.originalInsertionMode=e.insertionMode,e.framesetOk=!1,e.insertionMode=Zm}(e,t):n===_m.TEMPLATE?bh(e,t):n===_m.NOSCRIPT?e.options.scriptingEnabled?Rh(e,t):Lh(e,t):n===_m.OPTGROUP?Nh(e,t):n!==_m.COLGROUP&&Lh(e,t);break;case 9:n===_m.PLAINTEXT?function(e,t){e.openElements.hasInButtonScope(_m.P)&&e._closePElement(),e._insertElement(t,Tm.HTML),e.tokenizer.state=dm.MODE.PLAINTEXT}(e,t):Lh(e,t);break;case 10:n===_m.BLOCKQUOTE||n===_m.FIGCAPTION?xh(e,t):Lh(e,t);break;default:Lh(e,t)}}function Dh(e,t){var n=t.tagName;e.openElements.hasInScope(n)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(n))}function Zh(e,t){var n=t.tagName;e.openElements.hasInScope(n)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(n),e.activeFormattingElements.clearToLastMarker())}function Bh(e,t){for(var n=t.tagName,r=e.openElements.stackTop;r>0;r--){var o=e.openElements.items[r];if(e.treeAdapter.getTagName(o)===n){e.openElements.generateImpliedEndTagsWithExclusion(n),e.openElements.popUntilElementPopped(o);break}if(e._isSpecialElement(o))break}}function zh(e,t){var n=t.tagName;switch(n.length){case 1:n===_m.A||n===_m.B||n===_m.I||n===_m.S||n===_m.U?lh(e,t):n===_m.P?function(e){e.openElements.hasInButtonScope(_m.P)||e._insertFakeElement(_m.P),e._closePElement()}(e):Bh(e,t);break;case 2:n===_m.DL||n===_m.UL||n===_m.OL?Dh(e,t):n===_m.LI?function(e){e.openElements.hasInListItemScope(_m.LI)&&(e.openElements.generateImpliedEndTagsWithExclusion(_m.LI),e.openElements.popUntilTagNamePopped(_m.LI))}(e):n===_m.DD||n===_m.DT?function(e,t){var n=t.tagName;e.openElements.hasInScope(n)&&(e.openElements.generateImpliedEndTagsWithExclusion(n),e.openElements.popUntilTagNamePopped(n))}(e,t):n===_m.H1||n===_m.H2||n===_m.H3||n===_m.H4||n===_m.H5||n===_m.H6?function(e){e.openElements.hasNumberedHeaderInScope()&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilNumberedHeaderPopped())}(e):n===_m.BR?function(e){e._reconstructActiveFormattingElements(),e._insertFakeElement(_m.BR),e.openElements.pop(),e.framesetOk=!1}(e):n===_m.EM||n===_m.TT?lh(e,t):Bh(e,t);break;case 3:n===_m.BIG?lh(e,t):n===_m.DIR||n===_m.DIV||n===_m.NAV||n===_m.PRE?Dh(e,t):Bh(e,t);break;case 4:n===_m.BODY?function(e){e.openElements.hasInScope(_m.BODY)&&(e.insertionMode=$m)}(e):n===_m.HTML?function(e,t){e.openElements.hasInScope(_m.BODY)&&(e.insertionMode=$m,e._processToken(t))}(e,t):n===_m.FORM?function(e){var t=e.openElements.tmplCount>0,n=e.formElement;t||(e.formElement=null),(n||t)&&e.openElements.hasInScope(_m.FORM)&&(e.openElements.generateImpliedEndTags(),t?e.openElements.popUntilTagNamePopped(_m.FORM):e.openElements.remove(n))}(e):n===_m.CODE||n===_m.FONT||n===_m.NOBR?lh(e,t):n===_m.MAIN||n===_m.MENU?Dh(e,t):Bh(e,t);break;case 5:n===_m.ASIDE?Dh(e,t):n===_m.SMALL?lh(e,t):Bh(e,t);break;case 6:n===_m.CENTER||n===_m.FIGURE||n===_m.FOOTER||n===_m.HEADER||n===_m.HGROUP||n===_m.DIALOG?Dh(e,t):n===_m.APPLET||n===_m.OBJECT?Zh(e,t):n===_m.STRIKE||n===_m.STRONG?lh(e,t):Bh(e,t);break;case 7:n===_m.ADDRESS||n===_m.ARTICLE||n===_m.DETAILS||n===_m.SECTION||n===_m.SUMMARY||n===_m.LISTING?Dh(e,t):n===_m.MARQUEE?Zh(e,t):Bh(e,t);break;case 8:n===_m.FIELDSET?Dh(e,t):n===_m.TEMPLATE?yh(e,t):Bh(e,t);break;case 10:n===_m.BLOCKQUOTE||n===_m.FIGCAPTION?Dh(e,t):Bh(e,t);break;default:Bh(e,t)}}function Fh(e,t){e.tmplInsertionModeStackTop>-1?Kh(e,t):e.stopped=!0}function Uh(e,t){var n=e.openElements.currentTagName;n===_m.TABLE||n===_m.TBODY||n===_m.TFOOT||n===_m.THEAD||n===_m.TR?(e.pendingCharacterTokens=[],e.hasNonWhitespacePendingCharacterToken=!1,e.originalInsertionMode=e.insertionMode,e.insertionMode=zm,e._processToken(t)):Gh(e,t)}function jh(e,t){var n=t.tagName;switch(n.length){case 2:n===_m.TD||n===_m.TH||n===_m.TR?function(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(_m.TBODY),e.insertionMode=jm,e._processToken(t)}(e,t):Gh(e,t);break;case 3:n===_m.COL?function(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(_m.COLGROUP),e.insertionMode=Um,e._processToken(t)}(e,t):Gh(e,t);break;case 4:n===_m.FORM?function(e,t){e.formElement||0!==e.openElements.tmplCount||(e._insertElement(t,Tm.HTML),e.formElement=e.openElements.current,e.openElements.pop())}(e,t):Gh(e,t);break;case 5:n===_m.TABLE?function(e,t){e.openElements.hasInTableScope(_m.TABLE)&&(e.openElements.popUntilTagNamePopped(_m.TABLE),e._resetInsertionMode(),e._processToken(t))}(e,t):n===_m.STYLE?bh(e,t):n===_m.TBODY||n===_m.TFOOT||n===_m.THEAD?function(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,Tm.HTML),e.insertionMode=jm}(e,t):n===_m.INPUT?function(e,t){var n=dm.getTokenAttr(t,xm.TYPE);n&&n.toLowerCase()===Am?e._appendElement(t,Tm.HTML):Gh(e,t),t.ackSelfClosing=!0}(e,t):Gh(e,t);break;case 6:n===_m.SCRIPT?bh(e,t):Gh(e,t);break;case 7:n===_m.CAPTION?function(e,t){e.openElements.clearBackToTableContext(),e.activeFormattingElements.insertMarker(),e._insertElement(t,Tm.HTML),e.insertionMode=Fm}(e,t):Gh(e,t);break;case 8:n===_m.COLGROUP?function(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,Tm.HTML),e.insertionMode=Um}(e,t):n===_m.TEMPLATE?bh(e,t):Gh(e,t);break;default:Gh(e,t)}}function Hh(e,t){var n=t.tagName;n===_m.TABLE?e.openElements.hasInTableScope(_m.TABLE)&&(e.openElements.popUntilTagNamePopped(_m.TABLE),e._resetInsertionMode()):n===_m.TEMPLATE?yh(e,t):n!==_m.BODY&&n!==_m.CAPTION&&n!==_m.COL&&n!==_m.COLGROUP&&n!==_m.HTML&&n!==_m.TBODY&&n!==_m.TD&&n!==_m.TFOOT&&n!==_m.TH&&n!==_m.THEAD&&n!==_m.TR&&Gh(e,t)}function Gh(e,t){var n=e.fosterParentingEnabled;e.fosterParentingEnabled=!0,e._processTokenInBodyMode(t),e.fosterParentingEnabled=n}function Vh(e,t){var n=0;if(e.hasNonWhitespacePendingCharacterToken)for(;n0?(e.openElements.popUntilTagNamePopped(_m.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e._popTmplInsertionMode(),e._resetInsertionMode(),e._processToken(t)):e.stopped=!0}function Yh(e,t){e.insertionMode=Dm,e._processToken(t)}function Xh(e,t){e.insertionMode=Dm,e._processToken(t)}var Qh=Lt(function(){function e(t){(0,G.Z)(this,e),this.options=function(e,t){return[e,t=t||Object.create(null)].reduce((function(e,t){return Object.keys(t).forEach((function(n){e[n]=t[n]})),e}),Object.create(null))}(Cm,t),this.treeAdapter=this.options.treeAdapter,this.pendingScript=null,this.options.sourceCodeLocationInfo&&gm.install(this,mm),this.options.onParseError&&gm.install(this,hm,{onParseError:this.options.onParseError})}return(0,H.Z)(e,[{key:"parse",value:function(e){var t=this.treeAdapter.createDocument();return this._bootstrap(t,null),this.tokenizer.write(e,!0),this._runParsingLoop(null),t}},{key:"parseFragment",value:function(e,t){t||(t=this.treeAdapter.createElement(_m.TEMPLATE,Tm.HTML,[]));var n=this.treeAdapter.createElement("documentmock",Tm.HTML,[]);this._bootstrap(n,t),this.treeAdapter.getTagName(t)===_m.TEMPLATE&&this._pushTmplInsertionMode(qm),this._initTokenizerForFragmentParsing(),this._insertFakeRootElement(),this._resetInsertionMode(),this._findFormInFragmentContext(),this.tokenizer.write(e,!0),this._runParsingLoop(null);var r=this.treeAdapter.getFirstChild(n),o=this.treeAdapter.createDocumentFragment();return this._adoptNodes(r,o),o}},{key:"_bootstrap",value:function(e,t){this.tokenizer=new dm(this.options),this.stopped=!1,this.insertionMode=Om,this.originalInsertionMode="",this.document=e,this.fragmentContext=t,this.headElement=null,this.formElement=null,this.openElements=new pm(this.document,this.treeAdapter),this.activeFormattingElements=new fm(this.treeAdapter),this.tmplInsertionModeStack=[],this.tmplInsertionModeStackTop=-1,this.currentTmplInsertionMode=null,this.pendingCharacterTokens=[],this.hasNonWhitespacePendingCharacterToken=!1,this.framesetOk=!0,this.skipNextNewLine=!1,this.fosterParentingEnabled=!1}},{key:"_err",value:function(){}},{key:"_runParsingLoop",value:function(e){for(;!this.stopped;){this._setupTokenizerCDATAMode();var t=this.tokenizer.getNextToken();if(t.type===dm.HIBERNATION_TOKEN)break;if(this.skipNextNewLine&&(this.skipNextNewLine=!1,t.type===dm.WHITESPACE_CHARACTER_TOKEN&&"\n"===t.chars[0])){if(1===t.chars.length)continue;t.chars=t.chars.substr(1)}if(this._processInputToken(t),e&&this.pendingScript)break}}},{key:"runParsingLoopForCurrentChunk",value:function(e,t){if(this._runParsingLoop(t),t&&this.pendingScript){var n=this.pendingScript;return this.pendingScript=null,void t(n)}e&&e()}},{key:"_setupTokenizerCDATAMode",value:function(){var e=this._getAdjustedCurrentElement();this.tokenizer.allowCDATA=e&&e!==this.document&&this.treeAdapter.getNamespaceURI(e)!==Tm.HTML&&!this._isIntegrationPoint(e)}},{key:"_switchToTextParsing",value:function(e,t){this._insertElement(e,Tm.HTML),this.tokenizer.state=t,this.originalInsertionMode=this.insertionMode,this.insertionMode=Zm}},{key:"switchToPlaintextParsing",value:function(){this.insertionMode=Zm,this.originalInsertionMode=Dm,this.tokenizer.state=dm.MODE.PLAINTEXT}},{key:"_getAdjustedCurrentElement",value:function(){return 0===this.openElements.stackTop&&this.fragmentContext?this.fragmentContext:this.openElements.current}},{key:"_findFormInFragmentContext",value:function(){var e=this.fragmentContext;do{if(this.treeAdapter.getTagName(e)===_m.FORM){this.formElement=e;break}e=this.treeAdapter.getParentNode(e)}while(e)}},{key:"_initTokenizerForFragmentParsing",value:function(){if(this.treeAdapter.getNamespaceURI(this.fragmentContext)===Tm.HTML){var e=this.treeAdapter.getTagName(this.fragmentContext);e===_m.TITLE||e===_m.TEXTAREA?this.tokenizer.state=dm.MODE.RCDATA:e===_m.STYLE||e===_m.XMP||e===_m.IFRAME||e===_m.NOEMBED||e===_m.NOFRAMES||e===_m.NOSCRIPT?this.tokenizer.state=dm.MODE.RAWTEXT:e===_m.SCRIPT?this.tokenizer.state=dm.MODE.SCRIPT_DATA:e===_m.PLAINTEXT&&(this.tokenizer.state=dm.MODE.PLAINTEXT)}}},{key:"_setDocumentType",value:function(e){var t=e.name||"",n=e.publicId||"",r=e.systemId||"";this.treeAdapter.setDocumentType(this.document,t,n,r)}},{key:"_attachElementToTree",value:function(e){if(this._shouldFosterParentOnInsertion())this._fosterParentElement(e);else{var t=this.openElements.currentTmplContent||this.openElements.current;this.treeAdapter.appendChild(t,e)}}},{key:"_appendElement",value:function(e,t){var n=this.treeAdapter.createElement(e.tagName,t,e.attrs);this._attachElementToTree(n)}},{key:"_insertElement",value:function(e,t){var n=this.treeAdapter.createElement(e.tagName,t,e.attrs);this._attachElementToTree(n),this.openElements.push(n)}},{key:"_insertFakeElement",value:function(e){var t=this.treeAdapter.createElement(e,Tm.HTML,[]);this._attachElementToTree(t),this.openElements.push(t)}},{key:"_insertTemplate",value:function(e){var t=this.treeAdapter.createElement(e.tagName,Tm.HTML,e.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(t,n),this._attachElementToTree(t),this.openElements.push(t)}},{key:"_insertFakeRootElement",value:function(){var e=this.treeAdapter.createElement(_m.HTML,Tm.HTML,[]);this.treeAdapter.appendChild(this.openElements.current,e),this.openElements.push(e)}},{key:"_appendCommentNode",value:function(e,t){var n=this.treeAdapter.createCommentNode(e.data);this.treeAdapter.appendChild(t,n)}},{key:"_insertCharacters",value:function(e){if(this._shouldFosterParentOnInsertion())this._fosterParentText(e.chars);else{var t=this.openElements.currentTmplContent||this.openElements.current;this.treeAdapter.insertText(t,e.chars)}}},{key:"_adoptNodes",value:function(e,t){for(var n=this.treeAdapter.getFirstChild(e);n;n=this.treeAdapter.getFirstChild(e))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(t,n)}},{key:"_shouldProcessTokenInForeignContent",value:function(e){var t=this._getAdjustedCurrentElement();if(!t||t===this.document)return!1;var n=this.treeAdapter.getNamespaceURI(t);if(n===Tm.HTML)return!1;if(this.treeAdapter.getTagName(t)===_m.ANNOTATION_XML&&n===Tm.MATHML&&e.type===dm.START_TAG_TOKEN&&e.tagName===_m.SVG)return!1;var r=e.type===dm.CHARACTER_TOKEN||e.type===dm.NULL_CHARACTER_TOKEN||e.type===dm.WHITESPACE_CHARACTER_TOKEN;return(!(e.type===dm.START_TAG_TOKEN&&e.tagName!==_m.MGLYPH&&e.tagName!==_m.MALIGNMARK)&&!r||!this._isIntegrationPoint(t,Tm.MATHML))&&(e.type!==dm.START_TAG_TOKEN&&!r||!this._isIntegrationPoint(t,Tm.HTML))&&e.type!==dm.EOF_TOKEN}},{key:"_processToken",value:function(e){th[this.insertionMode][e.type](this,e)}},{key:"_processTokenInBodyMode",value:function(e){th[Dm][e.type](this,e)}},{key:"_processTokenInForeignContent",value:function(e){e.type===dm.CHARACTER_TOKEN?function(e,t){e._insertCharacters(t),e.framesetOk=!1}(this,e):e.type===dm.NULL_CHARACTER_TOKEN?function(e,t){t.chars=Sm.REPLACEMENT_CHARACTER,e._insertCharacters(t)}(this,e):e.type===dm.WHITESPACE_CHARACTER_TOKEN?fh(this,e):e.type===dm.COMMENT_TOKEN?dh(this,e):e.type===dm.START_TAG_TOKEN?function(e,t){if(ym.causesExit(t)&&!e.fragmentContext){for(;e.treeAdapter.getNamespaceURI(e.openElements.current)!==Tm.HTML&&!e._isIntegrationPoint(e.openElements.current);)e.openElements.pop();e._processToken(t)}else{var n=e._getAdjustedCurrentElement(),r=e.treeAdapter.getNamespaceURI(n);r===Tm.MATHML?ym.adjustTokenMathMLAttrs(t):r===Tm.SVG&&(ym.adjustTokenSVGTagName(t),ym.adjustTokenSVGAttrs(t)),ym.adjustTokenXMLAttrs(t),t.selfClosing?e._appendElement(t,r):e._insertElement(t,r),t.ackSelfClosing=!0}}(this,e):e.type===dm.END_TAG_TOKEN&&function(e,t){for(var n=e.openElements.stackTop;n>0;n--){var r=e.openElements.items[n];if(e.treeAdapter.getNamespaceURI(r)===Tm.HTML){e._processToken(t);break}if(e.treeAdapter.getTagName(r).toLowerCase()===t.tagName){e.openElements.popUntilElementPopped(r);break}}}(this,e)}},{key:"_processInputToken",value:function(e){this._shouldProcessTokenInForeignContent(e)?this._processTokenInForeignContent(e):this._processToken(e),e.type===dm.START_TAG_TOKEN&&e.selfClosing&&!e.ackSelfClosing&&this._err(Em.nonVoidHtmlElementStartTagWithTrailingSolidus)}},{key:"_isIntegrationPoint",value:function(e,t){var n=this.treeAdapter.getTagName(e),r=this.treeAdapter.getNamespaceURI(e),o=this.treeAdapter.getAttrList(e);return ym.isIntegrationPoint(n,r,o,t)}},{key:"_reconstructActiveFormattingElements",value:function(){var e=this.activeFormattingElements.length;if(e){var t=e,n=null;do{if(t--,(n=this.activeFormattingElements.entries[t]).type===fm.MARKER_ENTRY||this.openElements.contains(n.element)){t++;break}}while(t>0);for(var r=t;r=0;e--){var n=this.openElements.items[e];0===e&&(t=!0,this.fragmentContext&&(n=this.fragmentContext));var r=this.treeAdapter.getTagName(n),o=Jm[r];if(o){this.insertionMode=o;break}if(!(t||r!==_m.TD&&r!==_m.TH)){this.insertionMode=Gm;break}if(!t&&r===_m.HEAD){this.insertionMode=Mm;break}if(r===_m.SELECT){this._resetInsertionModeForSelect(e);break}if(r===_m.TEMPLATE){this.insertionMode=this.currentTmplInsertionMode;break}if(r===_m.HTML){this.insertionMode=this.headElement?Pm:Nm;break}if(t){this.insertionMode=Dm;break}}}},{key:"_resetInsertionModeForSelect",value:function(e){if(e>0)for(var t=e-1;t>0;t--){var n=this.openElements.items[t],r=this.treeAdapter.getTagName(n);if(r===_m.TEMPLATE)break;if(r===_m.TABLE)return void(this.insertionMode=Wm)}this.insertionMode=Vm}},{key:"_pushTmplInsertionMode",value:function(e){this.tmplInsertionModeStack.push(e),this.tmplInsertionModeStackTop++,this.currentTmplInsertionMode=e}},{key:"_popTmplInsertionMode",value:function(){this.tmplInsertionModeStack.pop(),this.tmplInsertionModeStackTop--,this.currentTmplInsertionMode=this.tmplInsertionModeStack[this.tmplInsertionModeStackTop]}},{key:"_isElementCausesFosterParenting",value:function(e){var t=this.treeAdapter.getTagName(e);return t===_m.TABLE||t===_m.TBODY||t===_m.TFOOT||t===_m.THEAD||t===_m.TR}},{key:"_shouldFosterParentOnInsertion",value:function(){return this.fosterParentingEnabled&&this._isElementCausesFosterParenting(this.openElements.current)}},{key:"_findFosterParentingLocation",value:function(){for(var e={parent:null,beforeElement:null},t=this.openElements.stackTop;t>=0;t--){var n=this.openElements.items[t],r=this.treeAdapter.getTagName(n),o=this.treeAdapter.getNamespaceURI(n);if(r===_m.TEMPLATE&&o===Tm.HTML){e.parent=this.treeAdapter.getTemplateContent(n);break}if(r===_m.TABLE){e.parent=this.treeAdapter.getParentNode(n),e.parent?e.beforeElement=n:e.parent=this.openElements.items[t-1];break}}return e.parent||(e.parent=this.openElements.items[0]),e}},{key:"_fosterParentElement",value:function(e){var t=this._findFosterParentingLocation();t.beforeElement?this.treeAdapter.insertBefore(t.parent,e,t.beforeElement):this.treeAdapter.appendChild(t.parent,e)}},{key:"_fosterParentText",value:function(e){var t=this._findFosterParentingLocation();t.beforeElement?this.treeAdapter.insertTextBefore(t.parent,e,t.beforeElement):this.treeAdapter.insertText(t.parent,e)}},{key:"_isSpecialElement",value:function(e){var t=this.treeAdapter.getTagName(e),n=this.treeAdapter.getNamespaceURI(e);return wm.SPECIAL_ELEMENTS[n][t]}}]),e}()),Jh=(0,H.Z)((function e(t,n,r){(0,G.Z)(this,e),this.property=t,this.normal=n,r&&(this.space=r)}));function eg(e,t){for(var n={},r={},o=-1;++o4&&"data"===n.slice(0,4)&&Cg.test(t)){if("-"===t.charAt(4)){var a=t.slice(5).replace(Ag,Rg);r="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{var i=t.slice(4);if(!Ag.test(i)){var s=i.replace(kg,Og);"-"!==s.charAt(0)&&(s="-"+s),t="data"+s}}o=mg}return new o(r,t)}function Og(e){return"-"+e.toLowerCase()}function Rg(e){return e.charAt(1).toUpperCase()}var Ng=eg([yg,bg,wg,_g,Tg],"html"),Mg=eg([yg,bg,wg,_g,xg],"svg"),Lg=/[#.]/g;function Pg(e){var t=String(e||"").trim();return t?t.split(/[ \t\n\r\f]+/g):[]}function Dg(e){return e.join(" ").trim()}function Zg(e){for(var t=[],n=String(e||""),r=n.indexOf(","),o=0,a=!1;!a;){-1===r&&(r=n.length,a=!0);var i=n.slice(o,r).trim();!i&&a||t.push(i),o=r+1,r=n.indexOf(",",o)}return t}function Bg(e,t){var n=t||{};return(""===e[e.length-1]?[].concat((0,z.Z)(e),[""]):e).join((n.padRight?" ":"")+","+(!1===n.padLeft?"":" ")).trim()}var zg=new Set(["menu","submit","reset","button"]),Fg={}.hasOwnProperty;function Ug(e,t,n){var r=n&&function(e){for(var t={},n=-1;++n2?s-2:0),c=2;c-1&&ee)return{line:t+1,column:e-(t>0?n[t-1]:0)+1,offset:e};return{line:void 0,column:void 0,offset:void 0}},toOffset:function(e){var t=e&&e.line,r=e&&e.column;if("number"==typeof t&&"number"==typeof r&&!Number.isNaN(t)&&!Number.isNaN(r)&&t-1 in n){var o=(n[t-2]||0)+r-1||0;if(o>-1&&o`",url:!1},abruptClosingOfEmptyComment:{reason:"Unexpected abruptly closed empty comment",description:"Unexpected `>` or `->`. Expected `--\x3e` to close comments"},abruptDoctypePublicIdentifier:{reason:"Unexpected abruptly closed public identifier",description:"Unexpected `>`. Expected a closing `\"` or `'` after the public identifier"},abruptDoctypeSystemIdentifier:{reason:"Unexpected abruptly closed system identifier",description:"Unexpected `>`. Expected a closing `\"` or `'` after the identifier identifier"},absenceOfDigitsInNumericCharacterReference:{reason:"Unexpected non-digit at start of numeric character reference",description:"Unexpected `%c`. Expected `[0-9]` for decimal references or `[0-9a-fA-F]` for hexadecimal references"},cdataInHtmlContent:{reason:"Unexpected CDATA section in HTML",description:"Unexpected `` in ``",description:"Unexpected text character `%c`. Only use text in `