@azure/app-configuration 1.9.2-alpha.20251029.1 → 1.9.2-alpha.20251105.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/README.md +15 -9
  2. package/dist/browser/appConfigurationClient.d.ts +2 -3
  3. package/dist/browser/appConfigurationClient.d.ts.map +1 -1
  4. package/dist/browser/appConfigurationClient.js.map +1 -1
  5. package/dist/browser/featureFlag.d.ts +0 -1
  6. package/dist/browser/featureFlag.d.ts.map +1 -1
  7. package/dist/browser/featureFlag.js +0 -4
  8. package/dist/browser/featureFlag.js.map +1 -1
  9. package/dist/browser/index.d.ts +0 -1
  10. package/dist/browser/index.d.ts.map +1 -1
  11. package/dist/browser/index.js +0 -1
  12. package/dist/browser/index.js.map +1 -1
  13. package/dist/browser/internal/helpers.d.ts +1 -2
  14. package/dist/browser/internal/helpers.d.ts.map +1 -1
  15. package/dist/browser/internal/helpers.js +0 -12
  16. package/dist/browser/internal/helpers.js.map +1 -1
  17. package/dist/browser/internal/jsonModels.d.ts +1 -8
  18. package/dist/browser/internal/jsonModels.d.ts.map +1 -1
  19. package/dist/browser/internal/jsonModels.js.map +1 -1
  20. package/dist/browser/internal/queryParamPolicy.d.ts.map +1 -1
  21. package/dist/browser/internal/queryParamPolicy.js +38 -33
  22. package/dist/browser/internal/queryParamPolicy.js.map +1 -1
  23. package/dist/browser/internal/syncTokenPolicy.js +1 -1
  24. package/dist/browser/internal/syncTokenPolicy.js.map +1 -1
  25. package/dist/browser/models.d.ts +4 -5
  26. package/dist/browser/models.d.ts.map +1 -1
  27. package/dist/browser/models.js.map +1 -1
  28. package/dist/browser/secretReference.d.ts +1 -1
  29. package/dist/browser/secretReference.js +1 -1
  30. package/dist/browser/secretReference.js.map +1 -1
  31. package/dist/commonjs/appConfigurationClient.d.ts +2 -3
  32. package/dist/commonjs/appConfigurationClient.d.ts.map +1 -1
  33. package/dist/commonjs/appConfigurationClient.js.map +1 -1
  34. package/dist/commonjs/featureFlag.d.ts +0 -1
  35. package/dist/commonjs/featureFlag.d.ts.map +1 -1
  36. package/dist/commonjs/featureFlag.js +0 -4
  37. package/dist/commonjs/featureFlag.js.map +1 -1
  38. package/dist/commonjs/index.d.ts +0 -1
  39. package/dist/commonjs/index.d.ts.map +1 -1
  40. package/dist/commonjs/index.js +1 -5
  41. package/dist/commonjs/index.js.map +1 -1
  42. package/dist/commonjs/internal/helpers.d.ts +1 -2
  43. package/dist/commonjs/internal/helpers.d.ts.map +1 -1
  44. package/dist/commonjs/internal/helpers.js +0 -12
  45. package/dist/commonjs/internal/helpers.js.map +1 -1
  46. package/dist/commonjs/internal/jsonModels.d.ts +1 -8
  47. package/dist/commonjs/internal/jsonModels.d.ts.map +1 -1
  48. package/dist/commonjs/internal/jsonModels.js.map +1 -1
  49. package/dist/commonjs/internal/queryParamPolicy.d.ts.map +1 -1
  50. package/dist/commonjs/internal/queryParamPolicy.js +38 -33
  51. package/dist/commonjs/internal/queryParamPolicy.js.map +1 -1
  52. package/dist/commonjs/internal/syncTokenPolicy.js +1 -1
  53. package/dist/commonjs/internal/syncTokenPolicy.js.map +1 -1
  54. package/dist/commonjs/models.d.ts +4 -5
  55. package/dist/commonjs/models.d.ts.map +1 -1
  56. package/dist/commonjs/models.js.map +1 -1
  57. package/dist/commonjs/secretReference.d.ts +1 -1
  58. package/dist/commonjs/secretReference.js +1 -1
  59. package/dist/commonjs/secretReference.js.map +1 -1
  60. package/dist/esm/appConfigurationClient.d.ts +2 -3
  61. package/dist/esm/appConfigurationClient.d.ts.map +1 -1
  62. package/dist/esm/appConfigurationClient.js.map +1 -1
  63. package/dist/esm/featureFlag.d.ts +0 -1
  64. package/dist/esm/featureFlag.d.ts.map +1 -1
  65. package/dist/esm/featureFlag.js +0 -4
  66. package/dist/esm/featureFlag.js.map +1 -1
  67. package/dist/esm/index.d.ts +0 -1
  68. package/dist/esm/index.d.ts.map +1 -1
  69. package/dist/esm/index.js +0 -1
  70. package/dist/esm/index.js.map +1 -1
  71. package/dist/esm/internal/helpers.d.ts +1 -2
  72. package/dist/esm/internal/helpers.d.ts.map +1 -1
  73. package/dist/esm/internal/helpers.js +0 -12
  74. package/dist/esm/internal/helpers.js.map +1 -1
  75. package/dist/esm/internal/jsonModels.d.ts +1 -8
  76. package/dist/esm/internal/jsonModels.d.ts.map +1 -1
  77. package/dist/esm/internal/jsonModels.js.map +1 -1
  78. package/dist/esm/internal/queryParamPolicy.d.ts.map +1 -1
  79. package/dist/esm/internal/queryParamPolicy.js +38 -33
  80. package/dist/esm/internal/queryParamPolicy.js.map +1 -1
  81. package/dist/esm/internal/syncTokenPolicy.js +1 -1
  82. package/dist/esm/internal/syncTokenPolicy.js.map +1 -1
  83. package/dist/esm/models.d.ts +4 -5
  84. package/dist/esm/models.d.ts.map +1 -1
  85. package/dist/esm/models.js.map +1 -1
  86. package/dist/esm/secretReference.d.ts +1 -1
  87. package/dist/esm/secretReference.js +1 -1
  88. package/dist/esm/secretReference.js.map +1 -1
  89. package/dist/react-native/appConfigurationClient.d.ts +2 -3
  90. package/dist/react-native/appConfigurationClient.d.ts.map +1 -1
  91. package/dist/react-native/appConfigurationClient.js.map +1 -1
  92. package/dist/react-native/featureFlag.d.ts +0 -1
  93. package/dist/react-native/featureFlag.d.ts.map +1 -1
  94. package/dist/react-native/featureFlag.js +0 -4
  95. package/dist/react-native/featureFlag.js.map +1 -1
  96. package/dist/react-native/index.d.ts +0 -1
  97. package/dist/react-native/index.d.ts.map +1 -1
  98. package/dist/react-native/index.js +0 -1
  99. package/dist/react-native/index.js.map +1 -1
  100. package/dist/react-native/internal/helpers.d.ts +1 -2
  101. package/dist/react-native/internal/helpers.d.ts.map +1 -1
  102. package/dist/react-native/internal/helpers.js +0 -12
  103. package/dist/react-native/internal/helpers.js.map +1 -1
  104. package/dist/react-native/internal/jsonModels.d.ts +1 -8
  105. package/dist/react-native/internal/jsonModels.d.ts.map +1 -1
  106. package/dist/react-native/internal/jsonModels.js.map +1 -1
  107. package/dist/react-native/internal/queryParamPolicy.d.ts.map +1 -1
  108. package/dist/react-native/internal/queryParamPolicy.js +38 -33
  109. package/dist/react-native/internal/queryParamPolicy.js.map +1 -1
  110. package/dist/react-native/internal/syncTokenPolicy.js +1 -1
  111. package/dist/react-native/internal/syncTokenPolicy.js.map +1 -1
  112. package/dist/react-native/models.d.ts +4 -5
  113. package/dist/react-native/models.d.ts.map +1 -1
  114. package/dist/react-native/models.js.map +1 -1
  115. package/dist/react-native/secretReference.d.ts +1 -1
  116. package/dist/react-native/secretReference.js +1 -1
  117. package/dist/react-native/secretReference.js.map +1 -1
  118. package/package.json +1 -1
  119. package/dist/browser/snapshotReference.d.ts +0 -34
  120. package/dist/browser/snapshotReference.d.ts.map +0 -1
  121. package/dist/browser/snapshotReference.js +0 -57
  122. package/dist/browser/snapshotReference.js.map +0 -1
  123. package/dist/commonjs/snapshotReference.d.ts +0 -34
  124. package/dist/commonjs/snapshotReference.d.ts.map +0 -1
  125. package/dist/commonjs/snapshotReference.js +0 -62
  126. package/dist/commonjs/snapshotReference.js.map +0 -1
  127. package/dist/esm/snapshotReference.d.ts +0 -34
  128. package/dist/esm/snapshotReference.d.ts.map +0 -1
  129. package/dist/esm/snapshotReference.js +0 -57
  130. package/dist/esm/snapshotReference.js.map +0 -1
  131. package/dist/react-native/snapshotReference.d.ts +0 -34
  132. package/dist/react-native/snapshotReference.d.ts.map +0 -1
  133. package/dist/react-native/snapshotReference.js +0 -57
  134. package/dist/react-native/snapshotReference.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"appConfigurationClient.js","sourceRoot":"","sources":["../../src/appConfigurationClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n// https://azure.github.io/azure-sdk/typescript_design.html#ts-config-lib\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport {\n type AddConfigurationSettingOptions,\n type AddConfigurationSettingParam,\n type AddConfigurationSettingResponse,\n type AppConfigurationClientOptions,\n type ConfigurationSetting,\n type ConfigurationSettingId,\n type CreateSnapshotOptions,\n type CreateSnapshotResponse,\n type DeleteConfigurationSettingOptions,\n type DeleteConfigurationSettingResponse,\n type GetConfigurationSettingOptions,\n type GetConfigurationSettingResponse,\n type GetSnapshotOptions,\n type GetSnapshotResponse,\n type HttpResponseField,\n type ListConfigurationSettingPage,\n type ListConfigurationSettingsForSnapshotOptions,\n type ListConfigurationSettingsOptions,\n type ListLabelsOptions,\n type ListLabelsPage,\n type ListRevisionsOptions,\n type ListRevisionsPage,\n type ListSnapshotsOptions,\n type ListSnapshotsPage,\n type PageSettings,\n type SetConfigurationSettingOptions,\n type SetConfigurationSettingParam,\n type SetConfigurationSettingResponse,\n type SetReadOnlyOptions,\n type SetReadOnlyResponse,\n type SettingLabel,\n type SnapshotInfo,\n type UpdateSnapshotOptions,\n type UpdateSnapshotResponse,\n} from \"./models.js\";\nimport type {\n AppConfigurationGetKeyValuesHeaders,\n AppConfigurationGetRevisionsHeaders,\n AppConfigurationGetSnapshotsHeaders,\n GetKeyValuesResponse,\n GetRevisionsResponse,\n GetSnapshotsResponse,\n ConfigurationSnapshot,\n GetLabelsResponse,\n AppConfigurationGetLabelsHeaders,\n} from \"./generated/src/models/index.js\";\nimport type { InternalClientPipelineOptions } from \"@azure/core-client\";\nimport type { PagedAsyncIterableIterator, PagedResult } from \"@azure/core-paging\";\nimport { getPagedAsyncIterator } from \"@azure/core-paging\";\nimport type { PipelinePolicy, RestError } from \"@azure/core-rest-pipeline\";\nimport { bearerTokenAuthenticationPolicy } from \"@azure/core-rest-pipeline\";\nimport { SyncTokens, syncTokenPolicy } from \"./internal/syncTokenPolicy.js\";\nimport { queryParamPolicy } from \"./internal/queryParamPolicy.js\";\nimport type { TokenCredential } from \"@azure/core-auth\";\nimport { isTokenCredential } from \"@azure/core-auth\";\nimport type {\n SendConfigurationSettingsOptions,\n SendLabelsRequestOptions,\n} from \"./internal/helpers.js\";\nimport {\n assertResponse,\n checkAndFormatIfAndIfNoneMatch,\n extractAfterTokenFromLinkHeader,\n extractAfterTokenFromNextLink,\n formatAcceptDateTime,\n formatConfigurationSettingsFiltersAndSelect,\n formatFieldsForSelect,\n formatFiltersAndSelect,\n formatLabelsFiltersAndSelect,\n formatSnapshotFiltersAndSelect,\n getScope,\n makeConfigurationSettingEmpty,\n serializeAsConfigurationSettingParam,\n transformKeyValue,\n transformKeyValueResponse,\n transformKeyValueResponseWithStatusCode,\n transformSnapshotResponse,\n} from \"./internal/helpers.js\";\nimport { AppConfiguration } from \"./generated/src/appConfiguration.js\";\nimport type { FeatureFlagValue } from \"./featureFlag.js\";\nimport type { SecretReferenceValue } from \"./secretReference.js\";\nimport type { SnapshotReferenceValue } from \"./snapshotReference.js\";\nimport { appConfigKeyCredentialPolicy } from \"./appConfigCredential.js\";\nimport { tracingClient } from \"./internal/tracing.js\";\nimport { logger } from \"./logger.js\";\nimport type { OperationState, SimplePollerLike } from \"@azure/core-lro\";\nimport { appConfigurationApiVersion } from \"./internal/constants.js\";\n\nconst ConnectionStringRegex = /Endpoint=(.*);Id=(.*);Secret=(.*)/;\nconst deserializationContentTypes = {\n json: [\n \"application/vnd.microsoft.appconfig.kvset+json\",\n \"application/vnd.microsoft.appconfig.kv+json\",\n \"application/vnd.microsoft.appconfig.kvs+json\",\n \"application/vnd.microsoft.appconfig.keyset+json\",\n \"application/vnd.microsoft.appconfig.revs+json\",\n \"application/vnd.microsoft.appconfig.snapshotset+json\",\n \"application/vnd.microsoft.appconfig.snapshot+json\",\n \"application/vnd.microsoft.appconfig.labelset+json\",\n \"application/json\",\n ],\n};\n\n/**\n * Provides internal configuration options for AppConfigurationClient.\n * @internal\n */\nexport interface InternalAppConfigurationClientOptions extends AppConfigurationClientOptions {\n /**\n * The sync token cache to use for this client.\n * NOTE: this is an internal option, not for general client usage.\n */\n syncTokens?: SyncTokens;\n}\n\n/**\n * Client for the Azure App Configuration service.\n */\nexport class AppConfigurationClient {\n private client: AppConfiguration;\n private _syncTokens: SyncTokens;\n\n /**\n * Initializes a new instance of the AppConfigurationClient class.\n * @param options - Options for the AppConfigurationClient.\n */\n constructor(connectionString: string, options?: AppConfigurationClientOptions);\n /**\n * Initializes a new instance of the AppConfigurationClient class using\n * a TokenCredential.\n * @param endpoint - The endpoint of the App Configuration service (ex: https://sample.azconfig.io).\n * @param tokenCredential - An object that implements the `TokenCredential` interface used to authenticate requests to the service. Use the \\@azure/identity package to create a credential that suits your needs.\n * @param options - Options for the AppConfigurationClient.\n */\n constructor(\n endpoint: string,\n tokenCredential: TokenCredential,\n options?: AppConfigurationClientOptions,\n );\n constructor(\n connectionStringOrEndpoint: string,\n tokenCredentialOrOptions?: TokenCredential | AppConfigurationClientOptions,\n options?: AppConfigurationClientOptions,\n ) {\n let appConfigOptions: InternalAppConfigurationClientOptions = {};\n let appConfigCredential: TokenCredential;\n let appConfigEndpoint: string;\n let authPolicy: PipelinePolicy;\n let scope: string;\n\n if (isTokenCredential(tokenCredentialOrOptions)) {\n appConfigOptions = (options as InternalAppConfigurationClientOptions) || {};\n appConfigCredential = tokenCredentialOrOptions;\n appConfigEndpoint = connectionStringOrEndpoint.endsWith(\"/\")\n ? connectionStringOrEndpoint.slice(0, -1)\n : connectionStringOrEndpoint;\n scope = getScope(appConfigEndpoint, appConfigOptions.audience);\n authPolicy = bearerTokenAuthenticationPolicy({\n scopes: scope,\n credential: appConfigCredential,\n });\n } else {\n appConfigOptions = (tokenCredentialOrOptions as InternalAppConfigurationClientOptions) || {};\n const regexMatch = connectionStringOrEndpoint?.match(ConnectionStringRegex);\n if (regexMatch) {\n appConfigEndpoint = regexMatch[1];\n authPolicy = appConfigKeyCredentialPolicy(regexMatch[2], regexMatch[3]);\n } else {\n throw new Error(\n `Invalid connection string. Valid connection strings should match the regex '${ConnectionStringRegex.source}'.` +\n ` To mitigate the issue, please refer to the troubleshooting guide here at https://aka.ms/azsdk/js/app-configuration/troubleshoot.`,\n );\n }\n }\n\n const internalClientPipelineOptions: InternalClientPipelineOptions = {\n ...appConfigOptions,\n loggingOptions: {\n logger: logger.info,\n },\n deserializationOptions: {\n expectedContentTypes: deserializationContentTypes,\n },\n };\n\n this._syncTokens = appConfigOptions.syncTokens || new SyncTokens();\n this.client = new AppConfiguration(\n appConfigEndpoint,\n options?.apiVersion ?? appConfigurationApiVersion,\n internalClientPipelineOptions,\n );\n this.client.pipeline.addPolicy(authPolicy, { phase: \"Sign\" });\n this.client.pipeline.addPolicy(queryParamPolicy());\n this.client.pipeline.addPolicy(syncTokenPolicy(this._syncTokens), { afterPhase: \"Retry\" });\n }\n\n /**\n * Add a setting into the Azure App Configuration service, failing if it\n * already exists.\n *\n * Example usage:\n * ```ts snippet:AddConfigurationSetting\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const result = await client.addConfigurationSetting({\n * key: \"MyKey\",\n * label: \"MyLabel\",\n * value: \"MyValue\",\n * });\n * ```\n * @param configurationSetting - A configuration setting.\n * @param options - Optional parameters for the request.\n */\n addConfigurationSetting(\n configurationSetting:\n | AddConfigurationSettingParam\n | AddConfigurationSettingParam<FeatureFlagValue>\n | AddConfigurationSettingParam<SecretReferenceValue>\n | AddConfigurationSettingParam<SnapshotReferenceValue>,\n options: AddConfigurationSettingOptions = {},\n ): Promise<AddConfigurationSettingResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.addConfigurationSetting\",\n options,\n async (updatedOptions) => {\n const keyValue = serializeAsConfigurationSettingParam(configurationSetting);\n logger.info(\"[addConfigurationSetting] Creating a key value pair\");\n try {\n const originalResponse = await this.client.putKeyValue(configurationSetting.key, {\n ifNoneMatch: \"*\",\n label: configurationSetting.label,\n entity: keyValue,\n ...updatedOptions,\n });\n const response = transformKeyValueResponse(originalResponse);\n assertResponse(response);\n return response;\n } catch (error) {\n const err = error as RestError;\n // Service does not return an error message. Raise a 412 error similar to .NET\n if (err.statusCode === 412) {\n err.message = `Status 412: Setting was already present`;\n }\n throw err;\n }\n throw new Error(\"Unreachable code\");\n },\n );\n }\n\n /**\n * Delete a setting from the Azure App Configuration service\n *\n * Example usage:\n * ```ts snippet:DeleteConfigurationSetting\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const deletedSetting = await client.deleteConfigurationSetting({\n * key: \"MyKey\",\n * label: \"MyLabel\",\n * });\n * ```\n * @param id - The id of the configuration setting to delete.\n * @param options - Optional parameters for the request (ex: etag, label)\n */\n deleteConfigurationSetting(\n id: ConfigurationSettingId,\n options: DeleteConfigurationSettingOptions = {},\n ): Promise<DeleteConfigurationSettingResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.deleteConfigurationSetting\",\n options,\n async (updatedOptions) => {\n let status;\n logger.info(\"[deleteConfigurationSetting] Deleting key value pair\");\n const originalResponse = await this.client.deleteKeyValue(id.key, {\n label: id.label,\n ...updatedOptions,\n ...checkAndFormatIfAndIfNoneMatch(id, options),\n onResponse: (response) => {\n status = response.status;\n },\n });\n\n const response = transformKeyValueResponseWithStatusCode(originalResponse, status);\n assertResponse(response);\n return response;\n },\n );\n }\n\n /**\n * Gets a setting from the Azure App Configuration service.\n *\n * Example code:\n * ```ts snippet:GetConfigurationSetting\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const setting = await client.getConfigurationSetting({ key: \"MyKey\", label: \"MyLabel\" });\n * ```\n * @param id - The id of the configuration setting to get.\n * @param options - Optional parameters for the request.\n */\n async getConfigurationSetting(\n id: ConfigurationSettingId,\n options: GetConfigurationSettingOptions = {},\n ): Promise<GetConfigurationSettingResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.getConfigurationSetting\",\n options,\n async (updatedOptions) => {\n let status;\n logger.info(\"[getConfigurationSetting] Getting key value pair\");\n const originalResponse = await this.client.getKeyValue(id.key, {\n ...updatedOptions,\n label: id.label,\n select: formatFieldsForSelect(options.fields),\n ...formatAcceptDateTime(options),\n ...checkAndFormatIfAndIfNoneMatch(id, options),\n onResponse: (response) => {\n status = response.status;\n },\n });\n\n const response = transformKeyValueResponseWithStatusCode(originalResponse, status);\n\n // 304 only comes back if the user has passed a conditional option in their\n // request _and_ the remote object has the same etag as what the user passed.\n if (response.statusCode === 304) {\n // this is one of our few 'required' fields so we'll make sure it does get initialized\n // with a value\n response.key = id.key;\n\n // and now we'll undefine all the other properties that are not HTTP related\n makeConfigurationSettingEmpty(response);\n }\n assertResponse(response);\n return response;\n },\n );\n }\n\n /**\n * Lists settings from the Azure App Configuration service, optionally\n * filtered by key names, labels and accept datetime.\n *\n * Example code:\n * ```ts snippet:ListConfigurationSettings\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const allSettingsWithLabel = client.listConfigurationSettings({ labelFilter: \"MyLabel\" });\n * ```\n * @param options - Optional parameters for the request.\n */\n listConfigurationSettings(\n options: ListConfigurationSettingsOptions = {},\n ): PagedAsyncIterableIterator<ConfigurationSetting, ListConfigurationSettingPage, PageSettings> {\n const pageEtags = options.pageEtags ? [...options.pageEtags] : undefined;\n delete options.pageEtags;\n const pagedResult: PagedResult<ListConfigurationSettingPage, PageSettings, string | undefined> =\n {\n firstPageLink: undefined,\n getPage: async (pageLink: string | undefined) => {\n const etag = pageEtags?.shift();\n try {\n const response = await this.sendConfigurationSettingsRequest(\n { ...options, etag },\n pageLink,\n );\n const currentResponse: ListConfigurationSettingPage = {\n ...response,\n items: response.items != null ? response.items?.map(transformKeyValue) : [],\n continuationToken: response.nextLink\n ? extractAfterTokenFromNextLink(response.nextLink)\n : undefined,\n _response: response._response,\n };\n return {\n page: currentResponse,\n nextPageLink: currentResponse.continuationToken,\n };\n } catch (error) {\n const err = error as RestError;\n\n const link = err.response?.headers?.get(\"link\");\n const continuationToken = link ? extractAfterTokenFromLinkHeader(link) : undefined;\n\n if (err.statusCode === 304) {\n err.message = `Status 304: No updates for this page`;\n logger.info(\n `[listConfigurationSettings] No updates for this page. The current etag for the page is ${etag}`,\n );\n return {\n page: {\n items: [],\n etag,\n _response: { ...err.response, status: 304 },\n } as unknown as ListConfigurationSettingPage,\n nextPageLink: continuationToken,\n };\n }\n\n throw err;\n }\n },\n toElements: (page) => page.items,\n };\n return getPagedAsyncIterator(pagedResult);\n }\n\n /**\n * Lists settings from the Azure App Configuration service for snapshots based on name, optionally\n * filtered by key names, labels and accept datetime.\n *\n * Example code:\n * ```ts snippet:ListConfigurationSettingsForSnashots\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const allSettingsWithLabel = client.listConfigurationSettingsForSnashots({\n * snapshotName: \"MySnapshot\",\n * });\n * ```\n * @param options - Optional parameters for the request.\n */\n listConfigurationSettingsForSnapshot(\n snapshotName: string,\n options: ListConfigurationSettingsForSnapshotOptions = {},\n ): PagedAsyncIterableIterator<ConfigurationSetting, ListConfigurationSettingPage, PageSettings> {\n const pagedResult: PagedResult<ListConfigurationSettingPage, PageSettings, string | undefined> =\n {\n firstPageLink: undefined,\n getPage: async (pageLink: string | undefined) => {\n const response = await this.sendConfigurationSettingsRequest(\n { snapshotName, ...options },\n pageLink,\n );\n const currentResponse = {\n ...response,\n items: response.items != null ? response.items?.map(transformKeyValue) : [],\n continuationToken: response.nextLink\n ? extractAfterTokenFromNextLink(response.nextLink)\n : undefined,\n };\n return {\n page: currentResponse,\n nextPageLink: currentResponse.continuationToken,\n };\n },\n toElements: (page) => page.items,\n };\n return getPagedAsyncIterator(pagedResult);\n }\n\n /**\n * Get a list of labels from the Azure App Configuration service\n *\n * Example code:\n * ```ts snippet:ListLabels\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const allSettingsWithLabel = client.listLabels({ nameFilter: \"prod*\" });\n * ```\n * @param options - Optional parameters for the request.\n */\n listLabels(\n options: ListLabelsOptions = {},\n ): PagedAsyncIterableIterator<SettingLabel, ListLabelsPage, PageSettings> {\n const pagedResult: PagedResult<ListLabelsPage, PageSettings, string | undefined> = {\n firstPageLink: undefined,\n getPage: async (pageLink: string | undefined) => {\n const response = await this.sendLabelsRequest(options, pageLink);\n const currentResponse: ListLabelsPage = {\n ...response,\n items: response.items ?? [],\n continuationToken: response.nextLink\n ? extractAfterTokenFromNextLink(response.nextLink)\n : undefined,\n _response: response._response,\n };\n return {\n page: currentResponse,\n nextPageLink: currentResponse.continuationToken,\n };\n },\n toElements: (page) => page.items,\n };\n return getPagedAsyncIterator(pagedResult);\n }\n\n private async sendLabelsRequest(\n options: SendLabelsRequestOptions & PageSettings = {},\n pageLink: string | undefined,\n ): Promise<GetLabelsResponse & HttpResponseField<AppConfigurationGetLabelsHeaders>> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.listConfigurationSettings\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getLabels({\n ...updatedOptions,\n ...formatAcceptDateTime(options),\n ...formatLabelsFiltersAndSelect(options),\n after: pageLink,\n });\n\n return response as GetLabelsResponse & HttpResponseField<AppConfigurationGetLabelsHeaders>;\n },\n );\n }\n\n private async sendConfigurationSettingsRequest(\n options: SendConfigurationSettingsOptions & PageSettings = {},\n pageLink: string | undefined,\n ): Promise<GetKeyValuesResponse & HttpResponseField<AppConfigurationGetKeyValuesHeaders>> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.listConfigurationSettings\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getKeyValues({\n ...updatedOptions,\n ...formatAcceptDateTime(options),\n ...formatConfigurationSettingsFiltersAndSelect(options),\n ...checkAndFormatIfAndIfNoneMatch({ etag: options.etag }, { onlyIfChanged: true }),\n after: pageLink,\n });\n\n return response as GetKeyValuesResponse &\n HttpResponseField<AppConfigurationGetKeyValuesHeaders>;\n },\n );\n }\n\n /**\n * Lists revisions of a set of keys, optionally filtered by key names,\n * labels and accept datetime.\n *\n * Example code:\n * ```ts snippet:ListRevisions\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const revisionsIterator = client.listRevisions({ keys: [\"MyKey\"] });\n * ```\n * @param options - Optional parameters for the request.\n */\n listRevisions(\n options?: ListRevisionsOptions,\n ): PagedAsyncIterableIterator<ConfigurationSetting, ListRevisionsPage, PageSettings> {\n const pagedResult: PagedResult<ListRevisionsPage, PageSettings, string | undefined> = {\n firstPageLink: undefined,\n getPage: async (pageLink: string | undefined) => {\n const response = await this.sendRevisionsRequest(options, pageLink);\n const currentResponse = {\n ...response,\n items: response.items != null ? response.items.map(transformKeyValue) : [],\n continuationToken: response.nextLink\n ? extractAfterTokenFromNextLink(response.nextLink)\n : undefined,\n };\n // let itemList = currentResponse.items;\n return {\n page: currentResponse,\n nextPageLink: currentResponse.continuationToken,\n };\n },\n toElements: (page) => page.items,\n };\n return getPagedAsyncIterator(pagedResult);\n }\n\n private async sendRevisionsRequest(\n options: ListConfigurationSettingsOptions & PageSettings = {},\n pageLink: string | undefined,\n ): Promise<GetKeyValuesResponse & HttpResponseField<AppConfigurationGetKeyValuesHeaders>> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.listRevisions\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getRevisions({\n ...updatedOptions,\n ...formatAcceptDateTime(options),\n ...formatFiltersAndSelect(updatedOptions),\n after: pageLink,\n });\n\n return response as GetRevisionsResponse &\n HttpResponseField<AppConfigurationGetRevisionsHeaders>;\n },\n );\n }\n\n /**\n * Sets the value of a key in the Azure App Configuration service, allowing for an optional etag.\n * @param key - The name of the key.\n * @param configurationSetting - A configuration value.\n * @param options - Optional parameters for the request.\n *\n * Example code:\n * ```ts snippet:SetConfigurationSetting\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * await client.setConfigurationSetting({ key: \"MyKey\", value: \"MyValue\" });\n * ```\n */\n async setConfigurationSetting(\n configurationSetting:\n | SetConfigurationSettingParam\n | SetConfigurationSettingParam<FeatureFlagValue>\n | SetConfigurationSettingParam<SecretReferenceValue>\n | SetConfigurationSettingParam<SnapshotReferenceValue>,\n options: SetConfigurationSettingOptions = {},\n ): Promise<SetConfigurationSettingResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.setConfigurationSetting\",\n options,\n async (updatedOptions) => {\n const keyValue = serializeAsConfigurationSettingParam(configurationSetting);\n logger.info(\"[setConfigurationSetting] Setting new key value\");\n const response = transformKeyValueResponse(\n await this.client.putKeyValue(configurationSetting.key, {\n ...updatedOptions,\n label: configurationSetting.label,\n entity: keyValue,\n ...checkAndFormatIfAndIfNoneMatch(configurationSetting, options),\n }),\n );\n assertResponse(response);\n return response;\n },\n );\n }\n\n /**\n * Sets or clears a key's read-only status.\n * @param id - The id of the configuration setting to modify.\n */\n async setReadOnly(\n id: ConfigurationSettingId,\n readOnly: boolean,\n options: SetReadOnlyOptions = {},\n ): Promise<SetReadOnlyResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.setReadOnly\",\n options,\n async (newOptions) => {\n let response;\n if (readOnly) {\n logger.info(\"[setReadOnly] Setting read-only status to ${readOnly}\");\n response = await this.client.putLock(id.key, {\n ...newOptions,\n label: id.label,\n ...checkAndFormatIfAndIfNoneMatch(id, options),\n });\n } else {\n logger.info(\"[setReadOnly] Deleting read-only lock\");\n response = await this.client.deleteLock(id.key, {\n ...newOptions,\n label: id.label,\n ...checkAndFormatIfAndIfNoneMatch(id, options),\n });\n }\n response = transformKeyValueResponse(response);\n assertResponse(response);\n return response;\n },\n );\n }\n\n /**\n * Adds an external synchronization token to ensure service requests receive up-to-date values.\n *\n * @param syncToken - The synchronization token value.\n */\n updateSyncToken(syncToken: string): void {\n this._syncTokens.addSyncTokenFromHeaderValue(syncToken);\n }\n\n /**\n * Begins creating a snapshot for Azure App Configuration service, fails if it\n * already exists.\n */\n beginCreateSnapshot(\n snapshot: SnapshotInfo,\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: CreateSnapshotOptions = {},\n ): Promise<SimplePollerLike<OperationState<CreateSnapshotResponse>, CreateSnapshotResponse>> {\n return tracingClient.withSpan(\n `${AppConfigurationClient.name}.beginCreateSnapshot`,\n options,\n (updatedOptions) =>\n this.client.beginCreateSnapshot(snapshot.name, snapshot, { ...updatedOptions }),\n );\n }\n\n /**\n * Begins creating a snapshot for Azure App Configuration service, waits until it is done,\n * fails if it already exists.\n */\n beginCreateSnapshotAndWait(\n snapshot: SnapshotInfo,\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: CreateSnapshotOptions = {},\n ): Promise<CreateSnapshotResponse> {\n return tracingClient.withSpan(\n `${AppConfigurationClient.name}.beginCreateSnapshotAndWait`,\n options,\n (updatedOptions) =>\n this.client.beginCreateSnapshotAndWait(snapshot.name, snapshot, { ...updatedOptions }),\n );\n }\n\n /**\n * Get a snapshot from Azure App Configuration service\n *\n * Example usage:\n * ```ts snippet:GetSnapshot\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const retrievedSnapshot = await client.getSnapshot(\"testsnapshot\");\n * console.log(\"Retrieved snapshot:\", retrievedSnapshot);\n * ```\n * @param name - The name of the snapshot.\n * @param options - Optional parameters for the request.\n */\n getSnapshot(name: string, options: GetSnapshotOptions = {}): Promise<GetSnapshotResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.getSnapshot\",\n options,\n async (updatedOptions) => {\n logger.info(\"[getSnapshot] Get a snapshot\");\n const originalResponse = await this.client.getSnapshot(name, {\n ...updatedOptions,\n });\n const response = transformSnapshotResponse(originalResponse);\n assertResponse(response);\n return response;\n },\n );\n }\n\n /**\n * Recover an archived snapshot back to ready status\n *\n * Example usage:\n * ```ts snippet:RecoverSnapshot\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const result = await client.recoverSnapshot(\"MySnapshot\");\n * ```\n * @param name - The name of the snapshot.\n * @param options - Optional parameters for the request.\n */\n recoverSnapshot(\n name: string,\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: UpdateSnapshotOptions = {},\n ): Promise<UpdateSnapshotResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.recoverSnapshot\",\n options,\n async (updatedOptions) => {\n logger.info(\"[recoverSnapshot] Recover a snapshot\");\n const originalResponse = await this.client.updateSnapshot(\n name,\n { status: \"ready\" },\n {\n ...updatedOptions,\n ...checkAndFormatIfAndIfNoneMatch(\n { etag: options.etag },\n { onlyIfUnchanged: true, ...options },\n ),\n },\n );\n const response = transformSnapshotResponse(originalResponse);\n assertResponse(response);\n return response;\n },\n );\n }\n /**\n * Archive a ready snapshot\n *\n * Example usage:\n * ```ts snippet:ArchiveSnapshot\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const result = await client.archiveSnapshot({ name: \"MySnapshot\" });\n * ```\n * @param name - The name of the snapshot.\n * @param options - Optional parameters for the request.\n */\n archiveSnapshot(\n name: string,\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: UpdateSnapshotOptions = {},\n ): Promise<UpdateSnapshotResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.archiveSnapshot\",\n options,\n async (updatedOptions) => {\n logger.info(\"[archiveSnapshot] Archive a snapshot\");\n const originalResponse = await this.client.updateSnapshot(\n name,\n { status: \"archived\" },\n {\n ...updatedOptions,\n ...checkAndFormatIfAndIfNoneMatch(\n { etag: options.etag },\n { onlyIfUnchanged: true, ...options },\n ),\n },\n );\n const response = transformSnapshotResponse(originalResponse);\n assertResponse(response);\n return response;\n },\n );\n }\n\n /**\n * List all snapshots from Azure App Configuration service\n *\n * Example usage:\n * ```ts snippet:ListSnapshots\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const snapshots = await client.listSnapshots();\n *\n * for await (const snapshot of snapshots) {\n * console.log(`Found snapshot: ${snapshot.name}`);\n * }\n * ```\n * @param options - Optional parameters for the request.\n */\n listSnapshots(\n options: ListSnapshotsOptions = {},\n ): PagedAsyncIterableIterator<ConfigurationSnapshot, ListSnapshotsPage, PageSettings> {\n const pagedResult: PagedResult<ListSnapshotsPage, PageSettings, string | undefined> = {\n firstPageLink: undefined,\n getPage: async (pageLink: string | undefined) => {\n const response = await this.sendSnapShotsRequest(options, pageLink);\n const currentResponse = {\n ...response,\n items: response.items != null ? response.items : [],\n continuationToken: response.nextLink\n ? extractAfterTokenFromNextLink(response.nextLink)\n : undefined,\n };\n return {\n page: currentResponse,\n nextPageLink: currentResponse.continuationToken,\n };\n },\n toElements: (page) => page.items,\n };\n return getPagedAsyncIterator(pagedResult);\n }\n\n private async sendSnapShotsRequest(\n options: ListSnapshotsOptions & PageSettings = {},\n pageLink: string | undefined,\n ): Promise<GetSnapshotsResponse & HttpResponseField<AppConfigurationGetSnapshotsHeaders>> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.listSnapshots\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getSnapshots({\n ...updatedOptions,\n ...formatSnapshotFiltersAndSelect(options),\n after: pageLink,\n });\n\n return response as GetSnapshotsResponse &\n HttpResponseField<AppConfigurationGetSnapshotsHeaders>;\n },\n );\n }\n}\n"]}
