@azure/ai-projects 2.0.0-beta.3 → 2.0.0-beta.5

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 (1143) hide show
  1. package/README.md +48 -24
  2. package/dist/browser/aiProjectClient.d.ts +26 -26
  3. package/dist/browser/aiProjectClient.d.ts.map +1 -1
  4. package/dist/browser/aiProjectClient.js +37 -39
  5. package/dist/browser/aiProjectClient.js.map +1 -1
  6. package/dist/browser/api/agents/index.d.ts +2 -2
  7. package/dist/browser/api/agents/index.d.ts.map +1 -1
  8. package/dist/browser/api/agents/index.js +1 -1
  9. package/dist/browser/api/agents/index.js.map +1 -1
  10. package/dist/browser/api/agents/operations.d.ts +32 -32
  11. package/dist/browser/api/agents/operations.d.ts.map +1 -1
  12. package/dist/browser/api/agents/operations.js +119 -141
  13. package/dist/browser/api/agents/operations.js.map +1 -1
  14. package/dist/browser/api/agents/options.d.ts +30 -24
  15. package/dist/browser/api/agents/options.d.ts.map +1 -1
  16. package/dist/browser/api/agents/options.js.map +1 -1
  17. package/dist/browser/api/aiProjectContext.d.ts.map +1 -1
  18. package/dist/browser/api/aiProjectContext.js +4 -17
  19. package/dist/browser/api/aiProjectContext.js.map +1 -1
  20. package/dist/browser/api/beta/evaluationRules/index.d.ts +3 -0
  21. package/dist/browser/api/beta/evaluationRules/index.d.ts.map +1 -0
  22. package/dist/browser/api/beta/evaluationRules/index.js +4 -0
  23. package/dist/browser/api/beta/evaluationRules/index.js.map +1 -0
  24. package/dist/browser/api/beta/evaluationRules/operations.d.ts +22 -0
  25. package/dist/browser/api/beta/evaluationRules/operations.d.ts.map +1 -0
  26. package/dist/browser/api/beta/evaluationRules/operations.js +134 -0
  27. package/dist/browser/api/beta/evaluationRules/operations.js.map +1 -0
  28. package/dist/browser/api/beta/evaluationRules/options.d.ts +27 -0
  29. package/dist/browser/api/beta/evaluationRules/options.d.ts.map +1 -0
  30. package/dist/browser/api/beta/evaluationRules/options.js.map +1 -0
  31. package/dist/browser/api/beta/evaluationTaxonomies/index.d.ts +3 -0
  32. package/dist/browser/api/beta/evaluationTaxonomies/index.d.ts.map +1 -0
  33. package/dist/browser/api/beta/evaluationTaxonomies/index.js.map +1 -0
  34. package/dist/browser/api/beta/evaluationTaxonomies/operations.d.ts +26 -0
  35. package/dist/browser/api/beta/evaluationTaxonomies/operations.d.ts.map +1 -0
  36. package/dist/browser/api/beta/evaluationTaxonomies/operations.js +164 -0
  37. package/dist/browser/api/beta/evaluationTaxonomies/operations.js.map +1 -0
  38. package/dist/browser/api/beta/evaluationTaxonomies/options.d.ts +27 -0
  39. package/dist/browser/api/beta/evaluationTaxonomies/options.d.ts.map +1 -0
  40. package/dist/browser/api/beta/evaluationTaxonomies/options.js.map +1 -0
  41. package/dist/browser/api/beta/evaluators/index.d.ts +3 -0
  42. package/dist/browser/api/beta/evaluators/index.d.ts.map +1 -0
  43. package/dist/browser/api/beta/evaluators/index.js.map +1 -0
  44. package/dist/browser/api/beta/evaluators/operations.d.ts +30 -0
  45. package/dist/browser/api/beta/evaluators/operations.d.ts.map +1 -0
  46. package/dist/browser/api/beta/evaluators/operations.js +185 -0
  47. package/dist/browser/api/beta/evaluators/operations.js.map +1 -0
  48. package/dist/browser/api/beta/evaluators/options.d.ts +29 -0
  49. package/dist/browser/api/beta/evaluators/options.d.ts.map +1 -0
  50. package/dist/browser/api/beta/evaluators/options.js.map +1 -0
  51. package/dist/browser/api/beta/insights/index.d.ts +3 -0
  52. package/dist/browser/api/beta/insights/index.d.ts.map +1 -0
  53. package/dist/browser/api/beta/insights/index.js.map +1 -0
  54. package/dist/browser/api/beta/insights/operations.d.ts +18 -0
  55. package/dist/browser/api/beta/insights/operations.d.ts.map +1 -0
  56. package/dist/browser/api/beta/insights/operations.js +115 -0
  57. package/dist/browser/api/beta/insights/operations.js.map +1 -0
  58. package/dist/browser/api/beta/insights/options.d.ts +32 -0
  59. package/dist/browser/api/beta/insights/options.d.ts.map +1 -0
  60. package/dist/browser/api/beta/insights/options.js.map +1 -0
  61. package/dist/browser/api/beta/memoryStores/index.d.ts +3 -0
  62. package/dist/browser/api/beta/memoryStores/index.d.ts.map +1 -0
  63. package/dist/browser/api/beta/memoryStores/index.js +4 -0
  64. package/dist/browser/api/beta/memoryStores/index.js.map +1 -0
  65. package/dist/browser/api/beta/memoryStores/operations.d.ts +43 -0
  66. package/dist/browser/api/beta/memoryStores/operations.d.ts.map +1 -0
  67. package/dist/browser/api/beta/memoryStores/operations.js +323 -0
  68. package/dist/browser/api/beta/memoryStores/operations.js.map +1 -0
  69. package/dist/browser/api/beta/memoryStores/options.d.ts +79 -0
  70. package/dist/browser/api/beta/memoryStores/options.d.ts.map +1 -0
  71. package/dist/browser/api/beta/memoryStores/options.js.map +1 -0
  72. package/dist/browser/api/beta/redTeams/index.d.ts +3 -0
  73. package/dist/browser/api/beta/redTeams/index.d.ts.map +1 -0
  74. package/dist/browser/api/beta/redTeams/index.js.map +1 -0
  75. package/dist/browser/api/beta/redTeams/operations.d.ts +18 -0
  76. package/dist/browser/api/beta/redTeams/operations.d.ts.map +1 -0
  77. package/dist/browser/api/beta/redTeams/operations.js +101 -0
  78. package/dist/browser/api/beta/redTeams/operations.js.map +1 -0
  79. package/dist/browser/api/beta/redTeams/options.d.ts +15 -0
  80. package/dist/browser/api/beta/redTeams/options.d.ts.map +1 -0
  81. package/dist/browser/api/beta/redTeams/options.js.map +1 -0
  82. package/dist/browser/api/beta/schedules/index.d.ts +3 -0
  83. package/dist/browser/api/beta/schedules/index.d.ts.map +1 -0
  84. package/dist/browser/api/beta/schedules/index.js.map +1 -0
  85. package/dist/browser/api/beta/schedules/operations.d.ts +30 -0
  86. package/dist/browser/api/beta/schedules/operations.d.ts.map +1 -0
  87. package/dist/browser/api/beta/schedules/operations.js +199 -0
  88. package/dist/browser/api/beta/schedules/operations.js.map +1 -0
  89. package/dist/browser/api/beta/schedules/options.d.ts +39 -0
  90. package/dist/browser/api/beta/schedules/options.d.ts.map +1 -0
  91. package/dist/browser/api/beta/schedules/options.js.map +1 -0
  92. package/dist/browser/api/connections/operations.js +1 -1
  93. package/dist/browser/api/connections/operations.js.map +1 -1
  94. package/dist/browser/api/datasets/operations.js +2 -2
  95. package/dist/browser/api/datasets/operations.js.map +1 -1
  96. package/dist/browser/api/deployments/operations.js +1 -1
  97. package/dist/browser/api/deployments/operations.js.map +1 -1
  98. package/dist/browser/api/evaluationRules/operations.d.ts.map +1 -1
  99. package/dist/browser/api/evaluationRules/operations.js +14 -11
  100. package/dist/browser/api/evaluationRules/operations.js.map +1 -1
  101. package/dist/browser/api/evaluationRules/options.d.ts +8 -6
  102. package/dist/browser/api/evaluationRules/options.d.ts.map +1 -1
  103. package/dist/browser/api/evaluationRules/options.js.map +1 -1
  104. package/dist/browser/api/indexes/operations.d.ts +1 -1
  105. package/dist/browser/api/indexes/operations.d.ts.map +1 -1
  106. package/dist/browser/api/indexes/operations.js +3 -3
  107. package/dist/browser/api/indexes/operations.js.map +1 -1
  108. package/dist/browser/classic/agents/index.d.ts +15 -15
  109. package/dist/browser/classic/agents/index.d.ts.map +1 -1
  110. package/dist/browser/classic/agents/index.js +10 -10
  111. package/dist/browser/classic/agents/index.js.map +1 -1
  112. package/dist/browser/classic/beta/evaluationRules/index.d.ts +17 -0
  113. package/dist/browser/classic/beta/evaluationRules/index.d.ts.map +1 -0
  114. package/dist/browser/classic/beta/evaluationRules/index.js +17 -0
  115. package/dist/browser/classic/beta/evaluationRules/index.js.map +1 -0
  116. package/dist/browser/classic/beta/evaluationTaxonomies/index.d.ts +19 -0
  117. package/dist/browser/classic/beta/evaluationTaxonomies/index.d.ts.map +1 -0
  118. package/dist/browser/classic/beta/evaluationTaxonomies/index.js +18 -0
  119. package/dist/browser/classic/beta/evaluationTaxonomies/index.js.map +1 -0
  120. package/dist/browser/classic/beta/evaluators/index.d.ts +21 -0
  121. package/dist/browser/classic/beta/evaluators/index.d.ts.map +1 -0
  122. package/dist/browser/classic/beta/evaluators/index.js +19 -0
  123. package/dist/browser/classic/beta/evaluators/index.js.map +1 -0
  124. package/dist/browser/classic/beta/index.d.ts +18 -0
  125. package/dist/browser/classic/beta/index.d.ts.map +1 -0
  126. package/dist/browser/classic/beta/index.js +19 -0
  127. package/dist/browser/classic/beta/index.js.map +1 -0
  128. package/dist/browser/classic/beta/insights/index.d.ts +15 -0
  129. package/dist/browser/classic/beta/insights/index.d.ts.map +1 -0
  130. package/dist/browser/classic/beta/insights/index.js +16 -0
  131. package/dist/browser/classic/beta/insights/index.js.map +1 -0
  132. package/dist/browser/classic/beta/memoryStores/index.d.ts +28 -0
  133. package/dist/browser/classic/beta/memoryStores/index.d.ts.map +1 -0
  134. package/dist/browser/classic/beta/memoryStores/index.js +22 -0
  135. package/dist/browser/classic/beta/memoryStores/index.js.map +1 -0
  136. package/dist/browser/classic/beta/redTeams/index.d.ts +15 -0
  137. package/dist/browser/classic/beta/redTeams/index.d.ts.map +1 -0
  138. package/dist/browser/classic/beta/redTeams/index.js +16 -0
  139. package/dist/browser/classic/beta/redTeams/index.js.map +1 -0
  140. package/dist/browser/classic/beta/schedules/index.d.ts +21 -0
  141. package/dist/browser/classic/beta/schedules/index.d.ts.map +1 -0
  142. package/dist/browser/classic/beta/schedules/index.js +19 -0
  143. package/dist/browser/classic/beta/schedules/index.js.map +1 -0
  144. package/dist/browser/classic/datasets/index.d.ts +1 -1
  145. package/dist/browser/classic/datasets/index.d.ts.map +1 -1
  146. package/dist/browser/classic/datasets/index.js.map +1 -1
  147. package/dist/browser/classic/index.d.ts +7 -6
  148. package/dist/browser/classic/index.d.ts.map +1 -1
  149. package/dist/browser/classic/index.js.map +1 -1
  150. package/dist/browser/classic/indexes/index.js +1 -1
  151. package/dist/browser/classic/indexes/index.js.map +1 -1
  152. package/dist/browser/constants.d.ts +1 -1
  153. package/dist/browser/constants.js +1 -1
  154. package/dist/browser/constants.js.map +1 -1
  155. package/dist/browser/index.d.ts +9 -10
  156. package/dist/browser/index.d.ts.map +1 -1
  157. package/dist/browser/index.js.map +1 -1
  158. package/dist/browser/models/index.d.ts +1 -1
  159. package/dist/browser/models/index.d.ts.map +1 -1
  160. package/dist/browser/models/index.js.map +1 -1
  161. package/dist/browser/models/models.d.ts +2916 -2553
  162. package/dist/browser/models/models.d.ts.map +1 -1
  163. package/dist/browser/models/models.js +2776 -2354
  164. package/dist/browser/models/models.js.map +1 -1
  165. package/dist/browser/overwriteOpenAIClient.js +1 -1
  166. package/dist/browser/overwriteOpenAIClient.js.map +1 -1
  167. package/dist/browser/restorePollerHelpers.d.ts +0 -3
  168. package/dist/browser/restorePollerHelpers.d.ts.map +1 -1
  169. package/dist/browser/restorePollerHelpers.js +13 -13
  170. package/dist/browser/restorePollerHelpers.js.map +1 -1
  171. package/dist/browser/static-helpers/pagingHelpers.d.ts +3 -0
  172. package/dist/browser/static-helpers/pagingHelpers.d.ts.map +1 -1
  173. package/dist/browser/static-helpers/pagingHelpers.js +28 -3
  174. package/dist/browser/static-helpers/pagingHelpers.js.map +1 -1
  175. package/dist/browser/static-helpers/pollingHelpers.d.ts +5 -0
  176. package/dist/browser/static-helpers/pollingHelpers.d.ts.map +1 -1
  177. package/dist/browser/static-helpers/pollingHelpers.js +18 -2
  178. package/dist/browser/static-helpers/pollingHelpers.js.map +1 -1
  179. package/dist/browser/static-helpers/urlTemplate.d.ts.map +1 -1
  180. package/dist/browser/static-helpers/urlTemplate.js +16 -1
  181. package/dist/browser/static-helpers/urlTemplate.js.map +1 -1
  182. package/dist/browser/util.d.ts +11 -0
  183. package/dist/browser/util.d.ts.map +1 -0
  184. package/dist/browser/util.js +93 -0
  185. package/dist/browser/util.js.map +1 -0
  186. package/dist/commonjs/aiProjectClient.d.ts +26 -26
  187. package/dist/commonjs/aiProjectClient.d.ts.map +1 -1
  188. package/dist/commonjs/aiProjectClient.js +47 -49
  189. package/dist/commonjs/aiProjectClient.js.map +1 -1
  190. package/dist/commonjs/api/agents/index.d.ts +2 -2
  191. package/dist/commonjs/api/agents/index.d.ts.map +1 -1
  192. package/dist/commonjs/api/agents/index.js +10 -10
  193. package/dist/commonjs/api/agents/index.js.map +1 -1
  194. package/dist/commonjs/api/agents/operations.d.ts +32 -32
  195. package/dist/commonjs/api/agents/operations.d.ts.map +1 -1
  196. package/dist/commonjs/api/agents/operations.js +148 -170
  197. package/dist/commonjs/api/agents/operations.js.map +1 -1
  198. package/dist/commonjs/api/agents/options.d.ts +30 -24
  199. package/dist/commonjs/api/agents/options.d.ts.map +1 -1
  200. package/dist/commonjs/api/agents/options.js.map +1 -1
  201. package/dist/commonjs/api/aiProjectContext.d.ts.map +1 -1
  202. package/dist/commonjs/api/aiProjectContext.js +4 -17
  203. package/dist/commonjs/api/aiProjectContext.js.map +1 -1
  204. package/dist/commonjs/api/beta/evaluationRules/index.d.ts +3 -0
  205. package/dist/commonjs/api/beta/evaluationRules/index.d.ts.map +1 -0
  206. package/dist/commonjs/api/beta/evaluationRules/index.js +11 -0
  207. package/dist/commonjs/api/beta/evaluationRules/index.js.map +1 -0
  208. package/dist/commonjs/api/beta/evaluationRules/operations.d.ts +22 -0
  209. package/dist/commonjs/api/beta/evaluationRules/operations.d.ts.map +1 -0
  210. package/dist/commonjs/api/beta/evaluationRules/operations.js +148 -0
  211. package/dist/commonjs/api/beta/evaluationRules/operations.js.map +1 -0
  212. package/dist/commonjs/api/beta/evaluationRules/options.d.ts +27 -0
  213. package/dist/commonjs/api/beta/evaluationRules/options.d.ts.map +1 -0
  214. package/dist/commonjs/api/beta/evaluationRules/options.js.map +1 -0
  215. package/dist/commonjs/api/beta/evaluationTaxonomies/index.d.ts +3 -0
  216. package/dist/commonjs/api/beta/evaluationTaxonomies/index.d.ts.map +1 -0
  217. package/dist/commonjs/api/beta/evaluationTaxonomies/index.js.map +1 -0
  218. package/dist/commonjs/api/beta/evaluationTaxonomies/operations.d.ts +26 -0
  219. package/dist/commonjs/api/beta/evaluationTaxonomies/operations.d.ts.map +1 -0
  220. package/dist/commonjs/api/beta/evaluationTaxonomies/operations.js +181 -0
  221. package/dist/commonjs/api/beta/evaluationTaxonomies/operations.js.map +1 -0
  222. package/dist/commonjs/api/beta/evaluationTaxonomies/options.d.ts +27 -0
  223. package/dist/commonjs/api/beta/evaluationTaxonomies/options.d.ts.map +1 -0
  224. package/dist/commonjs/api/beta/evaluationTaxonomies/options.js.map +1 -0
  225. package/dist/commonjs/api/beta/evaluators/index.d.ts +3 -0
  226. package/dist/commonjs/api/beta/evaluators/index.d.ts.map +1 -0
  227. package/dist/commonjs/api/beta/evaluators/index.js.map +1 -0
  228. package/dist/commonjs/api/beta/evaluators/operations.d.ts +30 -0
  229. package/dist/commonjs/api/beta/evaluators/operations.d.ts.map +1 -0
  230. package/dist/commonjs/api/beta/evaluators/operations.js +205 -0
  231. package/dist/commonjs/api/beta/evaluators/operations.js.map +1 -0
  232. package/dist/commonjs/api/beta/evaluators/options.d.ts +29 -0
  233. package/dist/commonjs/api/beta/evaluators/options.d.ts.map +1 -0
  234. package/dist/commonjs/api/beta/evaluators/options.js.map +1 -0
  235. package/dist/commonjs/api/beta/insights/index.d.ts +3 -0
  236. package/dist/commonjs/api/beta/insights/index.d.ts.map +1 -0
  237. package/dist/commonjs/api/beta/insights/index.js.map +1 -0
  238. package/dist/commonjs/api/beta/insights/operations.d.ts +18 -0
  239. package/dist/commonjs/api/beta/insights/operations.d.ts.map +1 -0
  240. package/dist/commonjs/api/beta/insights/operations.js +126 -0
  241. package/dist/commonjs/api/beta/insights/operations.js.map +1 -0
  242. package/dist/commonjs/api/beta/insights/options.d.ts +32 -0
  243. package/dist/commonjs/api/beta/insights/options.d.ts.map +1 -0
  244. package/dist/commonjs/api/beta/insights/options.js.map +1 -0
  245. package/dist/commonjs/api/beta/memoryStores/index.d.ts +3 -0
  246. package/dist/commonjs/api/beta/memoryStores/index.d.ts.map +1 -0
  247. package/dist/commonjs/api/beta/memoryStores/index.js +16 -0
  248. package/dist/commonjs/api/beta/memoryStores/index.js.map +1 -0
  249. package/dist/commonjs/api/beta/memoryStores/operations.d.ts +43 -0
  250. package/dist/commonjs/api/beta/memoryStores/operations.d.ts.map +1 -0
  251. package/dist/commonjs/api/beta/memoryStores/operations.js +352 -0
  252. package/dist/commonjs/api/beta/memoryStores/operations.js.map +1 -0
  253. package/dist/commonjs/api/beta/memoryStores/options.d.ts +79 -0
  254. package/dist/commonjs/api/beta/memoryStores/options.d.ts.map +1 -0
  255. package/dist/commonjs/api/beta/memoryStores/options.js.map +1 -0
  256. package/dist/commonjs/api/beta/redTeams/index.d.ts +3 -0
  257. package/dist/commonjs/api/beta/redTeams/index.d.ts.map +1 -0
  258. package/dist/commonjs/api/beta/redTeams/index.js.map +1 -0
  259. package/dist/commonjs/api/beta/redTeams/operations.d.ts +18 -0
  260. package/dist/commonjs/api/beta/redTeams/operations.d.ts.map +1 -0
  261. package/dist/commonjs/api/beta/redTeams/operations.js +112 -0
  262. package/dist/commonjs/api/beta/redTeams/operations.js.map +1 -0
  263. package/dist/commonjs/api/beta/redTeams/options.d.ts +15 -0
  264. package/dist/commonjs/api/beta/redTeams/options.d.ts.map +1 -0
  265. package/dist/commonjs/api/beta/redTeams/options.js.map +1 -0
  266. package/dist/commonjs/api/beta/schedules/index.d.ts +3 -0
  267. package/dist/commonjs/api/beta/schedules/index.d.ts.map +1 -0
  268. package/dist/commonjs/api/beta/schedules/index.js.map +1 -0
  269. package/dist/commonjs/api/beta/schedules/operations.d.ts +30 -0
  270. package/dist/commonjs/api/beta/schedules/operations.d.ts.map +1 -0
  271. package/dist/commonjs/api/beta/schedules/operations.js +219 -0
  272. package/dist/commonjs/api/beta/schedules/operations.js.map +1 -0
  273. package/dist/commonjs/api/beta/schedules/options.d.ts +39 -0
  274. package/dist/commonjs/api/beta/schedules/options.d.ts.map +1 -0
  275. package/dist/commonjs/api/beta/schedules/options.js +5 -0
  276. package/dist/commonjs/api/beta/schedules/options.js.map +1 -0
  277. package/dist/commonjs/api/connections/operations.js +1 -1
  278. package/dist/commonjs/api/connections/operations.js.map +1 -1
  279. package/dist/commonjs/api/datasets/operations.js +2 -2
  280. package/dist/commonjs/api/datasets/operations.js.map +1 -1
  281. package/dist/commonjs/api/deployments/operations.js +1 -1
  282. package/dist/commonjs/api/deployments/operations.js.map +1 -1
  283. package/dist/commonjs/api/evaluationRules/operations.d.ts.map +1 -1
  284. package/dist/commonjs/api/evaluationRules/operations.js +14 -11
  285. package/dist/commonjs/api/evaluationRules/operations.js.map +1 -1
  286. package/dist/commonjs/api/evaluationRules/options.d.ts +8 -6
  287. package/dist/commonjs/api/evaluationRules/options.d.ts.map +1 -1
  288. package/dist/commonjs/api/evaluationRules/options.js.map +1 -1
  289. package/dist/commonjs/api/indexes/operations.d.ts +1 -1
  290. package/dist/commonjs/api/indexes/operations.d.ts.map +1 -1
  291. package/dist/commonjs/api/indexes/operations.js +3 -3
  292. package/dist/commonjs/api/indexes/operations.js.map +1 -1
  293. package/dist/commonjs/classic/agents/index.d.ts +15 -15
  294. package/dist/commonjs/classic/agents/index.d.ts.map +1 -1
  295. package/dist/commonjs/classic/agents/index.js +9 -9
  296. package/dist/commonjs/classic/agents/index.js.map +1 -1
  297. package/dist/commonjs/classic/beta/evaluationRules/index.d.ts +17 -0
  298. package/dist/commonjs/classic/beta/evaluationRules/index.d.ts.map +1 -0
  299. package/dist/commonjs/classic/beta/evaluationRules/index.js +20 -0
  300. package/dist/commonjs/classic/beta/evaluationRules/index.js.map +1 -0
  301. package/dist/commonjs/classic/beta/evaluationTaxonomies/index.d.ts +19 -0
  302. package/dist/commonjs/classic/beta/evaluationTaxonomies/index.d.ts.map +1 -0
  303. package/dist/commonjs/classic/beta/evaluationTaxonomies/index.js +21 -0
  304. package/dist/commonjs/classic/beta/evaluationTaxonomies/index.js.map +1 -0
  305. package/dist/commonjs/classic/beta/evaluators/index.d.ts +21 -0
  306. package/dist/commonjs/classic/beta/evaluators/index.d.ts.map +1 -0
  307. package/dist/commonjs/classic/beta/evaluators/index.js +22 -0
  308. package/dist/commonjs/classic/beta/evaluators/index.js.map +1 -0
  309. package/dist/commonjs/classic/beta/index.d.ts +18 -0
  310. package/dist/commonjs/classic/beta/index.d.ts.map +1 -0
  311. package/dist/commonjs/classic/beta/index.js +22 -0
  312. package/dist/commonjs/classic/beta/index.js.map +1 -0
  313. package/dist/commonjs/classic/beta/insights/index.d.ts +15 -0
  314. package/dist/commonjs/classic/beta/insights/index.d.ts.map +1 -0
  315. package/dist/commonjs/classic/beta/insights/index.js +19 -0
  316. package/dist/commonjs/classic/beta/insights/index.js.map +1 -0
  317. package/dist/commonjs/classic/beta/memoryStores/index.d.ts +28 -0
  318. package/dist/commonjs/classic/beta/memoryStores/index.d.ts.map +1 -0
  319. package/dist/commonjs/classic/beta/memoryStores/index.js +25 -0
  320. package/dist/commonjs/classic/beta/memoryStores/index.js.map +1 -0
  321. package/dist/commonjs/classic/beta/redTeams/index.d.ts +15 -0
  322. package/dist/commonjs/classic/beta/redTeams/index.d.ts.map +1 -0
  323. package/dist/commonjs/classic/beta/redTeams/index.js +19 -0
  324. package/dist/commonjs/classic/beta/redTeams/index.js.map +1 -0
  325. package/dist/commonjs/classic/beta/schedules/index.d.ts +21 -0
  326. package/dist/commonjs/classic/beta/schedules/index.d.ts.map +1 -0
  327. package/dist/commonjs/classic/beta/schedules/index.js +22 -0
  328. package/dist/commonjs/classic/beta/schedules/index.js.map +1 -0
  329. package/dist/commonjs/classic/datasets/index.d.ts +1 -1
  330. package/dist/commonjs/classic/datasets/index.d.ts.map +1 -1
  331. package/dist/commonjs/classic/datasets/index.js.map +1 -1
  332. package/dist/commonjs/classic/index.d.ts +7 -6
  333. package/dist/commonjs/classic/index.d.ts.map +1 -1
  334. package/dist/commonjs/classic/index.js.map +1 -1
  335. package/dist/commonjs/classic/indexes/index.js +1 -1
  336. package/dist/commonjs/classic/indexes/index.js.map +1 -1
  337. package/dist/commonjs/constants.d.ts +1 -1
  338. package/dist/commonjs/constants.js +1 -1
  339. package/dist/commonjs/constants.js.map +1 -1
  340. package/dist/commonjs/index.d.ts +9 -10
  341. package/dist/commonjs/index.d.ts.map +1 -1
  342. package/dist/commonjs/index.js.map +1 -1
  343. package/dist/commonjs/models/index.d.ts +1 -1
  344. package/dist/commonjs/models/index.d.ts.map +1 -1
  345. package/dist/commonjs/models/index.js.map +1 -1
  346. package/dist/commonjs/models/models.d.ts +2916 -2553
  347. package/dist/commonjs/models/models.d.ts.map +1 -1
  348. package/dist/commonjs/models/models.js +2943 -2463
  349. package/dist/commonjs/models/models.js.map +1 -1
  350. package/dist/commonjs/overwriteOpenAIClient.js +1 -1
  351. package/dist/commonjs/overwriteOpenAIClient.js.map +1 -1
  352. package/dist/commonjs/restorePollerHelpers.d.ts +0 -3
  353. package/dist/commonjs/restorePollerHelpers.d.ts.map +1 -1
  354. package/dist/commonjs/restorePollerHelpers.js +13 -13
  355. package/dist/commonjs/restorePollerHelpers.js.map +1 -1
  356. package/dist/commonjs/static-helpers/pagingHelpers.d.ts +3 -0
  357. package/dist/commonjs/static-helpers/pagingHelpers.d.ts.map +1 -1
  358. package/dist/commonjs/static-helpers/pagingHelpers.js +28 -3
  359. package/dist/commonjs/static-helpers/pagingHelpers.js.map +1 -1
  360. package/dist/commonjs/static-helpers/pollingHelpers.d.ts +5 -0
  361. package/dist/commonjs/static-helpers/pollingHelpers.d.ts.map +1 -1
  362. package/dist/commonjs/static-helpers/pollingHelpers.js +18 -2
  363. package/dist/commonjs/static-helpers/pollingHelpers.js.map +1 -1
  364. package/dist/commonjs/static-helpers/urlTemplate.d.ts.map +1 -1
  365. package/dist/commonjs/static-helpers/urlTemplate.js +16 -1
  366. package/dist/commonjs/static-helpers/urlTemplate.js.map +1 -1
  367. package/dist/commonjs/tsdoc-metadata.json +1 -1
  368. package/dist/commonjs/util.d.ts +11 -0
  369. package/dist/commonjs/util.d.ts.map +1 -0
  370. package/dist/commonjs/util.js +98 -0
  371. package/dist/commonjs/util.js.map +1 -0
  372. package/dist/esm/aiProjectClient.d.ts +26 -26
  373. package/dist/esm/aiProjectClient.d.ts.map +1 -1
  374. package/dist/esm/aiProjectClient.js +37 -39
  375. package/dist/esm/aiProjectClient.js.map +1 -1
  376. package/dist/esm/api/agents/index.d.ts +2 -2
  377. package/dist/esm/api/agents/index.d.ts.map +1 -1
  378. package/dist/esm/api/agents/index.js +1 -1
  379. package/dist/esm/api/agents/index.js.map +1 -1
  380. package/dist/esm/api/agents/operations.d.ts +32 -32
  381. package/dist/esm/api/agents/operations.d.ts.map +1 -1
  382. package/dist/esm/api/agents/operations.js +119 -141
  383. package/dist/esm/api/agents/operations.js.map +1 -1
  384. package/dist/esm/api/agents/options.d.ts +30 -24
  385. package/dist/esm/api/agents/options.d.ts.map +1 -1
  386. package/dist/esm/api/agents/options.js.map +1 -1
  387. package/dist/esm/api/aiProjectContext.d.ts.map +1 -1
  388. package/dist/esm/api/aiProjectContext.js +4 -17
  389. package/dist/esm/api/aiProjectContext.js.map +1 -1
  390. package/dist/esm/api/beta/evaluationRules/index.d.ts +3 -0
  391. package/dist/esm/api/beta/evaluationRules/index.d.ts.map +1 -0
  392. package/dist/esm/api/beta/evaluationRules/index.js +4 -0
  393. package/dist/esm/api/beta/evaluationRules/index.js.map +1 -0
  394. package/dist/esm/api/beta/evaluationRules/operations.d.ts +22 -0
  395. package/dist/esm/api/beta/evaluationRules/operations.d.ts.map +1 -0
  396. package/dist/esm/api/beta/evaluationRules/operations.js +134 -0
  397. package/dist/esm/api/beta/evaluationRules/operations.js.map +1 -0
  398. package/dist/esm/api/beta/evaluationRules/options.d.ts +27 -0
  399. package/dist/esm/api/beta/evaluationRules/options.d.ts.map +1 -0
  400. package/dist/esm/api/beta/evaluationRules/options.js.map +1 -0
  401. package/dist/esm/api/beta/evaluationTaxonomies/index.d.ts +3 -0
  402. package/dist/esm/api/beta/evaluationTaxonomies/index.d.ts.map +1 -0
  403. package/dist/esm/api/beta/evaluationTaxonomies/index.js.map +1 -0
  404. package/dist/esm/api/beta/evaluationTaxonomies/operations.d.ts +26 -0
  405. package/dist/esm/api/beta/evaluationTaxonomies/operations.d.ts.map +1 -0
  406. package/dist/esm/api/beta/evaluationTaxonomies/operations.js +164 -0
  407. package/dist/esm/api/beta/evaluationTaxonomies/operations.js.map +1 -0
  408. package/dist/esm/api/beta/evaluationTaxonomies/options.d.ts +27 -0
  409. package/dist/esm/api/beta/evaluationTaxonomies/options.d.ts.map +1 -0
  410. package/dist/esm/api/beta/evaluationTaxonomies/options.js.map +1 -0
  411. package/dist/esm/api/beta/evaluators/index.d.ts +3 -0
  412. package/dist/esm/api/beta/evaluators/index.d.ts.map +1 -0
  413. package/dist/esm/api/beta/evaluators/index.js.map +1 -0
  414. package/dist/esm/api/beta/evaluators/operations.d.ts +30 -0
  415. package/dist/esm/api/beta/evaluators/operations.d.ts.map +1 -0
  416. package/dist/esm/api/beta/evaluators/operations.js +185 -0
  417. package/dist/esm/api/beta/evaluators/operations.js.map +1 -0
  418. package/dist/esm/api/beta/evaluators/options.d.ts +29 -0
  419. package/dist/esm/api/beta/evaluators/options.d.ts.map +1 -0
  420. package/dist/esm/api/beta/evaluators/options.js.map +1 -0
  421. package/dist/esm/api/beta/insights/index.d.ts +3 -0
  422. package/dist/esm/api/beta/insights/index.d.ts.map +1 -0
  423. package/dist/esm/api/beta/insights/index.js.map +1 -0
  424. package/dist/esm/api/beta/insights/operations.d.ts +18 -0
  425. package/dist/esm/api/beta/insights/operations.d.ts.map +1 -0
  426. package/dist/esm/api/beta/insights/operations.js +115 -0
  427. package/dist/esm/api/beta/insights/operations.js.map +1 -0
  428. package/dist/esm/api/beta/insights/options.d.ts +32 -0
  429. package/dist/esm/api/beta/insights/options.d.ts.map +1 -0
  430. package/dist/esm/api/beta/insights/options.js.map +1 -0
  431. package/dist/esm/api/beta/memoryStores/index.d.ts +3 -0
  432. package/dist/esm/api/beta/memoryStores/index.d.ts.map +1 -0
  433. package/dist/esm/api/beta/memoryStores/index.js +4 -0
  434. package/dist/esm/api/beta/memoryStores/index.js.map +1 -0
  435. package/dist/esm/api/beta/memoryStores/operations.d.ts +43 -0
  436. package/dist/esm/api/beta/memoryStores/operations.d.ts.map +1 -0
  437. package/dist/esm/api/beta/memoryStores/operations.js +323 -0
  438. package/dist/esm/api/beta/memoryStores/operations.js.map +1 -0
  439. package/dist/esm/api/beta/memoryStores/options.d.ts +79 -0
  440. package/dist/esm/api/beta/memoryStores/options.d.ts.map +1 -0
  441. package/dist/esm/api/beta/memoryStores/options.js.map +1 -0
  442. package/dist/esm/api/beta/redTeams/index.d.ts +3 -0
  443. package/dist/esm/api/beta/redTeams/index.d.ts.map +1 -0
  444. package/dist/esm/api/beta/redTeams/index.js.map +1 -0
  445. package/dist/esm/api/beta/redTeams/operations.d.ts +18 -0
  446. package/dist/esm/api/beta/redTeams/operations.d.ts.map +1 -0
  447. package/dist/esm/api/beta/redTeams/operations.js +101 -0
  448. package/dist/esm/api/beta/redTeams/operations.js.map +1 -0
  449. package/dist/esm/api/beta/redTeams/options.d.ts +15 -0
  450. package/dist/esm/api/beta/redTeams/options.d.ts.map +1 -0
  451. package/dist/esm/api/beta/redTeams/options.js.map +1 -0
  452. package/dist/esm/api/beta/schedules/index.d.ts +3 -0
  453. package/dist/esm/api/beta/schedules/index.d.ts.map +1 -0
  454. package/dist/esm/api/beta/schedules/index.js.map +1 -0
  455. package/dist/esm/api/beta/schedules/operations.d.ts +30 -0
  456. package/dist/esm/api/beta/schedules/operations.d.ts.map +1 -0
  457. package/dist/esm/api/beta/schedules/operations.js +199 -0
  458. package/dist/esm/api/beta/schedules/operations.js.map +1 -0
  459. package/dist/esm/api/beta/schedules/options.d.ts +39 -0
  460. package/dist/esm/api/beta/schedules/options.d.ts.map +1 -0
  461. package/dist/esm/api/beta/schedules/options.js.map +1 -0
  462. package/dist/esm/api/connections/operations.js +1 -1
  463. package/dist/esm/api/connections/operations.js.map +1 -1
  464. package/dist/esm/api/datasets/operations.js +2 -2
  465. package/dist/esm/api/datasets/operations.js.map +1 -1
  466. package/dist/esm/api/deployments/operations.js +1 -1
  467. package/dist/esm/api/deployments/operations.js.map +1 -1
  468. package/dist/esm/api/evaluationRules/operations.d.ts.map +1 -1
  469. package/dist/esm/api/evaluationRules/operations.js +14 -11
  470. package/dist/esm/api/evaluationRules/operations.js.map +1 -1
  471. package/dist/esm/api/evaluationRules/options.d.ts +8 -6
  472. package/dist/esm/api/evaluationRules/options.d.ts.map +1 -1
  473. package/dist/esm/api/evaluationRules/options.js.map +1 -1
  474. package/dist/esm/api/indexes/operations.d.ts +1 -1
  475. package/dist/esm/api/indexes/operations.d.ts.map +1 -1
  476. package/dist/esm/api/indexes/operations.js +3 -3
  477. package/dist/esm/api/indexes/operations.js.map +1 -1
  478. package/dist/esm/classic/agents/index.d.ts +15 -15
  479. package/dist/esm/classic/agents/index.d.ts.map +1 -1
  480. package/dist/esm/classic/agents/index.js +10 -10
  481. package/dist/esm/classic/agents/index.js.map +1 -1
  482. package/dist/esm/classic/beta/evaluationRules/index.d.ts +17 -0
  483. package/dist/esm/classic/beta/evaluationRules/index.d.ts.map +1 -0
  484. package/dist/esm/classic/beta/evaluationRules/index.js +17 -0
  485. package/dist/esm/classic/beta/evaluationRules/index.js.map +1 -0
  486. package/dist/esm/classic/beta/evaluationTaxonomies/index.d.ts +19 -0
  487. package/dist/esm/classic/beta/evaluationTaxonomies/index.d.ts.map +1 -0
  488. package/dist/esm/classic/beta/evaluationTaxonomies/index.js +18 -0
  489. package/dist/esm/classic/beta/evaluationTaxonomies/index.js.map +1 -0
  490. package/dist/esm/classic/beta/evaluators/index.d.ts +21 -0
  491. package/dist/esm/classic/beta/evaluators/index.d.ts.map +1 -0
  492. package/dist/esm/classic/beta/evaluators/index.js +19 -0
  493. package/dist/esm/classic/beta/evaluators/index.js.map +1 -0
  494. package/dist/esm/classic/beta/index.d.ts +18 -0
  495. package/dist/esm/classic/beta/index.d.ts.map +1 -0
  496. package/dist/esm/classic/beta/index.js +19 -0
  497. package/dist/esm/classic/beta/index.js.map +1 -0
  498. package/dist/esm/classic/beta/insights/index.d.ts +15 -0
  499. package/dist/esm/classic/beta/insights/index.d.ts.map +1 -0
  500. package/dist/esm/classic/beta/insights/index.js +16 -0
  501. package/dist/esm/classic/beta/insights/index.js.map +1 -0
  502. package/dist/esm/classic/beta/memoryStores/index.d.ts +28 -0
  503. package/dist/esm/classic/beta/memoryStores/index.d.ts.map +1 -0
  504. package/dist/esm/classic/beta/memoryStores/index.js +22 -0
  505. package/dist/esm/classic/beta/memoryStores/index.js.map +1 -0
  506. package/dist/esm/classic/beta/redTeams/index.d.ts +15 -0
  507. package/dist/esm/classic/beta/redTeams/index.d.ts.map +1 -0
  508. package/dist/esm/classic/beta/redTeams/index.js +16 -0
  509. package/dist/esm/classic/beta/redTeams/index.js.map +1 -0
  510. package/dist/esm/classic/beta/schedules/index.d.ts +21 -0
  511. package/dist/esm/classic/beta/schedules/index.d.ts.map +1 -0
  512. package/dist/esm/classic/beta/schedules/index.js +19 -0
  513. package/dist/esm/classic/beta/schedules/index.js.map +1 -0
  514. package/dist/esm/classic/datasets/index.d.ts +1 -1
  515. package/dist/esm/classic/datasets/index.d.ts.map +1 -1
  516. package/dist/esm/classic/datasets/index.js.map +1 -1
  517. package/dist/esm/classic/index.d.ts +7 -6
  518. package/dist/esm/classic/index.d.ts.map +1 -1
  519. package/dist/esm/classic/index.js.map +1 -1
  520. package/dist/esm/classic/indexes/index.js +1 -1
  521. package/dist/esm/classic/indexes/index.js.map +1 -1
  522. package/dist/esm/constants.d.ts +1 -1
  523. package/dist/esm/constants.js +1 -1
  524. package/dist/esm/constants.js.map +1 -1
  525. package/dist/esm/index.d.ts +9 -10
  526. package/dist/esm/index.d.ts.map +1 -1
  527. package/dist/esm/index.js.map +1 -1
  528. package/dist/esm/models/index.d.ts +1 -1
  529. package/dist/esm/models/index.d.ts.map +1 -1
  530. package/dist/esm/models/index.js.map +1 -1
  531. package/dist/esm/models/models.d.ts +2916 -2553
  532. package/dist/esm/models/models.d.ts.map +1 -1
  533. package/dist/esm/models/models.js +2776 -2354
  534. package/dist/esm/models/models.js.map +1 -1
  535. package/dist/esm/overwriteOpenAIClient.js +1 -1
  536. package/dist/esm/overwriteOpenAIClient.js.map +1 -1
  537. package/dist/esm/restorePollerHelpers.d.ts +0 -3
  538. package/dist/esm/restorePollerHelpers.d.ts.map +1 -1
  539. package/dist/esm/restorePollerHelpers.js +13 -13
  540. package/dist/esm/restorePollerHelpers.js.map +1 -1
  541. package/dist/esm/static-helpers/pagingHelpers.d.ts +3 -0
  542. package/dist/esm/static-helpers/pagingHelpers.d.ts.map +1 -1
  543. package/dist/esm/static-helpers/pagingHelpers.js +28 -3
  544. package/dist/esm/static-helpers/pagingHelpers.js.map +1 -1
  545. package/dist/esm/static-helpers/pollingHelpers.d.ts +5 -0
  546. package/dist/esm/static-helpers/pollingHelpers.d.ts.map +1 -1
  547. package/dist/esm/static-helpers/pollingHelpers.js +18 -2
  548. package/dist/esm/static-helpers/pollingHelpers.js.map +1 -1
  549. package/dist/esm/static-helpers/urlTemplate.d.ts.map +1 -1
  550. package/dist/esm/static-helpers/urlTemplate.js +16 -1
  551. package/dist/esm/static-helpers/urlTemplate.js.map +1 -1
  552. package/dist/esm/util.d.ts +11 -0
  553. package/dist/esm/util.d.ts.map +1 -0
  554. package/dist/esm/util.js +93 -0
  555. package/dist/esm/util.js.map +1 -0
  556. package/dist/react-native/aiProjectClient.d.ts +26 -26
  557. package/dist/react-native/aiProjectClient.d.ts.map +1 -1
  558. package/dist/react-native/aiProjectClient.js +37 -39
  559. package/dist/react-native/aiProjectClient.js.map +1 -1
  560. package/dist/react-native/api/agents/index.d.ts +2 -2
  561. package/dist/react-native/api/agents/index.d.ts.map +1 -1
  562. package/dist/react-native/api/agents/index.js +1 -1
  563. package/dist/react-native/api/agents/index.js.map +1 -1
  564. package/dist/react-native/api/agents/operations.d.ts +32 -32
  565. package/dist/react-native/api/agents/operations.d.ts.map +1 -1
  566. package/dist/react-native/api/agents/operations.js +119 -141
  567. package/dist/react-native/api/agents/operations.js.map +1 -1
  568. package/dist/react-native/api/agents/options.d.ts +30 -24
  569. package/dist/react-native/api/agents/options.d.ts.map +1 -1
  570. package/dist/react-native/api/agents/options.js.map +1 -1
  571. package/dist/react-native/api/aiProjectContext.d.ts.map +1 -1
  572. package/dist/react-native/api/aiProjectContext.js +4 -17
  573. package/dist/react-native/api/aiProjectContext.js.map +1 -1
  574. package/dist/react-native/api/beta/evaluationRules/index.d.ts +3 -0
  575. package/dist/react-native/api/beta/evaluationRules/index.d.ts.map +1 -0
  576. package/dist/react-native/api/beta/evaluationRules/index.js +4 -0
  577. package/dist/react-native/api/beta/evaluationRules/index.js.map +1 -0
  578. package/dist/react-native/api/beta/evaluationRules/operations.d.ts +22 -0
  579. package/dist/react-native/api/beta/evaluationRules/operations.d.ts.map +1 -0
  580. package/dist/react-native/api/beta/evaluationRules/operations.js +134 -0
  581. package/dist/react-native/api/beta/evaluationRules/operations.js.map +1 -0
  582. package/dist/react-native/api/beta/evaluationRules/options.d.ts +27 -0
  583. package/dist/react-native/api/beta/evaluationRules/options.d.ts.map +1 -0
  584. package/dist/react-native/api/beta/evaluationRules/options.js.map +1 -0
  585. package/dist/react-native/api/beta/evaluationTaxonomies/index.d.ts +3 -0
  586. package/dist/react-native/api/beta/evaluationTaxonomies/index.d.ts.map +1 -0
  587. package/dist/react-native/api/beta/evaluationTaxonomies/index.js.map +1 -0
  588. package/dist/react-native/api/beta/evaluationTaxonomies/operations.d.ts +26 -0
  589. package/dist/react-native/api/beta/evaluationTaxonomies/operations.d.ts.map +1 -0
  590. package/dist/react-native/api/beta/evaluationTaxonomies/operations.js +164 -0
  591. package/dist/react-native/api/beta/evaluationTaxonomies/operations.js.map +1 -0
  592. package/dist/react-native/api/beta/evaluationTaxonomies/options.d.ts +27 -0
  593. package/dist/react-native/api/beta/evaluationTaxonomies/options.d.ts.map +1 -0
  594. package/dist/react-native/api/beta/evaluationTaxonomies/options.js.map +1 -0
  595. package/dist/react-native/api/beta/evaluators/index.d.ts +3 -0
  596. package/dist/react-native/api/beta/evaluators/index.d.ts.map +1 -0
  597. package/dist/react-native/api/beta/evaluators/index.js.map +1 -0
  598. package/dist/react-native/api/beta/evaluators/operations.d.ts +30 -0
  599. package/dist/react-native/api/beta/evaluators/operations.d.ts.map +1 -0
  600. package/dist/react-native/api/beta/evaluators/operations.js +185 -0
  601. package/dist/react-native/api/beta/evaluators/operations.js.map +1 -0
  602. package/dist/react-native/api/beta/evaluators/options.d.ts +29 -0
  603. package/dist/react-native/api/beta/evaluators/options.d.ts.map +1 -0
  604. package/dist/react-native/api/beta/evaluators/options.js.map +1 -0
  605. package/dist/react-native/api/beta/insights/index.d.ts +3 -0
  606. package/dist/react-native/api/beta/insights/index.d.ts.map +1 -0
  607. package/dist/react-native/api/beta/insights/index.js.map +1 -0
  608. package/dist/react-native/api/beta/insights/operations.d.ts +18 -0
  609. package/dist/react-native/api/beta/insights/operations.d.ts.map +1 -0
  610. package/dist/react-native/api/beta/insights/operations.js +115 -0
  611. package/dist/react-native/api/beta/insights/operations.js.map +1 -0
  612. package/dist/react-native/api/beta/insights/options.d.ts +32 -0
  613. package/dist/react-native/api/beta/insights/options.d.ts.map +1 -0
  614. package/dist/react-native/api/beta/insights/options.js.map +1 -0
  615. package/dist/react-native/api/beta/memoryStores/index.d.ts +3 -0
  616. package/dist/react-native/api/beta/memoryStores/index.d.ts.map +1 -0
  617. package/dist/react-native/api/beta/memoryStores/index.js +4 -0
  618. package/dist/react-native/api/beta/memoryStores/index.js.map +1 -0
  619. package/dist/react-native/api/beta/memoryStores/operations.d.ts +43 -0
  620. package/dist/react-native/api/beta/memoryStores/operations.d.ts.map +1 -0
  621. package/dist/react-native/api/beta/memoryStores/operations.js +323 -0
  622. package/dist/react-native/api/beta/memoryStores/operations.js.map +1 -0
  623. package/dist/react-native/api/beta/memoryStores/options.d.ts +79 -0
  624. package/dist/react-native/api/beta/memoryStores/options.d.ts.map +1 -0
  625. package/dist/react-native/api/beta/memoryStores/options.js +4 -0
  626. package/dist/react-native/api/beta/memoryStores/options.js.map +1 -0
  627. package/dist/react-native/api/beta/redTeams/index.d.ts +3 -0
  628. package/dist/react-native/api/beta/redTeams/index.d.ts.map +1 -0
  629. package/dist/react-native/api/beta/redTeams/index.js.map +1 -0
  630. package/dist/react-native/api/beta/redTeams/operations.d.ts +18 -0
  631. package/dist/react-native/api/beta/redTeams/operations.d.ts.map +1 -0
  632. package/dist/react-native/api/beta/redTeams/operations.js +101 -0
  633. package/dist/react-native/api/beta/redTeams/operations.js.map +1 -0
  634. package/dist/react-native/api/beta/redTeams/options.d.ts +15 -0
  635. package/dist/react-native/api/beta/redTeams/options.d.ts.map +1 -0
  636. package/dist/react-native/api/beta/redTeams/options.js +4 -0
  637. package/dist/react-native/api/beta/redTeams/options.js.map +1 -0
  638. package/dist/react-native/api/beta/schedules/index.d.ts +3 -0
  639. package/dist/react-native/api/beta/schedules/index.d.ts.map +1 -0
  640. package/dist/react-native/api/beta/schedules/index.js.map +1 -0
  641. package/dist/react-native/api/beta/schedules/operations.d.ts +30 -0
  642. package/dist/react-native/api/beta/schedules/operations.d.ts.map +1 -0
  643. package/dist/react-native/api/beta/schedules/operations.js +199 -0
  644. package/dist/react-native/api/beta/schedules/operations.js.map +1 -0
  645. package/dist/react-native/api/beta/schedules/options.d.ts +39 -0
  646. package/dist/react-native/api/beta/schedules/options.d.ts.map +1 -0
  647. package/dist/react-native/api/beta/schedules/options.js +4 -0
  648. package/dist/react-native/api/beta/schedules/options.js.map +1 -0
  649. package/dist/react-native/api/connections/operations.js +1 -1
  650. package/dist/react-native/api/connections/operations.js.map +1 -1
  651. package/dist/react-native/api/datasets/operations.js +2 -2
  652. package/dist/react-native/api/datasets/operations.js.map +1 -1
  653. package/dist/react-native/api/deployments/operations.js +1 -1
  654. package/dist/react-native/api/deployments/operations.js.map +1 -1
  655. package/dist/react-native/api/evaluationRules/operations.d.ts.map +1 -1
  656. package/dist/react-native/api/evaluationRules/operations.js +14 -11
  657. package/dist/react-native/api/evaluationRules/operations.js.map +1 -1
  658. package/dist/react-native/api/evaluationRules/options.d.ts +8 -6
  659. package/dist/react-native/api/evaluationRules/options.d.ts.map +1 -1
  660. package/dist/react-native/api/evaluationRules/options.js.map +1 -1
  661. package/dist/react-native/api/indexes/operations.d.ts +1 -1
  662. package/dist/react-native/api/indexes/operations.d.ts.map +1 -1
  663. package/dist/react-native/api/indexes/operations.js +3 -3
  664. package/dist/react-native/api/indexes/operations.js.map +1 -1
  665. package/dist/react-native/classic/agents/index.d.ts +15 -15
  666. package/dist/react-native/classic/agents/index.d.ts.map +1 -1
  667. package/dist/react-native/classic/agents/index.js +10 -10
  668. package/dist/react-native/classic/agents/index.js.map +1 -1
  669. package/dist/react-native/classic/beta/evaluationRules/index.d.ts +17 -0
  670. package/dist/react-native/classic/beta/evaluationRules/index.d.ts.map +1 -0
  671. package/dist/react-native/classic/beta/evaluationRules/index.js +17 -0
  672. package/dist/react-native/classic/beta/evaluationRules/index.js.map +1 -0
  673. package/dist/react-native/classic/beta/evaluationTaxonomies/index.d.ts +19 -0
  674. package/dist/react-native/classic/beta/evaluationTaxonomies/index.d.ts.map +1 -0
  675. package/dist/react-native/classic/beta/evaluationTaxonomies/index.js +18 -0
  676. package/dist/react-native/classic/beta/evaluationTaxonomies/index.js.map +1 -0
  677. package/dist/react-native/classic/beta/evaluators/index.d.ts +21 -0
  678. package/dist/react-native/classic/beta/evaluators/index.d.ts.map +1 -0
  679. package/dist/react-native/classic/beta/evaluators/index.js +19 -0
  680. package/dist/react-native/classic/beta/evaluators/index.js.map +1 -0
  681. package/dist/react-native/classic/beta/index.d.ts +18 -0
  682. package/dist/react-native/classic/beta/index.d.ts.map +1 -0
  683. package/dist/react-native/classic/beta/index.js +19 -0
  684. package/dist/react-native/classic/beta/index.js.map +1 -0
  685. package/dist/react-native/classic/beta/insights/index.d.ts +15 -0
  686. package/dist/react-native/classic/beta/insights/index.d.ts.map +1 -0
  687. package/dist/react-native/classic/beta/insights/index.js +16 -0
  688. package/dist/react-native/classic/beta/insights/index.js.map +1 -0
  689. package/dist/react-native/classic/beta/memoryStores/index.d.ts +28 -0
  690. package/dist/react-native/classic/beta/memoryStores/index.d.ts.map +1 -0
  691. package/dist/react-native/classic/beta/memoryStores/index.js +22 -0
  692. package/dist/react-native/classic/beta/memoryStores/index.js.map +1 -0
  693. package/dist/react-native/classic/beta/redTeams/index.d.ts +15 -0
  694. package/dist/react-native/classic/beta/redTeams/index.d.ts.map +1 -0
  695. package/dist/react-native/classic/beta/redTeams/index.js +16 -0
  696. package/dist/react-native/classic/beta/redTeams/index.js.map +1 -0
  697. package/dist/react-native/classic/beta/schedules/index.d.ts +21 -0
  698. package/dist/react-native/classic/beta/schedules/index.d.ts.map +1 -0
  699. package/dist/react-native/classic/beta/schedules/index.js +19 -0
  700. package/dist/react-native/classic/beta/schedules/index.js.map +1 -0
  701. package/dist/react-native/classic/datasets/index.d.ts +1 -1
  702. package/dist/react-native/classic/datasets/index.d.ts.map +1 -1
  703. package/dist/react-native/classic/datasets/index.js.map +1 -1
  704. package/dist/react-native/classic/index.d.ts +7 -6
  705. package/dist/react-native/classic/index.d.ts.map +1 -1
  706. package/dist/react-native/classic/index.js.map +1 -1
  707. package/dist/react-native/classic/indexes/index.js +1 -1
  708. package/dist/react-native/classic/indexes/index.js.map +1 -1
  709. package/dist/react-native/constants.d.ts +1 -1
  710. package/dist/react-native/constants.js +1 -1
  711. package/dist/react-native/constants.js.map +1 -1
  712. package/dist/react-native/index.d.ts +9 -10
  713. package/dist/react-native/index.d.ts.map +1 -1
  714. package/dist/react-native/index.js.map +1 -1
  715. package/dist/react-native/models/index.d.ts +1 -1
  716. package/dist/react-native/models/index.d.ts.map +1 -1
  717. package/dist/react-native/models/index.js.map +1 -1
  718. package/dist/react-native/models/models.d.ts +2916 -2553
  719. package/dist/react-native/models/models.d.ts.map +1 -1
  720. package/dist/react-native/models/models.js +2776 -2354
  721. package/dist/react-native/models/models.js.map +1 -1
  722. package/dist/react-native/overwriteOpenAIClient.js +1 -1
  723. package/dist/react-native/overwriteOpenAIClient.js.map +1 -1
  724. package/dist/react-native/restorePollerHelpers.d.ts +0 -3
  725. package/dist/react-native/restorePollerHelpers.d.ts.map +1 -1
  726. package/dist/react-native/restorePollerHelpers.js +13 -13
  727. package/dist/react-native/restorePollerHelpers.js.map +1 -1
  728. package/dist/react-native/static-helpers/pagingHelpers.d.ts +3 -0
  729. package/dist/react-native/static-helpers/pagingHelpers.d.ts.map +1 -1
  730. package/dist/react-native/static-helpers/pagingHelpers.js +28 -3
  731. package/dist/react-native/static-helpers/pagingHelpers.js.map +1 -1
  732. package/dist/react-native/static-helpers/pollingHelpers.d.ts +5 -0
  733. package/dist/react-native/static-helpers/pollingHelpers.d.ts.map +1 -1
  734. package/dist/react-native/static-helpers/pollingHelpers.js +18 -2
  735. package/dist/react-native/static-helpers/pollingHelpers.js.map +1 -1
  736. package/dist/react-native/static-helpers/urlTemplate.d.ts.map +1 -1
  737. package/dist/react-native/static-helpers/urlTemplate.js +16 -1
  738. package/dist/react-native/static-helpers/urlTemplate.js.map +1 -1
  739. package/dist/react-native/util.d.ts +11 -0
  740. package/dist/react-native/util.d.ts.map +1 -0
  741. package/dist/react-native/util.js +93 -0
  742. package/dist/react-native/util.js.map +1 -0
  743. package/package.json +7 -6
  744. package/dist/browser/api/evaluationTaxonomies/index.d.ts +0 -3
  745. package/dist/browser/api/evaluationTaxonomies/index.d.ts.map +0 -1
  746. package/dist/browser/api/evaluationTaxonomies/index.js.map +0 -1
  747. package/dist/browser/api/evaluationTaxonomies/operations.d.ts +0 -26
  748. package/dist/browser/api/evaluationTaxonomies/operations.d.ts.map +0 -1
  749. package/dist/browser/api/evaluationTaxonomies/operations.js +0 -154
  750. package/dist/browser/api/evaluationTaxonomies/operations.js.map +0 -1
  751. package/dist/browser/api/evaluationTaxonomies/options.d.ts +0 -27
  752. package/dist/browser/api/evaluationTaxonomies/options.d.ts.map +0 -1
  753. package/dist/browser/api/evaluationTaxonomies/options.js.map +0 -1
  754. package/dist/browser/api/evaluators/index.d.ts +0 -3
  755. package/dist/browser/api/evaluators/index.d.ts.map +0 -1
  756. package/dist/browser/api/evaluators/index.js.map +0 -1
  757. package/dist/browser/api/evaluators/operations.d.ts +0 -30
  758. package/dist/browser/api/evaluators/operations.d.ts.map +0 -1
  759. package/dist/browser/api/evaluators/operations.js +0 -171
  760. package/dist/browser/api/evaluators/operations.js.map +0 -1
  761. package/dist/browser/api/evaluators/options.d.ts +0 -29
  762. package/dist/browser/api/evaluators/options.d.ts.map +0 -1
  763. package/dist/browser/api/evaluators/options.js.map +0 -1
  764. package/dist/browser/api/insights/index.d.ts +0 -3
  765. package/dist/browser/api/insights/index.d.ts.map +0 -1
  766. package/dist/browser/api/insights/index.js.map +0 -1
  767. package/dist/browser/api/insights/operations.d.ts +0 -18
  768. package/dist/browser/api/insights/operations.d.ts.map +0 -1
  769. package/dist/browser/api/insights/operations.js +0 -109
  770. package/dist/browser/api/insights/operations.js.map +0 -1
  771. package/dist/browser/api/insights/options.d.ts +0 -32
  772. package/dist/browser/api/insights/options.d.ts.map +0 -1
  773. package/dist/browser/api/insights/options.js.map +0 -1
  774. package/dist/browser/api/memoryStores/index.d.ts +0 -4
  775. package/dist/browser/api/memoryStores/index.d.ts.map +0 -1
  776. package/dist/browser/api/memoryStores/index.js +0 -4
  777. package/dist/browser/api/memoryStores/index.js.map +0 -1
  778. package/dist/browser/api/memoryStores/memoryStoreUpdateMemoriesPoller.d.ts +0 -43
  779. package/dist/browser/api/memoryStores/memoryStoreUpdateMemoriesPoller.d.ts.map +0 -1
  780. package/dist/browser/api/memoryStores/memoryStoreUpdateMemoriesPoller.js +0 -160
  781. package/dist/browser/api/memoryStores/memoryStoreUpdateMemoriesPoller.js.map +0 -1
  782. package/dist/browser/api/memoryStores/operations.d.ts +0 -42
  783. package/dist/browser/api/memoryStores/operations.d.ts.map +0 -1
  784. package/dist/browser/api/memoryStores/operations.js +0 -293
  785. package/dist/browser/api/memoryStores/operations.js.map +0 -1
  786. package/dist/browser/api/memoryStores/options.d.ts +0 -83
  787. package/dist/browser/api/memoryStores/options.d.ts.map +0 -1
  788. package/dist/browser/api/memoryStores/options.js.map +0 -1
  789. package/dist/browser/api/redTeams/index.d.ts +0 -3
  790. package/dist/browser/api/redTeams/index.d.ts.map +0 -1
  791. package/dist/browser/api/redTeams/index.js.map +0 -1
  792. package/dist/browser/api/redTeams/operations.d.ts +0 -18
  793. package/dist/browser/api/redTeams/operations.d.ts.map +0 -1
  794. package/dist/browser/api/redTeams/operations.js +0 -93
  795. package/dist/browser/api/redTeams/operations.js.map +0 -1
  796. package/dist/browser/api/redTeams/options.d.ts +0 -15
  797. package/dist/browser/api/redTeams/options.d.ts.map +0 -1
  798. package/dist/browser/api/redTeams/options.js.map +0 -1
  799. package/dist/browser/api/schedules/index.d.ts +0 -3
  800. package/dist/browser/api/schedules/index.d.ts.map +0 -1
  801. package/dist/browser/api/schedules/index.js.map +0 -1
  802. package/dist/browser/api/schedules/operations.d.ts +0 -30
  803. package/dist/browser/api/schedules/operations.d.ts.map +0 -1
  804. package/dist/browser/api/schedules/operations.js +0 -178
  805. package/dist/browser/api/schedules/operations.js.map +0 -1
  806. package/dist/browser/api/schedules/options.d.ts +0 -26
  807. package/dist/browser/api/schedules/options.d.ts.map +0 -1
  808. package/dist/browser/api/schedules/options.js.map +0 -1
  809. package/dist/browser/classic/evaluationTaxonomies/index.d.ts +0 -19
  810. package/dist/browser/classic/evaluationTaxonomies/index.d.ts.map +0 -1
  811. package/dist/browser/classic/evaluationTaxonomies/index.js +0 -18
  812. package/dist/browser/classic/evaluationTaxonomies/index.js.map +0 -1
  813. package/dist/browser/classic/evaluators/index.d.ts +0 -21
  814. package/dist/browser/classic/evaluators/index.d.ts.map +0 -1
  815. package/dist/browser/classic/evaluators/index.js +0 -25
  816. package/dist/browser/classic/evaluators/index.js.map +0 -1
  817. package/dist/browser/classic/insights/index.d.ts +0 -15
  818. package/dist/browser/classic/insights/index.d.ts.map +0 -1
  819. package/dist/browser/classic/insights/index.js +0 -16
  820. package/dist/browser/classic/insights/index.js.map +0 -1
  821. package/dist/browser/classic/memoryStores/index.d.ts +0 -28
  822. package/dist/browser/classic/memoryStores/index.d.ts.map +0 -1
  823. package/dist/browser/classic/memoryStores/index.js +0 -22
  824. package/dist/browser/classic/memoryStores/index.js.map +0 -1
  825. package/dist/browser/classic/redTeams/index.d.ts +0 -15
  826. package/dist/browser/classic/redTeams/index.d.ts.map +0 -1
  827. package/dist/browser/classic/redTeams/index.js +0 -16
  828. package/dist/browser/classic/redTeams/index.js.map +0 -1
  829. package/dist/browser/classic/schedules/index.d.ts +0 -21
  830. package/dist/browser/classic/schedules/index.d.ts.map +0 -1
  831. package/dist/browser/classic/schedules/index.js +0 -19
  832. package/dist/browser/classic/schedules/index.js.map +0 -1
  833. package/dist/commonjs/api/evaluationTaxonomies/index.d.ts +0 -3
  834. package/dist/commonjs/api/evaluationTaxonomies/index.d.ts.map +0 -1
  835. package/dist/commonjs/api/evaluationTaxonomies/index.js.map +0 -1
  836. package/dist/commonjs/api/evaluationTaxonomies/operations.d.ts +0 -26
  837. package/dist/commonjs/api/evaluationTaxonomies/operations.d.ts.map +0 -1
  838. package/dist/commonjs/api/evaluationTaxonomies/operations.js +0 -171
  839. package/dist/commonjs/api/evaluationTaxonomies/operations.js.map +0 -1
  840. package/dist/commonjs/api/evaluationTaxonomies/options.d.ts +0 -27
  841. package/dist/commonjs/api/evaluationTaxonomies/options.d.ts.map +0 -1
  842. package/dist/commonjs/api/evaluationTaxonomies/options.js.map +0 -1
  843. package/dist/commonjs/api/evaluators/index.d.ts +0 -3
  844. package/dist/commonjs/api/evaluators/index.d.ts.map +0 -1
  845. package/dist/commonjs/api/evaluators/index.js.map +0 -1
  846. package/dist/commonjs/api/evaluators/operations.d.ts +0 -30
  847. package/dist/commonjs/api/evaluators/operations.d.ts.map +0 -1
  848. package/dist/commonjs/api/evaluators/operations.js +0 -191
  849. package/dist/commonjs/api/evaluators/operations.js.map +0 -1
  850. package/dist/commonjs/api/evaluators/options.d.ts +0 -29
  851. package/dist/commonjs/api/evaluators/options.d.ts.map +0 -1
  852. package/dist/commonjs/api/evaluators/options.js.map +0 -1
  853. package/dist/commonjs/api/insights/index.d.ts +0 -3
  854. package/dist/commonjs/api/insights/index.d.ts.map +0 -1
  855. package/dist/commonjs/api/insights/index.js.map +0 -1
  856. package/dist/commonjs/api/insights/operations.d.ts +0 -18
  857. package/dist/commonjs/api/insights/operations.d.ts.map +0 -1
  858. package/dist/commonjs/api/insights/operations.js +0 -120
  859. package/dist/commonjs/api/insights/operations.js.map +0 -1
  860. package/dist/commonjs/api/insights/options.d.ts +0 -32
  861. package/dist/commonjs/api/insights/options.d.ts.map +0 -1
  862. package/dist/commonjs/api/insights/options.js.map +0 -1
  863. package/dist/commonjs/api/memoryStores/index.d.ts +0 -4
  864. package/dist/commonjs/api/memoryStores/index.d.ts.map +0 -1
  865. package/dist/commonjs/api/memoryStores/index.js +0 -16
  866. package/dist/commonjs/api/memoryStores/index.js.map +0 -1
  867. package/dist/commonjs/api/memoryStores/memoryStoreUpdateMemoriesPoller.d.ts +0 -43
  868. package/dist/commonjs/api/memoryStores/memoryStoreUpdateMemoriesPoller.d.ts.map +0 -1
  869. package/dist/commonjs/api/memoryStores/memoryStoreUpdateMemoriesPoller.js +0 -163
  870. package/dist/commonjs/api/memoryStores/memoryStoreUpdateMemoriesPoller.js.map +0 -1
  871. package/dist/commonjs/api/memoryStores/operations.d.ts +0 -42
  872. package/dist/commonjs/api/memoryStores/operations.d.ts.map +0 -1
  873. package/dist/commonjs/api/memoryStores/operations.js +0 -321
  874. package/dist/commonjs/api/memoryStores/operations.js.map +0 -1
  875. package/dist/commonjs/api/memoryStores/options.d.ts +0 -83
  876. package/dist/commonjs/api/memoryStores/options.d.ts.map +0 -1
  877. package/dist/commonjs/api/memoryStores/options.js.map +0 -1
  878. package/dist/commonjs/api/redTeams/index.d.ts +0 -3
  879. package/dist/commonjs/api/redTeams/index.d.ts.map +0 -1
  880. package/dist/commonjs/api/redTeams/index.js.map +0 -1
  881. package/dist/commonjs/api/redTeams/operations.d.ts +0 -18
  882. package/dist/commonjs/api/redTeams/operations.d.ts.map +0 -1
  883. package/dist/commonjs/api/redTeams/operations.js +0 -104
  884. package/dist/commonjs/api/redTeams/operations.js.map +0 -1
  885. package/dist/commonjs/api/redTeams/options.d.ts +0 -15
  886. package/dist/commonjs/api/redTeams/options.d.ts.map +0 -1
  887. package/dist/commonjs/api/redTeams/options.js.map +0 -1
  888. package/dist/commonjs/api/schedules/index.d.ts +0 -3
  889. package/dist/commonjs/api/schedules/index.d.ts.map +0 -1
  890. package/dist/commonjs/api/schedules/index.js.map +0 -1
  891. package/dist/commonjs/api/schedules/operations.d.ts +0 -30
  892. package/dist/commonjs/api/schedules/operations.d.ts.map +0 -1
  893. package/dist/commonjs/api/schedules/operations.js +0 -198
  894. package/dist/commonjs/api/schedules/operations.js.map +0 -1
  895. package/dist/commonjs/api/schedules/options.d.ts +0 -26
  896. package/dist/commonjs/api/schedules/options.d.ts.map +0 -1
  897. package/dist/commonjs/api/schedules/options.js.map +0 -1
  898. package/dist/commonjs/classic/evaluationTaxonomies/index.d.ts +0 -19
  899. package/dist/commonjs/classic/evaluationTaxonomies/index.d.ts.map +0 -1
  900. package/dist/commonjs/classic/evaluationTaxonomies/index.js +0 -21
  901. package/dist/commonjs/classic/evaluationTaxonomies/index.js.map +0 -1
  902. package/dist/commonjs/classic/evaluators/index.d.ts +0 -21
  903. package/dist/commonjs/classic/evaluators/index.d.ts.map +0 -1
  904. package/dist/commonjs/classic/evaluators/index.js +0 -28
  905. package/dist/commonjs/classic/evaluators/index.js.map +0 -1
  906. package/dist/commonjs/classic/insights/index.d.ts +0 -15
  907. package/dist/commonjs/classic/insights/index.d.ts.map +0 -1
  908. package/dist/commonjs/classic/insights/index.js +0 -19
  909. package/dist/commonjs/classic/insights/index.js.map +0 -1
  910. package/dist/commonjs/classic/memoryStores/index.d.ts +0 -28
  911. package/dist/commonjs/classic/memoryStores/index.d.ts.map +0 -1
  912. package/dist/commonjs/classic/memoryStores/index.js +0 -25
  913. package/dist/commonjs/classic/memoryStores/index.js.map +0 -1
  914. package/dist/commonjs/classic/redTeams/index.d.ts +0 -15
  915. package/dist/commonjs/classic/redTeams/index.d.ts.map +0 -1
  916. package/dist/commonjs/classic/redTeams/index.js +0 -19
  917. package/dist/commonjs/classic/redTeams/index.js.map +0 -1
  918. package/dist/commonjs/classic/schedules/index.d.ts +0 -21
  919. package/dist/commonjs/classic/schedules/index.d.ts.map +0 -1
  920. package/dist/commonjs/classic/schedules/index.js +0 -22
  921. package/dist/commonjs/classic/schedules/index.js.map +0 -1
  922. package/dist/esm/api/evaluationTaxonomies/index.d.ts +0 -3
  923. package/dist/esm/api/evaluationTaxonomies/index.d.ts.map +0 -1
  924. package/dist/esm/api/evaluationTaxonomies/index.js.map +0 -1
  925. package/dist/esm/api/evaluationTaxonomies/operations.d.ts +0 -26
  926. package/dist/esm/api/evaluationTaxonomies/operations.d.ts.map +0 -1
  927. package/dist/esm/api/evaluationTaxonomies/operations.js +0 -154
  928. package/dist/esm/api/evaluationTaxonomies/operations.js.map +0 -1
  929. package/dist/esm/api/evaluationTaxonomies/options.d.ts +0 -27
  930. package/dist/esm/api/evaluationTaxonomies/options.d.ts.map +0 -1
  931. package/dist/esm/api/evaluationTaxonomies/options.js.map +0 -1
  932. package/dist/esm/api/evaluators/index.d.ts +0 -3
  933. package/dist/esm/api/evaluators/index.d.ts.map +0 -1
  934. package/dist/esm/api/evaluators/index.js.map +0 -1
  935. package/dist/esm/api/evaluators/operations.d.ts +0 -30
  936. package/dist/esm/api/evaluators/operations.d.ts.map +0 -1
  937. package/dist/esm/api/evaluators/operations.js +0 -171
  938. package/dist/esm/api/evaluators/operations.js.map +0 -1
  939. package/dist/esm/api/evaluators/options.d.ts +0 -29
  940. package/dist/esm/api/evaluators/options.d.ts.map +0 -1
  941. package/dist/esm/api/evaluators/options.js.map +0 -1
  942. package/dist/esm/api/insights/index.d.ts +0 -3
  943. package/dist/esm/api/insights/index.d.ts.map +0 -1
  944. package/dist/esm/api/insights/index.js.map +0 -1
  945. package/dist/esm/api/insights/operations.d.ts +0 -18
  946. package/dist/esm/api/insights/operations.d.ts.map +0 -1
  947. package/dist/esm/api/insights/operations.js +0 -109
  948. package/dist/esm/api/insights/operations.js.map +0 -1
  949. package/dist/esm/api/insights/options.d.ts +0 -32
  950. package/dist/esm/api/insights/options.d.ts.map +0 -1
  951. package/dist/esm/api/insights/options.js.map +0 -1
  952. package/dist/esm/api/memoryStores/index.d.ts +0 -4
  953. package/dist/esm/api/memoryStores/index.d.ts.map +0 -1
  954. package/dist/esm/api/memoryStores/index.js +0 -4
  955. package/dist/esm/api/memoryStores/index.js.map +0 -1
  956. package/dist/esm/api/memoryStores/memoryStoreUpdateMemoriesPoller.d.ts +0 -43
  957. package/dist/esm/api/memoryStores/memoryStoreUpdateMemoriesPoller.d.ts.map +0 -1
  958. package/dist/esm/api/memoryStores/memoryStoreUpdateMemoriesPoller.js +0 -160
  959. package/dist/esm/api/memoryStores/memoryStoreUpdateMemoriesPoller.js.map +0 -1
  960. package/dist/esm/api/memoryStores/operations.d.ts +0 -42
  961. package/dist/esm/api/memoryStores/operations.d.ts.map +0 -1
  962. package/dist/esm/api/memoryStores/operations.js +0 -293
  963. package/dist/esm/api/memoryStores/operations.js.map +0 -1
  964. package/dist/esm/api/memoryStores/options.d.ts +0 -83
  965. package/dist/esm/api/memoryStores/options.d.ts.map +0 -1
  966. package/dist/esm/api/memoryStores/options.js.map +0 -1
  967. package/dist/esm/api/redTeams/index.d.ts +0 -3
  968. package/dist/esm/api/redTeams/index.d.ts.map +0 -1
  969. package/dist/esm/api/redTeams/index.js.map +0 -1
  970. package/dist/esm/api/redTeams/operations.d.ts +0 -18
  971. package/dist/esm/api/redTeams/operations.d.ts.map +0 -1
  972. package/dist/esm/api/redTeams/operations.js +0 -93
  973. package/dist/esm/api/redTeams/operations.js.map +0 -1
  974. package/dist/esm/api/redTeams/options.d.ts +0 -15
  975. package/dist/esm/api/redTeams/options.d.ts.map +0 -1
  976. package/dist/esm/api/redTeams/options.js.map +0 -1
  977. package/dist/esm/api/schedules/index.d.ts +0 -3
  978. package/dist/esm/api/schedules/index.d.ts.map +0 -1
  979. package/dist/esm/api/schedules/index.js.map +0 -1
  980. package/dist/esm/api/schedules/operations.d.ts +0 -30
  981. package/dist/esm/api/schedules/operations.d.ts.map +0 -1
  982. package/dist/esm/api/schedules/operations.js +0 -178
  983. package/dist/esm/api/schedules/operations.js.map +0 -1
  984. package/dist/esm/api/schedules/options.d.ts +0 -26
  985. package/dist/esm/api/schedules/options.d.ts.map +0 -1
  986. package/dist/esm/api/schedules/options.js.map +0 -1
  987. package/dist/esm/classic/evaluationTaxonomies/index.d.ts +0 -19
  988. package/dist/esm/classic/evaluationTaxonomies/index.d.ts.map +0 -1
  989. package/dist/esm/classic/evaluationTaxonomies/index.js +0 -18
  990. package/dist/esm/classic/evaluationTaxonomies/index.js.map +0 -1
  991. package/dist/esm/classic/evaluators/index.d.ts +0 -21
  992. package/dist/esm/classic/evaluators/index.d.ts.map +0 -1
  993. package/dist/esm/classic/evaluators/index.js +0 -25
  994. package/dist/esm/classic/evaluators/index.js.map +0 -1
  995. package/dist/esm/classic/insights/index.d.ts +0 -15
  996. package/dist/esm/classic/insights/index.d.ts.map +0 -1
  997. package/dist/esm/classic/insights/index.js +0 -16
  998. package/dist/esm/classic/insights/index.js.map +0 -1
  999. package/dist/esm/classic/memoryStores/index.d.ts +0 -28
  1000. package/dist/esm/classic/memoryStores/index.d.ts.map +0 -1
  1001. package/dist/esm/classic/memoryStores/index.js +0 -22
  1002. package/dist/esm/classic/memoryStores/index.js.map +0 -1
  1003. package/dist/esm/classic/redTeams/index.d.ts +0 -15
  1004. package/dist/esm/classic/redTeams/index.d.ts.map +0 -1
  1005. package/dist/esm/classic/redTeams/index.js +0 -16
  1006. package/dist/esm/classic/redTeams/index.js.map +0 -1
  1007. package/dist/esm/classic/schedules/index.d.ts +0 -21
  1008. package/dist/esm/classic/schedules/index.d.ts.map +0 -1
  1009. package/dist/esm/classic/schedules/index.js +0 -19
  1010. package/dist/esm/classic/schedules/index.js.map +0 -1
  1011. package/dist/react-native/api/evaluationTaxonomies/index.d.ts +0 -3
  1012. package/dist/react-native/api/evaluationTaxonomies/index.d.ts.map +0 -1
  1013. package/dist/react-native/api/evaluationTaxonomies/index.js.map +0 -1
  1014. package/dist/react-native/api/evaluationTaxonomies/operations.d.ts +0 -26
  1015. package/dist/react-native/api/evaluationTaxonomies/operations.d.ts.map +0 -1
  1016. package/dist/react-native/api/evaluationTaxonomies/operations.js +0 -154
  1017. package/dist/react-native/api/evaluationTaxonomies/operations.js.map +0 -1
  1018. package/dist/react-native/api/evaluationTaxonomies/options.d.ts +0 -27
  1019. package/dist/react-native/api/evaluationTaxonomies/options.d.ts.map +0 -1
  1020. package/dist/react-native/api/evaluationTaxonomies/options.js.map +0 -1
  1021. package/dist/react-native/api/evaluators/index.d.ts +0 -3
  1022. package/dist/react-native/api/evaluators/index.d.ts.map +0 -1
  1023. package/dist/react-native/api/evaluators/index.js.map +0 -1
  1024. package/dist/react-native/api/evaluators/operations.d.ts +0 -30
  1025. package/dist/react-native/api/evaluators/operations.d.ts.map +0 -1
  1026. package/dist/react-native/api/evaluators/operations.js +0 -171
  1027. package/dist/react-native/api/evaluators/operations.js.map +0 -1
  1028. package/dist/react-native/api/evaluators/options.d.ts +0 -29
  1029. package/dist/react-native/api/evaluators/options.d.ts.map +0 -1
  1030. package/dist/react-native/api/evaluators/options.js.map +0 -1
  1031. package/dist/react-native/api/insights/index.d.ts +0 -3
  1032. package/dist/react-native/api/insights/index.d.ts.map +0 -1
  1033. package/dist/react-native/api/insights/index.js.map +0 -1
  1034. package/dist/react-native/api/insights/operations.d.ts +0 -18
  1035. package/dist/react-native/api/insights/operations.d.ts.map +0 -1
  1036. package/dist/react-native/api/insights/operations.js +0 -109
  1037. package/dist/react-native/api/insights/operations.js.map +0 -1
  1038. package/dist/react-native/api/insights/options.d.ts +0 -32
  1039. package/dist/react-native/api/insights/options.d.ts.map +0 -1
  1040. package/dist/react-native/api/insights/options.js.map +0 -1
  1041. package/dist/react-native/api/memoryStores/index.d.ts +0 -4
  1042. package/dist/react-native/api/memoryStores/index.d.ts.map +0 -1
  1043. package/dist/react-native/api/memoryStores/index.js +0 -4
  1044. package/dist/react-native/api/memoryStores/index.js.map +0 -1
  1045. package/dist/react-native/api/memoryStores/memoryStoreUpdateMemoriesPoller.d.ts +0 -43
  1046. package/dist/react-native/api/memoryStores/memoryStoreUpdateMemoriesPoller.d.ts.map +0 -1
  1047. package/dist/react-native/api/memoryStores/memoryStoreUpdateMemoriesPoller.js +0 -160
  1048. package/dist/react-native/api/memoryStores/memoryStoreUpdateMemoriesPoller.js.map +0 -1
  1049. package/dist/react-native/api/memoryStores/operations.d.ts +0 -42
  1050. package/dist/react-native/api/memoryStores/operations.d.ts.map +0 -1
  1051. package/dist/react-native/api/memoryStores/operations.js +0 -293
  1052. package/dist/react-native/api/memoryStores/operations.js.map +0 -1
  1053. package/dist/react-native/api/memoryStores/options.d.ts +0 -83
  1054. package/dist/react-native/api/memoryStores/options.d.ts.map +0 -1
  1055. package/dist/react-native/api/memoryStores/options.js.map +0 -1
  1056. package/dist/react-native/api/redTeams/index.d.ts +0 -3
  1057. package/dist/react-native/api/redTeams/index.d.ts.map +0 -1
  1058. package/dist/react-native/api/redTeams/index.js.map +0 -1
  1059. package/dist/react-native/api/redTeams/operations.d.ts +0 -18
  1060. package/dist/react-native/api/redTeams/operations.d.ts.map +0 -1
  1061. package/dist/react-native/api/redTeams/operations.js +0 -93
  1062. package/dist/react-native/api/redTeams/operations.js.map +0 -1
  1063. package/dist/react-native/api/redTeams/options.d.ts +0 -15
  1064. package/dist/react-native/api/redTeams/options.d.ts.map +0 -1
  1065. package/dist/react-native/api/redTeams/options.js.map +0 -1
  1066. package/dist/react-native/api/schedules/index.d.ts +0 -3
  1067. package/dist/react-native/api/schedules/index.d.ts.map +0 -1
  1068. package/dist/react-native/api/schedules/index.js.map +0 -1
  1069. package/dist/react-native/api/schedules/operations.d.ts +0 -30
  1070. package/dist/react-native/api/schedules/operations.d.ts.map +0 -1
  1071. package/dist/react-native/api/schedules/operations.js +0 -178
  1072. package/dist/react-native/api/schedules/operations.js.map +0 -1
  1073. package/dist/react-native/api/schedules/options.d.ts +0 -26
  1074. package/dist/react-native/api/schedules/options.d.ts.map +0 -1
  1075. package/dist/react-native/api/schedules/options.js.map +0 -1
  1076. package/dist/react-native/classic/evaluationTaxonomies/index.d.ts +0 -19
  1077. package/dist/react-native/classic/evaluationTaxonomies/index.d.ts.map +0 -1
  1078. package/dist/react-native/classic/evaluationTaxonomies/index.js +0 -18
  1079. package/dist/react-native/classic/evaluationTaxonomies/index.js.map +0 -1
  1080. package/dist/react-native/classic/evaluators/index.d.ts +0 -21
  1081. package/dist/react-native/classic/evaluators/index.d.ts.map +0 -1
  1082. package/dist/react-native/classic/evaluators/index.js +0 -25
  1083. package/dist/react-native/classic/evaluators/index.js.map +0 -1
  1084. package/dist/react-native/classic/insights/index.d.ts +0 -15
  1085. package/dist/react-native/classic/insights/index.d.ts.map +0 -1
  1086. package/dist/react-native/classic/insights/index.js +0 -16
  1087. package/dist/react-native/classic/insights/index.js.map +0 -1
  1088. package/dist/react-native/classic/memoryStores/index.d.ts +0 -28
  1089. package/dist/react-native/classic/memoryStores/index.d.ts.map +0 -1
  1090. package/dist/react-native/classic/memoryStores/index.js +0 -22
  1091. package/dist/react-native/classic/memoryStores/index.js.map +0 -1
  1092. package/dist/react-native/classic/redTeams/index.d.ts +0 -15
  1093. package/dist/react-native/classic/redTeams/index.d.ts.map +0 -1
  1094. package/dist/react-native/classic/redTeams/index.js +0 -16
  1095. package/dist/react-native/classic/redTeams/index.js.map +0 -1
  1096. package/dist/react-native/classic/schedules/index.d.ts +0 -21
  1097. package/dist/react-native/classic/schedules/index.d.ts.map +0 -1
  1098. package/dist/react-native/classic/schedules/index.js +0 -19
  1099. package/dist/react-native/classic/schedules/index.js.map +0 -1
  1100. /package/dist/browser/api/{evaluationTaxonomies → beta/evaluationRules}/options.js +0 -0
  1101. /package/dist/browser/api/{evaluationTaxonomies → beta/evaluationTaxonomies}/index.js +0 -0
  1102. /package/dist/browser/api/{evaluators → beta/evaluationTaxonomies}/options.js +0 -0
  1103. /package/dist/browser/api/{evaluators → beta/evaluators}/index.js +0 -0
  1104. /package/dist/browser/api/{insights → beta/evaluators}/options.js +0 -0
  1105. /package/dist/browser/api/{insights → beta/insights}/index.js +0 -0
  1106. /package/dist/browser/api/{memoryStores → beta/insights}/options.js +0 -0
  1107. /package/dist/browser/api/{redTeams → beta/memoryStores}/options.js +0 -0
  1108. /package/dist/browser/api/{redTeams → beta/redTeams}/index.js +0 -0
  1109. /package/dist/browser/api/{schedules → beta/redTeams}/options.js +0 -0
  1110. /package/dist/browser/api/{schedules → beta/schedules}/index.js +0 -0
  1111. /package/dist/{esm/api/evaluationTaxonomies → browser/api/beta/schedules}/options.js +0 -0
  1112. /package/dist/commonjs/api/{evaluationTaxonomies → beta/evaluationRules}/options.js +0 -0
  1113. /package/dist/commonjs/api/{evaluationTaxonomies → beta/evaluationTaxonomies}/index.js +0 -0
  1114. /package/dist/commonjs/api/{evaluators → beta/evaluationTaxonomies}/options.js +0 -0
  1115. /package/dist/commonjs/api/{evaluators → beta/evaluators}/index.js +0 -0
  1116. /package/dist/commonjs/api/{insights → beta/evaluators}/options.js +0 -0
  1117. /package/dist/commonjs/api/{insights → beta/insights}/index.js +0 -0
  1118. /package/dist/commonjs/api/{memoryStores → beta/insights}/options.js +0 -0
  1119. /package/dist/commonjs/api/{redTeams → beta/memoryStores}/options.js +0 -0
  1120. /package/dist/commonjs/api/{redTeams → beta/redTeams}/index.js +0 -0
  1121. /package/dist/commonjs/api/{schedules → beta/redTeams}/options.js +0 -0
  1122. /package/dist/commonjs/api/{schedules → beta/schedules}/index.js +0 -0
  1123. /package/dist/esm/api/{evaluators → beta/evaluationRules}/options.js +0 -0
  1124. /package/dist/esm/api/{evaluationTaxonomies → beta/evaluationTaxonomies}/index.js +0 -0
  1125. /package/dist/esm/api/{insights → beta/evaluationTaxonomies}/options.js +0 -0
  1126. /package/dist/esm/api/{evaluators → beta/evaluators}/index.js +0 -0
  1127. /package/dist/esm/api/{memoryStores → beta/evaluators}/options.js +0 -0
  1128. /package/dist/esm/api/{insights → beta/insights}/index.js +0 -0
  1129. /package/dist/esm/api/{redTeams → beta/insights}/options.js +0 -0
  1130. /package/dist/esm/api/{schedules → beta/memoryStores}/options.js +0 -0
  1131. /package/dist/esm/api/{redTeams → beta/redTeams}/index.js +0 -0
  1132. /package/dist/{react-native/api/evaluationTaxonomies → esm/api/beta/redTeams}/options.js +0 -0
  1133. /package/dist/esm/api/{schedules → beta/schedules}/index.js +0 -0
  1134. /package/dist/{react-native/api/evaluators → esm/api/beta/schedules}/options.js +0 -0
  1135. /package/dist/react-native/api/{insights → beta/evaluationRules}/options.js +0 -0
  1136. /package/dist/react-native/api/{evaluationTaxonomies → beta/evaluationTaxonomies}/index.js +0 -0
  1137. /package/dist/react-native/api/{memoryStores → beta/evaluationTaxonomies}/options.js +0 -0
  1138. /package/dist/react-native/api/{evaluators → beta/evaluators}/index.js +0 -0
  1139. /package/dist/react-native/api/{redTeams → beta/evaluators}/options.js +0 -0
  1140. /package/dist/react-native/api/{insights → beta/insights}/index.js +0 -0
  1141. /package/dist/react-native/api/{schedules → beta/insights}/options.js +0 -0
  1142. /package/dist/react-native/api/{redTeams → beta/redTeams}/index.js +0 -0
  1143. /package/dist/react-native/api/{schedules → beta/schedules}/index.js +0 -0
