@nordicsemiconductor/pc-nrfconnect-shared 230.0.0 → 231.0.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 (356) hide show
  1. package/Changelog.md +1669 -1674
  2. package/README.md +8 -8
  3. package/config/colors.js +1 -1
  4. package/config/eslintrc.js +16 -5
  5. package/config/jest.config.js +1 -1
  6. package/ipc/MetaFiles.ts +2 -2
  7. package/ipc/README.md +14 -14
  8. package/ipc/appDetails.ts +1 -1
  9. package/ipc/apps.ts +5 -5
  10. package/ipc/infrastructure/mainToRenderer.ts +3 -3
  11. package/ipc/infrastructure/rendererToMain.ts +5 -5
  12. package/ipc/open.ts +2 -2
  13. package/ipc/safeStorage.ts +2 -2
  14. package/ipc/schema/packageJson.ts +1 -1
  15. package/ipc/serialPort.ts +2 -2
  16. package/mocks/electronStoreMock.ts +1 -1
  17. package/nrfutil/collectingResultParser.ts +3 -4
  18. package/nrfutil/device/batch.ts +29 -29
  19. package/nrfutil/device/boardController.ts +2 -2
  20. package/nrfutil/device/common.ts +6 -6
  21. package/nrfutil/device/deviceInfo.ts +3 -3
  22. package/nrfutil/device/erase.ts +2 -2
  23. package/nrfutil/device/getBoardControllerConfig.ts +2 -2
  24. package/nrfutil/device/getBoardControllerVersion.ts +2 -2
  25. package/nrfutil/device/getCoreInfo.ts +2 -2
  26. package/nrfutil/device/getFwInfo.ts +2 -2
  27. package/nrfutil/device/getProtectionStatus.ts +2 -2
  28. package/nrfutil/device/list.ts +2 -2
  29. package/nrfutil/device/logLibVersions.ts +7 -7
  30. package/nrfutil/device/program.ts +11 -11
  31. package/nrfutil/device/recover.ts +2 -2
  32. package/nrfutil/device/reset.ts +2 -2
  33. package/nrfutil/device/setMcuState.ts +2 -2
  34. package/nrfutil/device/setProtectionStatus.ts +2 -2
  35. package/nrfutil/device/xRead.ts +2 -2
  36. package/nrfutil/modules.ts +9 -9
  37. package/nrfutil/sandbox.ts +49 -49
  38. package/nrfutil/version/jlinkVersion.test.ts +34 -34
  39. package/nrfutil/version/jlinkVersion.ts +7 -7
  40. package/nrfutil/version/moduleVersion.ts +7 -7
  41. package/nrfutil/version/version.ts +3 -3
  42. package/package.json +7 -7
  43. package/release_notes.md +21 -3
  44. package/scripts/check-app-properties.ts +12 -12
  45. package/scripts/check-for-typescript.ts +2 -2
  46. package/scripts/create-source.ts +2 -2
  47. package/scripts/esbuild-renderer.ts +8 -8
  48. package/scripts/esbuild.ts +2 -2
  49. package/scripts/get-release-numbers.ts +1 -1
  50. package/scripts/is-releasable.ts +3 -3
  51. package/scripts/nordic-publish.ts +34 -34
  52. package/scripts/nrfconnect-license.ts +6 -6
  53. package/scripts/prepare-shared-release.ts +10 -10
  54. package/src/About/Feedback.tsx +3 -3
  55. package/src/About/SupportCard.tsx +1 -1
  56. package/src/App/App.test.tsx +1 -1
  57. package/src/App/App.tsx +3 -3
  58. package/src/App/VisibilityBar.tsx +1 -1
  59. package/src/App/appLayout.ts +12 -12
  60. package/src/Button/Button.tsx +1 -1
  61. package/src/ConfirmBeforeClose/ConfirmCloseDialog.tsx +1 -1
  62. package/src/ConfirmBeforeClose/confirmBeforeCloseSlice.ts +5 -5
  63. package/src/Device/DeviceSelector/DeviceList/Device.tsx +2 -2
  64. package/src/Device/DeviceSelector/DeviceList/DeviceList.tsx +3 -3
  65. package/src/Device/DeviceSelector/DeviceList/VirtualDevices.tsx +2 -2
  66. package/src/Device/DeviceSelector/DeviceSelector.test.tsx +16 -16
  67. package/src/Device/DeviceSelector/DeviceSelector.tsx +13 -13
  68. package/src/Device/DeviceSelector/Favorite.tsx +1 -1
  69. package/src/Device/DeviceSelector/SelectDevice.tsx +1 -1
  70. package/src/Device/DeviceSetup/DeviceSetupView.tsx +1 -1
  71. package/src/Device/deviceAutoSelectSlice.ts +5 -5
  72. package/src/Device/deviceInfo/deviceInfo.ts +2 -2
  73. package/src/Device/deviceLister.test.ts +4 -4
  74. package/src/Device/deviceLister.ts +49 -51
  75. package/src/Device/deviceSetup.ts +27 -26
  76. package/src/Device/deviceSetupSlice.ts +2 -2
  77. package/src/Device/deviceSlice.ts +17 -17
  78. package/src/Device/initPacket.ts +13 -13
  79. package/src/Device/jprogOperations.ts +11 -11
  80. package/src/Device/sdfuOperations.ts +47 -47
  81. package/src/Dropdown/Dropdown.test.tsx +3 -3
  82. package/src/Dropdown/Dropdown.tsx +6 -6
  83. package/src/Dropdown/DropdownHelpers.test.ts +1 -1
  84. package/src/Dropdown/DropdownHelpers.ts +4 -4
  85. package/src/ErrorBoundary/ErrorBoundary.test.tsx +5 -5
  86. package/src/ErrorBoundary/ErrorBoundary.tsx +7 -5
  87. package/src/ErrorDialog/ErrorDialog.tsx +4 -4
  88. package/src/ErrorDialog/errorDialogSlice.ts +3 -3
  89. package/src/FactoryReset/FactoryResetButton.test.tsx +1 -1
  90. package/src/FlashMessage/FlashMessage.tsx +8 -8
  91. package/src/FlashMessage/FlashMessageSlice.ts +3 -3
  92. package/src/Group/Group.tsx +11 -11
  93. package/src/InlineInput/InlineInput.tsx +4 -4
  94. package/src/InlineInput/NumberInlineInput.tsx +13 -13
  95. package/src/InlineInput/NumberInputWithDropdown.tsx +2 -2
  96. package/src/Link/ExternalLink.tsx +1 -1
  97. package/src/Link/FileLink.tsx +1 -1
  98. package/src/Log/LogEntry.tsx +1 -1
  99. package/src/Log/logSlice.ts +1 -1
  100. package/src/Log/syncLogToStore.ts +1 -1
  101. package/src/MasonryLayout/MasonryLayout.tsx +8 -6
  102. package/src/NavBar/NavMenuItem.tsx +1 -1
  103. package/src/NumberInput/NumberInput.tsx +3 -3
  104. package/src/Parsers/shellParser.test.ts +99 -101
  105. package/src/Parsers/shellParser.ts +20 -20
  106. package/src/PseudoButton/PseudoButton.tsx +1 -1
  107. package/src/SerialPort/ConflictingSettingsDialog.tsx +11 -9
  108. package/src/SerialPort/SerialPort.test.ts +4 -4
  109. package/src/SerialPort/SerialPort.ts +22 -18
  110. package/src/Slider/Handle.tsx +3 -3
  111. package/src/Slider/Slider.test.tsx +2 -2
  112. package/src/Slider/Slider.tsx +2 -2
  113. package/src/Slider/Ticks.tsx +2 -2
  114. package/src/Slider/percentage.ts +2 -2
  115. package/src/Slider/range.ts +7 -7
  116. package/src/StartStopButton/StartStopButton.tsx +1 -1
  117. package/src/StateSelector/StateSelector.tsx +1 -1
  118. package/src/Stepper/Stepper.tsx +2 -2
  119. package/src/Toggle/Toggle.tsx +2 -2
  120. package/src/logging/appTransport.test.ts +2 -2
  121. package/src/logging/appTransport.ts +1 -1
  122. package/src/logging/describeError.test.ts +1 -1
  123. package/src/logging/describeError.ts +1 -1
  124. package/src/logging/index.ts +4 -4
  125. package/src/logging/sendInitialLogMessages.ts +2 -2
  126. package/src/store.ts +4 -5
  127. package/src/telemetry/TelemetrySender.ts +2 -2
  128. package/src/telemetry/TelemetrySenderInMain.ts +1 -2
  129. package/src/telemetry/flatObject.test.ts +1 -1
  130. package/src/telemetry/telemetry.ts +3 -3
  131. package/src/utils/classNames.test.ts +2 -2
  132. package/src/utils/packageJson.ts +4 -4
  133. package/src/utils/persistentStore.ts +19 -19
  134. package/src/utils/systemReport.ts +8 -8
  135. package/src/utils/truncateMiddle.test.ts +1 -1
  136. package/src/utils/truncateMiddle.ts +1 -1
  137. package/src/utils/udevInstalled.ts +1 -1
  138. package/src/utils/useHotKey.ts +2 -2
  139. package/src/utils/useStopwatch.test.tsx +1 -11
  140. package/src/utils/useStopwatch.ts +3 -3
  141. package/test/dispatchTo.ts +1 -1
  142. package/test/setupTests.ts +3 -3
  143. package/test/testrenderer.tsx +4 -8
  144. package/typings/generated/ipc/appDetails.d.ts.map +1 -1
  145. package/typings/generated/ipc/apps.d.ts.map +1 -1
  146. package/typings/generated/ipc/infrastructure/mainToRenderer.d.ts +1 -1
  147. package/typings/generated/ipc/infrastructure/mainToRenderer.d.ts.map +1 -1
  148. package/typings/generated/ipc/infrastructure/rendererToMain.d.ts.map +1 -1
  149. package/typings/generated/ipc/open.d.ts.map +1 -1
  150. package/typings/generated/ipc/safeStorage.d.ts +4 -5
  151. package/typings/generated/ipc/safeStorage.d.ts.map +1 -1
  152. package/typings/generated/ipc/schema/packageJson.d.ts +3 -3
  153. package/typings/generated/ipc/schema/parseJson.d.ts +1 -1
  154. package/typings/generated/ipc/schema/parseJson.d.ts.map +1 -1
  155. package/typings/generated/ipc/serialPort.d.ts +10 -11
  156. package/typings/generated/ipc/serialPort.d.ts.map +1 -1
  157. package/typings/generated/main/index.d.ts +13 -14
  158. package/typings/generated/main/index.d.ts.map +1 -1
  159. package/typings/generated/nrfutil/collectingResultParser.d.ts +1 -2
  160. package/typings/generated/nrfutil/collectingResultParser.d.ts.map +1 -1
  161. package/typings/generated/nrfutil/common.d.ts +0 -1
  162. package/typings/generated/nrfutil/common.d.ts.map +1 -1
  163. package/typings/generated/nrfutil/device/__mocks__/device.d.ts +1 -2
  164. package/typings/generated/nrfutil/device/__mocks__/device.d.ts.map +1 -1
  165. package/typings/generated/nrfutil/device/batchTypes.d.ts.map +1 -1
  166. package/typings/generated/nrfutil/device/boardController.d.ts.map +1 -1
  167. package/typings/generated/nrfutil/device/common.d.ts.map +1 -1
  168. package/typings/generated/nrfutil/device/device.d.ts +17 -17
  169. package/typings/generated/nrfutil/device/device.d.ts.map +1 -1
  170. package/typings/generated/nrfutil/device/deviceInfo.d.ts.map +1 -1
  171. package/typings/generated/nrfutil/device/erase.d.ts.map +1 -1
  172. package/typings/generated/nrfutil/device/getBoardControllerConfig.d.ts.map +1 -1
  173. package/typings/generated/nrfutil/device/getBoardControllerVersion.d.ts.map +1 -1
  174. package/typings/generated/nrfutil/device/getCoreInfo.d.ts.map +1 -1
  175. package/typings/generated/nrfutil/device/getFwInfo.d.ts.map +1 -1
  176. package/typings/generated/nrfutil/device/getProtectionStatus.d.ts.map +1 -1
  177. package/typings/generated/nrfutil/device/list.d.ts +2 -2
  178. package/typings/generated/nrfutil/device/list.d.ts.map +1 -1
  179. package/typings/generated/nrfutil/device/logLibVersions.d.ts.map +1 -1
  180. package/typings/generated/nrfutil/device/program.d.ts +0 -1
  181. package/typings/generated/nrfutil/device/program.d.ts.map +1 -1
  182. package/typings/generated/nrfutil/device/recover.d.ts.map +1 -1
  183. package/typings/generated/nrfutil/device/reset.d.ts.map +1 -1
  184. package/typings/generated/nrfutil/device/setMcuState.d.ts.map +1 -1
  185. package/typings/generated/nrfutil/device/setProtectionStatus.d.ts +1 -1
  186. package/typings/generated/nrfutil/device/setProtectionStatus.d.ts.map +1 -1
  187. package/typings/generated/nrfutil/device/xRead.d.ts.map +1 -1
  188. package/typings/generated/nrfutil/modules.d.ts.map +1 -1
  189. package/typings/generated/nrfutil/nrfutilLogger.d.ts.map +1 -1
  190. package/typings/generated/nrfutil/sandbox.d.ts +4 -5
  191. package/typings/generated/nrfutil/sandbox.d.ts.map +1 -1
  192. package/typings/generated/nrfutil/version/jlinkVersion.d.ts.map +1 -1
  193. package/typings/generated/nrfutil/version/moduleVersion.d.ts +1 -1
  194. package/typings/generated/nrfutil/version/moduleVersion.d.ts.map +1 -1
  195. package/typings/generated/nrfutil/version/version.d.ts.map +1 -1
  196. package/typings/generated/scripts/check-app-properties.d.ts.map +1 -1
  197. package/typings/generated/scripts/esbuild-renderer.d.ts.map +1 -1
  198. package/typings/generated/scripts/get-release-numbers.d.ts.map +1 -1
  199. package/typings/generated/scripts/latest-changelog-entry.d.ts.map +1 -1
  200. package/typings/generated/src/About/About.d.ts.map +1 -1
  201. package/typings/generated/src/About/ApplicationCard.d.ts +0 -1
  202. package/typings/generated/src/About/ApplicationCard.d.ts.map +1 -1
  203. package/typings/generated/src/About/DeviceCard.d.ts +0 -1
  204. package/typings/generated/src/About/DeviceCard.d.ts.map +1 -1
  205. package/typings/generated/src/About/DocumentationCard.d.ts.map +1 -1
  206. package/typings/generated/src/About/DocumentationSection.d.ts.map +1 -1
  207. package/typings/generated/src/About/Feedback.d.ts +1 -2
  208. package/typings/generated/src/About/Feedback.d.ts.map +1 -1
  209. package/typings/generated/src/About/Section.d.ts.map +1 -1
  210. package/typings/generated/src/About/SupportCard.d.ts +1 -2
  211. package/typings/generated/src/About/SupportCard.d.ts.map +1 -1
  212. package/typings/generated/src/About/sendFeedback.d.ts.map +1 -1
  213. package/typings/generated/src/About/shortcutSlice.d.ts +1 -1
  214. package/typings/generated/src/About/shortcutSlice.d.ts.map +1 -1
  215. package/typings/generated/src/App/App.d.ts +1 -1
  216. package/typings/generated/src/App/App.d.ts.map +1 -1
  217. package/typings/generated/src/App/ConnectedToStore.d.ts +1 -1
  218. package/typings/generated/src/App/ConnectedToStore.d.ts.map +1 -1
  219. package/typings/generated/src/App/VisibilityBar.d.ts +0 -1
  220. package/typings/generated/src/App/VisibilityBar.d.ts.map +1 -1
  221. package/typings/generated/src/App/appLayout.d.ts +1 -1
  222. package/typings/generated/src/App/appLayout.d.ts.map +1 -1
  223. package/typings/generated/src/Card/Card.d.ts.map +1 -1
  224. package/typings/generated/src/ConfirmBeforeClose/ConfirmCloseDialog.d.ts +0 -1
  225. package/typings/generated/src/ConfirmBeforeClose/ConfirmCloseDialog.d.ts.map +1 -1
  226. package/typings/generated/src/ConfirmBeforeClose/confirmBeforeCloseSlice.d.ts +2 -3
  227. package/typings/generated/src/ConfirmBeforeClose/confirmBeforeCloseSlice.d.ts.map +1 -1
  228. package/typings/generated/src/Device/BrokenDeviceDialog/BrokenDeviceDialog.d.ts +0 -1
  229. package/typings/generated/src/Device/BrokenDeviceDialog/BrokenDeviceDialog.d.ts.map +1 -1
  230. package/typings/generated/src/Device/BrokenDeviceDialog/brokenDeviceDialogSlice.d.ts +1 -1
  231. package/typings/generated/src/Device/BrokenDeviceDialog/brokenDeviceDialogSlice.d.ts.map +1 -1
  232. package/typings/generated/src/Device/DeviceSelector/BasicDeviceInfo.d.ts.map +1 -1
  233. package/typings/generated/src/Device/DeviceSelector/DeviceList/BrokenDevice.d.ts +0 -1
  234. package/typings/generated/src/Device/DeviceSelector/DeviceList/BrokenDevice.d.ts.map +1 -1
  235. package/typings/generated/src/Device/DeviceSelector/DeviceList/Device.d.ts +0 -1
  236. package/typings/generated/src/Device/DeviceSelector/DeviceList/Device.d.ts.map +1 -1
  237. package/typings/generated/src/Device/DeviceSelector/DeviceList/MoreDeviceInfo.d.ts +0 -1
  238. package/typings/generated/src/Device/DeviceSelector/DeviceList/MoreDeviceInfo.d.ts.map +1 -1
  239. package/typings/generated/src/Device/DeviceSelector/DeviceList/RenameDevice.d.ts +0 -1
  240. package/typings/generated/src/Device/DeviceSelector/DeviceList/RenameDevice.d.ts.map +1 -1
  241. package/typings/generated/src/Device/DeviceSelector/DeviceList/VirtualDevices.d.ts +0 -1
  242. package/typings/generated/src/Device/DeviceSelector/DeviceList/VirtualDevices.d.ts.map +1 -1
  243. package/typings/generated/src/Device/DeviceSelector/DeviceSelector.d.ts +0 -1
  244. package/typings/generated/src/Device/DeviceSelector/DeviceSelector.d.ts.map +1 -1
  245. package/typings/generated/src/Device/DeviceSelector/DisconnectDevice.d.ts +0 -1
  246. package/typings/generated/src/Device/DeviceSelector/DisconnectDevice.d.ts.map +1 -1
  247. package/typings/generated/src/Device/DeviceSelector/SelectDevice.d.ts +0 -1
  248. package/typings/generated/src/Device/DeviceSelector/SelectDevice.d.ts.map +1 -1
  249. package/typings/generated/src/Device/DeviceSelector/SelectedDevice.d.ts +0 -1
  250. package/typings/generated/src/Device/DeviceSelector/SelectedDevice.d.ts.map +1 -1
  251. package/typings/generated/src/Device/DeviceSelector/SelectedVirtualDevice.d.ts +0 -1
  252. package/typings/generated/src/Device/DeviceSelector/SelectedVirtualDevice.d.ts.map +1 -1
  253. package/typings/generated/src/Device/DeviceSetup/DeviceSetupView.d.ts +0 -1
  254. package/typings/generated/src/Device/DeviceSetup/DeviceSetupView.d.ts.map +1 -1
  255. package/typings/generated/src/Device/deviceAutoSelectSlice.d.ts +1 -1
  256. package/typings/generated/src/Device/deviceAutoSelectSlice.d.ts.map +1 -1
  257. package/typings/generated/src/Device/deviceInfo/deviceInfo.d.ts +0 -1
  258. package/typings/generated/src/Device/deviceInfo/deviceInfo.d.ts.map +1 -1
  259. package/typings/generated/src/Device/deviceLister.d.ts.map +1 -1
  260. package/typings/generated/src/Device/deviceSetup.d.ts +0 -1
  261. package/typings/generated/src/Device/deviceSetup.d.ts.map +1 -1
  262. package/typings/generated/src/Device/deviceSetupSlice.d.ts +3 -3
  263. package/typings/generated/src/Device/deviceSetupSlice.d.ts.map +1 -1
  264. package/typings/generated/src/Device/deviceSlice.d.ts +1 -1
  265. package/typings/generated/src/Device/deviceSlice.d.ts.map +1 -1
  266. package/typings/generated/src/Device/initPacket.d.ts +0 -1
  267. package/typings/generated/src/Device/initPacket.d.ts.map +1 -1
  268. package/typings/generated/src/Device/jprogOperations.d.ts.map +1 -1
  269. package/typings/generated/src/Device/sdfuOperations.d.ts +1 -2
  270. package/typings/generated/src/Device/sdfuOperations.d.ts.map +1 -1
  271. package/typings/generated/src/Dialog/Dialog.d.ts +3 -3
  272. package/typings/generated/src/Dialog/Dialog.d.ts.map +1 -1
  273. package/typings/generated/src/Dropdown/Dropdown.d.ts.map +1 -1
  274. package/typings/generated/src/Dropdown/DropdownHelpers.d.ts.map +1 -1
  275. package/typings/generated/src/ErrorBoundary/ErrorBoundary.d.ts.map +1 -1
  276. package/typings/generated/src/ErrorDialog/ErrorDialog.d.ts +0 -1
  277. package/typings/generated/src/ErrorDialog/ErrorDialog.d.ts.map +1 -1
  278. package/typings/generated/src/ErrorDialog/errorDialogSlice.d.ts +1 -1
  279. package/typings/generated/src/ErrorDialog/errorDialogSlice.d.ts.map +1 -1
  280. package/typings/generated/src/FlashMessage/FlashMessage.d.ts +0 -1
  281. package/typings/generated/src/FlashMessage/FlashMessage.d.ts.map +1 -1
  282. package/typings/generated/src/FlashMessage/FlashMessageSlice.d.ts +1 -1
  283. package/typings/generated/src/FlashMessage/FlashMessageSlice.d.ts.map +1 -1
  284. package/typings/generated/src/Group/Group.d.ts +8 -8
  285. package/typings/generated/src/Group/Group.d.ts.map +1 -1
  286. package/typings/generated/src/InlineInput/InlineInput.d.ts.map +1 -1
  287. package/typings/generated/src/InlineInput/NumberInlineInput.d.ts +0 -1
  288. package/typings/generated/src/InlineInput/NumberInlineInput.d.ts.map +1 -1
  289. package/typings/generated/src/InlineInput/NumberInputWithDropdown.d.ts.map +1 -1
  290. package/typings/generated/src/Link/ExternalLink.d.ts +1 -2
  291. package/typings/generated/src/Link/ExternalLink.d.ts.map +1 -1
  292. package/typings/generated/src/Link/FileLink.d.ts +1 -2
  293. package/typings/generated/src/Link/FileLink.d.ts.map +1 -1
  294. package/typings/generated/src/Log/LogEntry.d.ts +0 -1
  295. package/typings/generated/src/Log/LogEntry.d.ts.map +1 -1
  296. package/typings/generated/src/Log/LogViewer.d.ts +0 -1
  297. package/typings/generated/src/Log/LogViewer.d.ts.map +1 -1
  298. package/typings/generated/src/Log/logSlice.d.ts +1 -1
  299. package/typings/generated/src/Log/logSlice.d.ts.map +1 -1
  300. package/typings/generated/src/Log/syncLogToStore.d.ts.map +1 -1
  301. package/typings/generated/src/Main/Main.d.ts.map +1 -1
  302. package/typings/generated/src/MasonryLayout/MasonryLayout.d.ts.map +1 -1
  303. package/typings/generated/src/NavBar/NavBar.d.ts.map +1 -1
  304. package/typings/generated/src/NavBar/NavMenu.d.ts +0 -1
  305. package/typings/generated/src/NavBar/NavMenu.d.ts.map +1 -1
  306. package/typings/generated/src/NoticeBox/NoticeBox.d.ts.map +1 -1
  307. package/typings/generated/src/NumberInput/NumberInput.d.ts +8 -8
  308. package/typings/generated/src/NumberInput/NumberInput.d.ts.map +1 -1
  309. package/typings/generated/src/Overlay/Overlay.d.ts +2 -2
  310. package/typings/generated/src/Overlay/Overlay.d.ts.map +1 -1
  311. package/typings/generated/src/Parsers/shellParser.d.ts +1 -1
  312. package/typings/generated/src/Parsers/shellParser.d.ts.map +1 -1
  313. package/typings/generated/src/Parsers/shellParser.test.d.ts.map +1 -1
  314. package/typings/generated/src/PseudoButton/PseudoButton.d.ts +4 -4
  315. package/typings/generated/src/PseudoButton/PseudoButton.d.ts.map +1 -1
  316. package/typings/generated/src/SerialPort/ConflictingSettingsDialog.d.ts +0 -1
  317. package/typings/generated/src/SerialPort/ConflictingSettingsDialog.d.ts.map +1 -1
  318. package/typings/generated/src/SerialPort/SerialPort.d.ts +0 -1
  319. package/typings/generated/src/SerialPort/SerialPort.d.ts.map +1 -1
  320. package/typings/generated/src/SidePanel/SidePanel.d.ts +1 -1
  321. package/typings/generated/src/SidePanel/SidePanel.d.ts.map +1 -1
  322. package/typings/generated/src/Slider/factor.d.ts.map +1 -1
  323. package/typings/generated/src/Slider/percentage.d.ts.map +1 -1
  324. package/typings/generated/src/Slider/range.d.ts.map +1 -1
  325. package/typings/generated/src/Spinner/Spinner.d.ts +2 -3
  326. package/typings/generated/src/Spinner/Spinner.d.ts.map +1 -1
  327. package/typings/generated/src/StateSelector/StateSelector.d.ts.map +1 -1
  328. package/typings/generated/src/Stepper/Stepper.d.ts +0 -1
  329. package/typings/generated/src/Stepper/Stepper.d.ts.map +1 -1
  330. package/typings/generated/src/logging/describeError.d.ts.map +1 -1
  331. package/typings/generated/src/logging/index.d.ts.map +1 -1
  332. package/typings/generated/src/logging/logBuffer.d.ts.map +1 -1
  333. package/typings/generated/src/store.d.ts +15 -39
  334. package/typings/generated/src/store.d.ts.map +1 -1
  335. package/typings/generated/src/telemetry/TelemetrySender.d.ts.map +1 -1
  336. package/typings/generated/src/telemetry/TelemetrySenderInMain.d.ts.map +1 -1
  337. package/typings/generated/src/telemetry/TelemetrySenderInRenderer.d.ts.map +1 -1
  338. package/typings/generated/src/telemetry/flatObject.d.ts.map +1 -1
  339. package/typings/generated/src/telemetry/simplifyDevice.d.ts.map +1 -1
  340. package/typings/generated/src/telemetry/telemetry.d.ts +1 -1
  341. package/typings/generated/src/telemetry/telemetry.d.ts.map +1 -1
  342. package/typings/generated/src/utils/appDirs.d.ts.map +1 -1
  343. package/typings/generated/src/utils/classNames.d.ts.map +1 -1
  344. package/typings/generated/src/utils/packageJson.d.ts.map +1 -1
  345. package/typings/generated/src/utils/persistentStore.d.ts +1 -1
  346. package/typings/generated/src/utils/persistentStore.d.ts.map +1 -1
  347. package/typings/generated/src/utils/systemReport.d.ts.map +1 -1
  348. package/typings/generated/src/utils/truncateMiddle.d.ts.map +1 -1
  349. package/typings/generated/src/utils/useFocusedOnVisible.d.ts +0 -1
  350. package/typings/generated/src/utils/useFocusedOnVisible.d.ts.map +1 -1
  351. package/typings/generated/src/utils/useHotKey.d.ts.map +1 -1
  352. package/typings/generated/src/utils/useStopwatch.d.ts.map +1 -1
  353. package/typings/generated/test/dispatchTo.d.ts +1 -1
  354. package/typings/generated/test/dispatchTo.d.ts.map +1 -1
  355. package/typings/generated/test/testrenderer.d.ts +2 -1
  356. package/typings/generated/test/testrenderer.d.ts.map +1 -1
