@iobroker/adapter-react-v5 4.13.1 → 4.13.3

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 (462) hide show
  1. package/AdminConnection.js.map +1 -1
  2. package/Components/404.js +13 -13
  3. package/Components/404.js.map +1 -0
  4. package/Components/ColorPicker.js +54 -54
  5. package/Components/ColorPicker.js.map +1 -1
  6. package/Components/ComplexCron.js.map +1 -1
  7. package/Components/CustomModal.js.map +1 -0
  8. package/Components/FileBrowser.js +5 -1
  9. package/Components/FileBrowser.js.map +1 -0
  10. package/Components/FileViewer.js.map +1 -0
  11. package/Components/Icon.js.map +1 -0
  12. package/Components/IconPicker.js.map +1 -0
  13. package/Components/IconSelector.js.map +1 -0
  14. package/Components/Image.js.map +1 -0
  15. package/Components/JsonConfigComponent/ChipInput.d.ts +12 -0
  16. package/Components/JsonConfigComponent/ChipInput.js +763 -0
  17. package/Components/JsonConfigComponent/ChipInput.js.map +1 -0
  18. package/Components/JsonConfigComponent/ConfigAccordion.d.ts +15 -0
  19. package/Components/JsonConfigComponent/ConfigAccordion.js +348 -0
  20. package/Components/JsonConfigComponent/ConfigAccordion.js.map +1 -0
  21. package/Components/JsonConfigComponent/ConfigAlive.d.ts +10 -0
  22. package/Components/JsonConfigComponent/ConfigAlive.js +105 -0
  23. package/Components/JsonConfigComponent/ConfigAlive.js.map +1 -0
  24. package/Components/JsonConfigComponent/ConfigAutocomplete.d.ts +37 -0
  25. package/Components/JsonConfigComponent/ConfigAutocomplete.js +73 -0
  26. package/Components/JsonConfigComponent/ConfigAutocomplete.js.map +1 -0
  27. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.d.ts +17 -0
  28. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js +131 -0
  29. package/Components/JsonConfigComponent/ConfigAutocompleteSendTo.js.map +1 -0
  30. package/Components/JsonConfigComponent/ConfigCRON.d.ts +15 -0
  31. package/Components/JsonConfigComponent/ConfigCRON.js +157 -0
  32. package/Components/JsonConfigComponent/ConfigCRON.js.map +1 -0
  33. package/Components/JsonConfigComponent/ConfigCertCollection.d.ts +14 -0
  34. package/Components/JsonConfigComponent/ConfigCertCollection.js +128 -0
  35. package/Components/JsonConfigComponent/ConfigCertCollection.js.map +1 -0
  36. package/Components/JsonConfigComponent/ConfigCertificateSelect.d.ts +14 -0
  37. package/Components/JsonConfigComponent/ConfigCertificateSelect.js +149 -0
  38. package/Components/JsonConfigComponent/ConfigCertificateSelect.js.map +1 -0
  39. package/Components/JsonConfigComponent/ConfigCertificates.d.ts +14 -0
  40. package/Components/JsonConfigComponent/ConfigCertificates.js +284 -0
  41. package/Components/JsonConfigComponent/ConfigCertificates.js.map +1 -0
  42. package/Components/JsonConfigComponent/ConfigCheckLicense.d.ts +3 -0
  43. package/Components/JsonConfigComponent/ConfigCheckLicense.js +821 -0
  44. package/Components/JsonConfigComponent/ConfigCheckLicense.js.map +1 -0
  45. package/Components/JsonConfigComponent/ConfigCheckbox.d.ts +15 -0
  46. package/Components/JsonConfigComponent/ConfigCheckbox.js +40 -0
  47. package/Components/JsonConfigComponent/ConfigCheckbox.js.map +1 -0
  48. package/Components/JsonConfigComponent/ConfigChip.d.ts +14 -0
  49. package/Components/JsonConfigComponent/ConfigChip.js +120 -0
  50. package/Components/JsonConfigComponent/ConfigChip.js.map +1 -0
  51. package/Components/JsonConfigComponent/ConfigColor.d.ts +22 -0
  52. package/Components/JsonConfigComponent/ConfigColor.js +120 -0
  53. package/Components/JsonConfigComponent/ConfigColor.js.map +1 -0
  54. package/Components/JsonConfigComponent/ConfigCoordinates.d.ts +14 -0
  55. package/Components/JsonConfigComponent/ConfigCoordinates.js +265 -0
  56. package/Components/JsonConfigComponent/ConfigCoordinates.js.map +1 -0
  57. package/Components/JsonConfigComponent/ConfigCustom.d.ts +26 -0
  58. package/Components/JsonConfigComponent/ConfigCustom.js +316 -0
  59. package/Components/JsonConfigComponent/ConfigCustom.js.map +1 -0
  60. package/Components/JsonConfigComponent/ConfigDatePicker.d.ts +14 -0
  61. package/Components/JsonConfigComponent/ConfigDatePicker.js +91 -0
  62. package/Components/JsonConfigComponent/ConfigDatePicker.js.map +1 -0
  63. package/Components/JsonConfigComponent/ConfigDeviceManager.d.ts +6 -0
  64. package/Components/JsonConfigComponent/ConfigDeviceManager.js +18 -0
  65. package/Components/JsonConfigComponent/ConfigFile.d.ts +15 -0
  66. package/Components/JsonConfigComponent/ConfigFile.js +228 -0
  67. package/Components/JsonConfigComponent/ConfigFile.js.map +1 -0
  68. package/Components/JsonConfigComponent/ConfigFileSelector.d.ts +3 -0
  69. package/Components/JsonConfigComponent/ConfigFileSelector.js +625 -0
  70. package/Components/JsonConfigComponent/ConfigFileSelector.js.map +1 -0
  71. package/Components/JsonConfigComponent/ConfigFunc.d.ts +14 -0
  72. package/Components/JsonConfigComponent/ConfigFunc.js +124 -0
  73. package/Components/JsonConfigComponent/ConfigFunc.js.map +1 -0
  74. package/Components/JsonConfigComponent/ConfigGeneric.d.ts +95 -0
  75. package/Components/JsonConfigComponent/ConfigGeneric.js +646 -0
  76. package/Components/JsonConfigComponent/ConfigIP.d.ts +14 -0
  77. package/Components/JsonConfigComponent/ConfigIP.js +130 -0
  78. package/Components/JsonConfigComponent/ConfigIP.js.map +1 -0
  79. package/Components/JsonConfigComponent/ConfigImageSendTo.d.ts +10 -0
  80. package/Components/JsonConfigComponent/ConfigImageSendTo.js +114 -0
  81. package/Components/JsonConfigComponent/ConfigImageSendTo.js.map +1 -0
  82. package/Components/JsonConfigComponent/ConfigImageUpload.d.ts +14 -0
  83. package/Components/JsonConfigComponent/ConfigImageUpload.js +166 -0
  84. package/Components/JsonConfigComponent/ConfigImageUpload.js.map +1 -0
  85. package/Components/JsonConfigComponent/ConfigInstanceSelect.d.ts +14 -0
  86. package/Components/JsonConfigComponent/ConfigInstanceSelect.js +264 -0
  87. package/Components/JsonConfigComponent/ConfigInstanceSelect.js.map +1 -0
  88. package/Components/JsonConfigComponent/ConfigInterface.d.ts +14 -0
  89. package/Components/JsonConfigComponent/ConfigInterface.js +146 -0
  90. package/Components/JsonConfigComponent/ConfigInterface.js.map +1 -0
  91. package/Components/JsonConfigComponent/ConfigJsonEditor.d.ts +13 -0
  92. package/Components/JsonConfigComponent/ConfigJsonEditor.js +145 -0
  93. package/Components/JsonConfigComponent/ConfigJsonEditor.js.map +1 -0
  94. package/Components/JsonConfigComponent/ConfigLanguage.d.ts +7 -0
  95. package/Components/JsonConfigComponent/ConfigLanguage.js +110 -0
  96. package/Components/JsonConfigComponent/ConfigLanguage.js.map +1 -0
  97. package/Components/JsonConfigComponent/ConfigLicense.d.ts +24 -0
  98. package/Components/JsonConfigComponent/ConfigLicense.js +183 -0
  99. package/Components/JsonConfigComponent/ConfigLicense.js.map +1 -0
  100. package/Components/JsonConfigComponent/ConfigNumber.d.ts +17 -0
  101. package/Components/JsonConfigComponent/ConfigNumber.js +117 -0
  102. package/Components/JsonConfigComponent/ConfigObjectId.d.ts +17 -0
  103. package/Components/JsonConfigComponent/ConfigObjectId.js +167 -0
  104. package/Components/JsonConfigComponent/ConfigObjectId.js.map +1 -0
  105. package/Components/JsonConfigComponent/ConfigPanel.d.ts +3 -0
  106. package/Components/JsonConfigComponent/ConfigPanel.js +396 -0
  107. package/Components/JsonConfigComponent/ConfigPanel.js.map +1 -0
  108. package/Components/JsonConfigComponent/ConfigPassword.d.ts +14 -0
  109. package/Components/JsonConfigComponent/ConfigPassword.js +193 -0
  110. package/Components/JsonConfigComponent/ConfigPassword.js.map +1 -0
  111. package/Components/JsonConfigComponent/ConfigPattern.d.ts +21 -0
  112. package/Components/JsonConfigComponent/ConfigPattern.js +65 -0
  113. package/Components/JsonConfigComponent/ConfigPattern.js.map +1 -0
  114. package/Components/JsonConfigComponent/ConfigPort.d.ts +3 -0
  115. package/Components/JsonConfigComponent/ConfigPort.js +176 -0
  116. package/Components/JsonConfigComponent/ConfigRoom.d.ts +14 -0
  117. package/Components/JsonConfigComponent/ConfigRoom.js +124 -0
  118. package/Components/JsonConfigComponent/ConfigRoom.js.map +1 -0
  119. package/Components/JsonConfigComponent/ConfigSelect.d.ts +14 -0
  120. package/Components/JsonConfigComponent/ConfigSelect.js +159 -0
  121. package/Components/JsonConfigComponent/ConfigSelect.js.map +1 -0
  122. package/Components/JsonConfigComponent/ConfigSelectSendTo.d.ts +17 -0
  123. package/Components/JsonConfigComponent/ConfigSelectSendTo.js +272 -0
  124. package/Components/JsonConfigComponent/ConfigSelectSendTo.js.map +1 -0
  125. package/Components/JsonConfigComponent/ConfigSendto.d.ts +24 -0
  126. package/Components/JsonConfigComponent/ConfigSendto.js +294 -0
  127. package/Components/JsonConfigComponent/ConfigSendto.js.map +1 -0
  128. package/Components/JsonConfigComponent/ConfigSetState.d.ts +18 -0
  129. package/Components/JsonConfigComponent/ConfigSetState.js +185 -0
  130. package/Components/JsonConfigComponent/ConfigSetState.js.map +1 -0
  131. package/Components/JsonConfigComponent/ConfigSlider.d.ts +14 -0
  132. package/Components/JsonConfigComponent/ConfigSlider.js +119 -0
  133. package/Components/JsonConfigComponent/ConfigSlider.js.map +1 -0
  134. package/Components/JsonConfigComponent/ConfigStaticDivider.d.ts +14 -0
  135. package/Components/JsonConfigComponent/ConfigStaticDivider.js +68 -0
  136. package/Components/JsonConfigComponent/ConfigStaticDivider.js.map +1 -0
  137. package/Components/JsonConfigComponent/ConfigStaticHeader.d.ts +14 -0
  138. package/Components/JsonConfigComponent/ConfigStaticHeader.js +81 -0
  139. package/Components/JsonConfigComponent/ConfigStaticHeader.js.map +1 -0
  140. package/Components/JsonConfigComponent/ConfigStaticImage.d.ts +14 -0
  141. package/Components/JsonConfigComponent/ConfigStaticImage.js +71 -0
  142. package/Components/JsonConfigComponent/ConfigStaticImage.js.map +1 -0
  143. package/Components/JsonConfigComponent/ConfigStaticText.d.ts +14 -0
  144. package/Components/JsonConfigComponent/ConfigStaticText.js +88 -0
  145. package/Components/JsonConfigComponent/ConfigStaticText.js.map +1 -0
  146. package/Components/JsonConfigComponent/ConfigTable.d.ts +3 -0
  147. package/Components/JsonConfigComponent/ConfigTable.js +1064 -0
  148. package/Components/JsonConfigComponent/ConfigTable.js.map +1 -0
  149. package/Components/JsonConfigComponent/ConfigTabs.d.ts +34 -0
  150. package/Components/JsonConfigComponent/ConfigTabs.js +162 -0
  151. package/Components/JsonConfigComponent/ConfigTabs.js.map +1 -0
  152. package/Components/JsonConfigComponent/ConfigText.d.ts +14 -0
  153. package/Components/JsonConfigComponent/ConfigText.js +226 -0
  154. package/Components/JsonConfigComponent/ConfigText.js.map +1 -0
  155. package/Components/JsonConfigComponent/ConfigTextSendTo.d.ts +10 -0
  156. package/Components/JsonConfigComponent/ConfigTextSendTo.js +129 -0
  157. package/Components/JsonConfigComponent/ConfigTextSendTo.js.map +1 -0
  158. package/Components/JsonConfigComponent/ConfigTimePicker.d.ts +14 -0
  159. package/Components/JsonConfigComponent/ConfigTimePicker.js +85 -0
  160. package/Components/JsonConfigComponent/ConfigTimePicker.js.map +1 -0
  161. package/Components/JsonConfigComponent/ConfigTopic.d.ts +17 -0
  162. package/Components/JsonConfigComponent/ConfigTopic.js +110 -0
  163. package/Components/JsonConfigComponent/ConfigTopic.js.map +1 -0
  164. package/Components/JsonConfigComponent/ConfigUUID.d.ts +15 -0
  165. package/Components/JsonConfigComponent/ConfigUUID.js +95 -0
  166. package/Components/JsonConfigComponent/ConfigUUID.js.map +1 -0
  167. package/Components/JsonConfigComponent/ConfigUser.d.ts +14 -0
  168. package/Components/JsonConfigComponent/ConfigUser.js +142 -0
  169. package/Components/JsonConfigComponent/ConfigUser.js.map +1 -0
  170. package/Components/JsonConfigComponent/DeviceManager/Communication.d.ts +63 -0
  171. package/Components/JsonConfigComponent/DeviceManager/Communication.js +268 -0
  172. package/Components/JsonConfigComponent/DeviceManager/DeviceActionButton.d.ts +11 -0
  173. package/Components/JsonConfigComponent/DeviceManager/DeviceActionButton.js +15 -0
  174. package/Components/JsonConfigComponent/DeviceManager/DeviceCard.d.ts +53 -0
  175. package/Components/JsonConfigComponent/DeviceManager/DeviceCard.js +340 -0
  176. package/Components/JsonConfigComponent/DeviceManager/DeviceControl.d.ts +45 -0
  177. package/Components/JsonConfigComponent/DeviceManager/DeviceControl.js +146 -0
  178. package/Components/JsonConfigComponent/DeviceManager/DeviceImageUpload.d.ts +12 -0
  179. package/Components/JsonConfigComponent/DeviceManager/DeviceImageUpload.js +69 -0
  180. package/Components/JsonConfigComponent/DeviceManager/DeviceList.d.ts +51 -0
  181. package/Components/JsonConfigComponent/DeviceManager/DeviceList.js +226 -0
  182. package/Components/JsonConfigComponent/DeviceManager/DeviceStatus.d.ts +13 -0
  183. package/Components/JsonConfigComponent/DeviceManager/DeviceStatus.js +111 -0
  184. package/Components/JsonConfigComponent/DeviceManager/InstanceActionButton.d.ts +7 -0
  185. package/Components/JsonConfigComponent/DeviceManager/InstanceActionButton.js +16 -0
  186. package/Components/JsonConfigComponent/DeviceManager/JsonConfig.d.ts +11 -0
  187. package/Components/JsonConfigComponent/DeviceManager/JsonConfig.js +94 -0
  188. package/Components/JsonConfigComponent/DeviceManager/TooltipButton.d.ts +10 -0
  189. package/Components/JsonConfigComponent/DeviceManager/TooltipButton.js +22 -0
  190. package/Components/JsonConfigComponent/DeviceManager/Utils.d.ts +12 -0
  191. package/Components/JsonConfigComponent/DeviceManager/Utils.js +158 -0
  192. package/Components/JsonConfigComponent/DeviceManager/i18n/de.json +21 -0
  193. package/Components/JsonConfigComponent/DeviceManager/i18n/en.json +21 -0
  194. package/Components/JsonConfigComponent/DeviceManager/i18n/es.json +21 -0
  195. package/Components/JsonConfigComponent/DeviceManager/i18n/fr.json +21 -0
  196. package/Components/JsonConfigComponent/DeviceManager/i18n/i18n.d.ts +26 -0
  197. package/Components/JsonConfigComponent/DeviceManager/i18n/it.json +21 -0
  198. package/Components/JsonConfigComponent/DeviceManager/i18n/nl.json +21 -0
  199. package/Components/JsonConfigComponent/DeviceManager/i18n/pl.json +21 -0
  200. package/Components/JsonConfigComponent/DeviceManager/i18n/pt.json +21 -0
  201. package/Components/JsonConfigComponent/DeviceManager/i18n/ru.json +21 -0
  202. package/Components/JsonConfigComponent/DeviceManager/i18n/uk.json +21 -0
  203. package/Components/JsonConfigComponent/DeviceManager/i18n/zh-cn.json +21 -0
  204. package/Components/JsonConfigComponent/DeviceManager/index.d.ts +2 -0
  205. package/Components/JsonConfigComponent/DeviceManager/index.js +10 -0
  206. package/Components/JsonConfigComponent/DeviceManager/index.js.map +1 -0
  207. package/Components/JsonConfigComponent/Utils.d.ts +9 -0
  208. package/Components/JsonConfigComponent/Utils.js +13 -0
  209. package/Components/JsonConfigComponent/index.d.ts +26 -0
  210. package/Components/JsonConfigComponent/index.js +520 -0
  211. package/Components/JsonConfigComponent/index.js.map +1 -0
  212. package/Components/JsonConfigComponent/wrapper/AdminConnection.d.ts +2 -0
  213. package/Components/JsonConfigComponent/wrapper/AdminConnection.js +7 -0
  214. package/Components/JsonConfigComponent/wrapper/Components/ColorPicker.d.ts +2 -0
  215. package/Components/JsonConfigComponent/wrapper/Components/ColorPicker.js +10 -0
  216. package/Components/JsonConfigComponent/wrapper/Components/ColorPicker.js.map +1 -0
  217. package/Components/JsonConfigComponent/wrapper/Components/Icon.d.ts +2 -0
  218. package/Components/JsonConfigComponent/wrapper/Components/Icon.js +10 -0
  219. package/Components/JsonConfigComponent/wrapper/Components/Icon.js.map +1 -0
  220. package/Components/JsonConfigComponent/wrapper/Components/TextWithIcon.d.ts +2 -0
  221. package/Components/JsonConfigComponent/wrapper/Components/TextWithIcon.js +10 -0
  222. package/Components/JsonConfigComponent/wrapper/Components/TextWithIcon.js.map +1 -0
  223. package/Components/JsonConfigComponent/wrapper/Components/UploadImage.d.ts +2 -0
  224. package/Components/JsonConfigComponent/wrapper/Components/UploadImage.js +10 -0
  225. package/Components/JsonConfigComponent/wrapper/Components/UploadImage.js.map +1 -0
  226. package/Components/JsonConfigComponent/wrapper/Components/Utils.d.ts +2 -0
  227. package/Components/JsonConfigComponent/wrapper/Components/Utils.js +10 -0
  228. package/Components/JsonConfigComponent/wrapper/Components/Utils.js.map +1 -0
  229. package/Components/JsonConfigComponent/wrapper/Dialogs/Confirm.d.ts +2 -0
  230. package/Components/JsonConfigComponent/wrapper/Dialogs/Confirm.js +10 -0
  231. package/Components/JsonConfigComponent/wrapper/Dialogs/Confirm.js.map +1 -0
  232. package/Components/JsonConfigComponent/wrapper/Dialogs/Cron.d.ts +2 -0
  233. package/Components/JsonConfigComponent/wrapper/Dialogs/Cron.js +10 -0
  234. package/Components/JsonConfigComponent/wrapper/Dialogs/Cron.js.map +1 -0
  235. package/Components/JsonConfigComponent/wrapper/Dialogs/Error.d.ts +2 -0
  236. package/Components/JsonConfigComponent/wrapper/Dialogs/Error.js +10 -0
  237. package/Components/JsonConfigComponent/wrapper/Dialogs/Error.js.map +1 -0
  238. package/Components/JsonConfigComponent/wrapper/Dialogs/Message.d.ts +2 -0
  239. package/Components/JsonConfigComponent/wrapper/Dialogs/Message.js +10 -0
  240. package/Components/JsonConfigComponent/wrapper/Dialogs/Message.js.map +1 -0
  241. package/Components/JsonConfigComponent/wrapper/Dialogs/SelectFile.d.ts +2 -0
  242. package/Components/JsonConfigComponent/wrapper/Dialogs/SelectFile.js +10 -0
  243. package/Components/JsonConfigComponent/wrapper/Dialogs/SelectFile.js.map +1 -0
  244. package/Components/JsonConfigComponent/wrapper/Dialogs/SelectID.d.ts +2 -0
  245. package/Components/JsonConfigComponent/wrapper/Dialogs/SelectID.js +10 -0
  246. package/Components/JsonConfigComponent/wrapper/Dialogs/SelectID.js.map +1 -0
  247. package/Components/JsonConfigComponent/wrapper/i18n.d.ts +2 -0
  248. package/Components/JsonConfigComponent/wrapper/i18n.js +10 -0
  249. package/Components/JsonConfigComponent/wrapper/i18n.js.map +1 -0
  250. package/Components/JsonConfigComponent/wrapper/icons/IconCopy.d.ts +2 -0
  251. package/Components/JsonConfigComponent/wrapper/icons/IconCopy.js +10 -0
  252. package/Components/JsonConfigComponent/wrapper/icons/IconCopy.js.map +1 -0
  253. package/Components/Loader.js +223 -223
  254. package/Components/Loader.js.map +1 -0
  255. package/Components/Loaders/PT.css +108 -108
  256. package/Components/Loaders/PT.js +103 -103
  257. package/Components/Loaders/PT.js.map +1 -0
  258. package/Components/Loaders/Vendor.css +13 -13
  259. package/Components/Loaders/Vendor.js +7 -7
  260. package/Components/Loaders/Vendor.js.map +1 -0
  261. package/Components/Logo.js.map +1 -0
  262. package/Components/MDUtils.js.map +1 -0
  263. package/Components/ObjectBrowser.js +344 -344
  264. package/Components/ObjectBrowser.js.map +1 -1
  265. package/Components/Router.js.map +1 -0
  266. package/Components/SaveCloseButtons.js.map +1 -0
  267. package/Components/Schedule.js.map +1 -0
  268. package/Components/SelectWithIcon.js.map +1 -0
  269. package/Components/SimpleCron/cron2text.js.map +1 -0
  270. package/Components/SimpleCron/cronText.js.map +1 -0
  271. package/Components/SimpleCron/index.js.map +1 -0
  272. package/Components/SimpleCron/jquery.cron.locale.js.map +1 -0
  273. package/Components/TabContainer.js.map +1 -0
  274. package/Components/TabContent.js.map +1 -0
  275. package/Components/TabHeader.js.map +1 -0
  276. package/Components/TableResize.js +5 -5
  277. package/Components/TableResize.js.map +1 -1
  278. package/Components/TextWithIcon.js.map +1 -0
  279. package/Components/ToggleThemeMenu.js.map +1 -0
  280. package/Components/TreeTable.js +70 -70
  281. package/Components/TreeTable.js.map +1 -1
  282. package/Components/UploadImage.js +305 -305
  283. package/Components/UploadImage.js.map +1 -0
  284. package/Components/Utils.js.map +1 -0
  285. package/Components/copy-to-clipboard.d.ts +13 -0
  286. package/Components/copy-to-clipboard.js +156 -0
  287. package/Components/copy-to-clipboard.js.map +1 -0
  288. package/Components/loader.css +221 -221
  289. package/Components/types.d.ts +82 -82
  290. package/Components/withWidth.js.map +1 -1
  291. package/Connection.js.map +1 -1
  292. package/Dialogs/ComplexCron.js.map +1 -0
  293. package/Dialogs/Confirm.js.map +1 -0
  294. package/Dialogs/Cron.js.map +1 -0
  295. package/Dialogs/Error.js.map +1 -0
  296. package/Dialogs/Message.js.map +1 -0
  297. package/Dialogs/SelectFile.js.map +1 -0
  298. package/Dialogs/SelectID.js.map +1 -0
  299. package/Dialogs/SimpleCron.js.map +1 -0
  300. package/Dialogs/TextInput.js.map +1 -0
  301. package/GenericApp.d.ts +2 -2
  302. package/GenericApp.js +49 -49
  303. package/GenericApp.js.map +1 -0
  304. package/LICENSE +22 -22
  305. package/LegacyConnection.js.map +1 -0
  306. package/Prompt.js +7 -7
  307. package/Prompt.js.map +1 -0
  308. package/README.md +841 -841
  309. package/Theme.js.map +1 -0
  310. package/assets/devices/Alarm Systems.svg +18 -18
  311. package/assets/devices/Amplifier.svg +21 -21
  312. package/assets/devices/Awnings.svg +4 -4
  313. package/assets/devices/Battery Status.svg +4 -4
  314. package/assets/devices/Ceiling Spotlights.svg +15 -15
  315. package/assets/devices/Chandelier.svg +6 -6
  316. package/assets/devices/Climate.svg +11 -11
  317. package/assets/devices/Coffee Makers.svg +5 -5
  318. package/assets/devices/Cold Water.svg +31 -31
  319. package/assets/devices/Computer.svg +21 -21
  320. package/assets/devices/Consumption.svg +7 -7
  321. package/assets/devices/Curtains.svg +43 -43
  322. package/assets/devices/Dishwashers.svg +11 -11
  323. package/assets/devices/Doors.svg +5 -5
  324. package/assets/devices/Doorstep.svg +35 -35
  325. package/assets/devices/Dryer.svg +13 -13
  326. package/assets/devices/Fan.svg +20 -20
  327. package/assets/devices/Floor Lamps.svg +4 -4
  328. package/assets/devices/Garage Doors.svg +9 -9
  329. package/assets/devices/Gates.svg +32 -32
  330. package/assets/devices/Hairdryer.svg +23 -23
  331. package/assets/devices/Handle.svg +6 -6
  332. package/assets/devices/Hanging Lamps.svg +8 -8
  333. package/assets/devices/Heater.svg +44 -44
  334. package/assets/devices/Hoods.svg +11 -11
  335. package/assets/devices/Hot Water.svg +9 -9
  336. package/assets/devices/Humidity.svg +41 -41
  337. package/assets/devices/Iron.svg +4 -4
  338. package/assets/devices/Irrigation.svg +22 -22
  339. package/assets/devices/Led Strip.svg +30 -30
  340. package/assets/devices/Light.svg +29 -29
  341. package/assets/devices/Lightings.svg +46 -46
  342. package/assets/devices/Lock.svg +19 -19
  343. package/assets/devices/Louvre.svg +6 -6
  344. package/assets/devices/Mowing Machine.svg +8 -8
  345. package/assets/devices/Music.svg +12 -12
  346. package/assets/devices/Outdoor Blinds.svg +6 -6
  347. package/assets/devices/People.svg +19 -19
  348. package/assets/devices/Pool.svg +7 -7
  349. package/assets/devices/Power Consumption.svg +12 -12
  350. package/assets/devices/Printer.svg +9 -9
  351. package/assets/devices/Pump.svg +9 -9
  352. package/assets/devices/Receiver.svg +18 -18
  353. package/assets/devices/Sconces.svg +9 -9
  354. package/assets/devices/Security.svg +34 -34
  355. package/assets/devices/Shading.svg +4 -4
  356. package/assets/devices/Shutters.svg +10 -10
  357. package/assets/devices/SmokeDetector.svg +12 -12
  358. package/assets/devices/Sockets.svg +13 -13
  359. package/assets/devices/Speaker.svg +35 -35
  360. package/assets/devices/Stove.svg +11 -11
  361. package/assets/devices/Table Lamps.svg +11 -11
  362. package/assets/devices/Temperature Sensors.svg +28 -28
  363. package/assets/devices/Tv.svg +7 -7
  364. package/assets/devices/Vacuum Cleaner.svg +15 -15
  365. package/assets/devices/Ventilation.svg +12 -12
  366. package/assets/devices/Washing Machines.svg +15 -15
  367. package/assets/devices/Water Consumption.svg +5 -5
  368. package/assets/devices/Water Heater.svg +8 -8
  369. package/assets/devices/Water.svg +40 -40
  370. package/assets/devices/Weather.svg +28 -28
  371. package/assets/devices/Window.svg +7 -7
  372. package/assets/devices/list.json +993 -993
  373. package/assets/devices/names.txt +62 -62
  374. package/assets/devices/parseNames.js +34 -34
  375. package/assets/lamp_ceiling.svg +8 -8
  376. package/assets/lamp_table.svg +7 -7
  377. package/assets/no_icon.svg +9 -9
  378. package/assets/rooms/Anteroom.svg +52 -52
  379. package/assets/rooms/Attic.svg +21 -21
  380. package/assets/rooms/Balcony.svg +12 -12
  381. package/assets/rooms/Barn.svg +5 -5
  382. package/assets/rooms/Basement.svg +4 -4
  383. package/assets/rooms/Bathroom.svg +38 -38
  384. package/assets/rooms/Bedroom.svg +5 -5
  385. package/assets/rooms/Boiler Room.svg +12 -12
  386. package/assets/rooms/Carport.svg +17 -17
  387. package/assets/rooms/Cellar.svg +89 -89
  388. package/assets/rooms/Chamber.svg +9 -9
  389. package/assets/rooms/Corridor.svg +52 -52
  390. package/assets/rooms/Dining Area.svg +37 -37
  391. package/assets/rooms/Dining Room.svg +37 -37
  392. package/assets/rooms/Dining.svg +37 -37
  393. package/assets/rooms/Dressing Room.svg +4 -4
  394. package/assets/rooms/Driveway.svg +14 -14
  395. package/assets/rooms/Entrance.svg +44 -44
  396. package/assets/rooms/Equipment Room.svg +14 -14
  397. package/assets/rooms/Front Yard.svg +64 -64
  398. package/assets/rooms/Gallery.svg +13 -13
  399. package/assets/rooms/Garage.svg +20 -20
  400. package/assets/rooms/Garden.svg +12 -12
  401. package/assets/rooms/Ground Floor.svg +95 -95
  402. package/assets/rooms/Guest Bathroom.svg +32 -32
  403. package/assets/rooms/Guest Room.svg +5 -5
  404. package/assets/rooms/Gym.svg +4 -4
  405. package/assets/rooms/Hall.svg +19 -19
  406. package/assets/rooms/Home Theater.svg +7 -7
  407. package/assets/rooms/Kitchen.svg +17 -17
  408. package/assets/rooms/Laundry Room.svg +11 -11
  409. package/assets/rooms/Living Area.svg +10 -10
  410. package/assets/rooms/Living Room.svg +10 -10
  411. package/assets/rooms/Locker Room.svg +16 -16
  412. package/assets/rooms/Nursery.svg +4 -4
  413. package/assets/rooms/Office.svg +8 -8
  414. package/assets/rooms/Outdoors.svg +7 -7
  415. package/assets/rooms/Playroom.svg +5 -5
  416. package/assets/rooms/Pool.svg +7 -7
  417. package/assets/rooms/Rear Wall.svg +30 -30
  418. package/assets/rooms/Second Floor.svg +95 -95
  419. package/assets/rooms/Shed.svg +16 -16
  420. package/assets/rooms/Sleeping Area.svg +22 -22
  421. package/assets/rooms/Stairway.svg +4 -4
  422. package/assets/rooms/Stairwell.svg +15 -15
  423. package/assets/rooms/Storeroom.svg +4 -4
  424. package/assets/rooms/Summer House.svg +27 -27
  425. package/assets/rooms/Swimming Pool.svg +21 -21
  426. package/assets/rooms/Terrace.svg +6 -6
  427. package/assets/rooms/Toilet.svg +10 -10
  428. package/assets/rooms/Upstairs.svg +5 -5
  429. package/assets/rooms/Wardrobe.svg +60 -60
  430. package/assets/rooms/Washroom.svg +19 -19
  431. package/assets/rooms/Wc.svg +10 -10
  432. package/assets/rooms/Windscreen.svg +60 -60
  433. package/assets/rooms/Workshop.svg +22 -22
  434. package/assets/rooms/Workspace.svg +8 -8
  435. package/assets/rooms/list.json +945 -945
  436. package/assets/rooms/names.txt +59 -59
  437. package/assets/rooms/parseNames.js +34 -34
  438. package/craco-module-federation.js +69 -69
  439. package/i18n.js.map +1 -0
  440. package/icons/IconAdapter.js.map +1 -1
  441. package/icons/IconAlias.js.map +1 -1
  442. package/icons/IconChannel.js.map +1 -1
  443. package/icons/IconClearFilter.js.map +1 -1
  444. package/icons/IconClosed.js.map +1 -1
  445. package/icons/IconCopy.js +8 -8
  446. package/icons/IconCopy.js.map +1 -1
  447. package/icons/IconDevice.js.map +1 -1
  448. package/icons/IconDocument.js.map +1 -1
  449. package/icons/IconDocumentReadOnly.js.map +1 -1
  450. package/icons/IconExpert.js.map +1 -0
  451. package/icons/IconFx.js +1 -1
  452. package/icons/IconFx.js.map +1 -1
  453. package/icons/IconInstance.js.map +1 -1
  454. package/icons/IconLogout.js +9 -9
  455. package/icons/IconLogout.js.map +1 -1
  456. package/icons/IconNoIcon.js +8 -8
  457. package/icons/IconNoIcon.js.map +1 -1
  458. package/icons/IconOpen.js.map +1 -1
  459. package/icons/IconState.js.map +1 -1
  460. package/index.css +54 -54
  461. package/package.json +2 -2
  462. package/types.d.ts +94 -94
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Confirm.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_Button","_Dialog","_DialogActions","_DialogContent","_DialogContentText","_DialogTitle","_FormControlLabel","_Checkbox","_Check","_Close","_i18n","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","styles","suppress","fontSize","suppressRoot","marginTop","DialogConfirm","_React$Component","_inherits2","_super","props","_this","_classCallCheck2","dialogName","suppressQuestionMinutes","Error","parseInt","window","_localStorage","localStorage","getItem","Date","now","removeItem","state","_createClass2","key","value","handleOk","setItem","onClose","handleCancel","render","_this2","setTimeout","createElement","open","maxWidth","fullWidth","undefined","event","reason","id","title","I18n","t","icon","text","classes","label","root","control","concat","checked","onChange","setState","suppressText","variant","onClick","color","autoFocus","startIcon","ok","cancel","React","Component","propTypes","PropTypes","func","isRequired","bool","string","object","number","_export","withStyles","_default","exports"],"sources":["Confirm.js"],"sourcesContent":["/**\r\n * Copyright 2019-2023 Denis Haev (bluefox) <dogafox@gmail.com>\r\n *\r\n * MIT License\r\n *\r\n **/\r\n\r\n// please do not delete React, as without it other projects could not be compiled: ReferenceError: React is not defined\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@mui/styles';\r\n\r\nimport Button from '@mui/material/Button';\r\nimport Dialog from '@mui/material/Dialog';\r\nimport DialogActions from '@mui/material/DialogActions';\r\nimport DialogContent from '@mui/material/DialogContent';\r\nimport DialogContentText from '@mui/material/DialogContentText';\r\nimport DialogTitle from '@mui/material/DialogTitle';\r\nimport FormControlLabel from '@mui/material/FormControlLabel';\r\nimport Checkbox from '@mui/material/Checkbox';\r\n\r\nimport IconCheck from '@mui/icons-material/Check';\r\nimport IconClose from '@mui/icons-material/Close';\r\n\r\nimport I18n from '../i18n';\r\n\r\nconst styles = {\r\n suppress: {\r\n fontSize: 12,\r\n },\r\n suppressRoot: {\r\n marginTop: 16,\r\n },\r\n};\r\n\r\n/**\r\n * @typedef {object} DialogConfirmProps\r\n * @property {string} [title] The dialog title; default: Are you sure? (translated)\r\n * @property {string} text The dialog text.\r\n * @property {string} [ok] The ok button text; default: OK (translated)\r\n * @property {string} [cancel] The cancel button text; default: Cancel (translated)\r\n * @property {string} [suppressQuestionMinutes] interval in minutes for which the confirm dialog will be suppressed if activated.\r\n * @property {string} [suppressText] The suppress checkbox text; default: Suppress question for next %s minutes (translated)\r\n * @property {string} [dialogName] Name of the dialog. Used only with suppressQuestionMinutes to store the user choice\r\n * @property {(ok: boolean) => void} [onClose] Close handler.\r\n *\r\n * @extends {React.Component<DialogConfirmProps>}\r\n */\r\nclass DialogConfirm extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n if (!this.props.dialogName && this.props.suppressQuestionMinutes) {\r\n throw new Error('dialogName required if suppressQuestionMinutes used');\r\n }\r\n let suppress = false;\r\n\r\n if (this.props.suppressQuestionMinutes) {\r\n suppress = parseInt((window._localStorage || window.localStorage).getItem(this.props.dialogName), 10) || 0;\r\n\r\n if (!suppress) {\r\n suppress = false;\r\n } else if (Date.now() > suppress) {\r\n (window._localStorage || window.localStorage).removeItem(this.props.dialogName);\r\n suppress = false;\r\n }\r\n }\r\n\r\n this.state = {\r\n suppress,\r\n };\r\n }\r\n\r\n handleOk() {\r\n if (this.state.suppress) {\r\n (window._localStorage || window.localStorage).setItem(this.props.dialogName, Date.now() + this.props.suppressQuestionMinutes * 60000);\r\n }\r\n this.props.onClose && this.props.onClose(true);\r\n }\r\n\r\n handleCancel() {\r\n this.props.onClose && this.props.onClose(false);\r\n }\r\n\r\n render() {\r\n if (typeof this.state.suppress === 'number') {\r\n setTimeout(() => this.props.onClose && this.props.onClose(true), 100);\r\n return null;\r\n }\r\n\r\n return <Dialog\r\n open={!0}\r\n maxWidth=\"md\"\r\n fullWidth={this.props.fullWidth !== undefined ? this.props.fullWidth : true}\r\n onClose={(event, reason) => {\r\n if (reason !== 'backdropClick' && reason !== 'escapeKeyDown') {\r\n this.handleCancel();\r\n }\r\n }}\r\n aria-labelledby=\"ar_confirmation_dialog_title\"\r\n aria-describedby=\"ar_confirmation_dialog_description\"\r\n >\r\n <DialogTitle id=\"ar_confirmation_dialog_title\">{this.props.title || I18n.t('ra_Are you sure?')}</DialogTitle>\r\n <DialogContent>\r\n <DialogContentText id=\"ar_confirmation_dialog_description\">\r\n {this.props.icon || null}\r\n {this.props.text}\r\n {this.props.suppressQuestionMinutes ? <br /> : null}\r\n {this.props.suppressQuestionMinutes ? <FormControlLabel\r\n classes={{ label: this.props.classes.suppress, root: this.props.classes.suppressRoot }}\r\n control={<Checkbox id={`ar_dialog_confirm_suppress_${this.props.dialogName || ''}`} checked={!!this.state.suppress} onChange={() => this.setState({ suppress: !this.state.suppress })} />}\r\n label={this.props.suppressText || I18n.t('ra_Suppress question for next %s minutes', this.props.suppressQuestionMinutes)}\r\n /> : null}\r\n </DialogContentText>\r\n </DialogContent>\r\n <DialogActions>\r\n <Button\r\n id={`ar_dialog_confirm_ok_${this.props.dialogName || ''}`}\r\n variant=\"contained\"\r\n onClick={() => this.handleOk()}\r\n color=\"primary\"\r\n autoFocus\r\n startIcon={<IconCheck />}\r\n >\r\n {this.props.ok || I18n.t('ra_Ok')}\r\n </Button>\r\n <Button\r\n id={`ar_dialog_confirm_cancel_${this.props.dialogName || ''}`}\r\n variant=\"contained\"\r\n onClick={() => this.handleCancel()}\r\n color=\"grey\"\r\n startIcon={<IconClose />}\r\n >\r\n {this.props.cancel || I18n.t('ra_Cancel')}\r\n </Button>\r\n </DialogActions>\r\n </Dialog>;\r\n }\r\n}\r\n\r\nDialogConfirm.propTypes = {\r\n onClose: PropTypes.func.isRequired,\r\n fullWidth: PropTypes.bool,\r\n title: PropTypes.string,\r\n text: PropTypes.string,\r\n ok: PropTypes.string,\r\n cancel: PropTypes.string,\r\n icon: PropTypes.object,\r\n suppressQuestionMinutes: PropTypes.number,\r\n suppressText: PropTypes.string,\r\n dialogName: PropTypes.string,\r\n};\r\n\r\nconst _export = withStyles(styles)(DialogConfirm);\r\nexport default _export;\r\n"],"mappings":";;;;;;;;;;;;AAQA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAEA,IAAAG,OAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,OAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,cAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,cAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,kBAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,YAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,iBAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,SAAA,GAAAX,sBAAA,CAAAC,OAAA;AAEA,IAAAW,MAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,MAAA,GAAAb,sBAAA,CAAAC,OAAA;AAEA,IAAAa,KAAA,GAAAd,sBAAA,CAAAC,OAAA;AAA2B,SAAAc,aAAAC,OAAA,QAAAC,yBAAA,GAAAC,yBAAA,oBAAAC,qBAAA,QAAAC,KAAA,OAAAC,gBAAA,aAAAL,OAAA,GAAAM,MAAA,MAAAL,yBAAA,QAAAM,SAAA,OAAAF,gBAAA,mBAAAG,WAAA,EAAAF,MAAA,GAAAG,OAAA,CAAAC,SAAA,CAAAN,KAAA,EAAAO,SAAA,EAAAJ,SAAA,YAAAD,MAAA,GAAAF,KAAA,CAAAQ,KAAA,OAAAD,SAAA,gBAAAE,2BAAA,mBAAAP,MAAA;AAAA,SAAAJ,0BAAA,eAAAO,OAAA,qBAAAA,OAAA,CAAAC,SAAA,oBAAAD,OAAA,CAAAC,SAAA,CAAAI,IAAA,2BAAAC,KAAA,oCAAAC,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAV,OAAA,CAAAC,SAAA,CAAAM,OAAA,8CAAAI,CAAA,sBAxB3B;AACA;AACA;AACA;AACA;AACA,IALA,CAOA;AAmBA,IAAMC,MAAM,GAAG;EACXC,QAAQ,EAAE;IACNC,QAAQ,EAAE;EACd,CAAC;EACDC,YAAY,EAAE;IACVC,SAAS,EAAE;EACf;AACJ,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAZA,IAaMC,aAAa,0BAAAC,gBAAA;EAAA,IAAAC,UAAA,aAAAF,aAAA,EAAAC,gBAAA;EAAA,IAAAE,MAAA,GAAA9B,YAAA,CAAA2B,aAAA;EACf,SAAAA,cAAYI,KAAK,EAAE;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,mBAAAN,aAAA;IACfK,KAAA,GAAAF,MAAA,CAAAV,IAAA,OAAMW,KAAK;IAEX,IAAI,CAACC,KAAA,CAAKD,KAAK,CAACG,UAAU,IAAIF,KAAA,CAAKD,KAAK,CAACI,uBAAuB,EAAE;MAC9D,MAAM,IAAIC,KAAK,CAAC,qDAAqD,CAAC;IAC1E;IACA,IAAIb,QAAQ,GAAG,KAAK;IAEpB,IAAIS,KAAA,CAAKD,KAAK,CAACI,uBAAuB,EAAE;MACpCZ,QAAQ,GAAGc,QAAQ,CAAC,CAACC,MAAM,CAACC,aAAa,IAAID,MAAM,CAACE,YAAY,EAAEC,OAAO,CAACT,KAAA,CAAKD,KAAK,CAACG,UAAU,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;MAE1G,IAAI,CAACX,QAAQ,EAAE;QACXA,QAAQ,GAAG,KAAK;MACpB,CAAC,MAAM,IAAImB,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGpB,QAAQ,EAAE;QAC9B,CAACe,MAAM,CAACC,aAAa,IAAID,MAAM,CAACE,YAAY,EAAEI,UAAU,CAACZ,KAAA,CAAKD,KAAK,CAACG,UAAU,CAAC;QAC/EX,QAAQ,GAAG,KAAK;MACpB;IACJ;IAEAS,KAAA,CAAKa,KAAK,GAAG;MACTtB,QAAQ,EAARA;IACJ,CAAC;IAAC,OAAAS,KAAA;EACN;EAAC,IAAAc,aAAA,aAAAnB,aAAA;IAAAoB,GAAA;IAAAC,KAAA,EAED,SAAAC,SAAA,EAAW;MACP,IAAI,IAAI,CAACJ,KAAK,CAACtB,QAAQ,EAAE;QACrB,CAACe,MAAM,CAACC,aAAa,IAAID,MAAM,CAACE,YAAY,EAAEU,OAAO,CAAC,IAAI,CAACnB,KAAK,CAACG,UAAU,EAAEQ,IAAI,CAACC,GAAG,CAAC,CAAC,GAAG,IAAI,CAACZ,KAAK,CAACI,uBAAuB,GAAG,KAAK,CAAC;MACzI;MACA,IAAI,CAACJ,KAAK,CAACoB,OAAO,IAAI,IAAI,CAACpB,KAAK,CAACoB,OAAO,CAAC,IAAI,CAAC;IAClD;EAAC;IAAAJ,GAAA;IAAAC,KAAA,EAED,SAAAI,aAAA,EAAe;MACX,IAAI,CAACrB,KAAK,CAACoB,OAAO,IAAI,IAAI,CAACpB,KAAK,CAACoB,OAAO,CAAC,KAAK,CAAC;IACnD;EAAC;IAAAJ,GAAA;IAAAC,KAAA,EAED,SAAAK,OAAA,EAAS;MAAA,IAAAC,MAAA;MACL,IAAI,OAAO,IAAI,CAACT,KAAK,CAACtB,QAAQ,KAAK,QAAQ,EAAE;QACzCgC,UAAU,CAAC;UAAA,OAAMD,MAAI,CAACvB,KAAK,CAACoB,OAAO,IAAIG,MAAI,CAACvB,KAAK,CAACoB,OAAO,CAAC,IAAI,CAAC;QAAA,GAAE,GAAG,CAAC;QACrE,OAAO,IAAI;MACf;MAEA,oBAAOnE,MAAA,YAAAwE,aAAA,CAAClE,OAAA,WAAM;QACVmE,IAAI,EAAE,CAAC,CAAE;QACTC,QAAQ,EAAC,IAAI;QACbC,SAAS,EAAE,IAAI,CAAC5B,KAAK,CAAC4B,SAAS,KAAKC,SAAS,GAAG,IAAI,CAAC7B,KAAK,CAAC4B,SAAS,GAAG,IAAK;QAC5ER,OAAO,EAAE,SAAAA,QAACU,KAAK,EAAEC,MAAM,EAAK;UACxB,IAAIA,MAAM,KAAK,eAAe,IAAIA,MAAM,KAAK,eAAe,EAAE;YAC1DR,MAAI,CAACF,YAAY,CAAC,CAAC;UACvB;QACJ,CAAE;QACF,mBAAgB,8BAA8B;QAC9C,oBAAiB;MAAoC,gBAErDpE,MAAA,YAAAwE,aAAA,CAAC9D,YAAA,WAAW;QAACqE,EAAE,EAAC;MAA8B,GAAE,IAAI,CAAChC,KAAK,CAACiC,KAAK,IAAIC,gBAAI,CAACC,CAAC,CAAC,kBAAkB,CAAe,CAAC,eAC7GlF,MAAA,YAAAwE,aAAA,CAAChE,cAAA,WAAa,qBACVR,MAAA,YAAAwE,aAAA,CAAC/D,kBAAA,WAAiB;QAACsE,EAAE,EAAC;MAAoC,GACrD,IAAI,CAAChC,KAAK,CAACoC,IAAI,IAAI,IAAI,EACvB,IAAI,CAACpC,KAAK,CAACqC,IAAI,EACf,IAAI,CAACrC,KAAK,CAACI,uBAAuB,gBAAGnD,MAAA,YAAAwE,aAAA,WAAK,CAAC,GAAG,IAAI,EAClD,IAAI,CAACzB,KAAK,CAACI,uBAAuB,gBAAGnD,MAAA,YAAAwE,aAAA,CAAC7D,iBAAA,WAAgB;QACnD0E,OAAO,EAAE;UAAEC,KAAK,EAAE,IAAI,CAACvC,KAAK,CAACsC,OAAO,CAAC9C,QAAQ;UAAEgD,IAAI,EAAE,IAAI,CAACxC,KAAK,CAACsC,OAAO,CAAC5C;QAAa,CAAE;QACvF+C,OAAO,eAAExF,MAAA,YAAAwE,aAAA,CAAC5D,SAAA,WAAQ;UAACmE,EAAE,gCAAAU,MAAA,CAAgC,IAAI,CAAC1C,KAAK,CAACG,UAAU,IAAI,EAAE,CAAG;UAACwC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC7B,KAAK,CAACtB,QAAS;UAACoD,QAAQ,EAAE,SAAAA,SAAA;YAAA,OAAMrB,MAAI,CAACsB,QAAQ,CAAC;cAAErD,QAAQ,EAAE,CAAC+B,MAAI,CAACT,KAAK,CAACtB;YAAS,CAAC,CAAC;UAAA;QAAC,CAAE,CAAE;QAC1L+C,KAAK,EAAE,IAAI,CAACvC,KAAK,CAAC8C,YAAY,IAAIZ,gBAAI,CAACC,CAAC,CAAC,0CAA0C,EAAE,IAAI,CAACnC,KAAK,CAACI,uBAAuB;MAAE,CAC5H,CAAC,GAAG,IACU,CACR,CAAC,eAChBnD,MAAA,YAAAwE,aAAA,CAACjE,cAAA,WAAa,qBACVP,MAAA,YAAAwE,aAAA,CAACnE,OAAA,WAAM;QACH0E,EAAE,0BAAAU,MAAA,CAA0B,IAAI,CAAC1C,KAAK,CAACG,UAAU,IAAI,EAAE,CAAG;QAC1D4C,OAAO,EAAC,WAAW;QACnBC,OAAO,EAAE,SAAAA,QAAA;UAAA,OAAMzB,MAAI,CAACL,QAAQ,CAAC,CAAC;QAAA,CAAC;QAC/B+B,KAAK,EAAC,SAAS;QACfC,SAAS;QACTC,SAAS,eAAElG,MAAA,YAAAwE,aAAA,CAAC3D,MAAA,WAAS,MAAE;MAAE,GAExB,IAAI,CAACkC,KAAK,CAACoD,EAAE,IAAIlB,gBAAI,CAACC,CAAC,CAAC,OAAO,CAC5B,CAAC,eACTlF,MAAA,YAAAwE,aAAA,CAACnE,OAAA,WAAM;QACH0E,EAAE,8BAAAU,MAAA,CAA8B,IAAI,CAAC1C,KAAK,CAACG,UAAU,IAAI,EAAE,CAAG;QAC9D4C,OAAO,EAAC,WAAW;QACnBC,OAAO,EAAE,SAAAA,QAAA;UAAA,OAAMzB,MAAI,CAACF,YAAY,CAAC,CAAC;QAAA,CAAC;QACnC4B,KAAK,EAAC,MAAM;QACZE,SAAS,eAAElG,MAAA,YAAAwE,aAAA,CAAC1D,MAAA,WAAS,MAAE;MAAE,GAExB,IAAI,CAACiC,KAAK,CAACqD,MAAM,IAAInB,gBAAI,CAACC,CAAC,CAAC,WAAW,CACpC,CACG,CACX,CAAC;IACb;EAAC;EAAA,OAAAvC,aAAA;AAAA,EAzFuB0D,iBAAK,CAACC,SAAS;AA4F3C3D,aAAa,CAAC4D,SAAS,GAAG;EACtBpC,OAAO,EAAEqC,qBAAS,CAACC,IAAI,CAACC,UAAU;EAClC/B,SAAS,EAAE6B,qBAAS,CAACG,IAAI;EACzB3B,KAAK,EAAEwB,qBAAS,CAACI,MAAM;EACvBxB,IAAI,EAAEoB,qBAAS,CAACI,MAAM;EACtBT,EAAE,EAAEK,qBAAS,CAACI,MAAM;EACpBR,MAAM,EAAEI,qBAAS,CAACI,MAAM;EACxBzB,IAAI,EAAEqB,qBAAS,CAACK,MAAM;EACtB1D,uBAAuB,EAAEqD,qBAAS,CAACM,MAAM;EACzCjB,YAAY,EAAEW,qBAAS,CAACI,MAAM;EAC9B1D,UAAU,EAAEsD,qBAAS,CAACI;AAC1B,CAAC;AAED,IAAMG,OAAO,GAAG,IAAAC,kBAAU,EAAC1E,MAAM,CAAC,CAACK,aAAa,CAAC;AAAC,IAAAsE,QAAA,GAAAC,OAAA,cACnCH,OAAO"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cron.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_material","_iconsMaterial","_ComplexCron","_SimpleCron","_Schedule","_i18n","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","styles","headerID","fontWeight","fontStyle","radio","display","dialogPaper","height","DialogCron","_React$Component","_inherits2","props","_this","_classCallCheck2","cron","replace","trim","state","mode","simple","complex","_typeof2","noWizard","SimpleCron","cron2state","_createClass2","key","value","handleCancel","onClose","handleOk","onOk","setMode","setState","render","_this2","createElement","Dialog","maxWidth","fullWidth","classes","paper","open","DialogTitle","id","title","I18n","DialogContent","style","overflow","Fragment","Radio","checked","onChange","onClick","color","cronExpression","language","getLanguage","schedule","DialogActions","Button","variant","startIcon","Check","ok","Cancel","cancel","React","Component","propTypes","PropTypes","object","func","isRequired","string","bool","_default","exports","withStyles"],"sources":["Cron.js"],"sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@mui/styles';\r\n\r\nimport {\r\n Button,\r\n DialogTitle,\r\n DialogContent,\r\n DialogActions,\r\n Dialog,\r\n Radio,\r\n} from '@mui/material';\r\n\r\nimport {\r\n Check as IconOk,\r\n Cancel as IconCancel,\r\n} from '@mui/icons-material';\r\n\r\nimport ComplexCron from '../Components/ComplexCron';\r\nimport SimpleCron from '../Components/SimpleCron';\r\nimport Schedule from '../Components/Schedule';\r\n\r\nimport I18n from '../i18n';\r\n\r\n// Generate cron expression\r\n\r\nconst styles = () => ({\r\n headerID: {\r\n fontWeight: 'bold',\r\n fontStyle: 'italic',\r\n },\r\n radio: {\r\n display: 'inline-block',\r\n },\r\n dialogPaper: {\r\n height: 'calc(100% - 96px)',\r\n },\r\n});\r\n\r\nclass DialogCron extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n let cron;\r\n if (this.props.cron && typeof this.props.cron === 'string' && this.props.cron.replace(/^[\"']/, '')[0] !== '{') {\r\n cron = this.props.cron.replace(/['\"]/g, '').trim();\r\n } else {\r\n cron = this.props.cron || '{}';\r\n if (typeof cron === 'string') {\r\n cron = cron.replace(/^[\"']/, '').replace(/[\"']\\n?$/, '');\r\n }\r\n }\r\n\r\n this.state = {\r\n cron,\r\n mode: this.props.simple ? 'simple' :\r\n (this.props.complex ? 'complex' :\r\n ((typeof cron === 'object' || cron[0] === '{') && !this.props.noWizard ?\r\n 'wizard' :\r\n (SimpleCron.cron2state(this.props.cron || '* * * * *') ? 'simple' : 'complex'))),\r\n };\r\n }\r\n\r\n handleCancel() {\r\n this.props.onClose();\r\n }\r\n\r\n handleOk() {\r\n this.props.onOk(this.state.cron);\r\n this.props.onClose();\r\n }\r\n\r\n setMode(mode) {\r\n this.setState({ mode });\r\n }\r\n\r\n render() {\r\n return <Dialog\r\n onClose={() => {}}\r\n maxWidth=\"md\"\r\n fullWidth\r\n classes={{ paper: this.props.classes.dialogPaper }}\r\n open={!0}\r\n aria-labelledby=\"cron-dialog-title\"\r\n >\r\n <DialogTitle id=\"cron-dialog-title\">{this.props.title || I18n.t('ra_Define schedule...')}</DialogTitle>\r\n <DialogContent style={{ height: '100%', overflow: 'hidden' }}>\r\n {(this.props.simple && this.props.complex) || (!this.props.simple && !this.props.complex) ? <div>\r\n {!this.props.simple && !this.props.complex && !this.props.noWizard && <>\r\n <Radio\r\n key=\"wizard\"\r\n checked={this.state.mode === 'wizard'}\r\n onChange={() => this.setMode('wizard')}\r\n />\r\n <label\r\n onClick={() => this.setMode('wizard')}\r\n style={this.state.mode !== 'wizard' ? { color: 'lightgrey' } : {}}\r\n >\r\n {I18n.t('sc_wizard')}\r\n </label>\r\n </>}\r\n\r\n {((!this.props.simple && !this.props.complex) || this.props.simple) && <>\r\n <Radio\r\n key=\"simple\"\r\n checked={this.state.mode === 'simple'}\r\n onChange={() => this.setMode('simple')}\r\n />\r\n <label\r\n onClick={() => this.setMode('simple')}\r\n style={this.state.mode !== 'simple' ? { color: 'lightgrey' } : {}}\r\n >\r\n {I18n.t('sc_simple')}\r\n </label>\r\n </>}\r\n\r\n {((!this.props.simple && !this.props.complex) || this.props.complex) && <>\r\n <Radio\r\n key=\"complex\"\r\n checked={this.state.mode === 'complex'}\r\n onChange={() => this.setMode('complex')}\r\n />\r\n <label\r\n onClick={() => this.setMode('complex')}\r\n style={this.state.mode !== 'complex' ? { color: 'lightgrey' } : {}}\r\n >\r\n {I18n.t('sc_cron')}\r\n </label>\r\n </>}\r\n </div> : null}\r\n\r\n {this.state.mode === 'simple' && <SimpleCron\r\n cronExpression={this.state.cron}\r\n onChange={cron => this.setState({ cron })}\r\n language={I18n.getLanguage()}\r\n />}\r\n {this.state.mode === 'wizard' && <Schedule\r\n schedule={this.state.cron}\r\n onChange={cron => this.setState({ cron })}\r\n language={I18n.getLanguage()}\r\n />}\r\n {this.state.mode === 'complex' && <ComplexCron\r\n cronExpression={this.state.cron}\r\n onChange={cron => this.setState({ cron })}\r\n language={I18n.getLanguage()}\r\n />}\r\n </DialogContent>\r\n <DialogActions>\r\n <Button\r\n variant=\"contained\"\r\n onClick={() => this.handleOk()}\r\n color=\"primary\"\r\n startIcon={<IconOk />}\r\n >\r\n {this.props.ok || I18n.t('ra_Ok')}\r\n </Button>\r\n <Button\r\n variant=\"contained\"\r\n onClick={() => this.handleCancel()}\r\n color=\"grey\"\r\n startIcon={<IconCancel />}\r\n >\r\n {this.props.cancel || I18n.t('ra_Cancel')}\r\n </Button>\r\n </DialogActions>\r\n </Dialog>;\r\n }\r\n}\r\n\r\nDialogCron.propTypes = {\r\n classes: PropTypes.object,\r\n onClose: PropTypes.func.isRequired,\r\n onOk: PropTypes.func.isRequired,\r\n title: PropTypes.string,\r\n cron: PropTypes.string,\r\n cancel: PropTypes.string,\r\n ok: PropTypes.string,\r\n simple: PropTypes.bool, // show only simple configuration\r\n complex: PropTypes.bool, // show only complex configuration\r\n noWizard: PropTypes.bool, // do not show wizard\r\n};\r\n\r\nexport default withStyles(styles)(DialogCron);\r\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Error.js","names":["_react","_interopRequireDefault","require","_propTypes","_material","_iconsMaterial","_i18n","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","DialogError","_React$Component","_inherits2","_super","_classCallCheck2","_createClass2","key","value","handleOk","props","onClose","render","_this","createElement","Dialog","open","maxWidth","fullWidth","undefined","DialogTitle","id","title","I18n","t","DialogContent","DialogContentText","text","DialogActions","Button","variant","onClick","color","autoFocus","startIcon","Check","React","Component","propTypes","PropTypes","func","isRequired","bool","string","oneOfType","element","_export","_default","exports"],"sources":["Error.js"],"sourcesContent":["/**\r\n * Copyright 2018-2023 Denis Haev (bluefox) <dogafox@gmail.com>\r\n *\r\n * MIT License\r\n *\r\n **/\r\n// please do not delete React, as without it other projects could not be compiled: ReferenceError: React is not defined\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport {\r\n Button,\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogContentText,\r\n DialogTitle,\r\n} from '@mui/material';\r\n\r\nimport { Check as IconCheck } from '@mui/icons-material';\r\n\r\nimport I18n from '../i18n';\r\n\r\n/**\r\n * @typedef {object} DialogErrorProps\r\n * @property {string} [title] The dialog title; default: Error (translated)\r\n * @property {string | JSX.Element} text The dialog text.\r\n * @property {() => void} [onClose] Close handler.\r\n * @property {{titleBackground: string; titleColor: string}} classes The styling class names.\r\n *\r\n * @extends {React.Component<DialogErrorProps>}\r\n */\r\nclass DialogError extends React.Component {\r\n handleOk() {\r\n this.props.onClose && this.props.onClose();\r\n }\r\n\r\n render() {\r\n return <Dialog\r\n open={!0}\r\n maxWidth=\"sm\"\r\n fullWidth={this.props.fullWidth !== undefined ? this.props.fullWidth : true}\r\n onClose={() => this.handleOk()}\r\n aria-labelledby=\"alert-dialog-title\"\r\n aria-describedby=\"alert-dialog-description\"\r\n >\r\n <DialogTitle id=\"ar_alert_dialog_title\">\r\n {this.props.title || I18n.t('ra_Error')}\r\n </DialogTitle>\r\n <DialogContent>\r\n <DialogContentText id=\"ar_alert_dialog_description\">\r\n {this.props.text || I18n.t('ra_Unknown error!')}\r\n </DialogContentText>\r\n </DialogContent>\r\n <DialogActions>\r\n <Button\r\n id=\"ar_dialog_error_ok\"\r\n variant=\"contained\"\r\n onClick={() => this.handleOk()}\r\n color=\"primary\"\r\n autoFocus\r\n startIcon={<IconCheck />}\r\n >\r\n {I18n.t('ra_Ok')}\r\n </Button>\r\n </DialogActions>\r\n </Dialog>;\r\n }\r\n}\r\n\r\nDialogError.propTypes = {\r\n onClose: PropTypes.func.isRequired,\r\n fullWidth: PropTypes.bool,\r\n title: PropTypes.string,\r\n text: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.element,\r\n ]),\r\n};\r\n\r\n/** @type {typeof DialogError} */\r\nconst _export = DialogError;\r\nexport default _export;\r\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Message.js","names":["_react","_interopRequireDefault","require","_propTypes","_Button","_Dialog","_DialogActions","_DialogContent","_DialogContentText","_DialogTitle","_Close","_i18n","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","DialogMessage","_React$Component","_inherits2","_super","_classCallCheck2","_createClass2","key","value","handleOk","props","onClose","render","_this","createElement","open","maxWidth","fullWidth","undefined","id","title","I18n","t","style","marginRight","icon","text","variant","onClick","color","autoFocus","startIcon","ok","React","Component","propTypes","PropTypes","bool","func","isRequired","string","object","_default","exports"],"sources":["Message.js"],"sourcesContent":["/**\r\n * Copyright 2018-2023 Denis Haev (bluefox) <dogafox@gmail.com>\r\n *\r\n * MIT License\r\n *\r\n **/\r\n\r\n// please do not delete React, as without it other projects could not be compiled: ReferenceError: React is not defined\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport Button from '@mui/material/Button';\r\nimport Dialog from '@mui/material/Dialog';\r\nimport DialogActions from '@mui/material/DialogActions';\r\nimport DialogContent from '@mui/material/DialogContent';\r\nimport DialogContentText from '@mui/material/DialogContentText';\r\nimport DialogTitle from '@mui/material/DialogTitle';\r\n\r\nimport IconClose from '@mui/icons-material/Close';\r\n\r\nimport I18n from '../i18n';\r\n\r\n/**\r\n * @typedef {object} DialogMessageProps\r\n * @property {string} [title] The dialog title; default: Message (translated)\r\n * @property {string} text The dialog text.\r\n * @property {() => void} [onClose] Close handler.\r\n *\r\n * @extends {React.Component<DialogMessageProps>}\r\n */\r\nclass DialogMessage extends React.Component {\r\n handleOk() {\r\n this.props.onClose && this.props.onClose();\r\n }\r\n\r\n render() {\r\n return <Dialog\r\n open={!0}\r\n maxWidth=\"sm\"\r\n fullWidth={this.props.fullWidth !== undefined ? this.props.fullWidth : true}\r\n onClose={() => this.handleOk()}\r\n aria-labelledby=\"ar_dialog_message_title\"\r\n aria-describedby=\"ar_dialog_message_description\"\r\n >\r\n <DialogTitle id=\"ar_dialog_message_title\">{this.props.title || I18n.t('ra_Message')}</DialogTitle>\r\n <DialogContent>\r\n <DialogContentText id=\"ar_dialog_message_description\">\r\n <span style={{ marginRight: this.props.icon ? 8 : 0 }}>\r\n {this.props.icon || null}\r\n </span>\r\n {this.props.text}\r\n </DialogContentText>\r\n </DialogContent>\r\n <DialogActions>\r\n <Button id=\"ar_dialog_message_ok\" variant=\"contained\" onClick={() => this.handleOk()} color=\"primary\" autoFocus startIcon={<IconClose />}>{this.props.ok || I18n.t('ra_Close')}</Button>\r\n </DialogActions>\r\n </Dialog>;\r\n }\r\n}\r\n\r\nDialogMessage.propTypes = {\r\n fullWidth: PropTypes.bool,\r\n onClose: PropTypes.func.isRequired,\r\n title: PropTypes.string,\r\n text: PropTypes.string,\r\n ok: PropTypes.string,\r\n icon: PropTypes.object,\r\n};\r\n\r\nexport default DialogMessage;\r\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectFile.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_material","_iconsMaterial","_Utils","_i18n","_FileBrowser","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","styles","headerID","fontWeight","fontStyle","dialog","height","dialogMobile","padding","width","maxWidth","maxHeight","content","overflow","contentMobile","titleRoot","whiteSpace","display","textOverflow","DialogSelectFile","_React$Component","_inherits2","props","_this","_classCallCheck2","dialogName","concat","filters","window","_localStorage","localStorage","getItem","JSON","parse","selected","_typeof2","_toConsumableArray2","id","state","_createClass2","key","value","handleCancel","onClose","handleOk","onOk","multiSelect","Array","isArray","render","_this2","title","createElement","I18n","className","classes","Dialog","paper","Utils","clsx","fullWidth","open","DialogTitle","root","DialogContent","ready","imagePrefix","prefix","allowUpload","allowDownload","allowCreateFolder","allowDelete","allowView","showViewTypeButton","showToolbar","limitPath","filterFiles","filterByType","restrictToFolder","allowNonRestricted","onSelect","isDoubleClick","isFolder","setState","selectOnlyFolders","lang","getLanguage","socket","themeType","themeName","showExpertButton","expertMode","showTypeSelector","DialogActions","Button","variant","onClick","startIcon","Check","disabled","color","ok","Cancel","cancel","React","Component","propTypes","PropTypes","string","oneOfType","array","object","func","isRequired","bool","arrayOf","_export","withStyles","_default","exports"],"sources":["SelectFile.jsx"],"sourcesContent":["/*\r\n * Copyright 2022-2023 Denis Haev (bluefox) <dogafox@gmail.com>\r\n *\r\n * MIT License\r\n *\r\n */\r\n// please do not delete React, as without it other projects could not be compiled: ReferenceError: React is not defined\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@mui/styles';\r\n\r\nimport {\r\n Button,\r\n DialogTitle,\r\n DialogContent,\r\n DialogActions,\r\n Dialog,\r\n} from '@mui/material';\r\n\r\nimport {\r\n Cancel as IconCancel,\r\n Check as IconOk,\r\n} from '@mui/icons-material';\r\n\r\nimport Utils from '../Components/Utils';\r\nimport I18n from '../i18n';\r\nimport FileBrowser from '../Components/FileBrowser';\r\n\r\nconst styles = () => ({\r\n headerID: {\r\n fontWeight: 'bold',\r\n fontStyle: 'italic',\r\n },\r\n dialog: {\r\n height: '95%',\r\n },\r\n dialogMobile: {\r\n padding: 4,\r\n width: '100%',\r\n maxWidth: '100%',\r\n maxHeight: 'calc(100% - 16px)',\r\n height: '100%',\r\n },\r\n content: {\r\n height: '100%',\r\n overflow: 'hidden',\r\n },\r\n contentMobile: {\r\n padding: '8px 4px',\r\n },\r\n titleRoot: {\r\n whiteSpace: 'nowrap',\r\n width: 'calc(100% - 72px)',\r\n overflow: 'hidden',\r\n display: 'inline-block',\r\n textOverflow: 'ellipsis',\r\n },\r\n});\r\n\r\n/**\r\n * @typedef {object} DialogSelectFileProps\r\n * @property {boolean} [dialogName] PropTypes.string, // where to store settings in localStorage * @property {string} [title] The dialog title; default: Please select object ID... (translated)\r\n * @property {boolean} [multiSelect] Set to true to allow the selection of multiple IDs.\r\n * @property {string} [imagePrefix] Prefix (default: '.')\r\n * @property {boolean} [showExpertButton] Show the expert button?\r\n * @property {ioBroker.Languages} [lang] The language.\r\n * @property {import('../Connection').default} socket The socket connection.\r\n * @property {string} [themeName] Theme name.\r\n * @property {string} [themeType] Theme type.\r\n * @property {string | string[]} [selected] The selected IDs.\r\n * @property {string} [ok] The ok button text; default: OK (translated)\r\n * @property {string} [cancel] The cancel button text; default: Cancel (translated)\r\n * @property {boolean} [socket] Socket class (required)\r\n * @property {boolean} [allowUpload] If download of files enabled\r\n * @property {boolean} [allowDownload] If download of files enabled\r\n * @property {boolean} [allowCreateFolder] If creation of folders enabled\r\n * @property {boolean} [allowDelete] If creation of folders enabled\r\n * @property {boolean} [allowView] if tile view enabled (default true)\r\n * @property {boolean} [showToolbar] Show toolbar (default true)\r\n * @property {array} [limitPath] Limit file browser to one specific objectID of type meta and following path (like vis.0/main)\r\n * @property {array} [filterFiles] like `['png', 'svg', 'bmp', 'jpg', 'jpeg', 'gif']`\r\n * @property {string} [filterByType] images, code, txt, audio, video\r\n * @property {bool} [selectOnlyFolders] allow only folder's selection * @property {() => void} onClose Close handler that is always called when the dialog is closed.\r\n * @property {(selected: string | string[] | undefined) => void} onOk Handler that is called when the user presses OK or by double click.\r\n * @property {{headerID: string; dialog: string; content: string}} [classes] The styling class names.\r\n *\r\n * @extends {React.Component<DialogSelectIDProps>}\r\n */\r\nclass DialogSelectFile extends React.Component {\r\n /**\r\n * @param {DialogSelectFileProps} props\r\n */\r\n constructor(props) {\r\n super(props);\r\n this.dialogName = this.props.dialogName || 'default';\r\n this.dialogName = `SelectFile.${this.dialogName}`;\r\n\r\n this.filters = (window._localStorage || window.localStorage).getItem(this.dialogName) || '{}';\r\n\r\n try {\r\n this.filters = JSON.parse(this.filters);\r\n } catch (e) {\r\n this.filters = {};\r\n }\r\n\r\n if (props.filters) {\r\n this.filters = { ...this.filters, ...props.filters };\r\n }\r\n\r\n let selected = this.props.selected || [];\r\n if (typeof selected !== 'object') {\r\n selected = [selected];\r\n } else {\r\n selected = [...selected];\r\n }\r\n selected = selected.filter(id => id);\r\n\r\n this.state = {\r\n selected,\r\n };\r\n }\r\n\r\n handleCancel() {\r\n this.props.onClose();\r\n }\r\n\r\n handleOk() {\r\n this.props.onOk(this.props.multiSelect || !Array.isArray(this.state.selected) ? this.state.selected : this.state.selected[0] || '');\r\n this.props.onClose();\r\n }\r\n\r\n render() {\r\n let title;\r\n if (this.state.selected.length) {\r\n if (!Array.isArray(this.state.selected) || this.state.selected.length === 1) {\r\n title = [\r\n <span key=\"selected\">\r\n {I18n.t('ra_Selected')}\r\n &nbsp;\r\n </span>,\r\n <span key=\"id\" className={this.props.classes.headerID}>\r\n {this.state.selected}\r\n </span>,\r\n ];\r\n } else {\r\n title = [\r\n <span key=\"selected\">\r\n {I18n.t('ra_Selected')}\r\n &nbsp;\r\n </span>,\r\n <span key=\"id\" className={this.props.classes.headerID}>\r\n {I18n.t('%s items', this.state.selected.length)}\r\n </span>,\r\n ];\r\n }\r\n } else {\r\n title = this.props.title || I18n.t('ra_Please select file...');\r\n }\r\n\r\n return <Dialog\r\n onClose={() => {}}\r\n maxWidth={false}\r\n classes={{ paper: Utils.clsx(this.props.classes.dialog, this.props.classes.dialogMobile) }}\r\n fullWidth\r\n open={!0}\r\n aria-labelledby=\"ar_dialog_selectfile_title\"\r\n >\r\n <DialogTitle id=\"ar_dialog_selectfile_title\" classes={{ root: this.props.classes.titleRoot }}>{title}</DialogTitle>\r\n <DialogContent className={Utils.clsx(this.props.classes.content, this.props.classes.contentMobile)}>\r\n <FileBrowser\r\n ready\r\n imagePrefix={this.props.imagePrefix || this.props.prefix || '../'} // prefix is for back compatibility\r\n allowUpload={!!this.props.allowUpload}\r\n allowDownload={this.props.allowDownload !== false}\r\n allowCreateFolder={!!this.props.allowCreateFolder}\r\n allowDelete={!!this.props.allowDelete}\r\n allowView={this.props.allowView !== false}\r\n showViewTypeButton={this.props.showViewTypeButton !== false}\r\n showToolbar={this.props.showToolbar !== false}\r\n limitPath={this.props.limitPath}\r\n filterFiles={this.props.filterFiles}\r\n filterByType={this.props.filterByType}\r\n selected={this.props.selected}\r\n restrictToFolder={this.props.restrictToFolder}\r\n allowNonRestricted={this.props.allowNonRestricted}\r\n onSelect={(selected, isDoubleClick, isFolder) => {\r\n this.setState({ selected }, () =>\r\n isDoubleClick && (!this.props.selectOnlyFolders || isFolder) && this.handleOk());\r\n }}\r\n t={this.props.t || I18n.t}\r\n lang={this.props.lang || I18n.getLanguage()}\r\n socket={this.props.socket}\r\n themeType={this.props.themeType}\r\n themeName={this.props.themeName}\r\n showExpertButton={this.props.showExpertButton}\r\n expertMode={this.props.expertMode}\r\n showTypeSelector={this.props.showTypeSelector}\r\n />\r\n </DialogContent>\r\n <DialogActions>\r\n <Button variant=\"contained\" onClick={() => this.handleOk()} startIcon={<IconOk />} disabled={!this.state.selected.length} color=\"primary\">{this.props.ok || I18n.t('ra_Ok')}</Button>\r\n <Button color=\"grey\" variant=\"contained\" onClick={() => this.handleCancel()} startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\r\n </DialogActions>\r\n </Dialog>;\r\n }\r\n}\r\n\r\nDialogSelectFile.propTypes = {\r\n imagePrefix: PropTypes.string,\r\n dialogName: PropTypes.string, // where to store settings in localStorage\r\n selected: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.array, // not implemented\r\n ]),\r\n classes: PropTypes.object,\r\n onClose: PropTypes.func.isRequired,\r\n onOk: PropTypes.func.isRequired,\r\n ok: PropTypes.string,\r\n cancel: PropTypes.string,\r\n socket: PropTypes.object.isRequired,\r\n allowUpload: PropTypes.bool,\r\n allowDownload: PropTypes.bool,\r\n allowCreateFolder: PropTypes.bool,\r\n allowDelete: PropTypes.bool,\r\n allowView: PropTypes.bool, // allow view of files\r\n showToolbar: PropTypes.bool,\r\n filterFiles: PropTypes.arrayOf(PropTypes.string), // array of extensions ['png', 'svg', 'bmp', 'jpg', 'jpeg', 'gif']\r\n filterByType: PropTypes.string, // e.g. images\r\n limitPath: PropTypes.string,\r\n selectOnlyFolders: PropTypes.bool,\r\n showViewTypeButton: PropTypes.bool, // Allow switch views Table<=>Rows\r\n showTypeSelector: PropTypes.bool, // If type selector should be shown\r\n restrictToFolder: PropTypes.string, // If defined, allow selecting only files from this folder\r\n allowNonRestricted: PropTypes.bool, // If restrictToFolder defined, allow selecting files outside of this folder\r\n\r\n title: PropTypes.string,\r\n lang: PropTypes.string,\r\n\r\n themeName: PropTypes.string,\r\n themeType: PropTypes.string,\r\n showExpertButton: PropTypes.bool,\r\n expertMode: PropTypes.bool, // force expert mode\r\n multiSelect: PropTypes.bool, // not implemented\r\n};\r\n\r\n/** @type {typeof DialogSelectFile} */\r\nconst _export = withStyles(styles)(DialogSelectFile);\r\nexport default _export;\r\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectID.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_Button","_DialogTitle","_DialogContent","_DialogActions","_Dialog","_Cancel","_Check","_Utils","_i18n","_ObjectBrowser","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","styles","headerID","fontWeight","fontStyle","dialog","height","dialogMobile","padding","width","maxWidth","maxHeight","content","overflow","contentMobile","titleRoot","whiteSpace","display","textOverflow","DialogSelectID","_React$Component","_inherits2","_super","props","_this","_classCallCheck2","dialogName","concat","filters","window","_localStorage","localStorage","getItem","JSON","parse","selected","_typeof2","id","state","name","_createClass2","key","value","handleCancel","onClose","handleOk","onOk","multiSelect","render","_this2","title","createElement","I18n","className","classes","paper","Utils","clsx","fullWidth","open","root","foldersFirst","imagePrefix","prefix","defaultFilters","showExpertButton","undefined","expertMode","style","columns","types","lang","getLanguage","socket","notEditable","themeName","themeType","customFilter","onFilterChanged","filterConfig","setItem","stringify","onSelect","isDouble","setState","filterFunc","variant","onClick","startIcon","disabled","color","ok","cancel","React","Component","propTypes","PropTypes","string","object","bool","func","isRequired","oneOfType","array","_export","withStyles","_default","exports"],"sources":["SelectID.js"],"sourcesContent":["/**\r\n * Copyright 2018-2023 Denis Haev (bluefox) <dogafox@gmail.com>\r\n *\r\n * MIT License\r\n *\r\n **/\r\n// please do not delete React, as without it other projects could not be compiled: ReferenceError: React is not defined\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@mui/styles';\r\n\r\nimport Button from '@mui/material/Button';\r\nimport DialogTitle from '@mui/material/DialogTitle';\r\nimport DialogContent from '@mui/material/DialogContent';\r\nimport DialogActions from '@mui/material/DialogActions';\r\nimport Dialog from '@mui/material/Dialog';\r\n\r\nimport IconCancel from '@mui/icons-material/Cancel';\r\nimport IconOk from '@mui/icons-material/Check';\r\n\r\nimport Utils from '../Components/Utils';\r\nimport I18n from '../i18n';\r\nimport ObjectBrowser from '../Components/ObjectBrowser';\r\n\r\nconst styles = () => ({\r\n headerID: {\r\n fontWeight: 'bold',\r\n fontStyle: 'italic',\r\n },\r\n dialog: {\r\n height: '95%',\r\n },\r\n dialogMobile: {\r\n padding: 4,\r\n width: '100%',\r\n maxWidth: '100%',\r\n maxHeight: 'calc(100% - 16px)',\r\n height: '100%',\r\n },\r\n content: {\r\n height: '100%',\r\n overflow: 'hidden',\r\n },\r\n contentMobile: {\r\n padding: '8px 4px',\r\n },\r\n titleRoot: {\r\n whiteSpace: 'nowrap',\r\n width: 'calc(100% - 72px)',\r\n overflow: 'hidden',\r\n display: 'inline-block',\r\n textOverflow: 'ellipsis',\r\n },\r\n});\r\n\r\n/**\r\n * @typedef {object} DialogSelectIDProps\r\n * @property {string} [dialogName] The internal name of the dialog; default: \"default\"\r\n * @property {string} [title] The dialog title; default: Please select object ID... (translated)\r\n * @property {boolean} [multiSelect] Set to true to allow the selection of multiple IDs.\r\n * @property {boolean} [foldersFirst] Show folders before any leaves.\r\n * @property {string} [imagePrefix] Prefix (default: '.')\r\n * @property {boolean} [showExpertButton] Show the expert button?\r\n * @property {import('../Components/types').ObjectBrowserColumn[]} [columns] Columns to display; default: 'name', 'type', 'role', 'room', 'func', 'val'\r\n * @property {import('../Components/types').ObjectBrowserType[]} [types] Object types to show; default: 'state' only\r\n * @property {ioBroker.Languages} [lang] The language.\r\n * @property {import('../Connection').default} socket The socket connection.\r\n * @property {boolean} [notEditable] Can't objects be edited? (default: true)\r\n * @property {string} [themeName] Theme name.\r\n * @property {string} [themeType] Theme type.\r\n * @property {import('../Components/types').ObjectBrowserCustomFilter} [customFilter] Custom filter.\r\n * @property {string | string[]} [selected] The selected IDs.\r\n * @property {string} [ok] The ok button text; default: OK (translated)\r\n * @property {string} [cancel] The cancel button text; default: Cancel (translated)\r\n * @property {() => void} onClose Close handler that is always called when the dialog is closed.\r\n * @property {(selected: string | string[] | undefined, name: string) => void} onOk Handler that is called when the user presses OK.\r\n * @property {{headerID: string; dialog: string; content: string}} [classes] The styling class names.\r\n *\r\n * @extends {React.Component<DialogSelectIDProps>}\r\n */\r\nclass DialogSelectID extends React.Component {\r\n /**\r\n * @param {DialogSelectIDProps} props\r\n */\r\n constructor(props) {\r\n super(props);\r\n this.dialogName = this.props.dialogName || 'default';\r\n this.dialogName = `SelectID.${this.dialogName}`;\r\n\r\n this.filters = (window._localStorage || window.localStorage).getItem(this.dialogName) || '{}';\r\n\r\n try {\r\n this.filters = JSON.parse(this.filters);\r\n } catch (e) {\r\n this.filters = {};\r\n }\r\n\r\n if (props.filters) {\r\n this.filters = { ...this.filters, ...props.filters };\r\n }\r\n\r\n let selected = this.props.selected || [];\r\n if (typeof selected !== 'object') {\r\n selected = [selected];\r\n }\r\n selected = selected.filter(id => id);\r\n\r\n this.state = {\r\n selected,\r\n name: '',\r\n };\r\n }\r\n\r\n handleCancel() {\r\n this.props.onClose();\r\n }\r\n\r\n handleOk() {\r\n this.props.onOk(this.props.multiSelect ? this.state.selected : this.state.selected[0] || '', this.state.name);\r\n this.props.onClose();\r\n }\r\n\r\n render() {\r\n let title;\r\n if (this.state.name || this.state.selected.length) {\r\n if (this.state.selected.length === 1) {\r\n title = [\r\n <span key=\"selected\">\r\n {I18n.t('ra_Selected')}\r\n &nbsp;\r\n </span>,\r\n <span key=\"id\" className={this.props.classes.headerID}>\r\n {(this.state.name || this.state.selected) + (this.state.name ? ` [${this.state.selected}]` : '')}\r\n </span>,\r\n ];\r\n } else {\r\n title = [\r\n <span key=\"selected\">\r\n {I18n.t('ra_Selected')}\r\n &nbsp;\r\n </span>,\r\n <span key=\"id\" className={this.props.classes.headerID}>\r\n {I18n.t('%s items', this.state.selected.length)}\r\n </span>,\r\n ];\r\n }\r\n } else {\r\n title = this.props.title || I18n.t('ra_Please select object ID...');\r\n }\r\n\r\n return <Dialog\r\n onClose={() => {}}\r\n maxWidth={false}\r\n classes={{ paper: Utils.clsx(this.props.classes.dialog, this.props.classes.dialogMobile) }}\r\n fullWidth\r\n open={!0}\r\n aria-labelledby=\"ar_dialog_selectid_title\"\r\n >\r\n <DialogTitle id=\"ar_dialog_selectid_title\" classes={{ root: this.props.classes.titleRoot }}>{title}</DialogTitle>\r\n <DialogContent className={Utils.clsx(this.props.classes.content, this.props.classes.contentMobile)}>\r\n <ObjectBrowser\r\n foldersFirst={this.props.foldersFirst}\r\n imagePrefix={this.props.imagePrefix || this.props.prefix} // prefix is for back compatibility\r\n defaultFilters={this.filters}\r\n dialogName={this.dialogName}\r\n showExpertButton={this.props.showExpertButton !== undefined ? this.props.showExpertButton : true}\r\n expertMode={this.props.expertMode}\r\n style={{ width: '100%', height: '100%' }}\r\n columns={this.props.columns || ['name', 'type', 'role', 'room', 'func', 'val']}\r\n types={this.props.types || ['state']}\r\n root={this.props.root}\r\n t={I18n.t}\r\n lang={this.props.lang || I18n.getLanguage()}\r\n socket={this.props.socket}\r\n selected={this.state.selected}\r\n multiSelect={this.props.multiSelect}\r\n notEditable={this.props.notEditable === undefined ? true : this.props.notEditable}\r\n name={this.state.name}\r\n themeName={this.props.themeName}\r\n themeType={this.props.themeType}\r\n customFilter={this.props.customFilter}\r\n onFilterChanged={filterConfig => {\r\n this.filters = filterConfig;\r\n (window._localStorage || window.localStorage).setItem(this.dialogName, JSON.stringify(filterConfig));\r\n }}\r\n onSelect={(selected, name, isDouble) => {\r\n if (JSON.stringify(selected) !== JSON.stringify(this.state.selected)) {\r\n this.setState({ selected, name }, () =>\r\n isDouble && this.handleOk());\r\n } else if (isDouble) {\r\n this.handleOk();\r\n }\r\n }}\r\n filterFunc={this.props.filterFunc}\r\n />\r\n </DialogContent>\r\n <DialogActions>\r\n <Button id={`ar_dialog_selectid_ok_${this.props.dialogName || ''}`} variant=\"contained\" onClick={() => this.handleOk()} startIcon={<IconOk />} disabled={!this.state.selected.length} color=\"primary\">{this.props.ok || I18n.t('ra_Ok')}</Button>\r\n <Button id={`ar_dialog_selectid_cancel_${this.props.dialogName || ''}`} color=\"grey\" variant=\"contained\" onClick={() => this.handleCancel()} startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\r\n </DialogActions>\r\n </Dialog>;\r\n }\r\n}\r\n\r\nDialogSelectID.propTypes = {\r\n dialogName: PropTypes.string, // where to store settings in localStorage\r\n classes: PropTypes.object,\r\n notEditable: PropTypes.bool,\r\n onClose: PropTypes.func.isRequired,\r\n onOk: PropTypes.func.isRequired,\r\n title: PropTypes.string,\r\n lang: PropTypes.string,\r\n foldersFirst: PropTypes.bool,\r\n selected: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.array,\r\n ]),\r\n filters: PropTypes.object, // predefined filter fields, like {\"id\":\"\",\"name\":\"\",\"room\":\"\",\"func\":\"\",\"role\":\"level\",\"type\":\"\",\"custom\":\"\"}\r\n customFilter: PropTypes.object, // optional {common: {custom: true}} or {common: {custom: 'sql.0'}}\r\n socket: PropTypes.object.isRequired,\r\n cancel: PropTypes.string,\r\n imagePrefix: PropTypes.string,\r\n ok: PropTypes.string,\r\n themeName: PropTypes.string,\r\n themeType: PropTypes.string,\r\n showExpertButton: PropTypes.bool,\r\n expertMode: PropTypes.bool, // force expert mode\r\n multiSelect: PropTypes.bool,\r\n types: PropTypes.array, // optional ['state', 'instance', 'channel']\r\n columns: PropTypes.array, // optional ['name', 'type', 'role', 'room', 'func', 'val', 'buttons']\r\n root: PropTypes.string, // optional. Root of tree. Show only this branch of tree\r\n\r\n filterFunc: PropTypes.func, // function to filter out all unnecessary objects. It cannot be used together with \"types\"\r\n // Example for function: `obj => obj.common && obj.common.type === 'boolean'` to show only boolean states\r\n};\r\n\r\n/** @type {typeof DialogSelectID} */\r\nconst _export = withStyles(styles)(DialogSelectID);\r\nexport default _export;\r\n"],"mappings":";;;;;;;;;;;;;;AAOA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAEA,IAAAG,OAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,YAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,cAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,cAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,OAAA,GAAAR,sBAAA,CAAAC,OAAA;AAEA,IAAAQ,OAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,MAAA,GAAAV,sBAAA,CAAAC,OAAA;AAEA,IAAAU,MAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,KAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,cAAA,GAAAb,sBAAA,CAAAC,OAAA;AAAwD,SAAAa,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAAA,SAAAoB,aAAAC,OAAA,QAAAC,yBAAA,GAAAC,yBAAA,oBAAAC,qBAAA,QAAAC,KAAA,OAAAC,gBAAA,aAAAL,OAAA,GAAAM,MAAA,MAAAL,yBAAA,QAAAM,SAAA,OAAAF,gBAAA,mBAAAG,WAAA,EAAAF,MAAA,GAAAG,OAAA,CAAAC,SAAA,CAAAN,KAAA,EAAAZ,SAAA,EAAAe,SAAA,YAAAD,MAAA,GAAAF,KAAA,CAAAd,KAAA,OAAAE,SAAA,gBAAAmB,2BAAA,mBAAAL,MAAA;AAAA,SAAAJ,0BAAA,eAAAO,OAAA,qBAAAA,OAAA,CAAAC,SAAA,oBAAAD,OAAA,CAAAC,SAAA,CAAAE,IAAA,2BAAAC,KAAA,oCAAAC,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAR,OAAA,CAAAC,SAAA,CAAAI,OAAA,8CAAAnC,CAAA,sBAtBxD;AACA;AACA;AACA;AACA;AACA,IALA,CAMA;AAkBA,IAAMuC,MAAM,GAAG,SAATA,MAAMA,CAAA;EAAA,OAAU;IAClBC,QAAQ,EAAE;MACNC,UAAU,EAAE,MAAM;MAClBC,SAAS,EAAE;IACf,CAAC;IACDC,MAAM,EAAE;MACJC,MAAM,EAAE;IACZ,CAAC;IACDC,YAAY,EAAE;MACVC,OAAO,EAAE,CAAC;MACVC,KAAK,EAAE,MAAM;MACbC,QAAQ,EAAE,MAAM;MAChBC,SAAS,EAAE,mBAAmB;MAC9BL,MAAM,EAAE;IACZ,CAAC;IACDM,OAAO,EAAE;MACLN,MAAM,EAAE,MAAM;MACdO,QAAQ,EAAE;IACd,CAAC;IACDC,aAAa,EAAE;MACXN,OAAO,EAAE;IACb,CAAC;IACDO,SAAS,EAAE;MACPC,UAAU,EAAE,QAAQ;MACpBP,KAAK,EAAE,mBAAmB;MAC1BI,QAAQ,EAAE,QAAQ;MAClBI,OAAO,EAAE,cAAc;MACvBC,YAAY,EAAE;IAClB;EACJ,CAAC;AAAA,CAAC;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAxBA,IAyBMC,cAAc,0BAAAC,gBAAA;EAAA,IAAAC,UAAA,aAAAF,cAAA,EAAAC,gBAAA;EAAA,IAAAE,MAAA,GAAAxC,YAAA,CAAAqC,cAAA;EAChB;AACJ;AACA;EACI,SAAAA,eAAYI,KAAK,EAAE;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,mBAAAN,cAAA;IACfK,KAAA,GAAAF,MAAA,CAAAtB,IAAA,OAAMuB,KAAK;IACXC,KAAA,CAAKE,UAAU,GAAGF,KAAA,CAAKD,KAAK,CAACG,UAAU,IAAI,SAAS;IACpDF,KAAA,CAAKE,UAAU,eAAAC,MAAA,CAAeH,KAAA,CAAKE,UAAU,CAAE;IAE/CF,KAAA,CAAKI,OAAO,GAAG,CAACC,MAAM,CAACC,aAAa,IAAID,MAAM,CAACE,YAAY,EAAEC,OAAO,CAACR,KAAA,CAAKE,UAAU,CAAC,IAAI,IAAI;IAE7F,IAAI;MACAF,KAAA,CAAKI,OAAO,GAAGK,IAAI,CAACC,KAAK,CAACV,KAAA,CAAKI,OAAO,CAAC;IAC3C,CAAC,CAAC,OAAOlE,CAAC,EAAE;MACR8D,KAAA,CAAKI,OAAO,GAAG,CAAC,CAAC;IACrB;IAEA,IAAIL,KAAK,CAACK,OAAO,EAAE;MACfJ,KAAA,CAAKI,OAAO,GAAAtD,aAAA,CAAAA,aAAA,KAAQkD,KAAA,CAAKI,OAAO,GAAKL,KAAK,CAACK,OAAO,CAAE;IACxD;IAEA,IAAIO,QAAQ,GAAGX,KAAA,CAAKD,KAAK,CAACY,QAAQ,IAAI,EAAE;IACxC,IAAI,IAAAC,QAAA,aAAOD,QAAQ,MAAK,QAAQ,EAAE;MAC9BA,QAAQ,GAAG,CAACA,QAAQ,CAAC;IACzB;IACAA,QAAQ,GAAGA,QAAQ,CAAClE,MAAM,CAAC,UAAAoE,EAAE;MAAA,OAAIA,EAAE;IAAA,EAAC;IAEpCb,KAAA,CAAKc,KAAK,GAAI;MACVH,QAAQ,EAARA,QAAQ;MACRI,IAAI,EAAE;IACV,CAAC;IAAC,OAAAf,KAAA;EACN;EAAC,IAAAgB,aAAA,aAAArB,cAAA;IAAAsB,GAAA;IAAAC,KAAA,EAED,SAAAC,aAAA,EAAe;MACX,IAAI,CAACpB,KAAK,CAACqB,OAAO,CAAC,CAAC;IACxB;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAED,SAAAG,SAAA,EAAW;MACP,IAAI,CAACtB,KAAK,CAACuB,IAAI,CAAC,IAAI,CAACvB,KAAK,CAACwB,WAAW,GAAG,IAAI,CAACT,KAAK,CAACH,QAAQ,GAAG,IAAI,CAACG,KAAK,CAACH,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,CAACG,KAAK,CAACC,IAAI,CAAC;MAC7G,IAAI,CAAChB,KAAK,CAACqB,OAAO,CAAC,CAAC;IACxB;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAED,SAAAM,OAAA,EAAS;MAAA,IAAAC,MAAA;MACL,IAAIC,KAAK;MACT,IAAI,IAAI,CAACZ,KAAK,CAACC,IAAI,IAAI,IAAI,CAACD,KAAK,CAACH,QAAQ,CAAC3D,MAAM,EAAE;QAC/C,IAAI,IAAI,CAAC8D,KAAK,CAACH,QAAQ,CAAC3D,MAAM,KAAK,CAAC,EAAE;UAClC0E,KAAK,GAAG,cACJxG,MAAA,YAAAyG,aAAA;YAAMV,GAAG,EAAC;UAAU,GACfW,gBAAI,CAACxF,CAAC,CAAC,aAAa,CAAC,EAAC,MAErB,CAAC,eACPlB,MAAA,YAAAyG,aAAA;YAAMV,GAAG,EAAC,IAAI;YAACY,SAAS,EAAE,IAAI,CAAC9B,KAAK,CAAC+B,OAAO,CAACpD;UAAS,GACjD,CAAC,IAAI,CAACoC,KAAK,CAACC,IAAI,IAAI,IAAI,CAACD,KAAK,CAACH,QAAQ,KAAK,IAAI,CAACG,KAAK,CAACC,IAAI,QAAAZ,MAAA,CAAQ,IAAI,CAACW,KAAK,CAACH,QAAQ,SAAM,EAAE,CAC7F,CAAC,CACV;QACL,CAAC,MAAM;UACHe,KAAK,GAAG,cACJxG,MAAA,YAAAyG,aAAA;YAAMV,GAAG,EAAC;UAAU,GACfW,gBAAI,CAACxF,CAAC,CAAC,aAAa,CAAC,EAAC,MAErB,CAAC,eACPlB,MAAA,YAAAyG,aAAA;YAAMV,GAAG,EAAC,IAAI;YAACY,SAAS,EAAE,IAAI,CAAC9B,KAAK,CAAC+B,OAAO,CAACpD;UAAS,GACjDkD,gBAAI,CAACxF,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC0E,KAAK,CAACH,QAAQ,CAAC3D,MAAM,CAC5C,CAAC,CACV;QACL;MACJ,CAAC,MAAM;QACH0E,KAAK,GAAG,IAAI,CAAC3B,KAAK,CAAC2B,KAAK,IAAIE,gBAAI,CAACxF,CAAC,CAAC,+BAA+B,CAAC;MACvE;MAEA,oBAAOlB,MAAA,YAAAyG,aAAA,CAAChG,OAAA,WAAM;QACVyF,OAAO,EAAE,SAAAA,QAAA,EAAM,CAAC,CAAE;QAClBlC,QAAQ,EAAE,KAAM;QAChB4C,OAAO,EAAE;UAAEC,KAAK,EAAEC,iBAAK,CAACC,IAAI,CAAC,IAAI,CAAClC,KAAK,CAAC+B,OAAO,CAACjD,MAAM,EAAE,IAAI,CAACkB,KAAK,CAAC+B,OAAO,CAAC/C,YAAY;QAAE,CAAE;QAC3FmD,SAAS;QACTC,IAAI,EAAE,CAAC,CAAE;QACT,mBAAgB;MAA0B,gBAE1CjH,MAAA,YAAAyG,aAAA,CAACnG,YAAA,WAAW;QAACqF,EAAE,EAAC,0BAA0B;QAACiB,OAAO,EAAE;UAAEM,IAAI,EAAE,IAAI,CAACrC,KAAK,CAAC+B,OAAO,CAACvC;QAAU;MAAE,GAAEmC,KAAmB,CAAC,eACjHxG,MAAA,YAAAyG,aAAA,CAAClG,cAAA,WAAa;QAACoG,SAAS,EAAEG,iBAAK,CAACC,IAAI,CAAC,IAAI,CAAClC,KAAK,CAAC+B,OAAO,CAAC1C,OAAO,EAAE,IAAI,CAACW,KAAK,CAAC+B,OAAO,CAACxC,aAAa;MAAE,gBAC/FpE,MAAA,YAAAyG,aAAA,CAAC3F,cAAA,WAAa;QACVqG,YAAY,EAAE,IAAI,CAACtC,KAAK,CAACsC,YAAa;QACtCC,WAAW,EAAE,IAAI,CAACvC,KAAK,CAACuC,WAAW,IAAI,IAAI,CAACvC,KAAK,CAACwC,MAAO,CAAC;QAAA;QAC1DC,cAAc,EAAE,IAAI,CAACpC,OAAQ;QAC7BF,UAAU,EAAE,IAAI,CAACA,UAAW;QAC5BuC,gBAAgB,EAAE,IAAI,CAAC1C,KAAK,CAAC0C,gBAAgB,KAAKC,SAAS,GAAG,IAAI,CAAC3C,KAAK,CAAC0C,gBAAgB,GAAG,IAAK;QACjGE,UAAU,EAAE,IAAI,CAAC5C,KAAK,CAAC4C,UAAW;QAClCC,KAAK,EAAE;UAAE3D,KAAK,EAAE,MAAM;UAAEH,MAAM,EAAE;QAAO,CAAE;QACzC+D,OAAO,EAAE,IAAI,CAAC9C,KAAK,CAAC8C,OAAO,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAE;QAC/EC,KAAK,EAAE,IAAI,CAAC/C,KAAK,CAAC+C,KAAK,IAAI,CAAC,OAAO,CAAE;QACrCV,IAAI,EAAE,IAAI,CAACrC,KAAK,CAACqC,IAAK;QACtBhG,CAAC,EAAEwF,gBAAI,CAACxF,CAAE;QACV2G,IAAI,EAAE,IAAI,CAAChD,KAAK,CAACgD,IAAI,IAAInB,gBAAI,CAACoB,WAAW,CAAC,CAAE;QAC5CC,MAAM,EAAE,IAAI,CAAClD,KAAK,CAACkD,MAAO;QAC1BtC,QAAQ,EAAE,IAAI,CAACG,KAAK,CAACH,QAAS;QAC9BY,WAAW,EAAE,IAAI,CAACxB,KAAK,CAACwB,WAAY;QACpC2B,WAAW,EAAE,IAAI,CAACnD,KAAK,CAACmD,WAAW,KAAKR,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC3C,KAAK,CAACmD,WAAY;QAClFnC,IAAI,EAAE,IAAI,CAACD,KAAK,CAACC,IAAK;QACtBoC,SAAS,EAAE,IAAI,CAACpD,KAAK,CAACoD,SAAU;QAChCC,SAAS,EAAE,IAAI,CAACrD,KAAK,CAACqD,SAAU;QAChCC,YAAY,EAAE,IAAI,CAACtD,KAAK,CAACsD,YAAa;QACtCC,eAAe,EAAE,SAAAA,gBAAAC,YAAY,EAAI;UAC7B9B,MAAI,CAACrB,OAAO,GAAGmD,YAAY;UAC3B,CAAClD,MAAM,CAACC,aAAa,IAAID,MAAM,CAACE,YAAY,EAAEiD,OAAO,CAAC/B,MAAI,CAACvB,UAAU,EAAEO,IAAI,CAACgD,SAAS,CAACF,YAAY,CAAC,CAAC;QACxG,CAAE;QACFG,QAAQ,EAAE,SAAAA,SAAC/C,QAAQ,EAAEI,IAAI,EAAE4C,QAAQ,EAAK;UACpC,IAAIlD,IAAI,CAACgD,SAAS,CAAC9C,QAAQ,CAAC,KAAKF,IAAI,CAACgD,SAAS,CAAChC,MAAI,CAACX,KAAK,CAACH,QAAQ,CAAC,EAAE;YAClEc,MAAI,CAACmC,QAAQ,CAAC;cAAEjD,QAAQ,EAARA,QAAQ;cAAEI,IAAI,EAAJA;YAAK,CAAC,EAAE;cAAA,OAC9B4C,QAAQ,IAAIlC,MAAI,CAACJ,QAAQ,CAAC,CAAC;YAAA,EAAC;UACpC,CAAC,MAAM,IAAIsC,QAAQ,EAAE;YACjBlC,MAAI,CAACJ,QAAQ,CAAC,CAAC;UACnB;QACJ,CAAE;QACFwC,UAAU,EAAE,IAAI,CAAC9D,KAAK,CAAC8D;MAAW,CACrC,CACU,CAAC,eAChB3I,MAAA,YAAAyG,aAAA,CAACjG,cAAA,WAAa,qBACVR,MAAA,YAAAyG,aAAA,CAACpG,OAAA,WAAM;QAACsF,EAAE,2BAAAV,MAAA,CAA2B,IAAI,CAACJ,KAAK,CAACG,UAAU,IAAI,EAAE,CAAG;QAAC4D,OAAO,EAAC,WAAW;QAACC,OAAO,EAAE,SAAAA,QAAA;UAAA,OAAMtC,MAAI,CAACJ,QAAQ,CAAC,CAAC;QAAA,CAAC;QAAC2C,SAAS,eAAE9I,MAAA,YAAAyG,aAAA,CAAC9F,MAAA,WAAM,MAAE,CAAE;QAACoI,QAAQ,EAAE,CAAC,IAAI,CAACnD,KAAK,CAACH,QAAQ,CAAC3D,MAAO;QAACkH,KAAK,EAAC;MAAS,GAAE,IAAI,CAACnE,KAAK,CAACoE,EAAE,IAAIvC,gBAAI,CAACxF,CAAC,CAAC,OAAO,CAAU,CAAC,eACjPlB,MAAA,YAAAyG,aAAA,CAACpG,OAAA,WAAM;QAACsF,EAAE,+BAAAV,MAAA,CAA+B,IAAI,CAACJ,KAAK,CAACG,UAAU,IAAI,EAAE,CAAG;QAACgE,KAAK,EAAC,MAAM;QAACJ,OAAO,EAAC,WAAW;QAACC,OAAO,EAAE,SAAAA,QAAA;UAAA,OAAMtC,MAAI,CAACN,YAAY,CAAC,CAAC;QAAA,CAAC;QAAC6C,SAAS,eAAE9I,MAAA,YAAAyG,aAAA,CAAC/F,OAAA,WAAU,MAAE;MAAE,GAAE,IAAI,CAACmE,KAAK,CAACqE,MAAM,IAAIxC,gBAAI,CAACxF,CAAC,CAAC,WAAW,CAAU,CAC/M,CACX,CAAC;IACb;EAAC;EAAA,OAAAuD,cAAA;AAAA,EAzHwB0E,iBAAK,CAACC,SAAS;AA4H5C3E,cAAc,CAAC4E,SAAS,GAAG;EACvBrE,UAAU,EAAEsE,qBAAS,CAACC,MAAM;EAAE;EAC9B3C,OAAO,EAAE0C,qBAAS,CAACE,MAAM;EACzBxB,WAAW,EAAEsB,qBAAS,CAACG,IAAI;EAC3BvD,OAAO,EAAEoD,qBAAS,CAACI,IAAI,CAACC,UAAU;EAClCvD,IAAI,EAAEkD,qBAAS,CAACI,IAAI,CAACC,UAAU;EAC/BnD,KAAK,EAAE8C,qBAAS,CAACC,MAAM;EACvB1B,IAAI,EAAEyB,qBAAS,CAACC,MAAM;EACtBpC,YAAY,EAAEmC,qBAAS,CAACG,IAAI;EAC5BhE,QAAQ,EAAE6D,qBAAS,CAACM,SAAS,CAAC,CAC1BN,qBAAS,CAACC,MAAM,EAChBD,qBAAS,CAACO,KAAK,CAClB,CAAC;EACF3E,OAAO,EAAEoE,qBAAS,CAACE,MAAM;EAAE;EAC3BrB,YAAY,EAAEmB,qBAAS,CAACE,MAAM;EAAE;EAChCzB,MAAM,EAAEuB,qBAAS,CAACE,MAAM,CAACG,UAAU;EACnCT,MAAM,EAAEI,qBAAS,CAACC,MAAM;EACxBnC,WAAW,EAAEkC,qBAAS,CAACC,MAAM;EAC7BN,EAAE,EAAEK,qBAAS,CAACC,MAAM;EACpBtB,SAAS,EAAEqB,qBAAS,CAACC,MAAM;EAC3BrB,SAAS,EAAEoB,qBAAS,CAACC,MAAM;EAC3BhC,gBAAgB,EAAE+B,qBAAS,CAACG,IAAI;EAChChC,UAAU,EAAE6B,qBAAS,CAACG,IAAI;EAAE;EAC5BpD,WAAW,EAAEiD,qBAAS,CAACG,IAAI;EAC3B7B,KAAK,EAAE0B,qBAAS,CAACO,KAAK;EAAI;EAC1BlC,OAAO,EAAE2B,qBAAS,CAACO,KAAK;EAAE;EAC1B3C,IAAI,EAAEoC,qBAAS,CAACC,MAAM;EAAI;;EAE1BZ,UAAU,EAAEW,qBAAS,CAACI,IAAI,CAAE;EACA;AAChC,CAAC;;AAED;AACA,IAAMI,OAAO,GAAG,IAAAC,kBAAU,EAACxG,MAAM,CAAC,CAACkB,cAAc,CAAC;AAAC,IAAAuF,QAAA,GAAAC,OAAA,cACpCH,OAAO"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimpleCron.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_Button","_DialogTitle","_DialogContent","_DialogActions","_Dialog","_Check","_Cancel","_SimpleCron","_i18n","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","styles","headerID","fontWeight","fontStyle","radio","display","dialogPaper","height","DialogSimpleCron","_React$Component","_inherits2","props","_this","_classCallCheck2","cron","replace","trim","state","_createClass2","key","value","handleCancel","onClose","handleOk","onOk","render","_this2","createElement","maxWidth","fullWidth","classes","paper","open","id","title","I18n","style","overflow","cronExpression","onChange","setState","language","getLanguage","variant","onClick","color","startIcon","ok","cancel","React","Component","propTypes","PropTypes","object","func","isRequired","string","_default","exports","withStyles"],"sources":["SimpleCron.js"],"sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@mui/styles';\r\nimport Button from '@mui/material/Button';\r\nimport DialogTitle from '@mui/material/DialogTitle';\r\nimport DialogContent from '@mui/material/DialogContent';\r\nimport DialogActions from '@mui/material/DialogActions';\r\nimport Dialog from '@mui/material/Dialog';\r\n\r\nimport IconOk from '@mui/icons-material/Check';\r\nimport IconCancel from '@mui/icons-material/Cancel';\r\n\r\nimport SimpleCron from '../Components/SimpleCron';\r\n\r\nimport I18n from '../i18n';\r\n\r\n// Generates cron expression\r\n\r\nconst styles = () => ({\r\n headerID: {\r\n fontWeight: 'bold',\r\n fontStyle: 'italic',\r\n },\r\n radio: {\r\n display: 'inline-block',\r\n },\r\n dialogPaper: {\r\n height: 'calc(100% - 96px)',\r\n },\r\n});\r\n\r\nclass DialogSimpleCron extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n let cron;\r\n if (this.props.cron && typeof this.props.cron === 'string' && this.props.cron.replace(/^[\"']/, '')[0] !== '{') {\r\n cron = this.props.cron.replace(/['\"]/g, '').trim();\r\n } else {\r\n cron = this.props.cron || '{}';\r\n if (typeof cron === 'string') {\r\n cron = cron.replace(/^[\"']/, '').replace(/[\"']\\n?$/, '');\r\n }\r\n }\r\n\r\n this.state = {\r\n cron,\r\n };\r\n }\r\n\r\n handleCancel() {\r\n this.props.onClose();\r\n }\r\n\r\n handleOk() {\r\n this.props.onOk(this.state.cron);\r\n this.props.onClose();\r\n }\r\n\r\n render() {\r\n return <Dialog\r\n onClose={() => {}}\r\n maxWidth=\"md\"\r\n fullWidth\r\n classes={{ paper: this.props.classes.dialogPaper }}\r\n open={!0}\r\n aria-labelledby=\"cron-dialog-title\"\r\n >\r\n <DialogTitle id=\"cron-dialog-title\">{this.props.title || I18n.t('ra_Define CRON...')}</DialogTitle>\r\n <DialogContent style={{ height: '100%', overflow: 'hidden' }}>\r\n <SimpleCron\r\n cronExpression={this.state.cron}\r\n onChange={cron => this.setState({ cron })}\r\n language={I18n.getLanguage()}\r\n />\r\n </DialogContent>\r\n <DialogActions>\r\n <Button variant=\"contained\" onClick={() => this.handleOk()} color=\"primary\" startIcon={<IconOk />}>{this.props.ok || I18n.t('ra_Ok')}</Button>\r\n <Button variant=\"contained\" onClick={() => this.handleCancel()} color=\"grey\" startIcon={<IconCancel />}>{this.props.cancel || I18n.t('ra_Cancel')}</Button>\r\n </DialogActions>\r\n </Dialog>;\r\n }\r\n}\r\n\r\nDialogSimpleCron.propTypes = {\r\n classes: PropTypes.object,\r\n onClose: PropTypes.func.isRequired,\r\n onOk: PropTypes.func.isRequired,\r\n title: PropTypes.string,\r\n cron: PropTypes.string,\r\n cancel: PropTypes.string,\r\n ok: PropTypes.string,\r\n};\r\n\r\nexport default withStyles(styles)(DialogSimpleCron);\r\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextInput.js","names":["_react","_interopRequireDefault","require","_propTypes","_material","_iconsMaterial","_i18n","_withWidth","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","TextInput","_React$Component","_inherits2","props","_this","_classCallCheck2","state","text","input","value","error","_createClass2","key","render","_this2","createElement","Dialog","open","onClose","fullWidth","undefined","DialogTitle","id","titleText","DialogContent","DialogContentText","promptText","TextField","variant","autoFocus","margin","title","label","labelText","type","onKeyPress","charCode","onChange","verify","target","rule","setState","DialogActions","Button","disabled","onClick","color","startIcon","Check","applyText","I18n","Close","cancelText","React","Component","propTypes","PropTypes","bool","func","isRequired","string","_export","withWidth","_default","exports"],"sources":["TextInput.js"],"sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport {\r\n Button,\r\n TextField,\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogContentText,\r\n DialogTitle,\r\n} from '@mui/material';\r\n\r\nimport { Close as IconClose, Check as IconCheck } from '@mui/icons-material';\r\n\r\nimport I18n from '../i18n';\r\n\r\nimport withWidth from '../Components/withWidth';\r\n\r\n/**\r\n * @typedef {object} TextInputProps\r\n * @property {(text: string | null) => void} onClose The dialog close callback.\r\n * @property {string} titleText The title text.\r\n * @property {string} [promptText] Prompt text (default: empty).\r\n * @property {string} [labelText] Label text (default: empty).\r\n * @property {string} cancelText The text of the cancel button.\r\n * @property {string} applyText The text of the apply button.\r\n * @property {(text: string) => string} [verify] The verification callback. Return a non-empty string if there was an error.\r\n * @property {(text: string) => string} [rule] The text replacement callback.\r\n * @property {'text' | 'number' | 'password' | 'email'} [type] The type of the textbox (default: text).\r\n * @property {string} [input] The input when opening the dialog.\r\n *\r\n * @extends {React.Component<TextInputProps>}\r\n */\r\nclass TextInput extends React.Component {\r\n /**\r\n * @param {Readonly<TextInputProps>} props\r\n */\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n text: this.props.input || this.props.value || '', // input is deprecated\r\n error: '',\r\n };\r\n }\r\n\r\n render() {\r\n return <Dialog\r\n open={!0}\r\n onClose={() => this.props.onClose(null)}\r\n aria-labelledby=\"form-dialog-title\"\r\n fullWidth={this.props.fullWidth !== undefined ? this.props.fullWidth : false}\r\n >\r\n <DialogTitle id=\"form-dialog-title\">{this.props.titleText}</DialogTitle>\r\n <DialogContent>\r\n <DialogContentText>\r\n {this.props.promptText}\r\n </DialogContentText>\r\n <TextField\r\n variant=\"standard\"\r\n autoFocus\r\n margin=\"dense\"\r\n error={!!this.state.error}\r\n title={this.state.error}\r\n value={this.state.text}\r\n label={this.props.labelText || ''}\r\n type={this.props.type || 'text'}\r\n onKeyPress={e => e.charCode === 13 && this.state.text && this.props.onClose(this.state.text)}\r\n onChange={e => {\r\n let error = '';\r\n if (this.props.verify) {\r\n error = !this.props.verify(e.target.value);\r\n }\r\n\r\n if (this.props.rule) {\r\n this.setState({ text: this.props.rule(e.target.value), error });\r\n } else {\r\n this.setState({ text: e.target.value, error });\r\n }\r\n }}\r\n fullWidth\r\n />\r\n </DialogContent>\r\n <DialogActions>\r\n <Button\r\n variant=\"contained\"\r\n disabled={!this.state.text || this.state.error}\r\n onClick={() => this.props.onClose(this.state.text)}\r\n color=\"primary\"\r\n startIcon={<IconCheck />}\r\n >\r\n {this.props.applyText || I18n.t('ra_Ok')}\r\n </Button>\r\n <Button\r\n color=\"grey\"\r\n variant=\"contained\"\r\n onClick={() => this.props.onClose(null)}\r\n startIcon={<IconClose />}\r\n >\r\n {this.props.cancelText || I18n.t('ra_Cancel')}\r\n </Button>\r\n </DialogActions>\r\n </Dialog>;\r\n }\r\n}\r\n\r\nTextInput.propTypes = {\r\n fullWidth: PropTypes.bool,\r\n onClose: PropTypes.func.isRequired,\r\n titleText: PropTypes.string.isRequired,\r\n promptText: PropTypes.string,\r\n labelText: PropTypes.string,\r\n cancelText: PropTypes.string,\r\n applyText: PropTypes.string,\r\n verify: PropTypes.func,\r\n type: PropTypes.string, // text, number, password, email\r\n value: PropTypes.string,\r\n};\r\n\r\n/** @type {typeof TextInput} */\r\nconst _export = withWidth()(TextInput);\r\nexport default _export;\r\n"],"mappings":"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"}
package/GenericApp.d.ts CHANGED
@@ -16,8 +16,8 @@ declare global {
16
16
  interface Window {
17
17
  io: any;
18
18
  SocketClient: any;
19
- adapterName: string;
20
- socketUrl: string;
19
+ adapterName: undefined | string;
20
+ socketUrl: undefined | string;
21
21
  oldAlert: any;
22
22
  changed: boolean;
23
23
  $iframeDialog: {
package/GenericApp.js CHANGED
@@ -48,55 +48,55 @@ const Confirm_1 = __importDefault(require("./Dialogs/Confirm"));
48
48
  const i18n_1 = __importDefault(require("./i18n"));
49
49
  const Error_1 = __importDefault(require("./Dialogs/Error"));
50
50
  // import './index.css';
51
- const cssStyle = `
52
- html {
53
- height: 100%;
54
- }
55
-
56
- body {
57
- margin: 0;
58
- padding: 0;
59
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
60
- -webkit-font-smoothing: antialiased;
61
- -moz-osx-font-smoothing: grayscale;
62
- width: 100%;
63
- height: 100%;
64
- overflow: hidden;
65
- }
66
-
67
- /* scrollbar */
68
- ::-webkit-scrollbar-track {
69
- background-color: #ccc;
70
- border-radius: 5px;
71
- }
72
-
73
- ::-webkit-scrollbar {
74
- width: 5px;
75
- height: 5px;
76
- background-color: #ccc;
77
- }
78
-
79
- ::-webkit-scrollbar-thumb {
80
- background-color: #575757;
81
- border-radius: 5px;
82
- }
83
-
84
- #root {
85
- height: 100%;
86
- }
87
-
88
- .App {
89
- height: 100%;
90
- }
91
-
92
- @keyframes glow {
93
- from {
94
- background-color: initial;
95
- }
96
- to {
97
- background-color: #58c458;
98
- }
99
- }
51
+ const cssStyle = `
52
+ html {
53
+ height: 100%;
54
+ }
55
+
56
+ body {
57
+ margin: 0;
58
+ padding: 0;
59
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
60
+ -webkit-font-smoothing: antialiased;
61
+ -moz-osx-font-smoothing: grayscale;
62
+ width: 100%;
63
+ height: 100%;
64
+ overflow: hidden;
65
+ }
66
+
67
+ /* scrollbar */
68
+ ::-webkit-scrollbar-track {
69
+ background-color: #ccc;
70
+ border-radius: 5px;
71
+ }
72
+
73
+ ::-webkit-scrollbar {
74
+ width: 5px;
75
+ height: 5px;
76
+ background-color: #ccc;
77
+ }
78
+
79
+ ::-webkit-scrollbar-thumb {
80
+ background-color: #575757;
81
+ border-radius: 5px;
82
+ }
83
+
84
+ #root {
85
+ height: 100%;
86
+ }
87
+
88
+ .App {
89
+ height: 100%;
90
+ }
91
+
92
+ @keyframes glow {
93
+ from {
94
+ background-color: initial;
95
+ }
96
+ to {
97
+ background-color: #58c458;
98
+ }
99
+ }
100
100
  `;
101
101
  class GenericApp extends Router_1.default {
102
102
  /**
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenericApp.js","names":["_react","_interopRequireDefault","require","_socketClient","_propTypes","Sentry","_interopRequireWildcard","SentryIntegrations","_material","_iconsMaterial","_Prompt","_Theme","_Loader","_Router2","_Utils","_SaveCloseButtons","_Confirm","_i18n","_Error","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof3","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","valueOf","cssStyle","window","localStorage","getItem","setItem","GenericApp","_Router","_inherits2","props","settings","_ref","_settings$instance","_this","_classCallCheck2","ConnectionClass","Connection","document","getElementById","style","createElement","setAttribute","innerHTML","head","appendChild","isWeb","io","location","port","SocketClient","_assertThisInitialized2","id","obj","_obj$common","socket","systemLang","common","language","I18n","setLanguage","_systemConfig","expertMode","setState","getExpertMode","message","data","newThemeName","Utils","getThemeName","setThemeName","newTheme","createTheme","theme","themeName","themeType","getThemeType","onThemeChange","onThemeChanged","onToggleExpertMode","console","debug","concat","JSON","stringify","resizeTimer","clearTimeout","setTimeout","width","getWidth","printPrompt","query","search","replace","args","trim","split","b","parts","instance","undefined","parseInt","slice","tmp","pathname","adapterName","instanceId","newReact","Router","getLocation","tab","_localStorage","themeInstance","state","selectedTab","selectedTabNum","errorText","changed","connected","loaded","isConfigurationError","toast","bottomButtons","confirmClose","_alert","_alertType","_alertMessage","translations","en","de","ru","pt","nl","fr","it","es","pl","uk","lang","assign","setTranslations","savedNative","encryptedFields","sentryDSN","socketUrl","startsWith","protocol","hostname","alerDialogRendered","oldAlert","alert","toString","toLowerCase","includes","error","showAlert","log","name","doNotLoadAllObjects","onProgress","progress","PROGRESS","CONNECTING","READY","onReady","subscribeObject","onSystemConfigChanged","then","getSystemConfig","_secret","secret","getObject","_ref2","_asyncToGenerator2","_regenerator","mark","_callee","instanceObj","_yield$_this$socket$g","waitPromise","sentryPluginEnabled","sentryEnabled","wrap","_callee$","_context","prev","next","getState","t1","sent","t0","t2","val","diag","version","disableDataReporting","host","sentryStarted","init","dsn","release","integrations","Dedupe","sentryInited","uuidObj","uuid","configureScope","scope","setUser","Promise","resolve","onPrepareLoad","encryptedNative","parse","onConnectionReady","warn","stop","_x","onError","err","showError","_createClass2","key","value","type","renderAlertSnackbar","_this2","Snackbar","backgroundColor","open","autoHideDuration","onClose","reason","alertMessage","componentDidMount","addEventListener","onResize","onReceiveMessage","_get2","componentWillUnmount","removeEventListener","currentTheme","palette","mode","toggleTheme","_this3","sessionStorage","encrypt","result","String","fromCharCode","charCodeAt","decrypt","onHashChanged","selectTab","index","onPrepareSave","_this4","attr","_this5","getExtendableInstances","_this6","_socket","emit","doc","rows","item","webExtendable","map","getIpAddresses","_this7","ip","_host","IPs4","address","family","IPs6","hardware","networkInterfaces","eth","inter","_ip","onSave","isClose","_this8","oldObj","_oldObj","setObject","reject","Error","globalThis","parent","postMessage","renderToast","_this9","anchorOrigin","vertical","horizontal","ContentProps","action","IconButton","color","className","classes","close","onClick","size","Close","renderError","_this10","text","getIsChanged","native","isChanged","onLoadConfig","newNative","setConfigurationError","renderSaveCloseButtons","_this11","Fragment","noTextOnButtons","title","ok","cancel","isYes","_updateNativeValue","attrs","_typeof2","shift","updateNativeValue","cb","showToast","renderHelperDialogs","render","SIZES","xs","sm","md","lg","xl","innerWidth","reverse","widthComputed","find","$iframeDialog","propTypes","PropTypes","string","func","object","array","bool","_default","exports"],"sources":["GenericApp.js"],"sourcesContent":["/**\r\n * Copyright 2018-2023 Denis Haev (bluefox) <dogafox@gmail.com>\r\n *\r\n * MIT License\r\n *\r\n **/\r\nimport React from 'react';\r\nimport { Connection, PROGRESS } from '@iobroker/socket-client';\r\nimport PropTypes from 'prop-types';\r\nimport * as Sentry from '@sentry/browser';\r\nimport * as SentryIntegrations from '@sentry/integrations';\r\n\r\nimport { Snackbar, IconButton } from '@mui/material';\r\n\r\nimport { Close as IconClose } from '@mui/icons-material';\r\n\r\nimport printPrompt from './Prompt';\r\nimport theme from './Theme';\r\nimport Loader from './Components/Loader';\r\nimport Router from './Components/Router';\r\nimport Utils from './Components/Utils';\r\nimport SaveCloseButtons from './Components/SaveCloseButtons';\r\nimport ConfirmDialog from './Dialogs/Confirm';\r\nimport I18n from './i18n';\r\nimport DialogError from './Dialogs/Error';\r\n\r\n// import './index.css';\r\nconst cssStyle = `\r\nhtml {\r\n height: 100%;\r\n}\r\n\r\nbody {\r\n margin: 0;\r\n padding: 0;\r\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Roboto\", \"Oxygen\", \"Ubuntu\", \"Cantarell\", \"Fira Sans\", \"Droid Sans\", \"Helvetica Neue\", sans-serif;\r\n -webkit-font-smoothing: antialiased;\r\n -moz-osx-font-smoothing: grayscale;\r\n width: 100%;\r\n height: 100%;\r\n overflow: hidden;\r\n}\r\n\r\n/* scrollbar */\r\n::-webkit-scrollbar-track {\r\n background-color: #ccc;\r\n border-radius: 5px;\r\n}\r\n\r\n::-webkit-scrollbar {\r\n width: 5px;\r\n height: 5px;\r\n background-color: #ccc;\r\n}\r\n\r\n::-webkit-scrollbar-thumb {\r\n background-color: #575757;\r\n border-radius: 5px;\r\n}\r\n\r\n#root {\r\n height: 100%;\r\n}\r\n\r\n.App {\r\n height: 100%;\r\n}\r\n\r\n@keyframes glow {\r\n from {\r\n background-color: initial;\r\n }\r\n to {\r\n background-color: #58c458;\r\n }\r\n}\r\n`;\r\n\r\n// legacy and could be deleted\r\nif (!window.localStorage) {\r\n window.localStorage = {\r\n getItem: () => null,\r\n setItem: () => null,\r\n };\r\n}\r\n\r\n/**\r\n * @extends {Router<import('./types').GenericAppProps, import('./types').GenericAppState>}\r\n */\r\nclass GenericApp extends Router {\r\n /**\r\n * @type {import('@iobroker/socket-client').Connection | import('@iobroker/socket-client').AdminConnection}\r\n */\r\n socket;\r\n\r\n /**\r\n * @param {import('./types').GenericAppProps} props\r\n * @param {import('./types').GenericAppSettings | undefined} settings\r\n */\r\n constructor(props, settings) {\r\n const ConnectionClass = props.Connection || settings.Connection || Connection;\r\n // const ConnectionClass = props.Connection === 'admin' || settings.Connection = 'admin' ? AdminConnection : (props.Connection || settings.Connection || Connection);\r\n\r\n if (!window.document.getElementById('generic-app-iobroker-component')) {\r\n const style = window.document.createElement('style');\r\n style.setAttribute('id', 'generic-app-iobroker-component');\r\n style.innerHTML = cssStyle;\r\n window.document.head.appendChild(style);\r\n }\r\n\r\n // Remove `!Connection.isWeb() && window.adapterName !== 'material'` when iobroker.socket will support native ws\r\n if (!ConnectionClass.isWeb() && window.io && window.location.port === '3000') {\r\n try {\r\n const io = new window.SocketClient();\r\n delete window.io;\r\n window.io = io;\r\n } catch (e) {\r\n // ignore\r\n }\r\n }\r\n\r\n super(props);\r\n\r\n printPrompt();\r\n\r\n const query = (window.location.search || '').replace(/^\\?/, '').replace(/#.*$/, '');\r\n const args = {};\r\n query.trim().split('&').filter(t => t.trim()).forEach(b => {\r\n const parts = b.split('=');\r\n args[parts[0]] = parts.length === 2 ? parts[1] : true;\r\n if (args[parts[0]] === 'true') {\r\n args[parts[0]] = true;\r\n } else if (args[parts[0]] === 'false') {\r\n args[parts[0]] = false;\r\n }\r\n });\r\n\r\n // extract instance from URL\r\n this.instance = settings?.instance ?? props.instance ?? (args.instance !== undefined ? parseInt(args.instance, 10) || 0 : (parseInt(window.location.search.slice(1), 10) || 0));\r\n // extract adapter name from URL\r\n const tmp = window.location.pathname.split('/');\r\n this.adapterName = settings?.adapterName || props.adapterName || window.adapterName || tmp[tmp.length - 2] || 'iot';\r\n this.instanceId = `system.adapter.${this.adapterName}.${this.instance}`;\r\n this.newReact = args.newReact === true; // it is admin5\r\n\r\n const location = Router.getLocation();\r\n location.tab = location.tab || (window._localStorage || window.localStorage).getItem(`${this.adapterName}-adapter`) || '';\r\n\r\n const themeInstance = this.createTheme();\r\n\r\n this.state = {\r\n selectedTab: (window._localStorage || window.localStorage).getItem(`${this.adapterName}-adapter`) || '',\r\n selectedTabNum: -1,\r\n native: {},\r\n errorText: '',\r\n changed: false,\r\n connected: false,\r\n loaded: false,\r\n isConfigurationError: '',\r\n expertMode: false,\r\n toast: '',\r\n theme: themeInstance,\r\n themeName: this.getThemeName(themeInstance),\r\n themeType: this.getThemeType(themeInstance),\r\n bottomButtons: (settings && settings.bottomButtons) === false ? false : (props?.bottomButtons !== false),\r\n width: GenericApp.getWidth(),\r\n confirmClose: false,\r\n _alert: false,\r\n _alertType: 'info',\r\n _alertMessage: '',\r\n };\r\n\r\n // init translations\r\n const translations = {\r\n en: require('./i18n/en.json'),\r\n de: require('./i18n/de.json'),\r\n ru: require('./i18n/ru.json'),\r\n pt: require('./i18n/pt.json'),\r\n nl: require('./i18n/nl.json'),\r\n fr: require('./i18n/fr.json'),\r\n it: require('./i18n/it.json'),\r\n es: require('./i18n/es.json'),\r\n pl: require('./i18n/pl.json'),\r\n uk: require('./i18n/uk.json'),\r\n 'zh-cn': require('./i18n/zh-cn.json'),\r\n };\r\n\r\n // merge together\r\n if (settings && settings.translations) {\r\n Object.keys(settings.translations).forEach(lang => translations[lang] = Object.assign(translations[lang], settings.translations[lang]));\r\n } else if (props.translations) {\r\n Object.keys(props.translations).forEach(lang => translations[lang] = Object.assign(translations[lang], props.translations[lang]));\r\n }\r\n\r\n I18n.setTranslations(translations);\r\n\r\n this.savedNative = {}; // to detect if the config changed\r\n\r\n this.encryptedFields = props.encryptedFields || settings?.encryptedFields || [];\r\n\r\n this.sentryDSN = (settings && settings.sentryDSN) || props.sentryDSN;\r\n\r\n if (window.socketUrl) {\r\n if (window.socketUrl.startsWith(':')) {\r\n window.socketUrl = `${window.location.protocol}//${window.location.hostname}${window.socketUrl}`;\r\n } else if (!window.socketUrl.startsWith('http://') && !window.socketUrl.startsWith('https://')) {\r\n window.socketUrl = `${window.location.protocol}//${window.socketUrl}`;\r\n }\r\n }\r\n\r\n this.alerDialogRendered = false;\r\n\r\n window.oldAlert = window.alert;\r\n window.alert = message => {\r\n if (!this.alerDialogRendered) {\r\n window.oldAlert(message);\r\n return;\r\n }\r\n if (message && message.toString().toLowerCase().includes('error')) {\r\n console.error(message);\r\n this.showAlert(message.toString(), 'error');\r\n } else {\r\n console.log(message);\r\n this.showAlert(message.toString(), 'info');\r\n }\r\n };\r\n\r\n this.socket = new ConnectionClass({\r\n ...(props?.socket || settings?.socket),\r\n name: this.adapterName,\r\n doNotLoadAllObjects: settings?.doNotLoadAllObjects,\r\n onProgress: progress => {\r\n if (progress === PROGRESS.CONNECTING) {\r\n this.setState({ connected: false });\r\n } else if (progress === PROGRESS.READY) {\r\n this.setState({ connected: true });\r\n } else {\r\n this.setState({ connected: true });\r\n }\r\n },\r\n onReady: (/* objects, scripts */) => {\r\n I18n.setLanguage(this.socket.systemLang);\r\n\r\n // subscribe because of language and expert mode\r\n this.socket.subscribeObject('system.config', this.onSystemConfigChanged)\r\n .then(() => this.getSystemConfig())\r\n .then(obj => {\r\n this._secret = (typeof obj !== 'undefined' && obj.native && obj.native.secret) || 'Zgfr56gFe87jJOM';\r\n this._systemConfig = obj?.common || {};\r\n return this.socket.getObject(this.instanceId);\r\n })\r\n .then(async (instanceObj) => {\r\n let waitPromise;\r\n\r\n const sentryPluginEnabled = (await this.socket.getState(`${this.instanceId}.plugins.sentry.enabled`))?.val\r\n\r\n const sentryEnabled =\r\n sentryPluginEnabled !== false &&\r\n this._systemConfig.diag !== 'none' &&\r\n instanceObj?.common &&\r\n instanceObj.common.name &&\r\n instanceObj.common.version &&\r\n !instanceObj.common.disableDataReporting &&\r\n window.location.host !== 'localhost:3000';\r\n\r\n // activate sentry plugin\r\n if (!this.sentryStarted && this.sentryDSN && sentryEnabled) {\r\n this.sentryStarted = true;\r\n\r\n Sentry.init({\r\n dsn: this.sentryDSN,\r\n release: `iobroker.${instanceObj.common.name}@${instanceObj.common.version}`,\r\n integrations: [\r\n new SentryIntegrations.Dedupe(),\r\n ],\r\n });\r\n\r\n console.log('Sentry initialized')\r\n }\r\n\r\n // read UUID and init sentry with it.\r\n // for backward compatibility it will be processed separately from above logic: some adapters could still have this.sentryDSN as undefined\r\n if (!this.sentryInited && sentryEnabled) {\r\n this.sentryInited = true;\r\n\r\n waitPromise = this.socket.getObject('system.meta.uuid')\r\n .then(uuidObj => {\r\n if (uuidObj && uuidObj.native && uuidObj.native.uuid) {\r\n Sentry.configureScope(scope =>\r\n scope.setUser({ id: uuidObj.native.uuid }));\r\n }\r\n });\r\n }\r\n\r\n waitPromise = waitPromise || Promise.resolve();\r\n\r\n waitPromise\r\n .then(() => {\r\n if (instanceObj) {\r\n this.common = instanceObj?.common;\r\n this.onPrepareLoad(instanceObj.native, instanceObj.encryptedNative); // decode all secrets\r\n this.savedNative = JSON.parse(JSON.stringify(instanceObj.native));\r\n this.setState({ native: instanceObj.native, loaded: true, expertMode: this.getExpertMode() }, () =>\r\n this.onConnectionReady && this.onConnectionReady());\r\n } else {\r\n console.warn('Cannot load instance settings');\r\n this.setState(\r\n {\r\n native: {},\r\n loaded: true,\r\n expertMode: this.getExpertMode(),\r\n },\r\n () => this.onConnectionReady && this.onConnectionReady(),\r\n );\r\n }\r\n });\r\n })\r\n .catch(e => window.alert(`Cannot settings: ${e}`));\r\n },\r\n onError: err => {\r\n console.error(err);\r\n this.showError(err);\r\n },\r\n });\r\n }\r\n\r\n showAlert(message, type) {\r\n if (type !== 'error' && type !== 'warning' && type !== 'info' && type !== 'success') {\r\n type = 'info';\r\n }\r\n\r\n this.setState({\r\n _alert: true,\r\n _alertType: type,\r\n _alertMessage: message,\r\n });\r\n }\r\n\r\n renderAlertSnackbar() {\r\n this.alerDialogRendered = true;\r\n\r\n return <Snackbar\r\n style={this.state._alertType === 'error' ?\r\n { backgroundColor: '#f44336' } :\r\n (this.state._alertType === 'success' ? { backgroundColor: '#4caf50' } : undefined)}\r\n open={this.state._alert}\r\n autoHideDuration={6000}\r\n onClose={reason => reason !== 'clickaway' && this.setState({ _alert: false })}\r\n message={this.state.alertMessage}\r\n />;\r\n }\r\n\r\n onSystemConfigChanged = (id, obj) => {\r\n if (obj && id === 'system.config') {\r\n if (this.socket.systemLang !== obj?.common.language) {\r\n this.socket.systemLang = obj?.common.language || 'en';\r\n I18n.setLanguage(this.socket.systemLang);\r\n }\r\n\r\n if (this._systemConfig.expertMode !== !!obj?.common?.expertMode) {\r\n this._systemConfig = obj?.common || {};\r\n this.setState({ expertMode: this.getExpertMode() });\r\n } else {\r\n this._systemConfig = obj?.common || {};\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * Called immediately after a component is mounted. Setting state here will trigger re-rendering.\r\n */\r\n componentDidMount() {\r\n window.addEventListener('resize', this.onResize, true);\r\n window.addEventListener('message', this.onReceiveMessage, false);\r\n super.componentDidMount();\r\n }\r\n\r\n /**\r\n * Called immediately before a component is destroyed.\r\n */\r\n componentWillUnmount() {\r\n window.removeEventListener('resize', this.onResize, true);\r\n window.removeEventListener('message', this.onReceiveMessage, false);\r\n super.componentWillUnmount();\r\n }\r\n\r\n onReceiveMessage = message => {\r\n if (message?.data) {\r\n if (message.data === 'updateTheme') {\r\n const newThemeName = Utils.getThemeName();\r\n Utils.setThemeName(Utils.getThemeName());\r\n\r\n const newTheme = this.createTheme(newThemeName);\r\n\r\n this.setState({\r\n theme: newTheme,\r\n themeName: this.getThemeName(newTheme),\r\n themeType: this.getThemeType(newTheme),\r\n }, () => {\r\n this.props.onThemeChange && this.props.onThemeChange(newThemeName);\r\n this.onThemeChanged && this.onThemeChanged(newThemeName);\r\n });\r\n } else if (message.data === 'updateExpertMode') {\r\n this.onToggleExpertMode && this.onToggleExpertMode(this.getExpertMode());\r\n } else if (message.data !== 'chartReady') { // if not \"echart ready\" message\r\n console.debug(`Received unknown message: \"${JSON.stringify(message.data)}\". May be it will be processed later`);\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * @private\r\n */\r\n onResize = () => {\r\n this.resizeTimer && clearTimeout(this.resizeTimer);\r\n this.resizeTimer = setTimeout(() => {\r\n this.resizeTimer = null;\r\n this.setState({ width: GenericApp.getWidth() });\r\n }, 200);\r\n };\r\n\r\n /**\r\n * Gets the width depending on the window inner width.\r\n * @returns {import('./types').Width}\r\n */\r\n static getWidth() {\r\n /**\r\n * innerWidth |xs sm md lg xl\r\n * |-------|-------|-------|-------|------>\r\n * width | xs | sm | md | lg | xl\r\n */\r\n\r\n const SIZES = {\r\n xs: 0,\r\n sm: 600,\r\n md: 960,\r\n lg: 1280,\r\n xl: 1920,\r\n };\r\n const width = window.innerWidth;\r\n const keys = Object.keys(SIZES).reverse();\r\n const widthComputed = keys.find(key => width >= SIZES[key]);\r\n\r\n return widthComputed || 'xs';\r\n }\r\n\r\n /**\r\n * Get a theme\r\n * @param {string} name Theme name\r\n * @returns {import('./types').Theme}\r\n */\r\n createTheme(name = '') {\r\n return theme(Utils.getThemeName(name));\r\n }\r\n\r\n /**\r\n * Get the theme name\r\n * @param {import('./types').Theme} currentTheme Theme\r\n * @returns {string} Theme name\r\n */\r\n getThemeName(currentTheme) {\r\n return currentTheme.name;\r\n }\r\n\r\n /**\r\n * Get the theme type\r\n * @param {import('./types').Theme} currentTheme Theme\r\n * @returns {string} Theme type\r\n */\r\n getThemeType(currentTheme) {\r\n return currentTheme.palette.mode;\r\n }\r\n\r\n /**\r\n * Changes the current theme\r\n * @param {string} newThemeName Theme name\r\n **/\r\n toggleTheme(newThemeName) {\r\n const themeName = this.state.themeName;\r\n\r\n // dark => blue => colored => light => dark\r\n newThemeName = newThemeName || (themeName === 'dark' ? 'blue' :\r\n (themeName === 'blue' ? 'colored' :\r\n (themeName === 'colored' ? 'light' : 'dark')));\r\n\r\n if (newThemeName !== themeName) {\r\n Utils.setThemeName(newThemeName);\r\n\r\n const newTheme = this.createTheme(newThemeName);\r\n\r\n this.setState({\r\n theme: newTheme,\r\n themeName: this.getThemeName(newTheme),\r\n themeType: this.getThemeType(newTheme),\r\n }, () => {\r\n this.props.onThemeChange && this.props.onThemeChange(newThemeName);\r\n this.onThemeChanged && this.onThemeChanged(newThemeName);\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Gets the system configuration.\r\n * @returns {Promise<ioBroker.OtherObject>}\r\n */\r\n getSystemConfig() {\r\n return this.socket.getSystemConfig();\r\n }\r\n\r\n /**\r\n * Get current expert mode\r\n * @returns {boolean}\r\n */\r\n getExpertMode() {\r\n return window.sessionStorage.getItem('App.expertMode') === 'true' || !!this._systemConfig.expertMode;\r\n }\r\n\r\n /**\r\n * Gets called when the socket.io connection is ready.\r\n * You can overload this function to execute own commands.\r\n */\r\n onConnectionReady() {\r\n }\r\n\r\n /**\r\n * Encrypts a string.\r\n * @param {string} value\r\n * @returns {string}\r\n */\r\n encrypt(value) {\r\n let result = '';\r\n for (let i = 0; i < value.length; i++) {\r\n result += String.fromCharCode(this._secret[i % this._secret.length].charCodeAt(0) ^ value.charCodeAt(i));\r\n }\r\n return result;\r\n }\r\n\r\n /**\r\n * Decrypts a string.\r\n * @param {string} value\r\n * @returns {string}\r\n */\r\n decrypt(value) {\r\n let result = '';\r\n for (let i = 0; i < value.length; i++) {\r\n result += String.fromCharCode(this._secret[i % this._secret.length].charCodeAt(0) ^ value.charCodeAt(i));\r\n }\r\n return result;\r\n }\r\n\r\n /**\r\n * Gets called when the navigation hash changes.\r\n * You may override this if needed.\r\n */\r\n onHashChanged() {\r\n const location = Router.getLocation();\r\n if (location.tab !== this.state.selectedTab) {\r\n this.selectTab(location.tab);\r\n }\r\n }\r\n\r\n /**\r\n * Selects the given tab.\r\n * @param {string} tab\r\n * @param {number} [index]\r\n */\r\n selectTab(tab, index) {\r\n (window._localStorage || window.localStorage).setItem(`${this.adapterName}-adapter`, tab);\r\n this.setState({ selectedTab: tab, selectedTabNum: index });\r\n }\r\n\r\n /**\r\n * Gets called before the settings are saved.\r\n * You may override this if needed.\r\n * @param {Record<string, any>} settings\r\n */\r\n onPrepareSave(settings) {\r\n // here you can encode values\r\n this.encryptedFields && this.encryptedFields.forEach(attr => {\r\n if (settings[attr]) {\r\n settings[attr] = this.encrypt(settings[attr]);\r\n }\r\n });\r\n\r\n return true;\r\n }\r\n\r\n /**\r\n * Gets called after the settings are loaded.\r\n * You may override this if needed.\r\n * @param {Record<string, any>} settings\r\n * @param {string[]} encryptedNative optional list of fields to be decrypted\r\n */\r\n onPrepareLoad(settings, encryptedNative) {\r\n // here you can encode values\r\n this.encryptedFields && this.encryptedFields.forEach(attr => {\r\n if (settings[attr]) {\r\n settings[attr] = this.decrypt(settings[attr]);\r\n }\r\n });\r\n encryptedNative && encryptedNative.forEach(attr => {\r\n this.encryptedFields = this.encryptedFields || [];\r\n !this.encryptedFields.includes(attr) && this.encryptedFields.push(attr);\r\n if (settings[attr]) {\r\n settings[attr] = this.decrypt(settings[attr]);\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Gets the extendable instances.\r\n * @returns {Promise<any[]>}\r\n */\r\n getExtendableInstances() {\r\n return new Promise(resolve => {\r\n this.socket._socket.emit('getObjectView', 'system', 'instance', null, (err, doc) => {\r\n if (err) {\r\n resolve([]);\r\n } else {\r\n resolve(doc.rows\r\n .filter(item => item.value.common.webExtendable)\r\n .map(item => item.value));\r\n }\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * Gets the IP addresses of the given host.\r\n * @param {string} host\r\n */\r\n getIpAddresses(host) {\r\n return new Promise(resolve => {\r\n this.socket._socket.emit('getHostByIp', host || this.common.host, (ip, _host) => {\r\n const IPs4 = [{ name: `[IPv4] 0.0.0.0 - ${I18n.t('ra_Listen on all IPs')}`, address: '0.0.0.0', family: 'ipv4' }];\r\n const IPs6 = [{ name: '[IPv6] ::', address: '::', family: 'ipv6' }];\r\n if (_host) {\r\n host = _host;\r\n if (host.native.hardware && host.native.hardware.networkInterfaces) {\r\n Object.keys(host.native.hardware.networkInterfaces).forEach(eth =>\r\n host.native.hardware.networkInterfaces[eth].forEach(inter => {\r\n if (inter.family !== 'IPv6') {\r\n IPs4.push({ name: `[${inter.family}] ${inter.address} - ${eth}`, address: inter.address, family: 'ipv4' });\r\n } else {\r\n IPs6.push({ name: `[${inter.family}] ${inter.address} - ${eth}`, address: inter.address, family: 'ipv6' });\r\n }\r\n }));\r\n }\r\n IPs6.forEach(_ip => IPs4.push(_ip));\r\n }\r\n resolve(IPs4);\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * Saves the settings to the server.\r\n * @param {boolean} isClose True if the user is closing the dialog.\r\n */\r\n onSave(isClose) {\r\n let oldObj;\r\n if (this.state.isConfigurationError) {\r\n this.setState({ errorText: this.state.isConfigurationError });\r\n return;\r\n }\r\n\r\n this.socket.getObject(this.instanceId)\r\n .then(_oldObj => {\r\n oldObj = _oldObj || {};\r\n\r\n for (const a in this.state.native) {\r\n if (Object.prototype.hasOwnProperty.call(this.state.native, a)) {\r\n if (this.state.native[a] === null) {\r\n oldObj.native[a] = null;\r\n } else if (this.state.native[a] !== undefined) {\r\n oldObj.native[a] = JSON.parse(JSON.stringify(this.state.native[a]));\r\n } else {\r\n delete oldObj.native[a];\r\n }\r\n }\r\n }\r\n\r\n if (this.state.common) {\r\n for (const b in this.state.common) {\r\n if (this.state.common[b] === null) {\r\n oldObj.common[b] = null;\r\n } else if (this.state.common[b] !== undefined) {\r\n oldObj.common[b] = JSON.parse(JSON.stringify(this.state.common[b]));\r\n } else {\r\n delete oldObj.common[b];\r\n }\r\n }\r\n }\r\n\r\n if (this.onPrepareSave(oldObj.native) !== false) {\r\n return this.socket.setObject(this.instanceId, oldObj);\r\n }\r\n\r\n return Promise.reject(new Error('Invalid configuration'));\r\n })\r\n .then(() => {\r\n this.savedNative = oldObj.native;\r\n globalThis.changed = false;\r\n try {\r\n window.parent.postMessage('nochange', '*');\r\n } catch (e) {\r\n // ignore\r\n }\r\n\r\n this.setState({ changed: false });\r\n isClose && GenericApp.onClose();\r\n })\r\n .catch(e => console.error(`Cannot save configuration: ${e}`));\r\n }\r\n\r\n /**\r\n * Renders the toast.\r\n * @returns {JSX.Element | null} The JSX element.\r\n */\r\n renderToast() {\r\n if (!this.state.toast) {\r\n return null;\r\n }\r\n\r\n return <Snackbar\r\n anchorOrigin={{\r\n vertical: 'bottom',\r\n horizontal: 'left',\r\n }}\r\n open={!0}\r\n autoHideDuration={6000}\r\n onClose={() => this.setState({ toast: '' })}\r\n ContentProps={{ 'aria-describedby': 'message-id' }}\r\n message={<span id=\"message-id\">{this.state.toast}</span>}\r\n action={[\r\n <IconButton\r\n key=\"close\"\r\n aria-label=\"Close\"\r\n color=\"inherit\"\r\n className={this.props.classes.close}\r\n onClick={() => this.setState({ toast: '' })}\r\n size=\"large\"\r\n >\r\n <IconClose />\r\n </IconButton>,\r\n ]}\r\n />;\r\n }\r\n\r\n /**\r\n * Closes the dialog.\r\n * @private\r\n */\r\n static onClose() {\r\n if (typeof window.parent !== 'undefined' && window.parent) {\r\n try {\r\n if (window.parent.$iframeDialog && typeof window.parent.$iframeDialog.close === 'function') {\r\n window.parent.$iframeDialog.close();\r\n } else {\r\n window.parent.postMessage('close', '*');\r\n }\r\n } catch (e) {\r\n window.parent.postMessage('close', '*');\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Renders the error dialog.\r\n * @returns {JSX.Element | null} The JSX element.\r\n */\r\n renderError() {\r\n if (!this.state.errorText) {\r\n return null;\r\n }\r\n\r\n return <DialogError text={this.state.errorText} onClose={() => this.setState({ errorText: '' })} />;\r\n }\r\n\r\n /**\r\n * Checks if the configuration has changed.\r\n * @param {Record<string, any>} [native] the new state\r\n */\r\n getIsChanged(native) {\r\n native = native || this.state.native;\r\n const isChanged = JSON.stringify(native) !== JSON.stringify(this.savedNative);\r\n\r\n globalThis.changed = isChanged;\r\n\r\n return isChanged;\r\n }\r\n\r\n /**\r\n * Gets called when loading the configuration.\r\n * @param {Record<string, any>} newNative The new configuration object.\r\n */\r\n onLoadConfig(newNative) {\r\n if (JSON.stringify(newNative) !== JSON.stringify(this.state.native)) {\r\n this.setState({ native: newNative, changed: this.getIsChanged(newNative) });\r\n }\r\n }\r\n\r\n /**\r\n * Sets the configuration error.\r\n * @param {string} errorText\r\n */\r\n setConfigurationError(errorText) {\r\n if (this.state.isConfigurationError !== errorText) {\r\n this.setState({ isConfigurationError: errorText });\r\n }\r\n }\r\n\r\n /**\r\n * Renders the save and close buttons.\r\n * @returns {JSX.Element | undefined} The JSX element.\r\n */\r\n renderSaveCloseButtons() {\r\n if (!this.state.confirmClose && !this.state.bottomButtons) {\r\n return null;\r\n }\r\n\r\n return <>\r\n {this.state.bottomButtons ? <SaveCloseButtons\r\n theme={this.state.theme}\r\n newReact={this.newReact}\r\n noTextOnButtons={this.state.width === 'xs' || this.state.width === 'sm' || this.state.width === 'md'}\r\n changed={this.state.changed}\r\n onSave={isClose => this.onSave(isClose)}\r\n onClose={() => {\r\n if (this.state.changed) {\r\n this.setState({ confirmClose: true });\r\n } else {\r\n GenericApp.onClose();\r\n }\r\n }}\r\n /> : null}\r\n {this.state.confirmClose ? <ConfirmDialog\r\n title={I18n.t('ra_Please confirm')}\r\n text={I18n.t('ra_Some data are not stored. Discard?')}\r\n ok={I18n.t('ra_Discard')}\r\n cancel={I18n.t('ra_Cancel')}\r\n onClose={isYes =>\r\n this.setState({ confirmClose: false }, () =>\r\n isYes && GenericApp.onClose())}\r\n /> : null}\r\n </>;\r\n }\r\n\r\n /**\r\n * @private\r\n * @param {Record<string, any>} obj\r\n * @param {any} attrs\r\n * @param {any} value\r\n * @returns {boolean | undefined}\r\n */\r\n _updateNativeValue(obj, attrs, value) {\r\n if (typeof attrs !== 'object') {\r\n attrs = attrs.split('.');\r\n }\r\n const attr = attrs.shift();\r\n if (!attrs.length) {\r\n if (value && typeof value === 'object') {\r\n if (JSON.stringify(obj[attr]) !== JSON.stringify(value)) {\r\n obj[attr] = value;\r\n return true;\r\n }\r\n return false;\r\n }\r\n if (obj[attr] !== value) {\r\n obj[attr] = value;\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n obj[attr] = obj[attr] || {};\r\n if (typeof obj[attr] !== 'object') {\r\n throw new Error(`attribute ${attr} is no object, but ${typeof obj[attr]}`);\r\n }\r\n return this._updateNativeValue(obj[attr], attrs, value);\r\n }\r\n\r\n /**\r\n * Update the native value\r\n * @param {string} attr The attribute name with dots as delimiter.\r\n * @param {any} value The new value.\r\n * @param {(() => void)} [cb] Callback which will be called upon completion.\r\n */\r\n updateNativeValue(attr, value, cb) {\r\n const native = JSON.parse(JSON.stringify(this.state.native));\r\n if (this._updateNativeValue(native, attr, value)) {\r\n const changed = this.getIsChanged(native);\r\n\r\n if (changed !== this.state.changed) {\r\n try {\r\n window.parent.postMessage(changed ? 'change' : 'nochange', '*');\r\n } catch (e) {\r\n // ignore\r\n }\r\n }\r\n\r\n this.setState({ native, changed }, cb);\r\n }\r\n }\r\n\r\n /**\r\n * Set the error text to be shown.\r\n * @param {string | JSX.Element} text\r\n */\r\n showError(text) {\r\n this.setState({ errorText: text });\r\n }\r\n\r\n /**\r\n * Sets the toast to be shown.\r\n * @param {string} toast\r\n */\r\n showToast(toast) {\r\n this.setState({ toast });\r\n }\r\n\r\n /**\r\n * Renders helper dialogs\r\n * @returns {JSX.Element} The JSX element.\r\n */\r\n renderHelperDialogs() {\r\n return <>\r\n {this.renderError()}\r\n {this.renderToast()}\r\n {this.renderSaveCloseButtons()}\r\n {this.renderAlertSnackbar()}\r\n </>;\r\n }\r\n\r\n /**\r\n * Renders this component.\r\n * @returns {JSX.Element} The JSX element.\r\n */\r\n render() {\r\n if (!this.state.loaded) {\r\n return <Loader theme={this.state.themeType} />;\r\n }\r\n\r\n return <div className=\"App\">\r\n {this.renderError()}\r\n {this.renderToast()}\r\n {this.renderSaveCloseButtons()}\r\n {this.renderAlertSnackbar()}\r\n </div>;\r\n }\r\n}\r\n\r\nGenericApp.propTypes = {\r\n adapterName: PropTypes.string, // (optional) name of adapter\r\n onThemeChange: PropTypes.func, // (optional) called by theme change\r\n socket: PropTypes.object, // (optional) socket information (host, port)\r\n encryptedFields: PropTypes.array, // (optional) list of native attributes that must be encrypted\r\n bottomButtons: PropTypes.bool, // If the bottom buttons (Save/Close) must be shown\r\n Connection: PropTypes.object, // If the bottom buttons (Save/Close) must be shown\r\n};\r\n\r\nexport default GenericApp;\r\n"],"mappings":"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"}