@kvaser/canking-api 7.2.1 → 7.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (884) hide show
  1. package/dist/controls/CanChannelSelectControl.d.ts +4 -4
  2. package/dist/controls/CanIdentifierControl.d.ts +105 -55
  3. package/dist/controls/CanKingDataProvider.d.ts +27 -3
  4. package/dist/controls/CheckboxControl.d.ts +13 -4
  5. package/dist/controls/ColorControl.d.ts +26 -0
  6. package/dist/controls/ColumnItemControl.d.ts +1 -1
  7. package/dist/controls/ContextMenu.d.ts +2 -2
  8. package/dist/controls/DropdownButton.d.ts +3 -3
  9. package/dist/controls/DropdownPanel.d.ts +1 -1
  10. package/dist/controls/ExtensionWorkspaceViewProps.d.ts +8 -0
  11. package/dist/controls/FormControlRow.d.ts +1 -1
  12. package/dist/controls/InlineEditor.d.ts +4 -4
  13. package/dist/controls/LinChannelSelectControl.d.ts +3 -3
  14. package/dist/controls/LinIdentifierControl.d.ts +96 -53
  15. package/dist/controls/LocalizedStrings.d.ts +1 -0
  16. package/dist/controls/NumberRangeControl.d.ts +11 -11
  17. package/dist/controls/RadioControl.d.ts +1 -1
  18. package/dist/controls/RadioGroupControl.d.ts +2 -2
  19. package/dist/controls/SectionControl.d.ts +2 -2
  20. package/dist/controls/SelectControl.d.ts +2 -2
  21. package/dist/controls/SelectMessageDialog.d.ts +32 -3
  22. package/dist/controls/SelectSignalDialog.d.ts +103 -1
  23. package/dist/controls/SelectSignalsControl.d.ts +44 -0
  24. package/dist/controls/SizedBox.d.ts +1 -0
  25. package/dist/controls/TableControl.d.ts +3 -4
  26. package/dist/controls/TextControl.d.ts +16 -6
  27. package/dist/controls/ToolbarControl.d.ts +6 -4
  28. package/dist/controls/ValidateableTextControl.d.ts +6 -6
  29. package/dist/controls/index.d.ts +5 -2
  30. package/dist/controls.js +1 -1
  31. package/dist/controls.mjs +2581 -1936
  32. package/dist/grpc.js +1 -1
  33. package/dist/grpc.mjs +220 -178
  34. package/dist/hooks/index.d.ts +414 -17
  35. package/dist/hooks.js +1 -1
  36. package/dist/hooks.mjs +48 -24
  37. package/dist/icons/index.d.ts +39 -0
  38. package/dist/icons.js +1 -1
  39. package/dist/icons.mjs +947 -750
  40. package/dist/index.d.ts +0 -2
  41. package/dist/index.js +1 -1
  42. package/dist/index.mjs +1182 -437
  43. package/dist/ipc/index.d.ts +31 -3
  44. package/dist/ipc.js +1 -1
  45. package/dist/ipc.mjs +132 -104
  46. package/dist/models/DataBuffer.d.ts +18 -15
  47. package/dist/models/ElectronAPIFake.d.ts +2 -1
  48. package/dist/models/Point.d.ts +4 -0
  49. package/dist/models/deep_equal.d.ts +7 -0
  50. package/dist/models/index.d.ts +85 -12
  51. package/dist/models/json_utilities.d.ts +16 -0
  52. package/dist/models.js +1 -1
  53. package/dist/models.mjs +776 -297
  54. package/dist/protos/app_params.d.ts +109 -49
  55. package/dist/protos/app_service.d.ts +81 -50
  56. package/dist/protos/common_params.d.ts +4 -1
  57. package/dist/protos/device_params.d.ts +82 -27
  58. package/dist/protos/frame_params.d.ts +103 -4
  59. package/dist/protos/measurement_params.d.ts +244 -46
  60. package/dist/protos/measurement_service.d.ts +119 -65
  61. package/dist/protos/measurement_settings.d.ts +157 -6
  62. package/dist/protos/signal_params.d.ts +20 -0
  63. package/dist/protos/status_params.d.ts +30 -0
  64. package/dist/status_params.js +1 -1
  65. package/dist/status_params.mjs +8891 -1850
  66. package/doc/assets/hierarchy.js +1 -1
  67. package/doc/assets/main.js +5 -5
  68. package/doc/assets/navigation.js +1 -1
  69. package/doc/assets/search.js +1 -1
  70. package/doc/assets/style.css +254 -231
  71. package/doc/enums/models.AccessMode.html +11 -9
  72. package/doc/enums/models.CanChannelCap.html +44 -44
  73. package/doc/enums/models.CanConfigMode.html +16 -0
  74. package/doc/enums/models.CanFrameFlag.html +58 -27
  75. package/doc/enums/models.CanMessageFilterType.html +8 -6
  76. package/doc/enums/models.CanMode.html +12 -7
  77. package/doc/enums/models.DecimalChar.html +8 -5
  78. package/doc/enums/models.FileConflictAction.html +10 -7
  79. package/doc/enums/models.LinFrameFlag.html +21 -12
  80. package/doc/enums/models.LogFileFormat.html +48 -46
  81. package/doc/enums/models.LogLevel.html +17 -17
  82. package/doc/enums/models.LogReplayState.html +8 -6
  83. package/doc/enums/models.LoggerState.html +10 -7
  84. package/doc/enums/models.Separator.html +8 -5
  85. package/doc/enums/models.SignalEncoding.html +7 -5
  86. package/doc/enums/models.SignalType.html +12 -12
  87. package/doc/enums/models.SignalValueTriggerOperator.html +22 -13
  88. package/doc/enums/models.StatusLevel.html +10 -7
  89. package/doc/enums/models.TimeReference.html +8 -5
  90. package/doc/enums/models.TriggerOperator.html +8 -6
  91. package/doc/functions/controls.CanChannelSelectControl.html +2 -2
  92. package/doc/functions/controls.CanIdentifierControl.html +2 -2
  93. package/doc/functions/controls.CanIdentifierFrameControl.html +2 -2
  94. package/doc/functions/controls.CanIdentifierGeneratorControl.html +2 -2
  95. package/doc/functions/controls.CanIdentifierGeneratorSettingsControl.html +2 -2
  96. package/doc/functions/controls.CanKingDataProvider.html +5 -5
  97. package/doc/functions/controls.CheckboxControl.html +2 -2
  98. package/doc/functions/controls.ColorControl.html +4 -0
  99. package/doc/functions/controls.ColumnItemControl.html +2 -2
  100. package/doc/functions/controls.ContextMenu.html +2 -2
  101. package/doc/functions/controls.DropdownButton.html +2 -2
  102. package/doc/functions/controls.DropdownButtonTextItems.html +2 -2
  103. package/doc/functions/controls.DropdownPanel.html +2 -2
  104. package/doc/functions/controls.FormControlRow.html +2 -2
  105. package/doc/functions/controls.InlineEditor.html +2 -2
  106. package/doc/functions/controls.LinChannelSelectControl.html +2 -2
  107. package/doc/functions/controls.LinIdentifierControl.html +2 -2
  108. package/doc/functions/controls.LinIdentifierFrameControl.html +2 -2
  109. package/doc/functions/controls.LinIdentifierGeneratorControl.html +2 -2
  110. package/doc/functions/controls.LinIdentifierGeneratorSettingsControl.html +2 -2
  111. package/doc/functions/controls.NumberRangeControl.html +2 -2
  112. package/doc/functions/controls.RadioControl.html +2 -2
  113. package/doc/functions/controls.RadioGroupControl.html +2 -2
  114. package/doc/functions/controls.SectionControl.html +2 -2
  115. package/doc/functions/controls.SelectControl.html +2 -2
  116. package/doc/functions/controls.SelectMessageDialog.html +2 -2
  117. package/doc/functions/controls.SelectSignalDialog.html +2 -2
  118. package/doc/functions/controls.SelectSignalsControl.html +2 -0
  119. package/doc/functions/controls.TableControl.html +3 -3
  120. package/doc/functions/controls.TextControl.html +2 -2
  121. package/doc/functions/controls.ToolbarControl.html +2 -2
  122. package/doc/functions/controls.ValidateableTextControl.html +2 -2
  123. package/doc/functions/controls.useColumnItem.html +3 -3
  124. package/doc/functions/controls.useColumnItems.html +3 -3
  125. package/doc/functions/controls.useMessageDatabases.html +2 -2
  126. package/doc/functions/hooks.useAvailableProtocols.html +3 -0
  127. package/doc/functions/hooks.useDevices.html +3 -3
  128. package/doc/functions/hooks.useFixedPositionModeMeasurementData.html +4 -0
  129. package/doc/functions/hooks.useIsOnline.html +3 -3
  130. package/doc/functions/hooks.useLanguage.html +3 -3
  131. package/doc/functions/hooks.useLocalizedStrings.html +3 -3
  132. package/doc/functions/hooks.useLogMessages.html +3 -3
  133. package/doc/functions/hooks.useMaxDataBytes.html +2 -2
  134. package/doc/functions/hooks.useMeasurementSetup.html +3 -3
  135. package/doc/functions/hooks.useMeasurementStatus.html +3 -3
  136. package/doc/functions/hooks.useMessageData.html +8 -0
  137. package/doc/functions/hooks.useMessageLogFileFormats.html +4 -3
  138. package/doc/functions/hooks.useNewMeasurementData.html +4 -3
  139. package/doc/functions/hooks.useNodeStatus.html +3 -3
  140. package/doc/functions/hooks.useNumericRadix.html +3 -3
  141. package/doc/functions/hooks.useOnlineStatus.html +3 -3
  142. package/doc/functions/hooks.useOnlineStatusSync.html +7 -0
  143. package/doc/functions/hooks.useOverallStatusLevel.html +3 -3
  144. package/doc/functions/hooks.useProjectData.html +12 -5
  145. package/doc/functions/hooks.useProjectDataSlice.html +13 -0
  146. package/doc/functions/hooks.useRecentProjectFiles.html +2 -2
  147. package/doc/functions/hooks.useRunningPeriodicTransmissions.html +3 -3
  148. package/doc/functions/hooks.useScrollModeMeasurementData.html +4 -0
  149. package/doc/functions/hooks.useSessionData.html +14 -5
  150. package/doc/functions/hooks.useSessionDataSlice.html +14 -0
  151. package/doc/functions/hooks.useSignalData.html +8 -0
  152. package/doc/functions/hooks.useSignalDataEnvelopes.html +11 -0
  153. package/doc/functions/hooks.useSignalLogFileFormats.html +3 -2
  154. package/doc/functions/hooks.useUndo.html +7 -0
  155. package/doc/functions/hooks.useUndoRef.html +7 -0
  156. package/doc/functions/hooks.useUndoSessionDataSlice.html +9 -0
  157. package/doc/functions/hooks.useUserSettings.html +3 -3
  158. package/doc/functions/hooks.useWorkspacePaneWithId.html +2 -2
  159. package/doc/functions/ipc.addDataProcessor.html +3 -3
  160. package/doc/functions/ipc.addSource.html +3 -3
  161. package/doc/functions/ipc.addTarget.html +3 -3
  162. package/doc/functions/ipc.clearLinMessage.html +3 -3
  163. package/doc/functions/ipc.connectNodes.html +3 -3
  164. package/doc/functions/ipc.deleteDataProcessor.html +3 -3
  165. package/doc/functions/ipc.deleteSource.html +3 -3
  166. package/doc/functions/ipc.deleteTarget.html +3 -3
  167. package/doc/functions/ipc.disableNode.html +3 -3
  168. package/doc/functions/ipc.disconnectNodes.html +3 -3
  169. package/doc/functions/ipc.enableNode.html +3 -3
  170. package/doc/functions/ipc.getFirstAndLatestTimestamp.html +4 -0
  171. package/doc/functions/ipc.getFirstTimestamp.html +3 -0
  172. package/doc/functions/ipc.getFrameDefinitions.html +3 -3
  173. package/doc/functions/ipc.getLatestTimestamp.html +3 -0
  174. package/doc/functions/ipc.getLogger.html +3 -3
  175. package/doc/functions/ipc.getMessageDataBeforeTimestamp.html +7 -0
  176. package/doc/functions/ipc.getMessageLogFileFormats.html +3 -3
  177. package/doc/functions/ipc.getSignalLogFileFormats.html +3 -3
  178. package/doc/functions/ipc.requestLinMessage.html +3 -3
  179. package/doc/functions/ipc.sendCanMessage.html +3 -3
  180. package/doc/functions/ipc.sendMessage.html +3 -3
  181. package/doc/functions/ipc.showMessageBox.html +3 -3
  182. package/doc/functions/ipc.showQuestionBox.html +3 -3
  183. package/doc/functions/ipc.startLogReplay.html +3 -3
  184. package/doc/functions/ipc.startMeasurement.html +2 -2
  185. package/doc/functions/ipc.startPeriodicTransmission.html +3 -3
  186. package/doc/functions/ipc.stopLogReplay.html +3 -3
  187. package/doc/functions/ipc.stopMeasurement.html +2 -2
  188. package/doc/functions/ipc.stopPeriodicTransmission.html +3 -3
  189. package/doc/functions/ipc.updateDataProcessor.html +3 -3
  190. package/doc/functions/ipc.updateLinMessage.html +3 -3
  191. package/doc/functions/ipc.updatePeriodicTransmission.html +3 -3
  192. package/doc/functions/ipc.updateSource.html +3 -3
  193. package/doc/functions/ipc.updateTarget.html +3 -3
  194. package/doc/functions/models.decimalToFixed.html +5 -1
  195. package/doc/functions/models.decimalToHex.html +6 -1
  196. package/doc/functions/models.deep_equal.html +5 -0
  197. package/doc/functions/models.deserializeFrame.html +4 -0
  198. package/doc/functions/models.jsonReplacer.html +6 -0
  199. package/doc/functions/models.jsonReviver.html +6 -0
  200. package/doc/functions/models.longToNumber.html +4 -1
  201. package/doc/functions/models.serializeFrame.html +4 -0
  202. package/doc/hierarchy.html +1 -1
  203. package/doc/index.html +6 -6
  204. package/doc/interfaces/controls.ButtonGroupProps.html +10 -10
  205. package/doc/interfaces/controls.ButtonProps.html +22 -22
  206. package/doc/interfaces/controls.CanChannelSelectControlProps.html +20 -20
  207. package/doc/interfaces/controls.CanIdentifierControlProps.html +54 -37
  208. package/doc/interfaces/controls.CanIdentifierFrameControlProps.html +34 -33
  209. package/doc/interfaces/controls.CanIdentifierGeneratorControlProps.html +42 -33
  210. package/doc/interfaces/controls.CanIdentifierGeneratorSettingsControlProps.html +34 -25
  211. package/doc/interfaces/controls.CheckboxControlProps.html +22 -17
  212. package/doc/interfaces/controls.ContextMenuProps.html +9 -9
  213. package/doc/interfaces/controls.DropdownButtonChildrenProps.html +4 -4
  214. package/doc/interfaces/controls.DropdownButtonProps.html +20 -20
  215. package/doc/interfaces/controls.DropdownButtonTextItemsProps.html +9 -9
  216. package/doc/interfaces/controls.DropdownPanelProps.html +20 -20
  217. package/doc/interfaces/controls.FormControlRowProps.html +8 -8
  218. package/doc/interfaces/controls.IExtensionWorkspaceViewProps.html +2 -0
  219. package/doc/interfaces/controls.ILocalizedStrings.html +2 -3
  220. package/doc/interfaces/controls.IMessageDatabase.html +2 -4
  221. package/doc/interfaces/controls.InlineEditorProps.html +13 -13
  222. package/doc/interfaces/controls.LabelProps.html +6 -6
  223. package/doc/interfaces/controls.LinChannelSelectControlProps.html +20 -20
  224. package/doc/interfaces/controls.LinIdentifierControlProps.html +45 -35
  225. package/doc/interfaces/controls.LinIdentifierFrameControlProps.html +34 -33
  226. package/doc/interfaces/controls.LinIdentifierGeneratorControlProps.html +40 -31
  227. package/doc/interfaces/controls.LinIdentifierGeneratorSettingsControlProps.html +34 -25
  228. package/doc/interfaces/controls.NumberRangeControlProps.html +38 -38
  229. package/doc/interfaces/controls.RadioControlProps.html +14 -14
  230. package/doc/interfaces/controls.RadioGroupControlProps.html +9 -9
  231. package/doc/interfaces/controls.SectionControlProps.html +17 -17
  232. package/doc/interfaces/controls.SelectControlProps.html +31 -31
  233. package/doc/interfaces/controls.SelectMessageDialogProps.html +19 -8
  234. package/doc/interfaces/controls.SelectSignalDialogProps.html +71 -12
  235. package/doc/interfaces/controls.SelectSignalsControlProps.html +22 -0
  236. package/doc/interfaces/controls.SelectedSignalInfo.html +6 -0
  237. package/doc/interfaces/controls.SelectedSignalInfoChangeArgs.html +9 -0
  238. package/doc/interfaces/controls.TableColumn.html +12 -12
  239. package/doc/interfaces/controls.TableControlProps.html +30 -30
  240. package/doc/interfaces/controls.TextControlProps.html +41 -41
  241. package/doc/interfaces/controls.ToggleButtonGroupProps.html +17 -17
  242. package/doc/interfaces/controls.ToggleButtonProps.html +14 -14
  243. package/doc/interfaces/controls.ToolbarControlProps.html +18 -18
  244. package/doc/interfaces/controls.ValidateableTextControlProps.html +54 -54
  245. package/doc/interfaces/controls.toolbarItem.html +14 -12
  246. package/doc/interfaces/hooks.IEnvelopeView.html +12 -0
  247. package/doc/interfaces/hooks.ISignalData.html +19 -0
  248. package/doc/interfaces/hooks.ISignalDataEnvelope.html +14 -0
  249. package/doc/interfaces/hooks.IUndoObject.html +27 -0
  250. package/doc/interfaces/hooks.IUndoState.html +9 -0
  251. package/doc/interfaces/ipc.ILogger.html +2 -8
  252. package/doc/interfaces/models.BaseNodeProperties.html +14 -8
  253. package/doc/interfaces/models.BusStatus.html +32 -17
  254. package/doc/interfaces/models.CanBusParamLimits.html +12 -7
  255. package/doc/interfaces/models.CanBusParams.html +14 -8
  256. package/doc/interfaces/models.CanChannelCapacity.html +10 -7
  257. package/doc/interfaces/models.CanChannelConfiguration.html +46 -16
  258. package/doc/interfaces/models.CanFrameFlags.html +4 -3
  259. package/doc/interfaces/models.CanMessageFilterSettings.html +8 -5
  260. package/doc/interfaces/models.Channel.html +12 -7
  261. package/doc/interfaces/models.ChannelSettings.html +22 -20
  262. package/doc/interfaces/models.DataProcessingStatus.html +10 -6
  263. package/doc/interfaces/models.DataProcessorNodeProperties.html +14 -8
  264. package/doc/interfaces/models.DatabasesSettings.html +4 -3
  265. package/doc/interfaces/models.Device.html +16 -9
  266. package/doc/interfaces/models.Devices.html +4 -2
  267. package/doc/interfaces/models.Empty.html +2 -2
  268. package/doc/interfaces/models.ErrorStatus.html +4 -4
  269. package/doc/interfaces/models.FixedPosFrameIdentifier.html +14 -0
  270. package/doc/interfaces/models.Frame.html +41 -30
  271. package/doc/interfaces/models.FrameDefinition.html +16 -14
  272. package/doc/interfaces/models.FrameDefinitions.html +4 -2
  273. package/doc/interfaces/models.FramePropertyValue.html +6 -4
  274. package/doc/interfaces/models.FrameReceivedTrigger.html +8 -6
  275. package/doc/interfaces/models.Frames.html +4 -2
  276. package/doc/interfaces/models.IUserSettings.html +2 -17
  277. package/doc/interfaces/models.IWorkspaceComponentPaneData.html +2 -4
  278. package/doc/interfaces/models.IWorkspaceContainerPaneData.html +2 -5
  279. package/doc/interfaces/models.IWorkspacePaneData.html +2 -5
  280. package/doc/interfaces/models.InterpreterSettings.html +4 -4
  281. package/doc/interfaces/models.J1939InterpreterSettings.html +2 -2
  282. package/doc/interfaces/models.LinChannelConfiguration.html +14 -14
  283. package/doc/interfaces/models.LinFrameFlags.html +4 -3
  284. package/doc/interfaces/models.LogMessage.html +12 -12
  285. package/doc/interfaces/models.LogMessages.html +4 -4
  286. package/doc/interfaces/models.LogReplaySettings.html +26 -26
  287. package/doc/interfaces/models.LogReplayStatus.html +4 -3
  288. package/doc/interfaces/models.LoggerStatus.html +4 -3
  289. package/doc/interfaces/models.MeasurementSetup.html +10 -6
  290. package/doc/interfaces/models.MessageLoggerSettings.html +44 -44
  291. package/doc/interfaces/models.NodeStatus.html +18 -18
  292. package/doc/interfaces/models.NodeStatuses.html +4 -3
  293. package/doc/interfaces/models.OnlineStatus.html +6 -3
  294. package/doc/interfaces/models.PeriodicTransmissionSettings.html +36 -36
  295. package/doc/interfaces/models.ServiceExtensionSettings.html +6 -4
  296. package/doc/interfaces/models.SignalDefinition.html +34 -18
  297. package/doc/interfaces/models.SignalDefinitions.html +4 -2
  298. package/doc/interfaces/models.SignalFilterSettings.html +6 -4
  299. package/doc/interfaces/models.SignalLoggerSettings.html +56 -56
  300. package/doc/interfaces/models.SignalValue.html +12 -7
  301. package/doc/interfaces/models.SignalValueTrigger.html +18 -16
  302. package/doc/interfaces/models.SourceNodeProperties.html +12 -7
  303. package/doc/interfaces/models.TargetNodeProperties.html +12 -6
  304. package/doc/interfaces/models.TdcConfiguration.html +17 -0
  305. package/doc/interfaces/models.TriggerSettings.html +8 -8
  306. package/doc/interfaces/models.WriteFrame.html +10 -10
  307. package/doc/modules/controls.html +3 -3
  308. package/doc/modules/hooks.html +3 -3
  309. package/doc/modules/ipc.html +2 -2
  310. package/doc/modules/models.html +2 -2
  311. package/doc/modules.html +1 -1
  312. package/doc/types/controls.ContextMenuOption.html +10 -6
  313. package/doc/types/controls.SelectOption.html +6 -4
  314. package/doc/types/controls.StringsMap.html +2 -2
  315. package/doc/types/controls.canIdentifierGeneratorType.html +2 -2
  316. package/doc/types/controls.canIdentifierType.html +2 -2
  317. package/doc/types/controls.linIdentifierGeneratorType.html +2 -2
  318. package/doc/types/hooks.OnGoingOfflineCallback.html +6 -0
  319. package/doc/types/hooks.OnGoingOnlineCallback.html +6 -0
  320. package/doc/types/models.SerializableFrame.html +2 -0
  321. package/doc/variables/controls.FillBox.html +3 -0
  322. package/doc/variables/controls.OneLineButton.html +2 -0
  323. package/doc/variables/controls.SizedBox.html +3 -0
  324. package/doc/variables/controls.TabsPanel.html +2 -0
  325. package/doc/variables/models.defaultUserSettings.html +2 -2
  326. package/doc_md/README.md +189 -0
  327. package/doc_md/assets/favicon.png +0 -0
  328. package/doc_md/controls/README.md +162 -0
  329. package/doc_md/controls/functions/CanChannelSelectControl.md +25 -0
  330. package/doc_md/controls/functions/CanIdentifierControl.md +25 -0
  331. package/doc_md/controls/functions/CanIdentifierFrameControl.md +25 -0
  332. package/doc_md/controls/functions/CanIdentifierGeneratorControl.md +25 -0
  333. package/doc_md/controls/functions/CanIdentifierGeneratorSettingsControl.md +26 -0
  334. package/doc_md/controls/functions/CanKingDataProvider.md +47 -0
  335. package/doc_md/controls/functions/CheckboxControl.md +25 -0
  336. package/doc_md/controls/functions/ColorControl.md +25 -0
  337. package/doc_md/controls/functions/ColumnItemControl.md +21 -0
  338. package/doc_md/controls/functions/ContextMenu.md +25 -0
  339. package/doc_md/controls/functions/DropdownButton.md +25 -0
  340. package/doc_md/controls/functions/DropdownButtonTextItems.md +25 -0
  341. package/doc_md/controls/functions/DropdownPanel.md +25 -0
  342. package/doc_md/controls/functions/FormControlRow.md +25 -0
  343. package/doc_md/controls/functions/InlineEditor.md +25 -0
  344. package/doc_md/controls/functions/LinChannelSelectControl.md +25 -0
  345. package/doc_md/controls/functions/LinIdentifierControl.md +25 -0
  346. package/doc_md/controls/functions/LinIdentifierFrameControl.md +25 -0
  347. package/doc_md/controls/functions/LinIdentifierGeneratorControl.md +25 -0
  348. package/doc_md/controls/functions/LinIdentifierGeneratorSettingsControl.md +26 -0
  349. package/doc_md/controls/functions/NumberRangeControl.md +25 -0
  350. package/doc_md/controls/functions/RadioControl.md +25 -0
  351. package/doc_md/controls/functions/RadioGroupControl.md +25 -0
  352. package/doc_md/controls/functions/SectionControl.md +25 -0
  353. package/doc_md/controls/functions/SelectControl.md +25 -0
  354. package/doc_md/controls/functions/SelectMessageDialog.md +21 -0
  355. package/doc_md/controls/functions/SelectSignalDialog.md +21 -0
  356. package/doc_md/controls/functions/SelectSignalsControl.md +21 -0
  357. package/doc_md/controls/functions/TableControl.md +31 -0
  358. package/doc_md/controls/functions/TextControl.md +25 -0
  359. package/doc_md/controls/functions/ToolbarControl.md +25 -0
  360. package/doc_md/controls/functions/ValidateableTextControl.md +25 -0
  361. package/doc_md/controls/functions/useColumnItem.md +17 -0
  362. package/doc_md/controls/functions/useColumnItems.md +25 -0
  363. package/doc_md/controls/functions/useMessageDatabases.md +21 -0
  364. package/doc_md/controls/interfaces/ButtonGroupProps.md +41 -0
  365. package/doc_md/controls/interfaces/ButtonProps.md +93 -0
  366. package/doc_md/controls/interfaces/CanChannelSelectControlProps.md +103 -0
  367. package/doc_md/controls/interfaces/CanIdentifierControlProps.md +251 -0
  368. package/doc_md/controls/interfaces/CanIdentifierFrameControlProps.md +152 -0
  369. package/doc_md/controls/interfaces/CanIdentifierGeneratorControlProps.md +219 -0
  370. package/doc_md/controls/interfaces/CanIdentifierGeneratorSettingsControlProps.md +162 -0
  371. package/doc_md/controls/interfaces/CheckboxControlProps.md +94 -0
  372. package/doc_md/controls/interfaces/ContextMenuProps.md +45 -0
  373. package/doc_md/controls/interfaces/DropdownButtonChildrenProps.md +25 -0
  374. package/doc_md/controls/interfaces/DropdownButtonProps.md +81 -0
  375. package/doc_md/controls/interfaces/DropdownButtonTextItemsProps.md +70 -0
  376. package/doc_md/controls/interfaces/DropdownPanelProps.md +81 -0
  377. package/doc_md/controls/interfaces/FormControlRowProps.md +33 -0
  378. package/doc_md/controls/interfaces/IExtensionWorkspaceViewProps.md +9 -0
  379. package/doc_md/controls/interfaces/ILocalizedStrings.md +9 -0
  380. package/doc_md/controls/interfaces/IMessageDatabase.md +9 -0
  381. package/doc_md/controls/interfaces/InlineEditorProps.md +61 -0
  382. package/doc_md/controls/interfaces/LabelProps.md +25 -0
  383. package/doc_md/controls/interfaces/LinChannelSelectControlProps.md +97 -0
  384. package/doc_md/controls/interfaces/LinIdentifierControlProps.md +203 -0
  385. package/doc_md/controls/interfaces/LinIdentifierFrameControlProps.md +152 -0
  386. package/doc_md/controls/interfaces/LinIdentifierGeneratorControlProps.md +207 -0
  387. package/doc_md/controls/interfaces/LinIdentifierGeneratorSettingsControlProps.md +162 -0
  388. package/doc_md/controls/interfaces/NumberRangeControlProps.md +253 -0
  389. package/doc_md/controls/interfaces/RadioControlProps.md +57 -0
  390. package/doc_md/controls/interfaces/RadioGroupControlProps.md +45 -0
  391. package/doc_md/controls/interfaces/SectionControlProps.md +77 -0
  392. package/doc_md/controls/interfaces/SelectControlProps.md +134 -0
  393. package/doc_md/controls/interfaces/SelectMessageDialogProps.md +86 -0
  394. package/doc_md/controls/interfaces/SelectSignalDialogProps.md +232 -0
  395. package/doc_md/controls/interfaces/SelectSignalsControlProps.md +119 -0
  396. package/doc_md/controls/interfaces/SelectedSignalInfo.md +29 -0
  397. package/doc_md/controls/interfaces/SelectedSignalInfoChangeArgs.md +46 -0
  398. package/doc_md/controls/interfaces/TableColumn.md +65 -0
  399. package/doc_md/controls/interfaces/TableControlProps.md +157 -0
  400. package/doc_md/controls/interfaces/TextControlProps.md +177 -0
  401. package/doc_md/controls/interfaces/ToggleButtonGroupProps.md +77 -0
  402. package/doc_md/controls/interfaces/ToggleButtonProps.md +57 -0
  403. package/doc_md/controls/interfaces/ToolbarControlProps.md +73 -0
  404. package/doc_md/controls/interfaces/ValidateableTextControlProps.md +269 -0
  405. package/doc_md/controls/interfaces/toolbarItem.md +57 -0
  406. package/doc_md/controls/type-aliases/ContextMenuOption.md +43 -0
  407. package/doc_md/controls/type-aliases/SelectOption.md +27 -0
  408. package/doc_md/controls/type-aliases/StringsMap.md +15 -0
  409. package/doc_md/controls/type-aliases/canIdentifierGeneratorType.md +11 -0
  410. package/doc_md/controls/type-aliases/canIdentifierType.md +11 -0
  411. package/doc_md/controls/type-aliases/linIdentifierGeneratorType.md +11 -0
  412. package/doc_md/controls/variables/FillBox.md +12 -0
  413. package/doc_md/controls/variables/OneLineButton.md +11 -0
  414. package/doc_md/controls/variables/SizedBox.md +12 -0
  415. package/doc_md/controls/variables/TabsPanel.md +11 -0
  416. package/doc_md/hooks/README.md +70 -0
  417. package/doc_md/hooks/functions/useAvailableProtocols.md +17 -0
  418. package/doc_md/hooks/functions/useDevices.md +17 -0
  419. package/doc_md/hooks/functions/useFixedPositionModeMeasurementData.md +25 -0
  420. package/doc_md/hooks/functions/useIsOnline.md +17 -0
  421. package/doc_md/hooks/functions/useLanguage.md +17 -0
  422. package/doc_md/hooks/functions/useLocalizedStrings.md +17 -0
  423. package/doc_md/hooks/functions/useLogMessages.md +17 -0
  424. package/doc_md/hooks/functions/useMaxDataBytes.md +15 -0
  425. package/doc_md/hooks/functions/useMeasurementSetup.md +17 -0
  426. package/doc_md/hooks/functions/useMeasurementStatus.md +17 -0
  427. package/doc_md/hooks/functions/useMessageData.md +42 -0
  428. package/doc_md/hooks/functions/useMessageLogFileFormats.md +25 -0
  429. package/doc_md/hooks/functions/useNewMeasurementData.md +35 -0
  430. package/doc_md/hooks/functions/useNodeStatus.md +23 -0
  431. package/doc_md/hooks/functions/useNumericRadix.md +17 -0
  432. package/doc_md/hooks/functions/useOnlineStatus.md +17 -0
  433. package/doc_md/hooks/functions/useOnlineStatusSync.md +43 -0
  434. package/doc_md/hooks/functions/useOverallStatusLevel.md +17 -0
  435. package/doc_md/hooks/functions/useProjectData.md +59 -0
  436. package/doc_md/hooks/functions/useProjectDataSlice.md +58 -0
  437. package/doc_md/hooks/functions/useRecentProjectFiles.md +15 -0
  438. package/doc_md/hooks/functions/useRunningPeriodicTransmissions.md +17 -0
  439. package/doc_md/hooks/functions/useScrollModeMeasurementData.md +25 -0
  440. package/doc_md/hooks/functions/useSessionData.md +67 -0
  441. package/doc_md/hooks/functions/useSessionDataSlice.md +60 -0
  442. package/doc_md/hooks/functions/useSignalData.md +42 -0
  443. package/doc_md/hooks/functions/useSignalDataEnvelopes.md +50 -0
  444. package/doc_md/hooks/functions/useSignalLogFileFormats.md +17 -0
  445. package/doc_md/hooks/functions/useUndo.md +38 -0
  446. package/doc_md/hooks/functions/useUndoRef.md +38 -0
  447. package/doc_md/hooks/functions/useUndoSessionDataSlice.md +50 -0
  448. package/doc_md/hooks/functions/useUserSettings.md +17 -0
  449. package/doc_md/hooks/functions/useWorkspacePaneWithId.md +21 -0
  450. package/doc_md/hooks/interfaces/IEnvelopeView.md +49 -0
  451. package/doc_md/hooks/interfaces/ISignalData.md +77 -0
  452. package/doc_md/hooks/interfaces/ISignalDataEnvelope.md +51 -0
  453. package/doc_md/hooks/interfaces/IUndoObject.md +155 -0
  454. package/doc_md/hooks/interfaces/IUndoState.md +41 -0
  455. package/doc_md/hooks/type-aliases/OnGoingOfflineCallback.md +36 -0
  456. package/doc_md/hooks/type-aliases/OnGoingOnlineCallback.md +36 -0
  457. package/doc_md/ipc/README.md +51 -0
  458. package/doc_md/ipc/functions/addDataProcessor.md +35 -0
  459. package/doc_md/ipc/functions/addSource.md +23 -0
  460. package/doc_md/ipc/functions/addTarget.md +23 -0
  461. package/doc_md/ipc/functions/clearLinMessage.md +29 -0
  462. package/doc_md/ipc/functions/connectNodes.md +29 -0
  463. package/doc_md/ipc/functions/deleteDataProcessor.md +23 -0
  464. package/doc_md/ipc/functions/deleteSource.md +23 -0
  465. package/doc_md/ipc/functions/deleteTarget.md +23 -0
  466. package/doc_md/ipc/functions/disableNode.md +23 -0
  467. package/doc_md/ipc/functions/disconnectNodes.md +29 -0
  468. package/doc_md/ipc/functions/enableNode.md +23 -0
  469. package/doc_md/ipc/functions/getFirstAndLatestTimestamp.md +18 -0
  470. package/doc_md/ipc/functions/getFirstTimestamp.md +17 -0
  471. package/doc_md/ipc/functions/getFrameDefinitions.md +26 -0
  472. package/doc_md/ipc/functions/getLatestTimestamp.md +17 -0
  473. package/doc_md/ipc/functions/getLogger.md +25 -0
  474. package/doc_md/ipc/functions/getMessageDataBeforeTimestamp.md +38 -0
  475. package/doc_md/ipc/functions/getMessageLogFileFormats.md +17 -0
  476. package/doc_md/ipc/functions/getSignalLogFileFormats.md +17 -0
  477. package/doc_md/ipc/functions/requestLinMessage.md +30 -0
  478. package/doc_md/ipc/functions/sendCanMessage.md +41 -0
  479. package/doc_md/ipc/functions/sendMessage.md +29 -0
  480. package/doc_md/ipc/functions/showMessageBox.md +29 -0
  481. package/doc_md/ipc/functions/showQuestionBox.md +51 -0
  482. package/doc_md/ipc/functions/startLogReplay.md +23 -0
  483. package/doc_md/ipc/functions/startMeasurement.md +15 -0
  484. package/doc_md/ipc/functions/startPeriodicTransmission.md +25 -0
  485. package/doc_md/ipc/functions/stopLogReplay.md +23 -0
  486. package/doc_md/ipc/functions/stopMeasurement.md +15 -0
  487. package/doc_md/ipc/functions/stopPeriodicTransmission.md +23 -0
  488. package/doc_md/ipc/functions/updateDataProcessor.md +23 -0
  489. package/doc_md/ipc/functions/updateLinMessage.md +29 -0
  490. package/doc_md/ipc/functions/updatePeriodicTransmission.md +29 -0
  491. package/doc_md/ipc/functions/updateSource.md +23 -0
  492. package/doc_md/ipc/functions/updateTarget.md +23 -0
  493. package/doc_md/ipc/interfaces/ILogger.md +9 -0
  494. package/doc_md/models/README.md +109 -0
  495. package/doc_md/models/enumerations/AccessMode.md +52 -0
  496. package/doc_md/models/enumerations/CanChannelCap.md +181 -0
  497. package/doc_md/models/enumerations/CanConfigMode.md +69 -0
  498. package/doc_md/models/enumerations/CanFrameFlag.md +226 -0
  499. package/doc_md/models/enumerations/CanMessageFilterType.md +37 -0
  500. package/doc_md/models/enumerations/CanMode.md +53 -0
  501. package/doc_md/models/enumerations/DecimalChar.md +37 -0
  502. package/doc_md/models/enumerations/FileConflictAction.md +45 -0
  503. package/doc_md/models/enumerations/LinFrameFlag.md +87 -0
  504. package/doc_md/models/enumerations/LogFileFormat.md +199 -0
  505. package/doc_md/models/enumerations/LogLevel.md +76 -0
  506. package/doc_md/models/enumerations/LogReplayState.md +37 -0
  507. package/doc_md/models/enumerations/LoggerState.md +45 -0
  508. package/doc_md/models/enumerations/Separator.md +37 -0
  509. package/doc_md/models/enumerations/SignalEncoding.md +31 -0
  510. package/doc_md/models/enumerations/SignalType.md +53 -0
  511. package/doc_md/models/enumerations/SignalValueTriggerOperator.md +93 -0
  512. package/doc_md/models/enumerations/StatusLevel.md +45 -0
  513. package/doc_md/models/enumerations/TimeReference.md +37 -0
  514. package/doc_md/models/enumerations/TriggerOperator.md +37 -0
  515. package/doc_md/models/functions/decimalToFixed.md +31 -0
  516. package/doc_md/models/functions/decimalToHex.md +37 -0
  517. package/doc_md/models/functions/deep_equal.md +37 -0
  518. package/doc_md/models/functions/deserializeFrame.md +25 -0
  519. package/doc_md/models/functions/jsonReplacer.md +32 -0
  520. package/doc_md/models/functions/jsonReviver.md +32 -0
  521. package/doc_md/models/functions/longToNumber.md +25 -0
  522. package/doc_md/models/functions/serializeFrame.md +25 -0
  523. package/doc_md/models/interfaces/BaseNodeProperties.md +57 -0
  524. package/doc_md/models/interfaces/BusStatus.md +129 -0
  525. package/doc_md/models/interfaces/CanBusParamLimits.md +49 -0
  526. package/doc_md/models/interfaces/CanBusParams.md +78 -0
  527. package/doc_md/models/interfaces/CanChannelCapacity.md +41 -0
  528. package/doc_md/models/interfaces/CanChannelConfiguration.md +164 -0
  529. package/doc_md/models/interfaces/CanFrameFlags.md +18 -0
  530. package/doc_md/models/interfaces/CanMessageFilterSettings.md +33 -0
  531. package/doc_md/models/interfaces/Channel.md +49 -0
  532. package/doc_md/models/interfaces/ChannelSettings.md +89 -0
  533. package/doc_md/models/interfaces/DataProcessingStatus.md +41 -0
  534. package/doc_md/models/interfaces/DataProcessorNodeProperties.md +57 -0
  535. package/doc_md/models/interfaces/DatabasesSettings.md +17 -0
  536. package/doc_md/models/interfaces/Device.md +65 -0
  537. package/doc_md/models/interfaces/Devices.md +17 -0
  538. package/doc_md/models/interfaces/Empty.md +17 -0
  539. package/doc_md/models/interfaces/ErrorStatus.md +17 -0
  540. package/doc_md/models/interfaces/FixedPosFrameIdentifier.md +57 -0
  541. package/doc_md/models/interfaces/Frame.md +169 -0
  542. package/doc_md/models/interfaces/FrameDefinition.md +65 -0
  543. package/doc_md/models/interfaces/FrameDefinitions.md +17 -0
  544. package/doc_md/models/interfaces/FramePropertyValue.md +25 -0
  545. package/doc_md/models/interfaces/FrameReceivedTrigger.md +33 -0
  546. package/doc_md/models/interfaces/Frames.md +17 -0
  547. package/doc_md/models/interfaces/IUserSettings.md +9 -0
  548. package/doc_md/models/interfaces/IWorkspaceComponentPaneData.md +9 -0
  549. package/doc_md/models/interfaces/IWorkspaceContainerPaneData.md +9 -0
  550. package/doc_md/models/interfaces/IWorkspacePaneData.md +9 -0
  551. package/doc_md/models/interfaces/InterpreterSettings.md +17 -0
  552. package/doc_md/models/interfaces/J1939InterpreterSettings.md +9 -0
  553. package/doc_md/models/interfaces/LinChannelConfiguration.md +57 -0
  554. package/doc_md/models/interfaces/LinFrameFlags.md +18 -0
  555. package/doc_md/models/interfaces/LogMessage.md +49 -0
  556. package/doc_md/models/interfaces/LogMessages.md +17 -0
  557. package/doc_md/models/interfaces/LogReplaySettings.md +109 -0
  558. package/doc_md/models/interfaces/LogReplayStatus.md +17 -0
  559. package/doc_md/models/interfaces/LoggerStatus.md +17 -0
  560. package/doc_md/models/interfaces/MeasurementSetup.md +41 -0
  561. package/doc_md/models/interfaces/MessageLoggerSettings.md +177 -0
  562. package/doc_md/models/interfaces/NodeStatus.md +73 -0
  563. package/doc_md/models/interfaces/NodeStatuses.md +17 -0
  564. package/doc_md/models/interfaces/OnlineStatus.md +25 -0
  565. package/doc_md/models/interfaces/PeriodicTransmissionSettings.md +145 -0
  566. package/doc_md/models/interfaces/ServiceExtensionSettings.md +25 -0
  567. package/doc_md/models/interfaces/SignalDefinition.md +141 -0
  568. package/doc_md/models/interfaces/SignalDefinitions.md +17 -0
  569. package/doc_md/models/interfaces/SignalFilterSettings.md +25 -0
  570. package/doc_md/models/interfaces/SignalLoggerSettings.md +225 -0
  571. package/doc_md/models/interfaces/SignalValue.md +49 -0
  572. package/doc_md/models/interfaces/SignalValueTrigger.md +73 -0
  573. package/doc_md/models/interfaces/SourceNodeProperties.md +49 -0
  574. package/doc_md/models/interfaces/TargetNodeProperties.md +49 -0
  575. package/doc_md/models/interfaces/TdcConfiguration.md +33 -0
  576. package/doc_md/models/interfaces/TriggerSettings.md +33 -0
  577. package/doc_md/models/interfaces/WriteFrame.md +41 -0
  578. package/doc_md/models/type-aliases/SerializableFrame.md +33 -0
  579. package/doc_md/models/variables/defaultUserSettings.md +11 -0
  580. package/doc_md/modules.md +12 -0
  581. package/package.json +19 -6
  582. package/dist/ElectronAPIFake.js +0 -1
  583. package/dist/ElectronAPIFake.mjs +0 -272
  584. package/dist/controls/SelectSignalControl.d.ts +0 -11
  585. package/dist/measurement_settings.js +0 -1
  586. package/dist/measurement_settings.mjs +0 -6021
  587. package/doc/classes/controls.LocalizedStrings.html +0 -4
  588. package/doc/classes/models.DataBuffer.html +0 -32
  589. package/doc/classes/models.DataBufferView.html +0 -20
  590. package/doc/classes/models.Point.html +0 -14
  591. package/doc/enums/models.AppEvent.html +0 -6
  592. package/doc/enums/models.DeviceEvent.html +0 -6
  593. package/doc/enums/models.FileType.html +0 -7
  594. package/doc/enums/models.MeasurementEvent.html +0 -12
  595. package/doc/enums/models.Protocols.html +0 -9
  596. package/doc/functions/controls.FillBox.html +0 -33
  597. package/doc/functions/controls.OneLineButton.html +0 -32
  598. package/doc/functions/controls.SelectSignalControl.html +0 -1
  599. package/doc/functions/controls.SizedBox.html +0 -33
  600. package/doc/functions/controls.TabsPanel.html +0 -32
  601. package/doc/functions/icons.AddIcon.html +0 -4
  602. package/doc/functions/icons.ArrowDownIcon.html +0 -4
  603. package/doc/functions/icons.ArrowLeftIcon.html +0 -4
  604. package/doc/functions/icons.ArrowRightIcon.html +0 -4
  605. package/doc/functions/icons.ArrowUpIcon.html +0 -4
  606. package/doc/functions/icons.BusIsOffIcon.html +0 -4
  607. package/doc/functions/icons.BusIsOnIcon.html +0 -4
  608. package/doc/functions/icons.CloseIcon.html +0 -4
  609. package/doc/functions/icons.ColumnSettingsIcon.html +0 -4
  610. package/doc/functions/icons.CopyIcon.html +0 -4
  611. package/doc/functions/icons.DarkModeIcon.html +0 -4
  612. package/doc/functions/icons.DeleteIcon.html +0 -4
  613. package/doc/functions/icons.DisableIcon.html +0 -4
  614. package/doc/functions/icons.EditIcon.html +0 -4
  615. package/doc/functions/icons.EnableIcon.html +0 -4
  616. package/doc/functions/icons.FilterIcon.html +0 -4
  617. package/doc/functions/icons.FixedPositionIcon.html +0 -4
  618. package/doc/functions/icons.LeaveFullScreenIcon.html +0 -4
  619. package/doc/functions/icons.LightModeIcon.html +0 -4
  620. package/doc/functions/icons.LineArrowDownIcon.html +0 -4
  621. package/doc/functions/icons.LineArrowUpIcon.html +0 -4
  622. package/doc/functions/icons.MaximizeWindowIcon.html +0 -4
  623. package/doc/functions/icons.MeasurementSetupIcon.html +0 -4
  624. package/doc/functions/icons.MoreHorizIcon.html +0 -4
  625. package/doc/functions/icons.MoreVertIcon.html +0 -4
  626. package/doc/functions/icons.NewIcon.html +0 -4
  627. package/doc/functions/icons.OpenExternallyIcon.html +0 -4
  628. package/doc/functions/icons.OpenIcon.html +0 -4
  629. package/doc/functions/icons.PauseIcon.html +0 -4
  630. package/doc/functions/icons.PlayIcon.html +0 -4
  631. package/doc/functions/icons.PlaySolidIcon.html +0 -4
  632. package/doc/functions/icons.SaveIcon.html +0 -4
  633. package/doc/functions/icons.SelectAllIcon.html +0 -4
  634. package/doc/functions/icons.ServiceIconActive.html +0 -4
  635. package/doc/functions/icons.ServiceIconInactive.html +0 -4
  636. package/doc/functions/icons.SettingsIcon.html +0 -4
  637. package/doc/functions/icons.StopIcon.html +0 -4
  638. package/doc/functions/icons.StopSolidIcon.html +0 -4
  639. package/doc/functions/icons.ToolsPanelHiddenIcon.html +0 -4
  640. package/doc/functions/icons.ToolsPanelVisibleIcon.html +0 -4
  641. package/doc/functions/icons.UnmaximizeWindowIcon.html +0 -4
  642. package/doc/functions/icons.WorkspacesIcon.html +0 -4
  643. package/doc/functions/models.accessModeFromJSON.html +0 -1
  644. package/doc/functions/models.accessModeToJSON.html +0 -1
  645. package/doc/functions/models.appEventFromJSON.html +0 -1
  646. package/doc/functions/models.appEventToJSON.html +0 -1
  647. package/doc/functions/models.canChannelCapFromJSON.html +0 -1
  648. package/doc/functions/models.canChannelCapToJSON.html +0 -1
  649. package/doc/functions/models.canFrameFlagFromJSON.html +0 -1
  650. package/doc/functions/models.canFrameFlagToJSON.html +0 -1
  651. package/doc/functions/models.canMessageFilterTypeFromJSON.html +0 -1
  652. package/doc/functions/models.canMessageFilterTypeToJSON.html +0 -1
  653. package/doc/functions/models.canModeFromJSON.html +0 -1
  654. package/doc/functions/models.canModeToJSON.html +0 -1
  655. package/doc/functions/models.createElectronApiFake.html +0 -4
  656. package/doc/functions/models.decimalCharFromJSON.html +0 -1
  657. package/doc/functions/models.decimalCharToJSON.html +0 -1
  658. package/doc/functions/models.deviceEventFromJSON.html +0 -1
  659. package/doc/functions/models.deviceEventToJSON.html +0 -1
  660. package/doc/functions/models.fileConflictActionFromJSON.html +0 -1
  661. package/doc/functions/models.fileConflictActionToJSON.html +0 -1
  662. package/doc/functions/models.fileTypeFromJSON.html +0 -1
  663. package/doc/functions/models.fileTypeToJSON.html +0 -1
  664. package/doc/functions/models.linFrameFlagFromJSON.html +0 -1
  665. package/doc/functions/models.linFrameFlagToJSON.html +0 -1
  666. package/doc/functions/models.logFileFormatFromJSON.html +0 -1
  667. package/doc/functions/models.logFileFormatToJSON.html +0 -1
  668. package/doc/functions/models.logLevelFromJSON.html +0 -1
  669. package/doc/functions/models.logLevelToJSON.html +0 -1
  670. package/doc/functions/models.logReplayStateFromJSON.html +0 -1
  671. package/doc/functions/models.logReplayStateToJSON.html +0 -1
  672. package/doc/functions/models.loggerStateFromJSON.html +0 -1
  673. package/doc/functions/models.loggerStateToJSON.html +0 -1
  674. package/doc/functions/models.measurementEventFromJSON.html +0 -1
  675. package/doc/functions/models.measurementEventToJSON.html +0 -1
  676. package/doc/functions/models.protocolsFromJSON.html +0 -1
  677. package/doc/functions/models.protocolsToJSON.html +0 -1
  678. package/doc/functions/models.separatorFromJSON.html +0 -1
  679. package/doc/functions/models.separatorToJSON.html +0 -1
  680. package/doc/functions/models.signalEncodingFromJSON.html +0 -1
  681. package/doc/functions/models.signalEncodingToJSON.html +0 -1
  682. package/doc/functions/models.signalTypeFromJSON.html +0 -1
  683. package/doc/functions/models.signalTypeToJSON.html +0 -1
  684. package/doc/functions/models.signalValueTriggerOperatorFromJSON.html +0 -1
  685. package/doc/functions/models.signalValueTriggerOperatorToJSON.html +0 -1
  686. package/doc/functions/models.statusLevelFromJSON.html +0 -1
  687. package/doc/functions/models.statusLevelToJSON.html +0 -1
  688. package/doc/functions/models.timeReferenceFromJSON.html +0 -1
  689. package/doc/functions/models.timeReferenceToJSON.html +0 -1
  690. package/doc/functions/models.triggerOperatorFromJSON.html +0 -1
  691. package/doc/functions/models.triggerOperatorToJSON.html +0 -1
  692. package/doc/interfaces/controls.ColumnItem.html +0 -3
  693. package/doc/interfaces/controls.ColumnItemControlProps.html +0 -4
  694. package/doc/interfaces/models.AboutInformation.html +0 -8
  695. package/doc/interfaces/models.ActivateLicenseRequest.html +0 -8
  696. package/doc/interfaces/models.AddAllConnectedCanChannelsRequest.html +0 -4
  697. package/doc/interfaces/models.AddAllConnectedLinChannelsRequest.html +0 -4
  698. package/doc/interfaces/models.AddOrUpdateDataProcessorRequest.html +0 -12
  699. package/doc/interfaces/models.AddOrUpdateSourceRequest.html +0 -8
  700. package/doc/interfaces/models.AddOrUpdateTargetRequest.html +0 -8
  701. package/doc/interfaces/models.ApiPreferences.html +0 -10
  702. package/doc/interfaces/models.AppEventArgs.html +0 -6
  703. package/doc/interfaces/models.CanBusSpeedInfo.html +0 -14
  704. package/doc/interfaces/models.CanFDBusSpeedCombination.html +0 -4
  705. package/doc/interfaces/models.CanFDBusSpeedInfo.html +0 -10
  706. package/doc/interfaces/models.ClearLinMessageRequest.html +0 -7
  707. package/doc/interfaces/models.ConnectNodesRequest.html +0 -5
  708. package/doc/interfaces/models.DatabaseFiles.html +0 -6
  709. package/doc/interfaces/models.DeviceEventArgs.html +0 -4
  710. package/doc/interfaces/models.DisconnectNodesRequest.html +0 -5
  711. package/doc/interfaces/models.Frame_PropertiesEntry.html +0 -3
  712. package/doc/interfaces/models.GetCanChannelBusSpeedsRequest.html +0 -7
  713. package/doc/interfaces/models.GetCanChannelBusSpeedsResponse.html +0 -6
  714. package/doc/interfaces/models.GetCanFdBusSpeedsRequest.html +0 -6
  715. package/doc/interfaces/models.GetCanFdBusSpeedsResponse.html +0 -4
  716. package/doc/interfaces/models.GetChannelsFromLogFileRequest.html +0 -5
  717. package/doc/interfaces/models.GetChannelsFromLogFileResponse.html +0 -4
  718. package/doc/interfaces/models.GetClassicCanBusSpeedsRequest.html +0 -5
  719. package/doc/interfaces/models.GetClassicCanBusSpeedsResponse.html +0 -4
  720. package/doc/interfaces/models.GetDataProcessorResponse.html +0 -3
  721. package/doc/interfaces/models.GetDevicesRequest.html +0 -4
  722. package/doc/interfaces/models.GetDevicesResponse.html +0 -3
  723. package/doc/interfaces/models.GetFrameDefinitionsFromDatabaseFilesRequest.html +0 -5
  724. package/doc/interfaces/models.GetLicensesResponse.html +0 -4
  725. package/doc/interfaces/models.GetLogFileFormatsRequest.html +0 -9
  726. package/doc/interfaces/models.GetLogFileFormatsResponse.html +0 -10
  727. package/doc/interfaces/models.GetLogLevelResponse.html +0 -4
  728. package/doc/interfaces/models.GetScheduleTablesFromDatabaseFilesRequest.html +0 -5
  729. package/doc/interfaces/models.GetScheduleTablesFromDatabaseFilesResponse.html +0 -4
  730. package/doc/interfaces/models.GetServiceExtensionInfoRequest.html +0 -8
  731. package/doc/interfaces/models.GetServiceExtensionInfoResponse.html +0 -14
  732. package/doc/interfaces/models.GetSignalDataFromMessageDataRequest.html +0 -7
  733. package/doc/interfaces/models.GetSignalDataFromMessageDataResponse.html +0 -4
  734. package/doc/interfaces/models.GetSourceResponse.html +0 -3
  735. package/doc/interfaces/models.GetTargetResponse.html +0 -3
  736. package/doc/interfaces/models.ILogFileFormat.html +0 -6
  737. package/doc/interfaces/models.IProject.html +0 -6
  738. package/doc/interfaces/models.IWorkspaceData.html +0 -5
  739. package/doc/interfaces/models.IdentifierRequest.html +0 -5
  740. package/doc/interfaces/models.IdentifiersRequest.html +0 -5
  741. package/doc/interfaces/models.InstallServiceExtensionRequest.html +0 -8
  742. package/doc/interfaces/models.LicenseInformation.html +0 -18
  743. package/doc/interfaces/models.Licenses.html +0 -4
  744. package/doc/interfaces/models.LogReplaySettings_ChannelIdentifiersEntry.html +0 -3
  745. package/doc/interfaces/models.MeasurementEventArgs.html +0 -6
  746. package/doc/interfaces/models.RequestLinMessageRequest.html +0 -7
  747. package/doc/interfaces/models.ScheduleTable.html +0 -8
  748. package/doc/interfaces/models.ScheduleTableEntry.html +0 -6
  749. package/doc/interfaces/models.SendLinWakeupFrameRequest.html +0 -9
  750. package/doc/interfaces/models.SendMessageRequest.html +0 -5
  751. package/doc/interfaces/models.SetLogLevelRequest.html +0 -6
  752. package/doc/interfaces/models.SetMeasurementSetupRequest.html +0 -4
  753. package/doc/interfaces/models.SetSignalDataToMessageDataRequest.html +0 -9
  754. package/doc/interfaces/models.SetSignalDataToMessageDataResponse.html +0 -7
  755. package/doc/interfaces/models.SignalDefinition_EnumValuesEntry.html +0 -3
  756. package/doc/interfaces/models.StartPeriodicTransmissionRequest.html +0 -5
  757. package/doc/interfaces/models.StartPeriodicTransmissionResponse.html +0 -3
  758. package/doc/interfaces/models.UninstallServiceExtensionRequest.html +0 -6
  759. package/doc/interfaces/models.UpdateLinMessageRequest.html +0 -8
  760. package/doc/interfaces/models.UpdatePeriodicTransmissionRequest.html +0 -7
  761. package/doc/modules/icons.html +0 -2
  762. package/doc/types/models.IReadOnlyDataBuffer.html +0 -1
  763. package/doc/types/models.themes.html +0 -1
  764. package/doc/variables/models.AboutInformation-1.html +0 -1
  765. package/doc/variables/models.ActivateLicenseRequest-1.html +0 -1
  766. package/doc/variables/models.AddAllConnectedCanChannelsRequest-1.html +0 -1
  767. package/doc/variables/models.AddAllConnectedLinChannelsRequest-1.html +0 -1
  768. package/doc/variables/models.AddOrUpdateDataProcessorRequest-1.html +0 -1
  769. package/doc/variables/models.AddOrUpdateSourceRequest-1.html +0 -1
  770. package/doc/variables/models.AddOrUpdateTargetRequest-1.html +0 -1
  771. package/doc/variables/models.ApiPreferences-1.html +0 -1
  772. package/doc/variables/models.AppEventArgs-1.html +0 -1
  773. package/doc/variables/models.BaseNodeProperties-1.html +0 -1
  774. package/doc/variables/models.BusStatus-1.html +0 -1
  775. package/doc/variables/models.CanBusParamLimits-1.html +0 -1
  776. package/doc/variables/models.CanBusParams-1.html +0 -1
  777. package/doc/variables/models.CanBusSpeedInfo-1.html +0 -1
  778. package/doc/variables/models.CanChannelCapacity-1.html +0 -1
  779. package/doc/variables/models.CanChannelConfiguration-1.html +0 -1
  780. package/doc/variables/models.CanFDBusSpeedCombination-1.html +0 -1
  781. package/doc/variables/models.CanFDBusSpeedInfo-1.html +0 -1
  782. package/doc/variables/models.CanFrameFlags-1.html +0 -1
  783. package/doc/variables/models.CanMessageFilterSettings-1.html +0 -1
  784. package/doc/variables/models.Channel-1.html +0 -1
  785. package/doc/variables/models.ChannelSettings-1.html +0 -1
  786. package/doc/variables/models.ClearLinMessageRequest-1.html +0 -1
  787. package/doc/variables/models.ConnectNodesRequest-1.html +0 -1
  788. package/doc/variables/models.DataProcessingStatus-1.html +0 -1
  789. package/doc/variables/models.DataProcessorNodeProperties-1.html +0 -1
  790. package/doc/variables/models.DatabaseFiles-1.html +0 -1
  791. package/doc/variables/models.DatabasesSettings-1.html +0 -1
  792. package/doc/variables/models.Device-1.html +0 -1
  793. package/doc/variables/models.DeviceEventArgs-1.html +0 -1
  794. package/doc/variables/models.Devices-1.html +0 -1
  795. package/doc/variables/models.DisconnectNodesRequest-1.html +0 -1
  796. package/doc/variables/models.Empty-1.html +0 -1
  797. package/doc/variables/models.ErrorStatus-1.html +0 -1
  798. package/doc/variables/models.Frame-1.html +0 -1
  799. package/doc/variables/models.FrameDefinition-1.html +0 -1
  800. package/doc/variables/models.FrameDefinitions-1.html +0 -1
  801. package/doc/variables/models.FramePropertyValue-1.html +0 -1
  802. package/doc/variables/models.FrameReceivedTrigger-1.html +0 -1
  803. package/doc/variables/models.Frame_PropertiesEntry-1.html +0 -1
  804. package/doc/variables/models.Frames-1.html +0 -1
  805. package/doc/variables/models.GetCanChannelBusSpeedsRequest-1.html +0 -1
  806. package/doc/variables/models.GetCanChannelBusSpeedsResponse-1.html +0 -1
  807. package/doc/variables/models.GetCanFdBusSpeedsRequest-1.html +0 -1
  808. package/doc/variables/models.GetCanFdBusSpeedsResponse-1.html +0 -1
  809. package/doc/variables/models.GetChannelsFromLogFileRequest-1.html +0 -1
  810. package/doc/variables/models.GetChannelsFromLogFileResponse-1.html +0 -1
  811. package/doc/variables/models.GetClassicCanBusSpeedsRequest-1.html +0 -1
  812. package/doc/variables/models.GetClassicCanBusSpeedsResponse-1.html +0 -1
  813. package/doc/variables/models.GetDataProcessorResponse-1.html +0 -1
  814. package/doc/variables/models.GetDevicesRequest-1.html +0 -1
  815. package/doc/variables/models.GetDevicesResponse-1.html +0 -1
  816. package/doc/variables/models.GetFrameDefinitionsFromDatabaseFilesRequest-1.html +0 -1
  817. package/doc/variables/models.GetLicensesResponse-1.html +0 -1
  818. package/doc/variables/models.GetLogFileFormatsRequest-1.html +0 -1
  819. package/doc/variables/models.GetLogFileFormatsResponse-1.html +0 -1
  820. package/doc/variables/models.GetLogLevelResponse-1.html +0 -1
  821. package/doc/variables/models.GetScheduleTablesFromDatabaseFilesRequest-1.html +0 -1
  822. package/doc/variables/models.GetScheduleTablesFromDatabaseFilesResponse-1.html +0 -1
  823. package/doc/variables/models.GetServiceExtensionInfoRequest-1.html +0 -1
  824. package/doc/variables/models.GetServiceExtensionInfoResponse-1.html +0 -1
  825. package/doc/variables/models.GetSignalDataFromMessageDataRequest-1.html +0 -1
  826. package/doc/variables/models.GetSignalDataFromMessageDataResponse-1.html +0 -1
  827. package/doc/variables/models.GetSourceResponse-1.html +0 -1
  828. package/doc/variables/models.GetTargetResponse-1.html +0 -1
  829. package/doc/variables/models.IdentifierRequest-1.html +0 -1
  830. package/doc/variables/models.IdentifiersRequest-1.html +0 -1
  831. package/doc/variables/models.InstallServiceExtensionRequest-1.html +0 -1
  832. package/doc/variables/models.InterpreterSettings-1.html +0 -1
  833. package/doc/variables/models.J1939InterpreterSettings-1.html +0 -1
  834. package/doc/variables/models.LicenseInformation-1.html +0 -1
  835. package/doc/variables/models.Licenses-1.html +0 -1
  836. package/doc/variables/models.LinChannelConfiguration-1.html +0 -1
  837. package/doc/variables/models.LinFrameFlags-1.html +0 -1
  838. package/doc/variables/models.LogMessage-1.html +0 -1
  839. package/doc/variables/models.LogMessages-1.html +0 -1
  840. package/doc/variables/models.LogReplaySettings-1.html +0 -1
  841. package/doc/variables/models.LogReplaySettings_ChannelIdentifiersEntry-1.html +0 -1
  842. package/doc/variables/models.LogReplayStatus-1.html +0 -1
  843. package/doc/variables/models.LoggerStatus-1.html +0 -1
  844. package/doc/variables/models.MeasurementEventArgs-1.html +0 -1
  845. package/doc/variables/models.MeasurementSetup-1.html +0 -1
  846. package/doc/variables/models.MessageLoggerSettings-1.html +0 -1
  847. package/doc/variables/models.NodeStatus-1.html +0 -1
  848. package/doc/variables/models.NodeStatuses-1.html +0 -1
  849. package/doc/variables/models.OnlineStatus-1.html +0 -1
  850. package/doc/variables/models.PeriodicTransmissionSettings-1.html +0 -1
  851. package/doc/variables/models.RequestLinMessageRequest-1.html +0 -1
  852. package/doc/variables/models.ScheduleTable-1.html +0 -1
  853. package/doc/variables/models.ScheduleTableEntry-1.html +0 -1
  854. package/doc/variables/models.SendLinWakeupFrameRequest-1.html +0 -1
  855. package/doc/variables/models.SendMessageRequest-1.html +0 -1
  856. package/doc/variables/models.ServiceExtensionSettings-1.html +0 -1
  857. package/doc/variables/models.SetLogLevelRequest-1.html +0 -1
  858. package/doc/variables/models.SetMeasurementSetupRequest-1.html +0 -1
  859. package/doc/variables/models.SetSignalDataToMessageDataRequest-1.html +0 -1
  860. package/doc/variables/models.SetSignalDataToMessageDataResponse-1.html +0 -1
  861. package/doc/variables/models.SignalDefinition-1.html +0 -1
  862. package/doc/variables/models.SignalDefinition_EnumValuesEntry-1.html +0 -1
  863. package/doc/variables/models.SignalDefinitions-1.html +0 -1
  864. package/doc/variables/models.SignalFilterSettings-1.html +0 -1
  865. package/doc/variables/models.SignalLoggerSettings-1.html +0 -1
  866. package/doc/variables/models.SignalValue-1.html +0 -1
  867. package/doc/variables/models.SignalValueTrigger-1.html +0 -1
  868. package/doc/variables/models.SourceNodeProperties-1.html +0 -1
  869. package/doc/variables/models.StartPeriodicTransmissionRequest-1.html +0 -1
  870. package/doc/variables/models.StartPeriodicTransmissionResponse-1.html +0 -1
  871. package/doc/variables/models.TargetNodeProperties-1.html +0 -1
  872. package/doc/variables/models.TriggerSettings-1.html +0 -1
  873. package/doc/variables/models.UninstallServiceExtensionRequest-1.html +0 -1
  874. package/doc/variables/models.UpdateLinMessageRequest-1.html +0 -1
  875. package/doc/variables/models.UpdatePeriodicTransmissionRequest-1.html +0 -1
  876. package/doc/variables/models.WriteFrame-1.html +0 -1
  877. package/licenses/ELECTRON-TOOLKIT-PRELOAD_MIT.TXT +0 -21
  878. package/licenses/FAST-DEEP-EQUAL_MIT.TXT +0 -21
  879. package/licenses/GOOGLE-PROTOBUF_(BSD-3-CLAUSE AND APACHE-2.0).TXT +0 -29
  880. package/licenses/REACT-DOM_MIT.TXT +0 -21
  881. package/licenses/REACT_MIT.TXT +0 -21
  882. package/licenses/UUID_MIT.TXT +0 -9
  883. package/licenses/licenses.css +0 -22
  884. package/licenses/licenses.html +0 -67