@@ -33,15 +33,15 @@ export type DiscriminatedVersion =
33
33
  | StringVersion;
34
34
 
35
35
  export const isSemanticVersion = (
36
- version?: DiscriminatedVersion
36
+ version?: DiscriminatedVersion,
37
37
  ): version is SemanticVersion => version?.versionFormat === 'semantic';
38
38
 
39
39
  export const isIncrementalVersion = (
40
- version?: DiscriminatedVersion
40
+ version?: DiscriminatedVersion,
41
41
  ): version is IncrementalVersion => version?.versionFormat === 'incremental';
42
42
 
43
43
  export const isStringVersion = (
44
- version?: DiscriminatedVersion
44
+ version?: DiscriminatedVersion,
45
45
  ): version is StringVersion => version?.versionFormat === 'string';
46
46
 
47
47
  export const versionToString = (version: DiscriminatedVersion) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nordicsemiconductor/pc-nrfconnect-shared",
3
- "version": "230.0.0",
3
+ "version": "231.0.0",
4
4
  "description": "Shared commodities for developing pc-nrfconnect-* packages",
5
5
  "repository": {
6
6
  "type": "git",
@@ -53,8 +53,6 @@
53
53
  "@types/shasum": "1.0.0",
54
54
  "@types/triple-beam": "1.3.2",
55
55
  "@types/uuid": "8.3.4",
56
- "@typescript-eslint/eslint-plugin": "5.57.1",
57
- "@typescript-eslint/parser": "5.57.1",
58
56
  "@xterm/headless": "^5.5.0",
59
57
  "adm-zip": "^0.5.5",
60
58
  "applicationinsights": "^2.9.6",
@@ -67,14 +65,15 @@
67
65
  "esbuild": "0.19.2",
68
66
  "esbuild-sass-plugin": "2.13.0",
69
67
  "esbuild-style-plugin": "1.6.2",
70
- "eslint": "8.37.0",
68
+ "eslint": "^8.57.1",
71
69
  "eslint-config-airbnb": "19.0.4",
72
70
  "eslint-config-prettier": "8.8.0",
73
71
  "eslint-import-resolver-typescript": "3.5.5",
74
72
  "eslint-plugin-import": "2.27.5",
73
+ "eslint-plugin-jsonc": "^2.20.1",
75
74
  "eslint-plugin-jsx-a11y": "6.7.1",
76
75
  "eslint-plugin-md": "^1.0.19",
77
- "eslint-plugin-prettier": "^4.2.1",
76
+ "eslint-plugin-prettier": "^5.5.4",
78
77
  "eslint-plugin-react": "7.32.2",
79
78
  "eslint-plugin-react-hooks": "4.6.0",
80
79
  "eslint-plugin-simple-import-sort": "10.0.0",
@@ -93,7 +92,7 @@
93
92
  "nrf-intel-hex": "^1.4.0",
94
93
  "postcss": "8.4.24",
95
94
  "postcss-modules": "^6.0.0",
96
- "prettier": "2.8.8",
95
+ "prettier": "^3.6.2",
97
96
  "prettier-plugin-tailwindcss": "^0.3.0",
98
97
  "prettysize": "2.0.0",
99
98
  "protobufjs": "^7.0.0",
@@ -117,7 +116,8 @@
117
116
  "tailwindcss": "3.3.2",
118
117
  "tree-kill-promise": "^3.0.14",
119
118
  "tsx": "^4.20.3",
120
- "typescript": "4.9.5",
119
+ "typescript": "^5.9.2",
120
+ "typescript-eslint": "^8.45.0",
121
121
  "util": "0.12.5",
122
122
  "uuid": "8.3.2",
123
123
  "winston": "3.8.2",
package/release_notes.md CHANGED
@@ -1,4 +1,22 @@
1
- ### Added
1
+ ### Changed
2
2
 
3
- - Property `nrfConnectForDesktop.fixedSize` an app can specify, to have a
4
- window with a fixed size, like the Quick Start app.
3
+ - Updated Prettier 2.8.8 3.6.2
4
+ - Updated typescript-eslint 5.57.1 8.45.0
5
+ - Updated TypeScript 4.9.5 → 5.9.2
6
+
7
+ ### Steps to upgrade when using this package
8
+
9
+ - The new version of prettier will lead to some formatting changes, especially
10
+ added commas and changed whitespaces, but most of those should be
11
+ automatically solvable by running `npm run check:lint -- --fix`.
12
+ - Some linting rules slightly changed and you may need to update some
13
+ constructs. E.g. if in a `catch` block the exception is intentionally not
14
+ used, then you must now remove it: `try {…} catch (e) {/* Ignore */}` →
15
+ `try {…} catch {/* Ignore */}`.
16
+ - Run `npm run check:types` to check if the new TypeScript version breaks the
17
+ type checks. As described at
18
+ https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-9.html#libdts-changes,
19
+ a typical problem occurs when you use `Buffer`. First run
20
+ `npm update @types/node --save-dev`, because that might already fix most
21
+ problems. For the rest, also first check what is written in the above linked
22
+ section of the release notes of TypeScript 5.9.
@@ -39,10 +39,10 @@ const mustBeEmpty = (array: string[], errorMessage: string) => {
39
39
  const mustContain = (
40
40
  existingEntries: readonly string[],
41
41
  mandatoryEntries: string[],
42
- errorMessage: string
42
+ errorMessage: string,
43
43
  ) => {
44
44
  const missingFileEntries = mandatoryEntries.filter(
45
- entry => !existingEntries.includes(entry)
45
+ entry => !existingEntries.includes(entry),
46
46
  );
47
47
 
48
48
  mustBeEmpty(missingFileEntries, errorMessage);
@@ -51,11 +51,11 @@ const mustContain = (
51
51
  const mustContainOneOf = (
52
52
  existingEntries: readonly string[],
53
53
  oneOfTheseEntriesIsMandatory: string[],
54
- errorMessage: string
54
+ errorMessage: string,
55
55
  ) => {
56
56
  if (
57
57
  !oneOfTheseEntriesIsMandatory.some(entry =>
58
- existingEntries.includes(entry)
58
+ existingEntries.includes(entry),
59
59
  )
60
60
  ) {
61
61
  fail(`${errorMessage}: ${format(oneOfTheseEntriesIsMandatory)}`);
@@ -84,7 +84,7 @@ const checkRepoUrl = (packageJson: PackageJsonApp) => {
84
84
 
85
85
  if (stripped(realGitUrl) !== stripped(declaredGitUrl)) {
86
86
  fail(
87
- `package.json says the repository is located at \`${declaredGitUrl}\` but \`git remote get-url origin\` says it is at \`${realGitUrl}\`.`
87
+ `package.json says the repository is located at \`${declaredGitUrl}\` but \`git remote get-url origin\` says it is at \`${realGitUrl}\`.`,
88
88
  );
89
89
  }
90
90
  };
@@ -105,19 +105,19 @@ const checkFileProperty = (packageJson: PackageJsonApp) => {
105
105
  mustContain(
106
106
  packageJson.files ?? [],
107
107
  ['LICENSE', 'dist/', 'Changelog.md'],
108
- 'These entries are missing in the property `files` in package.json'
108
+ 'These entries are missing in the property `files` in package.json',
109
109
  );
110
110
 
111
111
  mustContainOneOf(
112
112
  packageJson.files ?? [],
113
113
  ['resources/*', 'resources/icon.*', 'resources/'],
114
- 'One of these entries must be in the property `files` in package.json'
114
+ 'One of these entries must be in the property `files` in package.json',
115
115
  );
116
116
  };
117
117
 
118
118
  const readAndCheckPackageJson = () => {
119
119
  const packageJsonResult = parsePackageJsonApp(
120
- readFileSync('./package.json', 'utf8')
120
+ readFileSync('./package.json', 'utf8'),
121
121
  );
122
122
 
123
123
  if (!packageJsonResult.success) {
@@ -135,7 +135,7 @@ const readAndCheckPackageJson = () => {
135
135
 
136
136
  const checkChangelog = (
137
137
  packageJson: PackageJsonApp,
138
- checkChangelogHasCurrentEntry: boolean
138
+ checkChangelogHasCurrentEntry: boolean,
139
139
  ) => {
140
140
  if (!existsSync('./Changelog.md')) {
141
141
  fail('The mandatory file `Changelog.md` is missing.');
@@ -149,7 +149,7 @@ const checkChangelog = (
149
149
  const latestChangelogEntry = getLatestEntry();
150
150
  if (!latestChangelogEntry.header.includes(packageJson.version)) {
151
151
  fail(
152
- `Found no entry for the current version packageJson.version ${packageJson.version} in \`Changelog.md\`.`
152
+ `Found no entry for the current version packageJson.version ${packageJson.version} in \`Changelog.md\`.`,
153
153
  );
154
154
  }
155
155
  }
@@ -158,7 +158,7 @@ const checkChangelog = (
158
158
  const filesIn = (directory: string) => {
159
159
  try {
160
160
  return readdirSync(directory);
161
- } catch (error) {
161
+ } catch {
162
162
  fail(`Unable to read directory \`${directory}\`.`);
163
163
  // Unreachable, but not understood by Typescript
164
164
  throw new Error();
@@ -169,7 +169,7 @@ const checkMandatoryResources = () => {
169
169
  mustContain(
170
170
  filesIn('./resources'),
171
171
  ['icon.svg', 'icon.icns', 'icon.ico', 'icon.png'],
172
- 'In the directory `resources` these files are missing'
172
+ 'In the directory `resources` these files are missing',
173
173
  );
174
174
  };
175
175
 
@@ -17,7 +17,7 @@ const launchNextCommand = () => {
17
17
  spawnSync(command, args, {
18
18
  shell: true,
19
19
  stdio: 'inherit',
20
- }).status ?? undefined
20
+ }).status ?? undefined,
21
21
  );
22
22
  };
23
23
 
@@ -27,7 +27,7 @@ const assertNoTypeScriptFilesExist = () => {
27
27
  klaw('.', { filter: excludeNodeModules }).on('data', ({ path }) => {
28
28
  if (path.endsWith('.ts') || path.endsWith('.tsx')) {
29
29
  console.log(
30
- "Your project contains TypeScript files (with the file ending .ts or .tsx), so it also must contain a file 'tsconfig.json'.\n"
30
+ "Your project contains TypeScript files (with the file ending .ts or .tsx), so it also must contain a file 'tsconfig.json'.\n",
31
31
  );
32
32
  process.exit(1);
33
33
  }
@@ -33,12 +33,12 @@ const parseOptions = () =>
33
33
  .addOption(
34
34
  new Option('-a, --access-level <access level>', 'Access level')
35
35
  .choices(validAccessLevels)
36
- .makeOptionMandatory()
36
+ .makeOptionMandatory(),
37
37
  )
38
38
  .requiredOption('-n, --name <name>', 'Name, e.g. "Release Test"')
39
39
  .requiredOption(
40
40
  '-d, --description <description>',
41
- 'Longer description, e.g. "Versions we intend to release next"'
41
+ 'Longer description, e.g. "Versions we intend to release next"',
42
42
  )
43
43
  .parse()
44
44
  .opts();
@@ -18,13 +18,13 @@ const packageJson = JSON.parse(fs.readFileSync('package.json', 'utf8'));
18
18
 
19
19
  const projectSpecificTailwindConfigPath = path.join(
20
20
  process.cwd(),
21
- 'tailwind.config.js'
21
+ 'tailwind.config.js',
22
22
  );
23
23
  const tailwindConfig = () =>
24
24
  fs.existsSync(projectSpecificTailwindConfigPath)
25
25
  ? projectSpecificTailwindConfigPath
26
26
  : require.resolve(
27
- '@nordicsemiconductor/pc-nrfconnect-shared/config/tailwind.config.js'
27
+ '@nordicsemiconductor/pc-nrfconnect-shared/config/tailwind.config.js',
28
28
  );
29
29
 
30
30
  type AdditionalOptions = Required<Pick<BuildOptions, 'entryPoints'>> &
@@ -37,7 +37,7 @@ const outfileOrDir = (additionalOptions: AdditionalOptions) =>
37
37
 
38
38
  const options = (
39
39
  additionalOptions: AdditionalOptions,
40
- externalReact: boolean
40
+ externalReact: boolean,
41
41
  ) =>
42
42
  ({
43
43
  format: 'iife',
@@ -98,7 +98,7 @@ const options = (
98
98
  const [, shortpath] = filter.exec(args.path)!; // eslint-disable-line @typescript-eslint/no-non-null-assertion
99
99
  const resolvedPath = `${path.join(
100
100
  args.resolveDir,
101
- shortpath
101
+ shortpath,
102
102
  )}r`;
103
103
  return { path: resolvedPath };
104
104
  });
@@ -107,7 +107,7 @@ const options = (
107
107
  const filePath = args.path.replace('.svgr', '.svg');
108
108
  const svg = await fs.promises.readFile(
109
109
  filePath,
110
- 'utf8'
110
+ 'utf8',
111
111
  );
112
112
  const plugins = ['@svgr/plugin-jsx'];
113
113
  const contents = await svgr(svg, { plugins });
@@ -120,15 +120,15 @@ const options = (
120
120
  },
121
121
  ],
122
122
  ...additionalOptions,
123
- } satisfies BuildOptions);
123
+ }) satisfies BuildOptions;
124
124
 
125
125
  export const build = async (
126
126
  additionalOptions: AdditionalOptions,
127
- { externalReact = false } = {}
127
+ { externalReact = false } = {},
128
128
  ) => {
129
129
  if (process.argv.includes('--watch')) {
130
130
  const context = await esbuild.context(
131
- options(additionalOptions, externalReact)
131
+ options(additionalOptions, externalReact),
132
132
  );
133
133
 
134
134
  await context.rebuild();
@@ -69,9 +69,9 @@ const copyFiles = () => {
69
69
 
70
70
  fs.copyFileSync(
71
71
  fileInShared(
72
- 'fw/bootloader/graviton_bootloader_v1.0.1-[nRF5_SDK_15.0.1-1.alpha_f76d012].zip'
72
+ 'fw/bootloader/graviton_bootloader_v1.0.1-[nRF5_SDK_15.0.1-1.alpha_f76d012].zip',
73
73
  ),
74
- './fw/graviton_bootloader_v1.0.1-[nRF5_SDK_15.0.1-1.alpha_f76d012].zip'
74
+ './fw/graviton_bootloader_v1.0.1-[nRF5_SDK_15.0.1-1.alpha_f76d012].zip',
75
75
  );
76
76
  }
77
77
  };
@@ -18,7 +18,7 @@ const getLatestReleaseName = () => {
18
18
  export default (latestReleaseName = getLatestReleaseName()) => {
19
19
  const latest = Number(
20
20
  /^v(?<versionNumber>\d+)$/.exec(latestReleaseName)?.groups
21
- ?.versionNumber
21
+ ?.versionNumber,
22
22
  );
23
23
 
24
24
  return { latest, next: latest + 1 };
@@ -25,7 +25,7 @@ const fail = (message: string) => {
25
25
  const assertPackageJsonIsCorrect = (expectedVersionNumber: number) => {
26
26
  if (packageJson.version !== `${expectedVersionNumber}.0.0`) {
27
27
  fail(
28
- `Version number in package.json must be '${expectedVersionNumber}.0.0' but is '${packageJson.version}'`
28
+ `Version number in package.json must be '${expectedVersionNumber}.0.0' but is '${packageJson.version}'`,
29
29
  );
30
30
  }
31
31
  };
@@ -44,7 +44,7 @@ const assertLatestHeaderIsCorrect = (expectedVersionNumber: number) => {
44
44
 
45
45
  if (expectedHeaderline !== actualHeaderline) {
46
46
  fail(
47
- `Latest entry in Changelog.md is not as expected:\n Expected: ${expectedHeaderline}\n Actual: ${actualHeaderline}`
47
+ `Latest entry in Changelog.md is not as expected:\n Expected: ${expectedHeaderline}\n Actual: ${actualHeaderline}`,
48
48
  );
49
49
  }
50
50
  };
@@ -61,7 +61,7 @@ const main = () => {
61
61
  assertChangelogIsCorrect(releaseNumbers.next);
62
62
 
63
63
  console.log(
64
- `The currently released version is ${releaseNumbers.latest}, so the next one will be ${releaseNumbers.next}.\n`
64
+ `The currently released version is ${releaseNumbers.latest}, so the next one will be ${releaseNumbers.next}.\n`,
65
65
  );
66
66
  };
67
67
 
@@ -37,17 +37,17 @@ let client: Client;
37
37
  abstract class Client {
38
38
  abstract sourceUrl: string;
39
39
 
40
- initialise(options: Options): Promise<void> | void {} // eslint-disable-line @typescript-eslint/no-unused-vars
40
+ initialise(options: Options): Promise<void> | void {} // eslint-disable-line no-empty-function,@typescript-eslint/no-unused-vars
41
41
  abstract end(): void;
42
42
 
43
43
  abstract download(filename: string): Promise<string>;
44
44
  abstract uploadContent(
45
- content: Buffer,
46
- remoteFilename: string
45
+ content: Buffer<ArrayBuffer>,
46
+ remoteFilename: string,
47
47
  ): Promise<void>;
48
48
  abstract uploadLocalFile(
49
49
  localFilename: string,
50
- remoteFilename: string
50
+ remoteFilename: string,
51
51
  ): Promise<void>;
52
52
  }
53
53
 
@@ -89,7 +89,7 @@ class FtpClient extends Client {
89
89
  connect = () =>
90
90
  new Promise<void>((resolve, reject) => {
91
91
  console.log(
92
- `Connecting to ftp://${this.user}@${this.host}:${this.port}`
92
+ `Connecting to ftp://${this.user}@${this.host}:${this.port}`,
93
93
  );
94
94
  this.ftpClient.once('error', err => {
95
95
  this.ftpClient.removeAllListeners('ready');
@@ -115,8 +115,8 @@ class FtpClient extends Client {
115
115
  reject(
116
116
  new Error(
117
117
  '\nError: Failed to change to directory. ' +
118
- 'Check whether it exists on the FTP server.'
119
- )
118
+ 'Check whether it exists on the FTP server.',
119
+ ),
120
120
  );
121
121
  } else {
122
122
  resolve();
@@ -145,12 +145,12 @@ class FtpClient extends Client {
145
145
 
146
146
  upload = (
147
147
  contentOrLocalFilename: string | Buffer,
148
- remoteFilename: string
148
+ remoteFilename: string,
149
149
  ) =>
150
150
  new Promise<void>((resolve, reject) => {
151
151
  console.log(`Uploading file ${remoteFilename}`);
152
152
  this.ftpClient.put(contentOrLocalFilename, remoteFilename, err =>
153
- err ? reject(err) : resolve()
153
+ err ? reject(err) : resolve(),
154
154
  );
155
155
  });
156
156
 
@@ -176,7 +176,7 @@ class ArtifactoryClient extends Client {
176
176
 
177
177
  if (this.token == null) {
178
178
  throw new Error(
179
- 'The environment variable ARTIFACTORY_TOKEN must be set.'
179
+ 'The environment variable ARTIFACTORY_TOKEN must be set.',
180
180
  );
181
181
  }
182
182
 
@@ -220,11 +220,11 @@ class ArtifactoryClient extends Client {
220
220
  if (res.ok || res.status === 404) return;
221
221
 
222
222
  this.filesWhereCacheZappingFailed.push(
223
- `${this.folderName}/${filename}`
223
+ `${this.folderName}/${filename}`,
224
224
  );
225
225
  };
226
226
 
227
- upload = async (content: Buffer, remoteFilename: string) => {
227
+ upload = async (content: Buffer<ArrayBuffer>, remoteFilename: string) => {
228
228
  const url = `${this.uploadUrl}/${remoteFilename}`;
229
229
  const res = await fetch(url, {
230
230
  method: 'PUT',
@@ -239,7 +239,7 @@ class ArtifactoryClient extends Client {
239
239
  await this.zapCache(remoteFilename);
240
240
  };
241
241
 
242
- uploadContent = (content: Buffer, remoteFilename: string) => {
242
+ uploadContent = (content: Buffer<ArrayBuffer>, remoteFilename: string) => {
243
243
  console.log(`Uploading content for ${remoteFilename}`);
244
244
 
245
245
  return this.upload(content, remoteFilename);
@@ -247,7 +247,7 @@ class ArtifactoryClient extends Client {
247
247
 
248
248
  uploadLocalFile = (localFilename: string, remoteFilename: string) => {
249
249
  console.log(
250
- `Uploading local file ${localFilename} as ${remoteFilename}`
250
+ `Uploading local file ${localFilename} as ${remoteFilename}`,
251
251
  );
252
252
 
253
253
  return this.upload(fs.readFileSync(localFilename), remoteFilename);
@@ -256,14 +256,14 @@ class ArtifactoryClient extends Client {
256
256
  end = () => {
257
257
  if (this.filesWhereCacheZappingFailed.length > 0) {
258
258
  console.warn(
259
- `\nCache zapping failed for these files, probably because your Artifactory token lacks permission for it:`
259
+ `\nCache zapping failed for these files, probably because your Artifactory token lacks permission for it:`,
260
260
  );
261
261
  this.filesWhereCacheZappingFailed.forEach(file => {
262
262
  console.warn(`- ${file}`);
263
263
  });
264
264
 
265
265
  console.warn(
266
- '\nGo to https://github.com/NordicSemiconductor/pc-nrfconnect-shared/actions/workflows/zap-cache.yml, run the workflow and paste this string as the list of paths to zap them manually:'
266
+ '\nGo to https://github.com/NordicSemiconductor/pc-nrfconnect-shared/actions/workflows/zap-cache.yml, run the workflow and paste this string as the list of paths to zap them manually:',
267
267
  );
268
268
  console.warn(' ', this.filesWhereCacheZappingFailed.join(', '));
269
269
  }
@@ -290,7 +290,7 @@ const isAccessLevel = (value: string): value is AccessLevel =>
290
290
 
291
291
  const splitSourceAndAccessLevel = (sourceAndMaybeAccessLevel: string) => {
292
292
  const match = sourceAndMaybeAccessLevel.match(
293
- /(?<source>.*?)\s*\((?<accessLevel>.*)\)/
293
+ /(?<source>.*?)\s*\((?<accessLevel>.*)\)/,
294
294
  );
295
295
 
296
296
  if (match == null) {
@@ -302,8 +302,8 @@ const splitSourceAndAccessLevel = (sourceAndMaybeAccessLevel: string) => {
302
302
  if (!isAccessLevel(accessLevel)) {
303
303
  throw new Error(
304
304
  `The specified access level "${accessLevel}" must be one of ${validAccessLevels.join(
305
- ', '
306
- )}.`
305
+ ', ',
306
+ )}.`,
307
307
  );
308
308
  }
309
309
 
@@ -326,19 +326,19 @@ const parseOptions = (): Options => {
326
326
  '-s, --source <source>',
327
327
  'Specify the source to publish (e.g. "official" or "releast-test"). ' +
328
328
  'When publishing to Artifactory, an access level can be ' +
329
- 'specified at the end in parantheses (e.g. "official (external)").'
329
+ 'specified at the end in parantheses (e.g. "official (external)").',
330
330
  )
331
331
  .addOption(
332
332
  new Option(
333
333
  '-d, --destination <ftp|artifactory>',
334
- 'Specify where to publish.'
334
+ 'Specify where to publish.',
335
335
  )
336
336
  .choices(['ftp', 'artifactory'])
337
- .makeOptionMandatory()
337
+ .makeOptionMandatory(),
338
338
  )
339
339
  .option(
340
340
  '-n, --no-pack',
341
- 'Publish existing .tgz file at the root directory without npm pack.'
341
+ 'Publish existing .tgz file at the root directory without npm pack.',
342
342
  )
343
343
  .parse();
344
344
 
@@ -377,8 +377,8 @@ const getShasum = (filePath: string) => {
377
377
  } catch (error) {
378
378
  throw new Error(
379
379
  `Unable to read file when verifying shasum: ${filePath}. \nError: ${errorAsString(
380
- error
381
- )}`
380
+ error,
381
+ )}`,
382
382
  );
383
383
  }
384
384
  };
@@ -413,14 +413,14 @@ const packOrReadPackage = (options: Options): App => {
413
413
 
414
414
  const assertAppVersionIsValid = (
415
415
  latestAppVersion: string | undefined,
416
- app: App
416
+ app: App,
417
417
  ) => {
418
418
  if (latestAppVersion != null) {
419
419
  console.log(`Latest published version ${latestAppVersion}`);
420
420
 
421
421
  if (semver.lte(app.version, latestAppVersion) && app.isOfficial) {
422
422
  throw new Error(
423
- 'Current package version cannot be published, bump it higher'
423
+ 'Current package version cannot be published, bump it higher',
424
424
  );
425
425
  }
426
426
  }
@@ -438,7 +438,7 @@ const downloadSourceJson = async () => {
438
438
  (sourceJson.apps !== undefined && !Array.isArray(sourceJson.apps))
439
439
  ) {
440
440
  throw new Error(
441
- '`source.json` does not have the expected content.'
441
+ '`source.json` does not have the expected content.',
442
442
  );
443
443
  }
444
444
 
@@ -461,21 +461,21 @@ const getUpdatedSourceJson = async (app: App): Promise<SourceJson> => {
461
461
  ...sourceJson,
462
462
  apps: [
463
463
  ...new Set(sourceJson.apps).add(
464
- `${app.sourceUrl}/${app.appInfoName}`
464
+ `${app.sourceUrl}/${app.appInfoName}`,
465
465
  ),
466
466
  ].sort(),
467
467
  };
468
468
  };
469
469
 
470
470
  const downloadExistingAppInfo = async (
471
- app: App
471
+ app: App,
472
472
  ): Promise<Partial<Pick<AppInfo, 'latestVersion' | 'versions'>>> => {
473
473
  try {
474
474
  const appInfoContent = await client.download(app.appInfoName);
475
475
  return JSON.parse(appInfoContent) as AppInfo;
476
476
  } catch (error) {
477
477
  console.log(
478
- `No previous app versions found due to: ${errorAsString(error)}`
478
+ `No previous app versions found due to: ${errorAsString(error)}`,
479
479
  );
480
480
 
481
481
  return {};
@@ -484,7 +484,7 @@ const downloadExistingAppInfo = async (
484
484
 
485
485
  const failBecauseOfMissingProperty = () => {
486
486
  throw new Error(
487
- 'This must never happen, because the properties were already checked before'
487
+ 'This must never happen, because the properties were already checked before',
488
488
  );
489
489
  };
490
490
 
@@ -529,13 +529,13 @@ const getUpdatedAppInfo = async (app: App): Promise<AppInfo> => {
529
529
  const uploadSourceJson = (sourceJson: SourceJson) =>
530
530
  client.uploadContent(
531
531
  Buffer.from(JSON.stringify(sourceJson, undefined, 2)),
532
- 'source.json'
532
+ 'source.json',
533
533
  );
534
534
 
535
535
  const uploadAppInfo = (app: App, appInfo: AppInfo) =>
536
536
  client.uploadContent(
537
537
  Buffer.from(JSON.stringify(appInfo, undefined, 2)),
538
- app.appInfoName
538
+ app.appInfoName,
539
539
  );
540
540
 
541
541
  const uploadPackage = (app: App) =>
@@ -106,7 +106,7 @@ const asRegexp = (string: string) =>
106
106
  .replace(SPECIAL_REGEXP_CHARACTERS, '\\$1')
107
107
  .replace(LINE_ENDINGS, '\\r?\\n') // Because reference string and input string could have different EOLs
108
108
  .replace('__YEAR__', '\\d{4}')
109
- .replace('__YEARS__', '(?<oldStartingYear>\\d{4})( - \\d{4})?')}`
109
+ .replace('__YEARS__', '(?<oldStartingYear>\\d{4})( - \\d{4})?')}`,
110
110
  );
111
111
 
112
112
  const checkLicense = () => {
@@ -153,7 +153,7 @@ const allSourceFiles = () =>
153
153
  '.git',
154
154
  ],
155
155
  baseNameMatch: true,
156
- }
156
+ },
157
157
  );
158
158
 
159
159
  const missesCorrectHeader = (file: string) =>
@@ -178,7 +178,7 @@ const checkHeaders = () => {
178
178
 
179
179
  fail(
180
180
  `These files do not contain the correct license, try fixing this` +
181
- ` with running 'npx ${nrfconnectLicenseScript}':\n${listOfFiles}`
181
+ ` with running 'npx ${nrfconnectLicenseScript}':\n${listOfFiles}`,
182
182
  );
183
183
  }
184
184
  };
@@ -242,7 +242,7 @@ const updateHeader = (file: string) => {
242
242
  const COMMENT_START = '/*';
243
243
  if (!hadOutdatedLicense && remainingContent.startsWith(COMMENT_START)) {
244
244
  console.warn(
245
- `The file '${file}' has a comment at the beginning which is not a known outdated license. Not touching this file.`
245
+ `The file '${file}' has a comment at the beginning which is not a known outdated license. Not touching this file.`,
246
246
  );
247
247
  return;
248
248
  }
@@ -254,12 +254,12 @@ const updateHeader = (file: string) => {
254
254
 
255
255
  writeFileSync(
256
256
  file,
257
- shebangLine + newHeader + lineEnding + lineEnding + remainingContent
257
+ shebangLine + newHeader + lineEnding + lineEnding + remainingContent,
258
258
  );
259
259
  console.log(
260
260
  `${
261
261
  hadOutdatedLicense ? 'Updated' : 'Added'
262
- } license header in file '${file}'`
262
+ } license header in file '${file}'`,
263
263
  );
264
264
  };
265
265