@microsoft/agents-hosting-dialogs 0.1.49

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 (325) hide show
  1. package/dist/index.js +20 -0
  2. package/dist/src/agentComponent.d.ts +18 -0
  3. package/dist/src/agentComponent.js +55 -0
  4. package/dist/src/agentComponent.js.map +1 -0
  5. package/dist/src/agentStateSet.d.ts +48 -0
  6. package/dist/src/agentStateSet.js +66 -0
  7. package/dist/src/agentStateSet.js.map +1 -0
  8. package/dist/src/choices/choice.d.ts +14 -0
  9. package/dist/src/choices/choice.js +7 -0
  10. package/dist/src/choices/choice.js.map +1 -0
  11. package/dist/src/choices/choiceFactory.d.ts +81 -0
  12. package/dist/src/choices/choiceFactory.js +133 -0
  13. package/dist/src/choices/choiceFactory.js.map +1 -0
  14. package/dist/src/choices/findChoices.d.ts +28 -0
  15. package/dist/src/choices/findChoices.js +46 -0
  16. package/dist/src/choices/findChoices.js.map +1 -0
  17. package/dist/src/choices/findValues.d.ts +36 -0
  18. package/dist/src/choices/findValues.js +129 -0
  19. package/dist/src/choices/findValues.js.map +1 -0
  20. package/dist/src/choices/index.d.ts +11 -0
  21. package/dist/src/choices/index.js +28 -0
  22. package/dist/src/choices/index.js.map +1 -0
  23. package/dist/src/choices/modelResult.d.ts +11 -0
  24. package/dist/src/choices/modelResult.js +3 -0
  25. package/dist/src/choices/modelResult.js.map +1 -0
  26. package/dist/src/choices/recognizeChoices.d.ts +16 -0
  27. package/dist/src/choices/recognizeChoices.js +81 -0
  28. package/dist/src/choices/recognizeChoices.js.map +1 -0
  29. package/dist/src/choices/tokenizer.d.ts +25 -0
  30. package/dist/src/choices/tokenizer.js +73 -0
  31. package/dist/src/choices/tokenizer.js.map +1 -0
  32. package/dist/src/componentDialog.d.ts +178 -0
  33. package/dist/src/componentDialog.js +252 -0
  34. package/dist/src/componentDialog.js.map +1 -0
  35. package/dist/src/componentRegistration.d.ts +22 -0
  36. package/dist/src/componentRegistration.js +32 -0
  37. package/dist/src/componentRegistration.js.map +1 -0
  38. package/dist/src/configurable.d.ts +22 -0
  39. package/dist/src/configurable.js +60 -0
  40. package/dist/src/configurable.js.map +1 -0
  41. package/dist/src/configuration.d.ts +11 -0
  42. package/dist/src/configuration.js +17 -0
  43. package/dist/src/configuration.js.map +1 -0
  44. package/dist/src/converter.d.ts +13 -0
  45. package/dist/src/converter.js +7 -0
  46. package/dist/src/converter.js.map +1 -0
  47. package/dist/src/dialog.d.ts +184 -0
  48. package/dist/src/dialog.js +201 -0
  49. package/dist/src/dialog.js.map +1 -0
  50. package/dist/src/dialogContainer.d.ts +61 -0
  51. package/dist/src/dialogContainer.js +82 -0
  52. package/dist/src/dialogContainer.js.map +1 -0
  53. package/dist/src/dialogContext.d.ts +272 -0
  54. package/dist/src/dialogContext.js +444 -0
  55. package/dist/src/dialogContext.js.map +1 -0
  56. package/dist/src/dialogContextError.d.ts +27 -0
  57. package/dist/src/dialogContextError.js +39 -0
  58. package/dist/src/dialogContextError.js.map +1 -0
  59. package/dist/src/dialogEvent.d.ts +20 -0
  60. package/dist/src/dialogEvent.js +3 -0
  61. package/dist/src/dialogEvent.js.map +1 -0
  62. package/dist/src/dialogEvents.d.ts +15 -0
  63. package/dist/src/dialogEvents.js +20 -0
  64. package/dist/src/dialogEvents.js.map +1 -0
  65. package/dist/src/dialogHelper.d.ts +32 -0
  66. package/dist/src/dialogHelper.js +116 -0
  67. package/dist/src/dialogHelper.js.map +1 -0
  68. package/dist/src/dialogInstance.d.ts +30 -0
  69. package/dist/src/dialogInstance.js +3 -0
  70. package/dist/src/dialogInstance.js.map +1 -0
  71. package/dist/src/dialogManager.d.ts +73 -0
  72. package/dist/src/dialogManager.js +156 -0
  73. package/dist/src/dialogManager.js.map +1 -0
  74. package/dist/src/dialogReason.d.ts +35 -0
  75. package/dist/src/dialogReason.js +40 -0
  76. package/dist/src/dialogReason.js.map +1 -0
  77. package/dist/src/dialogSet.d.ts +85 -0
  78. package/dist/src/dialogSet.js +138 -0
  79. package/dist/src/dialogSet.js.map +1 -0
  80. package/dist/src/dialogTurnResult.d.ts +34 -0
  81. package/dist/src/dialogTurnResult.js +3 -0
  82. package/dist/src/dialogTurnResult.js.map +1 -0
  83. package/dist/src/dialogTurnStateConstants.d.ts +12 -0
  84. package/dist/src/dialogTurnStateConstants.js +17 -0
  85. package/dist/src/dialogTurnStateConstants.js.map +1 -0
  86. package/dist/src/dialogTurnStatus.d.ts +34 -0
  87. package/dist/src/dialogTurnStatus.js +39 -0
  88. package/dist/src/dialogTurnStatus.js.map +1 -0
  89. package/dist/src/dialogsAgentComponent.d.ts +17 -0
  90. package/dist/src/dialogsAgentComponent.js +65 -0
  91. package/dist/src/dialogsAgentComponent.js.map +1 -0
  92. package/dist/src/dialogsComponentRegistration.d.ts +28 -0
  93. package/dist/src/dialogsComponentRegistration.js +45 -0
  94. package/dist/src/dialogsComponentRegistration.js.map +1 -0
  95. package/dist/src/i18n.d.ts +15 -0
  96. package/dist/src/i18n.js +28 -0
  97. package/dist/src/i18n.js.map +1 -0
  98. package/dist/src/index.d.ts +29 -0
  99. package/dist/src/index.js +48 -0
  100. package/dist/src/index.js.map +1 -0
  101. package/dist/src/intentScore.d.ts +11 -0
  102. package/dist/src/intentScore.js +3 -0
  103. package/dist/src/intentScore.js.map +1 -0
  104. package/dist/src/memory/componentMemoryScopes.d.ts +18 -0
  105. package/dist/src/memory/componentMemoryScopes.js +54 -0
  106. package/dist/src/memory/componentMemoryScopes.js.map +1 -0
  107. package/dist/src/memory/componentPathResolvers.d.ts +18 -0
  108. package/dist/src/memory/componentPathResolvers.js +52 -0
  109. package/dist/src/memory/componentPathResolvers.js.map +1 -0
  110. package/dist/src/memory/dialogPath.d.ts +17 -0
  111. package/dist/src/memory/dialogPath.js +30 -0
  112. package/dist/src/memory/dialogPath.js.map +1 -0
  113. package/dist/src/memory/dialogStateManager.d.ts +156 -0
  114. package/dist/src/memory/dialogStateManager.js +598 -0
  115. package/dist/src/memory/dialogStateManager.js.map +1 -0
  116. package/dist/src/memory/index.d.ts +12 -0
  117. package/dist/src/memory/index.js +29 -0
  118. package/dist/src/memory/index.js.map +1 -0
  119. package/dist/src/memory/pathResolvers/aliasPathResolver.d.ts +25 -0
  120. package/dist/src/memory/pathResolvers/aliasPathResolver.js +37 -0
  121. package/dist/src/memory/pathResolvers/aliasPathResolver.js.map +1 -0
  122. package/dist/src/memory/pathResolvers/atAtPathResolver.d.ts +11 -0
  123. package/dist/src/memory/pathResolvers/atAtPathResolver.js +18 -0
  124. package/dist/src/memory/pathResolvers/atAtPathResolver.js.map +1 -0
  125. package/dist/src/memory/pathResolvers/atPathResolver.d.ts +20 -0
  126. package/dist/src/memory/pathResolvers/atPathResolver.js +46 -0
  127. package/dist/src/memory/pathResolvers/atPathResolver.js.map +1 -0
  128. package/dist/src/memory/pathResolvers/dollarPathResolver.d.ts +11 -0
  129. package/dist/src/memory/pathResolvers/dollarPathResolver.js +18 -0
  130. package/dist/src/memory/pathResolvers/dollarPathResolver.js.map +1 -0
  131. package/dist/src/memory/pathResolvers/hashPathResolver.d.ts +11 -0
  132. package/dist/src/memory/pathResolvers/hashPathResolver.js +18 -0
  133. package/dist/src/memory/pathResolvers/hashPathResolver.js.map +1 -0
  134. package/dist/src/memory/pathResolvers/index.d.ts +11 -0
  135. package/dist/src/memory/pathResolvers/index.js +28 -0
  136. package/dist/src/memory/pathResolvers/index.js.map +1 -0
  137. package/dist/src/memory/pathResolvers/pathResolver.d.ts +13 -0
  138. package/dist/src/memory/pathResolvers/pathResolver.js +7 -0
  139. package/dist/src/memory/pathResolvers/pathResolver.js.map +1 -0
  140. package/dist/src/memory/pathResolvers/percentPathResolver.d.ts +11 -0
  141. package/dist/src/memory/pathResolvers/percentPathResolver.js +18 -0
  142. package/dist/src/memory/pathResolvers/percentPathResolver.js.map +1 -0
  143. package/dist/src/memory/scopePath.d.ts +18 -0
  144. package/dist/src/memory/scopePath.js +23 -0
  145. package/dist/src/memory/scopePath.js.map +1 -0
  146. package/dist/src/memory/scopes/agentStateMemoryScope.d.ts +53 -0
  147. package/dist/src/memory/scopes/agentStateMemoryScope.js +82 -0
  148. package/dist/src/memory/scopes/agentStateMemoryScope.js.map +1 -0
  149. package/dist/src/memory/scopes/classMemoryScope.d.ts +29 -0
  150. package/dist/src/memory/scopes/classMemoryScope.js +65 -0
  151. package/dist/src/memory/scopes/classMemoryScope.js.map +1 -0
  152. package/dist/src/memory/scopes/conversationMemoryScope.d.ts +15 -0
  153. package/dist/src/memory/scopes/conversationMemoryScope.js +23 -0
  154. package/dist/src/memory/scopes/conversationMemoryScope.js.map +1 -0
  155. package/dist/src/memory/scopes/dialogClassMemoryScope.d.ts +19 -0
  156. package/dist/src/memory/scopes/dialogClassMemoryScope.js +42 -0
  157. package/dist/src/memory/scopes/dialogClassMemoryScope.js.map +1 -0
  158. package/dist/src/memory/scopes/dialogContextMemoryScope.d.ts +19 -0
  159. package/dist/src/memory/scopes/dialogContextMemoryScope.js +48 -0
  160. package/dist/src/memory/scopes/dialogContextMemoryScope.js.map +1 -0
  161. package/dist/src/memory/scopes/dialogMemoryScope.d.ts +32 -0
  162. package/dist/src/memory/scopes/dialogMemoryScope.js +74 -0
  163. package/dist/src/memory/scopes/dialogMemoryScope.js.map +1 -0
  164. package/dist/src/memory/scopes/index.d.ts +15 -0
  165. package/dist/src/memory/scopes/index.js +32 -0
  166. package/dist/src/memory/scopes/index.js.map +1 -0
  167. package/dist/src/memory/scopes/memoryScope.d.ts +52 -0
  168. package/dist/src/memory/scopes/memoryScope.js +54 -0
  169. package/dist/src/memory/scopes/memoryScope.js.map +1 -0
  170. package/dist/src/memory/scopes/settingsMemoryScope.d.ts +68 -0
  171. package/dist/src/memory/scopes/settingsMemoryScope.js +216 -0
  172. package/dist/src/memory/scopes/settingsMemoryScope.js.map +1 -0
  173. package/dist/src/memory/scopes/thisMemoryScope.d.ts +26 -0
  174. package/dist/src/memory/scopes/thisMemoryScope.js +43 -0
  175. package/dist/src/memory/scopes/thisMemoryScope.js.map +1 -0
  176. package/dist/src/memory/scopes/turnMemoryScope.d.ts +29 -0
  177. package/dist/src/memory/scopes/turnMemoryScope.js +52 -0
  178. package/dist/src/memory/scopes/turnMemoryScope.js.map +1 -0
  179. package/dist/src/memory/scopes/userMemoryScope.d.ts +15 -0
  180. package/dist/src/memory/scopes/userMemoryScope.js +23 -0
  181. package/dist/src/memory/scopes/userMemoryScope.js.map +1 -0
  182. package/dist/src/memory/turnPath.d.ts +21 -0
  183. package/dist/src/memory/turnPath.js +38 -0
  184. package/dist/src/memory/turnPath.js.map +1 -0
  185. package/dist/src/prompts/activityPrompt.d.ts +101 -0
  186. package/dist/src/prompts/activityPrompt.js +166 -0
  187. package/dist/src/prompts/activityPrompt.js.map +1 -0
  188. package/dist/src/prompts/attachmentPrompt.d.ts +37 -0
  189. package/dist/src/prompts/attachmentPrompt.js +55 -0
  190. package/dist/src/prompts/attachmentPrompt.js.map +1 -0
  191. package/dist/src/prompts/choicePrompt.d.ts +83 -0
  192. package/dist/src/prompts/choicePrompt.js +116 -0
  193. package/dist/src/prompts/choicePrompt.js.map +1 -0
  194. package/dist/src/prompts/confirmPrompt.d.ts +82 -0
  195. package/dist/src/prompts/confirmPrompt.js +163 -0
  196. package/dist/src/prompts/confirmPrompt.js.map +1 -0
  197. package/dist/src/prompts/datetimePrompt.d.ts +65 -0
  198. package/dist/src/prompts/datetimePrompt.js +109 -0
  199. package/dist/src/prompts/datetimePrompt.js.map +1 -0
  200. package/dist/src/prompts/index.d.ts +13 -0
  201. package/dist/src/prompts/index.js +30 -0
  202. package/dist/src/prompts/index.js.map +1 -0
  203. package/dist/src/prompts/numberPrompt.d.ts +55 -0
  204. package/dist/src/prompts/numberPrompt.js +134 -0
  205. package/dist/src/prompts/numberPrompt.js.map +1 -0
  206. package/dist/src/prompts/prompt.d.ts +256 -0
  207. package/dist/src/prompts/prompt.js +260 -0
  208. package/dist/src/prompts/prompt.js.map +1 -0
  209. package/dist/src/prompts/promptCultureModels.d.ts +72 -0
  210. package/dist/src/prompts/promptCultureModels.js +123 -0
  211. package/dist/src/prompts/promptCultureModels.js.map +1 -0
  212. package/dist/src/prompts/textPrompt.d.ts +54 -0
  213. package/dist/src/prompts/textPrompt.js +72 -0
  214. package/dist/src/prompts/textPrompt.js.map +1 -0
  215. package/dist/src/recognizer.d.ts +43 -0
  216. package/dist/src/recognizer.js +104 -0
  217. package/dist/src/recognizer.js.map +1 -0
  218. package/dist/src/recognizerResult.d.ts +19 -0
  219. package/dist/src/recognizerResult.js +24 -0
  220. package/dist/src/recognizerResult.js.map +1 -0
  221. package/dist/src/serviceCollection.d.ts +112 -0
  222. package/dist/src/serviceCollection.js +209 -0
  223. package/dist/src/serviceCollection.js.map +1 -0
  224. package/dist/src/stringUtils.d.ts +36 -0
  225. package/dist/src/stringUtils.js +62 -0
  226. package/dist/src/stringUtils.js.map +1 -0
  227. package/dist/src/template.d.ts +18 -0
  228. package/dist/src/template.js +7 -0
  229. package/dist/src/template.js.map +1 -0
  230. package/dist/src/waterfallDialog.d.ts +101 -0
  231. package/dist/src/waterfallDialog.js +179 -0
  232. package/dist/src/waterfallDialog.js.map +1 -0
  233. package/dist/src/waterfallStepContext.d.ts +71 -0
  234. package/dist/src/waterfallStepContext.js +78 -0
  235. package/dist/src/waterfallStepContext.js.map +1 -0
  236. package/package.json +49 -0
  237. package/src/agentComponent.ts +23 -0
  238. package/src/agentStateSet.ts +75 -0
  239. package/src/choices/choice.ts +16 -0
  240. package/src/choices/choiceFactory.ts +189 -0
  241. package/src/choices/findChoices.ts +70 -0
  242. package/src/choices/findValues.ts +179 -0
  243. package/src/choices/index.ts +11 -0
  244. package/src/choices/modelResult.ts +11 -0
  245. package/src/choices/recognizeChoices.ts +94 -0
  246. package/src/choices/tokenizer.ts +93 -0
  247. package/src/componentDialog.ts +306 -0
  248. package/src/componentRegistration.ts +30 -0
  249. package/src/configurable.ts +55 -0
  250. package/src/configuration.ts +22 -0
  251. package/src/converter.ts +15 -0
  252. package/src/dialog.ts +243 -0
  253. package/src/dialogContainer.ts +90 -0
  254. package/src/dialogContext.ts +607 -0
  255. package/src/dialogContextError.ts +50 -0
  256. package/src/dialogEvent.ts +23 -0
  257. package/src/dialogEvents.ts +16 -0
  258. package/src/dialogHelper.ts +154 -0
  259. package/src/dialogInstance.ts +32 -0
  260. package/src/dialogManager.ts +202 -0
  261. package/src/dialogReason.ts +40 -0
  262. package/src/dialogSet.ts +168 -0
  263. package/src/dialogTurnResult.ts +37 -0
  264. package/src/dialogTurnStateConstants.ts +13 -0
  265. package/src/dialogTurnStatus.ts +38 -0
  266. package/src/dialogsAgentComponent.ts +71 -0
  267. package/src/dialogsComponentRegistration.ts +49 -0
  268. package/src/i18n.ts +17 -0
  269. package/src/index.ts +31 -0
  270. package/src/intentScore.ts +11 -0
  271. package/src/memory/componentMemoryScopes.ts +28 -0
  272. package/src/memory/componentPathResolvers.ts +29 -0
  273. package/src/memory/dialogPath.ts +33 -0
  274. package/src/memory/dialogStateManager.ts +661 -0
  275. package/src/memory/index.ts +12 -0
  276. package/src/memory/pathResolvers/aliasPathResolver.ts +44 -0
  277. package/src/memory/pathResolvers/atAtPathResolver.ts +14 -0
  278. package/src/memory/pathResolvers/atPathResolver.ts +45 -0
  279. package/src/memory/pathResolvers/dollarPathResolver.ts +14 -0
  280. package/src/memory/pathResolvers/hashPathResolver.ts +14 -0
  281. package/src/memory/pathResolvers/index.ts +11 -0
  282. package/src/memory/pathResolvers/pathResolver.ts +14 -0
  283. package/src/memory/pathResolvers/percentPathResolver.ts +14 -0
  284. package/src/memory/scopePath.ts +19 -0
  285. package/src/memory/scopes/agentStateMemoryScope.ts +92 -0
  286. package/src/memory/scopes/classMemoryScope.ts +71 -0
  287. package/src/memory/scopes/conversationMemoryScope.ts +19 -0
  288. package/src/memory/scopes/dialogClassMemoryScope.ts +43 -0
  289. package/src/memory/scopes/dialogContextMemoryScope.ts +51 -0
  290. package/src/memory/scopes/dialogMemoryScope.ts +79 -0
  291. package/src/memory/scopes/index.ts +15 -0
  292. package/src/memory/scopes/memoryScope.ts +70 -0
  293. package/src/memory/scopes/settingsMemoryScope.ts +239 -0
  294. package/src/memory/scopes/thisMemoryScope.ts +44 -0
  295. package/src/memory/scopes/turnMemoryScope.ts +54 -0
  296. package/src/memory/scopes/userMemoryScope.ts +19 -0
  297. package/src/memory/turnPath.ts +45 -0
  298. package/src/prompts/activityPrompt.ts +202 -0
  299. package/src/prompts/attachmentPrompt.ts +62 -0
  300. package/src/prompts/choicePrompt.ts +176 -0
  301. package/src/prompts/confirmPrompt.ts +182 -0
  302. package/src/prompts/datetimePrompt.ts +110 -0
  303. package/src/prompts/index.ts +13 -0
  304. package/src/prompts/numberPrompt.ts +117 -0
  305. package/src/prompts/prompt.ts +459 -0
  306. package/src/prompts/promptCultureModels.ts +178 -0
  307. package/src/prompts/textPrompt.ts +82 -0
  308. package/src/recognizer.ts +127 -0
  309. package/src/recognizerResult.ts +37 -0
  310. package/src/serviceCollection.ts +305 -0
  311. package/src/stringUtils.ts +62 -0
  312. package/src/template.ts +20 -0
  313. package/src/waterfallDialog.ts +215 -0
  314. package/src/waterfallStepContext.ts +96 -0
  315. package/vendor/cldr-data/README.md +5 -0
  316. package/vendor/cldr-data/main/de/numbers.json +156 -0
  317. package/vendor/cldr-data/main/en/numbers.json +159 -0
  318. package/vendor/cldr-data/main/es/numbers.json +156 -0
  319. package/vendor/cldr-data/main/fr/numbers.json +157 -0
  320. package/vendor/cldr-data/main/ja/numbers.json +120 -0
  321. package/vendor/cldr-data/main/nl/numbers.json +156 -0
  322. package/vendor/cldr-data/main/pt/numbers.json +156 -0
  323. package/vendor/cldr-data/main/zh/numbers.json +214 -0
  324. package/vendor/cldr-data/supplemental/likelySubtags.json +1844 -0
  325. package/vendor/cldr-data/supplemental/numberingSystems.json +343 -0
