@botonic/core 0.19.0 → 0.20.2-alpha.0

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 (368) hide show
  1. package/lib/cjs/constants.d.ts +4 -0
  2. package/lib/cjs/constants.js +8 -0
  3. package/lib/cjs/constants.js.map +1 -0
  4. package/lib/cjs/core-bot.d.ts +36 -0
  5. package/lib/cjs/core-bot.js +115 -0
  6. package/lib/cjs/core-bot.js.map +1 -0
  7. package/lib/cjs/data-provider/dynamodb-data-provider.d.ts +26 -0
  8. package/lib/cjs/data-provider/dynamodb-data-provider.js +81 -0
  9. package/lib/cjs/data-provider/dynamodb-data-provider.js.map +1 -0
  10. package/lib/cjs/data-provider/dynamodb-utils.d.ts +11 -0
  11. package/lib/cjs/data-provider/dynamodb-utils.js +120 -0
  12. package/lib/cjs/data-provider/dynamodb-utils.js.map +1 -0
  13. package/lib/cjs/data-provider/factory.d.ts +25 -0
  14. package/lib/cjs/data-provider/factory.js +31 -0
  15. package/lib/cjs/data-provider/factory.js.map +1 -0
  16. package/lib/cjs/data-provider/index.d.ts +4 -0
  17. package/lib/cjs/data-provider/index.js +8 -0
  18. package/lib/cjs/data-provider/index.js.map +1 -0
  19. package/lib/cjs/data-provider/local-data-provider.d.ts +26 -0
  20. package/lib/cjs/data-provider/local-data-provider.js +137 -0
  21. package/lib/cjs/data-provider/local-data-provider.js.map +1 -0
  22. package/lib/cjs/debug/index.d.ts +1 -0
  23. package/lib/cjs/debug/index.js +5 -0
  24. package/lib/cjs/debug/index.js.map +1 -0
  25. package/lib/cjs/debug/inspector.d.ts +24 -0
  26. package/lib/{debug → cjs/debug}/inspector.js +5 -3
  27. package/lib/cjs/debug/inspector.js.map +1 -0
  28. package/lib/cjs/handoff.d.ts +67 -0
  29. package/lib/{handoff.js → cjs/handoff.js} +2 -1
  30. package/lib/cjs/handoff.js.map +1 -0
  31. package/lib/cjs/hubtype-service.d.ts +69 -0
  32. package/lib/{hubtype-service.js → cjs/hubtype-service.js} +25 -12
  33. package/lib/cjs/hubtype-service.js.map +1 -0
  34. package/lib/cjs/i18n.d.ts +2 -0
  35. package/lib/{i18n.js → cjs/i18n.js} +0 -1
  36. package/lib/cjs/i18n.js.map +1 -0
  37. package/lib/cjs/index.d.ts +11 -0
  38. package/lib/cjs/index.js +17 -0
  39. package/lib/cjs/index.js.map +1 -0
  40. package/lib/cjs/models/events/base-event.d.ts +13 -0
  41. package/lib/{models/events/index.js → cjs/models/events/base-event.js} +1 -1
  42. package/lib/cjs/models/events/base-event.js.map +1 -0
  43. package/lib/cjs/models/events/botonic-event.d.ts +3 -0
  44. package/lib/cjs/models/events/botonic-event.js +3 -0
  45. package/lib/cjs/models/events/botonic-event.js.map +1 -0
  46. package/lib/{models/events/connections/index.d.ts → cjs/models/events/connections/connection-event.d.ts} +1 -1
  47. package/lib/{models/events/connections/index.js → cjs/models/events/connections/connection-event.js} +1 -1
  48. package/lib/cjs/models/events/connections/connection-event.js.map +1 -0
  49. package/lib/cjs/models/events/connections/index.d.ts +1 -0
  50. package/lib/cjs/models/events/connections/index.js +5 -0
  51. package/lib/cjs/models/events/connections/index.js.map +1 -0
  52. package/lib/cjs/models/events/index.d.ts +4 -0
  53. package/lib/cjs/models/events/index.js +8 -0
  54. package/lib/cjs/models/events/index.js.map +1 -0
  55. package/lib/{models → cjs/models}/events/message/buttons.d.ts +0 -0
  56. package/lib/{models → cjs/models}/events/message/buttons.js +0 -0
  57. package/lib/cjs/models/events/message/buttons.js.map +1 -0
  58. package/lib/{models → cjs/models}/events/message/carousel.d.ts +1 -1
  59. package/lib/{models → cjs/models}/events/message/carousel.js +0 -0
  60. package/lib/cjs/models/events/message/carousel.js.map +1 -0
  61. package/lib/{models → cjs/models}/events/message/custom.d.ts +2 -2
  62. package/lib/{models → cjs/models}/events/message/custom.js +0 -0
  63. package/lib/cjs/models/events/message/custom.js.map +1 -0
  64. package/lib/cjs/models/events/message/index.d.ts +9 -0
  65. package/lib/cjs/models/events/message/index.js +13 -0
  66. package/lib/cjs/models/events/message/index.js.map +1 -0
  67. package/lib/{models → cjs/models}/events/message/location.d.ts +1 -1
  68. package/lib/{models → cjs/models}/events/message/location.js +0 -0
  69. package/lib/cjs/models/events/message/location.js.map +1 -0
  70. package/lib/{models → cjs/models}/events/message/media.d.ts +1 -1
  71. package/lib/cjs/models/events/message/media.js +11 -0
  72. package/lib/cjs/models/events/message/media.js.map +1 -0
  73. package/lib/{models/events/message/index.d.ts → cjs/models/events/message/message-event.d.ts} +1 -1
  74. package/lib/{models/events/message/index.js → cjs/models/events/message/message-event.js} +1 -1
  75. package/lib/cjs/models/events/message/message-event.js.map +1 -0
  76. package/lib/{models → cjs/models}/events/message/postback.d.ts +1 -1
  77. package/lib/{models → cjs/models}/events/message/postback.js +0 -0
  78. package/lib/cjs/models/events/message/postback.js.map +1 -0
  79. package/lib/{models → cjs/models}/events/message/replies.d.ts +0 -0
  80. package/lib/{models → cjs/models}/events/message/replies.js +0 -0
  81. package/lib/cjs/models/events/message/replies.js.map +1 -0
  82. package/lib/{models → cjs/models}/events/message/text.d.ts +1 -1
  83. package/lib/{models → cjs/models}/events/message/text.js +0 -0
  84. package/lib/cjs/models/events/message/text.js.map +1 -0
  85. package/lib/cjs/models/index.d.ts +3 -0
  86. package/lib/cjs/models/index.js +7 -0
  87. package/lib/cjs/models/index.js.map +1 -0
  88. package/lib/cjs/models/legacy-types.d.ts +207 -0
  89. package/lib/cjs/models/legacy-types.js +60 -0
  90. package/lib/cjs/models/legacy-types.js.map +1 -0
  91. package/lib/{models → cjs/models}/user.d.ts +1 -1
  92. package/lib/{models → cjs/models}/user.js +0 -0
  93. package/lib/{models → cjs/models}/user.js.map +1 -1
  94. package/lib/{output-parser/index.d.ts → cjs/output-parser/botonic-output-parser.d.ts} +1 -1
  95. package/lib/{output-parser/index.js → cjs/output-parser/botonic-output-parser.js} +2 -1
  96. package/lib/cjs/output-parser/botonic-output-parser.js.map +1 -0
  97. package/lib/{output-parser → cjs/output-parser}/factory.d.ts +1 -1
  98. package/lib/{output-parser → cjs/output-parser}/factory.js +7 -8
  99. package/lib/cjs/output-parser/factory.js.map +1 -0
  100. package/lib/cjs/output-parser/index.d.ts +3 -0
  101. package/lib/cjs/output-parser/index.js +7 -0
  102. package/lib/cjs/output-parser/index.js.map +1 -0
  103. package/lib/{output-parser → cjs/output-parser}/parsers.d.ts +3 -9
  104. package/lib/{output-parser → cjs/output-parser}/parsers.js +21 -12
  105. package/lib/cjs/output-parser/parsers.js.map +1 -0
  106. package/lib/cjs/plugins.d.ts +7 -0
  107. package/lib/{plugins.js → cjs/plugins.js} +8 -5
  108. package/lib/cjs/plugins.js.map +1 -0
  109. package/lib/cjs/pusher-utils.d.ts +7 -0
  110. package/lib/cjs/pusher-utils.js +20 -0
  111. package/lib/cjs/pusher-utils.js.map +1 -0
  112. package/lib/cjs/routing/index.d.ts +2 -0
  113. package/lib/cjs/routing/index.js +6 -0
  114. package/lib/cjs/routing/index.js.map +1 -0
  115. package/lib/cjs/routing/router-utils.d.ts +11 -0
  116. package/lib/cjs/routing/router-utils.js +89 -0
  117. package/lib/cjs/routing/router-utils.js.map +1 -0
  118. package/lib/cjs/routing/router.d.ts +54 -0
  119. package/lib/cjs/routing/router.js +315 -0
  120. package/lib/cjs/routing/router.js.map +1 -0
  121. package/lib/cjs/utils.d.ts +11 -0
  122. package/lib/{utils.js → cjs/utils.js} +14 -5
  123. package/lib/cjs/utils.js.map +1 -0
  124. package/lib/esm/constants.d.ts +4 -0
  125. package/lib/esm/constants.js +5 -0
  126. package/lib/esm/constants.js.map +1 -0
  127. package/lib/esm/core-bot.d.ts +36 -0
  128. package/lib/esm/core-bot.js +111 -0
  129. package/lib/esm/core-bot.js.map +1 -0
  130. package/lib/esm/data-provider/dynamodb-data-provider.d.ts +26 -0
  131. package/lib/esm/data-provider/dynamodb-data-provider.js +77 -0
  132. package/lib/esm/data-provider/dynamodb-data-provider.js.map +1 -0
  133. package/lib/esm/data-provider/dynamodb-utils.d.ts +11 -0
  134. package/lib/esm/data-provider/dynamodb-utils.js +113 -0
  135. package/lib/esm/data-provider/dynamodb-utils.js.map +1 -0
  136. package/lib/esm/data-provider/factory.d.ts +25 -0
  137. package/lib/esm/data-provider/factory.js +27 -0
  138. package/lib/esm/data-provider/factory.js.map +1 -0
  139. package/lib/esm/data-provider/index.d.ts +4 -0
  140. package/lib/esm/data-provider/index.js +5 -0
  141. package/lib/esm/data-provider/index.js.map +1 -0
  142. package/lib/esm/data-provider/local-data-provider.d.ts +26 -0
  143. package/lib/esm/data-provider/local-data-provider.js +133 -0
  144. package/lib/esm/data-provider/local-data-provider.js.map +1 -0
  145. package/lib/esm/debug/index.d.ts +1 -0
  146. package/lib/esm/debug/index.js +2 -0
  147. package/lib/esm/debug/index.js.map +1 -0
  148. package/lib/esm/debug/inspector.d.ts +24 -0
  149. package/lib/esm/debug/inspector.js +65 -0
  150. package/lib/esm/debug/inspector.js.map +1 -0
  151. package/lib/esm/handoff.d.ts +67 -0
  152. package/lib/esm/handoff.js +171 -0
  153. package/lib/esm/handoff.js.map +1 -0
  154. package/lib/esm/hubtype-service.d.ts +69 -0
  155. package/lib/esm/hubtype-service.js +195 -0
  156. package/lib/esm/hubtype-service.js.map +1 -0
  157. package/lib/esm/i18n.d.ts +2 -0
  158. package/lib/esm/i18n.js +7 -0
  159. package/lib/esm/i18n.js.map +1 -0
  160. package/lib/esm/index.d.ts +11 -0
  161. package/lib/esm/index.js +14 -0
  162. package/lib/esm/index.js.map +1 -0
  163. package/lib/esm/models/events/base-event.d.ts +13 -0
  164. package/lib/esm/models/events/base-event.js +8 -0
  165. package/lib/esm/models/events/base-event.js.map +1 -0
  166. package/lib/esm/models/events/botonic-event.d.ts +3 -0
  167. package/lib/esm/models/events/botonic-event.js +2 -0
  168. package/lib/esm/models/events/botonic-event.js.map +1 -0
  169. package/lib/esm/models/events/connections/connection-event.d.ts +9 -0
  170. package/lib/esm/models/events/connections/connection-event.js +6 -0
  171. package/lib/esm/models/events/connections/connection-event.js.map +1 -0
  172. package/lib/esm/models/events/connections/index.d.ts +1 -0
  173. package/lib/esm/models/events/connections/index.js +2 -0
  174. package/lib/esm/models/events/connections/index.js.map +1 -0
  175. package/lib/esm/models/events/index.d.ts +4 -0
  176. package/lib/esm/models/events/index.js +5 -0
  177. package/lib/esm/models/events/index.js.map +1 -0
  178. package/lib/esm/models/events/message/buttons.d.ts +18 -0
  179. package/lib/esm/models/events/message/buttons.js +2 -0
  180. package/lib/esm/models/events/message/buttons.js.map +1 -0
  181. package/lib/esm/models/events/message/carousel.d.ts +11 -0
  182. package/lib/esm/models/events/message/carousel.js +2 -0
  183. package/lib/esm/models/events/message/carousel.js.map +1 -0
  184. package/lib/esm/models/events/message/custom.d.ts +6 -0
  185. package/lib/esm/models/events/message/custom.js +2 -0
  186. package/lib/esm/models/events/message/custom.js.map +1 -0
  187. package/lib/esm/models/events/message/index.d.ts +9 -0
  188. package/lib/esm/models/events/message/index.js +10 -0
  189. package/lib/esm/models/events/message/index.js.map +1 -0
  190. package/lib/esm/models/events/message/location.d.ts +6 -0
  191. package/lib/esm/models/events/message/location.js +2 -0
  192. package/lib/esm/models/events/message/location.js.map +1 -0
  193. package/lib/esm/models/events/message/media.d.ts +18 -0
  194. package/lib/esm/models/events/message/media.js +8 -0
  195. package/lib/esm/models/events/message/media.js.map +1 -0
  196. package/lib/esm/models/events/message/message-event.d.ts +30 -0
  197. package/lib/esm/models/events/message/message-event.js +29 -0
  198. package/lib/esm/models/events/message/message-event.js.map +1 -0
  199. package/lib/esm/models/events/message/postback.d.ts +4 -0
  200. package/lib/esm/models/events/message/postback.js +2 -0
  201. package/lib/esm/models/events/message/postback.js.map +1 -0
  202. package/lib/esm/models/events/message/replies.d.ts +7 -0
  203. package/lib/esm/models/events/message/replies.js +2 -0
  204. package/lib/esm/models/events/message/replies.js.map +1 -0
  205. package/lib/esm/models/events/message/text.d.ts +8 -0
  206. package/lib/esm/models/events/message/text.js +2 -0
  207. package/lib/esm/models/events/message/text.js.map +1 -0
  208. package/lib/esm/models/index.d.ts +3 -0
  209. package/lib/esm/models/index.js +4 -0
  210. package/lib/esm/models/index.js.map +1 -0
  211. package/lib/esm/models/legacy-types.d.ts +207 -0
  212. package/lib/esm/models/legacy-types.js +57 -0
  213. package/lib/esm/models/legacy-types.js.map +1 -0
  214. package/lib/esm/models/user.d.ts +10 -0
  215. package/lib/esm/models/user.js +2 -0
  216. package/lib/esm/models/user.js.map +1 -0
  217. package/lib/esm/output-parser/botonic-output-parser.d.ts +16 -0
  218. package/lib/esm/output-parser/botonic-output-parser.js +33 -0
  219. package/lib/esm/output-parser/botonic-output-parser.js.map +1 -0
  220. package/lib/esm/output-parser/factory.d.ts +4 -0
  221. package/lib/esm/output-parser/factory.js +28 -0
  222. package/lib/esm/output-parser/factory.js.map +1 -0
  223. package/lib/esm/output-parser/index.d.ts +3 -0
  224. package/lib/esm/output-parser/index.js +4 -0
  225. package/lib/esm/output-parser/index.js.map +1 -0
  226. package/lib/esm/output-parser/parsers.d.ts +22 -0
  227. package/lib/esm/output-parser/parsers.js +130 -0
  228. package/lib/esm/output-parser/parsers.js.map +1 -0
  229. package/lib/esm/plugins.d.ts +7 -0
  230. package/lib/esm/plugins.js +42 -0
  231. package/lib/esm/plugins.js.map +1 -0
  232. package/lib/esm/pusher-utils.d.ts +7 -0
  233. package/lib/esm/pusher-utils.js +16 -0
  234. package/lib/esm/pusher-utils.js.map +1 -0
  235. package/lib/esm/routing/index.d.ts +2 -0
  236. package/lib/esm/routing/index.js +3 -0
  237. package/lib/esm/routing/index.js.map +1 -0
  238. package/lib/esm/routing/router-utils.d.ts +11 -0
  239. package/lib/esm/routing/router-utils.js +79 -0
  240. package/lib/esm/routing/router-utils.js.map +1 -0
  241. package/lib/esm/routing/router.d.ts +54 -0
  242. package/lib/esm/routing/router.js +311 -0
  243. package/lib/esm/routing/router.js.map +1 -0
  244. package/lib/esm/utils.d.ts +11 -0
  245. package/lib/esm/utils.js +78 -0
  246. package/lib/esm/utils.js.map +1 -0
  247. package/package.json +22 -9
  248. package/src/constants.ts +6 -0
  249. package/src/core-bot.ts +213 -0
  250. package/src/data-provider/dynamodb-data-provider.ts +103 -0
  251. package/src/data-provider/dynamodb-utils.ts +149 -0
  252. package/src/data-provider/factory.ts +60 -0
  253. package/src/data-provider/index.ts +4 -0
  254. package/src/data-provider/local-data-provider.ts +154 -0
  255. package/src/{types/debug/index.d.ts → debug/index.ts} +0 -0
  256. package/src/debug/{inspector.js → inspector.ts} +39 -14
  257. package/src/{handoff.js → handoff.ts} +88 -24
  258. package/src/{hubtype-service.js → hubtype-service.ts} +85 -34
  259. package/src/{i18n.js → i18n.ts} +7 -1
  260. package/src/index.ts +13 -0
  261. package/src/models/events/base-event.ts +14 -0
  262. package/src/models/events/botonic-event.ts +24 -0
  263. package/src/models/events/connections/connection-event.ts +11 -0
  264. package/src/models/events/connections/index.ts +1 -11
  265. package/src/models/events/index.ts +4 -39
  266. package/src/models/events/message/carousel.ts +1 -1
  267. package/src/models/events/message/custom.ts +2 -2
  268. package/src/models/events/message/index.ts +9 -37
  269. package/src/models/events/message/location.ts +1 -1
  270. package/src/models/events/message/media.ts +1 -1
  271. package/src/models/events/message/message-event.ts +37 -0
  272. package/src/models/events/message/postback.ts +1 -1
  273. package/src/models/events/message/text.ts +1 -1
  274. package/src/models/index.ts +3 -0
  275. package/src/{types/index.d.ts → models/legacy-types.ts} +141 -80
  276. package/src/models/user.ts +2 -1
  277. package/src/output-parser/botonic-output-parser.ts +38 -0
  278. package/src/output-parser/factory.ts +1 -3
  279. package/src/output-parser/index.ts +3 -37
  280. package/src/output-parser/parsers.ts +27 -17
  281. package/src/{plugins.js → plugins.ts} +21 -12
  282. package/src/pusher-utils.ts +16 -0
  283. package/src/routing/index.ts +2 -0
  284. package/src/routing/router-utils.ts +100 -0
  285. package/src/routing/router.ts +409 -0
  286. package/src/{utils.js → utils.ts} +26 -13
  287. package/index.d.ts +0 -1
  288. package/lib/constants.d.ts +0 -15
  289. package/lib/constants.js +0 -19
  290. package/lib/constants.js.map +0 -1
  291. package/lib/core-bot.d.ts +0 -40
  292. package/lib/core-bot.js +0 -78
  293. package/lib/core-bot.js.map +0 -1
  294. package/lib/debug/index.d.ts +0 -1
  295. package/lib/debug/index.js +0 -9
  296. package/lib/debug/index.js.map +0 -1
  297. package/lib/debug/inspector.d.ts +0 -20
  298. package/lib/debug/inspector.js.map +0 -1
  299. package/lib/debug/inspector.test.d.ts +0 -1
  300. package/lib/debug/inspector.test.js +0 -8
  301. package/lib/debug/inspector.test.js.map +0 -1
  302. package/lib/errors.d.ts +0 -4
  303. package/lib/errors.js +0 -11
  304. package/lib/errors.js.map +0 -1
  305. package/lib/handoff.d.ts +0 -34
  306. package/lib/handoff.js.map +0 -1
  307. package/lib/handoff.test.d.ts +0 -1
  308. package/lib/handoff.test.js +0 -62
  309. package/lib/handoff.test.js.map +0 -1
  310. package/lib/hubtype-service.d.ts +0 -58
  311. package/lib/hubtype-service.js.map +0 -1
  312. package/lib/hubtype-service.test.d.ts +0 -1
  313. package/lib/hubtype-service.test.js +0 -21
  314. package/lib/hubtype-service.test.js.map +0 -1
  315. package/lib/i18n.d.ts +0 -1
  316. package/lib/i18n.js.map +0 -1
  317. package/lib/index.d.ts +0 -48
  318. package/lib/index.js +0 -58
  319. package/lib/index.js.map +0 -1
  320. package/lib/models/events/connections/index.js.map +0 -1
  321. package/lib/models/events/index.d.ts +0 -21
  322. package/lib/models/events/index.js.map +0 -1
  323. package/lib/models/events/message/buttons.js.map +0 -1
  324. package/lib/models/events/message/carousel.js.map +0 -1
  325. package/lib/models/events/message/custom.js.map +0 -1
  326. package/lib/models/events/message/index.js.map +0 -1
  327. package/lib/models/events/message/location.js.map +0 -1
  328. package/lib/models/events/message/media.js +0 -11
  329. package/lib/models/events/message/media.js.map +0 -1
  330. package/lib/models/events/message/postback.js.map +0 -1
  331. package/lib/models/events/message/replies.js.map +0 -1
  332. package/lib/models/events/message/text.js.map +0 -1
  333. package/lib/output-parser/factory.js.map +0 -1
  334. package/lib/output-parser/index.js.map +0 -1
  335. package/lib/output-parser/parsers.js.map +0 -1
  336. package/lib/output-parser/util.d.ts +0 -2
  337. package/lib/output-parser/util.js +0 -14
  338. package/lib/output-parser/util.js.map +0 -1
  339. package/lib/plugins.d.ts +0 -2
  340. package/lib/plugins.js.map +0 -1
  341. package/lib/router.d.ts +0 -55
  342. package/lib/router.js +0 -268
  343. package/lib/router.js.map +0 -1
  344. package/lib/router.test.d.ts +0 -1
  345. package/lib/router.test.js +0 -271
  346. package/lib/router.test.js.map +0 -1
  347. package/lib/utils.d.ts +0 -8
  348. package/lib/utils.js.map +0 -1
  349. package/src/constants.js +0 -15
  350. package/src/core-bot.js +0 -108
  351. package/src/debug/index.js +0 -6
  352. package/src/debug/inspector.test.js +0 -6
  353. package/src/errors.js +0 -8
  354. package/src/handoff.test.js +0 -61
  355. package/src/hubtype-service.test.js +0 -23
  356. package/src/index.js +0 -52
  357. package/src/output-parser/util.ts +0 -8
  358. package/src/router.js +0 -273
  359. package/src/router.test.js +0 -345
  360. package/src/types/constants.d.ts +0 -14
  361. package/src/types/core-bot.d.ts +0 -46
  362. package/src/types/debug/inspector.d.ts +0 -33
  363. package/src/types/handoff.d.ts +0 -84
  364. package/src/types/hubtype-service.d.ts +0 -52
  365. package/src/types/i18n.d.ts +0 -8
  366. package/src/types/plugins.d.ts +0 -13
  367. package/src/types/router.d.ts +0 -57
  368. package/src/types/utils.d.ts +0 -12
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LocalDevDataProvider = void 0;
4
+ const node_json_db_1 = require("node-json-db");
5
+ const JsonDBConfig_1 = require("node-json-db/dist/lib/JsonDBConfig");
6
+ class LocalDevDataProvider {
7
+ constructor(url) {
8
+ this.DB_PATH = 'tmp/localDb';
9
+ this.SEPARATOR = '/';
10
+ this.paths = {
11
+ USERS: '/users',
12
+ EVENTS: '/events',
13
+ CONNECTIONS: '/connections',
14
+ };
15
+ const dbPath = url ? url.split('://')[1] : this.DB_PATH;
16
+ this.db = new node_json_db_1.JsonDB(new JsonDBConfig_1.Config(dbPath, true, false, this.SEPARATOR));
17
+ }
18
+ getUsers(limit = 10, offset = 0) {
19
+ const path = this.paths.USERS;
20
+ this.db.reload();
21
+ const userList = this.db.getObject(path);
22
+ const users = Object.values(userList);
23
+ const to = limit !== 0 ? offset + limit : undefined;
24
+ return users.slice(offset, to);
25
+ }
26
+ getUser(userId) {
27
+ const path = this.createPath([this.paths.USERS, userId]);
28
+ this.db.reload();
29
+ return this.db.exists(path) ? this.db.getObject(path) : undefined;
30
+ }
31
+ getUserByWebsocketId(websocketId) {
32
+ return this.getUserByField('websocketId', websocketId);
33
+ }
34
+ getUserByField(field, value) {
35
+ const path = this.paths.USERS;
36
+ this.db.reload();
37
+ const dbUser = this.db.exists(path)
38
+ ? this.db.find(path, (user) => user[field] === value)
39
+ : undefined;
40
+ return dbUser;
41
+ }
42
+ saveUser(user) {
43
+ const path = this.createPath([this.paths.USERS, user.id]);
44
+ this.db.reload();
45
+ if (!this.db.exists(path)) {
46
+ this.db.push(path, user);
47
+ }
48
+ return user;
49
+ }
50
+ updateUser(user) {
51
+ const path = this.createPath([this.paths.USERS, user.id]);
52
+ this.db.reload();
53
+ if (this.db.exists(path)) {
54
+ this.db.push(path, user, true);
55
+ }
56
+ return user;
57
+ }
58
+ deleteUser(id) {
59
+ const path = this.createPath([this.paths.USERS, id]);
60
+ this.db.reload();
61
+ const user = this.db.exists(path)
62
+ ? this.db.getObject(path)
63
+ : undefined;
64
+ if (user) {
65
+ this.db.delete(path);
66
+ return user;
67
+ }
68
+ return undefined;
69
+ }
70
+ getEvents(limit = 10, offset = 0) {
71
+ const path = this.paths.EVENTS;
72
+ this.db.reload();
73
+ const eventList = this.db.getObject(path);
74
+ const events = Object.values(eventList);
75
+ const to = limit !== 0 ? offset + limit : undefined;
76
+ return events.slice(offset, to);
77
+ }
78
+ getEvent(id) {
79
+ const path = this.createPath([this.paths.EVENTS, id]);
80
+ this.db.reload();
81
+ return this.db.exists(path)
82
+ ? this.db.getObject(path)
83
+ : undefined;
84
+ }
85
+ saveEvent(event) {
86
+ const path = this.createPath([this.paths.EVENTS, event.eventId]);
87
+ this.db.reload();
88
+ if (!this.db.exists(path)) {
89
+ this.db.push(path, event);
90
+ }
91
+ return event;
92
+ }
93
+ updateEvent(event) {
94
+ const path = this.createPath([this.paths.EVENTS, event.eventId]);
95
+ this.db.reload();
96
+ if (this.db.exists(path)) {
97
+ this.db.push(path, event, true);
98
+ }
99
+ return event;
100
+ }
101
+ deleteEvent(id) {
102
+ const path = this.createPath([this.paths.EVENTS, id]);
103
+ this.db.reload();
104
+ const event = this.db.exists(path)
105
+ ? this.db.getObject(path)
106
+ : undefined;
107
+ if (event) {
108
+ this.db.delete(path);
109
+ return event;
110
+ }
111
+ return undefined;
112
+ }
113
+ addConnection(websocketId) {
114
+ const path = this.createPath([this.paths.CONNECTIONS, websocketId]);
115
+ this.db.reload();
116
+ if (!this.db.exists(path)) {
117
+ this.db.push(path, '', false);
118
+ }
119
+ }
120
+ updateConnection(websocketId, userId) {
121
+ const path = this.createPath([this.paths.CONNECTIONS, websocketId]);
122
+ this.db.reload();
123
+ if (this.db.exists(path)) {
124
+ this.db.push(path, userId, true);
125
+ }
126
+ }
127
+ deleteConnection(websocketId) {
128
+ const path = this.createPath([this.paths.CONNECTIONS, websocketId]);
129
+ this.db.reload();
130
+ this.db.delete(path);
131
+ }
132
+ createPath(urlChunks) {
133
+ return urlChunks.join(this.SEPARATOR);
134
+ }
135
+ }
136
+ exports.LocalDevDataProvider = LocalDevDataProvider;
137
+ //# sourceMappingURL=local-data-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-data-provider.js","sourceRoot":"","sources":["../../../src/data-provider/local-data-provider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * from './inspector';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./inspector"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/debug/index.ts"],"names":[],"mappings":";;;AAAA,sDAA2B"}
@@ -0,0 +1,24 @@
1
+ import { Route, RouteMatcher } from '../models';
2
+ export declare class RouteInspector {
3
+ routeMatched(_route: Route, _routeKey: string, _routeValue: RouteMatcher, _input: any): void;
4
+ routeNotMatched(_route: Route, _routeKey: string, _routeValue: RouteMatcher, _input: any): void;
5
+ }
6
+ export declare class FocusRouteInspector extends RouteInspector {
7
+ focusRoutePaths: string[] | null;
8
+ focusOnMatches: boolean;
9
+ constructor();
10
+ focusOnlyOnRoutes(focusRoutePaths: string[]): this;
11
+ focusOnlyOnMatches(): this;
12
+ _isOnFocus(route: Route): boolean;
13
+ }
14
+ export declare class LogRouteInspector extends FocusRouteInspector {
15
+ routeMatched(route: Route, routeKey: string, routeValue: RouteMatcher, inputValue: string): void;
16
+ routeNotMatched(route: Route, routeKey: string, routeValue: RouteMatcher, inputValue: string): void;
17
+ _routeName(obj: Route): string;
18
+ _log(message: string, ...optionalParams: string[]): void;
19
+ }
20
+ export declare class Inspector {
21
+ routeInspector: RouteInspector;
22
+ constructor(routeInspector?: RouteInspector | undefined);
23
+ getRouteInspector(): RouteInspector;
24
+ }
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Inspector = exports.LogRouteInspector = exports.FocusRouteInspector = exports.RouteInspector = void 0;
4
4
  class RouteInspector {
5
- routeMatched(route, routeKey, routeValue, input) { }
6
- routeNotMatched(route, routeKey, routeValue, inputValue) { }
5
+ routeMatched(_route, _routeKey, _routeValue, _input) { }
6
+ routeNotMatched(_route, _routeKey, _routeValue, _input) { }
7
7
  }
