@microsoft/power-apps 0.3.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 (291) hide show
  1. package/LICENSE +153 -0
  2. package/README.md +63 -0
  3. package/lib/__tests__/connectorDataOperationExecutor.spec.d.ts +5 -0
  4. package/lib/__tests__/connectorDataOperationExecutor.spec.d.ts.map +1 -0
  5. package/lib/__tests__/connectorDataOperationExecutor.spec.js +509 -0
  6. package/lib/__tests__/connectorDataOperationExecutor.spec.js.map +1 -0
  7. package/lib/__tests__/dataverseDataOperationExecutor.spec.d.ts +5 -0
  8. package/lib/__tests__/dataverseDataOperationExecutor.spec.d.ts.map +1 -0
  9. package/lib/__tests__/dataverseDataOperationExecutor.spec.js +349 -0
  10. package/lib/__tests__/dataverseDataOperationExecutor.spec.js.map +1 -0
  11. package/lib/__tests__/helpers/testHelpers.d.ts +27 -0
  12. package/lib/__tests__/helpers/testHelpers.d.ts.map +1 -0
  13. package/lib/__tests__/helpers/testHelpers.js +67 -0
  14. package/lib/__tests__/helpers/testHelpers.js.map +1 -0
  15. package/lib/__tests__/index.spec.d.ts +5 -0
  16. package/lib/__tests__/index.spec.d.ts.map +1 -0
  17. package/lib/__tests__/index.spec.js +10 -0
  18. package/lib/__tests__/index.spec.js.map +1 -0
  19. package/lib/__tests__/mockDataOperationExecutor.spec.d.ts +5 -0
  20. package/lib/__tests__/mockDataOperationExecutor.spec.d.ts.map +1 -0
  21. package/lib/__tests__/mockDataOperationExecutor.spec.js +51 -0
  22. package/lib/__tests__/mockDataOperationExecutor.spec.js.map +1 -0
  23. package/lib/__tests__/mocks/mockDataverseRetrieveMultipleResponse.d.ts +17 -0
  24. package/lib/__tests__/mocks/mockDataverseRetrieveMultipleResponse.d.ts.map +1 -0
  25. package/lib/__tests__/mocks/mockDataverseRetrieveMultipleResponse.js +35 -0
  26. package/lib/__tests__/mocks/mockDataverseRetrieveMultipleResponse.js.map +1 -0
  27. package/lib/__tests__/mocks/mockLog.d.ts +31 -0
  28. package/lib/__tests__/mocks/mockLog.d.ts.map +1 -0
  29. package/lib/__tests__/mocks/mockLog.js +53 -0
  30. package/lib/__tests__/mocks/mockLog.js.map +1 -0
  31. package/lib/__tests__/mocks/mockTeamsConnectorResponse.d.ts +76 -0
  32. package/lib/__tests__/mocks/mockTeamsConnectorResponse.d.ts.map +1 -0
  33. package/lib/__tests__/mocks/mockTeamsConnectorResponse.js +81 -0
  34. package/lib/__tests__/mocks/mockTeamsConnectorResponse.js.map +1 -0
  35. package/lib/__tests__/mocks/silenceConsole.d.ts +37 -0
  36. package/lib/__tests__/mocks/silenceConsole.d.ts.map +1 -0
  37. package/lib/__tests__/mocks/silenceConsole.js +58 -0
  38. package/lib/__tests__/mocks/silenceConsole.js.map +1 -0
  39. package/lib/__tests__/powerDataRuntimeInstance.test.d.ts +5 -0
  40. package/lib/__tests__/powerDataRuntimeInstance.test.d.ts.map +1 -0
  41. package/lib/__tests__/powerDataRuntimeInstance.test.js +179 -0
  42. package/lib/__tests__/powerDataRuntimeInstance.test.js.map +1 -0
  43. package/lib/__tests__/powerDataSourcesInfoProvider.test.d.ts +5 -0
  44. package/lib/__tests__/powerDataSourcesInfoProvider.test.d.ts.map +1 -0
  45. package/lib/__tests__/powerDataSourcesInfoProvider.test.js +153 -0
  46. package/lib/__tests__/powerDataSourcesInfoProvider.test.js.map +1 -0
  47. package/lib/__tests__/runtimeClientProvider.test.d.ts +5 -0
  48. package/lib/__tests__/runtimeClientProvider.test.d.ts.map +1 -0
  49. package/lib/__tests__/runtimeClientProvider.test.js +248 -0
  50. package/lib/__tests__/runtimeClientProvider.test.js.map +1 -0
  51. package/lib/__tests__/runtimeDataClient.spec.d.ts +2 -0
  52. package/lib/__tests__/runtimeDataClient.spec.d.ts.map +1 -0
  53. package/lib/__tests__/runtimeDataClient.spec.js +351 -0
  54. package/lib/__tests__/runtimeDataClient.spec.js.map +1 -0
  55. package/lib/__tests__/runtimeDataClient.test.d.ts +2 -0
  56. package/lib/__tests__/runtimeDataClient.test.d.ts.map +1 -0
  57. package/lib/__tests__/runtimeDataClient.test.js +351 -0
  58. package/lib/__tests__/runtimeDataClient.test.js.map +1 -0
  59. package/lib/__tests__/runtimeDataOperation.test.d.ts +5 -0
  60. package/lib/__tests__/runtimeDataOperation.test.d.ts.map +1 -0
  61. package/lib/__tests__/runtimeDataOperation.test.js +234 -0
  62. package/lib/__tests__/runtimeDataOperation.test.js.map +1 -0
  63. package/lib/__tests__/runtimeMetadataClient.test.d.ts +5 -0
  64. package/lib/__tests__/runtimeMetadataClient.test.d.ts.map +1 -0
  65. package/lib/__tests__/runtimeMetadataClient.test.js +271 -0
  66. package/lib/__tests__/runtimeMetadataClient.test.js.map +1 -0
  67. package/lib/__tests__/runtimeMetadataOperations.test.d.ts +5 -0
  68. package/lib/__tests__/runtimeMetadataOperations.test.d.ts.map +1 -0
  69. package/lib/__tests__/runtimeMetadataOperations.test.js +286 -0
  70. package/lib/__tests__/runtimeMetadataOperations.test.js.map +1 -0
  71. package/lib/__tests__/serviceSchemaModelSnapshot.test.d.ts +2 -0
  72. package/lib/__tests__/serviceSchemaModelSnapshot.test.d.ts.map +1 -0
  73. package/lib/__tests__/serviceSchemaModelSnapshot.test.js +98 -0
  74. package/lib/__tests__/serviceSchemaModelSnapshot.test.js.map +1 -0
  75. package/lib/__tests__/types.spec.d.ts +5 -0
  76. package/lib/__tests__/types.spec.d.ts.map +1 -0
  77. package/lib/__tests__/types.spec.js +104 -0
  78. package/lib/__tests__/types.spec.js.map +1 -0
  79. package/lib/__tests__/utils.test.d.ts +5 -0
  80. package/lib/__tests__/utils.test.d.ts.map +1 -0
  81. package/lib/__tests__/utils.test.js +33 -0
  82. package/lib/__tests__/utils.test.js.map +1 -0
  83. package/lib/app/Lifecycle.d.ts +14 -0
  84. package/lib/app/Lifecycle.d.ts.map +1 -0
  85. package/lib/app/Lifecycle.js +37 -0
  86. package/lib/app/Lifecycle.js.map +1 -0
  87. package/lib/app/index.d.ts +5 -0
  88. package/lib/app/index.d.ts.map +1 -0
  89. package/lib/app/index.js +5 -0
  90. package/lib/app/index.js.map +1 -0
  91. package/lib/data/Data.types.d.ts +20 -0
  92. package/lib/data/Data.types.d.ts.map +1 -0
  93. package/lib/data/Data.types.js +5 -0
  94. package/lib/data/Data.types.js.map +1 -0
  95. package/lib/data/executors/index.d.ts +6 -0
  96. package/lib/data/executors/index.d.ts.map +1 -0
  97. package/lib/data/executors/index.js +5 -0
  98. package/lib/data/executors/index.js.map +1 -0
  99. package/lib/data/index.d.ts +7 -0
  100. package/lib/data/index.d.ts.map +1 -0
  101. package/lib/data/index.js +5 -0
  102. package/lib/data/index.js.map +1 -0
  103. package/lib/data/powerAppsData.d.ts +10 -0
  104. package/lib/data/powerAppsData.d.ts.map +1 -0
  105. package/lib/data/powerAppsData.js +43 -0
  106. package/lib/data/powerAppsData.js.map +1 -0
  107. package/lib/index.d.ts +8 -0
  108. package/lib/index.d.ts.map +1 -0
  109. package/lib/index.js +8 -0
  110. package/lib/index.js.map +1 -0
  111. package/lib/internal/communication/CompatibleMessageReceiver.d.ts +12 -0
  112. package/lib/internal/communication/CompatibleMessageReceiver.d.ts.map +1 -0
  113. package/lib/internal/communication/CompatibleMessageReceiver.js +92 -0
  114. package/lib/internal/communication/CompatibleMessageReceiver.js.map +1 -0
  115. package/lib/internal/communication/IncompatibleMessageReceiver.d.ts +10 -0
  116. package/lib/internal/communication/IncompatibleMessageReceiver.d.ts.map +1 -0
  117. package/lib/internal/communication/IncompatibleMessageReceiver.js +13 -0
  118. package/lib/internal/communication/IncompatibleMessageReceiver.js.map +1 -0
  119. package/lib/internal/communication/MessageReceiver.Types.d.ts +18 -0
  120. package/lib/internal/communication/MessageReceiver.Types.d.ts.map +1 -0
  121. package/lib/internal/communication/MessageReceiver.Types.js +5 -0
  122. package/lib/internal/communication/MessageReceiver.Types.js.map +1 -0
  123. package/lib/internal/communication/SendMessage.d.ts +11 -0
  124. package/lib/internal/communication/SendMessage.d.ts.map +1 -0
  125. package/lib/internal/communication/SendMessage.js +32 -0
  126. package/lib/internal/communication/SendMessage.js.map +1 -0
  127. package/lib/internal/communication/SendMessageOperation.d.ts +15 -0
  128. package/lib/internal/communication/SendMessageOperation.d.ts.map +1 -0
  129. package/lib/internal/communication/SendMessageOperation.js +18 -0
  130. package/lib/internal/communication/SendMessageOperation.js.map +1 -0
  131. package/lib/internal/data/ConnectionUtils.d.ts +5 -0
  132. package/lib/internal/data/ConnectionUtils.d.ts.map +1 -0
  133. package/lib/internal/data/ConnectionUtils.js +20 -0
  134. package/lib/internal/data/ConnectionUtils.js.map +1 -0
  135. package/lib/internal/data/OperationExecutor.d.ts +18 -0
  136. package/lib/internal/data/OperationExecutor.d.ts.map +1 -0
  137. package/lib/internal/data/OperationExecutor.js +35 -0
  138. package/lib/internal/data/OperationExecutor.js.map +1 -0
  139. package/lib/internal/data/core/api/createRecord.d.ts +13 -0
  140. package/lib/internal/data/core/api/createRecord.d.ts.map +1 -0
  141. package/lib/internal/data/core/api/createRecord.js +15 -0
  142. package/lib/internal/data/core/api/createRecord.js.map +1 -0
  143. package/lib/internal/data/core/api/deleteRecord.d.ts +13 -0
  144. package/lib/internal/data/core/api/deleteRecord.d.ts.map +1 -0
  145. package/lib/internal/data/core/api/deleteRecord.js +15 -0
  146. package/lib/internal/data/core/api/deleteRecord.js.map +1 -0
  147. package/lib/internal/data/core/api/execute.d.ts +11 -0
  148. package/lib/internal/data/core/api/execute.d.ts.map +1 -0
  149. package/lib/internal/data/core/api/execute.js +13 -0
  150. package/lib/internal/data/core/api/execute.js.map +1 -0
  151. package/lib/internal/data/core/api/retrieveMultipleRecords.d.ts +13 -0
  152. package/lib/internal/data/core/api/retrieveMultipleRecords.d.ts.map +1 -0
  153. package/lib/internal/data/core/api/retrieveMultipleRecords.js +15 -0
  154. package/lib/internal/data/core/api/retrieveMultipleRecords.js.map +1 -0
  155. package/lib/internal/data/core/api/retrieveRecord.d.ts +13 -0
  156. package/lib/internal/data/core/api/retrieveRecord.d.ts.map +1 -0
  157. package/lib/internal/data/core/api/retrieveRecord.js +15 -0
  158. package/lib/internal/data/core/api/retrieveRecord.js.map +1 -0
  159. package/lib/internal/data/core/api/updateRecord.d.ts +14 -0
  160. package/lib/internal/data/core/api/updateRecord.d.ts.map +1 -0
  161. package/lib/internal/data/core/api/updateRecord.js +16 -0
  162. package/lib/internal/data/core/api/updateRecord.js.map +1 -0
  163. package/lib/internal/data/core/common/types.d.ts +230 -0
  164. package/lib/internal/data/core/common/types.d.ts.map +1 -0
  165. package/lib/internal/data/core/common/types.js +25 -0
  166. package/lib/internal/data/core/common/types.js.map +1 -0
  167. package/lib/internal/data/core/common/utils.d.ts +19 -0
  168. package/lib/internal/data/core/common/utils.d.ts.map +1 -0
  169. package/lib/internal/data/core/common/utils.js +47 -0
  170. package/lib/internal/data/core/common/utils.js.map +1 -0
  171. package/lib/internal/data/core/data/defaultOperationOrchestrator.d.ts +93 -0
  172. package/lib/internal/data/core/data/defaultOperationOrchestrator.d.ts.map +1 -0
  173. package/lib/internal/data/core/data/defaultOperationOrchestrator.js +249 -0
  174. package/lib/internal/data/core/data/defaultOperationOrchestrator.js.map +1 -0
  175. package/lib/internal/data/core/data/executors/connectorDataOperationExecutor.d.ts +160 -0
  176. package/lib/internal/data/core/data/executors/connectorDataOperationExecutor.d.ts.map +1 -0
  177. package/lib/internal/data/core/data/executors/connectorDataOperationExecutor.js +500 -0
  178. package/lib/internal/data/core/data/executors/connectorDataOperationExecutor.js.map +1 -0
  179. package/lib/internal/data/core/data/executors/dataverseDataOperationExecutor.d.ts +164 -0
  180. package/lib/internal/data/core/data/executors/dataverseDataOperationExecutor.d.ts.map +1 -0
  181. package/lib/internal/data/core/data/executors/dataverseDataOperationExecutor.js +508 -0
  182. package/lib/internal/data/core/data/executors/dataverseDataOperationExecutor.js.map +1 -0
  183. package/lib/internal/data/core/data/executors/index.d.ts +5 -0
  184. package/lib/internal/data/core/data/executors/index.d.ts.map +1 -0
  185. package/lib/internal/data/core/data/executors/index.js +5 -0
  186. package/lib/internal/data/core/data/executors/index.js.map +1 -0
  187. package/lib/internal/data/core/data/executors/mockDataOperationExecutor.d.ts +21 -0
  188. package/lib/internal/data/core/data/executors/mockDataOperationExecutor.d.ts.map +1 -0
  189. package/lib/internal/data/core/data/executors/mockDataOperationExecutor.js +75 -0
  190. package/lib/internal/data/core/data/executors/mockDataOperationExecutor.js.map +1 -0
  191. package/lib/internal/data/core/error/codes.d.ts +31 -0
  192. package/lib/internal/data/core/error/codes.d.ts.map +1 -0
  193. package/lib/internal/data/core/error/codes.js +39 -0
  194. package/lib/internal/data/core/error/codes.js.map +1 -0
  195. package/lib/internal/data/core/error/constants.d.ts +30 -0
  196. package/lib/internal/data/core/error/constants.d.ts.map +1 -0
  197. package/lib/internal/data/core/error/constants.js +33 -0
  198. package/lib/internal/data/core/error/constants.js.map +1 -0
  199. package/lib/internal/data/core/error/error.d.ts +8 -0
  200. package/lib/internal/data/core/error/error.d.ts.map +1 -0
  201. package/lib/internal/data/core/error/error.js +8 -0
  202. package/lib/internal/data/core/error/error.js.map +1 -0
  203. package/lib/internal/data/core/error/messages.d.ts +24 -0
  204. package/lib/internal/data/core/error/messages.d.ts.map +1 -0
  205. package/lib/internal/data/core/error/messages.js +55 -0
  206. package/lib/internal/data/core/error/messages.js.map +1 -0
  207. package/lib/internal/data/core/error/types.d.ts +30 -0
  208. package/lib/internal/data/core/error/types.d.ts.map +1 -0
  209. package/lib/internal/data/core/error/types.js +28 -0
  210. package/lib/internal/data/core/error/types.js.map +1 -0
  211. package/lib/internal/data/core/error/util.d.ts +24 -0
  212. package/lib/internal/data/core/error/util.d.ts.map +1 -0
  213. package/lib/internal/data/core/error/util.js +71 -0
  214. package/lib/internal/data/core/error/util.js.map +1 -0
  215. package/lib/internal/data/core/metadata/runtimeDataSourceService.d.ts +65 -0
  216. package/lib/internal/data/core/metadata/runtimeDataSourceService.d.ts.map +1 -0
  217. package/lib/internal/data/core/metadata/runtimeDataSourceService.js +101 -0
  218. package/lib/internal/data/core/metadata/runtimeDataSourceService.js.map +1 -0
  219. package/lib/internal/data/core/metadata/runtimeMetadataOperations.d.ts +17 -0
  220. package/lib/internal/data/core/metadata/runtimeMetadataOperations.d.ts.map +1 -0
  221. package/lib/internal/data/core/metadata/runtimeMetadataOperations.js +34 -0
  222. package/lib/internal/data/core/metadata/runtimeMetadataOperations.js.map +1 -0
  223. package/lib/internal/data/core/runtime/getRuntimeContext.d.ts +11 -0
  224. package/lib/internal/data/core/runtime/getRuntimeContext.d.ts.map +1 -0
  225. package/lib/internal/data/core/runtime/getRuntimeContext.js +16 -0
  226. package/lib/internal/data/core/runtime/getRuntimeContext.js.map +1 -0
  227. package/lib/internal/data/core/runtime/initializeRuntime.d.ts +13 -0
  228. package/lib/internal/data/core/runtime/initializeRuntime.d.ts.map +1 -0
  229. package/lib/internal/data/core/runtime/initializeRuntime.js +38 -0
  230. package/lib/internal/data/core/runtime/initializeRuntime.js.map +1 -0
  231. package/lib/internal/data/core/runtime/powerDataRuntime.d.ts +68 -0
  232. package/lib/internal/data/core/runtime/powerDataRuntime.d.ts.map +1 -0
  233. package/lib/internal/data/core/runtime/powerDataRuntime.js +116 -0
  234. package/lib/internal/data/core/runtime/powerDataRuntime.js.map +1 -0
  235. package/lib/internal/data/core/runtime/powerDataRuntimeInstance.d.ts +20 -0
  236. package/lib/internal/data/core/runtime/powerDataRuntimeInstance.d.ts.map +1 -0
  237. package/lib/internal/data/core/runtime/powerDataRuntimeInstance.js +36 -0
  238. package/lib/internal/data/core/runtime/powerDataRuntimeInstance.js.map +1 -0
  239. package/lib/internal/data/core/runtime/powerDataSourcesInfoProvider.d.ts +34 -0
  240. package/lib/internal/data/core/runtime/powerDataSourcesInfoProvider.d.ts.map +1 -0
  241. package/lib/internal/data/core/runtime/powerDataSourcesInfoProvider.js +45 -0
  242. package/lib/internal/data/core/runtime/powerDataSourcesInfoProvider.js.map +1 -0
  243. package/lib/internal/data/core/runtimeClient/runtimeClientProvider.d.ts +43 -0
  244. package/lib/internal/data/core/runtimeClient/runtimeClientProvider.d.ts.map +1 -0
  245. package/lib/internal/data/core/runtimeClient/runtimeClientProvider.js +87 -0
  246. package/lib/internal/data/core/runtimeClient/runtimeClientProvider.js.map +1 -0
  247. package/lib/internal/data/core/runtimeClient/runtimeDataClient.d.ts +112 -0
  248. package/lib/internal/data/core/runtimeClient/runtimeDataClient.d.ts.map +1 -0
  249. package/lib/internal/data/core/runtimeClient/runtimeDataClient.js +457 -0
  250. package/lib/internal/data/core/runtimeClient/runtimeDataClient.js.map +1 -0
  251. package/lib/internal/data/core/runtimeClient/runtimeMetadataClient.d.ts +40 -0
  252. package/lib/internal/data/core/runtimeClient/runtimeMetadataClient.d.ts.map +1 -0
  253. package/lib/internal/data/core/runtimeClient/runtimeMetadataClient.js +94 -0
  254. package/lib/internal/data/core/runtimeClient/runtimeMetadataClient.js.map +1 -0
  255. package/lib/internal/data/core/telemetry/log.d.ts +20 -0
  256. package/lib/internal/data/core/telemetry/log.d.ts.map +1 -0
  257. package/lib/internal/data/core/telemetry/log.js +85 -0
  258. package/lib/internal/data/core/telemetry/log.js.map +1 -0
  259. package/lib/internal/data/core/types/index.d.ts +164 -0
  260. package/lib/internal/data/core/types/index.d.ts.map +1 -0
  261. package/lib/internal/data/core/types/index.js +7 -0
  262. package/lib/internal/data/core/types/index.js.map +1 -0
  263. package/lib/internal/plugin/PluginCommon.d.ts +16 -0
  264. package/lib/internal/plugin/PluginCommon.d.ts.map +1 -0
  265. package/lib/internal/plugin/PluginCommon.js +116 -0
  266. package/lib/internal/plugin/PluginCommon.js.map +1 -0
  267. package/lib/internal/plugin/PluginMobile.d.ts +13 -0
  268. package/lib/internal/plugin/PluginMobile.d.ts.map +1 -0
  269. package/lib/internal/plugin/PluginMobile.js +109 -0
  270. package/lib/internal/plugin/PluginMobile.js.map +1 -0
  271. package/lib/telemetry/Logger.types.d.ts +8 -0
  272. package/lib/telemetry/Logger.types.d.ts.map +1 -0
  273. package/lib/telemetry/Logger.types.js +5 -0
  274. package/lib/telemetry/Logger.types.js.map +1 -0
  275. package/lib/telemetry/LoggerManager.d.ts +6 -0
  276. package/lib/telemetry/LoggerManager.d.ts.map +1 -0
  277. package/lib/telemetry/LoggerManager.js +28 -0
  278. package/lib/telemetry/LoggerManager.js.map +1 -0
  279. package/lib/telemetry/Metrics.types.d.ts +53 -0
  280. package/lib/telemetry/Metrics.types.d.ts.map +1 -0
  281. package/lib/telemetry/Metrics.types.js +5 -0
  282. package/lib/telemetry/Metrics.types.js.map +1 -0
  283. package/lib/telemetry/Performance.d.ts +5 -0
  284. package/lib/telemetry/Performance.d.ts.map +1 -0
  285. package/lib/telemetry/Performance.js +47 -0
  286. package/lib/telemetry/Performance.js.map +1 -0
  287. package/lib/telemetry/index.d.ts +5 -0
  288. package/lib/telemetry/index.d.ts.map +1 -0
  289. package/lib/telemetry/index.js +5 -0
  290. package/lib/telemetry/index.js.map +1 -0
  291. package/package.json +44 -0