1
+ {"version":3,"file":"appConfigurationClient.js","sourceRoot":"","sources":["../../src/appConfigurationClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n// https://azure.github.io/azure-sdk/typescript_design.html#ts-config-lib\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport {\n type AddConfigurationSettingOptions,\n type AddConfigurationSettingParam,\n type AddConfigurationSettingResponse,\n type AppConfigurationClientOptions,\n type ConfigurationSetting,\n type ConfigurationSettingId,\n type CreateSnapshotOptions,\n type CreateSnapshotResponse,\n type DeleteConfigurationSettingOptions,\n type DeleteConfigurationSettingResponse,\n type GetConfigurationSettingOptions,\n type GetConfigurationSettingResponse,\n type GetSnapshotOptions,\n type GetSnapshotResponse,\n type HttpResponseField,\n type ListConfigurationSettingPage,\n type ListConfigurationSettingsForSnapshotOptions,\n type ListConfigurationSettingsOptions,\n type ListLabelsOptions,\n type ListLabelsPage,\n type ListRevisionsOptions,\n type ListRevisionsPage,\n type ListSnapshotsOptions,\n type ListSnapshotsPage,\n type PageSettings,\n type SetConfigurationSettingOptions,\n type SetConfigurationSettingParam,\n type SetConfigurationSettingResponse,\n type SetReadOnlyOptions,\n type SetReadOnlyResponse,\n type SettingLabel,\n type SnapshotInfo,\n type UpdateSnapshotOptions,\n type UpdateSnapshotResponse,\n} from \"./models.js\";\nimport type {\n AppConfigurationGetKeyValuesHeaders,\n AppConfigurationGetRevisionsHeaders,\n AppConfigurationGetSnapshotsHeaders,\n GetKeyValuesResponse,\n GetRevisionsResponse,\n GetSnapshotsResponse,\n ConfigurationSnapshot,\n GetLabelsResponse,\n AppConfigurationGetLabelsHeaders,\n} from \"./generated/src/models/index.js\";\nimport type { InternalClientPipelineOptions } from \"@azure/core-client\";\nimport type { PagedAsyncIterableIterator, PagedResult } from \"@azure/core-paging\";\nimport { getPagedAsyncIterator } from \"@azure/core-paging\";\nimport type { PipelinePolicy, RestError } from \"@azure/core-rest-pipeline\";\nimport { bearerTokenAuthenticationPolicy } from \"@azure/core-rest-pipeline\";\nimport { SyncTokens, syncTokenPolicy } from \"./internal/syncTokenPolicy.js\";\nimport { queryParamPolicy } from \"./internal/queryParamPolicy.js\";\nimport type { TokenCredential } from \"@azure/core-auth\";\nimport { isTokenCredential } from \"@azure/core-auth\";\nimport type {\n SendConfigurationSettingsOptions,\n SendLabelsRequestOptions,\n} from \"./internal/helpers.js\";\nimport {\n assertResponse,\n checkAndFormatIfAndIfNoneMatch,\n extractAfterTokenFromLinkHeader,\n extractAfterTokenFromNextLink,\n formatAcceptDateTime,\n formatConfigurationSettingsFiltersAndSelect,\n formatFieldsForSelect,\n formatFiltersAndSelect,\n formatLabelsFiltersAndSelect,\n formatSnapshotFiltersAndSelect,\n getScope,\n makeConfigurationSettingEmpty,\n serializeAsConfigurationSettingParam,\n transformKeyValue,\n transformKeyValueResponse,\n transformKeyValueResponseWithStatusCode,\n transformSnapshotResponse,\n} from \"./internal/helpers.js\";\nimport { AppConfiguration } from \"./generated/src/appConfiguration.js\";\nimport type { FeatureFlagValue } from \"./featureFlag.js\";\nimport type { SecretReferenceValue } from \"./secretReference.js\";\nimport { appConfigKeyCredentialPolicy } from \"./appConfigCredential.js\";\nimport { tracingClient } from \"./internal/tracing.js\";\nimport { logger } from \"./logger.js\";\nimport type { OperationState, SimplePollerLike } from \"@azure/core-lro\";\nimport { appConfigurationApiVersion } from \"./internal/constants.js\";\n\nconst ConnectionStringRegex = /Endpoint=(.*);Id=(.*);Secret=(.*)/;\nconst deserializationContentTypes = {\n json: [\n \"application/vnd.microsoft.appconfig.kvset+json\",\n \"application/vnd.microsoft.appconfig.kv+json\",\n \"application/vnd.microsoft.appconfig.kvs+json\",\n \"application/vnd.microsoft.appconfig.keyset+json\",\n \"application/vnd.microsoft.appconfig.revs+json\",\n \"application/vnd.microsoft.appconfig.snapshotset+json\",\n \"application/vnd.microsoft.appconfig.snapshot+json\",\n \"application/vnd.microsoft.appconfig.labelset+json\",\n \"application/json\",\n ],\n};\n\n/**\n * Provides internal configuration options for AppConfigurationClient.\n * @internal\n */\nexport interface InternalAppConfigurationClientOptions extends AppConfigurationClientOptions {\n /**\n * The sync token cache to use for this client.\n * NOTE: this is an internal option, not for general client usage.\n */\n syncTokens?: SyncTokens;\n}\n\n/**\n * Client for the Azure App Configuration service.\n */\nexport class AppConfigurationClient {\n private client: AppConfiguration;\n private _syncTokens: SyncTokens;\n\n /**\n * Initializes a new instance of the AppConfigurationClient class.\n * @param options - Options for the AppConfigurationClient.\n */\n constructor(connectionString: string, options?: AppConfigurationClientOptions);\n /**\n * Initializes a new instance of the AppConfigurationClient class using\n * a TokenCredential.\n * @param endpoint - The endpoint of the App Configuration service (ex: https://sample.azconfig.io).\n * @param tokenCredential - An object that implements the `TokenCredential` interface used to authenticate requests to the service. Use the \\@azure/identity package to create a credential that suits your needs.\n * @param options - Options for the AppConfigurationClient.\n */\n constructor(\n endpoint: string,\n tokenCredential: TokenCredential,\n options?: AppConfigurationClientOptions,\n );\n constructor(\n connectionStringOrEndpoint: string,\n tokenCredentialOrOptions?: TokenCredential | AppConfigurationClientOptions,\n options?: AppConfigurationClientOptions,\n ) {\n let appConfigOptions: InternalAppConfigurationClientOptions = {};\n let appConfigCredential: TokenCredential;\n let appConfigEndpoint: string;\n let authPolicy: PipelinePolicy;\n let scope: string;\n\n if (isTokenCredential(tokenCredentialOrOptions)) {\n appConfigOptions = (options as InternalAppConfigurationClientOptions) || {};\n appConfigCredential = tokenCredentialOrOptions;\n appConfigEndpoint = connectionStringOrEndpoint.endsWith(\"/\")\n ? connectionStringOrEndpoint.slice(0, -1)\n : connectionStringOrEndpoint;\n scope = getScope(appConfigEndpoint, appConfigOptions.audience);\n authPolicy = bearerTokenAuthenticationPolicy({\n scopes: scope,\n credential: appConfigCredential,\n });\n } else {\n appConfigOptions = (tokenCredentialOrOptions as InternalAppConfigurationClientOptions) || {};\n const regexMatch = connectionStringOrEndpoint?.match(ConnectionStringRegex);\n if (regexMatch) {\n appConfigEndpoint = regexMatch[1];\n authPolicy = appConfigKeyCredentialPolicy(regexMatch[2], regexMatch[3]);\n } else {\n throw new Error(\n `Invalid connection string. Valid connection strings should match the regex '${ConnectionStringRegex.source}'.` +\n ` To mitigate the issue, please refer to the troubleshooting guide here at https://aka.ms/azsdk/js/app-configuration/troubleshoot.`,\n );\n }\n }\n\n const internalClientPipelineOptions: InternalClientPipelineOptions = {\n ...appConfigOptions,\n loggingOptions: {\n logger: logger.info,\n },\n deserializationOptions: {\n expectedContentTypes: deserializationContentTypes,\n },\n };\n\n this._syncTokens = appConfigOptions.syncTokens || new SyncTokens();\n this.client = new AppConfiguration(\n appConfigEndpoint,\n options?.apiVersion ?? appConfigurationApiVersion,\n internalClientPipelineOptions,\n );\n this.client.pipeline.addPolicy(authPolicy, { phase: \"Sign\" });\n this.client.pipeline.addPolicy(queryParamPolicy());\n this.client.pipeline.addPolicy(syncTokenPolicy(this._syncTokens), { afterPhase: \"Retry\" });\n }\n\n /**\n * Add a setting into the Azure App Configuration service, failing if it\n * already exists.\n *\n * Example usage:\n * ```ts snippet:AddConfigurationSetting\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const result = await client.addConfigurationSetting({\n * key: \"MyKey\",\n * label: \"MyLabel\",\n * value: \"MyValue\",\n * });\n * ```\n * @param configurationSetting - A configuration setting.\n * @param options - Optional parameters for the request.\n */\n addConfigurationSetting(\n configurationSetting:\n | AddConfigurationSettingParam\n | AddConfigurationSettingParam<FeatureFlagValue>\n | AddConfigurationSettingParam<SecretReferenceValue>,\n options: AddConfigurationSettingOptions = {},\n ): Promise<AddConfigurationSettingResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.addConfigurationSetting\",\n options,\n async (updatedOptions) => {\n const keyValue = serializeAsConfigurationSettingParam(configurationSetting);\n logger.info(\"[addConfigurationSetting] Creating a key value pair\");\n try {\n const originalResponse = await this.client.putKeyValue(configurationSetting.key, {\n ifNoneMatch: \"*\",\n label: configurationSetting.label,\n entity: keyValue,\n ...updatedOptions,\n });\n const response = transformKeyValueResponse(originalResponse);\n assertResponse(response);\n return response;\n } catch (error) {\n const err = error as RestError;\n // Service does not return an error message. Raise a 412 error similar to .NET\n if (err.statusCode === 412) {\n err.message = `Status 412: Setting was already present`;\n }\n throw err;\n }\n throw new Error(\"Unreachable code\");\n },\n );\n }\n\n /**\n * Delete a setting from the Azure App Configuration service\n *\n * Example usage:\n * ```ts snippet:DeleteConfigurationSetting\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const deletedSetting = await client.deleteConfigurationSetting({\n * key: \"MyKey\",\n * label: \"MyLabel\",\n * });\n * ```\n * @param id - The id of the configuration setting to delete.\n * @param options - Optional parameters for the request (ex: etag, label)\n */\n deleteConfigurationSetting(\n id: ConfigurationSettingId,\n options: DeleteConfigurationSettingOptions = {},\n ): Promise<DeleteConfigurationSettingResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.deleteConfigurationSetting\",\n options,\n async (updatedOptions) => {\n let status;\n logger.info(\"[deleteConfigurationSetting] Deleting key value pair\");\n const originalResponse = await this.client.deleteKeyValue(id.key, {\n label: id.label,\n ...updatedOptions,\n ...checkAndFormatIfAndIfNoneMatch(id, options),\n onResponse: (response) => {\n status = response.status;\n },\n });\n\n const response = transformKeyValueResponseWithStatusCode(originalResponse, status);\n assertResponse(response);\n return response;\n },\n );\n }\n\n /**\n * Gets a setting from the Azure App Configuration service.\n *\n * Example code:\n * ```ts snippet:GetConfigurationSetting\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const setting = await client.getConfigurationSetting({ key: \"MyKey\", label: \"MyLabel\" });\n * ```\n * @param id - The id of the configuration setting to get.\n * @param options - Optional parameters for the request.\n */\n async getConfigurationSetting(\n id: ConfigurationSettingId,\n options: GetConfigurationSettingOptions = {},\n ): Promise<GetConfigurationSettingResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.getConfigurationSetting\",\n options,\n async (updatedOptions) => {\n let status;\n logger.info(\"[getConfigurationSetting] Getting key value pair\");\n const originalResponse = await this.client.getKeyValue(id.key, {\n ...updatedOptions,\n label: id.label,\n select: formatFieldsForSelect(options.fields),\n ...formatAcceptDateTime(options),\n ...checkAndFormatIfAndIfNoneMatch(id, options),\n onResponse: (response) => {\n status = response.status;\n },\n });\n\n const response = transformKeyValueResponseWithStatusCode(originalResponse, status);\n\n // 304 only comes back if the user has passed a conditional option in their\n // request _and_ the remote object has the same etag as what the user passed.\n if (response.statusCode === 304) {\n // this is one of our few 'required' fields so we'll make sure it does get initialized\n // with a value\n response.key = id.key;\n\n // and now we'll undefine all the other properties that are not HTTP related\n makeConfigurationSettingEmpty(response);\n }\n assertResponse(response);\n return response;\n },\n );\n }\n\n /**\n * Lists settings from the Azure App Configuration service, optionally\n * filtered by key names, labels and accept datetime.\n *\n * Example code:\n * ```ts snippet:ListConfigurationSettings\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const allSettingsWithLabel = client.listConfigurationSettings({ labelFilter: \"MyLabel\" });\n * ```\n * @param options - Optional parameters for the request.\n */\n listConfigurationSettings(\n options: ListConfigurationSettingsOptions = {},\n ): PagedAsyncIterableIterator<ConfigurationSetting, ListConfigurationSettingPage, PageSettings> {\n const pageEtags = options.pageEtags ? [...options.pageEtags] : undefined;\n delete options.pageEtags;\n const pagedResult: PagedResult<ListConfigurationSettingPage, PageSettings, string | undefined> =\n {\n firstPageLink: undefined,\n getPage: async (pageLink: string | undefined) => {\n const etag = pageEtags?.shift();\n try {\n const response = await this.sendConfigurationSettingsRequest(\n { ...options, etag },\n pageLink,\n );\n const currentResponse: ListConfigurationSettingPage = {\n ...response,\n items: response.items != null ? response.items?.map(transformKeyValue) : [],\n continuationToken: response.nextLink\n ? extractAfterTokenFromNextLink(response.nextLink)\n : undefined,\n _response: response._response,\n };\n return {\n page: currentResponse,\n nextPageLink: currentResponse.continuationToken,\n };\n } catch (error) {\n const err = error as RestError;\n\n const link = err.response?.headers?.get(\"link\");\n const continuationToken = link ? extractAfterTokenFromLinkHeader(link) : undefined;\n\n if (err.statusCode === 304) {\n err.message = `Status 304: No updates for this page`;\n logger.info(\n `[listConfigurationSettings] No updates for this page. The current etag for the page is ${etag}`,\n );\n return {\n page: {\n items: [],\n etag,\n _response: { ...err.response, status: 304 },\n } as unknown as ListConfigurationSettingPage,\n nextPageLink: continuationToken,\n };\n }\n\n throw err;\n }\n },\n toElements: (page) => page.items,\n };\n return getPagedAsyncIterator(pagedResult);\n }\n\n /**\n * Lists settings from the Azure App Configuration service for snapshots based on name, optionally\n * filtered by key names, labels and accept datetime.\n *\n * Example code:\n * ```ts snippet:ListConfigurationSettingsForSnashots\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const allSettingsWithLabel = client.listConfigurationSettingsForSnashots({\n * snapshotName: \"MySnapshot\",\n * });\n * ```\n * @param options - Optional parameters for the request.\n */\n listConfigurationSettingsForSnapshot(\n snapshotName: string,\n options: ListConfigurationSettingsForSnapshotOptions = {},\n ): PagedAsyncIterableIterator<ConfigurationSetting, ListConfigurationSettingPage, PageSettings> {\n const pagedResult: PagedResult<ListConfigurationSettingPage, PageSettings, string | undefined> =\n {\n firstPageLink: undefined,\n getPage: async (pageLink: string | undefined) => {\n const response = await this.sendConfigurationSettingsRequest(\n { snapshotName, ...options },\n pageLink,\n );\n const currentResponse = {\n ...response,\n items: response.items != null ? response.items?.map(transformKeyValue) : [],\n continuationToken: response.nextLink\n ? extractAfterTokenFromNextLink(response.nextLink)\n : undefined,\n };\n return {\n page: currentResponse,\n nextPageLink: currentResponse.continuationToken,\n };\n },\n toElements: (page) => page.items,\n };\n return getPagedAsyncIterator(pagedResult);\n }\n\n /**\n * Get a list of labels from the Azure App Configuration service\n *\n * Example code:\n * ```ts snippet:ListLabels\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const allSettingsWithLabel = client.listLabels({ nameFilter: \"prod*\" });\n * ```\n * @param options - Optional parameters for the request.\n */\n listLabels(\n options: ListLabelsOptions = {},\n ): PagedAsyncIterableIterator<SettingLabel, ListLabelsPage, PageSettings> {\n const pagedResult: PagedResult<ListLabelsPage, PageSettings, string | undefined> = {\n firstPageLink: undefined,\n getPage: async (pageLink: string | undefined) => {\n const response = await this.sendLabelsRequest(options, pageLink);\n const currentResponse: ListLabelsPage = {\n ...response,\n items: response.items ?? [],\n continuationToken: response.nextLink\n ? extractAfterTokenFromNextLink(response.nextLink)\n : undefined,\n _response: response._response,\n };\n return {\n page: currentResponse,\n nextPageLink: currentResponse.continuationToken,\n };\n },\n toElements: (page) => page.items,\n };\n return getPagedAsyncIterator(pagedResult);\n }\n\n private async sendLabelsRequest(\n options: SendLabelsRequestOptions & PageSettings = {},\n pageLink: string | undefined,\n ): Promise<GetLabelsResponse & HttpResponseField<AppConfigurationGetLabelsHeaders>> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.listConfigurationSettings\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getLabels({\n ...updatedOptions,\n ...formatAcceptDateTime(options),\n ...formatLabelsFiltersAndSelect(options),\n after: pageLink,\n });\n\n return response as GetLabelsResponse & HttpResponseField<AppConfigurationGetLabelsHeaders>;\n },\n );\n }\n\n private async sendConfigurationSettingsRequest(\n options: SendConfigurationSettingsOptions & PageSettings = {},\n pageLink: string | undefined,\n ): Promise<GetKeyValuesResponse & HttpResponseField<AppConfigurationGetKeyValuesHeaders>> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.listConfigurationSettings\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getKeyValues({\n ...updatedOptions,\n ...formatAcceptDateTime(options),\n ...formatConfigurationSettingsFiltersAndSelect(options),\n ...checkAndFormatIfAndIfNoneMatch({ etag: options.etag }, { onlyIfChanged: true }),\n after: pageLink,\n });\n\n return response as GetKeyValuesResponse &\n HttpResponseField<AppConfigurationGetKeyValuesHeaders>;\n },\n );\n }\n\n /**\n * Lists revisions of a set of keys, optionally filtered by key names,\n * labels and accept datetime.\n *\n * Example code:\n * ```ts snippet:ListRevisions\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const revisionsIterator = client.listRevisions({ keys: [\"MyKey\"] });\n * ```\n * @param options - Optional parameters for the request.\n */\n listRevisions(\n options?: ListRevisionsOptions,\n ): PagedAsyncIterableIterator<ConfigurationSetting, ListRevisionsPage, PageSettings> {\n const pagedResult: PagedResult<ListRevisionsPage, PageSettings, string | undefined> = {\n firstPageLink: undefined,\n getPage: async (pageLink: string | undefined) => {\n const response = await this.sendRevisionsRequest(options, pageLink);\n const currentResponse = {\n ...response,\n items: response.items != null ? response.items.map(transformKeyValue) : [],\n continuationToken: response.nextLink\n ? extractAfterTokenFromNextLink(response.nextLink)\n : undefined,\n };\n // let itemList = currentResponse.items;\n return {\n page: currentResponse,\n nextPageLink: currentResponse.continuationToken,\n };\n },\n toElements: (page) => page.items,\n };\n return getPagedAsyncIterator(pagedResult);\n }\n\n private async sendRevisionsRequest(\n options: ListConfigurationSettingsOptions & PageSettings = {},\n pageLink: string | undefined,\n ): Promise<GetKeyValuesResponse & HttpResponseField<AppConfigurationGetKeyValuesHeaders>> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.listRevisions\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getRevisions({\n ...updatedOptions,\n ...formatAcceptDateTime(options),\n ...formatFiltersAndSelect(updatedOptions),\n after: pageLink,\n });\n\n return response as GetRevisionsResponse &\n HttpResponseField<AppConfigurationGetRevisionsHeaders>;\n },\n );\n }\n\n /**\n * Sets the value of a key in the Azure App Configuration service, allowing for an optional etag.\n * @param key - The name of the key.\n * @param configurationSetting - A configuration value.\n * @param options - Optional parameters for the request.\n *\n * Example code:\n * ```ts snippet:SetConfigurationSetting\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * await client.setConfigurationSetting({ key: \"MyKey\", value: \"MyValue\" });\n * ```\n */\n async setConfigurationSetting(\n configurationSetting:\n | SetConfigurationSettingParam\n | SetConfigurationSettingParam<FeatureFlagValue>\n | SetConfigurationSettingParam<SecretReferenceValue>,\n options: SetConfigurationSettingOptions = {},\n ): Promise<SetConfigurationSettingResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.setConfigurationSetting\",\n options,\n async (updatedOptions) => {\n const keyValue = serializeAsConfigurationSettingParam(configurationSetting);\n logger.info(\"[setConfigurationSetting] Setting new key value\");\n const response = transformKeyValueResponse(\n await this.client.putKeyValue(configurationSetting.key, {\n ...updatedOptions,\n label: configurationSetting.label,\n entity: keyValue,\n ...checkAndFormatIfAndIfNoneMatch(configurationSetting, options),\n }),\n );\n assertResponse(response);\n return response;\n },\n );\n }\n\n /**\n * Sets or clears a key's read-only status.\n * @param id - The id of the configuration setting to modify.\n */\n async setReadOnly(\n id: ConfigurationSettingId,\n readOnly: boolean,\n options: SetReadOnlyOptions = {},\n ): Promise<SetReadOnlyResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.setReadOnly\",\n options,\n async (newOptions) => {\n let response;\n if (readOnly) {\n logger.info(\"[setReadOnly] Setting read-only status to ${readOnly}\");\n response = await this.client.putLock(id.key, {\n ...newOptions,\n label: id.label,\n ...checkAndFormatIfAndIfNoneMatch(id, options),\n });\n } else {\n logger.info(\"[setReadOnly] Deleting read-only lock\");\n response = await this.client.deleteLock(id.key, {\n ...newOptions,\n label: id.label,\n ...checkAndFormatIfAndIfNoneMatch(id, options),\n });\n }\n response = transformKeyValueResponse(response);\n assertResponse(response);\n return response;\n },\n );\n }\n\n /**\n * Adds an external synchronization token to ensure service requests receive up-to-date values.\n *\n * @param syncToken - The synchronization token value.\n */\n updateSyncToken(syncToken: string): void {\n this._syncTokens.addSyncTokenFromHeaderValue(syncToken);\n }\n\n /**\n * Begins creating a snapshot for Azure App Configuration service, fails if it\n * already exists.\n */\n beginCreateSnapshot(\n snapshot: SnapshotInfo,\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: CreateSnapshotOptions = {},\n ): Promise<SimplePollerLike<OperationState<CreateSnapshotResponse>, CreateSnapshotResponse>> {\n return tracingClient.withSpan(\n `${AppConfigurationClient.name}.beginCreateSnapshot`,\n options,\n (updatedOptions) =>\n this.client.beginCreateSnapshot(snapshot.name, snapshot, { ...updatedOptions }),\n );\n }\n\n /**\n * Begins creating a snapshot for Azure App Configuration service, waits until it is done,\n * fails if it already exists.\n */\n beginCreateSnapshotAndWait(\n snapshot: SnapshotInfo,\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: CreateSnapshotOptions = {},\n ): Promise<CreateSnapshotResponse> {\n return tracingClient.withSpan(\n `${AppConfigurationClient.name}.beginCreateSnapshotAndWait`,\n options,\n (updatedOptions) =>\n this.client.beginCreateSnapshotAndWait(snapshot.name, snapshot, { ...updatedOptions }),\n );\n }\n\n /**\n * Get a snapshot from Azure App Configuration service\n *\n * Example usage:\n * ```ts snippet:GetSnapshot\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const retrievedSnapshot = await client.getSnapshot(\"testsnapshot\");\n * console.log(\"Retrieved snapshot:\", retrievedSnapshot);\n * ```\n * @param name - The name of the snapshot.\n * @param options - Optional parameters for the request.\n */\n getSnapshot(name: string, options: GetSnapshotOptions = {}): Promise<GetSnapshotResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.getSnapshot\",\n options,\n async (updatedOptions) => {\n logger.info(\"[getSnapshot] Get a snapshot\");\n const originalResponse = await this.client.getSnapshot(name, {\n ...updatedOptions,\n });\n const response = transformSnapshotResponse(originalResponse);\n assertResponse(response);\n return response;\n },\n );\n }\n\n /**\n * Recover an archived snapshot back to ready status\n *\n * Example usage:\n * ```ts snippet:RecoverSnapshot\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const result = await client.recoverSnapshot(\"MySnapshot\");\n * ```\n * @param name - The name of the snapshot.\n * @param options - Optional parameters for the request.\n */\n recoverSnapshot(\n name: string,\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: UpdateSnapshotOptions = {},\n ): Promise<UpdateSnapshotResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.recoverSnapshot\",\n options,\n async (updatedOptions) => {\n logger.info(\"[recoverSnapshot] Recover a snapshot\");\n const originalResponse = await this.client.updateSnapshot(\n name,\n { status: \"ready\" },\n {\n ...updatedOptions,\n ...checkAndFormatIfAndIfNoneMatch(\n { etag: options.etag },\n { onlyIfUnchanged: true, ...options },\n ),\n },\n );\n const response = transformSnapshotResponse(originalResponse);\n assertResponse(response);\n return response;\n },\n );\n }\n /**\n * Archive a ready snapshot\n *\n * Example usage:\n * ```ts snippet:ArchiveSnapshot\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const result = await client.archiveSnapshot({ name: \"MySnapshot\" });\n * ```\n * @param name - The name of the snapshot.\n * @param options - Optional parameters for the request.\n */\n archiveSnapshot(\n name: string,\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: UpdateSnapshotOptions = {},\n ): Promise<UpdateSnapshotResponse> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.archiveSnapshot\",\n options,\n async (updatedOptions) => {\n logger.info(\"[archiveSnapshot] Archive a snapshot\");\n const originalResponse = await this.client.updateSnapshot(\n name,\n { status: \"archived\" },\n {\n ...updatedOptions,\n ...checkAndFormatIfAndIfNoneMatch(\n { etag: options.etag },\n { onlyIfUnchanged: true, ...options },\n ),\n },\n );\n const response = transformSnapshotResponse(originalResponse);\n assertResponse(response);\n return response;\n },\n );\n }\n\n /**\n * List all snapshots from Azure App Configuration service\n *\n * Example usage:\n * ```ts snippet:ListSnapshots\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { AppConfigurationClient } from \"@azure/app-configuration\";\n *\n * // The endpoint for your App Configuration resource\n * const endpoint = \"https://example.azconfig.io\";\n * const credential = new DefaultAzureCredential();\n * const client = new AppConfigurationClient(endpoint, credential);\n *\n * const snapshots = await client.listSnapshots();\n *\n * for await (const snapshot of snapshots) {\n * console.log(`Found snapshot: ${snapshot.name}`);\n * }\n * ```\n * @param options - Optional parameters for the request.\n */\n listSnapshots(\n options: ListSnapshotsOptions = {},\n ): PagedAsyncIterableIterator<ConfigurationSnapshot, ListSnapshotsPage, PageSettings> {\n const pagedResult: PagedResult<ListSnapshotsPage, PageSettings, string | undefined> = {\n firstPageLink: undefined,\n getPage: async (pageLink: string | undefined) => {\n const response = await this.sendSnapShotsRequest(options, pageLink);\n const currentResponse = {\n ...response,\n items: response.items != null ? response.items : [],\n continuationToken: response.nextLink\n ? extractAfterTokenFromNextLink(response.nextLink)\n : undefined,\n };\n return {\n page: currentResponse,\n nextPageLink: currentResponse.continuationToken,\n };\n },\n toElements: (page) => page.items,\n };\n return getPagedAsyncIterator(pagedResult);\n }\n\n private async sendSnapShotsRequest(\n options: ListSnapshotsOptions & PageSettings = {},\n pageLink: string | undefined,\n ): Promise<GetSnapshotsResponse & HttpResponseField<AppConfigurationGetSnapshotsHeaders>> {\n return tracingClient.withSpan(\n \"AppConfigurationClient.listSnapshots\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getSnapshots({\n ...updatedOptions,\n ...formatSnapshotFiltersAndSelect(options),\n after: pageLink,\n });\n\n return response as GetSnapshotsResponse &\n HttpResponseField<AppConfigurationGetSnapshotsHeaders>;\n },\n );\n }\n}\n"]}
@@ -27,7 +27,6 @@ export interface FeatureFlagValue {
27
27
  name: string;
28
28
  parameters?: Record<string, unknown>;
29
29
  }[];
