@azure/storage-file-datalake 12.25.0-alpha.20241227.1 → 12.25.0-alpha.20250217.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 (37) hide show
  1. package/LICENSE +3 -3
  2. package/README.md +24 -29
  3. package/dist/index.js +56 -57
  4. package/dist/index.js.map +1 -1
  5. package/dist-esm/storage-blob/src/StorageRetryPolicyFactory.js.map +1 -1
  6. package/dist-esm/storage-blob/src/policies/StorageSharedKeyCredentialPolicy.js +2 -2
  7. package/dist-esm/storage-blob/src/policies/StorageSharedKeyCredentialPolicy.js.map +1 -1
  8. package/dist-esm/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.js +2 -2
  9. package/dist-esm/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.js.map +1 -1
  10. package/dist-esm/storage-blob/src/utils/utils.common.js +3 -3
  11. package/dist-esm/storage-blob/src/utils/utils.common.js.map +1 -1
  12. package/dist-esm/storage-file-datalake/src/DataLakeFileSystemClient.js +15 -15
  13. package/dist-esm/storage-file-datalake/src/DataLakeFileSystemClient.js.map +1 -1
  14. package/dist-esm/storage-file-datalake/src/DataLakeServiceClient.js +6 -6
  15. package/dist-esm/storage-file-datalake/src/DataLakeServiceClient.js.map +1 -1
  16. package/dist-esm/storage-file-datalake/src/clients.js +23 -23
  17. package/dist-esm/storage-file-datalake/src/clients.js.map +1 -1
  18. package/dist-esm/storage-file-datalake/src/credentials/UserDelegationKeyCredential.js +1 -1
  19. package/dist-esm/storage-file-datalake/src/credentials/UserDelegationKeyCredential.js.map +1 -1
  20. package/dist-esm/storage-file-datalake/src/models.js.map +1 -1
  21. package/dist-esm/storage-file-datalake/src/sas/AccountSASPermissions.js +2 -2
  22. package/dist-esm/storage-file-datalake/src/sas/AccountSASPermissions.js.map +1 -1
  23. package/dist-esm/storage-file-datalake/src/sas/AccountSASResourceTypes.js +1 -1
  24. package/dist-esm/storage-file-datalake/src/sas/AccountSASResourceTypes.js.map +1 -1
  25. package/dist-esm/storage-file-datalake/src/sas/AccountSASSignatureValues.js +1 -1
  26. package/dist-esm/storage-file-datalake/src/sas/AccountSASSignatureValues.js.map +1 -1
  27. package/dist-esm/storage-file-datalake/src/sas/DataLakeSASSignatureValues.js +1 -1
  28. package/dist-esm/storage-file-datalake/src/sas/DataLakeSASSignatureValues.js.map +1 -1
  29. package/dist-esm/storage-file-datalake/src/sas/DirectorySASPermissions.js +1 -1
  30. package/dist-esm/storage-file-datalake/src/sas/DirectorySASPermissions.js.map +1 -1
  31. package/dist-esm/storage-file-datalake/src/sas/FileSystemSASPermissions.js +1 -1
  32. package/dist-esm/storage-file-datalake/src/sas/FileSystemSASPermissions.js.map +1 -1
  33. package/dist-esm/storage-file-datalake/src/sas/SASQueryParameters.js.map +1 -1
  34. package/dist-esm/storage-file-datalake/src/utils/utils.common.js +3 -3
  35. package/dist-esm/storage-file-datalake/src/utils/utils.common.js.map +1 -1
  36. package/package.json +4 -4
  37. package/types/latest/storage-file-datalake.d.ts +67 -67