@@ -0,0 +1,457 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { DataSources, } from '../common/types';
5
+ import { HttpMethod } from '../common/types';
6
+ import { arrayBufferToBase64, convertArrayBufferToString } from '../common/utils';
7
+ import { isOperationResult } from '../types';
8
+ import { createErrorResponse, DataOperationErrorMessages, ErrorCodes, getErrorMessage, parseHttpPluginError, PowerDataRuntimeError, } from '../error/error';
9
+ import { extractDataverseUrlParts } from '../common/utils';
10
+ /**
11
+ * RuntimeDataClient handles data operations through PowerOperationExecutor
12
+ */
13
+ export class RuntimeDataClient {
14
+ _powerOperationExecutor;
15
+ // Static identifiers for services
16
+ // Used to identify specific services within the PowerApps environment
17
+ static SERVICES = {
18
+ dataClient: 'AppHttpClientPlugin',
19
+ identityService: 'AppIdentityServicePlugin',
20
+ };
21
+ // Static identifiers for service actions
22
+ // Used to identify specific actions within the service
23
+ // These actions are used to send HTTP requests and get access tokens
24
+ static ACTIONS = {
25
+ sendHttp: 'sendHttpAsync',
26
+ getToken: 'getAppAccessTokenAsync',
27
+ getDynamicToken: 'getAppDynamicResourceAccessTokenAsync',
28
+ };
29
+ // Request source identifier for telemetry
30
+ // Used to identify the source of the request in telemetry data
31
+ static REQUEST_SOURCE = 'PublishedApp';
32
+ // Constructor for RuntimeDataClient
33
+ // Accepts an IPowerOperationExecutor instance for executing operations
34
+ constructor(_powerOperationExecutor) {
35
+ this._powerOperationExecutor = _powerOperationExecutor;
36
+ }
37
+ /**
38
+ * Creates a new instance of RuntimeDataClient
39
+ */
40
+ static createInstanceAsync(powerOperationExecutor) {
41
+ return Promise.resolve(new RuntimeDataClient(powerOperationExecutor));
42
+ }
43
+ /**
44
+ * Creates data using POST method
45
+ * @param url - The URL for the request
46
+ * @param apiId - The API ID for authentication
47
+ * @param tableName - The name of the table to access
48
+ * @param body - The request body for the POST method
49
+ * @param operationName - Optional operation name for telemetry
50
+ * @return Promise resolving to the response data
51
+ * @throws Error if the request fails or the response is invalid
52
+ * @throws Error if the request body is invalid
53
+ */
54
+ async createDataAsync(url, apiId, tableName, body, context) {
55
+ try {
56
+ if (!body) {
57
+ throw new Error(`${DataOperationErrorMessages.InvalidRequest}: ${DataOperationErrorMessages.MissingRequestBody}`);
58
+ }
59
+ const config = {
60
+ url,
61
+ method: HttpMethod.POST,
62
+ apiId,
63
+ tableName,
64
+ body: JSON.stringify(body),
65
+ };
66
+ context = this._ensureContext(context, 'runtimeDataClient.createDataAsync');
67
+ return await this._executeRequest(config, context);
68
+ }
69
+ catch (error) {
70
+ if (isOperationResult(error)) {
71
+ return error;
72
+ }
73
+ else {
74
+ return createErrorResponse(error, DataOperationErrorMessages.CreateFailed);
75
+ }
76
+ }
77
+ }
78
+ /**
79
+ * Updates data using PATCH method
80
+ * @param url - The URL for the request
81
+ * @param apiId - The API ID for authentication
82
+ * @param tableName - The name of the table to access
83
+ * @param body - The request body for the PATCH method
84
+ * @param operationName - Optional operation name for telemetry
85
+ * @return Promise resolving to the response data
86
+ * @throws Error if the request fails or the response is invalid
87
+ * @throws Error if the request body is invalid
88
+ */
89
+ async updateDataAsync(url, apiId, tableName, body, context) {
90
+ try {
91
+ if (!body) {
92
+ throw new Error(`${DataOperationErrorMessages.InvalidRequest}: ${DataOperationErrorMessages.MissingRequestBody}`);
93
+ }
94
+ const config = {
95
+ url,
96
+ method: HttpMethod.PATCH,
97
+ apiId,
98
+ tableName,
99
+ body: JSON.stringify(body),
100
+ };
101
+ context = this._ensureContext(context, 'runtimeDataClient.updateDataAsync');
102
+ return await this._executeRequest(config, context);
103
+ }
104
+ catch (error) {
105
+ if (isOperationResult(error)) {
106
+ return error;
107
+ }
108
+ else {
109
+ return createErrorResponse(error, DataOperationErrorMessages.UpdateFailed);
110
+ }
111
+ }
112
+ }
113
+ /**
114
+ * Deletes data using DELETE method
115
+ * @param url - The URL for the request
116
+ * @param connectionApi - The API ID for authentication
117
+ * @param serviceNamespace - The name of the service namespace
118
+ * @param operationName - Optional operation name for telemetry
119
+ * @return Promise resolving to the response data
120
+ * @throws Error if the request fails or the response is invalid
121
+ */
122
+ async deleteDataAsync(url, connectionApi, serviceNamespace, context) {
123
+ try {
124
+ const config = {
125
+ url,
126
+ method: HttpMethod.DELETE,
127
+ apiId: connectionApi,
128
+ tableName: serviceNamespace,
129
+ };
130
+ context = this._ensureContext(context, 'runtimeDataClient.deleteDataAsync');
131
+ return await this._executeRequest(config, context);
132
+ }
133
+ catch (error) {
134
+ if (isOperationResult(error)) {
135
+ return error;
136
+ }
137
+ else {
138
+ return createErrorResponse(error, DataOperationErrorMessages.DeleteFailed);
139
+ }
140
+ }
141
+ }
142
+ /**
143
+ * Retrieves data using GET or POST method
144
+ * @param url - The URL for the request
145
+ * @param apiId - The API ID for authentication
146
+ * @param tableName - The name of the table to access
147
+ * @param method - The HTTP method
148
+ * @param body - Optional request body for POST method
149
+ * @param context - Optional operation context
150
+ * @param operationName - Optional operation name for telemetry
151
+ * @return Promise resolving to the response data
152
+ * @throws Error if the request fails or the response is invalid
153
+ */
154
+ async retrieveDataAsync(url, apiId, tableName, method, headers, body, context) {
155
+ try {
156
+ const config = {
157
+ url,
158
+ method,
159
+ apiId,
160
+ tableName,
161
+ headers,
162
+ body: body ? (typeof body === 'string' ? body : JSON.stringify(body)) : undefined,
163
+ };
164
+ context = this._ensureContext(context, 'runtimeDataClient.retrieveDataAsync');
165
+ return await this._executeRequest(config, context);
166
+ }
167
+ catch (error) {
168
+ if (isOperationResult(error)) {
169
+ return error;
170
+ }
171
+ else {
172
+ return createErrorResponse(error, DataOperationErrorMessages.RetrieveFailed);
173
+ }
174
+ }
175
+ }
176
+ /**
177
+ * Gets an access token for the specified API.
178
+ * If the API is Dataverse, retrieves a dynamic resource token; otherwise, retrieves a standard appservice API token.
179
+ * @param apiId - The API ID for authentication
180
+ * @param datasetName - Optional dataset name for Dataverse
181
+ * @returns Promise resolving to the access token
182
+ * @throws Error if token acquisition fails
183
+ */
184
+ async _getAccessToken(apiId, datasetName) {
185
+ try {
186
+ let result;
187
+ if (apiId === DataSources.Dataverse) {
188
+ // For Dataverse datasources, use dynamic token with datasetName as resourceId
189
+ result = await this._powerOperationExecutor.execute(RuntimeDataClient.SERVICES.identityService, RuntimeDataClient.ACTIONS.getDynamicToken, [datasetName]);
190
+ }
191
+ else {
192
+ result = await this._powerOperationExecutor.execute(RuntimeDataClient.SERVICES.identityService, RuntimeDataClient.ACTIONS.getToken, [apiId]);
193
+ }
194
+ return result.data;
195
+ }
196
+ catch (error) {
197
+ throw new PowerDataRuntimeError(ErrorCodes.TokenAcquisitionFailed, getErrorMessage(error));
198
+ }
199
+ }
200
+ // Merge Prefer headers for Dataverse batch payloads
201
+ _mergePreferHeaders(configHeaders, method) {
202
+ let preferHeader = '';
203
+ if (configHeaders?.Prefer) {
204
+ preferHeader += configHeaders.Prefer;
205
+ }
206
+ if (method === HttpMethod.POST || method === HttpMethod.PATCH) {
207
+ const defaultPrefer = 'return=representation,odata.include-annotations=*';
208
+ if (preferHeader) {
209
+ // Only add if not already present
210
+ if (!preferHeader.includes('return=representation')) {
211
+ preferHeader += (preferHeader ? ',' : '') + defaultPrefer;
212
+ }
213
+ }
214
+ else {
215
+ preferHeader = defaultPrefer;
216
+ }
217
+ }
218
+ return preferHeader;
219
+ }
220
+ /**
221
+ * Creates headers for the HTTP request.
222
+ * Combines default headers with any custom headers provided in the config.
223
+ * Custom headers are optional and take precedence over default headers.
224
+ * @param token - The access token for authentication
225
+ * @param config - The HTTP request configuration
226
+ * @return The headers for the request
227
+ * @throws Error if header creation fails
228
+ */
229
+ _createHeaders(token, config, context) {
230
+ const baseHeaders = {
231
+ Accept: 'application/json',
232
+ 'x-ms-protocol-semantics': 'cdp',
233
+ ServiceNamespace: config.tableName,
234
+ Authorization: `paauth ${token}`,
235
+ 'x-ms-pa-client-custom-headers-options': '{"addCustomHeaders":true}',
236
+ 'x-ms-enable-selects': 'true',
237
+ 'x-ms-pa-client-telemetry-options': `paclient-telemetry {"operationName":"${context?.operationName ?? 'runtimeDataClient.executeRequest'}"}`,
238
+ 'x-ms-pa-client-telemetry-additional-data': `{"apiId":"${config.apiId}"}`,
239
+ };
240
+ if (config.apiId === DataSources.Dataverse) {
241
+ // Extract baseUrl and encodedPath for Dataverse batch payload construction
242
+ baseHeaders['x-ms-protocol-semantics'] = DataSources.Dataverse;
243
+ baseHeaders.Authorization = `dynamicauth ${token}`;
244
+ const { baseUrl, encodedPath } = extractDataverseUrlParts(config.url);
245
+ const batchId = context?.batchId || '';
246
+ const preferHeader = this._mergePreferHeaders(config.headers, config.method);
247
+ baseHeaders.BatchInfo = JSON.stringify({
248
+ baseUrl,
249
+ encodedPath,
250
+ headers: {
251
+ Accept: 'application/json',
252
+ ...(preferHeader ? { Prefer: preferHeader } : {}),
253
+ ...(config.method === HttpMethod.POST || config.method === HttpMethod.PATCH
254
+ ? { 'Content-Type': 'application/json' }
255
+ : {}),
256
+ },
257
+ batchId,
258
+ });
259
+ }
260
+ if (config.headers) {
261
+ return { ...baseHeaders, ...config.headers };
262
+ }
263
+ return baseHeaders;
264
+ }
265
+ /**
266
+ * Executes an HTTP request with the given configuration
267
+ * @param config - The HTTP request configuration
268
+ * @param context - Optional operation context
269
+ * @return Promise resolving to the response data
270
+ * @throws Error if the request fails or the response is invalid
271
+ * @throws Error if the response content type is invalid
272
+ */
273
+ async _executeRequest(config, context) {
274
+ const token = await this._getAccessToken(config.apiId, context?.datasetName);
275
+ const headers = this._createHeaders(token, config, context);
276
+ const requestBody = config.body ? new Blob([config.body], { type: 'application/json' }) : '';
277
+ let result;
278
+ try {
279
+ result = await this._powerOperationExecutor.execute(RuntimeDataClient.SERVICES.dataClient, RuntimeDataClient.ACTIONS.sendHttp, [
280
+ {
281
+ url: config.url,
282
+ method: config.method,
283
+ requestSource: RuntimeDataClient.REQUEST_SOURCE,
284
+ allowSessionStorage: true,
285
+ returnDirectResponse: true,
286
+ headers,
287
+ },
288
+ requestBody,
289
+ 'arraybuffer',
290
+ ]);
291
+ }
292
+ catch (error) {
293
+ return {
294
+ success: false,
295
+ error: parseHttpPluginError(error),
296
+ data: undefined,
297
+ };
298
+ }
299
+ const responseData = result.data;
300
+ const responseHeaders = responseData[0].headers;
301
+ const contentType = responseHeaders['Content-Type'];
302
+ if (!contentType) {
303
+ return {
304
+ success: true,
305
+ data: undefined,
306
+ };
307
+ }
308
+ else if (contentType.indexOf('application/json') !== -1) {
309
+ const data = result.data[1];
310
+ let text = this._decodeArrayBuffer(data);
311
+ if (!text) {
312
+ text = '{}'; // Handle empty response gracefully
313
+ }
314
+ const parsedResult = JSON.parse(text);
315
+ if (context?.isDataVerseOperation || this._isDataverseCall(config.url)) {
316
+ // If the call was to a native Dataverse API, we return the complete OData response
317
+ // that includes metadata, annotations, and the value array
318
+ return {
319
+ success: true,
320
+ data: parsedResult,
321
+ };
322
+ }
323
+ // Check if the response is an OData format with a value array
324
+ else if (!context?.isExecuteAsync && 'value' in parsedResult && Array.isArray(parsedResult.value)) {
325
+ // Cast to OData response and return just the value array
326
+ return {
327
+ success: true,
328
+ data: parsedResult.value,
329
+ };
330
+ }
331
+ else {
332
+ // Return the parsed result directly
333
+ return {
334
+ success: true,
335
+ data: parsedResult,
336
+ };
337
+ }
338
+ }
339
+ else if (contentType.indexOf('image/') !== -1) {
340
+ const buffer = result.data[1];
341
+ if (buffer instanceof ArrayBuffer) {
342
+ const value = arrayBufferToBase64(buffer);
343
+ return {
344
+ success: true,
345
+ data: value,
346
+ };
347
+ }
348
+ return {
349
+ success: true,
350
+ data: buffer,
351
+ };
352
+ }
353
+ else {
354
+ const buffer = result.data[1];
355
+ if (buffer instanceof ArrayBuffer) {
356
+ const value = convertArrayBufferToString(buffer);
357
+ const status = responseData[0].status;
358
+ const responseType = context?.responseInfo?.[status];
359
+ if (responseType) {
360
+ let parsedValue;
361
+ try {
362
+ parsedValue = JSON.parse(value);
363
+ }
364
+ catch (err) {
365
+ return {
366
+ success: false,
367
+ data: undefined,
368
+ error: new Error(DataOperationErrorMessages.InvalidResponse),
369
+ };
370
+ }
371
+ if (responseType.type === 'array' && !Array.isArray(parsedValue)) {
372
+ return {
373
+ success: false,
374
+ data: undefined,
375
+ error: new Error(DataOperationErrorMessages.InvalidResponse),
376
+ };
377
+ }
378
+ if (responseType.type === 'object' &&
379
+ (typeof parsedValue !== 'object' || Array.isArray(parsedValue) || parsedValue === null)) {
380
+ return {
381
+ success: false,
382
+ data: undefined,
383
+ error: new Error(DataOperationErrorMessages.InvalidResponse),
384
+ };
385
+ }
386
+ return {
387
+ success: true,
388
+ data: parsedValue,
389
+ };
390
+ }
391
+ else {
392
+ // Return the string value directly
393
+ return {
394
+ success: true,
395
+ data: value,
396
+ };
397
+ }
398
+ }
399
+ return {
400
+ success: false,
401
+ data: responseData,
402
+ error: new Error(DataOperationErrorMessages.InvalidResponse),
403
+ };
404
+ }
405
+ }
406
+ _ensureContext(context, defaultOperationName) {
407
+ if (!context) {
408
+ context = {};
409
+ }
410
+ if (!context.operationName) {
411
+ context.operationName = defaultOperationName;
412
+ }
413
+ return context;
414
+ }
415
+ /**
416
+ * Checks if the given URL is a Dataverse API call
417
+ * @param url - The URL to check
418
+ * @returns True if the URL is a Dataverse API call, false otherwise
419
+ */
420
+ _isDataverseCall(url) {
421
+ if (!url) {
422
+ return false;
423
+ }
424
+ const urlLower = decodeURIComponent(url).toLowerCase();
425
+ return urlLower.includes('/api/data/') && !urlLower.includes('/apim');
426
+ }
427
+ /**
428
+ * Decodes ArrayBuffer to string, handling both browser and Node.js environments
429
+ * @param buffer - The ArrayBuffer to decode
430
+ * @returns The decoded string
431
+ */
432
+ _decodeArrayBuffer(buffer) {
433
+ // Try using native TextDecoder first (browser environment)
434
+ if (typeof TextDecoder !== 'undefined') {
435
+ return new TextDecoder().decode(buffer);
436
+ }
437
+ // Fallback for environments without TextDecoder (e.g., Jest/Node.js)
438
+ // Convert ArrayBuffer to Uint8Array and then to string
439
+ const uint8Array = new Uint8Array(buffer);
440
+ const results = [];
441
+ // Use a chunk-based approach for better performance with large buffers
442
+ const chunkSize = 8192;
443
+ for (let i = 0; i < uint8Array.length; i += chunkSize) {
444
+ const chunk = uint8Array.subarray(i, Math.min(i + chunkSize, uint8Array.length));
445
+ results.push(String.fromCharCode.apply(null, Array.from(chunk)));
446
+ }
447
+ // Handle UTF-8 decoding for proper Unicode support
448
+ try {
449
+ return results.join('');
450
+ }
451
+ catch {
452
+ // If UTF-8 decoding fails, return the raw string
453
+ return results.join('');
454
+ }
455
+ }
456
+ }
457
+ //# sourceMappingURL=runtimeDataClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtimeDataClient.js","sourceRoot":"","sources":["../../../../../src/internal/data/core/runtimeClient/runtimeDataClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { IConnectionApi, IConnectionReference, IRuntimeMetadataClient } from '../common/types';
5
+ import { IOperationResult, IPowerOperationExecutor } from '../types';
6
+ /**
7
+ * RuntimeMetadataClient handles metadata operations through PowerOperationExecutor
8
+ */
9
+ export declare class RuntimeMetadataClient implements IRuntimeMetadataClient {
10
+ private readonly _powerOperationExecutor;
11
+ private static readonly SERVICES;
12
+ private static readonly ACTIONS;
13
+ constructor(_powerOperationExecutor: IPowerOperationExecutor);
14
+ /**
15
+ * Creates a new instance of RuntimeMetadataClient
16
+ * @param powerOperationExecutor - The powerOperationExecutor instance
17
+ * @returns Promise resolving to IRuntimeMetadataClient
18
+ */
19
+ static createInstanceAsync(powerOperationExecutor: IPowerOperationExecutor): Promise<RuntimeMetadataClient>;
20
+ /**
21
+ * Fetches app connection configurations
22
+ * @returns Promise resolving to connection reference details
23
+ * @throws Error if the operation fails
24
+ */
25
+ getAppConnectionConfigsAsync(): Promise<IOperationResult<IConnectionReference>>;
26
+ /**
27
+ * Fetches app data source configurations
28
+ * @returns Promise resolving to connection reference details
29
+ * @throws Error if the operation fails
30
+ */
31
+ getAppDataSourceConfigsAsync(): Promise<IOperationResult<IConnectionApi>>;
32
+ /**
33
+ * Executes a metadata operation with the given configuration
34
+ * @param config - The operation configuration
35
+ * @returns Promise resolving to the operation result
36
+ * @throws Error if the operation fails
37
+ */
38
+ private _executeOperation;
39
+ }
40
+ //# sourceMappingURL=runtimeMetadataClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtimeMetadataClient.d.ts","sourceRoot":"","sources":["../../../../../src/internal/data/core/runtimeClient/runtimeMetadataClient.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAE/F,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAWrE;;GAEG;AACH,qBAAa,qBAAsB,YAAW,sBAAsB;IAiBtD,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IAZpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAE9B;IAGF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAG7B;gBAI2B,uBAAuB,EAAE,uBAAuB;IAE7E;;;;OAIG;WACW,mBAAmB,CAC/B,sBAAsB,EAAE,uBAAuB,GAC9C,OAAO,CAAC,qBAAqB,CAAC;IAIjC;;;;OAIG;IACU,4BAA4B,IAAI,OAAO,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;IAe5F;;;;OAIG;IACU,4BAA4B,IAAI,OAAO,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAetF;;;;;OAKG;YACW,iBAAiB;CAmBhC"}
@@ -0,0 +1,94 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { ErrorCodes, getErrorMessage, PowerDataRuntimeError } from '../error/error';
5
+ /**
6
+ * RuntimeMetadataClient handles metadata operations through PowerOperationExecutor
7
+ */
8
+ export class RuntimeMetadataClient {
9
+ _powerOperationExecutor;
10
+ // Static identifiers for services and actions
11
+ // Used to identify specific services and actions within the PowerApps environment
12
+ // These identifiers are used to execute operations through the PowerOperationExecutor
13
+ // The services provide the functionality for the operations
14
+ static SERVICES = {
15
+ powerAppsClient: 'AppPowerAppsClientPlugin',
16
+ };
17
+ // The actions define the specific operations to be performed
18
+ static ACTIONS = {
19
+ getConnectionConfigs: 'loadAppConnectionsAsync_v2',
20
+ getDataSourceConfigs: 'getAppCdsDataSourceConfigsAsync',
21
+ };
22
+ // Private member for the PowerOperationExecutor
23
+ // The PowerOperationExecutor is used to execute operations on the clients
24
+ constructor(_powerOperationExecutor) {
25
+ this._powerOperationExecutor = _powerOperationExecutor;
26
+ }
27
+ /**
28
+ * Creates a new instance of RuntimeMetadataClient
29
+ * @param powerOperationExecutor - The powerOperationExecutor instance
30
+ * @returns Promise resolving to IRuntimeMetadataClient
31
+ */
32
+ static createInstanceAsync(powerOperationExecutor) {
33
+ return Promise.resolve(new RuntimeMetadataClient(powerOperationExecutor));
34
+ }
35
+ /**
36
+ * Fetches app connection configurations
37
+ * @returns Promise resolving to connection reference details
38
+ * @throws Error if the operation fails
39
+ */
40
+ async getAppConnectionConfigsAsync() {
41
+ try {
42
+ const config = {
43
+ service: RuntimeMetadataClient.SERVICES.powerAppsClient,
44
+ action: RuntimeMetadataClient.ACTIONS.getConnectionConfigs,
45
+ params: [],
46
+ };
47
+ const result = await this._executeOperation(config);
48
+ return { success: true, data: result };
49
+ }
50
+ catch (error) {
51
+ throw new PowerDataRuntimeError(ErrorCodes.ConnectionConfigFetchFailed, getErrorMessage(error));
52
+ }
53
+ }
54
+ /**
55
+ * Fetches app data source configurations
56
+ * @returns Promise resolving to connection reference details
57
+ * @throws Error if the operation fails
58
+ */
59
+ async getAppDataSourceConfigsAsync() {
60
+ try {
61
+ const config = {
62
+ service: RuntimeMetadataClient.SERVICES.powerAppsClient,
63
+ action: RuntimeMetadataClient.ACTIONS.getDataSourceConfigs,
64
+ params: [],
65
+ };
66
+ const result = await this._executeOperation(config);
67
+ return { success: true, data: result };
68
+ }
69
+ catch (error) {
70
+ throw new PowerDataRuntimeError(ErrorCodes.DataSourceConfigFetchFailed, getErrorMessage(error));
71
+ }
72
+ }
73
+ /**
74
+ * Executes a metadata operation with the given configuration
75
+ * @param config - The operation configuration
76
+ * @returns Promise resolving to the operation result
77
+ * @throws Error if the operation fails
78
+ */
79
+ async _executeOperation(config) {
80
+ try {
81
+ const result = await this._powerOperationExecutor.execute(config.service, config.action, config.params || []);
82
+ // Convert the keys of the result to lowercase
83
+ const lowerCaseResult = Object.keys(result.data).reduce((acc, key) => {
84
+ acc[key.toLowerCase()] = (result.data ?? {})[key];
85
+ return acc;
86
+ }, {});
87
+ return lowerCaseResult;
88
+ }
89
+ catch {
90
+ throw new PowerDataRuntimeError(ErrorCodes.InvalidMetadataResponse);
91
+ }
92
+ }
93
+ }
94
+ //# sourceMappingURL=runtimeMetadataClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtimeMetadataClient.js","sourceRoot":"","sources":["../../../../../src/internal/data/core/runtimeClient/runtimeMetadataClient.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAYpF;;GAEG;AACH,MAAM,OAAO,qBAAqB;IAiBH;IAhB7B,8CAA8C;IAC9C,kFAAkF;IAClF,sFAAsF;IACtF,4DAA4D;IACpD,MAAM,CAAU,QAAQ,GAAG;QACjC,eAAe,EAAE,0BAA0B;KAC5C,CAAC;IAEF,6DAA6D;IACrD,MAAM,CAAU,OAAO,GAAG;QAChC,oBAAoB,EAAE,4BAA4B;QAClD,oBAAoB,EAAE,iCAAiC;KACxD,CAAC;IAEF,gDAAgD;IAChD,0EAA0E;IAC1E,YAA6B,uBAAgD;QAAhD,4BAAuB,GAAvB,uBAAuB,CAAyB;IAAG,CAAC;IAEjF;;;;OAIG;IACI,MAAM,CAAC,mBAAmB,CAC/B,sBAA+C;QAE/C,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,qBAAqB,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC5E,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,4BAA4B;QACvC,IAAI;YACF,MAAM,MAAM,GAA6B;gBACvC,OAAO,EAAE,qBAAqB,CAAC,QAAQ,CAAC,eAAe;gBACvD,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,oBAAoB;gBAC1D,MAAM,EAAE,EAAE;aACX,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAuB,MAAM,CAAC,CAAC;YAC1E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;SACxC;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,qBAAqB,CAAC,UAAU,CAAC,2BAA2B,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;SACjG;IACH,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,4BAA4B;QACvC,IAAI;YACF,MAAM,MAAM,GAA6B;gBACvC,OAAO,EAAE,qBAAqB,CAAC,QAAQ,CAAC,eAAe;gBACvD,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,oBAAoB;gBAC1D,MAAM,EAAE,EAAE;aACX,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAiB,MAAM,CAAC,CAAC;YACpE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;SACxC;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,qBAAqB,CAAC,UAAU,CAAC,2BAA2B,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;SACjG;IACH,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,iBAAiB,CAAI,MAAgC;QACjE,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,CACvD,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,MAAM,EACZ,MAAM,CAAC,MAAoD,IAAI,EAAE,CACnE,CAAC;YAEF,8CAA8C;YAC9C,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACnE,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,CAAE,MAAM,CAAC,IAA2C,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC1F,OAAO,GAAG,CAAC;YACb,CAAC,EAAE,EAA6B,CAAC,CAAC;YAElC,OAAO,eAAoB,CAAC;SAC7B;QAAC,MAAM;YACN,MAAM,IAAI,qBAAqB,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;SACrE;IACH,CAAC"}
@@ -0,0 +1,20 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { IPowerOperationExecutor } from '../types';
5
+ export declare class Log {
6
+ private readonly _powerOperationExecutor;
7
+ private static _instance;
8
+ private constructor();
9
+ static createInstance(powerOperationExecutor: IPowerOperationExecutor): Log;
10
+ static resetInstance(): void;
11
+ private static _sendMessage;
12
+ static trackEvent(eventName: string, eventData?: object): Promise<void>;
13
+ static trackException(exception: object): Promise<void>;
14
+ static trackMetric(metricName: string, value: number): Promise<void>;
15
+ static startScenario(scenarioName: string): Promise<void>;
16
+ static endScenario(scenarioName: string): Promise<void>;
17
+ static setDefaultProperties(properties: object): Promise<void>;
18
+ private static _getInstance;
19
+ }
20
+ //# sourceMappingURL=log.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../../../../src/internal/data/core/telemetry/log.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAYnD,qBAAa,GAAG;IAGM,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IAF5D,OAAO,CAAC,MAAM,CAAC,SAAS,CAAoB;IAE5C,OAAO;WAEO,cAAc,CAAC,sBAAsB,EAAE,uBAAuB,GAAG,GAAG;WAYpE,aAAa,IAAI,IAAI;mBAId,YAAY;WA8BnB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;WAIhD,cAAc,CAAC,SAAS,EAAE,MAAM;WAIhC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;WAI7C,aAAa,CAAC,YAAY,EAAE,MAAM;WAIlC,WAAW,CAAC,YAAY,EAAE,MAAM;WAIhC,oBAAoB,CAAC,UAAU,EAAE,MAAM;IAIrD,OAAO,CAAC,MAAM,CAAC,YAAY;CAM5B"}