30
- requirementType?: "All" | "Any";
31
30
  };
32
31
  /**
33
32
  * Description of the feature.
@@ -1 +1 @@
1
- {"version":3,"file":"featureFlag.d.ts","sourceRoot":"","sources":["../../src/featureFlag.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAInF;;GAEG;AACH,eAAO,MAAM,iBAAiB,4BAA4B,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,sBAAsB,8DAA8D,CAAC;AAElG;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;;;;;OAMG;IACH,UAAU,EAAE;QACV,aAAa,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,EAAE,CAAC;QACxE,eAAe,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;KACjC,CAAC;IACF;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB;IAC5B;;OAEG;+CAEY,yBAAyB,CAAC,gBAAgB,CAAC,KACvD,yBAAyB;CA4B7B,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,oBAAoB,GAC5B,oBAAoB,CAAC,gBAAgB,CAAC,CAgCxC;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,oBAAoB,GAC5B,OAAO,IAAI,oBAAoB,GAAG,QAAQ,CAAC,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC,CAIjF"}
1
+ {"version":3,"file":"featureFlag.d.ts","sourceRoot":"","sources":["../../src/featureFlag.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAInF;;GAEG;AACH,eAAO,MAAM,iBAAiB,4BAA4B,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,sBAAsB,8DAA8D,CAAC;AAElG;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;;;;;OAMG;IACH,UAAU,EAAE;QACV,aAAa,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,EAAE,CAAC;KACzE,CAAC;IACF;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB;IAC5B;;OAEG;+CAEY,yBAAyB,CAAC,gBAAgB,CAAC,KACvD,yBAAyB;CA2B7B,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,oBAAoB,GAC5B,oBAAoB,CAAC,gBAAgB,CAAC,CA4BxC;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,oBAAoB,GAC5B,OAAO,IAAI,oBAAoB,GAAG,QAAQ,CAAC,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC,CAIjF"}
@@ -32,7 +32,6 @@ export const FeatureFlagHelper = {
32
32
  description: featureFlag.value.description,
33
33
  conditions: {
34
34
  client_filters: featureFlag.value.conditions.clientFilters,
35
- requirement_type: featureFlag.value.conditions.requirementType ?? "Any",
36
35
  },
37
36
  display_name: featureFlag.value.displayName,
38
37
  };
@@ -70,9 +69,6 @@ export function parseFeatureFlag(setting) {
70
69
  key,
71
70
  contentType: featureFlagContentType,
72
71
  };
73
- if (jsonFeatureFlagValue.conditions.requirement_type) {
74
- featureflag.value.conditions.requirementType = jsonFeatureFlagValue.conditions.requirement_type;
75
- }
76
72
  return featureflag;
77
73
  }
78
74
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"featureFlag.js","sourceRoot":"","sources":["../../src/featureFlag.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { ConfigurationSetting, ConfigurationSettingParam } from \"./models.js\";\nimport type { JsonFeatureFlagValue } from \"./internal/jsonModels.js\";\nimport { logger } from \"./logger.js\";\n\n/**\n * The prefix for feature flags.\n */\nexport const featureFlagPrefix = \".appconfig.featureflag/\";\n\n/**\n * The content type for a FeatureFlag\n */\nexport const featureFlagContentType = \"application/vnd.microsoft.appconfig.ff+json;charset=utf-8\";\n\n/**\n * Value of a feature flag\n */\nexport interface FeatureFlagValue {\n /**\n * Id for the feature flag.\n */\n id?: string;\n /**\n * A Feature filter consistently evaluates the state of a feature flag.\n * Our feature management library supports three types of built-in filters: Targeting, TimeWindow, and Percentage.\n * Custom filters can also be created based on different factors, such as device used, browser types, geographic location, etc.\n *\n * [More Info](https://learn.microsoft.com/azure/azure-app-configuration/howto-feature-filters-aspnet-core)\n */\n conditions: {\n clientFilters: { name: string; parameters?: Record<string, unknown> }[];\n requirementType?: \"All\" | \"Any\";\n };\n /**\n * Description of the feature.\n */\n description?: string;\n /**\n * Boolean flag to say if the feature flag is enabled.\n */\n enabled: boolean;\n /**\n * Display name for the feature to use for display rather than the ID.\n */\n displayName?: string;\n}\n\n/**\n * @internal\n */\nexport const FeatureFlagHelper = {\n /**\n * Takes the FeatureFlag (JSON) and returns a ConfigurationSetting (with the props encodeed in the value).\n */\n toConfigurationSettingParam: (\n featureFlag: ConfigurationSettingParam<FeatureFlagValue>,\n ): ConfigurationSettingParam => {\n logger.info(\"Encoding FeatureFlag value in a ConfigurationSetting:\", featureFlag);\n if (!featureFlag.value) {\n logger.error(\"FeatureFlag has an unexpected value\", featureFlag);\n throw new TypeError(`FeatureFlag has an unexpected value - ${featureFlag.value}`);\n }\n let key = featureFlag.key;\n if (typeof featureFlag.key === \"string\" && !featureFlag.key.startsWith(featureFlagPrefix)) {\n key = featureFlagPrefix + featureFlag.key;\n }\n const jsonFeatureFlagValue: JsonFeatureFlagValue = {\n id: featureFlag.value.id ?? key.replace(featureFlagPrefix, \"\"),\n enabled: featureFlag.value.enabled,\n description: featureFlag.value.description,\n conditions: {\n client_filters: featureFlag.value.conditions.clientFilters,\n requirement_type: featureFlag.value.conditions.requirementType ?? \"Any\",\n },\n display_name: featureFlag.value.displayName,\n };\n\n const configSetting = {\n ...featureFlag,\n key,\n value: JSON.stringify(jsonFeatureFlagValue),\n };\n return configSetting;\n },\n};\n\n/**\n * Takes the ConfigurationSetting as input and returns the ConfigurationSetting<FeatureFlagValue> by parsing the value string.\n */\nexport function parseFeatureFlag(\n setting: ConfigurationSetting,\n): ConfigurationSetting<FeatureFlagValue> {\n logger.info(\"Parsing the value to return the FeatureFlagValue\", setting);\n if (!isFeatureFlag(setting)) {\n logger.error(\"Invalid FeatureFlag input\", setting);\n throw TypeError(\n `Setting with key ${setting.key} is not a valid FeatureFlag, make sure to have the correct content-type and a valid non-null value.`,\n );\n }\n\n const jsonFeatureFlagValue = JSON.parse(setting.value) as JsonFeatureFlagValue;\n\n let key = setting.key;\n if (typeof setting.key === \"string\" && !setting.key.startsWith(featureFlagPrefix)) {\n key = featureFlagPrefix + setting.key;\n }\n const featureflag: ConfigurationSetting<FeatureFlagValue> = {\n ...setting,\n value: {\n id: jsonFeatureFlagValue.id,\n enabled: jsonFeatureFlagValue.enabled,\n description: jsonFeatureFlagValue.description,\n displayName: jsonFeatureFlagValue.display_name,\n conditions: { clientFilters: jsonFeatureFlagValue.conditions.client_filters },\n },\n key,\n contentType: featureFlagContentType,\n };\n\n if (jsonFeatureFlagValue.conditions.requirement_type) {\n featureflag.value.conditions.requirementType = jsonFeatureFlagValue.conditions.requirement_type;\n }\n return featureflag;\n}\n\n/**\n * Lets you know if the ConfigurationSetting is a feature flag.\n *\n * [Checks if the content type is featureFlagContentType `\"application/vnd.microsoft.appconfig.ff+json;charset=utf-8\"`]\n */\nexport function isFeatureFlag(\n setting: ConfigurationSetting,\n): setting is ConfigurationSetting & Required<Pick<ConfigurationSetting, \"value\">> {\n return (\n setting && setting.contentType === featureFlagContentType && typeof setting.value === \"string\"\n );\n}\n"]}
1
+ {"version":3,"file":"featureFlag.js","sourceRoot":"","sources":["../../src/featureFlag.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { ConfigurationSetting, ConfigurationSettingParam } from \"./models.js\";\nimport type { JsonFeatureFlagValue } from \"./internal/jsonModels.js\";\nimport { logger } from \"./logger.js\";\n\n/**\n * The prefix for feature flags.\n */\nexport const featureFlagPrefix = \".appconfig.featureflag/\";\n\n/**\n * The content type for a FeatureFlag\n */\nexport const featureFlagContentType = \"application/vnd.microsoft.appconfig.ff+json;charset=utf-8\";\n\n/**\n * Value of a feature flag\n */\nexport interface FeatureFlagValue {\n /**\n * Id for the feature flag.\n */\n id?: string;\n /**\n * A Feature filter consistently evaluates the state of a feature flag.\n * Our feature management library supports three types of built-in filters: Targeting, TimeWindow, and Percentage.\n * Custom filters can also be created based on different factors, such as device used, browser types, geographic location, etc.\n *\n * [More Info](https://learn.microsoft.com/azure/azure-app-configuration/howto-feature-filters-aspnet-core)\n */\n conditions: {\n clientFilters: { name: string; parameters?: Record<string, unknown> }[];\n };\n /**\n * Description of the feature.\n */\n description?: string;\n /**\n * Boolean flag to say if the feature flag is enabled.\n */\n enabled: boolean;\n /**\n * Display name for the feature to use for display rather than the ID.\n */\n displayName?: string;\n}\n\n/**\n * @internal\n */\nexport const FeatureFlagHelper = {\n /**\n * Takes the FeatureFlag (JSON) and returns a ConfigurationSetting (with the props encodeed in the value).\n */\n toConfigurationSettingParam: (\n featureFlag: ConfigurationSettingParam<FeatureFlagValue>,\n ): ConfigurationSettingParam => {\n logger.info(\"Encoding FeatureFlag value in a ConfigurationSetting:\", featureFlag);\n if (!featureFlag.value) {\n logger.error(\"FeatureFlag has an unexpected value\", featureFlag);\n throw new TypeError(`FeatureFlag has an unexpected value - ${featureFlag.value}`);\n }\n let key = featureFlag.key;\n if (typeof featureFlag.key === \"string\" && !featureFlag.key.startsWith(featureFlagPrefix)) {\n key = featureFlagPrefix + featureFlag.key;\n }\n const jsonFeatureFlagValue: JsonFeatureFlagValue = {\n id: featureFlag.value.id ?? key.replace(featureFlagPrefix, \"\"),\n enabled: featureFlag.value.enabled,\n description: featureFlag.value.description,\n conditions: {\n client_filters: featureFlag.value.conditions.clientFilters,\n },\n display_name: featureFlag.value.displayName,\n };\n\n const configSetting = {\n ...featureFlag,\n key,\n value: JSON.stringify(jsonFeatureFlagValue),\n };\n return configSetting;\n },\n};\n\n/**\n * Takes the ConfigurationSetting as input and returns the ConfigurationSetting<FeatureFlagValue> by parsing the value string.\n */\nexport function parseFeatureFlag(\n setting: ConfigurationSetting,\n): ConfigurationSetting<FeatureFlagValue> {\n logger.info(\"Parsing the value to return the FeatureFlagValue\", setting);\n if (!isFeatureFlag(setting)) {\n logger.error(\"Invalid FeatureFlag input\", setting);\n throw TypeError(\n `Setting with key ${setting.key} is not a valid FeatureFlag, make sure to have the correct content-type and a valid non-null value.`,\n );\n }\n\n const jsonFeatureFlagValue = JSON.parse(setting.value) as JsonFeatureFlagValue;\n\n let key = setting.key;\n if (typeof setting.key === \"string\" && !setting.key.startsWith(featureFlagPrefix)) {\n key = featureFlagPrefix + setting.key;\n }\n const featureflag: ConfigurationSetting<FeatureFlagValue> = {\n ...setting,\n value: {\n id: jsonFeatureFlagValue.id,\n enabled: jsonFeatureFlagValue.enabled,\n description: jsonFeatureFlagValue.description,\n displayName: jsonFeatureFlagValue.display_name,\n conditions: { clientFilters: jsonFeatureFlagValue.conditions.client_filters },\n },\n key,\n contentType: featureFlagContentType,\n };\n return featureflag;\n}\n\n/**\n * Lets you know if the ConfigurationSetting is a feature flag.\n *\n * [Checks if the content type is featureFlagContentType `\"application/vnd.microsoft.appconfig.ff+json;charset=utf-8\"`]\n */\nexport function isFeatureFlag(\n setting: ConfigurationSetting,\n): setting is ConfigurationSetting & Required<Pick<ConfigurationSetting, \"value\">> {\n return (\n setting && setting.contentType === featureFlagContentType && typeof setting.value === \"string\"\n );\n}\n"]}
@@ -2,5 +2,4 @@ export { AppConfigurationClient } from "./appConfigurationClient.js";
2
2
  export { featureFlagContentType, featureFlagPrefix, FeatureFlagValue, isFeatureFlag, parseFeatureFlag, } from "./featureFlag.js";
