@azure/data-tables 13.3.1-alpha.20241125.1 → 13.3.1-alpha.20241127.2

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 (941) hide show
  1. package/dist/browser/TableClient.d.ts +436 -0
  2. package/dist/browser/TableClient.d.ts.map +1 -0
  3. package/{dist-esm/src → dist/browser}/TableClient.js +18 -18
  4. package/dist/browser/TableClient.js.map +1 -0
  5. package/dist/browser/TablePolicies.d.ts +6 -0
  6. package/dist/browser/TablePolicies.d.ts.map +1 -0
  7. package/{dist-esm/src → dist/browser}/TablePolicies.js +2 -2
  8. package/dist/browser/TablePolicies.js.map +1 -0
  9. package/dist/browser/TableServiceClient.d.ts +161 -0
  10. package/dist/browser/TableServiceClient.d.ts.map +1 -0
  11. package/{dist-esm/src → dist/browser}/TableServiceClient.js +13 -13
  12. package/dist/browser/TableServiceClient.js.map +1 -0
  13. package/dist/browser/TableTransaction.d.ts +114 -0
  14. package/dist/browser/TableTransaction.d.ts.map +1 -0
  15. package/{dist-esm/src → dist/browser}/TableTransaction.js +9 -7
  16. package/dist/browser/TableTransaction.js.map +1 -0
  17. package/dist/browser/cosmosPathPolicy.d.ts +3 -0
  18. package/dist/browser/cosmosPathPolicy.d.ts.map +1 -0
  19. package/dist/browser/generated/generatedClient.d.ts +17 -0
  20. package/dist/browser/generated/generatedClient.d.ts.map +1 -0
  21. package/{dist-esm/src → dist/browser}/generated/generatedClient.js +1 -1
  22. package/dist/browser/generated/generatedClient.js.map +1 -0
  23. package/dist/browser/generated/generatedClientContext.d.ts +14 -0
  24. package/dist/browser/generated/generatedClientContext.d.ts.map +1 -0
  25. package/dist/browser/generated/generatedClientContext.js.map +1 -0
  26. package/dist/browser/generated/index.d.ts +4 -0
  27. package/dist/browser/generated/index.d.ts.map +1 -0
  28. package/{dist-esm/src → dist/browser}/generated/index.js +3 -3
  29. package/dist/browser/generated/index.js.map +1 -0
  30. package/dist/browser/generated/models/index.d.ts +603 -0
  31. package/dist/browser/generated/models/index.d.ts.map +1 -0
  32. package/dist/browser/generated/models/mappers.d.ts +47 -0
  33. package/dist/browser/generated/models/mappers.d.ts.map +1 -0
  34. package/dist/browser/generated/models/parameters.d.ts +35 -0
  35. package/dist/browser/generated/models/parameters.d.ts.map +1 -0
  36. package/{dist-esm/src → dist/browser}/generated/models/parameters.js +1 -1
  37. package/dist/browser/generated/models/parameters.js.map +1 -0
  38. package/dist/browser/generated/operations/index.d.ts +3 -0
  39. package/dist/browser/generated/operations/index.d.ts.map +1 -0
  40. package/dist/browser/generated/operations/index.js +10 -0
  41. package/{dist-esm/src → dist/browser}/generated/operations/index.js.map +1 -1
  42. package/dist/browser/generated/operations/service.d.ts +32 -0
  43. package/dist/browser/generated/operations/service.d.ts.map +1 -0
  44. package/{dist-esm/src → dist/browser}/generated/operations/service.js +2 -2
  45. package/dist/browser/generated/operations/service.js.map +1 -0
  46. package/dist/browser/generated/operations/table.d.ts +90 -0
  47. package/dist/browser/generated/operations/table.d.ts.map +1 -0
  48. package/{dist-esm/src → dist/browser}/generated/operations/table.js +2 -2
  49. package/dist/browser/generated/operations/table.js.map +1 -0
  50. package/dist/browser/generated/operationsInterfaces/index.d.ts +3 -0
  51. package/dist/browser/generated/operationsInterfaces/index.d.ts.map +1 -0
  52. package/dist/browser/generated/operationsInterfaces/index.js +10 -0
  53. package/{dist-esm/src → dist/browser}/generated/operationsInterfaces/index.js.map +1 -1
  54. package/dist/browser/generated/operationsInterfaces/service.d.ts +24 -0
  55. package/dist/browser/generated/operationsInterfaces/service.d.ts.map +1 -0
  56. package/dist/browser/generated/operationsInterfaces/service.js.map +1 -0
  57. package/dist/browser/generated/operationsInterfaces/table.d.ts +82 -0
  58. package/dist/browser/generated/operationsInterfaces/table.d.ts.map +1 -0
  59. package/dist/browser/generated/operationsInterfaces/table.js.map +1 -0
  60. package/dist/browser/generatedModels.d.ts +2 -0
  61. package/dist/browser/generatedModels.d.ts.map +1 -0
  62. package/{dist-esm/src → dist/browser}/generatedModels.js +1 -1
  63. package/{dist-esm/src → dist/browser}/generatedModels.js.map +1 -1
  64. package/dist/browser/index.d.ts +10 -0
  65. package/dist/browser/index.d.ts.map +1 -0
  66. package/dist/browser/index.js +12 -0
  67. package/dist/browser/index.js.map +1 -0
  68. package/dist/browser/logger.d.ts +6 -0
  69. package/dist/browser/logger.d.ts.map +1 -0
  70. package/dist/browser/models.d.ts +247 -0
  71. package/dist/browser/models.d.ts.map +1 -0
  72. package/dist/browser/models.js.map +1 -0
  73. package/dist/browser/odata.d.ts +7 -0
  74. package/dist/browser/odata.d.ts.map +1 -0
  75. package/dist/browser/package.json +3 -0
  76. package/dist/browser/sas/accountSasPermissions.d.ts +48 -0
  77. package/dist/browser/sas/accountSasPermissions.d.ts.map +1 -0
  78. package/dist/browser/sas/accountSasResourceTypes.d.ts +32 -0
  79. package/dist/browser/sas/accountSasResourceTypes.d.ts.map +1 -0
  80. package/dist/browser/sas/accountSasServices.d.ts +34 -0
  81. package/dist/browser/sas/accountSasServices.d.ts.map +1 -0
  82. package/dist/browser/sas/accountSasSignatureValues.d.ts +70 -0
  83. package/dist/browser/sas/accountSasSignatureValues.d.ts.map +1 -0
  84. package/{dist-esm/src → dist/browser}/sas/accountSasSignatureValues.js +8 -8
  85. package/dist/browser/sas/accountSasSignatureValues.js.map +1 -0
  86. package/dist/browser/sas/generateAccountSas.d.ts +54 -0
  87. package/dist/browser/sas/generateAccountSas.d.ts.map +1 -0
  88. package/{dist-esm/src → dist/browser}/sas/generateAccountSas.js +3 -3
  89. package/dist/browser/sas/generateAccountSas.js.map +1 -0
  90. package/dist/browser/sas/generateTableSas.d.ts +13 -0
  91. package/dist/browser/sas/generateTableSas.d.ts.map +1 -0
  92. package/{dist-esm/src → dist/browser}/sas/generateTableSas.js +2 -2
  93. package/dist/browser/sas/generateTableSas.js.map +1 -0
  94. package/dist/browser/sas/index.d.ts +9 -0
  95. package/dist/browser/sas/index.d.ts.map +1 -0
  96. package/dist/browser/sas/index.js +5 -0
  97. package/dist/browser/sas/index.js.map +1 -0
  98. package/dist/browser/sas/models.d.ts +34 -0
  99. package/dist/browser/sas/models.d.ts.map +1 -0
  100. package/dist/browser/sas/sasIPRange.d.ts +24 -0
  101. package/dist/browser/sas/sasIPRange.d.ts.map +1 -0
  102. package/dist/browser/sas/sasQueryParameters.d.ts +246 -0
  103. package/dist/browser/sas/sasQueryParameters.d.ts.map +1 -0
  104. package/{dist-esm/src → dist/browser}/sas/sasQueryParameters.js +2 -2
  105. package/dist/browser/sas/sasQueryParameters.js.map +1 -0
  106. package/dist/browser/sas/tableSasPermisions.d.ts +37 -0
  107. package/dist/browser/sas/tableSasPermisions.d.ts.map +1 -0
  108. package/dist/browser/sas/tableSasSignatureValues.d.ts +88 -0
  109. package/dist/browser/sas/tableSasSignatureValues.d.ts.map +1 -0
  110. package/{dist-esm/src → dist/browser}/sas/tableSasSignatureValues.js +6 -6
  111. package/dist/browser/sas/tableSasSignatureValues.js.map +1 -0
  112. package/dist/browser/secondaryEndpointPolicy.d.ts +17 -0
  113. package/dist/browser/secondaryEndpointPolicy.d.ts.map +1 -0
  114. package/dist/browser/serialization.d.ts +15 -0
  115. package/dist/browser/serialization.d.ts.map +1 -0
  116. package/{dist-esm/src → dist/browser}/serialization.js +2 -2
  117. package/dist/browser/serialization.js.map +1 -0
  118. package/dist/browser/tablesNamedCredentialPolicy-browser.d.mts.map +1 -0
  119. package/dist/browser/tablesNamedCredentialPolicy-browser.mjs.map +1 -0
  120. package/dist/browser/tablesNamedCredentialPolicy.d.ts +5 -0
  121. package/{dist-esm/src/tablesNamedCredentialPolicy.browser.js → dist/browser/tablesNamedCredentialPolicy.js} +1 -1
  122. package/dist/browser/tablesSASTokenPolicy.d.ts +12 -0
  123. package/dist/browser/tablesSASTokenPolicy.d.ts.map +1 -0
  124. package/dist/browser/utils/accountConnectionString-browser.d.mts.map +1 -0
  125. package/dist/browser/utils/accountConnectionString-browser.mjs.map +1 -0
  126. package/dist/browser/utils/accountConnectionString.d.ts +11 -0
  127. package/{dist-esm/src/utils/accountConnectionString.browser.js → dist/browser/utils/accountConnectionString.js} +1 -1
  128. package/dist/browser/utils/apiVersionPolicy.d.ts +12 -0
  129. package/dist/browser/utils/apiVersionPolicy.d.ts.map +1 -0
  130. package/dist/browser/utils/baseTransactionHeaders.d.ts +7 -0
  131. package/dist/browser/utils/baseTransactionHeaders.d.ts.map +1 -0
  132. package/dist/browser/utils/bufferSerializer-browser.d.mts.map +1 -0
  133. package/dist/browser/utils/bufferSerializer-browser.mjs.map +1 -0
  134. package/dist/browser/utils/bufferSerializer.d.ts +11 -0
  135. package/{dist-esm/src/utils/bufferSerializer.browser.js → dist/browser/utils/bufferSerializer.js} +1 -1
  136. package/dist/browser/utils/challengeAuthenticationUtils.d.ts +8 -0
  137. package/dist/browser/utils/challengeAuthenticationUtils.d.ts.map +1 -0
  138. package/dist/browser/utils/computeHMACSHA256-browser.d.mts.map +1 -0
  139. package/dist/browser/utils/computeHMACSHA256-browser.mjs.map +1 -0
  140. package/dist/browser/utils/computeHMACSHA256.d.ts +2 -0
  141. package/{dist-esm/src/utils/computeHMACSHA256.browser.js → dist/browser/utils/computeHMACSHA256.js} +1 -1
  142. package/dist/browser/utils/connectionString.d.ts +21 -0
  143. package/dist/browser/utils/connectionString.d.ts.map +1 -0
  144. package/{dist-esm/src → dist/browser}/utils/connectionString.js +1 -1
  145. package/dist/browser/utils/connectionString.js.map +1 -0
  146. package/dist/browser/utils/constants.d.ts +17 -0
  147. package/dist/browser/utils/constants.d.ts.map +1 -0
  148. package/dist/browser/utils/continuationToken.d.ts +14 -0
  149. package/dist/browser/utils/continuationToken.d.ts.map +1 -0
  150. package/{dist-esm/src → dist/browser}/utils/continuationToken.js +1 -1
  151. package/dist/browser/utils/continuationToken.js.map +1 -0
  152. package/dist/browser/utils/errorHelpers.d.ts +23 -0
  153. package/dist/browser/utils/errorHelpers.d.ts.map +1 -0
  154. package/dist/browser/utils/errorHelpers.js.map +1 -0
  155. package/dist/browser/utils/internalModels.d.ts +134 -0
  156. package/dist/browser/utils/internalModels.d.ts.map +1 -0
  157. package/dist/browser/utils/internalModels.js.map +1 -0
  158. package/dist/browser/utils/isCosmosEndpoint.d.ts +2 -0
  159. package/dist/browser/utils/isCosmosEndpoint.d.ts.map +1 -0
  160. package/dist/browser/utils/isCredential.d.ts +3 -0
  161. package/dist/browser/utils/isCredential.d.ts.map +1 -0
  162. package/dist/browser/utils/tracing.d.ts +6 -0
  163. package/dist/browser/utils/tracing.d.ts.map +1 -0
  164. package/dist/browser/utils/transactionHeaders-browser.d.mts.map +1 -0
  165. package/dist/browser/utils/transactionHeaders-browser.mjs.map +1 -0
  166. package/dist/browser/utils/transactionHeaders.d.ts +7 -0
  167. package/{dist-esm/src/utils/transactionHeaders.browser.js → dist/browser/utils/transactionHeaders.js} +2 -2
  168. package/dist/browser/utils/transactionHelpers.d.ts +24 -0
  169. package/dist/browser/utils/transactionHelpers.d.ts.map +1 -0
  170. package/{dist-esm/src → dist/browser}/utils/transactionHelpers.js +1 -1
  171. package/dist/browser/utils/transactionHelpers.js.map +1 -0
  172. package/dist/browser/utils/truncateISO8061Date.d.ts +10 -0
  173. package/dist/browser/utils/truncateISO8061Date.d.ts.map +1 -0
  174. package/dist/browser/utils/uuid.d.ts +4 -0
  175. package/dist/browser/utils/uuid.d.ts.map +1 -0
  176. package/dist/commonjs/TableClient.d.ts +436 -0
  177. package/dist/commonjs/TableClient.d.ts.map +1 -0
  178. package/dist/commonjs/TableClient.js +589 -0
  179. package/dist/commonjs/TableClient.js.map +1 -0
  180. package/dist/commonjs/TablePolicies.d.ts +6 -0
  181. package/dist/commonjs/TablePolicies.d.ts.map +1 -0
  182. package/dist/commonjs/TablePolicies.js +67 -0
  183. package/dist/commonjs/TablePolicies.js.map +1 -0
  184. package/dist/commonjs/TableServiceClient.d.ts +161 -0
  185. package/dist/commonjs/TableServiceClient.d.ts.map +1 -0
  186. package/dist/commonjs/TableServiceClient.js +218 -0
  187. package/dist/commonjs/TableServiceClient.js.map +1 -0
  188. package/dist/commonjs/TableTransaction.d.ts +114 -0
  189. package/dist/commonjs/TableTransaction.d.ts.map +1 -0
  190. package/dist/commonjs/TableTransaction.js +268 -0
  191. package/dist/commonjs/TableTransaction.js.map +1 -0
  192. package/dist/commonjs/cosmosPathPolicy.d.ts +3 -0
  193. package/dist/commonjs/cosmosPathPolicy.d.ts.map +1 -0
  194. package/dist/commonjs/cosmosPathPolicy.js +19 -0
  195. package/dist/commonjs/cosmosPathPolicy.js.map +1 -0
  196. package/dist/commonjs/generated/generatedClient.d.ts +17 -0
  197. package/dist/commonjs/generated/generatedClient.d.ts.map +1 -0
  198. package/dist/commonjs/generated/generatedClient.js +50 -0
  199. package/dist/commonjs/generated/generatedClient.js.map +1 -0
  200. package/dist/commonjs/generated/generatedClientContext.d.ts +14 -0
  201. package/dist/commonjs/generated/generatedClientContext.d.ts.map +1 -0
  202. package/dist/commonjs/generated/generatedClientContext.js +46 -0
  203. package/dist/commonjs/generated/generatedClientContext.js.map +1 -0
  204. package/dist/commonjs/generated/index.d.ts +4 -0
  205. package/dist/commonjs/generated/index.d.ts.map +1 -0
  206. package/dist/commonjs/generated/index.js +16 -0
  207. package/dist/commonjs/generated/index.js.map +1 -0
  208. package/dist/commonjs/generated/models/index.d.ts +603 -0
  209. package/dist/commonjs/generated/models/index.d.ts.map +1 -0
  210. package/dist/commonjs/generated/models/index.js +31 -0
  211. package/dist/commonjs/generated/models/index.js.map +1 -0
  212. package/dist/commonjs/generated/models/mappers.d.ts +47 -0
  213. package/dist/commonjs/generated/models/mappers.d.ts.map +1 -0
  214. package/dist/commonjs/generated/models/mappers.js +1334 -0
  215. package/dist/commonjs/generated/models/mappers.js.map +1 -0
  216. package/dist/commonjs/generated/models/parameters.d.ts +35 -0
  217. package/dist/commonjs/generated/models/parameters.d.ts.map +1 -0
  218. package/dist/commonjs/generated/models/parameters.js +364 -0
  219. package/dist/commonjs/generated/models/parameters.js.map +1 -0
  220. package/dist/commonjs/generated/operations/index.d.ts +3 -0
  221. package/dist/commonjs/generated/operations/index.d.ts.map +1 -0
  222. package/dist/commonjs/generated/operations/index.js +13 -0
  223. package/dist/commonjs/generated/operations/index.js.map +1 -0
  224. package/dist/commonjs/generated/operations/service.d.ts +32 -0
  225. package/dist/commonjs/generated/operations/service.d.ts.map +1 -0
  226. package/dist/commonjs/generated/operations/service.js +125 -0
  227. package/dist/commonjs/generated/operations/service.js.map +1 -0
  228. package/dist/commonjs/generated/operations/table.d.ts +90 -0
  229. package/dist/commonjs/generated/operations/table.d.ts.map +1 -0
  230. package/dist/commonjs/generated/operations/table.js +455 -0
  231. package/dist/commonjs/generated/operations/table.js.map +1 -0
  232. package/dist/commonjs/generated/operationsInterfaces/index.d.ts +3 -0
  233. package/dist/commonjs/generated/operationsInterfaces/index.d.ts.map +1 -0
  234. package/dist/commonjs/generated/operationsInterfaces/index.js +13 -0
  235. package/dist/commonjs/generated/operationsInterfaces/index.js.map +1 -0
  236. package/dist/commonjs/generated/operationsInterfaces/service.d.ts +24 -0
  237. package/dist/commonjs/generated/operationsInterfaces/service.d.ts.map +1 -0
  238. package/dist/commonjs/generated/operationsInterfaces/service.js +10 -0
  239. package/dist/commonjs/generated/operationsInterfaces/service.js.map +1 -0
  240. package/dist/commonjs/generated/operationsInterfaces/table.d.ts +82 -0
  241. package/dist/commonjs/generated/operationsInterfaces/table.d.ts.map +1 -0
  242. package/dist/commonjs/generated/operationsInterfaces/table.js +10 -0
  243. package/dist/commonjs/generated/operationsInterfaces/table.js.map +1 -0
  244. package/dist/commonjs/generatedModels.d.ts +2 -0
  245. package/dist/commonjs/generatedModels.d.ts.map +1 -0
  246. package/dist/commonjs/generatedModels.js +8 -0
  247. package/dist/commonjs/generatedModels.js.map +1 -0
  248. package/dist/commonjs/index.d.ts +10 -0
  249. package/dist/commonjs/index.d.ts.map +1 -0
  250. package/dist/commonjs/index.js +23 -0
  251. package/dist/commonjs/index.js.map +1 -0
  252. package/dist/commonjs/logger.d.ts +6 -0
  253. package/dist/commonjs/logger.d.ts.map +1 -0
  254. package/dist/commonjs/logger.js +11 -0
  255. package/dist/commonjs/logger.js.map +1 -0
  256. package/dist/commonjs/models.d.ts +247 -0
  257. package/dist/commonjs/models.d.ts.map +1 -0
  258. package/dist/commonjs/models.js +5 -0
  259. package/dist/commonjs/models.js.map +1 -0
  260. package/dist/commonjs/odata.d.ts +7 -0
  261. package/dist/commonjs/odata.d.ts.map +1 -0
  262. package/dist/commonjs/odata.js +41 -0
  263. package/dist/commonjs/odata.js.map +1 -0
  264. package/dist/commonjs/package.json +3 -0
  265. package/dist/commonjs/sas/accountSasPermissions.d.ts +48 -0
  266. package/dist/commonjs/sas/accountSasPermissions.d.ts.map +1 -0
  267. package/dist/commonjs/sas/accountSasPermissions.js +75 -0
  268. package/dist/commonjs/sas/accountSasPermissions.js.map +1 -0
  269. package/dist/commonjs/sas/accountSasResourceTypes.d.ts +32 -0
  270. package/dist/commonjs/sas/accountSasResourceTypes.d.ts.map +1 -0
  271. package/dist/commonjs/sas/accountSasResourceTypes.js +51 -0
  272. package/dist/commonjs/sas/accountSasResourceTypes.js.map +1 -0
  273. package/dist/commonjs/sas/accountSasServices.d.ts +34 -0
  274. package/dist/commonjs/sas/accountSasServices.d.ts.map +1 -0
  275. package/dist/commonjs/sas/accountSasServices.js +55 -0
  276. package/dist/commonjs/sas/accountSasServices.js.map +1 -0
  277. package/dist/commonjs/sas/accountSasSignatureValues.d.ts +70 -0
  278. package/dist/commonjs/sas/accountSasSignatureValues.d.ts.map +1 -0
  279. package/dist/commonjs/sas/accountSasSignatureValues.js +58 -0
  280. package/dist/commonjs/sas/accountSasSignatureValues.js.map +1 -0
  281. package/dist/commonjs/sas/generateAccountSas.d.ts +54 -0
  282. package/dist/commonjs/sas/generateAccountSas.d.ts.map +1 -0
  283. package/dist/commonjs/sas/generateAccountSas.js +33 -0
  284. package/dist/commonjs/sas/generateAccountSas.js.map +1 -0
  285. package/dist/commonjs/sas/generateTableSas.d.ts +13 -0
  286. package/dist/commonjs/sas/generateTableSas.d.ts.map +1 -0
  287. package/dist/commonjs/sas/generateTableSas.js +38 -0
  288. package/dist/commonjs/sas/generateTableSas.js.map +1 -0
  289. package/dist/commonjs/sas/index.d.ts +9 -0
  290. package/dist/commonjs/sas/index.d.ts.map +1 -0
  291. package/dist/commonjs/sas/index.js +10 -0
  292. package/dist/commonjs/sas/index.js.map +1 -0
  293. package/dist/commonjs/sas/models.d.ts +34 -0
  294. package/dist/commonjs/sas/models.d.ts.map +1 -0
  295. package/dist/commonjs/sas/models.js +5 -0
  296. package/dist/commonjs/sas/models.js.map +1 -0
  297. package/dist/commonjs/sas/sasIPRange.d.ts +24 -0
  298. package/dist/commonjs/sas/sasIPRange.d.ts.map +1 -0
  299. package/dist/commonjs/sas/sasIPRange.js +19 -0
  300. package/dist/commonjs/sas/sasIPRange.js.map +1 -0
  301. package/dist/commonjs/sas/sasQueryParameters.d.ts +246 -0
  302. package/dist/commonjs/sas/sasQueryParameters.d.ts.map +1 -0
  303. package/dist/commonjs/sas/sasQueryParameters.js +197 -0
  304. package/dist/commonjs/sas/sasQueryParameters.js.map +1 -0
  305. package/dist/commonjs/sas/tableSasPermisions.d.ts +37 -0
  306. package/dist/commonjs/sas/tableSasPermisions.d.ts.map +1 -0
  307. package/dist/commonjs/sas/tableSasPermisions.js +60 -0
  308. package/dist/commonjs/sas/tableSasPermisions.js.map +1 -0
  309. package/dist/commonjs/sas/tableSasSignatureValues.d.ts +88 -0
  310. package/dist/commonjs/sas/tableSasSignatureValues.d.ts.map +1 -0
  311. package/dist/commonjs/sas/tableSasSignatureValues.js +77 -0
  312. package/dist/commonjs/sas/tableSasSignatureValues.js.map +1 -0
  313. package/dist/commonjs/secondaryEndpointPolicy.d.ts +17 -0
  314. package/dist/commonjs/secondaryEndpointPolicy.d.ts.map +1 -0
  315. package/dist/commonjs/secondaryEndpointPolicy.js +50 -0
  316. package/dist/commonjs/secondaryEndpointPolicy.js.map +1 -0
  317. package/dist/commonjs/serialization.d.ts +15 -0
  318. package/dist/commonjs/serialization.d.ts.map +1 -0
  319. package/dist/commonjs/serialization.js +223 -0
  320. package/dist/commonjs/serialization.js.map +1 -0
  321. package/dist/commonjs/tablesNamedCredentialPolicy.d.ts +12 -0
  322. package/dist/commonjs/tablesNamedCredentialPolicy.d.ts.map +1 -0
  323. package/dist/commonjs/tablesNamedCredentialPolicy.js +68 -0
  324. package/dist/commonjs/tablesNamedCredentialPolicy.js.map +1 -0
  325. package/dist/commonjs/tablesSASTokenPolicy.d.ts +12 -0
  326. package/dist/commonjs/tablesSASTokenPolicy.d.ts.map +1 -0
  327. package/dist/commonjs/tablesSASTokenPolicy.js +32 -0
  328. package/dist/commonjs/tablesSASTokenPolicy.js.map +1 -0
  329. package/dist/commonjs/utils/accountConnectionString.d.ts +11 -0
  330. package/dist/commonjs/utils/accountConnectionString.d.ts.map +1 -0
  331. package/dist/commonjs/utils/accountConnectionString.js +48 -0
  332. package/dist/commonjs/utils/accountConnectionString.js.map +1 -0
  333. package/dist/commonjs/utils/apiVersionPolicy.d.ts +12 -0
  334. package/dist/commonjs/utils/apiVersionPolicy.d.ts.map +1 -0
  335. package/dist/commonjs/utils/apiVersionPolicy.js +25 -0
  336. package/dist/commonjs/utils/apiVersionPolicy.js.map +1 -0
  337. package/dist/commonjs/utils/baseTransactionHeaders.d.ts +7 -0
  338. package/dist/commonjs/utils/baseTransactionHeaders.d.ts.map +1 -0
  339. package/dist/commonjs/utils/baseTransactionHeaders.js +19 -0
  340. package/dist/commonjs/utils/baseTransactionHeaders.js.map +1 -0
  341. package/dist/commonjs/utils/bufferSerializer.d.ts +11 -0
  342. package/dist/commonjs/utils/bufferSerializer.d.ts.map +1 -0
  343. package/dist/commonjs/utils/bufferSerializer.js +27 -0
  344. package/dist/commonjs/utils/bufferSerializer.js.map +1 -0
  345. package/dist/commonjs/utils/challengeAuthenticationUtils.d.ts +8 -0
  346. package/dist/commonjs/utils/challengeAuthenticationUtils.d.ts.map +1 -0
  347. package/dist/commonjs/utils/challengeAuthenticationUtils.js +23 -0
  348. package/dist/commonjs/utils/challengeAuthenticationUtils.js.map +1 -0
  349. package/dist/commonjs/utils/computeHMACSHA256.d.ts +2 -0
  350. package/dist/commonjs/utils/computeHMACSHA256.d.ts.map +1 -0
  351. package/dist/commonjs/utils/computeHMACSHA256.js +11 -0
  352. package/dist/commonjs/utils/computeHMACSHA256.js.map +1 -0
  353. package/dist/commonjs/utils/connectionString.d.ts +21 -0
  354. package/dist/commonjs/utils/connectionString.d.ts.map +1 -0
  355. package/dist/commonjs/utils/connectionString.js +135 -0
  356. package/dist/commonjs/utils/connectionString.js.map +1 -0
  357. package/dist/commonjs/utils/constants.d.ts +17 -0
  358. package/dist/commonjs/utils/constants.d.ts.map +1 -0
  359. package/dist/commonjs/utils/constants.js +104 -0
  360. package/dist/commonjs/utils/constants.js.map +1 -0
  361. package/dist/commonjs/utils/continuationToken.d.ts +14 -0
  362. package/dist/commonjs/utils/continuationToken.d.ts.map +1 -0
  363. package/dist/commonjs/utils/continuationToken.js +30 -0
  364. package/dist/commonjs/utils/continuationToken.js.map +1 -0
  365. package/dist/commonjs/utils/errorHelpers.d.ts +23 -0
  366. package/dist/commonjs/utils/errorHelpers.d.ts.map +1 -0
  367. package/dist/commonjs/utils/errorHelpers.js +37 -0
  368. package/dist/commonjs/utils/errorHelpers.js.map +1 -0
  369. package/dist/commonjs/utils/internalModels.d.ts +134 -0
  370. package/dist/commonjs/utils/internalModels.d.ts.map +1 -0
  371. package/dist/commonjs/utils/internalModels.js +5 -0
  372. package/dist/commonjs/utils/internalModels.js.map +1 -0
  373. package/dist/commonjs/utils/isCosmosEndpoint.d.ts +2 -0
  374. package/dist/commonjs/utils/isCosmosEndpoint.d.ts.map +1 -0
  375. package/dist/commonjs/utils/isCosmosEndpoint.js +19 -0
  376. package/dist/commonjs/utils/isCosmosEndpoint.js.map +1 -0
  377. package/dist/commonjs/utils/isCredential.d.ts +3 -0
  378. package/dist/commonjs/utils/isCredential.d.ts.map +1 -0
  379. package/dist/commonjs/utils/isCredential.js +10 -0
  380. package/dist/commonjs/utils/isCredential.js.map +1 -0
  381. package/dist/commonjs/utils/tracing.d.ts +6 -0
  382. package/dist/commonjs/utils/tracing.d.ts.map +1 -0
  383. package/dist/commonjs/utils/tracing.js +16 -0
  384. package/dist/commonjs/utils/tracing.js.map +1 -0
  385. package/dist/commonjs/utils/transactionHeaders.d.ts +7 -0
  386. package/dist/commonjs/utils/transactionHeaders.d.ts.map +1 -0
  387. package/dist/commonjs/utils/transactionHeaders.js +17 -0
  388. package/dist/commonjs/utils/transactionHeaders.js.map +1 -0
  389. package/dist/commonjs/utils/transactionHelpers.d.ts +24 -0
  390. package/dist/commonjs/utils/transactionHelpers.d.ts.map +1 -0
  391. package/dist/commonjs/utils/transactionHelpers.js +49 -0
  392. package/dist/commonjs/utils/transactionHelpers.js.map +1 -0
  393. package/dist/commonjs/utils/truncateISO8061Date.d.ts +10 -0
  394. package/dist/commonjs/utils/truncateISO8061Date.d.ts.map +1 -0
  395. package/dist/commonjs/utils/truncateISO8061Date.js +21 -0
  396. package/dist/commonjs/utils/truncateISO8061Date.js.map +1 -0
  397. package/dist/commonjs/utils/uuid.d.ts +4 -0
  398. package/dist/commonjs/utils/uuid.d.ts.map +1 -0
  399. package/dist/commonjs/utils/uuid.js +15 -0
  400. package/dist/commonjs/utils/uuid.js.map +1 -0
  401. package/dist/esm/TableClient.d.ts +436 -0
  402. package/dist/esm/TableClient.d.ts.map +1 -0
  403. package/dist/esm/TableClient.js +585 -0
  404. package/dist/esm/TableClient.js.map +1 -0
  405. package/dist/esm/TablePolicies.d.ts +6 -0
  406. package/dist/esm/TablePolicies.d.ts.map +1 -0
  407. package/dist/esm/TablePolicies.js +62 -0
  408. package/dist/esm/TablePolicies.js.map +1 -0
  409. package/dist/esm/TableServiceClient.d.ts +161 -0
  410. package/dist/esm/TableServiceClient.d.ts.map +1 -0
  411. package/dist/esm/TableServiceClient.js +214 -0
  412. package/dist/esm/TableServiceClient.js.map +1 -0
  413. package/dist/esm/TableTransaction.d.ts +114 -0
  414. package/dist/esm/TableTransaction.d.ts.map +1 -0
  415. package/dist/esm/TableTransaction.js +261 -0
  416. package/dist/esm/TableTransaction.js.map +1 -0
  417. package/dist/esm/cosmosPathPolicy.d.ts +3 -0
  418. package/dist/esm/cosmosPathPolicy.d.ts.map +1 -0
  419. package/dist/esm/cosmosPathPolicy.js +16 -0
  420. package/dist/esm/cosmosPathPolicy.js.map +1 -0
  421. package/dist/esm/generated/generatedClient.d.ts +17 -0
  422. package/dist/esm/generated/generatedClient.d.ts.map +1 -0
  423. package/dist/esm/generated/generatedClient.js +45 -0
  424. package/dist/esm/generated/generatedClient.js.map +1 -0
  425. package/dist/esm/generated/generatedClientContext.d.ts +14 -0
  426. package/dist/esm/generated/generatedClientContext.d.ts.map +1 -0
  427. package/dist/esm/generated/generatedClientContext.js +41 -0
  428. package/dist/esm/generated/generatedClientContext.js.map +1 -0
  429. package/dist/esm/generated/index.d.ts +4 -0
  430. package/dist/esm/generated/index.d.ts.map +1 -0
  431. package/dist/esm/generated/index.js +11 -0
  432. package/dist/esm/generated/index.js.map +1 -0
  433. package/dist/esm/generated/models/index.d.ts +603 -0
  434. package/dist/esm/generated/models/index.d.ts.map +1 -0
  435. package/dist/esm/generated/models/index.js +28 -0
  436. package/dist/esm/generated/models/index.js.map +1 -0
  437. package/dist/esm/generated/models/mappers.d.ts +47 -0
  438. package/dist/esm/generated/models/mappers.d.ts.map +1 -0
  439. package/dist/esm/generated/models/mappers.js +1331 -0
  440. package/dist/esm/generated/models/mappers.js.map +1 -0
  441. package/dist/esm/generated/models/parameters.d.ts +35 -0
  442. package/dist/esm/generated/models/parameters.d.ts.map +1 -0
  443. package/dist/esm/generated/models/parameters.js +361 -0
  444. package/dist/esm/generated/models/parameters.js.map +1 -0
  445. package/dist/esm/generated/operations/index.d.ts +3 -0
  446. package/dist/esm/generated/operations/index.d.ts.map +1 -0
  447. package/dist/esm/generated/operations/index.js +10 -0
  448. package/dist/esm/generated/operations/index.js.map +1 -0
  449. package/dist/esm/generated/operations/service.d.ts +32 -0
  450. package/dist/esm/generated/operations/service.d.ts.map +1 -0
  451. package/dist/esm/generated/operations/service.js +120 -0
  452. package/dist/esm/generated/operations/service.js.map +1 -0
  453. package/dist/esm/generated/operations/table.d.ts +90 -0
  454. package/dist/esm/generated/operations/table.d.ts.map +1 -0
  455. package/dist/esm/generated/operations/table.js +450 -0
  456. package/dist/esm/generated/operations/table.js.map +1 -0
  457. package/dist/esm/generated/operationsInterfaces/index.d.ts +3 -0
  458. package/dist/esm/generated/operationsInterfaces/index.d.ts.map +1 -0
  459. package/dist/esm/generated/operationsInterfaces/index.js +10 -0
  460. package/dist/esm/generated/operationsInterfaces/index.js.map +1 -0
  461. package/dist/esm/generated/operationsInterfaces/service.d.ts +24 -0
  462. package/dist/esm/generated/operationsInterfaces/service.d.ts.map +1 -0
  463. package/{dist-esm/src/generated/operations/index.js → dist/esm/generated/operationsInterfaces/service.js} +2 -3
  464. package/dist/esm/generated/operationsInterfaces/service.js.map +1 -0
  465. package/dist/esm/generated/operationsInterfaces/table.d.ts +82 -0
  466. package/dist/esm/generated/operationsInterfaces/table.d.ts.map +1 -0
  467. package/{dist-esm/src/generated/operationsInterfaces/index.js → dist/esm/generated/operationsInterfaces/table.js} +2 -3
  468. package/dist/esm/generated/operationsInterfaces/table.js.map +1 -0
  469. package/dist/esm/generatedModels.d.ts +2 -0
  470. package/dist/esm/generatedModels.d.ts.map +1 -0
  471. package/dist/esm/generatedModels.js +4 -0
  472. package/dist/esm/generatedModels.js.map +1 -0
  473. package/dist/esm/index.d.ts +10 -0
  474. package/dist/esm/index.d.ts.map +1 -0
  475. package/dist/esm/index.js +12 -0
  476. package/dist/esm/index.js.map +1 -0
  477. package/dist/esm/logger.d.ts +6 -0
  478. package/dist/esm/logger.d.ts.map +1 -0
  479. package/dist/esm/logger.js +8 -0
  480. package/dist/esm/logger.js.map +1 -0
  481. package/dist/esm/models.d.ts +247 -0
  482. package/dist/esm/models.d.ts.map +1 -0
  483. package/dist/esm/models.js +4 -0
  484. package/dist/esm/models.js.map +1 -0
  485. package/dist/esm/odata.d.ts +7 -0
  486. package/dist/esm/odata.d.ts.map +1 -0
  487. package/dist/esm/odata.js +37 -0
  488. package/dist/esm/odata.js.map +1 -0
  489. package/dist/esm/package.json +3 -0
  490. package/dist/esm/sas/accountSasPermissions.d.ts +48 -0
  491. package/dist/esm/sas/accountSasPermissions.d.ts.map +1 -0
  492. package/dist/esm/sas/accountSasPermissions.js +71 -0
  493. package/dist/esm/sas/accountSasPermissions.js.map +1 -0
  494. package/dist/esm/sas/accountSasResourceTypes.d.ts +32 -0
  495. package/dist/esm/sas/accountSasResourceTypes.d.ts.map +1 -0
  496. package/dist/esm/sas/accountSasResourceTypes.js +47 -0
  497. package/dist/esm/sas/accountSasResourceTypes.js.map +1 -0
  498. package/dist/esm/sas/accountSasServices.d.ts +34 -0
  499. package/dist/esm/sas/accountSasServices.d.ts.map +1 -0
  500. package/dist/esm/sas/accountSasServices.js +51 -0
  501. package/dist/esm/sas/accountSasServices.js.map +1 -0
  502. package/dist/esm/sas/accountSasSignatureValues.d.ts +70 -0
  503. package/dist/esm/sas/accountSasSignatureValues.d.ts.map +1 -0
  504. package/dist/esm/sas/accountSasSignatureValues.js +55 -0
  505. package/dist/esm/sas/accountSasSignatureValues.js.map +1 -0
  506. package/dist/esm/sas/generateAccountSas.d.ts +54 -0
  507. package/dist/esm/sas/generateAccountSas.d.ts.map +1 -0
  508. package/dist/esm/sas/generateAccountSas.js +30 -0
  509. package/dist/esm/sas/generateAccountSas.js.map +1 -0
  510. package/dist/esm/sas/generateTableSas.d.ts +13 -0
  511. package/dist/esm/sas/generateTableSas.d.ts.map +1 -0
  512. package/dist/esm/sas/generateTableSas.js +35 -0
  513. package/dist/esm/sas/generateTableSas.js.map +1 -0
  514. package/dist/esm/sas/index.d.ts +9 -0
  515. package/dist/esm/sas/index.d.ts.map +1 -0
  516. package/dist/esm/sas/index.js +5 -0
  517. package/dist/esm/sas/index.js.map +1 -0
  518. package/dist/esm/sas/models.d.ts +34 -0
  519. package/dist/esm/sas/models.d.ts.map +1 -0
  520. package/dist/esm/sas/models.js +4 -0
  521. package/dist/esm/sas/models.js.map +1 -0
  522. package/dist/esm/sas/sasIPRange.d.ts +24 -0
  523. package/dist/esm/sas/sasIPRange.d.ts.map +1 -0
  524. package/dist/esm/sas/sasIPRange.js +16 -0
  525. package/dist/esm/sas/sasIPRange.js.map +1 -0
  526. package/dist/esm/sas/sasQueryParameters.d.ts +246 -0
  527. package/dist/esm/sas/sasQueryParameters.d.ts.map +1 -0
  528. package/dist/esm/sas/sasQueryParameters.js +193 -0
  529. package/dist/esm/sas/sasQueryParameters.js.map +1 -0
  530. package/dist/esm/sas/tableSasPermisions.d.ts +37 -0
  531. package/dist/esm/sas/tableSasPermisions.d.ts.map +1 -0
  532. package/dist/esm/sas/tableSasPermisions.js +56 -0
  533. package/dist/esm/sas/tableSasPermisions.js.map +1 -0
  534. package/dist/esm/sas/tableSasSignatureValues.d.ts +88 -0
  535. package/dist/esm/sas/tableSasSignatureValues.d.ts.map +1 -0
  536. package/dist/esm/sas/tableSasSignatureValues.js +74 -0
  537. package/dist/esm/sas/tableSasSignatureValues.js.map +1 -0
  538. package/dist/esm/secondaryEndpointPolicy.d.ts +17 -0
  539. package/dist/esm/secondaryEndpointPolicy.d.ts.map +1 -0
  540. package/dist/esm/secondaryEndpointPolicy.js +46 -0
  541. package/dist/esm/secondaryEndpointPolicy.js.map +1 -0
  542. package/dist/esm/serialization.d.ts +15 -0
  543. package/dist/esm/serialization.d.ts.map +1 -0
  544. package/dist/esm/serialization.js +215 -0
  545. package/dist/esm/serialization.js.map +1 -0
  546. package/dist/esm/tablesNamedCredentialPolicy.d.ts +12 -0
  547. package/dist/esm/tablesNamedCredentialPolicy.d.ts.map +1 -0
  548. package/{dist-esm/src → dist/esm}/tablesNamedCredentialPolicy.js +2 -2
  549. package/dist/esm/tablesNamedCredentialPolicy.js.map +1 -0
  550. package/dist/esm/tablesSASTokenPolicy.d.ts +12 -0
  551. package/dist/esm/tablesSASTokenPolicy.d.ts.map +1 -0
  552. package/dist/esm/tablesSASTokenPolicy.js +27 -0
  553. package/dist/esm/tablesSASTokenPolicy.js.map +1 -0
  554. package/dist/esm/utils/accountConnectionString.d.ts +11 -0
  555. package/dist/esm/utils/accountConnectionString.d.ts.map +1 -0
  556. package/dist/esm/utils/accountConnectionString.js.map +1 -0
  557. package/dist/esm/utils/apiVersionPolicy.d.ts +12 -0
  558. package/dist/esm/utils/apiVersionPolicy.d.ts.map +1 -0
  559. package/dist/esm/utils/apiVersionPolicy.js +21 -0
  560. package/dist/esm/utils/apiVersionPolicy.js.map +1 -0
  561. package/dist/esm/utils/baseTransactionHeaders.d.ts +7 -0
  562. package/dist/esm/utils/baseTransactionHeaders.d.ts.map +1 -0
  563. package/dist/esm/utils/baseTransactionHeaders.js +16 -0
  564. package/dist/esm/utils/baseTransactionHeaders.js.map +1 -0
  565. package/dist/esm/utils/bufferSerializer.d.ts +11 -0
  566. package/dist/esm/utils/bufferSerializer.d.ts.map +1 -0
  567. package/dist/esm/utils/challengeAuthenticationUtils.d.ts +8 -0
  568. package/dist/esm/utils/challengeAuthenticationUtils.d.ts.map +1 -0
  569. package/dist/esm/utils/challengeAuthenticationUtils.js +20 -0
  570. package/dist/esm/utils/challengeAuthenticationUtils.js.map +1 -0
  571. package/dist/esm/utils/computeHMACSHA256.d.ts +2 -0
  572. package/dist/esm/utils/computeHMACSHA256.d.ts.map +1 -0
  573. package/{dist-esm/src → dist/esm}/utils/computeHMACSHA256.js +1 -1
  574. package/{dist-esm/src → dist/esm}/utils/computeHMACSHA256.js.map +1 -1
  575. package/dist/esm/utils/connectionString.d.ts +21 -0
  576. package/dist/esm/utils/connectionString.d.ts.map +1 -0
  577. package/dist/esm/utils/connectionString.js +131 -0
  578. package/dist/esm/utils/connectionString.js.map +1 -0
  579. package/dist/esm/utils/constants.d.ts +17 -0
  580. package/dist/esm/utils/constants.d.ts.map +1 -0
  581. package/dist/esm/utils/constants.js +101 -0
  582. package/dist/esm/utils/constants.js.map +1 -0
  583. package/dist/esm/utils/continuationToken.d.ts +14 -0
  584. package/dist/esm/utils/continuationToken.d.ts.map +1 -0
  585. package/dist/esm/utils/continuationToken.js +26 -0
  586. package/dist/esm/utils/continuationToken.js.map +1 -0
  587. package/dist/esm/utils/errorHelpers.d.ts +23 -0
  588. package/dist/esm/utils/errorHelpers.d.ts.map +1 -0
  589. package/dist/esm/utils/errorHelpers.js +34 -0
  590. package/dist/esm/utils/errorHelpers.js.map +1 -0
  591. package/dist/esm/utils/internalModels.d.ts +134 -0
  592. package/dist/esm/utils/internalModels.d.ts.map +1 -0
  593. package/dist/esm/utils/internalModels.js +4 -0
  594. package/dist/esm/utils/internalModels.js.map +1 -0
  595. package/dist/esm/utils/isCosmosEndpoint.d.ts +2 -0
  596. package/dist/esm/utils/isCosmosEndpoint.d.ts.map +1 -0
  597. package/dist/esm/utils/isCosmosEndpoint.js +16 -0
  598. package/dist/esm/utils/isCosmosEndpoint.js.map +1 -0
  599. package/dist/esm/utils/isCredential.d.ts +3 -0
  600. package/dist/esm/utils/isCredential.d.ts.map +1 -0
  601. package/dist/esm/utils/isCredential.js +7 -0
  602. package/dist/esm/utils/isCredential.js.map +1 -0
  603. package/dist/esm/utils/tracing.d.ts +6 -0
  604. package/dist/esm/utils/tracing.d.ts.map +1 -0
  605. package/dist/esm/utils/tracing.js +13 -0
  606. package/dist/esm/utils/tracing.js.map +1 -0
  607. package/dist/esm/utils/transactionHeaders.d.ts +7 -0
  608. package/dist/esm/utils/transactionHeaders.d.ts.map +1 -0
  609. package/{dist-esm/src → dist/esm}/utils/transactionHeaders.js +1 -1
  610. package/dist/esm/utils/transactionHeaders.js.map +1 -0
  611. package/dist/esm/utils/transactionHelpers.d.ts +24 -0
  612. package/dist/esm/utils/transactionHelpers.d.ts.map +1 -0
  613. package/dist/esm/utils/transactionHelpers.js +43 -0
  614. package/dist/esm/utils/transactionHelpers.js.map +1 -0
  615. package/dist/esm/utils/truncateISO8061Date.d.ts +10 -0
  616. package/dist/esm/utils/truncateISO8061Date.d.ts.map +1 -0
  617. package/dist/esm/utils/truncateISO8061Date.js +18 -0
  618. package/dist/esm/utils/truncateISO8061Date.js.map +1 -0
  619. package/dist/esm/utils/uuid.d.ts +4 -0
  620. package/dist/esm/utils/uuid.d.ts.map +1 -0
  621. package/dist/esm/utils/uuid.js +11 -0
  622. package/dist/esm/utils/uuid.js.map +1 -0
  623. package/dist/react-native/TableClient.d.ts +436 -0
  624. package/dist/react-native/TableClient.d.ts.map +1 -0
  625. package/dist/react-native/TableClient.js +585 -0
  626. package/dist/react-native/TableClient.js.map +1 -0
  627. package/dist/react-native/TablePolicies.d.ts +6 -0
  628. package/dist/react-native/TablePolicies.d.ts.map +1 -0
  629. package/dist/react-native/TablePolicies.js +62 -0
  630. package/dist/react-native/TablePolicies.js.map +1 -0
  631. package/dist/react-native/TableServiceClient.d.ts +161 -0
  632. package/dist/react-native/TableServiceClient.d.ts.map +1 -0
  633. package/dist/react-native/TableServiceClient.js +214 -0
  634. package/dist/react-native/TableServiceClient.js.map +1 -0
  635. package/dist/react-native/TableTransaction.d.ts +114 -0
  636. package/dist/react-native/TableTransaction.d.ts.map +1 -0
  637. package/dist/react-native/TableTransaction.js +261 -0
  638. package/dist/react-native/TableTransaction.js.map +1 -0
  639. package/dist/react-native/cosmosPathPolicy.d.ts +3 -0
  640. package/dist/react-native/cosmosPathPolicy.d.ts.map +1 -0
  641. package/dist/react-native/cosmosPathPolicy.js +16 -0
  642. package/dist/react-native/cosmosPathPolicy.js.map +1 -0
  643. package/dist/react-native/generated/generatedClient.d.ts +17 -0
  644. package/dist/react-native/generated/generatedClient.d.ts.map +1 -0
  645. package/dist/react-native/generated/generatedClient.js +45 -0
  646. package/dist/react-native/generated/generatedClient.js.map +1 -0
  647. package/dist/react-native/generated/generatedClientContext.d.ts +14 -0
  648. package/dist/react-native/generated/generatedClientContext.d.ts.map +1 -0
  649. package/dist/react-native/generated/generatedClientContext.js +41 -0
  650. package/dist/react-native/generated/generatedClientContext.js.map +1 -0
  651. package/dist/react-native/generated/index.d.ts +4 -0
  652. package/dist/react-native/generated/index.d.ts.map +1 -0
  653. package/dist/react-native/generated/index.js +11 -0
  654. package/dist/react-native/generated/index.js.map +1 -0
  655. package/dist/react-native/generated/models/index.d.ts +603 -0
  656. package/dist/react-native/generated/models/index.d.ts.map +1 -0
  657. package/dist/react-native/generated/models/index.js +28 -0
  658. package/dist/react-native/generated/models/index.js.map +1 -0
  659. package/dist/react-native/generated/models/mappers.d.ts +47 -0
  660. package/dist/react-native/generated/models/mappers.d.ts.map +1 -0
  661. package/dist/react-native/generated/models/mappers.js +1331 -0
  662. package/dist/react-native/generated/models/mappers.js.map +1 -0
  663. package/dist/react-native/generated/models/parameters.d.ts +35 -0
  664. package/dist/react-native/generated/models/parameters.d.ts.map +1 -0
  665. package/dist/react-native/generated/models/parameters.js +361 -0
  666. package/dist/react-native/generated/models/parameters.js.map +1 -0
  667. package/dist/react-native/generated/operations/index.d.ts +3 -0
  668. package/dist/react-native/generated/operations/index.d.ts.map +1 -0
  669. package/dist/react-native/generated/operations/index.js +10 -0
  670. package/dist/react-native/generated/operations/index.js.map +1 -0
  671. package/dist/react-native/generated/operations/service.d.ts +32 -0
  672. package/dist/react-native/generated/operations/service.d.ts.map +1 -0
  673. package/dist/react-native/generated/operations/service.js +120 -0
  674. package/dist/react-native/generated/operations/service.js.map +1 -0
  675. package/dist/react-native/generated/operations/table.d.ts +90 -0
  676. package/dist/react-native/generated/operations/table.d.ts.map +1 -0
  677. package/dist/react-native/generated/operations/table.js +450 -0
  678. package/dist/react-native/generated/operations/table.js.map +1 -0
  679. package/dist/react-native/generated/operationsInterfaces/index.d.ts +3 -0
  680. package/dist/react-native/generated/operationsInterfaces/index.d.ts.map +1 -0
  681. package/dist/react-native/generated/operationsInterfaces/index.js +10 -0
  682. package/dist/react-native/generated/operationsInterfaces/index.js.map +1 -0
  683. package/dist/react-native/generated/operationsInterfaces/service.d.ts +24 -0
  684. package/dist/react-native/generated/operationsInterfaces/service.d.ts.map +1 -0
  685. package/dist/react-native/generated/operationsInterfaces/service.js +9 -0
  686. package/dist/react-native/generated/operationsInterfaces/service.js.map +1 -0
  687. package/dist/react-native/generated/operationsInterfaces/table.d.ts +82 -0
  688. package/dist/react-native/generated/operationsInterfaces/table.d.ts.map +1 -0
  689. package/dist/react-native/generated/operationsInterfaces/table.js +9 -0
  690. package/dist/react-native/generated/operationsInterfaces/table.js.map +1 -0
  691. package/dist/react-native/generatedModels.d.ts +2 -0
  692. package/dist/react-native/generatedModels.d.ts.map +1 -0
  693. package/dist/react-native/generatedModels.js +4 -0
  694. package/dist/react-native/generatedModels.js.map +1 -0
  695. package/dist/react-native/index.d.ts +10 -0
  696. package/dist/react-native/index.d.ts.map +1 -0
  697. package/dist/react-native/index.js +12 -0
  698. package/dist/react-native/index.js.map +1 -0
  699. package/dist/react-native/logger.d.ts +6 -0
  700. package/dist/react-native/logger.d.ts.map +1 -0
  701. package/dist/react-native/logger.js +8 -0
  702. package/dist/react-native/logger.js.map +1 -0
  703. package/dist/react-native/models.d.ts +247 -0
  704. package/dist/react-native/models.d.ts.map +1 -0
  705. package/dist/react-native/models.js +4 -0
  706. package/dist/react-native/models.js.map +1 -0
  707. package/dist/react-native/odata.d.ts +7 -0
  708. package/dist/react-native/odata.d.ts.map +1 -0
  709. package/dist/react-native/odata.js +37 -0
  710. package/dist/react-native/odata.js.map +1 -0
  711. package/dist/react-native/package.json +3 -0
  712. package/dist/react-native/sas/accountSasPermissions.d.ts +48 -0
  713. package/dist/react-native/sas/accountSasPermissions.d.ts.map +1 -0
  714. package/dist/react-native/sas/accountSasPermissions.js +71 -0
  715. package/dist/react-native/sas/accountSasPermissions.js.map +1 -0
  716. package/dist/react-native/sas/accountSasResourceTypes.d.ts +32 -0
  717. package/dist/react-native/sas/accountSasResourceTypes.d.ts.map +1 -0
  718. package/dist/react-native/sas/accountSasResourceTypes.js +47 -0
  719. package/dist/react-native/sas/accountSasResourceTypes.js.map +1 -0
  720. package/dist/react-native/sas/accountSasServices.d.ts +34 -0
  721. package/dist/react-native/sas/accountSasServices.d.ts.map +1 -0
  722. package/dist/react-native/sas/accountSasServices.js +51 -0
  723. package/dist/react-native/sas/accountSasServices.js.map +1 -0
  724. package/dist/react-native/sas/accountSasSignatureValues.d.ts +70 -0
  725. package/dist/react-native/sas/accountSasSignatureValues.d.ts.map +1 -0
  726. package/dist/react-native/sas/accountSasSignatureValues.js +55 -0
  727. package/dist/react-native/sas/accountSasSignatureValues.js.map +1 -0
  728. package/dist/react-native/sas/generateAccountSas.d.ts +54 -0
  729. package/dist/react-native/sas/generateAccountSas.d.ts.map +1 -0
  730. package/dist/react-native/sas/generateAccountSas.js +30 -0
  731. package/dist/react-native/sas/generateAccountSas.js.map +1 -0
  732. package/dist/react-native/sas/generateTableSas.d.ts +13 -0
  733. package/dist/react-native/sas/generateTableSas.d.ts.map +1 -0
  734. package/dist/react-native/sas/generateTableSas.js +35 -0
  735. package/dist/react-native/sas/generateTableSas.js.map +1 -0
  736. package/dist/react-native/sas/index.d.ts +9 -0
  737. package/dist/react-native/sas/index.d.ts.map +1 -0
  738. package/dist/react-native/sas/index.js +5 -0
  739. package/dist/react-native/sas/index.js.map +1 -0
  740. package/dist/react-native/sas/models.d.ts +34 -0
  741. package/dist/react-native/sas/models.d.ts.map +1 -0
  742. package/dist/react-native/sas/models.js +4 -0
  743. package/dist/react-native/sas/models.js.map +1 -0
  744. package/dist/react-native/sas/sasIPRange.d.ts +24 -0
  745. package/dist/react-native/sas/sasIPRange.d.ts.map +1 -0
  746. package/dist/react-native/sas/sasIPRange.js +16 -0
  747. package/dist/react-native/sas/sasIPRange.js.map +1 -0
  748. package/dist/react-native/sas/sasQueryParameters.d.ts +246 -0
  749. package/dist/react-native/sas/sasQueryParameters.d.ts.map +1 -0
  750. package/dist/react-native/sas/sasQueryParameters.js +193 -0
  751. package/dist/react-native/sas/sasQueryParameters.js.map +1 -0
  752. package/dist/react-native/sas/tableSasPermisions.d.ts +37 -0
  753. package/dist/react-native/sas/tableSasPermisions.d.ts.map +1 -0
  754. package/dist/react-native/sas/tableSasPermisions.js +56 -0
  755. package/dist/react-native/sas/tableSasPermisions.js.map +1 -0
  756. package/dist/react-native/sas/tableSasSignatureValues.d.ts +88 -0
  757. package/dist/react-native/sas/tableSasSignatureValues.d.ts.map +1 -0
  758. package/dist/react-native/sas/tableSasSignatureValues.js +74 -0
  759. package/dist/react-native/sas/tableSasSignatureValues.js.map +1 -0
  760. package/dist/react-native/secondaryEndpointPolicy.d.ts +17 -0
  761. package/dist/react-native/secondaryEndpointPolicy.d.ts.map +1 -0
  762. package/dist/react-native/secondaryEndpointPolicy.js +46 -0
  763. package/dist/react-native/secondaryEndpointPolicy.js.map +1 -0
  764. package/dist/react-native/serialization.d.ts +15 -0
  765. package/dist/react-native/serialization.d.ts.map +1 -0
  766. package/dist/react-native/serialization.js +215 -0
  767. package/dist/react-native/serialization.js.map +1 -0
  768. package/dist/react-native/tablesNamedCredentialPolicy.d.ts +12 -0
  769. package/dist/react-native/tablesNamedCredentialPolicy.d.ts.map +1 -0
  770. package/dist/react-native/tablesNamedCredentialPolicy.js +63 -0
  771. package/dist/react-native/tablesNamedCredentialPolicy.js.map +1 -0
  772. package/dist/react-native/tablesSASTokenPolicy.d.ts +12 -0
  773. package/dist/react-native/tablesSASTokenPolicy.d.ts.map +1 -0
  774. package/dist/react-native/tablesSASTokenPolicy.js +27 -0
  775. package/dist/react-native/tablesSASTokenPolicy.js.map +1 -0
  776. package/dist/react-native/utils/accountConnectionString.d.ts +11 -0
  777. package/dist/react-native/utils/accountConnectionString.d.ts.map +1 -0
  778. package/dist/react-native/utils/accountConnectionString.js +44 -0
  779. package/dist/react-native/utils/accountConnectionString.js.map +1 -0
  780. package/dist/react-native/utils/apiVersionPolicy.d.ts +12 -0
  781. package/dist/react-native/utils/apiVersionPolicy.d.ts.map +1 -0
  782. package/dist/react-native/utils/apiVersionPolicy.js +21 -0
  783. package/dist/react-native/utils/apiVersionPolicy.js.map +1 -0
  784. package/dist/react-native/utils/baseTransactionHeaders.d.ts +7 -0
  785. package/dist/react-native/utils/baseTransactionHeaders.d.ts.map +1 -0
  786. package/dist/react-native/utils/baseTransactionHeaders.js +16 -0
  787. package/dist/react-native/utils/baseTransactionHeaders.js.map +1 -0
  788. package/dist/react-native/utils/bufferSerializer.d.ts +11 -0
  789. package/dist/react-native/utils/bufferSerializer.d.ts.map +1 -0
  790. package/dist/react-native/utils/bufferSerializer.js +23 -0
  791. package/dist/react-native/utils/bufferSerializer.js.map +1 -0
  792. package/dist/react-native/utils/challengeAuthenticationUtils.d.ts +8 -0
  793. package/dist/react-native/utils/challengeAuthenticationUtils.d.ts.map +1 -0
  794. package/dist/react-native/utils/challengeAuthenticationUtils.js +20 -0
  795. package/dist/react-native/utils/challengeAuthenticationUtils.js.map +1 -0
  796. package/dist/react-native/utils/computeHMACSHA256.d.ts +2 -0
  797. package/dist/react-native/utils/computeHMACSHA256.d.ts.map +1 -0
  798. package/dist/react-native/utils/computeHMACSHA256.js +8 -0
  799. package/dist/react-native/utils/computeHMACSHA256.js.map +1 -0
  800. package/dist/react-native/utils/connectionString.d.ts +21 -0
  801. package/dist/react-native/utils/connectionString.d.ts.map +1 -0
  802. package/dist/react-native/utils/connectionString.js +131 -0
  803. package/dist/react-native/utils/connectionString.js.map +1 -0
  804. package/dist/react-native/utils/constants.d.ts +17 -0
  805. package/dist/react-native/utils/constants.d.ts.map +1 -0
  806. package/dist/react-native/utils/constants.js +101 -0
  807. package/dist/react-native/utils/constants.js.map +1 -0
  808. package/dist/react-native/utils/continuationToken.d.ts +14 -0
  809. package/dist/react-native/utils/continuationToken.d.ts.map +1 -0
  810. package/dist/react-native/utils/continuationToken.js +26 -0
  811. package/dist/react-native/utils/continuationToken.js.map +1 -0
  812. package/dist/react-native/utils/errorHelpers.d.ts +23 -0
  813. package/dist/react-native/utils/errorHelpers.d.ts.map +1 -0
  814. package/dist/react-native/utils/errorHelpers.js +34 -0
  815. package/dist/react-native/utils/errorHelpers.js.map +1 -0
  816. package/dist/react-native/utils/internalModels.d.ts +134 -0
  817. package/dist/react-native/utils/internalModels.d.ts.map +1 -0
  818. package/dist/react-native/utils/internalModels.js +4 -0
  819. package/dist/react-native/utils/internalModels.js.map +1 -0
  820. package/dist/react-native/utils/isCosmosEndpoint.d.ts +2 -0
  821. package/dist/react-native/utils/isCosmosEndpoint.d.ts.map +1 -0
  822. package/dist/react-native/utils/isCosmosEndpoint.js +16 -0
  823. package/dist/react-native/utils/isCosmosEndpoint.js.map +1 -0
  824. package/dist/react-native/utils/isCredential.d.ts +3 -0
  825. package/dist/react-native/utils/isCredential.d.ts.map +1 -0
  826. package/dist/react-native/utils/isCredential.js +7 -0
  827. package/dist/react-native/utils/isCredential.js.map +1 -0
  828. package/dist/react-native/utils/tracing.d.ts +6 -0
  829. package/dist/react-native/utils/tracing.d.ts.map +1 -0
  830. package/dist/react-native/utils/tracing.js +13 -0
  831. package/dist/react-native/utils/tracing.js.map +1 -0
  832. package/dist/react-native/utils/transactionHeaders.d.ts +7 -0
  833. package/dist/react-native/utils/transactionHeaders.d.ts.map +1 -0
  834. package/dist/react-native/utils/transactionHeaders.js +14 -0
  835. package/dist/react-native/utils/transactionHeaders.js.map +1 -0
  836. package/dist/react-native/utils/transactionHelpers.d.ts +24 -0
  837. package/dist/react-native/utils/transactionHelpers.d.ts.map +1 -0
  838. package/dist/react-native/utils/transactionHelpers.js +43 -0
  839. package/dist/react-native/utils/transactionHelpers.js.map +1 -0
  840. package/dist/react-native/utils/truncateISO8061Date.d.ts +10 -0
  841. package/dist/react-native/utils/truncateISO8061Date.d.ts.map +1 -0
  842. package/dist/react-native/utils/truncateISO8061Date.js +18 -0
  843. package/dist/react-native/utils/truncateISO8061Date.js.map +1 -0
  844. package/dist/react-native/utils/uuid.d.ts +4 -0
  845. package/dist/react-native/utils/uuid.d.ts.map +1 -0
  846. package/dist/react-native/utils/uuid.js +11 -0
  847. package/dist/react-native/utils/uuid.js.map +1 -0
  848. package/package.json +68 -66
  849. package/dist/index.js +0 -5044
  850. package/dist/index.js.map +0 -1
  851. package/dist-esm/src/TableClient.js.map +0 -1
  852. package/dist-esm/src/TablePolicies.js.map +0 -1
  853. package/dist-esm/src/TableServiceClient.js.map +0 -1
  854. package/dist-esm/src/TableTransaction.js.map +0 -1
  855. package/dist-esm/src/generated/generatedClient.js.map +0 -1
  856. package/dist-esm/src/generated/generatedClientContext.js.map +0 -1
  857. package/dist-esm/src/generated/index.js.map +0 -1
  858. package/dist-esm/src/generated/models/parameters.js.map +0 -1
  859. package/dist-esm/src/generated/operations/service.js.map +0 -1
  860. package/dist-esm/src/generated/operations/table.js.map +0 -1
  861. package/dist-esm/src/generated/operationsInterfaces/service.js.map +0 -1
  862. package/dist-esm/src/generated/operationsInterfaces/table.js.map +0 -1
  863. package/dist-esm/src/index.js +0 -12
  864. package/dist-esm/src/index.js.map +0 -1
  865. package/dist-esm/src/models.js.map +0 -1
  866. package/dist-esm/src/sas/accountSasSignatureValues.js.map +0 -1
  867. package/dist-esm/src/sas/generateAccountSas.js.map +0 -1
  868. package/dist-esm/src/sas/generateTableSas.js.map +0 -1
  869. package/dist-esm/src/sas/index.js +0 -5
  870. package/dist-esm/src/sas/index.js.map +0 -1
  871. package/dist-esm/src/sas/sasQueryParameters.js.map +0 -1
  872. package/dist-esm/src/sas/tableSasSignatureValues.js.map +0 -1
  873. package/dist-esm/src/serialization.js.map +0 -1
  874. package/dist-esm/src/tablesNamedCredentialPolicy.browser.js.map +0 -1
  875. package/dist-esm/src/tablesNamedCredentialPolicy.js.map +0 -1
  876. package/dist-esm/src/utils/accountConnectionString.browser.js.map +0 -1
  877. package/dist-esm/src/utils/accountConnectionString.js.map +0 -1
  878. package/dist-esm/src/utils/bufferSerializer.browser.js.map +0 -1
  879. package/dist-esm/src/utils/computeHMACSHA256.browser.js.map +0 -1
  880. package/dist-esm/src/utils/connectionString.js.map +0 -1
  881. package/dist-esm/src/utils/continuationToken.js.map +0 -1
  882. package/dist-esm/src/utils/errorHelpers.js.map +0 -1
  883. package/dist-esm/src/utils/internalModels.js.map +0 -1
  884. package/dist-esm/src/utils/transactionHeaders.browser.js.map +0 -1
  885. package/dist-esm/src/utils/transactionHeaders.js.map +0 -1
  886. package/dist-esm/src/utils/transactionHelpers.js.map +0 -1
  887. package/types/latest/data-tables.d.ts +0 -1412
  888. /package/{dist-esm/src → dist/browser}/cosmosPathPolicy.js +0 -0
  889. /package/{dist-esm/src → dist/browser}/cosmosPathPolicy.js.map +0 -0
  890. /package/{dist-esm/src → dist/browser}/generated/generatedClientContext.js +0 -0
  891. /package/{dist-esm/src → dist/browser}/generated/models/index.js +0 -0
  892. /package/{dist-esm/src → dist/browser}/generated/models/index.js.map +0 -0
  893. /package/{dist-esm/src → dist/browser}/generated/models/mappers.js +0 -0
  894. /package/{dist-esm/src → dist/browser}/generated/models/mappers.js.map +0 -0
  895. /package/{dist-esm/src → dist/browser}/generated/operationsInterfaces/service.js +0 -0
  896. /package/{dist-esm/src → dist/browser}/generated/operationsInterfaces/table.js +0 -0
  897. /package/{dist-esm/src → dist/browser}/logger.js +0 -0
  898. /package/{dist-esm/src → dist/browser}/logger.js.map +0 -0
  899. /package/{dist-esm/src → dist/browser}/models.js +0 -0
  900. /package/{dist-esm/src → dist/browser}/odata.js +0 -0
  901. /package/{dist-esm/src → dist/browser}/odata.js.map +0 -0
  902. /package/{dist-esm/src → dist/browser}/sas/accountSasPermissions.js +0 -0
  903. /package/{dist-esm/src → dist/browser}/sas/accountSasPermissions.js.map +0 -0
  904. /package/{dist-esm/src → dist/browser}/sas/accountSasResourceTypes.js +0 -0
  905. /package/{dist-esm/src → dist/browser}/sas/accountSasResourceTypes.js.map +0 -0
  906. /package/{dist-esm/src → dist/browser}/sas/accountSasServices.js +0 -0
  907. /package/{dist-esm/src → dist/browser}/sas/accountSasServices.js.map +0 -0
  908. /package/{dist-esm/src → dist/browser}/sas/models.js +0 -0
  909. /package/{dist-esm/src → dist/browser}/sas/models.js.map +0 -0
  910. /package/{dist-esm/src → dist/browser}/sas/sasIPRange.js +0 -0
  911. /package/{dist-esm/src → dist/browser}/sas/sasIPRange.js.map +0 -0
  912. /package/{dist-esm/src → dist/browser}/sas/tableSasPermisions.js +0 -0
  913. /package/{dist-esm/src → dist/browser}/sas/tableSasPermisions.js.map +0 -0
  914. /package/{dist-esm/src → dist/browser}/secondaryEndpointPolicy.js +0 -0
  915. /package/{dist-esm/src → dist/browser}/secondaryEndpointPolicy.js.map +0 -0
  916. /package/{dist-esm/src → dist/browser}/tablesSASTokenPolicy.js +0 -0
  917. /package/{dist-esm/src → dist/browser}/tablesSASTokenPolicy.js.map +0 -0
  918. /package/{dist-esm/src → dist/browser}/utils/apiVersionPolicy.js +0 -0
  919. /package/{dist-esm/src → dist/browser}/utils/apiVersionPolicy.js.map +0 -0
  920. /package/{dist-esm/src → dist/browser}/utils/baseTransactionHeaders.js +0 -0
  921. /package/{dist-esm/src → dist/browser}/utils/baseTransactionHeaders.js.map +0 -0
  922. /package/{dist-esm/src → dist/browser}/utils/challengeAuthenticationUtils.js +0 -0
  923. /package/{dist-esm/src → dist/browser}/utils/challengeAuthenticationUtils.js.map +0 -0
  924. /package/{dist-esm/src → dist/browser}/utils/constants.js +0 -0
  925. /package/{dist-esm/src → dist/browser}/utils/constants.js.map +0 -0
  926. /package/{dist-esm/src → dist/browser}/utils/errorHelpers.js +0 -0
  927. /package/{dist-esm/src → dist/browser}/utils/internalModels.js +0 -0
  928. /package/{dist-esm/src → dist/browser}/utils/isCosmosEndpoint.js +0 -0
  929. /package/{dist-esm/src → dist/browser}/utils/isCosmosEndpoint.js.map +0 -0
  930. /package/{dist-esm/src → dist/browser}/utils/isCredential.js +0 -0
  931. /package/{dist-esm/src → dist/browser}/utils/isCredential.js.map +0 -0
  932. /package/{dist-esm/src → dist/browser}/utils/tracing.js +0 -0
  933. /package/{dist-esm/src → dist/browser}/utils/tracing.js.map +0 -0
  934. /package/{dist-esm/src → dist/browser}/utils/truncateISO8061Date.js +0 -0
  935. /package/{dist-esm/src → dist/browser}/utils/truncateISO8061Date.js.map +0 -0
  936. /package/{dist-esm/src → dist/browser}/utils/uuid.js +0 -0
  937. /package/{dist-esm/src → dist/browser}/utils/uuid.js.map +0 -0
  938. /package/{types/latest → dist/commonjs}/tsdoc-metadata.json +0 -0
  939. /package/{dist-esm/src → dist/esm}/utils/accountConnectionString.js +0 -0
  940. /package/{dist-esm/src → dist/esm}/utils/bufferSerializer.js +0 -0
  941. /package/{dist-esm/src → dist/esm}/utils/bufferSerializer.js.map +0 -0
