@nordicsemiconductor/pc-nrfconnect-shared 96.0.0 → 98.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.
- package/Changelog.md +41 -0
- package/coverage/cobertura-coverage.xml +201 -161
- package/ipc/safeStorage.ts +36 -0
- package/main/index.ts +4 -0
- package/nrfutil/moduleVersion.ts +1 -1
- package/package.json +1 -1
- package/scripts/release-shared.ts +1 -0
- package/src/Button/Button.tsx +7 -7
- package/src/Device/deviceInfo/deviceInfo.ts +32 -1
- package/src/Device/deviceInfo/nPM-Family-Series-logo.svg +1 -0
- package/src/Dialog/Dialog.tsx +1 -1
- package/src/ErrorBoundary/ErrorBoundary.tsx +2 -2
- package/src/FactoryReset/FactoryResetButton.tsx +1 -1
- package/src/Link/ExternalLink.tsx +22 -0
- package/src/Link/FileLink.tsx +28 -0
- package/src/MasonryLayout/MasonryLayout.tsx +4 -12
- package/src/Panes/FeedbackPane.tsx +2 -2
- package/src/StartStopButton/StartStopButton.tsx +1 -1
- package/src/index.ts +5 -0
- package/src/utils/logLibVersions.ts +4 -0
- package/src/utils/persistentStore.ts +26 -0
- package/src/utils/systemReport.ts +3 -0
- package/typings/generated/ipc/safeStorage.d.ts +12 -0
- package/typings/generated/ipc/safeStorage.d.ts.map +1 -0
- package/typings/generated/main/index.d.ts +7 -0
- package/typings/generated/main/index.d.ts.map +1 -1
- package/typings/generated/nrfutil/moduleVersion.d.ts +1 -1
- package/typings/generated/nrfutil/moduleVersion.d.ts.map +1 -1
- package/typings/generated/src/Button/Button.d.ts +2 -1
- package/typings/generated/src/Button/Button.d.ts.map +1 -1
- package/typings/generated/src/Device/deviceInfo/deviceInfo.d.ts.map +1 -1
- package/typings/generated/src/Link/ExternalLink.d.ts +7 -0
- package/typings/generated/src/Link/ExternalLink.d.ts.map +1 -0
- package/typings/generated/src/Link/FileLink.d.ts +7 -0
- package/typings/generated/src/Link/FileLink.d.ts.map +1 -0
- package/typings/generated/src/MasonryLayout/MasonryLayout.d.ts.map +1 -1
- package/typings/generated/src/index.d.ts +4 -1
- package/typings/generated/src/index.d.ts.map +1 -1
- package/typings/generated/src/utils/logLibVersions.d.ts.map +1 -1
- package/typings/generated/src/utils/persistentStore.d.ts +2 -0
- package/typings/generated/src/utils/persistentStore.d.ts.map +1 -1
- package/typings/generated/src/utils/systemReport.d.ts.map +1 -1
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2023 Nordic Semiconductor ASA
|
|
3
|
+
*
|
|
4
|
+
* SPDX-License-Identifier: LicenseRef-Nordic-4-Clause
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { handle, invoke } from './infrastructure/rendererToMain';
|
|
8
|
+
|
|
9
|
+
const channel = {
|
|
10
|
+
encryptionAvailable: 'safe-storage:encryptionAvailable',
|
|
11
|
+
encryptString: 'safe-storage:encryptString',
|
|
12
|
+
decryptString: 'safe-storage:decryptString',
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
type EncryptionAvailable = () => boolean;
|
|
16
|
+
const isEncryptionAvailable = invoke<EncryptionAvailable>(
|
|
17
|
+
channel.encryptionAvailable
|
|
18
|
+
);
|
|
19
|
+
const registerEncryptionAvailable = handle<EncryptionAvailable>(
|
|
20
|
+
channel.encryptionAvailable
|
|
21
|
+
);
|
|
22
|
+
|
|
23
|
+
type EncryptString = (plainText: string) => Buffer;
|
|
24
|
+
const encryptString = invoke<EncryptString>(channel.encryptString);
|
|
25
|
+
const registerEncryptString = handle<EncryptString>(channel.encryptString);
|
|
26
|
+
|
|
27
|
+
type DecryptString = (encrypted: Buffer) => string;
|
|
28
|
+
const decryptString = invoke<DecryptString>(channel.decryptString);
|
|
29
|
+
const registerDecryptString = handle<DecryptString>(channel.decryptString);
|
|
30
|
+
|
|
31
|
+
export const forRenderer = {
|
|
32
|
+
registerEncryptionAvailable,
|
|
33
|
+
registerEncryptString,
|
|
34
|
+
registerDecryptString,
|
|
35
|
+
};
|
|
36
|
+
export const inMain = { isEncryptionAvailable, encryptString, decryptString };
|
package/main/index.ts
CHANGED
|
@@ -8,6 +8,7 @@ import { forRenderer as forRendererAppDetails } from '../ipc/appDetails';
|
|
|
8
8
|
import { forRenderer as forRendererApps } from '../ipc/apps';
|
|
9
9
|
import { forRenderer as forRendererOpenWindow } from '../ipc/openWindow';
|
|
10
10
|
import { forRenderer as forRendererPreventSleep } from '../ipc/preventSleep';
|
|
11
|
+
import { forRenderer as forRendererSafeStorage } from '../ipc/safeStorage';
|
|
11
12
|
import {
|
|
12
13
|
forRenderer as forRendererSerialPort,
|
|
13
14
|
inRenderer as inRendererSerialPort,
|
|
@@ -19,6 +20,9 @@ export const appDetails = { forRenderer: forRendererAppDetails };
|
|
|
19
20
|
export const apps = { forRenderer: forRendererApps };
|
|
20
21
|
export const openWindow = { forRenderer: forRendererOpenWindow };
|
|
21
22
|
export const preventSleep = { forRenderer: forRendererPreventSleep };
|
|
23
|
+
export const safeStorage = {
|
|
24
|
+
forRenderer: forRendererSafeStorage,
|
|
25
|
+
};
|
|
22
26
|
export const serialPort = {
|
|
23
27
|
inRenderer: inRendererSerialPort,
|
|
24
28
|
forRenderer: forRendererSerialPort,
|
package/nrfutil/moduleVersion.ts
CHANGED
|
@@ -28,7 +28,7 @@ export const describeVersion = (version?: SubDependency | string) => {
|
|
|
28
28
|
return 'Unknown';
|
|
29
29
|
};
|
|
30
30
|
|
|
31
|
-
type KnownModule = 'nrfdl' | 'jprog' | 'JlinkARM';
|
|
31
|
+
type KnownModule = 'nrf-probe-lib' | 'nrfdl' | 'jprog' | 'JlinkARM';
|
|
32
32
|
|
|
33
33
|
const findTopLevel = (module: KnownModule, dependencies: Dependency[]) =>
|
|
34
34
|
dependencies.find(dependency => dependency.name === module);
|
package/package.json
CHANGED
package/src/Button/Button.tsx
CHANGED
|
@@ -18,6 +18,8 @@ export type ButtonVariants =
|
|
|
18
18
|
| 'link'
|
|
19
19
|
| 'link-button';
|
|
20
20
|
|
|
21
|
+
export type ButtonSize = 'sm' | 'lg' | 'xl';
|
|
22
|
+
|
|
21
23
|
type ButtonProps = {
|
|
22
24
|
id?: string;
|
|
23
25
|
variant: ButtonVariants;
|
|
@@ -25,7 +27,7 @@ type ButtonProps = {
|
|
|
25
27
|
onClick: React.MouseEventHandler<HTMLButtonElement>;
|
|
26
28
|
disabled?: boolean;
|
|
27
29
|
title?: string;
|
|
28
|
-
|
|
30
|
+
size?: ButtonSize;
|
|
29
31
|
};
|
|
30
32
|
|
|
31
33
|
const Button: React.FC<ButtonProps> = ({
|
|
@@ -36,16 +38,16 @@ const Button: React.FC<ButtonProps> = ({
|
|
|
36
38
|
onClick,
|
|
37
39
|
disabled = false,
|
|
38
40
|
title,
|
|
39
|
-
|
|
41
|
+
size = 'sm',
|
|
40
42
|
}) => (
|
|
41
43
|
<div className={`tw-preflight ${className}`}>
|
|
42
44
|
<button
|
|
43
45
|
type="button"
|
|
44
46
|
id={id}
|
|
45
47
|
className={`${classNames(
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
48
|
+
size === 'sm' && 'tw-h-6 tw-px-2 tw-text-xs',
|
|
49
|
+
size === 'lg' && 'tw-h-8 tw-px-4 tw-text-sm',
|
|
50
|
+
size === 'xl' && 'tw-h-8 tw-px-4 tw-text-base',
|
|
49
51
|
variant === 'primary' &&
|
|
50
52
|
'tw-bg-nordicBlue tw-text-white active:enabled:tw-bg-nordicBlue-700',
|
|
51
53
|
variant === 'secondary' &&
|
|
@@ -58,8 +60,6 @@ const Button: React.FC<ButtonProps> = ({
|
|
|
58
60
|
'tw-bg-orange tw-text-white active:enabled:tw-bg-orange-700',
|
|
59
61
|
variant === 'danger' &&
|
|
60
62
|
'tw-bg-red tw-text-white active:enabled:tw-bg-red-700',
|
|
61
|
-
variant === 'link' &&
|
|
62
|
-
'tw-bg-transparent tw-p-0 tw-text-nordicBlue hover:tw-underline',
|
|
63
63
|
variant === 'link-button' &&
|
|
64
64
|
'tw-border tw-border-nordicBlue tw-bg-white tw-text-nordicBlue active:enabled:tw-bg-gray-50',
|
|
65
65
|
className
|
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
import { NrfutilDevice } from '../../../nrfutil';
|
|
32
32
|
import type { Device as WrappedDevice } from '../deviceSlice';
|
|
33
33
|
|
|
34
|
+
import nPMFamilyLogo from '!!@svgr!./nPM-Family-Series-logo.svg';
|
|
34
35
|
import nrf51logo from '!!@svgr!./nRF51-Series-logo.svg';
|
|
35
36
|
import nrf52logo from '!!@svgr!./nRF52-Series-logo.svg';
|
|
36
37
|
import nrf53logo from '!!@svgr!./nRF53-Series-logo.svg';
|
|
@@ -54,7 +55,10 @@ type DevicePCA =
|
|
|
54
55
|
| 'PCA10121'
|
|
55
56
|
| 'PCA20020'
|
|
56
57
|
| 'PCA20035'
|
|
57
|
-
| 'PCA10143'
|
|
58
|
+
| 'PCA10143'
|
|
59
|
+
| 'PCA10152'
|
|
60
|
+
| 'PCA10153'
|
|
61
|
+
| 'PCA20049';
|
|
58
62
|
|
|
59
63
|
interface DeviceInfo {
|
|
60
64
|
name?: string | null;
|
|
@@ -180,6 +184,33 @@ const devicesByPca: { [P in DevicePCA]: DeviceInfo } = {
|
|
|
180
184
|
buyOnlineParams: 'search_token=nRF7002-DK&series_token=nRF7002',
|
|
181
185
|
},
|
|
182
186
|
},
|
|
187
|
+
PCA10152: {
|
|
188
|
+
name: 'nPM 1300 EK',
|
|
189
|
+
cores: 2,
|
|
190
|
+
icon: nPMFamilyLogo,
|
|
191
|
+
website: {
|
|
192
|
+
productPagePath: 'Products/Development-hardware/nPM1300-EK',
|
|
193
|
+
buyOnlineParams: 'search_token=NPM1300EK',
|
|
194
|
+
},
|
|
195
|
+
},
|
|
196
|
+
PCA10153: {
|
|
197
|
+
name: 'nRF9161 DK',
|
|
198
|
+
cores: 1,
|
|
199
|
+
icon: nrf91logo,
|
|
200
|
+
website: {
|
|
201
|
+
productPagePath: 'Products/Development-hardware/nrf9161dk',
|
|
202
|
+
buyOnlineParams: 'search_token=NRF9161-dk',
|
|
203
|
+
},
|
|
204
|
+
},
|
|
205
|
+
PCA20049: {
|
|
206
|
+
name: 'Nordic Thingy:91x',
|
|
207
|
+
cores: 1,
|
|
208
|
+
icon: nrf91logo,
|
|
209
|
+
website: {
|
|
210
|
+
productPagePath: 'Products/Development-hardware/thingy91x',
|
|
211
|
+
buyOnlineParams: 'search_token=nRF9161-Thingy91x',
|
|
212
|
+
},
|
|
213
|
+
},
|
|
183
214
|
};
|
|
184
215
|
|
|
185
216
|
const deviceByPca = (device: Device) =>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg width="21.08" height="20" id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 289.83 282.96"><defs><style>.cls-1{fill:#333f48;}</style></defs><polygon class="cls-1" points="209.44 143.78 251.12 143.78 289.83 105.09 213.79 105.09 285.5 0 148.88 126.11 221.83 126.11 209.44 143.78"/><polygon class="cls-1" points="161.42 212.27 111.87 282.96 182.59 212.27 161.42 212.27"/><path class="cls-1" d="m0,154.83h35.33v9.28H10.21v9.88h22.14v9.28H10.21v17.96H0v-46.4Z"/><path class="cls-1" d="m52.62,154.5h9.41l19.88,46.73h-10.67l-4.24-10.41h-19.62l-4.24,10.41h-10.41l19.88-46.73Zm10.74,27.31l-6.17-15.05-6.16,15.05h12.33Z"/><path class="cls-1" d="m86.44,154.83h11l12.2,19.62,12.2-19.62h11v46.4h-10.14v-30.29l-13.06,19.82h-.27l-12.93-19.62v30.09h-10.01v-46.4Z"/><path class="cls-1" d="m144.84,154.83h10.21v46.4h-10.21v-46.4Z"/><path class="cls-1" d="m166.65,154.83h10.21v37.12h23.13v9.28h-33.34v-46.4Z"/><path class="cls-1" d="m212.12,182.93l-17.83-28.1h11.93l11.07,18.63,11.27-18.63h11.6l-17.83,27.91v18.49h-10.21v-18.29Z"/><path class="cls-1" d="m0,108.25h10.07v5.04c2.32-2.98,5.3-5.7,10.41-5.7,7.62,0,12.06,5.04,12.06,13.19v23h-10.07v-19.82c0-4.77-2.25-7.22-6.1-7.22s-6.3,2.45-6.3,7.22v19.82H0v-35.53Z"/><path class="cls-1" d="m42.26,97.38h18.96c11.07,0,17.76,6.56,17.76,16.04v.13c0,10.74-8.35,16.31-18.76,16.31h-7.75v13.92h-10.21v-46.4Zm18.29,23.4c5.1,0,8.09-3.05,8.09-7.03v-.13c0-4.57-3.18-7.03-8.29-7.03h-7.89v14.18h8.09Z"/><path class="cls-1" d="m86.47,97.38h11l12.2,19.62,12.2-19.62h11v46.4h-10.14v-30.29l-13.06,19.82h-.27l-12.93-19.62v30.09h-10.01v-46.4Z"/></svg>
|
package/src/Dialog/Dialog.tsx
CHANGED
|
@@ -116,7 +116,7 @@ class ErrorBoundary extends React.Component<
|
|
|
116
116
|
problem we recommend restarting the application.
|
|
117
117
|
</p>
|
|
118
118
|
<Button
|
|
119
|
-
|
|
119
|
+
size="lg"
|
|
120
120
|
variant="primary"
|
|
121
121
|
onClick={() => getCurrentWindow().reload()}
|
|
122
122
|
>
|
|
@@ -167,7 +167,7 @@ class ErrorBoundary extends React.Component<
|
|
|
167
167
|
experienced it multiple times
|
|
168
168
|
</p>
|
|
169
169
|
<Button
|
|
170
|
-
|
|
170
|
+
size="lg"
|
|
171
171
|
variant="primary"
|
|
172
172
|
onClick={() =>
|
|
173
173
|
openUrl(
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2022 Nordic Semiconductor ASA
|
|
3
|
+
*
|
|
4
|
+
* SPDX-License-Identifier: LicenseRef-Nordic-4-Clause
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import React from 'react';
|
|
8
|
+
|
|
9
|
+
import classNames from '../utils/classNames';
|
|
10
|
+
|
|
11
|
+
export default ({ label, href }: { label: string; href: string }) => (
|
|
12
|
+
<a
|
|
13
|
+
target="_blank"
|
|
14
|
+
rel="noreferrer noopener"
|
|
15
|
+
href={href}
|
|
16
|
+
className={classNames(
|
|
17
|
+
'tw-preflight tw-text-nordicBlue hover:tw-underline'
|
|
18
|
+
)}
|
|
19
|
+
>
|
|
20
|
+
{label}
|
|
21
|
+
</a>
|
|
22
|
+
);
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2022 Nordic Semiconductor ASA
|
|
3
|
+
*
|
|
4
|
+
* SPDX-License-Identifier: LicenseRef-Nordic-4-Clause
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import React from 'react';
|
|
8
|
+
|
|
9
|
+
import classNames from '../utils/classNames';
|
|
10
|
+
import { openFile } from '../utils/open';
|
|
11
|
+
|
|
12
|
+
export default ({
|
|
13
|
+
label,
|
|
14
|
+
fileLocation,
|
|
15
|
+
}: {
|
|
16
|
+
label: string;
|
|
17
|
+
fileLocation: string;
|
|
18
|
+
}) => (
|
|
19
|
+
<button
|
|
20
|
+
type="button"
|
|
21
|
+
onClick={() => openFile(fileLocation)}
|
|
22
|
+
className={classNames(
|
|
23
|
+
'tw-preflight tw-text-nordicBlue hover:tw-underline'
|
|
24
|
+
)}
|
|
25
|
+
>
|
|
26
|
+
{label}
|
|
27
|
+
</button>
|
|
28
|
+
);
|
|
@@ -89,7 +89,6 @@ export default ({
|
|
|
89
89
|
minWidth,
|
|
90
90
|
className,
|
|
91
91
|
}: PropsWithChildren<MasonryLayoutProperties>) => {
|
|
92
|
-
const [width, setWidth] = useState(-1);
|
|
93
92
|
const [maxHeight, setMaxHeight] = useState(0);
|
|
94
93
|
const [columns, setColumns] = useState(-1);
|
|
95
94
|
const [orders, setOrders] = useState<number[]>([]);
|
|
@@ -154,10 +153,7 @@ export default ({
|
|
|
154
153
|
});
|
|
155
154
|
|
|
156
155
|
return {
|
|
157
|
-
maxHeight: Math.max(
|
|
158
|
-
...heights,
|
|
159
|
-
masonryLayoutRef.current?.scrollHeight ?? 0
|
|
160
|
-
),
|
|
156
|
+
maxHeight: Math.max(...heights, 0),
|
|
161
157
|
order: newOrder,
|
|
162
158
|
columnHeights: heights,
|
|
163
159
|
columns: Math.min(
|
|
@@ -175,10 +171,6 @@ export default ({
|
|
|
175
171
|
(minWidth + Number.parseInt(styles.margin, 10))
|
|
176
172
|
);
|
|
177
173
|
|
|
178
|
-
if (current.clientWidth !== width) {
|
|
179
|
-
setWidth(current.clientWidth);
|
|
180
|
-
}
|
|
181
|
-
|
|
182
174
|
const data = calcData(noOfColumns);
|
|
183
175
|
if (data) {
|
|
184
176
|
setOrders(data.order);
|
|
@@ -204,7 +196,7 @@ export default ({
|
|
|
204
196
|
current && observer.unobserve(current);
|
|
205
197
|
current && mutationObserver.disconnect();
|
|
206
198
|
};
|
|
207
|
-
}, [columns, maxHeight, minWidth
|
|
199
|
+
}, [columns, maxHeight, minWidth]);
|
|
208
200
|
|
|
209
201
|
return (
|
|
210
202
|
<div className={styles.masonryLayoutOut}>
|
|
@@ -215,7 +207,7 @@ export default ({
|
|
|
215
207
|
>
|
|
216
208
|
<WrappedChildren
|
|
217
209
|
hiddenChildren={hiddenChildren}
|
|
218
|
-
width={
|
|
210
|
+
width={masonryLayoutRef.current?.clientWidth ?? -1}
|
|
219
211
|
columns={columns}
|
|
220
212
|
minWidth={minWidth}
|
|
221
213
|
orders={orders}
|
|
@@ -225,7 +217,7 @@ export default ({
|
|
|
225
217
|
<Fillers
|
|
226
218
|
maxHeight={maxHeight}
|
|
227
219
|
columns={columns}
|
|
228
|
-
width={
|
|
220
|
+
width={masonryLayoutRef.current?.clientWidth ?? -1}
|
|
229
221
|
columnHeights={columnHeights}
|
|
230
222
|
/>
|
|
231
223
|
</div>
|
|
@@ -50,7 +50,7 @@ export default ({ categories }: FeedbackPaneProps) => {
|
|
|
50
50
|
</p>
|
|
51
51
|
</section>
|
|
52
52
|
<Button
|
|
53
|
-
|
|
53
|
+
size="lg"
|
|
54
54
|
className="tw-align-self-end tw-self-end"
|
|
55
55
|
onClick={() => {
|
|
56
56
|
setSayThankYou(false);
|
|
@@ -117,7 +117,7 @@ export default ({ categories }: FeedbackPaneProps) => {
|
|
|
117
117
|
<li>Operating system</li>
|
|
118
118
|
</ul>
|
|
119
119
|
<Button
|
|
120
|
-
|
|
120
|
+
size="lg"
|
|
121
121
|
className="tw-self-end"
|
|
122
122
|
variant="primary"
|
|
123
123
|
onClick={() =>
|
package/src/index.ts
CHANGED
|
@@ -38,6 +38,8 @@ export { default as StartStopButton } from './StartStopButton/StartStopButton';
|
|
|
38
38
|
export { default as DocumentationSection } from './About/DocumentationSection';
|
|
39
39
|
export { default as Stepper } from './Stepper/Stepper';
|
|
40
40
|
export type { Step } from './Stepper/Stepper';
|
|
41
|
+
export { default as ExternalLink } from './Link/ExternalLink';
|
|
42
|
+
export { default as FileLink } from './Link/FileLink';
|
|
41
43
|
|
|
42
44
|
export { default as SidePanel } from './SidePanel/SidePanel';
|
|
43
45
|
export { Group, CollapsibleGroup } from './SidePanel/Group';
|
|
@@ -86,6 +88,8 @@ export {
|
|
|
86
88
|
getPersistedTerminalSettings,
|
|
87
89
|
persistNickname,
|
|
88
90
|
getPersistedNickname,
|
|
91
|
+
getPersistedApiKey,
|
|
92
|
+
persistApiKey,
|
|
89
93
|
} from './utils/persistentStore';
|
|
90
94
|
|
|
91
95
|
export { jprogDeviceSetup } from './Device/jprogOperations';
|
|
@@ -161,3 +165,4 @@ export {
|
|
|
161
165
|
} from '../ipc/apps';
|
|
162
166
|
export { inMain as openWindow } from '../ipc/openWindow';
|
|
163
167
|
export { inMain as preventSleep } from '../ipc/preventSleep';
|
|
168
|
+
export { inMain as safeStorage } from '../ipc/safeStorage';
|
|
@@ -75,6 +75,10 @@ export default async () => {
|
|
|
75
75
|
log('nrfutil-device', moduleVersion.version);
|
|
76
76
|
log('nrf-device-lib', resolveModuleVersion('nrfdl', dependencies));
|
|
77
77
|
log('nrfjprog DLL', resolveModuleVersion('jprog', dependencies));
|
|
78
|
+
log(
|
|
79
|
+
'nrf-probe-lib',
|
|
80
|
+
resolveModuleVersion('nrf-probe-lib', dependencies)
|
|
81
|
+
);
|
|
78
82
|
log('JLink', resolveModuleVersion('JlinkARM', dependencies));
|
|
79
83
|
if (
|
|
80
84
|
process.platform === 'darwin' &&
|
|
@@ -9,6 +9,7 @@ import Store from 'electron-store';
|
|
|
9
9
|
import { SerialPortOpenOptions } from 'serialport';
|
|
10
10
|
import { v4 as uuid } from 'uuid';
|
|
11
11
|
|
|
12
|
+
import { inMain as safeStorage } from '../../ipc/safeStorage';
|
|
12
13
|
import logger from '../logging';
|
|
13
14
|
import packageJson from './packageJson';
|
|
14
15
|
|
|
@@ -45,6 +46,31 @@ export const persistIsFavorite = (serialNumber: string, value: boolean) =>
|
|
|
45
46
|
export const getPersistedIsFavorite = (serialNumber: string) =>
|
|
46
47
|
sharedStore.get(`${serialNumber}.fav`, false) as boolean;
|
|
47
48
|
|
|
49
|
+
export const persistApiKey = async (keyName: string, apiKey: string) => {
|
|
50
|
+
const canEncrypt = await safeStorage.isEncryptionAvailable();
|
|
51
|
+
if (!canEncrypt) {
|
|
52
|
+
throw new Error('Encryption not available');
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
const encrypted = await safeStorage.encryptString(apiKey);
|
|
56
|
+
sharedStore.set(`apiKeys.${keyName}`, Array.from(encrypted));
|
|
57
|
+
};
|
|
58
|
+
export const getPersistedApiKey = async (keyName: string) => {
|
|
59
|
+
const canDecrypt = await safeStorage.isEncryptionAvailable();
|
|
60
|
+
if (!canDecrypt) {
|
|
61
|
+
throw new Error('Decryption not available');
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
const encrypted = sharedStore.get(
|
|
65
|
+
`apiKeys.${keyName}`,
|
|
66
|
+
{} as Array<number>
|
|
67
|
+
);
|
|
68
|
+
|
|
69
|
+
return encrypted.length > 0
|
|
70
|
+
? safeStorage.decryptString(Buffer.from(encrypted))
|
|
71
|
+
: '';
|
|
72
|
+
};
|
|
73
|
+
|
|
48
74
|
export const persistSerialPortSettings = (
|
|
49
75
|
serialNumber: string,
|
|
50
76
|
serialPortSettings: Omit<SerialSettings, 'lastUpdated'>
|
|
@@ -77,6 +77,9 @@ const generalInfoReport = async () => {
|
|
|
77
77
|
` - nrfjprog DLL: ${describeVersion(
|
|
78
78
|
resolveModuleVersion('jprog', dependencies)
|
|
79
79
|
)}`,
|
|
80
|
+
` - nrf-probe-lib: ${describeVersion(
|
|
81
|
+
resolveModuleVersion('nrf-probe-lib', dependencies)
|
|
82
|
+
)}`,
|
|
80
83
|
` - JLink: ${describeVersion(
|
|
81
84
|
resolveModuleVersion('JlinkARM', dependencies)
|
|
82
85
|
)}`,
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
export declare const forRenderer: {
|
|
3
|
+
registerEncryptionAvailable: (handler: (() => boolean) | (() => Promise<boolean>)) => void;
|
|
4
|
+
registerEncryptString: (handler: ((plainText: string) => Buffer) | ((plainText: string) => Promise<Buffer>)) => void;
|
|
5
|
+
registerDecryptString: (handler: ((encrypted: Buffer) => string) | ((encrypted: Buffer) => Promise<string>)) => void;
|
|
6
|
+
};
|
|
7
|
+
export declare const inMain: {
|
|
8
|
+
isEncryptionAvailable: () => Promise<boolean>;
|
|
9
|
+
encryptString: (plainText: string) => Promise<Buffer>;
|
|
10
|
+
decryptString: (encrypted: Buffer) => Promise<string>;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=safeStorage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safeStorage.d.ts","sourceRoot":"","sources":["../../../ipc/safeStorage.ts"],"names":[],"mappings":";AA8BA,eAAO,MAAM,WAAW;;;;CAIvB,CAAC;AACF,eAAO,MAAM,MAAM;;;;CAA0D,CAAC"}
|
|
@@ -31,6 +31,13 @@ export declare const preventSleep: {
|
|
|
31
31
|
registerEnd: (handler: (id: number) => void) => Electron.IpcMain;
|
|
32
32
|
};
|
|
33
33
|
};
|
|
34
|
+
export declare const safeStorage: {
|
|
35
|
+
forRenderer: {
|
|
36
|
+
registerEncryptionAvailable: (handler: (() => boolean) | (() => Promise<boolean>)) => void;
|
|
37
|
+
registerEncryptString: (handler: ((plainText: string) => Buffer) | ((plainText: string) => Promise<Buffer>)) => void;
|
|
38
|
+
registerDecryptString: (handler: ((encrypted: Buffer) => string) | ((encrypted: Buffer) => Promise<string>)) => void;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
34
41
|
export declare const serialPort: {
|
|
35
42
|
inRenderer: {
|
|
36
43
|
broadcastChanged: (subChannel: string, targets?: Pick<Electron.WebContents, "send">[], newOptions: import("serialport").SerialPortOpenOptions<import("@serialport/bindings-cpp").AutoDetectTypes>) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../main/index.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../main/index.ts"],"names":[],"mappings":";AAgBA,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AAEtF,eAAO,MAAM,UAAU;;;;CAAyC,CAAC;AACjE,eAAO,MAAM,IAAI;;;;;;;;;;;;;CAAmC,CAAC;AACrD,eAAO,MAAM,UAAU;;;;;CAAyC,CAAC;AACjE,eAAO,MAAM,YAAY;;;;;CAA2C,CAAC;AACrE,eAAO,MAAM,WAAW;;;;;;CAEvB,CAAC;AACF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;CAGtB,CAAC;AAEF,cAAc,kBAAkB,CAAC;AAEjC,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Dependency, SubDependency } from './sandboxTypes';
|
|
2
2
|
export declare const describeVersion: (version?: SubDependency | string) => string;
|
|
3
|
-
type KnownModule = 'nrfdl' | 'jprog' | 'JlinkARM';
|
|
3
|
+
type KnownModule = 'nrf-probe-lib' | 'nrfdl' | 'jprog' | 'JlinkARM';
|
|
4
4
|
export declare const resolveModuleVersion: (module: KnownModule, versions?: Dependency[]) => Dependency | SubDependency | undefined;
|
|
5
5
|
export {};
|
|
6
6
|
//# sourceMappingURL=moduleVersion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"moduleVersion.d.ts","sourceRoot":"","sources":["../../../nrfutil/moduleVersion.ts"],"names":[],"mappings":"AAMA,OAAO,EACH,UAAU,EAIV,aAAa,EAChB,MAAM,gBAAgB,CAAC;AAExB,eAAO,MAAM,eAAe,aAAc,aAAa,GAAG,MAAM,WAc/D,CAAC;AAEF,KAAK,WAAW,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"moduleVersion.d.ts","sourceRoot":"","sources":["../../../nrfutil/moduleVersion.ts"],"names":[],"mappings":"AAMA,OAAO,EACH,UAAU,EAIV,aAAa,EAChB,MAAM,gBAAgB,CAAC;AAExB,eAAO,MAAM,eAAe,aAAc,aAAa,GAAG,MAAM,WAc/D,CAAC;AAEF,KAAK,WAAW,GAAG,eAAe,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;AAsBpE,eAAO,MAAM,oBAAoB,WACrB,WAAW,aACT,UAAU,EAAE,KACvB,UAAU,GAAG,aAAa,GAAG,SAC0C,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
export type ButtonVariants = 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'danger' | 'link' | 'link-button';
|
|
3
|
+
export type ButtonSize = 'sm' | 'lg' | 'xl';
|
|
3
4
|
type ButtonProps = {
|
|
4
5
|
id?: string;
|
|
5
6
|
variant: ButtonVariants;
|
|
@@ -7,7 +8,7 @@ type ButtonProps = {
|
|
|
7
8
|
onClick: React.MouseEventHandler<HTMLButtonElement>;
|
|
8
9
|
disabled?: boolean;
|
|
9
10
|
title?: string;
|
|
10
|
-
|
|
11
|
+
size?: ButtonSize;
|
|
11
12
|
};
|
|
12
13
|
declare const Button: React.FC<ButtonProps>;
|
|
13
14
|
export default Button;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/Button/Button.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,MAAM,cAAc,GACpB,SAAS,GACT,WAAW,GACX,SAAS,GACT,MAAM,GACN,SAAS,GACT,QAAQ,GACR,MAAM,GACN,aAAa,CAAC;AAEpB,KAAK,WAAW,GAAG;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/Button/Button.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,MAAM,cAAc,GACpB,SAAS,GACT,WAAW,GACX,SAAS,GACT,MAAM,GACN,SAAS,GACT,QAAQ,GACR,MAAM,GACN,aAAa,CAAC;AAEpB,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C,KAAK,WAAW,GAAG;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,UAAU,CAAC;CACrB,CAAC;AAEF,QAAA,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAyCjC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deviceInfo.d.ts","sourceRoot":"","sources":["../../../../../src/Device/deviceInfo/deviceInfo.ts"],"names":[],"mappings":";AA8BA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"deviceInfo.d.ts","sourceRoot":"","sources":["../../../../../src/Device/deviceInfo/deviceInfo.ts"],"names":[],"mappings":";AA8BA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAY9D,KAAK,MAAM,GAAG,aAAa,GAAG,aAAa,CAAC;AAmB5C,UAAU,UAAU;IAChB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;IACxB,OAAO,EAAE;QACL,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;CACL;AAoLD,eAAO,MAAM,UAAU,WAAY,MAAM,KAAG,UAC2B,CAAC;AASxE,eAAO,MAAM,mBAAmB,WACpB,MAAM;;YAQjB,CAAC;AAEF,eAAO,MAAM,cAAc,WAAY,MAAM,uBAEiC,CAAC;AAE/E,eAAO,MAAM,YAAY,WAAY,MAAM,uBAIrC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExternalLink.d.ts","sourceRoot":"","sources":["../../../../src/Link/ExternalLink.tsx"],"names":[],"mappings":";;WAU0C,MAAM;UAAQ,MAAM;;AAA9D,wBAWE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileLink.d.ts","sourceRoot":"","sources":["../../../../src/Link/FileLink.tsx"],"names":[],"mappings":";;WAeW,MAAM;kBACC,MAAM;;AALxB,wBAgBE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MasonryLayout.d.ts","sourceRoot":"","sources":["../../../../src/MasonryLayout/MasonryLayout.tsx"],"names":[],"mappings":"AAKA,OAAc,EAAE,iBAAiB,EAA+B,MAAM,OAAO,CAAC;AAM9E,UAAU,uBAAuB;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAiED;;;;;;GAMG;6DAKA,kBAAkB,uBAAuB,CAAC;AAJ7C,
|
|
1
|
+
{"version":3,"file":"MasonryLayout.d.ts","sourceRoot":"","sources":["../../../../src/MasonryLayout/MasonryLayout.tsx"],"names":[],"mappings":"AAKA,OAAc,EAAE,iBAAiB,EAA+B,MAAM,OAAO,CAAC;AAM9E,UAAU,uBAAuB;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAiED;;;;;;GAMG;6DAKA,kBAAkB,uBAAuB,CAAC;AAJ7C,wBA2IE"}
|
|
@@ -28,6 +28,8 @@ export { default as StartStopButton } from './StartStopButton/StartStopButton';
|
|
|
28
28
|
export { default as DocumentationSection } from './About/DocumentationSection';
|
|
29
29
|
export { default as Stepper } from './Stepper/Stepper';
|
|
30
30
|
export type { Step } from './Stepper/Stepper';
|
|
31
|
+
export { default as ExternalLink } from './Link/ExternalLink';
|
|
32
|
+
export { default as FileLink } from './Link/FileLink';
|
|
31
33
|
export { default as SidePanel } from './SidePanel/SidePanel';
|
|
32
34
|
export { Group, CollapsibleGroup } from './SidePanel/Group';
|
|
33
35
|
export { default as InlineInput } from './InlineInput/InlineInput';
|
|
@@ -51,7 +53,7 @@ export { default as useHotKey } from './utils/useHotKey';
|
|
|
51
53
|
export { isDevelopment } from './utils/environment';
|
|
52
54
|
export { currentPane, setCurrentPane } from './App/appLayout';
|
|
53
55
|
export { isLoggingVerbose } from './Log/logSlice';
|
|
54
|
-
export { getAppSpecificStore as getPersistentStore, persistTerminalSettings, getPersistedTerminalSettings, persistNickname, getPersistedNickname, } from './utils/persistentStore';
|
|
56
|
+
export { getAppSpecificStore as getPersistentStore, persistTerminalSettings, getPersistedTerminalSettings, persistNickname, getPersistedNickname, getPersistedApiKey, persistApiKey, } from './utils/persistentStore';
|
|
55
57
|
export { jprogDeviceSetup } from './Device/jprogOperations';
|
|
56
58
|
export { sdfuDeviceSetup } from './Device/sdfuOperations';
|
|
57
59
|
export { selectedDevice, getReadbackProtection, persistSerialPortOptions, type Device, } from './Device/deviceSlice';
|
|
@@ -70,4 +72,5 @@ export { addNewMessage, newCopiedFlashMessage, newInfoFlashMessage, newWarningFl
|
|
|
70
72
|
export { inMain as apps, type App as AppType, type AppSpec, type AppWithError, type DownloadableApp, type InstalledDownloadableApp, type LaunchableApp, type LocalApp, type SourceWithError, type UninstalledDownloadableApp, type WithdrawnApp, } from '../ipc/apps';
|
|
71
73
|
export { inMain as openWindow } from '../ipc/openWindow';
|
|
72
74
|
export { inMain as preventSleep } from '../ipc/preventSleep';
|
|
75
|
+
export { inMain as safeStorage } from '../ipc/safeStorage';
|
|
73
76
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,kBAAkB;;;;;;;;;CAA6B,CAAC;AAE7D,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EACH,OAAO,IAAI,cAAc,EACzB,KAAK,KAAK,IAAI,mBAAmB,GACpC,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACH,MAAM,EACN,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,WAAW,EACX,YAAY,GACf,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACpD,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACvD,YAAY,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logLibVersions.d.ts","sourceRoot":"","sources":["../../../../src/utils/logLibVersions.ts"],"names":[],"mappings":";AAqEA,
|
|
1
|
+
{"version":3,"file":"logLibVersions.d.ts","sourceRoot":"","sources":["../../../../src/utils/logLibVersions.ts"],"names":[],"mappings":";AAqEA,wBAmCE"}
|
|
@@ -16,6 +16,8 @@ export declare const persistNickname: (serialNumber: string, nickname: string) =
|
|
|
16
16
|
export declare const getPersistedNickname: (serialNumber: string) => string;
|
|
17
17
|
export declare const persistIsFavorite: (serialNumber: string, value: boolean) => void;
|
|
18
18
|
export declare const getPersistedIsFavorite: (serialNumber: string) => boolean;
|
|
19
|
+
export declare const persistApiKey: (keyName: string, apiKey: string) => Promise<void>;
|
|
20
|
+
export declare const getPersistedApiKey: (keyName: string) => Promise<string>;
|
|
19
21
|
export declare const persistSerialPortSettings: (serialNumber: string, serialPortSettings: Omit<SerialSettings, 'lastUpdated'>) => void;
|
|
20
22
|
export declare const getPersistedSerialPortSettings: (serialNumber: string) => SerialSettings | undefined;
|
|
21
23
|
export declare const persistTerminalSettings: (serialNumber: string, vComIndex: number, terminalSettings: TerminalSettings) => void;
|