3
3
  export * from "./models.js";
4
4
  export { isSecretReference, parseSecretReference, secretReferenceContentType, SecretReferenceValue, } from "./secretReference.js";
5
- export { isSnapshotReference, parseSnapshotReference, snapshotReferenceContentType, SnapshotReferenceValue, } from "./snapshotReference.js";
6
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,sBAAsB,CAAC"}
package/dist/esm/index.js CHANGED
@@ -4,5 +4,4 @@ export { AppConfigurationClient } from "./appConfigurationClient.js";
4
4
  export { featureFlagContentType, featureFlagPrefix, isFeatureFlag, parseFeatureFlag, } from "./featureFlag.js";
5
5
  export * from "./models.js";
6
6
  export { isSecretReference, parseSecretReference, secretReferenceContentType, } from "./secretReference.js";
7
- export { isSnapshotReference, parseSnapshotReference, snapshotReferenceContentType, } from "./snapshotReference.js";
8
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EAEjB,aAAa,EACb,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,GAE3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,GAE7B,MAAM,wBAAwB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport { AppConfigurationClient } from \"./appConfigurationClient.js\";\nexport {\n featureFlagContentType,\n featureFlagPrefix,\n FeatureFlagValue,\n isFeatureFlag,\n parseFeatureFlag,\n} from \"./featureFlag.js\";\nexport * from \"./models.js\";\nexport {\n isSecretReference,\n parseSecretReference,\n secretReferenceContentType,\n SecretReferenceValue,\n} from \"./secretReference.js\";\nexport {\n isSnapshotReference,\n parseSnapshotReference,\n snapshotReferenceContentType,\n SnapshotReferenceValue,\n} from \"./snapshotReference.js\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EAEjB,aAAa,EACb,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,0BAA0B,GAE3B,MAAM,sBAAsB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport { AppConfigurationClient } from \"./appConfigurationClient.js\";\nexport {\n featureFlagContentType,\n featureFlagPrefix,\n FeatureFlagValue,\n isFeatureFlag,\n parseFeatureFlag,\n} from \"./featureFlag.js\";\nexport * from \"./models.js\";\nexport {\n isSecretReference,\n parseSecretReference,\n secretReferenceContentType,\n SecretReferenceValue,\n} from \"./secretReference.js\";\n"]}
@@ -2,7 +2,6 @@ import { type ConfigurationSetting, type ConfigurationSettingParam, type HttpOnl
2
2
  import type { FeatureFlagValue } from "../featureFlag.js";
3
3
  import type { GetKeyValuesOptionalParams, GetLabelsOptionalParams, GetSnapshotsOptionalParams, KeyValue } from "../generated/src/models/index.js";
4
4
  import type { SecretReferenceValue } from "../secretReference.js";
5
- import type { SnapshotReferenceValue } from "../snapshotReference.js";
6
5
  import type { OperationOptions } from "@azure/core-client";
7
6
  /**
8
7
  * Options for listConfigurationSettings that allow for filtering based on keys, labels and other fields.
@@ -113,7 +112,7 @@ export declare function transformKeyValue<T>(kvp: T & KeyValue): T & Configurati
113
112
  /**
114
113
  * @internal
115
114
  */
116
- export declare function serializeAsConfigurationSettingParam(setting: ConfigurationSettingParam | ConfigurationSettingParam<FeatureFlagValue> | ConfigurationSettingParam<SecretReferenceValue> | ConfigurationSettingParam<SnapshotReferenceValue>): ConfigurationSettingParam;
115
+ export declare function serializeAsConfigurationSettingParam(setting: ConfigurationSettingParam | ConfigurationSettingParam<FeatureFlagValue> | ConfigurationSettingParam<SecretReferenceValue>): ConfigurationSettingParam;
117
116
  /**
118
117
  * @internal
119
118
  */
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/internal/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/internal/helpers.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,6 @@
3
3
  import { KnownAppConfigAudience, } from "../models.js";
4
4
  import { FeatureFlagHelper, featureFlagContentType } from "../featureFlag.js";
5
5
  import { SecretReferenceHelper, secretReferenceContentType } from "../secretReference.js";
6
- import { SnapshotReferenceHelper, snapshotReferenceContentType } from "../snapshotReference.js";
7
6
  import { isDefined } from "@azure/core-util";
8
7
  import { logger } from "../logger.js";
9
8
  /**
@@ -205,14 +204,6 @@ function isConfigSettingWithSecretReferenceValue(setting) {
205
204
  isDefined(setting.value) &&
206
205
  typeof setting.value !== "string");
207
206
  }
208
- /**
209
- * @internal
210
- */
211
- function isConfigSettingWithSnapshotReferenceValue(setting) {
212
- return (setting.contentType === snapshotReferenceContentType &&
213
- isDefined(setting.value) &&
214
- typeof setting.value !== "string");
215
- }
216
207
  /**
217
208
  * @internal
218
209
  */
@@ -241,9 +232,6 @@ export function serializeAsConfigurationSettingParam(setting) {
241
232
  if (isConfigSettingWithSecretReferenceValue(setting)) {
242
233
  return SecretReferenceHelper.toConfigurationSettingParam(setting);
243
234
  }
244
- if (isConfigSettingWithSnapshotReferenceValue(setting)) {
245
- return SnapshotReferenceHelper.toConfigurationSettingParam(setting);
246
- }
247
235
  }
248
236
  catch (error) {
249
237
  return setting;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/internal/helpers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n type ConfigurationSetting,\n type ConfigurationSettingParam,\n type HttpOnlyIfChangedField,\n type HttpOnlyIfUnchangedField,\n type HttpResponseField,\n type HttpResponseFields,\n type ListRevisionsOptions,\n type ListSettingsOptions,\n type ListSnapshotsOptions,\n type ConfigurationSnapshot,\n type SnapshotResponse,\n type EtagEntity,\n type ListLabelsOptions,\n KnownAppConfigAudience,\n} from \"../models.js\";\nimport type { FeatureFlagValue } from \"../featureFlag.js\";\nimport { FeatureFlagHelper, featureFlagContentType } from \"../featureFlag.js\";\nimport type {\n GetKeyValuesOptionalParams,\n GetLabelsOptionalParams,\n GetSnapshotsOptionalParams,\n KeyValue,\n} from \"../generated/src/models/index.js\";\nimport type { SecretReferenceValue } from \"../secretReference.js\";\nimport { SecretReferenceHelper, secretReferenceContentType } from \"../secretReference.js\";\nimport type { SnapshotReferenceValue } from \"../snapshotReference.js\";\nimport { SnapshotReferenceHelper, snapshotReferenceContentType } from \"../snapshotReference.js\";\nimport { isDefined } from \"@azure/core-util\";\nimport { logger } from \"../logger.js\";\nimport type { OperationOptions } from \"@azure/core-client\";\n\n/**\n * Options for listConfigurationSettings that allow for filtering based on keys, labels and other fields.\n * Also provides `fields` which allows you to selectively choose which fields are populated in the\n * result.\n */\nexport interface SendConfigurationSettingsOptions\n extends OperationOptions,\n ListSettingsOptions,\n EtagEntity {\n /**\n * A filter used get configuration setting for a snapshot. Not valid when used with 'key' and 'label' filters\n */\n snapshotName?: string;\n}\n\n/**\n * Options for listLabels that allow for filtering based on keys, labels and other fields.\n * Also provides `fields` which allows you to selectively choose which fields are populated in the\n * result.\n */\nexport interface SendLabelsRequestOptions extends ListLabelsOptions {}\n\n/**\n * Formats the etag so it can be used with a If-Match/If-None-Match header\n * @internal\n */\nexport function quoteETag(etag: string | undefined): string | undefined {\n // https://tools.ietf.org/html/rfc7232#section-3.1\n if (etag === undefined || etag === \"*\") {\n return etag;\n }\n\n if (etag.startsWith('\"') && etag.endsWith('\"')) {\n return etag;\n }\n\n if (etag.startsWith(\"'\") && etag.endsWith(\"'\")) {\n return etag;\n }\n\n return `\"${etag}\"`;\n}\n\n/**\n * Checks the onlyIfChanged/onlyIfUnchanged properties to make sure we haven't specified both\n * and throws an Error. Otherwise, returns the properties properly quoted.\n * @param options - An options object with onlyIfChanged/onlyIfUnchanged fields\n * @internal\n */\nexport function checkAndFormatIfAndIfNoneMatch(\n objectWithEtag: EtagEntity,\n options: HttpOnlyIfChangedField & HttpOnlyIfUnchangedField,\n): { ifMatch: string | undefined; ifNoneMatch: string | undefined } {\n if (options.onlyIfChanged && options.onlyIfUnchanged) {\n logger.error(\n \"onlyIfChanged and onlyIfUnchanged are both specified\",\n options.onlyIfChanged,\n options.onlyIfUnchanged,\n );\n throw new Error(\"onlyIfChanged and onlyIfUnchanged are mutually-exclusive\");\n }\n\n let ifMatch;\n let ifNoneMatch;\n\n if (options.onlyIfUnchanged) {\n ifMatch = quoteETag(objectWithEtag.etag);\n }\n\n if (options.onlyIfChanged) {\n ifNoneMatch = quoteETag(objectWithEtag.etag);\n }\n\n return {\n ifMatch: ifMatch,\n ifNoneMatch: ifNoneMatch,\n };\n}\n\n/**\n * Transforms some of the key fields in SendConfigurationSettingsOptions and ListRevisionsOptions\n * so they can be added to a request using AppConfigurationGetKeyValuesOptionalParams.\n * - `options.acceptDateTime` is converted into an ISO string\n * - `select` is populated with the proper field names from `options.fields`\n * - keyFilter and labelFilter are moved to key and label, respectively.\n *\n * @internal\n */\nexport function formatFiltersAndSelect(\n listConfigOptions: ListRevisionsOptions,\n): Pick<GetKeyValuesOptionalParams, \"key\" | \"label\" | \"select\" | \"acceptDatetime\" | \"tags\"> {\n let acceptDatetime: string | undefined = undefined;\n\n if (listConfigOptions.acceptDateTime) {\n acceptDatetime = listConfigOptions.acceptDateTime.toISOString();\n }\n return {\n key: listConfigOptions.keyFilter,\n label: listConfigOptions.labelFilter,\n tags: listConfigOptions.tagsFilter,\n acceptDatetime,\n select: formatFieldsForSelect(listConfigOptions.fields),\n };\n}\n\n/**\n * Transforms some of the key fields in SendConfigurationSettingsOptions\n * so they can be added to a request using AppConfigurationGetKeyValuesOptionalParams.\n * - `options.acceptDateTime` is converted into an ISO string\n * - `select` is populated with the proper field names from `options.fields`\n * - keyFilter, labelFilter, snapshotName are moved to key, label, and snapshot respectively.\n *\n * @internal\n */\nexport function formatConfigurationSettingsFiltersAndSelect(\n listConfigOptions: SendConfigurationSettingsOptions,\n): Pick<\n GetKeyValuesOptionalParams,\n \"key\" | \"label\" | \"select\" | \"acceptDatetime\" | \"snapshot\" | \"tags\"\n> {\n const { snapshotName: snapshot, ...options } = listConfigOptions;\n return {\n ...formatFiltersAndSelect(options),\n snapshot,\n };\n}\n/**\n * Transforms some of the key fields in ListSnapshotsOptions\n * so they can be added to a request using AppConfigurationGetSnapshotsOptionalParams.\n * - `select` is populated with the proper field names from `options.fields`\n * - keyFilter and labelFilter are moved to key and label, respectively.\n *\n * @internal\n */\nexport function formatSnapshotFiltersAndSelect(\n listSnapshotOptions: ListSnapshotsOptions,\n): Pick<GetSnapshotsOptionalParams, \"name\" | \"select\" | \"status\"> {\n return {\n name: listSnapshotOptions.nameFilter,\n status: listSnapshotOptions.statusFilter,\n select: listSnapshotOptions.fields,\n };\n}\n\n/**\n * Transforms some of the key fields in ListLabelsOptions\n * so they can be added to a request using AppConfigurationGetLabelsOptionalParams.\n * - `select` is populated with the proper field names from `options.fields`\n * - `nameFilter` are moved to name\n *\n * @internal\n */\nexport function formatLabelsFiltersAndSelect(\n listLabelsOptions: ListLabelsOptions,\n): Pick<GetLabelsOptionalParams, \"name\" | \"select\"> {\n return {\n name: listLabelsOptions.nameFilter,\n select: listLabelsOptions.fields,\n };\n}\n/**\n * Handles translating a Date acceptDateTime into a string as needed by the API\n * @param newOptions - A newer style options with acceptDateTime as a date (and with proper casing!)\n * @internal\n */\nexport function formatAcceptDateTime(newOptions: { acceptDateTime?: Date }): {\n acceptDatetime?: string;\n} {\n return {\n acceptDatetime: newOptions.acceptDateTime && newOptions.acceptDateTime.toISOString(),\n };\n}\n\n/**\n * Take the URL that gets returned from next link and extract the 'after' token needed\n * to get the next page of results.\n * @internal\n */\nexport function extractAfterTokenFromNextLink(nextLink: string): string {\n const searchParams = new URLSearchParams(nextLink);\n const afterToken = searchParams.get(\"after\");\n\n if (afterToken == null || Array.isArray(afterToken)) {\n logger.error(\"Invalid nextLink - invalid after token\", afterToken, Array.isArray(afterToken));\n throw new Error(\"Invalid nextLink - invalid after token\");\n }\n\n return decodeURIComponent(afterToken);\n}\n\n/**\n * Take the header link that gets returned from 304 response and extract the 'after' token needed\n * to get the next page of results.\n *\n * @internal\n */\nexport function extractAfterTokenFromLinkHeader(link: string): string {\n // Example transformation of the link header\n // link:\n // '</kv?api-version=2023-10-01&key=listResults714&after=bGlzdE4>; rel=\"next\"'\n //\n // linkValue:\n // </kv?api-version=2023-10-01&key=listResults714&after=bGlzdE4>\n //\n // nextLink:\n // /kv?api-version=2023-10-01&key=listResults714&after=bGlzdE4\n const linkValue = link.split(\";\")[0];\n const nextLink = linkValue.substring(1, linkValue.length - 1);\n return extractAfterTokenFromNextLink(nextLink);\n}\n\n/**\n * Makes a ConfigurationSetting-based response throw for all of the data members. Used primarily\n * to prevent possible errors by the user in accessing a model that is uninitialized. This can happen\n * in cases like HTTP status code 204 or 304, which return an empty response body.\n *\n * @param configurationSetting - The configuration setting to alter\n */\nexport function makeConfigurationSettingEmpty(\n configurationSetting: Partial<Record<Exclude<keyof ConfigurationSetting, \"key\">, any>>,\n): void {\n const names: Exclude<keyof ConfigurationSetting, \"key\">[] = [\n \"contentType\",\n \"etag\",\n \"label\",\n \"lastModified\",\n \"isReadOnly\",\n \"tags\",\n \"value\",\n ];\n\n for (const name of names) {\n configurationSetting[name] = undefined;\n }\n}\n\n/**\n * @internal\n */\nexport function transformKeyValue<T>(kvp: T & KeyValue): T & ConfigurationSetting {\n const setting: T & ConfigurationSetting & KeyValue = {\n value: undefined,\n ...kvp,\n isReadOnly: !!kvp.locked,\n };\n delete setting.locked;\n if (!setting.label) {\n delete setting.label;\n }\n if (!setting.contentType) {\n delete setting.contentType;\n }\n return setting;\n}\n\n/**\n * @internal\n */\nfunction isConfigSettingWithSecretReferenceValue(\n setting: any,\n): setting is ConfigurationSetting<SecretReferenceValue> {\n return (\n setting.contentType === secretReferenceContentType &&\n isDefined(setting.value) &&\n typeof setting.value !== \"string\"\n );\n}\n\n/**\n * @internal\n */\nfunction isConfigSettingWithSnapshotReferenceValue(\n setting: any,\n): setting is ConfigurationSetting<SnapshotReferenceValue> {\n return (\n setting.contentType === snapshotReferenceContentType &&\n isDefined(setting.value) &&\n typeof setting.value !== \"string\"\n );\n}\n\n/**\n * @internal\n */\nfunction isConfigSettingWithFeatureFlagValue(\n setting: any,\n): setting is ConfigurationSetting<FeatureFlagValue> {\n return (\n setting.contentType === featureFlagContentType &&\n isDefined(setting.value) &&\n typeof setting.value !== \"string\"\n );\n}\n\n/**\n * @internal\n */\nfunction isSimpleConfigSetting(setting: any): setting is ConfigurationSetting {\n return typeof setting.value === \"string\" || !isDefined(setting.value);\n}\n\n/**\n * @internal\n */\nexport function serializeAsConfigurationSettingParam(\n setting:\n | ConfigurationSettingParam\n | ConfigurationSettingParam<FeatureFlagValue>\n | ConfigurationSettingParam<SecretReferenceValue>\n | ConfigurationSettingParam<SnapshotReferenceValue>,\n): ConfigurationSettingParam {\n if (isSimpleConfigSetting(setting)) {\n return setting as ConfigurationSettingParam;\n }\n try {\n if (isConfigSettingWithFeatureFlagValue(setting)) {\n return FeatureFlagHelper.toConfigurationSettingParam(setting);\n }\n if (isConfigSettingWithSecretReferenceValue(setting)) {\n return SecretReferenceHelper.toConfigurationSettingParam(setting);\n }\n if (isConfigSettingWithSnapshotReferenceValue(setting)) {\n return SnapshotReferenceHelper.toConfigurationSettingParam(setting);\n }\n } catch (error: any) {\n return setting as ConfigurationSettingParam;\n }\n logger.error(\"Unable to serialize to a configuration setting\", setting);\n throw new TypeError(\n `Unable to serialize the setting with key \"${setting.key}\" as a configuration setting`,\n );\n}\n\n/**\n * @internal\n */\nexport function transformKeyValueResponseWithStatusCode<T extends KeyValue>(\n kvp: T,\n status: number | undefined,\n): ConfigurationSetting & { eTag?: string } & HttpResponseFields {\n const response = {\n ...transformKeyValue(kvp),\n statusCode: status ?? -1,\n };\n\n if (hasUnderscoreResponse(kvp)) {\n Object.defineProperty(response, \"_response\", {\n enumerable: false,\n value: kvp._response,\n });\n }\n return response;\n}\n\n/**\n * @internal\n */\nexport function transformKeyValueResponse<T extends KeyValue & { eTag?: string }>(\n kvp: T,\n): ConfigurationSetting {\n const setting = transformKeyValue(kvp);\n if (hasUnderscoreResponse(kvp)) {\n Object.defineProperty(setting, \"_response\", {\n enumerable: false,\n value: kvp._response,\n });\n }\n\n delete setting.eTag;\n return setting;\n}\n\n/**\n * @internal\n */\nexport function transformSnapshotResponse<T extends ConfigurationSnapshot>(\n snapshot: T,\n): SnapshotResponse {\n if (hasUnderscoreResponse(snapshot)) {\n Object.defineProperty(snapshot, \"_response\", {\n enumerable: false,\n value: snapshot._response,\n });\n }\n return snapshot as any;\n}\n\n/**\n * Translates user-facing field names into their `select` equivalents (these can be\n * seen in the `KnownEnum5`)\n *\n * @param fieldNames - fieldNames from users.\n * @returns The field names translated into the `select` field equivalents.\n *\n * @internal\n */\nexport function formatFieldsForSelect(\n fieldNames: (keyof ConfigurationSetting)[] | undefined,\n): string[] | undefined {\n if (fieldNames == null) {\n return undefined;\n }\n\n const mappedFieldNames = fieldNames.map((fn) => {\n switch (fn) {\n case \"lastModified\":\n return \"last_modified\";\n case \"contentType\":\n return \"content_type\";\n case \"isReadOnly\":\n return \"locked\";\n default:\n return fn;\n }\n });\n\n return mappedFieldNames;\n}\n\n/**\n * @internal\n */\nexport function errorMessageForUnexpectedSetting(\n key: string,\n expectedType: \"FeatureFlag\" | \"SecretReference\",\n): string {\n return `Setting with key ${key} is not a valid ${expectedType}, make sure to have the correct content-type and a valid non-null value.`;\n}\n\nexport function assertResponse<T extends object>(\n result: T,\n): asserts result is T & HttpResponseField<any> {\n if (!hasUnderscoreResponse(result)) {\n Object.defineProperty(result, \"_response\", {\n enumerable: false,\n value:\n \"Something went wrong, _response(raw response) is supposed to be part of the response. Please file a bug at https://github.com/Azure/azure-sdk-for-js\",\n });\n }\n}\n\nexport function hasUnderscoreResponse<T extends object>(\n result: T,\n): result is T & HttpResponseField<any> {\n return Object.prototype.hasOwnProperty.call(result, \"_response\");\n}\n\n/**\n * Get the scope for the App Configuration service based on the endpoint and audience.\n * If the audience is provided, it will be used as the scope.\n * If not, the scope is defaulted to Azure Public Cloud when not specified.\n *\n * @internal\n */\nexport function getScope(appConfigEndpoint: string, appConfigAudience?: string): string {\n if (appConfigAudience) {\n return `${appConfigAudience}/.default`;\n } else if (\n appConfigEndpoint.endsWith(\"azconfig.azure.us\") ||\n appConfigEndpoint.endsWith(\"appconfig.azure.us\")\n ) {\n return `${KnownAppConfigAudience.AzureGovernment}/.default`;\n } else if (\n appConfigEndpoint.endsWith(\"azconfig.azure.cn\") ||\n appConfigEndpoint.endsWith(\"appconfig.azure.cn\")\n ) {\n return `${KnownAppConfigAudience.AzureChina}/.default`;\n } else {\n return `${KnownAppConfigAudience.AzurePublicCloud}/.default`;\n }\n}\n"]}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/internal/helpers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n type ConfigurationSetting,\n type ConfigurationSettingParam,\n type HttpOnlyIfChangedField,\n type HttpOnlyIfUnchangedField,\n type HttpResponseField,\n type HttpResponseFields,\n type ListRevisionsOptions,\n type ListSettingsOptions,\n type ListSnapshotsOptions,\n type ConfigurationSnapshot,\n type SnapshotResponse,\n type EtagEntity,\n type ListLabelsOptions,\n KnownAppConfigAudience,\n} from \"../models.js\";\nimport type { FeatureFlagValue } from \"../featureFlag.js\";\nimport { FeatureFlagHelper, featureFlagContentType } from \"../featureFlag.js\";\nimport type {\n GetKeyValuesOptionalParams,\n GetLabelsOptionalParams,\n GetSnapshotsOptionalParams,\n KeyValue,\n} from \"../generated/src/models/index.js\";\nimport type { SecretReferenceValue } from \"../secretReference.js\";\nimport { SecretReferenceHelper, secretReferenceContentType } from \"../secretReference.js\";\nimport { isDefined } from \"@azure/core-util\";\nimport { logger } from \"../logger.js\";\nimport type { OperationOptions } from \"@azure/core-client\";\n\n/**\n * Options for listConfigurationSettings that allow for filtering based on keys, labels and other fields.\n * Also provides `fields` which allows you to selectively choose which fields are populated in the\n * result.\n */\nexport interface SendConfigurationSettingsOptions\n extends OperationOptions,\n ListSettingsOptions,\n EtagEntity {\n /**\n * A filter used get configuration setting for a snapshot. Not valid when used with 'key' and 'label' filters\n */\n snapshotName?: string;\n}\n\n/**\n * Options for listLabels that allow for filtering based on keys, labels and other fields.\n * Also provides `fields` which allows you to selectively choose which fields are populated in the\n * result.\n */\nexport interface SendLabelsRequestOptions extends ListLabelsOptions {}\n\n/**\n * Formats the etag so it can be used with a If-Match/If-None-Match header\n * @internal\n */\nexport function quoteETag(etag: string | undefined): string | undefined {\n // https://tools.ietf.org/html/rfc7232#section-3.1\n if (etag === undefined || etag === \"*\") {\n return etag;\n }\n\n if (etag.startsWith('\"') && etag.endsWith('\"')) {\n return etag;\n }\n\n if (etag.startsWith(\"'\") && etag.endsWith(\"'\")) {\n return etag;\n }\n\n return `\"${etag}\"`;\n}\n\n/**\n * Checks the onlyIfChanged/onlyIfUnchanged properties to make sure we haven't specified both\n * and throws an Error. Otherwise, returns the properties properly quoted.\n * @param options - An options object with onlyIfChanged/onlyIfUnchanged fields\n * @internal\n */\nexport function checkAndFormatIfAndIfNoneMatch(\n objectWithEtag: EtagEntity,\n options: HttpOnlyIfChangedField & HttpOnlyIfUnchangedField,\n): { ifMatch: string | undefined; ifNoneMatch: string | undefined } {\n if (options.onlyIfChanged && options.onlyIfUnchanged) {\n logger.error(\n \"onlyIfChanged and onlyIfUnchanged are both specified\",\n options.onlyIfChanged,\n options.onlyIfUnchanged,\n );\n throw new Error(\"onlyIfChanged and onlyIfUnchanged are mutually-exclusive\");\n }\n\n let ifMatch;\n let ifNoneMatch;\n\n if (options.onlyIfUnchanged) {\n ifMatch = quoteETag(objectWithEtag.etag);\n }\n\n if (options.onlyIfChanged) {\n ifNoneMatch = quoteETag(objectWithEtag.etag);\n }\n\n return {\n ifMatch: ifMatch,\n ifNoneMatch: ifNoneMatch,\n };\n}\n\n/**\n * Transforms some of the key fields in SendConfigurationSettingsOptions and ListRevisionsOptions\n * so they can be added to a request using AppConfigurationGetKeyValuesOptionalParams.\n * - `options.acceptDateTime` is converted into an ISO string\n * - `select` is populated with the proper field names from `options.fields`\n * - keyFilter and labelFilter are moved to key and label, respectively.\n *\n * @internal\n */\nexport function formatFiltersAndSelect(\n listConfigOptions: ListRevisionsOptions,\n): Pick<GetKeyValuesOptionalParams, \"key\" | \"label\" | \"select\" | \"acceptDatetime\" | \"tags\"> {\n let acceptDatetime: string | undefined = undefined;\n\n if (listConfigOptions.acceptDateTime) {\n acceptDatetime = listConfigOptions.acceptDateTime.toISOString();\n }\n return {\n key: listConfigOptions.keyFilter,\n label: listConfigOptions.labelFilter,\n tags: listConfigOptions.tagsFilter,\n acceptDatetime,\n select: formatFieldsForSelect(listConfigOptions.fields),\n };\n}\n\n/**\n * Transforms some of the key fields in SendConfigurationSettingsOptions\n * so they can be added to a request using AppConfigurationGetKeyValuesOptionalParams.\n * - `options.acceptDateTime` is converted into an ISO string\n * - `select` is populated with the proper field names from `options.fields`\n * - keyFilter, labelFilter, snapshotName are moved to key, label, and snapshot respectively.\n *\n * @internal\n */\nexport function formatConfigurationSettingsFiltersAndSelect(\n listConfigOptions: SendConfigurationSettingsOptions,\n): Pick<\n GetKeyValuesOptionalParams,\n \"key\" | \"label\" | \"select\" | \"acceptDatetime\" | \"snapshot\" | \"tags\"\n> {\n const { snapshotName: snapshot, ...options } = listConfigOptions;\n return {\n ...formatFiltersAndSelect(options),\n snapshot,\n };\n}\n/**\n * Transforms some of the key fields in ListSnapshotsOptions\n * so they can be added to a request using AppConfigurationGetSnapshotsOptionalParams.\n * - `select` is populated with the proper field names from `options.fields`\n * - keyFilter and labelFilter are moved to key and label, respectively.\n *\n * @internal\n */\nexport function formatSnapshotFiltersAndSelect(\n listSnapshotOptions: ListSnapshotsOptions,\n): Pick<GetSnapshotsOptionalParams, \"name\" | \"select\" | \"status\"> {\n return {\n name: listSnapshotOptions.nameFilter,\n status: listSnapshotOptions.statusFilter,\n select: listSnapshotOptions.fields,\n };\n}\n\n/**\n * Transforms some of the key fields in ListLabelsOptions\n * so they can be added to a request using AppConfigurationGetLabelsOptionalParams.\n * - `select` is populated with the proper field names from `options.fields`\n * - `nameFilter` are moved to name\n *\n * @internal\n */\nexport function formatLabelsFiltersAndSelect(\n listLabelsOptions: ListLabelsOptions,\n): Pick<GetLabelsOptionalParams, \"name\" | \"select\"> {\n return {\n name: listLabelsOptions.nameFilter,\n select: listLabelsOptions.fields,\n };\n}\n/**\n * Handles translating a Date acceptDateTime into a string as needed by the API\n * @param newOptions - A newer style options with acceptDateTime as a date (and with proper casing!)\n * @internal\n */\nexport function formatAcceptDateTime(newOptions: { acceptDateTime?: Date }): {\n acceptDatetime?: string;\n} {\n return {\n acceptDatetime: newOptions.acceptDateTime && newOptions.acceptDateTime.toISOString(),\n };\n}\n\n/**\n * Take the URL that gets returned from next link and extract the 'after' token needed\n * to get the next page of results.\n * @internal\n */\nexport function extractAfterTokenFromNextLink(nextLink: string): string {\n const searchParams = new URLSearchParams(nextLink);\n const afterToken = searchParams.get(\"after\");\n\n if (afterToken == null || Array.isArray(afterToken)) {\n logger.error(\"Invalid nextLink - invalid after token\", afterToken, Array.isArray(afterToken));\n throw new Error(\"Invalid nextLink - invalid after token\");\n }\n\n return decodeURIComponent(afterToken);\n}\n\n/**\n * Take the header link that gets returned from 304 response and extract the 'after' token needed\n * to get the next page of results.\n *\n * @internal\n */\nexport function extractAfterTokenFromLinkHeader(link: string): string {\n // Example transformation of the link header\n // link:\n // '</kv?api-version=2023-10-01&key=listResults714&after=bGlzdE4>; rel=\"next\"'\n //\n // linkValue:\n // </kv?api-version=2023-10-01&key=listResults714&after=bGlzdE4>\n //\n // nextLink:\n // /kv?api-version=2023-10-01&key=listResults714&after=bGlzdE4\n const linkValue = link.split(\";\")[0];\n const nextLink = linkValue.substring(1, linkValue.length - 1);\n return extractAfterTokenFromNextLink(nextLink);\n}\n\n/**\n * Makes a ConfigurationSetting-based response throw for all of the data members. Used primarily\n * to prevent possible errors by the user in accessing a model that is uninitialized. This can happen\n * in cases like HTTP status code 204 or 304, which return an empty response body.\n *\n * @param configurationSetting - The configuration setting to alter\n */\nexport function makeConfigurationSettingEmpty(\n configurationSetting: Partial<Record<Exclude<keyof ConfigurationSetting, \"key\">, any>>,\n): void {\n const names: Exclude<keyof ConfigurationSetting, \"key\">[] = [\n \"contentType\",\n \"etag\",\n \"label\",\n \"lastModified\",\n \"isReadOnly\",\n \"tags\",\n \"value\",\n ];\n\n for (const name of names) {\n configurationSetting[name] = undefined;\n }\n}\n\n/**\n * @internal\n */\nexport function transformKeyValue<T>(kvp: T & KeyValue): T & ConfigurationSetting {\n const setting: T & ConfigurationSetting & KeyValue = {\n value: undefined,\n ...kvp,\n isReadOnly: !!kvp.locked,\n };\n delete setting.locked;\n if (!setting.label) {\n delete setting.label;\n }\n if (!setting.contentType) {\n delete setting.contentType;\n }\n return setting;\n}\n\n/**\n * @internal\n */\nfunction isConfigSettingWithSecretReferenceValue(\n setting: any,\n): setting is ConfigurationSetting<SecretReferenceValue> {\n return (\n setting.contentType === secretReferenceContentType &&\n isDefined(setting.value) &&\n typeof setting.value !== \"string\"\n );\n}\n\n/**\n * @internal\n */\nfunction isConfigSettingWithFeatureFlagValue(\n setting: any,\n): setting is ConfigurationSetting<FeatureFlagValue> {\n return (\n setting.contentType === featureFlagContentType &&\n isDefined(setting.value) &&\n typeof setting.value !== \"string\"\n );\n}\n\n/**\n * @internal\n */\nfunction isSimpleConfigSetting(setting: any): setting is ConfigurationSetting {\n return typeof setting.value === \"string\" || !isDefined(setting.value);\n}\n\n/**\n * @internal\n */\nexport function serializeAsConfigurationSettingParam(\n setting:\n | ConfigurationSettingParam\n | ConfigurationSettingParam<FeatureFlagValue>\n | ConfigurationSettingParam<SecretReferenceValue>,\n): ConfigurationSettingParam {\n if (isSimpleConfigSetting(setting)) {\n return setting as ConfigurationSettingParam;\n }\n try {\n if (isConfigSettingWithFeatureFlagValue(setting)) {\n return FeatureFlagHelper.toConfigurationSettingParam(setting);\n }\n if (isConfigSettingWithSecretReferenceValue(setting)) {\n return SecretReferenceHelper.toConfigurationSettingParam(setting);\n }\n } catch (error: any) {\n return setting as ConfigurationSettingParam;\n }\n logger.error(\"Unable to serialize to a configuration setting\", setting);\n throw new TypeError(\n `Unable to serialize the setting with key \"${setting.key}\" as a configuration setting`,\n );\n}\n\n/**\n * @internal\n */\nexport function transformKeyValueResponseWithStatusCode<T extends KeyValue>(\n kvp: T,\n status: number | undefined,\n): ConfigurationSetting & { eTag?: string } & HttpResponseFields {\n const response = {\n ...transformKeyValue(kvp),\n statusCode: status ?? -1,\n };\n\n if (hasUnderscoreResponse(kvp)) {\n Object.defineProperty(response, \"_response\", {\n enumerable: false,\n value: kvp._response,\n });\n }\n return response;\n}\n\n/**\n * @internal\n */\nexport function transformKeyValueResponse<T extends KeyValue & { eTag?: string }>(\n kvp: T,\n): ConfigurationSetting {\n const setting = transformKeyValue(kvp);\n if (hasUnderscoreResponse(kvp)) {\n Object.defineProperty(setting, \"_response\", {\n enumerable: false,\n value: kvp._response,\n });\n }\n\n delete setting.eTag;\n return setting;\n}\n\n/**\n * @internal\n */\nexport function transformSnapshotResponse<T extends ConfigurationSnapshot>(\n snapshot: T,\n): SnapshotResponse {\n if (hasUnderscoreResponse(snapshot)) {\n Object.defineProperty(snapshot, \"_response\", {\n enumerable: false,\n value: snapshot._response,\n });\n }\n return snapshot as any;\n}\n\n/**\n * Translates user-facing field names into their `select` equivalents (these can be\n * seen in the `KnownEnum5`)\n *\n * @param fieldNames - fieldNames from users.\n * @returns The field names translated into the `select` field equivalents.\n *\n * @internal\n */\nexport function formatFieldsForSelect(\n fieldNames: (keyof ConfigurationSetting)[] | undefined,\n): string[] | undefined {\n if (fieldNames == null) {\n return undefined;\n }\n\n const mappedFieldNames = fieldNames.map((fn) => {\n switch (fn) {\n case \"lastModified\":\n return \"last_modified\";\n case \"contentType\":\n return \"content_type\";\n case \"isReadOnly\":\n return \"locked\";\n default:\n return fn;\n }\n });\n\n return mappedFieldNames;\n}\n\n/**\n * @internal\n */\nexport function errorMessageForUnexpectedSetting(\n key: string,\n expectedType: \"FeatureFlag\" | \"SecretReference\",\n): string {\n return `Setting with key ${key} is not a valid ${expectedType}, make sure to have the correct content-type and a valid non-null value.`;\n}\n\nexport function assertResponse<T extends object>(\n result: T,\n): asserts result is T & HttpResponseField<any> {\n if (!hasUnderscoreResponse(result)) {\n Object.defineProperty(result, \"_response\", {\n enumerable: false,\n value:\n \"Something went wrong, _response(raw response) is supposed to be part of the response. Please file a bug at https://github.com/Azure/azure-sdk-for-js\",\n });\n }\n}\n\nexport function hasUnderscoreResponse<T extends object>(\n result: T,\n): result is T & HttpResponseField<any> {\n return Object.prototype.hasOwnProperty.call(result, \"_response\");\n}\n\n/**\n * Get the scope for the App Configuration service based on the endpoint and audience.\n * If the audience is provided, it will be used as the scope.\n * If not, the scope is defaulted to Azure Public Cloud when not specified.\n *\n * @internal\n */\nexport function getScope(appConfigEndpoint: string, appConfigAudience?: string): string {\n if (appConfigAudience) {\n return `${appConfigAudience}/.default`;\n } else if (\n appConfigEndpoint.endsWith(\"azconfig.azure.us\") ||\n appConfigEndpoint.endsWith(\"appconfig.azure.us\")\n ) {\n return `${KnownAppConfigAudience.AzureGovernment}/.default`;\n } else if (\n appConfigEndpoint.endsWith(\"azconfig.azure.cn\") ||\n appConfigEndpoint.endsWith(\"appconfig.azure.cn\")\n ) {\n return `${KnownAppConfigAudience.AzureChina}/.default`;\n } else {\n return `${KnownAppConfigAudience.AzurePublicCloud}/.default`;\n }\n}\n"]}
