@azure/storage-file-datalake 12.27.0-beta.1 → 12.27.0

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 (299) hide show
  1. package/dist/browser/DataLakeFileSystemClient.d.ts +13 -13
  2. package/dist/browser/DataLakeFileSystemClient.js +136 -93
  3. package/dist/browser/DataLakeFileSystemClient.js.map +1 -1
  4. package/dist/browser/DataLakeLeaseClient.js +1 -0
  5. package/dist/browser/DataLakeLeaseClient.js.map +1 -1
  6. package/dist/browser/DataLakeServiceClient.d.ts +6 -6
  7. package/dist/browser/DataLakeServiceClient.js +28 -11
  8. package/dist/browser/DataLakeServiceClient.js.map +1 -1
  9. package/dist/browser/Pipeline.js +24 -15
  10. package/dist/browser/Pipeline.js.map +1 -1
  11. package/dist/browser/StorageClient.js +43 -3
  12. package/dist/browser/StorageClient.js.map +1 -1
  13. package/dist/browser/StorageContextClient.js +2 -3
  14. package/dist/browser/StorageContextClient.js.map +1 -1
  15. package/dist/browser/clients.d.ts +33 -33
  16. package/dist/browser/clients.js +269 -89
  17. package/dist/browser/clients.js.map +1 -1
  18. package/dist/browser/generated/src/operations/fileSystemOperations.js +1 -0
  19. package/dist/browser/generated/src/operations/fileSystemOperations.js.map +1 -1
  20. package/dist/browser/generated/src/operations/pathOperations.js +1 -0
  21. package/dist/browser/generated/src/operations/pathOperations.js.map +1 -1
  22. package/dist/browser/generated/src/operations/service.js +1 -0
  23. package/dist/browser/generated/src/operations/service.js.map +1 -1
  24. package/dist/browser/generated/src/storageClient.js +15 -4
  25. package/dist/browser/generated/src/storageClient.js.map +1 -1
  26. package/dist/browser/index-browser.d.mts.map +1 -1
  27. package/dist/browser/index-browser.mjs.map +1 -1
  28. package/dist/browser/index.d.ts +1 -1
  29. package/dist/browser/index.js +1 -1
  30. package/dist/browser/models.d.ts +1 -1
  31. package/dist/browser/models.js.map +1 -1
  32. package/dist/browser/sas/AccountSASPermissions.d.ts +1 -1
  33. package/dist/browser/sas/AccountSASPermissions.js +34 -36
  34. package/dist/browser/sas/AccountSASPermissions.js.map +1 -1
  35. package/dist/browser/sas/AccountSASResourceTypes.d.ts +1 -1
  36. package/dist/browser/sas/AccountSASResourceTypes.js +13 -15
  37. package/dist/browser/sas/AccountSASResourceTypes.js.map +1 -1
  38. package/dist/browser/sas/AccountSASServices.js +16 -18
  39. package/dist/browser/sas/AccountSASServices.js.map +1 -1
  40. package/dist/browser/sas/AccountSASSignatureValues.d.ts +3 -3
  41. package/dist/browser/sas/AccountSASSignatureValues.js +1 -1
  42. package/dist/browser/sas/AccountSASSignatureValues.js.map +1 -1
  43. package/dist/browser/sas/DataLakeSASPermissions.js +39 -41
  44. package/dist/browser/sas/DataLakeSASPermissions.js.map +1 -1
  45. package/dist/browser/sas/DataLakeSASSignatureValues.d.ts +1 -1
  46. package/dist/browser/sas/DataLakeSASSignatureValues.js +4 -3
  47. package/dist/browser/sas/DataLakeSASSignatureValues.js.map +1 -1
  48. package/dist/browser/sas/DirectorySASPermissions.d.ts +1 -1
  49. package/dist/browser/sas/DirectorySASPermissions.js +44 -46
  50. package/dist/browser/sas/DirectorySASPermissions.js.map +1 -1
  51. package/dist/browser/sas/FileSystemSASPermissions.d.ts +1 -1
  52. package/dist/browser/sas/FileSystemSASPermissions.js +44 -46
  53. package/dist/browser/sas/FileSystemSASPermissions.js.map +1 -1
  54. package/dist/browser/sas/SASQueryParameters.d.ts +2 -2
  55. package/dist/browser/sas/SASQueryParameters.js +131 -2
  56. package/dist/browser/sas/SASQueryParameters.js.map +1 -1
  57. package/dist/browser/transforms.js +8 -1
  58. package/dist/browser/transforms.js.map +1 -1
  59. package/dist/browser/utils/Batch.js +29 -21
  60. package/dist/browser/utils/Batch.js.map +1 -1
  61. package/dist/browser/utils/BufferScheduler.js +70 -44
  62. package/dist/browser/utils/BufferScheduler.js.map +1 -1
  63. package/dist/browser/utils/DataLakeAclChangeFailedError.js +8 -0
  64. package/dist/browser/utils/DataLakeAclChangeFailedError.js.map +1 -1
  65. package/dist/browser/utils/PathClientInternal.js +4 -0
  66. package/dist/browser/utils/PathClientInternal.js.map +1 -1
  67. package/dist/browser/utils/constants.d.ts.map +1 -1
  68. package/dist/browser/utils/constants.js +1 -1
  69. package/dist/browser/utils/constants.js.map +1 -1
  70. package/dist/browser/utils/utils.common.d.ts +2 -2
  71. package/dist/browser/utils/utils.common.js +5 -7
  72. package/dist/browser/utils/utils.common.js.map +1 -1
  73. package/dist/commonjs/DataLakeFileSystemClient.d.ts +13 -13
  74. package/dist/commonjs/DataLakeFileSystemClient.js +136 -93
  75. package/dist/commonjs/DataLakeFileSystemClient.js.map +1 -1
  76. package/dist/commonjs/DataLakeLeaseClient.js +1 -0
  77. package/dist/commonjs/DataLakeLeaseClient.js.map +1 -1
  78. package/dist/commonjs/DataLakeServiceClient.d.ts +6 -6
  79. package/dist/commonjs/DataLakeServiceClient.js +28 -11
  80. package/dist/commonjs/DataLakeServiceClient.js.map +1 -1
  81. package/dist/commonjs/Pipeline.js +32 -23
  82. package/dist/commonjs/Pipeline.js.map +1 -1
  83. package/dist/commonjs/StorageClient.js +43 -3
  84. package/dist/commonjs/StorageClient.js.map +1 -1
  85. package/dist/commonjs/StorageContextClient.js +2 -3
  86. package/dist/commonjs/StorageContextClient.js.map +1 -1
  87. package/dist/commonjs/clients.d.ts +33 -33
  88. package/dist/commonjs/clients.js +269 -89
  89. package/dist/commonjs/clients.js.map +1 -1
  90. package/dist/commonjs/credentials/UserDelegationKeyCredential.d.ts +1 -1
  91. package/dist/commonjs/credentials/UserDelegationKeyCredential.js +13 -1
  92. package/dist/commonjs/credentials/UserDelegationKeyCredential.js.map +1 -1
  93. package/dist/commonjs/generated/src/operations/fileSystemOperations.js +1 -0
  94. package/dist/commonjs/generated/src/operations/fileSystemOperations.js.map +1 -1
  95. package/dist/commonjs/generated/src/operations/pathOperations.js +1 -0
  96. package/dist/commonjs/generated/src/operations/pathOperations.js.map +1 -1
  97. package/dist/commonjs/generated/src/operations/service.js +1 -0
  98. package/dist/commonjs/generated/src/operations/service.js.map +1 -1
  99. package/dist/commonjs/generated/src/storageClient.js +15 -4
  100. package/dist/commonjs/generated/src/storageClient.js.map +1 -1
  101. package/dist/commonjs/models.d.ts +1 -1
  102. package/dist/commonjs/models.js.map +1 -1
  103. package/dist/commonjs/sas/AccountSASPermissions.d.ts +1 -1
  104. package/dist/commonjs/sas/AccountSASPermissions.js +34 -36
  105. package/dist/commonjs/sas/AccountSASPermissions.js.map +1 -1
  106. package/dist/commonjs/sas/AccountSASResourceTypes.d.ts +1 -1
  107. package/dist/commonjs/sas/AccountSASResourceTypes.js +13 -15
  108. package/dist/commonjs/sas/AccountSASResourceTypes.js.map +1 -1
  109. package/dist/commonjs/sas/AccountSASServices.js +16 -18
  110. package/dist/commonjs/sas/AccountSASServices.js.map +1 -1
  111. package/dist/commonjs/sas/AccountSASSignatureValues.d.ts +3 -3
  112. package/dist/commonjs/sas/AccountSASSignatureValues.js +1 -1
  113. package/dist/commonjs/sas/AccountSASSignatureValues.js.map +1 -1
  114. package/dist/commonjs/sas/DataLakeSASPermissions.js +39 -41
  115. package/dist/commonjs/sas/DataLakeSASPermissions.js.map +1 -1
  116. package/dist/commonjs/sas/DataLakeSASSignatureValues.d.ts +1 -1
  117. package/dist/commonjs/sas/DataLakeSASSignatureValues.js +4 -3
  118. package/dist/commonjs/sas/DataLakeSASSignatureValues.js.map +1 -1
  119. package/dist/commonjs/sas/DirectorySASPermissions.d.ts +1 -1
  120. package/dist/commonjs/sas/DirectorySASPermissions.js +44 -46
  121. package/dist/commonjs/sas/DirectorySASPermissions.js.map +1 -1
  122. package/dist/commonjs/sas/FileSystemSASPermissions.d.ts +1 -1
  123. package/dist/commonjs/sas/FileSystemSASPermissions.js +44 -46
  124. package/dist/commonjs/sas/FileSystemSASPermissions.js.map +1 -1
  125. package/dist/commonjs/sas/SASQueryParameters.d.ts +2 -2
  126. package/dist/commonjs/sas/SASQueryParameters.js +131 -2
  127. package/dist/commonjs/sas/SASQueryParameters.js.map +1 -1
  128. package/dist/commonjs/transforms.js +8 -1
  129. package/dist/commonjs/transforms.js.map +1 -1
  130. package/dist/commonjs/tsdoc-metadata.json +11 -11
  131. package/dist/commonjs/utils/Batch.js +29 -21
  132. package/dist/commonjs/utils/Batch.js.map +1 -1
  133. package/dist/commonjs/utils/BufferScheduler.js +70 -44
  134. package/dist/commonjs/utils/BufferScheduler.js.map +1 -1
  135. package/dist/commonjs/utils/DataLakeAclChangeFailedError.js +8 -0
  136. package/dist/commonjs/utils/DataLakeAclChangeFailedError.js.map +1 -1
  137. package/dist/commonjs/utils/PathClientInternal.js +4 -0
  138. package/dist/commonjs/utils/PathClientInternal.js.map +1 -1
  139. package/dist/commonjs/utils/constants.d.ts.map +1 -1
  140. package/dist/commonjs/utils/constants.js +1 -1
  141. package/dist/commonjs/utils/constants.js.map +1 -1
  142. package/dist/commonjs/utils/utils.common.d.ts +2 -2
  143. package/dist/commonjs/utils/utils.common.js +5 -7
  144. package/dist/commonjs/utils/utils.common.js.map +1 -1
  145. package/dist/commonjs/utils/utils.d.ts +1 -1
  146. package/dist/commonjs/utils/utils.d.ts.map +1 -1
  147. package/dist/commonjs/utils/utils.js +4 -4
  148. package/dist/commonjs/utils/utils.js.map +1 -1
  149. package/dist/esm/DataLakeFileSystemClient.d.ts +13 -13
  150. package/dist/esm/DataLakeFileSystemClient.js +136 -93
  151. package/dist/esm/DataLakeFileSystemClient.js.map +1 -1
  152. package/dist/esm/DataLakeLeaseClient.js +1 -0
  153. package/dist/esm/DataLakeLeaseClient.js.map +1 -1
  154. package/dist/esm/DataLakeServiceClient.d.ts +6 -6
  155. package/dist/esm/DataLakeServiceClient.js +28 -11
  156. package/dist/esm/DataLakeServiceClient.js.map +1 -1
  157. package/dist/esm/Pipeline.js +24 -15
  158. package/dist/esm/Pipeline.js.map +1 -1
  159. package/dist/esm/StorageClient.js +43 -3
  160. package/dist/esm/StorageClient.js.map +1 -1
  161. package/dist/esm/StorageContextClient.js +2 -3
  162. package/dist/esm/StorageContextClient.js.map +1 -1
  163. package/dist/esm/clients.d.ts +33 -33
  164. package/dist/esm/clients.js +269 -89
  165. package/dist/esm/clients.js.map +1 -1
  166. package/dist/esm/credentials/UserDelegationKeyCredential.d.ts +1 -1
  167. package/dist/esm/credentials/UserDelegationKeyCredential.js +13 -1
  168. package/dist/esm/credentials/UserDelegationKeyCredential.js.map +1 -1
  169. package/dist/esm/generated/src/operations/fileSystemOperations.js +1 -0
  170. package/dist/esm/generated/src/operations/fileSystemOperations.js.map +1 -1
  171. package/dist/esm/generated/src/operations/pathOperations.js +1 -0
  172. package/dist/esm/generated/src/operations/pathOperations.js.map +1 -1
  173. package/dist/esm/generated/src/operations/service.js +1 -0
  174. package/dist/esm/generated/src/operations/service.js.map +1 -1
  175. package/dist/esm/generated/src/storageClient.js +15 -4
  176. package/dist/esm/generated/src/storageClient.js.map +1 -1
  177. package/dist/esm/models.d.ts +1 -1
  178. package/dist/esm/models.js.map +1 -1
  179. package/dist/esm/sas/AccountSASPermissions.d.ts +1 -1
  180. package/dist/esm/sas/AccountSASPermissions.js +34 -36
  181. package/dist/esm/sas/AccountSASPermissions.js.map +1 -1
  182. package/dist/esm/sas/AccountSASResourceTypes.d.ts +1 -1
  183. package/dist/esm/sas/AccountSASResourceTypes.js +13 -15
  184. package/dist/esm/sas/AccountSASResourceTypes.js.map +1 -1
  185. package/dist/esm/sas/AccountSASServices.js +16 -18
  186. package/dist/esm/sas/AccountSASServices.js.map +1 -1
  187. package/dist/esm/sas/AccountSASSignatureValues.d.ts +3 -3
  188. package/dist/esm/sas/AccountSASSignatureValues.js +1 -1
  189. package/dist/esm/sas/AccountSASSignatureValues.js.map +1 -1
  190. package/dist/esm/sas/DataLakeSASPermissions.js +39 -41
  191. package/dist/esm/sas/DataLakeSASPermissions.js.map +1 -1
  192. package/dist/esm/sas/DataLakeSASSignatureValues.d.ts +1 -1
  193. package/dist/esm/sas/DataLakeSASSignatureValues.js +4 -3
  194. package/dist/esm/sas/DataLakeSASSignatureValues.js.map +1 -1
  195. package/dist/esm/sas/DirectorySASPermissions.d.ts +1 -1
  196. package/dist/esm/sas/DirectorySASPermissions.js +44 -46
  197. package/dist/esm/sas/DirectorySASPermissions.js.map +1 -1
  198. package/dist/esm/sas/FileSystemSASPermissions.d.ts +1 -1
  199. package/dist/esm/sas/FileSystemSASPermissions.js +44 -46
  200. package/dist/esm/sas/FileSystemSASPermissions.js.map +1 -1
  201. package/dist/esm/sas/SASQueryParameters.d.ts +2 -2
  202. package/dist/esm/sas/SASQueryParameters.js +131 -2
  203. package/dist/esm/sas/SASQueryParameters.js.map +1 -1
  204. package/dist/esm/transforms.js +8 -1
  205. package/dist/esm/transforms.js.map +1 -1
  206. package/dist/esm/utils/Batch.js +29 -21
  207. package/dist/esm/utils/Batch.js.map +1 -1
  208. package/dist/esm/utils/BufferScheduler.js +70 -44
  209. package/dist/esm/utils/BufferScheduler.js.map +1 -1
  210. package/dist/esm/utils/DataLakeAclChangeFailedError.js +8 -0
  211. package/dist/esm/utils/DataLakeAclChangeFailedError.js.map +1 -1
  212. package/dist/esm/utils/PathClientInternal.js +4 -0
  213. package/dist/esm/utils/PathClientInternal.js.map +1 -1
  214. package/dist/esm/utils/constants.d.ts.map +1 -1
  215. package/dist/esm/utils/constants.js +1 -1
  216. package/dist/esm/utils/constants.js.map +1 -1
  217. package/dist/esm/utils/utils.common.d.ts +2 -2
  218. package/dist/esm/utils/utils.common.js +5 -7
  219. package/dist/esm/utils/utils.common.js.map +1 -1
  220. package/dist/esm/utils/utils.d.ts +1 -1
  221. package/dist/esm/utils/utils.d.ts.map +1 -1
  222. package/dist/esm/utils/utils.js +2 -2
  223. package/dist/esm/utils/utils.js.map +1 -1
  224. package/dist/react-native/DataLakeFileSystemClient.d.ts +13 -13
  225. package/dist/react-native/DataLakeFileSystemClient.js +136 -93
  226. package/dist/react-native/DataLakeFileSystemClient.js.map +1 -1
  227. package/dist/react-native/DataLakeLeaseClient.js +1 -0
  228. package/dist/react-native/DataLakeLeaseClient.js.map +1 -1
  229. package/dist/react-native/DataLakeServiceClient.d.ts +6 -6
  230. package/dist/react-native/DataLakeServiceClient.js +28 -11
  231. package/dist/react-native/DataLakeServiceClient.js.map +1 -1
  232. package/dist/react-native/Pipeline.js +24 -15
  233. package/dist/react-native/Pipeline.js.map +1 -1
  234. package/dist/react-native/StorageClient.js +43 -3
  235. package/dist/react-native/StorageClient.js.map +1 -1
  236. package/dist/react-native/StorageContextClient.js +2 -3
  237. package/dist/react-native/StorageContextClient.js.map +1 -1
  238. package/dist/react-native/clients.d.ts +33 -33
  239. package/dist/react-native/clients.js +269 -89
  240. package/dist/react-native/clients.js.map +1 -1
  241. package/dist/react-native/credentials/UserDelegationKeyCredential.d.ts +1 -1
  242. package/dist/react-native/credentials/UserDelegationKeyCredential.js +13 -1
  243. package/dist/react-native/credentials/UserDelegationKeyCredential.js.map +1 -1
  244. package/dist/react-native/generated/src/operations/fileSystemOperations.js +1 -0
  245. package/dist/react-native/generated/src/operations/fileSystemOperations.js.map +1 -1
  246. package/dist/react-native/generated/src/operations/pathOperations.js +1 -0
  247. package/dist/react-native/generated/src/operations/pathOperations.js.map +1 -1
  248. package/dist/react-native/generated/src/operations/service.js +1 -0
  249. package/dist/react-native/generated/src/operations/service.js.map +1 -1
  250. package/dist/react-native/generated/src/storageClient.js +15 -4
  251. package/dist/react-native/generated/src/storageClient.js.map +1 -1
  252. package/dist/react-native/models.d.ts +1 -1
  253. package/dist/react-native/models.js.map +1 -1
  254. package/dist/react-native/sas/AccountSASPermissions.d.ts +1 -1
  255. package/dist/react-native/sas/AccountSASPermissions.js +34 -36
  256. package/dist/react-native/sas/AccountSASPermissions.js.map +1 -1
  257. package/dist/react-native/sas/AccountSASResourceTypes.d.ts +1 -1
  258. package/dist/react-native/sas/AccountSASResourceTypes.js +13 -15
  259. package/dist/react-native/sas/AccountSASResourceTypes.js.map +1 -1
  260. package/dist/react-native/sas/AccountSASServices.js +16 -18
  261. package/dist/react-native/sas/AccountSASServices.js.map +1 -1
  262. package/dist/react-native/sas/AccountSASSignatureValues.d.ts +3 -3
  263. package/dist/react-native/sas/AccountSASSignatureValues.js +1 -1
  264. package/dist/react-native/sas/AccountSASSignatureValues.js.map +1 -1
  265. package/dist/react-native/sas/DataLakeSASPermissions.js +39 -41
  266. package/dist/react-native/sas/DataLakeSASPermissions.js.map +1 -1
  267. package/dist/react-native/sas/DataLakeSASSignatureValues.d.ts +1 -1
  268. package/dist/react-native/sas/DataLakeSASSignatureValues.js +4 -3
  269. package/dist/react-native/sas/DataLakeSASSignatureValues.js.map +1 -1
  270. package/dist/react-native/sas/DirectorySASPermissions.d.ts +1 -1
  271. package/dist/react-native/sas/DirectorySASPermissions.js +44 -46
  272. package/dist/react-native/sas/DirectorySASPermissions.js.map +1 -1
  273. package/dist/react-native/sas/FileSystemSASPermissions.d.ts +1 -1
  274. package/dist/react-native/sas/FileSystemSASPermissions.js +44 -46
  275. package/dist/react-native/sas/FileSystemSASPermissions.js.map +1 -1
  276. package/dist/react-native/sas/SASQueryParameters.d.ts +2 -2
  277. package/dist/react-native/sas/SASQueryParameters.js +131 -2
  278. package/dist/react-native/sas/SASQueryParameters.js.map +1 -1
  279. package/dist/react-native/transforms.js +8 -1
  280. package/dist/react-native/transforms.js.map +1 -1
  281. package/dist/react-native/utils/Batch.js +29 -21
  282. package/dist/react-native/utils/Batch.js.map +1 -1
  283. package/dist/react-native/utils/BufferScheduler.js +70 -44
  284. package/dist/react-native/utils/BufferScheduler.js.map +1 -1
  285. package/dist/react-native/utils/DataLakeAclChangeFailedError.js +8 -0
  286. package/dist/react-native/utils/DataLakeAclChangeFailedError.js.map +1 -1
  287. package/dist/react-native/utils/PathClientInternal.js +4 -0
  288. package/dist/react-native/utils/PathClientInternal.js.map +1 -1
  289. package/dist/react-native/utils/constants.d.ts.map +1 -1
  290. package/dist/react-native/utils/constants.js +1 -1
  291. package/dist/react-native/utils/constants.js.map +1 -1
  292. package/dist/react-native/utils/utils.common.d.ts +2 -2
  293. package/dist/react-native/utils/utils.common.js +5 -7
  294. package/dist/react-native/utils/utils.common.js.map +1 -1
  295. package/dist/react-native/utils/utils.d.ts +1 -1
  296. package/dist/react-native/utils/utils.d.ts.map +1 -1
  297. package/dist/react-native/utils/utils.js +2 -2
  298. package/dist/react-native/utils/utils.js.map +1 -1
  299. package/package.json +8 -8
