@microsoft/power-apps 1.0.4 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (410) hide show
  1. package/LICENSE +153 -153
  2. package/README.md +17 -17
  3. package/{lib → dist}/app/App.Types.d.ts +1 -1
  4. package/dist/app/App.Types.d.ts.map +1 -0
  5. package/{lib → dist}/app/Config.d.ts +1 -1
  6. package/{lib → dist}/app/Config.d.ts.map +1 -1
  7. package/{lib → dist}/app/Config.js.map +1 -1
  8. package/{lib → dist}/app/ContextProvider.d.ts +1 -1
  9. package/{lib → dist}/app/ContextProvider.d.ts.map +1 -1
  10. package/{lib → dist}/app/ContextProvider.js.map +1 -1
  11. package/{lib → dist}/app/index.d.ts +2 -2
  12. package/dist/app/index.d.ts.map +1 -0
  13. package/{lib → dist}/app/index.js +1 -1
  14. package/dist/app/index.js.map +1 -0
  15. package/{lib → dist}/data/Data.types.d.ts +5 -1
  16. package/dist/data/Data.types.d.ts.map +1 -0
  17. package/{lib → dist}/data/executors/index.d.ts +1 -1
  18. package/{lib → dist}/data/executors/index.d.ts.map +1 -1
  19. package/dist/data/executors/index.js +5 -0
  20. package/{lib → dist}/data/executors/index.js.map +1 -1
  21. package/{lib → dist}/data/index.d.ts +3 -2
  22. package/dist/data/index.d.ts.map +1 -0
  23. package/dist/data/index.js +6 -0
  24. package/dist/data/index.js.map +1 -0
  25. package/{lib → dist}/data/metadata/dataverse/index.d.ts +1 -1
  26. package/dist/data/metadata/dataverse/index.d.ts.map +1 -0
  27. package/{lib → dist}/data/metadata/dataverse/index.js.map +1 -1
  28. package/dist/data/multiSelectPicklistUtils.d.ts +34 -0
  29. package/dist/data/multiSelectPicklistUtils.d.ts.map +1 -0
  30. package/dist/data/multiSelectPicklistUtils.js +51 -0
  31. package/dist/data/multiSelectPicklistUtils.js.map +1 -0
  32. package/{lib → dist}/data/powerAppsData.d.ts +2 -2
  33. package/dist/data/powerAppsData.d.ts.map +1 -0
  34. package/{lib → dist}/data/powerAppsData.js +19 -3
  35. package/dist/data/powerAppsData.js.map +1 -0
  36. package/dist/internal/data/ConnectionUtils.js.map +1 -0
  37. package/{lib → dist}/internal/data/OperationExecutor.d.ts +1 -1
  38. package/dist/internal/data/OperationExecutor.d.ts.map +1 -0
  39. package/{lib → dist}/internal/data/OperationExecutor.js +8 -13
  40. package/dist/internal/data/OperationExecutor.js.map +1 -0
  41. package/dist/internal/data/core/api/deleteFileOrImageFromRecord.d.ts +16 -0
  42. package/dist/internal/data/core/api/deleteFileOrImageFromRecord.d.ts.map +1 -0
  43. package/dist/internal/data/core/api/deleteFileOrImageFromRecord.js +18 -0
  44. package/dist/internal/data/core/api/deleteFileOrImageFromRecord.js.map +1 -0
  45. package/{lib → dist}/internal/data/core/api/deleteRecord.d.ts.map +1 -1
  46. package/{lib → dist}/internal/data/core/api/deleteRecord.js.map +1 -1
  47. package/dist/internal/data/core/api/downloadFileFromRecord.d.ts +19 -0
  48. package/dist/internal/data/core/api/downloadFileFromRecord.d.ts.map +1 -0
  49. package/dist/internal/data/core/api/downloadFileFromRecord.js +21 -0
  50. package/dist/internal/data/core/api/downloadFileFromRecord.js.map +1 -0
  51. package/dist/internal/data/core/api/downloadImageFromRecord.d.ts +20 -0
  52. package/dist/internal/data/core/api/downloadImageFromRecord.d.ts.map +1 -0
  53. package/dist/internal/data/core/api/downloadImageFromRecord.js +22 -0
  54. package/dist/internal/data/core/api/downloadImageFromRecord.js.map +1 -0
  55. package/{lib → dist}/internal/data/core/api/execute.d.ts.map +1 -1
  56. package/{lib → dist}/internal/data/core/api/execute.js.map +1 -1
  57. package/dist/internal/data/core/api/uploadRecord.d.ts +20 -0
  58. package/dist/internal/data/core/api/uploadRecord.d.ts.map +1 -0
  59. package/dist/internal/data/core/api/uploadRecord.js +22 -0
  60. package/dist/internal/data/core/api/uploadRecord.js.map +1 -0
  61. package/{lib → dist}/internal/data/core/common/types.d.ts +22 -34
  62. package/dist/internal/data/core/common/types.d.ts.map +1 -0
  63. package/{lib → dist}/internal/data/core/common/types.js.map +1 -1
  64. package/{lib → dist}/internal/data/core/common/utils.d.ts +2 -2
  65. package/{lib → dist}/internal/data/core/common/utils.js +5 -5
  66. package/dist/internal/data/core/common/utils.js.map +1 -0
  67. package/{lib → dist}/internal/data/core/data/defaultOperationOrchestrator.d.ts +42 -3
  68. package/dist/internal/data/core/data/defaultOperationOrchestrator.d.ts.map +1 -0
  69. package/{lib → dist}/internal/data/core/data/defaultOperationOrchestrator.js +76 -1
  70. package/dist/internal/data/core/data/defaultOperationOrchestrator.js.map +1 -0
  71. package/{lib → dist}/internal/data/core/data/executors/connectorDataOperationExecutor.d.ts +18 -2
  72. package/dist/internal/data/core/data/executors/connectorDataOperationExecutor.d.ts.map +1 -0
  73. package/{lib → dist}/internal/data/core/data/executors/connectorDataOperationExecutor.js +50 -16
  74. package/dist/internal/data/core/data/executors/connectorDataOperationExecutor.js.map +1 -0
  75. package/{lib → dist}/internal/data/core/data/executors/dataverseDataOperationExecutor.d.ts +52 -6
  76. package/dist/internal/data/core/data/executors/dataverseDataOperationExecutor.d.ts.map +1 -0
  77. package/{lib → dist}/internal/data/core/data/executors/dataverseDataOperationExecutor.js +237 -11
  78. package/dist/internal/data/core/data/executors/dataverseDataOperationExecutor.js.map +1 -0
  79. package/dist/internal/data/core/data/executors/mockDataOperationExecutor.d.ts +25 -0
  80. package/dist/internal/data/core/data/executors/mockDataOperationExecutor.d.ts.map +1 -0
  81. package/{lib → dist}/internal/data/core/data/executors/mockDataOperationExecutor.js +42 -6
  82. package/dist/internal/data/core/data/executors/mockDataOperationExecutor.js.map +1 -0
  83. package/{lib → dist}/internal/data/core/data/executors/shared/stringQueryOptions.d.ts +1 -1
  84. package/{lib → dist}/internal/data/core/data/executors/shared/stringQueryOptions.d.ts.map +1 -1
  85. package/{lib → dist}/internal/data/core/data/executors/shared/stringQueryOptions.js +3 -1
  86. package/dist/internal/data/core/data/executors/shared/stringQueryOptions.js.map +1 -0
  87. package/{lib → dist}/internal/data/core/error/constants.d.ts +5 -1
  88. package/dist/internal/data/core/error/constants.d.ts.map +1 -0
  89. package/{lib → dist}/internal/data/core/error/constants.js +4 -0
  90. package/dist/internal/data/core/error/constants.js.map +1 -0
  91. package/{lib → dist}/internal/data/core/error/error.d.ts +1 -1
  92. package/{lib → dist}/internal/data/core/error/error.d.ts.map +1 -1
  93. package/{lib → dist}/internal/data/core/error/error.js +1 -1
  94. package/{lib → dist}/internal/data/core/error/error.js.map +1 -1
  95. package/{lib → dist}/internal/data/core/error/messages.d.ts +5 -1
  96. package/{lib → dist}/internal/data/core/error/messages.d.ts.map +1 -1
  97. package/{lib → dist}/internal/data/core/error/messages.js +4 -0
  98. package/{lib → dist}/internal/data/core/error/messages.js.map +1 -1
  99. package/{lib → dist}/internal/data/core/error/types.d.ts +1 -1
  100. package/dist/internal/data/core/error/types.d.ts.map +1 -0
  101. package/dist/internal/data/core/error/types.js.map +1 -0
  102. package/{lib → dist}/internal/data/core/error/util.d.ts +3 -2
  103. package/dist/internal/data/core/error/util.d.ts.map +1 -0
  104. package/{lib → dist}/internal/data/core/error/util.js +2 -2
  105. package/dist/internal/data/core/error/util.js.map +1 -0
  106. package/{lib → dist}/internal/data/core/metadata/runtimeDataSourceService.d.ts +2 -2
  107. package/dist/internal/data/core/metadata/runtimeDataSourceService.d.ts.map +1 -0
  108. package/dist/internal/data/core/metadata/runtimeDataSourceService.js.map +1 -0
  109. package/{lib → dist}/internal/data/core/metadata/runtimeMetadataOperations.d.ts +3 -3
  110. package/dist/internal/data/core/metadata/runtimeMetadataOperations.d.ts.map +1 -0
  111. package/{lib → dist}/internal/data/core/runtime/getRuntimeContext.d.ts +1 -1
  112. package/dist/internal/data/core/runtime/getRuntimeContext.d.ts.map +1 -0
  113. package/{lib → dist}/internal/data/core/runtime/getRuntimeContext.js +1 -1
  114. package/dist/internal/data/core/runtime/getRuntimeContext.js.map +1 -0
  115. package/{lib → dist}/internal/data/core/runtime/powerDataRuntime.d.ts +3 -3
  116. package/dist/internal/data/core/runtime/powerDataRuntime.d.ts.map +1 -0
  117. package/{lib → dist}/internal/data/core/runtime/powerDataRuntime.js +5 -5
  118. package/dist/internal/data/core/runtime/powerDataRuntime.js.map +1 -0
  119. package/{lib → dist}/internal/data/core/runtime/powerDataRuntimeInstance.d.ts +2 -2
  120. package/dist/internal/data/core/runtime/powerDataRuntimeInstance.d.ts.map +1 -0
  121. package/{lib → dist}/internal/data/core/runtime/powerDataRuntimeInstance.js +1 -1
  122. package/dist/internal/data/core/runtime/powerDataRuntimeInstance.js.map +1 -0
  123. package/{lib → dist}/internal/data/core/runtime/powerDataSourcesInfoProvider.d.ts +2 -2
  124. package/dist/internal/data/core/runtime/powerDataSourcesInfoProvider.d.ts.map +1 -0
  125. package/dist/internal/data/core/runtime/powerDataSourcesInfoProvider.js.map +1 -0
  126. package/{lib → dist}/internal/data/core/runtimeClient/runtimeClientProvider.d.ts +2 -2
  127. package/dist/internal/data/core/runtimeClient/runtimeClientProvider.d.ts.map +1 -0
  128. package/{lib → dist}/internal/data/core/runtimeClient/runtimeClientProvider.js +1 -1
  129. package/dist/internal/data/core/runtimeClient/runtimeClientProvider.js.map +1 -0
  130. package/{lib → dist}/internal/data/core/runtimeClient/runtimeDataClient.d.ts +16 -3
  131. package/dist/internal/data/core/runtimeClient/runtimeDataClient.d.ts.map +1 -0
  132. package/{lib → dist}/internal/data/core/runtimeClient/runtimeDataClient.js +90 -17
  133. package/dist/internal/data/core/runtimeClient/runtimeDataClient.js.map +1 -0
  134. package/{lib → dist}/internal/data/core/runtimeClient/runtimeMetadataClient.d.ts +2 -2
  135. package/dist/internal/data/core/runtimeClient/runtimeMetadataClient.d.ts.map +1 -0
  136. package/dist/internal/data/core/runtimeClient/runtimeMetadataClient.js.map +1 -0
  137. package/{lib → dist}/internal/data/core/telemetry/log.d.ts +1 -1
  138. package/dist/internal/data/core/telemetry/log.d.ts.map +1 -0
  139. package/{lib → dist}/internal/data/core/telemetry/log.js +9 -16
  140. package/dist/internal/data/core/telemetry/log.js.map +1 -0
  141. package/{lib → dist}/internal/data/core/types/dataverseMetadata.d.ts +1 -1
  142. package/{lib → dist}/internal/data/core/types/dataverseMetadata.js +9 -9
  143. package/{lib → dist}/internal/data/core/types/dataverseMetadata.js.map +1 -1
  144. package/{lib → dist}/internal/data/core/types/index.d.ts +57 -2
  145. package/dist/internal/data/core/types/index.d.ts.map +1 -0
  146. package/{lib → dist}/internal/data/core/types/index.js.map +1 -1
  147. package/{lib → dist}/internal/plugins/DefaultPowerAppsBridge.d.ts +1 -1
  148. package/dist/internal/plugins/DefaultPowerAppsBridge.d.ts.map +1 -0
  149. package/{lib → dist}/internal/plugins/DefaultPowerAppsBridge.js +0 -1
  150. package/dist/internal/plugins/DefaultPowerAppsBridge.js.map +1 -0
  151. package/{lib → dist}/internal/plugins/PluginBridge.js +5 -10
  152. package/{lib → dist}/internal/plugins/PluginBridge.js.map +1 -1
  153. package/dist/internal/plugins/SendMessage/CompatibleMessageReceiver.d.ts.map +1 -0
  154. package/dist/internal/plugins/SendMessage/CompatibleMessageReceiver.js.map +1 -0
  155. package/{lib → dist}/internal/plugins/SendMessage/IncompatibleMessageReceiver.d.ts.map +1 -1
  156. package/{lib → dist}/internal/plugins/SendMessage/IncompatibleMessageReceiver.js.map +1 -1
  157. package/{lib → dist}/internal/plugins/SendMessage/MessageReceiver.Types.d.ts +2 -2
  158. package/dist/internal/plugins/SendMessage/MessageReceiver.Types.d.ts.map +1 -0
  159. package/dist/internal/plugins/SendMessage/SendMessage.d.ts.map +1 -0
  160. package/{lib → dist}/internal/plugins/SendMessage/SendMessage.js +1 -1
  161. package/dist/internal/plugins/SendMessage/SendMessage.js.map +1 -0
  162. package/dist/internal/plugins/SendMessage/SendMessageOperation.d.ts.map +1 -0
  163. package/{lib → dist}/internal/plugins/SendMessage/SendMessageOperation.js.map +1 -1
  164. package/{lib → dist}/telemetry/LoggerManager.d.ts.map +1 -1
  165. package/dist/telemetry/LoggerManager.js.map +1 -0
  166. package/dist/telemetry/Metrics.types.d.ts.map +1 -0
  167. package/dist/telemetry/Performance.js.map +1 -0
  168. package/package.json +31 -32
  169. package/lib/__tests__/DefaultPowerAppsBridge.test.d.ts +0 -5
  170. package/lib/__tests__/DefaultPowerAppsBridge.test.d.ts.map +0 -1
  171. package/lib/__tests__/DefaultPowerAppsBridge.test.js +0 -173
  172. package/lib/__tests__/DefaultPowerAppsBridge.test.js.map +0 -1
  173. package/lib/__tests__/connectorDataOperationExecutor.spec.d.ts +0 -5
  174. package/lib/__tests__/connectorDataOperationExecutor.spec.d.ts.map +0 -1
  175. package/lib/__tests__/connectorDataOperationExecutor.spec.js +0 -593
  176. package/lib/__tests__/connectorDataOperationExecutor.spec.js.map +0 -1
  177. package/lib/__tests__/dataverseDataOperationExecutor.spec.d.ts +0 -5
  178. package/lib/__tests__/dataverseDataOperationExecutor.spec.d.ts.map +0 -1
  179. package/lib/__tests__/dataverseDataOperationExecutor.spec.js +0 -307
  180. package/lib/__tests__/dataverseDataOperationExecutor.spec.js.map +0 -1
  181. package/lib/__tests__/helpers/testHelpers.d.ts +0 -27
  182. package/lib/__tests__/helpers/testHelpers.d.ts.map +0 -1
  183. package/lib/__tests__/helpers/testHelpers.js +0 -67
  184. package/lib/__tests__/helpers/testHelpers.js.map +0 -1
  185. package/lib/__tests__/index.spec.d.ts +0 -5
  186. package/lib/__tests__/index.spec.d.ts.map +0 -1
  187. package/lib/__tests__/index.spec.js +0 -10
  188. package/lib/__tests__/index.spec.js.map +0 -1
  189. package/lib/__tests__/mockDataOperationExecutor.spec.d.ts +0 -5
  190. package/lib/__tests__/mockDataOperationExecutor.spec.d.ts.map +0 -1
  191. package/lib/__tests__/mockDataOperationExecutor.spec.js +0 -51
  192. package/lib/__tests__/mockDataOperationExecutor.spec.js.map +0 -1
  193. package/lib/__tests__/mocks/mockDataverseRetrieveMultipleResponse.d.ts +0 -17
  194. package/lib/__tests__/mocks/mockDataverseRetrieveMultipleResponse.d.ts.map +0 -1
  195. package/lib/__tests__/mocks/mockDataverseRetrieveMultipleResponse.js +0 -35
  196. package/lib/__tests__/mocks/mockDataverseRetrieveMultipleResponse.js.map +0 -1
  197. package/lib/__tests__/mocks/mockLog.d.ts +0 -31
  198. package/lib/__tests__/mocks/mockLog.d.ts.map +0 -1
  199. package/lib/__tests__/mocks/mockLog.js +0 -53
  200. package/lib/__tests__/mocks/mockLog.js.map +0 -1
  201. package/lib/__tests__/mocks/mockTeamsConnectorResponse.d.ts +0 -76
  202. package/lib/__tests__/mocks/mockTeamsConnectorResponse.d.ts.map +0 -1
  203. package/lib/__tests__/mocks/mockTeamsConnectorResponse.js +0 -81
  204. package/lib/__tests__/mocks/mockTeamsConnectorResponse.js.map +0 -1
  205. package/lib/__tests__/mocks/silenceConsole.d.ts +0 -37
  206. package/lib/__tests__/mocks/silenceConsole.d.ts.map +0 -1
  207. package/lib/__tests__/mocks/silenceConsole.js +0 -58
  208. package/lib/__tests__/mocks/silenceConsole.js.map +0 -1
  209. package/lib/__tests__/powerDataRuntimeInstance.test.d.ts +0 -5
  210. package/lib/__tests__/powerDataRuntimeInstance.test.d.ts.map +0 -1
  211. package/lib/__tests__/powerDataRuntimeInstance.test.js +0 -164
  212. package/lib/__tests__/powerDataRuntimeInstance.test.js.map +0 -1
  213. package/lib/__tests__/powerDataSourcesInfoProvider.test.d.ts +0 -5
  214. package/lib/__tests__/powerDataSourcesInfoProvider.test.d.ts.map +0 -1
  215. package/lib/__tests__/powerDataSourcesInfoProvider.test.js +0 -153
  216. package/lib/__tests__/powerDataSourcesInfoProvider.test.js.map +0 -1
  217. package/lib/__tests__/runtimeClientProvider.test.d.ts +0 -5
  218. package/lib/__tests__/runtimeClientProvider.test.d.ts.map +0 -1
  219. package/lib/__tests__/runtimeClientProvider.test.js +0 -248
  220. package/lib/__tests__/runtimeClientProvider.test.js.map +0 -1
  221. package/lib/__tests__/runtimeDataClient.spec.d.ts +0 -2
  222. package/lib/__tests__/runtimeDataClient.spec.d.ts.map +0 -1
  223. package/lib/__tests__/runtimeDataClient.spec.js +0 -371
  224. package/lib/__tests__/runtimeDataClient.spec.js.map +0 -1
  225. package/lib/__tests__/runtimeDataClient.test.d.ts +0 -2
  226. package/lib/__tests__/runtimeDataClient.test.d.ts.map +0 -1
  227. package/lib/__tests__/runtimeDataClient.test.js +0 -351
  228. package/lib/__tests__/runtimeDataClient.test.js.map +0 -1
  229. package/lib/__tests__/runtimeDataOperation.test.d.ts +0 -5
  230. package/lib/__tests__/runtimeDataOperation.test.d.ts.map +0 -1
  231. package/lib/__tests__/runtimeDataOperation.test.js +0 -235
  232. package/lib/__tests__/runtimeDataOperation.test.js.map +0 -1
  233. package/lib/__tests__/runtimeMetadataClient.test.d.ts +0 -5
  234. package/lib/__tests__/runtimeMetadataClient.test.d.ts.map +0 -1
  235. package/lib/__tests__/runtimeMetadataClient.test.js +0 -271
  236. package/lib/__tests__/runtimeMetadataClient.test.js.map +0 -1
  237. package/lib/__tests__/runtimeMetadataOperations.test.d.ts +0 -5
  238. package/lib/__tests__/runtimeMetadataOperations.test.d.ts.map +0 -1
  239. package/lib/__tests__/runtimeMetadataOperations.test.js +0 -286
  240. package/lib/__tests__/runtimeMetadataOperations.test.js.map +0 -1
  241. package/lib/__tests__/serviceSchemaModelSnapshot.test.d.ts +0 -2
  242. package/lib/__tests__/serviceSchemaModelSnapshot.test.d.ts.map +0 -1
  243. package/lib/__tests__/serviceSchemaModelSnapshot.test.js +0 -98
  244. package/lib/__tests__/serviceSchemaModelSnapshot.test.js.map +0 -1
  245. package/lib/__tests__/types.spec.d.ts +0 -5
  246. package/lib/__tests__/types.spec.d.ts.map +0 -1
  247. package/lib/__tests__/types.spec.js +0 -104
  248. package/lib/__tests__/types.spec.js.map +0 -1
  249. package/lib/__tests__/utils.test.d.ts +0 -5
  250. package/lib/__tests__/utils.test.d.ts.map +0 -1
  251. package/lib/__tests__/utils.test.js +0 -33
  252. package/lib/__tests__/utils.test.js.map +0 -1
  253. package/lib/app/App.Types.d.ts.map +0 -1
  254. package/lib/app/index.d.ts.map +0 -1
  255. package/lib/app/index.js.map +0 -1
  256. package/lib/data/Data.types.d.ts.map +0 -1
  257. package/lib/data/executors/index.js +0 -5
  258. package/lib/data/index.d.ts.map +0 -1
  259. package/lib/data/index.js +0 -5
  260. package/lib/data/index.js.map +0 -1
  261. package/lib/data/metadata/dataverse/index.d.ts.map +0 -1
  262. package/lib/data/powerAppsData.d.ts.map +0 -1
  263. package/lib/data/powerAppsData.js.map +0 -1
  264. package/lib/internal/data/ConnectionUtils.js.map +0 -1
  265. package/lib/internal/data/OperationExecutor.d.ts.map +0 -1
  266. package/lib/internal/data/OperationExecutor.js.map +0 -1
  267. package/lib/internal/data/core/common/types.d.ts.map +0 -1
  268. package/lib/internal/data/core/common/utils.js.map +0 -1
  269. package/lib/internal/data/core/data/defaultOperationOrchestrator.d.ts.map +0 -1
  270. package/lib/internal/data/core/data/defaultOperationOrchestrator.js.map +0 -1
  271. package/lib/internal/data/core/data/executors/__tests__/dataverseDataOperationExecutor.test.d.ts +0 -5
  272. package/lib/internal/data/core/data/executors/__tests__/dataverseDataOperationExecutor.test.d.ts.map +0 -1
  273. package/lib/internal/data/core/data/executors/__tests__/dataverseDataOperationExecutor.test.js +0 -116
  274. package/lib/internal/data/core/data/executors/__tests__/dataverseDataOperationExecutor.test.js.map +0 -1
  275. package/lib/internal/data/core/data/executors/connectorDataOperationExecutor.d.ts.map +0 -1
  276. package/lib/internal/data/core/data/executors/connectorDataOperationExecutor.js.map +0 -1
  277. package/lib/internal/data/core/data/executors/dataverseDataOperationExecutor.d.ts.map +0 -1
  278. package/lib/internal/data/core/data/executors/dataverseDataOperationExecutor.js.map +0 -1
  279. package/lib/internal/data/core/data/executors/mockDataOperationExecutor.d.ts +0 -21
  280. package/lib/internal/data/core/data/executors/mockDataOperationExecutor.d.ts.map +0 -1
  281. package/lib/internal/data/core/data/executors/mockDataOperationExecutor.js.map +0 -1
  282. package/lib/internal/data/core/data/executors/shared/stringQueryOptions.js.map +0 -1
  283. package/lib/internal/data/core/error/constants.d.ts.map +0 -1
  284. package/lib/internal/data/core/error/constants.js.map +0 -1
  285. package/lib/internal/data/core/error/types.d.ts.map +0 -1
  286. package/lib/internal/data/core/error/types.js.map +0 -1
  287. package/lib/internal/data/core/error/util.d.ts.map +0 -1
  288. package/lib/internal/data/core/error/util.js.map +0 -1
  289. package/lib/internal/data/core/metadata/runtimeDataSourceService.d.ts.map +0 -1
  290. package/lib/internal/data/core/metadata/runtimeDataSourceService.js.map +0 -1
  291. package/lib/internal/data/core/metadata/runtimeMetadataOperations.d.ts.map +0 -1
  292. package/lib/internal/data/core/runtime/getRuntimeContext.d.ts.map +0 -1
  293. package/lib/internal/data/core/runtime/getRuntimeContext.js.map +0 -1
  294. package/lib/internal/data/core/runtime/powerDataRuntime.d.ts.map +0 -1
  295. package/lib/internal/data/core/runtime/powerDataRuntime.js.map +0 -1
  296. package/lib/internal/data/core/runtime/powerDataRuntimeInstance.d.ts.map +0 -1
  297. package/lib/internal/data/core/runtime/powerDataRuntimeInstance.js.map +0 -1
  298. package/lib/internal/data/core/runtime/powerDataSourcesInfoProvider.d.ts.map +0 -1
  299. package/lib/internal/data/core/runtime/powerDataSourcesInfoProvider.js.map +0 -1
  300. package/lib/internal/data/core/runtimeClient/runtimeClientProvider.d.ts.map +0 -1
  301. package/lib/internal/data/core/runtimeClient/runtimeClientProvider.js.map +0 -1
  302. package/lib/internal/data/core/runtimeClient/runtimeDataClient.d.ts.map +0 -1
  303. package/lib/internal/data/core/runtimeClient/runtimeDataClient.js.map +0 -1
  304. package/lib/internal/data/core/runtimeClient/runtimeMetadataClient.d.ts.map +0 -1
  305. package/lib/internal/data/core/runtimeClient/runtimeMetadataClient.js.map +0 -1
  306. package/lib/internal/data/core/telemetry/log.d.ts.map +0 -1
  307. package/lib/internal/data/core/telemetry/log.js.map +0 -1
  308. package/lib/internal/data/core/types/index.d.ts.map +0 -1
  309. package/lib/internal/plugins/DefaultPowerAppsBridge.d.ts.map +0 -1
  310. package/lib/internal/plugins/DefaultPowerAppsBridge.js.map +0 -1
  311. package/lib/internal/plugins/SendMessage/CompatibleMessageReceiver.d.ts.map +0 -1
  312. package/lib/internal/plugins/SendMessage/CompatibleMessageReceiver.js.map +0 -1
  313. package/lib/internal/plugins/SendMessage/MessageReceiver.Types.d.ts.map +0 -1
  314. package/lib/internal/plugins/SendMessage/SendMessage.d.ts.map +0 -1
  315. package/lib/internal/plugins/SendMessage/SendMessage.js.map +0 -1
  316. package/lib/internal/plugins/SendMessage/SendMessageOperation.d.ts.map +0 -1
  317. package/lib/telemetry/LoggerManager.js.map +0 -1
  318. package/lib/telemetry/Metrics.types.d.ts.map +0 -1
  319. package/lib/telemetry/Performance.js.map +0 -1
  320. /package/{lib → dist}/app/App.Types.js +0 -0
  321. /package/{lib → dist}/app/App.Types.js.map +0 -0
  322. /package/{lib → dist}/app/Config.js +0 -0
  323. /package/{lib → dist}/app/ContextProvider.js +0 -0
  324. /package/{lib → dist}/data/Data.types.js +0 -0
  325. /package/{lib → dist}/data/Data.types.js.map +0 -0
  326. /package/{lib → dist}/data/metadata/dataverse/index.js +0 -0
  327. /package/{lib → dist}/index.d.ts +0 -0
  328. /package/{lib → dist}/index.d.ts.map +0 -0
  329. /package/{lib → dist}/index.js +0 -0
  330. /package/{lib → dist}/index.js.map +0 -0
  331. /package/{lib → dist}/internal/data/ConnectionUtils.d.ts +0 -0
  332. /package/{lib → dist}/internal/data/ConnectionUtils.d.ts.map +0 -0
  333. /package/{lib → dist}/internal/data/ConnectionUtils.js +0 -0
  334. /package/{lib → dist}/internal/data/core/api/createRecord.d.ts +0 -0
  335. /package/{lib → dist}/internal/data/core/api/createRecord.d.ts.map +0 -0
  336. /package/{lib → dist}/internal/data/core/api/createRecord.js +0 -0
  337. /package/{lib → dist}/internal/data/core/api/createRecord.js.map +0 -0
  338. /package/{lib → dist}/internal/data/core/api/deleteRecord.d.ts +0 -0
  339. /package/{lib → dist}/internal/data/core/api/deleteRecord.js +0 -0
  340. /package/{lib → dist}/internal/data/core/api/execute.d.ts +0 -0
  341. /package/{lib → dist}/internal/data/core/api/execute.js +0 -0
  342. /package/{lib → dist}/internal/data/core/api/retrieveMultipleRecords.d.ts +0 -0
  343. /package/{lib → dist}/internal/data/core/api/retrieveMultipleRecords.d.ts.map +0 -0
  344. /package/{lib → dist}/internal/data/core/api/retrieveMultipleRecords.js +0 -0
  345. /package/{lib → dist}/internal/data/core/api/retrieveMultipleRecords.js.map +0 -0
  346. /package/{lib → dist}/internal/data/core/api/retrieveRecord.d.ts +0 -0
  347. /package/{lib → dist}/internal/data/core/api/retrieveRecord.d.ts.map +0 -0
  348. /package/{lib → dist}/internal/data/core/api/retrieveRecord.js +0 -0
  349. /package/{lib → dist}/internal/data/core/api/retrieveRecord.js.map +0 -0
  350. /package/{lib → dist}/internal/data/core/api/updateRecord.d.ts +0 -0
  351. /package/{lib → dist}/internal/data/core/api/updateRecord.d.ts.map +0 -0
  352. /package/{lib → dist}/internal/data/core/api/updateRecord.js +0 -0
  353. /package/{lib → dist}/internal/data/core/api/updateRecord.js.map +0 -0
  354. /package/{lib → dist}/internal/data/core/common/types.js +0 -0
  355. /package/{lib → dist}/internal/data/core/common/utils.d.ts.map +0 -0
  356. /package/{lib → dist}/internal/data/core/data/executors/index.d.ts +0 -0
  357. /package/{lib → dist}/internal/data/core/data/executors/index.d.ts.map +0 -0
  358. /package/{lib → dist}/internal/data/core/data/executors/index.js +0 -0
  359. /package/{lib → dist}/internal/data/core/data/executors/index.js.map +0 -0
  360. /package/{lib → dist}/internal/data/core/error/codes.d.ts +0 -0
  361. /package/{lib → dist}/internal/data/core/error/codes.d.ts.map +0 -0
  362. /package/{lib → dist}/internal/data/core/error/codes.js +0 -0
  363. /package/{lib → dist}/internal/data/core/error/codes.js.map +0 -0
  364. /package/{lib → dist}/internal/data/core/error/types.js +0 -0
  365. /package/{lib → dist}/internal/data/core/metadata/runtimeDataSourceService.js +0 -0
  366. /package/{lib → dist}/internal/data/core/metadata/runtimeMetadataOperations.js +0 -0
  367. /package/{lib → dist}/internal/data/core/metadata/runtimeMetadataOperations.js.map +0 -0
  368. /package/{lib → dist}/internal/data/core/runtime/powerDataSourcesInfoProvider.js +0 -0
  369. /package/{lib → dist}/internal/data/core/runtimeClient/runtimeMetadataClient.js +0 -0
  370. /package/{lib → dist}/internal/data/core/types/dataverseMetadata.d.ts.map +0 -0
  371. /package/{lib → dist}/internal/data/core/types/index.js +0 -0
  372. /package/{lib → dist}/internal/data/index.d.ts +0 -0
  373. /package/{lib → dist}/internal/data/index.d.ts.map +0 -0
  374. /package/{lib → dist}/internal/data/index.js +0 -0
  375. /package/{lib → dist}/internal/data/index.js.map +0 -0
  376. /package/{lib → dist}/internal/plugins/PluginBridge.d.ts +0 -0
  377. /package/{lib → dist}/internal/plugins/PluginBridge.d.ts.map +0 -0
  378. /package/{lib → dist}/internal/plugins/SendMessage/CompatibleMessageReceiver.d.ts +0 -0
  379. /package/{lib → dist}/internal/plugins/SendMessage/CompatibleMessageReceiver.js +0 -0
  380. /package/{lib → dist}/internal/plugins/SendMessage/IncompatibleMessageReceiver.d.ts +0 -0
  381. /package/{lib → dist}/internal/plugins/SendMessage/IncompatibleMessageReceiver.js +0 -0
  382. /package/{lib → dist}/internal/plugins/SendMessage/MessageReceiver.Types.js +0 -0
  383. /package/{lib → dist}/internal/plugins/SendMessage/MessageReceiver.Types.js.map +0 -0
  384. /package/{lib → dist}/internal/plugins/SendMessage/SendMessage.d.ts +0 -0
  385. /package/{lib → dist}/internal/plugins/SendMessage/SendMessageOperation.d.ts +0 -0
  386. /package/{lib → dist}/internal/plugins/SendMessage/SendMessageOperation.js +0 -0
  387. /package/{lib → dist}/internal/plugins/SendMessage/index.d.ts +0 -0
  388. /package/{lib → dist}/internal/plugins/SendMessage/index.d.ts.map +0 -0
  389. /package/{lib → dist}/internal/plugins/SendMessage/index.js +0 -0
  390. /package/{lib → dist}/internal/plugins/SendMessage/index.js.map +0 -0
  391. /package/{lib → dist}/internal/plugins/index.d.ts +0 -0
  392. /package/{lib → dist}/internal/plugins/index.d.ts.map +0 -0
  393. /package/{lib → dist}/internal/plugins/index.js +0 -0
  394. /package/{lib → dist}/internal/plugins/index.js.map +0 -0
  395. /package/{lib → dist}/telemetry/Logger.types.d.ts +0 -0
  396. /package/{lib → dist}/telemetry/Logger.types.d.ts.map +0 -0
  397. /package/{lib → dist}/telemetry/Logger.types.js +0 -0
  398. /package/{lib → dist}/telemetry/Logger.types.js.map +0 -0
  399. /package/{lib → dist}/telemetry/LoggerManager.d.ts +0 -0
  400. /package/{lib → dist}/telemetry/LoggerManager.js +0 -0
  401. /package/{lib → dist}/telemetry/Metrics.types.d.ts +0 -0
  402. /package/{lib → dist}/telemetry/Metrics.types.js +0 -0
  403. /package/{lib → dist}/telemetry/Metrics.types.js.map +0 -0
  404. /package/{lib → dist}/telemetry/Performance.d.ts +0 -0
  405. /package/{lib → dist}/telemetry/Performance.d.ts.map +0 -0
  406. /package/{lib → dist}/telemetry/Performance.js +0 -0
  407. /package/{lib → dist}/telemetry/index.d.ts +0 -0
  408. /package/{lib → dist}/telemetry/index.d.ts.map +0 -0
  409. /package/{lib → dist}/telemetry/index.js +0 -0
  410. /package/{lib → dist}/telemetry/index.js.map +0 -0