@@ -1 +1 @@
1
- {"version":3,"file":"DataLakeFileSystemClient.js","sourceRoot":"","sources":["../../../src/DataLakeFileSystemClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport type { TokenCredential } from \"@azure/core-auth\";\nimport type { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { ContainerClient } from \"@azure/storage-blob\";\nimport type { Pipeline, StoragePipelineOptions } from \"./Pipeline\";\nimport { isPipelineLike, newPipeline } from \"./Pipeline\";\nimport { StorageSharedKeyCredential } from \"./credentials/StorageSharedKeyCredential\";\nimport { AnonymousCredential } from \"@azure/storage-blob\";\n\nimport { DataLakeLeaseClient } from \"./DataLakeLeaseClient\";\n// eslint-disable-next-line @typescript-eslint/no-redeclare\nimport { FileSystemOperationsImpl as FileSystem } from \"./generated/src/operations\";\nimport type {\n AccessPolicy,\n FileSystemCreateOptions,\n FileSystemCreateResponse,\n FileSystemDeleteOptions,\n FileSystemDeleteResponse,\n FileSystemExistsOptions,\n FileSystemGetAccessPolicyOptions,\n FileSystemGetAccessPolicyResponse,\n FileSystemGetPropertiesOptions,\n FileSystemGetPropertiesResponse,\n FileSystemSetAccessPolicyOptions,\n FileSystemSetAccessPolicyResponse,\n FileSystemSetMetadataOptions,\n FileSystemSetMetadataResponse,\n ListPathsOptions,\n ListPathsSegmentOptions,\n Metadata,\n Path,\n PublicAccessType,\n SignedIdentifier,\n FileSystemListPathsResponse,\n FileSystemCreateIfNotExistsResponse,\n FileSystemDeleteIfExistsResponse,\n FileSystemGenerateSasUrlOptions,\n FileSystemListDeletedPathsResponse,\n ListDeletedPathsOptions,\n DeletedPath,\n FileSystemUndeletePathResponse,\n FileSystemUndeletePathOption,\n ListDeletedPathsSegmentOptions,\n PathUndeleteHeaders,\n UserDelegationKey,\n} from \"./models\";\nimport { StorageClient } from \"./StorageClient\";\nimport { toContainerPublicAccessType, toPublicAccessType, toPermissions } from \"./transforms\";\nimport { tracingClient } from \"./utils/tracing\";\nimport {\n appendToURLPath,\n appendToURLQuery,\n assertResponse,\n EscapePath,\n windowsFileTimeTicksToTime,\n} from \"./utils/utils.common\";\nimport { DataLakeFileClient, DataLakeDirectoryClient } from \"./clients\";\nimport {\n generateDataLakeSASQueryParameters,\n generateDataLakeSASQueryParametersInternal,\n} from \"./sas/DataLakeSASSignatureValues\";\nimport { DeletionIdKey, PathResultTypeConstants } from \"./utils/constants\";\nimport { PathClientInternal } from \"./utils/PathClientInternal\";\n\n/**\n * A DataLakeFileSystemClient represents a URL to the Azure Storage file system\n * allowing you to manipulate its directories and files.\n */\nexport class DataLakeFileSystemClient extends StorageClient {\n /**\n * fileSystemContext provided by protocol layer.\n */\n private fileSystemContext: FileSystem;\n\n /**\n * fileSystemContext provided by protocol layer.\n */\n private fileSystemContextToBlobEndpoint: FileSystem;\n\n /**\n * blobContainerClient provided by `@azure/storage-blob` package.\n */\n private blobContainerClient: ContainerClient;\n\n /**\n * Creates an instance of DataLakeFileSystemClient from url and credential.\n *\n * @param url - A Client string pointing to Azure Storage data lake file system, such as\n * \"https://myaccount.dfs.core.windows.net/filesystem\". You can append a SAS\n * if using AnonymousCredential, such as \"https://myaccount.dfs.core.windows.net/filesystem?sasString\".\n * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n constructor(\n url: string,\n credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n );\n\n /**\n * Creates an instance of DataLakeFileSystemClient from url and pipeline.\n *\n * @param url - A Client string pointing to Azure Storage data lake file system, such as\n * \"https://myaccount.dfs.core.windows.net/filesystem\". You can append a SAS\n * if using AnonymousCredential, such as \"https://myaccount.dfs.core.windows.net/filesystem?sasString\".\n * @param pipeline - Call newPipeline() to create a default\n * pipeline, or provide a customized pipeline.\n */\n constructor(url: string, pipeline: Pipeline);\n\n constructor(\n url: string,\n credentialOrPipeline?:\n | StorageSharedKeyCredential\n | AnonymousCredential\n | TokenCredential\n | Pipeline,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n ) {\n if (isPipelineLike(credentialOrPipeline)) {\n super(url, credentialOrPipeline);\n } else {\n let credential;\n if (credentialOrPipeline === undefined) {\n credential = new AnonymousCredential();\n } else {\n credential = credentialOrPipeline;\n }\n\n const pipeline = newPipeline(credential, options);\n super(url, pipeline);\n }\n\n this.fileSystemContext = new FileSystem(this.storageClientContext);\n this.fileSystemContextToBlobEndpoint = new FileSystem(this.storageClientContextToBlobEndpoint);\n this.blobContainerClient = new ContainerClient(this.blobEndpointUrl, this.pipeline);\n }\n\n /**\n * Name of current file system.\n *\n * @readonly\n */\n public get name(): string {\n return this.blobContainerClient.containerName;\n }\n\n /**\n * Creates a {@link DataLakeDirectoryClient} object under current file system.\n *\n * @param directoryName -\n */\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-subclients */\n public getDirectoryClient(directoryName: string): DataLakeDirectoryClient {\n return new DataLakeDirectoryClient(\n appendToURLPath(this.url, EscapePath(directoryName)),\n this.pipeline,\n );\n }\n\n /**\n * Creates a {@link DataLakeFileClient} object under current file system.\n *\n * @param fileName -\n */\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-subclients */\n public getFileClient(fileName: string): DataLakeFileClient {\n return new DataLakeFileClient(appendToURLPath(this.url, EscapePath(fileName)), this.pipeline);\n }\n\n /**\n * Get a {@link DataLakeLeaseClient} that manages leases on the file system.\n *\n * @param proposeLeaseId - Optional. Initial proposed lease Id.\n */\n public getDataLakeLeaseClient(proposeLeaseId?: string): DataLakeLeaseClient {\n return new DataLakeLeaseClient(this.blobContainerClient.getBlobLeaseClient(proposeLeaseId));\n }\n\n /**\n * Creates a new file system under the specified account. If the file system with\n * the same name already exists, the operation fails.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/create-container\n *\n * @param options - Optional. Options when creating file system.\n */\n public async create(options: FileSystemCreateOptions = {}): Promise<FileSystemCreateResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-create\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.create({\n ...options,\n access: toContainerPublicAccessType(options.access),\n tracingOptions: updatedOptions.tracingOptions,\n containerEncryptionScope: options.fileSystemEncryptionScope,\n });\n },\n );\n }\n\n /**\n * Creates a new file system under the specified account. If the file system with\n * the same name already exists, it is not changed.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/create-container\n *\n * @param options -\n */\n public async createIfNotExists(\n options: FileSystemCreateOptions = {},\n ): Promise<FileSystemCreateIfNotExistsResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-createIfNotExists\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.createIfNotExists({\n ...options,\n access: toContainerPublicAccessType(options.access),\n containerEncryptionScope: options.fileSystemEncryptionScope,\n tracingOptions: updatedOptions.tracingOptions,\n });\n },\n );\n }\n\n /**\n * Returns true if the File system represented by this client exists; false otherwise.\n *\n * NOTE: use this function with care since an existing file system might be deleted by other clients or\n * applications. Vice versa new file system with the same name might be added by other clients or\n * applications after this function completes.\n *\n * @param options -\n */\n public async exists(options: FileSystemExistsOptions = {}): Promise<boolean> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-exists\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.exists(updatedOptions);\n },\n );\n }\n\n /**\n * Delete current file system.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container\n *\n * @param options - Optional. Options when deleting file system.\n */\n public async delete(options: FileSystemDeleteOptions = {}): Promise<FileSystemDeleteResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-delete\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.delete({\n ...options,\n tracingOptions: updatedOptions.tracingOptions,\n });\n },\n );\n }\n\n /**\n * Delete current file system if it exists.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container\n *\n * @param options -\n */\n public async deleteIfExists(\n options: FileSystemDeleteOptions = {},\n ): Promise<FileSystemDeleteIfExistsResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-deleteIfExists\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.deleteIfExists(updatedOptions);\n },\n );\n }\n\n /**\n * Returns all user-defined metadata and system properties for the specified\n * file system.\n *\n * WARNING: The `metadata` object returned in the response will have its keys in lowercase, even if\n * they originally contained uppercase characters. This differs from the metadata keys returned by\n * the `listFileSystems` method of {@link DataLakeServiceClient} using the `includeMetadata` option, which\n * will retain their original casing.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties\n *\n * @param options - Optional. Options when getting file system properties.\n */\n public async getProperties(\n options: FileSystemGetPropertiesOptions = {},\n ): Promise<FileSystemGetPropertiesResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-getProperties\",\n options,\n async (updatedOptions) => {\n const rawResponse = await this.blobContainerClient.getProperties({\n ...options,\n tracingOptions: updatedOptions.tracingOptions,\n });\n\n // Transfer and rename blobPublicAccess to publicAccess\n const response = rawResponse as FileSystemGetPropertiesResponse;\n\n response.publicAccess = toPublicAccessType(rawResponse.blobPublicAccess);\n response._response.parsedHeaders.publicAccess = response.publicAccess;\n\n delete rawResponse.blobPublicAccess;\n delete rawResponse._response.parsedHeaders.blobPublicAccess;\n\n return response;\n },\n );\n }\n\n /**\n * Sets one or more user-defined name-value pairs for the specified file system.\n *\n * If no option provided, or no metadata defined in the parameter, the file system\n * metadata will be removed.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata\n *\n * @param metadata - Replace existing metadata with this value.\n * If no value provided the existing metadata will be removed.\n * @param options - Optional. Options when setting file system metadata.\n */\n public async setMetadata(\n metadata?: Metadata,\n options: FileSystemSetMetadataOptions = {},\n ): Promise<FileSystemSetMetadataResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-setMetadata\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.setMetadata(metadata, {\n ...options,\n tracingOptions: updatedOptions.tracingOptions,\n });\n },\n );\n }\n\n /**\n * Gets the permissions for the specified file system. The permissions indicate\n * whether file system data may be accessed publicly.\n *\n * WARNING: JavaScript Date will potentially lose precision when parsing startsOn and expiresOn strings.\n * For example, new Date(\"2018-12-31T03:44:23.8827891Z\").toISOString() will get \"2018-12-31T03:44:23.882Z\".\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl\n *\n * @param options - Optional. Options when getting file system access policy.\n */\n public async getAccessPolicy(\n options: FileSystemGetAccessPolicyOptions = {},\n ): Promise<FileSystemGetAccessPolicyResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-getAccessPolicy\",\n options,\n async (updatedOptions) => {\n const rawResponse = await this.blobContainerClient.getAccessPolicy({\n ...options,\n tracingOptions: updatedOptions.tracingOptions,\n });\n\n // Transfer and rename blobPublicAccess to publicAccess\n const response = rawResponse as unknown as FileSystemGetAccessPolicyResponse;\n\n response.publicAccess = toPublicAccessType(rawResponse.blobPublicAccess);\n response._response.parsedHeaders.publicAccess = response.publicAccess;\n\n delete rawResponse.blobPublicAccess;\n delete rawResponse._response.parsedHeaders.blobPublicAccess;\n\n return response;\n },\n );\n }\n\n /**\n * Sets the permissions for the specified file system. The permissions indicate\n * whether directories or files in a file system may be accessed publicly.\n *\n * When you set permissions for a file system, the existing permissions are replaced.\n * If no access or containerAcl provided, the existing file system ACL will be\n * removed.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl\n *\n * @param access - Optional. The level of public access to data in the file system.\n * @param fileSystemAcl - Optional. Array of elements each having a unique Id and details of the access policy.\n * @param options - Optional. Options when setting file system access policy.\n */\n public async setAccessPolicy(\n access?: PublicAccessType,\n fileSystemAcl?: SignedIdentifier<AccessPolicy>[],\n options: FileSystemSetAccessPolicyOptions = {},\n ): Promise<FileSystemSetAccessPolicyResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-setAccessPolicy\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.setAccessPolicy(\n toContainerPublicAccessType(access),\n fileSystemAcl,\n {\n ...options,\n tracingOptions: updatedOptions.tracingOptions,\n },\n );\n },\n );\n }\n\n /**\n * Returns an async iterable iterator to list all the paths (directories and files)\n * under the specified file system.\n *\n * .byPage() returns an async iterable iterator to list the paths in pages.\n *\n * Example using `for await` syntax:\n *\n * ```js\n * // Get the fileSystemClient before you run these snippets,\n * // Can be obtained from `serviceClient.getFileSystemClient(\"<your-filesystem-name>\");`\n * let i = 1;\n * for await (const path of fileSystemClient.listPaths()) {\n * console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);\n * }\n * ```\n *\n * Example using `iter.next()`:\n *\n * ```js\n * let i = 1;\n * let iter = fileSystemClient.listPaths();\n * let pathItem = await iter.next();\n * while (!pathItem.done) {\n * console.log(`Path ${i++}: ${pathItem.value.name}, isDirectory?: ${pathItem.value.isDirectory}`);\n * pathItem = await iter.next();\n * }\n * ```\n *\n * Example using `byPage()`:\n *\n * ```js\n * // passing optional maxPageSize in the page settings\n * let i = 1;\n * for await (const response of fileSystemClient.listPaths().byPage({ maxPageSize: 20 })) {\n * for (const path of response.pathItems) {\n * console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);\n * }\n * }\n * ```\n *\n * Example using paging with a marker:\n *\n * ```js\n * let i = 1;\n * let iterator = fileSystemClient.listPaths().byPage({ maxPageSize: 2 });\n * let response = (await iterator.next()).value;\n *\n * // Prints 2 path names\n * for (const path of response.pathItems) {\n * console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);\n * }\n *\n * // Gets next marker\n * let marker = response.continuationToken;\n *\n * // Passing next marker as continuationToken\n *\n * iterator = fileSystemClient.listPaths().byPage({ continuationToken: marker, maxPageSize: 10 });\n * response = (await iterator.next()).value;\n *\n * // Prints 10 path names\n * for (const path of response.pathItems) {\n * console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);\n * }\n * ```\n *\n * @see https://docs.microsoft.com/rest/api/storageservices/list-blobs\n *\n * @param options - Optional. Options when listing paths.\n */\n public listPaths(\n options: ListPathsOptions = {},\n ): PagedAsyncIterableIterator<Path, FileSystemListPathsResponse> {\n options.path = options.path === \"\" ? undefined : options.path;\n\n const iter = this.listItems(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) => {\n return this.listSegments(settings.continuationToken, {\n maxResults: settings.maxPageSize,\n ...options,\n });\n },\n };\n }\n\n private async *listItems(options: ListPathsSegmentOptions = {}): AsyncIterableIterator<Path> {\n for await (const response of this.listSegments(undefined, options)) {\n yield* response.pathItems || [];\n }\n }\n\n private async *listSegments(\n continuation?: string,\n options: ListPathsSegmentOptions = {},\n ): AsyncIterableIterator<FileSystemListPathsResponse> {\n let response;\n if (!!continuation || continuation === undefined) {\n do {\n response = await this.listPathsSegment(continuation, options);\n continuation = response.continuation;\n yield response;\n } while (continuation);\n }\n }\n\n private async listPathsSegment(\n continuation?: string,\n options: ListPathsSegmentOptions = {},\n ): Promise<FileSystemListPathsResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-listPathsSegment\",\n options,\n async (updatedOptions) => {\n const rawResponse = await this.fileSystemContext.listPaths(options.recursive || false, {\n continuation,\n ...updatedOptions,\n upn: options.userPrincipalName,\n });\n\n const response = rawResponse as FileSystemListPathsResponse;\n response.pathItems = [];\n for (const path of rawResponse.paths || []) {\n response.pathItems.push({\n ...path,\n permissions: toPermissions(path.permissions),\n createdOn: windowsFileTimeTicksToTime(path.creationTime),\n expiresOn: windowsFileTimeTicksToTime(path.expiryTime),\n });\n }\n delete rawResponse.paths;\n\n return response;\n },\n );\n }\n\n /**\n * Returns an async iterable iterator to list all the paths (directories and files)\n * under the specified file system.\n *\n * .byPage() returns an async iterable iterator to list the paths in pages.\n *\n * Example using `for await` syntax:\n *\n * ```js\n * // Get the fileSystemClient before you run these snippets,\n * // Can be obtained from `serviceClient.getFileSystemClient(\"<your-filesystem-name>\");`\n * let i = 1;\n * for await (const deletePath of fileSystemClient.listDeletedPaths()) {\n * console.log(`Path ${i++}: ${deletePath.name}`);\n * }\n * ```\n *\n * Example using `iter.next()`:\n *\n * ```js\n * let i = 1;\n * let iter = fileSystemClient.listDeletedPaths();\n * let deletedPathItem = await iter.next();\n * while (!deletedPathItem.done) {\n * console.log(`Path ${i++}: ${deletedPathItem.value.name}`);\n * pathItem = await iter.next();\n * }\n * ```\n *\n * Example using `byPage()`:\n *\n * ```js\n * // passing optional maxPageSize in the page settings\n * let i = 1;\n * for await (const response of fileSystemClient.listDeletedPaths().byPage({ maxPageSize: 20 })) {\n * for (const deletePath of response.pathItems) {\n * console.log(`Path ${i++}: ${deletePath.name}`);\n * }\n * }\n * ```\n *\n * Example using paging with a marker:\n *\n * ```js\n * let i = 1;\n * let iterator = fileSystemClient.listDeletedPaths().byPage({ maxPageSize: 2 });\n * let response = (await iterator.next()).value;\n *\n * // Prints 2 path names\n * for (const path of response.pathItems) {\n * console.log(`Path ${i++}: ${path.name}}`);\n * }\n *\n * // Gets next marker\n * let marker = response.continuationToken;\n *\n * // Passing next marker as continuationToken\n *\n * iterator = fileSystemClient.listDeletedPaths().byPage({ continuationToken: marker, maxPageSize: 10 });\n * response = (await iterator.next()).value;\n *\n * // Prints 10 path names\n * for (const deletePath of response.deletedPathItems) {\n * console.log(`Path ${i++}: ${deletePath.name}`);\n * }\n * ```\n *\n * @see https://docs.microsoft.com/rest/api/storageservices/list-blobs\n *\n * @param options - Optional. Options when listing deleted paths.\n */\n public listDeletedPaths(\n options: ListDeletedPathsOptions = {},\n ): PagedAsyncIterableIterator<DeletedPath, FileSystemListDeletedPathsResponse> {\n const iter = this.listDeletedItems(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) => {\n return this.listDeletedSegments(settings.continuationToken, {\n maxResults: settings.maxPageSize,\n ...options,\n });\n },\n };\n }\n private async *listDeletedItems(\n options: ListDeletedPathsOptions = {},\n ): AsyncIterableIterator<DeletedPath> {\n for await (const response of this.listDeletedSegments(undefined, options)) {\n yield* response.pathItems || [];\n }\n }\n\n private async *listDeletedSegments(\n continuation?: string,\n options: ListDeletedPathsSegmentOptions = {},\n ): AsyncIterableIterator<FileSystemListDeletedPathsResponse> {\n let response;\n if (!!continuation || continuation === undefined) {\n do {\n response = await this.listDeletedPathsSegment(continuation, options);\n continuation = response.continuation;\n yield response;\n } while (continuation);\n }\n }\n\n private async listDeletedPathsSegment(\n continuation?: string,\n options: ListDeletedPathsSegmentOptions = {},\n ): Promise<FileSystemListDeletedPathsResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-listDeletedPathsSegment\",\n options,\n async (updatedOptions) => {\n const rawResponse = await this.fileSystemContextToBlobEndpoint.listBlobHierarchySegment({\n marker: continuation,\n ...updatedOptions,\n prefix: options.prefix === \"\" ? undefined : options.prefix,\n });\n\n const response = rawResponse as FileSystemListDeletedPathsResponse;\n response.pathItems = [];\n for (const path of rawResponse.segment.blobItems || []) {\n response.pathItems.push({\n name: path.name,\n deletionId: path.deletionId,\n deletedOn: path.properties.deletedTime,\n remainingRetentionDays: path.properties.remainingRetentionDays,\n });\n }\n\n if (response.nextMarker) {\n response.continuation = response.nextMarker;\n }\n\n return response;\n },\n );\n }\n\n /**\n * Restores a soft deleted path.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/undelete-blob\n *\n * @param deletedPath - Required. The path of the deleted path.\n *\n * @param deletionId - Required. The deletion ID associated with the soft deleted path.\n *\n */\n\n public async undeletePath(\n deletedPath: string,\n deletionId: string,\n options: FileSystemUndeletePathOption = {},\n ): Promise<FileSystemUndeletePathResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-undeletePath\",\n options,\n async (updatedOptions) => {\n const pathClient = new PathClientInternal(\n appendToURLPath(this.blobEndpointUrl, EscapePath(deletedPath)),\n this.pipeline,\n );\n\n const rawResponse = assertResponse<PathUndeleteHeaders, PathUndeleteHeaders>(\n await pathClient.blobPathContext.undelete({\n undeleteSource: \"?\" + DeletionIdKey + \"=\" + deletionId,\n ...options,\n tracingOptions: updatedOptions.tracingOptions,\n }),\n );\n\n if (rawResponse.resourceType === PathResultTypeConstants.DirectoryResourceType) {\n return {\n pathClient: this.getDirectoryClient(deletedPath),\n ...rawResponse,\n };\n } else {\n return {\n pathClient: this.getFileClient(deletedPath),\n ...rawResponse,\n };\n }\n },\n );\n }\n\n /**\n * Only available for DataLakeFileSystemClient constructed with a shared key credential.\n *\n * Generates a Service Shared Access Signature (SAS) URI based on the client properties\n * and parameters passed in. The SAS is signed by the shared key credential of the client.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas\n *\n * @param options - Optional parameters.\n * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n public generateSasUrl(options: FileSystemGenerateSasUrlOptions): Promise<string> {\n return new Promise((resolve) => {\n if (!(this.credential instanceof StorageSharedKeyCredential)) {\n throw RangeError(\n \"Can only generate the SAS when the client is initialized with a shared key credential\",\n );\n }\n\n const sas = generateDataLakeSASQueryParameters(\n {\n fileSystemName: this.name,\n ...options,\n },\n this.credential,\n ).toString();\n\n resolve(appendToURLQuery(this.url, sas));\n });\n }\n\n /**\n * Only available for DataLakeFileSystemClient constructed with a shared key credential.\n *\n * Generates string to sign for a Service Shared Access Signature (SAS) URI based on the client properties\n * and parameters passed in. The SAS is signed by the shared key credential of the client.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas\n *\n * @param options - Optional parameters.\n * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n public generateSasStringToSign(options: FileSystemGenerateSasUrlOptions): string {\n if (!(this.credential instanceof StorageSharedKeyCredential)) {\n throw RangeError(\n \"Can only generate the SAS when the client is initialized with a shared key credential\",\n );\n }\n\n return generateDataLakeSASQueryParametersInternal(\n {\n fileSystemName: this.name,\n ...options,\n },\n this.credential,\n ).stringToSign;\n }\n\n /**\n * Generates a Service Shared Access Signature (SAS) URI based on the client properties\n * and parameters passed in. The SAS is signed by the input user delegation key.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas\n *\n * @param options - Optional parameters.\n * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()`\n * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n public generateUserDelegationSasUrl(\n options: FileSystemGenerateSasUrlOptions,\n userDelegationKey: UserDelegationKey,\n ): Promise<string> {\n return new Promise((resolve) => {\n const sas = generateDataLakeSASQueryParameters(\n {\n fileSystemName: this.name,\n ...options,\n },\n userDelegationKey,\n this.accountName,\n ).toString();\n\n resolve(appendToURLQuery(this.url, sas));\n });\n }\n\n /**\n * Generates string to sign for a Service Shared Access Signature (SAS) URI based on the client properties\n * and parameters passed in. The SAS is signed by the input user delegation key.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas\n *\n * @param options - Optional parameters.\n * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()`\n * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n\n public generateUserDelegationSasStringToSign(\n options: FileSystemGenerateSasUrlOptions,\n userDelegationKey: UserDelegationKey,\n ): string {\n return generateDataLakeSASQueryParametersInternal(\n {\n fileSystemName: this.name,\n ...options,\n },\n userDelegationKey,\n this.accountName,\n ).stringToSign;\n }\n}\n"]}
1
+ {"version":3,"file":"DataLakeFileSystemClient.js","sourceRoot":"","sources":["../../../src/DataLakeFileSystemClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport type { TokenCredential } from \"@azure/core-auth\";\nimport type { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { ContainerClient } from \"@azure/storage-blob\";\nimport type { Pipeline, StoragePipelineOptions } from \"./Pipeline\";\nimport { isPipelineLike, newPipeline } from \"./Pipeline\";\nimport { StorageSharedKeyCredential } from \"./credentials/StorageSharedKeyCredential\";\nimport { AnonymousCredential } from \"@azure/storage-blob\";\n\nimport { DataLakeLeaseClient } from \"./DataLakeLeaseClient\";\n// eslint-disable-next-line @typescript-eslint/no-redeclare\nimport { FileSystemOperationsImpl as FileSystem } from \"./generated/src/operations\";\nimport type {\n AccessPolicy,\n FileSystemCreateOptions,\n FileSystemCreateResponse,\n FileSystemDeleteOptions,\n FileSystemDeleteResponse,\n FileSystemExistsOptions,\n FileSystemGetAccessPolicyOptions,\n FileSystemGetAccessPolicyResponse,\n FileSystemGetPropertiesOptions,\n FileSystemGetPropertiesResponse,\n FileSystemSetAccessPolicyOptions,\n FileSystemSetAccessPolicyResponse,\n FileSystemSetMetadataOptions,\n FileSystemSetMetadataResponse,\n ListPathsOptions,\n ListPathsSegmentOptions,\n Metadata,\n Path,\n PublicAccessType,\n SignedIdentifier,\n FileSystemListPathsResponse,\n FileSystemCreateIfNotExistsResponse,\n FileSystemDeleteIfExistsResponse,\n FileSystemGenerateSasUrlOptions,\n FileSystemListDeletedPathsResponse,\n ListDeletedPathsOptions,\n DeletedPath,\n FileSystemUndeletePathResponse,\n FileSystemUndeletePathOption,\n ListDeletedPathsSegmentOptions,\n PathUndeleteHeaders,\n UserDelegationKey,\n} from \"./models\";\nimport { StorageClient } from \"./StorageClient\";\nimport { toContainerPublicAccessType, toPublicAccessType, toPermissions } from \"./transforms\";\nimport { tracingClient } from \"./utils/tracing\";\nimport {\n appendToURLPath,\n appendToURLQuery,\n assertResponse,\n EscapePath,\n windowsFileTimeTicksToTime,\n} from \"./utils/utils.common\";\nimport { DataLakeFileClient, DataLakeDirectoryClient } from \"./clients\";\nimport {\n generateDataLakeSASQueryParameters,\n generateDataLakeSASQueryParametersInternal,\n} from \"./sas/DataLakeSASSignatureValues\";\nimport { DeletionIdKey, PathResultTypeConstants } from \"./utils/constants\";\nimport { PathClientInternal } from \"./utils/PathClientInternal\";\n\n/**\n * A DataLakeFileSystemClient represents a URL to the Azure Storage file system\n * allowing you to manipulate its directories and files.\n */\nexport class DataLakeFileSystemClient extends StorageClient {\n /**\n * fileSystemContext provided by protocol layer.\n */\n private fileSystemContext: FileSystem;\n\n /**\n * fileSystemContext provided by protocol layer.\n */\n private fileSystemContextToBlobEndpoint: FileSystem;\n\n /**\n * blobContainerClient provided by `@azure/storage-blob` package.\n */\n private blobContainerClient: ContainerClient;\n\n /**\n * Creates an instance of DataLakeFileSystemClient from url and credential.\n *\n * @param url - A Client string pointing to Azure Storage data lake file system, such as\n * \"https://myaccount.dfs.core.windows.net/filesystem\". You can append a SAS\n * if using AnonymousCredential, such as \"https://myaccount.dfs.core.windows.net/filesystem?sasString\".\n * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n constructor(\n url: string,\n credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n );\n\n /**\n * Creates an instance of DataLakeFileSystemClient from url and pipeline.\n *\n * @param url - A Client string pointing to Azure Storage data lake file system, such as\n * \"https://myaccount.dfs.core.windows.net/filesystem\". You can append a SAS\n * if using AnonymousCredential, such as \"https://myaccount.dfs.core.windows.net/filesystem?sasString\".\n * @param pipeline - Call newPipeline() to create a default\n * pipeline, or provide a customized pipeline.\n */\n constructor(url: string, pipeline: Pipeline);\n\n constructor(\n url: string,\n credentialOrPipeline?:\n | StorageSharedKeyCredential\n | AnonymousCredential\n | TokenCredential\n | Pipeline,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n ) {\n if (isPipelineLike(credentialOrPipeline)) {\n super(url, credentialOrPipeline);\n } else {\n let credential;\n if (credentialOrPipeline === undefined) {\n credential = new AnonymousCredential();\n } else {\n credential = credentialOrPipeline;\n }\n\n const pipeline = newPipeline(credential, options);\n super(url, pipeline);\n }\n\n this.fileSystemContext = new FileSystem(this.storageClientContext);\n this.fileSystemContextToBlobEndpoint = new FileSystem(this.storageClientContextToBlobEndpoint);\n this.blobContainerClient = new ContainerClient(this.blobEndpointUrl, this.pipeline);\n }\n\n /**\n * Name of current file system.\n *\n * @readonly\n */\n public get name(): string {\n return this.blobContainerClient.containerName;\n }\n\n /**\n * Creates a {@link DataLakeDirectoryClient} object under current file system.\n *\n * @param directoryName -\n */\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-subclients */\n public getDirectoryClient(directoryName: string): DataLakeDirectoryClient {\n return new DataLakeDirectoryClient(\n appendToURLPath(this.url, EscapePath(directoryName)),\n this.pipeline,\n );\n }\n\n /**\n * Creates a {@link DataLakeFileClient} object under current file system.\n *\n * @param fileName -\n */\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-subclients */\n public getFileClient(fileName: string): DataLakeFileClient {\n return new DataLakeFileClient(appendToURLPath(this.url, EscapePath(fileName)), this.pipeline);\n }\n\n /**\n * Get a {@link DataLakeLeaseClient} that manages leases on the file system.\n *\n * @param proposeLeaseId - Optional. Initial proposed lease Id.\n */\n public getDataLakeLeaseClient(proposeLeaseId?: string): DataLakeLeaseClient {\n return new DataLakeLeaseClient(this.blobContainerClient.getBlobLeaseClient(proposeLeaseId));\n }\n\n /**\n * Creates a new file system under the specified account. If the file system with\n * the same name already exists, the operation fails.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/create-container\n *\n * @param options - Optional. Options when creating file system.\n */\n public async create(options: FileSystemCreateOptions = {}): Promise<FileSystemCreateResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-create\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.create({\n ...options,\n access: toContainerPublicAccessType(options.access),\n tracingOptions: updatedOptions.tracingOptions,\n containerEncryptionScope: options.fileSystemEncryptionScope,\n });\n },\n );\n }\n\n /**\n * Creates a new file system under the specified account. If the file system with\n * the same name already exists, it is not changed.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/create-container\n *\n * @param options -\n */\n public async createIfNotExists(\n options: FileSystemCreateOptions = {},\n ): Promise<FileSystemCreateIfNotExistsResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-createIfNotExists\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.createIfNotExists({\n ...options,\n access: toContainerPublicAccessType(options.access),\n containerEncryptionScope: options.fileSystemEncryptionScope,\n tracingOptions: updatedOptions.tracingOptions,\n });\n },\n );\n }\n\n /**\n * Returns true if the File system represented by this client exists; false otherwise.\n *\n * NOTE: use this function with care since an existing file system might be deleted by other clients or\n * applications. Vice versa new file system with the same name might be added by other clients or\n * applications after this function completes.\n *\n * @param options -\n */\n public async exists(options: FileSystemExistsOptions = {}): Promise<boolean> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-exists\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.exists(updatedOptions);\n },\n );\n }\n\n /**\n * Delete current file system.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/delete-container\n *\n * @param options - Optional. Options when deleting file system.\n */\n public async delete(options: FileSystemDeleteOptions = {}): Promise<FileSystemDeleteResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-delete\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.delete({\n ...options,\n tracingOptions: updatedOptions.tracingOptions,\n });\n },\n );\n }\n\n /**\n * Delete current file system if it exists.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/delete-container\n *\n * @param options -\n */\n public async deleteIfExists(\n options: FileSystemDeleteOptions = {},\n ): Promise<FileSystemDeleteIfExistsResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-deleteIfExists\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.deleteIfExists(updatedOptions);\n },\n );\n }\n\n /**\n * Returns all user-defined metadata and system properties for the specified\n * file system.\n *\n * WARNING: The `metadata` object returned in the response will have its keys in lowercase, even if\n * they originally contained uppercase characters. This differs from the metadata keys returned by\n * the `listFileSystems` method of {@link DataLakeServiceClient} using the `includeMetadata` option, which\n * will retain their original casing.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/get-container-properties\n *\n * @param options - Optional. Options when getting file system properties.\n */\n public async getProperties(\n options: FileSystemGetPropertiesOptions = {},\n ): Promise<FileSystemGetPropertiesResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-getProperties\",\n options,\n async (updatedOptions) => {\n const rawResponse = await this.blobContainerClient.getProperties({\n ...options,\n tracingOptions: updatedOptions.tracingOptions,\n });\n\n // Transfer and rename blobPublicAccess to publicAccess\n const response = rawResponse as FileSystemGetPropertiesResponse;\n\n response.publicAccess = toPublicAccessType(rawResponse.blobPublicAccess);\n response._response.parsedHeaders.publicAccess = response.publicAccess;\n\n delete rawResponse.blobPublicAccess;\n delete rawResponse._response.parsedHeaders.blobPublicAccess;\n\n return response;\n },\n );\n }\n\n /**\n * Sets one or more user-defined name-value pairs for the specified file system.\n *\n * If no option provided, or no metadata defined in the parameter, the file system\n * metadata will be removed.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/set-container-metadata\n *\n * @param metadata - Replace existing metadata with this value.\n * If no value provided the existing metadata will be removed.\n * @param options - Optional. Options when setting file system metadata.\n */\n public async setMetadata(\n metadata?: Metadata,\n options: FileSystemSetMetadataOptions = {},\n ): Promise<FileSystemSetMetadataResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-setMetadata\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.setMetadata(metadata, {\n ...options,\n tracingOptions: updatedOptions.tracingOptions,\n });\n },\n );\n }\n\n /**\n * Gets the permissions for the specified file system. The permissions indicate\n * whether file system data may be accessed publicly.\n *\n * WARNING: JavaScript Date will potentially lose precision when parsing startsOn and expiresOn strings.\n * For example, new Date(\"2018-12-31T03:44:23.8827891Z\").toISOString() will get \"2018-12-31T03:44:23.882Z\".\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/get-container-acl\n *\n * @param options - Optional. Options when getting file system access policy.\n */\n public async getAccessPolicy(\n options: FileSystemGetAccessPolicyOptions = {},\n ): Promise<FileSystemGetAccessPolicyResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-getAccessPolicy\",\n options,\n async (updatedOptions) => {\n const rawResponse = await this.blobContainerClient.getAccessPolicy({\n ...options,\n tracingOptions: updatedOptions.tracingOptions,\n });\n\n // Transfer and rename blobPublicAccess to publicAccess\n const response = rawResponse as unknown as FileSystemGetAccessPolicyResponse;\n\n response.publicAccess = toPublicAccessType(rawResponse.blobPublicAccess);\n response._response.parsedHeaders.publicAccess = response.publicAccess;\n\n delete rawResponse.blobPublicAccess;\n delete rawResponse._response.parsedHeaders.blobPublicAccess;\n\n return response;\n },\n );\n }\n\n /**\n * Sets the permissions for the specified file system. The permissions indicate\n * whether directories or files in a file system may be accessed publicly.\n *\n * When you set permissions for a file system, the existing permissions are replaced.\n * If no access or containerAcl provided, the existing file system ACL will be\n * removed.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/set-container-acl\n *\n * @param access - Optional. The level of public access to data in the file system.\n * @param fileSystemAcl - Optional. Array of elements each having a unique Id and details of the access policy.\n * @param options - Optional. Options when setting file system access policy.\n */\n public async setAccessPolicy(\n access?: PublicAccessType,\n fileSystemAcl?: SignedIdentifier<AccessPolicy>[],\n options: FileSystemSetAccessPolicyOptions = {},\n ): Promise<FileSystemSetAccessPolicyResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-setAccessPolicy\",\n options,\n async (updatedOptions) => {\n return this.blobContainerClient.setAccessPolicy(\n toContainerPublicAccessType(access),\n fileSystemAcl,\n {\n ...options,\n tracingOptions: updatedOptions.tracingOptions,\n },\n );\n },\n );\n }\n\n /**\n * Returns an async iterable iterator to list all the paths (directories and files)\n * under the specified file system.\n *\n * .byPage() returns an async iterable iterator to list the paths in pages.\n *\n * Example using `for await` syntax:\n *\n * ```js\n * // Get the fileSystemClient before you run these snippets,\n * // Can be obtained from `serviceClient.getFileSystemClient(\"<your-filesystem-name>\");`\n * let i = 1;\n * for await (const path of fileSystemClient.listPaths()) {\n * console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);\n * }\n * ```\n *\n * Example using `iter.next()`:\n *\n * ```js\n * let i = 1;\n * let iter = fileSystemClient.listPaths();\n * let pathItem = await iter.next();\n * while (!pathItem.done) {\n * console.log(`Path ${i++}: ${pathItem.value.name}, isDirectory?: ${pathItem.value.isDirectory}`);\n * pathItem = await iter.next();\n * }\n * ```\n *\n * Example using `byPage()`:\n *\n * ```js\n * // passing optional maxPageSize in the page settings\n * let i = 1;\n * for await (const response of fileSystemClient.listPaths().byPage({ maxPageSize: 20 })) {\n * for (const path of response.pathItems) {\n * console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);\n * }\n * }\n * ```\n *\n * Example using paging with a marker:\n *\n * ```js\n * let i = 1;\n * let iterator = fileSystemClient.listPaths().byPage({ maxPageSize: 2 });\n * let response = (await iterator.next()).value;\n *\n * // Prints 2 path names\n * for (const path of response.pathItems) {\n * console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);\n * }\n *\n * // Gets next marker\n * let marker = response.continuationToken;\n *\n * // Passing next marker as continuationToken\n *\n * iterator = fileSystemClient.listPaths().byPage({ continuationToken: marker, maxPageSize: 10 });\n * response = (await iterator.next()).value;\n *\n * // Prints 10 path names\n * for (const path of response.pathItems) {\n * console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);\n * }\n * ```\n *\n * @see https://learn.microsoft.com/rest/api/storageservices/list-blobs\n *\n * @param options - Optional. Options when listing paths.\n */\n public listPaths(\n options: ListPathsOptions = {},\n ): PagedAsyncIterableIterator<Path, FileSystemListPathsResponse> {\n options.path = options.path === \"\" ? undefined : options.path;\n\n const iter = this.listItems(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) => {\n return this.listSegments(settings.continuationToken, {\n maxResults: settings.maxPageSize,\n ...options,\n });\n },\n };\n }\n\n private async *listItems(options: ListPathsSegmentOptions = {}): AsyncIterableIterator<Path> {\n for await (const response of this.listSegments(undefined, options)) {\n yield* response.pathItems || [];\n }\n }\n\n private async *listSegments(\n continuation?: string,\n options: ListPathsSegmentOptions = {},\n ): AsyncIterableIterator<FileSystemListPathsResponse> {\n let response;\n if (!!continuation || continuation === undefined) {\n do {\n response = await this.listPathsSegment(continuation, options);\n continuation = response.continuation;\n yield response;\n } while (continuation);\n }\n }\n\n private async listPathsSegment(\n continuation?: string,\n options: ListPathsSegmentOptions = {},\n ): Promise<FileSystemListPathsResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-listPathsSegment\",\n options,\n async (updatedOptions) => {\n const rawResponse = await this.fileSystemContext.listPaths(options.recursive || false, {\n continuation,\n ...updatedOptions,\n upn: options.userPrincipalName,\n });\n\n const response = rawResponse as FileSystemListPathsResponse;\n response.pathItems = [];\n for (const path of rawResponse.paths || []) {\n response.pathItems.push({\n ...path,\n permissions: toPermissions(path.permissions),\n createdOn: windowsFileTimeTicksToTime(path.creationTime),\n expiresOn: windowsFileTimeTicksToTime(path.expiryTime),\n });\n }\n delete rawResponse.paths;\n\n return response;\n },\n );\n }\n\n /**\n * Returns an async iterable iterator to list all the paths (directories and files)\n * under the specified file system.\n *\n * .byPage() returns an async iterable iterator to list the paths in pages.\n *\n * Example using `for await` syntax:\n *\n * ```js\n * // Get the fileSystemClient before you run these snippets,\n * // Can be obtained from `serviceClient.getFileSystemClient(\"<your-filesystem-name>\");`\n * let i = 1;\n * for await (const deletePath of fileSystemClient.listDeletedPaths()) {\n * console.log(`Path ${i++}: ${deletePath.name}`);\n * }\n * ```\n *\n * Example using `iter.next()`:\n *\n * ```js\n * let i = 1;\n * let iter = fileSystemClient.listDeletedPaths();\n * let deletedPathItem = await iter.next();\n * while (!deletedPathItem.done) {\n * console.log(`Path ${i++}: ${deletedPathItem.value.name}`);\n * pathItem = await iter.next();\n * }\n * ```\n *\n * Example using `byPage()`:\n *\n * ```js\n * // passing optional maxPageSize in the page settings\n * let i = 1;\n * for await (const response of fileSystemClient.listDeletedPaths().byPage({ maxPageSize: 20 })) {\n * for (const deletePath of response.pathItems) {\n * console.log(`Path ${i++}: ${deletePath.name}`);\n * }\n * }\n * ```\n *\n * Example using paging with a marker:\n *\n * ```js\n * let i = 1;\n * let iterator = fileSystemClient.listDeletedPaths().byPage({ maxPageSize: 2 });\n * let response = (await iterator.next()).value;\n *\n * // Prints 2 path names\n * for (const path of response.pathItems) {\n * console.log(`Path ${i++}: ${path.name}}`);\n * }\n *\n * // Gets next marker\n * let marker = response.continuationToken;\n *\n * // Passing next marker as continuationToken\n *\n * iterator = fileSystemClient.listDeletedPaths().byPage({ continuationToken: marker, maxPageSize: 10 });\n * response = (await iterator.next()).value;\n *\n * // Prints 10 path names\n * for (const deletePath of response.deletedPathItems) {\n * console.log(`Path ${i++}: ${deletePath.name}`);\n * }\n * ```\n *\n * @see https://learn.microsoft.com/rest/api/storageservices/list-blobs\n *\n * @param options - Optional. Options when listing deleted paths.\n */\n public listDeletedPaths(\n options: ListDeletedPathsOptions = {},\n ): PagedAsyncIterableIterator<DeletedPath, FileSystemListDeletedPathsResponse> {\n const iter = this.listDeletedItems(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) => {\n return this.listDeletedSegments(settings.continuationToken, {\n maxResults: settings.maxPageSize,\n ...options,\n });\n },\n };\n }\n private async *listDeletedItems(\n options: ListDeletedPathsOptions = {},\n ): AsyncIterableIterator<DeletedPath> {\n for await (const response of this.listDeletedSegments(undefined, options)) {\n yield* response.pathItems || [];\n }\n }\n\n private async *listDeletedSegments(\n continuation?: string,\n options: ListDeletedPathsSegmentOptions = {},\n ): AsyncIterableIterator<FileSystemListDeletedPathsResponse> {\n let response;\n if (!!continuation || continuation === undefined) {\n do {\n response = await this.listDeletedPathsSegment(continuation, options);\n continuation = response.continuation;\n yield response;\n } while (continuation);\n }\n }\n\n private async listDeletedPathsSegment(\n continuation?: string,\n options: ListDeletedPathsSegmentOptions = {},\n ): Promise<FileSystemListDeletedPathsResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-listDeletedPathsSegment\",\n options,\n async (updatedOptions) => {\n const rawResponse = await this.fileSystemContextToBlobEndpoint.listBlobHierarchySegment({\n marker: continuation,\n ...updatedOptions,\n prefix: options.prefix === \"\" ? undefined : options.prefix,\n });\n\n const response = rawResponse as FileSystemListDeletedPathsResponse;\n response.pathItems = [];\n for (const path of rawResponse.segment.blobItems || []) {\n response.pathItems.push({\n name: path.name,\n deletionId: path.deletionId,\n deletedOn: path.properties.deletedTime,\n remainingRetentionDays: path.properties.remainingRetentionDays,\n });\n }\n\n if (response.nextMarker) {\n response.continuation = response.nextMarker;\n }\n\n return response;\n },\n );\n }\n\n /**\n * Restores a soft deleted path.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/undelete-blob\n *\n * @param deletedPath - Required. The path of the deleted path.\n *\n * @param deletionId - Required. The deletion ID associated with the soft deleted path.\n *\n */\n\n public async undeletePath(\n deletedPath: string,\n deletionId: string,\n options: FileSystemUndeletePathOption = {},\n ): Promise<FileSystemUndeletePathResponse> {\n return tracingClient.withSpan(\n \"DataLakeFileSystemClient-undeletePath\",\n options,\n async (updatedOptions) => {\n const pathClient = new PathClientInternal(\n appendToURLPath(this.blobEndpointUrl, EscapePath(deletedPath)),\n this.pipeline,\n );\n\n const rawResponse = assertResponse<PathUndeleteHeaders, PathUndeleteHeaders>(\n await pathClient.blobPathContext.undelete({\n undeleteSource: \"?\" + DeletionIdKey + \"=\" + deletionId,\n ...options,\n tracingOptions: updatedOptions.tracingOptions,\n }),\n );\n\n if (rawResponse.resourceType === PathResultTypeConstants.DirectoryResourceType) {\n return {\n pathClient: this.getDirectoryClient(deletedPath),\n ...rawResponse,\n };\n } else {\n return {\n pathClient: this.getFileClient(deletedPath),\n ...rawResponse,\n };\n }\n },\n );\n }\n\n /**\n * Only available for DataLakeFileSystemClient constructed with a shared key credential.\n *\n * Generates a Service Shared Access Signature (SAS) URI based on the client properties\n * and parameters passed in. The SAS is signed by the shared key credential of the client.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas\n *\n * @param options - Optional parameters.\n * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n public generateSasUrl(options: FileSystemGenerateSasUrlOptions): Promise<string> {\n return new Promise((resolve) => {\n if (!(this.credential instanceof StorageSharedKeyCredential)) {\n throw RangeError(\n \"Can only generate the SAS when the client is initialized with a shared key credential\",\n );\n }\n\n const sas = generateDataLakeSASQueryParameters(\n {\n fileSystemName: this.name,\n ...options,\n },\n this.credential,\n ).toString();\n\n resolve(appendToURLQuery(this.url, sas));\n });\n }\n\n /**\n * Only available for DataLakeFileSystemClient constructed with a shared key credential.\n *\n * Generates string to sign for a Service Shared Access Signature (SAS) URI based on the client properties\n * and parameters passed in. The SAS is signed by the shared key credential of the client.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas\n *\n * @param options - Optional parameters.\n * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n public generateSasStringToSign(options: FileSystemGenerateSasUrlOptions): string {\n if (!(this.credential instanceof StorageSharedKeyCredential)) {\n throw RangeError(\n \"Can only generate the SAS when the client is initialized with a shared key credential\",\n );\n }\n\n return generateDataLakeSASQueryParametersInternal(\n {\n fileSystemName: this.name,\n ...options,\n },\n this.credential,\n ).stringToSign;\n }\n\n /**\n * Generates a Service Shared Access Signature (SAS) URI based on the client properties\n * and parameters passed in. The SAS is signed by the input user delegation key.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas\n *\n * @param options - Optional parameters.\n * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()`\n * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n public generateUserDelegationSasUrl(\n options: FileSystemGenerateSasUrlOptions,\n userDelegationKey: UserDelegationKey,\n ): Promise<string> {\n return new Promise((resolve) => {\n const sas = generateDataLakeSASQueryParameters(\n {\n fileSystemName: this.name,\n ...options,\n },\n userDelegationKey,\n this.accountName,\n ).toString();\n\n resolve(appendToURLQuery(this.url, sas));\n });\n }\n\n /**\n * Generates string to sign for a Service Shared Access Signature (SAS) URI based on the client properties\n * and parameters passed in. The SAS is signed by the input user delegation key.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas\n *\n * @param options - Optional parameters.\n * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()`\n * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n\n public generateUserDelegationSasStringToSign(\n options: FileSystemGenerateSasUrlOptions,\n userDelegationKey: UserDelegationKey,\n ): string {\n return generateDataLakeSASQueryParametersInternal(\n {\n fileSystemName: this.name,\n ...options,\n },\n userDelegationKey,\n this.accountName,\n ).stringToSign;\n }\n}\n"]}
@@ -114,7 +114,7 @@ export class DataLakeServiceClient extends StorageClient {
114
114
  * accountName
115
115
  * ).toString();
