diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 551701c17c27..d9a52b1271bc 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -11694,7 +11694,7 @@ packages: dev: false file:projects/agrifood-farming.tgz: - resolution: {integrity: sha512-Cs4B7tvjJLwjqDPEmgdASnNycBv7EJIuRlaHy2Id8SHWc+0Ho6hR/dC0o3lg3zWDEGHH6p3QW36hjewnaEUOfA==, tarball: file:projects/agrifood-farming.tgz} + resolution: {integrity: sha512-s8R4IIpQodHE0SQODEsc19cpaCtryR+cpzTKBPPxjgvHNyZl8IG1yykOLe0D/+3fICaApfqQtKVGnc5xqSQEpA==, tarball: file:projects/agrifood-farming.tgz} name: '@rush-temp/agrifood-farming' version: 0.0.0 dependencies: @@ -11742,7 +11742,7 @@ packages: dev: false file:projects/ai-anomaly-detector.tgz: - resolution: {integrity: sha512-mQK3vNGXOc176SnCJRtU/sF6drJtW64xmTWIiuWD8jjrYrgpn4dZnNQy2MT0ZPCGSyHk5DO3+lOVkbunjt0Mog==, tarball: file:projects/ai-anomaly-detector.tgz} + resolution: {integrity: sha512-rxbhqSj8anfiAZRHiD5NYjMGV078Rf2VHXiWNQopWwGFDBa87HWr10NnxRSdRwHXcidz42KSZNOL6amh1PsgvA==, tarball: file:projects/ai-anomaly-detector.tgz} name: '@rush-temp/ai-anomaly-detector' version: 0.0.0 dependencies: @@ -11790,7 +11790,7 @@ packages: dev: false file:projects/ai-content-safety.tgz: - resolution: {integrity: sha512-XeLIGmGEvhQIAis3L87dxk2mNUwuOURUo7sQabcVlOGYBeqE8ph1B667SdIGMuA5n4MrD3Ns1+hxrNuPcgB5ig==, tarball: file:projects/ai-content-safety.tgz} + resolution: {integrity: sha512-Ry/3BylPQzZpgRe6PqA3KoFRI9w/YpLx6nK+2OmEfC5ISVAFn7Wsg6j5Kl90TSxIjkuh5RrGignEW1M46U+30A==, tarball: file:projects/ai-content-safety.tgz} name: '@rush-temp/ai-content-safety' version: 0.0.0 dependencies: @@ -11836,7 +11836,7 @@ packages: dev: false file:projects/ai-document-intelligence.tgz: - resolution: {integrity: sha512-zURjI8KO009BcdIDTFJo5RtJ5DbL6mfI7ZODOyLGsBvEvJLc+V84Eu6HszTN6lVFifOv+9ImSFYsSXxQOhV2/A==, tarball: file:projects/ai-document-intelligence.tgz} + resolution: {integrity: sha512-0dgpmrnYXlN1pf3tXB8DQHClGKYwfopJYHkIijlrtJ24G6tICOM09BoaN7OfuyPts5S+FFr7MAgW6wN6QTxpbw==, tarball: file:projects/ai-document-intelligence.tgz} name: '@rush-temp/ai-document-intelligence' version: 0.0.0 dependencies: @@ -11877,7 +11877,7 @@ packages: dev: false file:projects/ai-document-translator.tgz: - resolution: {integrity: sha512-mmv2XkpfDGbfGRLrkuDt4yFpZmbXR0sqVo2Ek4+xk6jSqsByIY25WXVvJOm7NgEbITknjPFezgFxDc+auL9YzA==, tarball: file:projects/ai-document-translator.tgz} + resolution: {integrity: sha512-dUsdQD5j5TrusUCkmqLYDcUtPkNenDi6/49vHAcw/m5kjTooX8BwoN56JdNTLrcKhtcaW21D9Ksd/c7SW2UEqw==, tarball: file:projects/ai-document-translator.tgz} name: '@rush-temp/ai-document-translator' version: 0.0.0 dependencies: @@ -11923,7 +11923,7 @@ packages: dev: false file:projects/ai-form-recognizer.tgz: - resolution: {integrity: sha512-gBxXQ5ipm2y4CUU+lcOdGdVHayX0zjEKzWKcLH6D9O+Fzk6DSYBjJpo/S6iJTxE7+BhE/3P5uocseP8hfXpAFg==, tarball: file:projects/ai-form-recognizer.tgz} + resolution: {integrity: sha512-NDMSHJhJU/UVO2n24YYQ2eN+pzKvKwj4VngOXtN3qdPt0nsVLpksO0Z6671OPBlMOJDd7WlAJTg9J2jt0vgPGQ==, tarball: file:projects/ai-form-recognizer.tgz} name: '@rush-temp/ai-form-recognizer' version: 0.0.0 dependencies: @@ -11972,7 +11972,7 @@ packages: dev: false file:projects/ai-inference.tgz: - resolution: {integrity: sha512-Q6X9wbW7QeTbk4gw8qkRpVcIdIzZRS1jnI7Cx5WyrQMSFYlbQjNB7xrPeSoGlyGBOAkMmK9KMdV5ECIy0ebKfA==, tarball: file:projects/ai-inference.tgz} + resolution: {integrity: sha512-l2kOheCd94FGir+YPD591JYY1SIP8Pja8LWXm6wqQZy9Z6Dz1kuzYE0JJNk767gUBoO+PsaeTWLR3s227gcc1Q==, tarball: file:projects/ai-inference.tgz} name: '@rush-temp/ai-inference' version: 0.0.0 dependencies: @@ -12018,7 +12018,7 @@ packages: dev: false file:projects/ai-language-conversations.tgz: - resolution: {integrity: sha512-yerYCmyZV1azLLV8LUsaU5F92efOd2sjBaSQmAgBr+abMDdYOUDic+EFfF5xfW+5N+2Cs6wyAOH3tTMOZ0wXrw==, tarball: file:projects/ai-language-conversations.tgz} + resolution: {integrity: sha512-KUNB3tWomxHXjR2Jf7H4Ty7yANj/AXvLXrn8fAj7ryFL2ScU6grcP3iMviQ9YiAfpppJLOpAwGiV2+jc6Pya+w==, tarball: file:projects/ai-language-conversations.tgz} name: '@rush-temp/ai-language-conversations' version: 0.0.0 dependencies: @@ -12068,7 +12068,7 @@ packages: dev: false file:projects/ai-language-text.tgz: - resolution: {integrity: sha512-+28V/u3iH+goVWI66BNbymqVcY+E3RFpiYIDeTU2Yz9PU6RShfvTLT4vZrF0Pp88kJA3Tn6pgX8oHPz/O2o7Ag==, tarball: file:projects/ai-language-text.tgz} + resolution: {integrity: sha512-80v0lWm6zR/8GodSpyDKWf65gfd9zRbMOwC3aBpGjUb5bbCPtUuH9EY2uNW1wkcoZlUssPOs876xIG5LNz0gZg==, tarball: file:projects/ai-language-text.tgz} name: '@rush-temp/ai-language-text' version: 0.0.0 dependencies: @@ -12146,7 +12146,7 @@ packages: dev: false file:projects/ai-metrics-advisor.tgz: - resolution: {integrity: sha512-coyFFPdd9Q2nK0DwJnPVWx2f1l1TLfNMYbnY2XgbWjqpZh/teNUb4ZqcRubYqbQD8RMyxoGXR9e4tEIqbZTTBg==, tarball: file:projects/ai-metrics-advisor.tgz} + resolution: {integrity: sha512-Axx7UVtJKy+zQckp/x3+8EYOrnp0cwPGpaurLmyg1tR2S0ZR3cw9cCpibJKJWxxwniM3qajxz4YGfZ3bU6OxfA==, tarball: file:projects/ai-metrics-advisor.tgz} name: '@rush-temp/ai-metrics-advisor' version: 0.0.0 dependencies: @@ -12192,7 +12192,7 @@ packages: dev: false file:projects/ai-text-analytics.tgz: - resolution: {integrity: sha512-UK+H5rVUmq4AkLOJ5z8umJ3DpnmEfqia5KDwO2gcg7VsqNizYkBcDfyfSFQ4tDB0SH7OHqfgoGlaiLsOQPslWw==, tarball: file:projects/ai-text-analytics.tgz} + resolution: {integrity: sha512-KOA9Pj7xbL9uTgnkFOeedjjrZwNNIdFQpIBbHI04JXqnsvtWqz7Wz1KLolcs5sI8QY0JVQY+gSj2utCAxQ/AYA==, tarball: file:projects/ai-text-analytics.tgz} name: '@rush-temp/ai-text-analytics' version: 0.0.0 dependencies: @@ -12240,7 +12240,7 @@ packages: dev: false file:projects/ai-translation-document.tgz: - resolution: {integrity: sha512-GwYwLipQMJO2h0BspCG1Xa9ODSq/e4t5S5eIT/Pxly3RxLu6t4I5Zg1ImBhNHosEaoPCczu18B+5pcrRH97eeg==, tarball: file:projects/ai-translation-document.tgz} + resolution: {integrity: sha512-otROmo6ijA5vj1m5tYr9VWMP8frXGMyRD4cpYvFrBbqLkCjGhJVuxJNbMl6YvXzRhWr9xcNNjyYbhcd60pqBXQ==, tarball: file:projects/ai-translation-document.tgz} name: '@rush-temp/ai-translation-document' version: 0.0.0 dependencies: @@ -12286,7 +12286,7 @@ packages: dev: false file:projects/ai-translation-text.tgz: - resolution: {integrity: sha512-NcebnaA5NxdYBZ6E9GlBXZijylX98riPk2bucP/lIWXsiVWyQmgGa9W5WqR00vDzQM4x1cuvemB8DowGagW5pw==, tarball: file:projects/ai-translation-text.tgz} + resolution: {integrity: sha512-xN4WcqLOVhondD7CKnX6w++SvBgdztnzBRyd/zvPIhx6uK0/pYPIAvd0lZdbO7iJ0c9EiE2e1TIGZc98L/oPTw==, tarball: file:projects/ai-translation-text.tgz} name: '@rush-temp/ai-translation-text' version: 0.0.0 dependencies: @@ -12332,7 +12332,7 @@ packages: dev: false file:projects/ai-vision-face.tgz: - resolution: {integrity: sha512-5g5LumaEBcJkRv08bvusoXDQBbmBTxxibd4rKSkLm0QLA+Xal4mgMTmvsy3HddXhPuHAr1a52PURIdB8J2s2+g==, tarball: file:projects/ai-vision-face.tgz} + resolution: {integrity: sha512-t/948E3134gOvUKwyUZJSOaC/+NqkGCg0hjO+T5vfVHUGl8E8MhhearJY3lrWINvzjOIFaMqjQlcJT1q8qXk3Q==, tarball: file:projects/ai-vision-face.tgz} name: '@rush-temp/ai-vision-face' version: 0.0.0 dependencies: @@ -12374,7 +12374,7 @@ packages: dev: false file:projects/ai-vision-image-analysis.tgz: - resolution: {integrity: sha512-sZG3tcmXR7BHFJqNNO7mClVQKiweAJDbcbR4nFlRVMH/hHmRUjpXpNSNnZwARUqgYXVIWTqquLwVOw9lmb+5vQ==, tarball: file:projects/ai-vision-image-analysis.tgz} + resolution: {integrity: sha512-9StZ8+Sco5p2xzQYLFHqWLTN8AS8Pai6Gk4/6OEf7rGgS/DmNKSy6Hui8ll1uo4465Dor3AptuLohzBxYmaGcg==, tarball: file:projects/ai-vision-image-analysis.tgz} name: '@rush-temp/ai-vision-image-analysis' version: 0.0.0 dependencies: @@ -12464,7 +12464,7 @@ packages: dev: false file:projects/api-management-custom-widgets-tools.tgz: - resolution: {integrity: sha512-VS3iSY4cfLrl9YHM8diplgSKEw7w4BgMOwcRjkx+5KJ5s9qlnb3JaXV0sC+0kPJxKsLRXue9+xcWa0LmQcjDWg==, tarball: file:projects/api-management-custom-widgets-tools.tgz} + resolution: {integrity: sha512-8FZ5rNXHxo+LemYkBz8v/cUjtWQcH1alcfWuG2G5F335XUrtkLS4HRAzImETGk7HqTVAefd/PZh7+7SW5c2HEA==, tarball: file:projects/api-management-custom-widgets-tools.tgz} name: '@rush-temp/api-management-custom-widgets-tools' version: 0.0.0 dependencies: @@ -12504,7 +12504,7 @@ packages: dev: false file:projects/app-configuration.tgz: - resolution: {integrity: sha512-hlC8uwvsEG8oh23t5w8ddpDXB41wEk/60kkldKYXlLRqOui9Ys6goM0mn9oj/qZ+HdTYYLNwFF3TYkRKM384qg==, tarball: file:projects/app-configuration.tgz} + resolution: {integrity: sha512-gP8LmTDcRMVlrqAqNcSkU7VUCah65ZvbQc9vU9IMWko1If+tI5mj902b2uvjSPrF7IXAQo383gEGyDzj1ErdmQ==, tarball: file:projects/app-configuration.tgz} name: '@rush-temp/app-configuration' version: 0.0.0 dependencies: @@ -12545,7 +12545,7 @@ packages: dev: false file:projects/arm-advisor.tgz: - resolution: {integrity: sha512-j50IS1ldc8YFbLuR0O/sJUZRdGkK4K21T2T/p7QAMH6hXNBV81n8Z/6TkVVGKiujCP5ByN74dXoNRLDZPJk3hA==, tarball: file:projects/arm-advisor.tgz} + resolution: {integrity: sha512-vjYn8Yd5EXXOgKLNpGyAvkC5LGFv6xsgcpiT0QZe30ZW0klgr5gc62jAD3Yw6Ge+ILveFS79926EY/u12zuwJQ==, tarball: file:projects/arm-advisor.tgz} name: '@rush-temp/arm-advisor' version: 0.0.0 dependencies: @@ -12573,7 +12573,7 @@ packages: dev: false file:projects/arm-agrifood.tgz: - resolution: {integrity: sha512-vZM3DyGbtnOoJa4slS3DI62pHQpgWSibVKRi5lO9b8yDalDhrUdcyY7VY8Q06DKSizKfIhcJofYi0Jo2JX1YIQ==, tarball: file:projects/arm-agrifood.tgz} + resolution: {integrity: sha512-ZqbxbBoGp7BhpUgIPPmOGYgycRH/4B8JU+7piW099E5SyXRCQs0vlN+oklvfS2JFTtCOyKPlyeXuQQPW9BljCg==, tarball: file:projects/arm-agrifood.tgz} name: '@rush-temp/arm-agrifood' version: 0.0.0 dependencies: @@ -12602,7 +12602,7 @@ packages: dev: false file:projects/arm-analysisservices.tgz: - resolution: {integrity: sha512-GLHyFimX/x0Edc68NbyNXwwLS3C2u3CLKGsfAxOcQ2/Ehl8hn2zAc+yfzlhEVNV18zs855I2RNmLdantKfqhig==, tarball: file:projects/arm-analysisservices.tgz} + resolution: {integrity: sha512-SOaKSNZzq+FluIDEmAexhZFCivV9Oipkch/KWG9Vji0m8f17OnWvFKGmbLsaYOIFo03lzWhQ+v5NTKA85cMTXg==, tarball: file:projects/arm-analysisservices.tgz} name: '@rush-temp/arm-analysisservices' version: 0.0.0 dependencies: @@ -12631,7 +12631,7 @@ packages: dev: false file:projects/arm-apicenter.tgz: - resolution: {integrity: sha512-DDKemUzvGmhil+yTK3XdEHQPJzHoNocEvaBvhyqim5IKqYITSxGrw15RM6tK3RxYsxsyhm+8PYC5E4cfxRFByA==, tarball: file:projects/arm-apicenter.tgz} + resolution: {integrity: sha512-fpSAQZ3kg/ZEtCN27sQWfgrxWGGciE5IEwX27Am+41u8nfT1UwxgORGwyZtu5dxKfPQi61qoSsThm6xLuDxOiQ==, tarball: file:projects/arm-apicenter.tgz} name: '@rush-temp/arm-apicenter' version: 0.0.0 dependencies: @@ -12661,7 +12661,7 @@ packages: dev: false file:projects/arm-apimanagement.tgz: - resolution: {integrity: sha512-w71B8wlzqMjsqAaYwa5S7TX/WfqXgsslxBHeelihjZXTQfmH2JTLp/Jb+URULR9XV9l2gE7p5mCBphmFNa3dFg==, tarball: file:projects/arm-apimanagement.tgz} + resolution: {integrity: sha512-yG0sipzczlsjHcwJadYKD70WCRXxyEtgxsjyFWAdDe/91bI+QPTJ3z8XaVdlPAR0ETAj15iR/q8qJmxjX6tbtQ==, tarball: file:projects/arm-apimanagement.tgz} name: '@rush-temp/arm-apimanagement' version: 0.0.0 dependencies: @@ -12691,7 +12691,7 @@ packages: dev: false file:projects/arm-appcomplianceautomation.tgz: - resolution: {integrity: sha512-zPGuCARoqMk9lxx22kePwtVwfAIxb3xV27l9v+b2qbmd/GZto8c56LYLW0Jlc5YZxFc8OfFS40fnUXswt+aNMQ==, tarball: file:projects/arm-appcomplianceautomation.tgz} + resolution: {integrity: sha512-+AZX6KCPhu99ZBjEgIuUKWQlLsKIGq0hTy66QWQlktwB/DoY4kflboGpZGb3ykSP3ymxUMbrsOAQ0VYVigUh/w==, tarball: file:projects/arm-appcomplianceautomation.tgz} name: '@rush-temp/arm-appcomplianceautomation' version: 0.0.0 dependencies: @@ -12722,7 +12722,7 @@ packages: dev: false file:projects/arm-appconfiguration.tgz: - resolution: {integrity: sha512-vH4vUAApC+YkD3Dfb6ic88lhLKSXnSSK3pkV+JI8G7ldkfrCqG+nM949fpSeSXxZ33nKs5ekC+3lmGWHQksRIQ==, tarball: file:projects/arm-appconfiguration.tgz} + resolution: {integrity: sha512-7uLch2VfD1okr1ySITj5+REC8VAcGtlG3AsEnnA5lt82fE/GLc769RfY7Q3Xl5jL56Qkf9z4yLtMzYGRPMV+FQ==, tarball: file:projects/arm-appconfiguration.tgz} name: '@rush-temp/arm-appconfiguration' version: 0.0.0 dependencies: @@ -12752,7 +12752,7 @@ packages: dev: false file:projects/arm-appcontainers.tgz: - resolution: {integrity: sha512-sKAAGIUJAXoM/D34CwHp63CIbvhI8dWFWEUyu/MqYaIaOMCEzAq+LC6wa+Y8jyPdygnFBuf1fY7by88ewbQQIg==, tarball: file:projects/arm-appcontainers.tgz} + resolution: {integrity: sha512-kjruBKXtbcRnhv5rZ5yMv5drqqlVMaNPSoprSVqXiQnlDSScQ7/Ioj9rsfDTgOzBnT26JM8ZjZY6tVwqLrXZeQ==, tarball: file:projects/arm-appcontainers.tgz} name: '@rush-temp/arm-appcontainers' version: 0.0.0 dependencies: @@ -12783,7 +12783,7 @@ packages: dev: false file:projects/arm-appinsights.tgz: - resolution: {integrity: sha512-aN/H2SkdJltZmBVCyJf1B6aVq42p62AisM2n1kscNgIorbSBIqcMkTz+0VRDAMdi7wMD2OYoo8Rxxxuna5d0Lg==, tarball: file:projects/arm-appinsights.tgz} + resolution: {integrity: sha512-35hDLtbgI79tld5msoAgv6fZHp7F/DSYx32JgPk9uLiar7mKbYAxDkEhta2M05kRkE/ywLHwvIJC5QoxDgiFsw==, tarball: file:projects/arm-appinsights.tgz} name: '@rush-temp/arm-appinsights' version: 0.0.0 dependencies: @@ -12810,7 +12810,7 @@ packages: dev: false file:projects/arm-appplatform.tgz: - resolution: {integrity: sha512-sTdgGMCB4fHfqmiMFEKv3ifUbZVk6uGdQysv9K/5VLJQrOOC8MNfwq5oYOmzXWXkSgF1/LmJjRRfFu3IGDhDiQ==, tarball: file:projects/arm-appplatform.tgz} + resolution: {integrity: sha512-OAyeCbyggoOoPLuqNCbHV53ychb3XIguTDAkevIeNeUZyKAh9CORbxBxTvcRHNUo1g3F8C9EqEhdJxPWLpz+JQ==, tarball: file:projects/arm-appplatform.tgz} name: '@rush-temp/arm-appplatform' version: 0.0.0 dependencies: @@ -12840,7 +12840,7 @@ packages: dev: false file:projects/arm-appservice-1.tgz: - resolution: {integrity: sha512-mTPkB0S2WMTWFivB6kmxsh3KpkaGZTEn99uOXf1Di7nY/CwIHJpBG8ki32zxFKMrvdHtJjJWkLqhxgqkTEvvew==, tarball: file:projects/arm-appservice-1.tgz} + resolution: {integrity: sha512-licZltUN6Xq2gNbpCAeNv7zYprGL4ADnKmFF3gtvdJ2Vyxnu1WXnBWj6farnldPU7CecateAfhP4/PkjXtnxnA==, tarball: file:projects/arm-appservice-1.tgz} name: '@rush-temp/arm-appservice-1' version: 0.0.0 dependencies: @@ -12871,7 +12871,7 @@ packages: dev: false file:projects/arm-appservice-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-le+WclDqZDepxAaWxN3fIUHL7HNa8zb72MdJUr7LIzg/HkKSxaYqbj8Vq8SE7eCBNH214YR1p5XfDUNm1MRZqw==, tarball: file:projects/arm-appservice-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-m//Z0td9BmBpDwnSu2FO2vYHSnrv6Ypikdgu68WS2w1FXNVB15NWkvcPabbEj4kYD6iBZqMoAWQ3WztncBVvtg==, tarball: file:projects/arm-appservice-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-appservice-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -12901,7 +12901,7 @@ packages: dev: false file:projects/arm-appservice.tgz: - resolution: {integrity: sha512-0AxWpg2PGyfwn7Fcj+qffF3GRHNqT/ckL81rwjtYI7JnftJ0BbzMcsH3idEsu5RXaC2JAl6d2ImAkng2ZJ/3rw==, tarball: file:projects/arm-appservice.tgz} + resolution: {integrity: sha512-ZMjGPf1AZXDjrrnS49/qrwx/Cqp6Us4uDGXLcvDj2KhQyhl7Kb+VIS/rCaNNEAoEPSetHpzaEYdebi+qEqgIxg==, tarball: file:projects/arm-appservice.tgz} name: '@rush-temp/arm-appservice' version: 0.0.0 dependencies: @@ -12948,7 +12948,7 @@ packages: dev: false file:projects/arm-astro.tgz: - resolution: {integrity: sha512-t3gp2HykYuK2fxua+0V6w5QCE68AXPdV1U7SjjFodWsucS8L7Prn55qQoJsr+mMUFkXn49m/7O4NRunhjnDDUw==, tarball: file:projects/arm-astro.tgz} + resolution: {integrity: sha512-+6/O3LoFp3RAkxXps9x0i5chiltmFFhBs1Vq14ecWfZ7Wa7jaRztOA/I+qFeL2zYo+Vf7hTnqLseNvGyHwLkrw==, tarball: file:projects/arm-astro.tgz} name: '@rush-temp/arm-astro' version: 0.0.0 dependencies: @@ -12978,7 +12978,7 @@ packages: dev: false file:projects/arm-attestation.tgz: - resolution: {integrity: sha512-JP3oXHVm11vuB1HxqvDfpIBVuDPLOUrRWBLWbo8HGURI9ss+v83VdQO5qVScyPY+JZ/6MwcFSFIA8BTSVlLV+g==, tarball: file:projects/arm-attestation.tgz} + resolution: {integrity: sha512-FjYfuUDCohNPN5R0yKQv8xHtokfk63LJlGr8KM8Hqgpl2NI75OFZTsB07nf35KJ+PuxL+sLPkGj+VKyVtmw19g==, tarball: file:projects/arm-attestation.tgz} name: '@rush-temp/arm-attestation' version: 0.0.0 dependencies: @@ -13005,7 +13005,7 @@ packages: dev: false file:projects/arm-authorization-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-fKmixst908lrfU7yUoETdsMJhPNXegcGa1VL63Pm2LcWrwMlRn0YJb7kbLZhSXgAqKRWHdTaN/PGid1SR5xZFQ==, tarball: file:projects/arm-authorization-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-YfwPBb6y/E+EUDMu1T87Bhl4fgZnnVI/lQzDQN1/k9XZnQ21UIZrL/U/oqAs0kXIjrZODMPqaALlpJRWIPVRzA==, tarball: file:projects/arm-authorization-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-authorization-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -13033,7 +13033,7 @@ packages: dev: false file:projects/arm-authorization.tgz: - resolution: {integrity: sha512-fVHt83RsUiOUMiyDVLxiocujqCYf9b1HFDQATmwjQxEYpCwbhgJPkaw8Qm8A55gogDeOvSCby+XTRAG2NOk7CQ==, tarball: file:projects/arm-authorization.tgz} + resolution: {integrity: sha512-2PGaI8pMxHi3g9AFvqqs/rDtAm82jTnM085CRXBFbUUlipdVhWuPUtxa6ZebpSzs8Rn+KNh2MbMpvBeVeMQ+rg==, tarball: file:projects/arm-authorization.tgz} name: '@rush-temp/arm-authorization' version: 0.0.0 dependencies: @@ -13063,7 +13063,7 @@ packages: dev: false file:projects/arm-automanage.tgz: - resolution: {integrity: sha512-R7D6aWLvN+1AsZWt/JoARQffzrNM7n7eH85CFiDYC4OCV+lcLOMgYJXoQim5NvD5zAJB6KXTai7V4Ug12mN7YA==, tarball: file:projects/arm-automanage.tgz} + resolution: {integrity: sha512-yqrG/JXu3svIJemSo2z9XwYR7QyqzQiANkGIdAZVzoXpvRBJS0QdUot/rUv/cBBdN8PqoQUvUpZN5xn5GtBnPg==, tarball: file:projects/arm-automanage.tgz} name: '@rush-temp/arm-automanage' version: 0.0.0 dependencies: @@ -13091,7 +13091,7 @@ packages: dev: false file:projects/arm-automation.tgz: - resolution: {integrity: sha512-xm3HJfEFQKLUDmRLWV9jTHmxq5b9diVCJZ8SguZLq/LOnu9xWixFuL38MYUCwV7ikdUlFkh8TLIIXvx2a1+Z+g==, tarball: file:projects/arm-automation.tgz} + resolution: {integrity: sha512-K6jGyBr3usOzC03+mxBtCKmhQJesqtjVQTH02BgXZ/uWwOKAhJ0LBfMRIyH3FThk99UGvPvS6OMU5c9bVdvGHA==, tarball: file:projects/arm-automation.tgz} name: '@rush-temp/arm-automation' version: 0.0.0 dependencies: @@ -13121,7 +13121,7 @@ packages: dev: false file:projects/arm-avs.tgz: - resolution: {integrity: sha512-s3CYnYB4Xs8s56oIRpu6ft6LKwWxJd2rAbRQajiiWPzokn+XxDg7KFnEaFyqTa0gxDgfuB7f9O3Mwq9XR1NOuQ==, tarball: file:projects/arm-avs.tgz} + resolution: {integrity: sha512-Mi8kIxevxIs8NNado2AdlKvQbEA/N8k1i9i+pzghhe02onsJ2Hd9NXjYgq1OuS9QUifPnpq21QUfYHykNr7D/A==, tarball: file:projects/arm-avs.tgz} name: '@rush-temp/arm-avs' version: 0.0.0 dependencies: @@ -13152,7 +13152,7 @@ packages: dev: false file:projects/arm-azureadexternalidentities.tgz: - resolution: {integrity: sha512-/0w9x+HtRJsg/BVNECBZ7YtpEpImweZe11MW9gtV/6taqKa40M4ERcCxcaMfryWTemcZGOPYc/IPQnSLVj5VKQ==, tarball: file:projects/arm-azureadexternalidentities.tgz} + resolution: {integrity: sha512-q67bEgdxXJZLg20i5LHI42jAY5/XZ7/u8vV15t7kP4bEpIELZlBO7c/JmA4YHf69rpsc5ihyhn5FjCTFW8AOGQ==, tarball: file:projects/arm-azureadexternalidentities.tgz} name: '@rush-temp/arm-azureadexternalidentities' version: 0.0.0 dependencies: @@ -13181,7 +13181,7 @@ packages: dev: false file:projects/arm-azurestack.tgz: - resolution: {integrity: sha512-CAeob5fq9zY1Tpg7oba2HuvdEEgv9KgAo4C4bevufGIXX0+hBNj+jAMjD+v1x0kIWoBkCjCxpBTxU0akoTyVfA==, tarball: file:projects/arm-azurestack.tgz} + resolution: {integrity: sha512-T7YTO/MgQh0dw6AzP3IVb4XmRwyQzxHEnlIN1lzpwq1yhaCzoEhcNf15Gq3mFEPytMJIFW0fdPan6bpk36qDVQ==, tarball: file:projects/arm-azurestack.tgz} name: '@rush-temp/arm-azurestack' version: 0.0.0 dependencies: @@ -13208,7 +13208,7 @@ packages: dev: false file:projects/arm-azurestackhci.tgz: - resolution: {integrity: sha512-2c7VX8yC3d721NWjZnaLiVjkrlwvOMWE0tYYw9iEj76qyn17v4HDDVSuuBTVIv1Q5J0Ejb1kaaSsaYQq0iXjJg==, tarball: file:projects/arm-azurestackhci.tgz} + resolution: {integrity: sha512-YrPT+stG81lMdx0nfCDWQHYsSL6aPAg6RKvOzky65HUZo/EwfmIHw+MHMnY1wqDHMz+KPMrEn2tebk4xoD3j3A==, tarball: file:projects/arm-azurestackhci.tgz} name: '@rush-temp/arm-azurestackhci' version: 0.0.0 dependencies: @@ -13239,7 +13239,7 @@ packages: dev: false file:projects/arm-baremetalinfrastructure.tgz: - resolution: {integrity: sha512-J+3x4xxYfZz5mxsoa/CTHqkAZ5J9DhJ0jMqqXulf9SF3SzWS0l6gffe78tFJemrEcA+gR1HpjqpI5wy2Im24wQ==, tarball: file:projects/arm-baremetalinfrastructure.tgz} + resolution: {integrity: sha512-QTPqM3t+JELs+y4azr2niG89Taw+PfVdxyYOhlGDs/XnaA24KZSVewS29oltxRM+NCsnkAbYgkKooVXmE3NXpg==, tarball: file:projects/arm-baremetalinfrastructure.tgz} name: '@rush-temp/arm-baremetalinfrastructure' version: 0.0.0 dependencies: @@ -13269,7 +13269,7 @@ packages: dev: false file:projects/arm-batch.tgz: - resolution: {integrity: sha512-GzGCopQ9KbMjORsZM5l6Q9G6BiGLe7XvXbigD/eGvU7rE6/3U7CY9bORHfB6MyeBJLab9BbRxzNcNlP8w2tL8A==, tarball: file:projects/arm-batch.tgz} + resolution: {integrity: sha512-Ji9xVeQj7M0XujhC9agenCi8FLVSFWl93gNBh1xaduKFmrsoH9f8HYcXRIRLUF/orO+Xoo58iudptx+xef9q3w==, tarball: file:projects/arm-batch.tgz} name: '@rush-temp/arm-batch' version: 0.0.0 dependencies: @@ -13299,7 +13299,7 @@ packages: dev: false file:projects/arm-billing.tgz: - resolution: {integrity: sha512-hBrwE8YTVASJTUfX1hJSV7lq1o1jZ70DD4DVmq2t5zdugjxFftxsytzyQzdCBYfvAHa5Vxm7a+8gWDOJPsWC9w==, tarball: file:projects/arm-billing.tgz} + resolution: {integrity: sha512-BmrjANaKNUHqlGgA3jm8Y/p5JadJ6NKOjic45sSg/ekPhXqmhVvb3bsT6T7FRYtYabLLwaPDNrnhVsUqMhRXkw==, tarball: file:projects/arm-billing.tgz} name: '@rush-temp/arm-billing' version: 0.0.0 dependencies: @@ -13329,7 +13329,7 @@ packages: dev: false file:projects/arm-billingbenefits.tgz: - resolution: {integrity: sha512-itMhmNZHQbc/GNPoW6Y1iFkIu89HCEsyb3pIAgm9vb+pvZLg/bAZ8khtw2ZgCsqmwX7y1YX8sBSdyCLVGdbsbw==, tarball: file:projects/arm-billingbenefits.tgz} + resolution: {integrity: sha512-qqpGwzGVe8UyLBjb+Q2H0w++N2M+LINBLqmA0ackMrHC4Qb8SVjtA2/BGQs9vFLyY/h2rWiHVn+Ge1aRQR4+Fw==, tarball: file:projects/arm-billingbenefits.tgz} name: '@rush-temp/arm-billingbenefits' version: 0.0.0 dependencies: @@ -13358,7 +13358,7 @@ packages: dev: false file:projects/arm-botservice.tgz: - resolution: {integrity: sha512-IGdmnDZRAwhbvBMezbH1dGxEc7QHbmSKpaugEj7T3W0T6FDRF3AbR07fQAo3OnPEhwod8ii/3SoAXny5qSB0iA==, tarball: file:projects/arm-botservice.tgz} + resolution: {integrity: sha512-gMMlAZUSlbA6oW8JWTsgZCRahPkynG0iuyMGnMMsIGCR7chcsYZbay7AhvGIyGuAJxVd0YDJktT65/Pr8+tUzA==, tarball: file:projects/arm-botservice.tgz} name: '@rush-temp/arm-botservice' version: 0.0.0 dependencies: @@ -13388,7 +13388,7 @@ packages: dev: false file:projects/arm-cdn.tgz: - resolution: {integrity: sha512-CU+l5VuL+i0O+4HK2Q7Y2b7lCrRgMt45lOmj0YaCe6MVoCfjpQWczHWhP1oEWctDD94TQTEJzgXe5H4G17ZP0Q==, tarball: file:projects/arm-cdn.tgz} + resolution: {integrity: sha512-SKc7MjCuLrmeSSGPkZAviCMQ8jCRHDf7rIYC5CBcbER57ASteCeDrKYas5kb2L0TLmbNUwXfSaXWthKau6LtzQ==, tarball: file:projects/arm-cdn.tgz} name: '@rush-temp/arm-cdn' version: 0.0.0 dependencies: @@ -13418,7 +13418,7 @@ packages: dev: false file:projects/arm-changeanalysis.tgz: - resolution: {integrity: sha512-fkFX4kPWeb0cHbHCQ1PCsHMsN6H0p7K/8jAhpxNCcAFQMzkGDm4/DUvQ3OgWAriEHtrwIMULSNMvCVdcFH+gRg==, tarball: file:projects/arm-changeanalysis.tgz} + resolution: {integrity: sha512-UpEcej4ZUbTzbrJbE605xfDMr7/vpWc8g+N7AbL76z0YdKPYBW5NbIwJmvOhFyxy9W4I17BPdQcEMf6T+2Z5ow==, tarball: file:projects/arm-changeanalysis.tgz} name: '@rush-temp/arm-changeanalysis' version: 0.0.0 dependencies: @@ -13445,7 +13445,7 @@ packages: dev: false file:projects/arm-changes.tgz: - resolution: {integrity: sha512-YgAy00G/LtoxeeF2ZNMoQ/rn3vaPIcFapaR0xuFWqnUjWcUalsow6Qg438jNJW4bEDjpiIoKfZjQ+N7+Z6C2fw==, tarball: file:projects/arm-changes.tgz} + resolution: {integrity: sha512-33MnuXslqx7VSNY4X5iAEFNLBOhq0ZiZoDkgh9upgLeZaq8I8Ea4AKa5BwJb9/QaakwzfidxItf1/zp72y9dZA==, tarball: file:projects/arm-changes.tgz} name: '@rush-temp/arm-changes' version: 0.0.0 dependencies: @@ -13472,7 +13472,7 @@ packages: dev: false file:projects/arm-chaos.tgz: - resolution: {integrity: sha512-QThF364IZSP+M4ugEC1TtKgsf+eekhrNvtv7FAgV3AcV4BqHRIkyjgvd1M43EIc7K6QcCNZVKC3X868dbs+05A==, tarball: file:projects/arm-chaos.tgz} + resolution: {integrity: sha512-duaMsSr0lGppEg/Ju//lJZAkNyykRa8bkqNf4t+o/2Szsodz0owinK1qBD1bgm+u/Jt3pahz6sdeIJB6NVJ6Yw==, tarball: file:projects/arm-chaos.tgz} name: '@rush-temp/arm-chaos' version: 0.0.0 dependencies: @@ -13503,7 +13503,7 @@ packages: dev: false file:projects/arm-cognitiveservices.tgz: - resolution: {integrity: sha512-GmUfTUwnCvA2pMOatgpWu39YEiNawlAF2XeCQ0RkmYcuLeOaHpFDd+zoDayqDaXR0yLhPHe+CRNKQUdXrKzinA==, tarball: file:projects/arm-cognitiveservices.tgz} + resolution: {integrity: sha512-m0cGihg4gHrMSuW/rUI6Ojiakx3u3E1aSUbeE1Q0zlC7XVu82TzlYFzMUzwZwAlkgJM4TI2abZj45OQXZlkHEw==, tarball: file:projects/arm-cognitiveservices.tgz} name: '@rush-temp/arm-cognitiveservices' version: 0.0.0 dependencies: @@ -13533,7 +13533,7 @@ packages: dev: false file:projects/arm-commerce-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-rUjLWbTeEv7ZbU9vLGHuEPpOx6KC1gstxAzby4xC9jwldp5BftF1gv79Am5Ve6A8Qr1bHTrBRl+lquXhgUKHRQ==, tarball: file:projects/arm-commerce-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-vAsyFvItEaUXW6z6TO+O8DvXUCGA4U84samVLzdsxJZlSYwwD4hKu+y0WHbzVixsa3YktlgR3HhkyCl76ow8eQ==, tarball: file:projects/arm-commerce-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-commerce-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -13561,7 +13561,7 @@ packages: dev: false file:projects/arm-commerce.tgz: - resolution: {integrity: sha512-g4qTZHRvIuxEI6GMS4Dh9Z8IoXSQHKPFxLx3Y7UA4x8+BMD/PSYsiyU+HADZ8rlgsOj4WfDocx9xhnuR0NZazg==, tarball: file:projects/arm-commerce.tgz} + resolution: {integrity: sha512-HyS6mswmWqdZ60P2RuHN6fiKLijQXXC6yWL8hKCAySRdkdWbnm++Q0NHzDbwiBd7cNHEgWWKUccKua1rXJuO/g==, tarball: file:projects/arm-commerce.tgz} name: '@rush-temp/arm-commerce' version: 0.0.0 dependencies: @@ -13588,7 +13588,7 @@ packages: dev: false file:projects/arm-commitmentplans.tgz: - resolution: {integrity: sha512-jgfxpWcmTZFofFB8aNJrQoLvL8pP7ohgvs1YRjAxtsKAP9KGgiogvLGE9Y33JwpG3YOZws7fLhcYQQGDWshU0Q==, tarball: file:projects/arm-commitmentplans.tgz} + resolution: {integrity: sha512-lqB1qydqD9NAPOFhwywksGv79G6WAMCRPW3ApWhtjGNCC1EqIMLyngr5w49F5vyeHcg5n3JJuONcdCKCA6Xu2A==, tarball: file:projects/arm-commitmentplans.tgz} name: '@rush-temp/arm-commitmentplans' version: 0.0.0 dependencies: @@ -13615,7 +13615,7 @@ packages: dev: false file:projects/arm-communication.tgz: - resolution: {integrity: sha512-TGWfwDU++ZbuZkxlDVi6eK0FhRg6z9GWl/UsgZwNtx5SLIiHUaYrVQthh0Tx0zbRVtNZQVFP8UlfvTx3Mm1lDg==, tarball: file:projects/arm-communication.tgz} + resolution: {integrity: sha512-bVrKA8gfoikiwXCgsq9it2F/j4eIq1J+60/V8hix9CoJqIebkdIZmJ0b50bQi0bbOJ3/kcThbxxiOoqhI3VMtw==, tarball: file:projects/arm-communication.tgz} name: '@rush-temp/arm-communication' version: 0.0.0 dependencies: @@ -13645,7 +13645,7 @@ packages: dev: false file:projects/arm-compute-1.tgz: - resolution: {integrity: sha512-ltoqytPE1QVwr7Sob5PjXXoDsknShksZFG9vsodvBaEPOHz+3m3/LPQe1AZrhBRnbb6XWOeaDkSZnDkbfTZ86A==, tarball: file:projects/arm-compute-1.tgz} + resolution: {integrity: sha512-ODLRyAFUrC7ZPKjPMg854wvS/rryYoa+X++OJM8UtXpZOnw/PumlLJLt0upMGBFN0oD2lFoRAvm18H0K0i2uuA==, tarball: file:projects/arm-compute-1.tgz} name: '@rush-temp/arm-compute-1' version: 0.0.0 dependencies: @@ -13677,7 +13677,7 @@ packages: dev: false file:projects/arm-compute-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-GffiJ3m6SkVjee8GzJXjpgrKiqt7EDdqq7SmAb4bnUsPUNHygQQ4/M4H+YGE47/7SYI61JRC4GGTa0So3GN2mQ==, tarball: file:projects/arm-compute-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-y/P8nziaPBWoZGAP89EPdpKBhDeajxK+iaMejTmEXZMO9zOa+LY/9/DrV4PK6m9pIwCHLya7OLGMIUGJNspteQ==, tarball: file:projects/arm-compute-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-compute-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -13707,7 +13707,7 @@ packages: dev: false file:projects/arm-compute.tgz: - resolution: {integrity: sha512-O1ljGJZzzkrw/HcrAfi+3gxy5QHmSIjNolBRs5bD6PGadspNHkT+m7z/MovJC7+AnF5/qhsKMVoNUs0gQt6lOw==, tarball: file:projects/arm-compute.tgz} + resolution: {integrity: sha512-2NNZ7L3W9+XWLBsybqKkBhZcZMNDG/DAOUmym0KrbZoXxaX/c8AiT/3IwRCxbnm+PcD4omDW5j/FMbTkmNONTA==, tarball: file:projects/arm-compute.tgz} name: '@rush-temp/arm-compute' version: 0.0.0 dependencies: @@ -13755,7 +13755,7 @@ packages: dev: false file:projects/arm-computefleet.tgz: - resolution: {integrity: sha512-du/MWids31r8DpXCF7byu32onO5MtKHiAOSKeSgkNFRiLr4bxapXJwBhntDiobMezB2WJA78zf0833EGTjJcvw==, tarball: file:projects/arm-computefleet.tgz} + resolution: {integrity: sha512-fTi0yddULfZ4PhmfGeyg2/2mnUX9upFkxvWjc1UVAAFUGvbSZj5yQftNNAPU3ostDMOUnR5OKSQlpiBUN+jvIw==, tarball: file:projects/arm-computefleet.tgz} name: '@rush-temp/arm-computefleet' version: 0.0.0 dependencies: @@ -13796,7 +13796,7 @@ packages: dev: false file:projects/arm-computeschedule.tgz: - resolution: {integrity: sha512-8MHwaRx5A143tiaqXUAg9VoxuCW3ntTOOGyZP1MYLJ0RwBCrAhEQP3qwbr1ebwdM1ggnXtOp1QESXpNPiSTAFg==, tarball: file:projects/arm-computeschedule.tgz} + resolution: {integrity: sha512-aJw/ul0kPg4UR8vwkegLRRQcLxCOCuLDbIk4S2fgVZyjYCDwHqnNAaxmuCzlbT5JjAS30x6wxlUqgX5xKKAvnQ==, tarball: file:projects/arm-computeschedule.tgz} name: '@rush-temp/arm-computeschedule' version: 0.0.0 dependencies: @@ -13837,7 +13837,7 @@ packages: dev: false file:projects/arm-confidentialledger.tgz: - resolution: {integrity: sha512-r9C2B39MoV92dpUTX6LewfFjQVl6xt1XbfA8tTUMgeBx7XckJ9PdrQaUX4/a/Wu3fQQVAs8KJxxLpP6/jcd8tA==, tarball: file:projects/arm-confidentialledger.tgz} + resolution: {integrity: sha512-/mAZXNdZ/E+Bma6wfATQk4nowYATtAjzVWrNjmEv88X7TWcosjoF9S3OtsmahlMho45GQeBQesEeLMv8aIsYpg==, tarball: file:projects/arm-confidentialledger.tgz} name: '@rush-temp/arm-confidentialledger' version: 0.0.0 dependencies: @@ -13868,7 +13868,7 @@ packages: dev: false file:projects/arm-confluent.tgz: - resolution: {integrity: sha512-2CyfCPtvCztuWZqQpsyJRvXsUX1QYWymEkenlrqxR9RLtCp3PnDc7i/rthg8eh66RATNpCWIELiJfHeGm8wUfA==, tarball: file:projects/arm-confluent.tgz} + resolution: {integrity: sha512-EAEXIU9FBFdX131c6x3XT4IOx9bojcSGxSSjHZpSf0mMuxxLTK5Lzq0AwqNuPj96D79aG1VnOiQOp32N6IcdNA==, tarball: file:projects/arm-confluent.tgz} name: '@rush-temp/arm-confluent' version: 0.0.0 dependencies: @@ -13898,7 +13898,7 @@ packages: dev: false file:projects/arm-connectedvmware.tgz: - resolution: {integrity: sha512-eposj3oB77pzGOiesx91Pb2s/PMXi/i9/7cxVZ/KUBEnT+trQu5Z7X8gVXDJrSwDsS5iufMIXhKBYYQGEI6QvA==, tarball: file:projects/arm-connectedvmware.tgz} + resolution: {integrity: sha512-ADUFaFS/8OanfT9HmmoVJAanvIyMNdvY83/qR9hgOcaBpE+Pye0RaP0yR7fDXNEMspzBfXCAQD7NuqWptdYE8g==, tarball: file:projects/arm-connectedvmware.tgz} name: '@rush-temp/arm-connectedvmware' version: 0.0.0 dependencies: @@ -13928,7 +13928,7 @@ packages: dev: false file:projects/arm-consumption.tgz: - resolution: {integrity: sha512-h8QYilRLuOtHTC62vMgIS87j8jsSnN7hEztpMR+rt/zTPQE0Aju31BJZsrMjyeb2JVBNrJK0+7qo4ifxy01s0A==, tarball: file:projects/arm-consumption.tgz} + resolution: {integrity: sha512-ljSbZqDvjeA1ZeBxedF5W4MrrmcnG4r1C9my2UW+SvJyA0Qa9XOBpS3ng8BKqNbjeC0wjuRXqNDqSkLoPTPgAA==, tarball: file:projects/arm-consumption.tgz} name: '@rush-temp/arm-consumption' version: 0.0.0 dependencies: @@ -13956,7 +13956,7 @@ packages: dev: false file:projects/arm-containerinstance.tgz: - resolution: {integrity: sha512-SaSrVVISz1ZjPeO8jG5TiqvC+1hhhHv4PtTMZfzgDCxcfKp5zRXmcNRQ7CcRIjk4JPbWPLMwXELm78E9ykeRPw==, tarball: file:projects/arm-containerinstance.tgz} + resolution: {integrity: sha512-L0/F5cyMoejXt+Bk50tWAccZVi9P28A97pFk/oEmndSaglS19F8wpbraCz18/8pPCKYQOOUdDyTyMSmPZ13rNQ==, tarball: file:projects/arm-containerinstance.tgz} name: '@rush-temp/arm-containerinstance' version: 0.0.0 dependencies: @@ -13986,7 +13986,7 @@ packages: dev: false file:projects/arm-containerregistry.tgz: - resolution: {integrity: sha512-wX5l8Eto7xHEyyzj/+i58KOGcMjLIt8lK3CUvrpbqWAyXckfLD+EJpMDlMkQKP7B8KJZn0rBSOvo2DOPVuh5dw==, tarball: file:projects/arm-containerregistry.tgz} + resolution: {integrity: sha512-KrXOKsJYZpzKdKzGiYv7qFxQ3vghP1VHojVZxFQCml8xG6rpPqFLU9Csv19go+mDtKlsYjla7KXq9dffrioF3A==, tarball: file:projects/arm-containerregistry.tgz} name: '@rush-temp/arm-containerregistry' version: 0.0.0 dependencies: @@ -14016,7 +14016,7 @@ packages: dev: false file:projects/arm-containerservice-1.tgz: - resolution: {integrity: sha512-bYk9jhoOSa4Qv3EhhKixMq/9Q3iyEpC7syNtXZRCvyZQsrwgS7GMsKLygYTSXLdGRzMAZ3QMMNJG3wMX4wIt/w==, tarball: file:projects/arm-containerservice-1.tgz} + resolution: {integrity: sha512-psB8fi8xPgd4DQhH0+W7ux4LdjTXnjFwhOZOD/uf8b6HAJbFmoblTBuzEFw4p9jm7HHUK06KlgkVtHjDFTkKuQ==, tarball: file:projects/arm-containerservice-1.tgz} name: '@rush-temp/arm-containerservice-1' version: 0.0.0 dependencies: @@ -14046,7 +14046,7 @@ packages: dev: false file:projects/arm-containerservice.tgz: - resolution: {integrity: sha512-+pWOSQtyUTgc+0gU+LQWfB3e7nHG8fOJZHsLs2+Hn2ypGNYGLXdNLaWhWpBdg+iucgdqMDw8Ja5e6SYHCJuwGw==, tarball: file:projects/arm-containerservice.tgz} + resolution: {integrity: sha512-lj+Z+DNeeSo6UQusAcA9/sd9wa+QTHxJRZg9lItZp5LNLUEgeXnBg0xkxEpAIw07ojn6vWjM/fqWQIV4L9lOVw==, tarball: file:projects/arm-containerservice.tgz} name: '@rush-temp/arm-containerservice' version: 0.0.0 dependencies: @@ -14093,7 +14093,7 @@ packages: dev: false file:projects/arm-containerservicefleet.tgz: - resolution: {integrity: sha512-PQcr24oEdrDmHejzWucB0wHC97fJYA0bMoBDyilrYMNbHCS0pK7QDKMdK4mGsai7bqz2o+qSS+8DbqOXLTX1PQ==, tarball: file:projects/arm-containerservicefleet.tgz} + resolution: {integrity: sha512-uQDDni3B2mNlmUuzOFpNBkY/v4Nr4mufQjb2tYJlnt6/s7vg7iqxI2QI4aBjvPEjYOJh1Z7z8/4iFlRibR3Ljw==, tarball: file:projects/arm-containerservicefleet.tgz} name: '@rush-temp/arm-containerservicefleet' version: 0.0.0 dependencies: @@ -14124,7 +14124,7 @@ packages: dev: false file:projects/arm-cosmosdb.tgz: - resolution: {integrity: sha512-JrDCM1+VHSJ5iafdZnbxtpex9/rZxZop4mpPU4+3YqKptJjwPYW96DF1lWRpx3HYZoQvKzP0jbY5cjQvPko2ww==, tarball: file:projects/arm-cosmosdb.tgz} + resolution: {integrity: sha512-HX2XPGeQprhMiZuTB9dd3tOPFGyov+CwWHuuYzo+HxRGHAmlsGPj9YPGz5+EB04xoLIWQgx34HLOA2cZM0G82A==, tarball: file:projects/arm-cosmosdb.tgz} name: '@rush-temp/arm-cosmosdb' version: 0.0.0 dependencies: @@ -14155,7 +14155,7 @@ packages: dev: false file:projects/arm-cosmosdbforpostgresql.tgz: - resolution: {integrity: sha512-HCORHKmsdswJ/9Rv77nWQWlJQFHjerRkQOnoCqD8pUw+Ismf8Zj0ucEgyFwI0vDvKAzlEeY6n9QvwWcWJw+URQ==, tarball: file:projects/arm-cosmosdbforpostgresql.tgz} + resolution: {integrity: sha512-fbSR7O0byc3EEfrk0lF6QDoz3wXXU0iH50zy6yuv7jhRMlkonKR0+5vE4wJe6nJVKKNBS8ghSJmHL8tJ5n4kSg==, tarball: file:projects/arm-cosmosdbforpostgresql.tgz} name: '@rush-temp/arm-cosmosdbforpostgresql' version: 0.0.0 dependencies: @@ -14185,7 +14185,7 @@ packages: dev: false file:projects/arm-costmanagement.tgz: - resolution: {integrity: sha512-evd1cjGM5HTpXhj8kSwA7QmD5tb0GxTYz+T59fq9SP5Z0PGdYZT8olaVKB/JCQdWQsilNV87n3/D2x0TUlmmZw==, tarball: file:projects/arm-costmanagement.tgz} + resolution: {integrity: sha512-8VKWfNLoXGfTRK2RIUihzqTmJOg6HiPgaRtidu6bd2TpatWtX8rkkkXsADRIVH6OVwp2hBzHxC8Go87t2m5a2g==, tarball: file:projects/arm-costmanagement.tgz} name: '@rush-temp/arm-costmanagement' version: 0.0.0 dependencies: @@ -14215,7 +14215,7 @@ packages: dev: false file:projects/arm-customerinsights.tgz: - resolution: {integrity: sha512-8EmhMChGAmXNcp/+zjkXdCiV9+hvhutxPiwjve5CbDEN3ucqRKUbSZBvsd/shMFeX7prRglhZ0UamdOeIhzS0Q==, tarball: file:projects/arm-customerinsights.tgz} + resolution: {integrity: sha512-tef1W4nI6pm94v2cisoKy8rsQ7oeZA4ZhZXukzziDUgNEBEGHG6M9lNiI3RmE5jN4knSadKmF6R3gdmlhuSEzA==, tarball: file:projects/arm-customerinsights.tgz} name: '@rush-temp/arm-customerinsights' version: 0.0.0 dependencies: @@ -14244,7 +14244,7 @@ packages: dev: false file:projects/arm-dashboard.tgz: - resolution: {integrity: sha512-K1R/oyol5L6Lt2wIyUkEFH3olTzpnCCE3PhrSQCK7VQy+dYGIsEiclTK9o2iomcVztgsOK3Lx4+oF9/CvzCScQ==, tarball: file:projects/arm-dashboard.tgz} + resolution: {integrity: sha512-+uhyH4X3a04aVItfcXJCZ69DrTWRsmLhQGOODdUedFaLjfjbc/NyLFfI48FEPHBKSInS+eKQFmH+2b7EUTtfFg==, tarball: file:projects/arm-dashboard.tgz} name: '@rush-temp/arm-dashboard' version: 0.0.0 dependencies: @@ -14274,7 +14274,7 @@ packages: dev: false file:projects/arm-databox.tgz: - resolution: {integrity: sha512-ABCwqA8GmSQMERRbafuhUaexodTf4aMgRSuCf8IEUz7ghLImZNWF/TjdwXi/8m7AEuNx6goyjbLg/wdBmAm7wQ==, tarball: file:projects/arm-databox.tgz} + resolution: {integrity: sha512-eQ8buFlDDk2N0uTF4H5r0K1lrI5dakaYCguY3/5Lk06pDmFN8KbIS27IA3u42OvF/Bawpc1Hch2O6BfVcsvOlw==, tarball: file:projects/arm-databox.tgz} name: '@rush-temp/arm-databox' version: 0.0.0 dependencies: @@ -14304,7 +14304,7 @@ packages: dev: false file:projects/arm-databoxedge-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-P6LLolKn9TxUcNL+DXszOupHW16PFEi2jP+WaT2wEXIHPhhnQtRjdG4Wk1NlnV+iQCbvYqJTIMwX2KIAPbsmSQ==, tarball: file:projects/arm-databoxedge-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-yGHHQj3b9veF7XF1HvpIRdEQ9HHsmOMnD9prt97YFnjK58SD5DUhbJWemU+d1D6/xqRVlTTBtJBv+wA/9Rn7sg==, tarball: file:projects/arm-databoxedge-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-databoxedge-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -14334,7 +14334,7 @@ packages: dev: false file:projects/arm-databoxedge.tgz: - resolution: {integrity: sha512-WiTu65aQZkHG0CIlTv7ms1p2lVpwj8AG+Wl7NG/y68PjxcNbU+xx8mu3RUowYp3oVaiD4tmdW03PxJcPn0UrDA==, tarball: file:projects/arm-databoxedge.tgz} + resolution: {integrity: sha512-zTYR1hawvy18RYKqky9wu2LBpvWc0GUp0bZnqHeqzdg9X7UaI8QLCClzXe9qEd5WqEAtDAnYUSEC0X3jvUyqyg==, tarball: file:projects/arm-databoxedge.tgz} name: '@rush-temp/arm-databoxedge' version: 0.0.0 dependencies: @@ -14363,7 +14363,7 @@ packages: dev: false file:projects/arm-databricks.tgz: - resolution: {integrity: sha512-fxpi+OwV0m4BzZoXLRr8m5XPNMJ4lmqdYMEZFvhvL/YHisTBxD0ydczsjrzF/Nwjg/CBZjEvoX6aC993ZLUGHQ==, tarball: file:projects/arm-databricks.tgz} + resolution: {integrity: sha512-RXI1XeTPejqTgNNOw37ZWktKXmL/puYILXvGTkrujMhxWKks0nYcwk9RugFNDqiwAcSVtijMgjBz6umoI6hjVw==, tarball: file:projects/arm-databricks.tgz} name: '@rush-temp/arm-databricks' version: 0.0.0 dependencies: @@ -14393,7 +14393,7 @@ packages: dev: false file:projects/arm-datacatalog.tgz: - resolution: {integrity: sha512-KXRSpZoBFakUPSlBgKVrlRb/0R3SfBt/2IoxUHqXKEBQ+YkWgnpJUtrsi+puV9Lj792KItOHABnaNdYsFQQIcg==, tarball: file:projects/arm-datacatalog.tgz} + resolution: {integrity: sha512-80kly3hApa9Sajza0bFx64QKl+6sumC6jJmPYyl0ezlI5nDPvkwvJSsOtrIW2DnlgcaMq71MWISg6DMyAXgIIw==, tarball: file:projects/arm-datacatalog.tgz} name: '@rush-temp/arm-datacatalog' version: 0.0.0 dependencies: @@ -14422,7 +14422,7 @@ packages: dev: false file:projects/arm-datadog.tgz: - resolution: {integrity: sha512-3/4FfKMzeYF45doitgdXODW1GCpTR6Qt07UXnUQknmPx4Z5hD7fUZ/lhRhPQIkYC+T6xn3H+kgTrpNr5AzpzwA==, tarball: file:projects/arm-datadog.tgz} + resolution: {integrity: sha512-pYRNi6Q5ttM4AIwcaH5n2LYmaE9kAykIbD1QyquHbqoyD3k4oFVASIZEwlqWPIyWpgrj/FtaKG9/EFT3n8D2kA==, tarball: file:projects/arm-datadog.tgz} name: '@rush-temp/arm-datadog' version: 0.0.0 dependencies: @@ -14452,7 +14452,7 @@ packages: dev: false file:projects/arm-datafactory.tgz: - resolution: {integrity: sha512-urWiWwwdI5TR3DydiAWFk7nCq/5gZn4lsnRs2OXgELNNnXpJfbLfU+1/z7CnYDSQGsA5wR+u9iC42D47ttvgug==, tarball: file:projects/arm-datafactory.tgz} + resolution: {integrity: sha512-iOLeUEsGV/odmVzk+vJA6iyUj22hHUdQw+ADckIeuHrsi9CNfFRKu8YZHERnLmLJJbdejPqRXMr01KdNZ2SCtA==, tarball: file:projects/arm-datafactory.tgz} name: '@rush-temp/arm-datafactory' version: 0.0.0 dependencies: @@ -14482,7 +14482,7 @@ packages: dev: false file:projects/arm-datalake-analytics.tgz: - resolution: {integrity: sha512-ArzJu96X58+OcYy7d0BdnMthLlgSWtbR6P5VU3ghxAbLQ6plsWy73mLDrc7FE6cIvdBl353KgTUSTrvf55uwuw==, tarball: file:projects/arm-datalake-analytics.tgz} + resolution: {integrity: sha512-kLadl1tR3bouJk4yremLkn9xTwtzE1onV9P9Aciulakae5Mx0iPN3Rr5d5mOcKaxh0PG0NRJgWKLhmQ7B9RoxA==, tarball: file:projects/arm-datalake-analytics.tgz} name: '@rush-temp/arm-datalake-analytics' version: 0.0.0 dependencies: @@ -14511,7 +14511,7 @@ packages: dev: false file:projects/arm-datamigration.tgz: - resolution: {integrity: sha512-AUiVgHkYSmpCCBumkMlhQkQUspeHqMyDfEV+aH9UdrIbQWlZ9Ma0/+y1noZktCg/nRtwk9sCfk73PO5ec6PrkQ==, tarball: file:projects/arm-datamigration.tgz} + resolution: {integrity: sha512-/FNRGEhuOQjVd0muvkj3qK9otyBZGGtyvd3Ag9IgzDdVAHJThd8sM6s0fMq7SOKnyGdxcoda7ejighGcNarnnw==, tarball: file:projects/arm-datamigration.tgz} name: '@rush-temp/arm-datamigration' version: 0.0.0 dependencies: @@ -14540,7 +14540,7 @@ packages: dev: false file:projects/arm-dataprotection.tgz: - resolution: {integrity: sha512-sgYyZ4N+dqNTke3Sv44Wf7QrB/N2QgfKG/1cssFfoue3xPByWVEoiWOp+XRg5tZMVSHmgb2du9huoluNGpRMFQ==, tarball: file:projects/arm-dataprotection.tgz} + resolution: {integrity: sha512-QAMh6pnRsDMLm3WFmfn6quhhvNOdDIrSvCazlxcAl20UtEZy3Up/9QfCU7js/v9Zq7HENW1trNtdjWxKP4ow0Q==, tarball: file:projects/arm-dataprotection.tgz} name: '@rush-temp/arm-dataprotection' version: 0.0.0 dependencies: @@ -14571,7 +14571,7 @@ packages: dev: false file:projects/arm-defendereasm.tgz: - resolution: {integrity: sha512-ROaU9qdvQ4Mp8FErQmnzDXLlK24fowwMHpWWaBFkrvYO/lSD4dXtI7Fu6D4YzvyI/sf6BrBVwaKFh5bjTcXgAg==, tarball: file:projects/arm-defendereasm.tgz} + resolution: {integrity: sha512-jdeD+y40c+WsExckOAJQlEkcJK5XPcd0m1eVUEAT5DNizWCxK3SKi0He9Skol/DUnqLYo8rIKiKmQSSD68mGmQ==, tarball: file:projects/arm-defendereasm.tgz} name: '@rush-temp/arm-defendereasm' version: 0.0.0 dependencies: @@ -14601,7 +14601,7 @@ packages: dev: false file:projects/arm-deploymentmanager.tgz: - resolution: {integrity: sha512-L5T74sbbIbvcU5hl1fYzI6Mp6F9Vt3tz2BfRrkzJI176XmuB6+sI2i9A7gLyQhxts1kgp65mELFN0jpBTKIigQ==, tarball: file:projects/arm-deploymentmanager.tgz} + resolution: {integrity: sha512-Yi7f/RE328PSdv8iYQ53a5/sVlXzt3a6TEzvHrsZOJ3e0mFZ6/KOy/X2+vEWWQsAdMbBsClrJbtaz0pxu/dEfQ==, tarball: file:projects/arm-deploymentmanager.tgz} name: '@rush-temp/arm-deploymentmanager' version: 0.0.0 dependencies: @@ -14630,7 +14630,7 @@ packages: dev: false file:projects/arm-desktopvirtualization.tgz: - resolution: {integrity: sha512-63fbuh1Elv9bErYNzaeL3E/e/SpAX8rS5ZEo840VlOGsRau/58shIAgr6nkAe0mq7bSA/clYpE6t9t3pxcVZiA==, tarball: file:projects/arm-desktopvirtualization.tgz} + resolution: {integrity: sha512-eL5RX+9Jx99cv/fxmX1uuH4XyqNSpZ5uY+YIXTtpkuQTCMmyDrSCvLK7Uoe58fDfjAa+Q2xJE/kzPubq155F+g==, tarball: file:projects/arm-desktopvirtualization.tgz} name: '@rush-temp/arm-desktopvirtualization' version: 0.0.0 dependencies: @@ -14658,7 +14658,7 @@ packages: dev: false file:projects/arm-devcenter.tgz: - resolution: {integrity: sha512-pjkcpXIXhJsqdievn9pQi/hsFqQfnxhygVRwWeYLn6HNValjZvbVNt+9kw6u7/SOB4LC9abudIDr0Z+JyZFixg==, tarball: file:projects/arm-devcenter.tgz} + resolution: {integrity: sha512-Y8FdhWDpBujRLbe7SF2wgGsClyhGuF5vcJ1pYpTDNBmfh5Nnw0D9I3rD1eu9r+gyAq0nwShKDC9WZx/OtZqAxw==, tarball: file:projects/arm-devcenter.tgz} name: '@rush-temp/arm-devcenter' version: 0.0.0 dependencies: @@ -14689,7 +14689,7 @@ packages: dev: false file:projects/arm-devhub.tgz: - resolution: {integrity: sha512-rKgyGIvSh0W5oXjOhvnma9mFnTlBfX+V5vMnl9ZkqhDrWIUUlHB8RW9gidPtFjTPrZAWaWrHqbCX09KvPOX4ug==, tarball: file:projects/arm-devhub.tgz} + resolution: {integrity: sha512-Yjw9ANAojxReo2LjL07gBSat1NCPMKiaKIX77VFRooTQNd7baPDxsQ9T7rOO+dpdGZ0a9Yq9xKkLxXndA8xPCA==, tarball: file:projects/arm-devhub.tgz} name: '@rush-temp/arm-devhub' version: 0.0.0 dependencies: @@ -14717,7 +14717,7 @@ packages: dev: false file:projects/arm-deviceprovisioningservices.tgz: - resolution: {integrity: sha512-K84GOD5aW9q09OqBKnKCrT0C7upIdPHPno09FfZ+OqOQJ8dW4UB7Px+4LXr6l2Ft5ThvzMTSX2zzkASvfKeIyA==, tarball: file:projects/arm-deviceprovisioningservices.tgz} + resolution: {integrity: sha512-nanv2oHzu23fby8Z9KZOfZpqETKOWuBUXy2qInZQZWXfIdv3zHPVcC9wnw0Wm+HJR1RH8yCKajDP3zK9fDVPyQ==, tarball: file:projects/arm-deviceprovisioningservices.tgz} name: '@rush-temp/arm-deviceprovisioningservices' version: 0.0.0 dependencies: @@ -14747,7 +14747,7 @@ packages: dev: false file:projects/arm-deviceregistry.tgz: - resolution: {integrity: sha512-7esVDgi9xVNSLSWOmFlBU52D7gdM1G3BVAFO+D54RTvFOMSceura1poPVsyXkaMEpuLG4JvqBnD73lahcsPSeA==, tarball: file:projects/arm-deviceregistry.tgz} + resolution: {integrity: sha512-MC1GAJ5+eTLg5jYCIFKG05g9k6b4BLcle+cRhrdK8ug6gPrDgUuFYtfhavMMLDjB5S70TSjuKP7iz6EaVqCRdg==, tarball: file:projects/arm-deviceregistry.tgz} name: '@rush-temp/arm-deviceregistry' version: 0.0.0 dependencies: @@ -14778,7 +14778,7 @@ packages: dev: false file:projects/arm-deviceupdate.tgz: - resolution: {integrity: sha512-tkLkqNtAKlL//CZLIthAh0zz7ubE7aTpzH1gZpynTxLmElfao+2mhqvn+wnSQ9H4MIZCWu/Je4CjJaWkQ2hBWQ==, tarball: file:projects/arm-deviceupdate.tgz} + resolution: {integrity: sha512-Fi87j42fzx7EAKXWBiIgUDz+cL8QIG19kNbPEJnCUnroZT1CgePW+0TBTMTpdy0XHDqrzJTdkv60HJGSNV6OPg==, tarball: file:projects/arm-deviceupdate.tgz} name: '@rush-temp/arm-deviceupdate' version: 0.0.0 dependencies: @@ -14808,7 +14808,7 @@ packages: dev: false file:projects/arm-devopsinfrastructure.tgz: - resolution: {integrity: sha512-ccrIS68bDVShagHR/K7bAktyfPIYQk2toFSwPha7pxsCwKYbBie0xyqyaRJf56F9ugIBBWs2GGl5GUoyVh00lA==, tarball: file:projects/arm-devopsinfrastructure.tgz} + resolution: {integrity: sha512-uLfSmRkBvgM/BNZeE4Og3nR1nthkDOLsfNfilOaCOt82XavON+qeM/thVTSYjQUqlW1sN6M+/mTAGV3IbGHFTA==, tarball: file:projects/arm-devopsinfrastructure.tgz} name: '@rush-temp/arm-devopsinfrastructure' version: 0.0.0 dependencies: @@ -14839,7 +14839,7 @@ packages: dev: false file:projects/arm-devspaces.tgz: - resolution: {integrity: sha512-Ix60GT+8pCNlR78O/DCH6lp44rlu8GxCjm/DaUYkLy5noAcF4n6qufOFP5URt9SVNPqCI+jIt1IV35dYaGWiTA==, tarball: file:projects/arm-devspaces.tgz} + resolution: {integrity: sha512-V6pn0ljyLRLiGv2tP6ttNPqZWD4Ln2/flqCz5dsxKv6tXKlFjZaDFbaqkcd5HXlyo2a1m8RKEJKyEQws8P8l9w==, tarball: file:projects/arm-devspaces.tgz} name: '@rush-temp/arm-devspaces' version: 0.0.0 dependencies: @@ -14868,7 +14868,7 @@ packages: dev: false file:projects/arm-devtestlabs.tgz: - resolution: {integrity: sha512-pct3yESkYzm6mOCTHRkIM1DX+WyS06a7AAaHVW+9yxOKRnSaHu22BKNSAFMABAOv5T5PtKVOXSjplfnZtf6a6Q==, tarball: file:projects/arm-devtestlabs.tgz} + resolution: {integrity: sha512-v0OynTI0c0Lytqyx5x4bCW/laQTF/yWZrsu7lH3eSo4Ri05hLXu6xGZd7ktUcsbeDfufDpRK7uLu2xXKR+AIcA==, tarball: file:projects/arm-devtestlabs.tgz} name: '@rush-temp/arm-devtestlabs' version: 0.0.0 dependencies: @@ -14897,7 +14897,7 @@ packages: dev: false file:projects/arm-digitaltwins.tgz: - resolution: {integrity: sha512-y7lmO2dEETJ7gfdSGuLjkNNerJJjP2ehsiXeOu5lEeHjelSBZpq5eovSGiC2SSAsJYhgjBnPa8FezxFgal1ghw==, tarball: file:projects/arm-digitaltwins.tgz} + resolution: {integrity: sha512-ksbql7mYLO+qVGFtYns9eW5MhaxsEkyGYZ+6xCTEMdqpX1dIwH7PiGKvnYVKReS0aP6POx9EcXmqxeved+EclQ==, tarball: file:projects/arm-digitaltwins.tgz} name: '@rush-temp/arm-digitaltwins' version: 0.0.0 dependencies: @@ -14927,7 +14927,7 @@ packages: dev: false file:projects/arm-dns-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-ePWpgoHU8/FVEf+ELp8TFJHGazelT802wthozBu7TOHmKhWvIrVn7PWsbJqHJ+0Tq/7uw6Fn3eYXzFwa+Qu/2Q==, tarball: file:projects/arm-dns-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-WUlWtWISz4noyl/K9DEDzVklAcGQdv/Vrktil9V/mlkPFA+9zNMQITDp1KJ5ecg/bzMheV3M+zGvcLwTVbns9w==, tarball: file:projects/arm-dns-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-dns-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -14957,7 +14957,7 @@ packages: dev: false file:projects/arm-dns.tgz: - resolution: {integrity: sha512-GtoItqsDySJp4zPNT7MejyLTapT25UHlfecIoEj+qmBbFMCbpiFDstik7OOT1MAJJldMrMbYPkTlBVerayTFpQ==, tarball: file:projects/arm-dns.tgz} + resolution: {integrity: sha512-cNoeVEY8Tqk/FrQTkxrgM0CLQ6Dw0lZf/SuOc00yzpvmbP5r+Ln+VyW0LmjEAHJuU+Wa7WXSXM9bccphSdB2Tw==, tarball: file:projects/arm-dns.tgz} name: '@rush-temp/arm-dns' version: 0.0.0 dependencies: @@ -14986,7 +14986,7 @@ packages: dev: false file:projects/arm-dnsresolver.tgz: - resolution: {integrity: sha512-PrcOSx7aR21DS4BPf0qonWOQvA9hopXFvoLeHfccipcuv3d4xkpzmW7MXaXIUIMNvSFyXyt/kzn4YFOYuKI/MA==, tarball: file:projects/arm-dnsresolver.tgz} + resolution: {integrity: sha512-gep5ujkJodPYfKnKyThoq+x9Km167oO7dAVXOUY9HJGwMgYQCughc4+/OnVblnrgWaOKdWCM3jXZCH6BpSdcQw==, tarball: file:projects/arm-dnsresolver.tgz} name: '@rush-temp/arm-dnsresolver' version: 0.0.0 dependencies: @@ -15016,7 +15016,7 @@ packages: dev: false file:projects/arm-domainservices.tgz: - resolution: {integrity: sha512-uHynBgqPkFhSYw2BCNGIRvFv5elnw/VaZk6AmZzpwrIB7OmeKB2/NNaIKVkU90rqziK5Tavn9u20HHtfTvSS7Q==, tarball: file:projects/arm-domainservices.tgz} + resolution: {integrity: sha512-BeSrIwwzJ8e+JQsXWbi4r+B7/UCU0aE/hoM3J2ZSM7thEjqjyTUVUF2up0BBCeb6Eujp78i8gwjx9kDKg+m6Rg==, tarball: file:projects/arm-domainservices.tgz} name: '@rush-temp/arm-domainservices' version: 0.0.0 dependencies: @@ -15045,7 +15045,7 @@ packages: dev: false file:projects/arm-dynatrace.tgz: - resolution: {integrity: sha512-MnAUN6KLUFLyFH9VQXm7hp9U8/HfVCQfG60PycCeuNeOksOXdGExPM6kmgPQ0N6g/ObDGcnEY+PR+QZfEHMbVw==, tarball: file:projects/arm-dynatrace.tgz} + resolution: {integrity: sha512-oANyRy8KFipAz2ZDwNR+e7vfeNDXhJ5UUJdDZPgXEMHMUB0VIaqk8iqAxKORKOgv3mB6Au2KQkclGHixmu0opg==, tarball: file:projects/arm-dynatrace.tgz} name: '@rush-temp/arm-dynatrace' version: 0.0.0 dependencies: @@ -15075,7 +15075,7 @@ packages: dev: false file:projects/arm-edgezones.tgz: - resolution: {integrity: sha512-v2qyQorhkPdU1pEh7I9mFAf+3GfQ8NKI583ib++GyTC3p/mJyWTYQAJRf9fWcWf+TTjRFsW1LmJrSs0Hu4n+Tg==, tarball: file:projects/arm-edgezones.tgz} + resolution: {integrity: sha512-+2e56zkHJG9Ou50fgKhbsrFsC9dDv89ATAItBeDTG5KAlnUcJC2heml5HZK0pjLlIal3qqoCFvQ5GbJvK6TDnw==, tarball: file:projects/arm-edgezones.tgz} name: '@rush-temp/arm-edgezones' version: 0.0.0 dependencies: @@ -15116,7 +15116,7 @@ packages: dev: false file:projects/arm-education.tgz: - resolution: {integrity: sha512-3amM+xuI6cykJGZyTKhXHmTNfRw/J4EYp08XAwub4kpqH5n0+z38LWjhoI//hHuQFVsLZ4Pozims56icgUlrHw==, tarball: file:projects/arm-education.tgz} + resolution: {integrity: sha512-VHgBprarm44/UbR4LULw2dxW5L4sf2b0sIXOf2VIVqFlgbxDT7HTkCWPZeTso2cGutQH020PQxnfQ2MogWVeSg==, tarball: file:projects/arm-education.tgz} name: '@rush-temp/arm-education' version: 0.0.0 dependencies: @@ -15144,7 +15144,7 @@ packages: dev: false file:projects/arm-elastic.tgz: - resolution: {integrity: sha512-S8rHkUXxXyeyUbRi3pU1JT8ECuFqfT5gXxK07kEchVdKKfCU5Dlxe3uuayxqSetuB931OACWksL5r0oSPzNK/w==, tarball: file:projects/arm-elastic.tgz} + resolution: {integrity: sha512-0+hpUWNMaoP/gT8V3pZTcTbRk4TctbkqRAgtksqaSdy7eRGlA0+AiJ6ykWHP0hg9OCZsXv66Z/PRB7H/EOVDMw==, tarball: file:projects/arm-elastic.tgz} name: '@rush-temp/arm-elastic' version: 0.0.0 dependencies: @@ -15174,7 +15174,7 @@ packages: dev: false file:projects/arm-elasticsan.tgz: - resolution: {integrity: sha512-BlEMVnmD+3jzmWPpvV0xMkGlqs4tz4NmdRAjl+EtycSetf19XpKwDEQbJHo5Z4yy4EE4ERDZzk6ksJXkvaisXg==, tarball: file:projects/arm-elasticsan.tgz} + resolution: {integrity: sha512-cPSiZfZ/20HItvSlkp64mX4CdWBLNfAwIkbYksQnmGr5oBPalJDHD/vAsFAVwEyEsSz80dBnC6fjQXXwE4u1MQ==, tarball: file:projects/arm-elasticsan.tgz} name: '@rush-temp/arm-elasticsan' version: 0.0.0 dependencies: @@ -15205,7 +15205,7 @@ packages: dev: false file:projects/arm-eventgrid.tgz: - resolution: {integrity: sha512-+RjW6GKKvhqUMuvC5uzbFTqvKlR9q43QRpNsKi35nXe6pqqaIivojqbxNxttM5jCaJhNxf2Y5slQKZEo/RFiSw==, tarball: file:projects/arm-eventgrid.tgz} + resolution: {integrity: sha512-V+vC8fskpaujJUOWdFIXTk0xzERVtMuxJolLTGi0U3C1MiSrGQPE5PujweesyfSlm+G+uNFfRAUV1Qv0hm+r8A==, tarball: file:projects/arm-eventgrid.tgz} name: '@rush-temp/arm-eventgrid' version: 0.0.0 dependencies: @@ -15235,7 +15235,7 @@ packages: dev: false file:projects/arm-eventhub-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-sPp9QJwT1ZhRwgJioU+4kdx05v2O4F7B+VHgFpkzK0redYN9pJsfjjDmLLtS4MLXl6Q/mg03I/G5tCkYzn1eiA==, tarball: file:projects/arm-eventhub-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-G1dabpx+gQql0rs/R5Ffxt+n7Z80mMagxqcOpeb1G8Q9YSnMhX56Wfpontoq9DDChfPaoLkijqv28c+iL8W3Uw==, tarball: file:projects/arm-eventhub-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-eventhub-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -15265,7 +15265,7 @@ packages: dev: false file:projects/arm-eventhub.tgz: - resolution: {integrity: sha512-Mil802lj1EHvYl2S/YV3mAubjIwchp8XBYt5HN/nDilw/MsIC9dbKFoa9lxSV0n1BsisQoP/H1FKxM3QgaJhug==, tarball: file:projects/arm-eventhub.tgz} + resolution: {integrity: sha512-n6D6i0XBsBIQ7hPnWL74IRmS83rXOCKNynzPd2FTdSvEnC8MwBZUhnBaZnCBKdrI68INxbFVd526whyM+jh31A==, tarball: file:projects/arm-eventhub.tgz} name: '@rush-temp/arm-eventhub' version: 0.0.0 dependencies: @@ -15297,7 +15297,7 @@ packages: dev: false file:projects/arm-extendedlocation.tgz: - resolution: {integrity: sha512-J/Y9g+tD5KoYQsL4smK0BQyVY9XNn29PRNO45SAZ2w+zeVAL7scDspHiUdn6Yx1QJz4ztPyR+Eq9OmdYKaO+WQ==, tarball: file:projects/arm-extendedlocation.tgz} + resolution: {integrity: sha512-krGJ9DPyirnmPixBoGMipAwnHfCQrErM+sM0NumGMe4wAJ9zXuLRFLEpqAqtEcEApPCtykjFh6JknpKVwu/cbQ==, tarball: file:projects/arm-extendedlocation.tgz} name: '@rush-temp/arm-extendedlocation' version: 0.0.0 dependencies: @@ -15327,7 +15327,7 @@ packages: dev: false file:projects/arm-fabric.tgz: - resolution: {integrity: sha512-z/L7iOtkj5NHCtLf5mD3zHqdAEGkrkoCPi6xM7p1QmrmSdT8DIlXyKN2/7g5zklySQDnFi6oN+ss1MJ11X1e7A==, tarball: file:projects/arm-fabric.tgz} + resolution: {integrity: sha512-4u6kKh1l8jg7Op7TgZ01rDJOQ+syARzRYjz0QfLkD2vL+ZDRDd3tVP8pgIvlmdMfrn6Jz01ZEJzsIWuGUr6GMw==, tarball: file:projects/arm-fabric.tgz} name: '@rush-temp/arm-fabric' version: 0.0.0 dependencies: @@ -15368,7 +15368,7 @@ packages: dev: false file:projects/arm-features.tgz: - resolution: {integrity: sha512-f7ciYuAP6IrDWhhPV8G4TcvlxsPw3LhQPHz4Qltcc/HJt0mukBdzwMztkCr+cOx4HW5vi5atUW0A8y/TKVUjLw==, tarball: file:projects/arm-features.tgz} + resolution: {integrity: sha512-iUtvMozoMBnZyUA1uayZiX+LXYTGXoVcuyRzsuvt07KV10csko/EpbqmcNcCz9uKrWjQetOKnbGmmTflBveWyA==, tarball: file:projects/arm-features.tgz} name: '@rush-temp/arm-features' version: 0.0.0 dependencies: @@ -15395,7 +15395,7 @@ packages: dev: false file:projects/arm-fluidrelay.tgz: - resolution: {integrity: sha512-dwffW5IROzrgFOqyLI1bAe0t0xnhMD15cl6Sdj5DkF6bzCNYdD3KF9Y1+pBdTUGu3ssLBni25v5QGY5SL9bHUA==, tarball: file:projects/arm-fluidrelay.tgz} + resolution: {integrity: sha512-Etl/SeURmlUubhR0Ob/D3CfQOzJ4u7MxstNciRUGqo02md8JeWqkPeXKmNFwdKHT5nvf/6DkZNNOtCEE0Av3Zw==, tarball: file:projects/arm-fluidrelay.tgz} name: '@rush-temp/arm-fluidrelay' version: 0.0.0 dependencies: @@ -15423,7 +15423,7 @@ packages: dev: false file:projects/arm-frontdoor.tgz: - resolution: {integrity: sha512-96aW16KXJae62lU4Pktin4qiP3KdaF5lOP/os9uyUFKM84ejYVGxK7SkoBrWBGTAi/2jR8+2hTs/OBTozMEh4w==, tarball: file:projects/arm-frontdoor.tgz} + resolution: {integrity: sha512-vKMvRmtgCZKMBNsY8f7nK7e3mVMAdODJS7ZqmQtSd2UVLmoIRt11ZvEoKSJpVboj7WVP9KMHnZdvhYZQE2Lpvw==, tarball: file:projects/arm-frontdoor.tgz} name: '@rush-temp/arm-frontdoor' version: 0.0.0 dependencies: @@ -15453,7 +15453,7 @@ packages: dev: false file:projects/arm-graphservices.tgz: - resolution: {integrity: sha512-ACaHUQ658CBmi788RY5wdXy3efeO8ifhgx8RYC6bxtrKkg8Y+RbdfsyKYr5qRtFWo7DgONuk8DoCyWbDK5ccUg==, tarball: file:projects/arm-graphservices.tgz} + resolution: {integrity: sha512-3NvfLQ03T72sfniuq9QhCd1qL/V9fxnLa+v6ihi+ECb9w+vHrpmseIdf9OyMucpFJ8Aw/3xoKURHcOAU+Qj1Ig==, tarball: file:projects/arm-graphservices.tgz} name: '@rush-temp/arm-graphservices' version: 0.0.0 dependencies: @@ -15483,7 +15483,7 @@ packages: dev: false file:projects/arm-guestconfiguration.tgz: - resolution: {integrity: sha512-54Exk1i4+TTB18+81gI9L1BF9HP+tP5XJ8ODYTbzlORRPySb5rwqbJqMiZwFlh9faDSNUb01NuXe7EfYcUGoeQ==, tarball: file:projects/arm-guestconfiguration.tgz} + resolution: {integrity: sha512-cA1FyNxt0pSSEU1S66JOFfxVu6XqvRNBQ2q7QwdoH3+oic3Wpm9tW0HeDic/Pzf1DqCiw91fpg4+/ws9CFX7uA==, tarball: file:projects/arm-guestconfiguration.tgz} name: '@rush-temp/arm-guestconfiguration' version: 0.0.0 dependencies: @@ -15512,7 +15512,7 @@ packages: dev: false file:projects/arm-hanaonazure.tgz: - resolution: {integrity: sha512-O3fMcEv1vM0bdXlP1+LArFrWvkzDEySXpA+5qM2bEz2vMBpuTYJ6NgpE5Ae9HMz1L2FksgeJPW6TVgZ4BAGC+A==, tarball: file:projects/arm-hanaonazure.tgz} + resolution: {integrity: sha512-bGd+gt1jDNuGL/Rm2eRj4XEvxEtEF8PiOv+SBhQ9agGH7zFTWipoVkYVjnHUU1vUzLyc+GUwcLIka2xO2gc7Vg==, tarball: file:projects/arm-hanaonazure.tgz} name: '@rush-temp/arm-hanaonazure' version: 0.0.0 dependencies: @@ -15541,7 +15541,7 @@ packages: dev: false file:projects/arm-hardwaresecuritymodules.tgz: - resolution: {integrity: sha512-WhMDge+HlNGk45vcZaUuo+yy7wptjaryc/zkRxGmU7e6vMMXuJ6Cb/qnIIjQnxhoqafmz71bV39MrZPGs9zFhw==, tarball: file:projects/arm-hardwaresecuritymodules.tgz} + resolution: {integrity: sha512-uv3Mq0PPI1ZgkGmfUT83p44xUO0PaUAeoUbRtExLlt8Jok+MBWxfnzUQWIfX6Rzq7PCnlmK1kWiKaTbvrPg18Q==, tarball: file:projects/arm-hardwaresecuritymodules.tgz} name: '@rush-temp/arm-hardwaresecuritymodules' version: 0.0.0 dependencies: @@ -15571,7 +15571,7 @@ packages: dev: false file:projects/arm-hdinsight.tgz: - resolution: {integrity: sha512-XvUPI6T8GT53As8dAq1BXnKHO3IlWrLfBGVuBud2zg3bK8RfzD+jMJm4fCwsnxaoPpbvzsKFJWRNtodyxEafIw==, tarball: file:projects/arm-hdinsight.tgz} + resolution: {integrity: sha512-zMrL7ofN8+te6KaIQmgTYzYMlHPHJRuFEEgHM8ZLuAimEW576RPs8KXvXwuofem4NQgWSc7bqUwK9Iu1P+6aog==, tarball: file:projects/arm-hdinsight.tgz} name: '@rush-temp/arm-hdinsight' version: 0.0.0 dependencies: @@ -15602,7 +15602,7 @@ packages: dev: false file:projects/arm-hdinsightcontainers.tgz: - resolution: {integrity: sha512-QAtB2Sb2TJO4cogGdUAi/Q7RgSbrynsqVRTxUGtnlfRFNlG0Lu+n8MftUWhmXLWAUdYyHLEY5pXWU5f41NY12g==, tarball: file:projects/arm-hdinsightcontainers.tgz} + resolution: {integrity: sha512-h+ps8HfICBAgLR44hUimb5E1+uXXoIH3JdG/2A3i7p7v42Ugx/sItLlA9fWNGIvPzjY4PgVU5I6MgvZ91Kop3Q==, tarball: file:projects/arm-hdinsightcontainers.tgz} name: '@rush-temp/arm-hdinsightcontainers' version: 0.0.0 dependencies: @@ -15632,7 +15632,7 @@ packages: dev: false file:projects/arm-healthbot.tgz: - resolution: {integrity: sha512-DQ80GrqmQ2QEVcNl1Yl9U4pHYwieUvE0lSd9KXiq2l2d2I/dAeUT9VpZ8i1EWlD2kqUyhRb2aAzG9pMbG7v+JA==, tarball: file:projects/arm-healthbot.tgz} + resolution: {integrity: sha512-+ArxG70DUfSapmVfsUS3+qtnoVYcGnjip2GZM0saz5+f0hZ22M8mt+hK8IXxTwV1FlputOllFK28VMasXnn32g==, tarball: file:projects/arm-healthbot.tgz} name: '@rush-temp/arm-healthbot' version: 0.0.0 dependencies: @@ -15661,7 +15661,7 @@ packages: dev: false file:projects/arm-healthcareapis.tgz: - resolution: {integrity: sha512-0KuF6Ft3w+wfKFcPFxLMj4YOiztGfU5pBMTuf6Q74owkZFewXGoIWKcppKsUWI3ap4EzA1SwHFIr3LsxmZ4RVQ==, tarball: file:projects/arm-healthcareapis.tgz} + resolution: {integrity: sha512-XBGaQMB4VgyAgGLpvJR9sq16/fF0jft7xTk5YuMo/RU/Fz44iBlqKxsLhkyApe6mX5ntExLzcPyx/+ClgvsblQ==, tarball: file:projects/arm-healthcareapis.tgz} name: '@rush-temp/arm-healthcareapis' version: 0.0.0 dependencies: @@ -15691,7 +15691,7 @@ packages: dev: false file:projects/arm-healthdataaiservices.tgz: - resolution: {integrity: sha512-tyUVQWuRSVdZRjkIIEh5b4fZckDMvvH7VO1rsKdnfXJ+4tNr3u4ODFAPPokAPxM7oh5dY9zDx4v3DlU8B2ykyw==, tarball: file:projects/arm-healthdataaiservices.tgz} + resolution: {integrity: sha512-doiKxRc+38oVx0Qt+lctNPslUlNkW0blc5gXsZJz9pQbtd7TBjIqZarC+qVHMuz9YlmEqbzegwmBiCmo9w56Sg==, tarball: file:projects/arm-healthdataaiservices.tgz} name: '@rush-temp/arm-healthdataaiservices' version: 0.0.0 dependencies: @@ -15732,7 +15732,7 @@ packages: dev: false file:projects/arm-hybridcompute.tgz: - resolution: {integrity: sha512-A7+V6V2mM+iJkWIhyHHxwFwt5oGrgdlu4gcYutMpglOzI3GPtS8r9iQPQFEai8whcLa1KeT2njUD7TA4HLseVQ==, tarball: file:projects/arm-hybridcompute.tgz} + resolution: {integrity: sha512-GbBxQuYrq19FZ59UFShF5lBTkFwItJzW3WvsG8XqLOvSx7vLQYbVF66JoWA61Do1X5xnkWG1sfSFXH1Wi0oTMA==, tarball: file:projects/arm-hybridcompute.tgz} name: '@rush-temp/arm-hybridcompute' version: 0.0.0 dependencies: @@ -15763,7 +15763,7 @@ packages: dev: false file:projects/arm-hybridconnectivity.tgz: - resolution: {integrity: sha512-toWD1QwUpQt4nvOJ6qOkz7hKXktq+YMMTGlRA2pup/Plr1put0Hfmw4hZpb69la7oULK8OAvWMmrIMhkHpYkEA==, tarball: file:projects/arm-hybridconnectivity.tgz} + resolution: {integrity: sha512-a+0Rw4wx99bkMcZ2/pXvGnt88WPAYVCzx/6RIyMxUawfz7HbUU8J7NhXDhd6VYkyOeHLlv1PT+JzKpxCWvky4g==, tarball: file:projects/arm-hybridconnectivity.tgz} name: '@rush-temp/arm-hybridconnectivity' version: 0.0.0 dependencies: @@ -15791,7 +15791,7 @@ packages: dev: false file:projects/arm-hybridcontainerservice.tgz: - resolution: {integrity: sha512-Ch0B+r0E5lcafqv5mJtERBZ2h/CTci+qi7UH6ERV312+H4i5AHiCAlM9QGuEYbvy/lxf03oqPY0hv9550c+mUw==, tarball: file:projects/arm-hybridcontainerservice.tgz} + resolution: {integrity: sha512-lQu/RLkt4xTxb0/ULu0NgTk/3DDP6Cy83qupaQ7hbxARXILPjEsekIhPpyLDqyr58h5kaFOm5qfMpi/cuC7ocg==, tarball: file:projects/arm-hybridcontainerservice.tgz} name: '@rush-temp/arm-hybridcontainerservice' version: 0.0.0 dependencies: @@ -15821,7 +15821,7 @@ packages: dev: false file:projects/arm-hybridkubernetes.tgz: - resolution: {integrity: sha512-A1KwxoKJj/A9qMsxA4eCbKwi659yvvc8ZDDgM0FHpB8+89nK4qlBEyZeMb+/JjuhG0yqY5F2jbEUHeD7X+13Jw==, tarball: file:projects/arm-hybridkubernetes.tgz} + resolution: {integrity: sha512-fzcQSxgmL/OD8xu4fFtRjNA4pm0njzVzm5bnM+efb4cln/U6RCFiH34AX0u6OSUCLEyMFb1aLqUiz1xYKvFknQ==, tarball: file:projects/arm-hybridkubernetes.tgz} name: '@rush-temp/arm-hybridkubernetes' version: 0.0.0 dependencies: @@ -15850,7 +15850,7 @@ packages: dev: false file:projects/arm-hybridnetwork.tgz: - resolution: {integrity: sha512-TKOU3765APfF1sXCtWFmS9kkAFlLFu18lc7ABS8GWlnXLAjDCvGVCezXZzpqMLNsTN5acwUXlnyNj3+Tlsai/Q==, tarball: file:projects/arm-hybridnetwork.tgz} + resolution: {integrity: sha512-UqabuG49toOIivd0LnUDv2D8YMuC1cDaqfNx6wGTp2MC0E4DwSwUhtjnM8dFr2j1T2QqZuUL2IYm6lTvv/0gHw==, tarball: file:projects/arm-hybridnetwork.tgz} name: '@rush-temp/arm-hybridnetwork' version: 0.0.0 dependencies: @@ -15880,7 +15880,7 @@ packages: dev: false file:projects/arm-imagebuilder.tgz: - resolution: {integrity: sha512-+vGAgUGPlPSaN21fzMWrEZmx+AZWsdYRpByPeMhTwYhfVi4uzbdXyTpOVaMkxaqS0hhrxyRE5ZnYvwvcZT2dlA==, tarball: file:projects/arm-imagebuilder.tgz} + resolution: {integrity: sha512-bgOd8CWBMnqkGsqB9Uv7u6+D8ewJNMB7vGI8+jG9hqCTJ7kTWAZj/NsdyO9mou9sZoBx7hNjalnUfDbKeHK02A==, tarball: file:projects/arm-imagebuilder.tgz} name: '@rush-temp/arm-imagebuilder' version: 0.0.0 dependencies: @@ -15912,7 +15912,7 @@ packages: dev: false file:projects/arm-informaticadatamanagement.tgz: - resolution: {integrity: sha512-i2CziwTSBg8j5RhNjNmpP/LinKwwy3eyQT8oufZsfgw7p6jpIpxcs2P5Ra6DV5/pfBZ5/6esUY8Vqpx1kHYF2w==, tarball: file:projects/arm-informaticadatamanagement.tgz} + resolution: {integrity: sha512-8mCDe8/jbidJ8nwzpfnDp24JUTnvEDDIRwJUxzkWATcYLWkeCa/LssuPFJ5t3bgrF5bk190K+a7WSyp89LtoQQ==, tarball: file:projects/arm-informaticadatamanagement.tgz} name: '@rush-temp/arm-informaticadatamanagement' version: 0.0.0 dependencies: @@ -15943,7 +15943,7 @@ packages: dev: false file:projects/arm-iotcentral.tgz: - resolution: {integrity: sha512-S/L2FGlf085ipWUHAhJ3fvhYCWn+9KBXghnVsCz8AJd5xwinrBk8McdtTsufGvgeSstbi9jVJQeaxhpu9QGUlw==, tarball: file:projects/arm-iotcentral.tgz} + resolution: {integrity: sha512-2D521hNDRACnuDvTPLQnvWHGwJcrdZk4Fc5xijIOr+l3dKIJ4vTpKXaFVU/v4ft3bZcjJIjxLr9XnQ6f0KMnGg==, tarball: file:projects/arm-iotcentral.tgz} name: '@rush-temp/arm-iotcentral' version: 0.0.0 dependencies: @@ -15972,7 +15972,7 @@ packages: dev: false file:projects/arm-iotfirmwaredefense.tgz: - resolution: {integrity: sha512-roRyeym+QIWhzqB0KXnMiMldmUD966AITQr7wx++Gd1TH1Ox1CDg9UkGWvgqsRA4I7upSLBfJa8/931L6ZUMEw==, tarball: file:projects/arm-iotfirmwaredefense.tgz} + resolution: {integrity: sha512-KvY9/ulvRGT+nnUKLcZ4xvAJG/wayvAIeuMIBo4Z8CxClUkGIjwVTpsqiU3DkLRvnZ7U4hr2QPM9wxblC6oKTg==, tarball: file:projects/arm-iotfirmwaredefense.tgz} name: '@rush-temp/arm-iotfirmwaredefense' version: 0.0.0 dependencies: @@ -16000,7 +16000,7 @@ packages: dev: false file:projects/arm-iothub-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-9p4Psf6Q7zHS4UWcwAAWgkXbRxQRTyu3HOqE7+7PKk4tkN0876cHgM0gSxnFoHXKnDscQhl2ZaXJyQjvRKUf7g==, tarball: file:projects/arm-iothub-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-HlPbflppVL5rbwqZ+F7bUBcLakK06k+6JiwlZUuzq7W8hqekpCyM2Yj0isVZjIgsqnRqxUqWexTXg3Dx0rcH5w==, tarball: file:projects/arm-iothub-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-iothub-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -16030,7 +16030,7 @@ packages: dev: false file:projects/arm-iothub.tgz: - resolution: {integrity: sha512-GDWMfgWejcd92dDdM1KyoeNkpgyx4WSUxutN8swNawRNJYT5+79whhcu2qmd0RbxihyEXkl6eYd8t5oycIAiYw==, tarball: file:projects/arm-iothub.tgz} + resolution: {integrity: sha512-ZGt1udk09jEQyMeceUkptI04ybH2WE4G0Htafng6Vq2107kymYtHmgsZUuT/eZCXIRceVWEKyvmHpvA0lUdHlg==, tarball: file:projects/arm-iothub.tgz} name: '@rush-temp/arm-iothub' version: 0.0.0 dependencies: @@ -16060,7 +16060,7 @@ packages: dev: false file:projects/arm-keyvault-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-M5CO2jCGaHi06jeamT94/CDb/tg0XE803bfDDaMlnT2qymaapX5N5UVKhkvD5GAJwGRuNWFbfkmqrgh4e8am9w==, tarball: file:projects/arm-keyvault-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-FzMoxXhLTjGCraaNF0se2eYdVZ5Zr6fw0I28sCzEqFTOxJ1mGkWW5GWkIfSvNFLkvcQIyRPEwR4LgWK8fgFJng==, tarball: file:projects/arm-keyvault-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-keyvault-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -16090,7 +16090,7 @@ packages: dev: false file:projects/arm-keyvault.tgz: - resolution: {integrity: sha512-GrAcYI1zUjT62D2FT7LSERerJlENsfhSU8lxob8JGELfBuR+55a2crllastCyE49Ztl996vo+mlxJEWgWniZ6A==, tarball: file:projects/arm-keyvault.tgz} + resolution: {integrity: sha512-4pdnv0Eksjyz3vyzcU1UJFHLfRIjCft2ZmldR7LGf8bUwQF7gkdE3G7rt0GqPuDrl6hHZjZbrKT89PEDQyYsEA==, tarball: file:projects/arm-keyvault.tgz} name: '@rush-temp/arm-keyvault' version: 0.0.0 dependencies: @@ -16120,7 +16120,7 @@ packages: dev: false file:projects/arm-kubernetesconfiguration.tgz: - resolution: {integrity: sha512-jZGiOFKHxeiWcResE29LFmwEB3zl41e1cJwpKXyhncUpQOPN4llbj0RqScgnTGee63QZMbZEudyIGeN/TTzg+g==, tarball: file:projects/arm-kubernetesconfiguration.tgz} + resolution: {integrity: sha512-HfU8LcbWaeQjuFlsEZv2AS2lUHPe398ZrqDdxyTTWgfwkBSLOiiUPJZsLy2ORuueY9ENCIocUwqE8BqQieQErg==, tarball: file:projects/arm-kubernetesconfiguration.tgz} name: '@rush-temp/arm-kubernetesconfiguration' version: 0.0.0 dependencies: @@ -16150,7 +16150,7 @@ packages: dev: false file:projects/arm-kusto.tgz: - resolution: {integrity: sha512-689AavaHrysNgAtoZ4Sm5uUWVGRLxBi8EcWu4/dBMnS0gJ/GAHJrSAmMABQ+qGxBzLfaX3AHvHcX+FhpG6CCmg==, tarball: file:projects/arm-kusto.tgz} + resolution: {integrity: sha512-ww+EgAkR+0hQ3d6lEMiUHxKoWGuJQTpjuU9cjxUyyOTgVD1vZFxi7BQdPeHrD5x7fbaOyqKYTcHygpOItL8v7g==, tarball: file:projects/arm-kusto.tgz} name: '@rush-temp/arm-kusto' version: 0.0.0 dependencies: @@ -16180,7 +16180,7 @@ packages: dev: false file:projects/arm-labservices.tgz: - resolution: {integrity: sha512-qwonIVw07NCdoojfY+fUQICI+OppdVZ+QzuBMv91fJKVR0Ol67AoMrNXtVkvKigwMa8mVjORLreT4ZEwrDGNFw==, tarball: file:projects/arm-labservices.tgz} + resolution: {integrity: sha512-kNvQmjKo4RehFKDEvTAKVvmNYkcgBrrgIrQ1E5DvbHtY5lWhQ5DET3EnsGdipwHUr+KbzvU3+nHE+w+5zG4yjQ==, tarball: file:projects/arm-labservices.tgz} name: '@rush-temp/arm-labservices' version: 0.0.0 dependencies: @@ -16210,7 +16210,7 @@ packages: dev: false file:projects/arm-largeinstance.tgz: - resolution: {integrity: sha512-iEjio4MLyEkQp+luSyvOyMT8a3q4GKbrtmq/ehi7zpk4uToVKEVuYyVylIRf4Eh+ciaLmxRroT5ruXw7MsFLsQ==, tarball: file:projects/arm-largeinstance.tgz} + resolution: {integrity: sha512-drD8yv8Ja+Z3dAmA4FfSBntGV8RMZ7OtIdx8F6TQFLgRtBjAEVKm9Hk/DvMlQJnv55qXXFHpYKWYgIrJZin+Yg==, tarball: file:projects/arm-largeinstance.tgz} name: '@rush-temp/arm-largeinstance' version: 0.0.0 dependencies: @@ -16240,7 +16240,7 @@ packages: dev: false file:projects/arm-links.tgz: - resolution: {integrity: sha512-rx7ZkivNlhfJW5ERvq1o12dC9jiOyGfU2g+UJsCvy/FV2ewjcgSwvHi9+iQ8DElgQNQaYvD2P0mTjbbo3Z8f8g==, tarball: file:projects/arm-links.tgz} + resolution: {integrity: sha512-M/ShkqTnPESJ7vHfHfToVqubiGCXA6oETnYcf1amuctOuJBD5aB5DzBlX6SJvVrwR0qLzCcKNlZYDBz0+GYmDA==, tarball: file:projects/arm-links.tgz} name: '@rush-temp/arm-links' version: 0.0.0 dependencies: @@ -16267,7 +16267,7 @@ packages: dev: false file:projects/arm-loadtesting.tgz: - resolution: {integrity: sha512-1Fdzhu000nxPJjVkKeDt7h1VgD1COGbOCkWpcxH3kPvyAKV8Egk+uYCcuPVye3PEymH50qMnsVnZNud0xAjVog==, tarball: file:projects/arm-loadtesting.tgz} + resolution: {integrity: sha512-szrfSA6Jv3cCx9CpIDzvbtNYahMosoUs+eyRwKTPHyUHtxB11eUqCuaOABEVwHnjKPogrndppPmKZkqLZPqvHQ==, tarball: file:projects/arm-loadtesting.tgz} name: '@rush-temp/arm-loadtesting' version: 0.0.0 dependencies: @@ -16296,7 +16296,7 @@ packages: dev: false file:projects/arm-locks-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-PtfNgc4B8DcUHVpn2xDvz21SRbkXdHwvEjX9D8daagbSHmnZq/JT5Vzg6jFaQE6oFt6uqNuA40DSNK74cGAtfA==, tarball: file:projects/arm-locks-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-1Z3p5AmPTCU65/lO0MAyXx8Tl3YiFhw/uj7pMocYHHx4/GSYtNH5dlYBv0gJL4qGQhTVQzhARrq9zyvpRKNbqw==, tarball: file:projects/arm-locks-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-locks-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -16324,7 +16324,7 @@ packages: dev: false file:projects/arm-locks.tgz: - resolution: {integrity: sha512-b5vjzRQo3jKDsNupC/S8CnCszmbDkOkuYwkpdPt0D7uU9GiwdbpFOhkYMa61O/B3Ap5pQIaSzzBZS7zdiYJUaw==, tarball: file:projects/arm-locks.tgz} + resolution: {integrity: sha512-dz1Mi5cEB9bZsAFcfFfuvG5tWFxqSiG9YUMVRmziFB0zfpPVwfFRxr8KWKKE/n1zG2LWAI+7PCacwwkHDXlzzQ==, tarball: file:projects/arm-locks.tgz} name: '@rush-temp/arm-locks' version: 0.0.0 dependencies: @@ -16351,7 +16351,7 @@ packages: dev: false file:projects/arm-logic.tgz: - resolution: {integrity: sha512-Pipoi1SJt+gmNB0ZyyTKJIk4FP/dYea3LysN/bkM1mh1+dmKhelf9dWJOO/itjXgnjRaHCbnnEEPjHUlyKfU7A==, tarball: file:projects/arm-logic.tgz} + resolution: {integrity: sha512-jDteyY3Lc1svP9ii97wF1BgJrww5QmdWhGY37EKKAtwN+JxHVXQtKOn2rYuPVZ/0J/J2cZBhuLGPl4zdth6CxA==, tarball: file:projects/arm-logic.tgz} name: '@rush-temp/arm-logic' version: 0.0.0 dependencies: @@ -16381,7 +16381,7 @@ packages: dev: false file:projects/arm-machinelearning.tgz: - resolution: {integrity: sha512-4ouvVQUeU++VLv++AIepntQvXHoNspilDl3+v5hTFvHefl8PZCGRiL+NJhQTFGhkYnYQ48zwixOcXA2aWfCv3w==, tarball: file:projects/arm-machinelearning.tgz} + resolution: {integrity: sha512-wIB19ohpARdGZZUYL5WD6lZyYgSelyMW9YUfOiR+uYfN6G95+oWc7Xz3KDZuFSbJOXU3vSlqADtVbYBP3kPjOg==, tarball: file:projects/arm-machinelearning.tgz} name: '@rush-temp/arm-machinelearning' version: 0.0.0 dependencies: @@ -16412,7 +16412,7 @@ packages: dev: false file:projects/arm-machinelearningcompute.tgz: - resolution: {integrity: sha512-xFXNGqAGc1b3eizVo0MgSZGBmRCPCXVHSRC/ObP+mRfHvUT2Lu5Kelx5O3ZTUIhxdCj4xUiMGgfxVnXfkSjjzw==, tarball: file:projects/arm-machinelearningcompute.tgz} + resolution: {integrity: sha512-cvPobu+1EnIzvSHACDZwHFzpR8FR8Q5k52UgAH1h+8/vpH0g32MjaCg5nVblDD/OMDC28Fa15lKhzlEndKJMKw==, tarball: file:projects/arm-machinelearningcompute.tgz} name: '@rush-temp/arm-machinelearningcompute' version: 0.0.0 dependencies: @@ -16441,7 +16441,7 @@ packages: dev: false file:projects/arm-machinelearningexperimentation.tgz: - resolution: {integrity: sha512-P1txVffFiVlbcx/2GuMBAIreY6zs77rdkuPEX3vtHQ4ToA4MTJgVHRoCe8lRM+IvFdmxn8pq024J1QSe7F6Rjg==, tarball: file:projects/arm-machinelearningexperimentation.tgz} + resolution: {integrity: sha512-JkfrEtaqwMlSQ166826l623lc7UCNAm4k/3fUNDXtAjDk/2MxPye5cZfcqI9DIfKGaMa2PWbA61Sqlb2UvyCXg==, tarball: file:projects/arm-machinelearningexperimentation.tgz} name: '@rush-temp/arm-machinelearningexperimentation' version: 0.0.0 dependencies: @@ -16469,7 +16469,7 @@ packages: dev: false file:projects/arm-maintenance.tgz: - resolution: {integrity: sha512-k8RDoMl1Kuoc634KQfLEvmT/EWuVRqkA70dlsf+70YYPHLuP2KHmV7QMPrBYl4DrzPl6bHJdSaNcBlz64rGtLQ==, tarball: file:projects/arm-maintenance.tgz} + resolution: {integrity: sha512-rIM4/4JoWUn8S1hX1LWYlz5v+cGT46mxD7w0TZOFwU4UpZPJLUia+b4iVTrcpSYUftINi89WplW7bLm79Nnm3g==, tarball: file:projects/arm-maintenance.tgz} name: '@rush-temp/arm-maintenance' version: 0.0.0 dependencies: @@ -16498,7 +16498,7 @@ packages: dev: false file:projects/arm-managedapplications.tgz: - resolution: {integrity: sha512-F2MyIKu6zWhsy41KaNumSn02/LFa9IGX9lwdfTCEg3lJsN4azhyPjvHdH15gQ4HAp0+eOiSWldtkgDk/PLhHqg==, tarball: file:projects/arm-managedapplications.tgz} + resolution: {integrity: sha512-VyBqKlv/NSRFT9xpGm+ewqepHIbZwf/LALuoN5DQeZUixkCJt1BlyYIBX7k1n/kl1wW7qCf/qhUOipEb34AbPA==, tarball: file:projects/arm-managedapplications.tgz} name: '@rush-temp/arm-managedapplications' version: 0.0.0 dependencies: @@ -16528,7 +16528,7 @@ packages: dev: false file:projects/arm-managednetworkfabric.tgz: - resolution: {integrity: sha512-bPk5XVaEUO0zXb9yaW2Hj9Y/pG1iL/LYEO8nDpQgEHwuHCYeM/swIdmdr1Rst3Uo3zzN+/ew7zqZJ8QTPUHnFA==, tarball: file:projects/arm-managednetworkfabric.tgz} + resolution: {integrity: sha512-SzoO/ozeP+oX9qsmS03zRPTHJYfsHa9mXa9xbG30mvzBDZFnfftRUEeiizeGDw0qKyykllEVdTFLZ6tiPyPzkg==, tarball: file:projects/arm-managednetworkfabric.tgz} name: '@rush-temp/arm-managednetworkfabric' version: 0.0.0 dependencies: @@ -16558,7 +16558,7 @@ packages: dev: false file:projects/arm-managementgroups.tgz: - resolution: {integrity: sha512-Rwe6B3BbES8Hz0QVLsteOgXL/beMxNi107qlQGxbh30VHPzYLBtdccHPhwSq62QvbWcVyIPchcMACdgz1S0j/A==, tarball: file:projects/arm-managementgroups.tgz} + resolution: {integrity: sha512-oJM0IeWubpGBkUHv9B4FmE3B/EKI6I5IbB5IcuXIWJkgquYgDiKI1LyXEpqCGweU12i2vhZLbmEim9TtvjN9Rg==, tarball: file:projects/arm-managementgroups.tgz} name: '@rush-temp/arm-managementgroups' version: 0.0.0 dependencies: @@ -16587,7 +16587,7 @@ packages: dev: false file:projects/arm-managementpartner.tgz: - resolution: {integrity: sha512-kd3+k97PQpHgAfNIgJNBQ7TEIRXrwxZddxEErVl+rOCwRm+Y0AjSg/WtmaoMc87iY982AnTDg+HCSMQa4N8r6w==, tarball: file:projects/arm-managementpartner.tgz} + resolution: {integrity: sha512-OYrmWS6sAXGvoXO3+gJF37XBDlCRmaX94cV/bUlhdmVjI6Nb6mFchhk9/FMunTmL9yP6GLVGmclK30YafDI8/w==, tarball: file:projects/arm-managementpartner.tgz} name: '@rush-temp/arm-managementpartner' version: 0.0.0 dependencies: @@ -16615,7 +16615,7 @@ packages: dev: false file:projects/arm-maps.tgz: - resolution: {integrity: sha512-EBCgiitVtdwiTXYU+bQl8G8MMa87FBVnL6uxNK4Fve8hjxVJM8Rec1gT1VEIsBCoIRzEJDxxF3Cgtq+QnR7EDw==, tarball: file:projects/arm-maps.tgz} + resolution: {integrity: sha512-gGA7A8o8MoXMMVZTlk6DYqRRab/ImhHlcwVBhy8Zbdtgm82OStiA2nwSIHMEoP/j/TPXVC69dOBgBKy9OINK0g==, tarball: file:projects/arm-maps.tgz} name: '@rush-temp/arm-maps' version: 0.0.0 dependencies: @@ -16643,7 +16643,7 @@ packages: dev: false file:projects/arm-mariadb.tgz: - resolution: {integrity: sha512-oPXvkTJpAHzDYcEpsh5jc8zxUB6xLl0R/DrC5uzqq09dR4WZjEUsvb49nE/ze8xSQHfrlZCq6Q37Y5tzdapyNw==, tarball: file:projects/arm-mariadb.tgz} + resolution: {integrity: sha512-NxX/JPWcsKpqVcNevLOzMWdbX5YY64cnJLQSo552gyxrvodMDDGaXUjGuUYs8Cvg0uq9RfyI4HzSsQ3HmKp8jA==, tarball: file:projects/arm-mariadb.tgz} name: '@rush-temp/arm-mariadb' version: 0.0.0 dependencies: @@ -16672,7 +16672,7 @@ packages: dev: false file:projects/arm-marketplaceordering.tgz: - resolution: {integrity: sha512-DZVYIj3H/0DQkk5Ec0fk+1x/6aGAXv02onoajTw47sFlNgCCWKwI+4P6PmGpYhgqPM2GRCTrMATu26sdEn87Wg==, tarball: file:projects/arm-marketplaceordering.tgz} + resolution: {integrity: sha512-eAyFCBeDAL0u+NHvxr1WEiRELrncs/yZpo+96xVwrhzTiRcdXZcPsmgphyC2bXFGGbERzEOtZwBqSgnPmMd/wg==, tarball: file:projects/arm-marketplaceordering.tgz} name: '@rush-temp/arm-marketplaceordering' version: 0.0.0 dependencies: @@ -16700,7 +16700,7 @@ packages: dev: false file:projects/arm-mediaservices.tgz: - resolution: {integrity: sha512-izgi8ySNj+DWeqIV2fMh5pt/TwpjcUZ2gyS5IosZC4oKkqq/KMw90yefOJIIyAEFpCqLr8MkVQedaB7Db57R5w==, tarball: file:projects/arm-mediaservices.tgz} + resolution: {integrity: sha512-hbWekKUIaEOXaCzofT8MT65BLUmMcKu8rsRCUxoa21lclSe117zoq7vxMEFeznBKByNcgGPvG2rdNVEN85iIlw==, tarball: file:projects/arm-mediaservices.tgz} name: '@rush-temp/arm-mediaservices' version: 0.0.0 dependencies: @@ -16730,7 +16730,7 @@ packages: dev: false file:projects/arm-migrate.tgz: - resolution: {integrity: sha512-tNfNYYzMi1DCwbUKPK3B4z9hmQtSR60MQSJj5pNAowb/UPtUBNVwed87bsa9bTY+Qxifn4MGG7mbCT1IwQofZA==, tarball: file:projects/arm-migrate.tgz} + resolution: {integrity: sha512-X+PG3Ezc3WM5hZeyK40diE6lMIg2Vro+B3POXyhNdMuIq6COIArHyDjBL9lkzJzxjfrcTJFxZN7LsVfgM10L9A==, tarball: file:projects/arm-migrate.tgz} name: '@rush-temp/arm-migrate' version: 0.0.0 dependencies: @@ -16758,7 +16758,7 @@ packages: dev: false file:projects/arm-migrationdiscoverysap.tgz: - resolution: {integrity: sha512-BcJQ89TKzElrIiaXh5YtgDhk8X+lwrl0BIiKJz2QUhpR9OMg3mjj4eq/oS6JoOCcNDKOxjRSCpXx6HywG1L5vg==, tarball: file:projects/arm-migrationdiscoverysap.tgz} + resolution: {integrity: sha512-PMEHA8wqOUylWp3e5/q/9Q893e03qKcdf6KTultwod0lvLI6jDmwMNiuaSimhX7arDFLqj6U+dOi0BCOcAN2yg==, tarball: file:projects/arm-migrationdiscoverysap.tgz} name: '@rush-temp/arm-migrationdiscoverysap' version: 0.0.0 dependencies: @@ -16788,7 +16788,7 @@ packages: dev: false file:projects/arm-mixedreality.tgz: - resolution: {integrity: sha512-gbmVTEZBfQMTMyy8mxsSd4vbEtMEO3EFJcj/OUDqULJ4lWWF98X+jm26tAjZegg6TBJfa6ADf4rzbB5r3fKMkQ==, tarball: file:projects/arm-mixedreality.tgz} + resolution: {integrity: sha512-ASiwxu/fX6hMzgTxmlZte0kmuDc3ppE+XwF9sBx6WhGwZ95mvXA5x/z5bmIz5TIHCsbsj4Sma5jUfhuCFoUE5w==, tarball: file:projects/arm-mixedreality.tgz} name: '@rush-temp/arm-mixedreality' version: 0.0.0 dependencies: @@ -16815,7 +16815,7 @@ packages: dev: false file:projects/arm-mobilenetwork.tgz: - resolution: {integrity: sha512-bqG6WdkfosSkD/X4uHK6ajyxmEYfat5nqT/eM7Ts/S7agguMOYEoMIi7sV7Tl8b+aLpg8H+jIzOtGPiXC4Jj1A==, tarball: file:projects/arm-mobilenetwork.tgz} + resolution: {integrity: sha512-S4QWyu/vDNk0qYgLlZ3ckB0f5yWIiQousINAxVAwb5w1hLzQEQUi0eHRsWH4i12w+0do+ljeZs60lbQQOE1NqQ==, tarball: file:projects/arm-mobilenetwork.tgz} name: '@rush-temp/arm-mobilenetwork' version: 0.0.0 dependencies: @@ -16846,7 +16846,7 @@ packages: dev: false file:projects/arm-mongocluster.tgz: - resolution: {integrity: sha512-EU8WPXxVnF2TP9sFdHD+Fhu0oD4WBj2gtulPY6pw393PtU2cp7IyaeETiBLyH2xxw4WRCyX1pjtNxADgOWpq1g==, tarball: file:projects/arm-mongocluster.tgz} + resolution: {integrity: sha512-C+Fh0CPft28MXX2huCTJ6UMZoBvu50cB2jlvAaHN0EsOCRHSgzeT3L7RkqgxlRsMypTy4aa3msN080B5T0KIiQ==, tarball: file:projects/arm-mongocluster.tgz} name: '@rush-temp/arm-mongocluster' version: 0.0.0 dependencies: @@ -16887,7 +16887,7 @@ packages: dev: false file:projects/arm-monitor-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-7ZbHeBibWftYjaS1Fy0HXDIV6LW+N7gTGaiK9xPDpjcddK1DpEIugafR+4RT0DEk0wS0ylw5QbQp0oj36AuLzw==, tarball: file:projects/arm-monitor-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-HzvtT7qE7U4Vo+PcyT81nFJimStPVz/QlFX1zpPCUe4ITFcfkUG7aDq+RVBIsxTqM/Z6zk8EUtGxWXBGvUw01w==, tarball: file:projects/arm-monitor-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-monitor-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -16915,7 +16915,7 @@ packages: dev: false file:projects/arm-monitor.tgz: - resolution: {integrity: sha512-VFRPZvLJgTamF9gOc9aX+H91ea4FYBOqQEWOeOVJTHBmKpprA78gwuo8fgpjrMfGtbHUyyQxI+9m4OGdcJXJ8g==, tarball: file:projects/arm-monitor.tgz} + resolution: {integrity: sha512-7nScovV8V7ac2slSpxrc5PYOsBR3BLC4SM/KzX3P+8TycaL7oWPa8wesWwlzDweodoSX7yIdBBKH8FlyKLl+1w==, tarball: file:projects/arm-monitor.tgz} name: '@rush-temp/arm-monitor' version: 0.0.0 dependencies: @@ -16945,7 +16945,7 @@ packages: dev: false file:projects/arm-msi.tgz: - resolution: {integrity: sha512-Ul24fzYggBiK/aamwNjY085iYv+MBXLFuiJ+dnYgcA3y+/a5B+qhmFW83H5inn+OwToTpZgUfbciPALRKrwuCQ==, tarball: file:projects/arm-msi.tgz} + resolution: {integrity: sha512-IIWfKkRGHTC1IXVsDV3w5LCThHnvmW62ewg+JXh0yMHVfiLs0NzD9vGFnCqdMNp9MQVihZjSF9+A/jZvWkPjow==, tarball: file:projects/arm-msi.tgz} name: '@rush-temp/arm-msi' version: 0.0.0 dependencies: @@ -16973,7 +16973,7 @@ packages: dev: false file:projects/arm-mysql-flexible.tgz: - resolution: {integrity: sha512-Hb6Q5S2NJFruSASGGfdUDhiUqQteOb3Es8RtR0u+j3qCuP+1k2ntvMuY5O9lnU1F4IuHyXwjOwT8jKVlFH3Hzw==, tarball: file:projects/arm-mysql-flexible.tgz} + resolution: {integrity: sha512-P9Jts16lwQxytRTSza3261Xj8bs3MgiF2mtK4ibvP8C9POS05NHupzEPob6bzrOfSWlc5STL8JOMMduiDPtB4w==, tarball: file:projects/arm-mysql-flexible.tgz} name: '@rush-temp/arm-mysql-flexible' version: 0.0.0 dependencies: @@ -17004,7 +17004,7 @@ packages: dev: false file:projects/arm-mysql.tgz: - resolution: {integrity: sha512-HWgmW0VWX/2hz+miS1302KiQ0Ohv6CeieppfQ+Hw6mZS9nUT2Yh17zgMGryzLYitj3yKCOFuFTlOZ+HVBST75g==, tarball: file:projects/arm-mysql.tgz} + resolution: {integrity: sha512-DDxg9P/mJWZ19rI6y9gMoEHcu/7uWcuvm7P1VKCuUjYYhJQGBFnQRBWLZwjwTL3JA218aA3bvdAk1EIjTw6RFQ==, tarball: file:projects/arm-mysql.tgz} name: '@rush-temp/arm-mysql' version: 0.0.0 dependencies: @@ -17033,7 +17033,7 @@ packages: dev: false file:projects/arm-netapp.tgz: - resolution: {integrity: sha512-XN/TOI9+um6TqZHjNR8Ev/toefYj+8oJXGMFEPc1fPtGEWcFFqg7fQfqd3rOPzhUhK+vq/LBc2jB2Gir856lmQ==, tarball: file:projects/arm-netapp.tgz} + resolution: {integrity: sha512-j8W66PF6exlFOnA4gK5gY+EZo26W1l35XxbR3DH9yCeIRIjv4iPFGGYNDOTWaRpWk6v/lelLa5VUm35dw6jH3g==, tarball: file:projects/arm-netapp.tgz} name: '@rush-temp/arm-netapp' version: 0.0.0 dependencies: @@ -17064,7 +17064,7 @@ packages: dev: false file:projects/arm-network-1.tgz: - resolution: {integrity: sha512-B/QAfq7A2656Gqn0xVUjwr3EfGi2mYGDRDy9Z/TC3jzxQVYXKTMJJ0X1MEkyypK20XmoJlVoqgNoNP/UbNx/Iw==, tarball: file:projects/arm-network-1.tgz} + resolution: {integrity: sha512-P6v6Y6MPKekCBz8tVkLHXb8cHO4JTuwSDWMh7nKIzZVb4eys17p7AfSxY87s1M8A3pUV1qxWDT6fZMUakKIgSA==, tarball: file:projects/arm-network-1.tgz} name: '@rush-temp/arm-network-1' version: 0.0.0 dependencies: @@ -17095,7 +17095,7 @@ packages: dev: false file:projects/arm-network-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-bnCH2UpFCvtz4BMccjYctwW+YNUvNkK/GVMIhEQ3LhVWBKG1toiymnCbGtNUlFBotgnzqon+gogntWaAH2wdog==, tarball: file:projects/arm-network-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-JLZmbYruauNf5jAw8reAwOW4SUnoeOW3rNZ62Vsfmxk5sIswrDIWE735tQmN1Gjyrfhjq5+7EuwjGBQPHHmhYQ==, tarball: file:projects/arm-network-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-network-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -17125,7 +17125,7 @@ packages: dev: false file:projects/arm-network.tgz: - resolution: {integrity: sha512-3KE8yHpRjIWjQ3MCIYCe8r2i5UHgEsZ99r57eLuqUaXbWwMVK6JhX1uEQZZJ6aQU31A2nI3rRt8JhdfaguwtUQ==, tarball: file:projects/arm-network.tgz} + resolution: {integrity: sha512-Xyjtn9FDQI1SEQ64xoXelZxs1P+6+TGkFN4KG8Wi6QyUjzKKGyFyT1fCGCkZUlu/ypmjUioU9EWVVderM9TBTw==, tarball: file:projects/arm-network.tgz} name: '@rush-temp/arm-network' version: 0.0.0 dependencies: @@ -17172,7 +17172,7 @@ packages: dev: false file:projects/arm-networkanalytics.tgz: - resolution: {integrity: sha512-AMCqp/mzss3Oksp0yhUjMM5/J51sk0E1481GjeL45AGtBoJrTlzvlGLFZDHEyNESEoJtbAyqkumeC52L2wpTMw==, tarball: file:projects/arm-networkanalytics.tgz} + resolution: {integrity: sha512-UoysNevuv0w7CTk1AuE3UH7xiDMa/+CieOAJWClYhD2aAIutEnN78yck5/106N96Qi72JW1SsDz+wAJOBzQYRQ==, tarball: file:projects/arm-networkanalytics.tgz} name: '@rush-temp/arm-networkanalytics' version: 0.0.0 dependencies: @@ -17202,7 +17202,7 @@ packages: dev: false file:projects/arm-networkcloud.tgz: - resolution: {integrity: sha512-8h61VDXkOPtIMZT92EqmVtbZ89phYJWTVGzUUh8SdQZbTxT+zRQQGfK8Eca+/fzv9AtEXNAcgizxuJDgE4L+fg==, tarball: file:projects/arm-networkcloud.tgz} + resolution: {integrity: sha512-+QylFC+YcqMdK5//WrecbK1Gr3GBySi1WStnR6nxbBqAYMqbN70rbqZwYEbxfkPTFQ4N8+3wyAiuzqsYRPVkaQ==, tarball: file:projects/arm-networkcloud.tgz} name: '@rush-temp/arm-networkcloud' version: 0.0.0 dependencies: @@ -17232,7 +17232,7 @@ packages: dev: false file:projects/arm-networkfunction.tgz: - resolution: {integrity: sha512-xGDdVNtxzfzWZM0HeWW/0FkSVaaZWg45d9NYyU3OoaEfL+mFJjO1FWfkaPtUCz9d5sRpUmu9ylX/FDuPNlfxzg==, tarball: file:projects/arm-networkfunction.tgz} + resolution: {integrity: sha512-4WbYQp6T3We8oP9VALcEjkRGYzSlghVKAjRMM8gDcjaU5oHG5MoshluJKBA47ayAp/rFxaMuXIx6sIVOoDoUFA==, tarball: file:projects/arm-networkfunction.tgz} name: '@rush-temp/arm-networkfunction' version: 0.0.0 dependencies: @@ -17261,7 +17261,7 @@ packages: dev: false file:projects/arm-newrelicobservability.tgz: - resolution: {integrity: sha512-dRpg7cKC+2E656IvoUXS8i8eKvPdnMzUhZXWK5j3rxcci6FsGJY6UFNzattYWlzsSLm0TX9GXa6PY3Fsx0kqGQ==, tarball: file:projects/arm-newrelicobservability.tgz} + resolution: {integrity: sha512-TAiMv0k21/jqXxppRbMs/07ZSLxW6IRwJBQhlKEcJHNsmHo6rCHMO4hExMHorI0DL/V+FtRE7qN7KpJbCd4J0g==, tarball: file:projects/arm-newrelicobservability.tgz} name: '@rush-temp/arm-newrelicobservability' version: 0.0.0 dependencies: @@ -17291,7 +17291,7 @@ packages: dev: false file:projects/arm-nginx.tgz: - resolution: {integrity: sha512-/LFuCke0zDXDreTFsY8iqwAgRQmRDlHqyCTNayy/NEKj6qhnnyAJ6ygX9fZrT7LQsyt5CLqSlMIpLypP6CssMw==, tarball: file:projects/arm-nginx.tgz} + resolution: {integrity: sha512-fz7Oa6r1GrMB6FkjOCZiQb0jQB+dsAIpnTUFCLbY5XuFPrbk6oY7YbhvkHv0X3aTgdMpr0/6ijbBeUvshAmlww==, tarball: file:projects/arm-nginx.tgz} name: '@rush-temp/arm-nginx' version: 0.0.0 dependencies: @@ -17321,7 +17321,7 @@ packages: dev: false file:projects/arm-notificationhubs.tgz: - resolution: {integrity: sha512-iohnXTKeTHXjvms8pHA/brn67wnhYD8wS/Xn/ZXltAKgqyuijgCy69XluhgoMGezraecwxKJF0WTYa92wYlelA==, tarball: file:projects/arm-notificationhubs.tgz} + resolution: {integrity: sha512-uBK2r4DcUzLlfgjUJAMwPWl56L9/3C3vUoWT9Dzc85hHRaDbZ3zXkm1YezjfG53EKul0v2Qx6LIgh7gyrCLn7w==, tarball: file:projects/arm-notificationhubs.tgz} name: '@rush-temp/arm-notificationhubs' version: 0.0.0 dependencies: @@ -17351,7 +17351,7 @@ packages: dev: false file:projects/arm-oep.tgz: - resolution: {integrity: sha512-ZpvScUYsP9hlnaO0yleIKfha0MlZh+M20p6SoWvBDyZE9DQvBDWrm0q7yncdOFHSV9B+veYr+u/uJOfunxAviA==, tarball: file:projects/arm-oep.tgz} + resolution: {integrity: sha512-68IZIrAoTKTUqRVI8yPpUV+ewzjaojHal2DKCtmBDZHSoKt0G2V5SoWb+S1qEqkqKvgI8KrNBuh4P4TcffZLmQ==, tarball: file:projects/arm-oep.tgz} name: '@rush-temp/arm-oep' version: 0.0.0 dependencies: @@ -17380,7 +17380,7 @@ packages: dev: false file:projects/arm-operationalinsights.tgz: - resolution: {integrity: sha512-s5Oa9UF+YPYurQ+0sMmRDJ8xU3ovkTbPeHXCuY1nCA3AYHcWiBru8e0SHp69foSXKiekKFIeN7XnXJCZvmywXg==, tarball: file:projects/arm-operationalinsights.tgz} + resolution: {integrity: sha512-/XQzuFwq99V3AsA68kZ3NLjhHcvQF2+i3CZKbJdtHNyJxn+VxtieY4ojqvyYSpJXRPrFNmBE0EaZiFZ+N2HmfA==, tarball: file:projects/arm-operationalinsights.tgz} name: '@rush-temp/arm-operationalinsights' version: 0.0.0 dependencies: @@ -17410,7 +17410,7 @@ packages: dev: false file:projects/arm-operations.tgz: - resolution: {integrity: sha512-cjBWW26Ng57CJVzL1DtmPQ2t/cSth4WSa2DVfPLqwo8PYv3elfyQZzU9YOkPYThI3MIu2qJSxOJHP4/UClRFDg==, tarball: file:projects/arm-operations.tgz} + resolution: {integrity: sha512-Nyj28Pu9y21IA9herds/9S0UQYh33wTNsML2Vun7fHv8DzSpekiM2TYnWKCwpr1k4sdYvv0PHQ0MOTmcJ1+eig==, tarball: file:projects/arm-operations.tgz} name: '@rush-temp/arm-operations' version: 0.0.0 dependencies: @@ -17439,7 +17439,7 @@ packages: dev: false file:projects/arm-oracledatabase.tgz: - resolution: {integrity: sha512-ziIpJE4cTtp3oY4BKF2JgTUrWKC9MNg5xklCx4/G0tpl+QPN6awzWMGDN9QaTRQ1Nz1og8udbI0JG14AUNLnMg==, tarball: file:projects/arm-oracledatabase.tgz} + resolution: {integrity: sha512-HZUyn2gZAaz1Pambusqc+xa/XX/mSlFW/Azm675ZTzqMSqcRjltj+YCxlk1WJQ5H5ZCRqCRkdvvJMFHgUJUTqA==, tarball: file:projects/arm-oracledatabase.tgz} name: '@rush-temp/arm-oracledatabase' version: 0.0.0 dependencies: @@ -17470,7 +17470,7 @@ packages: dev: false file:projects/arm-orbital.tgz: - resolution: {integrity: sha512-HAdb3COvZSqWD+NXXexZDJ6AjPNmAZVTb9+R3upw7MGLqDcvKNMd1BR3LbbO1UA7v4f/ddATSjqnD9BLEJRQxQ==, tarball: file:projects/arm-orbital.tgz} + resolution: {integrity: sha512-rR2NWOdcCvMjBSc7BbfuDvrhH2G0QKviWKNS2qAkFvN191f+bqPcdk8ZR1Q+4P8XhBqxPmo9TG8qyhdWHYFJaA==, tarball: file:projects/arm-orbital.tgz} name: '@rush-temp/arm-orbital' version: 0.0.0 dependencies: @@ -17500,7 +17500,7 @@ packages: dev: false file:projects/arm-paloaltonetworksngfw.tgz: - resolution: {integrity: sha512-WXwwttbkTUsPOKZ8KFcONkyzCIn0hBCaUBOcMa4RkeOVlBHaumxVp0148S9KE0zT7uhASVsmvM0qS1HdKM66Uw==, tarball: file:projects/arm-paloaltonetworksngfw.tgz} + resolution: {integrity: sha512-s3HioPqb7gwPpSCFHS7W8ryXo9jmAMuzbgATE7/2S6dYQ+IKyRj1lN/nki/j4EEJtav2k5j90tzus08q2GTd9g==, tarball: file:projects/arm-paloaltonetworksngfw.tgz} name: '@rush-temp/arm-paloaltonetworksngfw' version: 0.0.0 dependencies: @@ -17530,7 +17530,7 @@ packages: dev: false file:projects/arm-peering.tgz: - resolution: {integrity: sha512-fSqJdXzWVuMLGhCtsrarwl6OiM6LOEiVdPLuKPrnlv2U8SJrCHVl18tf12gKxiM+Qy1x54EVg7SsqssHiCrYaQ==, tarball: file:projects/arm-peering.tgz} + resolution: {integrity: sha512-f+AFNpdQZ4Z3yQqr8ZgaCwqa692flWfgQD7pjMyEn6v3VSw2S6JG6NjBWX27QDvMFCs68HELlLHSHM6ZFRPk7A==, tarball: file:projects/arm-peering.tgz} name: '@rush-temp/arm-peering' version: 0.0.0 dependencies: @@ -17557,7 +17557,7 @@ packages: dev: false file:projects/arm-playwrighttesting.tgz: - resolution: {integrity: sha512-nUWyCeuYSpTQzmokXguADCYg2atdidXLGKhxSjht+tCCv4dPRvD8Ew9sjIoWOW2M2gSFo3JRtwJ5mDf9hqCT7A==, tarball: file:projects/arm-playwrighttesting.tgz} + resolution: {integrity: sha512-ZQjUMOohvWsMYYSWPuZKW7mN20dfdpOfzA7SRb4dmlMPvxUL5FYGNlpl8IRVt8xWKYprxhtMxVBsHtCGqEp93Q==, tarball: file:projects/arm-playwrighttesting.tgz} name: '@rush-temp/arm-playwrighttesting' version: 0.0.0 dependencies: @@ -17587,7 +17587,7 @@ packages: dev: false file:projects/arm-policy-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-c8WuNzmDkYA8+4tTfAsRs4McBwF54jiXzPkDf8UsHfb7xGPMwKrYa8U9nblDFbgR7Hte13G5CimBzcgmpCsi4w==, tarball: file:projects/arm-policy-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-OZ8MTL6GxXP/ZneIKRGcr80kINASAsgIjcg2fHxZtkUZH5TH4JPEjuHFagZ0MByacU0t66iZERDwn3gcWJuEdA==, tarball: file:projects/arm-policy-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-policy-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -17615,7 +17615,7 @@ packages: dev: false file:projects/arm-policy.tgz: - resolution: {integrity: sha512-TikMnJT90/hTLWuLKk6RJ+oCi0WrNmgDcAkaiK8tHdFxFNIwYZM8MxWKDsiTiwuavvOBzYfH3Mituct/0ms1wg==, tarball: file:projects/arm-policy.tgz} + resolution: {integrity: sha512-S+GzCiPK6HX/0lTkjaRpCy03c3kT9lGY3+ZxU/F/92OapIDzSFVFNUny06b1BfQPmg9v61vIf4xqga3i3Gk99Q==, tarball: file:projects/arm-policy.tgz} name: '@rush-temp/arm-policy' version: 0.0.0 dependencies: @@ -17643,7 +17643,7 @@ packages: dev: false file:projects/arm-policyinsights.tgz: - resolution: {integrity: sha512-oOT8OK3YGCj4z7xDVUbC0XgAc73YBSMMtmGIZjtR/kGA3FA8H8F4RN/1QiHT55aqm0hAL6wHJwFVricLaQg+4A==, tarball: file:projects/arm-policyinsights.tgz} + resolution: {integrity: sha512-dAv5NkASdcbI/jhOjA5IzfqQCGGA/uLTDCq1ely1jyJwXbtSoVaY6P5doNX/f68zbGQp3iW3mW48w+SBQOfdLg==, tarball: file:projects/arm-policyinsights.tgz} name: '@rush-temp/arm-policyinsights' version: 0.0.0 dependencies: @@ -17673,7 +17673,7 @@ packages: dev: false file:projects/arm-portal.tgz: - resolution: {integrity: sha512-SgVl8z5EciLmuKKXvedWFz+Aknx6rakUvLvKwiOudTPIuL/c6uvwc3MBKO4mT7gMO0oid891yEL499/AEbh4cg==, tarball: file:projects/arm-portal.tgz} + resolution: {integrity: sha512-GTgTCV+m/TYwrvbyTI7qSMK1jvDtmwh41idgAqWVTRzMIwWa1TGSQ/626YPREt0V0JvNfidP+BrTu3M8MMpYNg==, tarball: file:projects/arm-portal.tgz} name: '@rush-temp/arm-portal' version: 0.0.0 dependencies: @@ -17701,7 +17701,7 @@ packages: dev: false file:projects/arm-postgresql-flexible.tgz: - resolution: {integrity: sha512-ldF16x5gZHIJLjf+ax9P6OVWHu8UxFnzMETfdji8fmlPeJlQeFDu2/rA9sneMG/6zAtEhBRNlynI9xanzEPiJA==, tarball: file:projects/arm-postgresql-flexible.tgz} + resolution: {integrity: sha512-+xkEamzzAMZNMr7Nns+hTSm3xsPppbHh99xg8gCbVIHhTghl1G03b0v+E/gkzGj+g9fhuXrREXUowN3SloLz8Q==, tarball: file:projects/arm-postgresql-flexible.tgz} name: '@rush-temp/arm-postgresql-flexible' version: 0.0.0 dependencies: @@ -17731,7 +17731,7 @@ packages: dev: false file:projects/arm-postgresql.tgz: - resolution: {integrity: sha512-O2SnzZstsFG3Xmribf2Y20M2B2eEK5CiWiUBAuvZaPzOV7HAd4jF5BuU5UQIgw+M2MtHEtqn/yh3YQismDNhVQ==, tarball: file:projects/arm-postgresql.tgz} + resolution: {integrity: sha512-eGaMPRDBUrkQ7BkRgHghRvh1Pb/nLEa8+IYtLbAHF7LXfKs//EiTU/0yg0oyU+NQjDdJCt9X1KK6u3FpBfR8ZA==, tarball: file:projects/arm-postgresql.tgz} name: '@rush-temp/arm-postgresql' version: 0.0.0 dependencies: @@ -17760,7 +17760,7 @@ packages: dev: false file:projects/arm-powerbidedicated.tgz: - resolution: {integrity: sha512-D90FPKOypB4s4HDD35w6H9sdwHHmlDxJ3jqVzHg5BR2A5xl+JeWKEu4ka/QDYHWxu6tlfQgdBq4qMVu94HJ9Ug==, tarball: file:projects/arm-powerbidedicated.tgz} + resolution: {integrity: sha512-LRrWD48x/bNFmasTDKCOl4Wq9TgAV7fPqJWPRIbaeMqmljIILlOqzjQTCWupt7wcqI+20UQIKHsU4lsH2H9Uww==, tarball: file:projects/arm-powerbidedicated.tgz} name: '@rush-temp/arm-powerbidedicated' version: 0.0.0 dependencies: @@ -17790,7 +17790,7 @@ packages: dev: false file:projects/arm-powerbiembedded.tgz: - resolution: {integrity: sha512-T9wzorSGi8GjH0TVike594OhHpvhfDQzGi6f8I/tnAGkaq9k3EFriB1wGXYnRjcZxRA/JhIXSkWnrt04wMXt+Q==, tarball: file:projects/arm-powerbiembedded.tgz} + resolution: {integrity: sha512-rrvuHwyQcDNx6BAODw2EfMNlTvtuhaZM7TqPaSCRIECXuchO/WLPvxL6rnvdSgfic5WJ4PqBwQWm0DUbTymN/g==, tarball: file:projects/arm-powerbiembedded.tgz} name: '@rush-temp/arm-powerbiembedded' version: 0.0.0 dependencies: @@ -17819,7 +17819,7 @@ packages: dev: false file:projects/arm-privatedns.tgz: - resolution: {integrity: sha512-RzimUaRpfRNNsP0IEU2H/kSdXPtBTVQpz2/O41Qm4xeb4NtI6/H/vjyfBjm+9Ifuv+9nNFHMcqC0qpamze0wSA==, tarball: file:projects/arm-privatedns.tgz} + resolution: {integrity: sha512-eOpU54Xe7vDeQ9bvgw6bILjt2lKG8IxMADgclBjt5XkCSfcv7hKEGlwuuP5gLAczwTl9tk2mgjYSpEJ4BDuB7Q==, tarball: file:projects/arm-privatedns.tgz} name: '@rush-temp/arm-privatedns' version: 0.0.0 dependencies: @@ -17849,7 +17849,7 @@ packages: dev: false file:projects/arm-purview.tgz: - resolution: {integrity: sha512-x5M1dS34o72cq4BsMCm8035t0CB6GPLoz1/3R5q2ylISblgjeiZyZX5V9QYDZMidqffL/VPhscaXaXGU4lgY2g==, tarball: file:projects/arm-purview.tgz} + resolution: {integrity: sha512-PUe5Dr/BGLMCRzMRlNiBjcbkqfMpnhBE3DZfdBv/tku5bU88G6KHq8OFAyJ62tYWqb87Wg8LpXDXRfJWrI70SA==, tarball: file:projects/arm-purview.tgz} name: '@rush-temp/arm-purview' version: 0.0.0 dependencies: @@ -17878,7 +17878,7 @@ packages: dev: false file:projects/arm-quantum.tgz: - resolution: {integrity: sha512-L94Xm9u4VwYYuPqF1oo6Fg3P5FbFM1/2eFkG6B37Majvb6r8hbO/BmQtC2D1rAmQm+XPNLKE/EA8gEysCPVsVQ==, tarball: file:projects/arm-quantum.tgz} + resolution: {integrity: sha512-90Jm7U1UNPrD2nJyW6irsrgNBiAuul6Ng9bHTzkW1vZkmCFV/Jy2h2LlEatMhJB/qn7UI/I2Hgl30as/hjFsZA==, tarball: file:projects/arm-quantum.tgz} name: '@rush-temp/arm-quantum' version: 0.0.0 dependencies: @@ -17908,7 +17908,7 @@ packages: dev: false file:projects/arm-qumulo.tgz: - resolution: {integrity: sha512-93s0NqKkdoyB2+GH4GyjLZty0T1oeXMERf36tjloyDiGDvIEoxi2Ri0Ke601onOKbRRXsfqNiw6Gb8a630fLNA==, tarball: file:projects/arm-qumulo.tgz} + resolution: {integrity: sha512-wrPRZ7OSOkCHxNLPg6ETrQ/CrYpXETWjxefVX2rsLsoIfwU8NnnudhcVuoBUewoSBkbk1whuOBX++ps7d+KHpQ==, tarball: file:projects/arm-qumulo.tgz} name: '@rush-temp/arm-qumulo' version: 0.0.0 dependencies: @@ -17939,7 +17939,7 @@ packages: dev: false file:projects/arm-quota.tgz: - resolution: {integrity: sha512-g5xHMxPMVPEOEYNOoR9ZpxY7piO4tM7SrXvllyYrJ27gFJeOzJa06ySdE1Bf0tq23xI2poOFt+RBUHkl6nRK6w==, tarball: file:projects/arm-quota.tgz} + resolution: {integrity: sha512-Da+qEIKvkxF6EmBgF1bdo3xNiAswOb+e3qvmqxB9fDFjL/LfELEHyabN9V8NCgMVNIE41fw3/V2E6hOxj68JRg==, tarball: file:projects/arm-quota.tgz} name: '@rush-temp/arm-quota' version: 0.0.0 dependencies: @@ -17969,7 +17969,7 @@ packages: dev: false file:projects/arm-recoveryservices-siterecovery.tgz: - resolution: {integrity: sha512-Pk09j+7M6/NbmC1NAEwiMcgFBo79h65ZhrZYaRB0jaQMn1lBjILPnlXWiHIho+5pjp+FY79I/WHP/TVBkeY3Rg==, tarball: file:projects/arm-recoveryservices-siterecovery.tgz} + resolution: {integrity: sha512-3YmQDRQ0RU8q3CEeViyd0F7uo1QONvC7EAAUp2GNrj36ubHAxanoLwvsK+Q8sZYAUrri/xHi1sdsdoccMgZYng==, tarball: file:projects/arm-recoveryservices-siterecovery.tgz} name: '@rush-temp/arm-recoveryservices-siterecovery' version: 0.0.0 dependencies: @@ -17999,7 +17999,7 @@ packages: dev: false file:projects/arm-recoveryservices.tgz: - resolution: {integrity: sha512-JuNcfEsRUQn5xB+oobUVmJi6AYH+VuM+Zf0NsI+LRpUNUMEGtQ3E7Inui+qap75dVhlSVcx8mv8/ubsEZv9FnQ==, tarball: file:projects/arm-recoveryservices.tgz} + resolution: {integrity: sha512-aGZqv2Es3GWdq6otQcr2HEGL13nviNR6t5LclTlAm9C7mSDfHX7sVfBgUWdI8h2XUooZ9U98nEjBBPejGl4Fog==, tarball: file:projects/arm-recoveryservices.tgz} name: '@rush-temp/arm-recoveryservices' version: 0.0.0 dependencies: @@ -18030,7 +18030,7 @@ packages: dev: false file:projects/arm-recoveryservicesbackup.tgz: - resolution: {integrity: sha512-ofsVsYgA+49rgLOm0lBnjBuquR/EJrR+ZVjHsuzkQghHvIND54mVjsgz79/bTmEnezcxJoB/FsHZr9kUjruOBw==, tarball: file:projects/arm-recoveryservicesbackup.tgz} + resolution: {integrity: sha512-AZe2jKXj/q0Jcljzfw6897HNX9ycP+TOSQl3z8izvmwCtYI2EKVHVs6KT9nkW23+E3j3X2q64fKor0XCtGLHEA==, tarball: file:projects/arm-recoveryservicesbackup.tgz} name: '@rush-temp/arm-recoveryservicesbackup' version: 0.0.0 dependencies: @@ -18062,7 +18062,7 @@ packages: dev: false file:projects/arm-recoveryservicesdatareplication.tgz: - resolution: {integrity: sha512-bpjylD8w0G2NeSGWADWw44UyKxgJzpwFXhmdApVr9IqyBLmUjjQaFpv/1ygnQ0JrezXrk1Fwks3QuElufP4k6g==, tarball: file:projects/arm-recoveryservicesdatareplication.tgz} + resolution: {integrity: sha512-tS4HVmuGAkIWY4SSgaprvax+JOdjvNd5Qjp3J3NZ38dP+EovJaLMM5PdiibJPg9pNg5PcuEyDyQguzO5/cJEOA==, tarball: file:projects/arm-recoveryservicesdatareplication.tgz} name: '@rush-temp/arm-recoveryservicesdatareplication' version: 0.0.0 dependencies: @@ -18092,7 +18092,7 @@ packages: dev: false file:projects/arm-redhatopenshift.tgz: - resolution: {integrity: sha512-sAXqI3ZOkg+1mLcHINlbDdfxyC37H0GRRew0jrQXYqS2Cbb8I58c2/scsbpXBJ/oDwdL+pd5WJQKl3gDr1ZQyA==, tarball: file:projects/arm-redhatopenshift.tgz} + resolution: {integrity: sha512-nmTDnTBfI+Wiz9lbnEo/K9o/YJ4969WxFny4epZ31rpvTqem9h+aAZDT5xVvZdfubJTBgDM6Mfk+O79nlnCzIg==, tarball: file:projects/arm-redhatopenshift.tgz} name: '@rush-temp/arm-redhatopenshift' version: 0.0.0 dependencies: @@ -18123,7 +18123,7 @@ packages: dev: false file:projects/arm-rediscache.tgz: - resolution: {integrity: sha512-xMDBT7vRCqYoRX7+G08GzMqnisN+f0Vlru2bJbf3WN7pPxwPlShEBHTQ0zsY8+8UapKAIDS0wzIMvvyhX12/UQ==, tarball: file:projects/arm-rediscache.tgz} + resolution: {integrity: sha512-8IG6+1nX75u3bM5sSZQ2zTo08+NX6HMQzy8ov9tNKFyi0L/TNSCGU9KPul+rWgQ/0BqnT81b//C6N1L7/Pt81A==, tarball: file:projects/arm-rediscache.tgz} name: '@rush-temp/arm-rediscache' version: 0.0.0 dependencies: @@ -18155,7 +18155,7 @@ packages: dev: false file:projects/arm-redisenterprisecache.tgz: - resolution: {integrity: sha512-2OuZxOIoB+wE5E0rj/0Xtz1fMoA1iFAQeTbUhnptoXZ7G41XSdiaZkk5gFkGtQ8K+rEYBTM+6u8s6HvxjyKSjg==, tarball: file:projects/arm-redisenterprisecache.tgz} + resolution: {integrity: sha512-fAG0zihUEXQ92Bx34lGz0Szk5rXwA/gQwKfk+6KmAG43mh0VWjB2Ris5vQRbYynNMZ/wgTi6NVcV+edMWyqCIg==, tarball: file:projects/arm-redisenterprisecache.tgz} name: '@rush-temp/arm-redisenterprisecache' version: 0.0.0 dependencies: @@ -18186,7 +18186,7 @@ packages: dev: false file:projects/arm-relay.tgz: - resolution: {integrity: sha512-HuekB5MGR/3uz7+qX1pkZx6+oBu8nur/tLgKn2x1h2weuvxuy/LOFWr2msecVUC9Gu9xGkkQZsO9BSq0CIhjIQ==, tarball: file:projects/arm-relay.tgz} + resolution: {integrity: sha512-bFakmh6RPrLKgxppLuR8uXuvIN3xlPaDbx26yN4X1plOrY+tNN/+IBOt0o+Q7waxsV36lf57iqOhwE+/N3H0uQ==, tarball: file:projects/arm-relay.tgz} name: '@rush-temp/arm-relay' version: 0.0.0 dependencies: @@ -18216,7 +18216,7 @@ packages: dev: false file:projects/arm-reservations.tgz: - resolution: {integrity: sha512-YO4FdzBwu28JXX1LGR5NmopnizH3aH8AnFuk8PyE1r4hPsjrYDi7Bg+oTdxb92/2gofn+DYRlM/YuRBe5MY/Jg==, tarball: file:projects/arm-reservations.tgz} + resolution: {integrity: sha512-La9F/kMi+BYUmMNGlMbmgh+s//Bu5u0sTQfnquHKp8uNUqsVpaX7/GOJKPyEX4v0SjplGSVxFakVeHL5LaLQZQ==, tarball: file:projects/arm-reservations.tgz} name: '@rush-temp/arm-reservations' version: 0.0.0 dependencies: @@ -18246,7 +18246,7 @@ packages: dev: false file:projects/arm-resourceconnector.tgz: - resolution: {integrity: sha512-7r+Caa+famctT+bERIWkh6nD0hVAVPJgkbAgMkUDKMMTvU+jmKhaRNy5B5BdUuK6lflISiJKo2PLS7oq6hyKOQ==, tarball: file:projects/arm-resourceconnector.tgz} + resolution: {integrity: sha512-+1HL7qj2oHy1u4GmQajmi+IKnFQqCdNxF2pJScZHsYjB1HEbAj39rQwsx4Rjkd5xR7kPYbzFC5HjXOx3D5nsMw==, tarball: file:projects/arm-resourceconnector.tgz} name: '@rush-temp/arm-resourceconnector' version: 0.0.0 dependencies: @@ -18276,7 +18276,7 @@ packages: dev: false file:projects/arm-resourcegraph.tgz: - resolution: {integrity: sha512-PKWFSBeWTB3RW6IoTMuumq1t0qoCvNPIFXP6VgICu7m1FyYpYQOM3lZ4iA+9kBrpYdNQEMxcd291e8j8PelyFQ==, tarball: file:projects/arm-resourcegraph.tgz} + resolution: {integrity: sha512-JPjc4McLqBJjfwboTtv1QCjfEKnDZUf1+U3WkrSUlqisZRjJ6aVl8ZDlMqikWpc9i3YFJHgFMuUagnXzI9E0cg==, tarball: file:projects/arm-resourcegraph.tgz} name: '@rush-temp/arm-resourcegraph' version: 0.0.0 dependencies: @@ -18303,7 +18303,7 @@ packages: dev: false file:projects/arm-resourcehealth.tgz: - resolution: {integrity: sha512-YJse1skI7U90dSoVqsB7W43DlnFxCIu3jU9VSFaM91m6DN/+1t4JjHscCabpvYpYYMtPv1uEFbcNe/oELTT3vw==, tarball: file:projects/arm-resourcehealth.tgz} + resolution: {integrity: sha512-mUmDgyvVm77Mq9cl3ZTKpyNUUuAkGd3314zoCsozIYc93Su5q4pZiUk/Kxigqj8l4kQ3+ae67IB7ZrzQLipcDw==, tarball: file:projects/arm-resourcehealth.tgz} name: '@rush-temp/arm-resourcehealth' version: 0.0.0 dependencies: @@ -18331,7 +18331,7 @@ packages: dev: false file:projects/arm-resourcemover.tgz: - resolution: {integrity: sha512-1OaUJwMEBJg+zABRSPt+3xcPPjHBD//xqS7iicMG7YVTRRmPWJfIU4rOxOdkKfJ484AF78wtAbI1c5TbISBxQQ==, tarball: file:projects/arm-resourcemover.tgz} + resolution: {integrity: sha512-oUu8cCzEl+fWhoVCOePYOmphYMJs6g2ZlQ6/xgGKzkOv7oGaTyInm+SiIxZqnz6nSWu09rHirsxAe+O8XGJHNA==, tarball: file:projects/arm-resourcemover.tgz} name: '@rush-temp/arm-resourcemover' version: 0.0.0 dependencies: @@ -18361,7 +18361,7 @@ packages: dev: false file:projects/arm-resources-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-QmCIBi9Rh+M0UbqRUHqnv4sKl/4foIiUl6P/FRh/1VxPT/uxZv/yA7yWx60XK6UsLHK0GqIaDIuoXRcrP0sEDA==, tarball: file:projects/arm-resources-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-hN0wr1r1GbSncMjQEDhIW5VYSvVSMoT90+FF/4qOavMluszq5DnMFBxR2z6DANQ6xU2nLm9WEKa6S4JyIGpigw==, tarball: file:projects/arm-resources-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-resources-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -18391,7 +18391,7 @@ packages: dev: false file:projects/arm-resources-subscriptions.tgz: - resolution: {integrity: sha512-BWiBCZ8DrTvYtOTrKMg0t8uXaIcjQwfG33PdnOxpsUGBGDU+vU5S1xLUeXm3mHXVHg5WvARqVWBKoXUgStB0RQ==, tarball: file:projects/arm-resources-subscriptions.tgz} + resolution: {integrity: sha512-qhA1M+sMpl11reN9zmrbfbpn8HKuGIfO0Qli7ONzksQmCEZ0eNx5IJi5+PZ5+0PT7HxP/StQwJyAMGpQsdt15A==, tarball: file:projects/arm-resources-subscriptions.tgz} name: '@rush-temp/arm-resources-subscriptions' version: 0.0.0 dependencies: @@ -18419,7 +18419,7 @@ packages: dev: false file:projects/arm-resources.tgz: - resolution: {integrity: sha512-JqWS42xp1LBmw2Vt0MWGue1tx8fRp04bLdq77O3upDVLTpksZkNBQyMpQdPvM6dpAVYcIrjsP2RlibzOGaWM0A==, tarball: file:projects/arm-resources.tgz} + resolution: {integrity: sha512-VJ2ZSr//nnrQdQSgVNcEyhfOEaESfbk4tVWLTJZ5umow2S7jtBEV7cMHZHqhObD2TDc6Jzcit5L4G7upr/zYnQ==, tarball: file:projects/arm-resources.tgz} name: '@rush-temp/arm-resources' version: 0.0.0 dependencies: @@ -18449,7 +18449,7 @@ packages: dev: false file:projects/arm-resourcesdeploymentstacks.tgz: - resolution: {integrity: sha512-w1qpRkt2KGi0v1JnbxcJrU6EChWrsjapeDle4u9XiQk+eQq2V64Vr1101KFN/31EcBZVndFb/k5LUQUFAReXkA==, tarball: file:projects/arm-resourcesdeploymentstacks.tgz} + resolution: {integrity: sha512-yyRLezFY8H+vjTTSa0MVoCE7TMlv27xJiLdmkGDnelwFKpBo6/2cwZNligO0BC0w//cEkTXH33yr/AJ+rqI5lQ==, tarball: file:projects/arm-resourcesdeploymentstacks.tgz} name: '@rush-temp/arm-resourcesdeploymentstacks' version: 0.0.0 dependencies: @@ -18480,7 +18480,7 @@ packages: dev: false file:projects/arm-scvmm.tgz: - resolution: {integrity: sha512-9CALsrjrdueT716KYVr+WsmvSDJi2pAMFscBUUf5SxksN+u3+GFpjxn1t6gIfifdAcqdpwwIi+C6dAJOYHQhww==, tarball: file:projects/arm-scvmm.tgz} + resolution: {integrity: sha512-o3w2jxmcrAV6gbXFHt6MnJJiE79CWSpegfRgC5isL0LIKtVE8LNkEucabsd22gCHWiVyDvZLrrQUkZb7EHdhOQ==, tarball: file:projects/arm-scvmm.tgz} name: '@rush-temp/arm-scvmm' version: 0.0.0 dependencies: @@ -18511,7 +18511,7 @@ packages: dev: false file:projects/arm-search.tgz: - resolution: {integrity: sha512-JlKGpcSU5jEa7Giyvx+k5k1b6Dh7Zhs2k11IdiytGy3Fm2Qijk3btIRIcK22ABwiRl6Pvq6OTwTg7CHcm9U3WA==, tarball: file:projects/arm-search.tgz} + resolution: {integrity: sha512-NNn/oLf1snRFzWOTs/p2stol7ofLvy6kKfQvpsaraxyU9arohuUXl9PsiPA6ATa9hwR1SoRfTnl7hv016/11Jg==, tarball: file:projects/arm-search.tgz} name: '@rush-temp/arm-search' version: 0.0.0 dependencies: @@ -18542,7 +18542,7 @@ packages: dev: false file:projects/arm-security.tgz: - resolution: {integrity: sha512-Cx3vVnuVkixfnjxkezpLLCFgoblfiqXnK3MfSB6l4e2ulZsVfX/07iNCALqvxcGXwcmPYdTR4WxrFXQ689j39w==, tarball: file:projects/arm-security.tgz} + resolution: {integrity: sha512-qX5Bt0iuWZYa+FKt92nR0OAR1x7O6A4z9eRKbgDmxMBmsd4aaLRsPGba4L8YW3YKMCQ/txKodNBBbYzIG1X++A==, tarball: file:projects/arm-security.tgz} name: '@rush-temp/arm-security' version: 0.0.0 dependencies: @@ -18573,7 +18573,7 @@ packages: dev: false file:projects/arm-securitydevops.tgz: - resolution: {integrity: sha512-Hbv+DXT5nJ8GFCIRuIvUqxf2TgunmPyhTNYE40uKiiY3Hy/mR553bHUfT4ba72QSHJJEXmsuTruOHYPJYEd2zw==, tarball: file:projects/arm-securitydevops.tgz} + resolution: {integrity: sha512-jFKjkibhDa+2YyMqo9a0+vHHjCNbr6vFETQpFrkRl2BHoz/SjFRWgaH4H/AeULpjfv65Evfsc7fIXTTWiFFADA==, tarball: file:projects/arm-securitydevops.tgz} name: '@rush-temp/arm-securitydevops' version: 0.0.0 dependencies: @@ -18603,7 +18603,7 @@ packages: dev: false file:projects/arm-securityinsight.tgz: - resolution: {integrity: sha512-07YttJ6drF9eY3g7/egmTFy98lTuUS1HxFhoMr7e3bKMzDbgkDPi0cbiVf/1Dm1f0yFQFHGm3JM5b/VuoFDSkA==, tarball: file:projects/arm-securityinsight.tgz} + resolution: {integrity: sha512-Xthk9kjRS5Ln3QcomZv8mv+ytV67AWwvUNADkKfmvc5vqs9/EPnhuuGuss8MoxN6OJbDtgB81P52eCxOy8/kXg==, tarball: file:projects/arm-securityinsight.tgz} name: '@rush-temp/arm-securityinsight' version: 0.0.0 dependencies: @@ -18633,7 +18633,7 @@ packages: dev: false file:projects/arm-selfhelp.tgz: - resolution: {integrity: sha512-B8Xs0UMUJTwbnl5F2Apj4D3Qu5RkXCPoa9tQSFuJn2GzHB4LH3opGMIxaYbpZo4OFaVWh07abb+O4DtWfjdYzg==, tarball: file:projects/arm-selfhelp.tgz} + resolution: {integrity: sha512-Yp/5kbvvAsjKM5O1G5+IvkmdHgOpOYTvR0ENz6bQEyvLiRrpxQOY87arhZtpGod6CzBwj3Y/copZm+7ju1tclw==, tarball: file:projects/arm-selfhelp.tgz} name: '@rush-temp/arm-selfhelp' version: 0.0.0 dependencies: @@ -18664,7 +18664,7 @@ packages: dev: false file:projects/arm-serialconsole.tgz: - resolution: {integrity: sha512-1VE+SNe7NzYszDtx/foPi9v0rkuxg2qasxcS9Tyjejde/S0rOz6F+Dv1RKxgPn8bYZEK6+0TB2SN9JgmSPB3UA==, tarball: file:projects/arm-serialconsole.tgz} + resolution: {integrity: sha512-tbuwl2XgYher86fTQN84E92cYvZDMac2r6+LhOjRPooInHomS0vfV6OiMCca3gJkyIqKvCIaewYRBtsDBRxHLA==, tarball: file:projects/arm-serialconsole.tgz} name: '@rush-temp/arm-serialconsole' version: 0.0.0 dependencies: @@ -18691,7 +18691,7 @@ packages: dev: false file:projects/arm-servicebus.tgz: - resolution: {integrity: sha512-7s8SvOlfHwdEc4CR6JyrNmWm3wGNKBZRJn4pSdwLo9R+Xe3FNHuzPoFV5uONB87vlzFE2ev5wu/7LWz08LhWHw==, tarball: file:projects/arm-servicebus.tgz} + resolution: {integrity: sha512-fZLIGgcwn7u0kdCmHfjpryDtEtO5ffOIkYi8PYsdd0fUU8YmspnxCfkWagKhRS15Jrih20V/lXq5fBMABDZLsA==, tarball: file:projects/arm-servicebus.tgz} name: '@rush-temp/arm-servicebus' version: 0.0.0 dependencies: @@ -18721,7 +18721,7 @@ packages: dev: false file:projects/arm-servicefabric-1.tgz: - resolution: {integrity: sha512-zsDMTNrg16MLi1iNaoOIMZxZALsSMGOK+omzyhDBlf4QUQWZzwVgwW7zV4/uE+S2BzXAdvV91WEx1mKhLtUZvQ==, tarball: file:projects/arm-servicefabric-1.tgz} + resolution: {integrity: sha512-6UGCRqxRluNxX5M2NvMf5GOtpbgAmdnrVYtQtTc/pMREuGHiSnNV7eKBlc+wOgzXPBWMQupwd8QcVYyt7AlEww==, tarball: file:projects/arm-servicefabric-1.tgz} name: '@rush-temp/arm-servicefabric-1' version: 0.0.0 dependencies: @@ -18751,7 +18751,7 @@ packages: dev: false file:projects/arm-servicefabric.tgz: - resolution: {integrity: sha512-LyOU99tUfJdleRudJAd7zFDFD8Q3z+gYCoSw/ARvqPI/uOr5KZwBSt4kqmrieHC4CKjc48EOjgPRm/Z9atnOcA==, tarball: file:projects/arm-servicefabric.tgz} + resolution: {integrity: sha512-ngmoIRydHeG2s2KBbidNsGCs6ezegZAFBdzDa8rdED3Jxk0QfVBjgEX3R8BlM0UBkjXN2vPoVbWGQ5qtent8RQ==, tarball: file:projects/arm-servicefabric.tgz} name: '@rush-temp/arm-servicefabric' version: 0.0.0 dependencies: @@ -18798,7 +18798,7 @@ packages: dev: false file:projects/arm-servicefabricmanagedclusters.tgz: - resolution: {integrity: sha512-Kkikw+KilbQHL1sc42pegiA8WkR+uAco/BMH4k/OfFR7yk2VlliKjBLSIwTIxb938XrEZeGry8mMy4vQuMJrFg==, tarball: file:projects/arm-servicefabricmanagedclusters.tgz} + resolution: {integrity: sha512-ogHNglY23yny1DzKJ+TJ/hwk80KD8woVXF0nzMGtgr4xK1VDR/nDCnJ6fwvcu2jyvA7w/RqXQOE04kMjn35VqA==, tarball: file:projects/arm-servicefabricmanagedclusters.tgz} name: '@rush-temp/arm-servicefabricmanagedclusters' version: 0.0.0 dependencies: @@ -18829,7 +18829,7 @@ packages: dev: false file:projects/arm-servicefabricmesh.tgz: - resolution: {integrity: sha512-HX67hh3knqcchYlSWFKX7wn7lYFmFdqW44X8dTnUSExwFNuHuQ/zrDbGpWsuqFn97NcEeh3FDQXpbLGYuKQiHQ==, tarball: file:projects/arm-servicefabricmesh.tgz} + resolution: {integrity: sha512-xdLa+h/zRyPVz8Ha6gyMY2Dj6Pvv6w/A0pv7yqt/wQkCiPana7auJyJcc3F9sUUynNuhoZyKZ9VnImlcCndRDQ==, tarball: file:projects/arm-servicefabricmesh.tgz} name: '@rush-temp/arm-servicefabricmesh' version: 0.0.0 dependencies: @@ -18857,7 +18857,7 @@ packages: dev: false file:projects/arm-servicelinker.tgz: - resolution: {integrity: sha512-Rw9j5L7fekoArYrh1wMGsfhEZ31UiUPfIxUolDb54yo3PCThBme8twGSwDL/TvfJw8Ms4nH01um92ivf1XxiHQ==, tarball: file:projects/arm-servicelinker.tgz} + resolution: {integrity: sha512-cnaI2wou6rHncFY3xOn2EbxClEZwq09rcqTfSBp3qXuHhSadKZ1boREjRNWJDS0F9WKSbFArOgrtw3NWLGKoIA==, tarball: file:projects/arm-servicelinker.tgz} name: '@rush-temp/arm-servicelinker' version: 0.0.0 dependencies: @@ -18887,7 +18887,7 @@ packages: dev: false file:projects/arm-servicemap.tgz: - resolution: {integrity: sha512-6sR8Zk9I/BpB+lqR44CCHVMqn6mJHGxhWFC8wqqwpd/xd0XKbfYB/Rewaso+Ud5JliX73VXAs4vQ55y5GuehMQ==, tarball: file:projects/arm-servicemap.tgz} + resolution: {integrity: sha512-tX4zJQlbhwSe26x/zw+ypLR0+mUdS+fsc48e6w0nL/cmSs0E/TZzBlQRl7H4fVQV01mYWJxkX0D7LC2yv7ZkQw==, tarball: file:projects/arm-servicemap.tgz} name: '@rush-temp/arm-servicemap' version: 0.0.0 dependencies: @@ -18915,7 +18915,7 @@ packages: dev: false file:projects/arm-servicenetworking.tgz: - resolution: {integrity: sha512-HXdDuirNeRFqL55QZZiz8+wHDLGi2el7xSPOVJim4WhO5iZ8INACkCr9+RkN1IMRff50DfUdK6w1McDIPlQu8g==, tarball: file:projects/arm-servicenetworking.tgz} + resolution: {integrity: sha512-iUYiVR/KEAgA1sVq8TOnnR8ZTBNFZgdxt8pkDAgYtjSGoJ77QpIkKsTaAXH7Gdc/yG2nHYULm31NjySZrjk0Jg==, tarball: file:projects/arm-servicenetworking.tgz} name: '@rush-temp/arm-servicenetworking' version: 0.0.0 dependencies: @@ -18945,7 +18945,7 @@ packages: dev: false file:projects/arm-signalr.tgz: - resolution: {integrity: sha512-hKhoT7t0dBvBxAuD0VmG1ItZDNjprz3Zl4/cPIyN/GEsNFyUcPWpxLvMnQExKWjWYqkE6GozEtWfUuN3o6qVBA==, tarball: file:projects/arm-signalr.tgz} + resolution: {integrity: sha512-//D4ROtuMFfkL448Xw2X6VNSawv1JP64/9b1tROovvse4yyaKVm3EuToGihzlT6i7ZYDtoeKR2RjNzzq+EdVEQ==, tarball: file:projects/arm-signalr.tgz} name: '@rush-temp/arm-signalr' version: 0.0.0 dependencies: @@ -18975,7 +18975,7 @@ packages: dev: false file:projects/arm-sphere.tgz: - resolution: {integrity: sha512-7oOjTxSO9G2XEd7cfFHhYM+CyMj+huZ5KPdc2wprA3zoA977UPWKtfsrV7q0oNaWyobr20uuBsW8tTe8mCxp9g==, tarball: file:projects/arm-sphere.tgz} + resolution: {integrity: sha512-a3acwGYvmSNDqzWAPZOha0SLZNQyeLTnutW4erOGrck4OEnYDR7COhnUpiOGL8BIgaushPAZ9ePo8zN9M+Nz9w==, tarball: file:projects/arm-sphere.tgz} name: '@rush-temp/arm-sphere' version: 0.0.0 dependencies: @@ -19005,7 +19005,7 @@ packages: dev: false file:projects/arm-springappdiscovery.tgz: - resolution: {integrity: sha512-neDf8PG1/HSmeFOC97uswyfatTahZx+L1+y62JF0c5K5g/2RpdkyMzMM3y/XE+hOirtZNRTx3Cemu52pYqQcFw==, tarball: file:projects/arm-springappdiscovery.tgz} + resolution: {integrity: sha512-4ITn6D0Ow4w7vp76TUnkAoGmmI8hDWT0ysmmBqkow/42rTL3EEUuC4BOWFWgSC3MyjUf/qV5Ng5HpePLqAYfaA==, tarball: file:projects/arm-springappdiscovery.tgz} name: '@rush-temp/arm-springappdiscovery' version: 0.0.0 dependencies: @@ -19035,7 +19035,7 @@ packages: dev: false file:projects/arm-sql.tgz: - resolution: {integrity: sha512-4uzGOXMp2QsJGHHzTsjVP6qykvXtQDmexBR2ZWiG5oqjkJ7F1rPXeH7dEpdWYyK+vCl3xpyTB2Aw2LHyVgREEA==, tarball: file:projects/arm-sql.tgz} + resolution: {integrity: sha512-JswK/xxfffuq6GqmLZ30PNB4b8XpPVWgYDG+myAsaxqKhXx1uKcRMLsaQr3tTTT0bRV2unkmbNG3Ey7BjBsnpQ==, tarball: file:projects/arm-sql.tgz} name: '@rush-temp/arm-sql' version: 0.0.0 dependencies: @@ -19065,7 +19065,7 @@ packages: dev: false file:projects/arm-sqlvirtualmachine.tgz: - resolution: {integrity: sha512-ylVlvSENVEipjj6tzFfAhyBgcg2NyekGz0ICwYeh1+vwN2AyUR1utdpOO98OVBw/I1m2wfCunfsfuMfnIwLWWg==, tarball: file:projects/arm-sqlvirtualmachine.tgz} + resolution: {integrity: sha512-y6IMjc81X/5x0M7oNaOorHAJVycAiUks/CZ3E74U9GRsVPC7Qr+GlE4M4bMnRUl2JR/KKGzkR/5gOStOc7BNow==, tarball: file:projects/arm-sqlvirtualmachine.tgz} name: '@rush-temp/arm-sqlvirtualmachine' version: 0.0.0 dependencies: @@ -19095,7 +19095,7 @@ packages: dev: false file:projects/arm-standbypool.tgz: - resolution: {integrity: sha512-cZ+3KqNhZXQ8w2JL3VlYce2KrfDPCXGHgRqZQiOUbujloVx+MYlARSceN8vLAF1WdVx2Mpz/R1xQQmKgPnLA6A==, tarball: file:projects/arm-standbypool.tgz} + resolution: {integrity: sha512-98KO/aEO7Jt3dxN6nU+52vmQJ/fj9Y3X144am3zcamP9wQA2Yavq2srKLUS6HzKzv1ylVl6B3mqfR1SGtdV3YQ==, tarball: file:projects/arm-standbypool.tgz} name: '@rush-temp/arm-standbypool' version: 0.0.0 dependencies: @@ -19136,7 +19136,7 @@ packages: dev: false file:projects/arm-storage-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-Dk0/NKFoJ3RV/lGmc0Zrq+VaBnlCKOBo5EREfY9ckNo+fiexKWC2nQHSUv0oxe4Y1wlASmuESfjF7Xbc7lqicQ==, tarball: file:projects/arm-storage-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-BhJiAVxtvqPZQlVltSqRfNHXwvEfkM/zpBh7m9Au6h/boIEOg4zrghJ53FF+KLkijK7Vs1w/yWjNhj1CxNcdRg==, tarball: file:projects/arm-storage-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-storage-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -19165,7 +19165,7 @@ packages: dev: false file:projects/arm-storage.tgz: - resolution: {integrity: sha512-D+gdM1Cx/LTFUhd06ZEyB9xm+/pOlNTPAjdNVdChyorVn/lnXjEZh3f3sgRphixkYlck4kGxtFAdzwu1srfsLA==, tarball: file:projects/arm-storage.tgz} + resolution: {integrity: sha512-J2YksUzTqL/qDyCRy1HI3hf64NDRxxs2OA2+mSiTTA2G2bwIgiAQ9f+yjxdynLnaE6JvGO4qNdYTMNuyh7XgWg==, tarball: file:projects/arm-storage.tgz} name: '@rush-temp/arm-storage' version: 0.0.0 dependencies: @@ -19195,7 +19195,7 @@ packages: dev: false file:projects/arm-storageactions.tgz: - resolution: {integrity: sha512-8Pj/Bf/MGP8ktyIo+0pu9anWngbnHunMPbX+I92bfX9YPloFF4+8BkP7uzTCFhX2pFrKapmacRZ7ygRwJmv57g==, tarball: file:projects/arm-storageactions.tgz} + resolution: {integrity: sha512-prmV8ZjJK1sfwzNJx1FWYXmERGr6ithKFTPq1hc9zv6FVq2W4vLi3d78/SgBwYr1Ro/YCMFU2DHR5LF62YUDKg==, tarball: file:projects/arm-storageactions.tgz} name: '@rush-temp/arm-storageactions' version: 0.0.0 dependencies: @@ -19225,7 +19225,7 @@ packages: dev: false file:projects/arm-storagecache.tgz: - resolution: {integrity: sha512-ift1WaqWkoJTVzAQUPL0XmlDFuMeNaX1pgZ/fBJzu9b3QRq2mNmp5ZHZYItvyGREoHQFazdmDiiuy9u2L3dY+A==, tarball: file:projects/arm-storagecache.tgz} + resolution: {integrity: sha512-Lm1hQxdHpuLDC/UNmLXg+/Ownfpz77HS4pVUwdXeLOoZHt83c19tUvnUyl2fkxN6l43gFURxaNxBxDXOkf1Fvg==, tarball: file:projects/arm-storagecache.tgz} name: '@rush-temp/arm-storagecache' version: 0.0.0 dependencies: @@ -19256,7 +19256,7 @@ packages: dev: false file:projects/arm-storageimportexport.tgz: - resolution: {integrity: sha512-dKaklFHHYla9L6VZNIdahMaANzLo0UZzRdaszl5JsMG38wAYDcYd299I44veO5MrVF0y0Z7PiCnZvDMcDKT5nw==, tarball: file:projects/arm-storageimportexport.tgz} + resolution: {integrity: sha512-Kk+hVNzhiYAcPVoHMzfRA5ic9EyKfxOLyyOEDtcL6xhew8VcE9zMtnTQUV0pHWXl2wBeYGaikA7tDW3fevL6CA==, tarball: file:projects/arm-storageimportexport.tgz} name: '@rush-temp/arm-storageimportexport' version: 0.0.0 dependencies: @@ -19284,7 +19284,7 @@ packages: dev: false file:projects/arm-storagemover.tgz: - resolution: {integrity: sha512-fEA/lydnfM5333GkobFYgVdqYYPqs6g3+n6uH0UrvUFb9jOjyichQrE4TAf3Jkwyd3QC1OmiBsaBcPGOyFKMlg==, tarball: file:projects/arm-storagemover.tgz} + resolution: {integrity: sha512-JnK7xSJNR07rz1If0YUYDFVjUFPo21pNFxLhED9D3gYscmtJQ0SLoJ2KoBFlVldINKvW4FN/Uwk/r6uJJ4Ogwg==, tarball: file:projects/arm-storagemover.tgz} name: '@rush-temp/arm-storagemover' version: 0.0.0 dependencies: @@ -19315,7 +19315,7 @@ packages: dev: false file:projects/arm-storagesync.tgz: - resolution: {integrity: sha512-/UPAsoxu3THqO2p2vWl/wEAMG2rS7wT0PuXr9F+BGFO7r+TRmPey4/p/Km2MP7AKoxoiZZl+wxEcUbBftO/qVQ==, tarball: file:projects/arm-storagesync.tgz} + resolution: {integrity: sha512-RNJ1JUw5ZYzt/jJzLrHCEzi+oY4efJtJ/xWqnVlOXw1STl/s+MRleM+tSKw4zub9yVN3YkXlK4NC+/rrlrohiA==, tarball: file:projects/arm-storagesync.tgz} name: '@rush-temp/arm-storagesync' version: 0.0.0 dependencies: @@ -19344,7 +19344,7 @@ packages: dev: false file:projects/arm-storsimple1200series.tgz: - resolution: {integrity: sha512-L9ILvdPbReCuNr+9f12UcihnSndHXgI8sKv9IIaWiCKQMPEMP1Pk7a1npC4KMJt+evOhtGhoxhd7YKL8Yh+Fwg==, tarball: file:projects/arm-storsimple1200series.tgz} + resolution: {integrity: sha512-ciw7udwQWYlaCJI74gDNSzUk/TDizsfB2U1yaJazGBKiOARwAzklZ1dKYcI/sybBJliLu95B2NpbDPnWbGzVYg==, tarball: file:projects/arm-storsimple1200series.tgz} name: '@rush-temp/arm-storsimple1200series' version: 0.0.0 dependencies: @@ -19373,7 +19373,7 @@ packages: dev: false file:projects/arm-storsimple8000series.tgz: - resolution: {integrity: sha512-nnZ8n6xK3zOtbM+qw8WWaCiniwWN7riA/2xuXpI1MJYb3WLCqRDhF1OPGEE62sMd0PvC0ZDWurZ/M+MVL5+3jw==, tarball: file:projects/arm-storsimple8000series.tgz} + resolution: {integrity: sha512-LB4whcJidzmcAduNBKpZ+yeUiP81Hd4ontBuS9xwBC3mskmSNchBRUHBnOP1NNm6dsJh8yJ/cwo2ERVPwtU9qw==, tarball: file:projects/arm-storsimple8000series.tgz} name: '@rush-temp/arm-storsimple8000series' version: 0.0.0 dependencies: @@ -19402,7 +19402,7 @@ packages: dev: false file:projects/arm-streamanalytics.tgz: - resolution: {integrity: sha512-D7TpBeB6DPpAWPJwq3jlivrojOWee/r7TSJuv7hxUBVKF0fcyqtEPHTafSUwEZAS0zGodfBuuwTyIDzC5u4JMA==, tarball: file:projects/arm-streamanalytics.tgz} + resolution: {integrity: sha512-JD1vmdc8K94+1hhPgqErq99pNyvDDHQK9GhWqNCu5gCvV0k12jofyv7v4bxrt4ucRLwSn22jyl4BSa+35SOt9w==, tarball: file:projects/arm-streamanalytics.tgz} name: '@rush-temp/arm-streamanalytics' version: 0.0.0 dependencies: @@ -19432,7 +19432,7 @@ packages: dev: false file:projects/arm-subscriptions-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-9kqe6iGwxQqLIhNyZxk7iWE0ISaPERLYdW/T/EUKdhAPHCXOEWl6jyoRv7GlrISyrO+VyzlaZA3/Mpkm7bp80A==, tarball: file:projects/arm-subscriptions-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-Duc1ZdKb4APnFH0ct5dtnrHstDYeQ3UdD0jCg0oldd3hDwCkEplmDm3Eue8WFbRnx1tBUvwhn1PzMZ39mKkJAg==, tarball: file:projects/arm-subscriptions-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-subscriptions-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -19460,7 +19460,7 @@ packages: dev: false file:projects/arm-subscriptions.tgz: - resolution: {integrity: sha512-nlZ0V5NInUqt+nDesrlEcOW0zco4k2AFLjKYpXat5aapkaSrXM122M6QjSS1bANc2PaujIMet4YgNk52bczlHQ==, tarball: file:projects/arm-subscriptions.tgz} + resolution: {integrity: sha512-7tTcBOLvvnnVpm8e/xueEqechdj+7gXaKqZcictAopdO6H/0bVZyvP1i2CiN2QXB8Yg0+tGoiUK72rJmZsvg3w==, tarball: file:projects/arm-subscriptions.tgz} name: '@rush-temp/arm-subscriptions' version: 0.0.0 dependencies: @@ -19489,7 +19489,7 @@ packages: dev: false file:projects/arm-support.tgz: - resolution: {integrity: sha512-xboAPd4ZedMCUoDARb1jBQG9OqiV4eJeM083O69HM96KcD1ofFIJ9bxWAf2r+QTN5zNOmcD8MKAZHTIfrYdEEA==, tarball: file:projects/arm-support.tgz} + resolution: {integrity: sha512-WCl64lCimB7pNbgeonCmJS1qSwmNxoB6KqBmmA/s3TzENiqmhzfqBERkslh/x7b1IE1Qclqts3l7lxzEGVHPhA==, tarball: file:projects/arm-support.tgz} name: '@rush-temp/arm-support' version: 0.0.0 dependencies: @@ -19519,7 +19519,7 @@ packages: dev: false file:projects/arm-synapse.tgz: - resolution: {integrity: sha512-uhGp6uBIE4OQAM8QkLCFZQEAUH5gllL9g/fcgsTXbIl2wN+hErb7FPbhgejXx4YoSuD/XXeGP+mF00qez1ObRQ==, tarball: file:projects/arm-synapse.tgz} + resolution: {integrity: sha512-YzkU2mRcXDAm0GKZVMcNnyOmEsK5Fo5WBd1ZZuvr6HxVnfLGSHhyhbxWddrkkYLaEU3WB5Lo+MyMTNMX7fiJuA==, tarball: file:projects/arm-synapse.tgz} name: '@rush-temp/arm-synapse' version: 0.0.0 dependencies: @@ -19549,7 +19549,7 @@ packages: dev: false file:projects/arm-templatespecs.tgz: - resolution: {integrity: sha512-WZcUYjB8p3XJq4YE2aTRuwfjFLUgiAubD/bprro19usu44kuVqxFw5/a137CkCosJWFRyFFcZS1VVuFlWlOlbQ==, tarball: file:projects/arm-templatespecs.tgz} + resolution: {integrity: sha512-pV8zvIeZl6Zw1r+rYImToOFqB3IonsnSchpOcLET1HULXxF9sYPkdZHof+x8586LfA0/cSq5ew+NP7Gjll0rBA==, tarball: file:projects/arm-templatespecs.tgz} name: '@rush-temp/arm-templatespecs' version: 0.0.0 dependencies: @@ -19576,7 +19576,7 @@ packages: dev: false file:projects/arm-timeseriesinsights.tgz: - resolution: {integrity: sha512-kTjFi9gRBxK6iv7PZ26RytCDhwZPBDvOgiW08rJZUG5uTjoKKXbao1mhdhIwW6OCxRAXBx7jeSaJ5pEKDgmM9Q==, tarball: file:projects/arm-timeseriesinsights.tgz} + resolution: {integrity: sha512-aNZ/o+0GLk76WBRObGYUXx3X/XEDM7lf21OB1/njJK7+nYpqAUl1KsUZFtST6jJpxcqdCEz/2aIl1zKfzPTUYg==, tarball: file:projects/arm-timeseriesinsights.tgz} name: '@rush-temp/arm-timeseriesinsights' version: 0.0.0 dependencies: @@ -19606,7 +19606,7 @@ packages: dev: false file:projects/arm-trafficmanager.tgz: - resolution: {integrity: sha512-4dB87usrmS7g4Y/wbt3BHkHC3NX2FbtRD5l8O2Iy7LTnWDpUk5GXZDyhJEuO/FzzxB4eYI/+VJMHmCkrWck/gw==, tarball: file:projects/arm-trafficmanager.tgz} + resolution: {integrity: sha512-iMPP4pHuXFMziscMsQ1kfrfINmu+Uz1dWESxOfAlBWFrYkuZpyacWXySRRy3uQYtDpFO3b8fPcWbKvn5hDlzUA==, tarball: file:projects/arm-trafficmanager.tgz} name: '@rush-temp/arm-trafficmanager' version: 0.0.0 dependencies: @@ -19634,7 +19634,7 @@ packages: dev: false file:projects/arm-trustedsigning.tgz: - resolution: {integrity: sha512-pM0yO35qILHYaE1RUXpcUNchhXTOxF//WJ9yoM6Ts5G+oXI1oodtUQKcj5F4KUpGj8JTvdsyMqzjzeCR6coWlw==, tarball: file:projects/arm-trustedsigning.tgz} + resolution: {integrity: sha512-PWnXX1lNECFzpFwIBdThheK+pAh5+FI6vvbgRxa8BW0yAULyjVeTRFCIfXFY3YF2CQFatKKBOn4NSc3x/3qnHA==, tarball: file:projects/arm-trustedsigning.tgz} name: '@rush-temp/arm-trustedsigning' version: 0.0.0 dependencies: @@ -19674,7 +19674,7 @@ packages: dev: false file:projects/arm-visualstudio.tgz: - resolution: {integrity: sha512-sZqUoPfTZMPABUs78TRxnVgyyvmkfpfdFgnTqDtKV2VMfR1+elQonhWnIB9zZvzM3PWKhHKYMbMYGL6q/6hY0A==, tarball: file:projects/arm-visualstudio.tgz} + resolution: {integrity: sha512-DbNavcbXUgqJf1lVPCu+S0ckwd7yNiEiQBlMq+J9c6NWHNmpGUea5c0clXWdBUs80gZGpGTUwud0PDnolmNP0w==, tarball: file:projects/arm-visualstudio.tgz} name: '@rush-temp/arm-visualstudio' version: 0.0.0 dependencies: @@ -19703,7 +19703,7 @@ packages: dev: false file:projects/arm-vmwarecloudsimple.tgz: - resolution: {integrity: sha512-cJ3NpR44iDYdN1p6NKqiioV82rBsnbQgREtB9uLcCedMwuJGmvmwoUC//X92+gT14R2mD0AJhcto91Z6gZ3gEg==, tarball: file:projects/arm-vmwarecloudsimple.tgz} + resolution: {integrity: sha512-Tb8LWMIa0cIApKDexTqAgxFIxetP0QeBXH28LQra7/oULW46CHZN5t1Of/XCg8NCebnR1VVq4H6YuBkamFn1aQ==, tarball: file:projects/arm-vmwarecloudsimple.tgz} name: '@rush-temp/arm-vmwarecloudsimple' version: 0.0.0 dependencies: @@ -19733,7 +19733,7 @@ packages: dev: false file:projects/arm-voiceservices.tgz: - resolution: {integrity: sha512-0p3hyirUi4tE54EaNnC0IWATrXVXxXhkSBwUQgaaUQasL2bJe8yYRldg2gLuMfM04fDB+dof6sV70bI4MOTyDg==, tarball: file:projects/arm-voiceservices.tgz} + resolution: {integrity: sha512-XYwbHyA1LMsbMzM6i2d8EdRmVkm+qlO0js/H0WV6PQ6cYCjYvhSJn32S2thsRXHsbvpfHZyR9VEDJ+K69PE7Kg==, tarball: file:projects/arm-voiceservices.tgz} name: '@rush-temp/arm-voiceservices' version: 0.0.0 dependencies: @@ -19763,7 +19763,7 @@ packages: dev: false file:projects/arm-webpubsub.tgz: - resolution: {integrity: sha512-B+gUzveoYN7PvJ8n62fRjUH/JR8mOH0Ta8LfjVdqK3cKhfD7jHU0JIww2tJlbx8dWOUAwUQ8OV1yx7FhcFBVIA==, tarball: file:projects/arm-webpubsub.tgz} + resolution: {integrity: sha512-eSjHx16RUnAwJ0qPNc/yBMfVn8boFuomPD7Wnj3vGH2rMUGpcYAFHgUWjT2uzauFhU4zTAX38bbGLTrztjcDLQ==, tarball: file:projects/arm-webpubsub.tgz} name: '@rush-temp/arm-webpubsub' version: 0.0.0 dependencies: @@ -19793,7 +19793,7 @@ packages: dev: false file:projects/arm-webservices.tgz: - resolution: {integrity: sha512-EXRMDSMgRVCzdphqLjHqc6Qh4i+GeQMaSx49YG1QK3Y3k7gVOOD8vJ3yOlF559/cbZItinNFpCDRdwCY7ZDK6g==, tarball: file:projects/arm-webservices.tgz} + resolution: {integrity: sha512-3AUvG7keFYXdmeWVGjQDBgg1dBpae5B4tz4hGkJgtHnL7WH9G2+Y6qtIlEe4q0ds2VToZOoKGTP0Q7foU+XMCA==, tarball: file:projects/arm-webservices.tgz} name: '@rush-temp/arm-webservices' version: 0.0.0 dependencies: @@ -19822,7 +19822,7 @@ packages: dev: false file:projects/arm-workloads.tgz: - resolution: {integrity: sha512-9U3p/HSzE9FvRsMI2GncQDU/qTzmcIaUdVwVNFhJGhcw0yB3o6HaNUNk+KvFtNLNDRAONVLRqBn3X0FPqTyezg==, tarball: file:projects/arm-workloads.tgz} + resolution: {integrity: sha512-RRKjeLMz7miNlGELRsyC5l8m1QaEW2d2GRvUqSuxYqyOcO32Cx7HcuSLbptoyR4vWOdRivMQpQsjPkRWgZxkXA==, tarball: file:projects/arm-workloads.tgz} name: '@rush-temp/arm-workloads' version: 0.0.0 dependencies: @@ -19852,7 +19852,7 @@ packages: dev: false file:projects/arm-workloadssapvirtualinstance.tgz: - resolution: {integrity: sha512-gi64gGNgcvfqymMJtk6TVCzhfTMNm/c31TtUvbb2NIEHfnL8ilqLp36MslfDII8HAePx/Q0tSp1e+GsDj/B/vg==, tarball: file:projects/arm-workloadssapvirtualinstance.tgz} + resolution: {integrity: sha512-4EYSd9RcS40GlkNR5IGqsCeh/Pv9Xx36j0V1k/2Bjlw5hkpWBo5uCDAR9qWXC0F9YVv4FZ1VqcupEgjyoIvBOQ==, tarball: file:projects/arm-workloadssapvirtualinstance.tgz} name: '@rush-temp/arm-workloadssapvirtualinstance' version: 0.0.0 dependencies: @@ -19882,7 +19882,7 @@ packages: dev: false file:projects/arm-workspaces.tgz: - resolution: {integrity: sha512-ml2DCKgBYjaSTnSfhlgJNaOxIwsWXXFdQkuotrNuVxOXzBY2qGnGbeZvE8925RqOmcL7dgi7ILvZ3iV7KOgvnA==, tarball: file:projects/arm-workspaces.tgz} + resolution: {integrity: sha512-WtBMuClZa6vT0ju0K65NztpljH40w+V5vKmOMUPK9vC0k2X7wxX13niHj6fZeyHftV0uAhK3rRZZjYIYVnr1rw==, tarball: file:projects/arm-workspaces.tgz} name: '@rush-temp/arm-workspaces' version: 0.0.0 dependencies: @@ -19909,7 +19909,7 @@ packages: dev: false file:projects/attestation.tgz: - resolution: {integrity: sha512-S4+RET61OboKlkCbVFuMQAwKSN2zLs3FcTZgdjO0uFskexGuKt7ZFfpeNJQeA0DgfkttUVoDmpFTI5DSCiIvPA==, tarball: file:projects/attestation.tgz} + resolution: {integrity: sha512-0kI30QHKBXk+W68K+zxIKPJWca0weJVb/pp/HR9iPyiQpzqPYrwbMSUbK2Z1AwmRx6AoWKXW49xwlLybTrkEPg==, tarball: file:projects/attestation.tgz} name: '@rush-temp/attestation' version: 0.0.0 dependencies: @@ -19961,7 +19961,7 @@ packages: dev: false file:projects/batch.tgz: - resolution: {integrity: sha512-qcejYVKun66XfHmA/hkE/MzrE/Wd7ZohaNc47LLKtziqFrTEbvhvHct55kMvhO5btpLaKyyY5h/DHxniRhBEqw==, tarball: file:projects/batch.tgz} + resolution: {integrity: sha512-ed24pRYe+m5nW118Ux5kuuHDi6kMlZ4Qm7V4d/RlZHUMZ7sRqJBQZOrbaTAeIvDardnSMcNixvohDhTKlovOPg==, tarball: file:projects/batch.tgz} name: '@rush-temp/batch' version: 0.0.0 dependencies: @@ -20002,7 +20002,7 @@ packages: dev: false file:projects/communication-alpha-ids.tgz: - resolution: {integrity: sha512-iUYWqI/PwHdHd4PpLPlBaIzTsyUOcTPCkIepenHDvHNu6Iy3QZpi0jYqo1GRbvIXMs2i8nQ4/WxAhUwADxvLGw==, tarball: file:projects/communication-alpha-ids.tgz} + resolution: {integrity: sha512-xFgJleznDehcuviTpsLqycCqPzUAqwPJ0E2Z0xdZcrNvEigbqrOj/drGbCv7YIvnFyBCO/xapXdLAYOm5ukuAQ==, tarball: file:projects/communication-alpha-ids.tgz} name: '@rush-temp/communication-alpha-ids' version: 0.0.0 dependencies: @@ -20231,7 +20231,7 @@ packages: dev: false file:projects/communication-identity.tgz: - resolution: {integrity: sha512-WKDtxUJqqvXMsdSa52wAn4azC0enIDOAdwEw5zMBZQm6BnBbauirwUVFcz6WW973ieqI31pHhue6zTAefwWTfQ==, tarball: file:projects/communication-identity.tgz} + resolution: {integrity: sha512-k6k745cwIrTlRp09oHrKDdBaGBTa7Hg2HmHAZoRzqbgS7rBgx7Pcdjacfs4NrPofMDzGsATT3LuwyMCDEvylLw==, tarball: file:projects/communication-identity.tgz} name: '@rush-temp/communication-identity' version: 0.0.0 dependencies: @@ -20327,7 +20327,7 @@ packages: dev: false file:projects/communication-job-router.tgz: - resolution: {integrity: sha512-jlO9QjK5W6b4aS+ABhwfwjecO7DG0i3iSpzAEeXKH+DR+tD8gEfi9OXiQrLbQpHSqrMf4XYtfU6dNA2AwXh9qw==, tarball: file:projects/communication-job-router.tgz} + resolution: {integrity: sha512-mrWimvzdQQ2oP/dvkEM0P3pKsYmsZAZF7VmyJ6lAStfZRAIwZLIbw7TIGfTxIdrLmi0Z7HQJpoRLC9At2UQSVw==, tarball: file:projects/communication-job-router.tgz} name: '@rush-temp/communication-job-router' version: 0.0.0 dependencies: @@ -20373,7 +20373,7 @@ packages: dev: false file:projects/communication-messages.tgz: - resolution: {integrity: sha512-MAIKLbEP+GCVWFg2oIMjZKZJDM/m9BUh5idjXIvPmDF1cWTS0ebUcTbNZOZSsMLDs6vlEj+JLtjreghnm3tauQ==, tarball: file:projects/communication-messages.tgz} + resolution: {integrity: sha512-0W4DsVHZHJYvVHCWLB2U4jta6l9Bs17F+B++0lekolDACQ6Mvjw4381+dcj03MgMIc97cOjk7G07s5YZ30mXkQ==, tarball: file:projects/communication-messages.tgz} name: '@rush-temp/communication-messages' version: 0.0.0 dependencies: @@ -20419,7 +20419,7 @@ packages: dev: false file:projects/communication-phone-numbers.tgz: - resolution: {integrity: sha512-Xb+Yw0lwlocVQeDFA/jNZvzdOU3j33WKDWOm0CrPPRLXEF2c1O0w8RJbKLrlQ7Pk9+dUeCs0gGzkKOA2/kE8kA==, tarball: file:projects/communication-phone-numbers.tgz} + resolution: {integrity: sha512-hRdt1H4gRCYl3EswQf98r+dTcXZAjsRVHSo0BYFMqhe7P855XD5WWC89RZJEY0qmkajuGmPRaJKSZRARYdUvRQ==, tarball: file:projects/communication-phone-numbers.tgz} name: '@rush-temp/communication-phone-numbers' version: 0.0.0 dependencies: @@ -20465,7 +20465,7 @@ packages: dev: false file:projects/communication-recipient-verification.tgz: - resolution: {integrity: sha512-t/dSvm83l91b6FK3+kH9Of9AiX5bzXCafc3Ozc4rrYa3RLo17slswJdH/eWYgibiNyf3/YpK59pNPWf92rffdQ==, tarball: file:projects/communication-recipient-verification.tgz} + resolution: {integrity: sha512-J+rtKd7sOJYyndWDR27PsojcmgR/hFyjqFpMCe+8K9dWL/1aSVcq8SgJrsN7wjX5d4F2RdHpQgrQX03MT4tfEg==, tarball: file:projects/communication-recipient-verification.tgz} name: '@rush-temp/communication-recipient-verification' version: 0.0.0 dependencies: @@ -20548,7 +20548,7 @@ packages: dev: false file:projects/communication-short-codes.tgz: - resolution: {integrity: sha512-GyoXHmXlQ4LSxjc8HzKSOz1kNAMGUZ5DPDh+jj/XwE7hZpoZ4JQlobh9xzBpkwfAMudYx1Pqrw0TbPxVyJRGIg==, tarball: file:projects/communication-short-codes.tgz} + resolution: {integrity: sha512-lsIHAuCOCp15qm4M/bW8noYmn5G7YNHGXXJMbRJpoF1xugHYd32txq9ncfkW736opZLogdl4g4BaP7Xz09jltg==, tarball: file:projects/communication-short-codes.tgz} name: '@rush-temp/communication-short-codes' version: 0.0.0 dependencies: @@ -20595,7 +20595,7 @@ packages: dev: false file:projects/communication-sms.tgz: - resolution: {integrity: sha512-hShG7UuPjkcZPi05sMJIIKzt7P8KxHVV8NFqfQFkJqZTqUpz/oX1qgIGF6qfeuRdlAgWHBO6Bm5dbvAB/27bLA==, tarball: file:projects/communication-sms.tgz} + resolution: {integrity: sha512-LKLE/O+Ik1n006WeJxC+plQO8u+4Afv3HIi61dH+4uPsZtPmODiCePKj/LOJ4lk+HMbvO1rMuA/FIFtfZ23xRg==, tarball: file:projects/communication-sms.tgz} name: '@rush-temp/communication-sms' version: 0.0.0 dependencies: @@ -20641,7 +20641,7 @@ packages: dev: false file:projects/communication-tiering.tgz: - resolution: {integrity: sha512-Gx+JUJpNjV1mZZiLy6bn+WknQlil9GipTAREI0F3CUfv3ptQ0HRF58MEOl2Em/k34ChET8Bd4BjQrbByAexSlg==, tarball: file:projects/communication-tiering.tgz} + resolution: {integrity: sha512-BWypMb8plmmmJEsL0pwLaKwyxs5PocxMyKUBQGAGR3hHDbBiXH6mxyx51fXa4Wr6XZRhn8nYYs9QOJTzpuYWqQ==, tarball: file:projects/communication-tiering.tgz} name: '@rush-temp/communication-tiering' version: 0.0.0 dependencies: @@ -20688,7 +20688,7 @@ packages: dev: false file:projects/communication-toll-free-verification.tgz: - resolution: {integrity: sha512-5dlVQHAIFCsmOM1Hjbnq/hx+h1HL5uBEYLs7OKQ75sEECEOYNItbISt14G/hUmgedeUo+MdUMcfbWsJSOoHFjg==, tarball: file:projects/communication-toll-free-verification.tgz} + resolution: {integrity: sha512-ZioTnRKuptXOXirUF/1bAhaRRjKUYu0UW+jUAGsEodkIYnfz24jbuTuzbn393sijtrTRdF+i7PVw1DTHPRm/bA==, tarball: file:projects/communication-toll-free-verification.tgz} name: '@rush-temp/communication-toll-free-verification' version: 0.0.0 dependencies: @@ -20732,7 +20732,7 @@ packages: dev: false file:projects/confidential-ledger.tgz: - resolution: {integrity: sha512-RS9NA+FZyxsiEJ5qT7QL2SMjx6oTJ3cT6L2stXjDw8TUwgpxE20tNQ1M1qU1kQzC3OvXeDNoIK49+siKZFJZQw==, tarball: file:projects/confidential-ledger.tgz} + resolution: {integrity: sha512-8fjMFjF5SoW8yrayja4pbxrjsxJdJMZRuUplkkv6lxJ5wjTZy1EIwJPAzxgUoTnNB1u/MoEPTzmNx7RJnwGgww==, tarball: file:projects/confidential-ledger.tgz} name: '@rush-temp/confidential-ledger' version: 0.0.0 dependencies: @@ -20763,7 +20763,7 @@ packages: dev: false file:projects/container-registry.tgz: - resolution: {integrity: sha512-wy/9SdJ0Aa3QtDo9n0BtE0pxHcjU9WCzTNOq2s3IpUjQqalYvCKockZSOJHbVBPu69Dx/c79boY2vIs67UVLAw==, tarball: file:projects/container-registry.tgz} + resolution: {integrity: sha512-jmM7LwjpJOtYestVY03GFx1ssRr5jWBw9/sxoIGmScTRQjJcTv5i8JzK0IqKm7/S7XsqLzXX3oBzaorftDdy+A==, tarball: file:projects/container-registry.tgz} name: '@rush-temp/container-registry' version: 0.0.0 dependencies: @@ -21269,7 +21269,7 @@ packages: dev: false file:projects/cosmos.tgz: - resolution: {integrity: sha512-BG2/F66EtJdYXB9BS5ncXfyl4gxmvR84N+dH6gAs8DGMweff3YRX7EmXb3DCcrfLgueG4g8AE+AShB+AELDOUA==, tarball: file:projects/cosmos.tgz} + resolution: {integrity: sha512-NEqtZrEtVRqcc1RrP9qCUnz4o0zgsC7tkoxjKPFZLBpTi69xVv26oJ7K5VrTLpU8teQ27nrsg54/EFibL1/TVQ==, tarball: file:projects/cosmos.tgz} name: '@rush-temp/cosmos' version: 0.0.0 dependencies: @@ -21344,7 +21344,7 @@ packages: dev: false file:projects/data-tables.tgz: - resolution: {integrity: sha512-GUoND/1zfLnVHc9TvBZo58JMS2xCmpHbs9YwV0UyCUkgC32Ah9CseHjUOBhEau4OJZd7GIqmx6PmNhvMqaAlJw==, tarball: file:projects/data-tables.tgz} + resolution: {integrity: sha512-X1zclHAGfTFnz6q1/ZFTUe4YrekWw6uMS2yKlLKco/56UIa1vn4eC2Q+pCg8jPbOBUdWA/f0OAdjhxboot56KQ==, tarball: file:projects/data-tables.tgz} name: '@rush-temp/data-tables' version: 0.0.0 dependencies: @@ -21389,7 +21389,7 @@ packages: dev: false file:projects/defender-easm.tgz: - resolution: {integrity: sha512-edWbdSpLv1D+o4+VTjMzLaXckmUqFJYRK6/D5psEoaSTTXSY31FYcxSPp+APpHpfReU1ncV/rLt7ICye5WEO3Q==, tarball: file:projects/defender-easm.tgz} + resolution: {integrity: sha512-BocgBDcvhUdkw/U4W+vt8WexyU396P1FcGpgdXZOQ3Y9Fe56tzVaHr4Y2P/ju4KbFc249kjnNVvl0byCKyIczg==, tarball: file:projects/defender-easm.tgz} name: '@rush-temp/defender-easm' version: 0.0.0 dependencies: @@ -21511,7 +21511,7 @@ packages: dev: false file:projects/developer-devcenter.tgz: - resolution: {integrity: sha512-mQIm2JCw/Gsg9qQrOO2tEyt46vf6Dn+UNZH4eLu2hYywu70OJfIdE2QRySOjGYSKkMaO+hvKHUHokLJS2u6soA==, tarball: file:projects/developer-devcenter.tgz} + resolution: {integrity: sha512-zPWLTb/p3rfYwhd4j9Pdnop9pwoLG5640STbDu/X5XaYmL/fe6D5Ukr0J/L2QxO9cocYzUfRxSD8fZvg3x6zag==, tarball: file:projects/developer-devcenter.tgz} name: '@rush-temp/developer-devcenter' version: 0.0.0 dependencies: @@ -21519,22 +21519,23 @@ packages: '@azure/identity': 4.4.1 '@microsoft/api-extractor': 7.47.9(@types/node@18.19.54) '@types/node': 18.19.54 - '@vitest/browser': 2.1.2(playwright@1.47.2)(typescript@5.6.2)(vitest@2.1.2) + '@vitest/browser': 2.1.2(playwright@1.47.2)(typescript@5.5.4)(vitest@2.1.2) '@vitest/coverage-istanbul': 2.1.2(vitest@2.1.2) dotenv: 16.4.5 - eslint: 9.12.0 + eslint: 8.57.1 mkdirp: 3.0.1 playwright: 1.47.2 + prettier: 3.3.3 rimraf: 5.0.10 + tshy: 1.18.0 tslib: 2.7.0 - typescript: 5.6.2 + typescript: 5.5.4 vitest: 2.1.2(@types/node@18.19.54)(@vitest/browser@2.1.2) transitivePeerDependencies: - '@edge-runtime/vm' - '@vitest/ui' - bufferutil - happy-dom - - jiti - jsdom - less - lightningcss @@ -21552,7 +21553,7 @@ packages: dev: false file:projects/digital-twins-core.tgz: - resolution: {integrity: sha512-HgmXSGaWmjNqZ/wSUHa9QCILiaatflM3TufRLP2WNFRXrXMbmIeJObl+Iz5T59ftC/AJOGkUIR+GwFiDS+ESGw==, tarball: file:projects/digital-twins-core.tgz} + resolution: {integrity: sha512-K6z+PMb/YARqupOFlkcGUfXqjJUDXN8UZGXcN0r973IhyHnx4dlfDdDBeFFbPDYAMN8BDv1/6vedFVo7aKOc8g==, tarball: file:projects/digital-twins-core.tgz} name: '@rush-temp/digital-twins-core' version: 0.0.0 dependencies: @@ -21651,7 +21652,7 @@ packages: dev: false file:projects/event-hubs.tgz: - resolution: {integrity: sha512-6nKUp0FboUYDZKtlwJMJhj9xC1m1aWMtmZV4Dk3Ux2W3I09hBb3WNjlUjE2UliB8+UYvycenLO4SAaGLLesWGg==, tarball: file:projects/event-hubs.tgz} + resolution: {integrity: sha512-+HzH3P5PeM6fLWGWcyUDI/2d8ZPr9uOkjf5IMXXW+7viY/TpMMadf9ku/1GCqLksadjfRwGOJqfMJwVoXWYigw==, tarball: file:projects/event-hubs.tgz} name: '@rush-temp/event-hubs' version: 0.0.0 dependencies: @@ -21709,7 +21710,7 @@ packages: dev: false file:projects/eventgrid-namespaces.tgz: - resolution: {integrity: sha512-TpaQh2QLoRl7K9q2EkZ60Lj32gSFx/NLS5rS29J2XE98qB3zIn4Cq/fCehwjY95WIRDQA2lJ+atAJOUznLcuYA==, tarball: file:projects/eventgrid-namespaces.tgz} + resolution: {integrity: sha512-HCwtJrdHQd1ycp6VX+oKXCs0zuOELQtH1ynjLEIw3kixC5epadFFMYhWVibCJ1Km7SDTiejOWxkEUOq2FhWQTw==, tarball: file:projects/eventgrid-namespaces.tgz} name: '@rush-temp/eventgrid-namespaces' version: 0.0.0 dependencies: @@ -21758,7 +21759,7 @@ packages: dev: false file:projects/eventgrid-system-events.tgz: - resolution: {integrity: sha512-uUxURbiSr/6FqIrXwaQQUbDdaf1q1TMX2BHGFCRBBCfRzInC4XpanLZ4bVi5CzrzPiKyTp6j2bXxI2ZYVW93zQ==, tarball: file:projects/eventgrid-system-events.tgz} + resolution: {integrity: sha512-cDQRX9ZpRKDi02xJSpmxpF3UzmU/xCzxNPZnVRSoIupZ2EKWqKt9WEaQSydy/aNIzy2raMibWqyTO5Nf9gHuzg==, tarball: file:projects/eventgrid-system-events.tgz} name: '@rush-temp/eventgrid-system-events' version: 0.0.0 dependencies: @@ -21852,7 +21853,7 @@ packages: dev: false file:projects/eventhubs-checkpointstore-blob.tgz(chai@4.3.10): - resolution: {integrity: sha512-oZT3pkd7iP6/eDOzP1hMsPdZGr4uVa7kKAmcAPC66OtMfG8aGfMVlX99cXZREqNfQ/cycW9d6y/QLpYvKOts1g==, tarball: file:projects/eventhubs-checkpointstore-blob.tgz} + resolution: {integrity: sha512-m1V0PP5WR2Ox0RzHWDizwSFANg0zj8UuBqVt6ECtSO6DgfiCj9FuSaIpOKwhvb+prOV4GGC4IihtwBaORDQPGg==, tarball: file:projects/eventhubs-checkpointstore-blob.tgz} id: file:projects/eventhubs-checkpointstore-blob.tgz name: '@rush-temp/eventhubs-checkpointstore-blob' version: 0.0.0 @@ -21904,7 +21905,7 @@ packages: dev: false file:projects/eventhubs-checkpointstore-table.tgz(chai@4.3.10): - resolution: {integrity: sha512-qll9lPAi9k2zTGohWe4Gqkmz3ORfc9tVm0mSWLlRokBblMWy2Db/vynM3z8rUqKtAyFBC38rTGl2AdLCMP+Evw==, tarball: file:projects/eventhubs-checkpointstore-table.tgz} + resolution: {integrity: sha512-aTiThbGjLc8XtCtTW8nlwpFiTXyhXPRPdynjmMoe8xmsJ6DOhQRuHkFH/FcfN7lh7W5wBJ9pQhtekB+RVT+EsQ==, tarball: file:projects/eventhubs-checkpointstore-table.tgz} id: file:projects/eventhubs-checkpointstore-table.tgz name: '@rush-temp/eventhubs-checkpointstore-table' version: 0.0.0 @@ -21956,7 +21957,7 @@ packages: dev: false file:projects/functions-authentication-events.tgz: - resolution: {integrity: sha512-TnCtaJNI8rM3o46VQxH5c+zUnKf0ZpAYe8oKLJT8WZYcRWw6Ygli8D6KlTiTUMl0BDwnxpb39helhtVmAYQXFQ==, tarball: file:projects/functions-authentication-events.tgz} + resolution: {integrity: sha512-LHfQ4TU5puF3HT2KJsP6/629Ek6M91PnInZr+OnvQPKQ6yv9Q+Lx/GbKvcezZ/Ts2fo6IeyyuBEnerDQvcFWaQ==, tarball: file:projects/functions-authentication-events.tgz} name: '@rush-temp/functions-authentication-events' version: 0.0.0 dependencies: @@ -22002,7 +22003,7 @@ packages: dev: false file:projects/health-deidentification.tgz: - resolution: {integrity: sha512-3Zlz+188mWXrZxdoJl5fB0DlvQfS5l3ATHen6YEOqUABed6QWm9rUhlLPjaTg1AbasByRJgI3EMZ6VQt+4FjRQ==, tarball: file:projects/health-deidentification.tgz} + resolution: {integrity: sha512-FgUjMxR7C8Mxur4d4r3jwFVcGId46XQtMnkvz6z22uNgor23+FRbusECRKOtynej4fA68EV+psD3HgBofX1yoQ==, tarball: file:projects/health-deidentification.tgz} name: '@rush-temp/health-deidentification' version: 0.0.0 dependencies: @@ -22043,7 +22044,7 @@ packages: dev: false file:projects/health-insights-cancerprofiling.tgz: - resolution: {integrity: sha512-H08XezcxzfD0sYD5MN7Hjc+v4bkgCLHrMR83oFGLzM0NwIg13rEz2RNz0Ck6XZ93vjWkMkqDOm/Fh9/8eUWXsg==, tarball: file:projects/health-insights-cancerprofiling.tgz} + resolution: {integrity: sha512-YzMtdy+q9gAmqFbR22mib/GMo20oIYZUAddihjWPBr00RUNRL5k0alhI1/3hT8xsSnvqkNymZwqqfmxjpC4sVg==, tarball: file:projects/health-insights-cancerprofiling.tgz} name: '@rush-temp/health-insights-cancerprofiling' version: 0.0.0 dependencies: @@ -22091,7 +22092,7 @@ packages: dev: false file:projects/health-insights-clinicalmatching.tgz: - resolution: {integrity: sha512-FpINYkz1+xj/jYqYLTEhplutJt+LTmTfsptBZPW7IgIcfgPdOuwMc8/+QXq4RSy+XDrM8lxWXe/LdPzL1xSqpA==, tarball: file:projects/health-insights-clinicalmatching.tgz} + resolution: {integrity: sha512-oJiRB940+TJb5iK6Mmx8vGnK6twk6eYUdnPRrqSzTTDO+vYnA1epL9PgdPg4JtkHYq5YSQDxBJVro1t8J+sCFw==, tarball: file:projects/health-insights-clinicalmatching.tgz} name: '@rush-temp/health-insights-clinicalmatching' version: 0.0.0 dependencies: @@ -22139,7 +22140,7 @@ packages: dev: false file:projects/health-insights-radiologyinsights.tgz: - resolution: {integrity: sha512-oGIjzvhHIEzlxVQViYzJMUBcVCeq0rBKIGz7FXydAnYBH5VPPQDNIijXs2Jjm37wpj6KZt1DUHeu1ACErGKQXg==, tarball: file:projects/health-insights-radiologyinsights.tgz} + resolution: {integrity: sha512-YVldAnR672BIjQ5APmZiPdeeSTTE5JR4TxEQ9MaPjQn5f80H8zq2drSn+bDVdjTvXV92h/T+GnYShsaKaztBxA==, tarball: file:projects/health-insights-radiologyinsights.tgz} name: '@rush-temp/health-insights-radiologyinsights' version: 0.0.0 dependencies: @@ -22187,7 +22188,7 @@ packages: dev: false file:projects/identity-broker.tgz: - resolution: {integrity: sha512-jDesDQ2rJP0o85FLwuliapxSsTDhNrFvZXIZjga9/+pga+j9yrPoFEAeGCJYAIsyjRKUnDyQoJasjrdf5/cFIg==, tarball: file:projects/identity-broker.tgz} + resolution: {integrity: sha512-AQBiNaB80DZYZ60YqO0uJuMTvxymE/vTC0Xkl0NR0Im1FWTzBd5+ydSh7kye/jy0zHHltW+msY7EWtz+AlRW2A==, tarball: file:projects/identity-broker.tgz} name: '@rush-temp/identity-broker' version: 0.0.0 dependencies: @@ -22216,7 +22217,7 @@ packages: dev: false file:projects/identity-cache-persistence.tgz: - resolution: {integrity: sha512-qshsWWLQ0e/wFF+h7tR/BQL+wgTFwlbyHGio+vlwFapFnowgNhEgxU2A/IG8D+mhe+aS4BotojLHC+c0OiGRrQ==, tarball: file:projects/identity-cache-persistence.tgz} + resolution: {integrity: sha512-KHbqYaFZwaG1Vhk/Du+PZFWfPQOxAY9/bkl+oyMlWLKNV5BOZhekHfuZgXH5NledST6eq5pCakpIdPKiqmfI8w==, tarball: file:projects/identity-cache-persistence.tgz} name: '@rush-temp/identity-cache-persistence' version: 0.0.0 dependencies: @@ -22253,7 +22254,7 @@ packages: dev: false file:projects/identity-vscode.tgz: - resolution: {integrity: sha512-bO+Y8ejwVj7nN9x+mN23oNqk7/5c9gvxnc+LL8qaLWy0kHdNjz5FqM88j9Ri5ZluOjXsKxhPfUEOyKlep1HkWA==, tarball: file:projects/identity-vscode.tgz} + resolution: {integrity: sha512-Y+8vITqQkS0PWra0NVoyyiv6DSrkecNcVDPmchYqd3jLGBKCXCTpXDBgak5le8kyOf/7ZO0v3ch5C/SwRCJW9g==, tarball: file:projects/identity-vscode.tgz} name: '@rush-temp/identity-vscode' version: 0.0.0 dependencies: @@ -22346,7 +22347,7 @@ packages: dev: false file:projects/iot-device-update.tgz: - resolution: {integrity: sha512-6fyG/hM1qrm6ns2ZiV1MEo2OO9aty8GE2uLHkLVNg3rnUixQDRZxBDnhrCCboIOXlS2l04NUUB+2USiC+fs7VA==, tarball: file:projects/iot-device-update.tgz} + resolution: {integrity: sha512-ZeaxRDFBGWkckB4/kg3hSeLLxQ3YFBJNGU+jxLZnQZeAl6sc2gQP/yjdtQtQasxcb+6J3pLg+jy3K7EdzipChg==, tarball: file:projects/iot-device-update.tgz} name: '@rush-temp/iot-device-update' version: 0.0.0 dependencies: @@ -22439,7 +22440,7 @@ packages: dev: false file:projects/keyvault-admin.tgz: - resolution: {integrity: sha512-GEHtlO5HTTXaUApRibmBr0VKmTfAOAZGhIkvzBu93FEuuJ26iO2OWvRWzc+EubgcqwdBgQ+JBqc7NFsvFBHA0Q==, tarball: file:projects/keyvault-admin.tgz} + resolution: {integrity: sha512-bNyzpP8coTXk3Ec7mG//Q2ZYxAgU3VhuNCRMHH3PkqLhA7dxP+8x3ARJSFw5iQze+8Nx+8vcfmNLl4rJoLHlVA==, tarball: file:projects/keyvault-admin.tgz} name: '@rush-temp/keyvault-admin' version: 0.0.0 dependencies: @@ -22480,7 +22481,7 @@ packages: dev: false file:projects/keyvault-certificates.tgz: - resolution: {integrity: sha512-XNKFZfdh7XQto/ZVfRFTM07V062QctMmWJ9dKTPOBvQ+V+2x02T5AIIM+HzTm5MrmXQpyqxlXK5vO9IP8VH2CQ==, tarball: file:projects/keyvault-certificates.tgz} + resolution: {integrity: sha512-tQUslsD2OC0Kc9np9QpgKYnoclMT78HdhlZ3bL/B7nNzzObzcTNknQ3Iw8jpzPcUTpCccobZanSFKKOrFLPMDQ==, tarball: file:projects/keyvault-certificates.tgz} name: '@rush-temp/keyvault-certificates' version: 0.0.0 dependencies: @@ -22559,7 +22560,7 @@ packages: dev: false file:projects/keyvault-keys.tgz: - resolution: {integrity: sha512-sq5gKgFcGqZ8ivwP1fbiLvWeJ3EbklMHINp1ZgAeevvIiYuCoBN1sBwVX5yZneBbblFqHknmjTrgGUgXsCXq4A==, tarball: file:projects/keyvault-keys.tgz} + resolution: {integrity: sha512-42EuT5wcv9lPSxyJ3BqRRscPOwQFUIcje9ZX2QPtfdG/TfIop7sWgsN00bQnx+17N3uw9YushvqoskjgfAQUDQ==, tarball: file:projects/keyvault-keys.tgz} name: '@rush-temp/keyvault-keys' version: 0.0.0 dependencies: @@ -22606,7 +22607,7 @@ packages: dev: false file:projects/keyvault-secrets.tgz: - resolution: {integrity: sha512-pEjpXeg8BhzQrU0bFc2SFJy0Gvx7rk4cgWT8rFPsBiV0FvgLX9FU12g+G4kFx7LwTizJ6fXDOERa8vqLNb3gUg==, tarball: file:projects/keyvault-secrets.tgz} + resolution: {integrity: sha512-MWn/ZdZEIhSyLyoP2xXCV39TmOZAw2Z+J2KXpkrUOeOPvhCUimiVlHXIhIihM6bQsTk3Hzz60xa4fVI4iW9IVg==, tarball: file:projects/keyvault-secrets.tgz} name: '@rush-temp/keyvault-secrets' version: 0.0.0 dependencies: @@ -22642,7 +22643,7 @@ packages: dev: false file:projects/load-testing.tgz: - resolution: {integrity: sha512-s9r1btShxNY3xoiQTl3gCd+1mpNTN26rhzLwYbal4Ug0Iol0n7K6ZZU7AQIlUidKSHx0MqyK/uGmVXa5bP/b5A==, tarball: file:projects/load-testing.tgz} + resolution: {integrity: sha512-uPFHGCxVth5dqyOFKqtBeo3KdvnLlgQKP2lHSyqn2G+a7Nw3s+2fGkYiRuxO2kGibEuVZzBg4WJn972PIFzcCA==, tarball: file:projects/load-testing.tgz} name: '@rush-temp/load-testing' version: 0.0.0 dependencies: @@ -22748,7 +22749,7 @@ packages: dev: false file:projects/maps-geolocation.tgz: - resolution: {integrity: sha512-rvWHmz/syvAOFp86mwSueDxXPTQR0bYIMUXX+FtIMPhJ8lX1LPHG5/OiHpZcGaaHjmVi4QkAqeL1UbanzSC3hg==, tarball: file:projects/maps-geolocation.tgz} + resolution: {integrity: sha512-wOQ2imT7/Olm5oHjU36fcnh1UVyLhR85MtmOd+NG759aFlC9Dkdh+9zUlb7UKgAgfMa8QTp+NbNOjmwful4yUA==, tarball: file:projects/maps-geolocation.tgz} name: '@rush-temp/maps-geolocation' version: 0.0.0 dependencies: @@ -22795,7 +22796,7 @@ packages: dev: false file:projects/maps-render.tgz: - resolution: {integrity: sha512-S4dzdVwNeszvXdPfkm/MIYhJsLanzc/yJ/pZfX4TiWREq40Q0eFt3iNrRs1RYmtdkrLdSks03C5WX7eDacZBCg==, tarball: file:projects/maps-render.tgz} + resolution: {integrity: sha512-Q48y4j1cLw/8BaCOJGbB1Y6G4eEctFesdQjOR3avgv2moibwLajs0Em9duzmp381Dj3acqAOwIAkFRWm/trg/g==, tarball: file:projects/maps-render.tgz} name: '@rush-temp/maps-render' version: 0.0.0 dependencies: @@ -22842,7 +22843,7 @@ packages: dev: false file:projects/maps-route.tgz: - resolution: {integrity: sha512-8UzSXr5iK7NqYGVXPE1RtzlXoeiyeUFJm0FPgp2zCvDhSj/yzguktU19DGMoseH0YrZdhgdOic6v9bAKn6C/Tw==, tarball: file:projects/maps-route.tgz} + resolution: {integrity: sha512-3ZIFY8K9V/tkUD8EYh1UeMvWlLn8R4dhOr31KvnzIVANe/V7ZBeeehfNIefOrBBNDoboN7YkxZ6LlUWbqQ+fSw==, tarball: file:projects/maps-route.tgz} name: '@rush-temp/maps-route' version: 0.0.0 dependencies: @@ -22890,7 +22891,7 @@ packages: dev: false file:projects/maps-search.tgz: - resolution: {integrity: sha512-8+K9ms4YK3CWqCu3g8xPVFI38IailQauHXPnzDDmndMjezFRnKYyu3MHG3Hpb9oxIjjOla8YdDUvVnH7ygkFbA==, tarball: file:projects/maps-search.tgz} + resolution: {integrity: sha512-MmlNE+xPJI26I/xY7nIyZ0aiYyLp71Z2wyolWCKyeVDchqotjBzgTxqKY1DbBfYWLXQeJPs0W82IJoq4s6I8gQ==, tarball: file:projects/maps-search.tgz} name: '@rush-temp/maps-search' version: 0.0.0 dependencies: @@ -22938,7 +22939,7 @@ packages: dev: false file:projects/microsoft-playwright-testing.tgz: - resolution: {integrity: sha512-xpirfRdOWn32HnBb78HxKKbplBdg5dagpdT8y9oVXsQTw7/SQhrWosexS173D89jQxMS4jLoWnB+bX/MQMZZxw==, tarball: file:projects/microsoft-playwright-testing.tgz} + resolution: {integrity: sha512-+eJtd4HTQq83BPlgrMUX0f9gJNzMz2KVqqqyvUrIl1V5bIW4WlnB3ryHYIbSFR2fplCFn7gn236Xgoqt3Q2QaQ==, tarball: file:projects/microsoft-playwright-testing.tgz} name: '@rush-temp/microsoft-playwright-testing' version: 0.0.0 dependencies: @@ -23006,7 +23007,7 @@ packages: dev: false file:projects/mixed-reality-remote-rendering.tgz: - resolution: {integrity: sha512-w4llMPb5Wt4RMxvSFiFdLAqi7iQBr5TzzR09vcdqD30/nj3VgQFrjfmQu5U5ZkIIVS1IpEGkD43p4Y815f/1Gw==, tarball: file:projects/mixed-reality-remote-rendering.tgz} + resolution: {integrity: sha512-HmHF0CKUcjOnx+zfrbxAZ2NRoRhwg05LdKFuNtnTACVArPWWm9SpbOjSLS296zHNzwVfSV2YzZ4Ls0qKf6XtZQ==, tarball: file:projects/mixed-reality-remote-rendering.tgz} name: '@rush-temp/mixed-reality-remote-rendering' version: 0.0.0 dependencies: @@ -23089,7 +23090,7 @@ packages: dev: false file:projects/monitor-ingestion.tgz: - resolution: {integrity: sha512-jzEXSB2xH7ipc5y8Rk+RRUSHEMxeziZOJE8UZDtDKaL0EDAGsARF6C1WAX2lsOqT3fpyOA8xukhQ6UO6u37aFg==, tarball: file:projects/monitor-ingestion.tgz} + resolution: {integrity: sha512-BVSkaP7pIBSc+DkkYl/Y3+yUfYXr7PTKxDomB0Em4dJsheJeXhT48s2vfiDyTu2eA/teg/S4D8qs8WC6ivdg5g==, tarball: file:projects/monitor-ingestion.tgz} name: '@rush-temp/monitor-ingestion' version: 0.0.0 dependencies: @@ -23222,7 +23223,7 @@ packages: dev: false file:projects/monitor-query.tgz: - resolution: {integrity: sha512-42iEjln8SkZxD6NaLGZAKYwFsM9vwcIU4XC3i+Xva6cHDUXrv/OCcIU0ruFxxJWzCMx95hnwpz0/pxH0j1HA7g==, tarball: file:projects/monitor-query.tgz} + resolution: {integrity: sha512-gGKKPVas+OcuI+oID194EoBBjtIPVEkY+KNrs4a3aMgUOeZ7hxFQsOBrb/6SrS8AddwYhzbVfHItZ6tYsORCuw==, tarball: file:projects/monitor-query.tgz} name: '@rush-temp/monitor-query' version: 0.0.0 dependencies: @@ -23306,7 +23307,7 @@ packages: dev: false file:projects/openai.tgz: - resolution: {integrity: sha512-/yiMIb++mM6PTsnfJJKTIuEWVqcpZaXAhqvm7yCEomw6LbkvTpFu/KlU3RBY2Yw9JlAOMhpDjk9tJomf/wqPIg==, tarball: file:projects/openai.tgz} + resolution: {integrity: sha512-ryp9FwJiV8LG+/87VqFapwN2raP91si+sIYMSs2yMD8iEjaZVEwkz2agO2ol0W+BVk7b8hDpsCE81ThuTh5mMg==, tarball: file:projects/openai.tgz} name: '@rush-temp/openai' version: 0.0.0 dependencies: @@ -23392,7 +23393,7 @@ packages: dev: false file:projects/perf-ai-form-recognizer.tgz: - resolution: {integrity: sha512-Bg6ryJlc01GbyzatMcANSJ652rV2knY7tr3klWRwXjoDlyuvGCndo6OK3okSTtOQ+/yAtQinrg0Bnr8SLsdSkg==, tarball: file:projects/perf-ai-form-recognizer.tgz} + resolution: {integrity: sha512-UgfivXnq9yO6r2HLEg4W7ejsEeMqk6VYiJ59E3dMiHvuXAxjsbYrJOQL8etu/5N85RkuHUmGgHmHXgd1T4Aw5g==, tarball: file:projects/perf-ai-form-recognizer.tgz} name: '@rush-temp/perf-ai-form-recognizer' version: 0.0.0 dependencies: @@ -23412,7 +23413,7 @@ packages: dev: false file:projects/perf-ai-language-text.tgz: - resolution: {integrity: sha512-ltcxVmdtrazoRmFy0P9CogHT2dY4nNplFwBMobYGzG3esoPccSYqg0XtLqkb6dqrP6TL5PK/C8j9IFoK14Chmg==, tarball: file:projects/perf-ai-language-text.tgz} + resolution: {integrity: sha512-QktNFGHtIrskryuod2Zefg2B1UGUBzvHB/PHy0MWNaL+ZOYaxG9kKCL9FT8Il3H4w6hklcE8Qbd+EWrQQT8j/g==, tarball: file:projects/perf-ai-language-text.tgz} name: '@rush-temp/perf-ai-language-text' version: 0.0.0 dependencies: @@ -23451,7 +23452,7 @@ packages: dev: false file:projects/perf-ai-text-analytics.tgz: - resolution: {integrity: sha512-tL7ZBqnYY4Gh9MrKZCketkNBUCnkCh8AwgLuIX+YWaXcEoCdArW07beaFegD1Qeq7sJSfO9rlo+yUSi4bEwnug==, tarball: file:projects/perf-ai-text-analytics.tgz} + resolution: {integrity: sha512-S2//MjApHXQzD+u5gojkeWjOh4uC022o8cbshMw3Io+c33Nf6qu3zJxji4PsVYlQV0zZnVhr0ULh/pF+wTxgjQ==, tarball: file:projects/perf-ai-text-analytics.tgz} name: '@rush-temp/perf-ai-text-analytics' version: 0.0.0 dependencies: @@ -23595,7 +23596,7 @@ packages: dev: false file:projects/perf-identity.tgz: - resolution: {integrity: sha512-Ns7HHIRyp4xIWNYqye1Dc3ey0H9JWbwAwB2aH/FhaxnLCbgDXzdblm3BJRpI05aiZSm25sVtGyz/DJIAfOfS0A==, tarball: file:projects/perf-identity.tgz} + resolution: {integrity: sha512-Tm25eU++RHqNcknG6hehyQUtZiN22+/fqA7Y2R2I4doq9LmaNpWm+k9fktEPW0Udo0tg2gKcc/84dljluTO6Aw==, tarball: file:projects/perf-identity.tgz} name: '@rush-temp/perf-identity' version: 0.0.0 dependencies: @@ -23616,7 +23617,7 @@ packages: dev: false file:projects/perf-keyvault-certificates.tgz: - resolution: {integrity: sha512-798DoekIfnjLiRxREUVHdiLmHi4FJa70bGFOi4R6gxt69cgW57qwFi6ik8TP8+j8HxRRC0Fi+GoKy6zdV4Tn7Q==, tarball: file:projects/perf-keyvault-certificates.tgz} + resolution: {integrity: sha512-FLfFxRDdlKxMUXOwx3JNBfOXShTk96oPTdkI+MDfWct5iLo6ouaspEGW7FQ9XbgoruhLf8a2iVk5NlXwKKGMHw==, tarball: file:projects/perf-keyvault-certificates.tgz} name: '@rush-temp/perf-keyvault-certificates' version: 0.0.0 dependencies: @@ -23638,7 +23639,7 @@ packages: dev: false file:projects/perf-keyvault-keys.tgz: - resolution: {integrity: sha512-Go/Xxuo3RhYeJCUV/d0OP03qhmbpzXImO/z0QlJP4GTUsUBODXlC7wLOpsrBW0IM/sHRhzOFvZK1U9zsUU2SHg==, tarball: file:projects/perf-keyvault-keys.tgz} + resolution: {integrity: sha512-giSOVCyTfx79HDmxFFl7gj9FJpx4K9BNOiDRIOAJufuKoQEog3VExLt9+Gr+/v7LDnkRwXzTMoia9J5CgT6SUA==, tarball: file:projects/perf-keyvault-keys.tgz} name: '@rush-temp/perf-keyvault-keys' version: 0.0.0 dependencies: @@ -23660,7 +23661,7 @@ packages: dev: false file:projects/perf-keyvault-secrets.tgz: - resolution: {integrity: sha512-WSSooqKe/2x6VF+kdP+5KoSaxS1wyK9FFdB0o39jPrpYpZhdc42jsUj/nkDIqWo8KxHxkXO3ReMh5AisHQWqGw==, tarball: file:projects/perf-keyvault-secrets.tgz} + resolution: {integrity: sha512-axiLjz6sQo1R06CzuBk5hq5TKZIG6GEoeG7ASmfCIxw/ITIHysCoXsCZvYvgqGugG8gR0feJFAWuUZrDkh3iTQ==, tarball: file:projects/perf-keyvault-secrets.tgz} name: '@rush-temp/perf-keyvault-secrets' version: 0.0.0 dependencies: @@ -23682,7 +23683,7 @@ packages: dev: false file:projects/perf-monitor-ingestion.tgz: - resolution: {integrity: sha512-irk1RGl+xI9cPhLol4UgvBi2xR5hJuzRlcGd8VPsk6aBnpV5GtxX9I33sk4RdzQVBxpWqNscKUztIdE8PspfXw==, tarball: file:projects/perf-monitor-ingestion.tgz} + resolution: {integrity: sha512-cg5zwuxND8KBfNNmStTyRertrDOsYKHMRbJOJ0UxuNVVffLMbtzzWl1a+itccxKQCgeBBZCDMwKAFb1gn8U86A==, tarball: file:projects/perf-monitor-ingestion.tgz} name: '@rush-temp/perf-monitor-ingestion' version: 0.0.0 dependencies: @@ -23721,7 +23722,7 @@ packages: dev: false file:projects/perf-monitor-query.tgz: - resolution: {integrity: sha512-LS97r5Sciwlw7sZP2DfzR3WUaut3mhkilPFEpx3dNivTA27i2zf6/wgz+lcYV8QG57RJzgziI1p3+HuXIi/1Jg==, tarball: file:projects/perf-monitor-query.tgz} + resolution: {integrity: sha512-ANYlPKIZlyM7HOpJTpjnSQ2XDTXy9ebcfJscqy4O0j09EqHdxlh6jphIszNv+JgpNVnP82rlMIfoJRkd9s589A==, tarball: file:projects/perf-monitor-query.tgz} name: '@rush-temp/perf-monitor-query' version: 0.0.0 dependencies: @@ -23741,7 +23742,7 @@ packages: dev: false file:projects/perf-schema-registry-avro.tgz: - resolution: {integrity: sha512-3Npq32S7gNHDWvFJgKtgi2rcckZ2dkbzQc7y7IVUnRx5kRMhEObj8Y+y8UmVyWXqOig0Z6Q1lwTBCVbjF2Ex9Q==, tarball: file:projects/perf-schema-registry-avro.tgz} + resolution: {integrity: sha512-BYktlRuuSmlAOIP1PrLlPbBtElqtzS7ENRY8P1Dh/MCAZ0jpoShXXJjViNP5XGg7+n35+FeeNT+8LPsMPedj+A==, tarball: file:projects/perf-schema-registry-avro.tgz} name: '@rush-temp/perf-schema-registry-avro' version: 0.0.0 dependencies: @@ -23762,7 +23763,7 @@ packages: dev: false file:projects/perf-search-documents.tgz: - resolution: {integrity: sha512-qJs9hKYvk0FMICJfbp+uWd4i1WNU9a6UGPyV6YOCeOkWcoT+Ov/YMESkVi12X0U8ot6Iv2yTg3IAhP/RaT22fQ==, tarball: file:projects/perf-search-documents.tgz} + resolution: {integrity: sha512-1TcM5NDFQf/cfuMbuROrfQ5CueOvvQ58+Il8ZDKhncxSjujXRDZf7u4QjUf4SwTZPcoBDTysbjJCTNavy8usuQ==, tarball: file:projects/perf-search-documents.tgz} name: '@rush-temp/perf-search-documents' version: 0.0.0 dependencies: @@ -23861,7 +23862,7 @@ packages: dev: false file:projects/perf-template.tgz: - resolution: {integrity: sha512-oK3lt2w3mvq8ZKT420CX6VAM8m7mM/bQDlLfCjFpEXdOOiMhf5b5Mc5PzE9WKwGiOMjcCURLlEZAtFrUOOQ8Pg==, tarball: file:projects/perf-template.tgz} + resolution: {integrity: sha512-RKt9bxt1yDQgVHXTp/x0VlGfZgWs1ZpE8j0di0ZAkSt96+egaS+ODThP40s3J3Q7NObgfu3OEjQweIHZvpT7bQ==, tarball: file:projects/perf-template.tgz} name: '@rush-temp/perf-template' version: 0.0.0 dependencies: @@ -23882,7 +23883,7 @@ packages: dev: false file:projects/purview-administration.tgz: - resolution: {integrity: sha512-+Lo5sBSgG1iiTY7lSYjZGMPYp7cJIY99qUFFD0CcqDN+57oO+8Z5PuFerCr5wsqG/KGzjz1DZsU4y4HAuQC5JA==, tarball: file:projects/purview-administration.tgz} + resolution: {integrity: sha512-MQS/1cqX9HyQEgBe+B6AvE12gF2fTgsWgdcrv8tQQSmfAS2waa6en+o2O57Phv6EQkyP4l62Ef1PrPuFDInrVA==, tarball: file:projects/purview-administration.tgz} name: '@rush-temp/purview-administration' version: 0.0.0 dependencies: @@ -23927,7 +23928,7 @@ packages: dev: false file:projects/purview-catalog.tgz: - resolution: {integrity: sha512-1QC+PgsqwFAUYHIGauIXvA+aHwyltPYq/Jh3vdqAze2nQH7rSHtI6H+uv5OtCK0fJbvyCLeLGtt4QedsbmImAA==, tarball: file:projects/purview-catalog.tgz} + resolution: {integrity: sha512-HyhHGxEDc6/0wgiTZS0qUuzNo/ckWojvdWDRn4D3hwp287JxGcVMAoaBr8wiJuxcunzgqDh7TmUViDPD40Wpzg==, tarball: file:projects/purview-catalog.tgz} name: '@rush-temp/purview-catalog' version: 0.0.0 dependencies: @@ -23973,7 +23974,7 @@ packages: dev: false file:projects/purview-datamap.tgz: - resolution: {integrity: sha512-j9Fyp+CS073IEyhNcDxDP96DyFZl1Uw/iUkacRjZR2GDdCoJK2s15tevR980Ns6OE4wC0Hd0NErCT+ch+mU8fQ==, tarball: file:projects/purview-datamap.tgz} + resolution: {integrity: sha512-pQ47LMlb1COoISRPdklUM1w17lO1jYO+UweXkhHquSXev36+mXwEVe6vDLBzJMNjjClsJGjpcrQTnQ7dswtTHQ==, tarball: file:projects/purview-datamap.tgz} name: '@rush-temp/purview-datamap' version: 0.0.0 dependencies: @@ -24019,7 +24020,7 @@ packages: dev: false file:projects/purview-scanning.tgz: - resolution: {integrity: sha512-F6fMaifF+UZYMmQL6L82h0U82uPvq804dznj6nyAT6HTs/QArgOPT3PRW5yfjYtjglkOneAFR+uYGEF4M3bbRA==, tarball: file:projects/purview-scanning.tgz} + resolution: {integrity: sha512-TWUbAABMm/tGNI1/jrLxkykfoRupx0+xvokbeyyvAskamJsPv31DWAGzxQRyt5fTc3UX85HI+pzRX5N/bVY2bw==, tarball: file:projects/purview-scanning.tgz} name: '@rush-temp/purview-scanning' version: 0.0.0 dependencies: @@ -24064,7 +24065,7 @@ packages: dev: false file:projects/purview-sharing.tgz: - resolution: {integrity: sha512-rESQag7jacmeVbqm1SUYRzWVUN2EeKX9CKhB4p31mp+hyCvbR4YuKm1nme32UX1Y/XgmTu976kuud6vK17zKvw==, tarball: file:projects/purview-sharing.tgz} + resolution: {integrity: sha512-J+C4imnoxnciqSsPoGM1m680rmJHeUOEM4IoJcpg6jG3VNLXedPB37yTpVxY6tqNnVHxgmcROH9Bjl5kbDfF5g==, tarball: file:projects/purview-sharing.tgz} name: '@rush-temp/purview-sharing' version: 0.0.0 dependencies: @@ -24112,7 +24113,7 @@ packages: dev: false file:projects/purview-workflow.tgz: - resolution: {integrity: sha512-WDNMrXBUnadgzoHoLWsuCaOPMiNG9J3Zo50j2MA6AGi7sQS2SXC+iks3aYrdvXnI1Gdwgu7bmcuFOVSokLYpjg==, tarball: file:projects/purview-workflow.tgz} + resolution: {integrity: sha512-++OASiOLQE+9J8Ufg7LG3EAZmySKvRn9TQA80Vns+Kd55R8mWohlXQ0gM6528LlBJrgWbk2fkjC9j2QlDhHIaA==, tarball: file:projects/purview-workflow.tgz} name: '@rush-temp/purview-workflow' version: 0.0.0 dependencies: @@ -24158,7 +24159,7 @@ packages: dev: false file:projects/quantum-jobs.tgz: - resolution: {integrity: sha512-EyI5vM1la+ICxSer0h+O6kaHVTU/DBzZqUolZH+hElzKDiXmpxXpqD2P7x/ZZoXFHSKwArFmu5I6kYz/75IY9w==, tarball: file:projects/quantum-jobs.tgz} + resolution: {integrity: sha512-IlA2RIZlXWxllZmxrnOyubOy08TGdYjzilmU9iXQ7HgIP+516WI8kiwDt9H/LE568QPmkhyUonpRC8BTBOOw3g==, tarball: file:projects/quantum-jobs.tgz} name: '@rush-temp/quantum-jobs' version: 0.0.0 dependencies: @@ -24204,7 +24205,7 @@ packages: dev: false file:projects/schema-registry-avro.tgz: - resolution: {integrity: sha512-CSM6bUuSWAB1vosfROpbOfdPvZUiA4b6ylTfPRMSyVUV0A3aW2Xv0OnM/dmjmFv2bXj7xA0lLFiyJ76YKrZObg==, tarball: file:projects/schema-registry-avro.tgz} + resolution: {integrity: sha512-/vA4YkOsB+M+MWRQM7X4cARPyKJL0zF+uZw2vA1wl4TMcPV1ZxCJX6n/mokhGcsdJBJ5K9XkAQ+KjGP910v+Sg==, tarball: file:projects/schema-registry-avro.tgz} name: '@rush-temp/schema-registry-avro' version: 0.0.0 dependencies: @@ -24258,7 +24259,7 @@ packages: dev: false file:projects/schema-registry-json.tgz: - resolution: {integrity: sha512-2f41GQADPD/ogg/63PuUCaPrDgUyh2c8rFdW0PkSfoud/yxXmrhAQsM5kuDQl8tyCtdxtIByghnxme6RrII5+g==, tarball: file:projects/schema-registry-json.tgz} + resolution: {integrity: sha512-zMhIdAv1iElRZPhOnMULxuEaX0E9jb2JPJKcoPbWC75e9IvOmBH/0AX2XlHSFrnooDAaqCtFcaRalQKoE+3OIQ==, tarball: file:projects/schema-registry-json.tgz} name: '@rush-temp/schema-registry-json' version: 0.0.0 dependencies: @@ -24303,7 +24304,7 @@ packages: dev: false file:projects/schema-registry.tgz: - resolution: {integrity: sha512-/oTB4TYqKdwtQtHiFtbSRPDgyOLhIOAM8858HpqnOiyH7XbQOomvybRhcCA1wzGd8HxyikQHw/a6EK0rFWOIjw==, tarball: file:projects/schema-registry.tgz} + resolution: {integrity: sha512-yA5edB/kaTLT3QHClIRzUorQQEskuZdIkFIFTNVtpOP+aT+qRZIaTDQfbjpDnNBViDpC9IZWkktU3NOsUUss5A==, tarball: file:projects/schema-registry.tgz} name: '@rush-temp/schema-registry' version: 0.0.0 dependencies: @@ -24344,7 +24345,7 @@ packages: dev: false file:projects/search-documents.tgz: - resolution: {integrity: sha512-OsJFQ32sOfN2koO/FiVq5Vz20h8vtW1p+Wkxw3axa8lzMhxfb1Nq5IcvOFLvWx2/WleRt4Sll1EgpR9K/Q1Vjg==, tarball: file:projects/search-documents.tgz} + resolution: {integrity: sha512-JZPvnO6/Jcoxq9ZfligECbNVtoAJ5aOCUDV1I9iXoZhk9EAjp6dQWLqX8UWKiMWQBnMl/BT2DMbgOUbdUiS0/w==, tarball: file:projects/search-documents.tgz} name: '@rush-temp/search-documents' version: 0.0.0 dependencies: @@ -24393,7 +24394,7 @@ packages: dev: false file:projects/service-bus.tgz: - resolution: {integrity: sha512-R0M+BLwA7P9dfld21J2xOS7lPwHPk5T9WCtOeZakFY8YtVRvbnoTdza5C/cQPVVmHRjzQxbumDhrch//tT/nSg==, tarball: file:projects/service-bus.tgz} + resolution: {integrity: sha512-AWZZkHqT/9iI7REatPivhaFY9CpXVZ3RTAZ2cDfUpr2rD2AkGsC7xlK/m7hfiP+KpKF+CHSVKrqoLfDmscKiJg==, tarball: file:projects/service-bus.tgz} name: '@rush-temp/service-bus' version: 0.0.0 dependencies: @@ -24507,7 +24508,7 @@ packages: dev: false file:projects/storage-blob.tgz: - resolution: {integrity: sha512-Rag6sV6e/oyzaz5WXpyCyg36wbMeSfgivyQciXwZIKkV1SstpChHwbnfb9zPrdMa9TrpYMwe5yis7kUonlm0HA==, tarball: file:projects/storage-blob.tgz} + resolution: {integrity: sha512-44jBwMRnnOdvjj6/sg0immrMOOV+Wn5yWF8CmEk2OcW9U2hJ1pA28kIcgYfQ1uu8JC+SgsadHyOthyUh3SKk0w==, tarball: file:projects/storage-blob.tgz} name: '@rush-temp/storage-blob' version: 0.0.0 dependencies: @@ -24555,7 +24556,7 @@ packages: dev: false file:projects/storage-file-datalake.tgz: - resolution: {integrity: sha512-FC/2g+ENPQlUMKPrj3Nm2p9penM3sSaIAbZw01qhZUjDQ+tVAlecwqqfQLcAk8qh82sJ9vd4GByEduRHyzh4kA==, tarball: file:projects/storage-file-datalake.tgz} + resolution: {integrity: sha512-lIhrv5ADPLnWdXWmlUm0vaygykPAZ486DxKvritXwkjGMSMEre3KKyhyu/nMSk5cMYuDBKnI8ca1qyATmmsJPA==, tarball: file:projects/storage-file-datalake.tgz} name: '@rush-temp/storage-file-datalake' version: 0.0.0 dependencies: @@ -24606,7 +24607,7 @@ packages: dev: false file:projects/storage-file-share.tgz: - resolution: {integrity: sha512-GuFyt0d1m2oDh+TuXVpczjUZCwDnEzFgIoq2AHS5ZiB/R5XeCofIDIFQQJQaCuUtY39c6ul4aX5uCP1B8rLN0g==, tarball: file:projects/storage-file-share.tgz} + resolution: {integrity: sha512-HyJ2/CF0HL9Setq4V72wicPSUYTG08XKQA4+3iuiwonzYn5MJR4GNtbNI6yeHqCztzcAEbVHobVls4zB99HN0g==, tarball: file:projects/storage-file-share.tgz} name: '@rush-temp/storage-file-share' version: 0.0.0 dependencies: @@ -24698,7 +24699,7 @@ packages: dev: false file:projects/storage-queue.tgz: - resolution: {integrity: sha512-IePQwAAuWIRX+Uvxr7M1JRQIhzkotL9NYuw5L8zmuzay7pXXiZUHZed7ghZ56YESovhpwqGm5qwtrYwu4mDl4Q==, tarball: file:projects/storage-queue.tgz} + resolution: {integrity: sha512-n5kEh4aa3dbN0WbpmR2/NUsqiUYExzquaMl7WUIWXjG1AxNiJvB+DMAD8YBLPnKozdIXZL8/R6xXV5i5d8+aEQ==, tarball: file:projects/storage-queue.tgz} name: '@rush-temp/storage-queue' version: 0.0.0 dependencies: @@ -24791,7 +24792,7 @@ packages: dev: false file:projects/synapse-access-control.tgz: - resolution: {integrity: sha512-9QtpFkHrrk+oSh/EPshLaS7q0EU4JlC8oGXP0Wtnhz/vvANql8qUi3CfFB4r/VzcQRGQQufhp+E27fRRbjZUOA==, tarball: file:projects/synapse-access-control.tgz} + resolution: {integrity: sha512-xBRwQr0VlPm77nkHjk85tPySwz44jLWlYHLl6zaKsmqVbQ6ZKVA4qBQNflmg4/ZW4nqWO9bypiSLt7LyUBTQLQ==, tarball: file:projects/synapse-access-control.tgz} name: '@rush-temp/synapse-access-control' version: 0.0.0 dependencies: @@ -24841,7 +24842,7 @@ packages: dev: false file:projects/synapse-artifacts.tgz: - resolution: {integrity: sha512-HYsAX3ou8HzMoiOnGC8uxCTjvSAQJ+YzovfPbRtv2GuAN5OcOdKvNulIwbKyIKWixrfUBDqvXcWRHdzFpIKU2g==, tarball: file:projects/synapse-artifacts.tgz} + resolution: {integrity: sha512-y36pCAWl7KhbzL5FDLzEJ2Y6WeiQzKDs+MjS+6Ou690hXc/VA09CEty/FUNnMUTUBFbscfy6IQDhSnWeDwmYbA==, tarball: file:projects/synapse-artifacts.tgz} name: '@rush-temp/synapse-artifacts' version: 0.0.0 dependencies: @@ -25062,7 +25063,7 @@ packages: dev: false file:projects/template.tgz: - resolution: {integrity: sha512-qseFMv7dU409oMyS9L9XyK3qTP+dUvmYNe27taFStTecL5Iglm+3icDkMQgEzxFV7XZxHlKK2bI+j5k5LT0n3g==, tarball: file:projects/template.tgz} + resolution: {integrity: sha512-CInlxrzq1puqe+ArK28Lpe8iIgujEauSoiWX+bTL/RvOu0cdr1CrFeZThotp5Vu78VtamGMrICDmnALRq0lbxQ==, tarball: file:projects/template.tgz} name: '@rush-temp/template' version: 0.0.0 dependencies: @@ -25105,7 +25106,7 @@ packages: dev: false file:projects/test-credential.tgz: - resolution: {integrity: sha512-z0h2+PnicCgLrh3QclZVb/npXPzYeCPjyaoFJqK0r04uK7ke42Ge8XNx++ejWYdefP9vg43CAa4q0y6cA+9kKA==, tarball: file:projects/test-credential.tgz} + resolution: {integrity: sha512-aArHiEcfPNEaUDPnLrqSzBLMcl5nSy6OfetgB2G9uroK4tEW/9RJN6Y+6GebyqK6bzH0RjRQHFihl4wuXSuN0g==, tarball: file:projects/test-credential.tgz} name: '@rush-temp/test-credential' version: 0.0.0 dependencies: diff --git a/sdk/devcenter/developer-devcenter-rest/CHANGELOG.md b/sdk/devcenter/developer-devcenter-rest/CHANGELOG.md index 05d3e55b8752..5dec05abd197 100644 --- a/sdk/devcenter/developer-devcenter-rest/CHANGELOG.md +++ b/sdk/devcenter/developer-devcenter-rest/CHANGELOG.md @@ -1,87 +1,6 @@ -# Release History - -## 1.0.1 (Unreleased) - +## 1.0.0 (2024-10-08) + ### Features Added -### Breaking Changes - -### Bugs Fixed - -### Other Changes - -## 1.0.0 (2024-07-08) - -This release targets Azure Dev Center 2023-04-01 General Available API, which is the same version as the previous 1.0.0-beta.3 release. - -### Features Added - -- Added output types: - - DevBoxActionDelayResultStatusOutput - - DevBoxActionTypeOutput - - DevBoxProvisioningStateOutput - - EnvironmentProvisioningStateOutput - - EnvironmentTypeEnableStatusOutput - - HibernateSupportOutput - - LocalAdminStatusOutput - - OperationStateOutput - - OsTypeOutput - - ParameterTypeOutput - - PoolHealthStatusOutput - - PowerStateOutput - - ScheduledFrequencyOutput - - ScheduledTypeOutput - - SkuNameOutput - - StopOnDisconnectEnableStatusOutput - -### Breaking Changes - -- Rename interfaces to match operation names in Dev Center API documentation - - ListSchedules was renamed to ListSchedulesByPool - - GetSchedule was renamed to GetScheduleByPool - - ListDevBoxes was renamed to ListDevBoxesByUser - - GetDevBox was renamed to GetDevBoxByUser - - ListDevBoxActions was renamed to ListActions - - GetDevBoxAction was renamed to GetAction - - DelayAllActions was renamed to DelayActions - - ListAllEnvironments was renamed to ListEnvironments - - ListEnvironments was renamed to ListEnvironmentsByUser - - GetEnvironment was renamed to GetEnvironmentByUser - - CreateOrUpdateEnvironment was renamed to CreateOrReplaceEnvironment - - ListCatalogs was renamed to ListCatalogsByProject - - ListEnvironmentDefinitions was renamed to listEnvironmentDefinitionsByProject - -## 1.0.0-beta.3 (2023-11-20) -This release updates the Azure DevCenter library to use the 2023-04-01 GA API. - -### Breaking Changes - - - Environments client now works with "environment definitions" instead of "catalog items" - - Creating a new environment requires passing `environmentDefinitionName` instead of `catalogItemName` - - Creating a new environment requires passing an additional parameter `catalogName` - -## 1.0.0-beta.2 (2023-02-07) - -This release updates the Azure DevCenter library to use the 2022-11-11-preview API. - -### Breaking Changes - -- `createClient` now accepts an endpoint URI on construction rather than tenant ID + dev center name. - -### Features Added - -- Added upcoming actions APIs to dev boxes. - - `/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/upcomingActions` - - `/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/upcomingActions/{upcomingActionId}` - - `/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/upcomingActions/{upcomingActionId}:skip` - - `/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/upcomingActions/{upcomingActionId}:delay` - -### Bugs Fixed -- Invalid response types removed from `DeleteDevBox`, `StartDevBox`, and `StopDevBox` APIs. -- Invalid `DeleteEnvironmentAction` API removed from `EnvironmentsClient`. -- Unimplemented artifacts APIs removed from `EnvironmentsClient`. - -## 1.0.0-beta.1 (2022-11-11) - -### Features Added -Initial release of the Azure DevCenter package + - Added Interface AzureDeveloperDevCenterClientOptions + diff --git a/sdk/devcenter/developer-devcenter-rest/LICENSE b/sdk/devcenter/developer-devcenter-rest/LICENSE index 5d1d36e0af80..7d5934740965 100644 --- a/sdk/devcenter/developer-devcenter-rest/LICENSE +++ b/sdk/devcenter/developer-devcenter-rest/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2022 Microsoft +Copyright (c) 2024 Microsoft Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/sdk/devcenter/developer-devcenter-rest/README.md b/sdk/devcenter/developer-devcenter-rest/README.md index c99a7daefbb4..47ed95660824 100644 --- a/sdk/devcenter/developer-devcenter-rest/README.md +++ b/sdk/devcenter/developer-devcenter-rest/README.md @@ -1,22 +1,13 @@ # Azure DevCenter REST client library for JavaScript - -The Azure DevCenter library provides access to manage resources for Microsoft Dev Box and Azure Deployment Environments. This package enables managing developer machines and environments in Azure. - -Use the package for Azure DevCenter to: -> Create, access, manage, and delete Dev Box resources -> Create, deploy, manage, and delete Environment resources - DevCenter service **Please rely heavily on our [REST client docs](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/rest-clients.md) to use this library** Key links: -- [Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/devcenter/developer-devcenter-rest) - [Package (NPM)](https://www.npmjs.com/package/@azure-rest/developer-devcenter) - [API reference documentation](https://docs.microsoft.com/javascript/api/@azure-rest/developer-devcenter) -- [Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/devcenter/developer-devcenter-rest/samples) ## Getting started @@ -27,9 +18,7 @@ Key links: ### Prerequisites - You must have an [Azure subscription](https://azure.microsoft.com/free/) to use this package. -- You must have [configured](https://learn.microsoft.com/azure/dev-box/quickstart-configure-dev-box-service) a DevCenter, Project, Network Connection, Dev Box Definition, and Pool before you can create Dev Boxes -- You must have [configured](https://learn.microsoft.com/azure/deployment-environments/) a DevCenter, Project, Catalog, and Environment Type before you can create Environments - + ### Install the `@azure-rest/developer-devcenter` package Install the Azure DevCenter REST client REST client library for JavaScript with `npm`: @@ -50,19 +39,8 @@ After setup, you can choose which type of [credential](https://github.com/Azure/ As an example, [DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential) can be used to authenticate the client. -Set the value of dev center endpoint as environment variable: -DEVCENTER_ENDPOINT - -## Key Concepts - -### REST Client - -This client is one of our REST clients. We highly recommend you read how to use a REST client [here](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/rest-clients.md). - -### DevCenter Concepts -Dev Boxes refer to managed developer machines running in Azure. Dev Boxes are provisioned in Pools, which define the network and image used for a Dev Box. - -Environments refer to templated developer environments, which combine a template (Catalog Item) and parameters, as well as an Environment Type which defines permissions and where the resources are deployed. +Set the values of the client ID, tenant ID, and client secret of the AAD application as environment variables: +AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET ## Troubleshooting diff --git a/sdk/devcenter/developer-devcenter-rest/api-extractor.json b/sdk/devcenter/developer-devcenter-rest/api-extractor.json index d5c7b7aa5e18..04a91b5b164a 100644 --- a/sdk/devcenter/developer-devcenter-rest/api-extractor.json +++ b/sdk/devcenter/developer-devcenter-rest/api-extractor.json @@ -1,18 +1,31 @@ { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", "mainEntryPointFilePath": "./dist/esm/index.d.ts", - "docModel": { "enabled": true }, - "apiReport": { "enabled": true, "reportFolder": "./review" }, + "docModel": { + "enabled": true + }, + "apiReport": { + "enabled": true, + "reportFolder": "./review" + }, "dtsRollup": { "enabled": true, "untrimmedFilePath": "", "publicTrimmedFilePath": "./types/developer-devcenter.d.ts" }, "messages": { - "tsdocMessageReporting": { "default": { "logLevel": "none" } }, + "tsdocMessageReporting": { + "default": { + "logLevel": "none" + } + }, "extractorMessageReporting": { - "ae-missing-release-tag": { "logLevel": "none" }, - "ae-unresolved-link": { "logLevel": "none" } + "ae-missing-release-tag": { + "logLevel": "none" + }, + "ae-unresolved-link": { + "logLevel": "none" + } } } -} +} \ No newline at end of file diff --git a/sdk/devcenter/developer-devcenter-rest/assets.json b/sdk/devcenter/developer-devcenter-rest/assets.json deleted file mode 100644 index 5af15a9f7181..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/assets.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "AssetsRepo": "Azure/azure-sdk-assets", - "AssetsRepoPrefixPath": "js", - "TagPrefix": "js/devcenter/developer-devcenter-rest", - "Tag": "js/devcenter/developer-devcenter-rest_69f2e99d81" -} diff --git a/sdk/devcenter/developer-devcenter-rest/eslint.config.mjs b/sdk/devcenter/developer-devcenter-rest/eslint.config.mjs index 68c02604a4c1..113bdc3eaf5f 100644 --- a/sdk/devcenter/developer-devcenter-rest/eslint.config.mjs +++ b/sdk/devcenter/developer-devcenter-rest/eslint.config.mjs @@ -8,10 +8,10 @@ export default [ "@azure/azure-sdk/ts-apiextractor-json-types": "warn", "@azure/azure-sdk/ts-package-json-types": "warn", "@azure/azure-sdk/ts-package-json-engine-is-present": "warn", - "tsdoc/syntax": "warn", "@azure/azure-sdk/ts-package-json-module": "off", "@azure/azure-sdk/ts-package-json-files-required": "off", "@azure/azure-sdk/ts-package-json-main-is-cjs": "off", - }, - }, + "tsdoc/syntax": "warn" + } + } ]; diff --git a/sdk/devcenter/developer-devcenter-rest/karma.conf.js b/sdk/devcenter/developer-devcenter-rest/karma.conf.js deleted file mode 100644 index 4fdf26c79ac0..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/karma.conf.js +++ /dev/null @@ -1,133 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -// https://github.com/karma-runner/karma-chrome-launcher -process.env.CHROME_BIN = require("puppeteer").executablePath(); -require("dotenv").config(); -const { relativeRecordingsPath } = require("@azure-tools/test-recorder"); -process.env.RECORDINGS_RELATIVE_PATH = relativeRecordingsPath(); - -module.exports = function (config) { - config.set({ - // base path that will be used to resolve all patterns (eg. files, exclude) - basePath: "./", - - // frameworks to use - // available frameworks: https://npmjs.org/browse/keyword/karma-adapter - frameworks: ["source-map-support", "mocha"], - - plugins: [ - "karma-mocha", - "karma-mocha-reporter", - "karma-chrome-launcher", - "karma-firefox-launcher", - "karma-env-preprocessor", - "karma-coverage", - "karma-sourcemap-loader", - "karma-junit-reporter", - "karma-source-map-support", - ], - - // list of files / patterns to load in the browser - files: [ - "dist-test/index.browser.js", - { - pattern: "dist-test/index.browser.js.map", - type: "html", - included: false, - served: true, - }, - ], - - // list of files / patterns to exclude - exclude: [], - - // preprocess matching files before serving them to the browser - // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor - preprocessors: { - "**/*.js": ["sourcemap", "env"], - // IMPORTANT: COMMENT following line if you want to debug in your browsers!! - // Preprocess source file to calculate code coverage, however this will make source file unreadable - // "dist-test/index.js": ["coverage"] - }, - - envPreprocessor: [ - "TEST_MODE", - "ENDPOINT", - "AZURE_CLIENT_SECRET", - "AZURE_CLIENT_ID", - "AZURE_TENANT_ID", - "SUBSCRIPTION_ID", - "RECORDINGS_RELATIVE_PATH", - ], - - // test results reporter to use - // possible values: 'dots', 'progress' - // available reporters: https://npmjs.org/browse/keyword/karma-reporter - reporters: ["mocha", "coverage", "junit"], - - coverageReporter: { - // specify a common output directory - dir: "coverage-browser/", - reporters: [ - { type: "json", subdir: ".", file: "coverage.json" }, - { type: "lcovonly", subdir: ".", file: "lcov.info" }, - { type: "html", subdir: "html" }, - { type: "cobertura", subdir: ".", file: "cobertura-coverage.xml" }, - ], - }, - - junitReporter: { - outputDir: "", // results will be saved as $outputDir/$browserName.xml - outputFile: "test-results.browser.xml", // if included, results will be saved as $outputDir/$browserName/$outputFile - suite: "", // suite will become the package name attribute in xml testsuite element - useBrowserName: false, // add browser name to report and classes names - nameFormatter: undefined, // function (browser, result) to customize the name attribute in xml testcase element - classNameFormatter: undefined, // function (browser, result) to customize the classname attribute in xml testcase element - properties: {}, // key value pair of properties to add to the section of the report - }, - - // web server port - port: 9876, - - // enable / disable colors in the output (reporters and logs) - colors: true, - - // level of logging - // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG - logLevel: config.LOG_INFO, - - // enable / disable watching file and executing tests whenever any file changes - autoWatch: false, - - // --no-sandbox allows our tests to run in Linux without having to change the system. - // --disable-web-security allows us to authenticate from the browser without having to write tests using interactive auth, which would be far more complex. - browsers: ["ChromeHeadlessNoSandbox"], - customLaunchers: { - ChromeHeadlessNoSandbox: { - base: "ChromeHeadless", - flags: ["--no-sandbox", "--disable-web-security"], - }, - }, - - // Continuous Integration mode - // if true, Karma captures browsers, runs the tests and exits - singleRun: false, - - // Concurrency level - // how many browser should be started simultaneous - concurrency: 1, - - browserNoActivityTimeout: 60000000, - browserDisconnectTimeout: 10000, - browserDisconnectTolerance: 3, - - client: { - mocha: { - // change Karma's debug.html to the mocha web reporter - reporter: "html", - timeout: "600000", - }, - }, - }); -}; diff --git a/sdk/devcenter/developer-devcenter-rest/package.json b/sdk/devcenter/developer-devcenter-rest/package.json index e0e33eb103b1..e6ff4dd92718 100644 --- a/sdk/devcenter/developer-devcenter-rest/package.json +++ b/sdk/devcenter/developer-devcenter-rest/package.json @@ -1,6 +1,6 @@ { "name": "@azure-rest/developer-devcenter", - "version": "1.0.1", + "version": "1.0.0", "description": "Azure Developer DevCenter Client", "engines": { "node": ">=18.0.0" @@ -37,107 +37,103 @@ "dist", "README.md", "LICENSE", - "review/*" + "review/*", + "CHANGELOG.md" ], "sdk-type": "client", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/devcenter/developer-devcenter-rest/README.md", "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "//metadata": { "constantPaths": [ { "path": "src/azureDeveloperDevCenter.ts", - "prefix": "package-version" + "prefix": "userAgentInfo" } ] }, "dependencies": { - "@azure-rest/core-client": "^2.0.0", - "@azure/abort-controller": "^2.0.0", + "@azure-rest/core-client": "^2.1.0", "@azure/core-auth": "^1.6.0", - "@azure/core-lro": "3.0.0", - "@azure/core-paging": "^1.5.0", "@azure/core-rest-pipeline": "^1.5.0", "@azure/logger": "^1.0.0", - "tslib": "^2.6.2" + "tslib": "^2.6.2", + "@azure/core-lro": "^3.0.0", + "@azure/abort-controller": "^2.1.2", + "@azure/core-paging": "^1.5.0" }, "devDependencies": { - "@azure-tools/test-credential": "^2.0.0", - "@azure-tools/test-recorder": "^4.0.0", - "@azure/core-util": "^1.0.0", - "@azure/dev-tool": "^1.0.0", - "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "^4.0.1", + "dotenv": "^16.0.0", "@microsoft/api-extractor": "^7.40.3", "@types/node": "^18.0.0", + "eslint": "^8.55.0", + "prettier": "^3.2.5", + "rimraf": "^5.0.5", + "mkdirp": "^3.0.1", + "typescript": "~5.5.3", + "tshy": "^1.11.1", + "@azure/identity": "^4.2.1", "@vitest/browser": "^2.0.5", "@vitest/coverage-istanbul": "^2.0.5", - "dotenv": "^16.0.0", - "eslint": "^9.9.0", - "mkdirp": "^3.0.1", "playwright": "^1.41.2", - "rimraf": "^5.0.5", - "typescript": "~5.6.2", - "vitest": "^2.0.5" + "vitest": "^2.0.5", + "@azure-tools/test-credential": "^2.0.0", + "@azure-tools/test-recorder": "^4.0.0", + "@azure/dev-tool": "^1.0.0", + "@azure/eslint-plugin-azure-sdk": "^3.0.0" }, "scripts": { - "audit": "node ../../../common/scripts/rush-audit.js && rimraf node_modules package-lock.json && npm i --package-lock-only 2>&1 && npm audit", - "build": "npm run clean && dev-tool run build-package && mkdirp ./review && dev-tool run extract-api", - "build:samples": "dev-tool samples publish --force", - "build:test": "npm run clean && dev-tool run build-package && dev-tool run build-test", - "check-format": "dev-tool run vendored prettier --list-different --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.{ts,cts,mts}\" \"test/**/*.{ts,cts,mts}\" \"*.{js,cjs,mjs,json}\"", "clean": "rimraf --glob dist dist-browser dist-esm test-dist temp types *.tgz *.log", - "execute:samples": "dev-tool samples run samples-dev", "extract-api": "rimraf review && mkdirp ./review && dev-tool run extract-api", - "format": "dev-tool run vendored prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.{ts,cts,mts}\" \"test/**/*.{ts,cts,mts}\" \"*.{js,cjs,mjs,json}\"", - "generate:client": "echo skipped", + "pack": "npm pack 2>&1", + "lint": "eslint package.json api-extractor.json src test", + "lint:fix": "eslint package.json api-extractor.json src test --fix --fix-type [problem,suggestion]", + "unit-test": "npm run unit-test:node && npm run unit-test:browser", + "unit-test:browser": "npm run build:test && dev-tool run test:vitest --browser", + "unit-test:node": "dev-tool run test:vitest", "integration-test": "npm run integration-test:node && npm run integration-test:browser", "integration-test:browser": "echo skipped", "integration-test:node": "echo skipped", - "lint": "eslint package.json api-extractor.json src test", - "lint:fix": "eslint package.json api-extractor.json src test --fix --fix-type [problem,suggestion]", - "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/index.js.map'\" -o ./dist/index.min.js ./dist/index.js", - "pack": "npm pack 2>&1", - "test": "npm run clean && dev-tool run build-package && npm run unit-test:node && dev-tool run bundle && npm run unit-test:browser && npm run integration-test", + "audit": "node ../../../common/scripts/rush-audit.js && rimraf node_modules package-lock.json && npm i --package-lock-only 2>&1 && npm audit", + "build:samples": "echo skipped", + "check-format": "dev-tool run vendored prettier --list-different --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.{ts,cts,mts}\" \"test/**/*.{ts,cts,mts}\" \"*.{js,cjs,mjs,json}\" ", + "execute:samples": "echo skipped", + "format": "dev-tool run vendored prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.{ts,cts,mts}\" \"test/**/*.{ts,cts,mts}\" \"*.{js,cjs,mjs,json}\" ", + "generate:client": "echo skipped", "test:browser": "npm run clean && npm run build:test && npm run unit-test:browser && npm run integration-test:browser", - "test:node": "npm run clean && dev-tool run build-package && npm run unit-test:node && npm run integration-test:node", - "unit-test": "npm run unit-test:node && npm run unit-test:browser", - "unit-test:browser": "echo skipped", - "unit-test:node": "dev-tool run test:vitest -- -c vitest.config.ts", - "update-snippets": "echo skipped" + "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/index.js.map'\" -o ./dist/index.min.js ./dist/index.js", + "build:test": "npm run clean && tshy && dev-tool run build-test", + "build": "npm run clean && tshy && mkdirp ./review && dev-tool run extract-api", + "test:node": "npm run clean && tshy && npm run unit-test:node && npm run integration-test:node", + "test": "npm run clean && tshy && npm run unit-test:node && dev-tool run bundle && npm run unit-test:browser && npm run integration-test" }, "exports": { "./package.json": "./package.json", ".": { "browser": { + "source": "./src/index.ts", "types": "./dist/browser/index.d.ts", "default": "./dist/browser/index.js" }, "react-native": { + "source": "./src/index.ts", "types": "./dist/react-native/index.d.ts", "default": "./dist/react-native/index.js" }, "import": { + "source": "./src/index.ts", "types": "./dist/esm/index.d.ts", "default": "./dist/esm/index.js" }, "require": { + "source": "./src/index.ts", "types": "./dist/commonjs/index.d.ts", "default": "./dist/commonjs/index.js" } } }, "main": "./dist/commonjs/index.js", - "types": "./dist/commonjs/index.d.ts", - "//sampleConfiguration": { - "productName": "Azure DevCenter", - "productSlugs": [ - "azure" - ], - "apiRefLink": "https://docs.microsoft.com/javascript/api/@azure-rest/developer-devcenter" - }, - "module": "./dist/esm/index.js" -} + "types": "./dist/commonjs/index.d.ts" +} \ No newline at end of file diff --git a/sdk/devcenter/developer-devcenter-rest/review/developer-devcenter.api.md b/sdk/devcenter/developer-devcenter-rest/review/developer-devcenter.api.md index 3f1844eab623..cdf2601d700f 100644 --- a/sdk/devcenter/developer-devcenter-rest/review/developer-devcenter.api.md +++ b/sdk/devcenter/developer-devcenter-rest/review/developer-devcenter.api.md @@ -26,13 +26,18 @@ export type AzureDeveloperDevCenterClient = Client & { path: Routes; }; +// @public +export interface AzureDeveloperDevCenterClientOptions extends ClientOptions { + apiVersion?: string; +} + // @public export interface CatalogOutput { readonly name: string; } // @public -function createClient(endpointParam: string, credentials: TokenCredential, options?: ClientOptions): AzureDeveloperDevCenterClient; +function createClient(endpointParam: string, credentials: TokenCredential, { apiVersion, ...options }?: AzureDeveloperDevCenterClientOptions): AzureDeveloperDevCenterClient; export default createClient; // @public @@ -338,7 +343,7 @@ export interface DevBoxActionDelayResultOutput { } // @public -export type DevBoxActionDelayResultStatusOutput = "Succeeded" | "Failed" | string; +export type DevBoxActionDelayResultStatusOutput = string; // @public export interface DevBoxActionOutput { @@ -350,7 +355,7 @@ export interface DevBoxActionOutput { } // @public -export type DevBoxActionTypeOutput = "Stop" | string; +export type DevBoxActionTypeOutput = string; // @public export interface DevBoxNextActionOutput { @@ -379,10 +384,10 @@ export interface DevBoxOutput { } // @public -export type DevBoxProvisioningState = "Succeeded" | "Failed" | "Canceled" | "Creating" | "Deleting" | "Updating" | "Starting" | "Stopping" | "Provisioning" | "ProvisionedWithWarning" | "InGracePeriod" | "NotProvisioned" | string; +export type DevBoxProvisioningState = string; // @public -export type DevBoxProvisioningStateOutput = "Succeeded" | "Failed" | "Canceled" | "Creating" | "Deleting" | "Updating" | "Starting" | "Stopping" | "Provisioning" | "ProvisionedWithWarning" | "InGracePeriod" | "NotProvisioned" | string; +export type DevBoxProvisioningStateOutput = string; // @public export interface Environment { @@ -429,13 +434,13 @@ export interface EnvironmentOutput { } // @public -export type EnvironmentProvisioningState = "Succeeded" | "Failed" | "Canceled" | "Creating" | "Accepted" | "Deleting" | "Updating" | "Preparing" | "Running" | "Syncing" | "MovingResources" | "TransientFailure" | "StorageProvisioningFailed" | string; +export type EnvironmentProvisioningState = string; // @public -export type EnvironmentProvisioningStateOutput = "Succeeded" | "Failed" | "Canceled" | "Creating" | "Accepted" | "Deleting" | "Updating" | "Preparing" | "Running" | "Syncing" | "MovingResources" | "TransientFailure" | "StorageProvisioningFailed" | string; +export type EnvironmentProvisioningStateOutput = string; // @public -export type EnvironmentTypeEnableStatusOutput = "Enabled" | "Disabled" | string; +export type EnvironmentTypeEnableStatusOutput = string; // @public export interface EnvironmentTypeOutput { @@ -800,10 +805,10 @@ export interface HardwareProfileOutput { } // @public -export type HibernateSupport = "Enabled" | "Disabled" | "OsUnsupported" | string; +export type HibernateSupport = string; // @public -export type HibernateSupportOutput = "Enabled" | "Disabled" | "OsUnsupported" | string; +export type HibernateSupportOutput = string; // @public export interface ImageReference { @@ -1321,13 +1326,13 @@ export interface ListSchedulesByPoolDefaultResponse extends HttpResponse { export type ListSchedulesByPoolParameters = RequestParameters; // @public -export type LocalAdminStatus = "Enabled" | "Disabled" | string; +export type LocalAdminStatus = string; // @public -export type LocalAdminStatusOutput = "Enabled" | "Disabled" | string; +export type LocalAdminStatusOutput = string; // @public -export type OperationStateOutput = "NotStarted" | "Running" | "Succeeded" | "Failed" | "Canceled"; +export type OperationStateOutput = string; // @public export interface OperationStatusOutput { @@ -1352,10 +1357,10 @@ export interface OsDiskOutput { } // @public -export type OsType = "Windows" | string; +export type OsType = string; // @public -export type OsTypeOutput = "Windows" | string; +export type OsTypeOutput = string; // @public export type PagedCatalogOutput = Paged; @@ -1403,10 +1408,10 @@ export interface PagingOptions { } // @public -export type ParameterTypeOutput = "array" | "boolean" | "integer" | "number" | "object" | "string" | string; +export type ParameterTypeOutput = string; // @public -export type PoolHealthStatusOutput = "Unknown" | "Pending" | "Healthy" | "Warning" | "Unhealthy" | string; +export type PoolHealthStatusOutput = string; // @public export interface PoolOutput { @@ -1423,10 +1428,10 @@ export interface PoolOutput { } // @public -export type PowerState = "Unknown" | "Running" | "Deallocated" | "PoweredOff" | "Hibernated" | string; +export type PowerState = string; // @public -export type PowerStateOutput = "Unknown" | "Running" | "Deallocated" | "PoweredOff" | "Hibernated" | string; +export type PowerStateOutput = string; // @public export interface ProjectOutput { @@ -1521,10 +1526,10 @@ export interface Routes { } // @public -export type ScheduledFrequencyOutput = "Daily" | string; +export type ScheduledFrequencyOutput = string; // @public -export type ScheduledTypeOutput = "StopDevBox" | string; +export type ScheduledTypeOutput = string; // @public export interface ScheduleOutput { @@ -1587,10 +1592,10 @@ export interface SkipActionDefaultResponse extends HttpResponse { export type SkipActionParameters = RequestParameters; // @public -export type SkuName = "general_i_8c32gb256ssd_v2" | "general_i_8c32gb512ssd_v2" | "general_i_8c32gb1024ssd_v2" | "general_i_8c32gb2048ssd_v2" | "general_i_16c64gb256ssd_v2" | "general_i_16c64gb512ssd_v2" | "general_i_16c64gb1024ssd_v2" | "general_i_16c64gb2048ssd_v2" | "general_i_32c128gb512ssd_v2" | "general_i_32c128gb1024ssd_v2" | "general_i_32c128gb2048ssd_v2" | "general_a_8c32gb256ssd_v2" | "general_a_8c32gb512ssd_v2" | "general_a_8c32gb1024ssd_v2" | "general_a_8c32gb2048ssd_v2" | "general_a_16c64gb256ssd_v2" | "general_a_16c64gb512ssd_v2" | "general_a_16c64gb1024ssd_v2" | "general_a_16c64gb2048ssd_v2" | "general_a_32c128gb512ssd_v2" | "general_a_32c128gb1024ssd_v2" | "general_a_32c128gb2048ssd_v2" | string; +export type SkuName = string; // @public -export type SkuNameOutput = "general_i_8c32gb256ssd_v2" | "general_i_8c32gb512ssd_v2" | "general_i_8c32gb1024ssd_v2" | "general_i_8c32gb2048ssd_v2" | "general_i_16c64gb256ssd_v2" | "general_i_16c64gb512ssd_v2" | "general_i_16c64gb1024ssd_v2" | "general_i_16c64gb2048ssd_v2" | "general_i_32c128gb512ssd_v2" | "general_i_32c128gb1024ssd_v2" | "general_i_32c128gb2048ssd_v2" | "general_a_8c32gb256ssd_v2" | "general_a_8c32gb512ssd_v2" | "general_a_8c32gb1024ssd_v2" | "general_a_8c32gb2048ssd_v2" | "general_a_16c64gb256ssd_v2" | "general_a_16c64gb512ssd_v2" | "general_a_16c64gb1024ssd_v2" | "general_a_16c64gb2048ssd_v2" | "general_a_32c128gb512ssd_v2" | "general_a_32c128gb1024ssd_v2" | "general_a_32c128gb2048ssd_v2" | string; +export type SkuNameOutput = string; // @public (undocumented) export interface StartDevBox { @@ -1702,7 +1707,7 @@ export interface StopOnDisconnectConfigurationOutput { } // @public -export type StopOnDisconnectEnableStatusOutput = "Enabled" | "Disabled" | string; +export type StopOnDisconnectEnableStatusOutput = string; // @public export interface StorageProfile { diff --git a/sdk/devcenter/developer-devcenter-rest/sample.env b/sdk/devcenter/developer-devcenter-rest/sample.env deleted file mode 100644 index 8aac9140677e..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/sample.env +++ /dev/null @@ -1 +0,0 @@ -DEVCENTER_ENDPOINT= \ No newline at end of file diff --git a/sdk/devcenter/developer-devcenter-rest/samples-dev/sampleCreateDevBox.ts b/sdk/devcenter/developer-devcenter-rest/samples-dev/sampleCreateDevBox.ts deleted file mode 100644 index 312d1298a134..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples-dev/sampleCreateDevBox.ts +++ /dev/null @@ -1,102 +0,0 @@ -import { DefaultAzureCredential } from "@azure/identity"; -import { - ProjectOutput, - isUnexpected, - PoolOutput, - CreateDevBoxParameters, - getLongRunningPoller, -} from "@azure-rest/developer-devcenter"; -import createClient from "@azure-rest/developer-devcenter"; -import * as dotenv from "dotenv"; -dotenv.config(); - -/** - * @summary Demonstrates creating, accessing, and deleting a Dev Box - */ -async function createDevBox() { - // Build client and fetch required parameters - const endpoint = process.env.DEVCENTER_ENDPOINT || ""; - const client = createClient(endpoint, new DefaultAzureCredential()); - - const projectList = await client.path("/projects").get(); - if (isUnexpected(projectList)) { - throw new Error(projectList.body.error); - } - - let project: ProjectOutput = projectList.body.value[0]; - if (project === undefined || project.name === undefined) { - throw new Error("No projects found."); - } - const projectName: string = project.name; - - const poolList = await client.path("/projects/{projectName}/pools", projectName).get(); - if (isUnexpected(poolList)) { - throw new Error(poolList.body.error); - } - - let pool: PoolOutput = poolList.body.value[0]; - if (pool === undefined || pool.name === undefined) { - throw new Error("No pools found."); - } - - const devBoxCreateParameters: CreateDevBoxParameters = { - contentType: "application/json", - body: { poolName: pool.name }, - }; - - // Provision a dev box - const devBoxCreateResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - "me", - "TestDevBox" - ) - .put(devBoxCreateParameters); - - if (isUnexpected(devBoxCreateResponse)) { - throw new Error(devBoxCreateResponse.body.error.message); - } - - const devBoxCreatePoller = await getLongRunningPoller(client, devBoxCreateResponse); - const devBoxCreateResult = await devBoxCreatePoller.pollUntilDone(); - - console.log(`Provisioned dev box with state ${devBoxCreateResult.body.provisioningState}.`); - - // Get the connection URL to access the machine - const remoteConnectionResult = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/remoteConnection", - projectName, - "me", - "TestDevBox" - ) - .get(); - - if (isUnexpected(remoteConnectionResult)) { - throw new Error(remoteConnectionResult.body.error.message); - } - - console.log(`Connect using remote connection URL ${remoteConnectionResult.body.webUrl}.`); - - // Tear down the machine when finished - const devBoxDeleteResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - "me", - "TestDevBox" - ) - .delete(); - - if (isUnexpected(devBoxDeleteResponse)) { - throw new Error(devBoxDeleteResponse.body.error.message); - } - - const devBoxDeletePoller = await getLongRunningPoller(client, devBoxDeleteResponse); - await devBoxDeletePoller.pollUntilDone(); - - console.log(`Cleaned up dev box successfully.`); -} - -createDevBox(); diff --git a/sdk/devcenter/developer-devcenter-rest/samples-dev/sampleCreateEnvironment.ts b/sdk/devcenter/developer-devcenter-rest/samples-dev/sampleCreateEnvironment.ts deleted file mode 100644 index f9e02cb55c1b..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples-dev/sampleCreateEnvironment.ts +++ /dev/null @@ -1,119 +0,0 @@ -import { DefaultAzureCredential } from "@azure/identity"; -import { - ProjectOutput, - isUnexpected, - CatalogOutput, - EnvironmentTypeOutput, - EnvironmentDefinitionOutput, - CreateOrUpdateEnvironmentParameters, - getLongRunningPoller, -} from "@azure-rest/developer-devcenter"; -import createClient from "@azure-rest/developer-devcenter"; -import * as dotenv from "dotenv"; -dotenv.config(); - -/** - * @summary Demonstrates creating, fetching outputs from, and deleting an Environment - */ -async function createEnvironment() { - // Build client and fetch required parameters - const endpoint = process.env.DEVCENTER_ENDPOINT || ""; - const client = createClient(endpoint, new DefaultAzureCredential()); - - const projectList = await client.path("/projects").get(); - if (isUnexpected(projectList)) { - throw new Error(projectList.body.error.message); - } - - let project: ProjectOutput = projectList.body.value[0]; - if (project === undefined || project.name === undefined) { - throw new Error("No projects found."); - } - const projectName: string = project.name; - - const catalogList = await client.path("/projects/{projectName}/catalogs", projectName).get(); - if (isUnexpected(catalogList)) { - throw new Error(catalogList.body.error); - } - - const catalog: CatalogOutput = catalogList.body.value[0]; - const catalogName: string = catalog.name; - - const environmentDefinitionsList = await client - .path( - "/projects/{projectName}/catalogs/{catalogName}/environmentDefinitions", - projectName, - catalogName - ) - .get(); - - if (isUnexpected(environmentDefinitionsList)) { - throw new Error(environmentDefinitionsList.body.error); - } - - const environmentDefinition: EnvironmentDefinitionOutput = environmentDefinitionsList.body.value[0]; - const environmentDefinitionName: string = environmentDefinition.name; - - const environmentTypeList = await client - .path("/projects/{projectName}/environmentTypes", projectName) - .get(); - if (isUnexpected(environmentTypeList)) { - throw new Error(environmentTypeList.body.error.message); - } - - let environmentType: EnvironmentTypeOutput = environmentTypeList.body.value[0]; - if (environmentType === undefined || environmentType.name === undefined) { - throw new Error("No environment types found."); - } - - const environmentsCreateParameters: CreateOrUpdateEnvironmentParameters = { - contentType: "application/json", - body: { - environmentDefinitionName: environmentDefinitionName, - environmentType: environmentType.name, - catalogName: catalogName, - }, - }; - - const environmentName = "DevEnvironment"; - const userId = "me"; - - // Provision an environment - const environmentCreateResponse = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName - ) - .put(environmentsCreateParameters); - if (isUnexpected(environmentCreateResponse)) { - throw new Error(environmentCreateResponse.body.error.message); - } - - const environmentCreatePoller = await getLongRunningPoller(client, environmentCreateResponse); - const environmentCreateResult = await environmentCreatePoller.pollUntilDone(); - console.log( - `Provisioned environment with state ${environmentCreateResult.body.provisioningState}.` - ); - - // Tear down the environment when finished - const environmentDeleteResponse = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName - ) - .delete(); - if (isUnexpected(environmentDeleteResponse)) { - throw new Error(environmentDeleteResponse.body.error.message); - } - - const environmentDeletePoller = await getLongRunningPoller(client, environmentDeleteResponse); - await environmentDeletePoller.pollUntilDone(); - - console.log("Cleaned up environment successfully."); -} - -createEnvironment(); diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/README.md b/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/README.md deleted file mode 100644 index 0c708589f86f..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/README.md +++ /dev/null @@ -1,52 +0,0 @@ -# Azure DevCenter client library samples for JavaScript (Beta) - -These sample programs show how to use the JavaScript client libraries for Azure DevCenter in some common scenarios. - -| **File Name** | **Description** | -| ----------------------------------------------------- | ------------------------------------------------------------------------- | -| [sampleCreateDevBox.js][samplecreatedevbox] | Demonstrates creating, accessing, and deleting a Dev Box | -| [sampleCreateEnvironment.js][samplecreateenvironment] | Demonstrates creating, fetching outputs from, and deleting an Environment | - -## Prerequisites - -The sample programs are compatible with [LTS versions of Node.js](https://github.com/nodejs/release#release-schedule). - -You need [an Azure subscription][freesub] to run these sample programs. - -Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function. - -Adapting the samples to run in the browser may require some additional consideration. For details, please see the [package README][package]. - -## Setup - -To run the samples using the published version of the package: - -1. Install the dependencies using `npm`: - -```bash -npm install -``` - -2. Edit the file `sample.env`, adding the correct credentials to access the Azure service and run the samples. Then rename the file from `sample.env` to just `.env`. The sample programs will read this file automatically. - -3. Run whichever samples you like (note that some samples may require additional setup, see the table above): - -```bash -node sampleCreateDevBox.js -``` - -Alternatively, run a single sample with the correct environment variables set (setting up the `.env` file is not required if you do this), for example (cross-platform): - -```bash -npx cross-env DEVCENTER_ENDPOINT="" node sampleCreateDevBox.js -``` - -## Next Steps - -Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. - -[samplecreatedevbox]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/sampleCreateDevBox.js -[samplecreateenvironment]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/sampleCreateEnvironment.js -[apiref]: https://learn.microsoft.com/azure/dev-box/ -[freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/devcenter/developer-devcenter-rest/README.md diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/package.json b/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/package.json deleted file mode 100644 index 5770bc8341ab..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/package.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "name": "@azure-samples/developer-devcenter-js-beta", - "private": true, - "version": "1.0.0-beta.3", - "description": "Azure DevCenter client library samples for JavaScript (Beta)", - "engines": { - "node": ">=18.0.0" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/Azure/azure-sdk-for-js.git", - "directory": "sdk/devcenter/developer-devcenter-rest" - }, - "keywords": [ - "node", - "azure", - "cloud", - "typescript", - "browser", - "isomorphic" - ], - "author": "Microsoft Corporation", - "license": "MIT", - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/devcenter/developer-devcenter-rest", - "dependencies": { - "@azure-rest/developer-devcenter": "next", - "dotenv": "latest", - "@azure/identity": "^4.2.1" - } -} diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/sample.env b/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/sample.env deleted file mode 100644 index 8aac9140677e..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/sample.env +++ /dev/null @@ -1 +0,0 @@ -DEVCENTER_ENDPOINT= \ No newline at end of file diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/sampleCreateDevBox.js b/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/sampleCreateDevBox.js deleted file mode 100644 index 23b084b0a48f..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/sampleCreateDevBox.js +++ /dev/null @@ -1,95 +0,0 @@ -const { DefaultAzureCredential } = require("@azure/identity"); -const { isUnexpected, getLongRunningPoller } = require("@azure-rest/developer-devcenter"); -const createClient = require("@azure-rest/developer-devcenter").default; -require("dotenv").config(); - -/** - * @summary Demonstrates creating, accessing, and deleting a Dev Box - */ -async function createDevBox() { - // Build client and fetch required parameters - const endpoint = process.env.DEVCENTER_ENDPOINT || ""; - const client = createClient(endpoint, new DefaultAzureCredential()); - - const projectList = await client.path("/projects").get(); - if (isUnexpected(projectList)) { - throw new Error(projectList.body.error); - } - - let project = projectList.body.value[0]; - if (project === undefined || project.name === undefined) { - throw new Error("No projects found."); - } - const projectName = project.name; - - const poolList = await client.path("/projects/{projectName}/pools", projectName).get(); - if (isUnexpected(poolList)) { - throw new Error(poolList.body.error); - } - - let pool = poolList.body.value[0]; - if (pool === undefined || pool.name === undefined) { - throw new Error("No pools found."); - } - - const devBoxCreateParameters = { - contentType: "application/json", - body: { poolName: pool.name }, - }; - - // Provision a dev box - const devBoxCreateResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - "me", - "TestDevBox" - ) - .put(devBoxCreateParameters); - - if (isUnexpected(devBoxCreateResponse)) { - throw new Error(devBoxCreateResponse.body.error.message); - } - - const devBoxCreatePoller = await getLongRunningPoller(client, devBoxCreateResponse); - const devBoxCreateResult = await devBoxCreatePoller.pollUntilDone(); - - console.log(`Provisioned dev box with state ${devBoxCreateResult.body.provisioningState}.`); - - // Get the connection URL to access the machine - const remoteConnectionResult = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/remoteConnection", - projectName, - "me", - "TestDevBox" - ) - .get(); - - if (isUnexpected(remoteConnectionResult)) { - throw new Error(remoteConnectionResult.body.error.message); - } - - console.log(`Connect using remote connection URL ${remoteConnectionResult.body.webUrl}.`); - - // Tear down the machine when finished - const devBoxDeleteResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - "me", - "TestDevBox" - ) - .delete(); - - if (isUnexpected(devBoxDeleteResponse)) { - throw new Error(devBoxDeleteResponse.body.error.message); - } - - const devBoxDeletePoller = await getLongRunningPoller(client, devBoxDeleteResponse); - await devBoxDeletePoller.pollUntilDone(); - - console.log(`Cleaned up dev box successfully.`); -} - -createDevBox(); diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/sampleCreateEnvironment.js b/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/sampleCreateEnvironment.js deleted file mode 100644 index 3e787885af8b..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/javascript/sampleCreateEnvironment.js +++ /dev/null @@ -1,110 +0,0 @@ -const { DefaultAzureCredential } = require("@azure/identity"); -const { isUnexpected, getLongRunningPoller } = require("@azure-rest/developer-devcenter"); -const createClient = require("@azure-rest/developer-devcenter").default; -require("dotenv").config(); - -/** - * @summary Demonstrates creating, fetching outputs from, and deleting an Environment - */ -async function createEnvironment() { - // Build client and fetch required parameters - const endpoint = process.env.DEVCENTER_ENDPOINT || ""; - const client = createClient(endpoint, new DefaultAzureCredential()); - - const projectList = await client.path("/projects").get(); - if (isUnexpected(projectList)) { - throw new Error(projectList.body.error.message); - } - - let project = projectList.body.value[0]; - if (project === undefined || project.name === undefined) { - throw new Error("No projects found."); - } - const projectName = project.name; - - const catalogList = await client.path("/projects/{projectName}/catalogs", projectName).get(); - if (isUnexpected(catalogList)) { - throw new Error(catalogList.body.error); - } - - const catalog = catalogList.body.value[0]; - const catalogName = catalog.name; - - const environmentDefinitionsList = await client - .path( - "/projects/{projectName}/catalogs/{catalogName}/environmentDefinitions", - projectName, - catalogName - ) - .get(); - - if (isUnexpected(environmentDefinitionsList)) { - throw new Error(environmentDefinitionsList.body.error); - } - - const environmentDefinition = environmentDefinitionsList.body.value[0]; - const environmentDefinitionName = environmentDefinition.name; - - const environmentTypeList = await client - .path("/projects/{projectName}/environmentTypes", projectName) - .get(); - if (isUnexpected(environmentTypeList)) { - throw new Error(environmentTypeList.body.error.message); - } - - let environmentType = environmentTypeList.body.value[0]; - if (environmentType === undefined || environmentType.name === undefined) { - throw new Error("No environment types found."); - } - - const environmentsCreateParameters = { - contentType: "application/json", - body: { - environmentDefinitionName: environmentDefinitionName, - environmentType: environmentType.name, - catalogName: catalogName, - }, - }; - - const environmentName = "DevEnvironment"; - const userId = "me"; - - // Provision an environment - const environmentCreateResponse = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName - ) - .put(environmentsCreateParameters); - if (isUnexpected(environmentCreateResponse)) { - throw new Error(environmentCreateResponse.body.error.message); - } - - const environmentCreatePoller = await getLongRunningPoller(client, environmentCreateResponse); - const environmentCreateResult = await environmentCreatePoller.pollUntilDone(); - console.log( - `Provisioned environment with state ${environmentCreateResult.body.provisioningState}.` - ); - - // Tear down the environment when finished - const environmentDeleteResponse = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName - ) - .delete(); - if (isUnexpected(environmentDeleteResponse)) { - throw new Error(environmentDeleteResponse.body.error.message); - } - - const environmentDeletePoller = await getLongRunningPoller(client, environmentDeleteResponse); - await environmentDeletePoller.pollUntilDone(); - - console.log("Cleaned up environment successfully."); -} - -createEnvironment(); diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/README.md b/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/README.md deleted file mode 100644 index 5b7551ef505d..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/README.md +++ /dev/null @@ -1,65 +0,0 @@ -# Azure DevCenter client library samples for TypeScript (Beta) - -These sample programs show how to use the TypeScript client libraries for Azure DevCenter in some common scenarios. - -| **File Name** | **Description** | -| ----------------------------------------------------- | ------------------------------------------------------------------------- | -| [sampleCreateDevBox.ts][samplecreatedevbox] | Demonstrates creating, accessing, and deleting a Dev Box | -| [sampleCreateEnvironment.ts][samplecreateenvironment] | Demonstrates creating, fetching outputs from, and deleting an Environment | - -## Prerequisites - -The sample programs are compatible with [LTS versions of Node.js](https://github.com/nodejs/release#release-schedule). - -Before running the samples in Node, they must be compiled to JavaScript using the TypeScript compiler. For more information on TypeScript, see the [TypeScript documentation][typescript]. Install the TypeScript compiler using: - -```bash -npm install -g typescript -``` - -You need [an Azure subscription][freesub] to run these sample programs. - -Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function. - -Adapting the samples to run in the browser may require some additional consideration. For details, please see the [package README][package]. - -## Setup - -To run the samples using the published version of the package: - -1. Install the dependencies using `npm`: - -```bash -npm install -``` - -2. Compile the samples: - -```bash -npm run build -``` - -3. Edit the file `sample.env`, adding the correct credentials to access the Azure service and run the samples. Then rename the file from `sample.env` to just `.env`. The sample programs will read this file automatically. - -4. Run whichever samples you like (note that some samples may require additional setup, see the table above): - -```bash -node dist/sampleCreateDevBox.js -``` - -Alternatively, run a single sample with the correct environment variables set (setting up the `.env` file is not required if you do this), for example (cross-platform): - -```bash -npx cross-env DEVCENTER_ENDPOINT="" node dist/sampleCreateDevBox.js -``` - -## Next Steps - -Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. - -[samplecreatedevbox]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/src/sampleCreateDevBox.ts -[samplecreateenvironment]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/src/sampleCreateEnvironment.ts -[apiref]: https://learn.microsoft.com/azure/dev-box/ -[freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/devcenter/developer-devcenter-rest/README.md -[typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/package.json b/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/package.json deleted file mode 100644 index 71ab8fabe495..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/package.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "name": "@azure-samples/developer-devcenter-ts-beta", - "private": true, - "version": "1.0.0-beta.3", - "description": "Azure DevCenter client library samples for TypeScript (Beta)", - "engines": { - "node": ">=18.0.0" - }, - "scripts": { - "build": "tsc", - "prebuild": "rimraf dist/" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/Azure/azure-sdk-for-js.git", - "directory": "sdk/devcenter/developer-devcenter-rest" - }, - "keywords": [ - "node", - "azure", - "cloud", - "typescript", - "browser", - "isomorphic" - ], - "author": "Microsoft Corporation", - "license": "MIT", - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/devcenter/developer-devcenter-rest", - "dependencies": { - "@azure-rest/developer-devcenter": "next", - "dotenv": "latest", - "@azure/identity": "^4.2.1" - }, - "devDependencies": { - "@types/node": "^18.0.0", - "typescript": "~5.6.2", - "rimraf": "latest" - } -} diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/sample.env b/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/sample.env deleted file mode 100644 index 8aac9140677e..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/sample.env +++ /dev/null @@ -1 +0,0 @@ -DEVCENTER_ENDPOINT= \ No newline at end of file diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/src/sampleCreateDevBox.ts b/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/src/sampleCreateDevBox.ts deleted file mode 100644 index 312d1298a134..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/src/sampleCreateDevBox.ts +++ /dev/null @@ -1,102 +0,0 @@ -import { DefaultAzureCredential } from "@azure/identity"; -import { - ProjectOutput, - isUnexpected, - PoolOutput, - CreateDevBoxParameters, - getLongRunningPoller, -} from "@azure-rest/developer-devcenter"; -import createClient from "@azure-rest/developer-devcenter"; -import * as dotenv from "dotenv"; -dotenv.config(); - -/** - * @summary Demonstrates creating, accessing, and deleting a Dev Box - */ -async function createDevBox() { - // Build client and fetch required parameters - const endpoint = process.env.DEVCENTER_ENDPOINT || ""; - const client = createClient(endpoint, new DefaultAzureCredential()); - - const projectList = await client.path("/projects").get(); - if (isUnexpected(projectList)) { - throw new Error(projectList.body.error); - } - - let project: ProjectOutput = projectList.body.value[0]; - if (project === undefined || project.name === undefined) { - throw new Error("No projects found."); - } - const projectName: string = project.name; - - const poolList = await client.path("/projects/{projectName}/pools", projectName).get(); - if (isUnexpected(poolList)) { - throw new Error(poolList.body.error); - } - - let pool: PoolOutput = poolList.body.value[0]; - if (pool === undefined || pool.name === undefined) { - throw new Error("No pools found."); - } - - const devBoxCreateParameters: CreateDevBoxParameters = { - contentType: "application/json", - body: { poolName: pool.name }, - }; - - // Provision a dev box - const devBoxCreateResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - "me", - "TestDevBox" - ) - .put(devBoxCreateParameters); - - if (isUnexpected(devBoxCreateResponse)) { - throw new Error(devBoxCreateResponse.body.error.message); - } - - const devBoxCreatePoller = await getLongRunningPoller(client, devBoxCreateResponse); - const devBoxCreateResult = await devBoxCreatePoller.pollUntilDone(); - - console.log(`Provisioned dev box with state ${devBoxCreateResult.body.provisioningState}.`); - - // Get the connection URL to access the machine - const remoteConnectionResult = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/remoteConnection", - projectName, - "me", - "TestDevBox" - ) - .get(); - - if (isUnexpected(remoteConnectionResult)) { - throw new Error(remoteConnectionResult.body.error.message); - } - - console.log(`Connect using remote connection URL ${remoteConnectionResult.body.webUrl}.`); - - // Tear down the machine when finished - const devBoxDeleteResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - "me", - "TestDevBox" - ) - .delete(); - - if (isUnexpected(devBoxDeleteResponse)) { - throw new Error(devBoxDeleteResponse.body.error.message); - } - - const devBoxDeletePoller = await getLongRunningPoller(client, devBoxDeleteResponse); - await devBoxDeletePoller.pollUntilDone(); - - console.log(`Cleaned up dev box successfully.`); -} - -createDevBox(); diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/src/sampleCreateEnvironment.ts b/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/src/sampleCreateEnvironment.ts deleted file mode 100644 index f9e02cb55c1b..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/src/sampleCreateEnvironment.ts +++ /dev/null @@ -1,119 +0,0 @@ -import { DefaultAzureCredential } from "@azure/identity"; -import { - ProjectOutput, - isUnexpected, - CatalogOutput, - EnvironmentTypeOutput, - EnvironmentDefinitionOutput, - CreateOrUpdateEnvironmentParameters, - getLongRunningPoller, -} from "@azure-rest/developer-devcenter"; -import createClient from "@azure-rest/developer-devcenter"; -import * as dotenv from "dotenv"; -dotenv.config(); - -/** - * @summary Demonstrates creating, fetching outputs from, and deleting an Environment - */ -async function createEnvironment() { - // Build client and fetch required parameters - const endpoint = process.env.DEVCENTER_ENDPOINT || ""; - const client = createClient(endpoint, new DefaultAzureCredential()); - - const projectList = await client.path("/projects").get(); - if (isUnexpected(projectList)) { - throw new Error(projectList.body.error.message); - } - - let project: ProjectOutput = projectList.body.value[0]; - if (project === undefined || project.name === undefined) { - throw new Error("No projects found."); - } - const projectName: string = project.name; - - const catalogList = await client.path("/projects/{projectName}/catalogs", projectName).get(); - if (isUnexpected(catalogList)) { - throw new Error(catalogList.body.error); - } - - const catalog: CatalogOutput = catalogList.body.value[0]; - const catalogName: string = catalog.name; - - const environmentDefinitionsList = await client - .path( - "/projects/{projectName}/catalogs/{catalogName}/environmentDefinitions", - projectName, - catalogName - ) - .get(); - - if (isUnexpected(environmentDefinitionsList)) { - throw new Error(environmentDefinitionsList.body.error); - } - - const environmentDefinition: EnvironmentDefinitionOutput = environmentDefinitionsList.body.value[0]; - const environmentDefinitionName: string = environmentDefinition.name; - - const environmentTypeList = await client - .path("/projects/{projectName}/environmentTypes", projectName) - .get(); - if (isUnexpected(environmentTypeList)) { - throw new Error(environmentTypeList.body.error.message); - } - - let environmentType: EnvironmentTypeOutput = environmentTypeList.body.value[0]; - if (environmentType === undefined || environmentType.name === undefined) { - throw new Error("No environment types found."); - } - - const environmentsCreateParameters: CreateOrUpdateEnvironmentParameters = { - contentType: "application/json", - body: { - environmentDefinitionName: environmentDefinitionName, - environmentType: environmentType.name, - catalogName: catalogName, - }, - }; - - const environmentName = "DevEnvironment"; - const userId = "me"; - - // Provision an environment - const environmentCreateResponse = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName - ) - .put(environmentsCreateParameters); - if (isUnexpected(environmentCreateResponse)) { - throw new Error(environmentCreateResponse.body.error.message); - } - - const environmentCreatePoller = await getLongRunningPoller(client, environmentCreateResponse); - const environmentCreateResult = await environmentCreatePoller.pollUntilDone(); - console.log( - `Provisioned environment with state ${environmentCreateResult.body.provisioningState}.` - ); - - // Tear down the environment when finished - const environmentDeleteResponse = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName - ) - .delete(); - if (isUnexpected(environmentDeleteResponse)) { - throw new Error(environmentDeleteResponse.body.error.message); - } - - const environmentDeletePoller = await getLongRunningPoller(client, environmentDeleteResponse); - await environmentDeletePoller.pollUntilDone(); - - console.log("Cleaned up environment successfully."); -} - -createEnvironment(); diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/tsconfig.json b/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/tsconfig.json deleted file mode 100644 index 984eed535aa8..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1-beta/typescript/tsconfig.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "compilerOptions": { - "target": "ES2020", - "module": "commonjs", - "moduleResolution": "node", - "resolveJsonModule": true, - "esModuleInterop": true, - "allowSyntheticDefaultImports": true, - "strict": true, - "alwaysStrict": true, - "outDir": "dist", - "rootDir": "src" - }, - "include": [ - "src/**/*.ts" - ] -} diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/README.md b/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/README.md deleted file mode 100644 index a81e315c3d05..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/README.md +++ /dev/null @@ -1,61 +0,0 @@ ---- -page_type: sample -languages: - - javascript -products: - - azure -urlFragment: developer-devcenter-javascript ---- - -# Azure DevCenter client library samples for JavaScript - -These sample programs show how to use the JavaScript client libraries for Azure DevCenter in some common scenarios. - -| **File Name** | **Description** | -| ----------------------------------------------------- | ------------------------------------------------------------------------- | -| [sampleCreateDevBox.js][samplecreatedevbox] | Demonstrates creating, accessing, and deleting a Dev Box | -| [sampleCreateEnvironment.js][samplecreateenvironment] | Demonstrates creating, fetching outputs from, and deleting an Environment | - -## Prerequisites - -The sample programs are compatible with [LTS versions of Node.js](https://github.com/nodejs/release#release-schedule). - -You need [an Azure subscription][freesub] to run these sample programs. - -Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function. - -Adapting the samples to run in the browser may require some additional consideration. For details, please see the [package README][package]. - -## Setup - -To run the samples using the published version of the package: - -1. Install the dependencies using `npm`: - -```bash -npm install -``` - -2. Edit the file `sample.env`, adding the correct credentials to access the Azure service and run the samples. Then rename the file from `sample.env` to just `.env`. The sample programs will read this file automatically. - -3. Run whichever samples you like (note that some samples may require additional setup, see the table above): - -```bash -node sampleCreateDevBox.js -``` - -Alternatively, run a single sample with the correct environment variables set (setting up the `.env` file is not required if you do this), for example (cross-platform): - -```bash -npx cross-env DEVCENTER_ENDPOINT="" node sampleCreateDevBox.js -``` - -## Next Steps - -Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. - -[samplecreatedevbox]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/sampleCreateDevBox.js -[samplecreateenvironment]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/sampleCreateEnvironment.js -[apiref]: https://docs.microsoft.com/javascript/api/@azure-rest/developer-devcenter -[freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/devcenter/developer-devcenter-rest/README.md diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/package.json b/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/package.json deleted file mode 100644 index ea9a1aaa93f9..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/package.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "name": "@azure-samples/developer-devcenter-js", - "private": true, - "version": "1.0.0", - "description": "Azure DevCenter client library samples for JavaScript", - "engines": { - "node": ">=18.0.0" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/Azure/azure-sdk-for-js.git", - "directory": "sdk/devcenter/developer-devcenter-rest" - }, - "keywords": [ - "node", - "azure", - "cloud", - "typescript", - "browser", - "isomorphic" - ], - "author": "Microsoft Corporation", - "license": "MIT", - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/devcenter/developer-devcenter-rest", - "dependencies": { - "@azure-rest/developer-devcenter": "latest", - "dotenv": "latest", - "@azure/identity": "^4.2.1" - } -} diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/sample.env b/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/sample.env deleted file mode 100644 index 8aac9140677e..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/sample.env +++ /dev/null @@ -1 +0,0 @@ -DEVCENTER_ENDPOINT= \ No newline at end of file diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/sampleCreateDevBox.js b/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/sampleCreateDevBox.js deleted file mode 100644 index a1e3c3865f79..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/sampleCreateDevBox.js +++ /dev/null @@ -1,95 +0,0 @@ -const { DefaultAzureCredential } = require("@azure/identity"); -const { isUnexpected, getLongRunningPoller } = require("@azure-rest/developer-devcenter"); -const createClient = require("@azure-rest/developer-devcenter").default; -require("dotenv").config(); - -/** - * @summary Demonstrates creating, accessing, and deleting a Dev Box - */ -async function createDevBox() { - // Build client and fetch required parameters - const endpoint = process.env.DEVCENTER_ENDPOINT || ""; - const client = createClient(endpoint, new DefaultAzureCredential()); - - const projectList = await client.path("/projects").get(); - if (isUnexpected(projectList)) { - throw new Error(projectList.body.error); - } - - let project = projectList.body.value[0]; - if (project === undefined || project.name === undefined) { - throw new Error("No projects found."); - } - const projectName = project.name; - - const poolList = await client.path("/projects/{projectName}/pools", projectName).get(); - if (isUnexpected(poolList)) { - throw new Error(poolList.body.error); - } - - let pool = poolList.body.value[0]; - if (pool === undefined || pool.name === undefined) { - throw new Error("No pools found."); - } - - const devBoxCreateParameters = { - contentType: "application/json", - body: { poolName: pool.name }, - }; - - // Provision a dev box - const devBoxCreateResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - "me", - "TestDevBox", - ) - .put(devBoxCreateParameters); - - if (isUnexpected(devBoxCreateResponse)) { - throw new Error(devBoxCreateResponse.body.error.message); - } - - const devBoxCreatePoller = await getLongRunningPoller(client, devBoxCreateResponse); - const devBoxCreateResult = await devBoxCreatePoller.pollUntilDone(); - - console.log(`Provisioned dev box with state ${devBoxCreateResult.body.provisioningState}.`); - - // Get the connection URL to access the machine - const remoteConnectionResult = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/remoteConnection", - projectName, - "me", - "TestDevBox", - ) - .get(); - - if (isUnexpected(remoteConnectionResult)) { - throw new Error(remoteConnectionResult.body.error.message); - } - - console.log(`Connect using remote connection URL ${remoteConnectionResult.body.webUrl}.`); - - // Tear down the machine when finished - const devBoxDeleteResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - "me", - "TestDevBox", - ) - .delete(); - - if (isUnexpected(devBoxDeleteResponse)) { - throw new Error(devBoxDeleteResponse.body.error.message); - } - - const devBoxDeletePoller = await getLongRunningPoller(client, devBoxDeleteResponse); - await devBoxDeletePoller.pollUntilDone(); - - console.log(`Cleaned up dev box successfully.`); -} - -createDevBox(); diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/sampleCreateEnvironment.js b/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/sampleCreateEnvironment.js deleted file mode 100644 index 787da090e943..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1/javascript/sampleCreateEnvironment.js +++ /dev/null @@ -1,110 +0,0 @@ -const { DefaultAzureCredential } = require("@azure/identity"); -const { isUnexpected, getLongRunningPoller } = require("@azure-rest/developer-devcenter"); -const createClient = require("@azure-rest/developer-devcenter").default; -require("dotenv").config(); - -/** - * @summary Demonstrates creating, fetching outputs from, and deleting an Environment - */ -async function createEnvironment() { - // Build client and fetch required parameters - const endpoint = process.env.DEVCENTER_ENDPOINT || ""; - const client = createClient(endpoint, new DefaultAzureCredential()); - - const projectList = await client.path("/projects").get(); - if (isUnexpected(projectList)) { - throw new Error(projectList.body.error.message); - } - - let project = projectList.body.value[0]; - if (project === undefined || project.name === undefined) { - throw new Error("No projects found."); - } - const projectName = project.name; - - const catalogList = await client.path("/projects/{projectName}/catalogs", projectName).get(); - if (isUnexpected(catalogList)) { - throw new Error(catalogList.body.error); - } - - const catalog = catalogList.body.value[0]; - const catalogName = catalog.name; - - const environmentDefinitionsList = await client - .path( - "/projects/{projectName}/catalogs/{catalogName}/environmentDefinitions", - projectName, - catalogName, - ) - .get(); - - if (isUnexpected(environmentDefinitionsList)) { - throw new Error(environmentDefinitionsList.body.error); - } - - const environmentDefinition = environmentDefinitionsList.body.value[0]; - const environmentDefinitionName = environmentDefinition.name; - - const environmentTypeList = await client - .path("/projects/{projectName}/environmentTypes", projectName) - .get(); - if (isUnexpected(environmentTypeList)) { - throw new Error(environmentTypeList.body.error.message); - } - - let environmentType = environmentTypeList.body.value[0]; - if (environmentType === undefined || environmentType.name === undefined) { - throw new Error("No environment types found."); - } - - const environmentsCreateParameters = { - contentType: "application/json", - body: { - environmentDefinitionName: environmentDefinitionName, - environmentType: environmentType.name, - catalogName: catalogName, - }, - }; - - const environmentName = "DevEnvironment"; - const userId = "me"; - - // Provision an environment - const environmentCreateResponse = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName, - ) - .put(environmentsCreateParameters); - if (isUnexpected(environmentCreateResponse)) { - throw new Error(environmentCreateResponse.body.error.message); - } - - const environmentCreatePoller = await getLongRunningPoller(client, environmentCreateResponse); - const environmentCreateResult = await environmentCreatePoller.pollUntilDone(); - console.log( - `Provisioned environment with state ${environmentCreateResult.body.provisioningState}.`, - ); - - // Tear down the environment when finished - const environmentDeleteResponse = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName, - ) - .delete(); - if (isUnexpected(environmentDeleteResponse)) { - throw new Error(environmentDeleteResponse.body.error.message); - } - - const environmentDeletePoller = await getLongRunningPoller(client, environmentDeleteResponse); - await environmentDeletePoller.pollUntilDone(); - - console.log("Cleaned up environment successfully."); -} - -createEnvironment(); diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/README.md b/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/README.md deleted file mode 100644 index b9f152062f3e..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/README.md +++ /dev/null @@ -1,74 +0,0 @@ ---- -page_type: sample -languages: - - typescript -products: - - azure -urlFragment: developer-devcenter-typescript ---- - -# Azure DevCenter client library samples for TypeScript - -These sample programs show how to use the TypeScript client libraries for Azure DevCenter in some common scenarios. - -| **File Name** | **Description** | -| ----------------------------------------------------- | ------------------------------------------------------------------------- | -| [sampleCreateDevBox.ts][samplecreatedevbox] | Demonstrates creating, accessing, and deleting a Dev Box | -| [sampleCreateEnvironment.ts][samplecreateenvironment] | Demonstrates creating, fetching outputs from, and deleting an Environment | - -## Prerequisites - -The sample programs are compatible with [LTS versions of Node.js](https://github.com/nodejs/release#release-schedule). - -Before running the samples in Node, they must be compiled to JavaScript using the TypeScript compiler. For more information on TypeScript, see the [TypeScript documentation][typescript]. Install the TypeScript compiler using: - -```bash -npm install -g typescript -``` - -You need [an Azure subscription][freesub] to run these sample programs. - -Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function. - -Adapting the samples to run in the browser may require some additional consideration. For details, please see the [package README][package]. - -## Setup - -To run the samples using the published version of the package: - -1. Install the dependencies using `npm`: - -```bash -npm install -``` - -2. Compile the samples: - -```bash -npm run build -``` - -3. Edit the file `sample.env`, adding the correct credentials to access the Azure service and run the samples. Then rename the file from `sample.env` to just `.env`. The sample programs will read this file automatically. - -4. Run whichever samples you like (note that some samples may require additional setup, see the table above): - -```bash -node dist/sampleCreateDevBox.js -``` - -Alternatively, run a single sample with the correct environment variables set (setting up the `.env` file is not required if you do this), for example (cross-platform): - -```bash -npx cross-env DEVCENTER_ENDPOINT="" node dist/sampleCreateDevBox.js -``` - -## Next Steps - -Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. - -[samplecreatedevbox]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/src/sampleCreateDevBox.ts -[samplecreateenvironment]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/src/sampleCreateEnvironment.ts -[apiref]: https://docs.microsoft.com/javascript/api/@azure-rest/developer-devcenter -[freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/devcenter/developer-devcenter-rest/README.md -[typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/package.json b/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/package.json deleted file mode 100644 index ce39b126ddbb..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/package.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "name": "@azure-samples/developer-devcenter-ts", - "private": true, - "version": "1.0.0", - "description": "Azure DevCenter client library samples for TypeScript", - "engines": { - "node": ">=18.0.0" - }, - "scripts": { - "build": "tsc", - "prebuild": "rimraf dist/" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/Azure/azure-sdk-for-js.git", - "directory": "sdk/devcenter/developer-devcenter-rest" - }, - "keywords": [ - "node", - "azure", - "cloud", - "typescript", - "browser", - "isomorphic" - ], - "author": "Microsoft Corporation", - "license": "MIT", - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/devcenter/developer-devcenter-rest", - "dependencies": { - "@azure-rest/developer-devcenter": "latest", - "dotenv": "latest", - "@azure/identity": "^4.2.1" - }, - "devDependencies": { - "@types/node": "^18.0.0", - "typescript": "~5.6.2", - "rimraf": "latest" - } -} diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/sample.env b/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/sample.env deleted file mode 100644 index 8aac9140677e..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/sample.env +++ /dev/null @@ -1 +0,0 @@ -DEVCENTER_ENDPOINT= \ No newline at end of file diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/src/sampleCreateDevBox.ts b/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/src/sampleCreateDevBox.ts deleted file mode 100644 index 312d1298a134..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/src/sampleCreateDevBox.ts +++ /dev/null @@ -1,102 +0,0 @@ -import { DefaultAzureCredential } from "@azure/identity"; -import { - ProjectOutput, - isUnexpected, - PoolOutput, - CreateDevBoxParameters, - getLongRunningPoller, -} from "@azure-rest/developer-devcenter"; -import createClient from "@azure-rest/developer-devcenter"; -import * as dotenv from "dotenv"; -dotenv.config(); - -/** - * @summary Demonstrates creating, accessing, and deleting a Dev Box - */ -async function createDevBox() { - // Build client and fetch required parameters - const endpoint = process.env.DEVCENTER_ENDPOINT || ""; - const client = createClient(endpoint, new DefaultAzureCredential()); - - const projectList = await client.path("/projects").get(); - if (isUnexpected(projectList)) { - throw new Error(projectList.body.error); - } - - let project: ProjectOutput = projectList.body.value[0]; - if (project === undefined || project.name === undefined) { - throw new Error("No projects found."); - } - const projectName: string = project.name; - - const poolList = await client.path("/projects/{projectName}/pools", projectName).get(); - if (isUnexpected(poolList)) { - throw new Error(poolList.body.error); - } - - let pool: PoolOutput = poolList.body.value[0]; - if (pool === undefined || pool.name === undefined) { - throw new Error("No pools found."); - } - - const devBoxCreateParameters: CreateDevBoxParameters = { - contentType: "application/json", - body: { poolName: pool.name }, - }; - - // Provision a dev box - const devBoxCreateResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - "me", - "TestDevBox" - ) - .put(devBoxCreateParameters); - - if (isUnexpected(devBoxCreateResponse)) { - throw new Error(devBoxCreateResponse.body.error.message); - } - - const devBoxCreatePoller = await getLongRunningPoller(client, devBoxCreateResponse); - const devBoxCreateResult = await devBoxCreatePoller.pollUntilDone(); - - console.log(`Provisioned dev box with state ${devBoxCreateResult.body.provisioningState}.`); - - // Get the connection URL to access the machine - const remoteConnectionResult = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/remoteConnection", - projectName, - "me", - "TestDevBox" - ) - .get(); - - if (isUnexpected(remoteConnectionResult)) { - throw new Error(remoteConnectionResult.body.error.message); - } - - console.log(`Connect using remote connection URL ${remoteConnectionResult.body.webUrl}.`); - - // Tear down the machine when finished - const devBoxDeleteResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - "me", - "TestDevBox" - ) - .delete(); - - if (isUnexpected(devBoxDeleteResponse)) { - throw new Error(devBoxDeleteResponse.body.error.message); - } - - const devBoxDeletePoller = await getLongRunningPoller(client, devBoxDeleteResponse); - await devBoxDeletePoller.pollUntilDone(); - - console.log(`Cleaned up dev box successfully.`); -} - -createDevBox(); diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/src/sampleCreateEnvironment.ts b/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/src/sampleCreateEnvironment.ts deleted file mode 100644 index f9e02cb55c1b..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/src/sampleCreateEnvironment.ts +++ /dev/null @@ -1,119 +0,0 @@ -import { DefaultAzureCredential } from "@azure/identity"; -import { - ProjectOutput, - isUnexpected, - CatalogOutput, - EnvironmentTypeOutput, - EnvironmentDefinitionOutput, - CreateOrUpdateEnvironmentParameters, - getLongRunningPoller, -} from "@azure-rest/developer-devcenter"; -import createClient from "@azure-rest/developer-devcenter"; -import * as dotenv from "dotenv"; -dotenv.config(); - -/** - * @summary Demonstrates creating, fetching outputs from, and deleting an Environment - */ -async function createEnvironment() { - // Build client and fetch required parameters - const endpoint = process.env.DEVCENTER_ENDPOINT || ""; - const client = createClient(endpoint, new DefaultAzureCredential()); - - const projectList = await client.path("/projects").get(); - if (isUnexpected(projectList)) { - throw new Error(projectList.body.error.message); - } - - let project: ProjectOutput = projectList.body.value[0]; - if (project === undefined || project.name === undefined) { - throw new Error("No projects found."); - } - const projectName: string = project.name; - - const catalogList = await client.path("/projects/{projectName}/catalogs", projectName).get(); - if (isUnexpected(catalogList)) { - throw new Error(catalogList.body.error); - } - - const catalog: CatalogOutput = catalogList.body.value[0]; - const catalogName: string = catalog.name; - - const environmentDefinitionsList = await client - .path( - "/projects/{projectName}/catalogs/{catalogName}/environmentDefinitions", - projectName, - catalogName - ) - .get(); - - if (isUnexpected(environmentDefinitionsList)) { - throw new Error(environmentDefinitionsList.body.error); - } - - const environmentDefinition: EnvironmentDefinitionOutput = environmentDefinitionsList.body.value[0]; - const environmentDefinitionName: string = environmentDefinition.name; - - const environmentTypeList = await client - .path("/projects/{projectName}/environmentTypes", projectName) - .get(); - if (isUnexpected(environmentTypeList)) { - throw new Error(environmentTypeList.body.error.message); - } - - let environmentType: EnvironmentTypeOutput = environmentTypeList.body.value[0]; - if (environmentType === undefined || environmentType.name === undefined) { - throw new Error("No environment types found."); - } - - const environmentsCreateParameters: CreateOrUpdateEnvironmentParameters = { - contentType: "application/json", - body: { - environmentDefinitionName: environmentDefinitionName, - environmentType: environmentType.name, - catalogName: catalogName, - }, - }; - - const environmentName = "DevEnvironment"; - const userId = "me"; - - // Provision an environment - const environmentCreateResponse = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName - ) - .put(environmentsCreateParameters); - if (isUnexpected(environmentCreateResponse)) { - throw new Error(environmentCreateResponse.body.error.message); - } - - const environmentCreatePoller = await getLongRunningPoller(client, environmentCreateResponse); - const environmentCreateResult = await environmentCreatePoller.pollUntilDone(); - console.log( - `Provisioned environment with state ${environmentCreateResult.body.provisioningState}.` - ); - - // Tear down the environment when finished - const environmentDeleteResponse = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName - ) - .delete(); - if (isUnexpected(environmentDeleteResponse)) { - throw new Error(environmentDeleteResponse.body.error.message); - } - - const environmentDeletePoller = await getLongRunningPoller(client, environmentDeleteResponse); - await environmentDeletePoller.pollUntilDone(); - - console.log("Cleaned up environment successfully."); -} - -createEnvironment(); diff --git a/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/tsconfig.json b/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/tsconfig.json deleted file mode 100644 index 984eed535aa8..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/samples/v1/typescript/tsconfig.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "compilerOptions": { - "target": "ES2020", - "module": "commonjs", - "moduleResolution": "node", - "resolveJsonModule": true, - "esModuleInterop": true, - "allowSyntheticDefaultImports": true, - "strict": true, - "alwaysStrict": true, - "outDir": "dist", - "rootDir": "src" - }, - "include": [ - "src/**/*.ts" - ] -} diff --git a/sdk/devcenter/developer-devcenter-rest/src/azureDeveloperDevCenter.ts b/sdk/devcenter/developer-devcenter-rest/src/azureDeveloperDevCenter.ts index 1d5f41d2b4b7..667807221ec1 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/azureDeveloperDevCenter.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/azureDeveloperDevCenter.ts @@ -6,6 +6,12 @@ import { logger } from "./logger.js"; import { TokenCredential } from "@azure/core-auth"; import { AzureDeveloperDevCenterClient } from "./clientDefinitions.js"; +/** The optional parameters for the client */ +export interface AzureDeveloperDevCenterClientOptions extends ClientOptions { + /** The api version option of the client */ + apiVersion?: string; +} + /** * Initialize a new instance of `AzureDeveloperDevCenterClient` * @param endpointParam - The DevCenter-specific URI to operate on. @@ -15,10 +21,12 @@ import { AzureDeveloperDevCenterClient } from "./clientDefinitions.js"; export default function createClient( endpointParam: string, credentials: TokenCredential, - options: ClientOptions = {}, + { + apiVersion = "2023-04-01", + ...options + }: AzureDeveloperDevCenterClientOptions = {}, ): AzureDeveloperDevCenterClient { const endpointUrl = options.endpoint ?? options.baseUrl ?? `${endpointParam}`; - options.apiVersion = options.apiVersion ?? "2023-04-01"; const userAgentInfo = `azsdk-js-developer-devcenter-rest/1.0.0`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix @@ -33,11 +41,33 @@ export default function createClient( logger: options.loggingOptions?.logger ?? logger.info, }, credentials: { - scopes: options.credentials?.scopes ?? ["https://devcenter.azure.com/.default"], + scopes: options.credentials?.scopes ?? [ + "https://devcenter.azure.com/.default", + ], }, }; + const client = getClient( + endpointUrl, + credentials, + options, + ) as AzureDeveloperDevCenterClient; - const client = getClient(endpointUrl, credentials, options) as AzureDeveloperDevCenterClient; + client.pipeline.removePolicy({ name: "ApiVersionPolicy" }); + client.pipeline.addPolicy({ + name: "ClientApiVersionPolicy", + sendRequest: (req, next) => { + // Use the apiVersion defined in request url directly + // Append one if there is no apiVersion and we have one at client options + const url = new URL(req.url); + if (!url.searchParams.get("api-version") && apiVersion) { + req.url = `${req.url}${ + Array.from(url.searchParams.keys()).length > 0 ? "&" : "?" + }api-version=${apiVersion}`; + } + + return next(req); + }, + }); return client; } diff --git a/sdk/devcenter/developer-devcenter-rest/src/clientDefinitions.ts b/sdk/devcenter/developer-devcenter-rest/src/clientDefinitions.ts index fac949c46fab..1afd601a797e 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/clientDefinitions.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/clientDefinitions.ts @@ -125,7 +125,9 @@ export interface GetProject { export interface Get { /** Get the status of an operation. */ - get(options?: GetParameters): StreamableMethod; + get( + options?: GetParameters, + ): StreamableMethod; } export interface ListPools { @@ -137,60 +139,78 @@ export interface ListPools { export interface GetPool { /** Gets a pool. */ - get(options?: GetPoolParameters): StreamableMethod; + get( + options?: GetPoolParameters, + ): StreamableMethod; } export interface ListAllDevBoxes { /** Lists Dev Boxes that the caller has access to in the DevCenter. */ get( options?: ListAllDevBoxesParameters, - ): StreamableMethod; + ): StreamableMethod< + ListAllDevBoxes200Response | ListAllDevBoxesDefaultResponse + >; } export interface ListAllDevBoxesByUser { /** Lists Dev Boxes in the Dev Center for a particular user. */ get( options?: ListAllDevBoxesByUserParameters, - ): StreamableMethod; + ): StreamableMethod< + ListAllDevBoxesByUser200Response | ListAllDevBoxesByUserDefaultResponse + >; } export interface ListSchedulesByPool { /** Lists all schedules within a pool that are configured by your project administrator. */ get( options?: ListSchedulesByPoolParameters, - ): StreamableMethod; + ): StreamableMethod< + ListSchedulesByPool200Response | ListSchedulesByPoolDefaultResponse + >; } export interface GetScheduleByPool { /** Gets a schedule. */ get( options?: GetScheduleByPoolParameters, - ): StreamableMethod; + ): StreamableMethod< + GetScheduleByPool200Response | GetScheduleByPoolDefaultResponse + >; } export interface ListDevBoxesByUser { /** Lists Dev Boxes in the project for a particular user. */ get( options?: ListDevBoxesByUserParameters, - ): StreamableMethod; + ): StreamableMethod< + ListDevBoxesByUser200Response | ListDevBoxesByUserDefaultResponse + >; } export interface GetDevBoxByUser { /** Gets a Dev Box. */ get( options?: GetDevBoxByUserParameters, - ): StreamableMethod; + ): StreamableMethod< + GetDevBoxByUser200Response | GetDevBoxByUserDefaultResponse + >; /** Creates or replaces a Dev Box. */ put( options: CreateDevBoxParameters, ): StreamableMethod< - CreateDevBox200Response | CreateDevBox201Response | CreateDevBoxDefaultResponse + | CreateDevBox200Response + | CreateDevBox201Response + | CreateDevBoxDefaultResponse >; /** Deletes a Dev Box. */ delete( options?: DeleteDevBoxParameters, ): StreamableMethod< - DeleteDevBox202Response | DeleteDevBox204Response | DeleteDevBoxDefaultResponse + | DeleteDevBox202Response + | DeleteDevBox204Response + | DeleteDevBoxDefaultResponse >; } @@ -219,7 +239,9 @@ export interface GetRemoteConnection { /** Gets RDP Connection info. */ get( options?: GetRemoteConnectionParameters, - ): StreamableMethod; + ): StreamableMethod< + GetRemoteConnection200Response | GetRemoteConnectionDefaultResponse + >; } export interface ListActions { @@ -261,32 +283,41 @@ export interface ListEnvironments { /** Lists the environments for a project. */ get( options?: ListEnvironmentsParameters, - ): StreamableMethod; + ): StreamableMethod< + ListEnvironments200Response | ListEnvironmentsDefaultResponse + >; } export interface ListEnvironmentsByUser { /** Lists the environments for a project and user. */ get( options?: ListEnvironmentsByUserParameters, - ): StreamableMethod; + ): StreamableMethod< + ListEnvironmentsByUser200Response | ListEnvironmentsByUserDefaultResponse + >; } export interface GetEnvironmentByUser { /** Gets an environment. */ get( options?: GetEnvironmentByUserParameters, - ): StreamableMethod; + ): StreamableMethod< + GetEnvironmentByUser200Response | GetEnvironmentByUserDefaultResponse + >; /** Creates or updates an environment. */ put( options: CreateOrReplaceEnvironmentParameters, ): StreamableMethod< - CreateOrReplaceEnvironment201Response | CreateOrReplaceEnvironmentDefaultResponse + | CreateOrReplaceEnvironment201Response + | CreateOrReplaceEnvironmentDefaultResponse >; /** Deletes an environment and all its associated resources */ delete( options?: DeleteEnvironmentParameters, ): StreamableMethod< - DeleteEnvironment202Response | DeleteEnvironment204Response | DeleteEnvironmentDefaultResponse + | DeleteEnvironment202Response + | DeleteEnvironment204Response + | DeleteEnvironmentDefaultResponse >; } @@ -294,7 +325,9 @@ export interface ListCatalogsByProject { /** Lists all of the catalogs available for a project. */ get( options?: ListCatalogsByProjectParameters, - ): StreamableMethod; + ): StreamableMethod< + ListCatalogsByProject200Response | ListCatalogsByProjectDefaultResponse + >; } export interface GetCatalog { @@ -329,7 +362,8 @@ export interface GetEnvironmentDefinition { get( options?: GetEnvironmentDefinitionParameters, ): StreamableMethod< - GetEnvironmentDefinition200Response | GetEnvironmentDefinitionDefaultResponse + | GetEnvironmentDefinition200Response + | GetEnvironmentDefinitionDefaultResponse >; } @@ -337,7 +371,9 @@ export interface ListEnvironmentTypes { /** Lists all environment types configured for a project. */ get( options?: ListEnvironmentTypesParameters, - ): StreamableMethod; + ): StreamableMethod< + ListEnvironmentTypes200Response | ListEnvironmentTypesDefaultResponse + >; } export interface Routes { @@ -456,7 +492,10 @@ export interface Routes { devBoxName: string, ): DelayActions; /** Resource for '/projects/\{projectName\}/environments' has methods for the following verbs: get */ - (path: "/projects/{projectName}/environments", projectName: string): ListEnvironments; + ( + path: "/projects/{projectName}/environments", + projectName: string, + ): ListEnvironments; /** Resource for '/projects/\{projectName\}/users/\{userId\}/environments' has methods for the following verbs: get */ ( path: "/projects/{projectName}/users/{userId}/environments", @@ -471,7 +510,10 @@ export interface Routes { environmentName: string, ): GetEnvironmentByUser; /** Resource for '/projects/\{projectName\}/catalogs' has methods for the following verbs: get */ - (path: "/projects/{projectName}/catalogs", projectName: string): ListCatalogsByProject; + ( + path: "/projects/{projectName}/catalogs", + projectName: string, + ): ListCatalogsByProject; /** Resource for '/projects/\{projectName\}/catalogs/\{catalogName\}' has methods for the following verbs: get */ ( path: "/projects/{projectName}/catalogs/{catalogName}", @@ -497,7 +539,10 @@ export interface Routes { definitionName: string, ): GetEnvironmentDefinition; /** Resource for '/projects/\{projectName\}/environmentTypes' has methods for the following verbs: get */ - (path: "/projects/{projectName}/environmentTypes", projectName: string): ListEnvironmentTypes; + ( + path: "/projects/{projectName}/environmentTypes", + projectName: string, + ): ListEnvironmentTypes; } export type AzureDeveloperDevCenterClient = Client & { diff --git a/sdk/devcenter/developer-devcenter-rest/src/isUnexpected.ts b/sdk/devcenter/developer-devcenter-rest/src/isUnexpected.ts index 9930a5fd8e3c..f9aca62117b0 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/isUnexpected.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/isUnexpected.ts @@ -89,39 +89,71 @@ const responseMap: Record = { "GET /devboxes": ["200"], "GET /users/{userId}/devboxes": ["200"], "GET /projects/{projectName}/pools/{poolName}/schedules": ["200"], - "GET /projects/{projectName}/pools/{poolName}/schedules/{scheduleName}": ["200"], + "GET /projects/{projectName}/pools/{poolName}/schedules/{scheduleName}": [ + "200", + ], "GET /projects/{projectName}/users/{userId}/devboxes": ["200"], "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}": ["200"], - "PUT /projects/{projectName}/users/{userId}/devboxes/{devBoxName}": ["200", "201"], - "DELETE /projects/{projectName}/users/{userId}/devboxes/{devBoxName}": ["202", "204"], - "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}:start": ["200", "202"], - "POST /projects/{projectName}/users/{userId}/devboxes/{devBoxName}:start": ["202"], - "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}:stop": ["200", "202"], - "POST /projects/{projectName}/users/{userId}/devboxes/{devBoxName}:stop": ["202"], - "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}:restart": ["200", "202"], - "POST /projects/{projectName}/users/{userId}/devboxes/{devBoxName}:restart": ["202"], - "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}/remoteConnection": ["200"], - "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions": ["200"], - "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions/{actionName}": ["200"], - "POST /projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions/{actionName}:skip": [ + "PUT /projects/{projectName}/users/{userId}/devboxes/{devBoxName}": [ + "200", + "201", + ], + "DELETE /projects/{projectName}/users/{userId}/devboxes/{devBoxName}": [ + "202", "204", ], - "POST /projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions/{actionName}:delay": [ + "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}:start": [ + "200", + "202", + ], + "POST /projects/{projectName}/users/{userId}/devboxes/{devBoxName}:start": [ + "202", + ], + "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}:stop": [ + "200", + "202", + ], + "POST /projects/{projectName}/users/{userId}/devboxes/{devBoxName}:stop": [ + "202", + ], + "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}:restart": [ "200", + "202", ], - "POST /projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions:delay": ["200"], + "POST /projects/{projectName}/users/{userId}/devboxes/{devBoxName}:restart": [ + "202", + ], + "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}/remoteConnection": + ["200"], + "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions": [ + "200", + ], + "GET /projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions/{actionName}": + ["200"], + "POST /projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions/{actionName}:skip": + ["204"], + "POST /projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions/{actionName}:delay": + ["200"], + "POST /projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions:delay": + ["200"], "GET /projects/{projectName}/environments": ["200"], "GET /projects/{projectName}/users/{userId}/environments": ["200"], - "GET /projects/{projectName}/users/{userId}/environments/{environmentName}": ["200"], - "PUT /projects/{projectName}/users/{userId}/environments/{environmentName}": ["201"], - "DELETE /projects/{projectName}/users/{userId}/environments/{environmentName}": ["202", "204"], + "GET /projects/{projectName}/users/{userId}/environments/{environmentName}": [ + "200", + ], + "PUT /projects/{projectName}/users/{userId}/environments/{environmentName}": [ + "201", + ], + "DELETE /projects/{projectName}/users/{userId}/environments/{environmentName}": + ["202", "204"], "GET /projects/{projectName}/catalogs": ["200"], "GET /projects/{projectName}/catalogs/{catalogName}": ["200"], "GET /projects/{projectName}/environmentDefinitions": ["200"], - "GET /projects/{projectName}/catalogs/{catalogName}/environmentDefinitions": ["200"], - "GET /projects/{projectName}/catalogs/{catalogName}/environmentDefinitions/{definitionName}": [ + "GET /projects/{projectName}/catalogs/{catalogName}/environmentDefinitions": [ "200", ], + "GET /projects/{projectName}/catalogs/{catalogName}/environmentDefinitions/{definitionName}": + ["200"], "GET /projects/{projectName}/environmentTypes": ["200"], }; @@ -144,7 +176,9 @@ export function isUnexpected( response: ListAllDevBoxes200Response | ListAllDevBoxesDefaultResponse, ): response is ListAllDevBoxesDefaultResponse; export function isUnexpected( - response: ListAllDevBoxesByUser200Response | ListAllDevBoxesByUserDefaultResponse, + response: + | ListAllDevBoxesByUser200Response + | ListAllDevBoxesByUserDefaultResponse, ): response is ListAllDevBoxesByUserDefaultResponse; export function isUnexpected( response: ListSchedulesByPool200Response | ListSchedulesByPoolDefaultResponse, @@ -173,13 +207,22 @@ export function isUnexpected( | DeleteDevBoxDefaultResponse, ): response is DeleteDevBoxDefaultResponse; export function isUnexpected( - response: StartDevBox202Response | StartDevBoxLogicalResponse | StartDevBoxDefaultResponse, + response: + | StartDevBox202Response + | StartDevBoxLogicalResponse + | StartDevBoxDefaultResponse, ): response is StartDevBoxDefaultResponse; export function isUnexpected( - response: StopDevBox202Response | StopDevBoxLogicalResponse | StopDevBoxDefaultResponse, + response: + | StopDevBox202Response + | StopDevBoxLogicalResponse + | StopDevBoxDefaultResponse, ): response is StopDevBoxDefaultResponse; export function isUnexpected( - response: RestartDevBox202Response | RestartDevBoxLogicalResponse | RestartDevBoxDefaultResponse, + response: + | RestartDevBox202Response + | RestartDevBoxLogicalResponse + | RestartDevBoxDefaultResponse, ): response is RestartDevBoxDefaultResponse; export function isUnexpected( response: GetRemoteConnection200Response | GetRemoteConnectionDefaultResponse, @@ -203,10 +246,14 @@ export function isUnexpected( response: ListEnvironments200Response | ListEnvironmentsDefaultResponse, ): response is ListEnvironmentsDefaultResponse; export function isUnexpected( - response: ListEnvironmentsByUser200Response | ListEnvironmentsByUserDefaultResponse, + response: + | ListEnvironmentsByUser200Response + | ListEnvironmentsByUserDefaultResponse, ): response is ListEnvironmentsByUserDefaultResponse; export function isUnexpected( - response: GetEnvironmentByUser200Response | GetEnvironmentByUserDefaultResponse, + response: + | GetEnvironmentByUser200Response + | GetEnvironmentByUserDefaultResponse, ): response is GetEnvironmentByUserDefaultResponse; export function isUnexpected( response: @@ -222,7 +269,9 @@ export function isUnexpected( | DeleteEnvironmentDefaultResponse, ): response is DeleteEnvironmentDefaultResponse; export function isUnexpected( - response: ListCatalogsByProject200Response | ListCatalogsByProjectDefaultResponse, + response: + | ListCatalogsByProject200Response + | ListCatalogsByProjectDefaultResponse, ): response is ListCatalogsByProjectDefaultResponse; export function isUnexpected( response: GetCatalog200Response | GetCatalogDefaultResponse, @@ -238,10 +287,14 @@ export function isUnexpected( | ListEnvironmentDefinitionsByCatalogDefaultResponse, ): response is ListEnvironmentDefinitionsByCatalogDefaultResponse; export function isUnexpected( - response: GetEnvironmentDefinition200Response | GetEnvironmentDefinitionDefaultResponse, + response: + | GetEnvironmentDefinition200Response + | GetEnvironmentDefinitionDefaultResponse, ): response is GetEnvironmentDefinitionDefaultResponse; export function isUnexpected( - response: ListEnvironmentTypes200Response | ListEnvironmentTypesDefaultResponse, + response: + | ListEnvironmentTypes200Response + | ListEnvironmentTypesDefaultResponse, ): response is ListEnvironmentTypesDefaultResponse; export function isUnexpected( response: @@ -387,17 +440,24 @@ function getParametrizedPathSuccess(method: string, path: string): string[] { // track if we have found a match to return the values found. let found = true; - for (let i = candidateParts.length - 1, j = pathParts.length - 1; i >= 1 && j >= 1; i--, j--) { - if (candidateParts[i]?.startsWith("{") && candidateParts[i]?.indexOf("}") !== -1) { + for ( + let i = candidateParts.length - 1, j = pathParts.length - 1; + i >= 1 && j >= 1; + i--, j-- + ) { + if ( + candidateParts[i]?.startsWith("{") && + candidateParts[i]?.indexOf("}") !== -1 + ) { const start = candidateParts[i]!.indexOf("}") + 1, end = candidateParts[i]?.length; // If the current part of the candidate is a "template" part // Try to use the suffix of pattern to match the path // {guid} ==> $ // {guid}:export ==> :export$ - const isMatched = new RegExp(`${candidateParts[i]?.slice(start, end)}`).test( - pathParts[j] || "", - ); + const isMatched = new RegExp( + `${candidateParts[i]?.slice(start, end)}`, + ).test(pathParts[j] || ""); if (!isMatched) { found = false; diff --git a/sdk/devcenter/developer-devcenter-rest/src/models.ts b/sdk/devcenter/developer-devcenter-rest/src/models.ts index 5cc3f6631828..6ec8cb1b34d2 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/models.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/models.ts @@ -20,7 +20,11 @@ export interface ImageReference {} export interface DevBox { /** The name of the Dev Box pool this machine belongs to. */ poolName: string; - /** Indicates whether the owner of the Dev Box is a local administrator. */ + /** + * Indicates whether the owner of the Dev Box is a local administrator. + * + * Possible values: "Enabled", "Disabled" + */ localAdministrator?: LocalAdminStatus; } @@ -37,72 +41,16 @@ export interface Environment { } /** Alias for OsType */ -export type OsType = "Windows" | string; +export type OsType = string; /** Alias for SkuName */ -export type SkuName = - | "general_i_8c32gb256ssd_v2" - | "general_i_8c32gb512ssd_v2" - | "general_i_8c32gb1024ssd_v2" - | "general_i_8c32gb2048ssd_v2" - | "general_i_16c64gb256ssd_v2" - | "general_i_16c64gb512ssd_v2" - | "general_i_16c64gb1024ssd_v2" - | "general_i_16c64gb2048ssd_v2" - | "general_i_32c128gb512ssd_v2" - | "general_i_32c128gb1024ssd_v2" - | "general_i_32c128gb2048ssd_v2" - | "general_a_8c32gb256ssd_v2" - | "general_a_8c32gb512ssd_v2" - | "general_a_8c32gb1024ssd_v2" - | "general_a_8c32gb2048ssd_v2" - | "general_a_16c64gb256ssd_v2" - | "general_a_16c64gb512ssd_v2" - | "general_a_16c64gb1024ssd_v2" - | "general_a_16c64gb2048ssd_v2" - | "general_a_32c128gb512ssd_v2" - | "general_a_32c128gb1024ssd_v2" - | "general_a_32c128gb2048ssd_v2" - | string; +export type SkuName = string; /** Alias for HibernateSupport */ -export type HibernateSupport = "Enabled" | "Disabled" | "OsUnsupported" | string; +export type HibernateSupport = string; /** Alias for LocalAdminStatus */ -export type LocalAdminStatus = "Enabled" | "Disabled" | string; +export type LocalAdminStatus = string; /** Alias for DevBoxProvisioningState */ -export type DevBoxProvisioningState = - | "Succeeded" - | "Failed" - | "Canceled" - | "Creating" - | "Deleting" - | "Updating" - | "Starting" - | "Stopping" - | "Provisioning" - | "ProvisionedWithWarning" - | "InGracePeriod" - | "NotProvisioned" - | string; +export type DevBoxProvisioningState = string; /** Alias for PowerState */ -export type PowerState = - | "Unknown" - | "Running" - | "Deallocated" - | "PoweredOff" - | "Hibernated" - | string; +export type PowerState = string; /** Alias for EnvironmentProvisioningState */ -export type EnvironmentProvisioningState = - | "Succeeded" - | "Failed" - | "Canceled" - | "Creating" - | "Accepted" - | "Deleting" - | "Updating" - | "Preparing" - | "Running" - | "Syncing" - | "MovingResources" - | "TransientFailure" - | "StorageProvisioningFailed" - | string; +export type EnvironmentProvisioningState = string; diff --git a/sdk/devcenter/developer-devcenter-rest/src/outputModels.ts b/sdk/devcenter/developer-devcenter-rest/src/outputModels.ts index dd6cb01925a9..dbb34c4319e5 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/outputModels.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/outputModels.ts @@ -23,13 +23,17 @@ export interface OperationStatusOutput { readonly id: string; /** The operation id name. */ readonly name: string; - /** Provisioning state of the resource. */ + /** + * Provisioning state of the resource. + * + * Possible values: "NotStarted", "Running", "Succeeded", "Failed", "Canceled" + */ status: OperationStateOutput; /** The id of the resource. */ resourceId?: string; - /** The start time of the operation. */ + /** The start time of the operation, in RFC3339 format. */ startTime?: string; - /** The end time of the operation. */ + /** The end time of the operation, in RFC3339 format. */ endTime?: string; /** Percent of the operation that is complete. */ percentComplete?: number; @@ -45,11 +49,19 @@ export interface PoolOutput { readonly name: string; /** Azure region where Dev Boxes in the pool are located. */ location: string; - /** The operating system type of Dev Boxes in this pool. */ + /** + * The operating system type of Dev Boxes in this pool. + * + * Possible values: "Windows" + */ osType?: OsTypeOutput; /** Hardware settings for the Dev Boxes created in this pool. */ hardwareProfile?: HardwareProfileOutput; - /** Indicates whether hibernate is enabled/disabled or unknown. */ + /** + * Indicates whether hibernate is enabled/disabled or unknown. + * + * Possible values: "Enabled", "Disabled", "OsUnsupported" + */ hibernateSupport?: HibernateSupportOutput; /** Storage settings for Dev Box created in this pool. */ storageProfile?: StorageProfileOutput; @@ -58,6 +70,8 @@ export interface PoolOutput { /** * Indicates whether owners of Dev Boxes in this pool are local administrators on * the Dev Boxes. + * + * Possible values: "Enabled", "Disabled" */ localAdministrator?: LocalAdminStatusOutput; /** Stop on disconnect configuration settings for Dev Boxes created in this pool. */ @@ -65,13 +79,19 @@ export interface PoolOutput { /** * Overall health status of the Pool. Indicates whether or not the Pool is * available to create Dev Boxes. + * + * Possible values: "Unknown", "Pending", "Healthy", "Warning", "Unhealthy" */ healthStatus: PoolHealthStatusOutput; } /** Hardware specifications for the Dev Box. */ export interface HardwareProfileOutput { - /** The name of the SKU. */ + /** + * The name of the SKU. + * + * Possible values: "general_i_8c32gb256ssd_v2", "general_i_8c32gb512ssd_v2", "general_i_8c32gb1024ssd_v2", "general_i_8c32gb2048ssd_v2", "general_i_16c64gb256ssd_v2", "general_i_16c64gb512ssd_v2", "general_i_16c64gb1024ssd_v2", "general_i_16c64gb2048ssd_v2", "general_i_32c128gb512ssd_v2", "general_i_32c128gb1024ssd_v2", "general_i_32c128gb2048ssd_v2", "general_a_8c32gb256ssd_v2", "general_a_8c32gb512ssd_v2", "general_a_8c32gb1024ssd_v2", "general_a_8c32gb2048ssd_v2", "general_a_16c64gb256ssd_v2", "general_a_16c64gb512ssd_v2", "general_a_16c64gb1024ssd_v2", "general_a_16c64gb2048ssd_v2", "general_a_32c128gb512ssd_v2", "general_a_32c128gb1024ssd_v2", "general_a_32c128gb2048ssd_v2" + */ readonly skuName?: SkuNameOutput; /** The number of vCPUs available for the Dev Box. */ readonly vCPUs?: number; @@ -101,7 +121,7 @@ export interface ImageReferenceOutput { readonly operatingSystem?: string; /** The operating system build number of the image. */ readonly osBuildNumber?: string; - /** The datetime that the backing image version was published. */ + /** The datetime that the backing image version was published, in RFC3339 format. */ readonly publishedDate?: string; } @@ -110,6 +130,8 @@ export interface StopOnDisconnectConfigurationOutput { /** * Indicates whether the feature to stop the devbox on disconnect once the grace * period has lapsed is enabled. + * + * Possible values: "Enabled", "Disabled" */ status: StopOnDisconnectEnableStatusOutput; /** @@ -127,16 +149,28 @@ export interface DevBoxOutput { readonly projectName?: string; /** The name of the Dev Box pool this machine belongs to. */ poolName: string; - /** Indicates whether hibernate is enabled/disabled or unknown. */ + /** + * Indicates whether hibernate is enabled/disabled or unknown. + * + * Possible values: "Enabled", "Disabled", "OsUnsupported" + */ readonly hibernateSupport?: HibernateSupportOutput; - /** The current provisioning state of the Dev Box. */ + /** + * The current provisioning state of the Dev Box. + * + * Possible values: "Succeeded", "Failed", "Canceled", "Creating", "Deleting", "Updating", "Starting", "Stopping", "Provisioning", "ProvisionedWithWarning", "InGracePeriod", "NotProvisioned" + */ readonly provisioningState?: DevBoxProvisioningStateOutput; /** * The current action state of the Dev Box. This is state is based on previous * action performed by user. */ readonly actionState?: string; - /** The current power state of the Dev Box. */ + /** + * The current power state of the Dev Box. + * + * Possible values: "Unknown", "Running", "Deallocated", "PoweredOff", "Hibernated" + */ readonly powerState?: PowerStateOutput; /** * A unique identifier for the Dev Box. This is a GUID-formatted string (e.g. @@ -150,7 +184,11 @@ export interface DevBoxOutput { * Virtual Network it is attached to. */ readonly location?: string; - /** The operating system type of this Dev Box. */ + /** + * The operating system type of this Dev Box. + * + * Possible values: "Windows" + */ readonly osType?: OsTypeOutput; /** The AAD object id of the user this Dev Box is assigned to. */ readonly user?: string; @@ -160,9 +198,13 @@ export interface DevBoxOutput { readonly storageProfile?: StorageProfileOutput; /** Information about the image used for this Dev Box. */ readonly imageReference?: ImageReferenceOutput; - /** Creation time of this Dev Box. */ + /** Creation time of this Dev Box, in RFC3339 format. */ readonly createdTime?: string; - /** Indicates whether the owner of the Dev Box is a local administrator. */ + /** + * Indicates whether the owner of the Dev Box is a local administrator. + * + * Possible values: "Enabled", "Disabled" + */ localAdministrator?: LocalAdminStatusOutput; } @@ -170,9 +212,17 @@ export interface DevBoxOutput { export interface ScheduleOutput { /** Display name for the Schedule. */ readonly name: string; - /** Supported type this scheduled task represents. */ + /** + * Supported type this scheduled task represents. + * + * Possible values: "StopDevBox" + */ type: ScheduledTypeOutput; - /** The frequency of this scheduled task. */ + /** + * The frequency of this scheduled task. + * + * Possible values: "Daily" + */ frequency: ScheduledFrequencyOutput; /** The target time to trigger the action. The format is HH:MM. */ time: string; @@ -192,11 +242,15 @@ export interface RemoteConnectionOutput { export interface DevBoxActionOutput { /** The name of the action. */ readonly name: string; - /** The action that will be taken. */ + /** + * The action that will be taken. + * + * Possible values: "Stop" + */ actionType: DevBoxActionTypeOutput; /** The id of the resource which triggered this action. */ sourceId: string; - /** The earliest time that the action could occur (UTC). */ + /** The earliest time that the action could occur (UTC), in RFC3339 format. */ suspendedUntil?: string; /** Details about the next run of this action. */ next?: DevBoxNextActionOutput; @@ -204,7 +258,7 @@ export interface DevBoxActionOutput { /** Details about the next run of an action. */ export interface DevBoxNextActionOutput { - /** The time the action will be triggered (UTC). */ + /** The time the action will be triggered (UTC), in RFC3339 format. */ scheduledTime: string; } @@ -212,7 +266,11 @@ export interface DevBoxNextActionOutput { export interface DevBoxActionDelayResultOutput { /** The name of the action. */ name: string; - /** The result of the delay operation on this action. */ + /** + * The result of the delay operation on this action. + * + * Possible values: "Succeeded", "Failed" + */ result: DevBoxActionDelayResultStatusOutput; /** The delayed action. */ action?: DevBoxActionOutput; @@ -230,7 +288,11 @@ export interface EnvironmentOutput { environmentType: string; /** The AAD object id of the owner of this Environment. */ readonly user?: string; - /** The provisioning state of the environment. */ + /** + * The provisioning state of the environment. + * + * Possible values: "Succeeded", "Failed", "Canceled", "Creating", "Accepted", "Deleting", "Updating", "Preparing", "Running", "Syncing", "MovingResources", "TransientFailure", "StorageProvisioningFailed" + */ readonly provisioningState?: EnvironmentProvisioningStateOutput; /** The identifier of the resource group containing the environment's resources. */ readonly resourceGroupId?: string; @@ -279,6 +341,8 @@ export interface EnvironmentDefinitionParameterOutput { /** * A string of one of the basic JSON types (number, integer, array, object, * boolean, string). + * + * Possible values: "array", "boolean", "integer", "number", "object", "string" */ type: ParameterTypeOutput; /** @@ -302,128 +366,65 @@ export interface EnvironmentTypeOutput { * or management group. */ deploymentTargetId: string; - /** Indicates whether this environment type is enabled for use in this project. */ + /** + * Indicates whether this environment type is enabled for use in this project. + * + * Possible values: "Enabled", "Disabled" + */ status: EnvironmentTypeEnableStatusOutput; } /** Paged collection of Project items */ export type PagedProjectOutput = Paged; -/** Enum describing allowed operation states. */ -export type OperationStateOutput = "NotStarted" | "Running" | "Succeeded" | "Failed" | "Canceled"; +/** Alias for OperationStateOutput */ +export type OperationStateOutput = string; /** Paged collection of Pool items */ export type PagedPoolOutput = Paged; /** Alias for OsTypeOutput */ -export type OsTypeOutput = "Windows" | string; +export type OsTypeOutput = string; /** Alias for SkuNameOutput */ -export type SkuNameOutput = - | "general_i_8c32gb256ssd_v2" - | "general_i_8c32gb512ssd_v2" - | "general_i_8c32gb1024ssd_v2" - | "general_i_8c32gb2048ssd_v2" - | "general_i_16c64gb256ssd_v2" - | "general_i_16c64gb512ssd_v2" - | "general_i_16c64gb1024ssd_v2" - | "general_i_16c64gb2048ssd_v2" - | "general_i_32c128gb512ssd_v2" - | "general_i_32c128gb1024ssd_v2" - | "general_i_32c128gb2048ssd_v2" - | "general_a_8c32gb256ssd_v2" - | "general_a_8c32gb512ssd_v2" - | "general_a_8c32gb1024ssd_v2" - | "general_a_8c32gb2048ssd_v2" - | "general_a_16c64gb256ssd_v2" - | "general_a_16c64gb512ssd_v2" - | "general_a_16c64gb1024ssd_v2" - | "general_a_16c64gb2048ssd_v2" - | "general_a_32c128gb512ssd_v2" - | "general_a_32c128gb1024ssd_v2" - | "general_a_32c128gb2048ssd_v2" - | string; +export type SkuNameOutput = string; /** Alias for HibernateSupportOutput */ -export type HibernateSupportOutput = "Enabled" | "Disabled" | "OsUnsupported" | string; +export type HibernateSupportOutput = string; /** Alias for LocalAdminStatusOutput */ -export type LocalAdminStatusOutput = "Enabled" | "Disabled" | string; +export type LocalAdminStatusOutput = string; /** Alias for StopOnDisconnectEnableStatusOutput */ -export type StopOnDisconnectEnableStatusOutput = "Enabled" | "Disabled" | string; +export type StopOnDisconnectEnableStatusOutput = string; /** Alias for PoolHealthStatusOutput */ -export type PoolHealthStatusOutput = - | "Unknown" - | "Pending" - | "Healthy" - | "Warning" - | "Unhealthy" - | string; +export type PoolHealthStatusOutput = string; /** Paged collection of DevBox items */ export type PagedDevBoxOutput = Paged; /** Alias for DevBoxProvisioningStateOutput */ -export type DevBoxProvisioningStateOutput = - | "Succeeded" - | "Failed" - | "Canceled" - | "Creating" - | "Deleting" - | "Updating" - | "Starting" - | "Stopping" - | "Provisioning" - | "ProvisionedWithWarning" - | "InGracePeriod" - | "NotProvisioned" - | string; +export type DevBoxProvisioningStateOutput = string; /** Alias for PowerStateOutput */ -export type PowerStateOutput = - | "Unknown" - | "Running" - | "Deallocated" - | "PoweredOff" - | "Hibernated" - | string; +export type PowerStateOutput = string; /** Paged collection of Schedule items */ export type PagedScheduleOutput = Paged; /** Alias for ScheduledTypeOutput */ -export type ScheduledTypeOutput = "StopDevBox" | string; +export type ScheduledTypeOutput = string; /** Alias for ScheduledFrequencyOutput */ -export type ScheduledFrequencyOutput = "Daily" | string; +export type ScheduledFrequencyOutput = string; /** Paged collection of DevBoxAction items */ export type PagedDevBoxActionOutput = Paged; /** Alias for DevBoxActionTypeOutput */ -export type DevBoxActionTypeOutput = "Stop" | string; +export type DevBoxActionTypeOutput = string; /** Paged collection of DevBoxActionDelayResult items */ -export type PagedDevBoxActionDelayResultOutput = Paged; +export type PagedDevBoxActionDelayResultOutput = + Paged; /** Alias for DevBoxActionDelayResultStatusOutput */ -export type DevBoxActionDelayResultStatusOutput = "Succeeded" | "Failed" | string; +export type DevBoxActionDelayResultStatusOutput = string; /** Paged collection of Environment items */ export type PagedEnvironmentOutput = Paged; /** Alias for EnvironmentProvisioningStateOutput */ -export type EnvironmentProvisioningStateOutput = - | "Succeeded" - | "Failed" - | "Canceled" - | "Creating" - | "Accepted" - | "Deleting" - | "Updating" - | "Preparing" - | "Running" - | "Syncing" - | "MovingResources" - | "TransientFailure" - | "StorageProvisioningFailed" - | string; +export type EnvironmentProvisioningStateOutput = string; /** Paged collection of Catalog items */ export type PagedCatalogOutput = Paged; /** Paged collection of EnvironmentDefinition items */ -export type PagedEnvironmentDefinitionOutput = Paged; +export type PagedEnvironmentDefinitionOutput = + Paged; /** Alias for ParameterTypeOutput */ -export type ParameterTypeOutput = - | "array" - | "boolean" - | "integer" - | "number" - | "object" - | "string" - | string; +export type ParameterTypeOutput = string; /** Paged collection of EnvironmentType items */ export type PagedEnvironmentTypeOutput = Paged; /** Alias for EnvironmentTypeEnableStatusOutput */ -export type EnvironmentTypeEnableStatusOutput = "Enabled" | "Disabled" | string; +export type EnvironmentTypeEnableStatusOutput = string; diff --git a/sdk/devcenter/developer-devcenter-rest/src/paginateHelper.ts b/sdk/devcenter/developer-devcenter-rest/src/paginateHelper.ts index e27846d32a90..94d5220235d9 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/paginateHelper.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/paginateHelper.ts @@ -1,8 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import { + getPagedAsyncIterator, + PagedAsyncIterableIterator, + PagedResult, +} from "@azure/core-paging"; +import { + Client, + createRestError, + PathUncheckedResponse, +} from "@azure-rest/core-client"; /** * Helper type to extract the type of an array @@ -67,7 +75,9 @@ export function paginate( typeof customGetPage === "function" ? customGetPage : async (pageLink: string) => { - const result = firstRun ? initialResponse : await client.pathUnchecked(pageLink).get(); + const result = firstRun + ? initialResponse + : await client.pathUnchecked(pageLink).get(); firstRun = false; checkPagingRequest(result); const nextLink = getNextLink(result.body, nextLinkName); @@ -93,7 +103,9 @@ function getNextLink(body: unknown, nextLinkName?: string): string | undefined { const nextLink = (body as Record)[nextLinkName]; if (typeof nextLink !== "string" && typeof nextLink !== "undefined") { - throw new Error(`Body Property ${nextLinkName} should be a string or undefined`); + throw new Error( + `Body Property ${nextLinkName} should be a string or undefined`, + ); } return nextLink; @@ -121,7 +133,18 @@ function getElements(body: unknown, itemName: string): T[] { * Checks if a request failed */ function checkPagingRequest(response: PathUncheckedResponse): void { - const Http2xxStatusCodes = ["200", "201", "202", "203", "204", "205", "206", "207", "208", "226"]; + const Http2xxStatusCodes = [ + "200", + "201", + "202", + "203", + "204", + "205", + "206", + "207", + "208", + "226", + ]; if (!Http2xxStatusCodes.includes(response.status)) { throw createRestError( `Pagination failed with unexpected statusCode ${response.status}`, diff --git a/sdk/devcenter/developer-devcenter-rest/src/parameters.ts b/sdk/devcenter/developer-devcenter-rest/src/parameters.ts index 06be85e5a51e..385dfcd38ac4 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/parameters.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/parameters.ts @@ -42,7 +42,7 @@ export type GetActionParameters = RequestParameters; export type SkipActionParameters = RequestParameters; export interface DelayActionQueryParamProperties { - /** The time to delay the Dev Box action or actions until. */ + /** The time to delay the Dev Box action or actions until, in RFC3339 format. */ until: Date | string; } @@ -53,7 +53,7 @@ export interface DelayActionQueryParam { export type DelayActionParameters = DelayActionQueryParam & RequestParameters; export interface DelayActionsQueryParamProperties { - /** The time to delay the Dev Box action or actions until. */ + /** The time to delay the Dev Box action or actions until, in RFC3339 format. */ until: Date | string; } @@ -71,8 +71,8 @@ export interface CreateOrReplaceEnvironmentBodyParam { body: Environment; } -export type CreateOrReplaceEnvironmentParameters = CreateOrReplaceEnvironmentBodyParam & - RequestParameters; +export type CreateOrReplaceEnvironmentParameters = + CreateOrReplaceEnvironmentBodyParam & RequestParameters; export type DeleteEnvironmentParameters = RequestParameters; export type ListCatalogsByProjectParameters = RequestParameters; export type GetCatalogParameters = RequestParameters; diff --git a/sdk/devcenter/developer-devcenter-rest/src/pollingHelper.ts b/sdk/devcenter/developer-devcenter-rest/src/pollingHelper.ts index 56eafc377726..bb11acbf13f6 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/pollingHelper.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/pollingHelper.ts @@ -41,7 +41,10 @@ import { /** * A simple poller that can be used to poll a long running operation. */ -export interface SimplePollerLike, TResult> { +export interface SimplePollerLike< + TState extends OperationState, + TResult, +> { /** * Returns true if the poller has finished polling. */ @@ -65,7 +68,9 @@ export interface SimplePollerLike, TResul /** * Returns a promise that will resolve once the underlying operation is completed. */ - pollUntilDone(pollOptions?: { abortSignal?: AbortSignalLike }): Promise; + pollUntilDone(pollOptions?: { + abortSignal?: AbortSignalLike; + }): Promise; /** * Invokes the provided callback after each polling is completed, * sending the current state of the poller's operation. @@ -115,14 +120,20 @@ export async function getLongRunningPoller< TResult extends CreateDevBoxLogicalResponse | CreateDevBoxDefaultResponse, >( client: Client, - initialResponse: CreateDevBox200Response | CreateDevBox201Response | CreateDevBoxDefaultResponse, + initialResponse: + | CreateDevBox200Response + | CreateDevBox201Response + | CreateDevBoxDefaultResponse, options?: CreateHttpPollerOptions>, ): Promise, TResult>>; export async function getLongRunningPoller< TResult extends DeleteDevBoxLogicalResponse | DeleteDevBoxDefaultResponse, >( client: Client, - initialResponse: DeleteDevBox202Response | DeleteDevBox204Response | DeleteDevBoxDefaultResponse, + initialResponse: + | DeleteDevBox202Response + | DeleteDevBox204Response + | DeleteDevBoxDefaultResponse, options?: CreateHttpPollerOptions>, ): Promise, TResult>>; export async function getLongRunningPoller< @@ -158,7 +169,9 @@ export async function getLongRunningPoller< options?: CreateHttpPollerOptions>, ): Promise, TResult>>; export async function getLongRunningPoller< - TResult extends DeleteEnvironmentLogicalResponse | DeleteEnvironmentDefaultResponse, + TResult extends + | DeleteEnvironmentLogicalResponse + | DeleteEnvironmentDefaultResponse, >( client: Client, initialResponse: @@ -180,7 +193,10 @@ export async function getLongRunningPoller( // response we were provided. return getLroResponse(initialResponse); }, - sendPollRequest: async (path: string, pollOptions?: { abortSignal?: AbortSignalLike }) => { + sendPollRequest: async ( + path: string, + pollOptions?: { abortSignal?: AbortSignalLike }, + ) => { // This is the callback that is going to be called to poll the service // to get the latest status. We use the client provided and the polling path // which is an opaque URL provided by caller, the service sends this in one of the following headers: operation-location, azure-asyncoperation or location @@ -206,7 +222,8 @@ export async function getLongRunningPoller( inputAbortSignal?.removeEventListener("abort", abortListener); } const lroResponse = getLroResponse(response as TResult); - lroResponse.rawResponse.headers["x-ms-original-url"] = initialResponse.request.url; + lroResponse.rawResponse.headers["x-ms-original-url"] = + initialResponse.request.url; return lroResponse; }, }; @@ -262,7 +279,9 @@ function getLroResponse( response: TResult, ): OperationResponse { if (Number.isNaN(response.status)) { - throw new TypeError(`Status code of the response is not a number. Value: ${response.status}`); + throw new TypeError( + `Status code of the response is not a number. Value: ${response.status}`, + ); } return { diff --git a/sdk/devcenter/developer-devcenter-rest/src/responses.ts b/sdk/devcenter/developer-devcenter-rest/src/responses.ts index 23422f15adbd..24f84bbac18f 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/responses.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/responses.ts @@ -537,14 +537,16 @@ export interface CreateOrReplaceEnvironmentDefaultHeaders { "x-ms-error-code"?: string; } -export interface CreateOrReplaceEnvironmentDefaultResponse extends HttpResponse { +export interface CreateOrReplaceEnvironmentDefaultResponse + extends HttpResponse { status: string; body: ErrorResponse; headers: RawHttpHeaders & CreateOrReplaceEnvironmentDefaultHeaders; } /** The final response for long-running createOrReplaceEnvironment operation */ -export interface CreateOrReplaceEnvironmentLogicalResponse extends HttpResponse { +export interface CreateOrReplaceEnvironmentLogicalResponse + extends HttpResponse { status: "200"; body: EnvironmentOutput; } @@ -618,7 +620,8 @@ export interface GetCatalogDefaultResponse extends HttpResponse { } /** The request has succeeded. */ -export interface ListEnvironmentDefinitionsByProject200Response extends HttpResponse { +export interface ListEnvironmentDefinitionsByProject200Response + extends HttpResponse { status: "200"; body: PagedEnvironmentDefinitionOutput; } @@ -628,14 +631,16 @@ export interface ListEnvironmentDefinitionsByProjectDefaultHeaders { "x-ms-error-code"?: string; } -export interface ListEnvironmentDefinitionsByProjectDefaultResponse extends HttpResponse { +export interface ListEnvironmentDefinitionsByProjectDefaultResponse + extends HttpResponse { status: string; body: ErrorResponse; headers: RawHttpHeaders & ListEnvironmentDefinitionsByProjectDefaultHeaders; } /** The request has succeeded. */ -export interface ListEnvironmentDefinitionsByCatalog200Response extends HttpResponse { +export interface ListEnvironmentDefinitionsByCatalog200Response + extends HttpResponse { status: "200"; body: PagedEnvironmentDefinitionOutput; } @@ -645,7 +650,8 @@ export interface ListEnvironmentDefinitionsByCatalogDefaultHeaders { "x-ms-error-code"?: string; } -export interface ListEnvironmentDefinitionsByCatalogDefaultResponse extends HttpResponse { +export interface ListEnvironmentDefinitionsByCatalogDefaultResponse + extends HttpResponse { status: string; body: ErrorResponse; headers: RawHttpHeaders & ListEnvironmentDefinitionsByCatalogDefaultHeaders; diff --git a/sdk/devcenter/developer-devcenter-rest/test/public/devBoxesTest.spec.ts b/sdk/devcenter/developer-devcenter-rest/test/public/devBoxesTest.spec.ts deleted file mode 100644 index d1b6be7c42a9..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/test/public/devBoxesTest.spec.ts +++ /dev/null @@ -1,507 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { env, isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; -import { createRecordedClient, createRecorder } from "./utils/recordedClient.js"; -import { describe, it, beforeEach, afterEach, expect, assert } from "vitest"; -import { - AzureDeveloperDevCenterClient, - getLongRunningPoller, - isUnexpected, - PoolOutput, - paginate, - DevBoxOutput, - DevBoxActionOutput, - ScheduleOutput, - DelayActionsParameters, - DevBoxActionDelayResultOutput, - CreateDevBoxParameters, -} from "../../src/index.js"; - -const testPollingOptions = { - intervalInMs: isPlaybackMode() ? 0 : undefined, -}; - -describe("DevCenter Dev Boxes Operations Test", () => { - let recorder: Recorder; - let client: AzureDeveloperDevCenterClient; - - let endpoint: string; - let projectName: string; - let userId: string; - let poolName: string; - let devboxName: string; - - beforeEach(async function (context) { - recorder = await createRecorder(context); - - endpoint = env["ENDPOINT"] || ""; - projectName = env["DEFAULT_PROJECT_NAME"] || ""; - userId = env["DEFAULT_USER_NAME"] || ""; - poolName = env["DEFAULT_POOL_NAME"] || ""; - devboxName = env["DEFAULT_DEVBOX_NAME"] || ""; - - client = createRecordedClient(recorder, endpoint, { - allowInsecureConnection: false, - }); - }); - - afterEach(async function () { - await recorder.stop(); - }); - - it("GetPool", async function () { - const poolOutput = await client - .path("/projects/{projectName}/pools/{poolName}", projectName, poolName) - .get(); - - if (isUnexpected(poolOutput)) { - throw poolOutput.body.error; - } - - expect(poolOutput.body.name).to.equal(poolName); - }); - - it("GetPools", async function () { - const poolsList = await client.path("/projects/{projectName}/pools", projectName).get(); - - if (isUnexpected(poolsList)) { - throw poolsList.body.error; - } - - const pools: PoolOutput[] = []; - console.log("Iterating through pool results:"); - - for await (const pool of paginate(client, poolsList)) { - const { name } = pool; - console.log(`Received pool "${name}"`); - pools.push(pool); - } - - expect(pools.length).to.equal(1); - expect(pools[0].name).to.equal(poolName); - }); - - it("GetSchedule", async function () { - const scheduleOutput = await client - .path( - "/projects/{projectName}/pools/{poolName}/schedules/{scheduleName}", - projectName, - poolName, - "default", - ) - .get(); - - if (isUnexpected(scheduleOutput)) { - throw scheduleOutput.body.error; - } - - expect(scheduleOutput.body.name).to.equal("default"); - }); - - it("GetSchedules", async function () { - const schedulesListResponse = await client - .path("/projects/{projectName}/pools/{poolName}/schedules", projectName, poolName) - .get(); - - if (isUnexpected(schedulesListResponse)) { - throw schedulesListResponse.body.error; - } - - const schedules: ScheduleOutput[] = []; - console.log("Iterating through schedules results:"); - - for await (const schedule of paginate(client, schedulesListResponse)) { - const { name } = schedule; - console.log(`Received schedule "${name}"`); - schedules.push(schedule); - } - - expect(schedules.length).to.equal(1); - expect(schedules[0].name).to.equal("default"); - }); - - it("GetDevBox", async function () { - await setupDevBox(); - const devboxOutput = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - userId, - devboxName, - ) - .get(); - - if (isUnexpected(devboxOutput)) { - throw devboxOutput.body.error; - } - - expect(devboxOutput.body.name).to.equal(devboxName); - }); - - it("GetRemoteConnection", async function () { - await setupDevBox(); - const remoteConnectionResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/remoteConnection", - projectName, - userId, - devboxName, - ) - .get(); - - if (isUnexpected(remoteConnectionResponse)) { - throw remoteConnectionResponse.body.error; - } - - assert.isTrue(stringIsAValidUrl(remoteConnectionResponse.body.rdpConnectionUrl as string)); - }); - - it("GetAllDevBoxes", async function () { - await setupDevBox(); - const devboxesListResponse = await client.path("/devboxes").get(); - - if (isUnexpected(devboxesListResponse)) { - throw devboxesListResponse.body.error; - } - - const devBoxes: DevBoxOutput[] = []; - console.log("Iterating through dev boxes results:"); - - for await (const devBox of paginate(client, devboxesListResponse)) { - const { name } = devBox; - console.log(`Received DevBox "${name}"`); - devBoxes.push(devBox); - } - - expect(devBoxes.length).to.equal(1); - expect(devBoxes[0].name).to.equal(devboxName); - }); - - it("GetAllDevBoxesByUser", async function () { - await setupDevBox(); - const devboxesListResponse = await client.path("/users/{userId}/devboxes", userId).get(); - - if (isUnexpected(devboxesListResponse)) { - throw devboxesListResponse.body.error; - } - - const devBoxes: DevBoxOutput[] = []; - console.log("Iterating through dev boxes results:"); - - for await (const devBox of paginate(client, devboxesListResponse)) { - const { name } = devBox; - console.log(`Received DevBox "${name}"`); - devBoxes.push(devBox); - } - - expect(devBoxes.length).to.equal(1); - expect(devBoxes[0].name).to.equal(devboxName); - }); - - it("GetDevBoxes", async function () { - await setupDevBox(); - const devboxesListResponse = await client - .path("/projects/{projectName}/users/{userId}/devboxes", projectName, userId) - .get(); - - if (isUnexpected(devboxesListResponse)) { - throw devboxesListResponse.body.error; - } - - const devBoxes: DevBoxOutput[] = []; - console.log("Iterating through dev boxes results:"); - - for await (const devBox of paginate(client, devboxesListResponse)) { - const { name } = devBox; - console.log(`Received DevBox "${name}"`); - devBoxes.push(devBox); - } - - expect(devBoxes.length).to.equal(1); - expect(devBoxes[0].name).to.equal(devboxName); - }); - - it("GetActions", async function () { - await setupDevBox(); - const actionsListResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions", - projectName, - userId, - devboxName, - ) - .get(); - - if (isUnexpected(actionsListResponse)) { - throw actionsListResponse.body.error; - } - - const actions: DevBoxActionOutput[] = []; - console.log("Iterating through dev box actions results:"); - - for await (const action of paginate(client, actionsListResponse)) { - const { name } = action; - console.log(`Received DevBox action"${name}"`); - actions.push(action); - } - - expect(actions.length).to.equal(1); - expect(actions[0].name).to.equal("schedule-default"); - }); - - it("GetAction", async function () { - await setupDevBox(); - const actionResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions/{actionName}", - projectName, - userId, - devboxName, - "schedule-default", - ) - .get(); - - if (isUnexpected(actionResponse)) { - throw actionResponse.body.error; - } - - expect(actionResponse.body.name).to.equal("schedule-default"); - }); - - it("DelayAction", async function () { - await setupDevBox(); - const delayActionParameters: DelayActionsParameters = { - queryParameters: { - until: "2024-07-04T02:10:00Z", - }, - }; - - const delayActionResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions/{actionName}:delay", - projectName, - userId, - devboxName, - "schedule-default", - ) - .post(delayActionParameters); - - assert.equal(delayActionResponse.status, "200", "Delaying DevBox action should return 200 OK."); - }); - - it("DelayAllActions", async function () { - await setupDevBox(); - const delayActionsParameters: DelayActionsParameters = { - queryParameters: { - until: "2024-07-04T02:20:00Z", - }, - }; - - const delayActionsResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions:delay", - projectName, - userId, - devboxName, - ) - .post(delayActionsParameters); - - if (isUnexpected(delayActionsResponse)) { - throw new Error(delayActionsResponse.body?.error.message); - } - - const actionDelayResults: DevBoxActionDelayResultOutput[] = []; - - for await (const actionDelay of paginate(client, delayActionsResponse)) { - actionDelayResults.push(actionDelay); - } - - expect(actionDelayResults.length).to.equal(1); - expect(actionDelayResults[0].result).to.equal("Succeeded"); - }); - - it("SkipAction", async function () { - await setupDevBox(); - const skipActionResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions/{actionName}:skip", - projectName, - userId, - devboxName, - "schedule-default", - ) - .post(); - - assert.equal(skipActionResponse.status, "204"); - }); - - it("StartsStopsAndDeleteDevBox", async function () { - await setupDevBox(); - // Stop an already running Dev Box - const stopDevBoxResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}:stop", - projectName, - userId, - devboxName, - ) - .post(); - - const devBoxStopPoller = await getLongRunningPoller( - client, - stopDevBoxResponse, - testPollingOptions, - ); - const devBoxStopResult = await devBoxStopPoller.pollUntilDone(); - - if (isUnexpected(devBoxStopResult)) { - throw new Error(devBoxStopResult.body?.error.message); - } - - assert.equal( - devBoxStopResult.status, - "200", - "Dev box stop long-running operation should return 200 OK.", - ); - - // Start Dev Box - const startDevBoxResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}:start", - projectName, - userId, - devboxName, - ) - .post(); - - const devBoxStartPoller = await getLongRunningPoller( - client, - startDevBoxResponse, - testPollingOptions, - ); - const devBoxStartResult = await devBoxStartPoller.pollUntilDone(); - - if (isUnexpected(devBoxStartResult)) { - throw new Error(devBoxStartResult.body?.error.message); - } - - assert.equal( - devBoxStartResult.status, - "200", - "Dev box start long-running operation should return 200 OK.", - ); - - await deleteDevBox(); - }); - - async function setupDevBox() { - const devboxesListResponse = await client - .path("/projects/{projectName}/users/{userId}/devboxes", projectName, userId) - .get(); - - if (isUnexpected(devboxesListResponse)) { - throw devboxesListResponse.body.error; - } - - const devBoxes: DevBoxOutput[] = []; - console.log("Iterating through dev boxes results:"); - - for await (const devBox of paginate(client, devboxesListResponse)) { - const { name } = devBox; - console.log(`Received DevBox "${name}"`); - devBoxes.push(devBox); - } - - if (devBoxes.length >= 1) { - return; - } - - const devBoxCreateParameters: CreateDevBoxParameters = { - contentType: "application/json", - body: { poolName: poolName }, - }; - - // Provision a dev box - const devBoxCreateResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - userId, - devboxName, - ) - .put(devBoxCreateParameters); - - if (isUnexpected(devBoxCreateResponse)) { - console.log(`Unexpected ${JSON.stringify(devBoxCreateResponse)}`); - throw devBoxCreateResponse; - } - - assert.equal(devBoxCreateResponse.status, "201", "Dev Box creation should return 201 Created."); - - const devBoxCreatePoller = await getLongRunningPoller( - client, - devBoxCreateResponse, - testPollingOptions, - ); - const devBoxCreateResult = await devBoxCreatePoller.pollUntilDone(); - - if (isUnexpected(devBoxCreateResult)) { - throw devBoxCreateResult; - } - - assert.equal( - devBoxCreateResult.status, - "200", - "Dev box creation long-running operation should return 200 OK.", - ); - - assert.equal(devBoxCreateResult.body.name, devboxName); - console.log(`Provisioned dev box with state ${devBoxCreateResult.body.provisioningState}.`); - } - - async function deleteDevBox() { - const devBoxDeleteResponse = await client - .path( - "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}", - projectName, - "me", - devboxName, - ) - .delete(); - - if (isUnexpected(devBoxDeleteResponse)) { - throw new Error(devBoxDeleteResponse.body?.error.message); - } - - assert.equal(devBoxDeleteResponse.status, "202", "Delete Dev Box should return 202 Accepted."); - - const devBoxDeletePoller = await getLongRunningPoller( - client, - devBoxDeleteResponse, - testPollingOptions, - ); - const devBoxDeleteResult = await devBoxDeletePoller.pollUntilDone(); - - if (isUnexpected(devBoxDeleteResult)) { - throw new Error(devBoxDeleteResult.body?.error.message); - } - - assert.equal( - devBoxDeleteResult.status, - "200", - "Dev box delete long-running operation should return 200 OK.", - ); - - console.log(`Cleaned up dev box successfully.`); - } - - function stringIsAValidUrl(value: string): boolean { - try { - new URL(value); - return true; - } catch (err: any) { - return false; - } - } -}); diff --git a/sdk/devcenter/developer-devcenter-rest/test/public/devCenterTests.spec.ts b/sdk/devcenter/developer-devcenter-rest/test/public/devCenterTests.spec.ts deleted file mode 100644 index af16bda5facf..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/test/public/devCenterTests.spec.ts +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { env, Recorder } from "@azure-tools/test-recorder"; -import { createRecordedClient, createRecorder } from "./utils/recordedClient.js"; -import { describe, it, beforeEach, afterEach, expect } from "vitest"; -import { - AzureDeveloperDevCenterClient, - ProjectOutput, - isUnexpected, - paginate, -} from "../../src/index.js"; - -describe("DevCenter Project Operations Tests", function () { - let recorder: Recorder; - let client: AzureDeveloperDevCenterClient; - let endpoint: string; - - beforeEach(async function (context) { - recorder = await createRecorder(context); - endpoint = env["ENDPOINT"] || ""; - - client = createRecordedClient(recorder, endpoint, { - allowInsecureConnection: false, - }); - }); - - afterEach(async function () { - await recorder.stop(); - }); - - it("Get project in a DevCenter", async function () { - const projectName = env["DEFAULT_PROJECT_NAME"] || ""; - const project = await client.path("/projects/{projectName}", projectName).get(); - - if (isUnexpected(project)) { - throw project.body.error; - } - - expect(project.body.name).to.equal(env["DEFAULT_PROJECT_NAME"]); - }); - - it("List all projects in a DevCenter", async function () { - const projectList = await client.path("/projects").get(); - const projects: ProjectOutput[] = []; - - if (isUnexpected(projectList)) { - throw projectList.body.error; - } - - console.log("Iterating through project results:"); - - for await (const project of paginate(client, projectList)) { - const { name } = project; - console.log(`Received project "${name}"`); - projects.push(project); - } - - expect(projects.length).to.equal(1); - expect(projects[0].name).to.equal(env["DEFAULT_PROJECT_NAME"]); - }); -}); diff --git a/sdk/devcenter/developer-devcenter-rest/test/public/environmentsTest.spec.ts b/sdk/devcenter/developer-devcenter-rest/test/public/environmentsTest.spec.ts deleted file mode 100644 index 126366e6118e..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/test/public/environmentsTest.spec.ts +++ /dev/null @@ -1,318 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { env, isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; -import { createRecordedClient, createRecorder } from "./utils/recordedClient.js"; -import { describe, it, beforeEach, afterEach, expect, assert } from "vitest"; -import { - AzureDeveloperDevCenterClient, - CatalogOutput, - EnvironmentDefinitionOutput, - EnvironmentTypeOutput, - CreateOrReplaceEnvironmentParameters, - isUnexpected, - paginate, - getLongRunningPoller, - EnvironmentOutput, -} from "../../src/index.js"; - -const testPollingOptions = { - intervalInMs: isPlaybackMode() ? 0 : undefined, -}; -describe("DevCenter Environments Operations Test", () => { - let recorder: Recorder; - let client: AzureDeveloperDevCenterClient; - - let endpoint: string; - let projectName: string; - let catalogName: string; - let envDefinitionName: string; - let environmentTypeName: string; - let environmentName: string; - let userId: string; - - beforeEach(async function (context) { - recorder = await createRecorder(context); - - endpoint = env["ENDPOINT"] || ""; - projectName = env["DEFAULT_PROJECT_NAME"] || ""; - catalogName = env["DEFAULT_CATALOG_NAME"] || ""; - envDefinitionName = env["DEFAULT_ENVIRONMENT_DEFINITION_NAME"] || ""; - environmentTypeName = env["DEFAULT_ENVIRONMENT_TYPE_NAME"] || ""; - environmentName = env["DEFAULT_ENVIRONMENT_NAME"] || ""; - userId = env["DEFAULT_USER_NAME"] || ""; - - client = createRecordedClient(recorder, endpoint, { - allowInsecureConnection: false, - }); - }); - - afterEach(async function () { - await recorder.stop(); - }); - - it("Get catalog by project and name", async function () { - const catalog = await client - .path("/projects/{projectName}/catalogs/{catalogName}", projectName, catalogName) - .get(); - - if (isUnexpected(catalog)) { - throw catalog.body.error; - } - - expect(catalog.body.name).to.equal(env["DEFAULT_CATALOG_NAME"]); - }); - - it("List catalogs in a project", async function () { - const catalogList = await client.path("/projects/{projectName}/catalogs", projectName).get(); - - if (isUnexpected(catalogList)) { - throw catalogList.body.error; - } - - const catalogs: CatalogOutput[] = []; - console.log("Iterating through catalog results:"); - - for await (const catalog of paginate(client, catalogList)) { - const { name } = catalog; - console.log(`Received catalog "${name}"`); - catalogs.push(catalog); - } - - expect(catalogs.length).to.equal(1); - expect(catalogs[0].name).to.equal(env["DEFAULT_CATALOG_NAME"]); - }); - - it("Get environment definition by project, catalog, and item name", async function () { - const environmentDefinitionOutput = await client - .path( - "/projects/{projectName}/catalogs/{catalogName}/environmentDefinitions/{definitionName}", - projectName, - catalogName, - envDefinitionName, - ) - .get(); - - if (isUnexpected(environmentDefinitionOutput)) { - throw environmentDefinitionOutput.body.error; - } - - expect(environmentDefinitionOutput.body.name).to.equal(envDefinitionName); - }); - - it("List environment definition by project, catalog", async function () { - const environmentDefinitionsList = await client - .path( - "/projects/{projectName}/catalogs/{catalogName}/environmentDefinitions", - projectName, - catalogName, - ) - .get(); - - if (isUnexpected(environmentDefinitionsList)) { - throw environmentDefinitionsList.body.error; - } - - const environmentDefinitions: EnvironmentDefinitionOutput[] = []; - - for await (const environmentDefinition of paginate(client, environmentDefinitionsList)) { - const { name } = environmentDefinition; - console.log(`Received env definition: "${name}"`); - environmentDefinitions.push(environmentDefinition); - } - - expect(environmentDefinitions.length).to.equal(8); - }); - - it("List environments within a project", async function () { - await createDevelopmentEnvironment(); - - const environmentsList = await client - .path("/projects/{projectName}/environments", projectName) - .get(); - - if (isUnexpected(environmentsList)) { - throw environmentsList.body.error; - } - - const environments: EnvironmentOutput[] = []; - - for await (const environment of paginate(client, environmentsList)) { - const { name } = environment; - console.log(`Received env type: "${name}"`); - environments.push(environment); - } - - expect(environments.length).to.equal(1); - expect(environments[0].name).to.equal(environmentName); - - await deleteDevelopmentEnvironment(); - }); - - it("List environments within a project by userId", async function () { - await createDevelopmentEnvironment(); - - const environmentsList = await client - .path("/projects/{projectName}/users/{userId}/environments", projectName, userId) - .get(); - - if (isUnexpected(environmentsList)) { - throw environmentsList.body.error; - } - - const environments: EnvironmentOutput[] = []; - - for await (const environment of paginate(client, environmentsList)) { - const { name } = environment; - console.log(`Received env type: "${name}"`); - environments.push(environment); - } - - expect(environments.length).to.equal(1); - expect(environments[0].name).to.equal(environmentName); - - await deleteDevelopmentEnvironment(); - }); - - it("Get environment by projectName, userId, and environment name", async function () { - await createDevelopmentEnvironment(); - - const environmentOutput = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName, - ) - .get(); - - if (isUnexpected(environmentOutput)) { - throw environmentOutput.body.error; - } - - expect(environmentOutput.body.name).to.equal(environmentName); - - await deleteDevelopmentEnvironment(); - }); - - it("List environment types by project", async function () { - const environmentTypesList = await client - .path("/projects/{projectName}/environmentTypes", projectName) - .get(); - - if (isUnexpected(environmentTypesList)) { - throw environmentTypesList.body.error; - } - - const environmentTypes: EnvironmentTypeOutput[] = []; - - for await (const environmentDefinitionType of paginate(client, environmentTypesList)) { - const { name } = environmentDefinitionType; - console.log(`Received env type: "${name}"`); - environmentTypes.push(environmentDefinitionType); - } - - expect(environmentTypes.length).to.equal(1); - expect(environmentTypes[0].name).to.equal(environmentTypeName); - }); - - it("Create and then delete deployment environment", async function () { - await createDevelopmentEnvironment(); - await deleteDevelopmentEnvironment(); - }); - - async function createDevelopmentEnvironment(): Promise { - const environmentsCreateParameters: CreateOrReplaceEnvironmentParameters = { - body: { - environmentDefinitionName: envDefinitionName, - environmentType: environmentTypeName, - catalogName: catalogName, - }, - }; - - // Provision an environment - const environmentCreateResponse = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName, - ) - .put(environmentsCreateParameters); - console.log("Sent create"); - - if (isUnexpected(environmentCreateResponse)) { - throw new Error( - `Creation failed with message ${environmentCreateResponse.body?.error.message}`, - ); - } - - assert.equal( - environmentCreateResponse.status, - "201", - "Environment creation should return 201 created.", - ); - - const environmentCreatePoller = await getLongRunningPoller( - client, - environmentCreateResponse, - testPollingOptions, - ); - const environmentCreateResult = await environmentCreatePoller.pollUntilDone(); - - if (isUnexpected(environmentCreateResult)) { - throw new Error( - `Creation failed with message ${environmentCreateResult.body?.error.message}`, - ); - } - - assert.equal( - environmentCreateResult.status, - "200", - "Create environment polling should return 200 OK.", - ); - assert.equal(environmentCreateResult.body.name, environmentName); - assert.equal(environmentCreateResult.body.provisioningState, "Succeeded"); - } - - async function deleteDevelopmentEnvironment(): Promise { - // Tear down the environment when finished - const environmentDeleteResponse = await client - .path( - "/projects/{projectName}/users/{userId}/environments/{environmentName}", - projectName, - userId, - environmentName, - ) - .delete(); - - if (isUnexpected(environmentDeleteResponse)) { - throw new Error(environmentDeleteResponse.body?.error.message); - } - - assert.equal( - environmentDeleteResponse.status, - "202", - "Environment delete should return 202 accepted.", - ); - - const environmentDeletePoller = await getLongRunningPoller( - client, - environmentDeleteResponse, - testPollingOptions, - ); - const environmentDeleteResult = await environmentDeletePoller.pollUntilDone(); - - if (isUnexpected(environmentDeleteResult)) { - throw new Error(environmentDeleteResult.body?.error.message); - } - - assert.equal( - environmentDeleteResult.status, - "200", - "Environment delete long-running operation should return 200 OK.", - ); - - console.log("Cleaned up environment successfully."); - } -}); diff --git a/sdk/devcenter/developer-devcenter-rest/test/public/sampleTest.spec.ts b/sdk/devcenter/developer-devcenter-rest/test/public/sampleTest.spec.ts new file mode 100644 index 000000000000..d4919ac91ac5 --- /dev/null +++ b/sdk/devcenter/developer-devcenter-rest/test/public/sampleTest.spec.ts @@ -0,0 +1,21 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { createRecorder } from "./utils/recordedClient.js"; +import { assert, beforeEach, afterEach, it, describe } from "vitest"; + +describe("My test", () => { + // let recorder: Recorder; + + beforeEach(async function () { + // recorder = await createRecorder(this); + }); + + afterEach(async function () { + // await recorder.stop(); + }); + + it("sample test", async function () { + assert.equal(1, 1); + }); +}); diff --git a/sdk/devcenter/developer-devcenter-rest/test/public/utils/env.browser.ts b/sdk/devcenter/developer-devcenter-rest/test/public/utils/env.browser.ts deleted file mode 100644 index fc36ab244fad..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/test/public/utils/env.browser.ts +++ /dev/null @@ -1,2 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. diff --git a/sdk/devcenter/developer-devcenter-rest/test/public/utils/env.ts b/sdk/devcenter/developer-devcenter-rest/test/public/utils/env.ts deleted file mode 100644 index 866412f4082d..000000000000 --- a/sdk/devcenter/developer-devcenter-rest/test/public/utils/env.ts +++ /dev/null @@ -1,6 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import * as dotenv from "dotenv"; - -dotenv.config(); diff --git a/sdk/devcenter/developer-devcenter-rest/test/public/utils/recordedClient.ts b/sdk/devcenter/developer-devcenter-rest/test/public/utils/recordedClient.ts index 4af8bcf47a7d..6e425fdcfdf9 100644 --- a/sdk/devcenter/developer-devcenter-rest/test/public/utils/recordedClient.ts +++ b/sdk/devcenter/developer-devcenter-rest/test/public/utils/recordedClient.ts @@ -1,34 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { type TaskContext } from "vitest"; -import { isPlaybackMode, Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; -import "./env"; -import { AzureDeveloperDevCenterClient } from "../../../src/clientDefinitions.js"; -import { ClientOptions } from "@azure-rest/core-client"; -import { AzurePowerShellCredential } from "@azure/identity"; -import createClient from "../../../src/index.js"; -import { createTestCredential } from "@azure-tools/test-credential"; +import { + Recorder, + RecorderStartOptions, + VitestTestContext, +} from "@azure-tools/test-recorder"; -const envSetupForPlayback: Record = { - ENDPOINT: "https://endpoint", - DEFAULT_PROJECT_NAME: "project", - DEFAULT_POOL_NAME: "pool", - DEFAULT_DEVBOX_NAME: "devbox", - DEFAULT_USER_NAME: "me", - DEFAULT_CATALOG_NAME: "catalog", - DEFAULT_ENVIRONMENT_TYPE_NAME: "env_type", - DEFAULT_ENVIRONMENT_DEFINITION_NAME: "env_definition", - DEFAULT_ENVIRONMENT_NAME: "environment", +const replaceableVariables: Record = { + SUBSCRIPTION_ID: "azure_subscription_id", }; const recorderEnvSetup: RecorderStartOptions = { - envSetupForPlayback: envSetupForPlayback, - // https://github.com/Azure/azure-sdk-tools/blob/main/tools/test-proxy/Azure.Sdk.Tools.TestProxy/Common/SanitizerDictionary.cs - removeCentralSanitizers: [ - "AZSDK3493", // .name in the body is not a secret and is listed below in the beforeEach section - "AZSDK2030", - ], + envSetupForPlayback: replaceableVariables, }; /** @@ -36,18 +20,10 @@ const recorderEnvSetup: RecorderStartOptions = { * Should be called first in the test suite to make sure environment variables are * read before they are being used. */ -export async function createRecorder(context: TaskContext | undefined): Promise { +export async function createRecorder( + context: VitestTestContext, +): Promise { const recorder = new Recorder(context); await recorder.start(recorderEnvSetup); return recorder; } - -export function createRecordedClient( - recorder: Recorder, - endpoint: string, - options: ClientOptions = {}, -): AzureDeveloperDevCenterClient { - // We need to use a user-persona, so the clientSecretCredential that createTestCredential uses in live/record modes is not sufficient - const credential = isPlaybackMode() ? createTestCredential() : new AzurePowerShellCredential(); - return createClient(endpoint, credential, recorder.configureClientOptions(options)); -} diff --git a/sdk/devcenter/developer-devcenter-rest/tsconfig.json b/sdk/devcenter/developer-devcenter-rest/tsconfig.json index a10f22a54c88..a6575847a41e 100644 --- a/sdk/devcenter/developer-devcenter-rest/tsconfig.json +++ b/sdk/devcenter/developer-devcenter-rest/tsconfig.json @@ -3,7 +3,14 @@ "compilerOptions": { "module": "NodeNext", "moduleResolution": "NodeNext", - "rootDir": "." + "rootDir": ".", + "skipLibCheck": true }, - "include": ["./src/**/*.ts", "./src/**/*.mts", "./src/**/*.cts", "test/**/*.ts", "./test/**/*.ts"] -} + "include": [ + "./src/**/*.ts", + "./src/**/*.mts", + "./src/**/*.cts", + "test/**/*.ts", + "./test/**/*.ts" + ] +} \ No newline at end of file diff --git a/sdk/devcenter/developer-devcenter-rest/tsp-location.yaml b/sdk/devcenter/developer-devcenter-rest/tsp-location.yaml index 51144d95c5c6..741f9897632f 100644 --- a/sdk/devcenter/developer-devcenter-rest/tsp-location.yaml +++ b/sdk/devcenter/developer-devcenter-rest/tsp-location.yaml @@ -1,3 +1,4 @@ directory: specification/devcenter/DevCenter -commit: 3dbffd014194b1985f6498b259fe8d91461c898c -repo: Azure/azure-rest-api-specs \ No newline at end of file +commit: 8efaa61aa60b750f83b68893abb0481c9dbf5c13 +repo: /mnt/vss/_work/1/s/azure-rest-api-specs +additionalDirectories: diff --git a/sdk/devcenter/developer-devcenter-rest/vitest.browser.config.ts b/sdk/devcenter/developer-devcenter-rest/vitest.browser.config.ts index 3be6992329dc..5e0dc418cfa2 100644 --- a/sdk/devcenter/developer-devcenter-rest/vitest.browser.config.ts +++ b/sdk/devcenter/developer-devcenter-rest/vitest.browser.config.ts @@ -2,6 +2,9 @@ // Licensed under the MIT License. import { defineConfig } from "vitest/config"; +import { relativeRecordingsPath } from "@azure-tools/test-recorder"; + +process.env.RECORDINGS_RELATIVE_PATH = relativeRecordingsPath(); export default defineConfig({ define: { @@ -29,5 +32,6 @@ export default defineConfig({ reporter: ["text", "json", "html"], reportsDirectory: "coverage-browser", }, + testTimeout: 1200000, }, }); diff --git a/sdk/devcenter/developer-devcenter-rest/vitest.config.ts b/sdk/devcenter/developer-devcenter-rest/vitest.config.ts index 907f05f0224f..f8ab2a758bf9 100644 --- a/sdk/devcenter/developer-devcenter-rest/vitest.config.ts +++ b/sdk/devcenter/developer-devcenter-rest/vitest.config.ts @@ -2,12 +2,13 @@ // Licensed under the MIT License. import { defineConfig } from "vitest/config"; +import { relativeRecordingsPath } from "@azure-tools/test-recorder"; export default defineConfig({ test: { reporters: ["basic", "junit"], outputFile: { - junit: "test-results.xml", + junit: "test-results.browser.xml", }, fakeTimers: { toFake: ["setTimeout", "Date"], @@ -15,7 +16,6 @@ export default defineConfig({ watch: false, include: ["test/**/*.spec.ts"], exclude: ["test/**/browser/*.spec.ts"], - testTimeout: 12000000, coverage: { include: ["src/**/*.ts"], exclude: [ @@ -28,5 +28,6 @@ export default defineConfig({ reporter: ["text", "json", "html"], reportsDirectory: "coverage", }, + testTimeout: 1200000, }, });