@@ -1,10 +1,10 @@
1
1
  /*!
2
2
  * Copyright (C) Microsoft Corporation. All rights reserved.
3
3
  */
4
- import { DataSources, HttpMethod, } from '../../common/types';
4
+ import { DataSources, HttpMethod } from '../../common/types';
5
+ import { DataverseOperationName } from '../../error/constants';
5
6
  import { createErrorResponse, DataOperationErrorMessages, ErrorCodes, PowerDataRuntimeError, } from '../../error/error';
6
7
  import { Log } from '../../telemetry/log';
7
- import { DataverseOperationName } from '../../error/constants';
8
8
  import { convertOptionsToQueryString } from './shared/stringQueryOptions';
9
9
  // OData annotation constants
10
10
  export const ODATA_CONTEXT = '@odata.context';
@@ -20,9 +20,11 @@ export class DataverseDataOperationExecutor {
20
20
  // Static identifiers for services and actions
21
21
  // Used to identify specific services and actions within the PowerApps environment
22
22
  _clientProvider;
23
+ _dataSourceService;
23
24
  _databaseReferences;
24
- constructor(clientProvider) {
25
+ constructor(clientProvider, dataSourceService) {
25
26
  this._clientProvider = clientProvider;
27
+ this._dataSourceService = dataSourceService;
26
28
  }
27
29
  /**
28
30
  * Creates a new record in Dataverse
@@ -68,6 +70,78 @@ export class DataverseDataOperationExecutor {
68
70
  return returnValue;
69
71
  }, DataOperationErrorMessages.UpdateFailed);
70
72
  }
73
+ /**
74
+ * Uploads a record with binary data to Dataverse
75
+ * @param tableName - The name of the table
76
+ * @param id - The record identifier
77
+ * @param columnName - The name of the file column
78
+ * @param fileName - The name of the file (used for Dataverse file columns)
79
+ * @param data - The binary data to upload
80
+ * @returns Promise resolving to operation result
81
+ */
82
+ async uploadFileToRecord(tableName, id, columnName, fileName, data) {
83
+ return this._executeNativeDataverseOperation(tableName, (dataSourceInfo, tblName) => this._getDataverseRequestUrl(dataSourceInfo, tblName, `(${id})/${columnName}`), async (dataClient, requestUrl, dataSourceInfo) => {
84
+ const dataverseResponse = await dataClient.uploadDataAsync(requestUrl, DataSources.Dataverse, tableName, data, {
85
+ operationName: DataverseOperationName.UploadRecord,
86
+ datasetName: dataSourceInfo.datasetName,
87
+ isDataVerseOperation: true,
88
+ fileName,
89
+ });
90
+ const returnValue = {
91
+ success: dataverseResponse.success,
92
+ data: dataverseResponse.data,
93
+ error: dataverseResponse.error,
94
+ };
95
+ return returnValue;
96
+ }, DataOperationErrorMessages.UploadFailed);
97
+ }
98
+ /**
99
+ * Downloads binary data from a file column in Dataverse
100
+ * @param tableName - The name of the table
101
+ * @param id - The record identifier
102
+ * @param columnName - The name of the file column
103
+ * @returns Promise resolving to operation result with file contents as binary data (Uint8Array)
104
+ */
105
+ async downloadFileFromRecord(tableName, id, columnName) {
106
+ return this._executeNativeDataverseOperation(tableName, (dataSourceInfo, tblName) => this._getDataverseRequestUrl(dataSourceInfo, tblName, `(${id})/${columnName}/$value`), async (dataClient, requestUrl, dataSourceInfo) => {
107
+ const dataverseResponse = await dataClient.retrieveDataAsync(requestUrl, DataSources.Dataverse, tableName, HttpMethod.GET, { Accept: 'application/octet-stream' }, undefined, {
108
+ operationName: DataverseOperationName.DownloadRecord,
109
+ datasetName: dataSourceInfo.datasetName,
110
+ isDataVerseOperation: true,
111
+ skipBatch: true,
112
+ });
113
+ const returnValue = {
114
+ success: dataverseResponse.success,
115
+ data: dataverseResponse.data,
116
+ error: dataverseResponse.error,
117
+ fileName: dataverseResponse.fileName,
118
+ };
119
+ return returnValue;
120
+ }, DataOperationErrorMessages.DownloadFailed);
121
+ }
122
+ /**
123
+ * Downloads an image from a Dataverse image column via the Web API $value endpoint.
124
+ * @param tableName - The logical name of the Dataverse table.
125
+ * @param recordId - The identifier of the record.
126
+ * @param columnName - The name of the image column.
127
+ */
128
+ async downloadImageFromRecord(tableName, recordId, columnName, fullSize = false) {
129
+ const urlSuffix = `(${recordId})/${columnName}/$value${fullSize ? '?size=full' : ''}`;
130
+ return this._executeNativeDataverseOperation(tableName, (dataSourceInfo, tblName) => this._getDataverseRequestUrl(dataSourceInfo, tblName, urlSuffix), async (dataClient, requestUrl, dataSourceInfo) => {
131
+ const dataverseResponse = await dataClient.retrieveDataAsync(requestUrl, DataSources.Dataverse, tableName, HttpMethod.GET, { Accept: 'application/octet-stream' }, undefined, {
132
+ operationName: DataverseOperationName.DownloadRecord,
133
+ datasetName: dataSourceInfo.datasetName,
134
+ isDataVerseOperation: true,
135
+ skipBatch: true,
136
+ });
137
+ return {
138
+ success: dataverseResponse.success,
139
+ data: dataverseResponse.data,
140
+ error: dataverseResponse.error,
141
+ fileName: deriveImageFileName(columnName, dataverseResponse.data),
142
+ };
143
+ }, DataOperationErrorMessages.DownloadFailed);
144
+ }
71
145
  /**
72
146
  * Deletes a record from Dataverse
73
147
  * @param tableName - The name of the table
@@ -89,6 +163,28 @@ export class DataverseDataOperationExecutor {
89
163
  return returnValue;
90
164
  }, DataOperationErrorMessages.DeleteFailed);
91
165
  }
166
+ /**
167
+ * Deletes the file or image data stored in a file/image column of an existing record.
168
+ * Sends a DELETE request to `/<tableName>(<recordId>)/<columnName>`.
169
+ * Only applicable to Dataverse data sources.
170
+ * @param tableName - The logical name of the Dataverse table.
171
+ * @param recordId - The identifier of the record.
172
+ * @param columnName - The name of the file or image column whose data should be deleted.
173
+ */
174
+ async deleteFileOrImageFromRecord(tableName, recordId, columnName) {
175
+ return this._executeNativeDataverseOperation(tableName, (dataSourceInfo, tblName) => this._getDataverseRequestUrl(dataSourceInfo, tblName, `(${recordId})/${columnName}`), async (dataClient, requestUrl, dataSourceInfo) => {
176
+ const dataverseResponse = await dataClient.deleteDataAsync(requestUrl, DataSources.Dataverse, tableName, {
177
+ operationName: DataverseOperationName.DeleteFileOrImageRecord,
178
+ datasetName: dataSourceInfo.datasetName,
179
+ isDataVerseOperation: true,
180
+ });
181
+ return {
182
+ success: dataverseResponse.success,
183
+ data: dataverseResponse.data,
184
+ error: dataverseResponse.error,
185
+ };
186
+ }, DataOperationErrorMessages.DeleteFileOrImageFailed);
187
+ }
92
188
  /**
93
189
  * Retrieves a single record from Dataverse
94
190
  * @param tableName - The name of the table
@@ -161,7 +257,7 @@ export class DataverseDataOperationExecutor {
161
257
  const { action, parameters } = dataverseRequest;
162
258
  switch (action) {
163
259
  // Future custom actions can be handled here
164
- case 'getEntityMetadata':
260
+ case 'getEntityMetadata': {
165
261
  const { tableName, options } = parameters;
166
262
  if (!tableName) {
167
263
  return {
@@ -171,6 +267,63 @@ export class DataverseDataOperationExecutor {
171
267
  };
172
268
  }
173
269
  return this._getEntityMetadata(tableName, options ?? {});
270
+ }
271
+ case 'customapi': {
272
+ const { operationName, tableName, body } = parameters;
273
+ const dataSourceInfo = await this._dataSourceService.getDataSource(tableName);
274
+ const apiDef = dataSourceInfo.apis[operationName];
275
+ if (!apiDef) {
276
+ return {
277
+ success: false,
278
+ data: null,
279
+ error: {
280
+ message: `Operation '${operationName}' not found in data source '${tableName}'.`,
281
+ },
282
+ };
283
+ }
284
+ const dvInfo = await this._getDefaultDataverseEnvironmentInfo();
285
+ const instanceUrl = this._getInstanceUrl(dvInfo);
286
+ const bodyRecord = (body ?? {});
287
+ // Substitute path parameters into the pre-built OData path
288
+ // Collect body params (actions) and OData function params (functions, in: 'query')
289
+ let resolvedPath = apiDef.path;
290
+ const requestBody = {};
291
+ const functionParams = [];
292
+ for (const param of apiDef.parameters) {
293
+ if (param.in === 'path') {
294
+ resolvedPath = resolvedPath.replace(`{${param.name}}`, encodeURIComponent(String(bodyRecord[param.name] ?? '')));
295
+ }
296
+ else if (param.in === 'body') {
297
+ if (param.name in bodyRecord) {
298
+ requestBody[param.name] = bodyRecord[param.name];
299
+ }
300
+ }
301
+ else if (param.in === 'query') {
302
+ // Dataverse functions pass parameters as OData function params: FunctionName(p1=v1,p2=v2)
303
+ if (param.name in bodyRecord) {
304
+ functionParams.push(`${param.name}=${toODataLiteral(bodyRecord[param.name], param.type)}`);
305
+ }
306
+ }
307
+ }
308
+ if (functionParams.length > 0) {
309
+ resolvedPath += `(${functionParams.join(',')})`;
310
+ }
311
+ const requestUrl = `${instanceUrl}${resolvedPath.startsWith('/') ? resolvedPath.slice(1) : resolvedPath}`;
312
+ const dataClient = await this._getDataClient();
313
+ const isGet = apiDef.method.toUpperCase() === HttpMethod.GET;
314
+ const response = isGet
315
+ ? await dataClient.retrieveDataAsync(requestUrl, DataSources.Dataverse, operationName, HttpMethod.GET, undefined, undefined, {
316
+ operationName: DataverseOperationName.ExecuteCustomApi,
317
+ datasetName: dvInfo.datasetName,
318
+ isDataVerseOperation: true,
319
+ })
320
+ : await dataClient.createDataAsync(requestUrl, DataSources.Dataverse, operationName, requestBody, {
321
+ operationName: DataverseOperationName.ExecuteCustomApi,
322
+ datasetName: dvInfo.datasetName,
323
+ isDataVerseOperation: true,
324
+ });
325
+ return { success: response.success, data: response.data, error: response.error };
326
+ }
174
327
  default:
175
328
  Log.trackEvent('DataverseDataOperation.UnsupportedAction', {
176
329
  message: `Unsupported Dataverse action: ${action}`,
@@ -245,7 +398,7 @@ export class DataverseDataOperationExecutor {
245
398
  environmentVariableName: '',
246
399
  },
247
400
  linkedEnvironmentMetadata: {
248
- resourceId: '',
401
+ resourceId: '', // This would be available in the full app info
249
402
  friendlyName: '',
250
403
  uniqueName: '',
251
404
  domainName: '',
@@ -286,7 +439,7 @@ export class DataverseDataOperationExecutor {
286
439
  // Runtime URL format: https://org.crm.dynamics.com/api/data/v9.2/
287
440
  // Extract: https://org.crm.dynamics.com
288
441
  // Using a simpler approach to avoid URL import issues
289
- const matches = runtimeUrl.match(/^(https?:\/\/[^\/]+)/);
442
+ const matches = runtimeUrl.match(/^(https?:\/\/[^/]+)/);
290
443
  return matches ? matches[1] : runtimeUrl;
291
444
  }
292
445
  catch (error) {
@@ -383,8 +536,23 @@ export class DataverseDataOperationExecutor {
383
536
  throw new PowerDataRuntimeError(ErrorCodes.DataSourceNotFound, notFoundMsg);
384
537
  }
385
538
  /**
386
- * Helper to construct the Dataverse API URL using instanceUrl if available, otherwise fallback to runtimeUrl.
539
+ * Returns the Dataverse environment info from the default CDS database reference.
540
+ * Used for custom API operations where the data source name is not an entity table.
387
541
  */
542
+ async _getDefaultDataverseEnvironmentInfo() {
543
+ const dbRefs = await this.getDatabaseReferences();
544
+ const db = dbRefs['default.cds'];
545
+ if (!db?.databaseDetails?.linkedEnvironmentMetadata?.instanceUrl) {
546
+ throw new PowerDataRuntimeError(ErrorCodes.DataSourceNotFound, 'No Dataverse environment found at default.cds database reference.');
547
+ }
548
+ return {
549
+ datasetName: db.databaseDetails.environmentName,
550
+ referenceType: db.databaseDetails.referenceType,
551
+ linkedEnvironmentMetadata: db.databaseDetails.linkedEnvironmentMetadata,
552
+ tableId: '',
553
+ apis: {},
554
+ };
555
+ }
388
556
  _getInstanceUrl(dataSourceInfo) {
389
557
  const instanceUrl = dataSourceInfo.linkedEnvironmentMetadata?.instanceUrl;
390
558
  if (!instanceUrl) {
@@ -394,9 +562,6 @@ export class DataverseDataOperationExecutor {
394
562
  const baseUrl = instanceUrl.endsWith('/') ? instanceUrl : `${instanceUrl}/`;
395
563
  return baseUrl;
396
564
  }
397
- /**
398
- * Helper to construct the Dataverse API URL using instanceUrl if available, otherwise fallback to runtimeUrl.
399
- */
400
565
  _getDataverseRequestUrl(dataSourceInfo, tableName, urlPath = '') {
401
566
  const baseUrl = this._getInstanceUrl(dataSourceInfo);
402
567
  return `${baseUrl}api/data/v9.0/${tableName}${urlPath}`;
@@ -452,7 +617,68 @@ export function extractSkipToken(nextLink) {
452
617
  if (!nextLink?.trim()) {
453
618
  return undefined;
454
619
  }
455
- const match = nextLink.match(/[\?&]\$?skiptoken=([^&#]+)/i);
620
+ const match = nextLink.match(/[?&]\$?skiptoken=([^&#]+)/i);
456
621
  return match ? decodeURIComponent(match[1]) : undefined;
457
622
  }
623
+ /**
624
+ * Detects the image format from the magic bytes at the start of the binary data.
625
+ * This is necessary because Dataverse image columns do not provide file extension or MIME type information.
626
+ * The use of download url companion column (e.g: columnName_url) is not possible due to CORS, so we have to rely on the binary data sniff to determine the extension. This is a standard technique.
627
+ * Referring: https://learn.microsoft.com/en-us/power-apps/developer/data-platform/image-column-data?tabs=sdk#download-url
628
+ * Sniffing the magic bytes allows us to derive a file extension for the downloaded image, which can be used when saving the file or setting the correct MIME type for display.
629
+ * Docs: https://en.wikipedia.org/wiki/List_of_file_signatures
630
+ * Dataverse image columns support only GIF, JPEG, BMP, and PNG.
631
+ * The function checks for these formats and returns the corresponding extension.
632
+ * See: https://learn.microsoft.com/en-us/power-apps/developer/data-platform/image-column-data?tabs=sdk#image-file-types
633
+ * Returns a file extension string, or "png" as a fallback if the format is unrecognized.
634
+ */
635
+ function sniffImageExtension(data) {
636
+ if (data.length >= 3 && data[0] === 0xff && data[1] === 0xd8 && data[2] === 0xff) {
637
+ return 'jpg';
638
+ }
639
+ if (data.length >= 8 &&
640
+ data[0] === 0x89 &&
641
+ data[1] === 0x50 &&
642
+ data[2] === 0x4e &&
643
+ data[3] === 0x47 &&
644
+ data[4] === 0x0d &&
645
+ data[5] === 0x0a &&
646
+ data[6] === 0x1a &&
647
+ data[7] === 0x0a) {
648
+ return 'png';
649
+ }
650
+ if (data.length >= 4 &&
651
+ data[0] === 0x47 &&
652
+ data[1] === 0x49 &&
653
+ data[2] === 0x46 &&
654
+ data[3] === 0x38) {
655
+ return 'gif';
656
+ }
657
+ if (data.length >= 2 && data[0] === 0x42 && data[1] === 0x4d) {
658
+ return 'bmp';
659
+ }
660
+ return 'png';
661
+ }
662
+ /**
663
+ * Derives a filename for a downloaded image by sniffing the magic bytes of the binary data.
664
+ * Falls back to "png" if the format is unrecognized, as PNG is the most common Dataverse image format.
665
+ */
666
+ export function deriveImageFileName(columnName, data) {
667
+ const ext = data ? sniffImageExtension(data) : 'png';
668
+ return `${columnName}.${ext}`;
669
+ }
670
+ /**
671
+ * Converts a JavaScript value to an OData primitive literal string for use in function call URLs.
672
+ * Strings are single-quoted with internal single quotes escaped by doubling.
673
+ * Numbers and booleans are serialized as-is. Null/undefined becomes 'null'.
674
+ */
675
+ export function toODataLiteral(value, type) {
676
+ if (value === null || value === undefined) {
677
+ return 'null';
678
+ }
679
+ if (type === 'string') {
680
+ return `'${String(value).replace(/'/g, "''")}'`;
681
+ }
682
+ return String(value);
683
+ }
458
684
  //# sourceMappingURL=dataverseDataOperationExecutor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataverseDataOperationExecutor.js","sourceRoot":"","sources":["../../../../../../src/internal/data/core/data/executors/dataverseDataOperationExecutor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import type { IDataOperation, IDataOperationExecutor, IOperationOptions, IOperationResult } from '../../types';
5
+ export type MockDataStore<TRecord = unknown> = {
6
+ [tableName: string]: {
7
+ [id: string]: TRecord;
8
+ };
9
+ };
10
+ export declare class MockDataOperationExecutor implements IDataOperationExecutor {
11
+ private _dataStore;
12
+ constructor(data: MockDataStore);
13
+ createRecordAsync<TRequest, TResponse>(_tableName: string, _data: TRequest): Promise<IOperationResult<TResponse>>;
14
+ updateRecordAsync<TRequest, TResponse>(_tableName: string, _id: string, _data: TRequest): Promise<IOperationResult<TResponse>>;
15
+ uploadFileToRecord<TRequest extends string | Uint8Array | ArrayBuffer | Blob>(tableName: string, id: string, columnName: string, fileName: string, data: TRequest): Promise<IOperationResult<void>>;
16
+ downloadFileFromRecord(tableName: string, id: string, columnName: string): Promise<IOperationResult<Uint8Array>>;
17
+ deleteFileOrImageFromRecord(_tableName: string, _recordId: string, _columnName: string): Promise<IOperationResult<void>>;
18
+ downloadImageFromRecord(tableName: string, recordId: string, columnName: string, _fullSize?: boolean): Promise<IOperationResult<Uint8Array>>;
19
+ deleteRecordAsync(_tableName: string, _id: string): Promise<IOperationResult<void>>;
20
+ retrieveRecordAsync<TResponse>(tableName: string, id: string, _options?: IOperationOptions): Promise<IOperationResult<TResponse>>;
21
+ retrieveMultipleRecordsAsync<TResponse>(tableName: string, _options?: IOperationOptions): Promise<IOperationResult<TResponse[]>>;
22
+ executeAsync<TRequest, TResponse>(_operation: IDataOperation<TRequest>): Promise<IOperationResult<TResponse>>;
23
+ }
24
+ export declare function createMockDataExecutor(data: MockDataStore): MockDataOperationExecutor;
25
+ //# sourceMappingURL=mockDataOperationExecutor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockDataOperationExecutor.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/data/core/data/executors/mockDataOperationExecutor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,aAAa,CAAC,OAAO,GAAG,OAAO,IAAI;IAC7C,CAAC,SAAS,EAAE,MAAM,GAAG;QACnB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;KACvB,CAAC;CACH,CAAC;AAEF,qBAAa,yBAA0B,YAAW,sBAAsB;IACtE,OAAO,CAAC,UAAU,CAAgB;gBAEtB,IAAI,EAAE,aAAa;IAIlB,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAChD,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,QAAQ,GACd,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAO1B,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAChD,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,QAAQ,GACd,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAO1B,kBAAkB,CAAC,QAAQ,SAAS,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,IAAI,EACvF,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,QAAQ,GACb,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IASrB,sBAAsB,CACjC,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAU3B,2BAA2B,CACtC,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAUrB,uBAAuB,CAClC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAS3B,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAOnF,mBAAmB,CAAC,SAAS,EACxC,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,MAAM,EACV,QAAQ,CAAC,EAAE,iBAAiB,GAC3B,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAqB1B,4BAA4B,CAAC,SAAS,EACjD,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,iBAAiB,GAC3B,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC;IAa5B,YAAY,CAAC,QAAQ,EAAE,SAAS,EAC3C,UAAU,EAAE,cAAc,CAAC,QAAQ,CAAC,GACnC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;CAOxC;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,aAAa,GAAG,yBAAyB,CAErF"}
@@ -6,28 +6,64 @@ export class MockDataOperationExecutor {
6
6
  constructor(data) {
7
7
  this._dataStore = data;
8
8
  }
9
- async createRecordAsync(tableName, data) {
9
+ async createRecordAsync(_tableName, _data) {
10
10
  return {
11
11
  success: false,
12
12
  error: { message: 'createRecordAsync is not supported by MockDataOperationExecutor' },
13
13
  data: null,
14
14
  };
15
15
  }
16
- async updateRecordAsync(tableName, id, data) {
16
+ async updateRecordAsync(_tableName, _id, _data) {
17
17
  return {
18
18
  success: false,
19
19
  error: { message: 'updateRecordAsync is not supported by MockDataOperationExecutor' },
20
20
  data: null,
21
21
  };
22
22
  }
23
- async deleteRecordAsync(tableName, id) {
23
+ async uploadFileToRecord(tableName, id, columnName, fileName, data) {
24
+ return {
25
+ success: false,
26
+ error: {
27
+ message: `uploadFileToRecord is not supported by MockDataOperationExecutor, ${tableName}, ${columnName}, ${fileName}, ${id}, ${JSON.stringify(data)}`,
28
+ },
29
+ data: undefined,
30
+ };
31
+ }
32
+ async downloadFileFromRecord(tableName, id, columnName) {
33
+ return {
34
+ success: false,
35
+ error: {
36
+ message: `downloadFileFromRecord is not supported by MockDataOperationExecutor, ${tableName}, ${columnName}, ${id}`,
37
+ },
38
+ data: new Uint8Array(0),
39
+ };
40
+ }
41
+ async deleteFileOrImageFromRecord(_tableName, _recordId, _columnName) {
42
+ return {
43
+ success: false,
44
+ error: {
45
+ message: 'deleteFileOrImageFromRecord is not supported by MockDataOperationExecutor',
46
+ },
47
+ data: undefined,
48
+ };
49
+ }
50
+ async downloadImageFromRecord(tableName, recordId, columnName, _fullSize) {
51
+ return {
52
+ success: false,
53
+ error: {
54
+ message: `downloadImageFromRecord is not supported by MockDataOperationExecutor, ${tableName}, ${columnName}, ${recordId}`,
55
+ },
56
+ data: new Uint8Array(0),
57
+ };
58
+ }
59
+ async deleteRecordAsync(_tableName, _id) {
24
60
  return {
25
61
  success: false,
26
62
  error: { message: 'deleteRecordAsync is not supported by MockDataOperationExecutor' },
27
63
  data: undefined,
28
64
  };
29
65
  }
30
- async retrieveRecordAsync(tableName, id, options) {
66
+ async retrieveRecordAsync(tableName, id, _options) {
31
67
  if (!this._dataStore[tableName]) {
32
68
  return {
33
69
  success: false,
@@ -48,7 +84,7 @@ export class MockDataOperationExecutor {
48
84
  data: record,
49
85
  };
50
86
  }
51
- async retrieveMultipleRecordsAsync(tableName, options) {
87
+ async retrieveMultipleRecordsAsync(tableName, _options) {
52
88
  if (!this._dataStore[tableName]) {
53
89
  return {
54
90
  success: false,
@@ -61,7 +97,7 @@ export class MockDataOperationExecutor {
61
97
  data: Object.values(this._dataStore[tableName]),
62
98
  };
63
99
  }
64
- async executeAsync(operation) {
100
+ async executeAsync(_operation) {
65
101
  return {
66
102
  success: false,
67
103
  error: { message: 'executeAsync is not supported by MockDataOperationExecutor' },
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockDataOperationExecutor.js","sourceRoot":"","sources":["../../../../../../src/internal/data/core/data/executors/mockDataOperationExecutor.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Copyright (C) Microsoft Corporation. All rights reserved.
3
3
  */
4
- import { IOperationOptions } from '../../../types';
4
+ import type { IOperationOptions } from '../../../types';
5
5
  /**
6
6
  * Converts operation options to a query string format.
7
7
  * @param options - The operation options to convert.
@@ -1 +1 @@
1
- {"version":3,"file":"stringQueryOptions.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/data/core/data/executors/shared/stringQueryOptions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,MAAM,CA4C/E"}
1
+ {"version":3,"file":"stringQueryOptions.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/data/core/data/executors/shared/stringQueryOptions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,MAAM,CA8C/E"}
@@ -15,7 +15,9 @@ export function convertOptionsToQueryString(options) {
15
15
  parts.push(`$select=${encodeURIComponent(options.select.map((s) => s.trim().replace(/%20/g, '+').replace(/'/g, '%27')).join(','))}`);
16
16
  }
17
17
  if (options.filter) {
18
- const encodedFilter = encodeURIComponent(options.filter.trim()).replace(/%20/g, '+').replace(/'/g, '%27');
18
+ const encodedFilter = encodeURIComponent(options.filter.trim())
19
+ .replace(/%20/g, '+')
20
+ .replace(/'/g, '%27');
19
21
  parts.push(`$filter=${encodedFilter}`);
20
22
  }
21
23
  if (options.orderBy && options.orderBy.length > 0) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stringQueryOptions.js","sourceRoot":"","sources":["../../../../../../../src/internal/data/core/data/executors/shared/stringQueryOptions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAA2B;IACrE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChD,KAAK,CAAC,IAAI,CACR,WAAW,kBAAkB,CAC3B,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CACxF,EAAE,CACJ,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;aAC5D,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;aACpB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,WAAW,aAAa,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,KAAK,CAAC,IAAI,CACR,YAAY,kBAAkB,CAC5B,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CACzF,EAAE,CACJ,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,OAAO,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;QACtD,KAAK,CAAC,IAAI,CAAC,QAAQ,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACxD,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QAC1D,KAAK,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,KAAK,CAAC,IAAI,CAAC,cAAc,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACnD,CAAC"}
@@ -13,9 +13,13 @@ export declare enum HeaderNames {
13
13
  export declare enum DataverseOperationName {
14
14
  CreateRecord = "dataverseDataOperation.createRecordAsync",
15
15
  UpdateRecord = "dataverseDataOperation.updateRecordAsync",
16
+ UploadRecord = "dataverseDataOperation.uploadFileToRecord",
17
+ DownloadRecord = "dataverseDataOperation.downloadFileFromRecord",
16
18
  DeleteRecord = "dataverseDataOperation.deleteRecordAsync",
19
+ DeleteFileOrImageRecord = "dataverseDataOperation.deleteFileOrImageFromRecord",
17
20
  RetrieveRecord = "dataverseDataOperation.retrieveRecordAsync",
18
- RetrieveMultipleRecords = "dataverseDataOperation.retrieveMultipleRecordsAsync"
21
+ RetrieveMultipleRecords = "dataverseDataOperation.retrieveMultipleRecordsAsync",
22
+ ExecuteCustomApi = "dataverseDataOperation.executeCustomApi"
19
23
  }
20
24
  /**
21
25
  * Enum for ConnectorDataOperation operation names.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/internal/data/core/error/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,oBAAY,WAAW;IACrB;;OAEG;IACH,SAAS,2BAA2B;CACrC;AAED;;GAEG;AACH,oBAAY,sBAAsB;IAChC,YAAY,6CAA6C;IACzD,YAAY,6CAA6C;IACzD,YAAY,8CAA8C;IAC1D,cAAc,kDAAkD;IAChE,YAAY,6CAA6C;IACzD,uBAAuB,uDAAuD;IAC9E,cAAc,+CAA+C;IAC7D,uBAAuB,wDAAwD;IAC/E,gBAAgB,4CAA4C;CAC7D;AAED;;GAEG;AACH,oBAAY,sBAAsB;IAChC,YAAY,6CAA6C;IACzD,YAAY,6CAA6C;IACzD,YAAY,6CAA6C;IACzD,cAAc,+CAA+C;IAC7D,uBAAuB,wDAAwD;CAChF"}
@@ -15,9 +15,13 @@ export var DataverseOperationName;
15
15
  (function (DataverseOperationName) {
16
16
  DataverseOperationName["CreateRecord"] = "dataverseDataOperation.createRecordAsync";
17
17
  DataverseOperationName["UpdateRecord"] = "dataverseDataOperation.updateRecordAsync";
18
+ DataverseOperationName["UploadRecord"] = "dataverseDataOperation.uploadFileToRecord";
19
+ DataverseOperationName["DownloadRecord"] = "dataverseDataOperation.downloadFileFromRecord";
18
20
  DataverseOperationName["DeleteRecord"] = "dataverseDataOperation.deleteRecordAsync";
21
+ DataverseOperationName["DeleteFileOrImageRecord"] = "dataverseDataOperation.deleteFileOrImageFromRecord";
19
22
  DataverseOperationName["RetrieveRecord"] = "dataverseDataOperation.retrieveRecordAsync";
20
23
  DataverseOperationName["RetrieveMultipleRecords"] = "dataverseDataOperation.retrieveMultipleRecordsAsync";
24
+ DataverseOperationName["ExecuteCustomApi"] = "dataverseDataOperation.executeCustomApi";
21
25
  })(DataverseOperationName || (DataverseOperationName = {}));
22
26
  /**
23
27
  * Enum for ConnectorDataOperation operation names.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/internal/data/core/error/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB;;OAEG;IACH,mDAAoC,CAAA;AACtC,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,sBAUX;AAVD,WAAY,sBAAsB;IAChC,mFAAyD,CAAA;IACzD,mFAAyD,CAAA;IACzD,oFAA0D,CAAA;IAC1D,0FAAgE,CAAA;IAChE,mFAAyD,CAAA;IACzD,wGAA8E,CAAA;IAC9E,uFAA6D,CAAA;IAC7D,yGAA+E,CAAA;IAC/E,sFAA4D,CAAA;AAC9D,CAAC,EAVW,sBAAsB,KAAtB,sBAAsB,QAUjC;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,sBAMX;AAND,WAAY,sBAAsB;IAChC,mFAAyD,CAAA;IACzD,mFAAyD,CAAA;IACzD,mFAAyD,CAAA;IACzD,uFAA6D,CAAA;IAC7D,yGAA+E,CAAA;AACjF,CAAC,EANW,sBAAsB,KAAtB,sBAAsB,QAMjC"}
@@ -3,6 +3,6 @@
3
3
  */
4
4
  export * from './codes';
5
5
  export * from './messages';
6
- export * from './util';
7
6
  export * from './types';
7
+ export * from './util';
8
8
  //# sourceMappingURL=error.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../../src/internal/data/core/error/error.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../../src/internal/data/core/error/error.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
@@ -3,6 +3,6 @@
3
3
  */
4
4
  export * from './codes';
5
5
  export * from './messages';
6
- export * from './util';
7
6
  export * from './types';
7
+ export * from './util';
8
8
  //# sourceMappingURL=error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../../src/internal/data/core/error/error.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../../src/internal/data/core/error/error.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
@@ -19,6 +19,10 @@ export declare enum DataOperationErrorMessages {
19
19
  MissingRequestBody = "Request body is required",
20
20
  RetrieveFailed = "Retrieve operation failure",
21
21
  RetrieveMultipleFailed = "Retrieve multiple records operation failure",
22
- UpdateFailed = "Update operation failure"
22
+ UpdateFailed = "Update operation failure",
23
+ UploadFailed = "Upload operation failure",
24
+ DownloadFailed = "Download operation failure",
25
+ DeleteFileOrImageFailed = "Delete file or image operation failure",
26
+ MissingFileData = "File data is required"
23
27
  }
24
28
  //# sourceMappingURL=messages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../../src/internal/data/core/error/messages.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,eAAO,MAAM,mBAAmB,8BAA8B,CAAC;AAE/D,eAAO,MAAM,aAAa,EAAE;KAAG,GAAG,IAAI,UAAU,CAAC,CAAC,EAAE,MAAM;CAoCzD,CAAC;AAKF,oBAAY,0BAA0B;IACpC,YAAY,6BAA6B;IACzC,YAAY,6BAA6B;IACzC,aAAa,8BAA8B;IAC3C,0BAA0B,iCAAiC;IAC3D,cAAc,oBAAoB;IAClC,eAAe,4BAA4B;IAC3C,yBAAyB,oCAAoC;IAC7D,uBAAuB,kCAAkC;IACzD,oBAAoB,+BAA+B;IACnD,kBAAkB,6BAA6B;IAC/C,cAAc,+BAA+B;IAC7C,sBAAsB,gDAAgD;IACtE,YAAY,6BAA6B;CAC1C"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../../src/internal/data/core/error/messages.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,eAAO,MAAM,mBAAmB,8BAA8B,CAAC;AAE/D,eAAO,MAAM,aAAa,EAAE;KAAG,GAAG,IAAI,UAAU,CAAC,CAAC,EAAE,MAAM;CAoCzD,CAAC;AAKF,oBAAY,0BAA0B;IACpC,YAAY,6BAA6B;IACzC,YAAY,6BAA6B;IACzC,aAAa,8BAA8B;IAC3C,0BAA0B,iCAAiC;IAC3D,cAAc,oBAAoB;IAClC,eAAe,4BAA4B;IAC3C,yBAAyB,oCAAoC;IAC7D,uBAAuB,kCAAkC;IACzD,oBAAoB,+BAA+B;IACnD,kBAAkB,6BAA6B;IAC/C,cAAc,+BAA+B;IAC7C,sBAAsB,gDAAgD;IACtE,YAAY,6BAA6B;IACzC,YAAY,6BAA6B;IACzC,cAAc,+BAA+B;IAC7C,uBAAuB,2CAA2C;IAClE,eAAe,0BAA0B;CAC1C"}