@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,230 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { DataSourcesInfo, IOperationResult } from '../types';
5
+ /**
6
+ * Base interface for operation context
7
+ */
8
+ export interface IOperationContext {
9
+ isExecuteAsync?: boolean;
10
+ clientConfig?: IClientConfig;
11
+ operationName?: string;
12
+ correlationId?: string;
13
+ timestamp?: Date;
14
+ responseInfo?: Record<string, IApiResponseInfo>;
15
+ batchId?: string;
16
+ datasetName?: string;
17
+ isDataVerseOperation?: boolean;
18
+ }
19
+ export interface IApiResponseInfo {
20
+ type?: string | null;
21
+ format?: string | null;
22
+ }
23
+ /**
24
+ * Base interface for client configuration
25
+ */
26
+ export interface IClientConfig {
27
+ baseUrl?: string;
28
+ timeout?: number;
29
+ retryAttempts?: number;
30
+ }
31
+ /**
32
+ * Interface for HTTP request configuration
33
+ */
34
+ export interface IHttpRequestConfig {
35
+ url: string;
36
+ method: HttpMethod;
37
+ apiId: string;
38
+ tableName: string;
39
+ headers?: {
40
+ [key: string]: string;
41
+ };
42
+ body?: string;
43
+ }
44
+ /**
45
+ * Interface for HTTP request headers
46
+ */
47
+ export interface IHttpHeaders {
48
+ Accept: string;
49
+ 'x-ms-protocol-semantics': string;
50
+ ServiceNamespace: string;
51
+ Authorization: string;
52
+ 'x-ms-pa-client-custom-headers-options': string;
53
+ 'x-ms-enable-selects': string;
54
+ 'x-ms-pa-client-telemetry-options': string;
55
+ 'x-ms-pa-client-telemetry-additional-data': string;
56
+ BatchInfo?: string;
57
+ }
58
+ /**
59
+ * HTTP methods supported by the client
60
+ */
61
+ export declare enum HttpMethod {
62
+ GET = "GET",
63
+ POST = "POST",
64
+ PUT = "PUT",
65
+ DELETE = "DELETE",
66
+ PATCH = "PATCH"
67
+ }
68
+ /**
69
+ * Interface for OData response format
70
+ * @template T The type of data in the response
71
+ */
72
+ export interface ODataResponse<T> {
73
+ '@odata.context'?: string;
74
+ value: T;
75
+ }
76
+ /**
77
+ * Interface for metadata operation configuration
78
+ */
79
+ export interface IMetadataOperationConfig {
80
+ service: string;
81
+ action: string;
82
+ params?: unknown[];
83
+ }
84
+ /**
85
+ * Interface for operation execution result
86
+ */
87
+ export type OperationExecutionResponse = [Record<string, object>, ArrayBuffer];
88
+ /**
89
+ * Type alias for possible response data formats
90
+ */
91
+ export type ResponseData = Record<string, unknown> | ArrayBuffer;
92
+ /**
93
+ * Type alias for request body in data operations
94
+ */
95
+ export type RequestBody = Record<string, unknown>;
96
+ /**
97
+ * Interface for API definition details
98
+ */
99
+ export interface IApiDefinition {
100
+ path: string;
101
+ method: string;
102
+ parameters: Array<{
103
+ name: string;
104
+ in: string;
105
+ required: boolean;
106
+ type: string;
107
+ }>;
108
+ }
109
+ /**
110
+ * Interface for connection API details
111
+ */
112
+ export interface IConnectionApi {
113
+ path: string;
114
+ method?: string;
115
+ parameters?: string[];
116
+ }
117
+ /**
118
+ * Interface for connection reference details
119
+ */
120
+ export interface IConnectionReference {
121
+ apiId?: string;
122
+ connectionName?: string;
123
+ datasetName?: string;
124
+ datasetNameOverride?: string;
125
+ isShareableConnection?: string;
126
+ runtimePolicyName?: string;
127
+ runtimeUrl?: string;
128
+ }
129
+ /**
130
+ * Interface for table schema information
131
+ */
132
+ export interface ITableSchema {
133
+ name: string;
134
+ displayName?: string;
135
+ fields: Record<string, IFieldSchema>;
136
+ }
137
+ /**
138
+ * Interface for field schema information
139
+ */
140
+ export interface IFieldSchema {
141
+ name: string;
142
+ type: string;
143
+ required?: boolean;
144
+ maxLength?: number;
145
+ defaultValue?: unknown;
146
+ }
147
+ /**
148
+ * Interface for Dataverse-specific requests
149
+ */
150
+ export interface IDataverseRequest {
151
+ /** HTTP method for the request */
152
+ method: string;
153
+ /** Request path */
154
+ path: string;
155
+ /** Optional request headers */
156
+ headers?: Record<string, string>;
157
+ /** Optional request body */
158
+ body?: unknown;
159
+ }
160
+ /**
161
+ * Supported data source types in the PowerDataRuntime
162
+ */
163
+ export declare enum DataSources {
164
+ /** Dataverse data source */
165
+ Dataverse = "Dataverse",
166
+ /** Generic connector data source */
167
+ Connector = "Connector"
168
+ }
169
+ /**
170
+ * Interface for metadata operations
171
+ */
172
+ export interface IMetadataOperations {
173
+ /**
174
+ * Gets available connections
175
+ */
176
+ getConnections(context?: IOperationContext): Promise<IOperationResult<IConnectionReference[]>>;
177
+ /**
178
+ * Gets APIs available for a connection
179
+ */
180
+ getConnectionApis(connectionId: string, context?: IOperationContext): Promise<IOperationResult<IConnectionApi[]>>;
181
+ }
182
+ /**
183
+ * Interface for runtime client provider
184
+ */
185
+ export interface IRuntimeClientProvider {
186
+ getDataClientAsync(config?: IClientConfig): Promise<IRuntimeDataClient>;
187
+ getMetadataClientAsync(config?: IClientConfig): Promise<IRuntimeMetadataClient>;
188
+ }
189
+ /**
190
+ * Interface for runtime data client
191
+ */
192
+ export interface IRuntimeDataClient {
193
+ createDataAsync<TRequest, TResponse>(url: string, connectionApi: string, serviceNamespace: string, body: TRequest, context?: IOperationContext): Promise<IOperationResult<TResponse>>;
194
+ updateDataAsync<TRequest, TResponse>(url: string, connectionApi: string, serviceNamespace: string, body: TRequest, context?: IOperationContext): Promise<IOperationResult<TResponse>>;
195
+ deleteDataAsync(url: string, connectionApi: string, serviceNamespace: string, context?: IOperationContext): Promise<IOperationResult<void>>;
196
+ retrieveDataAsync<TResponse>(url: string, connectionApi: string, serviceNamespace: string, method: HttpMethod, headers?: {
197
+ [key: string]: string;
198
+ }, body?: unknown, context?: IOperationContext): Promise<IOperationResult<TResponse>>;
199
+ }
200
+ /**
201
+ * Interface for runtime metadata client
202
+ */
203
+ export interface IRuntimeMetadataClient {
204
+ getAppConnectionConfigsAsync(context?: IOperationContext): Promise<IOperationResult<IConnectionReference>>;
205
+ getAppDataSourceConfigsAsync(context?: IOperationContext): Promise<IOperationResult<IConnectionApi>>;
206
+ }
207
+ /**
208
+ * Interface for PowerDataSourcesInfoProvider
209
+ */
210
+ export interface IPowerDataSourcesInfoProvider {
211
+ getDataSourcesInfo(): Promise<DataSourcesInfo>;
212
+ }
213
+ /**
214
+ * Interface defining the XRM context shape
215
+ */
216
+ export interface IXrmContext {
217
+ context: {
218
+ getClientUrl(): string;
219
+ getVersion(): string;
220
+ };
221
+ WebApi: {
222
+ createRecord<TRequest, TResponse>(entityLogicalName: string, data: TRequest): Promise<TResponse>;
223
+ updateRecord<TRequest, TResponse>(entityLogicalName: string, id: string, data: Partial<TRequest>): Promise<TResponse>;
224
+ deleteRecord(entityLogicalName: string, id: string): Promise<void>;
225
+ retrieveRecord<TResponse>(entityLogicalName: string, id: string, options?: string): Promise<TResponse>;
226
+ retrieveMultipleRecords<TResponse>(entityLogicalName: string, options?: string, maxPageSize?: number): Promise<TResponse>;
227
+ execute<TRequest, TResponse>(request: TRequest): Promise<TResponse>;
228
+ };
229
+ }
230
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/internal/data/core/common/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ /**
5
+ * HTTP methods supported by the client
6
+ */
7
+ export var HttpMethod;
8
+ (function (HttpMethod) {
9
+ HttpMethod["GET"] = "GET";
10
+ HttpMethod["POST"] = "POST";
11
+ HttpMethod["PUT"] = "PUT";
12
+ HttpMethod["DELETE"] = "DELETE";
13
+ HttpMethod["PATCH"] = "PATCH";
14
+ })(HttpMethod || (HttpMethod = {}));
15
+ /**
16
+ * Supported data source types in the PowerDataRuntime
17
+ */
18
+ export var DataSources;
19
+ (function (DataSources) {
20
+ /** Dataverse data source */
21
+ DataSources["Dataverse"] = "Dataverse";
22
+ /** Generic connector data source */
23
+ DataSources["Connector"] = "Connector";
24
+ })(DataSources || (DataSources = {}));
25
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/internal/data/core/common/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AA2EH;;GAEG;AACH,MAAM,CAAN,IAAY,UAMX;AAND,WAAY,UAAU;IACpB,yBAAW,CAAA;IACX,2BAAa,CAAA;IACb,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,6BAAe,CAAA;AACjB,CAAC,EANW,UAAU,KAAV,UAAU,QAMrB;AAqHD;;GAEG;AACH,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,4BAA4B;IAC5B,sCAAuB,CAAA;IACvB,oCAAoC;IACpC,sCAAuB,CAAA;AACzB,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB"}
@@ -0,0 +1,19 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ export declare function arrayBufferToBase64(buffer: ArrayBuffer): string;
5
+ export declare function convertArrayBufferToString(buf: ArrayBuffer): string;
6
+ /**
7
+ * Strict encode: encodeURIComponent, but also encode ( and )
8
+ */
9
+ export declare function strictEncode(str: string): string;
10
+ /**
11
+ * Extracts the Dataverse base URL and encoded path from a full Dataverse API URL.
12
+ * @param url - The full Dataverse API URL (should contain /api/data/v9.0/)
13
+ * @returns An object with baseUrl (up to /api/data/v9.0) and encodedPath (strict encoded path after /api/data/v9.0/)
14
+ */
15
+ export declare function extractDataverseUrlParts(url: string): {
16
+ baseUrl: string;
17
+ encodedPath: string;
18
+ };
19
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/internal/data/core/common/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAE/D;AAOD,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAWnE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAO9F"}
@@ -0,0 +1,47 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ /*
5
+ * Converts an ArrayBuffer to a Base64 string
6
+ * @param buffer - The ArrayBuffer to convert
7
+ * @return The Base64 encoded string
8
+ */
9
+ export function arrayBufferToBase64(buffer) {
10
+ return window.btoa(convertArrayBufferToString(buffer));
11
+ }
12
+ /*
13
+ * Converts an ArrayBuffer to a string
14
+ * @param buf - The ArrayBuffer to convert
15
+ * @return The converted string
16
+ */
17
+ export function convertArrayBufferToString(buf) {
18
+ // String.fromCharCode range max is 65535
19
+ if (buf.byteLength <= 65535) {
20
+ return String.fromCharCode(...new Uint8Array(buf));
21
+ }
22
+ let binary = '';
23
+ for (let i = 0, bytes = new Uint8Array(buf); i < bytes.byteLength; i++) {
24
+ binary += String.fromCharCode(bytes[i]);
25
+ }
26
+ return binary;
27
+ }
28
+ /**
29
+ * Strict encode: encodeURIComponent, but also encode ( and )
30
+ */
31
+ export function strictEncode(str) {
32
+ return encodeURIComponent(str).replace(/\(/g, '%28').replace(/\)/g, '%29');
33
+ }
34
+ /**
35
+ * Extracts the Dataverse base URL and encoded path from a full Dataverse API URL.
36
+ * @param url - The full Dataverse API URL (should contain /api/data/v9.0/)
37
+ * @returns An object with baseUrl (up to /api/data/v9.0) and encodedPath (strict encoded path after /api/data/v9.0/)
38
+ */
39
+ export function extractDataverseUrlParts(url) {
40
+ const baseUrlMatch = url.match(/^(https?:\/\/[^/]+\/api\/data\/v9\.0)/);
41
+ const baseUrl = baseUrlMatch ? baseUrlMatch[1] : '';
42
+ // Extract and encode the path after /api/data/v9.0/
43
+ const pathMatch = url.match(/\/api\/data\/v9\.0\/(.+)$/);
44
+ const encodedPath = pathMatch ? strictEncode(pathMatch[1]) : '';
45
+ return { baseUrl, encodedPath };
46
+ }
47
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/internal/data/core/common/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACrD,OAAO,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC;AACzD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CAAC,GAAgB;IACzD,yCAAyC;IACzC,IAAI,GAAG,CAAC,UAAU,IAAI,KAAK,EAAE;QAC3B,OAAO,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;KACpD;IAED,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE;QACtE,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;KACzC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,GAAW;IACtC,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAC7E,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CAAC,GAAW;IAClD,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpD,oDAAoD;IACpD,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AAClC,CAAC"}
@@ -0,0 +1,93 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import type { IDataOperation, IDataOperationOrchestrator, IOperationOptions, IOperationResult } from '../types';
5
+ import { DataverseDataOperationExecutor } from './executors/dataverseDataOperationExecutor';
6
+ import { ConnectorDataOperationExecutor } from './executors/connectorDataOperationExecutor';
7
+ import { RuntimeDataSourceService } from '../metadata/runtimeDataSourceService';
8
+ /**
9
+ * RuntimeDataOperations provides a unified interface for performing data operations
10
+ * across different data sources.
11
+ */
12
+ export declare class DefaultDataOperationOrchestrator implements IDataOperationOrchestrator {
13
+ private readonly _dataverseOperation;
14
+ private readonly _connectorOperation;
15
+ private readonly _connectionsService;
16
+ constructor(_dataverseOperation: DataverseDataOperationExecutor, _connectorOperation: ConnectorDataOperationExecutor, _connectionsService: RuntimeDataSourceService);
17
+ /**
18
+ * Creates a new record in the specified data source.
19
+ * @param tableName - The name of the table.
20
+ * @param data - The record data to create.
21
+ * @returns A promise that resolves to the operation result.
22
+ * @throws DataOperationError if the operation fails.
23
+ */
24
+ createRecordAsync<TRequest, TResponse>(tableName: string, data: TRequest): Promise<IOperationResult<TResponse>>;
25
+ /**
26
+ * Updates an existing record in the specified data source.
27
+ * @param tableName - The name of the table.
28
+ * @param id - The ID of the record to update.
29
+ * @param data - The updated record data.
30
+ * @returns A promise that resolves to the operation result.
31
+ * @throws DataOperationError if the operation fails.
32
+ */
33
+ updateRecordAsync<TRequest, TResponse>(tableName: string, id: string, data: TRequest): Promise<IOperationResult<TResponse>>;
34
+ /**
35
+ * Deletes a record from the specified data source.
36
+ * @param tableName - The name of the table.
37
+ * @param id - The ID of the record to delete.
38
+ * @returns A promise that resolves to the operation result.
39
+ * @throws DataOperationError if the operation fails.
40
+ */
41
+ deleteRecordAsync(tableName: string, id: string): Promise<IOperationResult<void>>;
42
+ /**
43
+ * Retrieves a record from the specified data source.
44
+ * @param tableName - The name of the table.
45
+ * @param id - The ID of the record to retrieve.
46
+ * @param options - Optional operation options.
47
+ * @returns A promise that resolves to the operation result.
48
+ * @throws DataOperationError if the operation fails.
49
+ */
50
+ retrieveRecordAsync<TResponse>(tableName: string, id: string, options?: IOperationOptions): Promise<IOperationResult<TResponse>>;
51
+ /**
52
+ * Retrieves multiple records from the specified data source.
53
+ * @param tableName - The name of the table.
54
+ * @param options - Optional operation options.
55
+ * @returns A promise that resolves to the operation result.
56
+ * @throws DataOperationError if the operation fails.
57
+ */
58
+ retrieveMultipleRecordsAsync<TResponse>(tableName: string, options?: IOperationOptions): Promise<IOperationResult<TResponse[]>>;
59
+ /**
60
+ * Executes a data operation on the specified data source.
61
+ * @param operation - The operation to execute
62
+ * @returns A promise that resolves to the operation result.
63
+ * @throws DataOperationError if the operation fails.
64
+ */
65
+ executeAsync<TRequest, TResponse>(operation: IDataOperation<TRequest>): Promise<IOperationResult<TResponse>>;
66
+ /**
67
+ * Retrieves the appropriate executor based on the data source.
68
+ * @param dataSource - The data source to retrieve the executor for.
69
+ * @returns The corresponding executor instance.
70
+ * @throws DataOperationError if the data source is invalid.
71
+ * // TODO: Add Dataverse support
72
+ */
73
+ private _getExecutor;
74
+ /**
75
+ * Validates the input parameters for data operations.
76
+ * @param params - The parameters to validate.
77
+ * @throws DataOperationError if validation fails.
78
+ */
79
+ private _validateParams;
80
+ /**
81
+ * Converts operation options to a query string format.
82
+ * @param options - The operation options to convert.
83
+ * @returns The formatted query string.
84
+ */
85
+ private _convertOptionsToString;
86
+ /**
87
+ * Validates the operation options.
88
+ * @param options - The operation options to validate.
89
+ * @throws Error if validation fails.
90
+ */
91
+ private _validateOptions;
92
+ }
93
+ //# sourceMappingURL=defaultOperationOrchestrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultOperationOrchestrator.d.ts","sourceRoot":"","sources":["../../../../../src/internal/data/core/data/defaultOperationOrchestrator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,cAAc,EAEd,0BAA0B,EAC1B,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,8BAA8B,EAAE,MAAM,4CAA4C,CAAC;AAC5F,OAAO,EAAE,8BAA8B,EAAE,MAAM,4CAA4C,CAAC;AAE5F,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAGhF;;;GAGG;AACH,qBAAa,gCAAiC,YAAW,0BAA0B;IAI/E,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;gBAFnB,mBAAmB,EAAE,8BAA8B,EACnD,mBAAmB,EAAE,8BAA8B,EACnD,mBAAmB,EAAE,wBAAwB;IAGhE;;;;;;OAMG;IACU,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAChD,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,QAAQ,GACb,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAUvC;;;;;;;OAOG;IACU,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAChD,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,QAAQ,GACb,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAUvC;;;;;;OAMG;IACU,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAU9F;;;;;;;OAOG;IACU,mBAAmB,CAAC,SAAS,EACxC,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAgBvC;;;;;;OAMG;IACU,4BAA4B,CAAC,SAAS,EACjD,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC;IAezC;;;;;OAKG;IACU,YAAY,CAAC,QAAQ,EAAE,SAAS,EAC3C,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,GAClC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAavC;;;;;;OAMG;YACW,YAAY;IAoB1B;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAQvB;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;IAkD/B;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;CA6DzB"}