From be85aff30911151ce4f5bb0330df535b6b5271c5 Mon Sep 17 00:00:00 2001 From: stan-sz <37585349+stan-sz@users.noreply.github.com> Date: Wed, 24 Nov 2021 09:23:07 +0100 Subject: [PATCH 1/8] Bicep nuget packages fixes Fixes #5253 Fixes #5238 Fixes #5236 --- .../examples/empty/empty.proj | 20 +++++++++++++++++++ .../examples/missingCli/missingCli.proj | 1 - .../examples/multiple/multiple.proj | 3 ++- src/Bicep.MSBuild/Bicep.MSBuild.csproj | 2 +- .../build/Azure.Bicep.MSBuild.targets | 10 +++++----- .../Azure.Bicep.MSBuild.props | 2 +- .../Azure.Bicep.MSBuild.targets | 2 +- 7 files changed, 30 insertions(+), 10 deletions(-) create mode 100644 src/Bicep.MSBuild.E2eTests/examples/empty/empty.proj diff --git a/src/Bicep.MSBuild.E2eTests/examples/empty/empty.proj b/src/Bicep.MSBuild.E2eTests/examples/empty/empty.proj new file mode 100644 index 00000000000..c5919e588de --- /dev/null +++ b/src/Bicep.MSBuild.E2eTests/examples/empty/empty.proj @@ -0,0 +1,20 @@ + + + + net472 + + + + + + + + + + + + diff --git a/src/Bicep.MSBuild.E2eTests/examples/missingCli/missingCli.proj b/src/Bicep.MSBuild.E2eTests/examples/missingCli/missingCli.proj index 226bdab1f65..4f5f5dacc16 100644 --- a/src/Bicep.MSBuild.E2eTests/examples/missingCli/missingCli.proj +++ b/src/Bicep.MSBuild.E2eTests/examples/missingCli/missingCli.proj @@ -16,7 +16,6 @@ - diff --git a/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj b/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj index 86fd1d5f40f..01293994895 100644 --- a/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj +++ b/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj @@ -3,7 +3,8 @@ --> - net472 + + net5;net472 bin\$(Configuration)\templates diff --git a/src/Bicep.MSBuild/Bicep.MSBuild.csproj b/src/Bicep.MSBuild/Bicep.MSBuild.csproj index d58b280cffc..12ea1020a6f 100644 --- a/src/Bicep.MSBuild/Bicep.MSBuild.csproj +++ b/src/Bicep.MSBuild/Bicep.MSBuild.csproj @@ -18,7 +18,7 @@ - + diff --git a/src/Bicep.MSBuild/build/Azure.Bicep.MSBuild.targets b/src/Bicep.MSBuild/build/Azure.Bicep.MSBuild.targets index 47c0e9265ac..f3a7ab71fdd 100644 --- a/src/Bicep.MSBuild/build/Azure.Bicep.MSBuild.targets +++ b/src/Bicep.MSBuild/build/Azure.Bicep.MSBuild.targets @@ -7,7 +7,7 @@ $(OutputPath) - + <_BicepResolved Include="@(Bicep)"> @@ -16,13 +16,13 @@ <_BicepOutputFile Include="%(_BicepResolved.OutputFile)" /> - - - - + + + + diff --git a/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.props b/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.props index cf3303dbea1..2ef83b7c141 100644 --- a/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.props +++ b/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.props @@ -1,3 +1,3 @@ - + \ No newline at end of file diff --git a/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.targets b/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.targets index 527b2c689f7..68c365d93e4 100644 --- a/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.targets +++ b/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.targets @@ -1,3 +1,3 @@ - + \ No newline at end of file From 9dcad82eec5f8e128dc0a538a81a9c8a4730c2af Mon Sep 17 00:00:00 2001 From: stan-sz <37585349+stan-sz@users.noreply.github.com> Date: Wed, 24 Nov 2021 11:46:45 +0100 Subject: [PATCH 2/8] Mitigate lack of multitarget support https://github.com/microsoft/MSBuildSdks/issues/155 --- src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj | 1 + .../examples/multiple/multitarget-mitigation.targets | 6 ++++++ 2 files changed, 7 insertions(+) create mode 100644 src/Bicep.MSBuild.E2eTests/examples/multiple/multitarget-mitigation.targets diff --git a/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj b/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj index 01293994895..c32bbf53ad7 100644 --- a/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj +++ b/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj @@ -5,6 +5,7 @@ net5;net472 + $(MSBuildThisFileDirectory)\multitarget-mitigation.targets bin\$(Configuration)\templates diff --git a/src/Bicep.MSBuild.E2eTests/examples/multiple/multitarget-mitigation.targets b/src/Bicep.MSBuild.E2eTests/examples/multiple/multitarget-mitigation.targets new file mode 100644 index 00000000000..d8d32c2fceb --- /dev/null +++ b/src/Bicep.MSBuild.E2eTests/examples/multiple/multitarget-mitigation.targets @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file From d411df518ca85833707a60318fd7e1ca82ebc399 Mon Sep 17 00:00:00 2001 From: stan-sz <37585349+stan-sz@users.noreply.github.com> Date: Thu, 13 Jan 2022 12:39:37 +0100 Subject: [PATCH 3/8] Revert "Mitigate lack of multitarget support" This reverts commit 9dcad82eec5f8e128dc0a538a81a9c8a4730c2af. --- src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj | 1 - .../examples/multiple/multitarget-mitigation.targets | 6 ------ 2 files changed, 7 deletions(-) delete mode 100644 src/Bicep.MSBuild.E2eTests/examples/multiple/multitarget-mitigation.targets diff --git a/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj b/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj index c32bbf53ad7..01293994895 100644 --- a/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj +++ b/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj @@ -5,7 +5,6 @@ net5;net472 - $(MSBuildThisFileDirectory)\multitarget-mitigation.targets bin\$(Configuration)\templates diff --git a/src/Bicep.MSBuild.E2eTests/examples/multiple/multitarget-mitigation.targets b/src/Bicep.MSBuild.E2eTests/examples/multiple/multitarget-mitigation.targets deleted file mode 100644 index d8d32c2fceb..00000000000 --- a/src/Bicep.MSBuild.E2eTests/examples/multiple/multitarget-mitigation.targets +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file From 875d2bc8c916bd809cf5b3b4780379ab45c7b2dd Mon Sep 17 00:00:00 2001 From: stan-sz <37585349+stan-sz@users.noreply.github.com> Date: Thu, 13 Jan 2022 12:39:45 +0100 Subject: [PATCH 4/8] Revert "Bicep nuget packages fixes" This reverts commit be85aff30911151ce4f5bb0330df535b6b5271c5. --- .../examples/empty/empty.proj | 20 ------------------- .../examples/missingCli/missingCli.proj | 1 + .../examples/multiple/multiple.proj | 3 +-- src/Bicep.MSBuild/Bicep.MSBuild.csproj | 2 +- .../build/Azure.Bicep.MSBuild.targets | 10 +++++----- .../Azure.Bicep.MSBuild.props | 2 +- .../Azure.Bicep.MSBuild.targets | 2 +- 7 files changed, 10 insertions(+), 30 deletions(-) delete mode 100644 src/Bicep.MSBuild.E2eTests/examples/empty/empty.proj diff --git a/src/Bicep.MSBuild.E2eTests/examples/empty/empty.proj b/src/Bicep.MSBuild.E2eTests/examples/empty/empty.proj deleted file mode 100644 index c5919e588de..00000000000 --- a/src/Bicep.MSBuild.E2eTests/examples/empty/empty.proj +++ /dev/null @@ -1,20 +0,0 @@ - - - - net472 - - - - - - - - - - - - diff --git a/src/Bicep.MSBuild.E2eTests/examples/missingCli/missingCli.proj b/src/Bicep.MSBuild.E2eTests/examples/missingCli/missingCli.proj index 4f5f5dacc16..226bdab1f65 100644 --- a/src/Bicep.MSBuild.E2eTests/examples/missingCli/missingCli.proj +++ b/src/Bicep.MSBuild.E2eTests/examples/missingCli/missingCli.proj @@ -16,6 +16,7 @@ + diff --git a/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj b/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj index 01293994895..86fd1d5f40f 100644 --- a/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj +++ b/src/Bicep.MSBuild.E2eTests/examples/multiple/multiple.proj @@ -3,8 +3,7 @@ --> - - net5;net472 + net472 bin\$(Configuration)\templates diff --git a/src/Bicep.MSBuild/Bicep.MSBuild.csproj b/src/Bicep.MSBuild/Bicep.MSBuild.csproj index 12ea1020a6f..d58b280cffc 100644 --- a/src/Bicep.MSBuild/Bicep.MSBuild.csproj +++ b/src/Bicep.MSBuild/Bicep.MSBuild.csproj @@ -18,7 +18,7 @@ - + diff --git a/src/Bicep.MSBuild/build/Azure.Bicep.MSBuild.targets b/src/Bicep.MSBuild/build/Azure.Bicep.MSBuild.targets index f3a7ab71fdd..47c0e9265ac 100644 --- a/src/Bicep.MSBuild/build/Azure.Bicep.MSBuild.targets +++ b/src/Bicep.MSBuild/build/Azure.Bicep.MSBuild.targets @@ -7,7 +7,7 @@ $(OutputPath) - + <_BicepResolved Include="@(Bicep)"> @@ -16,13 +16,13 @@ <_BicepOutputFile Include="%(_BicepResolved.OutputFile)" /> + - - - - + + + diff --git a/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.props b/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.props index 2ef83b7c141..cf3303dbea1 100644 --- a/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.props +++ b/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.props @@ -1,3 +1,3 @@ - + \ No newline at end of file diff --git a/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.targets b/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.targets index 68c365d93e4..527b2c689f7 100644 --- a/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.targets +++ b/src/Bicep.MSBuild/buildMultiTargeting/Azure.Bicep.MSBuild.targets @@ -1,3 +1,3 @@ - + \ No newline at end of file From f36c700e296d8119a677d0240cdb272a798ddca8 Mon Sep 17 00:00:00 2001 From: stan-sz <37585349+stan-sz@users.noreply.github.com> Date: Thu, 13 Jan 2022 12:53:45 +0100 Subject: [PATCH 5/8] Add support for arrays in (last)indexOf Closes #4895 --- .../Semantics/Namespaces/SystemNamespaceType.cs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/Bicep.Core/Semantics/Namespaces/SystemNamespaceType.cs b/src/Bicep.Core/Semantics/Namespaces/SystemNamespaceType.cs index 4da4b92359d..2839a1dc55e 100644 --- a/src/Bicep.Core/Semantics/Namespaces/SystemNamespaceType.cs +++ b/src/Bicep.Core/Semantics/Namespaces/SystemNamespaceType.cs @@ -288,6 +288,13 @@ public static class SystemNamespaceType .WithRequiredParameter("stringToFind", LanguageConstants.String, "The value to find.") .Build(), + new FunctionOverloadBuilder("indexOf") + .WithReturnType(LanguageConstants.Int) + .WithGenericDescription("Returns the first position of a value within an array.") + .WithRequiredParameter("array", LanguageConstants.Array, "The array that contains the item to find.") + .WithRequiredParameter("itemToFind", LanguageConstants.Any, "The value to find.") + .Build(), + new FunctionOverloadBuilder("lastIndexOf") .WithReturnType(LanguageConstants.Int) .WithGenericDescription("Returns the last position of a value within a string. The comparison is case-insensitive.") @@ -295,6 +302,13 @@ public static class SystemNamespaceType .WithRequiredParameter("stringToFind", LanguageConstants.String, "The value to find.") .Build(), + new FunctionOverloadBuilder("lastIndexOf") + .WithReturnType(LanguageConstants.Int) + .WithGenericDescription("Returns the last position of a value within an array.") + .WithRequiredParameter("array", LanguageConstants.Array, "The array that contains the item to find.") + .WithRequiredParameter("itemToFind", LanguageConstants.Any, "The value to find.") + .Build(), + new FunctionOverloadBuilder("startsWith") .WithReturnType(LanguageConstants.Bool) .WithGenericDescription("Determines whether a string starts with a value. The comparison is case-insensitive.") From c08722a943a8e350d72a909f9d326991710782d1 Mon Sep 17 00:00:00 2001 From: stan-sz <37585349+stan-sz@users.noreply.github.com> Date: Thu, 13 Jan 2022 14:45:27 +0100 Subject: [PATCH 6/8] UTs and baseline changes Upgraded Azure.Deployments.* package dependencies to 1.0.546 --- .../packages.lock.json | 24 +++---- src/Bicep.Cli.UnitTests/packages.lock.json | 24 +++---- src/Bicep.Cli/packages.lock.json | 24 +++---- .../EvaluationTests.cs | 71 +++++++++++++++++++ .../packages.lock.json | 24 +++---- .../Files/Functions/sys.json | 52 ++++++++++++++ .../Completions/symbols.json | 4 +- .../Completions/sysFunctions.json | 4 +- .../main.diagnostics.bicep | 2 +- .../Completions/symbolsPlusX.json | 4 +- .../Completions/symbolsPlusX_if.json | 4 +- .../Completions/arrayPlusSymbols.json | 4 +- .../Completions/boolPlusSymbols.json | 4 +- .../Completions/objectPlusSymbols.json | 4 +- .../Completions/symbols.json | 4 +- .../Completions/arrayPlusSymbols.json | 4 +- .../Completions/boolPlusSymbols.json | 4 +- .../Completions/justSymbols.json | 4 +- .../Completions/objectPlusSymbols.json | 4 +- .../Completions/arrayPlusSymbols.json | 4 +- .../boolPropertyValuesPlusSymbols.json | 4 +- .../cleanupPreferencesPlusSymbols.json | 4 +- .../cliPropertyAccessIndexesPlusSymbols.json | 4 +- ...iPropertyAccessIndexesPlusSymbols_for.json | 4 +- ...opertyAccessIndexesPlusSymbols_for_if.json | 4 +- ...liPropertyAccessIndexesPlusSymbols_if.json | 4 +- .../createModeIndexPlusSymbols.json | 4 +- .../createModeIndexPlusSymbols_for.json | 4 +- .../createModeIndexPlusSymbols_for_if.json | 4 +- .../createModeIndexPlusSymbols_if.json | 4 +- .../Completions/defaultCreateModeIndexes.json | 4 +- .../defaultCreateModeIndexes_for.json | 4 +- .../defaultCreateModeIndexes_for_if.json | 4 +- .../defaultCreateModeIndexes_if.json | 4 +- .../deploymentScriptKindsPlusSymbols.json | 4 +- .../deploymentScriptKindsPlusSymbols_for.json | 4 +- ...ploymentScriptKindsPlusSymbols_for_if.json | 4 +- .../deploymentScriptKindsPlusSymbols_if.json | 4 +- ...DiscriminatorPropertyIndexPlusSymbols.json | 4 +- ...riminatorPropertyIndexPlusSymbols_for.json | 4 +- ...inatorPropertyIndexPlusSymbols_for_if.json | 4 +- ...criminatorPropertyIndexPlusSymbols_if.json | 4 +- .../Completions/objectPlusSymbols.json | 4 +- ...jectPlusSymbolsWithRequiredProperties.json | 4 +- .../storageSkuNamePlusSymbols.json | 4 +- .../Completions/symbols.json | 4 +- .../Completions/symbolsPlusAccount1.json | 4 +- .../Completions/symbolsPlusAccount2.json | 4 +- .../symbolsPlusAccountRuleState.json | 4 +- .../Completions/symbolsPlusArrayAndFor.json | 4 +- .../symbolsPlusArrayWithoutFor.json | 4 +- .../Completions/symbolsPlusRule.json | 4 +- .../Completions/objectVarTopLevelIndexes.json | 4 +- .../Completions/symbols.json | 4 +- .../Completions/twoIndexPlusSymbols.json | 4 +- .../Completions/symbolsPlusTypes.json | 4 +- src/Bicep.Core.Samples/packages.lock.json | 24 +++---- src/Bicep.Core.UnitTests/packages.lock.json | 24 +++---- src/Bicep.Core/Bicep.Core.csproj | 6 +- src/Bicep.Core/packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- src/Bicep.Decompiler/packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- src/Bicep.LangServer/packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- .../packages.lock.json | 24 +++---- src/Bicep.Wasm/packages.lock.json | 24 +++---- 71 files changed, 441 insertions(+), 318 deletions(-) diff --git a/src/Bicep.Cli.IntegrationTests/packages.lock.json b/src/Bicep.Cli.IntegrationTests/packages.lock.json index c2f560c088a..adac103b364 100644 --- a/src/Bicep.Cli.IntegrationTests/packages.lock.json +++ b/src/Bicep.Cli.IntegrationTests/packages.lock.json @@ -100,8 +100,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -109,20 +109,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -2301,9 +2301,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.Cli.UnitTests/packages.lock.json b/src/Bicep.Cli.UnitTests/packages.lock.json index 9829a43c67a..edf69fddfb7 100644 --- a/src/Bicep.Cli.UnitTests/packages.lock.json +++ b/src/Bicep.Cli.UnitTests/packages.lock.json @@ -100,8 +100,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -109,20 +109,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -1356,9 +1356,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.Cli/packages.lock.json b/src/Bicep.Cli/packages.lock.json index 17c9052062f..f5e66c21e46 100644 --- a/src/Bicep.Cli/packages.lock.json +++ b/src/Bicep.Cli/packages.lock.json @@ -74,8 +74,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -83,20 +83,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -374,9 +374,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.Core.IntegrationTests/EvaluationTests.cs b/src/Bicep.Core.IntegrationTests/EvaluationTests.cs index d7da58a55ca..a65bee0d73f 100644 --- a/src/Bicep.Core.IntegrationTests/EvaluationTests.cs +++ b/src/Bicep.Core.IntegrationTests/EvaluationTests.cs @@ -321,5 +321,76 @@ param inputObj object }); } } + + [TestMethod] + public void indexof_contains_function_evaluation_works() + { + var (template, _, _) = CompilationHelper.Compile(@" +param inputString string +param inputArray array + +output strIdxFooLC int = indexOf(inputString, 'foo') +output strIdxFooUC int = indexOf(inputString, 'FOO') +output strIdxBarLC int = indexOf(inputString, 'bar') +output strIdxBarUC int = indexOf(inputString, 'BAR') +output containsStrFooLC bool = contains(inputString, 'foo') +output containsStrFooUC bool = contains(inputString, 'FOO') +output containsStrBarLC bool = contains(inputString, 'bar') +output containsStrBarUC bool = contains(inputString, 'BAR') + +output arrIdxFooLC int = indexOf(inputArray, 'foo') +output arrIdxFooUC int = indexOf(inputArray, 'FOO') +output arrIdxBarLC int = indexOf(inputArray, 'bar') +output arrIdxBarUC int = indexOf(inputArray, 'BAR') +output arrIdxfalse int = indexOf(inputArray, false) +output arrIdx123 int = indexOf(inputArray, 123) +output containsArrFooLC bool = contains(inputArray, 'foo') +output containsArrFooUC bool = contains(inputArray, 'FOO') +output containsArrBarLC bool = contains(inputArray, 'bar') +output containsArrBarUC bool = contains(inputArray, 'BAR') +output containsArrfalse bool = contains(inputArray, false) +output containsArr123 bool = contains(inputArray, 123) +"); + + using (new AssertionScope()) + { + var evaluated = TemplateEvaluator.Evaluate(template, config => config with + { + Parameters = new() + { + ["inputString"] = "FOOBAR", + ["inputArray"] = new JArray + { + "FOO", + "BAR" + } + } + }); + + evaluated.Should().HaveValueAtPath("$.outputs['strIdxFooLC'].value", new JValue(0)); + evaluated.Should().HaveValueAtPath("$.outputs['strIdxFooUC'].value", new JValue(0)); + evaluated.Should().HaveValueAtPath("$.outputs['strIdxBarLC'].value", new JValue(3)); + evaluated.Should().HaveValueAtPath("$.outputs['strIdxBarUC'].value", new JValue(3)); + + evaluated.Should().HaveValueAtPath("$.outputs['containsStrFooLC'].value", new JValue(true)); + evaluated.Should().HaveValueAtPath("$.outputs['containsStrFooUC'].value", new JValue(true)); + evaluated.Should().HaveValueAtPath("$.outputs['containsStrBarLC'].value", new JValue(true)); + evaluated.Should().HaveValueAtPath("$.outputs['containsStrBarUC'].value", new JValue(true)); + + evaluated.Should().HaveValueAtPath("$.outputs['arrIdxFooLC'].value", new JValue(-1)); + evaluated.Should().HaveValueAtPath("$.outputs['arrIdxFooUC'].value", new JValue(0)); + evaluated.Should().HaveValueAtPath("$.outputs['arrIdxBarLC'].value", new JValue(-1)); + evaluated.Should().HaveValueAtPath("$.outputs['arrIdxBarUC'].value", new JValue(1)); + evaluated.Should().HaveValueAtPath("$.outputs['arrIdxfalse'].value", new JValue(-1)); + evaluated.Should().HaveValueAtPath("$.outputs['arrIdx123'].value", new JValue(-1)); + + evaluated.Should().HaveValueAtPath("$.outputs['containsArrFooLC'].value", new JValue(false)); + evaluated.Should().HaveValueAtPath("$.outputs['containsArrFooUC'].value", new JValue(true)); + evaluated.Should().HaveValueAtPath("$.outputs['containsArrBarLC'].value", new JValue(false)); + evaluated.Should().HaveValueAtPath("$.outputs['containsArrBarUC'].value", new JValue(true)); + evaluated.Should().HaveValueAtPath("$.outputs['containsArrfalse'].value", new JValue(false)); + evaluated.Should().HaveValueAtPath("$.outputs['containsArr123'].value", new JValue(false)); + } + } } } diff --git a/src/Bicep.Core.IntegrationTests/packages.lock.json b/src/Bicep.Core.IntegrationTests/packages.lock.json index 2a5b7899163..e347bf85f56 100644 --- a/src/Bicep.Core.IntegrationTests/packages.lock.json +++ b/src/Bicep.Core.IntegrationTests/packages.lock.json @@ -100,8 +100,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -109,20 +109,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -2291,9 +2291,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.Core.Samples/Files/Functions/sys.json b/src/Bicep.Core.Samples/Files/Functions/sys.json index c6990c558f7..7ed43eff6d3 100644 --- a/src/Bicep.Core.Samples/Files/Functions/sys.json +++ b/src/Bicep.Core.Samples/Files/Functions/sys.json @@ -464,6 +464,32 @@ "stringToFind: string" ] }, + { + "name": "indexOf", + "description": "Returns the first position of a value within an array.", + "fixedParameters": [ + { + "name": "array", + "description": "The array that contains the item to find.", + "type": "array", + "required": true + }, + { + "name": "itemToFind", + "description": "The value to find.", + "type": "any", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(array: array, itemToFind: any): int", + "parameterTypeSignatures": [ + "array: array", + "itemToFind: any" + ] + }, { "name": "int", "description": "Converts the specified value to an integer.", @@ -619,6 +645,32 @@ "stringToFind: string" ] }, + { + "name": "lastIndexOf", + "description": "Returns the last position of a value within an array.", + "fixedParameters": [ + { + "name": "array", + "description": "The array that contains the item to find.", + "type": "array", + "required": true + }, + { + "name": "itemToFind", + "description": "The value to find.", + "type": "any", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(array: array, itemToFind: any): int", + "parameterTypeSignatures": [ + "array: array", + "itemToFind: any" + ] + }, { "name": "length", "description": "Returns the number of characters in a string, elements in an array, or root-level properties in an object.", diff --git a/src/Bicep.Core.Samples/Files/InvalidExpressions_LF/Completions/symbols.json b/src/Bicep.Core.Samples/Files/InvalidExpressions_LF/Completions/symbols.json index d886d6f7179..fa2a0c8b7ba 100644 --- a/src/Bicep.Core.Samples/Files/InvalidExpressions_LF/Completions/symbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidExpressions_LF/Completions/symbols.json @@ -975,7 +975,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -1235,7 +1235,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidExpressions_LF/Completions/sysFunctions.json b/src/Bicep.Core.Samples/Files/InvalidExpressions_LF/Completions/sysFunctions.json index 546ce18b803..0606f3881a4 100644 --- a/src/Bicep.Core.Samples/Files/InvalidExpressions_LF/Completions/sysFunctions.json +++ b/src/Bicep.Core.Samples/Files/InvalidExpressions_LF/Completions/sysFunctions.json @@ -344,7 +344,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -464,7 +464,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidExpressions_LF/main.diagnostics.bicep b/src/Bicep.Core.Samples/Files/InvalidExpressions_LF/main.diagnostics.bicep index 1ee8a32d3f1..32b5ce7f538 100644 --- a/src/Bicep.Core.Samples/Files/InvalidExpressions_LF/main.diagnostics.bicep +++ b/src/Bicep.Core.Samples/Files/InvalidExpressions_LF/main.diagnostics.bicep @@ -361,7 +361,7 @@ var concatWrongTypesContradiction = concat('s', [ ]) var indexOfWrongTypes = indexOf(1,1) //@[4:21) [no-unused-vars (Warning)] Variable "indexOfWrongTypes" is declared but never used. (CodeDescription: bicep core(https://aka.ms/bicep/linter/no-unused-vars)) |indexOfWrongTypes| -//@[32:34) [BCP070 (Error)] Argument of type "int" is not assignable to parameter of type "string". (CodeDescription: none) |1,| +//@[32:34) [BCP048 (Error)] Cannot resolve function overload.\n Overload 1 of 2, "(stringToSearch: string, stringToFind: string): int", gave the following error:\n Argument of type "int" is not assignable to parameter of type "string".\n Overload 2 of 2, "(array: array, itemToFind: any): int", gave the following error:\n Argument of type "int" is not assignable to parameter of type "array". (CodeDescription: none) |1,| // not enough params var test1 = listKeys('abcd') diff --git a/src/Bicep.Core.Samples/Files/InvalidModules_LF/Completions/symbolsPlusX.json b/src/Bicep.Core.Samples/Files/InvalidModules_LF/Completions/symbolsPlusX.json index 24e6326f4e9..c8027f09efd 100644 --- a/src/Bicep.Core.Samples/Files/InvalidModules_LF/Completions/symbolsPlusX.json +++ b/src/Bicep.Core.Samples/Files/InvalidModules_LF/Completions/symbolsPlusX.json @@ -975,7 +975,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -1168,7 +1168,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidModules_LF/Completions/symbolsPlusX_if.json b/src/Bicep.Core.Samples/Files/InvalidModules_LF/Completions/symbolsPlusX_if.json index fcb045840a5..b511187dcdd 100644 --- a/src/Bicep.Core.Samples/Files/InvalidModules_LF/Completions/symbolsPlusX_if.json +++ b/src/Bicep.Core.Samples/Files/InvalidModules_LF/Completions/symbolsPlusX_if.json @@ -975,7 +975,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -1168,7 +1168,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/arrayPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/arrayPlusSymbols.json index 2d739cd9b32..524d36cd242 100644 --- a/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/arrayPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/arrayPlusSymbols.json @@ -493,7 +493,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -630,7 +630,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/boolPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/boolPlusSymbols.json index 1ebdb83e72b..995add04d07 100644 --- a/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/boolPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/boolPlusSymbols.json @@ -457,7 +457,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -594,7 +594,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/objectPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/objectPlusSymbols.json index 3081209c927..18c8531cecb 100644 --- a/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/objectPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/objectPlusSymbols.json @@ -443,7 +443,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -580,7 +580,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/symbols.json b/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/symbols.json index 079d626ca77..ef862662f91 100644 --- a/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/symbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidOutputs_CRLF/Completions/symbols.json @@ -443,7 +443,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -580,7 +580,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/arrayPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/arrayPlusSymbols.json index 82e78ed6621..30005bdc543 100644 --- a/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/arrayPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/arrayPlusSymbols.json @@ -611,7 +611,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -773,7 +773,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/boolPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/boolPlusSymbols.json index 7754c305513..79d52edd6e1 100644 --- a/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/boolPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/boolPlusSymbols.json @@ -611,7 +611,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -773,7 +773,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/justSymbols.json b/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/justSymbols.json index 05f0cb888f3..b5d1198c409 100644 --- a/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/justSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/justSymbols.json @@ -597,7 +597,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -759,7 +759,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/objectPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/objectPlusSymbols.json index 8434938377c..4cfa659779c 100644 --- a/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/objectPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidParameters_LF/Completions/objectPlusSymbols.json @@ -611,7 +611,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -773,7 +773,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/arrayPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/arrayPlusSymbols.json index 525c757579c..5c512dfabf6 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/arrayPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/arrayPlusSymbols.json @@ -2418,7 +2418,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2891,7 +2891,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/boolPropertyValuesPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/boolPropertyValuesPlusSymbols.json index 78442b3aa32..eeab21791c1 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/boolPropertyValuesPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/boolPropertyValuesPlusSymbols.json @@ -2382,7 +2382,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2855,7 +2855,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cleanupPreferencesPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cleanupPreferencesPlusSymbols.json index bdcb2b9e5de..3979e70baaf 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cleanupPreferencesPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cleanupPreferencesPlusSymbols.json @@ -2410,7 +2410,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2883,7 +2883,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols.json index c8355057cf0..8b5112b0385 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols.json @@ -2641,7 +2641,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -3114,7 +3114,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols_for.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols_for.json index 8a54576a2b4..6f0ce77dcbe 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols_for.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols_for.json @@ -2641,7 +2641,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -3114,7 +3114,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols_for_if.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols_for_if.json index 84de53c88a7..d6249691c4f 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols_for_if.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols_for_if.json @@ -2641,7 +2641,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -3114,7 +3114,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols_if.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols_if.json index 25f9fd56ff8..09094ed4252 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols_if.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/cliPropertyAccessIndexesPlusSymbols_if.json @@ -2641,7 +2641,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -3114,7 +3114,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols.json index 125dbac6234..a4806469b92 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols.json @@ -2403,7 +2403,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2876,7 +2876,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols_for.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols_for.json index f51491e4620..c54989c372f 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols_for.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols_for.json @@ -2403,7 +2403,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2876,7 +2876,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols_for_if.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols_for_if.json index 11dcf0093a5..b7fe94cf771 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols_for_if.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols_for_if.json @@ -2403,7 +2403,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2876,7 +2876,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols_if.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols_if.json index a0f42837659..f6bc8f03fb0 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols_if.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/createModeIndexPlusSymbols_if.json @@ -2403,7 +2403,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2876,7 +2876,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes.json index 17a1eadc6c4..a7887279be5 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes.json @@ -2889,7 +2889,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -3362,7 +3362,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes_for.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes_for.json index 0dcc0c80de4..50a13130304 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes_for.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes_for.json @@ -2889,7 +2889,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -3362,7 +3362,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes_for_if.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes_for_if.json index 5e830b14bbd..6b21780cf66 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes_for_if.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes_for_if.json @@ -2889,7 +2889,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -3362,7 +3362,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes_if.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes_if.json index 56ee2baaf4c..0c71e6fb8ec 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes_if.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/defaultCreateModeIndexes_if.json @@ -2889,7 +2889,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -3362,7 +3362,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols.json index 52f00e1b76f..c01e376d161 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols.json @@ -2396,7 +2396,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2869,7 +2869,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols_for.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols_for.json index f1fd3c1e898..2d9cd3b1389 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols_for.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols_for.json @@ -2396,7 +2396,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2869,7 +2869,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols_for_if.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols_for_if.json index e95a0002c2f..4305745e3d6 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols_for_if.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols_for_if.json @@ -2396,7 +2396,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2869,7 +2869,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols_if.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols_if.json index 34da1141f52..61eacb53731 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols_if.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/deploymentScriptKindsPlusSymbols_if.json @@ -2396,7 +2396,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2869,7 +2869,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols.json index 822566b2037..2150077cb2f 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols.json @@ -2389,7 +2389,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2862,7 +2862,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols_for.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols_for.json index f94775b1680..606430b823f 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols_for.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols_for.json @@ -2389,7 +2389,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2862,7 +2862,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols_for_if.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols_for_if.json index fd7cdeaf131..b89c9e19378 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols_for_if.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols_for_if.json @@ -2389,7 +2389,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2862,7 +2862,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols_if.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols_if.json index 7dbdcffdd48..82dd5097394 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols_if.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/missingDiscriminatorPropertyIndexPlusSymbols_if.json @@ -2389,7 +2389,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2862,7 +2862,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/objectPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/objectPlusSymbols.json index 8555b257960..21461475099 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/objectPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/objectPlusSymbols.json @@ -2368,7 +2368,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2841,7 +2841,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/objectPlusSymbolsWithRequiredProperties.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/objectPlusSymbolsWithRequiredProperties.json index ce759874299..6e0849cbcb8 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/objectPlusSymbolsWithRequiredProperties.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/objectPlusSymbolsWithRequiredProperties.json @@ -2368,7 +2368,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2841,7 +2841,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/storageSkuNamePlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/storageSkuNamePlusSymbols.json index 1c49a58b866..5894b9fa776 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/storageSkuNamePlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/storageSkuNamePlusSymbols.json @@ -2511,7 +2511,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2984,7 +2984,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbols.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbols.json index 88753b913fa..5f442e0df3c 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbols.json @@ -2385,7 +2385,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2858,7 +2858,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusAccount1.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusAccount1.json index 87f1323ea0f..b31685af112 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusAccount1.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusAccount1.json @@ -2399,7 +2399,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2872,7 +2872,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusAccount2.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusAccount2.json index 87f1323ea0f..b31685af112 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusAccount2.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusAccount2.json @@ -2399,7 +2399,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2872,7 +2872,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusAccountRuleState.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusAccountRuleState.json index fce76df4416..b2ce73fa535 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusAccountRuleState.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusAccountRuleState.json @@ -2399,7 +2399,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2872,7 +2872,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusArrayAndFor.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusArrayAndFor.json index d3c5acb6cb2..205eed96e6f 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusArrayAndFor.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusArrayAndFor.json @@ -2435,7 +2435,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2922,7 +2922,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusArrayWithoutFor.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusArrayWithoutFor.json index 68ed6dd67ea..f3af5d3108c 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusArrayWithoutFor.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusArrayWithoutFor.json @@ -2399,7 +2399,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2886,7 +2886,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusRule.json b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusRule.json index 8ec4b5f6e00..a904ed4c4a3 100644 --- a/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusRule.json +++ b/src/Bicep.Core.Samples/Files/InvalidResources_CRLF/Completions/symbolsPlusRule.json @@ -2399,7 +2399,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -2872,7 +2872,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidVariables_LF/Completions/objectVarTopLevelIndexes.json b/src/Bicep.Core.Samples/Files/InvalidVariables_LF/Completions/objectVarTopLevelIndexes.json index 01632ebd209..7f18f95eae9 100644 --- a/src/Bicep.Core.Samples/Files/InvalidVariables_LF/Completions/objectVarTopLevelIndexes.json +++ b/src/Bicep.Core.Samples/Files/InvalidVariables_LF/Completions/objectVarTopLevelIndexes.json @@ -575,7 +575,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -908,7 +908,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidVariables_LF/Completions/symbols.json b/src/Bicep.Core.Samples/Files/InvalidVariables_LF/Completions/symbols.json index e1b6e2a7bab..4782dfc14f4 100644 --- a/src/Bicep.Core.Samples/Files/InvalidVariables_LF/Completions/symbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidVariables_LF/Completions/symbols.json @@ -611,7 +611,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -944,7 +944,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/InvalidVariables_LF/Completions/twoIndexPlusSymbols.json b/src/Bicep.Core.Samples/Files/InvalidVariables_LF/Completions/twoIndexPlusSymbols.json index 18aa37e6f5e..cac55eebd25 100644 --- a/src/Bicep.Core.Samples/Files/InvalidVariables_LF/Completions/twoIndexPlusSymbols.json +++ b/src/Bicep.Core.Samples/Files/InvalidVariables_LF/Completions/twoIndexPlusSymbols.json @@ -593,7 +593,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -926,7 +926,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/Files/Variables_LF/Completions/symbolsPlusTypes.json b/src/Bicep.Core.Samples/Files/Variables_LF/Completions/symbolsPlusTypes.json index 24946806ce4..a5e5476ea47 100644 --- a/src/Bicep.Core.Samples/Files/Variables_LF/Completions/symbolsPlusTypes.json +++ b/src/Bicep.Core.Samples/Files/Variables_LF/Completions/symbolsPlusTypes.json @@ -989,7 +989,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nindexOf(stringToSearch: string, stringToFind: string): int\nindexOf(array: array, itemToFind: any): int\n\n```\nReturns the first position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, @@ -1249,7 +1249,7 @@ "kind": "function", "documentation": { "kind": "markdown", - "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" + "value": "```bicep\nlastIndexOf(stringToSearch: string, stringToFind: string): int\nlastIndexOf(array: array, itemToFind: any): int\n\n```\nReturns the last position of a value within a string. The comparison is case-insensitive.\n" }, "deprecated": false, "preselect": false, diff --git a/src/Bicep.Core.Samples/packages.lock.json b/src/Bicep.Core.Samples/packages.lock.json index 830277d7ebc..00d095b95e8 100644 --- a/src/Bicep.Core.Samples/packages.lock.json +++ b/src/Bicep.Core.Samples/packages.lock.json @@ -100,8 +100,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -109,20 +109,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -2291,9 +2291,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.Core.UnitTests/packages.lock.json b/src/Bicep.Core.UnitTests/packages.lock.json index d1e773116f2..0440186291c 100644 --- a/src/Bicep.Core.UnitTests/packages.lock.json +++ b/src/Bicep.Core.UnitTests/packages.lock.json @@ -191,8 +191,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -200,20 +200,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -2283,9 +2283,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.Core/Bicep.Core.csproj b/src/Bicep.Core/Bicep.Core.csproj index 410bf0aff43..a44fc1c7764 100644 --- a/src/Bicep.Core/Bicep.Core.csproj +++ b/src/Bicep.Core/Bicep.Core.csproj @@ -19,9 +19,9 @@ - - - + + + diff --git a/src/Bicep.Core/packages.lock.json b/src/Bicep.Core/packages.lock.json index e1b0fd9b491..ce67a8949c5 100644 --- a/src/Bicep.Core/packages.lock.json +++ b/src/Bicep.Core/packages.lock.json @@ -32,9 +32,9 @@ }, "Azure.Deployments.Core": { "type": "Direct", - "requested": "[1.0.253, )", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "requested": "[1.0.546, )", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -42,22 +42,22 @@ }, "Azure.Deployments.Expression": { "type": "Direct", - "requested": "[1.0.253, )", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "requested": "[1.0.546, )", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Direct", - "requested": "[1.0.253, )", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "requested": "[1.0.546, )", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, diff --git a/src/Bicep.Decompiler.IntegrationTests/packages.lock.json b/src/Bicep.Decompiler.IntegrationTests/packages.lock.json index fa7b774d1ca..6b81da6154c 100644 --- a/src/Bicep.Decompiler.IntegrationTests/packages.lock.json +++ b/src/Bicep.Decompiler.IntegrationTests/packages.lock.json @@ -100,8 +100,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -109,20 +109,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -2276,9 +2276,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.Decompiler.UnitTests/packages.lock.json b/src/Bicep.Decompiler.UnitTests/packages.lock.json index fa7b774d1ca..6b81da6154c 100644 --- a/src/Bicep.Decompiler.UnitTests/packages.lock.json +++ b/src/Bicep.Decompiler.UnitTests/packages.lock.json @@ -100,8 +100,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -109,20 +109,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -2276,9 +2276,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.Decompiler/packages.lock.json b/src/Bicep.Decompiler/packages.lock.json index 5c192d77049..6e5a63845db 100644 --- a/src/Bicep.Decompiler/packages.lock.json +++ b/src/Bicep.Decompiler/packages.lock.json @@ -70,8 +70,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -79,20 +79,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -331,9 +331,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.LangServer.IntegrationTests/packages.lock.json b/src/Bicep.LangServer.IntegrationTests/packages.lock.json index b11ee83c098..b8f7339e1d8 100644 --- a/src/Bicep.LangServer.IntegrationTests/packages.lock.json +++ b/src/Bicep.LangServer.IntegrationTests/packages.lock.json @@ -122,8 +122,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -131,20 +131,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -2304,9 +2304,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.LangServer.UnitTests/packages.lock.json b/src/Bicep.LangServer.UnitTests/packages.lock.json index c8d8c262336..72e645c13fc 100644 --- a/src/Bicep.LangServer.UnitTests/packages.lock.json +++ b/src/Bicep.LangServer.UnitTests/packages.lock.json @@ -122,8 +122,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -131,20 +131,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -2304,9 +2304,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.LangServer/packages.lock.json b/src/Bicep.LangServer/packages.lock.json index 1c23da54ac1..cd7523433af 100644 --- a/src/Bicep.LangServer/packages.lock.json +++ b/src/Bicep.LangServer/packages.lock.json @@ -67,8 +67,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -76,20 +76,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -606,9 +606,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.RegistryModuleTool.IntegrationTests/packages.lock.json b/src/Bicep.RegistryModuleTool.IntegrationTests/packages.lock.json index 99514946a1b..04d4ec78a14 100644 --- a/src/Bicep.RegistryModuleTool.IntegrationTests/packages.lock.json +++ b/src/Bicep.RegistryModuleTool.IntegrationTests/packages.lock.json @@ -100,8 +100,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -109,20 +109,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -1745,9 +1745,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.RegistryModuleTool.TestFixtures/packages.lock.json b/src/Bicep.RegistryModuleTool.TestFixtures/packages.lock.json index 9d3ab7dc588..659249acd35 100644 --- a/src/Bicep.RegistryModuleTool.TestFixtures/packages.lock.json +++ b/src/Bicep.RegistryModuleTool.TestFixtures/packages.lock.json @@ -99,8 +99,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -108,20 +108,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -1667,9 +1667,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.RegistryModuleTool.UnitTests/packages.lock.json b/src/Bicep.RegistryModuleTool.UnitTests/packages.lock.json index 99514946a1b..04d4ec78a14 100644 --- a/src/Bicep.RegistryModuleTool.UnitTests/packages.lock.json +++ b/src/Bicep.RegistryModuleTool.UnitTests/packages.lock.json @@ -100,8 +100,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -109,20 +109,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -1745,9 +1745,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.RegistryModuleTool/packages.lock.json b/src/Bicep.RegistryModuleTool/packages.lock.json index f7d0b44e3ef..65944aa2fe9 100644 --- a/src/Bicep.RegistryModuleTool/packages.lock.json +++ b/src/Bicep.RegistryModuleTool/packages.lock.json @@ -179,8 +179,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -188,20 +188,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -696,9 +696,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", diff --git a/src/Bicep.Wasm/packages.lock.json b/src/Bicep.Wasm/packages.lock.json index 6b4ce8452f2..e1dbec7ff70 100644 --- a/src/Bicep.Wasm/packages.lock.json +++ b/src/Bicep.Wasm/packages.lock.json @@ -77,8 +77,8 @@ }, "Azure.Deployments.Core": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "bF/scScUsZkrYWy6GVYQlUmSuPpbja081N91uqXwv9N/PU1wnh7pXI2JuYO/xYtb52uZGYaaZJPQBsFkfdrPAQ==", + "resolved": "1.0.546", + "contentHash": "pm2/h4e6b0iCRhSXMdbLtMNJzhbQA+PwiEhW5PuFvXm3J7Cvujj0q4vpw+WdQb3JSD/uHKRcx5fgJgZCi8NtbA==", "dependencies": { "Newtonsoft.Json": "11.0.2", "System.Reflection.Emit.Lightweight": "4.7.0" @@ -86,20 +86,20 @@ }, "Azure.Deployments.Expression": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "NdMIPL7XoxphLGV2gyxEzaV5tgPJr3VHMe4bAAJsvQ4HYnZMMIauNIXEYiES/4Jd1erfBshJc0UMh01D/9pgMw==", + "resolved": "1.0.546", + "contentHash": "FzjcKUGvgwXBhkAH9QjeCDxR3iyGR4Lsor3g80Umlh3+y3ejOQQ7iBBTJ3UOUFlfUZ7M8MdovF73mWzqGY/Dew==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", + "Azure.Deployments.Core": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, "Azure.Deployments.Templates": { "type": "Transitive", - "resolved": "1.0.253", - "contentHash": "kh+GCwSurLDbf7HRr0S5dI7E1m7fmk5SSUfmmzDAUKpEa62KpPR8eycK6xUGlJXv81KBvmqRth2cWGIjzJDl9g==", + "resolved": "1.0.546", + "contentHash": "AOFJJYT5D1BYVNJ9lusw3i0JY06OqKrm1LkISot9glmdzO7q0dfwtQ1HcX3Te1kQn4ySbnpTqixLi3/VlEKPHQ==", "dependencies": { - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", "Newtonsoft.Json": "11.0.2" } }, @@ -461,9 +461,9 @@ "Azure.Bicep.Types": "0.1.331", "Azure.Bicep.Types.Az": "0.1.331", "Azure.Containers.ContainerRegistry": "1.1.0-beta.3", - "Azure.Deployments.Core": "1.0.253", - "Azure.Deployments.Expression": "1.0.253", - "Azure.Deployments.Templates": "1.0.253", + "Azure.Deployments.Core": "1.0.546", + "Azure.Deployments.Expression": "1.0.546", + "Azure.Deployments.Templates": "1.0.546", "Azure.Identity": "1.5.0", "Azure.ResourceManager.Resources": "1.0.0-beta.3", "Microsoft.Extensions.Configuration": "6.0.0", From dc5ec4204437acb6c19c409ef3e83538cc611832 Mon Sep 17 00:00:00 2001 From: stan-sz <37585349+stan-sz@users.noreply.github.com> Date: Thu, 13 Jan 2022 15:46:43 +0100 Subject: [PATCH 7/8] Fix test case --- src/Bicep.Core.IntegrationTests/EvaluationTests.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Bicep.Core.IntegrationTests/EvaluationTests.cs b/src/Bicep.Core.IntegrationTests/EvaluationTests.cs index a65bee0d73f..75bf7e5e8b0 100644 --- a/src/Bicep.Core.IntegrationTests/EvaluationTests.cs +++ b/src/Bicep.Core.IntegrationTests/EvaluationTests.cs @@ -372,9 +372,9 @@ param inputArray array evaluated.Should().HaveValueAtPath("$.outputs['strIdxBarLC'].value", new JValue(3)); evaluated.Should().HaveValueAtPath("$.outputs['strIdxBarUC'].value", new JValue(3)); - evaluated.Should().HaveValueAtPath("$.outputs['containsStrFooLC'].value", new JValue(true)); + evaluated.Should().HaveValueAtPath("$.outputs['containsStrFooLC'].value", new JValue(false)); // case-sensitive evaluated.Should().HaveValueAtPath("$.outputs['containsStrFooUC'].value", new JValue(true)); - evaluated.Should().HaveValueAtPath("$.outputs['containsStrBarLC'].value", new JValue(true)); + evaluated.Should().HaveValueAtPath("$.outputs['containsStrBarLC'].value", new JValue(false)); // case-sensitive evaluated.Should().HaveValueAtPath("$.outputs['containsStrBarUC'].value", new JValue(true)); evaluated.Should().HaveValueAtPath("$.outputs['arrIdxFooLC'].value", new JValue(-1)); From 2b66737526d042a13290869089d875e4b7cb3be5 Mon Sep 17 00:00:00 2001 From: stan-sz <37585349+stan-sz@users.noreply.github.com> Date: Thu, 13 Jan 2022 16:32:58 +0100 Subject: [PATCH 8/8] Update description. --- .../Files/Functions/sys.json | 2620 ++++++++--------- .../Namespaces/SystemNamespaceType.cs | 10 +- 2 files changed, 1315 insertions(+), 1315 deletions(-) diff --git a/src/Bicep.Core.Samples/Files/Functions/sys.json b/src/Bicep.Core.Samples/Files/Functions/sys.json index 7ed43eff6d3..b25c4aa524f 100644 --- a/src/Bicep.Core.Samples/Files/Functions/sys.json +++ b/src/Bicep.Core.Samples/Files/Functions/sys.json @@ -1,1311 +1,1311 @@ -[ - { - "name": "any", - "description": "Converts the specified value to the `any` type.", - "fixedParameters": [ - { - "name": "value", - "description": "The value to convert to `any` type", - "type": "any", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(value: any): any", - "parameterTypeSignatures": [ - "value: any" - ] - }, - { - "name": "array", - "description": "Converts the value to an array.", - "fixedParameters": [ - { - "name": "valueToConvert", - "description": "The value to convert to an array.", - "type": "any", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(valueToConvert: any): array", - "parameterTypeSignatures": [ - "valueToConvert: any" - ] - }, - { - "name": "base64", - "description": "Returns the base64 representation of the input string.", - "fixedParameters": [ - { - "name": "inputString", - "description": "The value to return as a base64 representation.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(inputString: string): string", - "parameterTypeSignatures": [ - "inputString: string" - ] - }, - { - "name": "base64ToJson", - "description": "Converts a base64 representation to a JSON object.", - "fixedParameters": [ - { - "name": "base64Value", - "description": "The base64 representation to convert to a JSON object.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(base64Value: string): any", - "parameterTypeSignatures": [ - "base64Value: string" - ] - }, - { - "name": "base64ToString", - "description": "Converts a base64 representation to a string.", - "fixedParameters": [ - { - "name": "base64Value", - "description": "The base64 representation to convert to a string.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(base64Value: string): string", - "parameterTypeSignatures": [ - "base64Value: string" - ] - }, - { - "name": "bool", - "description": "Converts the parameter to a boolean.", - "fixedParameters": [ - { - "name": "value", - "description": "The value to convert to a boolean.", - "type": "any", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(value: any): bool", - "parameterTypeSignatures": [ - "value: any" - ] - }, - { - "name": "coalesce", - "description": "Returns first non-null value from the parameters. Empty strings, empty arrays, and empty objects are not null.", - "fixedParameters": [], - "minimumArgumentCount": 1, - "variableParameter": { - "namePrefix": "arg", - "description": "The value to coalesce", - "type": "any", - "minimumCount": 1 - }, - "flags": "default", - "typeSignature": "(... : any): any", - "parameterTypeSignatures": [ - "... : any" - ] - }, - { - "name": "concat", - "description": "Combines multiple arrays and returns the concatenated array.", - "fixedParameters": [], - "minimumArgumentCount": 1, - "variableParameter": { - "namePrefix": "arg", - "description": "The array for concatenation", - "type": "array", - "minimumCount": 1 - }, - "flags": "default", - "typeSignature": "(... : array): array", - "parameterTypeSignatures": [ - "... : array" - ] - }, - { - "name": "concat", - "description": "Combines multiple string, integer, or boolean values and returns them as a concatenated string.", - "fixedParameters": [], - "minimumArgumentCount": 1, - "variableParameter": { - "namePrefix": "arg", - "description": "The string, int, or boolean value for concatenation", - "type": "bool | int | string", - "minimumCount": 1 - }, - "flags": "default", - "typeSignature": "(... : bool | int | string): string", - "parameterTypeSignatures": [ - "... : bool | int | string" - ] - }, - { - "name": "contains", - "description": "Checks whether an object contains a property. The property name comparison is case-insensitive.", - "fixedParameters": [ - { - "name": "object", - "description": "The object", - "type": "object", - "required": true - }, - { - "name": "propertyName", - "description": "The property name.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(object: object, propertyName: string): bool", - "parameterTypeSignatures": [ - "object: object", - "propertyName: string" - ] - }, - { - "name": "contains", - "description": "Checks whether an array contains a value.", - "fixedParameters": [ - { - "name": "array", - "description": "The array", - "type": "array", - "required": true - }, - { - "name": "itemToFind", - "description": "The value to find.", - "type": "any", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(array: array, itemToFind: any): bool", - "parameterTypeSignatures": [ - "array: array", - "itemToFind: any" - ] - }, - { - "name": "contains", - "description": "Checks whether a string contains a substring. The string comparison is case-sensitive.", - "fixedParameters": [ - { - "name": "string", - "description": "The string.", - "type": "string", - "required": true - }, - { - "name": "itemToFind", - "description": "The value to find.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(string: string, itemToFind: string): bool", - "parameterTypeSignatures": [ - "string: string", - "itemToFind: string" - ] - }, - { - "name": "dataUri", - "description": "Converts a value to a data URI.", - "fixedParameters": [ - { - "name": "valueToConvert", - "description": "The value to convert to a data URI.", - "type": "any", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(valueToConvert: any): string", - "parameterTypeSignatures": [ - "valueToConvert: any" - ] - }, - { - "name": "dataUriToString", - "description": "Converts a data URI formatted value to a string.", - "fixedParameters": [ - { - "name": "dataUriToConvert", - "description": "The data URI value to convert.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(dataUriToConvert: string): string", - "parameterTypeSignatures": [ - "dataUriToConvert: string" - ] - }, - { - "name": "dateTimeAdd", - "description": "Adds a time duration to a base value. ISO 8601 format is expected.", - "fixedParameters": [ - { - "name": "base", - "description": "The starting datetime value for the addition. [Use ISO 8601 timestamp format](https://en.wikipedia.org/wiki/ISO_8601).", - "type": "string", - "required": true - }, - { - "name": "duration", - "description": "The time value to add to the base. It can be a negative value. Use [ISO 8601 duration format](https://en.wikipedia.org/wiki/ISO_8601#Durations).", - "type": "string", - "required": true - }, - { - "name": "format", - "description": "The output format for the date time result. If not provided, the format of the base value is used. Use either [standard format strings](https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings) or [custom format strings](https://docs.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings).", - "type": "string", - "required": false - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 3, - "flags": "default", - "typeSignature": "(base: string, duration: string, [format: string]): string", - "parameterTypeSignatures": [ - "base: string", - "duration: string", - "[format: string]" - ] - }, - { - "name": "empty", - "description": "Determines if an array, object, or string is empty.", - "fixedParameters": [ - { - "name": "itemToTest", - "description": "The value to check if it is empty.", - "type": "array | null | object | string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(itemToTest: array | null | object | string): bool", - "parameterTypeSignatures": [ - "itemToTest: array | null | object | string" - ] - }, - { - "name": "endsWith", - "description": "Determines whether a string ends with a value. The comparison is case-insensitive.", - "fixedParameters": [ - { - "name": "stringToSearch", - "description": "The value that contains the item to find.", - "type": "string", - "required": true - }, - { - "name": "stringToFind", - "description": "The value to find.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(stringToSearch: string, stringToFind: string): bool", - "parameterTypeSignatures": [ - "stringToSearch: string", - "stringToFind: string" - ] - }, - { - "name": "first", - "description": "Returns the first element of the array.", - "fixedParameters": [ - { - "name": "array", - "description": "The value to retrieve the first element.", - "type": "array", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(array: array): any", - "parameterTypeSignatures": [ - "array: array" - ] - }, - { - "name": "first", - "description": "Returns the first character of the string.", - "fixedParameters": [ - { - "name": "string", - "description": "The value to retrieve the first character.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(string: string): string", - "parameterTypeSignatures": [ - "string: string" - ] - }, - { - "name": "format", - "description": "Creates a formatted string from input values.", - "fixedParameters": [ - { - "name": "formatString", - "description": "The composite format string.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "variableParameter": { - "namePrefix": "arg", - "description": "The value to include in the formatted string.", - "type": "any", - "minimumCount": 0 - }, - "flags": "default", - "typeSignature": "(formatString: string, ... : any): string", - "parameterTypeSignatures": [ - "formatString: string", - "... : any" - ] - }, - { - "name": "guid", - "description": "Creates a value in the format of a globally unique identifier based on the values provided as parameters.", - "fixedParameters": [], - "minimumArgumentCount": 1, - "variableParameter": { - "namePrefix": "arg", - "description": "The value used in the hash function to create the GUID.", - "type": "string", - "minimumCount": 1 - }, - "flags": "default", - "typeSignature": "(... : string): string", - "parameterTypeSignatures": [ - "... : string" - ] - }, - { - "name": "indexOf", - "description": "Returns the first position of a value within a string. The comparison is case-insensitive.", - "fixedParameters": [ - { - "name": "stringToSearch", - "description": "The value that contains the item to find.", - "type": "string", - "required": true - }, - { - "name": "stringToFind", - "description": "The value to find.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(stringToSearch: string, stringToFind: string): int", - "parameterTypeSignatures": [ - "stringToSearch: string", - "stringToFind: string" - ] - }, - { - "name": "indexOf", - "description": "Returns the first position of a value within an array.", - "fixedParameters": [ - { - "name": "array", - "description": "The array that contains the item to find.", - "type": "array", - "required": true - }, - { - "name": "itemToFind", - "description": "The value to find.", - "type": "any", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(array: array, itemToFind: any): int", - "parameterTypeSignatures": [ - "array: array", - "itemToFind: any" - ] - }, - { - "name": "int", - "description": "Converts the specified value to an integer.", - "fixedParameters": [ - { - "name": "valueToConvert", - "description": "The value to convert to an integer.", - "type": "int | string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(valueToConvert: int | string): int", - "parameterTypeSignatures": [ - "valueToConvert: int | string" - ] - }, - { - "name": "intersection", - "description": "Returns a single object with the common elements from the parameters.", - "fixedParameters": [], - "minimumArgumentCount": 2, - "variableParameter": { - "namePrefix": "object", - "description": "The object to use for finding common elements.", - "type": "object", - "minimumCount": 2 - }, - "flags": "default", - "typeSignature": "(... : object): object", - "parameterTypeSignatures": [ - "... : object" - ] - }, - { - "name": "intersection", - "description": "Returns a single array with the common elements from the parameters.", - "fixedParameters": [], - "minimumArgumentCount": 2, - "variableParameter": { - "namePrefix": "array", - "description": "The array to use for finding common elements.", - "type": "array", - "minimumCount": 2 - }, - "flags": "default", - "typeSignature": "(... : array): array", - "parameterTypeSignatures": [ - "... : array" - ] - }, - { - "name": "items", - "description": "Returns an array of keys and values for an object. Elements are consistently ordered alphabetically by key.", - "fixedParameters": [ - { - "name": "object", - "description": "The object to return keys and values for", - "type": "object", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(object: object): object[]", - "parameterTypeSignatures": [ - "object: object" - ] - }, - { - "name": "json", - "description": "Converts a valid JSON string into a JSON data type.", - "fixedParameters": [ - { - "name": "json", - "description": "The value to convert to JSON. The string must be a properly formatted JSON string.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(json: string): any", - "parameterTypeSignatures": [ - "json: string" - ] - }, - { - "name": "last", - "description": "Returns the last element of the array.", - "fixedParameters": [ - { - "name": "array", - "description": "The value to retrieve the last element.", - "type": "array", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(array: array): any", - "parameterTypeSignatures": [ - "array: array" - ] - }, - { - "name": "last", - "description": "Returns the last character of the string.", - "fixedParameters": [ - { - "name": "string", - "description": "The value to retrieve the last character.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(string: string): string", - "parameterTypeSignatures": [ - "string: string" - ] - }, - { - "name": "lastIndexOf", - "description": "Returns the last position of a value within a string. The comparison is case-insensitive.", - "fixedParameters": [ - { - "name": "stringToSearch", - "description": "The value that contains the item to find.", - "type": "string", - "required": true - }, - { - "name": "stringToFind", - "description": "The value to find.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(stringToSearch: string, stringToFind: string): int", - "parameterTypeSignatures": [ - "stringToSearch: string", - "stringToFind: string" - ] - }, - { - "name": "lastIndexOf", - "description": "Returns the last position of a value within an array.", - "fixedParameters": [ - { - "name": "array", - "description": "The array that contains the item to find.", - "type": "array", - "required": true - }, - { - "name": "itemToFind", - "description": "The value to find.", - "type": "any", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(array: array, itemToFind: any): int", - "parameterTypeSignatures": [ - "array: array", - "itemToFind: any" - ] - }, - { - "name": "length", - "description": "Returns the number of characters in a string, elements in an array, or root-level properties in an object.", - "fixedParameters": [ - { - "name": "arg", - "description": "The array to use for getting the number of elements, the string to use for getting the number of characters, or the object to use for getting the number of root-level properties.", - "type": "array | object | string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(arg: array | object | string): int", - "parameterTypeSignatures": [ - "arg: array | object | string" - ] - }, - { - "name": "loadFileAsBase64", - "description": "Loads the specified file as base64 string. File loading occurs during compilation, not at runtime. The maximum allowed size is 96 Kb.", - "fixedParameters": [ - { - "name": "filePath", - "description": "The path to the file that will be loaded", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(filePath: string): string", - "parameterTypeSignatures": [ - "filePath: string" - ] - }, - { - "name": "loadTextContent", - "description": "Loads the content of the specified file into a string. Content loading occurs during compilation, not at runtime. The maximum allowed content size is 131072 characters (including line endings).", - "fixedParameters": [ - { - "name": "filePath", - "description": "The path to the file that will be loaded", - "type": "string", - "required": true - }, - { - "name": "encoding", - "description": "File encoding. If not provided, UTF-8 will be used.", - "type": "'iso-8859-1' | 'us-ascii' | 'utf-16' | 'utf-16BE' | 'utf-8'", - "required": false - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(filePath: string, [encoding: 'iso-8859-1' | 'us-ascii' | 'utf-16' | 'utf-16BE' | 'utf-8']): string", - "parameterTypeSignatures": [ - "filePath: string", - "[encoding: 'iso-8859-1' | 'us-ascii' | 'utf-16' | 'utf-16BE' | 'utf-8']" - ] - }, - { - "name": "max", - "description": "Returns the maximum value from the specified integers.", - "fixedParameters": [], - "minimumArgumentCount": 1, - "variableParameter": { - "namePrefix": "int", - "description": "One of the integers used to calculate the maximum value", - "type": "int", - "minimumCount": 1 - }, - "flags": "default", - "typeSignature": "(... : int): int", - "parameterTypeSignatures": [ - "... : int" - ] - }, - { - "name": "max", - "description": "Returns the maximum value from an array of integers.", - "fixedParameters": [ - { - "name": "intArray", - "description": "The array of integers.", - "type": "array", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(intArray: array): int", - "parameterTypeSignatures": [ - "intArray: array" - ] - }, - { - "name": "min", - "description": "Returns the minimum value from the specified integers.", - "fixedParameters": [], - "minimumArgumentCount": 1, - "variableParameter": { - "namePrefix": "int", - "description": "One of the integers used to calculate the minimum value", - "type": "int", - "minimumCount": 1 - }, - "flags": "default", - "typeSignature": "(... : int): int", - "parameterTypeSignatures": [ - "... : int" - ] - }, - { - "name": "min", - "description": "Returns the minimum value from an array of integers.", - "fixedParameters": [ - { - "name": "intArray", - "description": "The array of integers.", - "type": "array", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(intArray: array): int", - "parameterTypeSignatures": [ - "intArray: array" - ] - }, - { - "name": "newGuid", - "description": "Returns a value in the format of a globally unique identifier. **This function can only be used in the default value for a parameter**.", - "fixedParameters": [], - "minimumArgumentCount": 0, - "maximumArgumentCount": 0, - "flags": "paramDefaultsOnly", - "typeSignature": "(): string", - "parameterTypeSignatures": [] - }, - { - "name": "padLeft", - "description": "Returns a right-aligned string by adding characters to the left until reaching the total specified length.", - "fixedParameters": [ - { - "name": "valueToPad", - "description": "The value to right-align.", - "type": "int | string", - "required": true - }, - { - "name": "totalLength", - "description": "The total number of characters in the returned string.", - "type": "int", - "required": true - }, - { - "name": "paddingCharacter", - "description": "The character to use for left-padding until the total length is reached. The default value is a space.", - "type": "string", - "required": false - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 3, - "flags": "default", - "typeSignature": "(valueToPad: int | string, totalLength: int, [paddingCharacter: string]): string", - "parameterTypeSignatures": [ - "valueToPad: int | string", - "totalLength: int", - "[paddingCharacter: string]" - ] - }, - { - "name": "range", - "description": "Creates an array of integers from a starting integer and containing a number of items.", - "fixedParameters": [ - { - "name": "startIndex", - "description": "The first integer in the array. The sum of startIndex and count must be no greater than 2147483647.", - "type": "int", - "required": true - }, - { - "name": "count", - "description": "The number of integers in the array. Must be non-negative integer up to 10000.", - "type": "int", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(startIndex: int, count: int): int[]", - "parameterTypeSignatures": [ - "startIndex: int", - "count: int" - ] - }, - { - "name": "replace", - "description": "Returns a new string with all instances of one string replaced by another string.", - "fixedParameters": [ - { - "name": "originalString", - "description": "The original string.", - "type": "string", - "required": true - }, - { - "name": "oldString", - "description": "The string to be removed from the original string.", - "type": "string", - "required": true - }, - { - "name": "newString", - "description": "The string to add in place of the removed string.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 3, - "maximumArgumentCount": 3, - "flags": "default", - "typeSignature": "(originalString: string, oldString: string, newString: string): string", - "parameterTypeSignatures": [ - "originalString: string", - "oldString: string", - "newString: string" - ] - }, - { - "name": "skip", - "description": "Returns an array with all the elements after the specified number in the array.", - "fixedParameters": [ - { - "name": "originalValue", - "description": "The array to use for skipping.", - "type": "array", - "required": true - }, - { - "name": "numberToSkip", - "description": "The number of elements to skip. If this value is 0 or less, all the elements in the value are returned. If it is larger than the length of the array, an empty array is returned.", - "type": "int", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(originalValue: array, numberToSkip: int): array", - "parameterTypeSignatures": [ - "originalValue: array", - "numberToSkip: int" - ] - }, - { - "name": "skip", - "description": "Returns a string with all the characters after the specified number in the string.", - "fixedParameters": [ - { - "name": "originalValue", - "description": "The string to use for skipping.", - "type": "string", - "required": true - }, - { - "name": "numberToSkip", - "description": "The number of characters to skip. If this value is 0 or less, all the characters in the value are returned. If it is larger than the length of the string, an empty string is returned.", - "type": "int", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(originalValue: string, numberToSkip: int): string", - "parameterTypeSignatures": [ - "originalValue: string", - "numberToSkip: int" - ] - }, - { - "name": "split", - "description": "Returns an array of strings that contains the substrings of the input string that are delimited by the specified delimiters.", - "fixedParameters": [ - { - "name": "inputString", - "description": "The string to split.", - "type": "string", - "required": true - }, - { - "name": "delimiter", - "description": "The delimiter to use for splitting the string.", - "type": "array | string", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(inputString: string, delimiter: array | string): array", - "parameterTypeSignatures": [ - "inputString: string", - "delimiter: array | string" - ] - }, - { - "name": "startsWith", - "description": "Determines whether a string starts with a value. The comparison is case-insensitive.", - "fixedParameters": [ - { - "name": "stringToSearch", - "description": "The value that contains the item to find.", - "type": "string", - "required": true - }, - { - "name": "stringToFind", - "description": "The value to find.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(stringToSearch: string, stringToFind: string): bool", - "parameterTypeSignatures": [ - "stringToSearch: string", - "stringToFind: string" - ] - }, - { - "name": "string", - "description": "Converts the specified value to a string.", - "fixedParameters": [ - { - "name": "valueToConvert", - "description": "The value to convert to string. Any type of value can be converted, including objects and arrays.", - "type": "any", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(valueToConvert: any): string", - "parameterTypeSignatures": [ - "valueToConvert: any" - ] - }, - { - "name": "substring", - "description": "Returns a substring that starts at the specified character position and contains the specified number of characters.", - "fixedParameters": [ - { - "name": "stringToParse", - "description": "The original string from which the substring is extracted.", - "type": "string", - "required": true - }, - { - "name": "startIndex", - "description": "The zero-based starting character position for the substring.", - "type": "int", - "required": true - }, - { - "name": "length", - "description": "The number of characters for the substring. Must refer to a location within the string. Must be zero or greater.", - "type": "int", - "required": false - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 3, - "flags": "default", - "typeSignature": "(stringToParse: string, startIndex: int, [length: int]): string", - "parameterTypeSignatures": [ - "stringToParse: string", - "startIndex: int", - "[length: int]" - ] - }, - { - "name": "take", - "description": "Returns an array with the specified number of elements from the start of the array.", - "fixedParameters": [ - { - "name": "originalValue", - "description": "The array to take the elements from.", - "type": "array", - "required": true - }, - { - "name": "numberToTake", - "description": "The number of elements to take. If this value is 0 or less, an empty array is returned. If it is larger than the length of the given array, all the elements in the array are returned.", - "type": "int", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(originalValue: array, numberToTake: int): array", - "parameterTypeSignatures": [ - "originalValue: array", - "numberToTake: int" - ] - }, - { - "name": "take", - "description": "Returns a string with the specified number of characters from the start of the string.", - "fixedParameters": [ - { - "name": "originalValue", - "description": "The string to take the elements from.", - "type": "string", - "required": true - }, - { - "name": "numberToTake", - "description": "The number of characters to take. If this value is 0 or less, an empty string is returned. If it is larger than the length of the given string, all the characters are returned.", - "type": "int", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(originalValue: string, numberToTake: int): string", - "parameterTypeSignatures": [ - "originalValue: string", - "numberToTake: int" - ] - }, - { - "name": "toLower", - "description": "Converts the specified string to lower case.", - "fixedParameters": [ - { - "name": "stringToChange", - "description": "The value to convert to lower case.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(stringToChange: string): string", - "parameterTypeSignatures": [ - "stringToChange: string" - ] - }, - { - "name": "toUpper", - "description": "Converts the specified string to upper case.", - "fixedParameters": [ - { - "name": "stringToChange", - "description": "The value to convert to upper case.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(stringToChange: string): string", - "parameterTypeSignatures": [ - "stringToChange: string" - ] - }, - { - "name": "trim", - "description": "Removes all leading and trailing white-space characters from the specified string.", - "fixedParameters": [ - { - "name": "stringToTrim", - "description": "The value to trim.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(stringToTrim: string): string", - "parameterTypeSignatures": [ - "stringToTrim: string" - ] - }, - { - "name": "union", - "description": "Returns a single object with all elements from the parameters. Duplicate keys are only included once.", - "fixedParameters": [], - "minimumArgumentCount": 2, - "variableParameter": { - "namePrefix": "object", - "description": "The first object to use for joining elements.", - "type": "object", - "minimumCount": 2 - }, - "flags": "default", - "typeSignature": "(... : object): object", - "parameterTypeSignatures": [ - "... : object" - ] - }, - { - "name": "union", - "description": "Returns a single array with all elements from the parameters. Duplicate values are only included once.", - "fixedParameters": [], - "minimumArgumentCount": 2, - "variableParameter": { - "namePrefix": "object", - "description": "The first array to use for joining elements.", - "type": "array", - "minimumCount": 2 - }, - "flags": "default", - "typeSignature": "(... : array): array", - "parameterTypeSignatures": [ - "... : array" - ] - }, - { - "name": "uniqueString", - "description": "Creates a deterministic hash string based on the values provided as parameters.", - "fixedParameters": [], - "minimumArgumentCount": 1, - "variableParameter": { - "namePrefix": "arg", - "description": "The value used in the hash function to create a unique string.", - "type": "string", - "minimumCount": 1 - }, - "flags": "default", - "typeSignature": "(... : string): string", - "parameterTypeSignatures": [ - "... : string" - ] - }, - { - "name": "uri", - "description": "Creates an absolute URI by combining the baseUri and the relativeUri string.", - "fixedParameters": [ - { - "name": "baseUri", - "description": "The base uri string.", - "type": "string", - "required": true - }, - { - "name": "relativeUri", - "description": "The relative uri string to add to the base uri string.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 2, - "maximumArgumentCount": 2, - "flags": "default", - "typeSignature": "(baseUri: string, relativeUri: string): string", - "parameterTypeSignatures": [ - "baseUri: string", - "relativeUri: string" - ] - }, - { - "name": "uriComponent", - "description": "Encodes a URI.", - "fixedParameters": [ - { - "name": "stringToEncode", - "description": "The value to encode.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(stringToEncode: string): string", - "parameterTypeSignatures": [ - "stringToEncode: string" - ] - }, - { - "name": "uriComponentToString", - "description": "Returns a string of a URI encoded value.", - "fixedParameters": [ - { - "name": "uriEncodedString", - "description": "The URI encoded value to convert to a string.", - "type": "string", - "required": true - } - ], - "minimumArgumentCount": 1, - "maximumArgumentCount": 1, - "flags": "default", - "typeSignature": "(uriEncodedString: string): string", - "parameterTypeSignatures": [ - "uriEncodedString: string" - ] - }, - { - "name": "utcNow", - "description": "Returns the current (UTC) datetime value in the specified format. If no format is provided, the ISO 8601 (yyyyMMddTHHmmssZ) format is used. **This function can only be used in the default value for a parameter**.", - "fixedParameters": [ - { - "name": "format", - "description": "The format. Use either [standard format strings](https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings) or [custom format strings](https://docs.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings).", - "type": "string", - "required": false - } - ], - "minimumArgumentCount": 0, - "maximumArgumentCount": 1, - "flags": "paramDefaultsOnly", - "typeSignature": "([format: string]): string", - "parameterTypeSignatures": [ - "[format: string]" - ] - } +[ + { + "name": "any", + "description": "Converts the specified value to the `any` type.", + "fixedParameters": [ + { + "name": "value", + "description": "The value to convert to `any` type", + "type": "any", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(value: any): any", + "parameterTypeSignatures": [ + "value: any" + ] + }, + { + "name": "array", + "description": "Converts the value to an array.", + "fixedParameters": [ + { + "name": "valueToConvert", + "description": "The value to convert to an array.", + "type": "any", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(valueToConvert: any): array", + "parameterTypeSignatures": [ + "valueToConvert: any" + ] + }, + { + "name": "base64", + "description": "Returns the base64 representation of the input string.", + "fixedParameters": [ + { + "name": "inputString", + "description": "The value to return as a base64 representation.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(inputString: string): string", + "parameterTypeSignatures": [ + "inputString: string" + ] + }, + { + "name": "base64ToJson", + "description": "Converts a base64 representation to a JSON object.", + "fixedParameters": [ + { + "name": "base64Value", + "description": "The base64 representation to convert to a JSON object.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(base64Value: string): any", + "parameterTypeSignatures": [ + "base64Value: string" + ] + }, + { + "name": "base64ToString", + "description": "Converts a base64 representation to a string.", + "fixedParameters": [ + { + "name": "base64Value", + "description": "The base64 representation to convert to a string.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(base64Value: string): string", + "parameterTypeSignatures": [ + "base64Value: string" + ] + }, + { + "name": "bool", + "description": "Converts the parameter to a boolean.", + "fixedParameters": [ + { + "name": "value", + "description": "The value to convert to a boolean.", + "type": "any", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(value: any): bool", + "parameterTypeSignatures": [ + "value: any" + ] + }, + { + "name": "coalesce", + "description": "Returns first non-null value from the parameters. Empty strings, empty arrays, and empty objects are not null.", + "fixedParameters": [], + "minimumArgumentCount": 1, + "variableParameter": { + "namePrefix": "arg", + "description": "The value to coalesce", + "type": "any", + "minimumCount": 1 + }, + "flags": "default", + "typeSignature": "(... : any): any", + "parameterTypeSignatures": [ + "... : any" + ] + }, + { + "name": "concat", + "description": "Combines multiple arrays and returns the concatenated array.", + "fixedParameters": [], + "minimumArgumentCount": 1, + "variableParameter": { + "namePrefix": "arg", + "description": "The array for concatenation", + "type": "array", + "minimumCount": 1 + }, + "flags": "default", + "typeSignature": "(... : array): array", + "parameterTypeSignatures": [ + "... : array" + ] + }, + { + "name": "concat", + "description": "Combines multiple string, integer, or boolean values and returns them as a concatenated string.", + "fixedParameters": [], + "minimumArgumentCount": 1, + "variableParameter": { + "namePrefix": "arg", + "description": "The string, int, or boolean value for concatenation", + "type": "bool | int | string", + "minimumCount": 1 + }, + "flags": "default", + "typeSignature": "(... : bool | int | string): string", + "parameterTypeSignatures": [ + "... : bool | int | string" + ] + }, + { + "name": "contains", + "description": "Checks whether an object contains a property. The property name comparison is case-insensitive.", + "fixedParameters": [ + { + "name": "object", + "description": "The object", + "type": "object", + "required": true + }, + { + "name": "propertyName", + "description": "The property name.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(object: object, propertyName: string): bool", + "parameterTypeSignatures": [ + "object: object", + "propertyName: string" + ] + }, + { + "name": "contains", + "description": "Checks whether an array contains a value. For arrays of simple values, exact match is done (case-sensitive for strings). For arrays of objects or arrays a deep comparison is done.", + "fixedParameters": [ + { + "name": "array", + "description": "The array", + "type": "array", + "required": true + }, + { + "name": "itemToFind", + "description": "The value to find.", + "type": "any", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(array: array, itemToFind: any): bool", + "parameterTypeSignatures": [ + "array: array", + "itemToFind: any" + ] + }, + { + "name": "contains", + "description": "Checks whether a string contains a substring. The string comparison is case-sensitive.", + "fixedParameters": [ + { + "name": "string", + "description": "The string.", + "type": "string", + "required": true + }, + { + "name": "itemToFind", + "description": "The value to find.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(string: string, itemToFind: string): bool", + "parameterTypeSignatures": [ + "string: string", + "itemToFind: string" + ] + }, + { + "name": "dataUri", + "description": "Converts a value to a data URI.", + "fixedParameters": [ + { + "name": "valueToConvert", + "description": "The value to convert to a data URI.", + "type": "any", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(valueToConvert: any): string", + "parameterTypeSignatures": [ + "valueToConvert: any" + ] + }, + { + "name": "dataUriToString", + "description": "Converts a data URI formatted value to a string.", + "fixedParameters": [ + { + "name": "dataUriToConvert", + "description": "The data URI value to convert.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(dataUriToConvert: string): string", + "parameterTypeSignatures": [ + "dataUriToConvert: string" + ] + }, + { + "name": "dateTimeAdd", + "description": "Adds a time duration to a base value. ISO 8601 format is expected.", + "fixedParameters": [ + { + "name": "base", + "description": "The starting datetime value for the addition. [Use ISO 8601 timestamp format](https://en.wikipedia.org/wiki/ISO_8601).", + "type": "string", + "required": true + }, + { + "name": "duration", + "description": "The time value to add to the base. It can be a negative value. Use [ISO 8601 duration format](https://en.wikipedia.org/wiki/ISO_8601#Durations).", + "type": "string", + "required": true + }, + { + "name": "format", + "description": "The output format for the date time result. If not provided, the format of the base value is used. Use either [standard format strings](https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings) or [custom format strings](https://docs.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings).", + "type": "string", + "required": false + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 3, + "flags": "default", + "typeSignature": "(base: string, duration: string, [format: string]): string", + "parameterTypeSignatures": [ + "base: string", + "duration: string", + "[format: string]" + ] + }, + { + "name": "empty", + "description": "Determines if an array, object, or string is empty.", + "fixedParameters": [ + { + "name": "itemToTest", + "description": "The value to check if it is empty.", + "type": "array | null | object | string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(itemToTest: array | null | object | string): bool", + "parameterTypeSignatures": [ + "itemToTest: array | null | object | string" + ] + }, + { + "name": "endsWith", + "description": "Determines whether a string ends with a value. The comparison is case-insensitive.", + "fixedParameters": [ + { + "name": "stringToSearch", + "description": "The value that contains the item to find.", + "type": "string", + "required": true + }, + { + "name": "stringToFind", + "description": "The value to find.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(stringToSearch: string, stringToFind: string): bool", + "parameterTypeSignatures": [ + "stringToSearch: string", + "stringToFind: string" + ] + }, + { + "name": "first", + "description": "Returns the first element of the array.", + "fixedParameters": [ + { + "name": "array", + "description": "The value to retrieve the first element.", + "type": "array", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(array: array): any", + "parameterTypeSignatures": [ + "array: array" + ] + }, + { + "name": "first", + "description": "Returns the first character of the string.", + "fixedParameters": [ + { + "name": "string", + "description": "The value to retrieve the first character.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(string: string): string", + "parameterTypeSignatures": [ + "string: string" + ] + }, + { + "name": "format", + "description": "Creates a formatted string from input values.", + "fixedParameters": [ + { + "name": "formatString", + "description": "The composite format string.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "variableParameter": { + "namePrefix": "arg", + "description": "The value to include in the formatted string.", + "type": "any", + "minimumCount": 0 + }, + "flags": "default", + "typeSignature": "(formatString: string, ... : any): string", + "parameterTypeSignatures": [ + "formatString: string", + "... : any" + ] + }, + { + "name": "guid", + "description": "Creates a value in the format of a globally unique identifier based on the values provided as parameters.", + "fixedParameters": [], + "minimumArgumentCount": 1, + "variableParameter": { + "namePrefix": "arg", + "description": "The value used in the hash function to create the GUID.", + "type": "string", + "minimumCount": 1 + }, + "flags": "default", + "typeSignature": "(... : string): string", + "parameterTypeSignatures": [ + "... : string" + ] + }, + { + "name": "indexOf", + "description": "Returns the first position of a value within a string. The comparison is case-insensitive.", + "fixedParameters": [ + { + "name": "stringToSearch", + "description": "The value that contains the item to find.", + "type": "string", + "required": true + }, + { + "name": "stringToFind", + "description": "The value to find.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(stringToSearch: string, stringToFind: string): int", + "parameterTypeSignatures": [ + "stringToSearch: string", + "stringToFind: string" + ] + }, + { + "name": "indexOf", + "description": "Returns the first position of a value within an array. For arrays of simple values, exact match is done (case-sensitive for strings). For arrays of objects or arrays a deep comparison is done.", + "fixedParameters": [ + { + "name": "array", + "description": "The array that contains the item to find.", + "type": "array", + "required": true + }, + { + "name": "itemToFind", + "description": "The value to find.", + "type": "any", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(array: array, itemToFind: any): int", + "parameterTypeSignatures": [ + "array: array", + "itemToFind: any" + ] + }, + { + "name": "int", + "description": "Converts the specified value to an integer.", + "fixedParameters": [ + { + "name": "valueToConvert", + "description": "The value to convert to an integer.", + "type": "int | string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(valueToConvert: int | string): int", + "parameterTypeSignatures": [ + "valueToConvert: int | string" + ] + }, + { + "name": "intersection", + "description": "Returns a single object with the common elements from the parameters.", + "fixedParameters": [], + "minimumArgumentCount": 2, + "variableParameter": { + "namePrefix": "object", + "description": "The object to use for finding common elements.", + "type": "object", + "minimumCount": 2 + }, + "flags": "default", + "typeSignature": "(... : object): object", + "parameterTypeSignatures": [ + "... : object" + ] + }, + { + "name": "intersection", + "description": "Returns a single array with the common elements from the parameters.", + "fixedParameters": [], + "minimumArgumentCount": 2, + "variableParameter": { + "namePrefix": "array", + "description": "The array to use for finding common elements.", + "type": "array", + "minimumCount": 2 + }, + "flags": "default", + "typeSignature": "(... : array): array", + "parameterTypeSignatures": [ + "... : array" + ] + }, + { + "name": "items", + "description": "Returns an array of keys and values for an object. Elements are consistently ordered alphabetically by key.", + "fixedParameters": [ + { + "name": "object", + "description": "The object to return keys and values for", + "type": "object", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(object: object): object[]", + "parameterTypeSignatures": [ + "object: object" + ] + }, + { + "name": "json", + "description": "Converts a valid JSON string into a JSON data type.", + "fixedParameters": [ + { + "name": "json", + "description": "The value to convert to JSON. The string must be a properly formatted JSON string.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(json: string): any", + "parameterTypeSignatures": [ + "json: string" + ] + }, + { + "name": "last", + "description": "Returns the last element of the array.", + "fixedParameters": [ + { + "name": "array", + "description": "The value to retrieve the last element.", + "type": "array", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(array: array): any", + "parameterTypeSignatures": [ + "array: array" + ] + }, + { + "name": "last", + "description": "Returns the last character of the string.", + "fixedParameters": [ + { + "name": "string", + "description": "The value to retrieve the last character.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(string: string): string", + "parameterTypeSignatures": [ + "string: string" + ] + }, + { + "name": "lastIndexOf", + "description": "Returns the last position of a value within a string. The comparison is case-insensitive.", + "fixedParameters": [ + { + "name": "stringToSearch", + "description": "The value that contains the item to find.", + "type": "string", + "required": true + }, + { + "name": "stringToFind", + "description": "The value to find.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(stringToSearch: string, stringToFind: string): int", + "parameterTypeSignatures": [ + "stringToSearch: string", + "stringToFind: string" + ] + }, + { + "name": "lastIndexOf", + "description": "Returns the last position of a value within an array. For arrays of simple values, exact match is done (case-sensitive for strings). For arrays of objects or arrays a deep comparison is done.", + "fixedParameters": [ + { + "name": "array", + "description": "The array that contains the item to find.", + "type": "array", + "required": true + }, + { + "name": "itemToFind", + "description": "The value to find.", + "type": "any", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(array: array, itemToFind: any): int", + "parameterTypeSignatures": [ + "array: array", + "itemToFind: any" + ] + }, + { + "name": "length", + "description": "Returns the number of characters in a string, elements in an array, or root-level properties in an object.", + "fixedParameters": [ + { + "name": "arg", + "description": "The array to use for getting the number of elements, the string to use for getting the number of characters, or the object to use for getting the number of root-level properties.", + "type": "array | object | string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(arg: array | object | string): int", + "parameterTypeSignatures": [ + "arg: array | object | string" + ] + }, + { + "name": "loadFileAsBase64", + "description": "Loads the specified file as base64 string. File loading occurs during compilation, not at runtime. The maximum allowed size is 96 Kb.", + "fixedParameters": [ + { + "name": "filePath", + "description": "The path to the file that will be loaded", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(filePath: string): string", + "parameterTypeSignatures": [ + "filePath: string" + ] + }, + { + "name": "loadTextContent", + "description": "Loads the content of the specified file into a string. Content loading occurs during compilation, not at runtime. The maximum allowed content size is 131072 characters (including line endings).", + "fixedParameters": [ + { + "name": "filePath", + "description": "The path to the file that will be loaded", + "type": "string", + "required": true + }, + { + "name": "encoding", + "description": "File encoding. If not provided, UTF-8 will be used.", + "type": "'iso-8859-1' | 'us-ascii' | 'utf-16' | 'utf-16BE' | 'utf-8'", + "required": false + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(filePath: string, [encoding: 'iso-8859-1' | 'us-ascii' | 'utf-16' | 'utf-16BE' | 'utf-8']): string", + "parameterTypeSignatures": [ + "filePath: string", + "[encoding: 'iso-8859-1' | 'us-ascii' | 'utf-16' | 'utf-16BE' | 'utf-8']" + ] + }, + { + "name": "max", + "description": "Returns the maximum value from the specified integers.", + "fixedParameters": [], + "minimumArgumentCount": 1, + "variableParameter": { + "namePrefix": "int", + "description": "One of the integers used to calculate the maximum value", + "type": "int", + "minimumCount": 1 + }, + "flags": "default", + "typeSignature": "(... : int): int", + "parameterTypeSignatures": [ + "... : int" + ] + }, + { + "name": "max", + "description": "Returns the maximum value from an array of integers.", + "fixedParameters": [ + { + "name": "intArray", + "description": "The array of integers.", + "type": "array", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(intArray: array): int", + "parameterTypeSignatures": [ + "intArray: array" + ] + }, + { + "name": "min", + "description": "Returns the minimum value from the specified integers.", + "fixedParameters": [], + "minimumArgumentCount": 1, + "variableParameter": { + "namePrefix": "int", + "description": "One of the integers used to calculate the minimum value", + "type": "int", + "minimumCount": 1 + }, + "flags": "default", + "typeSignature": "(... : int): int", + "parameterTypeSignatures": [ + "... : int" + ] + }, + { + "name": "min", + "description": "Returns the minimum value from an array of integers.", + "fixedParameters": [ + { + "name": "intArray", + "description": "The array of integers.", + "type": "array", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(intArray: array): int", + "parameterTypeSignatures": [ + "intArray: array" + ] + }, + { + "name": "newGuid", + "description": "Returns a value in the format of a globally unique identifier. **This function can only be used in the default value for a parameter**.", + "fixedParameters": [], + "minimumArgumentCount": 0, + "maximumArgumentCount": 0, + "flags": "paramDefaultsOnly", + "typeSignature": "(): string", + "parameterTypeSignatures": [] + }, + { + "name": "padLeft", + "description": "Returns a right-aligned string by adding characters to the left until reaching the total specified length.", + "fixedParameters": [ + { + "name": "valueToPad", + "description": "The value to right-align.", + "type": "int | string", + "required": true + }, + { + "name": "totalLength", + "description": "The total number of characters in the returned string.", + "type": "int", + "required": true + }, + { + "name": "paddingCharacter", + "description": "The character to use for left-padding until the total length is reached. The default value is a space.", + "type": "string", + "required": false + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 3, + "flags": "default", + "typeSignature": "(valueToPad: int | string, totalLength: int, [paddingCharacter: string]): string", + "parameterTypeSignatures": [ + "valueToPad: int | string", + "totalLength: int", + "[paddingCharacter: string]" + ] + }, + { + "name": "range", + "description": "Creates an array of integers from a starting integer and containing a number of items.", + "fixedParameters": [ + { + "name": "startIndex", + "description": "The first integer in the array. The sum of startIndex and count must be no greater than 2147483647.", + "type": "int", + "required": true + }, + { + "name": "count", + "description": "The number of integers in the array. Must be non-negative integer up to 10000.", + "type": "int", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(startIndex: int, count: int): int[]", + "parameterTypeSignatures": [ + "startIndex: int", + "count: int" + ] + }, + { + "name": "replace", + "description": "Returns a new string with all instances of one string replaced by another string.", + "fixedParameters": [ + { + "name": "originalString", + "description": "The original string.", + "type": "string", + "required": true + }, + { + "name": "oldString", + "description": "The string to be removed from the original string.", + "type": "string", + "required": true + }, + { + "name": "newString", + "description": "The string to add in place of the removed string.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 3, + "maximumArgumentCount": 3, + "flags": "default", + "typeSignature": "(originalString: string, oldString: string, newString: string): string", + "parameterTypeSignatures": [ + "originalString: string", + "oldString: string", + "newString: string" + ] + }, + { + "name": "skip", + "description": "Returns an array with all the elements after the specified number in the array.", + "fixedParameters": [ + { + "name": "originalValue", + "description": "The array to use for skipping.", + "type": "array", + "required": true + }, + { + "name": "numberToSkip", + "description": "The number of elements to skip. If this value is 0 or less, all the elements in the value are returned. If it is larger than the length of the array, an empty array is returned.", + "type": "int", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(originalValue: array, numberToSkip: int): array", + "parameterTypeSignatures": [ + "originalValue: array", + "numberToSkip: int" + ] + }, + { + "name": "skip", + "description": "Returns a string with all the characters after the specified number in the string.", + "fixedParameters": [ + { + "name": "originalValue", + "description": "The string to use for skipping.", + "type": "string", + "required": true + }, + { + "name": "numberToSkip", + "description": "The number of characters to skip. If this value is 0 or less, all the characters in the value are returned. If it is larger than the length of the string, an empty string is returned.", + "type": "int", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(originalValue: string, numberToSkip: int): string", + "parameterTypeSignatures": [ + "originalValue: string", + "numberToSkip: int" + ] + }, + { + "name": "split", + "description": "Returns an array of strings that contains the substrings of the input string that are delimited by the specified delimiters.", + "fixedParameters": [ + { + "name": "inputString", + "description": "The string to split.", + "type": "string", + "required": true + }, + { + "name": "delimiter", + "description": "The delimiter to use for splitting the string.", + "type": "array | string", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(inputString: string, delimiter: array | string): array", + "parameterTypeSignatures": [ + "inputString: string", + "delimiter: array | string" + ] + }, + { + "name": "startsWith", + "description": "Determines whether a string starts with a value. The comparison is case-insensitive.", + "fixedParameters": [ + { + "name": "stringToSearch", + "description": "The value that contains the item to find.", + "type": "string", + "required": true + }, + { + "name": "stringToFind", + "description": "The value to find.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(stringToSearch: string, stringToFind: string): bool", + "parameterTypeSignatures": [ + "stringToSearch: string", + "stringToFind: string" + ] + }, + { + "name": "string", + "description": "Converts the specified value to a string.", + "fixedParameters": [ + { + "name": "valueToConvert", + "description": "The value to convert to string. Any type of value can be converted, including objects and arrays.", + "type": "any", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(valueToConvert: any): string", + "parameterTypeSignatures": [ + "valueToConvert: any" + ] + }, + { + "name": "substring", + "description": "Returns a substring that starts at the specified character position and contains the specified number of characters.", + "fixedParameters": [ + { + "name": "stringToParse", + "description": "The original string from which the substring is extracted.", + "type": "string", + "required": true + }, + { + "name": "startIndex", + "description": "The zero-based starting character position for the substring.", + "type": "int", + "required": true + }, + { + "name": "length", + "description": "The number of characters for the substring. Must refer to a location within the string. Must be zero or greater.", + "type": "int", + "required": false + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 3, + "flags": "default", + "typeSignature": "(stringToParse: string, startIndex: int, [length: int]): string", + "parameterTypeSignatures": [ + "stringToParse: string", + "startIndex: int", + "[length: int]" + ] + }, + { + "name": "take", + "description": "Returns an array with the specified number of elements from the start of the array.", + "fixedParameters": [ + { + "name": "originalValue", + "description": "The array to take the elements from.", + "type": "array", + "required": true + }, + { + "name": "numberToTake", + "description": "The number of elements to take. If this value is 0 or less, an empty array is returned. If it is larger than the length of the given array, all the elements in the array are returned.", + "type": "int", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(originalValue: array, numberToTake: int): array", + "parameterTypeSignatures": [ + "originalValue: array", + "numberToTake: int" + ] + }, + { + "name": "take", + "description": "Returns a string with the specified number of characters from the start of the string.", + "fixedParameters": [ + { + "name": "originalValue", + "description": "The string to take the elements from.", + "type": "string", + "required": true + }, + { + "name": "numberToTake", + "description": "The number of characters to take. If this value is 0 or less, an empty string is returned. If it is larger than the length of the given string, all the characters are returned.", + "type": "int", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(originalValue: string, numberToTake: int): string", + "parameterTypeSignatures": [ + "originalValue: string", + "numberToTake: int" + ] + }, + { + "name": "toLower", + "description": "Converts the specified string to lower case.", + "fixedParameters": [ + { + "name": "stringToChange", + "description": "The value to convert to lower case.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(stringToChange: string): string", + "parameterTypeSignatures": [ + "stringToChange: string" + ] + }, + { + "name": "toUpper", + "description": "Converts the specified string to upper case.", + "fixedParameters": [ + { + "name": "stringToChange", + "description": "The value to convert to upper case.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(stringToChange: string): string", + "parameterTypeSignatures": [ + "stringToChange: string" + ] + }, + { + "name": "trim", + "description": "Removes all leading and trailing white-space characters from the specified string.", + "fixedParameters": [ + { + "name": "stringToTrim", + "description": "The value to trim.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(stringToTrim: string): string", + "parameterTypeSignatures": [ + "stringToTrim: string" + ] + }, + { + "name": "union", + "description": "Returns a single object with all elements from the parameters. Duplicate keys are only included once.", + "fixedParameters": [], + "minimumArgumentCount": 2, + "variableParameter": { + "namePrefix": "object", + "description": "The first object to use for joining elements.", + "type": "object", + "minimumCount": 2 + }, + "flags": "default", + "typeSignature": "(... : object): object", + "parameterTypeSignatures": [ + "... : object" + ] + }, + { + "name": "union", + "description": "Returns a single array with all elements from the parameters. Duplicate values are only included once.", + "fixedParameters": [], + "minimumArgumentCount": 2, + "variableParameter": { + "namePrefix": "object", + "description": "The first array to use for joining elements.", + "type": "array", + "minimumCount": 2 + }, + "flags": "default", + "typeSignature": "(... : array): array", + "parameterTypeSignatures": [ + "... : array" + ] + }, + { + "name": "uniqueString", + "description": "Creates a deterministic hash string based on the values provided as parameters.", + "fixedParameters": [], + "minimumArgumentCount": 1, + "variableParameter": { + "namePrefix": "arg", + "description": "The value used in the hash function to create a unique string.", + "type": "string", + "minimumCount": 1 + }, + "flags": "default", + "typeSignature": "(... : string): string", + "parameterTypeSignatures": [ + "... : string" + ] + }, + { + "name": "uri", + "description": "Creates an absolute URI by combining the baseUri and the relativeUri string.", + "fixedParameters": [ + { + "name": "baseUri", + "description": "The base uri string.", + "type": "string", + "required": true + }, + { + "name": "relativeUri", + "description": "The relative uri string to add to the base uri string.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 2, + "maximumArgumentCount": 2, + "flags": "default", + "typeSignature": "(baseUri: string, relativeUri: string): string", + "parameterTypeSignatures": [ + "baseUri: string", + "relativeUri: string" + ] + }, + { + "name": "uriComponent", + "description": "Encodes a URI.", + "fixedParameters": [ + { + "name": "stringToEncode", + "description": "The value to encode.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(stringToEncode: string): string", + "parameterTypeSignatures": [ + "stringToEncode: string" + ] + }, + { + "name": "uriComponentToString", + "description": "Returns a string of a URI encoded value.", + "fixedParameters": [ + { + "name": "uriEncodedString", + "description": "The URI encoded value to convert to a string.", + "type": "string", + "required": true + } + ], + "minimumArgumentCount": 1, + "maximumArgumentCount": 1, + "flags": "default", + "typeSignature": "(uriEncodedString: string): string", + "parameterTypeSignatures": [ + "uriEncodedString: string" + ] + }, + { + "name": "utcNow", + "description": "Returns the current (UTC) datetime value in the specified format. If no format is provided, the ISO 8601 (yyyyMMddTHHmmssZ) format is used. **This function can only be used in the default value for a parameter**.", + "fixedParameters": [ + { + "name": "format", + "description": "The format. Use either [standard format strings](https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings) or [custom format strings](https://docs.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings).", + "type": "string", + "required": false + } + ], + "minimumArgumentCount": 0, + "maximumArgumentCount": 1, + "flags": "paramDefaultsOnly", + "typeSignature": "([format: string]): string", + "parameterTypeSignatures": [ + "[format: string]" + ] + } ] \ No newline at end of file diff --git a/src/Bicep.Core/Semantics/Namespaces/SystemNamespaceType.cs b/src/Bicep.Core/Semantics/Namespaces/SystemNamespaceType.cs index 2839a1dc55e..8cd898f0095 100644 --- a/src/Bicep.Core/Semantics/Namespaces/SystemNamespaceType.cs +++ b/src/Bicep.Core/Semantics/Namespaces/SystemNamespaceType.cs @@ -30,7 +30,7 @@ public static class SystemNamespaceType public const string lastDescription = "Returns the last element of the array, or last character of the string."; public const string minDescription = "Returns the minimum value from an array of integers or a comma-separated list of integers."; public const string maxDescription = "Returns the maximum value from an array of integers or a comma-separated list of integers."; - + public static NamespaceSettings Settings { get; } = new( IsSingleton: true, BicepProviderName: BuiltInName, @@ -212,7 +212,7 @@ public static class SystemNamespaceType new FunctionOverloadBuilder("contains") .WithReturnType(LanguageConstants.Bool) .WithGenericDescription(containsDescription) - .WithDescription("Checks whether an array contains a value.") + .WithDescription("Checks whether an array contains a value. For arrays of simple values, exact match is done (case-sensitive for strings). For arrays of objects or arrays a deep comparison is done.") .WithRequiredParameter("array", LanguageConstants.Array, "The array") .WithRequiredParameter("itemToFind", LanguageConstants.Any, "The value to find.") .Build(), @@ -290,7 +290,7 @@ public static class SystemNamespaceType new FunctionOverloadBuilder("indexOf") .WithReturnType(LanguageConstants.Int) - .WithGenericDescription("Returns the first position of a value within an array.") + .WithGenericDescription("Returns the first position of a value within an array. For arrays of simple values, exact match is done (case-sensitive for strings). For arrays of objects or arrays a deep comparison is done.") .WithRequiredParameter("array", LanguageConstants.Array, "The array that contains the item to find.") .WithRequiredParameter("itemToFind", LanguageConstants.Any, "The value to find.") .Build(), @@ -304,7 +304,7 @@ public static class SystemNamespaceType new FunctionOverloadBuilder("lastIndexOf") .WithReturnType(LanguageConstants.Int) - .WithGenericDescription("Returns the last position of a value within an array.") + .WithGenericDescription("Returns the last position of a value within an array. For arrays of simple values, exact match is done (case-sensitive for strings). For arrays of objects or arrays a deep comparison is done.") .WithRequiredParameter("array", LanguageConstants.Array, "The array that contains the item to find.") .WithRequiredParameter("itemToFind", LanguageConstants.Any, "The value to find.") .Build(), @@ -745,7 +745,7 @@ static void ValidateLength(string decoratorName, DecoratorSyntax decoratorSyntax SingleArgumentSelector(decoratorSyntax) is ArraySyntax allowedValues && allowedValues.Items.All(item => item.Value is not ArraySyntax)) { - /* + /* * ARM handles array params with allowed values differently. If none of items of * the allowed values is array, it will check if the parameter value is a subset * of the allowed values.