8
8
  exports.RouteInspector = RouteInspector;
9
9
  class FocusRouteInspector extends RouteInspector {
@@ -21,9 +21,10 @@ class FocusRouteInspector extends RouteInspector {
21
21
  return this;
22
22
  }
23
23
  _isOnFocus(route) {
24
- if (this.focusRoutePaths == null) {
24
+ if (this.focusRoutePaths === null) {
25
25
  return true;
26
26
  }
27
+ // @ts-ignore
27
28
  return this.focusRoutePaths.includes(route.path);
28
29
  }
29
30
  }
@@ -36,6 +37,7 @@ class LogRouteInspector extends FocusRouteInspector {
36
37
  this._log(`Route ${this._routeName(route)} selected ` +
37
38
  `because Input.${routeKey} (${inputValue}) matched '${routeValue}'`);
38
39
  }
40
+ // @ts-ignore
39
41
  routeNotMatched(route, routeKey, routeValue, inputValue) {
40
42
  if (!this._isOnFocus(route) || this.focusOnMatches) {
41
43
  return;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspector.js","sourceRoot":"","sources":["../../../src/debug/inspector.ts"],"names":[],"mappings":";;;AACA,MAAa,cAAc;IACzB,YAAY,CACV,MAAa,EACb,SAAiB,EACjB,WAAyB,EACzB,MAAW,IACJ,CAAC;IACV,eAAe,CACb,MAAa,EACb,SAAiB,EACjB,WAAyB,EACzB,MAAW,IACJ,CAAC;CACX;AAbD,wCAaC;AAED,MAAa,mBAAoB,SAAQ,cAAc;IAGrD;QACE,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,eAAe,GAAG,IAAI,CAAA;QAC3B,IAAI,CAAC,cAAc,GAAG,KAAK,CAAA;IAC7B,CAAC;IAED,iBAAiB,CAAC,eAAyB;QACzC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;QACtC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;QAC1B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,UAAU,CAAC,KAAY;QACrB,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,EAAE;YACjC,OAAO,IAAI,CAAA;SACZ;QACD,aAAa;QACb,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAClD,CAAC;CACF;AA1BD,kDA0BC;AAED,MAAa,iBAAkB,SAAQ,mBAAmB;IACxD,YAAY,CACV,KAAY,EACZ,QAAgB,EAChB,UAAwB,EACxB,UAAkB;QAElB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;YAC3B,OAAM;SACP;QACD,IAAI,CAAC,IAAI,CACP,SAAS,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY;YACzC,iBAAiB,QAAQ,KAAK,UAAU,cAAc,UAAU,GAAG,CACtE,CAAA;IACH,CAAC;IAED,aAAa;IACb,eAAe,CACb,KAAY,EACZ,QAAgB,EAChB,UAAwB,EACxB,UAAkB;QAElB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE;YAClD,OAAM;SACP;QACD,IAAI,CAAC,IAAI,CACP,SAAS,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,gBAAgB;YAC7C,iBAAiB,QAAQ,KAAK,UAAU,oBAAoB,UAAU,GAAG,CAC5E,CAAA;IACH,CAAC;IAED,UAAU,CAAC,GAAU;QACnB,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,qBAAqB,CAAA;QAC5C,IAAI,GAAG,CAAC,MAAM,EAAE;YACd,IAAI,GAAG,IAAI,IAAI,iBAAiB,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAA;SACpD;QACD,IAAI,GAAG,CAAC,QAAQ,EAAE;YAChB,IAAI,GAAG,IAAI,IAAI,wBAAwB,GAAG,CAAC,QAAQ,IAAI,CAAA;SACxD;QACD,OAAO,IAAc,CAAA;IACvB,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,GAAG,cAAwB;QAC/C,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,CAAA;IACzC,CAAC;CACF;AA9CD,8CA8CC;AAED,MAAa,SAAS;IAEpB,YAAY,iBAA6C,SAAS;QAChE,IAAI,CAAC,cAAc,GAAG,cAAc,IAAI,IAAI,cAAc,EAAE,CAAA;IAC9D,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;CACF;AATD,8BASC"}
@@ -0,0 +1,67 @@
1
+ import { Session } from './models';
2
+ export interface HubtypeAgentsInfo {
3
+ attending_count: number;
4
+ email: string;
5
+ idle_count: number;
6
+ last_message_sent: string;
7
+ status: string;
8
+ }
9
+ export interface HubtypeSession extends Session {
10
+ _hubtype_api?: string;
11
+ _access_token: string;
12
+ }
13
+ export interface SessionWithBotonicAction extends Session {
14
+ _botonic_action: string;
15
+ }
16
+ export interface BackendContext {
17
+ timeoutMs: number;
18
+ }
19
+ export interface VacationRange {
20
+ end_date: number;
21
+ id: number;
22
+ start_date: number;
23
+ }
24
+ export declare function getOpenQueues(session: HubtypeSession, context?: {}): Promise<{
25
+ queues: string[];
26
+ }>;
27
+ export declare class HandOffBuilder {
28
+ _session: SessionWithBotonicAction;
29
+ _queue: string;
30
+ _onFinish: string;
31
+ _email: string;
32
+ _agentId: string;
33
+ _note: string;
34
+ _caseInfo: string;
35
+ _shadowing: boolean;
36
+ constructor(session: SessionWithBotonicAction);
37
+ withQueue(queueNameOrId: string): this;
38
+ withOnFinishPayload(payload: string): this;
39
+ withOnFinishPath(path: string): this;
40
+ withAgentEmail(email: string): this;
41
+ withAgentId(agentId: string): this;
42
+ withNote(note: string): this;
43
+ withCaseInfo(caseInfo: string): this;
44
+ withShadowing(shadowing?: boolean): this;
45
+ handOff(): Promise<void>;
46
+ }
47
+ /**
48
+ * @deprecated use {@link HandOffBuilder} class instead
49
+ */
50
+ export declare function humanHandOff(session: any, queueNameOrId: string | undefined, onFinish: any): Promise<void>;
51
+ export declare function storeCaseRating(session: HubtypeSession, rating: number, context?: any): Promise<{
52
+ status: string;
53
+ }>;
54
+ export declare function getAvailableAgentsByQueue(session: HubtypeSession, queueId: string): Promise<{
55
+ agents: string[];
56
+ }>;
57
+ export declare function getAvailableAgents(session: HubtypeSession): Promise<{
58
+ agents: HubtypeAgentsInfo[];
59
+ }>;
60
+ export declare function getAgentVacationRanges(session: HubtypeSession, { agentId, agentEmail }: {
61
+ agentId?: string;
62
+ agentEmail?: string;
63
+ }): Promise<{
64
+ vacation_ranges: VacationRange[];
65
+ }>;
66
+ export declare function cancelHandoff(session: SessionWithBotonicAction, typification?: string | null): void;
67
+ export declare function deleteUser(session: SessionWithBotonicAction): void;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.deleteUser = exports.cancelHandoff = exports.getAgentVacationRanges = exports.getAvailableAgents = exports.getAvailableAgentsByQueue = exports.storeCaseRating = exports.humanHandOff = exports.HandOffBuilder = exports.getOpenQueues = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const axios_1 = tslib_1.__importDefault(require("axios"));
6
+ const constants_1 = require("./constants");
6
7
  const HUBTYPE_API_URL = 'https://api.hubtype.com';
7
8
  function contextDefaults(context) {
8
9
  return {
@@ -39,7 +40,7 @@ class HandOffBuilder {
39
40
  return this;
40
41
  }
41
42
  withOnFinishPath(path) {
42
- this._onFinish = `__PATH_PAYLOAD__${path}`;
43
+ this._onFinish = `${constants_1.PATH_PAYLOAD_IDENTIFIER}${path}`;
43
44
  return this;
44
45
  }
45
46
  withAgentEmail(email) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/handoff.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,69 @@
1
+ import { AxiosResponse } from 'axios';
2
+ import Pusher, { Channel } from 'pusher-js';
3
+ import { Input, SessionUser } from './models';
4
+ interface UnsentInput {
5
+ id: string;
6
+ ack: number;
7
+ unsentInput: Input;
8
+ }
9
+ interface BotonicHeaders {
10
+ 'X-BOTONIC-USER-ID': string;
11
+ 'X-BOTONIC-LAST-MESSAGE-ID': string;
12
+ 'X-BOTONIC-LAST-MESSAGE-UPDATE-DATE': string;
13
+ }
14
+ interface ServerConfig {
15
+ activityTimeout?: number;
16
+ pongTimeout?: number;
17
+ }
18
+ interface HubtypeServiceArgs {
19
+ appId: string;
20
+ user: SessionUser;
21
+ lastMessageId: string;
22
+ lastMessageUpdateDate: string;
23
+ onEvent: any;
24
+ unsentInputs: () => UnsentInput[];
25
+ server: ServerConfig;
26
+ }
27
+ /**
28
+ * Calls Hubtype APIs from Webchat
29
+ */
30
+ export declare class HubtypeService {
31
+ appId: string;
32
+ user: SessionUser;
33
+ lastMessageId: string;
34
+ lastMessageUpdateDate: string;
35
+ onEvent: any;
36
+ unsentInputs: () => UnsentInput[];
37
+ pusher: Pusher | null;
38
+ channel: Channel;
39
+ server: ServerConfig;
40
+ PUSHER_CONNECT_TIMEOUT_MS: number;
41
+ constructor({ appId, user, lastMessageId, lastMessageUpdateDate, onEvent, unsentInputs, server, }: HubtypeServiceArgs);
42
+ /**
43
+ * @returns {Promise<void>}
44
+ */
45
+ init(user: any, lastMessageId: any, lastMessageUpdateDate: any): Promise<void>;
46
+ /**
47
+ * @returns {Promise<void>}
48
+ */
49
+ _initPusher(): Promise<void>;
50
+ constructHeaders(): BotonicHeaders;
51
+ resolveServerConfig(): ServerConfig;
52
+ updateAuthHeaders(): void;
53
+ handleConnectionChange(online: boolean): void;
54
+ onPusherEvent(event: any): void;
55
+ get pusherChannel(): string;
56
+ handleSentInput(message: any): void;
57
+ handleUnsentInput(message: any): void;
58
+ /**
59
+ * @return {Promise<void>}
60
+ */
61
+ postMessage(user: SessionUser, message: any): Promise<void>;
62
+ static getWebchatVisibility({ appId, }: {
63
+ appId: string;
64
+ }): Promise<AxiosResponse<any>>;
65
+ destroyPusher(): void;
66
+ onConnectionRegained(): Promise<void>;
67
+ resendUnsentInputs(): Promise<void>;
68
+ }
69
+ export {};
@@ -4,12 +4,13 @@ exports.HubtypeService = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const axios_1 = tslib_1.__importDefault(require("axios"));
6
6
  const pusher_js_1 = tslib_1.__importDefault(require("pusher-js"));
7
+ const pusher_utils_1 = require("./pusher-utils");
7
8
  const utils_1 = require("./utils");
8
9
  const _WEBCHAT_PUSHER_KEY_ = utils_1.getWebpackEnvVar(
9
- // eslint-disable-next-line no-undef
10
+ // @ts-ignore
10
11
  typeof WEBCHAT_PUSHER_KEY !== 'undefined' && WEBCHAT_PUSHER_KEY, 'WEBCHAT_PUSHER_KEY', '434ca667c8e6cb3f641c');
11
12
  const _HUBTYPE_API_URL_ = utils_1.getWebpackEnvVar(
12
- // eslint-disable-next-line no-undef
13
+ // @ts-ignore
13
14
  typeof HUBTYPE_API_URL !== 'undefined' && HUBTYPE_API_URL, 'HUBTYPE_API_URL', 'https://api.hubtype.com');
14
15
  const ACTIVITY_TIMEOUT = 20 * 1000; // https://pusher.com/docs/channels/using_channels/connection#activitytimeout-integer-
15
16
  const PONG_TIMEOUT = 5 * 1000; // https://pusher.com/docs/channels/using_channels/connection#pongtimeout-integer-
@@ -30,6 +31,7 @@ class HubtypeService {
30
31
  // It's safe not awaiting Promise because:
31
32
  // * it will never be called from AWS lambda
32
33
  // * though init() is called again from postMesage, it does nothing if Pusher already created
34
+ // @ts-ignore
33
35
  this.init();
34
36
  }
35
37
  }
@@ -74,17 +76,27 @@ class HubtypeService {
74
76
  resolve();
75
77
  });
76
78
  this.channel.bind('botonic_response', data => this.onPusherEvent(data));
77
- this.channel.bind('update_message_info', data => this.onPusherEvent(data));
78
- this.pusher.connection.bind('error', event => {
79
- if (event.type == 'WebSocketError')
80
- this.handleConnectionChange(false);
81
- else {
82
- const errorMsg = event.error && event.error.data
83
- ? event.error.data.code || event.error.data.message
84
- : 'Connection error';
85
- cleanAndReject(`Pusher error (${errorMsg})`);
79
+ this.channel.bind('botonic_response_compressed', compressedData => {
80
+ try {
81
+ const data = JSON.parse(pusher_utils_1.decompressData(compressedData));
82
+ this.onPusherEvent(data);
83
+ }
84
+ catch (e) {
85
+ console.error('Error: Unable to decompress data', e);
86
86
  }
87
87
  });
88
+ this.channel.bind('update_message_info', data => this.onPusherEvent(data));
89
+ this.pusher &&
90
+ this.pusher.connection.bind('error', event => {
91
+ if (event.type == 'WebSocketError')
92
+ this.handleConnectionChange(false);
93
+ else {
94
+ const errorMsg = event.error && event.error.data
95
+ ? event.error.data.code || event.error.data.message
96
+ : 'Connection error';
97
+ cleanAndReject(`Pusher error (${errorMsg})`);
98
+ }
99
+ });
88
100
  });
89
101
  this.pusher.connection.bind('state_change', states => {
90
102
  if (states.current === 'connecting')
@@ -147,6 +159,7 @@ class HubtypeService {
147
159
  */
148
160
  async postMessage(user, message) {
149
161
  try {
162
+ // @ts-ignore
150
163
  await this.init(user);
151
164
  await axios_1.default.post(`${_HUBTYPE_API_URL_}/v1/provider_accounts/webhooks/webchat/${this.appId}/`, {
152
165
  sender: this.user,
@@ -161,7 +174,7 @@ class HubtypeService {
161
174
  }
162
175
  return Promise.resolve();
163
176
  }
164
- static async getWebchatVisibility({ appId }) {
177
+ static async getWebchatVisibility({ appId, }) {
165
178
  return axios_1.default.get(`${_HUBTYPE_API_URL_}/v1/provider_accounts/${appId}/visibility/`);
166
179
  }
167
180
  destroyPusher() {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hubtype-service.js","sourceRoot":"","sources":["../../src/hubtype-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Locales } from './models';
2
+ export declare const getString: (locales: Locales, locale: string, stringID: string) => string;
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getString = void 0;
4
- // eslint-disable-next-line filenames/match-regex
5
4
  const getString = (locales, locale, stringID) => {
6
5
  let l = stringID.split('.').reduce((o, i) => o[i], locales[locale]);
7
6
  if (l instanceof Array)
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/i18n.ts"],"names":[],"mappings":";;;AAGO,MAAM,SAAS,GAAG,CACvB,OAAgB,EAChB,MAAc,EACd,QAAgB,EACR,EAAE;IACV,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IACnE,IAAI,CAAC,YAAY,KAAK;QAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;IACnE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;AAClB,CAAC,CAAA;AARY,QAAA,SAAS,aAQrB"}
@@ -0,0 +1,11 @@
1
+ export * from './constants';
2
+ export * from './core-bot';
3
+ export * from './debug';
4
+ export * from './handoff';
5
+ export * from './hubtype-service';
6
+ export * from './i18n';
7
+ export * from './models';
8
+ export * from './output-parser';
9
+ export * from './plugins';
10
+ export * from './routing';
11
+ export * from './utils';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./constants"), exports);
5
+ tslib_1.__exportStar(require("./core-bot"), exports);
6
+ // TODO: Review @botonic/react's tree-shaking to remove dataProvider from bundle
7
+ // export * from './data-provider'
8
+ tslib_1.__exportStar(require("./debug"), exports);
9
+ tslib_1.__exportStar(require("./handoff"), exports);
10
+ tslib_1.__exportStar(require("./hubtype-service"), exports);
11
+ tslib_1.__exportStar(require("./i18n"), exports);
12
+ tslib_1.__exportStar(require("./models"), exports);
13
+ tslib_1.__exportStar(require("./output-parser"), exports);
14
+ tslib_1.__exportStar(require("./plugins"), exports);
15
+ tslib_1.__exportStar(require("./routing"), exports);
16
+ tslib_1.__exportStar(require("./utils"), exports);
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,sDAA2B;AAC3B,qDAA0B;AAC1B,gFAAgF;AAChF,kCAAkC;AAClC,kDAAuB;AACvB,oDAAyB;AACzB,4DAAiC;AACjC,iDAAsB;AACtB,mDAAwB;AACxB,0DAA+B;AAC/B,oDAAyB;AACzB,oDAAyB;AACzB,kDAAuB"}
@@ -0,0 +1,13 @@
1
+ export declare enum EventTypes {
2
+ CONNECTION = "connection",
3
+ MESSAGE = "message",
4
+ ACK = "ack",
5
+ TRACK = "track"
6
+ }
7
+ export interface BaseEvent {
8
+ eventId: string;
9
+ userId: string;
10
+ eventType: EventTypes;
11
+ createdAt: string;
12
+ modifiedAt?: string;
13
+ }
@@ -8,4 +8,4 @@ var EventTypes;
8
8
  EventTypes["ACK"] = "ack";
9
9
  EventTypes["TRACK"] = "track";
10
10
  })(EventTypes = exports.EventTypes || (exports.EventTypes = {}));
11
- //# sourceMappingURL=index.js.map
11
+ //# sourceMappingURL=base-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-event.js","sourceRoot":"","sources":["../../../../src/models/events/base-event.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,uCAAyB,CAAA;IACzB,iCAAmB,CAAA;IACnB,yBAAW,CAAA;IACX,6BAAe,CAAA;AACjB,CAAC,EALW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAKrB"}
@@ -0,0 +1,3 @@
1
+ import { ConnectionEvent } from './connections';
2
+ import { AudioMessageEvent, CarouselMessageEvent, CustomMessageEvent, DocumentMessageEvent, ImageMessageEvent, LocationMessageEvent, PostbackMessageEvent, TextMessageEvent, VideoMessageEvent } from './message';
3
+ export declare type BotonicEvent = TextMessageEvent | PostbackMessageEvent | AudioMessageEvent | DocumentMessageEvent | ImageMessageEvent | VideoMessageEvent | LocationMessageEvent | CarouselMessageEvent | CustomMessageEvent | ConnectionEvent;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=botonic-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"botonic-event.js","sourceRoot":"","sources":["../../../../src/models/events/botonic-event.ts"],"names":[],"mappings":""}
@@ -1,4 +1,4 @@
1
- import { BaseEvent, EventTypes } from '..';
1
+ import { BaseEvent, EventTypes } from '../base-event';
2
2
  export declare enum ConnectionEventStatuses {
3
3
  CONNECTED = "connected",
4
4
  DISCONNECTED = "disconnected"
@@ -6,4 +6,4 @@ var ConnectionEventStatuses;
6
6
  ConnectionEventStatuses["CONNECTED"] = "connected";
7
7
  ConnectionEventStatuses["DISCONNECTED"] = "disconnected";
8
8
  })(ConnectionEventStatuses = exports.ConnectionEventStatuses || (exports.ConnectionEventStatuses = {}));
9
- //# sourceMappingURL=index.js.map
9
+ //# sourceMappingURL=connection-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-event.js","sourceRoot":"","sources":["../../../../../src/models/events/connections/connection-event.ts"],"names":[],"mappings":";;;AAEA,IAAY,uBAGX;AAHD,WAAY,uBAAuB;IACjC,kDAAuB,CAAA;IACvB,wDAA6B,CAAA;AAC/B,CAAC,EAHW,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAGlC"}
@@ -0,0 +1 @@
1
+ export * from './connection-event';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./connection-event"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/models/events/connections/index.ts"],"names":[],"mappings":";;;AAAA,6DAAkC"}
@@ -0,0 +1,4 @@
1
+ export * from './base-event';
2
+ export * from './botonic-event';
3
+ export * from './connections';
4
+ export * from './message';
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./base-event"), exports);
5
+ tslib_1.__exportStar(require("./botonic-event"), exports);
6
+ tslib_1.__exportStar(require("./connections"), exports);
7
+ tslib_1.__exportStar(require("./message"), exports);
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/models/events/index.ts"],"names":[],"mappings":";;;AAAA,uDAA4B;AAC5B,0DAA+B;AAC/B,wDAA6B;AAC7B,oDAAyB"}