iobroker.telegram-menu 2.2.4 → 2.3.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 (274) hide show
  1. package/README.md +12 -0
  2. package/admin/build/index.js +49 -49
  3. package/admin/build/index.js.map +3 -3
  4. package/admin/css/button.css +3 -0
  5. package/admin/css/row-editor.css +1 -1
  6. package/admin/css/style.css +46 -25
  7. package/admin/css/textarea.css +7 -11
  8. package/admin/i18n/de/translations.json +124 -123
  9. package/admin/i18n/en/translations.json +3 -2
  10. package/admin/i18n/es/translations.json +3 -2
  11. package/admin/i18n/fr/translations.json +3 -2
  12. package/admin/i18n/it/translations.json +3 -2
  13. package/admin/i18n/nl/translations.json +3 -2
  14. package/admin/i18n/pl/translations.json +3 -2
  15. package/admin/i18n/pt/translations.json +3 -2
  16. package/admin/i18n/ru/translations.json +3 -2
  17. package/admin/i18n/uk/translations.json +3 -2
  18. package/admin/i18n/zh-cn/translations.json +3 -2
  19. package/admin/words.js +3 -1
  20. package/build/admin/src/config/helper.js +178 -0
  21. package/build/admin/src/config/helper.js.map +1 -0
  22. package/build/admin/src/lib/Utils.js +64 -0
  23. package/build/admin/src/lib/Utils.js.map +1 -0
  24. package/build/admin/src/types/event.js +3 -0
  25. package/build/admin/src/types/event.js.map +1 -0
  26. package/build/app/action.js +270 -0
  27. package/build/app/action.js.map +7 -0
  28. package/build/app/adapterManager.js +36 -0
  29. package/build/app/adapterManager.js.map +7 -0
  30. package/build/app/adapterStartMenuSend.js +59 -0
  31. package/build/app/adapterStartMenuSend.js.map +7 -0
  32. package/build/app/backMenu.js +110 -0
  33. package/build/app/backMenu.js.map +7 -0
  34. package/build/app/botAction.js +47 -0
  35. package/build/app/botAction.js.map +7 -0
  36. package/build/app/configVariables.js +56 -0
  37. package/build/app/configVariables.js.map +7 -0
  38. package/build/app/connection.js +42 -0
  39. package/build/app/connection.js.map +7 -0
  40. package/build/app/createState.js +42 -0
  41. package/build/app/createState.js.map +7 -0
  42. package/build/app/dynamicSwitch.js +69 -0
  43. package/build/app/dynamicSwitch.js.map +7 -0
  44. package/build/app/dynamicSwitchMenu.js +69 -0
  45. package/build/app/dynamicSwitchMenu.js.map +7 -0
  46. package/build/app/dynamicValue.js +80 -0
  47. package/build/app/dynamicValue.js.map +7 -0
  48. package/build/app/echarts.js +60 -0
  49. package/build/app/echarts.js.map +7 -0
  50. package/build/app/getstate.js +148 -0
  51. package/build/app/getstate.js.map +7 -0
  52. package/build/app/global.js +2 -0
  53. package/build/app/global.js.map +7 -0
  54. package/build/app/httpRequest.js +84 -0
  55. package/build/app/httpRequest.js.map +7 -0
  56. package/build/app/jsonTable.js +158 -0
  57. package/build/app/jsonTable.js.map +7 -0
  58. package/build/app/logging.js +46 -0
  59. package/build/app/logging.js.map +7 -0
  60. package/build/app/messageIds.js +116 -0
  61. package/build/app/messageIds.js.map +7 -0
  62. package/build/app/processData.js +198 -0
  63. package/build/app/processData.js.map +7 -0
  64. package/build/app/sendNav.js +49 -0
  65. package/build/app/sendNav.js.map +7 -0
  66. package/build/app/sendpic.js +95 -0
  67. package/build/app/sendpic.js.map +7 -0
  68. package/build/app/sentry.js +43 -0
  69. package/build/app/sentry.js.map +7 -0
  70. package/build/app/setStateIdsToListenTo.js +42 -0
  71. package/build/app/setStateIdsToListenTo.js.map +7 -0
  72. package/build/app/setstate.js +145 -0
  73. package/build/app/setstate.js.map +7 -0
  74. package/build/app/shoppingList.js +97 -0
  75. package/build/app/shoppingList.js.map +7 -0
  76. package/build/app/subMenu.js +281 -0
  77. package/build/app/subMenu.js.map +7 -0
  78. package/build/app/subscribeStates.js +41 -0
  79. package/build/app/subscribeStates.js.map +7 -0
  80. package/build/app/telegram.js +131 -0
  81. package/build/app/telegram.js.map +7 -0
  82. package/build/app/validateMenus.js +64 -0
  83. package/build/app/validateMenus.js.map +7 -0
  84. package/build/build/src/app/action.js +447 -0
  85. package/build/build/src/app/adapterStartMenuSend.js +37 -0
  86. package/build/build/src/app/backMenu.js +70 -0
  87. package/build/build/src/app/botAction.js +25 -0
  88. package/build/build/src/app/connection.js +19 -0
  89. package/build/build/src/app/createState.js +19 -0
  90. package/build/build/src/app/dynamicSwitch.js +51 -0
  91. package/build/build/src/app/dynamicValue.js +64 -0
  92. package/build/build/src/app/echarts.js +45 -0
  93. package/build/build/src/app/getstate.js +157 -0
  94. package/build/build/src/app/global.js +59 -0
  95. package/build/build/src/app/httpRequest.js +64 -0
  96. package/build/build/src/app/jsonTable.js +147 -0
  97. package/build/build/src/app/logging.js +13 -0
  98. package/build/build/src/app/messageIds.js +88 -0
  99. package/build/build/src/app/processData.js +208 -0
  100. package/build/build/src/app/sendNav.js +30 -0
  101. package/build/build/src/app/sendpic.js +69 -0
  102. package/build/build/src/app/setstate.js +126 -0
  103. package/build/build/src/app/shoppingList.js +72 -0
  104. package/build/build/src/app/subMenu.js +361 -0
  105. package/build/build/src/app/subscribeStates.js +25 -0
  106. package/build/build/src/app/telegram.js +101 -0
  107. package/build/build/src/lib/string.js +28 -0
  108. package/build/build/src/lib/time.js +23 -0
  109. package/build/build/src/lib/utilities.js +263 -0
  110. package/build/build/src/lib/utils.js +13 -0
  111. package/build/build/src/main.js +402 -0
  112. package/build/config/config.js +134 -0
  113. package/build/config/config.js.map +7 -0
  114. package/build/io-package.json +87 -87
  115. package/build/lib/action.js +1 -3
  116. package/build/lib/action.js.map +2 -2
  117. package/build/lib/adapterStartMenuSend.js.map +1 -1
  118. package/build/lib/appUtils.js +158 -0
  119. package/build/lib/appUtils.js.map +7 -0
  120. package/build/lib/appUtilsString.js +37 -0
  121. package/build/lib/appUtilsString.js.map +7 -0
  122. package/build/lib/backMenu.js.map +2 -2
  123. package/build/lib/botAction.js.map +1 -1
  124. package/build/lib/dynamicSwitch.js.map +1 -1
  125. package/build/lib/dynamicValue.js.map +1 -1
  126. package/build/lib/echarts.js.map +1 -1
  127. package/build/lib/getstate.js.map +1 -1
  128. package/build/lib/global.js.map +1 -1
  129. package/build/lib/httpRequest.js.map +1 -1
  130. package/build/lib/json.js +54 -0
  131. package/build/lib/json.js.map +7 -0
  132. package/build/lib/jsonTable.js.map +1 -1
  133. package/build/lib/math.js +41 -0
  134. package/build/lib/math.js.map +7 -0
  135. package/build/lib/messageIds.js.map +1 -1
  136. package/build/lib/object.js +35 -0
  137. package/build/lib/object.js.map +7 -0
  138. package/build/lib/processData.js +4 -18
  139. package/build/lib/processData.js.map +3 -3
  140. package/build/lib/sendNav.js.map +1 -1
  141. package/build/lib/sendpic.js +23 -22
  142. package/build/lib/sendpic.js.map +2 -2
  143. package/build/lib/setstate.js.map +1 -1
  144. package/build/lib/shoppingList.js.map +1 -1
  145. package/build/lib/splitValues.js +63 -0
  146. package/build/lib/splitValues.js.map +7 -0
  147. package/build/lib/string.js +125 -3
  148. package/build/lib/string.js.map +2 -2
  149. package/build/lib/subMenu.js +1 -2
  150. package/build/lib/subMenu.js.map +2 -2
  151. package/build/lib/subscribeStates.js.map +1 -1
  152. package/build/lib/telegram.js.map +1 -1
  153. package/build/lib/time.js +93 -0
  154. package/build/lib/time.js.map +7 -0
  155. package/build/lib/utilities.js +84 -281
  156. package/build/lib/utilities.js.map +3 -3
  157. package/build/lib/utils.js +66 -0
  158. package/build/lib/utils.js.map +7 -0
  159. package/build/main.js +151 -233
  160. package/build/main.js.map +3 -3
  161. package/build/src/app/action.js +239 -0
  162. package/build/src/app/action.js.map +1 -0
  163. package/build/src/app/adapterManager.js +12 -0
  164. package/build/src/app/adapterManager.js.map +1 -0
  165. package/build/src/app/adapterStartMenuSend.js +36 -0
  166. package/build/src/app/adapterStartMenuSend.js.map +1 -0
  167. package/build/src/app/backMenu.js +81 -0
  168. package/build/src/app/backMenu.js.map +1 -0
  169. package/build/src/app/botAction.js +25 -0
  170. package/build/src/app/botAction.js.map +1 -0
  171. package/build/src/app/configVariables.js +32 -0
  172. package/build/src/app/configVariables.js.map +1 -0
  173. package/build/src/app/connection.js +20 -0
  174. package/build/src/app/connection.js.map +1 -0
  175. package/build/src/app/createState.js +19 -0
  176. package/build/src/app/createState.js.map +1 -0
  177. package/build/src/app/dynamicSwitch.js +52 -0
  178. package/build/src/app/dynamicSwitch.js.map +1 -0
  179. package/build/src/app/dynamicSwitchMenu.js +52 -0
  180. package/build/src/app/dynamicSwitchMenu.js.map +1 -0
  181. package/build/src/app/dynamicValue.js +52 -0
  182. package/build/src/app/dynamicValue.js.map +1 -0
  183. package/build/src/app/echarts.js +33 -0
  184. package/build/src/app/echarts.js.map +1 -0
  185. package/build/src/app/getstate.js +122 -0
  186. package/build/src/app/getstate.js.map +1 -0
  187. package/build/src/app/global.js +8 -0
  188. package/build/src/app/global.js.map +1 -0
  189. package/build/src/app/httpRequest.js +55 -0
  190. package/build/src/app/httpRequest.js.map +1 -0
  191. package/build/src/app/jsonTable.js +147 -0
  192. package/build/src/app/jsonTable.js.map +1 -0
  193. package/build/src/app/logging.js +22 -0
  194. package/build/src/app/logging.js.map +1 -0
  195. package/build/src/app/messageIds.js +89 -0
  196. package/build/src/app/messageIds.js.map +1 -0
  197. package/build/src/app/processData.js +153 -0
  198. package/build/src/app/processData.js.map +1 -0
  199. package/build/src/app/sendNav.js +26 -0
  200. package/build/src/app/sendNav.js.map +1 -0
  201. package/build/src/app/sendpic.js +66 -0
  202. package/build/src/app/sendpic.js.map +1 -0
  203. package/build/src/app/sentry.js +18 -0
  204. package/build/src/app/sentry.js.map +1 -0
  205. package/build/src/app/setStateIdsToListenTo.js +17 -0
  206. package/build/src/app/setStateIdsToListenTo.js.map +1 -0
  207. package/build/src/app/setstate.js +114 -0
  208. package/build/src/app/setstate.js.map +1 -0
  209. package/build/src/app/shoppingList.js +74 -0
  210. package/build/src/app/shoppingList.js.map +1 -0
  211. package/build/src/app/subMenu.js +237 -0
  212. package/build/src/app/subMenu.js.map +1 -0
  213. package/build/src/app/subscribeStates.js +17 -0
  214. package/build/src/app/subscribeStates.js.map +1 -0
  215. package/build/src/app/telegram.js +83 -0
  216. package/build/src/app/telegram.js.map +1 -0
  217. package/build/src/app/validateMenus.js +30 -0
  218. package/build/src/app/validateMenus.js.map +1 -0
  219. package/build/src/config/config.js +100 -0
  220. package/build/src/config/config.js.map +1 -0
  221. package/build/src/lib/appUtils.js +126 -0
  222. package/build/src/lib/appUtils.js.map +1 -0
  223. package/build/src/lib/appUtilsString.js +13 -0
  224. package/build/src/lib/appUtilsString.js.map +1 -0
  225. package/build/src/lib/json.js +37 -0
  226. package/build/src/lib/json.js.map +1 -0
  227. package/build/src/lib/math.js +17 -0
  228. package/build/src/lib/math.js.map +1 -0
  229. package/build/src/lib/object.js +10 -0
  230. package/build/src/lib/object.js.map +1 -0
  231. package/build/src/lib/splitValues.js +35 -0
  232. package/build/src/lib/splitValues.js.map +1 -0
  233. package/build/src/lib/string.js +121 -0
  234. package/build/src/lib/string.js.map +1 -0
  235. package/build/src/lib/time.js +57 -0
  236. package/build/src/lib/time.js.map +1 -0
  237. package/build/src/lib/utilities.js +111 -0
  238. package/build/src/lib/utilities.js.map +1 -0
  239. package/build/src/lib/utils.js +37 -0
  240. package/build/src/lib/utils.js.map +1 -0
  241. package/build/src/main.js +332 -0
  242. package/build/src/main.js.map +1 -0
  243. package/build/src/test/setup.js +12 -0
  244. package/build/src/test/setup.js.map +1 -0
  245. package/build/src/types/types.js +3 -0
  246. package/build/src/types/types.js.map +1 -0
  247. package/build/test/integration.js +0 -1
  248. package/build/test/integration.js.map +1 -1
  249. package/build/test/mocha.setup.js +0 -1
  250. package/build/test/mocha.setup.js.map +1 -1
  251. package/build/test/package.js +0 -1
  252. package/build/test/package.js.map +1 -1
  253. package/build/test/setup.js +12 -0
  254. package/build/test/setup.js.map +1 -0
  255. package/build/test/test/appUtils.test.js +507 -0
  256. package/build/test/test/appUtils.test.js.map +1 -0
  257. package/build/test/test/appUtilsString.test.js +16 -0
  258. package/build/test/test/appUtilsString.test.js.map +1 -0
  259. package/build/test/test/math.test.js +33 -0
  260. package/build/test/test/math.test.js.map +1 -0
  261. package/build/test/test/object.test.js +54 -0
  262. package/build/test/test/object.test.js.map +1 -0
  263. package/build/test/test/string.test.js +361 -0
  264. package/build/test/test/string.test.js.map +1 -0
  265. package/build/test/test/time.test.js +201 -0
  266. package/build/test/test/time.test.js.map +1 -0
  267. package/build/test/test/utils.test.js +115 -0
  268. package/build/test/test/utils.test.js.map +1 -0
  269. package/build/types/types.js +15 -0
  270. package/build/types/types.js.map +3 -3
  271. package/io-package.json +19 -14
  272. package/package.json +14 -10
  273. package/build/main.test.js +0 -24
  274. package/build/main.test.js.map +0 -1
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.errorLogger = void 0;
4
+ const errorLogger = (title, e, adapter) => {
5
+ if (adapter.supportsFeature && adapter.supportsFeature('PLUGINS')) {
6
+ const sentryInstance = adapter.getPluginInstance('sentry');
7
+ if (sentryInstance) {
8
+ sentryInstance.getSentryObject().captureException(e);
9
+ }
10
+ }
11
+ adapter.log.error(title);
12
+ adapter.log.error(`Error message: ${e.message}`);
13
+ adapter.log.error(`Error stack: ${e.stack}`);
14
+ if (e?.response) {
15
+ adapter.log.error(`Server response: ${e?.response?.status}`);
16
+ }
17
+ if (e?.response) {
18
+ adapter.log.error(`Server status: ${e?.response?.statusText}`);
19
+ }
20
+ };
21
+ exports.errorLogger = errorLogger;
22
+ //# sourceMappingURL=logging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.js","sourceRoot":"","sources":["../../../src/app/logging.ts"],"names":[],"mappings":";;;AAEO,MAAM,WAAW,GAAG,CAAC,KAAa,EAAE,CAAM,EAAE,OAAgB,EAAQ,EAAE;IACzE,IAAI,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QAChE,MAAM,cAAc,GAAG,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,cAAc,EAAE,CAAC;YACjB,cAAc,CAAC,eAAe,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;IACL,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7C,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;IACnE,CAAC;AACL,CAAC,CAAC;AAjBW,QAAA,WAAW,eAiBtB"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deleteMessageIds = deleteMessageIds;
4
+ exports.saveMessageIds = saveMessageIds;
5
+ const main_1 = require("../main");
6
+ const botAction_1 = require("./botAction");
7
+ const logging_1 = require("./logging");
8
+ const utils_1 = require("../lib/utils");
9
+ const string_1 = require("../lib/string");
10
+ let isDeleting = false;
11
+ async function saveMessageIds(state, instanceTelegram) {
12
+ try {
13
+ let requestMessageId = {};
14
+ const requestMessageIdObj = !isDeleting ? await main_1.adapter.getStateAsync('communication.requestIds') : null;
15
+ isDeleting = false;
16
+ const requestUserIdObj = await main_1.adapter.getForeignStateAsync(`${instanceTelegram}.communicate.requestChatId`);
17
+ const request = await main_1.adapter.getForeignStateAsync(`${instanceTelegram}.communicate.request`);
18
+ if (!requestUserIdObj?.val) {
19
+ return;
20
+ }
21
+ const { json, isValidJson } = (0, string_1.parseJSON)(String(requestMessageIdObj?.val), main_1.adapter);
22
+ requestMessageId = isValidJson ? json : {};
23
+ const userIDValue = requestUserIdObj.val.toString();
24
+ if (!requestMessageId[userIDValue]) {
25
+ requestMessageId[userIDValue] = [];
26
+ }
27
+ if (!requestMessageId[userIDValue]?.find(message => message.id === state.val)) {
28
+ requestMessageId[userIDValue].push({
29
+ id: state.val,
30
+ time: Date.now(),
31
+ request: request?.val,
32
+ });
33
+ }
34
+ requestMessageId = removeOldMessageIds(requestMessageId, userIDValue);
35
+ await main_1.adapter.setState('communication.requestIds', JSON.stringify(requestMessageId), true);
36
+ }
37
+ catch (e) {
38
+ (0, logging_1.errorLogger)('Error saveMessageIds:', e, main_1.adapter);
39
+ }
40
+ }
41
+ function removeOldMessageIds(messages, chatID) {
42
+ messages[chatID] = messages[chatID].filter(message => {
43
+ return message.time && message.time > Date.now() - 1000 * 60 * 60 * 24 * 2;
44
+ });
45
+ return messages;
46
+ }
47
+ const removeMessageFromList = ({ element, chat_id, copyMessageIds, }) => {
48
+ return copyMessageIds[chat_id].filter(message => message.id !== element.id);
49
+ };
50
+ async function deleteMessageIds(user, telegramParams, whatShouldDelete) {
51
+ const { telegramInstance, userListWithChatID } = telegramParams;
52
+ try {
53
+ const requestMessageIdObj = await main_1.adapter.getStateAsync('communication.requestIds');
54
+ const lastMessageId = await main_1.adapter.getForeignStateAsync(`${telegramInstance}.communicate.requestMessageId`);
55
+ if (!requestMessageIdObj ||
56
+ typeof requestMessageIdObj.val !== 'string' ||
57
+ !JSON.parse(requestMessageIdObj.val)) {
58
+ return;
59
+ }
60
+ const chat_id = (0, utils_1.getChatID)(userListWithChatID, user);
61
+ const { json, isValidJson } = (0, string_1.parseJSON)(requestMessageIdObj.val);
62
+ if (!isValidJson || !chat_id) {
63
+ return;
64
+ }
65
+ if (lastMessageId && lastMessageId.val) {
66
+ json[chat_id].push({ id: lastMessageId.val.toString() });
67
+ }
68
+ isDeleting = true;
69
+ const copyMessageIds = (0, utils_1.deepCopy)(json, main_1.adapter);
70
+ json[chat_id].forEach((element, index) => {
71
+ const id = element.id?.toString();
72
+ if (whatShouldDelete === 'all' && id) {
73
+ (0, botAction_1.deleteMessageByBot)(telegramInstance, user, parseInt(id), chat_id);
74
+ }
75
+ if (whatShouldDelete === 'last' && index === json[chat_id].length - 1 && id) {
76
+ (0, botAction_1.deleteMessageByBot)(telegramInstance, user, parseInt(id), chat_id);
77
+ }
78
+ if (!copyMessageIds) {
79
+ return;
80
+ }
81
+ copyMessageIds[chat_id] = removeMessageFromList({ element, chat_id, copyMessageIds });
82
+ });
83
+ await main_1.adapter.setState('communication.requestIds', JSON.stringify(copyMessageIds), true);
84
+ }
85
+ catch (e) {
86
+ (0, logging_1.errorLogger)('Error deleteMessageIds:', e, main_1.adapter);
87
+ }
88
+ }
89
+ //# sourceMappingURL=messageIds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageIds.js","sourceRoot":"","sources":["../../../src/app/messageIds.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkEveryMenuForData = checkEveryMenuForData;
4
+ exports.getTimeouts = getTimeouts;
5
+ const main_1 = require("../main");
6
+ const telegram_1 = require("./telegram");
7
+ const sendNav_1 = require("./sendNav");
8
+ const subMenu_1 = require("./subMenu");
9
+ const backMenu_1 = require("./backMenu");
10
+ const setstate_1 = require("./setstate");
11
+ const getstate_1 = require("./getstate");
12
+ const sendpic_1 = require("./sendpic");
13
+ const dynamicValue_1 = require("./dynamicValue");
14
+ const action_1 = require("./action");
15
+ const echarts_1 = require("./echarts");
16
+ const httpRequest_1 = require("./httpRequest");
17
+ const logging_1 = require("./logging");
18
+ const string_1 = require("../lib/string");
19
+ const validateMenus_1 = require("./validateMenus");
20
+ let timeouts = [];
21
+ async function checkEveryMenuForData({ menuData, calledValue, userToSend, telegramParams, menus, isUserActiveCheckbox, token, directoryPicture, timeoutKey, }) {
22
+ for (const menu of menus) {
23
+ const groupData = menuData[menu];
24
+ main_1.adapter.log.debug(`Menu: ${menu}`);
25
+ main_1.adapter.log.debug(`Nav: ${(0, string_1.jsonString)(menuData[menu])}`);
26
+ if (await processData({
27
+ menuData,
28
+ calledValue,
29
+ userToSend,
30
+ groupWithUser: menu,
31
+ telegramParams,
32
+ allMenusWithData: menuData,
33
+ menus,
34
+ isUserActiveCheckbox,
35
+ token,
36
+ directoryPicture,
37
+ timeoutKey,
38
+ groupData,
39
+ })) {
40
+ main_1.adapter.log.debug('CalledText found');
41
+ return true;
42
+ }
43
+ }
44
+ return false;
45
+ }
46
+ async function processData({ menuData, calledValue, userToSend, groupWithUser, telegramParams, allMenusWithData, menus, isUserActiveCheckbox, token, directoryPicture, timeoutKey, groupData, }) {
47
+ try {
48
+ let part = {};
49
+ if ((0, dynamicValue_1.getDynamicValue)(userToSend)) {
50
+ const res = (0, dynamicValue_1.getDynamicValue)(userToSend);
51
+ const valueToSet = res?.valueType ? (0, action_1.adjustValueType)(calledValue, res.valueType) : calledValue;
52
+ valueToSet && res?.id
53
+ ? await (0, setstate_1.setstateIobroker)({ id: res.id, value: valueToSet, ack: res?.ack })
54
+ : await (0, telegram_1.sendToTelegram)({
55
+ userToSend,
56
+ textToSend: `You insert a wrong Type of value, please insert type: ${res?.valueType}`,
57
+ telegramParams,
58
+ });
59
+ (0, dynamicValue_1.removeUserFromDynamicValue)(userToSend);
60
+ const result = await (0, backMenu_1.switchBack)(userToSend, allMenusWithData, menus, true);
61
+ if (result) {
62
+ const { textToSend, keyboard, parse_mode } = result;
63
+ await (0, telegram_1.sendToTelegram)({ userToSend, textToSend, keyboard, telegramParams, parse_mode });
64
+ return true;
65
+ }
66
+ await (0, sendNav_1.sendNav)(part, userToSend, telegramParams);
67
+ return true;
68
+ }
69
+ const call = calledValue.includes('menu:') ? calledValue.split(':')[2] : calledValue;
70
+ part = groupData[call];
71
+ if (!calledValue.toString().includes('menu:') && isUserActiveCheckbox[groupWithUser]) {
72
+ const nav = part?.nav;
73
+ if (nav) {
74
+ main_1.adapter.log.debug(`Menu to Send: ${(0, string_1.jsonString)(nav)}`);
75
+ (0, backMenu_1.backMenuFunc)({ activePage: call, navigation: nav, userToSend });
76
+ if ((0, string_1.jsonString)(nav).includes('menu:')) {
77
+ main_1.adapter.log.debug(`Submenu: ${(0, string_1.jsonString)(nav)}`);
78
+ const result = await (0, subMenu_1.callSubMenu)({
79
+ jsonStringNav: (0, string_1.jsonString)(nav),
80
+ userToSend,
81
+ telegramParams,
82
+ part,
83
+ allMenusWithData,
84
+ menus,
85
+ });
86
+ if (result?.newNav) {
87
+ await checkEveryMenuForData({
88
+ menuData,
89
+ calledValue: result.newNav,
90
+ userToSend,
91
+ telegramParams,
92
+ menus,
93
+ isUserActiveCheckbox,
94
+ token,
95
+ directoryPicture,
96
+ timeoutKey,
97
+ });
98
+ }
99
+ return true;
100
+ }
101
+ await (0, sendNav_1.sendNav)(part, userToSend, telegramParams);
102
+ return true;
103
+ }
104
+ if (part?.switch) {
105
+ await (0, setstate_1.handleSetState)(part, userToSend, 0, false, telegramParams);
106
+ return true;
107
+ }
108
+ if (part?.getData) {
109
+ await (0, getstate_1.getState)(part, userToSend, telegramParams);
110
+ return true;
111
+ }
112
+ if (part?.sendPic) {
113
+ timeouts = (0, sendpic_1.sendPic)(part, userToSend, telegramParams, token, directoryPicture, timeouts, timeoutKey);
114
+ return true;
115
+ }
116
+ if (part?.location) {
117
+ main_1.adapter.log.debug('Send location');
118
+ await (0, telegram_1.sendLocationToTelegram)(userToSend, part.location, telegramParams);
119
+ return true;
120
+ }
121
+ if (part?.echarts) {
122
+ main_1.adapter.log.debug('Send echarts');
123
+ (0, echarts_1.getChart)(part.echarts, directoryPicture, userToSend, telegramParams);
124
+ return true;
125
+ }
126
+ if (part?.httpRequest) {
127
+ main_1.adapter.log.debug('Send http request');
128
+ const result = await (0, httpRequest_1.httpRequest)(part, userToSend, telegramParams, directoryPicture);
129
+ return !!result;
130
+ }
131
+ }
132
+ if ((0, validateMenus_1.isSubmenuOrMenu)(calledValue) && menuData[groupWithUser][call]) {
133
+ main_1.adapter.log.debug('Call Submenu');
134
+ await (0, subMenu_1.callSubMenu)({
135
+ jsonStringNav: calledValue,
136
+ userToSend: userToSend,
137
+ telegramParams: telegramParams,
138
+ part: part,
139
+ allMenusWithData: allMenusWithData,
140
+ menus: menus,
141
+ });
142
+ return true;
143
+ }
144
+ return false;
145
+ }
146
+ catch (e) {
147
+ (0, logging_1.errorLogger)('Error processData:', e, main_1.adapter);
148
+ }
149
+ }
150
+ function getTimeouts() {
151
+ return timeouts;
152
+ }
153
+ //# sourceMappingURL=processData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processData.js","sourceRoot":"","sources":["../../../src/app/processData.ts"],"names":[],"mappings":";;AAmBA,sDAsCC;AAuID,kCAEC;AAlMD,kCAAkC;AAClC,yCAAoE;AACpE,uCAAoC;AACpC,uCAAwC;AACxC,yCAAsD;AACtD,yCAA8D;AAC9D,yCAAsC;AACtC,uCAAoC;AACpC,iDAA6E;AAC7E,qCAA2C;AAC3C,uCAAqC;AACrC,+CAA4C;AAC5C,uCAAwC;AAExC,0CAA2C;AAC3C,mDAAkD;AAElD,IAAI,QAAQ,GAAe,EAAE,CAAC;AAEvB,KAAK,UAAU,qBAAqB,CAAC,EACxC,QAAQ,EACR,WAAW,EACX,UAAU,EACV,cAAc,EACd,KAAK,EACL,oBAAoB,EACpB,KAAK,EACL,gBAAgB,EAChB,UAAU,GACc;IACxB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEjC,cAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QACnC,cAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAA,mBAAU,EAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;QAExD,IACI,MAAM,WAAW,CAAC;YACd,QAAQ;YACR,WAAW;YACX,UAAU;YACV,aAAa,EAAE,IAAI;YACnB,cAAc;YACd,gBAAgB,EAAE,QAAQ;YAC1B,KAAK;YACL,oBAAoB;YACpB,KAAK;YACL,gBAAgB;YAChB,UAAU;YACV,SAAS;SACZ,CAAC,EACJ,CAAC;YACC,cAAO,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,EACvB,QAAQ,EACR,WAAW,EACX,UAAU,EACV,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,KAAK,EACL,oBAAoB,EACpB,KAAK,EACL,gBAAgB,EAChB,UAAU,EACV,SAAS,GACK;IACd,IAAI,CAAC;QACD,IAAI,IAAI,GAAqB,EAAU,CAAC;QAExC,IAAI,IAAA,8BAAe,EAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,IAAA,8BAAe,EAAC,UAAU,CAAC,CAAC;YACxC,MAAM,UAAU,GAAG,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,IAAA,wBAAe,EAAC,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;YAE9F,UAAU,IAAI,GAAG,EAAE,EAAE;gBACjB,CAAC,CAAC,MAAM,IAAA,2BAAgB,EAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;gBAC1E,CAAC,CAAC,MAAM,IAAA,yBAAc,EAAC;oBACjB,UAAU;oBACV,UAAU,EAAE,yDAAyD,GAAG,EAAE,SAAS,EAAE;oBACrF,cAAc;iBACjB,CAAC,CAAC;YAET,IAAA,yCAA0B,EAAC,UAAU,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,MAAM,IAAA,qBAAU,EAAC,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAE3E,IAAI,MAAM,EAAE,CAAC;gBACT,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;gBACpD,MAAM,IAAA,yBAAc,EAAC,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC;gBACvF,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,MAAM,IAAA,iBAAO,EAAC,IAAI,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QACrF,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QAEvB,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,oBAAoB,CAAC,aAAa,CAAC,EAAE,CAAC;YACnF,MAAM,GAAG,GAAG,IAAI,EAAE,GAAG,CAAC;YACtB,IAAI,GAAG,EAAE,CAAC;gBACN,cAAO,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,IAAA,mBAAU,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAEtD,IAAA,uBAAY,EAAC,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;gBAEhE,IAAI,IAAA,mBAAU,EAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBACpC,cAAO,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,IAAA,mBAAU,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAEjD,MAAM,MAAM,GAAG,MAAM,IAAA,qBAAW,EAAC;wBAC7B,aAAa,EAAE,IAAA,mBAAU,EAAC,GAAG,CAAC;wBAC9B,UAAU;wBACV,cAAc;wBACd,IAAI;wBACJ,gBAAgB;wBAChB,KAAK;qBACR,CAAC,CAAC;oBACH,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;wBACjB,MAAM,qBAAqB,CAAC;4BACxB,QAAQ;4BACR,WAAW,EAAE,MAAM,CAAC,MAAM;4BAC1B,UAAU;4BACV,cAAc;4BACd,KAAK;4BACL,oBAAoB;4BACpB,KAAK;4BACL,gBAAgB;4BAChB,UAAU;yBACb,CAAC,CAAC;oBACP,CAAC;oBACD,OAAO,IAAI,CAAC;gBAChB,CAAC;gBACD,MAAM,IAAA,iBAAO,EAAC,IAAI,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;gBAChD,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;gBACf,MAAM,IAAA,yBAAc,EAAC,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;gBACjE,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,IAAI,IAAI,EAAE,OAAO,EAAE,CAAC;gBAChB,MAAM,IAAA,mBAAQ,EAAC,IAAI,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;gBACjD,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,IAAI,IAAI,EAAE,OAAO,EAAE,CAAC;gBAChB,QAAQ,GAAG,IAAA,iBAAO,EAAC,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;gBACpG,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,IAAI,IAAI,EAAE,QAAQ,EAAE,CAAC;gBACjB,cAAO,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBACnC,MAAM,IAAA,iCAAsB,EAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;gBACxE,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,IAAI,IAAI,EAAE,OAAO,EAAE,CAAC;gBAChB,cAAO,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBAClC,IAAA,kBAAQ,EAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;gBACrE,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,IAAI,IAAI,EAAE,WAAW,EAAE,CAAC;gBACpB,cAAO,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBACvC,MAAM,MAAM,GAAG,MAAM,IAAA,yBAAW,EAAC,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAC;gBACrF,OAAO,CAAC,CAAC,MAAM,CAAC;YACpB,CAAC;QACL,CAAC;QACD,IAAI,IAAA,+BAAe,EAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YAChE,cAAO,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAClC,MAAM,IAAA,qBAAW,EAAC;gBACd,aAAa,EAAE,WAAW;gBAC1B,UAAU,EAAE,UAAU;gBACtB,cAAc,EAAE,cAAc;gBAC9B,IAAI,EAAE,IAAI;gBACV,gBAAgB,EAAE,gBAAgB;gBAClC,KAAK,EAAE,KAAK;aACf,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QACd,IAAA,qBAAW,EAAC,oBAAoB,EAAE,CAAC,EAAE,cAAO,CAAC,CAAC;IAClD,CAAC;AACL,CAAC;AAED,SAAgB,WAAW;IACvB,OAAO,QAAQ,CAAC;AACpB,CAAC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendNav = sendNav;
4
+ const telegram_1 = require("./telegram");
5
+ const utilities_1 = require("../lib/utilities");
6
+ const main_1 = require("../main");
7
+ const logging_1 = require("./logging");
8
+ async function sendNav(part, userToSend, telegramParams) {
9
+ try {
10
+ if (userToSend) {
11
+ const { nav: keyboard, text, parse_mode } = part;
12
+ const textToSend = await (0, utilities_1.checkStatusInfo)(text ?? '');
13
+ await (0, telegram_1.sendToTelegram)({
14
+ userToSend,
15
+ textToSend,
16
+ keyboard,
17
+ telegramParams,
18
+ parse_mode,
19
+ });
20
+ }
21
+ }
22
+ catch (e) {
23
+ (0, logging_1.errorLogger)('Error sendNav:', e, main_1.adapter);
24
+ }
25
+ }
26
+ //# sourceMappingURL=sendNav.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sendNav.js","sourceRoot":"","sources":["../../../src/app/sendNav.ts"],"names":[],"mappings":";;AAMA,0BAiBC;AAvBD,yCAA4C;AAC5C,gDAAmD;AAEnD,kCAAkC;AAClC,uCAAwC;AAEjC,KAAK,UAAU,OAAO,CAAC,IAAU,EAAE,UAAkB,EAAE,cAA8B;IACxF,IAAI,CAAC;QACD,IAAI,UAAU,EAAE,CAAC;YACb,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;YACjD,MAAM,UAAU,GAAG,MAAM,IAAA,2BAAe,EAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAErD,MAAM,IAAA,yBAAc,EAAC;gBACjB,UAAU;gBACV,UAAU;gBACV,QAAQ;gBACR,cAAc;gBACd,UAAU;aACb,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QACd,IAAA,qBAAW,EAAC,gBAAgB,EAAE,CAAC,EAAE,cAAO,CAAC,CAAC;IAC9C,CAAC;AACL,CAAC"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendPic = sendPic;
4
+ const telegram_1 = require("./telegram");
5
+ const utils_1 = require("../lib/utils");
6
+ const child_process_1 = require("child_process");
7
+ const logging_1 = require("./logging");
8
+ const main_1 = require("../main");
9
+ const string_1 = require("../lib/string");
10
+ const appUtils_1 = require("../lib/appUtils");
11
+ function sendPic(part, userToSend, telegramParams, token, directoryPicture, timeouts, timeoutKey) {
12
+ try {
13
+ part.sendPic?.forEach(element => {
14
+ const { id, delay, fileName } = element;
15
+ let path = '';
16
+ if ((0, appUtils_1.isStartside)(id)) {
17
+ const newUrl = (0, string_1.replaceAll)(id, '&', '&');
18
+ path = `${directoryPicture}${fileName}`;
19
+ (0, child_process_1.exec)(`curl -H "Autorisation: Bearer ${token.trim()}" "${newUrl}" > ${path}`, (error, stdout, stderr) => {
20
+ if (stdout) {
21
+ main_1.adapter.log.debug(`Stdout: ${stdout}`);
22
+ }
23
+ if (stderr) {
24
+ main_1.adapter.log.debug(`Stderr: ${stderr}`);
25
+ }
26
+ if (error) {
27
+ (0, logging_1.errorLogger)('Error in exec:', error, main_1.adapter);
28
+ return;
29
+ }
30
+ });
31
+ main_1.adapter.log.debug(`Delay Time: ${delay}`);
32
+ timeoutKey += 1;
33
+ if (!(0, utils_1.validateDirectory)(main_1.adapter, directoryPicture)) {
34
+ return;
35
+ }
36
+ main_1.adapter.log.debug(`Path: ${path}`);
37
+ }
38
+ else {
39
+ return;
40
+ }
41
+ const timeout = main_1.adapter.setTimeout(async () => {
42
+ await (0, telegram_1.sendToTelegram)({
43
+ userToSend,
44
+ textToSend: path,
45
+ telegramParams,
46
+ });
47
+ let timeoutToClear = [];
48
+ timeoutToClear = timeouts.filter(item => item.key == timeoutKey);
49
+ timeoutToClear.forEach(item => {
50
+ main_1.adapter.clearTimeout(item.timeout);
51
+ });
52
+ timeouts = timeouts.filter(item => item.key !== timeoutKey);
53
+ main_1.adapter.log.debug('Picture sent');
54
+ }, parseInt(String(element.delay)));
55
+ if (timeout) {
56
+ timeouts.push({ key: timeoutKey, timeout: timeout });
57
+ }
58
+ });
59
+ return timeouts;
60
+ }
61
+ catch (e) {
62
+ (0, logging_1.errorLogger)('Error send pic:', e, main_1.adapter);
63
+ }
64
+ return timeouts;
65
+ }
66
+ //# sourceMappingURL=sendpic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sendpic.js","sourceRoot":"","sources":["../../../src/app/sendpic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendToSentry = void 0;
4
+ const sendToSentry = (error, adapter) => {
5
+ if (adapter.supportsFeature && adapter.supportsFeature('PLUGINS')) {
6
+ const sentryInstance = adapter.getPluginInstance('sentry');
7
+ if (sentryInstance) {
8
+ const Sentry = sentryInstance.getSentryObject();
9
+ Sentry?.withScope((scope) => {
10
+ scope.setLevel('info');
11
+ scope.setExtra('key', 'value');
12
+ Sentry.captureMessage('Event name', 'info'); // Level "info"
13
+ });
14
+ }
15
+ }
16
+ };
17
+ exports.sendToSentry = sendToSentry;
18
+ //# sourceMappingURL=sentry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentry.js","sourceRoot":"","sources":["../../../src/app/sentry.ts"],"names":[],"mappings":";;;AAEO,MAAM,YAAY,GAAG,CAAC,KAAY,EAAE,OAAqB,EAAQ,EAAE;IACtE,IAAI,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QAChE,MAAM,cAAc,GAAG,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,cAAc,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,cAAc,CAAC,eAAe,EAAE,CAAC;YAEhD,MAAM,EAAE,SAAS,CACb,CAAC,KAGA,EAAE,EAAE;gBACD,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACvB,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC/B,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,eAAe;YAChE,CAAC,CACJ,CAAC;QACN,CAAC;IACL,CAAC;AACL,CAAC,CAAC;AAlBW,QAAA,YAAY,gBAkBvB"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getStateIdsToListenTo = getStateIdsToListenTo;
4
+ exports.addSetStateIds = addSetStateIds;
5
+ const subscribeStates_1 = require("./subscribeStates");
6
+ const object_1 = require("../lib/object");
7
+ const setStateIdsToListenTo = [];
8
+ function getStateIdsToListenTo() {
9
+ return setStateIdsToListenTo;
10
+ }
11
+ async function addSetStateIds(setStateId) {
12
+ if (!setStateIdsToListenTo.find(list => list.id === setStateId.id)) {
13
+ setStateIdsToListenTo.push(setStateId);
14
+ await (0, subscribeStates_1._subscribeForeignStates)((0, object_1.setStateIdsToIdArray)([setStateId]));
15
+ }
16
+ }
17
+ //# sourceMappingURL=setStateIdsToListenTo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setStateIdsToListenTo.js","sourceRoot":"","sources":["../../../src/app/setStateIdsToListenTo.ts"],"names":[],"mappings":";;AAMA,sDAEC;AAED,wCAMC;AAfD,uDAA4D;AAC5D,0CAAqD;AAErD,MAAM,qBAAqB,GAAkB,EAAE,CAAC;AAEhD,SAAgB,qBAAqB;IACjC,OAAO,qBAAqB,CAAC;AACjC,CAAC;AAEM,KAAK,UAAU,cAAc,CAAC,UAAuB;IACxD,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;QACjE,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEvC,MAAM,IAAA,yCAAuB,EAAC,IAAA,6BAAoB,EAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;AACL,CAAC"}
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleSetState = exports.setstateIobroker = void 0;
4
+ const telegram_1 = require("./telegram");
5
+ const utilities_1 = require("../lib/utilities");
6
+ const dynamicValue_1 = require("./dynamicValue");
7
+ const main_1 = require("../main");
8
+ const logging_1 = require("./logging");
9
+ const string_1 = require("../lib/string");
10
+ const utils_1 = require("../lib/utils");
11
+ const config_1 = require("../config/config");
12
+ const setStateIdsToListenTo_1 = require("./setStateIdsToListenTo");
13
+ const modifiedValue = (valueFromSubmenu, value) => {
14
+ return value.includes(config_1.config.modifiedValue)
15
+ ? value.replace(config_1.config.modifiedValue, valueFromSubmenu)
16
+ : valueFromSubmenu;
17
+ };
18
+ const isDynamicValueToSet = async (value) => {
19
+ if (typeof value === 'string' && value.includes(config_1.config.dynamicValue.start)) {
20
+ const { substring, substringExcludeSearch: id } = (0, string_1.decomposeText)(value, config_1.config.dynamicValue.start, config_1.config.dynamicValue.end);
21
+ const newValue = await main_1.adapter.getForeignStateAsync(id);
22
+ return value.replace(substring, String(newValue?.val));
23
+ }
24
+ return value;
25
+ };
26
+ const setstateIobroker = async ({ id, value, ack, }) => {
27
+ try {
28
+ const val = await (0, utilities_1.transformValueToTypeOfId)(id, value);
29
+ main_1.adapter.log.debug(`Value to Set: ${(0, string_1.jsonString)(val)}`);
30
+ if ((0, utils_1.isDefined)(val)) {
31
+ await main_1.adapter.setForeignStateAsync(id, val, ack);
32
+ }
33
+ }
34
+ catch (error) {
35
+ (0, logging_1.errorLogger)('Error Setstate', error, main_1.adapter);
36
+ }
37
+ };
38
+ exports.setstateIobroker = setstateIobroker;
39
+ const setValue = async (id, value, SubmenuValuePriority, valueFromSubmenu, ack) => {
40
+ try {
41
+ const valueToSet = SubmenuValuePriority
42
+ ? modifiedValue(String(valueFromSubmenu), value)
43
+ : await isDynamicValueToSet(value);
44
+ await (0, exports.setstateIobroker)({ id, value: valueToSet, ack });
45
+ }
46
+ catch (error) {
47
+ (0, logging_1.errorLogger)('Error setValue', error, main_1.adapter);
48
+ }
49
+ };
50
+ const handleSetState = async (part, userToSend, valueFromSubmenu, SubmenuValuePriority, telegramParams) => {
51
+ try {
52
+ if (!part.switch) {
53
+ return;
54
+ }
55
+ for (const { returnText: text, id: ID, parse_mode, confirm, ack, toggle, value } of part.switch) {
56
+ let returnText = text;
57
+ if (returnText.includes(config_1.config.setDynamicValue)) {
58
+ const { confirmText, id } = await (0, dynamicValue_1.setDynamicValue)(returnText, ack, ID, userToSend, telegramParams, parse_mode, confirm);
59
+ if (confirm) {
60
+ await (0, setStateIdsToListenTo_1.addSetStateIds)({
61
+ id: id ?? ID,
62
+ confirm,
63
+ returnText: confirmText,
64
+ userToSend,
65
+ });
66
+ }
67
+ }
68
+ if (!returnText.includes("{'id':'")) {
69
+ await (0, setStateIdsToListenTo_1.addSetStateIds)({
70
+ id: ID,
71
+ confirm,
72
+ returnText,
73
+ userToSend,
74
+ parse_mode,
75
+ });
76
+ }
77
+ else {
78
+ returnText = returnText.replace(/'/g, '"');
79
+ const textToSend = returnText.slice(0, returnText.indexOf('{')).trim();
80
+ const { json, isValidJson } = (0, string_1.parseJSON)(returnText.slice(returnText.indexOf('{'), returnText.indexOf('}') + 1));
81
+ if (!isValidJson) {
82
+ return;
83
+ }
84
+ json.text = json.text + returnText.slice(returnText.indexOf('}') + 1);
85
+ await (0, telegram_1.sendToTelegram)({
86
+ userToSend,
87
+ textToSend,
88
+ telegramParams,
89
+ parse_mode,
90
+ });
91
+ await (0, setStateIdsToListenTo_1.addSetStateIds)({
92
+ id: json.id,
93
+ confirm: true,
94
+ returnText: json.text,
95
+ userToSend: userToSend,
96
+ });
97
+ }
98
+ if (toggle) {
99
+ const state = await main_1.adapter.getForeignStateAsync(ID);
100
+ state
101
+ ? await (0, exports.setstateIobroker)({ id: ID, value: !state.val, ack })
102
+ : await (0, exports.setstateIobroker)({ id: ID, value: false, ack });
103
+ }
104
+ else {
105
+ await setValue(ID, value, SubmenuValuePriority, valueFromSubmenu, ack);
106
+ }
107
+ }
108
+ }
109
+ catch (error) {
110
+ (0, logging_1.errorLogger)('Error Switch', error, main_1.adapter);
111
+ }
112
+ };
113
+ exports.handleSetState = handleSetState;
114
+ //# sourceMappingURL=setstate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setstate.js","sourceRoot":"","sources":["../../../src/app/setstate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.shoppingListSubscribeStateAndDeleteItem = shoppingListSubscribeStateAndDeleteItem;
4
+ exports.deleteMessageAndSendNewShoppingList = deleteMessageAndSendNewShoppingList;
5
+ const messageIds_js_1 = require("./messageIds.js");
6
+ const jsonTable_js_1 = require("./jsonTable.js");
7
+ const telegram_js_1 = require("./telegram.js");
8
+ const subscribeStates_js_1 = require("./subscribeStates.js");
9
+ const logging_js_1 = require("./logging.js");
10
+ const main_js_1 = require("../main.js");
11
+ const string_1 = require("../lib/string");
12
+ const setstate_1 = require("./setstate");
13
+ const json_1 = require("../lib/json");
14
+ const utils_1 = require("../lib/utils");
15
+ const objData = {};
16
+ let isSubscribed = false;
17
+ async function shoppingListSubscribeStateAndDeleteItem(val, telegramParams) {
18
+ try {
19
+ let array, user, idList, instance, idItem, res;
20
+ if ((0, utils_1.isDefined)(val)) {
21
+ array = val.split(':');
22
+ user = array[0].replace('[', '').replace(']sList', '');
23
+ idList = array[1];
24
+ instance = array[2];
25
+ idItem = array[3];
26
+ res = await main_js_1.adapter.getForeignObjectAsync(`alexa2.${instance}.Lists.SHOPPING_LIST.items.${idItem}`);
27
+ if (res) {
28
+ objData[user] = { idList: idList };
29
+ main_js_1.adapter.log.debug(`Alexa-shoppinglist: ${idList}`);
30
+ if (!isSubscribed) {
31
+ await (0, subscribeStates_js_1._subscribeForeignStates)(`alexa-shoppinglist.${idList}`);
32
+ isSubscribed = true;
33
+ }
34
+ await (0, setstate_1.setstateIobroker)({
35
+ id: `alexa2.${instance}.Lists.SHOPPING_LIST.items.${idItem}.#delete`,
36
+ value: true,
37
+ ack: false,
38
+ });
39
+ return;
40
+ }
41
+ await (0, telegram_js_1.sendToTelegram)({
42
+ userToSend: user,
43
+ textToSend: 'Cannot delete the Item',
44
+ telegramParams,
45
+ parse_mode: true,
46
+ });
47
+ main_js_1.adapter.log.debug('Cannot delete the Item');
48
+ }
49
+ }
50
+ catch (e) {
51
+ (0, logging_js_1.errorLogger)('Error shoppingList:', e, main_js_1.adapter);
52
+ }
53
+ }
54
+ async function deleteMessageAndSendNewShoppingList(telegramParams, userToSend) {
55
+ try {
56
+ const user = userToSend;
57
+ const idList = objData[user].idList;
58
+ await (0, subscribeStates_js_1._subscribeForeignStates)(`alexa-shoppinglist.${idList}`);
59
+ await (0, messageIds_js_1.deleteMessageIds)(user, telegramParams, 'last');
60
+ const result = await main_js_1.adapter.getForeignStateAsync(`alexa-shoppinglist.${idList}`);
61
+ if (result?.val) {
62
+ main_js_1.adapter.log.debug(`Result from Shoppinglist: ${(0, string_1.jsonString)(result)}`);
63
+ const newId = `alexa-shoppinglist.${idList}`;
64
+ const resultJson = (0, jsonTable_js_1.createKeyboardFromJson)((0, json_1.toJson)(result.val), null, newId, user);
65
+ if (resultJson?.text && resultJson?.keyboard) {
66
+ (0, telegram_js_1.sendToTelegramSubmenu)(user, resultJson.text, resultJson.keyboard, telegramParams, true);
67
+ }
68
+ }
69
+ }
70
+ catch (e) {
71
+ (0, logging_js_1.errorLogger)('Error deleteMessageAndSendNewShoppingList:', e, main_js_1.adapter);
72
+ }
73
+ }
74
+ //# sourceMappingURL=shoppingList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shoppingList.js","sourceRoot":"","sources":["../../../src/app/shoppingList.ts"],"names":[],"mappings":"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"}