@@ -0,0 +1,598 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Microsoft Corporation. All rights reserved.
4
+ * Licensed under the MIT License.
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.DialogStateManager = void 0;
8
+ const componentMemoryScopes_1 = require("./componentMemoryScopes");
9
+ const componentPathResolvers_1 = require("./componentPathResolvers");
10
+ const componentRegistration_1 = require("../componentRegistration");
11
+ const dialogPath_1 = require("./dialogPath");
12
+ const dialogsComponentRegistration_1 = require("../dialogsComponentRegistration");
13
+ const PATH_TRACKER = 'dialog._tracker.paths';
14
+ const DIALOG_STATE_MANAGER_CONFIGURATION = 'DialogStateManagerConfiguration';
15
+ /**
16
+ * The DialogStateManager manages memory scopes and path resolvers.
17
+ *
18
+ * @remarks
19
+ * MemoryScopes are named root level objects, which can exist either in the dialog context or off
20
+ * of turn state. Path resolvers allow for shortcut behavior for mapping things like
21
+ * $foo -> dialog.foo
22
+ */
23
+ class DialogStateManager {
24
+ /**
25
+ * Initializes a new instance of the DialogStateManager class.
26
+ *
27
+ * @param dc The dialog context for the current turn of the conversation.
28
+ * @param configuration Configuration for the dialog state manager.
29
+ */
30
+ constructor(dc, configuration) {
31
+ var _a, _b;
32
+ componentRegistration_1.ComponentRegistration.add(new dialogsComponentRegistration_1.DialogsComponentRegistration());
33
+ this.dialogContext = dc;
34
+ this.configuration = configuration !== null && configuration !== void 0 ? configuration : dc.context.turnState.get(DIALOG_STATE_MANAGER_CONFIGURATION);
35
+ if (!this.configuration) {
36
+ this.configuration = { memoryScopes: [], pathResolvers: [] };
37
+ // get all of the component memory scopes.
38
+ componentRegistration_1.ComponentRegistration.components
39
+ .filter((component) => (0, componentMemoryScopes_1.isComponentMemoryScopes)(component))
40
+ .forEach((component) => {
41
+ this.configuration.memoryScopes.push(...component.getMemoryScopes());
42
+ });
43
+ // merge in turn state memory scopes
44
+ const memoryScopes = (_a = dc.context.turnState.get('memoryScopes')) !== null && _a !== void 0 ? _a : [];
45
+ this.configuration.memoryScopes.push(...memoryScopes);
46
+ // get all of the component path resolvers.
47
+ componentRegistration_1.ComponentRegistration.components
48
+ .filter((component) => (0, componentPathResolvers_1.isComponentPathResolvers)(component))
49
+ .forEach((component) => {
50
+ this.configuration.pathResolvers.push(...component.getPathResolvers());
51
+ });
52
+ // merge in turn state ones path resolvers
53
+ const pathResolvers = (_b = dc.context.turnState.get('pathResolvers')) !== null && _b !== void 0 ? _b : [];
54
+ this.configuration.pathResolvers.push(...pathResolvers);
55
+ // cache for any other new dialogStateManager instances in this turn
56
+ dc.context.turnState.set(DIALOG_STATE_MANAGER_CONFIGURATION, this.configuration);
57
+ }
58
+ }
59
+ /**
60
+ * Get the value from memory using path expression.
61
+ *
62
+ * @remarks
63
+ * This always returns a CLONE of the memory, any modifications to the result will not affect memory.
64
+ * @template T The value type to return.
65
+ * @param pathExpression Path expression to use.
66
+ * @param defaultValue (Optional) default value to use if the path isn't found. May be a function that returns the default value to use.
67
+ * @returns The found value or undefined if not found and no `defaultValue` specified.
68
+ */
69
+ getValue(pathExpression, defaultValue) {
70
+ function returnDefault() {
71
+ return typeof defaultValue === 'function' ? defaultValue() : defaultValue;
72
+ }
73
+ // Get path segments
74
+ const segments = this.parsePath(this.transformPath(pathExpression));
75
+ if (segments.length < 1) {
76
+ return returnDefault();
77
+ }
78
+ // Get memory scope to search over
79
+ const scope = this.getMemoryScope(segments[0].toString());
80
+ if (scope === undefined) {
81
+ console.warn(`DialogStateManager.getValue: a scope of '${segments[0]}' wasn't found for '${pathExpression}'.`);
82
+ return returnDefault();
83
+ }
84
+ // Search over path
85
+ const memory = this.resolveSegments(scope.getMemory(this.dialogContext), segments, false);
86
+ // Return default value if nothing found
87
+ return memory !== undefined ? memory : returnDefault();
88
+ }
89
+ /**
90
+ * Set memory to value.
91
+ *
92
+ * @param pathExpression Path to memory.
93
+ * @param value Value to set.
94
+ */
95
+ setValue(pathExpression, value) {
96
+ // Get path segments
97
+ const tpath = this.transformPath(pathExpression);
98
+ const segments = this.parsePath(tpath);
99
+ if (segments.length < 1) {
100
+ throw new Error("DialogStateManager.setValue: path wasn't specified.");
101
+ }
102
+ // Track changes
103
+ this.trackChange(tpath);
104
+ // Get memory scope to update
105
+ const scope = this.getMemoryScope(segments[0].toString());
106
+ if (scope === undefined) {
107
+ throw new Error(`DialogStateManager.setValue: a scope of '${segments[0]}' wasn't found.`);
108
+ }
109
+ // Update memory
110
+ if (segments.length > 1) {
111
+ // Find value up to last key
112
+ // - Missing paths will be populated as needed
113
+ let memory = scope.getMemory(this.dialogContext);
114
+ memory = this.resolveSegments(memory, segments, true);
115
+ // Update value
116
+ let key = segments[segments.length - 1];
117
+ if (key === 'first()') {
118
+ key = 0;
119
+ }
120
+ if (typeof key === 'number' && Array.isArray(memory)) {
121
+ // Only allow positive indexes
122
+ if (key < 0) {
123
+ throw new Error(`DialogStateManager.setValue: unable to update value for '${pathExpression}'. Negative indexes aren't allowed.`);
124
+ }
125
+ // Expand array as needed and update array
126
+ const l = key + 1;
127
+ while (memory.length < l) {
128
+ memory.push(undefined);
129
+ }
130
+ memory[key] = value;
131
+ }
132
+ else if (typeof key === 'string' &&
133
+ key.length > 0 &&
134
+ typeof memory === 'object' &&
135
+ !Array.isArray(memory)) {
136
+ // Find key to use and update object
137
+ key = this.findObjectKey(memory, key) || key;
138
+ memory[key] = value;
139
+ }
140
+ else {
141
+ throw new Error(`DialogStateManager.setValue: unable to update value for '${pathExpression}'.`);
142
+ }
143
+ }
144
+ else {
145
+ // Just update memory scope
146
+ scope.setMemory(this.dialogContext, value);
147
+ }
148
+ }
149
+ /**
150
+ * Delete property from memory
151
+ *
152
+ * @param pathExpression The leaf property to remove.
153
+ */
154
+ deleteValue(pathExpression) {
155
+ // Get path segments
156
+ const tpath = this.transformPath(pathExpression);
157
+ const segments = this.parsePath(tpath);
158
+ if (segments.length < 2) {
159
+ throw new Error(`DialogStateManager.deleteValue: invalid path of '${pathExpression}'.`);
160
+ }
161
+ // Track change
162
+ this.trackChange(tpath);
163
+ // Get memory scope to update
164
+ const scope = this.getMemoryScope(segments[0].toString());
165
+ if (scope === undefined) {
166
+ throw new Error(`DialogStateManager.deleteValue: a scope of '${segments[0]}' wasn't found.`);
167
+ }
168
+ // Find value up to last key
169
+ const key = segments.pop();
170
+ const memory = this.resolveSegments(scope.getMemory(this.dialogContext), segments, false);
171
+ // Update value
172
+ if (typeof key === 'number' && Array.isArray(memory)) {
173
+ if (key < memory.length) {
174
+ memory.splice(key, 1);
175
+ }
176
+ }
177
+ else if (typeof key === 'string' && key.length > 0 && typeof memory === 'object' && !Array.isArray(memory)) {
178
+ const found = this.findObjectKey(memory, key);
179
+ if (found) {
180
+ delete memory[found];
181
+ }
182
+ }
183
+ }
184
+ /**
185
+ * Ensures that all memory scopes have been loaded for the current turn.
186
+ *
187
+ * @remarks
188
+ * This should be called at the beginning of the turn.
189
+ */
190
+ async loadAllScopes() {
191
+ const scopes = this.configuration.memoryScopes;
192
+ for (let i = 0; i < scopes.length; i++) {
193
+ await scopes[i].load(this.dialogContext);
194
+ }
195
+ }
196
+ /**
197
+ * Saves any changes made to memory scopes.
198
+ *
199
+ * @remarks
200
+ * This should be called at the end of the turn.
201
+ */
202
+ async saveAllChanges() {
203
+ const scopes = this.configuration.memoryScopes;
204
+ for (let i = 0; i < scopes.length; i++) {
205
+ await scopes[i].saveChanges(this.dialogContext);
206
+ }
207
+ }
208
+ /**
209
+ * Deletes all of the backing memory for a given scope.
210
+ *
211
+ * @param name Name of the scope.
212
+ */
213
+ async deleteScopesMemory(name) {
214
+ name = name.toLowerCase();
215
+ const scopes = this.configuration.memoryScopes;
216
+ for (let i = 0; i < scopes.length; i++) {
217
+ const scope = scopes[i];
218
+ if (scope.name.toLowerCase() === name) {
219
+ await scope.delete(this.dialogContext);
220
+ break;
221
+ }
222
+ }
223
+ }
224
+ /**
225
+ * Normalizes the path segments of a passed in path.
226
+ *
227
+ * @remarks
228
+ * A path of `profile.address[0]` will be normalized to `profile.address.0`.
229
+ * @param pathExpression The path to normalize.
230
+ * @param allowNestedPaths Optional. If `false` then detection of a nested path will cause an empty path to be returned. Defaults to 'true'.
231
+ * @returns The normalized path.
232
+ */
233
+ parsePath(pathExpression, allowNestedPaths = true) {
234
+ // Expand path segments
235
+ let segment = '';
236
+ let depth = 0;
237
+ let quote = '';
238
+ const output = [];
239
+ for (let i = 0; i < pathExpression.length; i++) {
240
+ const c = pathExpression[i];
241
+ if (depth > 0) {
242
+ // We're in a set of brackets
243
+ if (quote.length) {
244
+ // We're in a string
245
+ switch (c) {
246
+ case '\\':
247
+ // Escape code detected
248
+ i++;
249
+ segment += pathExpression[i];
250
+ break;
251
+ default:
252
+ segment += c;
253
+ if (c === quote) {
254
+ quote = '';
255
+ }
256
+ break;
257
+ }
258
+ }
259
+ else {
260
+ // We're in a bracket
261
+ switch (c) {
262
+ case '[':
263
+ depth++;
264
+ segment += c;
265
+ break;
266
+ case ']':
267
+ depth--;
268
+ if (depth > 0) {
269
+ segment += c;
270
+ }
271
+ break;
272
+ case "'":
273
+ case '"':
274
+ quote = c;
275
+ segment += c;
276
+ break;
277
+ default:
278
+ segment += c;
279
+ break;
280
+ }
281
+ // Are we out of the brackets
282
+ if (depth === 0) {
283
+ if (isQuoted(segment)) {
284
+ // Quoted segment
285
+ output.push(segment.length > 2 ? segment.substr(1, segment.length - 2) : '');
286
+ }
287
+ else if (isIndex(segment)) {
288
+ // Array index
289
+ output.push(parseInt(segment));
290
+ }
291
+ else if (allowNestedPaths) {
292
+ // Resolve nested value
293
+ const val = this.getValue(segment);
294
+ const t = typeof val;
295
+ output.push(t === 'string' || t === 'number' ? val : '');
296
+ }
297
+ else {
298
+ // Abort parsing and return empty path (used for change tracking.)
299
+ return [];
300
+ }
301
+ segment = '';
302
+ }
303
+ }
304
+ }
305
+ else {
306
+ // We're parsing the outer path
307
+ switch (c) {
308
+ case '[':
309
+ if (segment.length > 0) {
310
+ output.push(segment);
311
+ segment = '';
312
+ }
313
+ depth++;
314
+ break;
315
+ case '.':
316
+ if (segment.length > 0) {
317
+ output.push(segment);
318
+ segment = '';
319
+ }
320
+ else if (i === 0 || i === pathExpression.length - 1) {
321
+ // Special case a "." at beginning or end of path
322
+ output.push('');
323
+ }
324
+ else if (pathExpression[i - 1] === '.') {
325
+ // Special case ".."
326
+ output.push('');
327
+ }
328
+ break;
329
+ default:
330
+ if (i > 1 && pathExpression[i - 1] === '.' && c === '$') {
331
+ segment += c; // x.$foo should be valid
332
+ }
333
+ else if (isValidPathChar(c)) {
334
+ segment += c;
335
+ }
336
+ else {
337
+ throw new Error(`DialogStateManager.normalizePath: Invalid path detected - ${pathExpression}`);
338
+ }
339
+ break;
340
+ }
341
+ }
342
+ }
343
+ if (depth > 0) {
344
+ throw new Error(`DialogStateManager.normalizePath: Invalid path detected - ${pathExpression}`);
345
+ }
346
+ else if (segment.length > 0) {
347
+ output.push(segment);
348
+ }
349
+ return output;
350
+ }
351
+ /**
352
+ * Transform the path using the registered path transformers.
353
+ *
354
+ * @param pathExpression The path to transform.
355
+ * @returns The transformed path.
356
+ */
357
+ transformPath(pathExpression) {
358
+ // Run path through registered resolvers.
359
+ const resolvers = this.configuration.pathResolvers;
360
+ for (let i = 0; i < resolvers.length; i++) {
361
+ pathExpression = resolvers[i].transformPath(pathExpression);
362
+ }
363
+ return pathExpression;
364
+ }
365
+ /**
366
+ * Gets all memory scopes suitable for logging.
367
+ *
368
+ * @returns Object which represents all memory scopes.
369
+ */
370
+ getMemorySnapshot() {
371
+ const output = {};
372
+ this.configuration.memoryScopes.forEach((scope) => {
373
+ if (scope.includeInSnapshot) {
374
+ output[scope.name] = scope.getMemory(this.dialogContext);
375
+ }
376
+ });
377
+ return output;
378
+ }
379
+ /**
380
+ * Track when specific paths are changed.
381
+ *
382
+ * @param paths Paths to track.
383
+ * @returns Normalized paths to pass to [anyPathChanged()](#anypathchanged).
384
+ */
385
+ trackPaths(paths) {
386
+ const allPaths = [];
387
+ paths.forEach((path) => {
388
+ const tpath = this.transformPath(path);
389
+ const segments = this.parsePath(tpath, false);
390
+ if (segments.length > 0 && (segments.length === 1 || !segments[1].toString().startsWith('_'))) {
391
+ // Normalize path and initialize change tracker
392
+ const npath = segments.join('_').toLowerCase();
393
+ this.setValue(`${PATH_TRACKER}.${npath}`, 0);
394
+ // Return normalized path
395
+ allPaths.push(npath);
396
+ }
397
+ });
398
+ return allPaths;
399
+ }
400
+ /**
401
+ * Check to see if any path has changed since watermark.
402
+ *
403
+ * @param counter Time counter to compare to.
404
+ * @param paths Paths from [trackPaths()](#trackpaths) to check.
405
+ * @returns True if any path has changed since counter.
406
+ */
407
+ anyPathChanged(counter, paths) {
408
+ let found = false;
409
+ if (paths) {
410
+ for (let i = 0; i < paths.length; i++) {
411
+ if (this.getValue(`${PATH_TRACKER}.${paths[i]}`, 0) > counter) {
412
+ found = true;
413
+ break;
414
+ }
415
+ }
416
+ }
417
+ return found;
418
+ }
419
+ /**
420
+ * @private
421
+ * @param path Track path to change.
422
+ */
423
+ trackChange(path) {
424
+ // Normalize path and scan for any matches or children that match.
425
+ // - We're appending an extra '_' so that we can do substring matches and
426
+ // avoid any false positives.
427
+ let counter;
428
+ const npath = this.parsePath(path, false).join('_') + '_';
429
+ const tracking = this.getValue(PATH_TRACKER) || {};
430
+ for (const key in tracking) {
431
+ if (`${key}_`.startsWith(npath)) {
432
+ // Populate counter on first use
433
+ if (counter === undefined) {
434
+ counter = this.getValue(dialogPath_1.DialogPath.eventCounter);
435
+ }
436
+ // Update tracking watermark
437
+ this.setValue(`${PATH_TRACKER}.${key}`, counter);
438
+ }
439
+ }
440
+ }
441
+ /**
442
+ * @private
443
+ * @param memory Object memory to resolve.
444
+ * @param segments Segments of the memory to resolve.
445
+ * @param assignment Optional.
446
+ * @returns The value of the memory segment.
447
+ */
448
+ resolveSegments(memory, segments, assignment) {
449
+ let value = memory;
450
+ const l = assignment ? segments.length - 1 : segments.length;
451
+ for (let i = 1; i < l && value !== undefined; i++) {
452
+ const key = segments[i];
453
+ if (typeof key === 'number') {
454
+ // Key is an array index
455
+ if (Array.isArray(value)) {
456
+ value = value[key];
457
+ }
458
+ else {
459
+ value = undefined;
460
+ }
461
+ }
462
+ else if (key === 'first()') {
463
+ // Special case returning the first entity in an array of entities.
464
+ if (Array.isArray(value) && value.length > 0) {
465
+ value = value[0];
466
+ if (Array.isArray(value)) {
467
+ // Nested array detected
468
+ if (value.length > 0) {
469
+ value = value[0];
470
+ }
471
+ else {
472
+ value = undefined;
473
+ }
474
+ }
475
+ }
476
+ else {
477
+ value = undefined;
478
+ }
479
+ }
480
+ else if (typeof key === 'string' && key.length > 0) {
481
+ // Key is an object index
482
+ if (typeof value === 'object' && !Array.isArray(value)) {
483
+ // Case-insensitive search for prop
484
+ let found = this.findObjectKey(value, key);
485
+ // Ensure path exists as needed
486
+ if (assignment) {
487
+ const nextKey = segments[i + 1];
488
+ if (typeof nextKey === 'number' || nextKey === 'first()') {
489
+ // Ensure prop contains an array
490
+ if (found) {
491
+ if (value[found] === undefined) {
492
+ value[found] = [];
493
+ }
494
+ }
495
+ else {
496
+ found = key;
497
+ value[found] = [];
498
+ }
499
+ }
500
+ else if (typeof nextKey === 'string' && nextKey.length > 0) {
501
+ // Ensure prop contains an object
502
+ if (found) {
503
+ if (value[found] === undefined) {
504
+ value[found] = {};
505
+ }
506
+ }
507
+ else {
508
+ found = key;
509
+ value[found] = {};
510
+ }
511
+ }
512
+ else {
513
+ // We can't determine type so return undefined
514
+ found = undefined;
515
+ }
516
+ }
517
+ value = found ? value[found] : undefined;
518
+ }
519
+ else {
520
+ value = undefined;
521
+ }
522
+ }
523
+ else {
524
+ // Key is missing
525
+ value = undefined;
526
+ }
527
+ }
528
+ return value;
529
+ }
530
+ /**
531
+ * @private
532
+ */
533
+ findObjectKey(obj, key) {
534
+ const k = key.toLowerCase();
535
+ for (const prop in obj) {
536
+ if (prop.toLowerCase() === k) {
537
+ return prop;
538
+ }
539
+ }
540
+ return undefined;
541
+ }
542
+ /**
543
+ * @private
544
+ * Gets MemoryScope by name.
545
+ * @param name Name of scope.
546
+ * @returns The MemoryScope.
547
+ */
548
+ getMemoryScope(name) {
549
+ const key = name.toLowerCase();
550
+ const scopes = this.configuration.memoryScopes;
551
+ for (let i = 0; i < scopes.length; i++) {
552
+ const scope = scopes[i];
553
+ if (scope.name.toLowerCase() === key) {
554
+ return scope;
555
+ }
556
+ }
557
+ return undefined;
558
+ }
559
+ /**
560
+ * Gets the version number.
561
+ *
562
+ * @returns A string with the version number.
563
+ */
564
+ version() {
565
+ return '0';
566
+ }
567
+ }
568
+ exports.DialogStateManager = DialogStateManager;
569
+ /**
570
+ * @private
571
+ */
572
+ function isIndex(segment) {
573
+ const digits = '0123456789';
574
+ for (let i = 0; i < segment.length; i++) {
575
+ const c = segment[i];
576
+ if (digits.indexOf(c) < 0) {
577
+ // Check for negative sign
578
+ if (c !== '-' || i > 0 || segment.length < 2) {
579
+ return false;
580
+ }
581
+ }
582
+ }
583
+ return segment.length > 0;
584
+ }
585
+ /**
586
+ * @private
587
+ */
588
+ function isQuoted(segment) {
589
+ return ((segment.length > 1 && segment.startsWith("'") && segment.endsWith("'")) ||
590
+ (segment.startsWith('"') && segment.endsWith('"')));
591
+ }
592
+ /**
593
+ * @private
594
+ */
595
+ function isValidPathChar(c) {
596
+ return '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-()'.indexOf(c) >= 0;
597
+ }
598
+ //# sourceMappingURL=dialogStateManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialogStateManager.js","sourceRoot":"","sources":["../../../src/memory/dialogStateManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+ export * from './componentMemoryScopes';
6
+ export * from './componentPathResolvers';
7
+ export * from './dialogPath';
8
+ export * from './dialogStateManager';
9
+ export * from './pathResolvers';
10
+ export * from './scopePath';
11
+ export * from './scopes';
12
+ export * from './turnPath';
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ /**
18
+ * Copyright (c) Microsoft Corporation. All rights reserved.
19
+ * Licensed under the MIT License.
20
+ */
21
+ __exportStar(require("./componentMemoryScopes"), exports);
22
+ __exportStar(require("./componentPathResolvers"), exports);
23
+ __exportStar(require("./dialogPath"), exports);
24
+ __exportStar(require("./dialogStateManager"), exports);
25
+ __exportStar(require("./pathResolvers"), exports);
26
+ __exportStar(require("./scopePath"), exports);
27
+ __exportStar(require("./scopes"), exports);
28
+ __exportStar(require("./turnPath"), exports);
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/memory/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;GAGG;AACH,0DAAuC;AACvC,2DAAwC;AACxC,+CAA4B;AAC5B,uDAAoC;AACpC,kDAA+B;AAC/B,8CAA2B;AAC3B,2CAAwB;AACxB,6CAA0B"}