@@ -7,11 +7,10 @@ export type JsonFeatureFlagValue = {
7
7
  name: string;
8
8
  parameters?: Record<string, unknown>;
9
9
  }[];
10
- requirement_type?: "All" | "Any";
11
10
  };
12
11
  description?: string;
13
12
  enabled: boolean;
14
- id: string;
13
+ id?: string;
15
14
  display_name?: string;
16
15
  };
17
16
  /**
@@ -20,10 +19,4 @@ export type JsonFeatureFlagValue = {
20
19
  export interface JsonSecretReferenceValue {
21
20
  uri: string;
22
21
  }
23
- /**
24
- * @internal
25
- */
26
- export interface JsonSnapshotReferenceValue {
27
- snapshot_name: string;
28
- }
29
22
  //# sourceMappingURL=jsonModels.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"jsonModels.d.ts","sourceRoot":"","sources":["../../../src/internal/jsonModels.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,EAAE;QACV,cAAc,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,EAAE,CAAC;QACzE,gBAAgB,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;KAClC,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAIF;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;CACb;AAID;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,aAAa,EAAE,MAAM,CAAC;CACvB"}
1
+ {"version":3,"file":"jsonModels.d.ts","sourceRoot":"","sources":["../../../src/internal/jsonModels.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,EAAE;QACV,cAAc,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,EAAE,CAAC;KAC1E,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAIF;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;CACb"}
@@ -1 +1 @@
1
- {"version":3,"file":"jsonModels.js","sourceRoot":"","sources":["../../../src/internal/jsonModels.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * @internal\n */\nexport type JsonFeatureFlagValue = {\n conditions: {\n client_filters: { name: string; parameters?: Record<string, unknown> }[];\n requirement_type?: \"All\" | \"Any\";\n };\n description?: string;\n enabled: boolean;\n id: string;\n display_name?: string;\n};\n\n// keyvault secret reference\n\n/**\n * @internal\n */\nexport interface JsonSecretReferenceValue {\n uri: string;\n}\n\n// snapshot reference\n\n/**\n * @internal\n */\nexport interface JsonSnapshotReferenceValue {\n snapshot_name: string;\n}\n"]}
1
+ {"version":3,"file":"jsonModels.js","sourceRoot":"","sources":["../../../src/internal/jsonModels.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * @internal\n */\nexport type JsonFeatureFlagValue = {\n conditions: {\n client_filters: { name: string; parameters?: Record<string, unknown> }[];\n };\n description?: string;\n enabled: boolean;\n id?: string;\n display_name?: string;\n};\n\n// keyvault secret reference\n\n/**\n * @internal\n */\nexport interface JsonSecretReferenceValue {\n uri: string;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"queryParamPolicy.d.ts","sourceRoot":"","sources":["../../../src/internal/queryParamPolicy.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,cAAc,EAIf,MAAM,2BAA2B,CAAC;AAEnC;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,cAAc,CAkDjD"}
1
+ {"version":3,"file":"queryParamPolicy.d.ts","sourceRoot":"","sources":["../../../src/internal/queryParamPolicy.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,cAAc,EAIf,MAAM,2BAA2B,CAAC;AAGnC;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,cAAc,CAsDjD"}