@@ -53,7 +53,7 @@ export declare class AccountSASPermissions {
53
53
  * Using this method will guarantee the resource types are in
54
54
  * an order accepted by the service.
55
55
  *
56
- * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas
56
+ * @see https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas
57
57
  *
58
58
  */
59
59
  toString(): string;
@@ -13,40 +13,6 @@ exports.AccountSASPermissions = void 0;
13
13
  * the order of the permissions is particular and this class guarantees correctness.
14
14
  */
15
15
  class AccountSASPermissions {
16
- constructor() {
17
- /**
18
- * Permission to read resources and list queues and tables granted.
19
- */
20
- this.read = false;
21
- /**
22
- * Permission to write resources granted.
23
- */
24
- this.write = false;
25
- /**
26
- * Permission to delete blobs and files granted.
27
- */
28
- this.delete = false;
29
- /**
30
- * Permission to list blob containers, blobs, shares, directories, and files granted.
31
- */
32
- this.list = false;
33
- /**
34
- * Permission to add messages, table entities, and append to blobs granted.
35
- */
36
- this.add = false;
37
- /**
38
- * Permission to create blobs and files granted.
39
- */
40
- this.create = false;
41
- /**
42
- * Permissions to update messages and table entities granted.
43
- */
44
- this.update = false;
45
- /**
46
- * Permission to get and delete messages granted.
47
- */
48
- this.process = false;
49
- }
50
16
  /**
51
17
  * Parse initializes the AccountSASPermissions fields from a string.
52
18
  *
@@ -86,6 +52,38 @@ class AccountSASPermissions {
86
52
  }
87
53
  return accountSASPermissions;
88
54
  }
55
+ /**
56
+ * Permission to read resources and list queues and tables granted.
57
+ */
58
+ read = false;
59
+ /**
60
+ * Permission to write resources granted.
61
+ */
62
+ write = false;
63
+ /**
64
+ * Permission to delete blobs and files granted.
65
+ */
66
+ delete = false;
67
+ /**
68
+ * Permission to list blob containers, blobs, shares, directories, and files granted.
69
+ */
70
+ list = false;
71
+ /**
72
+ * Permission to add messages, table entities, and append to blobs granted.
73
+ */
74
+ add = false;
75
+ /**
76
+ * Permission to create blobs and files granted.
77
+ */
78
+ create = false;
79
+ /**
80
+ * Permissions to update messages and table entities granted.
81
+ */
82
+ update = false;
83
+ /**
84
+ * Permission to get and delete messages granted.
85
+ */
86
+ process = false;
89
87
  /**
90
88
  * Produces the SAS permissions string for an Azure Storage account.
91
89
  * Call this method to set AccountSASSignatureValues Permissions field.
@@ -93,12 +91,12 @@ class AccountSASPermissions {
93
91
  * Using this method will guarantee the resource types are in
94
92
  * an order accepted by the service.
95
93
  *
96
- * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas
94
+ * @see https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas
97
95
  *
98
96
  */
99
97
  toString() {
100
98
  // The order of the characters should be as specified here to ensure correctness:
101
- // https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas
99
+ // https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas
102
100
  // Use a string array instead of string concatenating += operator for performance
103
101
  const permissions = [];
104
102
  if (this.read) {
@@ -1 +1 @@
1
- {"version":3,"file":"AccountSASPermissions.js","sourceRoot":"","sources":["../../../src/sas/AccountSASPermissions.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * This is a helper class to construct a string representing the permissions granted by an AccountSAS. Setting a value\n * to true means that any SAS which uses these permissions will grant permissions for that operation. Once all the\n * values are set, this should be serialized with toString and set as the permissions field on an\n * {@link AccountSASSignatureValues} object. It is possible to construct the permissions string without this class, but\n * the order of the permissions is particular and this class guarantees correctness.\n */\nexport class AccountSASPermissions {\n /**\n * Parse initializes the AccountSASPermissions fields from a string.\n *\n * @param permissions -\n */\n public static parse(permissions: string): AccountSASPermissions {\n const accountSASPermissions = new AccountSASPermissions();\n\n for (const c of permissions) {\n switch (c) {\n case \"r\":\n accountSASPermissions.read = true;\n break;\n case \"w\":\n accountSASPermissions.write = true;\n break;\n case \"d\":\n accountSASPermissions.delete = true;\n break;\n case \"l\":\n accountSASPermissions.list = true;\n break;\n case \"a\":\n accountSASPermissions.add = true;\n break;\n case \"c\":\n accountSASPermissions.create = true;\n break;\n case \"u\":\n accountSASPermissions.update = true;\n break;\n case \"p\":\n accountSASPermissions.process = true;\n break;\n default:\n throw new RangeError(`Invalid permission character: ${c}`);\n }\n }\n\n return accountSASPermissions;\n }\n\n /**\n * Permission to read resources and list queues and tables granted.\n */\n public read: boolean = false;\n\n /**\n * Permission to write resources granted.\n */\n public write: boolean = false;\n\n /**\n * Permission to delete blobs and files granted.\n */\n public delete: boolean = false;\n\n /**\n * Permission to list blob containers, blobs, shares, directories, and files granted.\n */\n public list: boolean = false;\n\n /**\n * Permission to add messages, table entities, and append to blobs granted.\n */\n public add: boolean = false;\n\n /**\n * Permission to create blobs and files granted.\n */\n public create: boolean = false;\n\n /**\n * Permissions to update messages and table entities granted.\n */\n public update: boolean = false;\n\n /**\n * Permission to get and delete messages granted.\n */\n public process: boolean = false;\n\n /**\n * Produces the SAS permissions string for an Azure Storage account.\n * Call this method to set AccountSASSignatureValues Permissions field.\n *\n * Using this method will guarantee the resource types are in\n * an order accepted by the service.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas\n *\n */\n public toString(): string {\n // The order of the characters should be as specified here to ensure correctness:\n // https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas\n // Use a string array instead of string concatenating += operator for performance\n const permissions: string[] = [];\n if (this.read) {\n permissions.push(\"r\");\n }\n if (this.write) {\n permissions.push(\"w\");\n }\n if (this.delete) {\n permissions.push(\"d\");\n }\n if (this.list) {\n permissions.push(\"l\");\n }\n if (this.add) {\n permissions.push(\"a\");\n }\n if (this.create) {\n permissions.push(\"c\");\n }\n if (this.update) {\n permissions.push(\"u\");\n }\n if (this.process) {\n permissions.push(\"p\");\n }\n return permissions.join(\"\");\n }\n}\n"]}
1
+ {"version":3,"file":"AccountSASPermissions.js","sourceRoot":"","sources":["../../../src/sas/AccountSASPermissions.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * This is a helper class to construct a string representing the permissions granted by an AccountSAS. Setting a value\n * to true means that any SAS which uses these permissions will grant permissions for that operation. Once all the\n * values are set, this should be serialized with toString and set as the permissions field on an\n * {@link AccountSASSignatureValues} object. It is possible to construct the permissions string without this class, but\n * the order of the permissions is particular and this class guarantees correctness.\n */\nexport class AccountSASPermissions {\n /**\n * Parse initializes the AccountSASPermissions fields from a string.\n *\n * @param permissions -\n */\n public static parse(permissions: string): AccountSASPermissions {\n const accountSASPermissions = new AccountSASPermissions();\n\n for (const c of permissions) {\n switch (c) {\n case \"r\":\n accountSASPermissions.read = true;\n break;\n case \"w\":\n accountSASPermissions.write = true;\n break;\n case \"d\":\n accountSASPermissions.delete = true;\n break;\n case \"l\":\n accountSASPermissions.list = true;\n break;\n case \"a\":\n accountSASPermissions.add = true;\n break;\n case \"c\":\n accountSASPermissions.create = true;\n break;\n case \"u\":\n accountSASPermissions.update = true;\n break;\n case \"p\":\n accountSASPermissions.process = true;\n break;\n default:\n throw new RangeError(`Invalid permission character: ${c}`);\n }\n }\n\n return accountSASPermissions;\n }\n\n /**\n * Permission to read resources and list queues and tables granted.\n */\n public read: boolean = false;\n\n /**\n * Permission to write resources granted.\n */\n public write: boolean = false;\n\n /**\n * Permission to delete blobs and files granted.\n */\n public delete: boolean = false;\n\n /**\n * Permission to list blob containers, blobs, shares, directories, and files granted.\n */\n public list: boolean = false;\n\n /**\n * Permission to add messages, table entities, and append to blobs granted.\n */\n public add: boolean = false;\n\n /**\n * Permission to create blobs and files granted.\n */\n public create: boolean = false;\n\n /**\n * Permissions to update messages and table entities granted.\n */\n public update: boolean = false;\n\n /**\n * Permission to get and delete messages granted.\n */\n public process: boolean = false;\n\n /**\n * Produces the SAS permissions string for an Azure Storage account.\n * Call this method to set AccountSASSignatureValues Permissions field.\n *\n * Using this method will guarantee the resource types are in\n * an order accepted by the service.\n *\n * @see https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas\n *\n */\n public toString(): string {\n // The order of the characters should be as specified here to ensure correctness:\n // https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas\n // Use a string array instead of string concatenating += operator for performance\n const permissions: string[] = [];\n if (this.read) {\n permissions.push(\"r\");\n }\n if (this.write) {\n permissions.push(\"w\");\n }\n if (this.delete) {\n permissions.push(\"d\");\n }\n if (this.list) {\n permissions.push(\"l\");\n }\n if (this.add) {\n permissions.push(\"a\");\n }\n if (this.create) {\n permissions.push(\"c\");\n }\n if (this.update) {\n permissions.push(\"u\");\n }\n if (this.process) {\n permissions.push(\"p\");\n }\n return permissions.join(\"\");\n }\n}\n"]}
@@ -30,7 +30,7 @@ export declare class AccountSASResourceTypes {
30
30
  /**
31
31
  * Converts the given resource types to a string.
32
32
  *
33
- * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas
33
+ * @see https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas
34
34
  *
35
35
  */
36
36
  toString(): string;
@@ -13,20 +13,6 @@ exports.AccountSASResourceTypes = void 0;
13
13
  * the order of the resources is particular and this class guarantees correctness.
14
14
  */
15
15
  class AccountSASResourceTypes {
16
- constructor() {
17
- /**
18
- * Permission to access service level APIs granted.
19
- */
20
- this.service = false;
21
- /**
22
- * Permission to access container level APIs (Blob Containers, Tables, Queues, File Shares, File Systems) granted.
23
- */
24
- this.container = false;
25
- /**
26
- * Permission to access object level APIs (Blobs, Table Entities, Queue Messages, Files, Directories) granted.
27
- */
28
- this.object = false;
29
- }
30
16
  /**
31
17
  * Creates an {@link AccountSASResourceTypes} from the specified resource types string. This method will throw an
32
18
  * Error if it encounters a character that does not correspond to a valid resource type.
@@ -52,10 +38,22 @@ class AccountSASResourceTypes {
52
38
  }
53
39
  return accountSASResourceTypes;
54
40
  }
41
+ /**
42
+ * Permission to access service level APIs granted.
43
+ */
44
+ service = false;
45
+ /**
46
+ * Permission to access container level APIs (Blob Containers, Tables, Queues, File Shares, File Systems) granted.
47
+ */
48
+ container = false;
49
+ /**
50
+ * Permission to access object level APIs (Blobs, Table Entities, Queue Messages, Files, Directories) granted.
51
+ */
52
+ object = false;
55
53
  /**
56
54
  * Converts the given resource types to a string.
57
55
  *
58
- * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas
56
+ * @see https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas
59
57
  *
60
58
  */
61
59
  toString() {
@@ -1 +1 @@
1
- {"version":3,"file":"AccountSASResourceTypes.js","sourceRoot":"","sources":["../../../src/sas/AccountSASResourceTypes.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC;;;;;;;;GAQG;AACH,MAAa,uBAAuB;IAApC;QA6BE;;WAEG;QACI,YAAO,GAAY,KAAK,CAAC;QAEhC;;WAEG;QACI,cAAS,GAAY,KAAK,CAAC;QAElC;;WAEG;QACI,WAAM,GAAY,KAAK,CAAC;IAqBjC,CAAC;IA9DC;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,aAAqB;QACvC,MAAM,uBAAuB,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAE9D,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;YAC9B,QAAQ,CAAC,EAAE,CAAC;gBACV,KAAK,GAAG;oBACN,uBAAuB,CAAC,OAAO,GAAG,IAAI,CAAC;oBACvC,MAAM;gBACR,KAAK,GAAG;oBACN,uBAAuB,CAAC,SAAS,GAAG,IAAI,CAAC;oBACzC,MAAM;gBACR,KAAK,GAAG;oBACN,uBAAuB,CAAC,MAAM,GAAG,IAAI,CAAC;oBACtC,MAAM;gBACR;oBACE,MAAM,IAAI,UAAU,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAED,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAiBD;;;;;OAKG;IACI,QAAQ;QACb,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QACD,OAAO,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChC,CAAC;CACF;AA/DD,0DA+DC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * This is a helper class to construct a string representing the resources accessible by an AccountSAS. Setting a value\n * to true means that any SAS which uses these permissions will grant access to that resource type. Once all the\n * values are set, this should be serialized with toString and set as the resources field on an\n * {@link AccountSASSignatureValues} object. It is possible to construct the resources string without this class, but\n * the order of the resources is particular and this class guarantees correctness.\n */\nexport class AccountSASResourceTypes {\n /**\n * Creates an {@link AccountSASResourceTypes} from the specified resource types string. This method will throw an\n * Error if it encounters a character that does not correspond to a valid resource type.\n *\n * @param resourceTypes -\n */\n public static parse(resourceTypes: string): AccountSASResourceTypes {\n const accountSASResourceTypes = new AccountSASResourceTypes();\n\n for (const c of resourceTypes) {\n switch (c) {\n case \"s\":\n accountSASResourceTypes.service = true;\n break;\n case \"c\":\n accountSASResourceTypes.container = true;\n break;\n case \"o\":\n accountSASResourceTypes.object = true;\n break;\n default:\n throw new RangeError(`Invalid resource type: ${c}`);\n }\n }\n\n return accountSASResourceTypes;\n }\n\n /**\n * Permission to access service level APIs granted.\n */\n public service: boolean = false;\n\n /**\n * Permission to access container level APIs (Blob Containers, Tables, Queues, File Shares, File Systems) granted.\n */\n public container: boolean = false;\n\n /**\n * Permission to access object level APIs (Blobs, Table Entities, Queue Messages, Files, Directories) granted.\n */\n public object: boolean = false;\n\n /**\n * Converts the given resource types to a string.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas\n *\n */\n public toString(): string {\n const resourceTypes: string[] = [];\n if (this.service) {\n resourceTypes.push(\"s\");\n }\n if (this.container) {\n resourceTypes.push(\"c\");\n }\n if (this.object) {\n resourceTypes.push(\"o\");\n }\n return resourceTypes.join(\"\");\n }\n}\n"]}
1
+ {"version":3,"file":"AccountSASResourceTypes.js","sourceRoot":"","sources":["../../../src/sas/AccountSASResourceTypes.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC;;;;;;;;GAQG;AACH,MAAa,uBAAuB;IAClC;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,aAAqB;QACvC,MAAM,uBAAuB,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAE9D,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;YAC9B,QAAQ,CAAC,EAAE,CAAC;gBACV,KAAK,GAAG;oBACN,uBAAuB,CAAC,OAAO,GAAG,IAAI,CAAC;oBACvC,MAAM;gBACR,KAAK,GAAG;oBACN,uBAAuB,CAAC,SAAS,GAAG,IAAI,CAAC;oBACzC,MAAM;gBACR,KAAK,GAAG;oBACN,uBAAuB,CAAC,MAAM,GAAG,IAAI,CAAC;oBACtC,MAAM;gBACR;oBACE,MAAM,IAAI,UAAU,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAED,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAED;;OAEG;IACI,OAAO,GAAY,KAAK,CAAC;IAEhC;;OAEG;IACI,SAAS,GAAY,KAAK,CAAC;IAElC;;OAEG;IACI,MAAM,GAAY,KAAK,CAAC;IAE/B;;;;;OAKG;IACI,QAAQ;QACb,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QACD,OAAO,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChC,CAAC;CACF;AA/DD,0DA+DC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * This is a helper class to construct a string representing the resources accessible by an AccountSAS. Setting a value\n * to true means that any SAS which uses these permissions will grant access to that resource type. Once all the\n * values are set, this should be serialized with toString and set as the resources field on an\n * {@link AccountSASSignatureValues} object. It is possible to construct the resources string without this class, but\n * the order of the resources is particular and this class guarantees correctness.\n */\nexport class AccountSASResourceTypes {\n /**\n * Creates an {@link AccountSASResourceTypes} from the specified resource types string. This method will throw an\n * Error if it encounters a character that does not correspond to a valid resource type.\n *\n * @param resourceTypes -\n */\n public static parse(resourceTypes: string): AccountSASResourceTypes {\n const accountSASResourceTypes = new AccountSASResourceTypes();\n\n for (const c of resourceTypes) {\n switch (c) {\n case \"s\":\n accountSASResourceTypes.service = true;\n break;\n case \"c\":\n accountSASResourceTypes.container = true;\n break;\n case \"o\":\n accountSASResourceTypes.object = true;\n break;\n default:\n throw new RangeError(`Invalid resource type: ${c}`);\n }\n }\n\n return accountSASResourceTypes;\n }\n\n /**\n * Permission to access service level APIs granted.\n */\n public service: boolean = false;\n\n /**\n * Permission to access container level APIs (Blob Containers, Tables, Queues, File Shares, File Systems) granted.\n */\n public container: boolean = false;\n\n /**\n * Permission to access object level APIs (Blobs, Table Entities, Queue Messages, Files, Directories) granted.\n */\n public object: boolean = false;\n\n /**\n * Converts the given resource types to a string.\n *\n * @see https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas\n *\n */\n public toString(): string {\n const resourceTypes: string[] = [];\n if (this.service) {\n resourceTypes.push(\"s\");\n }\n if (this.container) {\n resourceTypes.push(\"c\");\n }\n if (this.object) {\n resourceTypes.push(\"o\");\n }\n return resourceTypes.join(\"\");\n }\n}\n"]}
@@ -13,24 +13,6 @@ exports.AccountSASServices = void 0;
13
13
  * the order of the services is particular and this class guarantees correctness.
14
14
  */
15
15
  class AccountSASServices {
16
- constructor() {
17
- /**
18
- * Permission to access blob and data lake resources granted.
19
- */
20
- this.blob = false;
21
- /**
22
- * Permission to access file resources granted.
23
- */
24
- this.file = false;
25
- /**
26
- * Permission to access queue resources granted.
27
- */
28
- this.queue = false;
29
- /**
30
- * Permission to access table resources granted.
31
- */
32
- this.table = false;
33
- }
34
16
  /**
35
17
  * Creates an {@link AccountSASServices} from the specified services string. This method will throw an
36
18
  * Error if it encounters a character that does not correspond to a valid service.
@@ -59,6 +41,22 @@ class AccountSASServices {
59
41
  }
60
42
  return accountSASServices;
61
43
  }
44
+ /**
45
+ * Permission to access blob and data lake resources granted.
46
+ */
47
+ blob = false;
48
+ /**
49
+ * Permission to access file resources granted.
50
+ */
51
+ file = false;
52
+ /**
53
+ * Permission to access queue resources granted.
54
+ */
55
+ queue = false;
56
+ /**
57
+ * Permission to access table resources granted.
58
+ */
59
+ table = false;
62
60
  /**
63
61
  * Converts the given services to a string.
64
62
  *
@@ -1 +1 @@
1
- {"version":3,"file":"AccountSASServices.js","sourceRoot":"","sources":["../../../src/sas/AccountSASServices.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC;;;;;;;;GAQG;AACH,MAAa,kBAAkB;IAA/B;QAgCE;;WAEG;QACI,SAAI,GAAY,KAAK,CAAC;QAE7B;;WAEG;QACI,SAAI,GAAY,KAAK,CAAC;QAE7B;;WAEG;QACI,UAAK,GAAY,KAAK,CAAC;QAE9B;;WAEG;QACI,UAAK,GAAY,KAAK,CAAC;IAsBhC,CAAC;IAvEC;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,QAAgB;QAClC,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,EAAE,CAAC;QAEpD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,QAAQ,CAAC,EAAE,CAAC;gBACV,KAAK,GAAG;oBACN,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;oBAC/B,MAAM;gBACR,KAAK,GAAG;oBACN,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;oBAC/B,MAAM;gBACR,KAAK,GAAG;oBACN,kBAAkB,CAAC,KAAK,GAAG,IAAI,CAAC;oBAChC,MAAM;gBACR,KAAK,GAAG;oBACN,kBAAkB,CAAC,KAAK,GAAG,IAAI,CAAC;oBAChC,MAAM;gBACR;oBACE,MAAM,IAAI,UAAU,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QAED,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAsBD;;;OAGG;IACI,QAAQ;QACb,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;CACF;AAxED,gDAwEC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * This is a helper class to construct a string representing the services accessible by an AccountSAS. Setting a value\n * to true means that any SAS which uses these permissions will grant access to that service. Once all the\n * values are set, this should be serialized with toString and set as the services field on an\n * {@link AccountSASSignatureValues} object. It is possible to construct the services string without this class, but\n * the order of the services is particular and this class guarantees correctness.\n */\nexport class AccountSASServices {\n /**\n * Creates an {@link AccountSASServices} from the specified services string. This method will throw an\n * Error if it encounters a character that does not correspond to a valid service.\n *\n * @param services -\n */\n public static parse(services: string): AccountSASServices {\n const accountSASServices = new AccountSASServices();\n\n for (const c of services) {\n switch (c) {\n case \"b\":\n accountSASServices.blob = true;\n break;\n case \"f\":\n accountSASServices.file = true;\n break;\n case \"q\":\n accountSASServices.queue = true;\n break;\n case \"t\":\n accountSASServices.table = true;\n break;\n default:\n throw new RangeError(`Invalid service character: ${c}`);\n }\n }\n\n return accountSASServices;\n }\n\n /**\n * Permission to access blob and data lake resources granted.\n */\n public blob: boolean = false;\n\n /**\n * Permission to access file resources granted.\n */\n public file: boolean = false;\n\n /**\n * Permission to access queue resources granted.\n */\n public queue: boolean = false;\n\n /**\n * Permission to access table resources granted.\n */\n public table: boolean = false;\n\n /**\n * Converts the given services to a string.\n *\n */\n public toString(): string {\n const services: string[] = [];\n if (this.blob) {\n services.push(\"b\");\n }\n if (this.table) {\n services.push(\"t\");\n }\n if (this.queue) {\n services.push(\"q\");\n }\n if (this.file) {\n services.push(\"f\");\n }\n return services.join(\"\");\n }\n}\n"]}
1
+ {"version":3,"file":"AccountSASServices.js","sourceRoot":"","sources":["../../../src/sas/AccountSASServices.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC;;;;;;;;GAQG;AACH,MAAa,kBAAkB;IAC7B;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,QAAgB;QAClC,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,EAAE,CAAC;QAEpD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,QAAQ,CAAC,EAAE,CAAC;gBACV,KAAK,GAAG;oBACN,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;oBAC/B,MAAM;gBACR,KAAK,GAAG;oBACN,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;oBAC/B,MAAM;gBACR,KAAK,GAAG;oBACN,kBAAkB,CAAC,KAAK,GAAG,IAAI,CAAC;oBAChC,MAAM;gBACR,KAAK,GAAG;oBACN,kBAAkB,CAAC,KAAK,GAAG,IAAI,CAAC;oBAChC,MAAM;gBACR;oBACE,MAAM,IAAI,UAAU,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QAED,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED;;OAEG;IACI,IAAI,GAAY,KAAK,CAAC;IAE7B;;OAEG;IACI,IAAI,GAAY,KAAK,CAAC;IAE7B;;OAEG;IACI,KAAK,GAAY,KAAK,CAAC;IAE9B;;OAEG;IACI,KAAK,GAAY,KAAK,CAAC;IAE9B;;;OAGG;IACI,QAAQ;QACb,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;CACF;AAxED,gDAwEC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * This is a helper class to construct a string representing the services accessible by an AccountSAS. Setting a value\n * to true means that any SAS which uses these permissions will grant access to that service. Once all the\n * values are set, this should be serialized with toString and set as the services field on an\n * {@link AccountSASSignatureValues} object. It is possible to construct the services string without this class, but\n * the order of the services is particular and this class guarantees correctness.\n */\nexport class AccountSASServices {\n /**\n * Creates an {@link AccountSASServices} from the specified services string. This method will throw an\n * Error if it encounters a character that does not correspond to a valid service.\n *\n * @param services -\n */\n public static parse(services: string): AccountSASServices {\n const accountSASServices = new AccountSASServices();\n\n for (const c of services) {\n switch (c) {\n case \"b\":\n accountSASServices.blob = true;\n break;\n case \"f\":\n accountSASServices.file = true;\n break;\n case \"q\":\n accountSASServices.queue = true;\n break;\n case \"t\":\n accountSASServices.table = true;\n break;\n default:\n throw new RangeError(`Invalid service character: ${c}`);\n }\n }\n\n return accountSASServices;\n }\n\n /**\n * Permission to access blob and data lake resources granted.\n */\n public blob: boolean = false;\n\n /**\n * Permission to access file resources granted.\n */\n public file: boolean = false;\n\n /**\n * Permission to access queue resources granted.\n */\n public queue: boolean = false;\n\n /**\n * Permission to access table resources granted.\n */\n public table: boolean = false;\n\n /**\n * Converts the given services to a string.\n *\n */\n public toString(): string {\n const services: string[] = [];\n if (this.blob) {\n services.push(\"b\");\n }\n if (this.table) {\n services.push(\"t\");\n }\n if (this.queue) {\n services.push(\"q\");\n }\n if (this.file) {\n services.push(\"f\");\n }\n return services.join(\"\");\n }\n}\n"]}
@@ -12,10 +12,10 @@ import { SASQueryParameters } from "./SASQueryParameters.js";
12
12
  * exist because the former is mutable and a logical representation while the latter is immutable and used to generate
13
13
  * actual REST requests.
14
14
  *
15
- * @see https://learn.microsoft.com/en-us/azure/storage/common/storage-dotnet-shared-access-signature-part-1
15
+ * @see https://learn.microsoft.com/azure/storage/common/storage-dotnet-shared-access-signature-part-1
16
16
  * for more conceptual information on SAS
17
17
  *
18
- * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas
18
+ * @see https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas
19
19
  * for descriptions of the parameters, including which are required
20
20
  */
21
21
  export interface AccountSASSignatureValues {
@@ -65,7 +65,7 @@ export interface AccountSASSignatureValues {
65
65
  * Generates a {@link SASQueryParameters} object which contains all SAS query parameters needed to make an actual
66
66
  * REST request.
67
67
  *
68
- * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas
68
+ * @see https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas
69
69
  *
70
70
  * @param accountSASSignatureValues -
71
71
  * @param sharedKeyCredential -
@@ -17,7 +17,7 @@ const utils_common_js_1 = require("../utils/utils.common.js");
17
17
  * Generates a {@link SASQueryParameters} object which contains all SAS query parameters needed to make an actual
18
18
  * REST request.
19
19
  *
20
- * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas
20
+ * @see https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas
21
21
  *
22
22
  * @param accountSASSignatureValues -
23
23
  * @param sharedKeyCredential -
@@ -1 +1 @@
1
- {"version":3,"file":"AccountSASSignatureValues.js","sourceRoot":"","sources":["../../../src/sas/AccountSASSignatureValues.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { AccountSASPermissions } from \"./AccountSASPermissions.js\";\nimport { AccountSASResourceTypes } from \"./AccountSASResourceTypes.js\";\nimport { AccountSASServices } from \"./AccountSASServices.js\";\nimport type { StorageSharedKeyCredential } from \"../credentials/StorageSharedKeyCredential.js\";\nimport type { SasIPRange } from \"./SasIPRange.js\";\nimport { ipRangeToString } from \"./SasIPRange.js\";\nimport type { SASProtocol } from \"./SASQueryParameters.js\";\nimport { SASQueryParameters } from \"./SASQueryParameters.js\";\nimport { SERVICE_VERSION } from \"../utils/constants.js\";\nimport { truncatedISO8061Date } from \"../utils/utils.common.js\";\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * AccountSASSignatureValues is used to generate a Shared Access Signature (SAS) for an Azure Storage account. Once\n * all the values here are set appropriately, call {@link generateAccountSASQueryParameters} to obtain a representation\n * of the SAS which can actually be applied to data lake urls. Note: that both this class and {@link SASQueryParameters}\n * exist because the former is mutable and a logical representation while the latter is immutable and used to generate\n * actual REST requests.\n *\n * @see https://learn.microsoft.com/en-us/azure/storage/common/storage-dotnet-shared-access-signature-part-1\n * for more conceptual information on SAS\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas\n * for descriptions of the parameters, including which are required\n */\nexport interface AccountSASSignatureValues {\n /**\n * If not provided, this defaults to the service version targeted by this version of the library.\n */\n version?: string;\n\n /**\n * Optional. SAS protocols allowed.\n */\n protocol?: SASProtocol;\n\n /**\n * Optional. When the SAS will take effect.\n */\n startsOn?: Date;\n\n /**\n * The time after which the SAS will no longer work.\n */\n expiresOn: Date;\n\n /**\n * Specifies which operations the SAS user may perform. Please refer to {@link AccountSASPermissions} for help\n * constructing the permissions string.\n */\n permissions: AccountSASPermissions;\n\n /**\n * Optional. IP range allowed.\n */\n ipRange?: SasIPRange;\n\n /**\n * Optional. Encryption scope to use when sending requests authorized with this SAS URI.\n */\n encryptionScope?: string;\n\n /**\n * The values that indicate the services accessible with this SAS. Please refer to {@link AccountSASServices} to\n * construct this value.\n */\n services: string;\n\n /**\n * The values that indicate the resource types accessible with this SAS. Please refer\n * to {@link AccountSASResourceTypes} to construct this value.\n */\n resourceTypes: string;\n}\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * Generates a {@link SASQueryParameters} object which contains all SAS query parameters needed to make an actual\n * REST request.\n *\n * @see https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas\n *\n * @param accountSASSignatureValues -\n * @param sharedKeyCredential -\n */\nexport function generateAccountSASQueryParameters(\n accountSASSignatureValues: AccountSASSignatureValues,\n sharedKeyCredential: StorageSharedKeyCredential,\n): SASQueryParameters {\n return generateAccountSASQueryParametersInternal(accountSASSignatureValues, sharedKeyCredential)\n .sasQueryParameters;\n}\n\nexport function generateAccountSASQueryParametersInternal(\n accountSASSignatureValues: AccountSASSignatureValues,\n sharedKeyCredential: StorageSharedKeyCredential,\n): { sasQueryParameters: SASQueryParameters; stringToSign: string } {\n const version = accountSASSignatureValues.version\n ? accountSASSignatureValues.version\n : SERVICE_VERSION;\n\n const parsedPermissions = AccountSASPermissions.parse(\n accountSASSignatureValues.permissions.toString(),\n );\n const parsedServices = AccountSASServices.parse(accountSASSignatureValues.services).toString();\n const parsedResourceTypes = AccountSASResourceTypes.parse(\n accountSASSignatureValues.resourceTypes,\n ).toString();\n\n let stringToSign: string;\n\n if (version >= \"2020-12-06\") {\n stringToSign = [\n sharedKeyCredential.accountName,\n parsedPermissions,\n parsedServices,\n parsedResourceTypes,\n accountSASSignatureValues.startsOn\n ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)\n : \"\",\n truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),\n accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : \"\",\n accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : \"\",\n version,\n accountSASSignatureValues.encryptionScope ? accountSASSignatureValues.encryptionScope : \"\", // Reserve for encryption scope\n \"\", // Account SAS requires an additional newline character\n ].join(\"\\n\");\n } else {\n stringToSign = [\n sharedKeyCredential.accountName,\n parsedPermissions,\n parsedServices,\n parsedResourceTypes,\n accountSASSignatureValues.startsOn\n ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)\n : \"\",\n truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),\n accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : \"\",\n accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : \"\",\n version,\n \"\", // Account SAS requires an additional newline character\n ].join(\"\\n\");\n }\n\n const signature: string = sharedKeyCredential.computeHMACSHA256(stringToSign);\n\n return {\n sasQueryParameters: new SASQueryParameters(\n version,\n signature,\n parsedPermissions.toString(),\n parsedServices,\n parsedResourceTypes,\n accountSASSignatureValues.protocol,\n accountSASSignatureValues.startsOn,\n accountSASSignatureValues.expiresOn,\n accountSASSignatureValues.ipRange,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n accountSASSignatureValues.encryptionScope,\n ),\n stringToSign: stringToSign,\n };\n}\n"]}
1
+ {"version":3,"file":"AccountSASSignatureValues.js","sourceRoot":"","sources":["../../../src/sas/AccountSASSignatureValues.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { AccountSASPermissions } from \"./AccountSASPermissions.js\";\nimport { AccountSASResourceTypes } from \"./AccountSASResourceTypes.js\";\nimport { AccountSASServices } from \"./AccountSASServices.js\";\nimport type { StorageSharedKeyCredential } from \"../credentials/StorageSharedKeyCredential.js\";\nimport type { SasIPRange } from \"./SasIPRange.js\";\nimport { ipRangeToString } from \"./SasIPRange.js\";\nimport type { SASProtocol } from \"./SASQueryParameters.js\";\nimport { SASQueryParameters } from \"./SASQueryParameters.js\";\nimport { SERVICE_VERSION } from \"../utils/constants.js\";\nimport { truncatedISO8061Date } from \"../utils/utils.common.js\";\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * AccountSASSignatureValues is used to generate a Shared Access Signature (SAS) for an Azure Storage account. Once\n * all the values here are set appropriately, call {@link generateAccountSASQueryParameters} to obtain a representation\n * of the SAS which can actually be applied to data lake urls. Note: that both this class and {@link SASQueryParameters}\n * exist because the former is mutable and a logical representation while the latter is immutable and used to generate\n * actual REST requests.\n *\n * @see https://learn.microsoft.com/azure/storage/common/storage-dotnet-shared-access-signature-part-1\n * for more conceptual information on SAS\n *\n * @see https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas\n * for descriptions of the parameters, including which are required\n */\nexport interface AccountSASSignatureValues {\n /**\n * If not provided, this defaults to the service version targeted by this version of the library.\n */\n version?: string;\n\n /**\n * Optional. SAS protocols allowed.\n */\n protocol?: SASProtocol;\n\n /**\n * Optional. When the SAS will take effect.\n */\n startsOn?: Date;\n\n /**\n * The time after which the SAS will no longer work.\n */\n expiresOn: Date;\n\n /**\n * Specifies which operations the SAS user may perform. Please refer to {@link AccountSASPermissions} for help\n * constructing the permissions string.\n */\n permissions: AccountSASPermissions;\n\n /**\n * Optional. IP range allowed.\n */\n ipRange?: SasIPRange;\n\n /**\n * Optional. Encryption scope to use when sending requests authorized with this SAS URI.\n */\n encryptionScope?: string;\n\n /**\n * The values that indicate the services accessible with this SAS. Please refer to {@link AccountSASServices} to\n * construct this value.\n */\n services: string;\n\n /**\n * The values that indicate the resource types accessible with this SAS. Please refer\n * to {@link AccountSASResourceTypes} to construct this value.\n */\n resourceTypes: string;\n}\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * Generates a {@link SASQueryParameters} object which contains all SAS query parameters needed to make an actual\n * REST request.\n *\n * @see https://learn.microsoft.com/rest/api/storageservices/constructing-an-account-sas\n *\n * @param accountSASSignatureValues -\n * @param sharedKeyCredential -\n */\nexport function generateAccountSASQueryParameters(\n accountSASSignatureValues: AccountSASSignatureValues,\n sharedKeyCredential: StorageSharedKeyCredential,\n): SASQueryParameters {\n return generateAccountSASQueryParametersInternal(accountSASSignatureValues, sharedKeyCredential)\n .sasQueryParameters;\n}\n\nexport function generateAccountSASQueryParametersInternal(\n accountSASSignatureValues: AccountSASSignatureValues,\n sharedKeyCredential: StorageSharedKeyCredential,\n): { sasQueryParameters: SASQueryParameters; stringToSign: string } {\n const version = accountSASSignatureValues.version\n ? accountSASSignatureValues.version\n : SERVICE_VERSION;\n\n const parsedPermissions = AccountSASPermissions.parse(\n accountSASSignatureValues.permissions.toString(),\n );\n const parsedServices = AccountSASServices.parse(accountSASSignatureValues.services).toString();\n const parsedResourceTypes = AccountSASResourceTypes.parse(\n accountSASSignatureValues.resourceTypes,\n ).toString();\n\n let stringToSign: string;\n\n if (version >= \"2020-12-06\") {\n stringToSign = [\n sharedKeyCredential.accountName,\n parsedPermissions,\n parsedServices,\n parsedResourceTypes,\n accountSASSignatureValues.startsOn\n ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)\n : \"\",\n truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),\n accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : \"\",\n accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : \"\",\n version,\n accountSASSignatureValues.encryptionScope ? accountSASSignatureValues.encryptionScope : \"\", // Reserve for encryption scope\n \"\", // Account SAS requires an additional newline character\n ].join(\"\\n\");\n } else {\n stringToSign = [\n sharedKeyCredential.accountName,\n parsedPermissions,\n parsedServices,\n parsedResourceTypes,\n accountSASSignatureValues.startsOn\n ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)\n : \"\",\n truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),\n accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : \"\",\n accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : \"\",\n version,\n \"\", // Account SAS requires an additional newline character\n ].join(\"\\n\");\n }\n\n const signature: string = sharedKeyCredential.computeHMACSHA256(stringToSign);\n\n return {\n sasQueryParameters: new SASQueryParameters(\n version,\n signature,\n parsedPermissions.toString(),\n parsedServices,\n parsedResourceTypes,\n accountSASSignatureValues.protocol,\n accountSASSignatureValues.startsOn,\n accountSASSignatureValues.expiresOn,\n accountSASSignatureValues.ipRange,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n undefined,\n accountSASSignatureValues.encryptionScope,\n ),\n stringToSign: stringToSign,\n };\n}\n"]}
@@ -13,47 +13,6 @@ exports.DataLakeSASPermissions = void 0;
13
13
  * the order of the permissions is particular and this class guarantees correctness.
14
14
  */
15
15
  class DataLakeSASPermissions {
16
- constructor() {
17
- /**
18
- * Specifies Read access granted.
19
- */
20
- this.read = false;
21
- /**
22
- * Specifies Add access granted.
23
- */
24
- this.add = false;
25
- /**
26
- * Specifies Create access granted.
27
- */
28
- this.create = false;
29
- /**
30
- * Specifies Write access granted.
31
- */
32
- this.write = false;
33
- /**
34
- * Specifies Delete access granted.
35
- */
36
- this.delete = false;
37
- /**
38
- * Specifies Move access granted.
39
- */
40
- this.move = false;
41
- /**
42
- * Specifies Execute access granted.
43
- */
44
- this.execute = false;
45
- /**
46
- * Specifies Ownership access granted, which allows the caller to set owner, owning group,
47
- * or act as the owner when renaming or deleting a blob (file or directory) within a folder
48
- * that has the sticky bit set.
49
- */
50
- this.manageOwnership = false;
51
- /**
52
- * Specifies Permission access granted, which allows the caller to set permissions and
53
- * POSIX ACLs on blobs (files and directories).
54
- */
55
- this.manageAccessControl = false;
56
- }
57
16
  /**
58
17
  * Creates a {@link DataLakeSASPermissions} from the specified permissions string. This method will throw an
59
18
  * Error if it encounters a character that does not correspond to a valid permission.
@@ -97,6 +56,45 @@ class DataLakeSASPermissions {
97
56
  }
98
57
  return blobSASPermissions;
99
58
  }
59
+ /**
60
+ * Specifies Read access granted.
61
+ */
62
+ read = false;
63
+ /**
64
+ * Specifies Add access granted.
65
+ */
66
+ add = false;
67
+ /**
68
+ * Specifies Create access granted.
69
+ */
70
+ create = false;
71
+ /**
72
+ * Specifies Write access granted.
73
+ */
74
+ write = false;
75
+ /**
76
+ * Specifies Delete access granted.
77
+ */
78
+ delete = false;
79
+ /**
80
+ * Specifies Move access granted.
81
+ */
82
+ move = false;
83
+ /**
84
+ * Specifies Execute access granted.
85
+ */
86
+ execute = false;
87
+ /**
88
+ * Specifies Ownership access granted, which allows the caller to set owner, owning group,
89
+ * or act as the owner when renaming or deleting a blob (file or directory) within a folder
90
+ * that has the sticky bit set.
91
+ */
92
+ manageOwnership = false;
93
+ /**
94
+ * Specifies Permission access granted, which allows the caller to set permissions and
95
+ * POSIX ACLs on blobs (files and directories).
96
+ */
97
+ manageAccessControl = false;
100
98
  /**
101
99
  * Converts the given permissions to a string. Using this method will guarantee the permissions are in an
102
100
  * order accepted by the service.
@@ -1 +1 @@
1
- {"version":3,"file":"DataLakeSASPermissions.js","sourceRoot":"","sources":["../../../src/sas/DataLakeSASPermissions.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * This is a helper class to construct a string representing the permissions granted by a ServiceSAS. Setting\n * a value to true means that any SAS which uses these permissions will grant permissions for that operation. Once all\n * the values are set, this should be serialized with toString and set as the permissions field on a\n * {@link DataLakeSASSignatureValues} object. It is possible to construct the permissions string without this class, but\n * the order of the permissions is particular and this class guarantees correctness.\n */\nexport class DataLakeSASPermissions {\n /**\n * Creates a {@link DataLakeSASPermissions} from the specified permissions string. This method will throw an\n * Error if it encounters a character that does not correspond to a valid permission.\n *\n * @param permissions -\n */\n public static parse(permissions: string): DataLakeSASPermissions {\n const blobSASPermissions = new DataLakeSASPermissions();\n\n for (const char of permissions) {\n switch (char) {\n case \"r\":\n blobSASPermissions.read = true;\n break;\n case \"a\":\n blobSASPermissions.add = true;\n break;\n case \"c\":\n blobSASPermissions.create = true;\n break;\n case \"w\":\n blobSASPermissions.write = true;\n break;\n case \"d\":\n blobSASPermissions.delete = true;\n break;\n case \"m\":\n blobSASPermissions.move = true;\n break;\n case \"e\":\n blobSASPermissions.execute = true;\n break;\n case \"o\":\n blobSASPermissions.manageOwnership = true;\n break;\n case \"p\":\n blobSASPermissions.manageAccessControl = true;\n break;\n default:\n throw new RangeError(`Invalid permission: ${char}`);\n }\n }\n\n return blobSASPermissions;\n }\n\n /**\n * Specifies Read access granted.\n */\n public read: boolean = false;\n\n /**\n * Specifies Add access granted.\n */\n public add: boolean = false;\n\n /**\n * Specifies Create access granted.\n */\n public create: boolean = false;\n\n /**\n * Specifies Write access granted.\n */\n public write: boolean = false;\n\n /**\n * Specifies Delete access granted.\n */\n public delete: boolean = false;\n\n /**\n * Specifies Move access granted.\n */\n public move: boolean = false;\n\n /**\n * Specifies Execute access granted.\n */\n public execute: boolean = false;\n\n /**\n * Specifies Ownership access granted, which allows the caller to set owner, owning group,\n * or act as the owner when renaming or deleting a blob (file or directory) within a folder\n * that has the sticky bit set.\n */\n public manageOwnership: boolean = false;\n\n /**\n * Specifies Permission access granted, which allows the caller to set permissions and\n * POSIX ACLs on blobs (files and directories).\n */\n public manageAccessControl: boolean = false;\n\n /**\n * Converts the given permissions to a string. Using this method will guarantee the permissions are in an\n * order accepted by the service.\n *\n * @returns A string which represents the DataLakeSASPermissions\n */\n public toString(): string {\n const permissions: string[] = [];\n if (this.read) {\n permissions.push(\"r\");\n }\n if (this.add) {\n permissions.push(\"a\");\n }\n if (this.create) {\n permissions.push(\"c\");\n }\n if (this.write) {\n permissions.push(\"w\");\n }\n if (this.delete) {\n permissions.push(\"d\");\n }\n if (this.move) {\n permissions.push(\"m\");\n }\n if (this.execute) {\n permissions.push(\"e\");\n }\n if (this.manageOwnership) {\n permissions.push(\"o\");\n }\n if (this.manageAccessControl) {\n permissions.push(\"p\");\n }\n return permissions.join(\"\");\n }\n}\n"]}
1
+ {"version":3,"file":"DataLakeSASPermissions.js","sourceRoot":"","sources":["../../../src/sas/DataLakeSASPermissions.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * This is a helper class to construct a string representing the permissions granted by a ServiceSAS. Setting\n * a value to true means that any SAS which uses these permissions will grant permissions for that operation. Once all\n * the values are set, this should be serialized with toString and set as the permissions field on a\n * {@link DataLakeSASSignatureValues} object. It is possible to construct the permissions string without this class, but\n * the order of the permissions is particular and this class guarantees correctness.\n */\nexport class DataLakeSASPermissions {\n /**\n * Creates a {@link DataLakeSASPermissions} from the specified permissions string. This method will throw an\n * Error if it encounters a character that does not correspond to a valid permission.\n *\n * @param permissions -\n */\n public static parse(permissions: string): DataLakeSASPermissions {\n const blobSASPermissions = new DataLakeSASPermissions();\n\n for (const char of permissions) {\n switch (char) {\n case \"r\":\n blobSASPermissions.read = true;\n break;\n case \"a\":\n blobSASPermissions.add = true;\n break;\n case \"c\":\n blobSASPermissions.create = true;\n break;\n case \"w\":\n blobSASPermissions.write = true;\n break;\n case \"d\":\n blobSASPermissions.delete = true;\n break;\n case \"m\":\n blobSASPermissions.move = true;\n break;\n case \"e\":\n blobSASPermissions.execute = true;\n break;\n case \"o\":\n blobSASPermissions.manageOwnership = true;\n break;\n case \"p\":\n blobSASPermissions.manageAccessControl = true;\n break;\n default:\n throw new RangeError(`Invalid permission: ${char}`);\n }\n }\n\n return blobSASPermissions;\n }\n\n /**\n * Specifies Read access granted.\n */\n public read: boolean = false;\n\n /**\n * Specifies Add access granted.\n */\n public add: boolean = false;\n\n /**\n * Specifies Create access granted.\n */\n public create: boolean = false;\n\n /**\n * Specifies Write access granted.\n */\n public write: boolean = false;\n\n /**\n * Specifies Delete access granted.\n */\n public delete: boolean = false;\n\n /**\n * Specifies Move access granted.\n */\n public move: boolean = false;\n\n /**\n * Specifies Execute access granted.\n */\n public execute: boolean = false;\n\n /**\n * Specifies Ownership access granted, which allows the caller to set owner, owning group,\n * or act as the owner when renaming or deleting a blob (file or directory) within a folder\n * that has the sticky bit set.\n */\n public manageOwnership: boolean = false;\n\n /**\n * Specifies Permission access granted, which allows the caller to set permissions and\n * POSIX ACLs on blobs (files and directories).\n */\n public manageAccessControl: boolean = false;\n\n /**\n * Converts the given permissions to a string. Using this method will guarantee the permissions are in an\n * order accepted by the service.\n *\n * @returns A string which represents the DataLakeSASPermissions\n */\n public toString(): string {\n const permissions: string[] = [];\n if (this.read) {\n permissions.push(\"r\");\n }\n if (this.add) {\n permissions.push(\"a\");\n }\n if (this.create) {\n permissions.push(\"c\");\n }\n if (this.write) {\n permissions.push(\"w\");\n }\n if (this.delete) {\n permissions.push(\"d\");\n }\n if (this.move) {\n permissions.push(\"m\");\n }\n if (this.execute) {\n permissions.push(\"e\");\n }\n if (this.manageOwnership) {\n permissions.push(\"o\");\n }\n if (this.manageAccessControl) {\n permissions.push(\"p\");\n }\n return permissions.join(\"\");\n }\n}\n"]}
@@ -85,7 +85,7 @@ export interface DataLakeSASSignatureValues {
85
85
  /**
86
86
  * Optional. The name of the access policy on the file system this SAS references if any.
87
87
  *
88
- * @see https://learn.microsoft.com/en-us/rest/api/storageservices/establishing-a-stored-access-policy
88
+ * @see https://learn.microsoft.com/rest/api/storageservices/establishing-a-stored-access-policy
89
89
  */
90
90
  identifier?: string;
91
91
  /**
@@ -45,7 +45,7 @@ function generateDataLakeSASQueryParametersInternal(dataLakeSASSignatureValues,
45
45
  }
46
46
  }
47
47
  // Version 2018-11-09 adds support for the signed resource and signed blob snapshot time fields.
48
- // https://learn.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas#constructing-the-signature-string
48
+ // https://learn.microsoft.com/rest/api/storageservices/constructing-a-service-sas#constructing-the-signature-string
49
49
  if (version >= "2018-11-09") {
50
50
  if (sharedKeyCredential !== undefined) {
51
51
  return generateBlobSASQueryParameters20181109(dataLakeSASSignatureValues, sharedKeyCredential);
@@ -669,7 +669,6 @@ function getCanonicalName(accountName, containerName, blobName) {
669
669
  return elements.join("");
670
670
  }
671
671
  function SASSignatureValuesSanityCheckAndAutofill(dataLakeSASSignatureValues, version) {
672
- var _a;
673
672
  if (version < "2020-02-10" &&
674
673
  (dataLakeSASSignatureValues.isDirectory || dataLakeSASSignatureValues.directoryDepth)) {
675
674
  throw RangeError("'version' must be >= '2020-02-10' to support directory SAS.");
@@ -689,7 +688,9 @@ function SASSignatureValuesSanityCheckAndAutofill(dataLakeSASSignatureValues, ve
689
688
  dataLakeSASSignatureValues.directoryDepth = 0;
690
689
  }
691
690
  else {
692
- dataLakeSASSignatureValues.directoryDepth = (_a = dataLakeSASSignatureValues.pathName) === null || _a === void 0 ? void 0 : _a.split("/").filter((x) => x !== "").length;
691
+ dataLakeSASSignatureValues.directoryDepth = dataLakeSASSignatureValues.pathName
692
+ ?.split("/")
693
+ .filter((x) => x !== "").length;
693
694
  }
694
695
  }
695
696
  if (version < "2020-02-10" &&