116
116
  * ```
117
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key
117
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key
118
118
  *
119
119
  * @param startsOn - The start time for the user delegation SAS. Must be within 7 days of the current time.
120
120
  * @param expiresOn - The end time for the user delegation SAS. Must be within 7 days of the current time.
@@ -196,7 +196,7 @@ export class DataLakeServiceClient extends StorageClient {
196
196
  * }
197
197
  * ```
198
198
  *
199
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/list-containers2
199
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/list-containers2
200
200
  *
201
201
  * @param options -
202
202
  */
@@ -215,7 +215,7 @@ export class DataLakeServiceClient extends StorageClient {
215
215
  * Generates an account Shared Access Signature (SAS) URI based on the client properties
216
216
  * and parameters passed in. The SAS is signed by the shared key credential of the client.
217
217
  *
218
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas
218
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/create-account-sas
219
219
  *
220
220
  * @param expiresOn - Optional. The time at which the shared access signature becomes invalid. Default to an hour later if not specified.
221
221
  * @param permissions - Specifies the list of permissions to be associated with the SAS.
@@ -242,7 +242,7 @@ export class DataLakeServiceClient extends StorageClient {
242
242
  * Generates string to sign for an account Shared Access Signature (SAS) based on the client properties
243
243
  * and parameters passed in. The SAS is signed by the shared key credential of the client.
244
244
  *
245
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas
245
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/create-account-sas
246
246
  *
247
247
  * @param expiresOn - Optional. The time at which the shared access signature becomes invalid. Default to an hour later if not specified.
248
248
  * @param permissions - Specifies the list of permissions to be associated with the SAS.
@@ -302,7 +302,7 @@ export class DataLakeServiceClient extends StorageClient {
302
302
  /**
303
303
  * Gets the properties of a storage account’s Blob service endpoint, including properties
304
304
  * for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.
305
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties
305
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties
306
306
  *
307
307
  * @param options - Options to the Service Get Properties operation.
308
308
  * @returns Response data for the Service Get Properties operation.
@@ -318,7 +318,7 @@ export class DataLakeServiceClient extends StorageClient {
318
318
  /**
319
319
  * Sets properties for a storage account’s Blob service endpoint, including properties
320
320
  * for Storage Analytics, CORS (Cross-Origin Resource Sharing) rules and soft delete settings.
321
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties
321
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties
322
322
  *
323
323
  * @param properties -
324
324
  * @param options - Options to the Service Set Properties operation.
@@ -1 +1 @@
1
- {"version":3,"file":"DataLakeServiceClient.js","sourceRoot":"","sources":["../../../src/DataLakeServiceClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { TokenCredential } from \"@azure/core-auth\";\nimport type { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { getDefaultProxySettings } from \"@azure/core-rest-pipeline\";\nimport { isNode } from \"@azure/core-util\";\nimport type {\n ServiceGetPropertiesOptions,\n ServiceSetPropertiesOptions,\n ServiceSetPropertiesResponse,\n} from \"@azure/storage-blob\";\nimport { BlobServiceClient } from \"@azure/storage-blob\";\nimport type { Pipeline, StoragePipelineOptions } from \"./Pipeline\";\nimport { isPipelineLike, newPipeline } from \"./Pipeline\";\nimport { AnonymousCredential } from \"@azure/storage-blob\";\nimport { StorageSharedKeyCredential } from \"./credentials/StorageSharedKeyCredential\";\n\nimport { DataLakeFileSystemClient } from \"./DataLakeFileSystemClient\";\nimport type {\n FileSystemItem,\n FileSystemRenameResponse,\n ServiceGenerateAccountSasUrlOptions,\n ServiceListFileSystemsOptions,\n ServiceListFileSystemsSegmentResponse,\n ServiceRenameFileSystemOptions,\n ServiceUndeleteFileSystemOptions,\n FileSystemUndeleteResponse,\n} from \"./models\";\nimport { StorageClient } from \"./StorageClient\";\nimport {\n appendToURLPath,\n appendToURLQuery,\n extractConnectionStringParts,\n} from \"./utils/utils.common\";\nimport { toDfsEndpointUrl, toFileSystemPagedAsyncIterableIterator } from \"./transforms\";\nimport type {\n ServiceGetUserDelegationKeyOptions,\n ServiceGetUserDelegationKeyResponse,\n} from \"./models\";\nimport { tracingClient } from \"./utils/tracing\";\nimport { AccountSASPermissions } from \"./sas/AccountSASPermissions\";\nimport {\n generateAccountSASQueryParameters,\n generateAccountSASQueryParametersInternal,\n} from \"./sas/AccountSASSignatureValues\";\nimport { AccountSASServices } from \"./sas/AccountSASServices\";\nimport type { DataLakeServiceGetPropertiesResponse, DataLakeServiceProperties } from \"./index\";\n\n/**\n * DataLakeServiceClient allows you to manipulate Azure\n * Data Lake service resources and file systems. The storage account provides\n * the top-level namespace for the Data Lake service.\n */\nexport class DataLakeServiceClient extends StorageClient {\n // private serviceContext: Service;\n\n /**\n * blobServiceClient provided by `@azure/storage-blob` package.\n */\n private blobServiceClient: BlobServiceClient;\n\n /**\n *\n * Creates an instance of DataLakeServiceClient from connection string.\n *\n * @param connectionString - Account connection string or a SAS connection string of an Azure storage account.\n * [ Note - Account connection string can only be used in NODE.JS runtime. ]\n * Account connection string example -\n * `DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net`\n * SAS connection string example -\n * `BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString`\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n\n public static fromConnectionString(\n connectionString: string,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n ): DataLakeServiceClient {\n options = options || {};\n const extractedCreds = extractConnectionStringParts(connectionString);\n if (extractedCreds.kind === \"AccountConnString\") {\n if (isNode) {\n const sharedKeyCredential = new StorageSharedKeyCredential(\n extractedCreds.accountName!,\n extractedCreds.accountKey,\n );\n if (!options.proxyOptions) {\n options.proxyOptions = getDefaultProxySettings(extractedCreds.proxyUri);\n }\n const pipeline = newPipeline(sharedKeyCredential, options);\n return new DataLakeServiceClient(toDfsEndpointUrl(extractedCreds.url), pipeline);\n } else {\n throw new Error(\"Account connection string is only supported in Node.js environment\");\n }\n } else if (extractedCreds.kind === \"SASConnString\") {\n const pipeline = newPipeline(new AnonymousCredential(), options);\n return new DataLakeServiceClient(\n toDfsEndpointUrl(extractedCreds.url) + \"?\" + extractedCreds.accountSas,\n pipeline,\n );\n } else {\n throw new Error(\n \"Connection string must be either an Account connection string or a SAS connection string\",\n );\n }\n }\n\n /**\n * Creates an instance of DataLakeServiceClient from url.\n *\n * @param url - A Client string pointing to Azure Storage data lake service, such as\n * \"https://myaccount.dfs.core.windows.net\". You can append a SAS\n * if using AnonymousCredential, such as \"https://myaccount.dfs.core.windows.net?sasString\".\n * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(\n url: string,\n credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n );\n\n /**\n * Creates an instance of DataLakeServiceClient from url and pipeline.\n *\n * @param url - A Client string pointing to Azure Storage data lake service, such as\n * \"https://myaccount.dfs.core.windows.net\". You can append a SAS\n * if using AnonymousCredential, such as \"https://myaccount.dfs.core.windows.net?sasString\".\n * @param pipeline - Call newPipeline() to create a default\n * pipeline, or provide a customized pipeline.\n */\n public constructor(url: string, pipeline: Pipeline);\n\n public constructor(\n url: string,\n credentialOrPipeline?:\n | StorageSharedKeyCredential\n | AnonymousCredential\n | TokenCredential\n | Pipeline,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n ) {\n if (isPipelineLike(credentialOrPipeline)) {\n super(url, credentialOrPipeline);\n } else {\n let credential;\n if (credentialOrPipeline === undefined) {\n credential = new AnonymousCredential();\n } else {\n credential = credentialOrPipeline;\n }\n\n const pipeline = newPipeline(credential, options);\n super(url, pipeline);\n }\n\n // this.serviceContext = new Service(this.storageClientContext);\n this.blobServiceClient = new BlobServiceClient(this.blobEndpointUrl, this.pipeline);\n }\n\n /**\n * Creates a {@link DataLakeFileSystemClient} object.\n *\n * @param fileSystemName - File system name.\n */\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-subclients */\n public getFileSystemClient(fileSystemName: string): DataLakeFileSystemClient {\n return new DataLakeFileSystemClient(\n appendToURLPath(this.url, encodeURIComponent(fileSystemName)),\n this.pipeline,\n );\n }\n\n /**\n * ONLY AVAILABLE WHEN USING BEARER TOKEN AUTHENTICATION (TokenCredential).\n *\n * Retrieves a user delegation key for the Data Lake service. This is only a valid operation when using\n * bearer token authentication.\n *\n * @example\n * ```js\n * // Generate user delegation SAS for a file system\n * const userDelegationKey = await dataLakeServiceClient.getUserDelegationKey(startsOn, expiresOn);\n * const fileSystemSAS = generateDataLakeSASQueryParameters({\n * fileSystemName, // Required\n * permissions: FileSystemSASPermissions.parse(\"racwdl\"), // Required\n * startsOn, // Required. Date type\n * expiresOn, // Optional. Date type\n * ipRange: { start: \"0.0.0.0\", end: \"255.255.255.255\" }, // Optional\n * protocol: SASProtocol.HttpsAndHttp, // Optional\n * version: \"2018-11-09\" // Must greater than or equal to 2018-11-09 to generate user delegation SAS\n * },\n * userDelegationKey, // UserDelegationKey\n * accountName\n * ).toString();\n * ```\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key\n *\n * @param startsOn - The start time for the user delegation SAS. Must be within 7 days of the current time.\n * @param expiresOn - The end time for the user delegation SAS. Must be within 7 days of the current time.\n * @param options -\n */\n public async getUserDelegationKey(\n startsOn: Date,\n expiresOn: Date,\n options: ServiceGetUserDelegationKeyOptions = {},\n ): Promise<ServiceGetUserDelegationKeyResponse> {\n return tracingClient.withSpan(\n \"DataLakeServiceClient-getUserDelegationKey\",\n options,\n async (updatedOptions) => {\n return this.blobServiceClient.getUserDelegationKey(startsOn, expiresOn, updatedOptions);\n },\n );\n }\n\n /**\n * Returns an async iterable iterator to list all the file systems\n * under the specified account.\n *\n * .byPage() returns an async iterable iterator to list the file systems in pages.\n *\n * Example using `for await` syntax:\n *\n * ```js\n * let i = 1;\n * for await (const fileSystem of serviceClient.listFileSystems()) {\n * console.log(`FileSystem ${i++}: ${fileSystem.name}`);\n * }\n * ```\n *\n * Example using `iter.next()`:\n *\n * ```js\n * let i = 1;\n * const iter = serviceClient.listFileSystems();\n * let fileSystemItem = await iter.next();\n * while (!fileSystemItem.done) {\n * console.log(`FileSystem ${i++}: ${fileSystemItem.value.name}`);\n * fileSystemItem = await iter.next();\n * }\n * ```\n *\n * Example using `byPage()`:\n *\n * ```js\n * // passing optional maxPageSize in the page settings\n * let i = 1;\n * for await (const response of serviceClient.listFileSystems().byPage({ maxPageSize: 20 })) {\n * if (response.fileSystemItems) {\n * for (const fileSystem of response.fileSystemItems) {\n * console.log(`FileSystem ${i++}: ${fileSystem.name}`);\n * }\n * }\n * }\n * ```\n *\n * Example using paging with a marker:\n *\n * ```js\n * let i = 1;\n * let iterator = serviceClient.listFileSystems().byPage({ maxPageSize: 2 });\n * let response = (await iterator.next()).value;\n *\n * // Prints 2 file system names\n * if (response.fileSystemItems) {\n * for (const fileSystem of response.fileSystemItems) {\n * console.log(`FileSystem ${i++}: ${fileSystem.name}`);\n * }\n * }\n *\n * // Gets next marker\n * let marker = response.continuationToken;\n * // Passing next marker as continuationToken\n * iterator = serviceClient\n * .listContainers()\n * .byPage({ continuationToken: marker, maxPageSize: 10 });\n * response = (await iterator.next()).value;\n *\n * // Prints 10 file system names\n * if (response.fileSystemItems) {\n * for (const fileSystem of response.fileSystemItems) {\n * console.log(`FileSystem ${i++}: ${fileSystem.name}`);\n * }\n * }\n * ```\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/list-containers2\n *\n * @param options -\n */\n public listFileSystems(\n options: ServiceListFileSystemsOptions = {},\n ): PagedAsyncIterableIterator<FileSystemItem, ServiceListFileSystemsSegmentResponse> {\n return toFileSystemPagedAsyncIterableIterator(this.blobServiceClient.listContainers(options));\n }\n\n // public async createFileSystem(): Promise<DataLakeFileSystemClient> {\n // throw Error(\"NotImplemented\");\n // }\n\n // public async deleteFileSystem(fileSystem: string): Promise<ServiceDeleteFileSystemResponse> {\n // throw Error(\"NotImplemented\");\n // }\n\n /**\n * Only available for DataLakeServiceClient constructed with a shared key credential.\n *\n * Generates an account Shared Access Signature (SAS) URI based on the client properties\n * and parameters passed in. The SAS is signed by the shared key credential of the client.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas\n *\n * @param expiresOn - Optional. The time at which the shared access signature becomes invalid. Default to an hour later if not specified.\n * @param permissions - Specifies the list of permissions to be associated with the SAS.\n * @param resourceTypes - Specifies the resource types associated with the shared access signature.\n * @param options - Optional parameters.\n * @returns An account SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n public generateAccountSasUrl(\n expiresOn?: Date,\n permissions: AccountSASPermissions = AccountSASPermissions.parse(\"r\"),\n resourceTypes: string = \"sco\",\n options: ServiceGenerateAccountSasUrlOptions = {},\n ): string {\n if (!(this.credential instanceof StorageSharedKeyCredential)) {\n throw RangeError(\n \"Can only generate the account SAS when the client is initialized with a shared key credential\",\n );\n }\n\n if (expiresOn === undefined) {\n const now = new Date();\n expiresOn = new Date(now.getTime() + 3600 * 1000);\n }\n\n const sas = generateAccountSASQueryParameters(\n {\n permissions,\n expiresOn,\n resourceTypes,\n services: AccountSASServices.parse(\"b\").toString(),\n ...options,\n },\n this.credential,\n ).toString();\n\n return appendToURLQuery(this.url, sas);\n }\n\n /**\n * Only available for DataLakeServiceClient constructed with a shared key credential.\n *\n * Generates string to sign for an account Shared Access Signature (SAS) based on the client properties\n * and parameters passed in. The SAS is signed by the shared key credential of the client.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas\n *\n * @param expiresOn - Optional. The time at which the shared access signature becomes invalid. Default to an hour later if not specified.\n * @param permissions - Specifies the list of permissions to be associated with the SAS.\n * @param resourceTypes - Specifies the resource types associated with the shared access signature.\n * @param options - Optional parameters.\n * @returns An account SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n public generateSasStringToSign(\n expiresOn?: Date,\n permissions: AccountSASPermissions = AccountSASPermissions.parse(\"r\"),\n resourceTypes: string = \"sco\",\n options: ServiceGenerateAccountSasUrlOptions = {},\n ): string {\n if (!(this.credential instanceof StorageSharedKeyCredential)) {\n throw RangeError(\n \"Can only generate the account SAS when the client is initialized with a shared key credential\",\n );\n }\n\n if (expiresOn === undefined) {\n const now = new Date();\n expiresOn = new Date(now.getTime() + 3600 * 1000);\n }\n\n return generateAccountSASQueryParametersInternal(\n {\n permissions,\n expiresOn,\n resourceTypes,\n services: AccountSASServices.parse(\"b\").toString(),\n ...options,\n },\n this.credential,\n ).stringToSign;\n }\n\n /**\n * Renames an existing File System.\n *\n * @param sourceFileSystemName - The name of the source File System.\n * @param destinationContainerName - The new name of the File System.\n * @param options - Options to configure File System Rename operation.\n */\n /* eslint-disable-next-line @typescript-eslint/ban-ts-comment */\n // @ts-ignore Need to hide this interface for now. Make it public and turn on the live tests for it when the service is ready.\n private async renameFileSystem(\n sourceFileSystemName: string,\n destinationFileSystemName: string,\n options: ServiceRenameFileSystemOptions = {},\n ): Promise<{\n fileSystemClient: DataLakeFileSystemClient;\n fileSystemRenameResponse: FileSystemRenameResponse;\n }> {\n return tracingClient.withSpan(\n \"DataLakeServiceClient-renameFileSystem\",\n options,\n async (updatedOptions) => {\n const res = await this.blobServiceClient[\"renameContainer\"](\n sourceFileSystemName,\n destinationFileSystemName,\n updatedOptions,\n );\n\n const fileSystemClient = this.getFileSystemClient(destinationFileSystemName);\n return {\n fileSystemClient,\n fileSystemRenameResponse: res.containerRenameResponse,\n };\n },\n );\n }\n\n /**\n * Restore a previously deleted File System.\n * This API is only functional if Container Soft Delete is enabled for the storage account.\n *\n * @param deletedFileSystemName - The name of the source File System.\n * @param deleteFileSystemVersion - The new name of the File System.\n * @param options - Options to configure File System Restore operation.\n */\n public async undeleteFileSystem(\n deletedFileSystemName: string,\n deleteFileSystemVersion: string,\n options: ServiceUndeleteFileSystemOptions = {},\n ): Promise<{\n fileSystemClient: DataLakeFileSystemClient;\n fileSystemUndeleteResponse: FileSystemUndeleteResponse;\n }> {\n return tracingClient.withSpan(\n \"DataLakeServiceClient-undeleteFileSystem\",\n options,\n async (updatedOptions) => {\n const res = await this.blobServiceClient.undeleteContainer(\n deletedFileSystemName,\n deleteFileSystemVersion,\n {\n ...options,\n destinationContainerName: options.destinationFileSystemName,\n tracingOptions: updatedOptions.tracingOptions,\n },\n );\n\n const fileSystemClient = this.getFileSystemClient(\n options.destinationFileSystemName || deletedFileSystemName,\n );\n return {\n fileSystemClient,\n fileSystemUndeleteResponse: res.containerUndeleteResponse,\n };\n },\n );\n }\n\n /**\n * Gets the properties of a storage account’s Blob service endpoint, including properties\n * for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties\n *\n * @param options - Options to the Service Get Properties operation.\n * @returns Response data for the Service Get Properties operation.\n */\n public async getProperties(\n options: ServiceGetPropertiesOptions = {},\n ): Promise<DataLakeServiceGetPropertiesResponse> {\n return tracingClient.withSpan(\n \"DataLakeServiceClient-getProperties\",\n options,\n async (updatedOptions) => {\n return this.blobServiceClient.getProperties({\n abortSignal: options.abortSignal,\n tracingOptions: updatedOptions.tracingOptions,\n });\n },\n );\n }\n\n /**\n * Sets properties for a storage account’s Blob service endpoint, including properties\n * for Storage Analytics, CORS (Cross-Origin Resource Sharing) rules and soft delete settings.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties\n *\n * @param properties -\n * @param options - Options to the Service Set Properties operation.\n * @returns Response data for the Service Set Properties operation.\n */\n public async setProperties(\n properties: DataLakeServiceProperties,\n options: ServiceSetPropertiesOptions = {},\n ): Promise<ServiceSetPropertiesResponse> {\n return tracingClient.withSpan(\n \"DataLakeServiceClient-setProperties\",\n options,\n async (updatedOptions) => {\n return this.blobServiceClient.setProperties(properties, {\n abortSignal: options.abortSignal,\n tracingOptions: updatedOptions.tracingOptions,\n });\n },\n );\n }\n}\n"]}
1
+ {"version":3,"file":"DataLakeServiceClient.js","sourceRoot":"","sources":["../../../src/DataLakeServiceClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { TokenCredential } from \"@azure/core-auth\";\nimport type { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { getDefaultProxySettings } from \"@azure/core-rest-pipeline\";\nimport { isNode } from \"@azure/core-util\";\nimport type {\n ServiceGetPropertiesOptions,\n ServiceSetPropertiesOptions,\n ServiceSetPropertiesResponse,\n} from \"@azure/storage-blob\";\nimport { BlobServiceClient } from \"@azure/storage-blob\";\nimport type { Pipeline, StoragePipelineOptions } from \"./Pipeline\";\nimport { isPipelineLike, newPipeline } from \"./Pipeline\";\nimport { AnonymousCredential } from \"@azure/storage-blob\";\nimport { StorageSharedKeyCredential } from \"./credentials/StorageSharedKeyCredential\";\n\nimport { DataLakeFileSystemClient } from \"./DataLakeFileSystemClient\";\nimport type {\n FileSystemItem,\n FileSystemRenameResponse,\n ServiceGenerateAccountSasUrlOptions,\n ServiceListFileSystemsOptions,\n ServiceListFileSystemsSegmentResponse,\n ServiceRenameFileSystemOptions,\n ServiceUndeleteFileSystemOptions,\n FileSystemUndeleteResponse,\n} from \"./models\";\nimport { StorageClient } from \"./StorageClient\";\nimport {\n appendToURLPath,\n appendToURLQuery,\n extractConnectionStringParts,\n} from \"./utils/utils.common\";\nimport { toDfsEndpointUrl, toFileSystemPagedAsyncIterableIterator } from \"./transforms\";\nimport type {\n ServiceGetUserDelegationKeyOptions,\n ServiceGetUserDelegationKeyResponse,\n} from \"./models\";\nimport { tracingClient } from \"./utils/tracing\";\nimport { AccountSASPermissions } from \"./sas/AccountSASPermissions\";\nimport {\n generateAccountSASQueryParameters,\n generateAccountSASQueryParametersInternal,\n} from \"./sas/AccountSASSignatureValues\";\nimport { AccountSASServices } from \"./sas/AccountSASServices\";\nimport type { DataLakeServiceGetPropertiesResponse, DataLakeServiceProperties } from \"./index\";\n\n/**\n * DataLakeServiceClient allows you to manipulate Azure\n * Data Lake service resources and file systems. The storage account provides\n * the top-level namespace for the Data Lake service.\n */\nexport class DataLakeServiceClient extends StorageClient {\n // private serviceContext: Service;\n\n /**\n * blobServiceClient provided by `@azure/storage-blob` package.\n */\n private blobServiceClient: BlobServiceClient;\n\n /**\n *\n * Creates an instance of DataLakeServiceClient from connection string.\n *\n * @param connectionString - Account connection string or a SAS connection string of an Azure storage account.\n * [ Note - Account connection string can only be used in NODE.JS runtime. ]\n * Account connection string example -\n * `DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net`\n * SAS connection string example -\n * `BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString`\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n\n public static fromConnectionString(\n connectionString: string,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n ): DataLakeServiceClient {\n options = options || {};\n const extractedCreds = extractConnectionStringParts(connectionString);\n if (extractedCreds.kind === \"AccountConnString\") {\n if (isNode) {\n const sharedKeyCredential = new StorageSharedKeyCredential(\n extractedCreds.accountName!,\n extractedCreds.accountKey,\n );\n if (!options.proxyOptions) {\n options.proxyOptions = getDefaultProxySettings(extractedCreds.proxyUri);\n }\n const pipeline = newPipeline(sharedKeyCredential, options);\n return new DataLakeServiceClient(toDfsEndpointUrl(extractedCreds.url), pipeline);\n } else {\n throw new Error(\"Account connection string is only supported in Node.js environment\");\n }\n } else if (extractedCreds.kind === \"SASConnString\") {\n const pipeline = newPipeline(new AnonymousCredential(), options);\n return new DataLakeServiceClient(\n toDfsEndpointUrl(extractedCreds.url) + \"?\" + extractedCreds.accountSas,\n pipeline,\n );\n } else {\n throw new Error(\n \"Connection string must be either an Account connection string or a SAS connection string\",\n );\n }\n }\n\n /**\n * Creates an instance of DataLakeServiceClient from url.\n *\n * @param url - A Client string pointing to Azure Storage data lake service, such as\n * \"https://myaccount.dfs.core.windows.net\". You can append a SAS\n * if using AnonymousCredential, such as \"https://myaccount.dfs.core.windows.net?sasString\".\n * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(\n url: string,\n credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n );\n\n /**\n * Creates an instance of DataLakeServiceClient from url and pipeline.\n *\n * @param url - A Client string pointing to Azure Storage data lake service, such as\n * \"https://myaccount.dfs.core.windows.net\". You can append a SAS\n * if using AnonymousCredential, such as \"https://myaccount.dfs.core.windows.net?sasString\".\n * @param pipeline - Call newPipeline() to create a default\n * pipeline, or provide a customized pipeline.\n */\n public constructor(url: string, pipeline: Pipeline);\n\n public constructor(\n url: string,\n credentialOrPipeline?:\n | StorageSharedKeyCredential\n | AnonymousCredential\n | TokenCredential\n | Pipeline,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n ) {\n if (isPipelineLike(credentialOrPipeline)) {\n super(url, credentialOrPipeline);\n } else {\n let credential;\n if (credentialOrPipeline === undefined) {\n credential = new AnonymousCredential();\n } else {\n credential = credentialOrPipeline;\n }\n\n const pipeline = newPipeline(credential, options);\n super(url, pipeline);\n }\n\n // this.serviceContext = new Service(this.storageClientContext);\n this.blobServiceClient = new BlobServiceClient(this.blobEndpointUrl, this.pipeline);\n }\n\n /**\n * Creates a {@link DataLakeFileSystemClient} object.\n *\n * @param fileSystemName - File system name.\n */\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-subclients */\n public getFileSystemClient(fileSystemName: string): DataLakeFileSystemClient {\n return new DataLakeFileSystemClient(\n appendToURLPath(this.url, encodeURIComponent(fileSystemName)),\n this.pipeline,\n );\n }\n\n /**\n * ONLY AVAILABLE WHEN USING BEARER TOKEN AUTHENTICATION (TokenCredential).\n *\n * Retrieves a user delegation key for the Data Lake service. This is only a valid operation when using\n * bearer token authentication.\n *\n * @example\n * ```js\n * // Generate user delegation SAS for a file system\n * const userDelegationKey = await dataLakeServiceClient.getUserDelegationKey(startsOn, expiresOn);\n * const fileSystemSAS = generateDataLakeSASQueryParameters({\n * fileSystemName, // Required\n * permissions: FileSystemSASPermissions.parse(\"racwdl\"), // Required\n * startsOn, // Required. Date type\n * expiresOn, // Optional. Date type\n * ipRange: { start: \"0.0.0.0\", end: \"255.255.255.255\" }, // Optional\n * protocol: SASProtocol.HttpsAndHttp, // Optional\n * version: \"2018-11-09\" // Must greater than or equal to 2018-11-09 to generate user delegation SAS\n * },\n * userDelegationKey, // UserDelegationKey\n * accountName\n * ).toString();\n * ```\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key\n *\n * @param startsOn - The start time for the user delegation SAS. Must be within 7 days of the current time.\n * @param expiresOn - The end time for the user delegation SAS. Must be within 7 days of the current time.\n * @param options -\n */\n public async getUserDelegationKey(\n startsOn: Date,\n expiresOn: Date,\n options: ServiceGetUserDelegationKeyOptions = {},\n ): Promise<ServiceGetUserDelegationKeyResponse> {\n return tracingClient.withSpan(\n \"DataLakeServiceClient-getUserDelegationKey\",\n options,\n async (updatedOptions) => {\n return this.blobServiceClient.getUserDelegationKey(startsOn, expiresOn, updatedOptions);\n },\n );\n }\n\n /**\n * Returns an async iterable iterator to list all the file systems\n * under the specified account.\n *\n * .byPage() returns an async iterable iterator to list the file systems in pages.\n *\n * Example using `for await` syntax:\n *\n * ```js\n * let i = 1;\n * for await (const fileSystem of serviceClient.listFileSystems()) {\n * console.log(`FileSystem ${i++}: ${fileSystem.name}`);\n * }\n * ```\n *\n * Example using `iter.next()`:\n *\n * ```js\n * let i = 1;\n * const iter = serviceClient.listFileSystems();\n * let fileSystemItem = await iter.next();\n * while (!fileSystemItem.done) {\n * console.log(`FileSystem ${i++}: ${fileSystemItem.value.name}`);\n * fileSystemItem = await iter.next();\n * }\n * ```\n *\n * Example using `byPage()`:\n *\n * ```js\n * // passing optional maxPageSize in the page settings\n * let i = 1;\n * for await (const response of serviceClient.listFileSystems().byPage({ maxPageSize: 20 })) {\n * if (response.fileSystemItems) {\n * for (const fileSystem of response.fileSystemItems) {\n * console.log(`FileSystem ${i++}: ${fileSystem.name}`);\n * }\n * }\n * }\n * ```\n *\n * Example using paging with a marker:\n *\n * ```js\n * let i = 1;\n * let iterator = serviceClient.listFileSystems().byPage({ maxPageSize: 2 });\n * let response = (await iterator.next()).value;\n *\n * // Prints 2 file system names\n * if (response.fileSystemItems) {\n * for (const fileSystem of response.fileSystemItems) {\n * console.log(`FileSystem ${i++}: ${fileSystem.name}`);\n * }\n * }\n *\n * // Gets next marker\n * let marker = response.continuationToken;\n * // Passing next marker as continuationToken\n * iterator = serviceClient\n * .listContainers()\n * .byPage({ continuationToken: marker, maxPageSize: 10 });\n * response = (await iterator.next()).value;\n *\n * // Prints 10 file system names\n * if (response.fileSystemItems) {\n * for (const fileSystem of response.fileSystemItems) {\n * console.log(`FileSystem ${i++}: ${fileSystem.name}`);\n * }\n * }\n * ```\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/list-containers2\n *\n * @param options -\n */\n public listFileSystems(\n options: ServiceListFileSystemsOptions = {},\n ): PagedAsyncIterableIterator<FileSystemItem, ServiceListFileSystemsSegmentResponse> {\n return toFileSystemPagedAsyncIterableIterator(this.blobServiceClient.listContainers(options));\n }\n\n // public async createFileSystem(): Promise<DataLakeFileSystemClient> {\n // throw Error(\"NotImplemented\");\n // }\n\n // public async deleteFileSystem(fileSystem: string): Promise<ServiceDeleteFileSystemResponse> {\n // throw Error(\"NotImplemented\");\n // }\n\n /**\n * Only available for DataLakeServiceClient constructed with a shared key credential.\n *\n * Generates an account Shared Access Signature (SAS) URI based on the client properties\n * and parameters passed in. The SAS is signed by the shared key credential of the client.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/create-account-sas\n *\n * @param expiresOn - Optional. The time at which the shared access signature becomes invalid. Default to an hour later if not specified.\n * @param permissions - Specifies the list of permissions to be associated with the SAS.\n * @param resourceTypes - Specifies the resource types associated with the shared access signature.\n * @param options - Optional parameters.\n * @returns An account SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n public generateAccountSasUrl(\n expiresOn?: Date,\n permissions: AccountSASPermissions = AccountSASPermissions.parse(\"r\"),\n resourceTypes: string = \"sco\",\n options: ServiceGenerateAccountSasUrlOptions = {},\n ): string {\n if (!(this.credential instanceof StorageSharedKeyCredential)) {\n throw RangeError(\n \"Can only generate the account SAS when the client is initialized with a shared key credential\",\n );\n }\n\n if (expiresOn === undefined) {\n const now = new Date();\n expiresOn = new Date(now.getTime() + 3600 * 1000);\n }\n\n const sas = generateAccountSASQueryParameters(\n {\n permissions,\n expiresOn,\n resourceTypes,\n services: AccountSASServices.parse(\"b\").toString(),\n ...options,\n },\n this.credential,\n ).toString();\n\n return appendToURLQuery(this.url, sas);\n }\n\n /**\n * Only available for DataLakeServiceClient constructed with a shared key credential.\n *\n * Generates string to sign for an account Shared Access Signature (SAS) based on the client properties\n * and parameters passed in. The SAS is signed by the shared key credential of the client.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/create-account-sas\n *\n * @param expiresOn - Optional. The time at which the shared access signature becomes invalid. Default to an hour later if not specified.\n * @param permissions - Specifies the list of permissions to be associated with the SAS.\n * @param resourceTypes - Specifies the resource types associated with the shared access signature.\n * @param options - Optional parameters.\n * @returns An account SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n public generateSasStringToSign(\n expiresOn?: Date,\n permissions: AccountSASPermissions = AccountSASPermissions.parse(\"r\"),\n resourceTypes: string = \"sco\",\n options: ServiceGenerateAccountSasUrlOptions = {},\n ): string {\n if (!(this.credential instanceof StorageSharedKeyCredential)) {\n throw RangeError(\n \"Can only generate the account SAS when the client is initialized with a shared key credential\",\n );\n }\n\n if (expiresOn === undefined) {\n const now = new Date();\n expiresOn = new Date(now.getTime() + 3600 * 1000);\n }\n\n return generateAccountSASQueryParametersInternal(\n {\n permissions,\n expiresOn,\n resourceTypes,\n services: AccountSASServices.parse(\"b\").toString(),\n ...options,\n },\n this.credential,\n ).stringToSign;\n }\n\n /**\n * Renames an existing File System.\n *\n * @param sourceFileSystemName - The name of the source File System.\n * @param destinationContainerName - The new name of the File System.\n * @param options - Options to configure File System Rename operation.\n */\n /* eslint-disable-next-line @typescript-eslint/ban-ts-comment */\n // @ts-ignore Need to hide this interface for now. Make it public and turn on the live tests for it when the service is ready.\n private async renameFileSystem(\n sourceFileSystemName: string,\n destinationFileSystemName: string,\n options: ServiceRenameFileSystemOptions = {},\n ): Promise<{\n fileSystemClient: DataLakeFileSystemClient;\n fileSystemRenameResponse: FileSystemRenameResponse;\n }> {\n return tracingClient.withSpan(\n \"DataLakeServiceClient-renameFileSystem\",\n options,\n async (updatedOptions) => {\n const res = await this.blobServiceClient[\"renameContainer\"](\n sourceFileSystemName,\n destinationFileSystemName,\n updatedOptions,\n );\n\n const fileSystemClient = this.getFileSystemClient(destinationFileSystemName);\n return {\n fileSystemClient,\n fileSystemRenameResponse: res.containerRenameResponse,\n };\n },\n );\n }\n\n /**\n * Restore a previously deleted File System.\n * This API is only functional if Container Soft Delete is enabled for the storage account.\n *\n * @param deletedFileSystemName - The name of the source File System.\n * @param deleteFileSystemVersion - The new name of the File System.\n * @param options - Options to configure File System Restore operation.\n */\n public async undeleteFileSystem(\n deletedFileSystemName: string,\n deleteFileSystemVersion: string,\n options: ServiceUndeleteFileSystemOptions = {},\n ): Promise<{\n fileSystemClient: DataLakeFileSystemClient;\n fileSystemUndeleteResponse: FileSystemUndeleteResponse;\n }> {\n return tracingClient.withSpan(\n \"DataLakeServiceClient-undeleteFileSystem\",\n options,\n async (updatedOptions) => {\n const res = await this.blobServiceClient.undeleteContainer(\n deletedFileSystemName,\n deleteFileSystemVersion,\n {\n ...options,\n destinationContainerName: options.destinationFileSystemName,\n tracingOptions: updatedOptions.tracingOptions,\n },\n );\n\n const fileSystemClient = this.getFileSystemClient(\n options.destinationFileSystemName || deletedFileSystemName,\n );\n return {\n fileSystemClient,\n fileSystemUndeleteResponse: res.containerUndeleteResponse,\n };\n },\n );\n }\n\n /**\n * Gets the properties of a storage account’s Blob service endpoint, including properties\n * for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties\n *\n * @param options - Options to the Service Get Properties operation.\n * @returns Response data for the Service Get Properties operation.\n */\n public async getProperties(\n options: ServiceGetPropertiesOptions = {},\n ): Promise<DataLakeServiceGetPropertiesResponse> {\n return tracingClient.withSpan(\n \"DataLakeServiceClient-getProperties\",\n options,\n async (updatedOptions) => {\n return this.blobServiceClient.getProperties({\n abortSignal: options.abortSignal,\n tracingOptions: updatedOptions.tracingOptions,\n });\n },\n );\n }\n\n /**\n * Sets properties for a storage account’s Blob service endpoint, including properties\n * for Storage Analytics, CORS (Cross-Origin Resource Sharing) rules and soft delete settings.\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties\n *\n * @param properties -\n * @param options - Options to the Service Set Properties operation.\n * @returns Response data for the Service Set Properties operation.\n */\n public async setProperties(\n properties: DataLakeServiceProperties,\n options: ServiceSetPropertiesOptions = {},\n ): Promise<ServiceSetPropertiesResponse> {\n return tracingClient.withSpan(\n \"DataLakeServiceClient-setProperties\",\n options,\n async (updatedOptions) => {\n return this.blobServiceClient.setProperties(properties, {\n abortSignal: options.abortSignal,\n tracingOptions: updatedOptions.tracingOptions,\n });\n },\n );\n }\n}\n"]}
@@ -150,7 +150,7 @@ export class DataLakePathClient extends StorageClient {
150
150
  /**
151
151
  * Create a directory or path.
152
152
  *
153
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create
153
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create
154
154
  *
155
155
  * @param resourceType - Resource type, "directory" or "file".
156
156
  * @param options - Optional. Options when creating path.
@@ -179,7 +179,7 @@ export class DataLakePathClient extends StorageClient {
179
179
  /**
180
180
  * Create a directory or file. If the resource already exists, it is not changed.
181
181
  *
182
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create
182
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/create
183
183
  *
184
184
  * @param resourceType - Resource type, "directory" or "file".
185
185
  * @param options -
@@ -217,7 +217,7 @@ export class DataLakePathClient extends StorageClient {
217
217
  /**
218
218
  * Delete current path (directory or file).
219
219
  *
220
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/delete
220
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/delete
221
221
  *
222
222
  * @param recursive - Required and valid only when the resource is a directory. If "true", all paths beneath the directory will be deleted.
223
223
  * @param options - Optional. Options when deleting path.
@@ -251,7 +251,7 @@ export class DataLakePathClient extends StorageClient {
251
251
  /**
252
252
  * Delete current path (directory or file) if it exists.
253
253
  *
254
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/delete
254
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/delete
255
255
  *
256
256
  * @param recursive - Required and valid only when the resource is a directory. If "true", all paths beneath the directory will be deleted.
257
257
  * @param options -
@@ -275,7 +275,7 @@ export class DataLakePathClient extends StorageClient {
275
275
  /**
276
276
  * Returns the access control data for a path (directory of file).
277
277
  *
278
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/getproperties
278
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/getproperties
279
279
  *
280
280
  * @param options - Optional. Options when getting file access control.
281
281
  */
@@ -289,7 +289,7 @@ export class DataLakePathClient extends StorageClient {
289
289
  /**
290
290
  * Set the access control data for a path (directory of file).
291
291
  *
292
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update
292
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update
293
293
  *
294
294
  * @param acl - The POSIX access control list for the file or directory.
295
295
  * @param options - Optional. Options when setting path access control.
@@ -303,7 +303,7 @@ export class DataLakePathClient extends StorageClient {
303
303
  /**
304
304
  * Sets the Access Control on a path and sub paths.
305
305
  *
306
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update
306
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update
307
307
  *
308
308
  * @param acl - The POSIX access control list for the file or directory.
309
309
  * @param options - Optional. Options
@@ -316,7 +316,7 @@ export class DataLakePathClient extends StorageClient {
316
316
  /**
317
317
  * Modifies the Access Control on a path and sub paths.
318
318
  *
319
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update
319
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update
320
320
  *
321
321
  * @param acl - The POSIX access control list for the file or directory.
322
322
  * @param options - Optional. Options
@@ -329,7 +329,7 @@ export class DataLakePathClient extends StorageClient {
329
329
  /**
330
330
  * Removes the Access Control on a path and sub paths.
331
331
  *
332
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update
332
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update
333
333
  *
334
334
  * @param acl - The POSIX access control list for the file or directory.
335
335
  * @param options - Optional. Options
@@ -342,7 +342,7 @@ export class DataLakePathClient extends StorageClient {
342
342
  /**
343
343
  * Sets the file permissions on a path.
344
344
  *
345
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update
345
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update
346
346
  *
347
347
  * @param permissions - The POSIX access permissions for the file owner, the file owning group, and others.
348
348
  * @param options - Optional. Options when setting path permissions.
@@ -362,7 +362,7 @@ export class DataLakePathClient extends StorageClient {
362
362
  * the methods of {@link DataLakeFileSystemClient} that list paths using the `includeMetadata` option, which
363
363
  * will retain their original casing.
364
364
  *
365
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-properties
365
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/get-blob-properties
366
366
  *
367
367
  * @param options - Optional. Options when getting path properties.
368
368
  */
@@ -377,7 +377,7 @@ export class DataLakePathClient extends StorageClient {
377
377
  *
378
378
  * If no value provided, or no value provided for the specified blob HTTP headers,
379
379
  * these blob HTTP headers without a value will be cleared.
380
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-properties
380
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/set-blob-properties
381
381
  *
382
382
  * @param httpHeaders -
383
383
  * @param options -
@@ -400,7 +400,7 @@ export class DataLakePathClient extends StorageClient {
400
400
  * If no option provided, or no metadata defined in the parameter, the path
401
401
  * metadata will be removed.
402
402
  *
403
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-metadata
403
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/set-blob-metadata
404
404
  *
405
405
  * @param metadata - Optional. Replace existing metadata with this value.
406
406
  * If no value provided the existing metadata will be removed.
@@ -505,7 +505,7 @@ export class DataLakeDirectoryClient extends DataLakePathClient {
505
505
  * Generates a Service Shared Access Signature (SAS) URI based on the client properties
506
506
  * and parameters passed in. The SAS is signed by the shared key credential of the client.
507
507
  *
508
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
508
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
509
509
  *
510
510
  * @param options - Optional parameters.
511
511
  * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.
@@ -523,7 +523,7 @@ export class DataLakeDirectoryClient extends DataLakePathClient {
523
523
  * Generates string to sign for a Service Shared Access Signature (SAS) URI based on the client properties
524
524
  * and parameters passed in.
525
525
  *
526
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
526
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
527
527
  *
528
528
  * @param options - Optional parameters.
529
529
  * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.
@@ -539,7 +539,7 @@ export class DataLakeDirectoryClient extends DataLakePathClient {
539
539
  * Generates a Service Shared Access Signature (SAS) URI based on the client properties
540
540
  * and parameters passed in. The SAS is signed by the input user delegation key.
541
541
  *
542
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
542
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
543
543
  *
544
544
  * @param options - Optional parameters.
545
545
  * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()`
@@ -555,7 +555,7 @@ export class DataLakeDirectoryClient extends DataLakePathClient {
555
555
  * Generates string to sign for a Service Shared Access Signature (SAS) URI based on the client properties
556
556
  * and parameters passed in The SAS is signed by the input user delegation key.
557
557
  *
558
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
558
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
559
559
  *
560
560
  * @param options - Optional parameters.
561
561
  * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()`
@@ -623,7 +623,7 @@ export class DataLakeFileClient extends DataLakePathClient {
623
623
  * * In Node.js, data returns in a Readable stream readableStreamBody
624
624
  * * In browsers, data returns in a promise contentAsBlob
625
625
  *
626
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob
626
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/get-blob
627
627
  *
628
628
  * * Example usage (Node.js):
629
629
  *
@@ -690,7 +690,7 @@ export class DataLakeFileClient extends DataLakePathClient {
690
690
  * Uploads data to be appended to a file. Data can only be appended to a file.
691
691
  * To apply perviously uploaded data to a file, call flush.
692
692
  *
693
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update
693
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/update
694
694
  *
695
695
  * @param body - Content to be uploaded.
696
696
  * @param offset - Append offset in bytes.
@@ -1082,7 +1082,7 @@ export class DataLakeFileClient extends DataLakePathClient {
1082
1082
  * Generates a Service Shared Access Signature (SAS) URI based on the client properties
1083
1083
  * and parameters passed in. The SAS is signed by the shared key credential of the client.
1084
1084
  *
1085
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
1085
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
1086
1086
  *
1087
1087
  * @param options - Optional parameters.
1088
1088
  * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.
@@ -1102,7 +1102,7 @@ export class DataLakeFileClient extends DataLakePathClient {
1102
1102
  * Generates string to sign for a Service Shared Access Signature (SAS) URI based on the client properties
1103
1103
  * and parameters passed in. The SAS is signed by the shared key credential of the client.
1104
1104
  *
1105
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
1105
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
1106
1106
  *
1107
1107
  * @param options - Optional parameters.
1108
1108
  * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.
@@ -1118,7 +1118,7 @@ export class DataLakeFileClient extends DataLakePathClient {
1118
1118
  * Generates a Service Shared Access Signature (SAS) URI based on the client properties
1119
1119
  * and parameters passed in. The SAS is signed by the input user delegation key.
1120
1120
  *
1121
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
1121
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
1122
1122
  *
1123
1123
  * @param options - Optional parameters.
1124
1124
  * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()`
@@ -1134,7 +1134,7 @@ export class DataLakeFileClient extends DataLakePathClient {
1134
1134
  * Generates string to sign for a Service Shared Access Signature (SAS) URI based on the client properties
1135
1135
  * and parameters passed in. The SAS is signed by the input user delegation key.
1136
1136
  *
1137
- * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
1137
+ * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas
1138
1138
  *
1139
1139
  * @param options - Optional parameters.
1140
1140
  * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()`