package/dist/index.d.ts CHANGED
@@ -1,6 +1,4 @@
1
1
  export * as controls from './controls';
2
2
  export * as hooks from './hooks';
3
- export * as icons from './icons';
4
3
  export * as ipc from './ipc';
5
4
  export * as models from './models';
6
- export * as protos from './grpc';
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";var G=Object.defineProperty;var X=(e,s,t)=>s in e?G(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t;var E=(e,s,t)=>X(e,typeof s!="symbol"?s+"":s,t);const a=require("react"),v=require("uuid");require("long");const H=require("./ElectronAPIFake.js"),y=require("./status_params.js"),g=require("react/jsx-runtime"),b=require("@mui/material"),Y=require("./ipc.js"),J=require("./models.js"),Z=(e,s,...t)=>{let o=s;for(let r=0;r<t.length;r+=1){const n=`{${r}}`;if(o.indexOf(n)!==-1){const u=t[r];o=typeof u=="string"?o.replace(n,u):o.replace(n,u.toLocaleString(e))}}return o};class K{constructor(s,t){E(this,"language");E(this,"strings");this.language=s,this.strings=t}getString(s,...t){if(this.strings&&s in this.strings){const o=this.strings[s];return t.length>0?Z(this.language,o,...t):o}return s}}const l=Y.getLogger("DataProviders"),d=window.electron??H.electronApiFake,q=e=>({palette:{mode:e,primary:{main:e==="light"?"#006782":"#03648A"},secondary:{main:e==="light"?"#44439A":"#AFA7FD"},error:{main:e==="light"?"#BA1A1A":"#FD452F"},divider:e==="light"?"#33859B":"#3583A1"},spacing:4,typography:{button:{lineHeight:1,textTransform:void 0},fontSize:12},shape:{borderRadius:4},components:{MuiButton:{defaultProps:{size:"small"}},MuiFilledInput:{defaultProps:{margin:"dense"}},MuiFormControl:{defaultProps:{margin:"dense"}},MuiFormHelperText:{defaultProps:{margin:"dense"}},MuiIconButton:{defaultProps:{size:"small"}},MuiInputBase:{defaultProps:{margin:"dense"}},MuiInputLabel:{defaultProps:{margin:"dense"}},MuiListItem:{defaultProps:{dense:!0}},MuiOutlinedInput:{defaultProps:{margin:"dense"}},MuiFab:{defaultProps:{size:"small"}},MuiTable:{defaultProps:{size:"small"}},MuiTextField:{defaultProps:{margin:"dense"}},MuiToolbar:{defaultProps:{variant:"dense"}}}});function V({children:e}){const s=S(),[t,o]=a.useState(b.createTheme(q(s.theme)));return a.useEffect(()=>{o(b.createTheme(q(s.theme)))},[s.theme]),g.jsxs(b.ThemeProvider,{theme:t,children:[g.jsx(b.CssBaseline,{}),e]})}const w=new Map,M=new Map,x=new Map,C=new Map,k=new Map,L=new Map,T=new Map,j=new Map,D=new Map,R=new Map;async function h(e,s,t,o){switch(s){case"devices-changed":{if(w.has(e))l.warn("The callback has already been added as listener to this event!");else{const r=t,n=(u,i)=>r(i),c=d.ipcRenderer.on("dm-devices-changed",n);w.set(e,{remover:c,listener:n})}return d.ipcRenderer.invoke("rpc-get-devices",!1)}case"user-settings-changed":{if(M.has(e))l.warn("The callback has already been added as listener to this event!");else{const r=t,n=(u,i)=>r(i),c=d.ipcRenderer.on("user-settings-changed",n);M.set(e,{remover:c,listener:n})}return d.ipcRenderer.invoke("app-get-user-settings")}case"new-log-messages":{if(x.has(e))l.warn("The callback has already been added as listener to this event!");else{const r=t,n=(u,i)=>r(i),c=d.ipcRenderer.on("new-log-messages",n);x.set(e,{remover:c,listener:n})}return Promise.resolve()}case"online-status-changed":{if(C.has(e))l.warn("The callback has already been added as listener to this event!");else{const r=t,n=(u,i)=>r(i),c=d.ipcRenderer.on("mm-is-online-changed",n);C.set(e,{remover:c,listener:n})}return d.ipcRenderer.invoke("rpc-get-online-status")}case"periodic-trans-started":{if(k.has(e))l.warn("The callback has already been added as listener to this event!");else{const r=t,n=(u,i)=>r(i),c=d.ipcRenderer.on("mm-periodic-trans-started",n);k.set(e,{remover:c,listener:n})}return Promise.resolve("")}case"periodic-trans-stopped":{if(L.has(e))l.warn("The callback has already been added as listener to this event!");else{const r=t,n=(u,i)=>r(i),c=d.ipcRenderer.on("mm-periodic-trans-stopped",n);L.set(e,{remover:c,listener:n})}return Promise.resolve("")}case"new-measurement-data":{if(T.has(e))l.warn("The callback has already been added as listener to this event!");else{const r=t,n=(u,i)=>r(i),c=d.ipcRenderer.on("mm-new-measurement-data",n);T.set(e,{remover:c,listener:n})}return(o==null?void 0:o.numberOfHistoryFrames)>0?d.ipcRenderer.invoke("mm-get-latest-measurement-data",o.numberOfHistoryFrames):Promise.resolve([])}case"new-measurement-status":{if(j.has(e))l.warn("The callback has already been added as listener to this event!");else{const r=t,n=(u,i)=>r(i),c=d.ipcRenderer.on("mm-new-measurement-status",n);j.set(e,{remover:c,listener:n})}return d.ipcRenderer.invoke("rpc-get-node-statuses")}case"meas-setup-changed":{if(D.has(e))l.warn("The callback has already been added as listener to this event!");else{const r=t,n=(u,i)=>r(i),c=d.ipcRenderer.on("project-meas-setup-changed",n);D.set(e,{remover:c,listener:n})}return d.ipcRenderer.invoke("prj-get-meas-setup")}case"workspace-panes-changed":{if(R.has(e))l.warn("The callback has already been added as listener to this event!");else{const r=t,n=(u,i)=>r(i),c=d.ipcRenderer.on("project-workspace-panes-changed",n);R.set(e,{remover:c,listener:n})}return d.ipcRenderer.invoke("prj-get-workspace-panes")}}return Promise.reject(new Error("Invalid event type"))}const p=async(e,s)=>{switch(s){case"devices-changed":{const t=w.get(e);t?(t.remover(),w.delete(e)):l.warn("The callback has not been added as listener to this event!")}break;case"user-settings-changed":{const t=M.get(e);t?(t.remover(),M.delete(e)):l.warn("The callback has not been added as listener to this event!")}break;case"new-log-messages":{const t=x.get(e);t?(t.remover(),x.delete(e)):l.warn("The callback has not been added as listener to this event!")}break;case"online-status-changed":{const t=C.get(e);t?(t.remover(),C.delete(e)):l.warn("The callback has not been added as listener to this event!")}break;case"periodic-trans-started":{const t=k.get(e);t?(t.remover(),k.delete(e)):l.warn("The callback has not been added as listener to this event!")}break;case"periodic-trans-stopped":{const t=L.get(e);t?(t.remover(),L.delete(e)):l.warn("The callback has not been added as listener to this event!")}break;case"new-measurement-data":{const t=T.get(e);t?(t.remover(),T.delete(e)):l.warn("The callback has not been added as listener to this event!")}break;case"new-measurement-status":{const t=j.get(e);t?(t.remover(),j.delete(e)):l.warn("The callback has not been added as listener to this event!")}break;case"meas-setup-changed":{const t=D.get(e);t?(t.remover(),D.delete(e)):l.warn("The callback has not been added as listener to this event!")}break;case"workspace-panes-changed":{const t=R.get(e);t?(t.remover(),R.delete(e)):l.warn("The callback has not been added as listener to this event!")}break}},ee=window!=null&&window.matchMedia?window.matchMedia("(prefers-color-scheme: dark)").matches:!1,$=Object.assign({},J.defaultUserSettings,{theme:ee?"dark":"light"}),N=a.createContext($),te=({initialUserSettings:e=void 0,children:s=void 0})=>{const[t,o]=a.useState(e??$);return a.useEffect(()=>{const r=v.v4();return h(r,"user-settings-changed",o).then(n=>o(n)).catch(),()=>{p(r,"user-settings-changed")}},[]),g.jsx(N.Provider,{value:t,children:s})},I=a.createContext(null),se=({children:e=void 0})=>{const[s,t]=a.useState(null);return a.useEffect(()=>{const o=n=>{try{t(n)}catch(c){l.error("DevicesProvider",c)}},r=v.v4();return h(r,"devices-changed",o).then(n=>o(n)).catch(),()=>{p(r,"devices-changed")}},[]),g.jsx(I.Provider,{value:s,children:e})},z=a.createContext([]),ne=({children:e=void 0})=>{const[s,t]=a.useState([]);return a.useEffect(()=>{const o=n=>{try{t(n)}catch(c){l.error("MeasurementStatusProvider",c)}},r=v.v4();return h(r,"new-measurement-status",o).then(n=>o(n)).catch(),()=>{p(r,"new-measurement-status")}},[]),g.jsx(z.Provider,{value:s,children:e})},_=a.createContext({language:"en",sources:[],dataProcessors:[],targets:[]}),re=({children:e=void 0})=>{const[s,t]=a.useState({language:"en",sources:[],dataProcessors:[],targets:[]});return a.useEffect(()=>{const o=n=>{try{t(n)}catch(c){l.error("MeasurementSetupProvider",c)}},r=v.v4();return h(r,"meas-setup-changed",o).then(n=>o(n)).catch(),()=>{p(r,"meas-setup-changed")}},[]),g.jsx(_.Provider,{value:s,children:e})},A=a.createContext({isOnline:!1}),ae=({children:e=void 0})=>{const[s,t]=a.useState({isOnline:!1});return a.useEffect(()=>{const o=n=>{try{t(n)}catch(c){l.error("OnlineStatusProvider",c)}},r=v.v4();return h(r,"online-status-changed",o).then(n=>o(n)).catch(),()=>{p(r,"online-status-changed")}},[]),g.jsx(A.Provider,{value:s,children:e})},B=a.createContext([]),oe=({children:e=void 0})=>{const[s,t]=a.useState([]);return a.useEffect(()=>{const o=u=>{try{t(i=>[...i,u])}catch(i){l.error("RunningPeriodicTransmissionsProvider - started",i)}},r=u=>{try{t(i=>{const m=i.findIndex(P=>P===u);if(m===-1)return i;const f=[...i];return f.splice(m,1),f})}catch(i){l.error("RunningPeriodicTransmissionsProvider - stopped",i)}},n=v.v4();h(n,"periodic-trans-started",o);const c=v.v4();return h(c,"periodic-trans-stopped",r),()=>{p(n,"periodic-trans-started"),p(c,"periodic-trans-stopped")}},[]),g.jsx(B.Provider,{value:s,children:e})},U=a.createContext([]),ce=({children:e=void 0})=>{const s=a.useRef(new J.DataBuffer(1e3)),[t,o]=a.useState([]);return a.useEffect(()=>{const r=c=>{try{c===null?s.current.clear():s.current.push(...c),o(Array.from(s.current))}catch(u){l.error("LogMessagesProvider",u)}},n=v.v4();return h(n,"new-log-messages",r),()=>{p(n,"new-log-messages")}},[]),g.jsx(U.Provider,{value:t,children:e})},O=a.createContext([[],()=>{}]),ie=({children:e=void 0})=>{const[s,t]=a.useState(null),o=a.useCallback(r=>{if(s!==null)if(typeof r=="function"){const n=r(s);d.ipcRenderer.invoke("prj-update-project",{workspacePanes:n})}else d.ipcRenderer.invoke("prj-update-project",{workspacePanes:r})},[s]);return a.useEffect(()=>{const r=c=>{try{t(c)}catch(u){l.error("WorkspacePanesProvider",u)}},n=v.v4();return h(n,"workspace-panes-changed",r).then(c=>r(c)).catch(),()=>{p(n,"workspace-panes-changed")}},[]),g.jsx(O.Provider,{value:[s,o],children:e})},ue=({initialUserSettings:e=void 0,children:s=void 0})=>g.jsx(te,{initialUserSettings:e,children:g.jsx(se,{children:g.jsx(re,{children:g.jsx(ne,{children:g.jsx(ae,{children:g.jsx(oe,{children:g.jsx(ce,{children:g.jsx(ie,{children:g.jsx(V,{children:s})})})})})})})})}),F=window.electron??H.electronApiFake,S=()=>a.useContext(N),le=()=>{const e=S();return a.useMemo(()=>e.useHexNumericBase?16:10,[e.useHexNumericBase])},de=()=>{const e=S();return a.useMemo(()=>e.maxDataBytes,[e.maxDataBytes])},ge=()=>{const e=S();return a.useMemo(()=>e.language,[e.language])},me=()=>{const e=S();return a.useMemo(()=>new K(e.language,e.strings),[e.language,e.strings])},he=()=>{const e=S();return a.useMemo(()=>e.recentProjectFiles,[e.recentProjectFiles])},pe=()=>a.useContext(I),ve=()=>a.useContext(_),W=()=>a.useContext(z),fe=e=>{const s=W();return a.useMemo(()=>s.find(o=>o.nodeId===e)??null,[e,s])},Se=()=>{const e=W();return a.useMemo(()=>{const t=e.filter(o=>o.busStatus).map(o=>Math.max(Number(o.busStatus.busOnStatus)??y.StatusLevel.STATUS_LEVEL_NONE,Number(o.busStatus.errorStatus)??y.StatusLevel.STATUS_LEVEL_NONE,Number(o.busStatus.overrunStatus)??y.StatusLevel.STATUS_LEVEL_NONE));return Math.max(...t)},[e])},Q=()=>a.useContext(A),Pe=()=>{const e=Q();return a.useMemo(()=>(e==null?void 0:e.isOnline)===!0,[e==null?void 0:e.isOnline])},be=()=>a.useContext(B),we=()=>a.useContext(U),Me=(e,s)=>{const[t,o]=a.useState([]),[r,n]=a.useState([]);return a.useEffect(()=>{const c=v.v4();return h(c,"new-measurement-data",n,{numberOfHistoryFrames:e}).then(u=>n(u)).catch(),()=>{p(c,"new-measurement-data")}},[]),a.useEffect(()=>{r!==null&&o(c=>{const u=c.map(m=>m.hashCode),i=r.filter(m=>!u.includes(m.hashCode));if(s){const m=i.filter(s);return c.length===0&&m.length===0?c:m}return c.length===0&&i.length===0?c:i})},[r,s]),t},xe=(e,s)=>{const[t,o]=a.useContext(O),[r,n]=a.useMemo(()=>{var u;try{if(t===null)return[!1,s??{}];const i=t==null?void 0:t.find(f=>f.id===e),m=(u=i==null?void 0:i.componentData)!=null&&u.componentProps?JSON.parse(i.componentData.componentProps):{};return s!==void 0?[!0,Object.assign({},s,m)]:[!0,m]}catch{return[!1,s??{}]}},[s,e,t]),c=a.useCallback(u=>{try{o(i=>{const m=[...i],f=m.find(P=>P.id===e);if(f!=null&&f.componentData){const P=u instanceof Function?JSON.stringify(u(n)):JSON.stringify(u);return f.componentData.componentProps=P,m}return i})}catch{}},[e,n,o]);return{projectDataIsInitialized:r,projectData:n,setProjectData:c}},Ce=(e,s)=>{const[t,o]=a.useState(!1),[r,n]=a.useState(s??{});return a.useEffect(()=>{F.ipcRenderer.invoke("app-get-workspace-view-session-data",e).then(c=>{try{const u=c?JSON.parse(c):{};s!==void 0?(n(Object.assign({},s,u)),o(!0)):(n(u),o(!0))}catch{o(!1),n(s??{})}}).catch()},[s,e]),a.useEffect(()=>{try{if(t){const c=JSON.stringify(r);F.ipcRenderer.invoke("app-set-workspace-view-session-data",e,c).catch()}}catch{}},[e,r,t]),{sessionDataIsInitialized:t,sessionData:r,setSessionData:n}},ke=e=>{const[s]=a.useContext(O);return a.useMemo(()=>s.find(o=>o.id===e)??null,[e,s])},Le=(e=!1)=>{const[s,t]=a.useState([]);return a.useEffect(()=>{F.ipcRenderer.invoke("rpc-get-message-log-file-formats",e).then(o=>t(o)).catch()},[e]),s},Te=()=>{const[e,s]=a.useState([]);return a.useEffect(()=>{F.ipcRenderer.invoke("rpc-get-signal-log-file-formats").then(t=>s(t)).catch()},[]),e};exports.CanKingDataProvider=ue;exports.DevicesContext=I;exports.LocalizedStrings=K;exports.LogMessagesContext=U;exports.MeasurementSetupContext=_;exports.MeasurementStatusContext=z;exports.OnlineStatusContext=A;exports.RunningPeriodicTransmissionsContext=B;exports.UserSettingsContext=N;exports.WorkspacePanesContext=O;exports.addEventListener=h;exports.removeEventListener=p;exports.useDevices=pe;exports.useIsOnline=Pe;exports.useLanguage=ge;exports.useLocalizedStrings=me;exports.useLogMessages=we;exports.useMaxDataBytes=de;exports.useMeasurementSetup=ve;exports.useMeasurementStatus=W;exports.useMessageLogFileFormats=Le;exports.useNewMeasurementData=Me;exports.useNodeStatus=fe;exports.useNumericRadix=le;exports.useOnlineStatus=Q;exports.useOverallStatusLevel=Se;exports.useProjectData=xe;exports.useRecentProjectFiles=he;exports.useRunningPeriodicTransmissions=be;exports.useSessionData=Ce;exports.useSignalLogFileFormats=Te;exports.useUserSettings=S;exports.useWorkspacePaneWithId=ke;
1
+ "use strict";var $e=Object.defineProperty;var We=(e,n,t)=>n in e?$e(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;var de=(e,n,t)=>We(e,typeof n!="symbol"?n+"":n,t);const a=require("react"),k=require("uuid"),M=require("./models.js"),P=require("react/jsx-runtime"),V=require("@mui/material"),W=require("./ipc.js"),j=require("./status_params.js"),He=(e,n,...t)=>{let r=n;for(let s=0;s<t.length;s+=1){const c=`{${s}}`;if(r.indexOf(c)!==-1){const i=t[s];r=typeof i=="string"?r.replace(c,i):r.replace(c,i.toLocaleString(e))}}return r};class Ae{constructor(n,t){de(this,"language");de(this,"strings");this.language=n,this.strings=t}getString(n,...t){if(this.strings&&n in this.strings){const r=this.strings[n];return t.length>0?He(this.language,r,...t):r}return n}}const D=W.getLogger("DataProviders"),y=window.electron??M.electronApiFake,Q=new Map,Y=new Map,G=new Map,Z=new Map,ee=new Map,te=new Map,re=new Map,ne=new Map,se=new Map,ae=new Map;async function A(e,n,t,r){switch(n){case"devices-changed":{if(Q.has(e))D.warn("The callback has already been added as listener to this event!");else{const s=t,c=(i,u)=>s(u),o=y.ipcRenderer.on("dm-devices-changed",c);Q.set(e,{remover:o,listener:c})}return y.ipcRenderer.invoke("rpc-get-devices",!1)}case"user-settings-changed":{if(Y.has(e))D.warn("The callback has already been added as listener to this event!");else{const s=t,c=(i,u)=>s(u),o=y.ipcRenderer.on("user-settings-changed",c);Y.set(e,{remover:o,listener:c})}return y.ipcRenderer.invoke("app-get-user-settings")}case"new-log-messages":{if(G.has(e))D.warn("The callback has already been added as listener to this event!");else{const s=t,c=(i,u)=>s(u),o=y.ipcRenderer.on("new-log-messages",c);G.set(e,{remover:o,listener:c})}return Promise.resolve()}case"online-status-changed":{if(Z.has(e))D.warn("The callback has already been added as listener to this event!");else{const s=t,c=(i,u)=>s(u),o=y.ipcRenderer.on("mm-is-online-changed",c);Z.set(e,{remover:o,listener:c})}return y.ipcRenderer.invoke("rpc-get-online-status")}case"periodic-trans-started":{if(ee.has(e))D.warn("The callback has already been added as listener to this event!");else{const s=t,c=(i,u)=>s(u),o=y.ipcRenderer.on("mm-periodic-trans-started",c);ee.set(e,{remover:o,listener:c})}return Promise.resolve("")}case"periodic-trans-stopped":{if(te.has(e))D.warn("The callback has already been added as listener to this event!");else{const s=t,c=(i,u)=>s(u),o=y.ipcRenderer.on("mm-periodic-trans-stopped",c);te.set(e,{remover:o,listener:c})}return Promise.resolve("")}case"new-measurement-data":{if(re.has(e))D.warn("The callback has already been added as listener to this event!");else{const s=t,c=(i,u)=>s(u),o=y.ipcRenderer.on("mm-new-measurement-data",c);re.set(e,{remover:o,listener:c})}return(r==null?void 0:r.numberOfHistoryFrames)>0?y.ipcRenderer.invoke("mm-get-measurement-data-before-timestamp",Number.MAX_SAFE_INTEGER,r.numberOfHistoryFrames):Promise.resolve([])}case"new-measurement-status":{if(ne.has(e))D.warn("The callback has already been added as listener to this event!");else{const s=t,c=(i,u)=>s(u),o=y.ipcRenderer.on("mm-new-measurement-status",c);ne.set(e,{remover:o,listener:c})}return y.ipcRenderer.invoke("rpc-get-node-statuses")}case"meas-setup-changed":{if(se.has(e))D.warn("The callback has already been added as listener to this event!");else{const s=t,c=(i,u)=>s(u),o=y.ipcRenderer.on("project-meas-setup-changed",c);se.set(e,{remover:o,listener:c})}return y.ipcRenderer.invoke("prj-get-meas-setup")}case"workspace-panes-changed":{if(ae.has(e))D.warn("The callback has already been added as listener to this event!");else{const s=t,c=(i,u)=>s(u),o=y.ipcRenderer.on("project-workspace-panes-changed",c);ae.set(e,{remover:o,listener:c})}return y.ipcRenderer.invoke("prj-get-workspace-panes")}}return Promise.reject(new Error("Invalid event type"))}const I=async(e,n)=>{switch(n){case"devices-changed":{const t=Q.get(e);t?(t.remover(),Q.delete(e)):D.warn("The callback has not been added as listener to this event!")}break;case"user-settings-changed":{const t=Y.get(e);t?(t.remover(),Y.delete(e)):D.warn("The callback has not been added as listener to this event!")}break;case"new-log-messages":{const t=G.get(e);t?(t.remover(),G.delete(e)):D.warn("The callback has not been added as listener to this event!")}break;case"online-status-changed":{const t=Z.get(e);t?(t.remover(),Z.delete(e)):D.warn("The callback has not been added as listener to this event!")}break;case"periodic-trans-started":{const t=ee.get(e);t?(t.remover(),ee.delete(e)):D.warn("The callback has not been added as listener to this event!")}break;case"periodic-trans-stopped":{const t=te.get(e);t?(t.remover(),te.delete(e)):D.warn("The callback has not been added as listener to this event!")}break;case"new-measurement-data":{const t=re.get(e);t?(t.remover(),re.delete(e)):D.warn("The callback has not been added as listener to this event!")}break;case"new-measurement-status":{const t=ne.get(e);t?(t.remover(),ne.delete(e)):D.warn("The callback has not been added as listener to this event!")}break;case"meas-setup-changed":{const t=se.get(e);t?(t.remover(),se.delete(e)):D.warn("The callback has not been added as listener to this event!")}break;case"workspace-panes-changed":{const t=ae.get(e);t?(t.remover(),ae.delete(e)):D.warn("The callback has not been added as listener to this event!")}break}},Ee=e=>({palette:{mode:e,primary:{main:e==="light"?"#006782":"#03648A"},secondary:{main:e==="light"?"#44439A":"#AFA7FD"},error:{main:e==="light"?"#BA1A1A":"#FD452F"},divider:e==="light"?"#33859B":"#3583A1"},spacing:4,typography:{button:{lineHeight:1,textTransform:void 0},fontSize:12},shape:{borderRadius:4},components:{MuiButton:{defaultProps:{size:"small"}},MuiFilledInput:{defaultProps:{margin:"dense"}},MuiFormControl:{defaultProps:{margin:"dense"}},MuiFormHelperText:{defaultProps:{margin:"dense"}},MuiIconButton:{defaultProps:{size:"small"}},MuiInputBase:{defaultProps:{margin:"dense"}},MuiInputLabel:{defaultProps:{margin:"dense"}},MuiListItem:{defaultProps:{dense:!0}},MuiOutlinedInput:{defaultProps:{margin:"dense"}},MuiFab:{defaultProps:{size:"small"}},MuiTable:{defaultProps:{size:"small"}},MuiTextField:{defaultProps:{margin:"dense"}},MuiToolbar:{defaultProps:{variant:"dense"}}}});function Ve({children:e}){const n=K(),[t,r]=a.useState(V.createTheme(Ee(n.theme)));return a.useEffect(()=>{r(V.createTheme(Ee(n.theme)))},[n.theme]),P.jsxs(V.ThemeProvider,{theme:t,children:[P.jsx(V.CssBaseline,{}),e]})}const Xe=window!=null&&window.matchMedia?window.matchMedia("(prefers-color-scheme: dark)").matches:!1,Ie=Object.assign({},M.defaultUserSettings,{theme:Xe?"dark":"light"}),pe=a.createContext(Ie),Je=({initialUserSettings:e=void 0,children:n=void 0})=>{const[t,r]=a.useState(e??Ie);return a.useEffect(()=>{const s=new AbortController,c=k.v4();return A(c,"user-settings-changed",r).then(o=>{s.signal.aborted||r(o)}).catch(o=>{D.error("Failed to add user settings listener:",o)}),()=>{s.abort(),I(c,"user-settings-changed")}},[]),P.jsx(pe.Provider,{value:t,children:n})},he=a.createContext(null),Qe=({children:e=void 0})=>{const[n,t]=a.useState(null);return a.useEffect(()=>{const r=new AbortController,s=o=>{try{if(r.signal.aborted)return;t(o)}catch(i){D.error("DevicesProvider",i)}},c=k.v4();return A(c,"devices-changed",s).then(o=>s(o)).catch(o=>{D.error("Failed to add devices listener:",o)}),()=>{r.abort(),I(c,"devices-changed")}},[]),P.jsx(he.Provider,{value:n,children:e})},ve=a.createContext([]),Ye=({children:e=void 0})=>{const[n,t]=a.useState([]);return a.useEffect(()=>{const r=new AbortController,s=o=>{try{if(r.signal.aborted)return;t(o)}catch(i){D.error("MeasurementStatusProvider",i)}},c=k.v4();return A(c,"new-measurement-status",s).then(o=>s(o)).catch(o=>{D.error("Failed to add measurement status listener:",o)}),()=>{r.abort(),I(c,"new-measurement-status")}},[]),P.jsx(ve.Provider,{value:n,children:e})},ce=a.createContext({subscribedData:new Map}),Ge=({children:e=void 0})=>{const[n,t]=a.useState({subscribedData:new Map});return a.useEffect(()=>{const r=new AbortController,s=o=>{try{if(r.signal.aborted)return;const i=new Map;o.length>0&&o.forEach(u=>{const l=M.deserializeFrame(u),p=M.calculateSubscriptionKeyFromFrame(l);i.has(p)||i.set(p,[]);const d=i.get(p);d&&d.push(l)}),t(()=>({subscribedData:i}))}catch(i){D.error("MeasurementDataProvider",i)}},c=k.v4();return A(c,"new-measurement-data",s).then(o=>s(o)).catch(o=>{D.error("Failed to add measurement data listener:",o)}),()=>{r.abort(),I(c,"new-measurement-data")}},[]),P.jsx(ce.Provider,{value:n,children:e})},ie=a.createContext({scrollData:[],fixedPositionData:[]}),Ze=({children:e=void 0})=>{const n=a.useRef(new M.DataBuffer(500)),t=a.useRef(new Map),[r,s]=a.useState({scrollData:[],fixedPositionData:[]});a.useEffect(()=>{const o=new AbortController,i=l=>{try{if(o.signal.aborted)return;const p=l.map(d=>M.deserializeFrame(d));p.length===0?n.current.clear():n.current.push(...p.slice(Math.max(0,p.length-500))),p.length===0?t.current.clear():p.forEach(d=>{t.current.set(d.fixedPosIdentifier??"",d)}),s(()=>({scrollData:Array.from(n.current),fixedPositionData:Array.from(t.current.values())}))}catch(p){D.error("MeasurementTraceDataProvider",p)}},u=k.v4();return A(u,"new-measurement-data",i,{numberOfHistoryFrames:500}).then(l=>i(l)).catch(l=>{D.error("Failed to add measurement data listener:",l)}),()=>{o.abort(),I(u,"new-measurement-data")}},[]);const c=a.useContext(q);return a.useEffect(()=>{c.isLoaded&&c.onlineStatus.isOnline&&(n.current.clear(),t.current.clear(),s({scrollData:[],fixedPositionData:[]}))},[c]),P.jsx(ie.Provider,{value:r,children:e})},Se=a.createContext({language:"en",sources:[],dataProcessors:[],targets:[]}),et=({children:e=void 0})=>{const[n,t]=a.useState({language:"en",sources:[],dataProcessors:[],targets:[]});return a.useEffect(()=>{const r=new AbortController,s=o=>{try{if(r.signal.aborted)return;t(o)}catch(i){D.error("MeasurementSetupProvider",i)}},c=k.v4();return A(c,"meas-setup-changed",s).then(o=>s(o)).catch(o=>{D.error("Failed to add measurement setup listener:",o)}),()=>{r.abort(),I(c,"meas-setup-changed")}},[]),P.jsx(Se.Provider,{value:n,children:e})},q=a.createContext({onlineStatus:{isOnline:!1,onlineCounter:0},isLoaded:!1}),tt=({children:e=void 0})=>{const[n,t]=a.useState({onlineStatus:{isOnline:!1,onlineCounter:0},isLoaded:!1});return a.useEffect(()=>{const r=new AbortController,s=o=>{try{if(r.signal.aborted)return;t({onlineStatus:o,isLoaded:!0})}catch(i){D.error("OnlineStatusProvider",i),t({onlineStatus:{isOnline:!1,onlineCounter:0},isLoaded:!0})}},c=k.v4();return A(c,"online-status-changed",s).then(o=>s(o)).catch(o=>{D.error("Failed to add online status listener:",o),t({onlineStatus:{isOnline:!1,onlineCounter:0},isLoaded:!0})}),()=>{r.abort(),I(c,"online-status-changed")}},[]),P.jsx(q.Provider,{value:n,children:e})},be=a.createContext([]),rt=({children:e=void 0})=>{const[n,t]=a.useState([]);return a.useEffect(()=>{t([]);const r=new AbortController,s=u=>{try{if(r.signal.aborted)return;t(l=>[...l,u])}catch(l){D.error("RunningPeriodicTransmissionsProvider - started",l)}},c=u=>{try{if(r.signal.aborted)return;t(l=>{const p=l.findIndex(h=>h===u);if(p===-1)return l;const d=[...l];return d.splice(p,1),d})}catch(l){D.error("RunningPeriodicTransmissionsProvider - stopped",l)}},o=k.v4();A(o,"periodic-trans-started",s);const i=k.v4();return A(i,"periodic-trans-stopped",c),()=>{r.abort(),I(o,"periodic-trans-started"),I(i,"periodic-trans-stopped")}},[]),P.jsx(be.Provider,{value:n,children:e})},xe=a.createContext([]),nt=({children:e=void 0})=>{const n=a.useRef(new M.DataBuffer(1e3)),[t,r]=a.useState([]);return a.useEffect(()=>{const s=new AbortController,c=i=>{try{if(s.signal.aborted)return;i===null?n.current.clear():n.current.push(...i),r(Array.from(n.current))}catch(u){D.error("LogMessagesProvider",u)}},o=k.v4();return A(o,"new-log-messages",c),()=>{s.abort(),I(o,"new-log-messages")}},[]),P.jsx(xe.Provider,{value:t,children:e})},B=a.createContext([[],()=>{}]),st=({children:e=void 0})=>{const[n,t]=a.useState(null),r=a.useCallback(s=>{if(n!==null)if(typeof s=="function"){const c=s(n);y.ipcRenderer.invoke("prj-update-project",{workspacePanes:c})}else y.ipcRenderer.invoke("prj-update-project",{workspacePanes:s})},[n]);return a.useEffect(()=>{const s=new AbortController,c=i=>{try{if(s.signal.aborted)return;t(u=>M.deep_equal(u,i)?u:i)}catch(u){D.error("WorkspacePanesProvider",u)}},o=k.v4();return A(o,"workspace-panes-changed",c).then(i=>c(i)).catch(i=>{D.error("Failed to add workspace panes listener:",i)}),()=>{s.abort(),I(o,"workspace-panes-changed")}},[]),P.jsx(B.Provider,{value:[n,r],children:e})},at=({initialUserSettings:e=void 0,children:n=void 0})=>P.jsx(Je,{initialUserSettings:e,children:P.jsx(Qe,{children:P.jsx(et,{children:P.jsx(Ye,{children:P.jsx(tt,{children:P.jsx(Ge,{children:P.jsx(Ze,{children:P.jsx(rt,{children:P.jsx(nt,{children:P.jsx(st,{children:P.jsx(Ve,{children:n})})})})})})})})})})}),U=window.electron??M.electronApiFake,L=W.getLogger("hooks"),K=()=>a.useContext(pe),ot=()=>{const e=K();return a.useMemo(()=>e.useHexNumericBase?16:10,[e.useHexNumericBase])},ct=()=>{const e=K();return a.useMemo(()=>e.maxDataBytes,[e.maxDataBytes])},it=()=>{const e=K();return a.useMemo(()=>e.language,[e.language])},ut=()=>{const e=K();return a.useMemo(()=>new Ae(e.language,e.strings),[e.language,e.strings])},lt=()=>{const e=K();return a.useMemo(()=>e.recentProjectFiles,[e.recentProjectFiles])},dt=()=>a.useContext(xe),ft=(e=!1)=>{const[n,t]=a.useState([]),r=we();return a.useEffect(()=>{const s=new AbortController;return U.ipcRenderer.invoke("rpc-get-message-log-file-formats",e).then(c=>{if(s.signal.aborted)return;const o=c.filter(i=>!i.supportedProtocols||i.supportedProtocols.length===0?!0:i.supportedProtocols.some(u=>r.includes(u)));t(o)}).catch(),()=>{s.abort()}},[r,e]),n},mt=()=>{const[e,n]=a.useState([]),t=we();return a.useEffect(()=>{const r=new AbortController;return U.ipcRenderer.invoke("rpc-get-signal-log-file-formats").then(s=>{if(r.signal.aborted)return;const c=s.filter(o=>!o.supportedProtocols||o.supportedProtocols.length===0?!0:o.supportedProtocols.some(i=>t.includes(i)));n(c)}).catch(),()=>{r.abort()}},[t]),e},gt=()=>a.useContext(he),Le=()=>a.useContext(Se),we=()=>{const e=Le(),[n,t]=a.useState(["CAN"]);return a.useEffect(()=>{var c;const r=new Set;(c=e.sources)==null||c.forEach(o=>{var i;(i=o.channelSettings)!=null&&i.protocols&&o.channelSettings.protocols.forEach(u=>r.add(u))}),r.size===0&&r.add("CAN");const s=Array.from(r).sort();t(o=>M.deep_equal(o,s)?o:s)},[e]),n},De=()=>a.useContext(ve),pt=e=>{const n=De();return a.useMemo(()=>n.find(r=>r.nodeId===e)??null,[e,n])};function ke(e){if(!e)return j.StatusLevel.STATUS_LEVEL_NONE;const n=Number(e.busOnStatus),t=Number(e.errorStatus),r=Number(e.overrunStatus);return Math.max(isNaN(n)?j.StatusLevel.STATUS_LEVEL_NONE:n,isNaN(t)?j.StatusLevel.STATUS_LEVEL_NONE:t,isNaN(r)?j.StatusLevel.STATUS_LEVEL_NONE:r)}function _e(e){const n=e.filter(t=>t.busStatus).map(t=>ke(t.busStatus));return n.length===0?j.StatusLevel.STATUS_LEVEL_NONE:Math.max(...n)}const ht=()=>{const e=De();return a.useMemo(()=>_e(e),[e])},je=()=>a.useContext(q).onlineStatus,vt=()=>{const e=je();return a.useMemo(()=>(e==null?void 0:e.isOnline)===!0,[e==null?void 0:e.isOnline])},St=()=>a.useContext(be),bt=(e,n)=>{const[t,r]=a.useState([]),[s,c]=a.useState([]);return a.useEffect(()=>{const o=new AbortController,i=l=>{o.signal.aborted||c(l.map(p=>M.deserializeFrame(p)))},u=k.v4();return A(u,"new-measurement-data",i,{numberOfHistoryFrames:e}).then(i).catch(),()=>{I(u,"new-measurement-data"),o.abort()}},[e]),a.useEffect(()=>{s!==null&&r(o=>{const i=o.map(l=>l.hashCode),u=s.filter(l=>!i.includes(l.hashCode));if(n){const l=u.filter(n);return o.length===0&&l.length===0?o:l}return o.length===0&&u.length===0?o:u})},[s,n]),t},xt=e=>{const n=a.useContext(ie);return a.useMemo(()=>{const r=n.scrollData??[];return e!==void 0?r.filter(s=>s.timeUs.greaterThanOrEqual(e)):r},[n,e])},wt=e=>{const n=a.useContext(ie);return a.useMemo(()=>{const r=n.fixedPositionData??[];return e!==void 0?r.filter(s=>s.timeUs.greaterThanOrEqual(e)):r},[n,e])},Oe=2e3;function ue(e,n){const t=[...e,...n];return Array.from(new Map(t.map(s=>[s.time,s])).values())}function H(e,n){for(const[t,r]of n)if(e.has(t)){const s=e.get(t);e.set(t,ue(s,r))}else e.set(t,[...r]);return e}const Dt=(e,n,t)=>{const[r,s]=a.useState([]),[c,o]=z(e,`framesubscription-${n}`,[]),i=a.useRef(new Map),u=a.useRef(!1),l=a.useRef(new Map);a.useEffect(()=>{i.current.clear(),t.forEach(h=>{i.current.set(M.calculateSubscriptionKey(h),h)}),o(t.map(h=>({frameId:h,signalIds:[]})))},[t,o]);const p=a.useContext(ce);a.useEffect(()=>{const h=new AbortController;return U.ipcRenderer.invoke("mm-get-measurement-data-before-timestamp",Number.MAX_SAFE_INTEGER,Oe).then(f=>{h.signal.aborted||(f.length>0&&f.forEach(S=>{const b=M.deserializeFrame(S),v=M.calculateSubscriptionKeyFromFrame(b),w=l.current.get(v);w?l.current.set(v,ue(w,[b])):l.current.set(v,[b])}),u.current=!0)}).catch(f=>{L.error("Failed to get historical data:",f),u.current=!0}),()=>{h.abort(),u.current=!1}},[]),a.useEffect(()=>{if(!u.current){H(l.current,p.subscribedData);return}const h=new Map(l.current);l.current.clear(),H(h,p.subscribedData);const f=[];i.current.forEach((S,b)=>{const v=S.sourceId===void 0||S.sourceId==="",w=S.tx===void 0,g=S.mux===void 0,m=Array(h.values()).flatMap(x=>{const C=x[0];return C?M.calculateSubscriptionKeyFromFrame(C,v,w,g)===b?x:[]:[]});f.push(...m)}),f.sort((S,b)=>S.time-b.time),s(f)},[c,p]);const d=a.useContext(q);return a.useEffect(()=>{d.isLoaded&&d.onlineStatus.isOnline&&s([])},[d]),r};var Ne=(e=>(e.PENDING="pending",e.FRAME_KEYS_READY="frameKeysReady",e.HISTORICAL_DATA_READY="historicalDataReady",e.READY="ready",e))(Ne||{});const Ct=(e,n,t)=>{const[r,s]=a.useState([]),[,c]=z(e,`framesubscription-${n}`,[]),o=a.useRef(new Map),i=a.useRef(new Map),u=a.useRef("pending"),l=a.useRef(new Map);a.useEffect(()=>{const h=new AbortController;return W.getFrameDefinitions().then(f=>{if(h.signal.aborted)return;const S=[];o.current.clear(),i.current.clear();for(let b=0;b<t.length;b++){const{qualifiedName:v,sourceId:w}=t[b],g=f.find(m=>(w===void 0||w===""||m.sourceIdentifiers.includes(w))&&m.signals.some(x=>x.qualifiedName===v));if(g){const m=g.signals.find(R=>R.qualifiedName===v);if(!m)continue;const x=j.FixedPosFrameIdentifier.create({id:g.id,sourceId:w,mux:m.multiplexValue});g.canFrameFlags&&(x.canFrameFlags=j.CanFrameFlags.create(g.canFrameFlags),x.canFrameFlags.flags=x.canFrameFlags.flags.filter(R=>R!==j.CanFrameFlag.CAN_FRAME_FLAG_FD_BRS));const C=M.calculateSubscriptionKey(x);if(i.current.has(C)){const R=i.current.get(C);R&&!R.includes(v)&&(R.push(v),i.current.set(C,R))}else i.current.set(C,[v]),o.current.set(C,x);const F=S.find(R=>M.deep_equal(R.frameId,x));F?F.signalIds.includes(v)||F.signalIds.push(v):S.push({frameId:x,signalIds:[v]})}}c(S),u.current==="pending"?u.current="frameKeysReady":u.current==="historicalDataReady"&&(u.current="ready")}).catch(f=>{L.error("Failed to get frame definitions:",f),u.current==="pending"?u.current="frameKeysReady":u.current==="historicalDataReady"&&(u.current="ready")}),()=>{h.abort(),u.current==="ready"?u.current="historicalDataReady":u.current="pending"}},[t,c]);const p=a.useContext(ce);a.useEffect(()=>{const h=new AbortController;return W.getMessageDataBeforeTimestamp(Number.MAX_SAFE_INTEGER,Oe).then(f=>{h.signal.aborted||(f.length>0&&f.forEach(S=>{const b=M.calculateSubscriptionKeyFromFrame(S),v=l.current.get(b);v?l.current.set(b,ue(v,[S])):l.current.set(b,[S])}),u.current==="pending"?u.current="historicalDataReady":u.current==="frameKeysReady"&&(u.current="ready"))}).catch(f=>{L.error("Failed to get historical data:",f),u.current==="pending"?u.current="historicalDataReady":u.current==="frameKeysReady"&&(u.current="ready")}),()=>{h.abort(),u.current==="ready"?u.current="frameKeysReady":u.current="pending"}},[]),a.useEffect(()=>{if(u.current!=="ready"){H(l.current,p.subscribedData);return}const h=new Map(l.current);l.current.clear(),H(h,p.subscribedData);const f=[];o.current.forEach((S,b)=>{const v=S.sourceId===void 0||S.sourceId==="",w=S.tx===void 0,g=S.mux===void 0,m=Array(h.values()).flatMap(C=>{const F=C[0];return F?M.calculateSubscriptionKeyFromFrame(F,v,w,g,!0)===b?C:[]:[]}),x=i.current.get(b)??[];m.forEach(C=>{const F=x.map(R=>{const E=C.signalValues.find(_=>_.qualifiedName===R);return E?{qualifiedName:E.qualifiedName,sourceId:C.sourceId,name:E.name,unit:E.unit,time:C.time,timeUs:C.timeUs,doubleValue:E.doubleValue,stringValue:E.stringValue}:null});f.push(...F.filter(R=>R!==null))})}),f.sort((S,b)=>S.time-b.time),s(f)},[p]);const d=a.useContext(q);return a.useEffect(()=>{d.isLoaded&&d.onlineStatus.isOnline&&s([])},[d]),r},Mt=(e,n,t,r)=>{const[s,c]=a.useState([]),[,o]=z(e,`framesubscription-${n}`,[]),[,i]=Re(e,`envelopeviewwidth-${n}`,{windowUs:3e7,width:1e3});a.useEffect(()=>{i({windowUs:r.windowUs??(r.endTimeUs!==void 0&&r.startTimeUs!==void 0?r.endTimeUs-r.startTimeUs:3e7),width:r.width??1e3})},[i,r.endTimeUs,r.windowUs,r.startTimeUs,r.width]);const u=a.useRef(new Map),l=a.useRef(new Map),[p,d]=a.useState(!1);a.useEffect(()=>{const f=new AbortController;return d(!1),W.getFrameDefinitions().then(S=>{if(f.signal.aborted)return;const b=[],v=new Map,w=new Map;for(let g=0;g<t.length;g++){const{qualifiedName:m,sourceId:x}=t[g],C=S.find(F=>(x===void 0||x===""||F.sourceIdentifiers.includes(x))&&F.signals.some(R=>R.qualifiedName===m));if(C){const F=C.signals.find(T=>T.qualifiedName===m);if(!F)continue;const R=j.FixedPosFrameIdentifier.create({id:C.id,sourceId:x,mux:F.multiplexValue});C.canFrameFlags&&(R.canFrameFlags=j.CanFrameFlags.create(C.canFrameFlags),R.canFrameFlags.flags=R.canFrameFlags.flags.filter(T=>T!==j.CanFrameFlag.CAN_FRAME_FLAG_FD_BRS));const E=M.calculateSubscriptionKey(R);if(v.has(E)){const T=v.get(E);T&&!T.includes(m)&&(T.push(m),v.set(E,T))}else v.set(E,[m]);w.set(E,R);const _=b.find(T=>M.deep_equal(T.frameId,R));_?_.signalIds.includes(m)||_.signalIds.push(m):b.push({frameId:R,signalIds:[m]})}}o(g=>M.deep_equal(g,b)?g:b),u.current=v,l.current=w,d(!0)}).catch(S=>{f.signal.aborted||(L.error("Failed to get frame definitions:",S),u.current=new Map,l.current=new Map,o([]),d(!0))}),()=>{f.abort()}},[t,o]),a.useEffect(()=>{if(!p||r.startTimeUs!==void 0&&r.endTimeUs!==void 0)return;c([]);const f=new AbortController,S=U.ipcRenderer.on(`mm-new-frames-envelopes-for-pane-${e}`,(b,v)=>{if(!f.signal.aborted){if(v.length===0){c([]);return}c(w=>{let g=!1;const m=[...w];return v.forEach(x=>{x.envelopes.size!==0&&x.envelopes.forEach((C,F)=>{var T;const R=M.calculateSubscriptionKey(x.frameId);if(!((T=u.current.get(R))==null?void 0:T.includes(F)))return;const _=m.findIndex($=>$.qualifiedName===F&&$.sourceId===x.frameId.sourceId);_!==-1&&m.splice(_,1),m.push({qualifiedName:F,sourceId:x.frameId.sourceId,timeUs:Array.from(C.timeUs),min:Array.from(C.min),max:Array.from(C.max)}),g=!0})}),g?m:w})}});return()=>{f.abort(),S()}},[p,e,r.endTimeUs,r.startTimeUs]),a.useEffect(()=>{if(!p||r.startTimeUs===void 0||r.endTimeUs===void 0)return;const f=new AbortController,S=setTimeout(()=>{U.ipcRenderer.invoke("mm-get-frames-envelopes-for-pane",e,r.startTimeUs,r.endTimeUs,r.width).then(b=>{f.signal.aborted||c(v=>{let w=!1;const g=[...v];return b.forEach(m=>{if(m.envelopes.size===0)return;let x="";l.current.forEach((C,F)=>{M.compareFixedPosFrameIdentifiers(C,m.frameId)&&(x=F)}),x!==""&&m.envelopes.forEach((C,F)=>{var T,$;if(!((T=u.current.get(x))==null?void 0:T.includes(F)))return;const E=($=l.current.get(x))==null?void 0:$.sourceId,_=g.findIndex(ye=>ye.qualifiedName===F&&ye.sourceId===E);_!==-1&&g.splice(_,1),g.push({qualifiedName:F,sourceId:E,timeUs:Array.from(C.timeUs),min:Array.from(C.min),max:Array.from(C.max)}),w=!0})}),w?g:v})}).catch(b=>{L.error(`Failed to get signal data envelopes for pane ${e}:`,b)})},200);return()=>{clearTimeout(S),f.abort()}},[p,e,r.endTimeUs,r.startTimeUs,r.width,r.forceUpdateCounter]);const h=a.useContext(q);return a.useEffect(()=>{h.isLoaded&&h.onlineStatus.isOnline&&c([])},[h]),s};function Ce(e){const{enabled:n,intervalMs:t=5e3,stateRef:r,lastSavedStateRef:s,queueSave:c,intervals:o,maxIntervals:i,warnLabel:u,canSave:l}=e;a.useEffect(()=>{if(!n)return;o.size>=i&&L.warn(`Too many active auto-save intervals (${o.size}/${i}), consider optimizing ${u} usage`);const p=setInterval(()=>{if(l&&!l())return;const d=r.current;d!=null&&!M.deep_equal(d,s.current)&&(c(d),s.current=d)},t);return o.add(p),()=>{clearInterval(p),o.delete(p)}},[n,t,o,i,u,c,l,r,s])}const Rt="project-data-internal-v1";function le(e,n){return e==null?n:Array.isArray(n)&&Array.isArray(e)?e:typeof n=="object"&&!Array.isArray(n)&&typeof e=="object"&&!Array.isArray(e)?{...n,...e}:e}const O=[];let X=null;const fe=100,Ft=new Set;function Ue(e){return Math.max(15,e*7)}function Te(e,n,t,r,s=200){const c=`${e}:${n}`;if(!c||t===void 0)return;const o=O.find(i=>i.key===c);o?o.state=t:(O.push({key:c,state:t,id:e,slice:n}),O.length>fe&&(L.warn(`Project data save queue exceeded ${fe} items, removing oldest entries`),O.splice(0,O.length-fe))),X&&clearTimeout(X),X=setTimeout(()=>{if(!O.length)return;const i=[...O];O.length=0,X=null;try{r(u=>{const l=[...u];let p=!1;for(const d of i){const h=l.find(f=>f.id===d.id);if(h!=null&&h.componentData){const f=h.componentData.componentPropSlices[d.slice]?JSON.parse(h.componentData.componentPropSlices[d.slice],M.jsonReviver):{};M.deep_equal(f,d.state)||(h.componentData.componentPropSlices[d.slice]=JSON.stringify(d.state,M.jsonReplacer),p=!0)}}return p?l:u})}catch(u){L.error("Failed to save project data batch:",u)}},s)}const z=(e,n,t,r)=>{const[s,c]=a.useContext(B),o=a.useRef(typeof t=="function"?t():t),[i,u]=a.useState(()=>o.current),[l,p]=a.useState(!1),d=a.useRef(i),h=a.useRef(),f=a.useRef(!1),S=a.useRef(!1);a.useEffect(()=>{d.current=i},[i]),a.useEffect(()=>{f.current=l},[l]),a.useEffect(()=>{var w,g;if(!(s===null||f.current)){try{const m=s==null?void 0:s.find(F=>F.id===e),x=(w=m==null?void 0:m.componentData)!=null&&w.componentPropSlices[n]&&((g=m==null?void 0:m.componentData)==null?void 0:g.componentPropSlices[n])!==""?JSON.parse(m.componentData.componentPropSlices[n],M.jsonReviver):o.current,C=le(x,o.current);u(C),d.current=C,r&&!S.current&&(S.current=!0,r(C))}catch(m){L.error(`Failed to load project data slice ${n}:`,m),u(o.current),d.current=o.current,r&&!S.current&&(S.current=!0,r(o.current))}finally{p(!0),f.current=!0}return()=>{p(!1),f.current=!1}}},[e,r,n,s]);const b=a.useCallback(w=>Te(e,n,w,c),[e,c,n]);Ce({enabled:l,stateRef:d,lastSavedStateRef:h,queueSave:b,intervals:Ft,maxIntervals:Ue((s==null?void 0:s.length)??0),warnLabel:"project data",canSave:()=>f.current});const v=a.useCallback(w=>{if(!f.current)return;const g=d.current,m=typeof w=="function"?w(g):w;M.deep_equal(m,g)||(u(m),d.current=m,M.deep_equal(m,h.current)||(Te(e,n,m,c),h.current=m))},[e,c,n]);return[i,v,l]},Pt=(e,n)=>{const[t,r,s]=z(e,Rt,n);return{projectDataIsInitialized:s,projectData:t,setProjectData:r}},N=[];let J=null;const me=100,qe=new Set;function Me(e){return Math.max(15,e*7)}function oe(e,n,t=200){if(!e||n===void 0)return;const r=N.find(s=>s.key===e);r?r.state=n:(N.push({key:e,state:n}),N.length>me&&(L.warn(`Session data save queue exceeded ${me} items, removing oldest entries`),N.splice(0,N.length-me))),J&&clearTimeout(J),J=setTimeout(()=>{if(!N.length)return;const s=[...N];N.length=0,J=null;try{U.ipcRenderer.invoke("app-set-workspace-view-session-data-batch",s)}catch(c){L.error("Failed to send batch:",c)}},t)}const yt=(e,n,t)=>{const r=a.useRef(typeof n=="function"?n():n),[s,c]=a.useState(()=>r.current),[o,i]=a.useState(!1),[u]=a.useContext(B),l=a.useRef(s),p=a.useRef(),d=a.useRef(!1),h=a.useRef(!1),f=a.useRef(!1);a.useEffect(()=>{l.current=s},[s]),a.useEffect(()=>(d.current=!0,(async()=>{try{const v=await U.ipcRenderer.invoke("app-get-workspace-view-session-data-object",e.toString());if(!d.current)return;const w=le(v,r.current);c(w),l.current=w,t&&!h.current&&(h.current=!0,t(w))}catch(v){L.error(`Failed to load session data for view ${e}:`,v),c(r.current),l.current=r.current,t&&!h.current&&(h.current=!0,t(r.current))}finally{i(!0),f.current=!0}})(),()=>{d.current=!1,f.current=!1}),[e,t]);const S=a.useCallback(v=>oe(e.toString(),v),[e]);Ce({enabled:o,stateRef:l,lastSavedStateRef:p,queueSave:S,intervals:qe,maxIntervals:Me((u==null?void 0:u.length)??0),warnLabel:"session data",canSave:()=>d.current});const b=a.useCallback(v=>{if(!f.current)return;const w=l.current,g=typeof v=="function"?v(w):v;M.deep_equal(g,w)||(c(g),l.current=g,M.deep_equal(g,p.current)||(oe(e.toString(),g),p.current=g))},[e]);return{sessionDataIsInitialized:o,sessionData:s,setSessionData:b}};function Re(e,n,t,r){const s=`${e}:${n}`,[c]=a.useContext(B),o=a.useRef(typeof t=="function"?t():t),[i,u]=a.useState(()=>o.current),[l,p]=a.useState(!1),d=a.useRef(i),h=a.useRef(),f=a.useRef(!1),S=a.useRef(!1),b=a.useRef(!1);a.useEffect(()=>{d.current=i},[i]),a.useEffect(()=>(f.current=!0,(async()=>{try{const g=await U.ipcRenderer.invoke("app-get-workspace-view-session-data-slice",s);if(!f.current)return;const m=le(g,o.current);u(m),d.current=m,r&&!S.current&&(S.current=!0,r(m))}catch(g){L.error(`Failed to load session data slice ${s}:`,g),u(o.current),d.current=o.current,r&&!S.current&&(S.current=!0,r(o.current))}finally{p(!0),b.current=!0}})(),()=>{f.current=!1,b.current=!1}),[s,r]);const v=a.useCallback(g=>oe(s,g),[s]);Ce({enabled:l,stateRef:d,lastSavedStateRef:h,queueSave:v,intervals:qe,maxIntervals:Me((c==null?void 0:c.length)??0),warnLabel:"session data",canSave:()=>f.current&&b.current});const w=a.useCallback(g=>{if(!b.current)return;const m=d.current,x=typeof g=="function"?g(m):g;M.deep_equal(x,m)||(u(x),d.current=x,M.deep_equal(x,h.current)||(oe(s,x),h.current=x))},[s]);return[i,w,l]}function Et(e,n,t){const r=Pe(t),[,s,c]=Re(e,n,r.state,o=>{r.reset(o.current,o.previous,o.next)});return a.useEffect(()=>{var i;return c?(i=r.subscribe)==null?void 0:i.call(r,()=>{s(r.state)}):void 0},[c,s,r]),[r,c]}const Tt=e=>{const[n]=a.useContext(B);return a.useMemo(()=>n.find(r=>r.id===e)??null,[e,n])};function At(e,n,t,r){const s=a.useRef(!0),c=a.useContext(q),o=a.useRef(null),[i,u,l]=z(n,"useOnlineStatusSync-isNewWorkspaceView",!0);return a.useEffect(()=>{!e||!l||!c.isLoaded||(c.onlineStatus.isOnline&&(o.current!==c.onlineStatus.isOnline||s.current)?t(i,s.current,c.onlineStatus.onlineCounter):!c.onlineStatus.isOnline&&(o.current!==c.onlineStatus.isOnline||s.current)&&r(i,s.current,c.onlineStatus.onlineCounter),o.current=c.onlineStatus.isOnline,s.current=!1,u(!1))},[i,l,r,t,c.isLoaded,c.onlineStatus.isOnline,c.onlineStatus.onlineCounter,e,u]),c.onlineStatus.isOnline}const ge=25;function Fe(e,n){return e.length>=n?e.slice(1):e}function Ke(e,n){if(e.previous.length===0)return e;const t=e.previous[e.previous.length-1],r=e.previous.slice(0,e.previous.length-1),s=e.current===void 0?e.next:e.next.length===n?[e.current,...e.next.slice(0,n-1)]:[e.current,...e.next];return{previous:r,current:t,next:s}}function Be(e,n){if(e.next.length===0)return e;const t=e.next[0],r=e.next.slice(1);return{previous:e.current===void 0?e.previous:[...Fe(e.previous,n),e.current],current:t,next:r}}function ze(e,n,t,r){return r&&r(e.current,n)?null:{previous:e.current===void 0?e.previous:[...Fe(e.previous,t),e.current],current:n,next:[]}}function Pe(e){const n=a.useRef(),t=a.useRef(new Set),r=a.useCallback(()=>{t.current.forEach(s=>s())},[]);if(!n.current){const s={state:{previous:(e==null?void 0:e.previous)||[],current:e==null?void 0:e.current,next:(e==null?void 0:e.next)||[]},canUndo:()=>s.state.previous.length!==0,canRedo:()=>s.state.next.length!==0,undo:()=>{s.canUndo()&&(s.state=Ke(s.state,ge),r())},redo:()=>{s.canRedo()&&(s.state=Be(s.state,ge),r())},set:c=>{const o=typeof c=="function"?c(s.state.current):c,i=ze(s.state,o,ge,M.deep_equal);i&&(s.state=i,r())},reset:(c,o=[],i=[])=>{s.state={previous:o,current:c,next:i},r()},subscribe:c=>(t.current.add(c),()=>{t.current.delete(c)})};n.current=s}return n.current}function It(e){const[,n]=a.useState({}),t=Pe(e);return a.useEffect(()=>{var s;return(s=t.subscribe)==null?void 0:s.call(t,()=>{n({})})},[t]),t}exports.CanKingDataProvider=at;exports.DevicesContext=he;exports.LocalizedStrings=Ae;exports.LogMessagesContext=xe;exports.MeasurementSetupContext=Se;exports.MeasurementStatusContext=ve;exports.MeasurementSubscriptionDataProviderContext=ce;exports.MeasurementTraceDataContext=ie;exports.OnlineStatusContext=q;exports.RunningPeriodicTransmissionsContext=be;exports.SignalDataInitState=Ne;exports.UserSettingsContext=pe;exports.WorkspacePanesContext=B;exports.addEventListener=A;exports.calculateMaxActiveProjectDataIntervals=Ue;exports.calculateMaxActiveSessionDataIntervals=Me;exports.calculateOverallStatusLevel=_e;exports.calculateOverallStatusLevelFromBusStatus=ke;exports.limitBuffer=Fe;exports.mergeAndDeduplicateFrames=ue;exports.mergeData=le;exports.mergeFrameDataMaps=H;exports.performRedo=Be;exports.performSet=ze;exports.performUndo=Ke;exports.removeEventListener=I;exports.useAvailableProtocols=we;exports.useDevices=gt;exports.useFixedPositionModeMeasurementData=wt;exports.useIsOnline=vt;exports.useLanguage=it;exports.useLocalizedStrings=ut;exports.useLogMessages=dt;exports.useMaxDataBytes=ct;exports.useMeasurementSetup=Le;exports.useMeasurementStatus=De;exports.useMessageData=Dt;exports.useMessageLogFileFormats=ft;exports.useNewMeasurementData=bt;exports.useNodeStatus=pt;exports.useNumericRadix=ot;exports.useOnlineStatus=je;exports.useOnlineStatusSync=At;exports.useOverallStatusLevel=ht;exports.useProjectData=Pt;exports.useProjectDataSlice=z;exports.useRecentProjectFiles=lt;exports.useRunningPeriodicTransmissions=St;exports.useScrollModeMeasurementData=xt;exports.useSessionData=yt;exports.useSessionDataSlice=Re;exports.useSignalData=Ct;exports.useSignalDataEnvelopes=Mt;exports.useSignalLogFileFormats=mt;exports.useUndo=It;exports.useUndoRef=Pe;exports.useUndoSessionDataSlice=Et;exports.useUserSettings=K;exports.useWorkspacePaneWithId=Tt;