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,198 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var processData_exports = {};
20
+ __export(processData_exports, {
21
+ checkEveryMenuForData: () => checkEveryMenuForData,
22
+ getTimeouts: () => getTimeouts
23
+ });
24
+ module.exports = __toCommonJS(processData_exports);
25
+ var import_main = require("../main");
26
+ var import_telegram = require("./telegram");
27
+ var import_sendNav = require("./sendNav");
28
+ var import_subMenu = require("./subMenu");
29
+ var import_backMenu = require("./backMenu");
30
+ var import_setstate = require("./setstate");
31
+ var import_getstate = require("./getstate");
32
+ var import_sendpic = require("./sendpic");
33
+ var import_dynamicValue = require("./dynamicValue");
34
+ var import_action = require("./action");
35
+ var import_echarts = require("./echarts");
36
+ var import_httpRequest = require("./httpRequest");
37
+ var import_logging = require("./logging");
38
+ var import_string = require("../lib/string");
39
+ var import_validateMenus = require("./validateMenus");
40
+ let timeouts = [];
41
+ async function checkEveryMenuForData({
42
+ menuData,
43
+ calledValue,
44
+ userToSend,
45
+ telegramParams,
46
+ menus,
47
+ isUserActiveCheckbox,
48
+ token,
49
+ directoryPicture,
50
+ timeoutKey
51
+ }) {
52
+ for (const menu of menus) {
53
+ const groupData = menuData[menu];
54
+ import_main.adapter.log.debug(`Menu: ${menu}`);
55
+ import_main.adapter.log.debug(`Nav: ${(0, import_string.jsonString)(menuData[menu])}`);
56
+ if (await processData({
57
+ menuData,
58
+ calledValue,
59
+ userToSend,
60
+ groupWithUser: menu,
61
+ telegramParams,
62
+ allMenusWithData: menuData,
63
+ menus,
64
+ isUserActiveCheckbox,
65
+ token,
66
+ directoryPicture,
67
+ timeoutKey,
68
+ groupData
69
+ })) {
70
+ import_main.adapter.log.debug("CalledText found");
71
+ return true;
72
+ }
73
+ }
74
+ return false;
75
+ }
76
+ async function processData({
77
+ menuData,
78
+ calledValue,
79
+ userToSend,
80
+ groupWithUser,
81
+ telegramParams,
82
+ allMenusWithData,
83
+ menus,
84
+ isUserActiveCheckbox,
85
+ token,
86
+ directoryPicture,
87
+ timeoutKey,
88
+ groupData
89
+ }) {
90
+ try {
91
+ let part = {};
92
+ if ((0, import_dynamicValue.getDynamicValue)(userToSend)) {
93
+ const res = (0, import_dynamicValue.getDynamicValue)(userToSend);
94
+ const valueToSet = (res == null ? void 0 : res.valueType) ? (0, import_action.adjustValueType)(calledValue, res.valueType) : calledValue;
95
+ valueToSet && (res == null ? void 0 : res.id) ? await (0, import_setstate.setstateIobroker)({ id: res.id, value: valueToSet, ack: res == null ? void 0 : res.ack }) : await (0, import_telegram.sendToTelegram)({
96
+ userToSend,
97
+ textToSend: `You insert a wrong Type of value, please insert type: ${res == null ? void 0 : res.valueType}`,
98
+ telegramParams
99
+ });
100
+ (0, import_dynamicValue.removeUserFromDynamicValue)(userToSend);
101
+ const result = await (0, import_backMenu.switchBack)(userToSend, allMenusWithData, menus, true);
102
+ if (result) {
103
+ const { textToSend, keyboard, parse_mode } = result;
104
+ await (0, import_telegram.sendToTelegram)({ userToSend, textToSend, keyboard, telegramParams, parse_mode });
105
+ return true;
106
+ }
107
+ await (0, import_sendNav.sendNav)(part, userToSend, telegramParams);
108
+ return true;
109
+ }
110
+ const call = calledValue.includes("menu:") ? calledValue.split(":")[2] : calledValue;
111
+ part = groupData[call];
112
+ if (!calledValue.toString().includes("menu:") && isUserActiveCheckbox[groupWithUser]) {
113
+ const nav = part == null ? void 0 : part.nav;
114
+ if (nav) {
115
+ import_main.adapter.log.debug(`Menu to Send: ${(0, import_string.jsonString)(nav)}`);
116
+ (0, import_backMenu.backMenuFunc)({ activePage: call, navigation: nav, userToSend });
117
+ if ((0, import_string.jsonString)(nav).includes("menu:")) {
118
+ import_main.adapter.log.debug(`Submenu: ${(0, import_string.jsonString)(nav)}`);
119
+ const result = await (0, import_subMenu.callSubMenu)({
120
+ jsonStringNav: (0, import_string.jsonString)(nav),
121
+ userToSend,
122
+ telegramParams,
123
+ part,
124
+ allMenusWithData,
125
+ menus
126
+ });
127
+ if (result == null ? void 0 : result.newNav) {
128
+ await checkEveryMenuForData({
129
+ menuData,
130
+ calledValue: result.newNav,
131
+ userToSend,
132
+ telegramParams,
133
+ menus,
134
+ isUserActiveCheckbox,
135
+ token,
136
+ directoryPicture,
137
+ timeoutKey
138
+ });
139
+ }
140
+ return true;
141
+ }
142
+ await (0, import_sendNav.sendNav)(part, userToSend, telegramParams);
143
+ return true;
144
+ }
145
+ if (part == null ? void 0 : part.switch) {
146
+ await (0, import_setstate.handleSetState)(part, userToSend, 0, false, telegramParams);
147
+ return true;
148
+ }
149
+ if (part == null ? void 0 : part.getData) {
150
+ await (0, import_getstate.getState)(part, userToSend, telegramParams);
151
+ return true;
152
+ }
153
+ if (part == null ? void 0 : part.sendPic) {
154
+ timeouts = (0, import_sendpic.sendPic)(part, userToSend, telegramParams, token, directoryPicture, timeouts, timeoutKey);
155
+ return true;
156
+ }
157
+ if (part == null ? void 0 : part.location) {
158
+ import_main.adapter.log.debug("Send location");
159
+ await (0, import_telegram.sendLocationToTelegram)(userToSend, part.location, telegramParams);
160
+ return true;
161
+ }
162
+ if (part == null ? void 0 : part.echarts) {
163
+ import_main.adapter.log.debug("Send echarts");
164
+ (0, import_echarts.getChart)(part.echarts, directoryPicture, userToSend, telegramParams);
165
+ return true;
166
+ }
167
+ if (part == null ? void 0 : part.httpRequest) {
168
+ import_main.adapter.log.debug("Send http request");
169
+ const result = await (0, import_httpRequest.httpRequest)(part, userToSend, telegramParams, directoryPicture);
170
+ return !!result;
171
+ }
172
+ }
173
+ if ((0, import_validateMenus.isSubmenuOrMenu)(calledValue) && menuData[groupWithUser][call]) {
174
+ import_main.adapter.log.debug("Call Submenu");
175
+ await (0, import_subMenu.callSubMenu)({
176
+ jsonStringNav: calledValue,
177
+ userToSend,
178
+ telegramParams,
179
+ part,
180
+ allMenusWithData,
181
+ menus
182
+ });
183
+ return true;
184
+ }
185
+ return false;
186
+ } catch (e) {
187
+ (0, import_logging.errorLogger)("Error processData:", e, import_main.adapter);
188
+ }
189
+ }
190
+ function getTimeouts() {
191
+ return timeouts;
192
+ }
193
+ // Annotate the CommonJS export names for ESM import in node:
194
+ 0 && (module.exports = {
195
+ checkEveryMenuForData,
196
+ getTimeouts
197
+ });
198
+ //# sourceMappingURL=processData.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/app/processData.ts"],
4
+ "sourcesContent": ["import { adapter } from '../main';\nimport { sendLocationToTelegram, sendToTelegram } from './telegram';\nimport { sendNav } from './sendNav';\nimport { callSubMenu } from './subMenu';\nimport { backMenuFunc, switchBack } from './backMenu';\nimport { handleSetState, setstateIobroker } from './setstate';\nimport { getState } from './getstate';\nimport { sendPic } from './sendpic';\nimport { getDynamicValue, removeUserFromDynamicValue } from './dynamicValue';\nimport { adjustValueType } from './action';\nimport { getChart } from './echarts';\nimport { httpRequest } from './httpRequest';\nimport { errorLogger } from './logging';\nimport type { CheckEveryMenuForDataType, Part, ProcessDataType, Timeouts } from '../types/types';\nimport { jsonString } from '../lib/string';\nimport { isSubmenuOrMenu } from './validateMenus';\n\nlet timeouts: Timeouts[] = [];\n\nexport async function checkEveryMenuForData({\n menuData,\n calledValue,\n userToSend,\n telegramParams,\n menus,\n isUserActiveCheckbox,\n token,\n directoryPicture,\n timeoutKey,\n}: CheckEveryMenuForDataType): Promise<boolean> {\n for (const menu of menus) {\n const groupData = menuData[menu];\n\n adapter.log.debug(`Menu: ${menu}`);\n adapter.log.debug(`Nav: ${jsonString(menuData[menu])}`);\n\n if (\n await processData({\n menuData,\n calledValue,\n userToSend,\n groupWithUser: menu,\n telegramParams,\n allMenusWithData: menuData,\n menus,\n isUserActiveCheckbox,\n token,\n directoryPicture,\n timeoutKey,\n groupData,\n })\n ) {\n adapter.log.debug('CalledText found');\n return true;\n }\n }\n return false;\n}\n\nasync function processData({\n menuData,\n calledValue,\n userToSend,\n groupWithUser,\n telegramParams,\n allMenusWithData,\n menus,\n isUserActiveCheckbox,\n token,\n directoryPicture,\n timeoutKey,\n groupData,\n}: ProcessDataType): Promise<boolean | undefined> {\n try {\n let part: Part | undefined = {} as Part;\n\n if (getDynamicValue(userToSend)) {\n const res = getDynamicValue(userToSend);\n const valueToSet = res?.valueType ? adjustValueType(calledValue, res.valueType) : calledValue;\n\n valueToSet && res?.id\n ? await setstateIobroker({ id: res.id, value: valueToSet, ack: res?.ack })\n : await sendToTelegram({\n userToSend,\n textToSend: `You insert a wrong Type of value, please insert type: ${res?.valueType}`,\n telegramParams,\n });\n\n removeUserFromDynamicValue(userToSend);\n const result = await switchBack(userToSend, allMenusWithData, menus, true);\n\n if (result) {\n const { textToSend, keyboard, parse_mode } = result;\n await sendToTelegram({ userToSend, textToSend, keyboard, telegramParams, parse_mode });\n return true;\n }\n\n await sendNav(part, userToSend, telegramParams);\n return true;\n }\n\n const call = calledValue.includes('menu:') ? calledValue.split(':')[2] : calledValue;\n part = groupData[call];\n\n if (!calledValue.toString().includes('menu:') && isUserActiveCheckbox[groupWithUser]) {\n const nav = part?.nav;\n if (nav) {\n adapter.log.debug(`Menu to Send: ${jsonString(nav)}`);\n\n backMenuFunc({ activePage: call, navigation: nav, userToSend });\n\n if (jsonString(nav).includes('menu:')) {\n adapter.log.debug(`Submenu: ${jsonString(nav)}`);\n\n const result = await callSubMenu({\n jsonStringNav: jsonString(nav),\n userToSend,\n telegramParams,\n part,\n allMenusWithData,\n menus,\n });\n if (result?.newNav) {\n await checkEveryMenuForData({\n menuData,\n calledValue: result.newNav,\n userToSend,\n telegramParams,\n menus,\n isUserActiveCheckbox,\n token,\n directoryPicture,\n timeoutKey,\n });\n }\n return true;\n }\n await sendNav(part, userToSend, telegramParams);\n return true;\n }\n\n if (part?.switch) {\n await handleSetState(part, userToSend, 0, false, telegramParams);\n return true;\n }\n\n if (part?.getData) {\n await getState(part, userToSend, telegramParams);\n return true;\n }\n\n if (part?.sendPic) {\n timeouts = sendPic(part, userToSend, telegramParams, token, directoryPicture, timeouts, timeoutKey);\n return true;\n }\n\n if (part?.location) {\n adapter.log.debug('Send location');\n await sendLocationToTelegram(userToSend, part.location, telegramParams);\n return true;\n }\n\n if (part?.echarts) {\n adapter.log.debug('Send echarts');\n getChart(part.echarts, directoryPicture, userToSend, telegramParams);\n return true;\n }\n\n if (part?.httpRequest) {\n adapter.log.debug('Send http request');\n const result = await httpRequest(part, userToSend, telegramParams, directoryPicture);\n return !!result;\n }\n }\n if (isSubmenuOrMenu(calledValue) && menuData[groupWithUser][call]) {\n adapter.log.debug('Call Submenu');\n await callSubMenu({\n jsonStringNav: calledValue,\n userToSend: userToSend,\n telegramParams: telegramParams,\n part: part,\n allMenusWithData: allMenusWithData,\n menus: menus,\n });\n return true;\n }\n return false;\n } catch (e: any) {\n errorLogger('Error processData:', e, adapter);\n }\n}\n\nexport function getTimeouts(): Timeouts[] {\n return timeouts;\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var sendNav_exports = {};
20
+ __export(sendNav_exports, {
21
+ sendNav: () => sendNav
22
+ });
23
+ module.exports = __toCommonJS(sendNav_exports);
24
+ var import_telegram = require("./telegram");
25
+ var import_utilities = require("../lib/utilities");
26
+ var import_main = require("../main");
27
+ var import_logging = require("./logging");
28
+ async function sendNav(part, userToSend, telegramParams) {
29
+ try {
30
+ if (userToSend) {
31
+ const { nav: keyboard, text, parse_mode } = part;
32
+ const textToSend = await (0, import_utilities.checkStatusInfo)(text != null ? text : "");
33
+ await (0, import_telegram.sendToTelegram)({
34
+ userToSend,
35
+ textToSend,
36
+ keyboard,
37
+ telegramParams,
38
+ parse_mode
39
+ });
40
+ }
41
+ } catch (e) {
42
+ (0, import_logging.errorLogger)("Error sendNav:", e, import_main.adapter);
43
+ }
44
+ }
45
+ // Annotate the CommonJS export names for ESM import in node:
46
+ 0 && (module.exports = {
47
+ sendNav
48
+ });
49
+ //# sourceMappingURL=sendNav.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/app/sendNav.ts"],
4
+ "sourcesContent": ["import { sendToTelegram } from './telegram';\nimport { checkStatusInfo } from '../lib/utilities';\nimport type { Part, TelegramParams } from '../types/types';\nimport { adapter } from '../main';\nimport { errorLogger } from './logging';\n\nexport async function sendNav(part: Part, userToSend: string, telegramParams: TelegramParams): Promise<void> {\n try {\n if (userToSend) {\n const { nav: keyboard, text, parse_mode } = part;\n const textToSend = await checkStatusInfo(text ?? '');\n\n await sendToTelegram({\n userToSend,\n textToSend,\n keyboard,\n telegramParams,\n parse_mode,\n });\n }\n } catch (e: any) {\n errorLogger('Error sendNav:', e, adapter);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA+B;AAC/B,uBAAgC;AAEhC,kBAAwB;AACxB,qBAA4B;AAE5B,eAAsB,QAAQ,MAAY,YAAoB,gBAA+C;AACzG,MAAI;AACA,QAAI,YAAY;AACZ,YAAM,EAAE,KAAK,UAAU,MAAM,WAAW,IAAI;AAC5C,YAAM,aAAa,UAAM,kCAAgB,sBAAQ,EAAE;AAEnD,gBAAM,gCAAe;AAAA,QACjB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,EACJ,SAAS,GAAQ;AACb,oCAAY,kBAAkB,GAAG,mBAAO;AAAA,EAC5C;AACJ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var sendpic_exports = {};
20
+ __export(sendpic_exports, {
21
+ sendPic: () => sendPic
22
+ });
23
+ module.exports = __toCommonJS(sendpic_exports);
24
+ var import_telegram = require("./telegram");
25
+ var import_utils = require("../lib/utils");
26
+ var import_child_process = require("child_process");
27
+ var import_logging = require("./logging");
28
+ var import_main = require("../main");
29
+ var import_string = require("../lib/string");
30
+ var import_appUtils = require("../lib/appUtils");
31
+ function sendPic(part, userToSend, telegramParams, token, directoryPicture, timeouts, timeoutKey) {
32
+ var _a;
33
+ try {
34
+ (_a = part.sendPic) == null ? void 0 : _a.forEach((element) => {
35
+ const { id, delay, fileName } = element;
36
+ let path = "";
37
+ if ((0, import_appUtils.isStartside)(id)) {
38
+ const newUrl = (0, import_string.replaceAll)(id, "&amp;", "&");
39
+ path = `${directoryPicture}${fileName}`;
40
+ (0, import_child_process.exec)(
41
+ `curl -H "Autorisation: Bearer ${token.trim()}" "${newUrl}" > ${path}`,
42
+ (error, stdout, stderr) => {
43
+ if (stdout) {
44
+ import_main.adapter.log.debug(`Stdout: ${stdout}`);
45
+ }
46
+ if (stderr) {
47
+ import_main.adapter.log.debug(`Stderr: ${stderr}`);
48
+ }
49
+ if (error) {
50
+ (0, import_logging.errorLogger)("Error in exec:", error, import_main.adapter);
51
+ return;
52
+ }
53
+ }
54
+ );
55
+ import_main.adapter.log.debug(`Delay Time: ${delay}`);
56
+ timeoutKey += 1;
57
+ if (!(0, import_utils.validateDirectory)(import_main.adapter, directoryPicture)) {
58
+ return;
59
+ }
60
+ import_main.adapter.log.debug(`Path: ${path}`);
61
+ } else {
62
+ return;
63
+ }
64
+ const timeout = import_main.adapter.setTimeout(
65
+ async () => {
66
+ await (0, import_telegram.sendToTelegram)({
67
+ userToSend,
68
+ textToSend: path,
69
+ telegramParams
70
+ });
71
+ let timeoutToClear = [];
72
+ timeoutToClear = timeouts.filter((item) => item.key == timeoutKey);
73
+ timeoutToClear.forEach((item) => {
74
+ import_main.adapter.clearTimeout(item.timeout);
75
+ });
76
+ timeouts = timeouts.filter((item) => item.key !== timeoutKey);
77
+ import_main.adapter.log.debug("Picture sent");
78
+ },
79
+ parseInt(String(element.delay))
80
+ );
81
+ if (timeout) {
82
+ timeouts.push({ key: timeoutKey, timeout });
83
+ }
84
+ });
85
+ return timeouts;
86
+ } catch (e) {
87
+ (0, import_logging.errorLogger)("Error send pic:", e, import_main.adapter);
88
+ }
89
+ return timeouts;
90
+ }
91
+ // Annotate the CommonJS export names for ESM import in node:
92
+ 0 && (module.exports = {
93
+ sendPic
94
+ });
95
+ //# sourceMappingURL=sendpic.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/app/sendpic.ts"],
4
+ "sourcesContent": ["import { sendToTelegram } from './telegram';\nimport { validateDirectory } from '../lib/utils';\nimport { exec } from 'child_process';\nimport { errorLogger } from './logging';\nimport { adapter } from '../main';\nimport type { Part, TelegramParams, Timeouts } from '../types/types';\nimport { replaceAll } from '../lib/string';\nimport { isStartside } from '../lib/appUtils';\n\nexport function sendPic(\n part: Part,\n userToSend: string,\n telegramParams: TelegramParams,\n token: string,\n directoryPicture: string,\n timeouts: Timeouts[],\n timeoutKey: string,\n): Timeouts[] {\n try {\n part.sendPic?.forEach(element => {\n const { id, delay, fileName } = element;\n let path = '';\n if (isStartside(id)) {\n const newUrl = replaceAll(id, '&amp;', '&');\n path = `${directoryPicture}${fileName}`;\n\n exec(\n `curl -H \"Autorisation: Bearer ${token.trim()}\" \"${newUrl}\" > ${path}`,\n (error: any, stdout: any, stderr: any) => {\n if (stdout) {\n adapter.log.debug(`Stdout: ${stdout}`);\n }\n if (stderr) {\n adapter.log.debug(`Stderr: ${stderr}`);\n }\n if (error) {\n errorLogger('Error in exec:', error, adapter);\n return;\n }\n },\n );\n\n adapter.log.debug(`Delay Time: ${delay}`);\n timeoutKey += 1;\n\n if (!validateDirectory(adapter, directoryPicture)) {\n return;\n }\n\n adapter.log.debug(`Path: ${path}`);\n } else {\n return;\n }\n\n const timeout = adapter.setTimeout(\n async () => {\n await sendToTelegram({\n userToSend,\n textToSend: path,\n telegramParams,\n });\n let timeoutToClear: Timeouts[] = [];\n timeoutToClear = timeouts.filter(item => item.key == timeoutKey);\n timeoutToClear.forEach(item => {\n adapter.clearTimeout(item.timeout);\n });\n\n timeouts = timeouts.filter(item => item.key !== timeoutKey);\n\n adapter.log.debug('Picture sent');\n },\n parseInt(String(element.delay)),\n );\n\n if (timeout) {\n timeouts.push({ key: timeoutKey, timeout: timeout });\n }\n });\n return timeouts;\n } catch (e: any) {\n errorLogger('Error send pic:', e, adapter);\n }\n return timeouts;\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA+B;AAC/B,mBAAkC;AAClC,2BAAqB;AACrB,qBAA4B;AAC5B,kBAAwB;AAExB,oBAA2B;AAC3B,sBAA4B;AAErB,SAAS,QACZ,MACA,YACA,gBACA,OACA,kBACA,UACA,YACU;AAjBd;AAkBI,MAAI;AACA,eAAK,YAAL,mBAAc,QAAQ,aAAW;AAC7B,YAAM,EAAE,IAAI,OAAO,SAAS,IAAI;AAChC,UAAI,OAAO;AACX,cAAI,6BAAY,EAAE,GAAG;AACjB,cAAM,aAAS,0BAAW,IAAI,SAAS,GAAG;AAC1C,eAAO,GAAG,gBAAgB,GAAG,QAAQ;AAErC;AAAA,UACI,iCAAiC,MAAM,KAAK,CAAC,MAAM,MAAM,OAAO,IAAI;AAAA,UACpE,CAAC,OAAY,QAAa,WAAgB;AACtC,gBAAI,QAAQ;AACR,kCAAQ,IAAI,MAAM,WAAW,MAAM,EAAE;AAAA,YACzC;AACA,gBAAI,QAAQ;AACR,kCAAQ,IAAI,MAAM,WAAW,MAAM,EAAE;AAAA,YACzC;AACA,gBAAI,OAAO;AACP,8CAAY,kBAAkB,OAAO,mBAAO;AAC5C;AAAA,YACJ;AAAA,UACJ;AAAA,QACJ;AAEA,4BAAQ,IAAI,MAAM,eAAe,KAAK,EAAE;AACxC,sBAAc;AAEd,YAAI,KAAC,gCAAkB,qBAAS,gBAAgB,GAAG;AAC/C;AAAA,QACJ;AAEA,4BAAQ,IAAI,MAAM,SAAS,IAAI,EAAE;AAAA,MACrC,OAAO;AACH;AAAA,MACJ;AAEA,YAAM,UAAU,oBAAQ;AAAA,QACpB,YAAY;AACR,oBAAM,gCAAe;AAAA,YACjB;AAAA,YACA,YAAY;AAAA,YACZ;AAAA,UACJ,CAAC;AACD,cAAI,iBAA6B,CAAC;AAClC,2BAAiB,SAAS,OAAO,UAAQ,KAAK,OAAO,UAAU;AAC/D,yBAAe,QAAQ,UAAQ;AAC3B,gCAAQ,aAAa,KAAK,OAAO;AAAA,UACrC,CAAC;AAED,qBAAW,SAAS,OAAO,UAAQ,KAAK,QAAQ,UAAU;AAE1D,8BAAQ,IAAI,MAAM,cAAc;AAAA,QACpC;AAAA,QACA,SAAS,OAAO,QAAQ,KAAK,CAAC;AAAA,MAClC;AAEA,UAAI,SAAS;AACT,iBAAS,KAAK,EAAE,KAAK,YAAY,QAAiB,CAAC;AAAA,MACvD;AAAA,IACJ;AACA,WAAO;AAAA,EACX,SAAS,GAAQ;AACb,oCAAY,mBAAmB,GAAG,mBAAO;AAAA,EAC7C;AACA,SAAO;AACX;",
6
+ "names": []
7
+ }
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var sentry_exports = {};
20
+ __export(sentry_exports, {
21
+ sendToSentry: () => sendToSentry
22
+ });
23
+ module.exports = __toCommonJS(sentry_exports);
24
+ const sendToSentry = (error, adapter) => {
25
+ if (adapter.supportsFeature && adapter.supportsFeature("PLUGINS")) {
26
+ const sentryInstance = adapter.getPluginInstance("sentry");
27
+ if (sentryInstance) {
28
+ const Sentry = sentryInstance.getSentryObject();
29
+ Sentry == null ? void 0 : Sentry.withScope(
30
+ (scope) => {
31
+ scope.setLevel("info");
32
+ scope.setExtra("key", "value");
33
+ Sentry.captureMessage("Event name", "info");
34
+ }
35
+ );
36
+ }
37
+ }
38
+ };
39
+ // Annotate the CommonJS export names for ESM import in node:
40
+ 0 && (module.exports = {
41
+ sendToSentry
42
+ });
43
+ //# sourceMappingURL=sentry.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/app/sentry.ts"],
4
+ "sourcesContent": ["import type TelegramMenu from '../main';\n\nexport const sendToSentry = (error: Error, adapter: TelegramMenu): void => {\n if (adapter.supportsFeature && adapter.supportsFeature('PLUGINS')) {\n const sentryInstance = adapter.getPluginInstance('sentry');\n if (sentryInstance) {\n const Sentry = sentryInstance.getSentryObject();\n\n Sentry?.withScope(\n (scope: {\n setLevel: (arg0: 'info' | 'debug' | 'error') => void;\n setExtra: (arg0: string, arg1: string) => void;\n }) => {\n scope.setLevel('info');\n scope.setExtra('key', 'value');\n Sentry.captureMessage('Event name', 'info'); // Level \"info\"\n },\n );\n }\n }\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,eAAe,CAAC,OAAc,YAAgC;AACvE,MAAI,QAAQ,mBAAmB,QAAQ,gBAAgB,SAAS,GAAG;AAC/D,UAAM,iBAAiB,QAAQ,kBAAkB,QAAQ;AACzD,QAAI,gBAAgB;AAChB,YAAM,SAAS,eAAe,gBAAgB;AAE9C,uCAAQ;AAAA,QACJ,CAAC,UAGK;AACF,gBAAM,SAAS,MAAM;AACrB,gBAAM,SAAS,OAAO,OAAO;AAC7B,iBAAO,eAAe,cAAc,MAAM;AAAA,QAC9C;AAAA;AAAA,IAER;AAAA,EACJ;AACJ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var setStateIdsToListenTo_exports = {};
20
+ __export(setStateIdsToListenTo_exports, {
21
+ addSetStateIds: () => addSetStateIds,
22
+ getStateIdsToListenTo: () => getStateIdsToListenTo
23
+ });
24
+ module.exports = __toCommonJS(setStateIdsToListenTo_exports);
25
+ var import_subscribeStates = require("./subscribeStates");
26
+ var import_object = require("../lib/object");
27
+ const setStateIdsToListenTo = [];
28
+ function getStateIdsToListenTo() {
29
+ return setStateIdsToListenTo;
30
+ }
31
+ async function addSetStateIds(setStateId) {
32
+ if (!setStateIdsToListenTo.find((list) => list.id === setStateId.id)) {
33
+ setStateIdsToListenTo.push(setStateId);
34
+ await (0, import_subscribeStates._subscribeForeignStates)((0, import_object.setStateIdsToIdArray)([setStateId]));
35
+ }
36
+ }
37
+ // Annotate the CommonJS export names for ESM import in node:
38
+ 0 && (module.exports = {
39
+ addSetStateIds,
40
+ getStateIdsToListenTo
41
+ });
42
+ //# sourceMappingURL=setStateIdsToListenTo.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/app/setStateIdsToListenTo.ts"],
4
+ "sourcesContent": ["import type { SetStateIds } from '../types/types';\nimport { _subscribeForeignStates } from './subscribeStates';\nimport { setStateIdsToIdArray } from '../lib/object';\n\nconst setStateIdsToListenTo: SetStateIds[] = [];\n\nexport function getStateIdsToListenTo(): SetStateIds[] {\n return setStateIdsToListenTo;\n}\n\nexport async function addSetStateIds(setStateId: SetStateIds): Promise<void> {\n if (!setStateIdsToListenTo.find(list => list.id === setStateId.id)) {\n setStateIdsToListenTo.push(setStateId);\n\n await _subscribeForeignStates(setStateIdsToIdArray([setStateId]));\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,6BAAwC;AACxC,oBAAqC;AAErC,MAAM,wBAAuC,CAAC;AAEvC,SAAS,wBAAuC;AACnD,SAAO;AACX;AAEA,eAAsB,eAAe,YAAwC;AACzE,MAAI,CAAC,sBAAsB,KAAK,UAAQ,KAAK,OAAO,WAAW,EAAE,GAAG;AAChE,0BAAsB,KAAK,UAAU;AAErC,cAAM,oDAAwB,oCAAqB,CAAC,UAAU,CAAC,CAAC;AAAA,EACpE;AACJ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var setstate_exports = {};
20
+ __export(setstate_exports, {
21
+ handleSetState: () => handleSetState,
22
+ setstateIobroker: () => setstateIobroker
23
+ });
24
+ module.exports = __toCommonJS(setstate_exports);
25
+ var import_telegram = require("./telegram");
26
+ var import_utilities = require("../lib/utilities");
27
+ var import_dynamicValue = require("./dynamicValue");
28
+ var import_main = require("../main");
29
+ var import_logging = require("./logging");
30
+ var import_string = require("../lib/string");
31
+ var import_utils = require("../lib/utils");
32
+ var import_config = require("../config/config");
33
+ var import_setStateIdsToListenTo = require("./setStateIdsToListenTo");
34
+ const modifiedValue = (valueFromSubmenu, value) => {
35
+ return value.includes(import_config.config.modifiedValue) ? value.replace(import_config.config.modifiedValue, valueFromSubmenu) : valueFromSubmenu;
36
+ };
37
+ const isDynamicValueToSet = async (value) => {
38
+ if (typeof value === "string" && value.includes(import_config.config.dynamicValue.start)) {
39
+ const { substring, substringExcludeSearch: id } = (0, import_string.decomposeText)(
40
+ value,
41
+ import_config.config.dynamicValue.start,
42
+ import_config.config.dynamicValue.end
43
+ );
44
+ const newValue = await import_main.adapter.getForeignStateAsync(id);
45
+ return value.replace(substring, String(newValue == null ? void 0 : newValue.val));
46
+ }
47
+ return value;
48
+ };
49
+ const setstateIobroker = async ({
50
+ id,
51
+ value,
52
+ ack
53
+ }) => {
54
+ try {
55
+ const val = await (0, import_utilities.transformValueToTypeOfId)(id, value);
56
+ import_main.adapter.log.debug(`Value to Set: ${(0, import_string.jsonString)(val)}`);
57
+ if ((0, import_utils.isDefined)(val)) {
58
+ await import_main.adapter.setForeignStateAsync(id, val, ack);
59
+ }
60
+ } catch (error) {
61
+ (0, import_logging.errorLogger)("Error Setstate", error, import_main.adapter);
62
+ }
63
+ };
64
+ const setValue = async (id, value, SubmenuValuePriority, valueFromSubmenu, ack) => {
65
+ try {
66
+ const valueToSet = SubmenuValuePriority ? modifiedValue(String(valueFromSubmenu), value) : await isDynamicValueToSet(value);
67
+ await setstateIobroker({ id, value: valueToSet, ack });
68
+ } catch (error) {
69
+ (0, import_logging.errorLogger)("Error setValue", error, import_main.adapter);
70
+ }
71
+ };
72
+ const handleSetState = async (part, userToSend, valueFromSubmenu, SubmenuValuePriority, telegramParams) => {
73
+ try {
74
+ if (!part.switch) {
75
+ return;
76
+ }
77
+ for (const { returnText: text, id: ID, parse_mode, confirm, ack, toggle, value } of part.switch) {
78
+ let returnText = text;
79
+ if (returnText.includes(import_config.config.setDynamicValue)) {
80
+ const { confirmText, id } = await (0, import_dynamicValue.setDynamicValue)(
81
+ returnText,
82
+ ack,
83
+ ID,
84
+ userToSend,
85
+ telegramParams,
86
+ parse_mode,
87
+ confirm
88
+ );
89
+ if (confirm) {
90
+ await (0, import_setStateIdsToListenTo.addSetStateIds)({
91
+ id: id != null ? id : ID,
92
+ confirm,
93
+ returnText: confirmText,
94
+ userToSend
95
+ });
96
+ }
97
+ }
98
+ if (!returnText.includes("{'id':'")) {
99
+ await (0, import_setStateIdsToListenTo.addSetStateIds)({
100
+ id: ID,
101
+ confirm,
102
+ returnText,
103
+ userToSend,
104
+ parse_mode
105
+ });
106
+ } else {
107
+ returnText = returnText.replace(/'/g, '"');
108
+ const textToSend = returnText.slice(0, returnText.indexOf("{")).trim();
109
+ const { json, isValidJson } = (0, import_string.parseJSON)(
110
+ returnText.slice(returnText.indexOf("{"), returnText.indexOf("}") + 1)
111
+ );
112
+ if (!isValidJson) {
113
+ return;
114
+ }
115
+ json.text = json.text + returnText.slice(returnText.indexOf("}") + 1);
116
+ await (0, import_telegram.sendToTelegram)({
117
+ userToSend,
118
+ textToSend,
119
+ telegramParams,
120
+ parse_mode
121
+ });
122
+ await (0, import_setStateIdsToListenTo.addSetStateIds)({
123
+ id: json.id,
124
+ confirm: true,
125
+ returnText: json.text,
126
+ userToSend
127
+ });
128
+ }
129
+ if (toggle) {
130
+ const state = await import_main.adapter.getForeignStateAsync(ID);
131
+ state ? await setstateIobroker({ id: ID, value: !state.val, ack }) : await setstateIobroker({ id: ID, value: false, ack });
132
+ } else {
133
+ await setValue(ID, value, SubmenuValuePriority, valueFromSubmenu, ack);
134
+ }
135
+ }
136
+ } catch (error) {
137
+ (0, import_logging.errorLogger)("Error Switch", error, import_main.adapter);
138
+ }
139
+ };
140
+ // Annotate the CommonJS export names for ESM import in node:
141
+ 0 && (module.exports = {
142
+ handleSetState,
143
+ setstateIobroker
144
+ });
145
+ //# sourceMappingURL=setstate.js.map