@nordicsemiconductor/pc-nrfconnect-shared 97.0.0 → 99.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 +50 -0
- package/coverage/cobertura-coverage.xml +532 -490
- package/nrfutil/device/batch.ts +1 -1
- package/nrfutil/device/common.ts +5 -1
- package/nrfutil/device/device.ts +4 -5
- package/nrfutil/device/list.ts +5 -1
- package/nrfutil/sandbox.ts +2 -2
- package/package.json +1 -1
- package/src/Button/Button.tsx +7 -7
- package/src/Device/DeviceSelector/DeviceSelector.tsx +2 -5
- package/src/Device/deviceAutoSelectSlice.ts +8 -1
- package/src/Device/deviceLister.ts +1 -7
- package/src/Device/sdfuOperations.ts +5 -4
- 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 -1
- package/src/utils/persistentStore.ts +26 -0
- package/typings/generated/nrfutil/device/common.d.ts.map +1 -1
- package/typings/generated/nrfutil/device/device.d.ts +1 -1
- package/typings/generated/nrfutil/device/device.d.ts.map +1 -1
- package/typings/generated/nrfutil/device/list.d.ts +1 -1
- package/typings/generated/nrfutil/device/list.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/DeviceSelector/DeviceSelector.d.ts.map +1 -1
- package/typings/generated/src/Device/deviceAutoSelectSlice.d.ts +2 -1
- package/typings/generated/src/Device/deviceAutoSelectSlice.d.ts.map +1 -1
- package/typings/generated/src/Device/deviceLister.d.ts +0 -1
- package/typings/generated/src/Device/deviceLister.d.ts.map +1 -1
- package/typings/generated/src/Device/sdfuOperations.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 -3
- package/typings/generated/src/index.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/nrfutil/device/batch.ts
CHANGED
package/nrfutil/device/common.ts
CHANGED
|
@@ -232,7 +232,11 @@ export const getDeviceSandbox = async () => {
|
|
|
232
232
|
}
|
|
233
233
|
});
|
|
234
234
|
|
|
235
|
-
|
|
235
|
+
const fallbackLevel =
|
|
236
|
+
process.env.NODE_ENV === 'production' ? 'off' : 'error';
|
|
237
|
+
deviceSandbox.setLogLevel(
|
|
238
|
+
getIsLoggingVerbose() ? 'trace' : fallbackLevel
|
|
239
|
+
);
|
|
236
240
|
// Only the first reset after selecting "reset with verbose logging" is relevant
|
|
237
241
|
persistIsLoggingVerbose(false);
|
|
238
242
|
}
|
package/nrfutil/device/device.ts
CHANGED
|
@@ -31,11 +31,10 @@ const setLogLevel = async (level: LogLevel) => {
|
|
|
31
31
|
|
|
32
32
|
const setVerboseLogging = async (verbose: boolean) => {
|
|
33
33
|
const sandbox = await getDeviceSandbox();
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
34
|
+
const fallbackLevel =
|
|
35
|
+
process.env.NODE_ENV === 'production' ? 'off' : 'error';
|
|
36
|
+
|
|
37
|
+
sandbox.setLogLevel(verbose ? 'trace' : fallbackLevel);
|
|
39
38
|
};
|
|
40
39
|
const getModuleVersion = async () => {
|
|
41
40
|
const sandbox = await getDeviceSandbox();
|
package/nrfutil/device/list.ts
CHANGED
|
@@ -36,7 +36,8 @@ export default async (
|
|
|
36
36
|
onHotplugEvent?: {
|
|
37
37
|
onDeviceArrived: (device: NrfutilDeviceWithSerialnumber) => void;
|
|
38
38
|
onDeviceLeft: (id: number) => void;
|
|
39
|
-
}
|
|
39
|
+
},
|
|
40
|
+
timeout = 3000
|
|
40
41
|
) => {
|
|
41
42
|
const args: string[] = [];
|
|
42
43
|
args.concat(deviceTraitsToArgs(traits));
|
|
@@ -45,6 +46,9 @@ export default async (
|
|
|
45
46
|
args.push('--hotplug');
|
|
46
47
|
}
|
|
47
48
|
|
|
49
|
+
args.push('--timeout-ms');
|
|
50
|
+
args.push(timeout.toString());
|
|
51
|
+
|
|
48
52
|
const onData = (data: HotplugEvent | ListEvent) => {
|
|
49
53
|
if (isListEvent(data)) {
|
|
50
54
|
onEnumerated(
|
package/nrfutil/sandbox.ts
CHANGED
|
@@ -222,7 +222,7 @@ export class NrfutilSandbox {
|
|
|
222
222
|
},
|
|
223
223
|
}),
|
|
224
224
|
data => {
|
|
225
|
-
stdErr
|
|
225
|
+
stdErr = (stdErr ?? '') + data.toString();
|
|
226
226
|
},
|
|
227
227
|
controller
|
|
228
228
|
);
|
|
@@ -252,7 +252,7 @@ export class NrfutilSandbox {
|
|
|
252
252
|
}
|
|
253
253
|
|
|
254
254
|
if (stdErr) {
|
|
255
|
-
msg += `\
|
|
255
|
+
msg += `\n${stdErr}`;
|
|
256
256
|
}
|
|
257
257
|
|
|
258
258
|
error.message = msg;
|
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
|
|
@@ -10,14 +10,11 @@ import { useDispatch, useSelector } from 'react-redux';
|
|
|
10
10
|
import { DeviceTraits } from '../../../nrfutil/device/common';
|
|
11
11
|
import useHotKey from '../../utils/useHotKey';
|
|
12
12
|
import {
|
|
13
|
+
clearWaitForDevice,
|
|
13
14
|
getWaitingToAutoReselect,
|
|
14
15
|
setAutoSelectDevice,
|
|
15
16
|
} from '../deviceAutoSelectSlice';
|
|
16
|
-
import {
|
|
17
|
-
clearWaitForDevice,
|
|
18
|
-
startWatchingDevices,
|
|
19
|
-
stopWatchingDevices,
|
|
20
|
-
} from '../deviceLister';
|
|
17
|
+
import { startWatchingDevices, stopWatchingDevices } from '../deviceLister';
|
|
21
18
|
import { DeviceSetupConfig, setupDevice } from '../deviceSetup';
|
|
22
19
|
import DeviceSetupView from '../DeviceSetup/DeviceSetupView';
|
|
23
20
|
import {
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
import { createSlice, PayloadAction } from '@reduxjs/toolkit';
|
|
8
8
|
|
|
9
|
-
import type { RootState } from '../store';
|
|
9
|
+
import type { AppThunk, RootState } from '../store';
|
|
10
10
|
import type { Device } from './deviceSlice';
|
|
11
11
|
|
|
12
12
|
export interface WaitForDevice {
|
|
@@ -148,3 +148,10 @@ export const getLastArrivedDeviceId = (state: RootState) =>
|
|
|
148
148
|
state.deviceAutoSelect.lastArrivedDeviceId;
|
|
149
149
|
export const getArrivedButWrongWhen = (state: RootState) =>
|
|
150
150
|
state.deviceAutoSelect.arrivedButWrongWhen;
|
|
151
|
+
|
|
152
|
+
export const clearWaitForDevice = (): AppThunk => (dispatch, getState) => {
|
|
153
|
+
if (getState().deviceAutoSelect.autoReconnectTimeout) {
|
|
154
|
+
getState().deviceAutoSelect.onCancelTimeout?.();
|
|
155
|
+
}
|
|
156
|
+
dispatch(clearWaitForDeviceTimeout(true));
|
|
157
|
+
};
|
|
@@ -13,6 +13,7 @@ import NrfutilDeviceLib from '../../nrfutil/device/device';
|
|
|
13
13
|
import logger from '../logging';
|
|
14
14
|
import type { AppThunk, RootState } from '../store';
|
|
15
15
|
import {
|
|
16
|
+
clearWaitForDevice,
|
|
16
17
|
clearWaitForDeviceTimeout,
|
|
17
18
|
setArrivedButWrongWhen,
|
|
18
19
|
setDisconnectedTime,
|
|
@@ -365,13 +366,6 @@ const getAutoSelectDeviceCLISerial = () => {
|
|
|
365
366
|
return serialIndex > -1 ? argv[serialIndex + 1] : undefined;
|
|
366
367
|
};
|
|
367
368
|
|
|
368
|
-
export const clearWaitForDevice = (): AppThunk => (dispatch, getState) => {
|
|
369
|
-
if (getState().deviceAutoSelect.autoReconnectTimeout) {
|
|
370
|
-
getState().deviceAutoSelect.onCancelTimeout?.();
|
|
371
|
-
}
|
|
372
|
-
dispatch(clearWaitForDeviceTimeout(true));
|
|
373
|
-
};
|
|
374
|
-
|
|
375
369
|
export const stopWatchingDevices = (callback?: () => void) => {
|
|
376
370
|
if (stopNrfutilDevice) stopNrfutilDevice(callback);
|
|
377
371
|
else callback?.();
|
|
@@ -14,7 +14,7 @@ import { McuState } from '../../nrfutil/device/setMcuState';
|
|
|
14
14
|
import logger from '../logging';
|
|
15
15
|
import { AppThunk, RootState } from '../store';
|
|
16
16
|
import { getAppFile } from '../utils/appDirs';
|
|
17
|
-
import { setWaitForDevice } from './deviceAutoSelectSlice';
|
|
17
|
+
import { clearWaitForDevice, setWaitForDevice } from './deviceAutoSelectSlice';
|
|
18
18
|
import { DeviceSetup, DfuEntry } from './deviceSetup';
|
|
19
19
|
import { openDeviceSetupDialog } from './deviceSetupSlice';
|
|
20
20
|
import { Device } from './deviceSlice';
|
|
@@ -161,9 +161,10 @@ const switchToDeviceMode =
|
|
|
161
161
|
onFail,
|
|
162
162
|
})
|
|
163
163
|
);
|
|
164
|
-
NrfutilDeviceLib.setMcuState(device, mcuState).catch(err =>
|
|
165
|
-
|
|
166
|
-
|
|
164
|
+
NrfutilDeviceLib.setMcuState(device, mcuState).catch(err => {
|
|
165
|
+
dispatch(clearWaitForDevice());
|
|
166
|
+
onFail(err);
|
|
167
|
+
});
|
|
167
168
|
};
|
|
168
169
|
|
|
169
170
|
export const switchToBootloaderMode =
|
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';
|
|
@@ -104,8 +108,8 @@ export {
|
|
|
104
108
|
getWaitingForDeviceTimeout,
|
|
105
109
|
getWaitingToAutoReselect,
|
|
106
110
|
getWaitForDevice,
|
|
111
|
+
clearWaitForDevice,
|
|
107
112
|
} from './Device/deviceAutoSelectSlice';
|
|
108
|
-
export { clearWaitForDevice } from './Device/deviceLister';
|
|
109
113
|
export { deviceInfo } from './Device/deviceInfo/deviceInfo';
|
|
110
114
|
export { isDeviceInDFUBootloader } from './Device/sdfuOperations';
|
|
111
115
|
export {
|
|
@@ -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'>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../nrfutil/device/common.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../nrfutil/device/common.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@ declare const _default: {
|
|
|
14
14
|
list: (traits: import("./common").DeviceTraits, onEnumerated: (devices: import("./common").NrfutilDeviceWithSerialnumber[]) => void, onError: (error: Error) => void, onHotplugEvent?: {
|
|
15
15
|
onDeviceArrived: (device: import("./common").NrfutilDeviceWithSerialnumber) => void;
|
|
16
16
|
onDeviceLeft: (id: number) => void;
|
|
17
|
-
} | undefined) => Promise<{
|
|
17
|
+
} | undefined, timeout?: number) => Promise<{
|
|
18
18
|
stop: (handler?: (() => void) | undefined) => void;
|
|
19
19
|
isRunning: () => boolean;
|
|
20
20
|
onClosed: (handler: (error?: Error | undefined) => void) => () => ((error?: Error | undefined) => void)[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../../../nrfutil/device/device.ts"],"names":[],"mappings":";AAMA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../../../nrfutil/device/device.ts"],"names":[],"mappings":";AAMA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;AAoChC,wBAiBE"}
|
|
@@ -10,7 +10,7 @@ export interface ListEvent {
|
|
|
10
10
|
declare const _default: (traits: DeviceTraits, onEnumerated: (devices: NrfutilDeviceWithSerialnumber[]) => void, onError: (error: Error) => void, onHotplugEvent?: {
|
|
11
11
|
onDeviceArrived: (device: NrfutilDeviceWithSerialnumber) => void;
|
|
12
12
|
onDeviceLeft: (id: number) => void;
|
|
13
|
-
} | undefined) => Promise<{
|
|
13
|
+
} | undefined, timeout?: number) => Promise<{
|
|
14
14
|
stop: (handler?: (() => void) | undefined) => void;
|
|
15
15
|
isRunning: () => boolean;
|
|
16
16
|
onClosed: (handler: (error?: Error | undefined) => void) => () => ((error?: Error | undefined) => void)[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../nrfutil/device/list.ts"],"names":[],"mappings":"AAMA,OAAO,EACH,YAAY,EAGZ,aAAa,EACb,6BAA6B,EAChC,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,YAAY;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,aAAa,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS;IACtB,OAAO,EAAE,aAAa,EAAE,CAAC;CAC5B;iCAUW,YAAY,0BACI,6BAA6B,EAAE,KAAK,IAAI,mBAC/C,KAAK,KAAK,IAAI;8BAED,6BAA6B,KAAK,IAAI;uBAC7C,MAAM,KAAK,IAAI;;;;;;AAN1C,
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../nrfutil/device/list.ts"],"names":[],"mappings":"AAMA,OAAO,EACH,YAAY,EAGZ,aAAa,EACb,6BAA6B,EAChC,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,YAAY;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,aAAa,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS;IACtB,OAAO,EAAE,aAAa,EAAE,CAAC;CAC5B;iCAUW,YAAY,0BACI,6BAA6B,EAAE,KAAK,IAAI,mBAC/C,KAAK,KAAK,IAAI;8BAED,6BAA6B,KAAK,IAAI;uBAC7C,MAAM,KAAK,IAAI;;;;;;AAN1C,wBAqDE"}
|
|
@@ -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":"DeviceSelector.d.ts","sourceRoot":"","sources":["../../../../../src/Device/DeviceSelector/DeviceSelector.tsx"],"names":[],"mappings":";AASA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"DeviceSelector.d.ts","sourceRoot":"","sources":["../../../../../src/Device/DeviceSelector/DeviceSelector.tsx"],"names":[],"mappings":";AASA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAQ9D,OAAO,EAAE,iBAAiB,EAAe,MAAM,gBAAgB,CAAC;AAEhE,OAAO,EAEH,MAAM,EAIT,MAAM,gBAAgB,CAAC;AAKxB,MAAM,WAAW,KAAK;IAClB,aAAa,EAAE,YAAY,CAAC;IAC5B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,KAAK,IAAI,CAAC;IACrE,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,oBAAoB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;CAC9C;8KAYE,KAAK;AATR,wBAyHE"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import type { RootState } from '../store';
|
|
2
|
+
import type { AppThunk, RootState } from '../store';
|
|
3
3
|
import type { Device } from './deviceSlice';
|
|
4
4
|
export interface WaitForDevice {
|
|
5
5
|
timeout: number;
|
|
@@ -27,4 +27,5 @@ export declare const getDisconnectionTime: (state: RootState) => number | undefi
|
|
|
27
27
|
export declare const getWaitForDevice: (state: RootState) => WaitForDevice | undefined;
|
|
28
28
|
export declare const getLastArrivedDeviceId: (state: RootState) => number | undefined;
|
|
29
29
|
export declare const getArrivedButWrongWhen: (state: RootState) => boolean | undefined;
|
|
30
|
+
export declare const clearWaitForDevice: () => AppThunk;
|
|
30
31
|
//# sourceMappingURL=deviceAutoSelectSlice.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deviceAutoSelectSlice.d.ts","sourceRoot":"","sources":["../../../../src/Device/deviceAutoSelectSlice.ts"],"names":[],"mappings":";AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"deviceAutoSelectSlice.d.ts","sourceRoot":"","sources":["../../../../src/Device/deviceAutoSelectSlice.ts"],"names":[],"mappings":";AAQA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EACE,QAAQ,GACR,iBAAiB,GACjB,mBAAmB,GACnB,YAAY,GACZ,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC;IACpC,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,qBAAqB;IAClC,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACtC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAChC;AA+ED,eAAO,MACH,OAAO,6EAEH,uBAAuB,mHACvB,yBAAyB,8GACzB,mBAAmB,2HACnB,mBAAmB,2HACnB,eAAe,oGACf,gBAAgB,2GAChB,sBAAsB,8HACtB,sBAAsB,+HACtB,kBAAkB,4DAjBsC,IAAI,wCAmB3D,CAAC;AAEV,eAAO,MAAM,qBAAqB,UAAW,SAAS,uBACrB,CAAC;AAElC,eAAO,MAAM,eAAe,UAAW,SAAS,YACT,CAAC;AAExC,eAAO,MAAM,wBAAwB,UAAW,SAAS,YAElB,CAAC;AAExC,eAAO,MAAM,0BAA0B,UAAW,SAAS,YACE,CAAC;AAE9D,eAAO,MAAM,oBAAoB,UAAW,SAAS,uBACT,CAAC;AAE7C,eAAO,MAAM,gBAAgB,UAAW,SAAS,8BACT,CAAC;AAEzC,eAAO,MAAM,sBAAsB,UAAW,SAAS,uBACT,CAAC;AAC/C,eAAO,MAAM,sBAAsB,UAAW,SAAS,wBACT,CAAC;AAE/C,eAAO,MAAM,kBAAkB,QAAO,QAKrC,CAAC"}
|
|
@@ -17,6 +17,5 @@ export declare const wrapDeviceFromNrfdl: (device: NrfutilDevice) => Device;
|
|
|
17
17
|
export declare const wrapDevicesFromNrfdl: (devices: NrfutilDevice[]) => Device[];
|
|
18
18
|
export declare const hasValidDeviceTraits: (deviceTraits: DeviceTraits, requiredTraits: DeviceTraits) => boolean;
|
|
19
19
|
export declare const startWatchingDevices: (deviceListing: DeviceTraits, onDeviceConnected: (device: Device) => void, onDeviceDisconnected: (device: Device) => void, onDeviceDeselected: () => void, doSelectDevice: (device: Device, autoReselected: boolean) => void) => AppThunk<RootState, void>;
|
|
20
|
-
export declare const clearWaitForDevice: () => AppThunk;
|
|
21
20
|
export declare const stopWatchingDevices: (callback?: () => void) => void;
|
|
22
21
|
//# sourceMappingURL=deviceLister.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deviceLister.d.ts","sourceRoot":"","sources":["../../../../src/Device/deviceLister.ts"],"names":[],"mappings":"AAMA,OAAO,EACH,YAAY,EACZ,aAAa,EAEhB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"deviceLister.d.ts","sourceRoot":"","sources":["../../../../src/Device/deviceLister.ts"],"names":[],"mappings":"AAMA,OAAO,EACH,YAAY,EACZ,aAAa,EAEhB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAYpD,OAAO,EAAa,MAAM,EAAgB,MAAM,eAAe,CAAC;AA6EhE;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,WAAY,aAAa,KAAG,MAK1D,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,YAAa,aAAa,EAAE,KAAG,MAAM,EAClC,CAAC;AAErC,eAAO,MAAM,oBAAoB,iBACf,YAAY,kBACV,YAAY,YAS3B,CAAC;AAkCN,eAAO,MAAM,oBAAoB,kBAEV,YAAY,8BACC,MAAM,KAAK,IAAI,iCACZ,MAAM,KAAK,IAAI,sBAC1B,MAAM,IAAI,2BACL,MAAM,kBAAkB,OAAO,KAAK,IAAI,KAClE,SAAS,SAAS,EAAE,IAAI,CAwL1B,CAAC;AAQN,eAAO,MAAM,mBAAmB,cAAe,MAAM,IAAI,SAGxD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdfuOperations.d.ts","sourceRoot":"","sources":["../../../../src/Device/sdfuOperations.ts"],"names":[],"mappings":";AAcA,OAAO,EAAE,QAAQ,EAAa,MAAM,UAAU,CAAC;AAG/C,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAGH,QAAQ,EAIX,MAAM,cAAc,CAAC;AAUtB,eAAO,MAAM,uBAAuB,WAAY,MAAM,YAgBrD,CAAC;AAEF,eAAO,MAAM,oBAAoB,WAAY,MAAM,YAOlD,CAAC;
|
|
1
|
+
{"version":3,"file":"sdfuOperations.d.ts","sourceRoot":"","sources":["../../../../src/Device/sdfuOperations.ts"],"names":[],"mappings":";AAcA,OAAO,EAAE,QAAQ,EAAa,MAAM,UAAU,CAAC;AAG/C,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAGH,QAAQ,EAIX,MAAM,cAAc,CAAC;AAUtB,eAAO,MAAM,uBAAuB,WAAY,MAAM,YAgBrD,CAAC;AAEF,eAAO,MAAM,oBAAoB,WAAY,MAAM,YAOlD,CAAC;AA2GF,eAAO,MAAM,sBAAsB,WAEnB,MAAM,sBACM,MAAM,KAAK,IAAI,oBACjB,OAAO,KAAK,IAAI,KACnC,QAoBF,CAAC;AAEN,eAAO,MAAM,uBAAuB,WAEpB,MAAM,sBACM,MAAM,KAAK,IAAI,oBACjB,OAAO,KAAK,IAAI,KACnC,QAsBF,CAAC;AAgUN,eAAO,MAAM,eAAe,gBACX,QAAQ,EAAE,+BAExB,WA4CD,CAAC;;;;AAEH,wBAEE"}
|
|
@@ -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"}
|