@@ -4,7 +4,7 @@ export function overwriteOpenAIClient(openaiClient) {
4
4
  const responsesCreate = openaiClient.responses.create.bind(openaiClient.responses);
5
5
  openaiClient.responses.create = ((...args) => {
6
6
  const [body, options = {}] = args;
7
- const nextBody = { ...body, ...(options.body || {}), input: body.input || "" };
7
+ const nextBody = { ...body, ...(options.body || {}) };
8
8
  const { body: _, ...nextOptions } = options;
9
9
  const response = responsesCreate(nextBody, nextOptions);
10
10
  return response;
@@ -1 +1 @@
1
- {"version":3,"file":"overwriteOpenAIClient.js","sourceRoot":"","sources":["../../src/overwriteOpenAIClient.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAIlC,MAAM,UAAU,qBAAqB,CAAC,YAAoB;IACxD,MAAM,eAAe,GAAG,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACnF,YAAY,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAwC,EAAE,EAAE;QAC/E,MAAM,CAAC,IAAI,EAAE,OAAO,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;QAClC,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;QAC/E,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC;QAC5C,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACxD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAA2B,CAAC;IAC7B,OAAO,YAAY,CAAC;AACtB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport OpenAI from \"openai\";\n\nexport function overwriteOpenAIClient(openaiClient: OpenAI): OpenAI {\n const responsesCreate = openaiClient.responses.create.bind(openaiClient.responses);\n openaiClient.responses.create = ((...args: Parameters<typeof responsesCreate>) => {\n const [body, options = {}] = args;\n const nextBody = { ...body, ...(options.body || {}), input: body.input || \"\" };\n const { body: _, ...nextOptions } = options;\n const response = responsesCreate(nextBody, nextOptions);\n return response;\n }) as typeof responsesCreate;\n return openaiClient;\n}\n"]}
1
+ {"version":3,"file":"overwriteOpenAIClient.js","sourceRoot":"","sources":["../../src/overwriteOpenAIClient.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAIlC,MAAM,UAAU,qBAAqB,CAAC,YAAoB;IACxD,MAAM,eAAe,GAAG,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACnF,YAAY,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAwC,EAAE,EAAE;QAC/E,MAAM,CAAC,IAAI,EAAE,OAAO,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;QAClC,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;QACtD,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC;QAC5C,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACxD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAA2B,CAAC;IAC7B,OAAO,YAAY,CAAC;AACtB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport OpenAI from \"openai\";\n\nexport function overwriteOpenAIClient(openaiClient: OpenAI): OpenAI {\n const responsesCreate = openaiClient.responses.create.bind(openaiClient.responses);\n openaiClient.responses.create = ((...args: Parameters<typeof responsesCreate>) => {\n const [body, options = {}] = args;\n const nextBody = { ...body, ...(options.body || {}) };\n const { body: _, ...nextOptions } = options;\n const response = responsesCreate(nextBody, nextOptions);\n return response;\n }) as typeof responsesCreate;\n return openaiClient;\n}\n"]}
@@ -2,9 +2,6 @@ import { AIProjectClient } from "./aiProjectClient.js";
2
2
  import { OperationOptions, PathUncheckedResponse } from "@azure-rest/core-client";
3
3
  import { AbortSignalLike } from "@azure/abort-controller";
4
4
  import { PollerLike, OperationState } from "@azure/core-lro";
5
- /**
6
- * Options for restoring a poller.
7
- */
8
5
  export interface RestorePollerOptions<TResult, TResponse extends PathUncheckedResponse = PathUncheckedResponse> extends OperationOptions {
9
6
  /** Delay to wait until next poll, in milliseconds. */
10
7
  updateIntervalInMs?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"restorePollerHelpers.d.ts","sourceRoot":"","sources":["../../src/restorePollerHelpers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EACL,UAAU,EACV,cAAc,EAGf,MAAM,iBAAiB,CAAC;AAEzB;;GAEG;AACH,MAAM,WAAW,oBAAoB,CACnC,OAAO,EACP,SAAS,SAAS,qBAAqB,GAAG,qBAAqB,CAC/D,SAAQ,gBAAgB;IACxB,sDAAsD;IACtD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,qDAAqD;IACrD,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/D;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,SAAS,SAAS,qBAAqB,EAAE,OAAO,EAC5E,MAAM,EAAE,eAAe,EACvB,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,EACjF,OAAO,CAAC,EAAE,oBAAoB,CAAC,OAAO,CAAC,GACtC,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CA2C9C"}
1
+ {"version":3,"file":"restorePollerHelpers.d.ts","sourceRoot":"","sources":["../../src/restorePollerHelpers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAIvD,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EACL,UAAU,EACV,cAAc,EAGf,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,oBAAoB,CACnC,OAAO,EACP,SAAS,SAAS,qBAAqB,GAAG,qBAAqB,CAC/D,SAAQ,gBAAgB;IACxB,sDAAsD;IACtD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,qDAAqD;IACrD,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/D;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,SAAS,SAAS,qBAAqB,EAAE,OAAO,EAC5E,MAAM,EAAE,eAAe,EACvB,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,EACjF,OAAO,CAAC,EAAE,oBAAoB,CAAC,OAAO,CAAC,GACtC,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAkC9C"}
@@ -1,6 +1,7 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT License.
3
- import { createMemoryStoreUpdateMemoriesPoller } from "./api/memoryStores/memoryStoreUpdateMemoriesPoller.js";
3
+ import { _updateMemoriesDeserialize } from "./api/beta/memoryStores/operations.js";
4
+ import { KnownApiVersions } from "./models/models.js";
4
5
  import { getLongRunningPoller } from "./static-helpers/pollingHelpers.js";
5
6
  import { deserializeState, } from "@azure/core-lro";
6
7
  /**
@@ -15,31 +16,26 @@ export function restorePoller(client, serializedState, sourceOperation, options)
15
16
  throw new Error(`Invalid serialized state: ${serializedState} for sourceOperation ${sourceOperation?.name}`);
16
17
  }
17
18
  const resourceLocationConfig = metadata?.["resourceLocationConfig"];
18
- const helper = getDeserializationHelper(initialRequestUrl, requestMethod);
19
- if (helper?.kind === "memoryUpdate") {
20
- return createMemoryStoreUpdateMemoriesPoller(client["_client"] ?? client, helper.expectedStatuses ?? ["202", "200"], undefined, {
21
- updateIntervalInMs: options?.updateIntervalInMs,
22
- abortSignal: options?.abortSignal,
23
- restoreFrom: serializedState,
24
- });
25
- }
26
- const deserializeHelper = options?.processResponseBody ?? helper?.deserializer;
27
- const expectedStatuses = helper?.expectedStatuses ?? [];
19
+ const { deserializer, expectedStatuses = [] } = getDeserializationHelper(initialRequestUrl, requestMethod) ?? {};
20
+ const deserializeHelper = options?.processResponseBody ?? deserializer;
28
21
  if (!deserializeHelper) {
29
22
  throw new Error(`Please ensure the operation is in this client! We can't find its deserializeHelper for ${sourceOperation?.name}.`);
30
23
  }
24
+ const apiVersion = getApiVersionFromUrl(initialRequestUrl);
25
+ const nextApiVersion = apiVersion === KnownApiVersions.v1 ? apiVersion : undefined;
31
26
  return getLongRunningPoller(client["_client"] ?? client, deserializeHelper, expectedStatuses, {
32
27
  updateIntervalInMs: options?.updateIntervalInMs,
33
28
  abortSignal: options?.abortSignal,
34
29
  resourceLocationConfig,
35
30
  restoreFrom: serializedState,
36
31
  initialRequestUrl,
32
+ apiVersion: nextApiVersion,
37
33
  });
38
34
  }
39
35
  const deserializeMap = {
40
36
  "POST /memory_stores/{name}:update_memories": {
41
- kind: "memoryUpdate",
42
- expectedStatuses: ["202", "200"],
37
+ deserializer: _updateMemoriesDeserialize,
38
+ expectedStatuses: ["202", "200", "201"],
43
39
  },
44
40
  };
45
41
  function getDeserializationHelper(urlStr, method) {
@@ -96,4 +92,8 @@ function getPathFromMapKey(mapKey) {
96
92
  const pathStart = mapKey.indexOf("/");
97
93
  return mapKey.slice(pathStart);
98
94
  }
95
+ function getApiVersionFromUrl(urlStr) {
96
+ const url = new URL(urlStr);
97
+ return url.searchParams.get("api-version") ?? undefined;
98
+ }
99
99
  //# sourceMappingURL=restorePollerHelpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"restorePollerHelpers.js","sourceRoot":"","sources":["../../src/restorePollerHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { AIProjectClient } from \"./aiProjectClient.js\";\nimport { createMemoryStoreUpdateMemoriesPoller } from \"./api/memoryStores/memoryStoreUpdateMemoriesPoller.js\";\nimport { getLongRunningPoller } from \"./static-helpers/pollingHelpers.js\";\nimport { OperationOptions, PathUncheckedResponse } from \"@azure-rest/core-client\";\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport {\n PollerLike,\n OperationState,\n deserializeState,\n ResourceLocationConfig,\n} from \"@azure/core-lro\";\n\n/**\n * Options for restoring a poller.\n */\nexport interface RestorePollerOptions<\n TResult,\n TResponse extends PathUncheckedResponse = PathUncheckedResponse,\n> extends OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /**\n * The signal which can be used to abort requests.\n */\n abortSignal?: AbortSignalLike;\n /** Deserialization function for raw response body */\n processResponseBody?: (result: TResponse) => Promise<TResult>;\n}\n\n/**\n * Creates a poller from the serialized state of another poller. This can be\n * useful when you want to create pollers on a different host or a poller\n * needs to be constructed after the original one is not in scope.\n */\nexport function restorePoller<TResponse extends PathUncheckedResponse, TResult>(\n client: AIProjectClient,\n serializedState: string,\n sourceOperation: (...args: any[]) => PollerLike<OperationState<TResult>, TResult>,\n options?: RestorePollerOptions<TResult>,\n): PollerLike<OperationState<TResult>, TResult> {\n const pollerConfig = deserializeState(serializedState).config;\n const { initialRequestUrl, requestMethod, metadata } = pollerConfig;\n if (!initialRequestUrl || !requestMethod) {\n throw new Error(\n `Invalid serialized state: ${serializedState} for sourceOperation ${sourceOperation?.name}`,\n );\n }\n const resourceLocationConfig = metadata?.[\"resourceLocationConfig\"] as\n | ResourceLocationConfig\n | undefined;\n const helper = getDeserializationHelper(initialRequestUrl, requestMethod);\n if (helper?.kind === \"memoryUpdate\") {\n return createMemoryStoreUpdateMemoriesPoller(\n (client as any)[\"_client\"] ?? client,\n helper.expectedStatuses ?? [\"202\", \"200\"],\n undefined,\n {\n updateIntervalInMs: options?.updateIntervalInMs,\n abortSignal: options?.abortSignal,\n restoreFrom: serializedState,\n },\n ) as unknown as PollerLike<OperationState<TResult>, TResult>;\n }\n const deserializeHelper = options?.processResponseBody ?? helper?.deserializer;\n const expectedStatuses = helper?.expectedStatuses ?? [];\n if (!deserializeHelper) {\n throw new Error(\n `Please ensure the operation is in this client! We can't find its deserializeHelper for ${sourceOperation?.name}.`,\n );\n }\n return getLongRunningPoller(\n (client as any)[\"_client\"] ?? client,\n deserializeHelper as (result: TResponse) => Promise<TResult>,\n expectedStatuses,\n {\n updateIntervalInMs: options?.updateIntervalInMs,\n abortSignal: options?.abortSignal,\n resourceLocationConfig,\n restoreFrom: serializedState,\n initialRequestUrl,\n },\n );\n}\n\ninterface DeserializationHelper {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n deserializer?: Function;\n expectedStatuses?: string[];\n kind?: \"memoryUpdate\";\n}\n\nconst deserializeMap: Record<string, DeserializationHelper> = {\n \"POST /memory_stores/{name}:update_memories\": {\n kind: \"memoryUpdate\",\n expectedStatuses: [\"202\", \"200\"],\n },\n};\n\nfunction getDeserializationHelper(\n urlStr: string,\n method: string,\n): DeserializationHelper | undefined {\n const path = new URL(urlStr).pathname;\n const pathParts = path.split(\"/\");\n\n // Traverse list to match the longest candidate\n // matchedLen: the length of candidate path\n // matchedValue: the matched status code array\n let matchedLen = -1,\n matchedValue: DeserializationHelper | undefined;\n\n // Iterate the responseMap to find a match\n for (const [key, value] of Object.entries(deserializeMap)) {\n // Extracting the path from the map key which is in format\n // GET /path/foo\n if (!key.startsWith(method)) {\n continue;\n }\n const candidatePath = getPathFromMapKey(key);\n // Get each part of the url path\n const candidateParts = candidatePath.split(\"/\");\n\n // track if we have found a match to return the values found.\n let found = true;\n for (let i = candidateParts.length - 1, j = pathParts.length - 1; i >= 1 && j >= 1; i--, j--) {\n if (candidateParts[i]?.startsWith(\"{\") && candidateParts[i]?.indexOf(\"}\") !== -1) {\n const start = candidateParts[i]!.indexOf(\"}\") + 1,\n end = candidateParts[i]?.length;\n // If the current part of the candidate is a \"template\" part\n // Try to use the suffix of pattern to match the path\n // {guid} ==> $\n // {guid}:export ==> :export$\n const isMatched = new RegExp(`${candidateParts[i]?.slice(start, end)}`).test(\n pathParts[j] || \"\",\n );\n\n if (!isMatched) {\n found = false;\n break;\n }\n continue;\n }\n\n // If the candidate part is not a template and\n // the parts don't match mark the candidate as not found\n // to move on with the next candidate path.\n if (candidateParts[i] !== pathParts[j]) {\n found = false;\n break;\n }\n }\n\n // We finished evaluating the current candidate parts\n // Update the matched value if and only if we found the longer pattern\n if (found && candidatePath.length > matchedLen) {\n matchedLen = candidatePath.length;\n matchedValue = value;\n }\n }\n\n return matchedValue;\n}\n\nfunction getPathFromMapKey(mapKey: string): string {\n const pathStart = mapKey.indexOf(\"/\");\n return mapKey.slice(pathStart);\n}\n"]}
1
+ {"version":3,"file":"restorePollerHelpers.js","sourceRoot":"","sources":["../../src/restorePollerHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { AIProjectClient } from \"./aiProjectClient.js\";\nimport { _updateMemoriesDeserialize } from \"./api/beta/memoryStores/operations.js\";\nimport { KnownApiVersions } from \"./models/models.js\";\nimport { getLongRunningPoller } from \"./static-helpers/pollingHelpers.js\";\nimport { OperationOptions, PathUncheckedResponse } from \"@azure-rest/core-client\";\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport {\n PollerLike,\n OperationState,\n deserializeState,\n ResourceLocationConfig,\n} from \"@azure/core-lro\";\n\nexport interface RestorePollerOptions<\n TResult,\n TResponse extends PathUncheckedResponse = PathUncheckedResponse,\n> extends OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /**\n * The signal which can be used to abort requests.\n */\n abortSignal?: AbortSignalLike;\n /** Deserialization function for raw response body */\n processResponseBody?: (result: TResponse) => Promise<TResult>;\n}\n\n/**\n * Creates a poller from the serialized state of another poller. This can be\n * useful when you want to create pollers on a different host or a poller\n * needs to be constructed after the original one is not in scope.\n */\nexport function restorePoller<TResponse extends PathUncheckedResponse, TResult>(\n client: AIProjectClient,\n serializedState: string,\n sourceOperation: (...args: any[]) => PollerLike<OperationState<TResult>, TResult>,\n options?: RestorePollerOptions<TResult>,\n): PollerLike<OperationState<TResult>, TResult> {\n const pollerConfig = deserializeState(serializedState).config;\n const { initialRequestUrl, requestMethod, metadata } = pollerConfig;\n if (!initialRequestUrl || !requestMethod) {\n throw new Error(\n `Invalid serialized state: ${serializedState} for sourceOperation ${sourceOperation?.name}`,\n );\n }\n const resourceLocationConfig = metadata?.[\"resourceLocationConfig\"] as\n | ResourceLocationConfig\n | undefined;\n const { deserializer, expectedStatuses = [] } =\n getDeserializationHelper(initialRequestUrl, requestMethod) ?? {};\n const deserializeHelper = options?.processResponseBody ?? deserializer;\n if (!deserializeHelper) {\n throw new Error(\n `Please ensure the operation is in this client! We can't find its deserializeHelper for ${sourceOperation?.name}.`,\n );\n }\n const apiVersion = getApiVersionFromUrl(initialRequestUrl);\n const nextApiVersion = apiVersion === KnownApiVersions.v1 ? apiVersion : undefined;\n return getLongRunningPoller(\n (client as any)[\"_client\"] ?? client,\n deserializeHelper as (result: TResponse) => Promise<TResult>,\n expectedStatuses,\n {\n updateIntervalInMs: options?.updateIntervalInMs,\n abortSignal: options?.abortSignal,\n resourceLocationConfig,\n restoreFrom: serializedState,\n initialRequestUrl,\n apiVersion: nextApiVersion,\n },\n );\n}\n\ninterface DeserializationHelper {\n deserializer: (result: PathUncheckedResponse) => Promise<any>;\n expectedStatuses: string[];\n}\n\nconst deserializeMap: Record<string, DeserializationHelper> = {\n \"POST /memory_stores/{name}:update_memories\": {\n deserializer: _updateMemoriesDeserialize,\n expectedStatuses: [\"202\", \"200\", \"201\"],\n },\n};\n\nfunction getDeserializationHelper(\n urlStr: string,\n method: string,\n): DeserializationHelper | undefined {\n const path = new URL(urlStr).pathname;\n const pathParts = path.split(\"/\");\n\n // Traverse list to match the longest candidate\n // matchedLen: the length of candidate path\n // matchedValue: the matched status code array\n let matchedLen = -1,\n matchedValue: DeserializationHelper | undefined;\n\n // Iterate the responseMap to find a match\n for (const [key, value] of Object.entries(deserializeMap)) {\n // Extracting the path from the map key which is in format\n // GET /path/foo\n if (!key.startsWith(method)) {\n continue;\n }\n const candidatePath = getPathFromMapKey(key);\n // Get each part of the url path\n const candidateParts = candidatePath.split(\"/\");\n\n // track if we have found a match to return the values found.\n let found = true;\n for (let i = candidateParts.length - 1, j = pathParts.length - 1; i >= 1 && j >= 1; i--, j--) {\n if (candidateParts[i]?.startsWith(\"{\") && candidateParts[i]?.indexOf(\"}\") !== -1) {\n const start = candidateParts[i]!.indexOf(\"}\") + 1,\n end = candidateParts[i]?.length;\n // If the current part of the candidate is a \"template\" part\n // Try to use the suffix of pattern to match the path\n // {guid} ==> $\n // {guid}:export ==> :export$\n const isMatched = new RegExp(`${candidateParts[i]?.slice(start, end)}`).test(\n pathParts[j] || \"\",\n );\n\n if (!isMatched) {\n found = false;\n break;\n }\n continue;\n }\n\n // If the candidate part is not a template and\n // the parts don't match mark the candidate as not found\n // to move on with the next candidate path.\n if (candidateParts[i] !== pathParts[j]) {\n found = false;\n break;\n }\n }\n\n // We finished evaluating the current candidate parts\n // Update the matched value if and only if we found the longer pattern\n if (found && candidatePath.length > matchedLen) {\n matchedLen = candidatePath.length;\n matchedValue = value;\n }\n }\n\n return matchedValue;\n}\n\nfunction getPathFromMapKey(mapKey: string): string {\n const pathStart = mapKey.indexOf(\"/\");\n return mapKey.slice(pathStart);\n}\n\nfunction getApiVersionFromUrl(urlStr: string): string | undefined {\n const url = new URL(urlStr);\n return url.searchParams.get(\"api-version\") ?? undefined;\n}\n"]}
@@ -1,4 +1,5 @@
1
1
  import { Client, PathUncheckedResponse } from "@azure-rest/core-client";
2
+ import { KnownApiVersions } from "../models/models.js";
2
3
  /**
3
4
  * Options for the byPage method
4
5
  */
@@ -64,6 +65,8 @@ export interface PagedResult<TElement, TPage = TElement[], TPageSettings extends
64
65
  export interface BuildPagedAsyncIteratorOptions {
65
66
  itemName?: string;
66
67
  nextLinkName?: string;
68
+ nextLinkMethod?: "GET" | "POST";
69
+ apiVersion?: KnownApiVersions;
67
70
  }
68
71
  /**
69
72
  * Helper to paginate results in a generic way and return a PagedAsyncIterableIterator
@@ -1 +1 @@
1
- {"version":3,"file":"pagingHelpers.d.ts","sourceRoot":"","sources":["../../../src/static-helpers/pagingHelpers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAmB,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAGzF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,QAAQ,EAAE,KAAK,GAAG,QAAQ,EAAE,IAAI,KAAK,GAAG;IAClE;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,0BAA0B,CACzC,QAAQ,EACR,KAAK,GAAG,QAAQ,EAAE,EAClB,aAAa,SAAS,YAAY,GAAG,YAAY;IAEjD;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1C;;OAEG;IACH,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,0BAA0B,CAAC,QAAQ,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;IACrF;;OAEG;IACH,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,aAAa,KAAK,qBAAqB,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;CAC/F;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAC1B,QAAQ,EACR,KAAK,GAAG,QAAQ,EAAE,EAClB,aAAa,SAAS,YAAY,GAAG,YAAY;IAEjD;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,IAAI,EAAE,KAAK,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC,CAAC;IAC5F;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,aAAa,KAAK,qBAAqB,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IAE/F;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,QAAQ,EAAE,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EACR,KAAK,GAAG,QAAQ,EAAE,EAClB,aAAa,SAAS,YAAY,GAAG,YAAY,EACjD,SAAS,SAAS,qBAAqB,GAAG,qBAAqB,EAE/D,MAAM,EAAE,MAAM,EACd,kBAAkB,EAAE,MAAM,WAAW,CAAC,SAAS,CAAC,EAChD,mBAAmB,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,WAAW,CAAC,OAAO,CAAC,EAChE,gBAAgB,EAAE,MAAM,EAAE,EAC1B,OAAO,GAAE,8BAAmC,GAC3C,0BAA0B,CAAC,QAAQ,EAAE,KAAK,EAAE,aAAa,CAAC,CA0B5D"}
1
+ {"version":3,"file":"pagingHelpers.d.ts","sourceRoot":"","sources":["../../../src/static-helpers/pagingHelpers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAmB,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEzF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,QAAQ,EAAE,KAAK,GAAG,QAAQ,EAAE,IAAI,KAAK,GAAG;IAClE;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,0BAA0B,CACzC,QAAQ,EACR,KAAK,GAAG,QAAQ,EAAE,EAClB,aAAa,SAAS,YAAY,GAAG,YAAY;IAEjD;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1C;;OAEG;IACH,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,0BAA0B,CAAC,QAAQ,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;IACrF;;OAEG;IACH,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,aAAa,KAAK,qBAAqB,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;CAC/F;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAC1B,QAAQ,EACR,KAAK,GAAG,QAAQ,EAAE,EAClB,aAAa,SAAS,YAAY,GAAG,YAAY;IAEjD;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,IAAI,EAAE,KAAK,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC,CAAC;IAC5F;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,aAAa,KAAK,qBAAqB,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IAE/F;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,QAAQ,EAAE,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAChC,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EACR,KAAK,GAAG,QAAQ,EAAE,EAClB,aAAa,SAAS,YAAY,GAAG,YAAY,EACjD,SAAS,SAAS,qBAAqB,GAAG,qBAAqB,EAE/D,MAAM,EAAE,MAAM,EACd,kBAAkB,EAAE,MAAM,WAAW,CAAC,SAAS,CAAC,EAChD,mBAAmB,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,WAAW,CAAC,OAAO,CAAC,EAChE,gBAAgB,EAAE,MAAM,EAAE,EAC1B,OAAO,GAAE,8BAAmC,GAC3C,0BAA0B,CAAC,QAAQ,EAAE,KAAK,EAAE,aAAa,CAAC,CAkC5D"}
@@ -8,11 +8,21 @@ import { RestError } from "@azure/core-rest-pipeline";
8
8
  export function buildPagedAsyncIterator(client, getInitialResponse, processResponseBody, expectedStatuses, options = {}) {
9
9
  const itemName = options.itemName ?? "value";
10
10
  const nextLinkName = options.nextLinkName ?? "nextLink";
11
+ const nextLinkMethod = options.nextLinkMethod ?? "GET";
12
+ const apiVersion = options.apiVersion;
11
13
  const pagedResult = {
12
14
  getPage: async (pageLink) => {
13
- const result = pageLink === undefined
14
- ? await getInitialResponse()
15
- : await client.pathUnchecked(pageLink).get();
15
+ let result;
16
+ if (pageLink === undefined) {
17
+ result = await getInitialResponse();
18
+ }
19
+ else {
20
+ const resolvedPageLink = apiVersion ? addApiVersionToUrl(pageLink, apiVersion) : pageLink;
21
+ result =
22
+ nextLinkMethod === "POST"
23
+ ? await client.pathUnchecked(resolvedPageLink).post()
24
+ : await client.pathUnchecked(resolvedPageLink).get();
25
+ }
16
26
  checkPagingRequest(result, expectedStatuses);
17
27
  const results = await processResponseBody(result);
18
28
  const nextLink = getNextLink(results, nextLinkName);
@@ -115,4 +125,19 @@ function checkPagingRequest(response, expectedStatuses) {
115
125
  throw createRestError(`Pagination failed with unexpected statusCode ${response.status}`, response);
116
126
  }
117
127
  }
128
+ /**
129
+ * Adds the api-version query parameter on a URL if it's not present.
130
+ * @param url - the URL to modify
131
+ * @param apiVersion - the API version to set
132
+ * @returns - the URL with the api-version query parameter set
133
+ */
134
+ function addApiVersionToUrl(url, apiVersion) {
135
+ // The base URL is only used for parsing and won't appear in the returned URL
136
+ const urlObj = new URL(url, "https://microsoft.com");
137
+ if (!urlObj.searchParams.get("api-version")) {
138
+ // Append one if there is no apiVersion
139
+ return `${url}${Array.from(urlObj.searchParams.keys()).length > 0 ? "&" : "?"}api-version=${apiVersion}`;
140
+ }
141
+ return url;
142
+ }
118
143
  //# sourceMappingURL=pagingHelpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pagingHelpers.js","sourceRoot":"","sources":["../../../src/static-helpers/pagingHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Client, createRestError, PathUncheckedResponse } from \"@azure-rest/core-client\";\nimport { RestError } from \"@azure/core-rest-pipeline\";\n\n/**\n * Options for the byPage method\n */\nexport interface PageSettings {\n /**\n * A reference to a specific page to start iterating from.\n */\n continuationToken?: string;\n}\n\n/**\n * An interface that describes a page of results.\n */\nexport type ContinuablePage<TElement, TPage = TElement[]> = TPage & {\n /**\n * The token that keeps track of where to continue the iterator\n */\n continuationToken?: string;\n};\n\n/**\n * An interface that allows async iterable iteration both to completion and by page.\n */\nexport interface PagedAsyncIterableIterator<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n> {\n /**\n * The next method, part of the iteration protocol\n */\n next(): Promise<IteratorResult<TElement>>;\n /**\n * The connection to the async iterator, part of the iteration protocol\n */\n [Symbol.asyncIterator](): PagedAsyncIterableIterator<TElement, TPage, TPageSettings>;\n /**\n * Return an AsyncIterableIterator that works a page at a time\n */\n byPage: (settings?: TPageSettings) => AsyncIterableIterator<ContinuablePage<TElement, TPage>>;\n}\n\n/**\n * An interface that describes how to communicate with the service.\n */\nexport interface PagedResult<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n> {\n /**\n * Link to the first page of results.\n */\n firstPageLink?: string;\n /**\n * A method that returns a page of results.\n */\n getPage: (pageLink?: string) => Promise<{ page: TPage; nextPageLink?: string } | undefined>;\n /**\n * a function to implement the `byPage` method on the paged async iterator.\n */\n byPage?: (settings?: TPageSettings) => AsyncIterableIterator<ContinuablePage<TElement, TPage>>;\n\n /**\n * A function to extract elements from a page.\n */\n toElements?: (page: TPage) => TElement[];\n}\n\n/**\n * Options for the paging helper\n */\nexport interface BuildPagedAsyncIteratorOptions {\n itemName?: string;\n nextLinkName?: string;\n}\n\n/**\n * Helper to paginate results in a generic way and return a PagedAsyncIterableIterator\n */\nexport function buildPagedAsyncIterator<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n TResponse extends PathUncheckedResponse = PathUncheckedResponse,\n>(\n client: Client,\n getInitialResponse: () => PromiseLike<TResponse>,\n processResponseBody: (result: TResponse) => PromiseLike<unknown>,\n expectedStatuses: string[],\n options: BuildPagedAsyncIteratorOptions = {},\n): PagedAsyncIterableIterator<TElement, TPage, TPageSettings> {\n const itemName = options.itemName ?? \"value\";\n const nextLinkName = options.nextLinkName ?? \"nextLink\";\n const pagedResult: PagedResult<TElement, TPage, TPageSettings> = {\n getPage: async (pageLink?: string) => {\n const result =\n pageLink === undefined\n ? await getInitialResponse()\n : await client.pathUnchecked(pageLink).get();\n checkPagingRequest(result, expectedStatuses);\n const results = await processResponseBody(result as TResponse);\n const nextLink = getNextLink(results, nextLinkName);\n const values = getElements<TElement>(results, itemName) as TPage;\n return {\n page: values,\n nextPageLink: nextLink,\n };\n },\n byPage: (settings?: TPageSettings) => {\n const { continuationToken } = settings ?? {};\n return getPageAsyncIterator(pagedResult, {\n pageLink: continuationToken,\n });\n },\n };\n return getPagedAsyncIterator(pagedResult);\n}\n\n/**\n * returns an async iterator that iterates over results. It also has a `byPage`\n * method that returns pages of items at once.\n *\n * @param pagedResult - an object that specifies how to get pages.\n * @returns a paged async iterator that iterates over results.\n */\n\nfunction getPagedAsyncIterator<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n>(\n pagedResult: PagedResult<TElement, TPage, TPageSettings>,\n): PagedAsyncIterableIterator<TElement, TPage, TPageSettings> {\n const iter = getItemAsyncIterator<TElement, TPage, TPageSettings>(pagedResult);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage:\n pagedResult?.byPage ??\n ((settings?: TPageSettings) => {\n const { continuationToken } = settings ?? {};\n return getPageAsyncIterator(pagedResult, {\n pageLink: continuationToken,\n });\n }),\n };\n}\n\nasync function* getItemAsyncIterator<TElement, TPage, TPageSettings extends PageSettings>(\n pagedResult: PagedResult<TElement, TPage, TPageSettings>,\n): AsyncIterableIterator<TElement> {\n const pages = getPageAsyncIterator(pagedResult);\n for await (const page of pages) {\n yield* page as unknown as TElement[];\n }\n}\n\nasync function* getPageAsyncIterator<TElement, TPage, TPageSettings extends PageSettings>(\n pagedResult: PagedResult<TElement, TPage, TPageSettings>,\n options: {\n pageLink?: string;\n } = {},\n): AsyncIterableIterator<ContinuablePage<TElement, TPage>> {\n const { pageLink } = options;\n let response = await pagedResult.getPage(pageLink ?? pagedResult.firstPageLink);\n if (!response) {\n return;\n }\n let result = response.page as ContinuablePage<TElement, TPage>;\n result.continuationToken = response.nextPageLink;\n yield result;\n while (response.nextPageLink) {\n response = await pagedResult.getPage(response.nextPageLink);\n if (!response) {\n return;\n }\n result = response.page as ContinuablePage<TElement, TPage>;\n result.continuationToken = response.nextPageLink;\n yield result;\n }\n}\n\n/**\n * Gets for the value of nextLink in the body\n */\nfunction getNextLink(body: unknown, nextLinkName?: string): string | undefined {\n if (!nextLinkName) {\n return undefined;\n }\n\n const nextLink = (body as Record<string, unknown>)[nextLinkName];\n\n if (typeof nextLink !== \"string\" && typeof nextLink !== \"undefined\" && nextLink !== null) {\n throw new RestError(\n `Body Property ${nextLinkName} should be a string or undefined or null but got ${typeof nextLink}`,\n );\n }\n\n if (nextLink === null) {\n return undefined;\n }\n\n return nextLink;\n}\n\n/**\n * Gets the elements of the current request in the body.\n */\nfunction getElements<T = unknown>(body: unknown, itemName: string): T[] {\n const value = (body as Record<string, unknown>)[itemName] as T[];\n if (!Array.isArray(value)) {\n throw new RestError(\n `Couldn't paginate response\\n Body doesn't contain an array property with name: ${itemName}`,\n );\n }\n\n return value ?? [];\n}\n\n/**\n * Checks if a request failed\n */\nfunction checkPagingRequest(response: PathUncheckedResponse, expectedStatuses: string[]): void {\n if (!expectedStatuses.includes(response.status)) {\n throw createRestError(\n `Pagination failed with unexpected statusCode ${response.status}`,\n response,\n );\n }\n}\n"]}
1
+ {"version":3,"file":"pagingHelpers.js","sourceRoot":"","sources":["../../../src/static-helpers/pagingHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Client, createRestError, PathUncheckedResponse } from \"@azure-rest/core-client\";\nimport { RestError } from \"@azure/core-rest-pipeline\";\nimport { KnownApiVersions } from \"../models/models.js\";\n\n/**\n * Options for the byPage method\n */\nexport interface PageSettings {\n /**\n * A reference to a specific page to start iterating from.\n */\n continuationToken?: string;\n}\n\n/**\n * An interface that describes a page of results.\n */\nexport type ContinuablePage<TElement, TPage = TElement[]> = TPage & {\n /**\n * The token that keeps track of where to continue the iterator\n */\n continuationToken?: string;\n};\n\n/**\n * An interface that allows async iterable iteration both to completion and by page.\n */\nexport interface PagedAsyncIterableIterator<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n> {\n /**\n * The next method, part of the iteration protocol\n */\n next(): Promise<IteratorResult<TElement>>;\n /**\n * The connection to the async iterator, part of the iteration protocol\n */\n [Symbol.asyncIterator](): PagedAsyncIterableIterator<TElement, TPage, TPageSettings>;\n /**\n * Return an AsyncIterableIterator that works a page at a time\n */\n byPage: (settings?: TPageSettings) => AsyncIterableIterator<ContinuablePage<TElement, TPage>>;\n}\n\n/**\n * An interface that describes how to communicate with the service.\n */\nexport interface PagedResult<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n> {\n /**\n * Link to the first page of results.\n */\n firstPageLink?: string;\n /**\n * A method that returns a page of results.\n */\n getPage: (pageLink?: string) => Promise<{ page: TPage; nextPageLink?: string } | undefined>;\n /**\n * a function to implement the `byPage` method on the paged async iterator.\n */\n byPage?: (settings?: TPageSettings) => AsyncIterableIterator<ContinuablePage<TElement, TPage>>;\n\n /**\n * A function to extract elements from a page.\n */\n toElements?: (page: TPage) => TElement[];\n}\n\n/**\n * Options for the paging helper\n */\nexport interface BuildPagedAsyncIteratorOptions {\n itemName?: string;\n nextLinkName?: string;\n nextLinkMethod?: \"GET\" | \"POST\";\n apiVersion?: KnownApiVersions;\n}\n\n/**\n * Helper to paginate results in a generic way and return a PagedAsyncIterableIterator\n */\nexport function buildPagedAsyncIterator<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n TResponse extends PathUncheckedResponse = PathUncheckedResponse,\n>(\n client: Client,\n getInitialResponse: () => PromiseLike<TResponse>,\n processResponseBody: (result: TResponse) => PromiseLike<unknown>,\n expectedStatuses: string[],\n options: BuildPagedAsyncIteratorOptions = {},\n): PagedAsyncIterableIterator<TElement, TPage, TPageSettings> {\n const itemName = options.itemName ?? \"value\";\n const nextLinkName = options.nextLinkName ?? \"nextLink\";\n const nextLinkMethod = options.nextLinkMethod ?? \"GET\";\n const apiVersion = options.apiVersion;\n const pagedResult: PagedResult<TElement, TPage, TPageSettings> = {\n getPage: async (pageLink?: string) => {\n let result;\n if (pageLink === undefined) {\n result = await getInitialResponse();\n } else {\n const resolvedPageLink = apiVersion ? addApiVersionToUrl(pageLink, apiVersion) : pageLink;\n result =\n nextLinkMethod === \"POST\"\n ? await client.pathUnchecked(resolvedPageLink).post()\n : await client.pathUnchecked(resolvedPageLink).get();\n }\n checkPagingRequest(result, expectedStatuses);\n const results = await processResponseBody(result as TResponse);\n const nextLink = getNextLink(results, nextLinkName);\n const values = getElements<TElement>(results, itemName) as TPage;\n return {\n page: values,\n nextPageLink: nextLink,\n };\n },\n byPage: (settings?: TPageSettings) => {\n const { continuationToken } = settings ?? {};\n return getPageAsyncIterator(pagedResult, {\n pageLink: continuationToken,\n });\n },\n };\n return getPagedAsyncIterator(pagedResult);\n}\n\n/**\n * returns an async iterator that iterates over results. It also has a `byPage`\n * method that returns pages of items at once.\n *\n * @param pagedResult - an object that specifies how to get pages.\n * @returns a paged async iterator that iterates over results.\n */\n\nfunction getPagedAsyncIterator<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n>(\n pagedResult: PagedResult<TElement, TPage, TPageSettings>,\n): PagedAsyncIterableIterator<TElement, TPage, TPageSettings> {\n const iter = getItemAsyncIterator<TElement, TPage, TPageSettings>(pagedResult);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage:\n pagedResult?.byPage ??\n ((settings?: TPageSettings) => {\n const { continuationToken } = settings ?? {};\n return getPageAsyncIterator(pagedResult, {\n pageLink: continuationToken,\n });\n }),\n };\n}\n\nasync function* getItemAsyncIterator<TElement, TPage, TPageSettings extends PageSettings>(\n pagedResult: PagedResult<TElement, TPage, TPageSettings>,\n): AsyncIterableIterator<TElement> {\n const pages = getPageAsyncIterator(pagedResult);\n for await (const page of pages) {\n yield* page as unknown as TElement[];\n }\n}\n\nasync function* getPageAsyncIterator<TElement, TPage, TPageSettings extends PageSettings>(\n pagedResult: PagedResult<TElement, TPage, TPageSettings>,\n options: {\n pageLink?: string;\n } = {},\n): AsyncIterableIterator<ContinuablePage<TElement, TPage>> {\n const { pageLink } = options;\n let response = await pagedResult.getPage(pageLink ?? pagedResult.firstPageLink);\n if (!response) {\n return;\n }\n let result = response.page as ContinuablePage<TElement, TPage>;\n result.continuationToken = response.nextPageLink;\n yield result;\n while (response.nextPageLink) {\n response = await pagedResult.getPage(response.nextPageLink);\n if (!response) {\n return;\n }\n result = response.page as ContinuablePage<TElement, TPage>;\n result.continuationToken = response.nextPageLink;\n yield result;\n }\n}\n\n/**\n * Gets for the value of nextLink in the body\n */\nfunction getNextLink(body: unknown, nextLinkName?: string): string | undefined {\n if (!nextLinkName) {\n return undefined;\n }\n\n const nextLink = (body as Record<string, unknown>)[nextLinkName];\n\n if (typeof nextLink !== \"string\" && typeof nextLink !== \"undefined\" && nextLink !== null) {\n throw new RestError(\n `Body Property ${nextLinkName} should be a string or undefined or null but got ${typeof nextLink}`,\n );\n }\n\n if (nextLink === null) {\n return undefined;\n }\n\n return nextLink;\n}\n\n/**\n * Gets the elements of the current request in the body.\n */\nfunction getElements<T = unknown>(body: unknown, itemName: string): T[] {\n const value = (body as Record<string, unknown>)[itemName] as T[];\n if (!Array.isArray(value)) {\n throw new RestError(\n `Couldn't paginate response\\n Body doesn't contain an array property with name: ${itemName}`,\n );\n }\n\n return value ?? [];\n}\n\n/**\n * Checks if a request failed\n */\nfunction checkPagingRequest(response: PathUncheckedResponse, expectedStatuses: string[]): void {\n if (!expectedStatuses.includes(response.status)) {\n throw createRestError(\n `Pagination failed with unexpected statusCode ${response.status}`,\n response,\n );\n }\n}\n\n/**\n * Adds the api-version query parameter on a URL if it's not present.\n * @param url - the URL to modify\n * @param apiVersion - the API version to set\n * @returns - the URL with the api-version query parameter set\n */\nfunction addApiVersionToUrl(url: string, apiVersion: string): string {\n // The base URL is only used for parsing and won't appear in the returned URL\n const urlObj = new URL(url, \"https://microsoft.com\");\n if (!urlObj.searchParams.get(\"api-version\")) {\n // Append one if there is no apiVersion\n return `${url}${\n Array.from(urlObj.searchParams.keys()).length > 0 ? \"&\" : \"?\"\n }api-version=${apiVersion}`;\n }\n return url;\n}\n"]}
@@ -1,6 +1,7 @@
1
1
  import { PollerLike, OperationState, ResourceLocationConfig } from "@azure/core-lro";
2
2
  import { Client, PathUncheckedResponse } from "@azure-rest/core-client";
3
3
  import { AbortSignalLike } from "@azure/abort-controller";
4
+ import { KnownApiVersions } from "../models/models.js";
4
5
  export interface GetLongRunningPollerOptions<TResponse> {
5
6
  /** Delay to wait until next poll, in milliseconds. */
6
7
  updateIntervalInMs?: number;
@@ -21,6 +22,10 @@ export interface GetLongRunningPollerOptions<TResponse> {
21
22
  * A serialized poller which can be used to resume an existing paused Long-Running-Operation.
22
23
  */
23
24
  restoreFrom?: string;
25
+ /**
26
+ * The api-version of the LRO
27
+ */
28
+ apiVersion?: KnownApiVersions;
24
29
  /**
25
30
  * The function to get the initial response
26
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"pollingHelpers.d.ts","sourceRoot":"","sources":["../../../src/static-helpers/pollingHelpers.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,UAAU,EACV,cAAc,EACd,sBAAsB,EAIvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,MAAM,EAAE,qBAAqB,EAAmB,MAAM,yBAAyB,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,MAAM,WAAW,2BAA2B,CAAC,SAAS;IACpD,sDAAsD;IACtD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B;;OAEG;IACH,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;IAChD;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,WAAW,CAAC,SAAS,CAAC,CAAC;CACnD;AACD,wBAAgB,oBAAoB,CAAC,SAAS,SAAS,qBAAqB,EAAE,OAAO,GAAG,IAAI,EAC1F,MAAM,EAAE,MAAM,EACd,mBAAmB,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,EAC5D,gBAAgB,EAAE,MAAM,EAAE,EAC1B,OAAO,EAAE,2BAA2B,CAAC,SAAS,CAAC,GAC9C,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAyD9C"}
1
+ {"version":3,"file":"pollingHelpers.d.ts","sourceRoot":"","sources":["../../../src/static-helpers/pollingHelpers.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,UAAU,EACV,cAAc,EACd,sBAAsB,EAIvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,MAAM,EAAE,qBAAqB,EAAmB,MAAM,yBAAyB,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,WAAW,2BAA2B,CAAC,SAAS;IACpD,sDAAsD;IACtD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B;;OAEG;IACH,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;IAChD;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,WAAW,CAAC,SAAS,CAAC,CAAC;CACnD;AACD,wBAAgB,oBAAoB,CAAC,SAAS,SAAS,qBAAqB,EAAE,OAAO,GAAG,IAAI,EAC1F,MAAM,EAAE,MAAM,EACd,mBAAmB,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,EAC5D,gBAAgB,EAAE,MAAM,EAAE,EAC1B,OAAO,EAAE,2BAA2B,CAAC,SAAS,CAAC,GAC9C,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CA0D9C"}
@@ -3,7 +3,7 @@
3
3
  import { createHttpPoller, } from "@azure/core-lro";
4
4
  import { createRestError } from "@azure-rest/core-client";
5
5
  export function getLongRunningPoller(client, processResponseBody, expectedStatuses, options) {
6
- const { restoreFrom, getInitialResponse } = options;
6
+ const { restoreFrom, getInitialResponse, apiVersion } = options;
7
7
  if (!restoreFrom && !getInitialResponse) {
8
8
  throw new Error("Either restoreFrom or getInitialResponse must be specified");
9
9
  }
@@ -39,7 +39,8 @@ export function getLongRunningPoller(client, processResponseBody, expectedStatus
39
39
  }
40
40
  let response;
41
41
  try {
42
- response = await client.pathUnchecked(path).get({ abortSignal });
42
+ const pollingPath = apiVersion ? addApiVersionToUrl(path, apiVersion) : path;
43
+ response = await client.pathUnchecked(pollingPath).get({ abortSignal });
43
44
  }
44
45
  finally {
45
46
  options.abortSignal?.removeEventListener("abort", abortListener);
@@ -76,4 +77,19 @@ function getLroResponse(response, expectedStatuses) {
76
77
  },
77
78
  };
78
79
  }
80
+ /**
81
+ * Adds the api-version query parameter on a URL if it's not present.
82
+ * @param url - the URL to modify
83
+ * @param apiVersion - the API version to set
84
+ * @returns - the URL with the api-version query parameter set
85
+ */
86
+ function addApiVersionToUrl(url, apiVersion) {
87
+ // The base URL is only used for parsing and won't appear in the returned URL
88
+ const urlObj = new URL(url, "https://microsoft.com");
89
+ if (!urlObj.searchParams.get("api-version")) {
90
+ // Append one if there is no apiVersion
91
+ return `${url}${Array.from(urlObj.searchParams.keys()).length > 0 ? "&" : "?"}api-version=${apiVersion}`;
92
+ }
93
+ return url;
94
+ }
79
95
  //# sourceMappingURL=pollingHelpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pollingHelpers.js","sourceRoot":"","sources":["../../../src/static-helpers/pollingHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n PollerLike,\n OperationState,\n ResourceLocationConfig,\n RunningOperation,\n createHttpPoller,\n OperationResponse,\n} from \"@azure/core-lro\";\n\nimport { Client, PathUncheckedResponse, createRestError } from \"@azure-rest/core-client\";\nimport { AbortSignalLike } from \"@azure/abort-controller\";\n\nexport interface GetLongRunningPollerOptions<TResponse> {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /**\n * The signal which can be used to abort requests.\n */\n abortSignal?: AbortSignalLike;\n /**\n * The potential location of the result of the LRO if specified by the LRO extension in the swagger.\n */\n resourceLocationConfig?: ResourceLocationConfig;\n /**\n * The original url of the LRO\n * Should not be null when restoreFrom is set\n */\n initialRequestUrl?: string;\n /**\n * A serialized poller which can be used to resume an existing paused Long-Running-Operation.\n */\n restoreFrom?: string;\n /**\n * The function to get the initial response\n */\n getInitialResponse?: () => PromiseLike<TResponse>;\n}\nexport function getLongRunningPoller<TResponse extends PathUncheckedResponse, TResult = void>(\n client: Client,\n processResponseBody: (result: TResponse) => Promise<TResult>,\n expectedStatuses: string[],\n options: GetLongRunningPollerOptions<TResponse>,\n): PollerLike<OperationState<TResult>, TResult> {\n const { restoreFrom, getInitialResponse } = options;\n if (!restoreFrom && !getInitialResponse) {\n throw new Error(\"Either restoreFrom or getInitialResponse must be specified\");\n }\n let initialResponse: TResponse | undefined = undefined;\n const pollAbortController = new AbortController();\n const poller: RunningOperation<TResponse> = {\n sendInitialRequest: async () => {\n if (!getInitialResponse) {\n throw new Error(\"getInitialResponse is required when initializing a new poller\");\n }\n initialResponse = await getInitialResponse();\n return getLroResponse(initialResponse, expectedStatuses);\n },\n sendPollRequest: async (\n path: string,\n pollOptions?: {\n abortSignal?: AbortSignalLike;\n },\n ) => {\n // The poll request would both listen to the user provided abort signal and the poller's own abort signal\n function abortListener(): void {\n pollAbortController.abort();\n }\n const abortSignal = pollAbortController.signal;\n if (options.abortSignal?.aborted) {\n pollAbortController.abort();\n } else if (pollOptions?.abortSignal?.aborted) {\n pollAbortController.abort();\n } else if (!abortSignal.aborted) {\n options.abortSignal?.addEventListener(\"abort\", abortListener, {\n once: true,\n });\n pollOptions?.abortSignal?.addEventListener(\"abort\", abortListener, {\n once: true,\n });\n }\n let response;\n try {\n response = await client.pathUnchecked(path).get({ abortSignal });\n } finally {\n options.abortSignal?.removeEventListener(\"abort\", abortListener);\n pollOptions?.abortSignal?.removeEventListener(\"abort\", abortListener);\n }\n\n return getLroResponse(response as TResponse, expectedStatuses);\n },\n };\n return createHttpPoller(poller, {\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: options?.resourceLocationConfig,\n restoreFrom: options?.restoreFrom,\n processResult: (result: unknown) => {\n return processResponseBody(result as TResponse);\n },\n });\n}\n/**\n * Converts a Rest Client response to a response that the LRO implementation understands\n * @param response - a rest client http response\n * @param deserializeFn - deserialize function to convert Rest response to modular output\n * @returns - An LRO response that the LRO implementation understands\n */\nfunction getLroResponse<TResponse extends PathUncheckedResponse>(\n response: TResponse,\n expectedStatuses: string[],\n): OperationResponse<TResponse> {\n if (!expectedStatuses.includes(response.status)) {\n throw createRestError(response);\n }\n\n return {\n flatResponse: response,\n rawResponse: {\n ...response,\n statusCode: Number.parseInt(response.status),\n body: response.body,\n },\n };\n}\n"]}
1
+ {"version":3,"file":"pollingHelpers.js","sourceRoot":"","sources":["../../../src/static-helpers/pollingHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n PollerLike,\n OperationState,\n ResourceLocationConfig,\n RunningOperation,\n createHttpPoller,\n OperationResponse,\n} from \"@azure/core-lro\";\n\nimport { Client, PathUncheckedResponse, createRestError } from \"@azure-rest/core-client\";\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { KnownApiVersions } from \"../models/models.js\";\n\nexport interface GetLongRunningPollerOptions<TResponse> {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /**\n * The signal which can be used to abort requests.\n */\n abortSignal?: AbortSignalLike;\n /**\n * The potential location of the result of the LRO if specified by the LRO extension in the swagger.\n */\n resourceLocationConfig?: ResourceLocationConfig;\n /**\n * The original url of the LRO\n * Should not be null when restoreFrom is set\n */\n initialRequestUrl?: string;\n /**\n * A serialized poller which can be used to resume an existing paused Long-Running-Operation.\n */\n restoreFrom?: string;\n /**\n * The api-version of the LRO\n */\n apiVersion?: KnownApiVersions;\n /**\n * The function to get the initial response\n */\n getInitialResponse?: () => PromiseLike<TResponse>;\n}\nexport function getLongRunningPoller<TResponse extends PathUncheckedResponse, TResult = void>(\n client: Client,\n processResponseBody: (result: TResponse) => Promise<TResult>,\n expectedStatuses: string[],\n options: GetLongRunningPollerOptions<TResponse>,\n): PollerLike<OperationState<TResult>, TResult> {\n const { restoreFrom, getInitialResponse, apiVersion } = options;\n if (!restoreFrom && !getInitialResponse) {\n throw new Error(\"Either restoreFrom or getInitialResponse must be specified\");\n }\n let initialResponse: TResponse | undefined = undefined;\n const pollAbortController = new AbortController();\n const poller: RunningOperation<TResponse> = {\n sendInitialRequest: async () => {\n if (!getInitialResponse) {\n throw new Error(\"getInitialResponse is required when initializing a new poller\");\n }\n initialResponse = await getInitialResponse();\n return getLroResponse(initialResponse, expectedStatuses);\n },\n sendPollRequest: async (\n path: string,\n pollOptions?: {\n abortSignal?: AbortSignalLike;\n },\n ) => {\n // The poll request would both listen to the user provided abort signal and the poller's own abort signal\n function abortListener(): void {\n pollAbortController.abort();\n }\n const abortSignal = pollAbortController.signal;\n if (options.abortSignal?.aborted) {\n pollAbortController.abort();\n } else if (pollOptions?.abortSignal?.aborted) {\n pollAbortController.abort();\n } else if (!abortSignal.aborted) {\n options.abortSignal?.addEventListener(\"abort\", abortListener, {\n once: true,\n });\n pollOptions?.abortSignal?.addEventListener(\"abort\", abortListener, {\n once: true,\n });\n }\n let response;\n try {\n const pollingPath = apiVersion ? addApiVersionToUrl(path, apiVersion) : path;\n response = await client.pathUnchecked(pollingPath).get({ abortSignal });\n } finally {\n options.abortSignal?.removeEventListener(\"abort\", abortListener);\n pollOptions?.abortSignal?.removeEventListener(\"abort\", abortListener);\n }\n\n return getLroResponse(response as TResponse, expectedStatuses);\n },\n };\n return createHttpPoller(poller, {\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: options?.resourceLocationConfig,\n restoreFrom: options?.restoreFrom,\n processResult: (result: unknown) => {\n return processResponseBody(result as TResponse);\n },\n });\n}\n/**\n * Converts a Rest Client response to a response that the LRO implementation understands\n * @param response - a rest client http response\n * @param deserializeFn - deserialize function to convert Rest response to modular output\n * @returns - An LRO response that the LRO implementation understands\n */\nfunction getLroResponse<TResponse extends PathUncheckedResponse>(\n response: TResponse,\n expectedStatuses: string[],\n): OperationResponse<TResponse> {\n if (!expectedStatuses.includes(response.status)) {\n throw createRestError(response);\n }\n\n return {\n flatResponse: response,\n rawResponse: {\n ...response,\n statusCode: Number.parseInt(response.status),\n body: response.body,\n },\n };\n}\n\n/**\n * Adds the api-version query parameter on a URL if it's not present.\n * @param url - the URL to modify\n * @param apiVersion - the API version to set\n * @returns - the URL with the api-version query parameter set\n */\nfunction addApiVersionToUrl(url: string, apiVersion: string): string {\n // The base URL is only used for parsing and won't appear in the returned URL\n const urlObj = new URL(url, \"https://microsoft.com\");\n if (!urlObj.searchParams.get(\"api-version\")) {\n // Append one if there is no apiVersion\n return `${url}${\n Array.from(urlObj.searchParams.keys()).length > 0 ? \"&\" : \"?\"\n }api-version=${apiVersion}`;\n }\n return url;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"urlTemplate.d.ts","sourceRoot":"","sources":["../../../src/static-helpers/urlTemplate.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,kBAAkB;IAEjC,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AA4JD,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC5B,MAAM,CAAC,EAAE,kBAAkB,GAC1B,MAAM,CA+BR"}
1
+ {"version":3,"file":"urlTemplate.d.ts","sourceRoot":"","sources":["../../../src/static-helpers/urlTemplate.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,kBAAkB;IAEjC,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AA4JD,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC5B,MAAM,CAAC,EAAE,kBAAkB,GAC1B,MAAM,CAiCR"}
@@ -151,7 +151,7 @@ function getVarValue(option) {
151
151
  // This is an implementation of RFC 6570 URI Template: https://datatracker.ietf.org/doc/html/rfc6570.
152
152
  // ---------------------------------------------------------------------------------------------------
153
153
  export function expandUrlTemplate(template, context, option) {
154
- return template.replace(/\{([^{}]+)\}|([^{}]+)/g, (_, expr, text) => {
154
+ const r = template.replace(/\{([^{}]+)\}|([^{}]+)/g, (_, expr, text) => {
155
155
  if (!expr) {
156
156
  return encodeReservedComponent(text);
157
157
  }
@@ -181,5 +181,20 @@ export function expandUrlTemplate(template, context, option) {
181
181
  }
182
182
  return result.join("");
183
183
  });
184
+ return normalizeUnreserved(r);
185
+ }
186
+ /**
187
+ * Normalize an expanded URI by decoding percent-encoded unreserved characters.
188
+ * RFC 3986 unreserved: "-" / "." / "~"
189
+ */
190
+ function normalizeUnreserved(uri) {
191
+ return uri.replace(/%([0-9A-Fa-f]{2})/g, (match, hex) => {
192
+ const char = String.fromCharCode(parseInt(hex, 16));
193
+ // Decode only if it's unreserved
194
+ if (/[-.~]/.test(char)) {
195
+ return char;
196
+ }
197
+ return match; // leave other encodings intact
198
+ });
184
199
  }
185
200
  //# sourceMappingURL=urlTemplate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"urlTemplate.js","sourceRoot":"","sources":["../../../src/static-helpers/urlTemplate.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n// ---------------------\n// interfaces\n// ---------------------\ninterface ValueOptions {\n isFirst: boolean; // is first value in the expression\n op?: string; // operator\n varValue?: any; // variable value\n varName?: string; // variable name\n modifier?: string; // modifier e.g *\n reserved?: boolean; // if true we'll keep reserved words with not encoding\n}\n\nexport interface UrlTemplateOptions {\n // if set to true, reserved characters will not be encoded\n allowReserved?: boolean;\n}\n\n// ---------------------\n// helpers\n// ---------------------\nfunction encodeComponent(val: string, reserved?: boolean, op?: string): string {\n return (reserved ?? op === \"+\") || op === \"#\"\n ? encodeReservedComponent(val)\n : encodeRFC3986URIComponent(val);\n}\n\nfunction encodeReservedComponent(str: string): string {\n return str\n .split(/(%[0-9A-Fa-f]{2})/g)\n .map((part) => (!/%[0-9A-Fa-f]/.test(part) ? encodeURI(part) : part))\n .join(\"\");\n}\n\nfunction encodeRFC3986URIComponent(str: string): string {\n return encodeURIComponent(str).replace(\n /[!'()*]/g,\n (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`,\n );\n}\n\nfunction isDefined(val: any): boolean {\n return val !== undefined && val !== null;\n}\n\nfunction getNamedAndIfEmpty(op?: string): [boolean, string] {\n return [!!op && [\";\", \"?\", \"&\"].includes(op), !!op && [\"?\", \"&\"].includes(op) ? \"=\" : \"\"];\n}\n\nfunction getFirstOrSep(op?: string, isFirst = false): string {\n if (isFirst) {\n return !op || op === \"+\" ? \"\" : op;\n } else if (!op || op === \"+\" || op === \"#\") {\n return \",\";\n } else if (op === \"?\") {\n return \"&\";\n } else {\n return op;\n }\n}\n\nfunction getExpandedValue(option: ValueOptions): string {\n let isFirst = option.isFirst;\n const { op, varName, varValue: value, reserved } = option;\n const vals: string[] = [];\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n\n if (Array.isArray(value)) {\n for (const val of value.filter(isDefined)) {\n // prepare the following parts: separator, varName, value\n vals.push(`${getFirstOrSep(op, isFirst)}`);\n if (named && varName) {\n vals.push(`${encodeURIComponent(varName)}`);\n if (val === \"\") {\n vals.push(ifEmpty);\n } else {\n vals.push(\"=\");\n }\n }\n vals.push(encodeComponent(val, reserved, op));\n isFirst = false;\n }\n } else if (typeof value === \"object\") {\n for (const key of Object.keys(value)) {\n const val = value[key];\n if (!isDefined(val)) {\n continue;\n }\n // prepare the following parts: separator, key, value\n vals.push(`${getFirstOrSep(op, isFirst)}`);\n if (key) {\n vals.push(`${encodeURIComponent(key)}`);\n if (named && val === \"\") {\n vals.push(ifEmpty);\n } else {\n vals.push(\"=\");\n }\n }\n vals.push(encodeComponent(val, reserved, op));\n isFirst = false;\n }\n }\n return vals.join(\"\");\n}\n\nfunction getNonExpandedValue(option: ValueOptions): string | undefined {\n const { op, varName, varValue: value, isFirst, reserved } = option;\n const vals: string[] = [];\n const first = getFirstOrSep(op, isFirst);\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n if (named && varName) {\n vals.push(encodeComponent(varName, reserved, op));\n if (value === \"\") {\n if (!ifEmpty) {\n vals.push(ifEmpty);\n }\n return !vals.join(\"\") ? undefined : `${first}${vals.join(\"\")}`;\n }\n vals.push(\"=\");\n }\n\n const items = [];\n if (Array.isArray(value)) {\n for (const val of value.filter(isDefined)) {\n items.push(encodeComponent(val, reserved, op));\n }\n } else if (typeof value === \"object\") {\n for (const key of Object.keys(value)) {\n if (!isDefined(value[key])) {\n continue;\n }\n items.push(encodeRFC3986URIComponent(key));\n items.push(encodeComponent(value[key], reserved, op));\n }\n }\n vals.push(items.join(\",\"));\n return !vals.join(\",\") ? undefined : `${first}${vals.join(\"\")}`;\n}\n\nfunction getVarValue(option: ValueOptions): string | undefined {\n const { op, varName, modifier, isFirst, reserved, varValue: value } = option;\n\n if (!isDefined(value)) {\n return undefined;\n } else if ([\"string\", \"number\", \"boolean\"].includes(typeof value)) {\n let val = value.toString();\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n const vals: string[] = [getFirstOrSep(op, isFirst)];\n if (named && varName) {\n // No need to encode varName considering it is already encoded\n vals.push(varName);\n if (val === \"\") {\n vals.push(ifEmpty);\n } else {\n vals.push(\"=\");\n }\n }\n if (modifier && modifier !== \"*\") {\n val = val.substring(0, parseInt(modifier, 10));\n }\n vals.push(encodeComponent(val, reserved, op));\n return vals.join(\"\");\n } else if (modifier === \"*\") {\n return getExpandedValue(option);\n } else {\n return getNonExpandedValue(option);\n }\n}\n\n// ---------------------------------------------------------------------------------------------------\n// This is an implementation of RFC 6570 URI Template: https://datatracker.ietf.org/doc/html/rfc6570.\n// ---------------------------------------------------------------------------------------------------\nexport function expandUrlTemplate(\n template: string,\n context: Record<string, any>,\n option?: UrlTemplateOptions,\n): string {\n return template.replace(/\\{([^{}]+)\\}|([^{}]+)/g, (_, expr, text) => {\n if (!expr) {\n return encodeReservedComponent(text);\n }\n let op;\n if ([\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"].includes(expr[0])) {\n op = expr[0];\n expr = expr.slice(1);\n }\n const varList = expr.split(/,/g);\n const result = [];\n for (const varSpec of varList) {\n const varMatch = /([^:*]*)(?::(\\d+)|(\\*))?/.exec(varSpec);\n if (!varMatch || !varMatch[1]) {\n continue;\n }\n const varValue = getVarValue({\n isFirst: result.length === 0,\n op,\n varValue: context[varMatch[1]],\n varName: varMatch[1],\n modifier: varMatch[2] || varMatch[3],\n reserved: option?.allowReserved,\n });\n if (varValue) {\n result.push(varValue);\n }\n }\n return result.join(\"\");\n });\n}\n"]}
1
+ {"version":3,"file":"urlTemplate.js","sourceRoot":"","sources":["../../../src/static-helpers/urlTemplate.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAmBlC,wBAAwB;AACxB,UAAU;AACV,wBAAwB;AACxB,SAAS,eAAe,CAAC,GAAW,EAAE,QAAkB,EAAE,EAAW;IACnE,OAAO,CAAC,QAAQ,IAAI,EAAE,KAAK,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG;QAC3C,CAAC,CAAC,uBAAuB,CAAC,GAAG,CAAC;QAC9B,CAAC,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAW;IAC1C,OAAO,GAAG;SACP,KAAK,CAAC,oBAAoB,CAAC;SAC3B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SACpE,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED,SAAS,yBAAyB,CAAC,GAAW;IAC5C,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC,OAAO,CACpC,UAAU,EACV,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CACxD,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,GAAQ;IACzB,OAAO,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,CAAC;AAC3C,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAW;IACrC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAC5F,CAAC;AAED,SAAS,aAAa,CAAC,EAAW,EAAE,OAAO,GAAG,KAAK;IACjD,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACrC,CAAC;SAAM,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;QAC3C,OAAO,GAAG,CAAC;IACb,CAAC;SAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;QACtB,OAAO,GAAG,CAAC;IACb,CAAC;SAAM,CAAC;QACN,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAoB;IAC5C,IAAI,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC7B,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAC1D,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAEhD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,yDAAyD;YACzD,IAAI,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YAC3C,IAAI,KAAK,IAAI,OAAO,EAAE,CAAC;gBACrB,IAAI,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC5C,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;oBACf,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjB,CAAC;YACH,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpB,SAAS;YACX,CAAC;YACD,qDAAqD;YACrD,IAAI,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YAC3C,IAAI,GAAG,EAAE,CAAC;gBACR,IAAI,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACxC,IAAI,KAAK,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;oBACxB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjB,CAAC;YACH,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvB,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAoB;IAC/C,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IACnE,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,KAAK,GAAG,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACzC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAChD,IAAI,KAAK,IAAI,OAAO,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;QAClD,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;QACjE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,MAAM,KAAK,GAAG,EAAE,CAAC;IACjB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC3B,SAAS;YACX,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3C,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;AAClE,CAAC;AAED,SAAS,WAAW,CAAC,MAAoB;IACvC,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IAE7E,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,SAAS,CAAC;IACnB,CAAC;SAAM,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;QAClE,IAAI,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC3B,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAChD,MAAM,IAAI,GAAa,CAAC,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;QACpD,IAAI,KAAK,IAAI,OAAO,EAAE,CAAC;YACrB,8DAA8D;YAC9D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;YACjC,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,CAAC;SAAM,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;QAC5B,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;SAAM,CAAC;QACN,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;AACH,CAAC;AAED,sGAAsG;AACtG,qGAAqG;AACrG,sGAAsG;AACtG,MAAM,UAAU,iBAAiB,CAC/B,QAAgB,EAChB,OAA4B,EAC5B,MAA2B;IAE3B,MAAM,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QACrE,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,EAAE,CAAC;QACP,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1D,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9B,SAAS;YACX,CAAC;YACD,MAAM,QAAQ,GAAG,WAAW,CAAC;gBAC3B,OAAO,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;gBAC5B,EAAE;gBACF,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC9B,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;gBACpB,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC;gBACpC,QAAQ,EAAE,MAAM,EAAE,aAAa;aAChC,CAAC,CAAC;YACH,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,OAAO,mBAAmB,CAAC,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAAC,GAAW;IACtC,OAAO,GAAG,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtD,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QACpD,iCAAiC;QACjC,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC,CAAC,+BAA+B;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n// ---------------------\n// interfaces\n// ---------------------\ninterface ValueOptions {\n isFirst: boolean; // is first value in the expression\n op?: string; // operator\n varValue?: any; // variable value\n varName?: string; // variable name\n modifier?: string; // modifier e.g *\n reserved?: boolean; // if true we'll keep reserved words with not encoding\n}\n\nexport interface UrlTemplateOptions {\n // if set to true, reserved characters will not be encoded\n allowReserved?: boolean;\n}\n\n// ---------------------\n// helpers\n// ---------------------\nfunction encodeComponent(val: string, reserved?: boolean, op?: string): string {\n return (reserved ?? op === \"+\") || op === \"#\"\n ? encodeReservedComponent(val)\n : encodeRFC3986URIComponent(val);\n}\n\nfunction encodeReservedComponent(str: string): string {\n return str\n .split(/(%[0-9A-Fa-f]{2})/g)\n .map((part) => (!/%[0-9A-Fa-f]/.test(part) ? encodeURI(part) : part))\n .join(\"\");\n}\n\nfunction encodeRFC3986URIComponent(str: string): string {\n return encodeURIComponent(str).replace(\n /[!'()*]/g,\n (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`,\n );\n}\n\nfunction isDefined(val: any): boolean {\n return val !== undefined && val !== null;\n}\n\nfunction getNamedAndIfEmpty(op?: string): [boolean, string] {\n return [!!op && [\";\", \"?\", \"&\"].includes(op), !!op && [\"?\", \"&\"].includes(op) ? \"=\" : \"\"];\n}\n\nfunction getFirstOrSep(op?: string, isFirst = false): string {\n if (isFirst) {\n return !op || op === \"+\" ? \"\" : op;\n } else if (!op || op === \"+\" || op === \"#\") {\n return \",\";\n } else if (op === \"?\") {\n return \"&\";\n } else {\n return op;\n }\n}\n\nfunction getExpandedValue(option: ValueOptions): string {\n let isFirst = option.isFirst;\n const { op, varName, varValue: value, reserved } = option;\n const vals: string[] = [];\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n\n if (Array.isArray(value)) {\n for (const val of value.filter(isDefined)) {\n // prepare the following parts: separator, varName, value\n vals.push(`${getFirstOrSep(op, isFirst)}`);\n if (named && varName) {\n vals.push(`${encodeURIComponent(varName)}`);\n if (val === \"\") {\n vals.push(ifEmpty);\n } else {\n vals.push(\"=\");\n }\n }\n vals.push(encodeComponent(val, reserved, op));\n isFirst = false;\n }\n } else if (typeof value === \"object\") {\n for (const key of Object.keys(value)) {\n const val = value[key];\n if (!isDefined(val)) {\n continue;\n }\n // prepare the following parts: separator, key, value\n vals.push(`${getFirstOrSep(op, isFirst)}`);\n if (key) {\n vals.push(`${encodeURIComponent(key)}`);\n if (named && val === \"\") {\n vals.push(ifEmpty);\n } else {\n vals.push(\"=\");\n }\n }\n vals.push(encodeComponent(val, reserved, op));\n isFirst = false;\n }\n }\n return vals.join(\"\");\n}\n\nfunction getNonExpandedValue(option: ValueOptions): string | undefined {\n const { op, varName, varValue: value, isFirst, reserved } = option;\n const vals: string[] = [];\n const first = getFirstOrSep(op, isFirst);\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n if (named && varName) {\n vals.push(encodeComponent(varName, reserved, op));\n if (value === \"\") {\n if (!ifEmpty) {\n vals.push(ifEmpty);\n }\n return !vals.join(\"\") ? undefined : `${first}${vals.join(\"\")}`;\n }\n vals.push(\"=\");\n }\n\n const items = [];\n if (Array.isArray(value)) {\n for (const val of value.filter(isDefined)) {\n items.push(encodeComponent(val, reserved, op));\n }\n } else if (typeof value === \"object\") {\n for (const key of Object.keys(value)) {\n if (!isDefined(value[key])) {\n continue;\n }\n items.push(encodeRFC3986URIComponent(key));\n items.push(encodeComponent(value[key], reserved, op));\n }\n }\n vals.push(items.join(\",\"));\n return !vals.join(\",\") ? undefined : `${first}${vals.join(\"\")}`;\n}\n\nfunction getVarValue(option: ValueOptions): string | undefined {\n const { op, varName, modifier, isFirst, reserved, varValue: value } = option;\n\n if (!isDefined(value)) {\n return undefined;\n } else if ([\"string\", \"number\", \"boolean\"].includes(typeof value)) {\n let val = value.toString();\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n const vals: string[] = [getFirstOrSep(op, isFirst)];\n if (named && varName) {\n // No need to encode varName considering it is already encoded\n vals.push(varName);\n if (val === \"\") {\n vals.push(ifEmpty);\n } else {\n vals.push(\"=\");\n }\n }\n if (modifier && modifier !== \"*\") {\n val = val.substring(0, parseInt(modifier, 10));\n }\n vals.push(encodeComponent(val, reserved, op));\n return vals.join(\"\");\n } else if (modifier === \"*\") {\n return getExpandedValue(option);\n } else {\n return getNonExpandedValue(option);\n }\n}\n\n// ---------------------------------------------------------------------------------------------------\n// This is an implementation of RFC 6570 URI Template: https://datatracker.ietf.org/doc/html/rfc6570.\n// ---------------------------------------------------------------------------------------------------\nexport function expandUrlTemplate(\n template: string,\n context: Record<string, any>,\n option?: UrlTemplateOptions,\n): string {\n const r = template.replace(/\\{([^{}]+)\\}|([^{}]+)/g, (_, expr, text) => {\n if (!expr) {\n return encodeReservedComponent(text);\n }\n let op;\n if ([\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"].includes(expr[0])) {\n op = expr[0];\n expr = expr.slice(1);\n }\n const varList = expr.split(/,/g);\n const result = [];\n for (const varSpec of varList) {\n const varMatch = /([^:*]*)(?::(\\d+)|(\\*))?/.exec(varSpec);\n if (!varMatch || !varMatch[1]) {\n continue;\n }\n const varValue = getVarValue({\n isFirst: result.length === 0,\n op,\n varValue: context[varMatch[1]],\n varName: varMatch[1],\n modifier: varMatch[2] || varMatch[3],\n reserved: option?.allowReserved,\n });\n if (varValue) {\n result.push(varValue);\n }\n }\n return result.join(\"\");\n });\n\n return normalizeUnreserved(r);\n}\n\n/**\n * Normalize an expanded URI by decoding percent-encoded unreserved characters.\n * RFC 3986 unreserved: \"-\" / \".\" / \"~\"\n */\nfunction normalizeUnreserved(uri: string): string {\n return uri.replace(/%([0-9A-Fa-f]{2})/g, (match, hex) => {\n const char = String.fromCharCode(parseInt(hex, 16));\n // Decode only if it's unreserved\n if (/[-.~]/.test(char)) {\n return char;\n }\n return match; // leave other encodings intact\n });\n}\n"]}
@@ -0,0 +1,11 @@
1
+ import type { ClientOptions as OpenAIClientOptions } from "openai";
2
+ import type { HttpHeaders } from "@azure/core-rest-pipeline";
3
+ export declare const normalizeOpenAIHeaders: (headers?: OpenAIClientOptions["defaultHeaders"]) => HttpHeaders;
4
+ /**
5
+ * Get OpenAI default headers with user-agent set appropriately
6
+ * @param defaultHeaders - The default headers from OpenAI client options
7
+ * @param userAgentPrefix - Optional user agent prefix to prepend from AIProjectClient options
8
+ * @returns HttpHeaders with normalized headers and user-agent set
9
+ */
10
+ export declare const getOpenAIDefaultHeaders: (defaultHeaders?: OpenAIClientOptions["defaultHeaders"], userAgentPrefix?: string) => HttpHeaders;
11
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,IAAI,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAuB,MAAM,2BAA2B,CAAC;AAOlF,eAAO,MAAM,sBAAsB,GACjC,UAAU,mBAAmB,CAAC,gBAAgB,CAAC,KAC9C,WA4EF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAClC,iBAAiB,mBAAmB,CAAC,gBAAgB,CAAC,EACtD,kBAAkB,MAAM,KACvB,WAWF,CAAC"}
@@ -0,0 +1,93 @@
1
+ import { createHttpHeaders } from "@azure/core-rest-pipeline";
2
+ /*
3
+ * @param headers the openai defaultHeaders in openai client options
4
+ * @returns HttpHeaders, normalized from various OpenAI header formats
5
+ */
6
+ export const normalizeOpenAIHeaders = (headers) => {
7
+ if (!headers) {
8
+ return createHttpHeaders();
9
+ }
10
+ // Handle NullableHeaders (OpenAI internal type with values and nulls properties)
11
+ // Check this first before other object checks
12
+ if ("values" in headers && "nulls" in headers) {
13
+ const result = normalizeOpenAIHeaders(headers.values);
14
+ // Remove headers that were explicitly set to null
15
+ if (result && headers.nulls instanceof Set && headers.nulls.size > 0) {
16
+ for (const nullHeader of headers.nulls) {
17
+ result.delete(nullHeader);
18
+ }
19
+ }
20
+ return result;
21
+ }
22
+ // Handle array format: readonly HeaderValue[][]
23
+ // Check arrays before forEach to avoid catching arrays with the forEach check
24
+ if (Array.isArray(headers)) {
25
+ const rawHeaders = {};
26
+ for (const [key, value] of headers) {
27
+ if (key && value !== null && value !== undefined) {
28
+ const strValue = String(value);
29
+ // Merge multiple headers with the same name using comma separation
30
+ if (rawHeaders[key]) {
31
+ rawHeaders[key] = `${rawHeaders[key]}, ${strValue}`;
32
+ }
33
+ else {
34
+ rawHeaders[key] = strValue;
35
+ }
36
+ }
37
+ }
38
+ return createHttpHeaders(rawHeaders);
39
+ }
40
+ // Handle Headers object (Web API Headers) - use duck typing to avoid Node.js version warnings
41
+ if ("forEach" in headers && typeof headers.forEach === "function") {
42
+ const rawHeaders = {};
43
+ // Type assertion since we've verified it has forEach
44
+ headers.forEach((value, key) => {
45
+ // Merge multiple headers with the same name using comma separation
46
+ if (rawHeaders[key]) {
47
+ rawHeaders[key] = `${rawHeaders[key]}, ${value}`;
48
+ }
49
+ else {
50
+ rawHeaders[key] = value;
51
+ }
52
+ });
53
+ return createHttpHeaders(rawHeaders);
54
+ }
55
+ // Handle Record<string, HeaderValue | readonly HeaderValue[]>
56
+ if (typeof headers === "object" && headers !== null) {
57
+ const rawHeaders = {};
58
+ for (const [key, value] of Object.entries(headers)) {
59
+ if (value === null || value === undefined) {
60
+ continue;
61
+ }
62
+ if (Array.isArray(value)) {
63
+ // Join multiple values with comma (standard HTTP header behavior)
64
+ const filtered = value.filter((v) => v !== null && v !== undefined).map(String);
65
+ if (filtered.length > 0) {
66
+ rawHeaders[key] = filtered.join(", ");
67
+ }
68
+ }
69
+ else {
70
+ rawHeaders[key] = String(value);
71
+ }
72
+ }
73
+ return createHttpHeaders(rawHeaders);
74
+ }
75
+ return createHttpHeaders();
76
+ };
77
+ /**
78
+ * Get OpenAI default headers with user-agent set appropriately
79
+ * @param defaultHeaders - The default headers from OpenAI client options
80
+ * @param userAgentPrefix - Optional user agent prefix to prepend from AIProjectClient options
81
+ * @returns HttpHeaders with normalized headers and user-agent set
82
+ */
83
+ export const getOpenAIDefaultHeaders = (defaultHeaders, userAgentPrefix) => {
84
+ const headers = normalizeOpenAIHeaders(defaultHeaders);
85
+ if (!headers.has("User-Agent")) {
86
+ const clientIdentifier = userAgentPrefix
87
+ ? `${userAgentPrefix}-AIProjectClient`
88
+ : "AIProjectClient";
89
+ headers.set("User-Agent", `${clientIdentifier} OpenAI/JS`);
90
+ }
91
+ return headers;
92
+ };
93
+ //# sourceMappingURL=util.js.map