@@ -0,0 +1,197 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.SasQueryParameters = void 0;
6
+ const sasIPRange_js_1 = require("./sasIPRange.js");
7
+ const truncateISO8061Date_js_1 = require("../utils/truncateISO8061Date.js");
8
+ /**
9
+ * Represents the components that make up an Azure SAS' query parameters. This type is not constructed directly
10
+ * by the user; it is only generated by the {@link AccountSasSignatureValues} and {@link TableSasSignatureValues}
11
+ * types. Once generated, it can be encoded into a `string` and appended to a URL directly (though caution should
12
+ * be taken here in case there are existing query parameters, which might affect the appropriate means of appending
13
+ * these query parameters).
14
+ *
15
+ * NOTE: Instances of this class are immutable.
16
+ */
17
+ class SasQueryParameters {
18
+ /**
19
+ * Optional. IP range allowed for this SAS.
20
+ *
21
+ * @readonly
22
+ */
23
+ get ipRange() {
24
+ if (this.ipRangeInner) {
25
+ return {
26
+ end: this.ipRangeInner.end,
27
+ start: this.ipRangeInner.start,
28
+ };
29
+ }
30
+ return undefined;
31
+ }
32
+ /**
33
+ * Creates an instance of SASQueryParameters.
34
+ *
35
+ * @param version - Representing the table service version
36
+ * @param signature - Representing the signature for the SAS token
37
+ * @param options - Optional. Options to construct the SASQueryParameters.
38
+ */
39
+ constructor(version, signature, options = {}) {
40
+ this.version = version;
41
+ this.signature = signature;
42
+ this.permissions = options.permissions;
43
+ this.services = options.services;
44
+ this.resourceTypes = options.resourceTypes;
45
+ this.protocol = options.protocol;
46
+ this.startsOn = options.startsOn;
47
+ this.expiresOn = options.expiresOn;
48
+ this.ipRangeInner = options.ipRange;
49
+ this.identifier = options.identifier;
50
+ this.tableName = options.tableName;
51
+ this.endPartitionKey = options.endPartitionKey;
52
+ this.endRowKey = options.endRowKey;
53
+ this.startPartitionKey = options.startPartitionKey;
54
+ this.startRowKey = options.startRowKey;
55
+ if (options.userDelegationKey) {
56
+ this.signedOid = options.userDelegationKey.signedObjectId;
57
+ this.signedTenantId = options.userDelegationKey.signedTenantId;
58
+ this.signedStartsOn = options.userDelegationKey.signedStartsOn;
59
+ this.signedExpiresOn = options.userDelegationKey.signedExpiresOn;
60
+ this.signedService = options.userDelegationKey.signedService;
61
+ this.signedVersion = options.userDelegationKey.signedVersion;
62
+ this.preauthorizedAgentObjectId = options.preauthorizedAgentObjectId;
63
+ this.correlationId = options.correlationId;
64
+ }
65
+ }
66
+ /**
67
+ * Encodes all SAS query parameters into a string that can be appended to a URL.
68
+ *
69
+ */
70
+ toString() {
71
+ const params = [
72
+ "sv", // SignedVersion
73
+ "ss", // SignedServices
74
+ "srt", // SignedResourceTypes
75
+ "spr", // SignedProtocol
76
+ "st", // SignedStart
77
+ "se", // SignedExpiry
78
+ "sip", // SignedIP
79
+ "si", // SignedIdentifier
80
+ "skoid", // Signed object ID
81
+ "sktid", // Signed tenant ID
82
+ "skt", // Signed key start time
83
+ "ske", // Signed key expiry time
84
+ "sks", // Signed key service
85
+ "skv", // Signed key version
86
+ "sr", // signedResource
87
+ "sp", // SignedPermission
88
+ "sig", // Signature
89
+ "rscc", // Cache-Control
90
+ "rscd", // Content-Disposition
91
+ "rsce", // Content-Encoding
92
+ "rscl", // Content-Language
93
+ "rsct", // Content-Type
94
+ "saoid", // signedAuthorizedObjectId
95
+ "scid", // signedCorrelationId
96
+ "tn", // TableName,
97
+ "srk", // StartRowKey
98
+ "spk", // StartPartitionKey
99
+ "epk", // EndPartitionKey
100
+ "erk", // EndRowKey
101
+ ];
102
+ const queries = [];
103
+ for (const param of params) {
104
+ switch (param) {
105
+ case "sv":
106
+ this.tryAppendQueryParameter(queries, param, this.version);
107
+ break;
108
+ case "ss":
109
+ this.tryAppendQueryParameter(queries, param, this.services);
110
+ break;
111
+ case "srt":
112
+ this.tryAppendQueryParameter(queries, param, this.resourceTypes);
113
+ break;
114
+ case "spr":
115
+ this.tryAppendQueryParameter(queries, param, this.protocol);
116
+ break;
117
+ case "st":
118
+ this.tryAppendQueryParameter(queries, param, this.startsOn ? (0, truncateISO8061Date_js_1.truncatedISO8061Date)(this.startsOn, false) : undefined);
119
+ break;
120
+ case "se":
121
+ this.tryAppendQueryParameter(queries, param, this.expiresOn ? (0, truncateISO8061Date_js_1.truncatedISO8061Date)(this.expiresOn, false) : undefined);
122
+ break;
123
+ case "sip":
124
+ this.tryAppendQueryParameter(queries, param, this.ipRange ? (0, sasIPRange_js_1.ipRangeToString)(this.ipRange) : undefined);
125
+ break;
126
+ case "si":
127
+ this.tryAppendQueryParameter(queries, param, this.identifier);
128
+ break;
129
+ case "skoid": // Signed object ID
130
+ this.tryAppendQueryParameter(queries, param, this.signedOid);
131
+ break;
132
+ case "sktid": // Signed tenant ID
133
+ this.tryAppendQueryParameter(queries, param, this.signedTenantId);
134
+ break;
135
+ case "skt": // Signed key start time
136
+ this.tryAppendQueryParameter(queries, param, this.signedStartsOn ? (0, truncateISO8061Date_js_1.truncatedISO8061Date)(this.signedStartsOn, false) : undefined);
137
+ break;
138
+ case "ske": // Signed key expiry time
139
+ this.tryAppendQueryParameter(queries, param, this.signedExpiresOn ? (0, truncateISO8061Date_js_1.truncatedISO8061Date)(this.signedExpiresOn, false) : undefined);
140
+ break;
141
+ case "sks": // Signed key service
142
+ this.tryAppendQueryParameter(queries, param, this.signedService);
143
+ break;
144
+ case "skv": // Signed key version
145
+ this.tryAppendQueryParameter(queries, param, this.signedVersion);
146
+ break;
147
+ case "sp":
148
+ this.tryAppendQueryParameter(queries, param, this.permissions);
149
+ break;
150
+ case "sig":
151
+ this.tryAppendQueryParameter(queries, param, this.signature);
152
+ break;
153
+ case "saoid":
154
+ this.tryAppendQueryParameter(queries, param, this.preauthorizedAgentObjectId);
155
+ break;
156
+ case "scid":
157
+ this.tryAppendQueryParameter(queries, param, this.correlationId);
158
+ break;
159
+ case "tn":
160
+ this.tryAppendQueryParameter(queries, param, this.tableName);
161
+ break;
162
+ case "spk":
163
+ this.tryAppendQueryParameter(queries, param, this.startPartitionKey);
164
+ break;
165
+ case "srk":
166
+ this.tryAppendQueryParameter(queries, param, this.startRowKey);
167
+ break;
168
+ case "epk":
169
+ this.tryAppendQueryParameter(queries, param, this.endPartitionKey);
170
+ break;
171
+ case "erk":
172
+ this.tryAppendQueryParameter(queries, param, this.endRowKey);
173
+ break;
174
+ }
175
+ }
176
+ return queries.join("&");
177
+ }
178
+ /**
179
+ * A private helper method used to filter and append query key/value pairs into an array.
180
+ *
181
+ * @param queries -
182
+ * @param key -
183
+ * @param value -
184
+ */
185
+ tryAppendQueryParameter(queries, key, value) {
186
+ if (!value) {
187
+ return;
188
+ }
189
+ key = encodeURIComponent(key);
190
+ value = encodeURIComponent(value);
191
+ if (key.length > 0 && value.length > 0) {
192
+ queries.push(`${key}=${value}`);
193
+ }
194
+ }
195
+ }
196
+ exports.SasQueryParameters = SasQueryParameters;
197
+ //# sourceMappingURL=sasQueryParameters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sasQueryParameters.js","sourceRoot":"","sources":["../../../src/sas/sasQueryParameters.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { SasIPRange } from \"./sasIPRange.js\";\nimport { ipRangeToString } from \"./sasIPRange.js\";\nimport type { UserDelegationKey } from \"./models.js\";\nimport { truncatedISO8061Date } from \"../utils/truncateISO8061Date.js\";\n\n/**\n * Protocols for generated SAS.\n */\nexport type SasProtocol = \"https\" | \"https,http\";\n\n/**\n * Represents the components that make up an Azure SAS' query parameters. This type is not constructed directly\n * by the user; it is only generated by the {@link AccountSasSignatureValues} and {@link TableSasSignatureValues}\n * types. Once generated, it can be encoded into a `string` and appended to a URL directly (though caution should\n * be taken here in case there are existing query parameters, which might affect the appropriate means of appending\n * these query parameters).\n *\n * NOTE: Instances of this class are immutable.\n */\nexport class SasQueryParameters {\n /**\n * The Tables API version.\n */\n public readonly version: string;\n\n /**\n * Optional. Table name to generate the SAS for\n */\n public readonly tableName?: string;\n\n /**\n * Optional. The allowed HTTP protocol(s).\n */\n public readonly protocol?: SasProtocol;\n\n /**\n * Optional. The start time for this SAS token.\n */\n public readonly startsOn?: Date;\n\n /**\n * Optional only when identifier is provided. The expiry time for this SAS token.\n */\n public readonly expiresOn?: Date;\n\n /**\n * Optional only when identifier is provided.\n * Please refer to {@link AccountSasPermissions}, or {@link TableSasPermissions} for\n * more details.\n */\n public readonly permissions?: string;\n\n /**\n * Optional. The table services being accessed (only for Account SAS). Please refer to {@link AccountSasServices}\n * for more details.\n */\n public readonly services?: string;\n\n /**\n * Optional. The table resource types being accessed (only for Account SAS). Please refer to\n * {@link AccountSasResourceTypes} for more details.\n */\n public readonly resourceTypes?: string;\n\n /**\n * Optional. The signed identifier (only for {@link TableSasSignatureValues}).\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/establishing-a-stored-access-policy\n */\n public readonly identifier?: string;\n\n /**\n * The signature for the SAS token.\n */\n public readonly signature: string;\n\n /**\n * Inner value of getter ipRange.\n */\n private readonly ipRangeInner?: SasIPRange;\n\n /**\n * The Azure Active Directory object ID in GUID format.\n * Property of user delegation key.\n */\n private readonly signedOid?: string;\n\n /**\n * The Azure Active Directory tenant ID in GUID format.\n * Property of user delegation key.\n */\n private readonly signedTenantId?: string;\n\n /**\n * The date-time the key is active.\n * Property of user delegation key.\n */\n private readonly signedStartsOn?: Date;\n\n /**\n * The date-time the key expires.\n * Property of user delegation key.\n */\n private readonly signedExpiresOn?: Date;\n\n /**\n * Abbreviation of the Azure Table service that accepts the user delegation key.\n * Property of user delegation key.\n */\n private readonly signedService?: string;\n\n /**\n * The service version that created the user delegation key.\n * Property of user delegation key.\n */\n private readonly signedVersion?: string;\n\n /**\n * Authorized AAD Object ID in GUID format. The AAD Object ID of a user authorized by the owner of the User Delegation Key\n * to perform the action granted by the SAS. The Azure Table service will ensure that the owner of the user delegation key\n * has the required permissions before granting access but no additional permission check for the user specified in\n * this value will be performed. This is only used for User Delegation SAS.\n */\n public readonly preauthorizedAgentObjectId?: string;\n\n /**\n * A GUID value that will be logged in the table diagnostic logs and can be used to correlate SAS generation with table resource access.\n * This is only used for User Delegation SAS.\n */\n public readonly correlationId?: string;\n\n /**\n * Optional, but startPartitionKey must accompany startRowKey. The minimum partition and row keys that are accessible with this shared access signature.\n * Key values are inclusive. If they're omitted, there's no lower bound on the table entities that can be accessed.\n */\n public readonly startPartitionKey?: string;\n\n /**\n * Optional, but startPartitionKey must accompany startRowKey. The minimum partition and row keys that are accessible with this shared access signature.\n * Key values are inclusive. If they're omitted, there's no lower bound on the table entities that can be accessed.\n */\n public readonly startRowKey?: string;\n\n /**\n * Optional, but endPartitionKey must accompany endRowKey. The maximum partition and row keys that are accessible with this shared access signature.\n * Key values are inclusive. If they're omitted, there's no upper bound on the table entities that can be accessed.\n */\n public readonly endPartitionKey?: string;\n\n /**\n * Optional, but endPartitionKey must accompany endRowKey. The maximum partition and row keys that are accessible with this shared access signature.\n * Key values are inclusive. If they're omitted, there's no upper bound on the table entities that can be accessed.\n */\n public readonly endRowKey?: string;\n\n /**\n * Optional. IP range allowed for this SAS.\n *\n * @readonly\n */\n public get ipRange(): SasIPRange | undefined {\n if (this.ipRangeInner) {\n return {\n end: this.ipRangeInner.end,\n start: this.ipRangeInner.start,\n };\n }\n return undefined;\n }\n\n /**\n * Creates an instance of SASQueryParameters.\n *\n * @param version - Representing the table service version\n * @param signature - Representing the signature for the SAS token\n * @param options - Optional. Options to construct the SASQueryParameters.\n */\n constructor(version: string, signature: string, options: SasQueryParametersOptions = {}) {\n this.version = version;\n this.signature = signature;\n\n this.permissions = options.permissions;\n this.services = options.services;\n this.resourceTypes = options.resourceTypes;\n this.protocol = options.protocol;\n this.startsOn = options.startsOn;\n this.expiresOn = options.expiresOn;\n this.ipRangeInner = options.ipRange;\n this.identifier = options.identifier;\n this.tableName = options.tableName;\n this.endPartitionKey = options.endPartitionKey;\n this.endRowKey = options.endRowKey;\n this.startPartitionKey = options.startPartitionKey;\n this.startRowKey = options.startRowKey;\n\n if (options.userDelegationKey) {\n this.signedOid = options.userDelegationKey.signedObjectId;\n this.signedTenantId = options.userDelegationKey.signedTenantId;\n this.signedStartsOn = options.userDelegationKey.signedStartsOn;\n this.signedExpiresOn = options.userDelegationKey.signedExpiresOn;\n this.signedService = options.userDelegationKey.signedService;\n this.signedVersion = options.userDelegationKey.signedVersion;\n\n this.preauthorizedAgentObjectId = options.preauthorizedAgentObjectId;\n this.correlationId = options.correlationId;\n }\n }\n\n /**\n * Encodes all SAS query parameters into a string that can be appended to a URL.\n *\n */\n public toString(): string {\n const params: string[] = [\n \"sv\", // SignedVersion\n \"ss\", // SignedServices\n \"srt\", // SignedResourceTypes\n \"spr\", // SignedProtocol\n \"st\", // SignedStart\n \"se\", // SignedExpiry\n \"sip\", // SignedIP\n \"si\", // SignedIdentifier\n \"skoid\", // Signed object ID\n \"sktid\", // Signed tenant ID\n \"skt\", // Signed key start time\n \"ske\", // Signed key expiry time\n \"sks\", // Signed key service\n \"skv\", // Signed key version\n \"sr\", // signedResource\n \"sp\", // SignedPermission\n \"sig\", // Signature\n \"rscc\", // Cache-Control\n \"rscd\", // Content-Disposition\n \"rsce\", // Content-Encoding\n \"rscl\", // Content-Language\n \"rsct\", // Content-Type\n \"saoid\", // signedAuthorizedObjectId\n \"scid\", // signedCorrelationId\n \"tn\", // TableName,\n \"srk\", // StartRowKey\n \"spk\", // StartPartitionKey\n \"epk\", // EndPartitionKey\n \"erk\", // EndRowKey\n ];\n const queries: string[] = [];\n\n for (const param of params) {\n switch (param) {\n case \"sv\":\n this.tryAppendQueryParameter(queries, param, this.version);\n break;\n case \"ss\":\n this.tryAppendQueryParameter(queries, param, this.services);\n break;\n case \"srt\":\n this.tryAppendQueryParameter(queries, param, this.resourceTypes);\n break;\n case \"spr\":\n this.tryAppendQueryParameter(queries, param, this.protocol);\n break;\n case \"st\":\n this.tryAppendQueryParameter(\n queries,\n param,\n this.startsOn ? truncatedISO8061Date(this.startsOn, false) : undefined,\n );\n break;\n case \"se\":\n this.tryAppendQueryParameter(\n queries,\n param,\n this.expiresOn ? truncatedISO8061Date(this.expiresOn, false) : undefined,\n );\n break;\n case \"sip\":\n this.tryAppendQueryParameter(\n queries,\n param,\n this.ipRange ? ipRangeToString(this.ipRange) : undefined,\n );\n break;\n case \"si\":\n this.tryAppendQueryParameter(queries, param, this.identifier);\n break;\n case \"skoid\": // Signed object ID\n this.tryAppendQueryParameter(queries, param, this.signedOid);\n break;\n case \"sktid\": // Signed tenant ID\n this.tryAppendQueryParameter(queries, param, this.signedTenantId);\n break;\n case \"skt\": // Signed key start time\n this.tryAppendQueryParameter(\n queries,\n param,\n this.signedStartsOn ? truncatedISO8061Date(this.signedStartsOn, false) : undefined,\n );\n break;\n case \"ske\": // Signed key expiry time\n this.tryAppendQueryParameter(\n queries,\n param,\n this.signedExpiresOn ? truncatedISO8061Date(this.signedExpiresOn, false) : undefined,\n );\n break;\n case \"sks\": // Signed key service\n this.tryAppendQueryParameter(queries, param, this.signedService);\n break;\n case \"skv\": // Signed key version\n this.tryAppendQueryParameter(queries, param, this.signedVersion);\n break;\n case \"sp\":\n this.tryAppendQueryParameter(queries, param, this.permissions);\n break;\n case \"sig\":\n this.tryAppendQueryParameter(queries, param, this.signature);\n break;\n case \"saoid\":\n this.tryAppendQueryParameter(queries, param, this.preauthorizedAgentObjectId);\n break;\n case \"scid\":\n this.tryAppendQueryParameter(queries, param, this.correlationId);\n break;\n case \"tn\":\n this.tryAppendQueryParameter(queries, param, this.tableName);\n break;\n case \"spk\":\n this.tryAppendQueryParameter(queries, param, this.startPartitionKey);\n break;\n case \"srk\":\n this.tryAppendQueryParameter(queries, param, this.startRowKey);\n break;\n case \"epk\":\n this.tryAppendQueryParameter(queries, param, this.endPartitionKey);\n break;\n case \"erk\":\n this.tryAppendQueryParameter(queries, param, this.endRowKey);\n break;\n }\n }\n return queries.join(\"&\");\n }\n\n /**\n * A private helper method used to filter and append query key/value pairs into an array.\n *\n * @param queries -\n * @param key -\n * @param value -\n */\n private tryAppendQueryParameter(queries: string[], key: string, value?: string): void {\n if (!value) {\n return;\n }\n\n key = encodeURIComponent(key);\n value = encodeURIComponent(value);\n if (key.length > 0 && value.length > 0) {\n queries.push(`${key}=${value}`);\n }\n }\n}\n\n/**\n * Options to construct {@link SasQueryParameters}.\n */\nexport interface SasQueryParametersOptions {\n /**\n * Optional only when identifier is provided.\n * Please refer to {@link AccountSasPermissions}, or {@link TableSasPermissions} for\n * more details.\n */\n permissions?: string;\n /**\n * Optional. Table name to generate the SAS for\n */\n tableName?: string;\n /**\n * Optional. The storage services being accessed (only for Account SAS). Please refer to {@link AccountSasServices}\n * for more details.\n */\n services?: string;\n /**\n * Optional. The storage resource types being accessed (only for Account SAS). Please refer to\n * {@link AccountSasResourceTypes} for more details.\n */\n resourceTypes?: string;\n /**\n * Optional. The allowed HTTP protocol(s).\n */\n protocol?: SasProtocol;\n /**\n * Optional. The start time for this SAS token.\n */\n startsOn?: Date;\n /**\n * Optional only when identifier is provided. The expiry time for this SAS token.\n */\n expiresOn?: Date;\n /**\n * Optional. IP ranges allowed in this SAS.\n */\n ipRange?: SasIPRange;\n /**\n * Optional. The signed identifier for access policy\n *\n * @see https://docs.microsoft.com/rest/api/storageservices/establishing-a-stored-access-policy\n */\n identifier?: string;\n /**\n * Optional. Specifies which resources are accessible via the SAS (only for {@link AccountSasSignatureValues}).\n * @see https://docs.microsoft.com/rest/api/storageservices/create-service-sas#specifying-the-signed-resource-blob-service-only\n */\n resource?: string;\n /**\n * User delegation key properties.\n */\n userDelegationKey?: UserDelegationKey;\n /**\n * Authorized AAD Object ID in GUID format. The AAD Object ID of a user authorized by the owner of the User Delegation Key\n * to perform the action granted by the SAS. The Azure Table service will ensure that the owner of the user delegation key\n * has the required permissions before granting access but no additional permission check for the user specified in\n * this value will be performed. This cannot be used in conjuction with {@link signedUnauthorizedUserObjectId}.\n * This is only used for User Delegation SAS.\n */\n preauthorizedAgentObjectId?: string;\n /**\n * A GUID value that will be logged in the storage diagnostic logs and can be used to correlate SAS generation with storage resource access.\n * This is only used for User Delegation SAS.\n */\n correlationId?: string;\n\n /**\n * Optional, but startPartitionKey must accompany startRowKey. The minimum partition and row keys that are accessible with this shared access signature.\n * Key values are inclusive. If they're omitted, there's no lower bound on the table entities that can be accessed.\n */\n startPartitionKey?: string;\n\n /**\n * Optional, but startPartitionKey must accompany startRowKey. The minimum partition and row keys that are accessible with this shared access signature.\n * Key values are inclusive. If they're omitted, there's no lower bound on the table entities that can be accessed.\n */\n startRowKey?: string;\n\n /**\n * Optional, but endPartitionKey must accompany endRowKey. The maximum partition and row keys that are accessible with this shared access signature.\n * Key values are inclusive. If they're omitted, there's no upper bound on the table entities that can be accessed.\n */\n endPartitionKey?: string;\n\n /**\n * Optional, but endPartitionKey must accompany endRowKey. The maximum partition and row keys that are accessible with this shared access signature.\n * Key values are inclusive. If they're omitted, there's no upper bound on the table entities that can be accessed.\n */\n endRowKey?: string;\n}\n"]}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Creates a {@link TableSasPermissions} from the specified permissions string. This method will throw an
3
+ * Error if it encounters a character that does not correspond to a valid permission.
4
+ *
5
+ * @param permissions -
6
+ */
7
+ export declare function tableSasPermissionsFromString(permissions: string): TableSasPermissions;
8
+ /**
9
+ * Converts the given permissions to a string. Using this method will guarantee the permissions are in an
10
+ * order accepted by the service.
11
+ *
12
+ * @returns A string which represents the TableSasPermissions
13
+ */
14
+ export declare function tableSasPermissionsToString(permissions?: TableSasPermissions): string;
15
+ /**
16
+ * A type that looks like a Table SAS permission.
17
+ * Used in {@link TableSasPermissions} to parse SAS permissions from raw objects.
18
+ */
19
+ export interface TableSasPermissions {
20
+ /**
21
+ * Specifies Query access granted.
22
+ */
23
+ query?: boolean;
24
+ /**
25
+ * Specifies Add access granted.
26
+ */
27
+ add?: boolean;
28
+ /**
29
+ * Specifies Update access granted.
30
+ */
31
+ update?: boolean;
32
+ /**
33
+ * Specifies Delete access granted.
34
+ */
35
+ delete?: boolean;
36
+ }
37
+ //# sourceMappingURL=tableSasPermisions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableSasPermisions.d.ts","sourceRoot":"","sources":["../../../src/sas/tableSasPermisions.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,MAAM,GAAG,mBAAmB,CAsBtF;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,CAAC,EAAE,mBAAmB,GAAG,MAAM,CAoBrF;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.tableSasPermissionsFromString = tableSasPermissionsFromString;
6
+ exports.tableSasPermissionsToString = tableSasPermissionsToString;
7
+ /**
8
+ * Creates a {@link TableSasPermissions} from the specified permissions string. This method will throw an
9
+ * Error if it encounters a character that does not correspond to a valid permission.
10
+ *
11
+ * @param permissions -
12
+ */
13
+ function tableSasPermissionsFromString(permissions) {
14
+ const tableSasPermissions = {};
15
+ for (const char of permissions) {
16
+ switch (char) {
17
+ case "r":
18
+ tableSasPermissions.query = true;
19
+ break;
20
+ case "a":
21
+ tableSasPermissions.add = true;
22
+ break;
23
+ case "u":
24
+ tableSasPermissions.update = true;
25
+ break;
26
+ case "d":
27
+ tableSasPermissions.delete = true;
28
+ break;
29
+ default:
30
+ throw new RangeError(`Invalid permission: ${char}`);
31
+ }
32
+ }
33
+ return tableSasPermissions;
34
+ }
35
+ /**
36
+ * Converts the given permissions to a string. Using this method will guarantee the permissions are in an
37
+ * order accepted by the service.
38
+ *
39
+ * @returns A string which represents the TableSasPermissions
40
+ */
41
+ function tableSasPermissionsToString(permissions) {
42
+ if (!permissions) {
43
+ return "";
44
+ }
45
+ const permissionsString = [];
46
+ if (permissions.query) {
47
+ permissionsString.push("r");
48
+ }
49
+ if (permissions.add) {
50
+ permissionsString.push("a");
51
+ }
52
+ if (permissions.update) {
53
+ permissionsString.push("u");
54
+ }
55
+ if (permissions.delete) {
56
+ permissionsString.push("d");
57
+ }
58
+ return permissionsString.join("");
59
+ }
60
+ //# sourceMappingURL=tableSasPermisions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableSasPermisions.js","sourceRoot":"","sources":["../../../src/sas/tableSasPermisions.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAQlC,sEAsBC;AAQD,kEAoBC;AAxDD;;;;;GAKG;AACH,SAAgB,6BAA6B,CAAC,WAAmB;IAC/D,MAAM,mBAAmB,GAAwB,EAAE,CAAC;IACpD,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,GAAG;gBACN,mBAAmB,CAAC,KAAK,GAAG,IAAI,CAAC;gBACjC,MAAM;YACR,KAAK,GAAG;gBACN,mBAAmB,CAAC,GAAG,GAAG,IAAI,CAAC;gBAC/B,MAAM;YACR,KAAK,GAAG;gBACN,mBAAmB,CAAC,MAAM,GAAG,IAAI,CAAC;gBAClC,MAAM;YACR,KAAK,GAAG;gBACN,mBAAmB,CAAC,MAAM,GAAG,IAAI,CAAC;gBAClC,MAAM;YACR;gBACE,MAAM,IAAI,UAAU,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED;;;;;GAKG;AACH,SAAgB,2BAA2B,CAAC,WAAiC;IAC3E,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,iBAAiB,GAAa,EAAE,CAAC;IACvC,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;QACtB,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,WAAW,CAAC,GAAG,EAAE,CAAC;QACpB,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;QACvB,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;QACvB,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACpC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Creates a {@link TableSasPermissions} 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 */\nexport function tableSasPermissionsFromString(permissions: string): TableSasPermissions {\n const tableSasPermissions: TableSasPermissions = {};\n for (const char of permissions) {\n switch (char) {\n case \"r\":\n tableSasPermissions.query = true;\n break;\n case \"a\":\n tableSasPermissions.add = true;\n break;\n case \"u\":\n tableSasPermissions.update = true;\n break;\n case \"d\":\n tableSasPermissions.delete = true;\n break;\n default:\n throw new RangeError(`Invalid permission: ${char}`);\n }\n }\n\n return tableSasPermissions;\n}\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 TableSasPermissions\n */\nexport function tableSasPermissionsToString(permissions?: TableSasPermissions): string {\n if (!permissions) {\n return \"\";\n }\n\n const permissionsString: string[] = [];\n if (permissions.query) {\n permissionsString.push(\"r\");\n }\n if (permissions.add) {\n permissionsString.push(\"a\");\n }\n if (permissions.update) {\n permissionsString.push(\"u\");\n }\n\n if (permissions.delete) {\n permissionsString.push(\"d\");\n }\n return permissionsString.join(\"\");\n}\n\n/**\n * A type that looks like a Table SAS permission.\n * Used in {@link TableSasPermissions} to parse SAS permissions from raw objects.\n */\nexport interface TableSasPermissions {\n /**\n * Specifies Query access granted.\n */\n query?: boolean;\n\n /**\n * Specifies Add access granted.\n */\n add?: boolean;\n\n /**\n * Specifies Update access granted.\n */\n update?: boolean;\n\n /**\n * Specifies Delete access granted.\n */\n delete?: boolean;\n}\n"]}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * ONLY AVAILABLE IN NODE.JS RUNTIME.
3
+ *
4
+ * TableSASSignatureValues is used to help generating SAS tokens for tables.
5
+ */
6
+ import type { SasIPRange } from "./sasIPRange.js";
7
+ import type { SasProtocol } from "./sasQueryParameters.js";
8
+ import { SasQueryParameters } from "./sasQueryParameters.js";
9
+ import type { TableSasPermissions } from "./tableSasPermisions.js";
10
+ import type { NamedKeyCredential } from "@azure/core-auth";
11
+ /**
12
+ * ONLY AVAILABLE IN NODE.JS RUNTIME.
13
+ *
14
+ * TableSASSignatureValues is used to help generating Table service SAS tokens for tables
15
+ */
16
+ export interface TableSasSignatureValues {
17
+ /**
18
+ * The version of the service this SAS will target. If not specified, it will default to the version targeted by the
19
+ * library.
20
+ */
21
+ version?: string;
22
+ /**
23
+ * Optional. SAS protocols, HTTPS only or HTTPSandHTTP
24
+ */
25
+ protocol?: SasProtocol;
26
+ /**
27
+ * Optional. When the SAS will take effect.
28
+ */
29
+ startsOn?: Date;
30
+ /**
31
+ * Optional. If identifier is not provided has a default value of one hour from the time the token is generated.
32
+ * The time after which the SAS will no longer work.
33
+ */
34
+ expiresOn?: Date;
35
+ /**
36
+ * Optional. If identifier is not provided has a default value of "read"
37
+ * Please refer to {@link TableSasPermissions} depending on the resource
38
+ * being accessed for help constructing the permissions string.
39
+ */
40
+ permissions?: TableSasPermissions;
41
+ /**
42
+ * Optional. IP ranges allowed in this SAS.
43
+ */
44
+ ipRange?: SasIPRange;
45
+ /**
46
+ * Optional. The name of the access policy on the container this SAS references if any.
47
+ *
48
+ * @see https://docs.microsoft.com/en-us/rest/api/storageservices/establishing-a-stored-access-policy
49
+ */
50
+ identifier?: string;
51
+ /**
52
+ * Define the start of a Partition Key range
53
+ * Table queries will only return results that are within the range, and attempts to use the shared access signature to add, update, or delete entities outside this range will fail.
54
+ * If startPartitionKey equals endPartitionKey the shared access signature only authorizes access to entities in one partition in the table.
55
+ * If startPartitionKey equals endPartitionKey and startRowKey equals endRowKey, the shared access signature can only access one entity in one partition
56
+ */
57
+ startPartitionKey?: string;
58
+ /**
59
+ * Define the end of a Partition Key range
60
+ * Table queries will only return results that are within the range, and attempts to use the shared access signature to add, update, or delete entities outside this range will fail.
61
+ * If startPartitionKey equals endPartitionKey the shared access signature only authorizes access to entities in one partition in the table.
62
+ * If startPartitionKey equals endPartitionKey and startRowKey equals endRowKey, the shared access signature can only access one entity in one partition
63
+ */
64
+ endPartitionKey?: string;
65
+ /**
66
+ * Define the start of a Row Key range
67
+ * Table queries will only return results that are within the range, and attempts to use the shared access signature to add, update, or delete entities outside this range will fail.
68
+ * If startPartitionKey equals endPartitionKey the shared access signature only authorizes access to entities in one partition in the table.
69
+ * If startPartitionKey equals endPartitionKey and startRowKey equals endRowKey, the shared access signature can only access one entity in one partition
70
+ */
71
+ startRowKey?: string;
72
+ /**
73
+ * Define the end of a Row Key range
74
+ * Table queries will only return results that are within the range, and attempts to use the shared access signature to add, update, or delete entities outside this range will fail.
75
+ * If startPartitionKey equals endPartitionKey the shared access signature only authorizes access to entities in one partition in the table.
76
+ * If startPartitionKey equals endPartitionKey and startRowKey equals endRowKey, the shared access signature can only access one entity in one partition
77
+ */
78
+ endRowKey?: string;
79
+ }
80
+ /**
81
+ * ONLY AVAILABLE IN NODE.JS RUNTIME.
82
+ *
83
+ * Creates an instance of SASQueryParameters.
84
+ *
85
+ * **Note**: When identifier is not provided, permissions has a default value of "read" and expiresOn of one hour from the time the token is generated.
86
+ */
87
+ export declare function generateTableSasQueryParameters(tableName: string, credential: NamedKeyCredential, tableSasSignatureValues: TableSasSignatureValues): SasQueryParameters;
88
+ //# sourceMappingURL=tableSasSignatureValues.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableSasSignatureValues.d.ts","sourceRoot":"","sources":["../../../src/sas/tableSasSignatureValues.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAK3D;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,EAAE,WAAW,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,IAAI,CAAC;IAEhB;;;OAGG;IACH,SAAS,CAAC,EAAE,IAAI,CAAC;IAEjB;;;;OAIG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC;;OAEG;IACH,OAAO,CAAC,EAAE,UAAU,CAAC;IAErB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,kBAAkB,EAC9B,uBAAuB,EAAE,uBAAuB,GAC/C,kBAAkB,CAyDpB"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.generateTableSasQueryParameters = generateTableSasQueryParameters;
6
+ const sasIPRange_js_1 = require("./sasIPRange.js");
7
+ const sasQueryParameters_js_1 = require("./sasQueryParameters.js");
8
+ const tableSasPermisions_js_1 = require("./tableSasPermisions.js");
9
+ const constants_js_1 = require("../utils/constants.js");
10
+ const computeHMACSHA256_js_1 = require("../utils/computeHMACSHA256.js");
11
+ const truncateISO8061Date_js_1 = require("../utils/truncateISO8061Date.js");
12
+ /**
13
+ * ONLY AVAILABLE IN NODE.JS RUNTIME.
14
+ *
15
+ * Creates an instance of SASQueryParameters.
16
+ *
17
+ * **Note**: When identifier is not provided, permissions has a default value of "read" and expiresOn of one hour from the time the token is generated.
18
+ */
19
+ function generateTableSasQueryParameters(tableName, credential, tableSasSignatureValues) {
20
+ var _a, _b, _c, _d, _e, _f;
21
+ const version = (_a = tableSasSignatureValues.version) !== null && _a !== void 0 ? _a : constants_js_1.SERVICE_VERSION;
22
+ if (credential === undefined) {
23
+ throw TypeError("Invalid NamedKeyCredential");
24
+ }
25
+ if (!tableName) {
26
+ throw new Error("Must provide a 'tableName'");
27
+ }
28
+ const signedPermissions = (0, tableSasPermisions_js_1.tableSasPermissionsToString)(tableSasSignatureValues.permissions);
29
+ const signedStart = tableSasSignatureValues.startsOn
30
+ ? (0, truncateISO8061Date_js_1.truncatedISO8061Date)(tableSasSignatureValues.startsOn, false /** withMilliseconds */)
31
+ : "";
32
+ const signedExpiry = tableSasSignatureValues.expiresOn
33
+ ? (0, truncateISO8061Date_js_1.truncatedISO8061Date)(tableSasSignatureValues.expiresOn, false /** withMilliseconds */)
34
+ : "";
35
+ const canonicalizedResource = getCanonicalName(credential.name, tableName);
36
+ const signedIdentifier = (_b = tableSasSignatureValues.identifier) !== null && _b !== void 0 ? _b : "";
37
+ const signedIP = (0, sasIPRange_js_1.ipRangeToString)(tableSasSignatureValues.ipRange);
38
+ const signedProtocol = tableSasSignatureValues.protocol || "";
39
+ const startingPartitionKey = (_c = tableSasSignatureValues.startPartitionKey) !== null && _c !== void 0 ? _c : "";
40
+ const startingRowKey = (_d = tableSasSignatureValues.startRowKey) !== null && _d !== void 0 ? _d : "";
41
+ const endingPartitionKey = (_e = tableSasSignatureValues.endPartitionKey) !== null && _e !== void 0 ? _e : "";
42
+ const endingRowKey = (_f = tableSasSignatureValues.endRowKey) !== null && _f !== void 0 ? _f : "";
43
+ const stringToSign = [
44
+ signedPermissions,
45
+ signedStart,
46
+ signedExpiry,
47
+ canonicalizedResource,
48
+ signedIdentifier,
49
+ signedIP,
50
+ signedProtocol,
51
+ version,
52
+ startingPartitionKey,
53
+ startingRowKey,
54
+ endingPartitionKey,
55
+ endingRowKey,
56
+ ].join("\n");
57
+ const signature = (0, computeHMACSHA256_js_1.computeHMACSHA256)(stringToSign, credential.key);
58
+ return new sasQueryParameters_js_1.SasQueryParameters(version, signature, {
59
+ permissions: signedPermissions,
60
+ protocol: tableSasSignatureValues.protocol,
61
+ startsOn: tableSasSignatureValues.startsOn,
62
+ expiresOn: tableSasSignatureValues.expiresOn,
63
+ ipRange: tableSasSignatureValues.ipRange,
64
+ identifier: tableSasSignatureValues.identifier,
65
+ tableName,
66
+ startPartitionKey: tableSasSignatureValues.startPartitionKey,
67
+ startRowKey: tableSasSignatureValues.startRowKey,
68
+ endPartitionKey: tableSasSignatureValues.endPartitionKey,
69
+ endRowKey: tableSasSignatureValues.endRowKey,
70
+ });
71
+ }
72
+ function getCanonicalName(accountName, tableName) {
73
+ // Sample CanonicalName for URL = https://myaccount.table.core.windows.net/Employees(PartitionKey='Jeff',RowKey='Price'):
74
+ // canonicalizedResource = "/table/myaccount/employees"
75
+ return `/table/${accountName}/${tableName.toLowerCase()}`;
76
+ }
77
+ //# sourceMappingURL=tableSasSignatureValues.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableSasSignatureValues.js","sourceRoot":"","sources":["../../../src/sas/tableSasSignatureValues.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 * TableSASSignatureValues is used to help generating SAS tokens for tables.\n */\n\nimport type { SasIPRange } from \"./sasIPRange.js\";\nimport { ipRangeToString } from \"./sasIPRange.js\";\nimport type { SasProtocol } from \"./sasQueryParameters.js\";\nimport { SasQueryParameters } from \"./sasQueryParameters.js\";\nimport type { TableSasPermissions } from \"./tableSasPermisions.js\";\nimport { tableSasPermissionsToString } from \"./tableSasPermisions.js\";\nimport type { NamedKeyCredential } from \"@azure/core-auth\";\nimport { SERVICE_VERSION } from \"../utils/constants.js\";\nimport { computeHMACSHA256 } from \"../utils/computeHMACSHA256.js\";\nimport { truncatedISO8061Date } from \"../utils/truncateISO8061Date.js\";\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * TableSASSignatureValues is used to help generating Table service SAS tokens for tables\n */\nexport interface TableSasSignatureValues {\n /**\n * The version of the service this SAS will target. If not specified, it will default to the version targeted by the\n * library.\n */\n version?: string;\n\n /**\n * Optional. SAS protocols, HTTPS only or HTTPSandHTTP\n */\n protocol?: SasProtocol;\n\n /**\n * Optional. When the SAS will take effect.\n */\n startsOn?: Date;\n\n /**\n * Optional. If identifier is not provided has a default value of one hour from the time the token is generated.\n * The time after which the SAS will no longer work.\n */\n expiresOn?: Date;\n\n /**\n * Optional. If identifier is not provided has a default value of \"read\"\n * Please refer to {@link TableSasPermissions} depending on the resource\n * being accessed for help constructing the permissions string.\n */\n permissions?: TableSasPermissions;\n /**\n * Optional. IP ranges allowed in this SAS.\n */\n ipRange?: SasIPRange;\n\n /**\n * Optional. The name of the access policy on the container this SAS references if any.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/establishing-a-stored-access-policy\n */\n identifier?: string;\n\n /**\n * Define the start of a Partition Key range\n * Table queries will only return results that are within the range, and attempts to use the shared access signature to add, update, or delete entities outside this range will fail.\n * If startPartitionKey equals endPartitionKey the shared access signature only authorizes access to entities in one partition in the table.\n * If startPartitionKey equals endPartitionKey and startRowKey equals endRowKey, the shared access signature can only access one entity in one partition\n */\n startPartitionKey?: string;\n /**\n * Define the end of a Partition Key range\n * Table queries will only return results that are within the range, and attempts to use the shared access signature to add, update, or delete entities outside this range will fail.\n * If startPartitionKey equals endPartitionKey the shared access signature only authorizes access to entities in one partition in the table.\n * If startPartitionKey equals endPartitionKey and startRowKey equals endRowKey, the shared access signature can only access one entity in one partition\n */\n endPartitionKey?: string;\n /**\n * Define the start of a Row Key range\n * Table queries will only return results that are within the range, and attempts to use the shared access signature to add, update, or delete entities outside this range will fail.\n * If startPartitionKey equals endPartitionKey the shared access signature only authorizes access to entities in one partition in the table.\n * If startPartitionKey equals endPartitionKey and startRowKey equals endRowKey, the shared access signature can only access one entity in one partition\n */\n startRowKey?: string;\n /**\n * Define the end of a Row Key range\n * Table queries will only return results that are within the range, and attempts to use the shared access signature to add, update, or delete entities outside this range will fail.\n * If startPartitionKey equals endPartitionKey the shared access signature only authorizes access to entities in one partition in the table.\n * If startPartitionKey equals endPartitionKey and startRowKey equals endRowKey, the shared access signature can only access one entity in one partition\n */\n endRowKey?: string;\n}\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * Creates an instance of SASQueryParameters.\n *\n * **Note**: When identifier is not provided, permissions has a default value of \"read\" and expiresOn of one hour from the time the token is generated.\n */\nexport function generateTableSasQueryParameters(\n tableName: string,\n credential: NamedKeyCredential,\n tableSasSignatureValues: TableSasSignatureValues,\n): SasQueryParameters {\n const version = tableSasSignatureValues.version ?? SERVICE_VERSION;\n\n if (credential === undefined) {\n throw TypeError(\"Invalid NamedKeyCredential\");\n }\n\n if (!tableName) {\n throw new Error(\"Must provide a 'tableName'\");\n }\n\n const signedPermissions = tableSasPermissionsToString(tableSasSignatureValues.permissions);\n const signedStart = tableSasSignatureValues.startsOn\n ? truncatedISO8061Date(tableSasSignatureValues.startsOn, false /** withMilliseconds */)\n : \"\";\n const signedExpiry = tableSasSignatureValues.expiresOn\n ? truncatedISO8061Date(tableSasSignatureValues.expiresOn, false /** withMilliseconds */)\n : \"\";\n const canonicalizedResource = getCanonicalName(credential.name, tableName);\n const signedIdentifier = tableSasSignatureValues.identifier ?? \"\";\n const signedIP = ipRangeToString(tableSasSignatureValues.ipRange);\n const signedProtocol = tableSasSignatureValues.protocol || \"\";\n const startingPartitionKey = tableSasSignatureValues.startPartitionKey ?? \"\";\n const startingRowKey = tableSasSignatureValues.startRowKey ?? \"\";\n const endingPartitionKey = tableSasSignatureValues.endPartitionKey ?? \"\";\n const endingRowKey = tableSasSignatureValues.endRowKey ?? \"\";\n\n const stringToSign = [\n signedPermissions,\n signedStart,\n signedExpiry,\n canonicalizedResource,\n signedIdentifier,\n signedIP,\n signedProtocol,\n version,\n startingPartitionKey,\n startingRowKey,\n endingPartitionKey,\n endingRowKey,\n ].join(\"\\n\");\n\n const signature = computeHMACSHA256(stringToSign, credential.key);\n\n return new SasQueryParameters(version, signature, {\n permissions: signedPermissions,\n protocol: tableSasSignatureValues.protocol,\n startsOn: tableSasSignatureValues.startsOn,\n expiresOn: tableSasSignatureValues.expiresOn,\n ipRange: tableSasSignatureValues.ipRange,\n identifier: tableSasSignatureValues.identifier,\n tableName,\n startPartitionKey: tableSasSignatureValues.startPartitionKey,\n startRowKey: tableSasSignatureValues.startRowKey,\n endPartitionKey: tableSasSignatureValues.endPartitionKey,\n endRowKey: tableSasSignatureValues.endRowKey,\n });\n}\n\nfunction getCanonicalName(accountName: string, tableName: string): string {\n // Sample CanonicalName for URL = https://myaccount.table.core.windows.net/Employees(PartitionKey='Jeff',RowKey='Price'):\n // canonicalizedResource = \"/table/myaccount/employees\"\n return `/table/${accountName}/${tableName.toLowerCase()}`;\n}\n"]}
@@ -0,0 +1,17 @@
1
+ import type { OperationOptions } from "@azure/core-client";
2
+ import type { PipelinePolicy } from "@azure/core-rest-pipeline";
3
+ /**
4
+ * The programmatic identifier of the tablesSecondaryEndpointPolicy.
5
+ */
6
+ export declare const tablesSecondaryEndpointPolicyName = "tablesSecondaryEndpointPolicy";
7
+ export declare const SecondaryLocationHeaderName = "tables-secondary-endpoint";
8
+ /**
9
+ * Policy that would replace the Primary Endpoint with the secondary endpoint
10
+ * when the `tables-secondary-endpoint` is set in the request
11
+ */
12
+ export declare const tablesSecondaryEndpointPolicy: PipelinePolicy;
13
+ /**
14
+ * Utility function that injects the SecondaryEndpointHeader into an operation options
15
+ */
16
+ export declare function injectSecondaryEndpointHeader(options: OperationOptions): OperationOptions;
17
+ //# sourceMappingURL=secondaryEndpointPolicy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secondaryEndpointPolicy.d.ts","sourceRoot":"","sources":["../../src/secondaryEndpointPolicy.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,iCAAiC,kCAAkC,CAAC;AACjF,eAAO,MAAM,2BAA2B,8BAA8B,CAAC;AAGvE;;;GAGG;AACH,eAAO,MAAM,6BAA6B,EAAE,cAa3C,CAAC;AAEF;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,gBAAgB,GAAG,gBAAgB,CAYzF"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.tablesSecondaryEndpointPolicy = exports.SecondaryLocationHeaderName = exports.tablesSecondaryEndpointPolicyName = void 0;
6
+ exports.injectSecondaryEndpointHeader = injectSecondaryEndpointHeader;
7
+ /**
8
+ * The programmatic identifier of the tablesSecondaryEndpointPolicy.
9
+ */
10
+ exports.tablesSecondaryEndpointPolicyName = "tablesSecondaryEndpointPolicy";
11
+ exports.SecondaryLocationHeaderName = "tables-secondary-endpoint";
12
+ const SecondaryLocationAccountSuffix = "-secondary";
13
+ /**
14
+ * Policy that would replace the Primary Endpoint with the secondary endpoint
15
+ * when the `tables-secondary-endpoint` is set in the request
16
+ */
17
+ exports.tablesSecondaryEndpointPolicy = {
18
+ name: exports.tablesSecondaryEndpointPolicyName,
19
+ sendRequest: async (req, next) => {
20
+ // Only replace the URL if the SecondaryLocationHeader is set
21
+ if (req.headers.get(exports.SecondaryLocationHeaderName)) {
22
+ // Since the header is for internal use only, clean it up.
23
+ req.headers.delete(exports.SecondaryLocationHeaderName);
24
+ // Calculate and update the secondary url
25
+ req.url = getSecondaryUrlFromPrimary(req.url);
26
+ }
27
+ return next(req);
28
+ },
29
+ };
30
+ /**
31
+ * Utility function that injects the SecondaryEndpointHeader into an operation options
32
+ */
33
+ function injectSecondaryEndpointHeader(options) {
34
+ var _a;
35
+ const headerToInject = { [exports.SecondaryLocationHeaderName]: "true" };
36
+ return Object.assign(Object.assign({}, options), { requestOptions: Object.assign(Object.assign({}, options.requestOptions), { customHeaders: Object.assign(Object.assign({}, (_a = options.requestOptions) === null || _a === void 0 ? void 0 : _a.customHeaders), headerToInject) }) });
37
+ }
38
+ /**
39
+ * Utility function that calculates the secondary URL for a table instance given the primary URL.
40
+ */
41
+ function getSecondaryUrlFromPrimary(primaryUrl) {
42
+ const parsedPrimaryUrl = new URL(primaryUrl);
43
+ const host = parsedPrimaryUrl.hostname.split(".");
44
+ if (host.length > 1) {
45
+ host[0] = `${host[0]}${SecondaryLocationAccountSuffix}`;
46
+ }
47
+ parsedPrimaryUrl.hostname = host.join(".");
48
+ return parsedPrimaryUrl.toString();
49
+ }
50
+ //# sourceMappingURL=secondaryEndpointPolicy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secondaryEndpointPolicy.js","sourceRoot":"","sources":["../../src/secondaryEndpointPolicy.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAkClC,sEAYC;AAzCD;;GAEG;AACU,QAAA,iCAAiC,GAAG,+BAA+B,CAAC;AACpE,QAAA,2BAA2B,GAAG,2BAA2B,CAAC;AACvE,MAAM,8BAA8B,GAAG,YAAY,CAAC;AAEpD;;;GAGG;AACU,QAAA,6BAA6B,GAAmB;IAC3D,IAAI,EAAE,yCAAiC;IACvC,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC/B,6DAA6D;QAC7D,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,mCAA2B,CAAC,EAAE,CAAC;YACjD,0DAA0D;YAC1D,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,mCAA2B,CAAC,CAAC;YAChD,yCAAyC;YACzC,GAAG,CAAC,GAAG,GAAG,0BAA0B,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,SAAgB,6BAA6B,CAAC,OAAyB;;IACrE,MAAM,cAAc,GAAG,EAAE,CAAC,mCAA2B,CAAC,EAAE,MAAM,EAAE,CAAC;IACjE,uCACK,OAAO,KACV,cAAc,kCACT,OAAO,CAAC,cAAc,KACzB,aAAa,kCACR,MAAA,OAAO,CAAC,cAAc,0CAAE,aAAa,GACrC,cAAc,QAGrB;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,0BAA0B,CAAC,UAAkB;IACpD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,8BAA8B,EAAE,CAAC;IAC1D,CAAC;IACD,gBAAgB,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE3C,OAAO,gBAAgB,CAAC,QAAQ,EAAE,CAAC;AACrC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { OperationOptions } from \"@azure/core-client\";\nimport type { PipelinePolicy } from \"@azure/core-rest-pipeline\";\n\n/**\n * The programmatic identifier of the tablesSecondaryEndpointPolicy.\n */\nexport const tablesSecondaryEndpointPolicyName = \"tablesSecondaryEndpointPolicy\";\nexport const SecondaryLocationHeaderName = \"tables-secondary-endpoint\";\nconst SecondaryLocationAccountSuffix = \"-secondary\";\n\n/**\n * Policy that would replace the Primary Endpoint with the secondary endpoint\n * when the `tables-secondary-endpoint` is set in the request\n */\nexport const tablesSecondaryEndpointPolicy: PipelinePolicy = {\n name: tablesSecondaryEndpointPolicyName,\n sendRequest: async (req, next) => {\n // Only replace the URL if the SecondaryLocationHeader is set\n if (req.headers.get(SecondaryLocationHeaderName)) {\n // Since the header is for internal use only, clean it up.\n req.headers.delete(SecondaryLocationHeaderName);\n // Calculate and update the secondary url\n req.url = getSecondaryUrlFromPrimary(req.url);\n }\n\n return next(req);\n },\n};\n\n/**\n * Utility function that injects the SecondaryEndpointHeader into an operation options\n */\nexport function injectSecondaryEndpointHeader(options: OperationOptions): OperationOptions {\n const headerToInject = { [SecondaryLocationHeaderName]: \"true\" };\n return {\n ...options,\n requestOptions: {\n ...options.requestOptions,\n customHeaders: {\n ...options.requestOptions?.customHeaders,\n ...headerToInject,\n },\n },\n };\n}\n\n/**\n * Utility function that calculates the secondary URL for a table instance given the primary URL.\n */\nfunction getSecondaryUrlFromPrimary(primaryUrl: string): string {\n const parsedPrimaryUrl = new URL(primaryUrl);\n const host = parsedPrimaryUrl.hostname.split(\".\");\n if (host.length > 1) {\n host[0] = `${host[0]}${SecondaryLocationAccountSuffix}`;\n }\n parsedPrimaryUrl.hostname = host.join(\".\");\n\n return parsedPrimaryUrl.toString();\n}\n"]}