Skip to content

Commit 3f10a50

Browse files
upgrade deps
1 parent cfb83ae commit 3f10a50

10 files changed

Lines changed: 137 additions & 118 deletions

File tree

Gemfile.lock

Lines changed: 21 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ GEM
8888
bcrypt (3.1.22)
8989
benchmark (0.5.0)
9090
bigdecimal (4.1.2)
91-
brakeman (8.0.4)
91+
brakeman (8.0.5)
9292
racc
9393
builder (3.3.0)
9494
bunny (3.1.0)
@@ -142,7 +142,7 @@ GEM
142142
railties (>= 6.1.0)
143143
faker (3.8.0)
144144
i18n (>= 1.8.11, < 2)
145-
faraday (2.14.2)
145+
faraday (2.14.3)
146146
faraday-net_http (>= 2.0, < 3.5)
147147
json
148148
logger
@@ -152,26 +152,27 @@ GEM
152152
net-http (~> 0.5)
153153
globalid (1.3.0)
154154
activesupport (>= 6.1)
155-
google-apis-core (1.0.2)
156-
addressable (~> 2.8, >= 2.8.7)
155+
google-apis-core (1.2.3)
156+
addressable (~> 2.9)
157157
faraday (~> 2.13)
158158
faraday-follow_redirects (~> 0.3)
159159
googleauth (~> 1.14)
160160
mini_mime (~> 1.1)
161+
multi_json (~> 1.11)
161162
representable (~> 3.0)
162-
retriable (~> 3.1)
163+
retriable (>= 3.1, < 5.0)
163164
google-apis-iamcredentials_v1 (0.27.0)
164165
google-apis-core (>= 0.15.0, < 2.a)
165166
google-apis-storage_v1 (0.63.0)
166167
google-apis-core (>= 0.15.0, < 2.a)
167-
google-cloud-core (1.8.0)
168+
google-cloud-core (1.9.0)
168169
google-cloud-env (>= 1.0, < 3.a)
169170
google-cloud-errors (~> 1.0)
170171
google-cloud-env (2.3.1)
171172
base64 (~> 0.2)
172173
faraday (>= 1.0, < 3.a)
173174
google-cloud-errors (1.6.0)
174-
google-cloud-storage (1.60.0)
175+
google-cloud-storage (1.61.0)
175176
addressable (~> 2.8)
176177
digest-crc (~> 0.4)
177178
google-apis-core (>= 0.18, < 2)
@@ -181,13 +182,13 @@ GEM
181182
googleauth (~> 1.9)
182183
mini_mime (~> 1.0)
183184
google-logging-utils (0.2.0)
184-
googleauth (1.16.2)
185+
googleauth (1.17.0)
185186
faraday (>= 1.0, < 3.a)
186187
google-cloud-env (~> 2.2)
187188
google-logging-utils (~> 0.1)
188189
jwt (>= 1.4, < 4.0)
189-
multi_json (~> 1.11)
190190
os (>= 0.9, < 2.0)
191+
pstore (~> 0.1)
191192
signet (>= 0.16, < 2.a)
192193
hashdiff (1.2.1)
193194
hashie (5.1.0)
@@ -200,7 +201,7 @@ GEM
200201
prism (>= 1.3.0)
201202
rdoc (>= 4.0.0)
202203
reline (>= 0.4.2)
203-
json (2.19.7)
204+
json (2.19.9)
204205
jsonapi-renderer (0.2.2)
205206
jwt (3.2.0)
206207
base64
@@ -245,7 +246,7 @@ GEM
245246
mutex_m (0.3.0)
246247
net-http (0.9.1)
247248
uri (>= 0.11.1)
248-
net-imap (0.6.4)
249+
net-imap (0.6.4.1)
249250
date
250251
net-protocol
251252
net-pop (0.1.2)
@@ -266,7 +267,7 @@ GEM
266267
parser (3.3.11.1)
267268
ast (~> 2.4.1)
268269
racc
269-
passenger (6.1.3)
270+
passenger (6.1.5)
270271
logger (>= 1.7.0)
271272
rack (>= 1.6.13)
272273
rackup (>= 1.0.1)
@@ -283,6 +284,7 @@ GEM
283284
reline (>= 0.6.0)
284285
pry-rails (0.3.11)
285286
pry (>= 0.13.0)
287+
pstore (0.2.1)
286288
psych (5.4.0)
287289
date
288290
stringio
@@ -357,7 +359,7 @@ GEM
357359
responders (3.2.0)
358360
actionpack (>= 7.0)
359361
railties (>= 7.0)
360-
retriable (3.8.0)
362+
retriable (4.2.0)
361363
rexml (3.4.4)
362364
rollbar (3.8.0)
363365
rspec (3.13.2)
@@ -383,7 +385,7 @@ GEM
383385
rspec-support (3.13.7)
384386
rspec_junit_formatter (0.6.0)
385387
rspec-core (>= 2, < 4, != 2.12.0)
386-
rubocop (1.87.0)
388+
rubocop (1.88.0)
387389
json (~> 2.3)
388390
language_server-protocol (~> 3.17.0.2)
389391
lint_roller (~> 1.1.0)
@@ -397,7 +399,7 @@ GEM
397399
rubocop-ast (1.49.1)
398400
parser (>= 3.3.7.2)
399401
prism (~> 1.7)
400-
rubocop-rails (2.35.3)
402+
rubocop-rails (2.35.4)
401403
activesupport (>= 4.2.0)
402404
lint_roller (~> 1.1)
403405
rack (>= 1.1)
@@ -407,19 +409,18 @@ GEM
407409
scenic (1.9.0)
408410
activerecord (>= 4.0.0)
409411
railties (>= 4.0.0)
410-
secure_headers (7.2.0)
412+
secure_headers (7.3.0)
411413
cgi (>= 0.1)
412414
securerandom (0.4.1)
413-
signet (0.21.0)
415+
signet (0.22.0)
414416
addressable (~> 2.8)
415417
faraday (>= 0.17.5, < 3.a)
416418
jwt (>= 1.5, < 4.0)
417-
multi_json (~> 1.10)
418419
simplecov (0.22.0)
419420
docile (~> 1.1)
420421
simplecov-html (~> 0.11)
421422
simplecov_json_formatter (~> 0.1)
422-
simplecov-cobertura (3.1.0)
423+
simplecov-cobertura (3.2.0)
423424
rexml
424425
simplecov (~> 0.19)
425426
simplecov-html (0.13.2)
@@ -449,7 +450,7 @@ GEM
449450
addressable (>= 2.8.0)
450451
crack (>= 0.3.2)
451452
hashdiff (>= 0.4.0, < 2.0.0)
452-
websocket-driver (0.8.0)
453+
websocket-driver (0.8.1)
453454
base64
454455
websocket-extensions (>= 0.1.0)
455456
websocket-extensions (0.1.5)

bun.lock

Lines changed: 54 additions & 48 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

frontend/settings/pin_bindings/__tests__/pin_binding_input_group_test.tsx

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ import {
2828
} from "farmbot/dist/resources/api_resources";
2929
import { error, warning } from "../../../toast/toast";
3030
import * as ui from "../../../ui";
31-
import { FBSelectProps } from "../../../ui";
31+
import { FBSelectProps, PopoverProps } from "../../../ui";
3232
import {
3333
actRenderer,
3434
createRenderer,
@@ -38,6 +38,7 @@ import {
3838
let getDeviceSpy: jest.SpyInstance;
3939
let initSaveSpy: jest.SpyInstance;
4040
let fbSelectMock: jest.SpyInstance;
41+
let popoverMock: jest.SpyInstance;
4142

4243
beforeEach(() => {
4344
jest.clearAllMocks();
@@ -46,6 +47,9 @@ beforeEach(() => {
4647
initSaveSpy = jest.spyOn(crud, "initSave").mockImplementation(jest.fn());
4748
fbSelectMock = jest.spyOn(ui, "FBSelect")
4849
.mockImplementation(((_props: FBSelectProps) => <div />) as never);
50+
popoverMock = jest.spyOn(ui, "Popover")
51+
.mockImplementation(({ target, content }: PopoverProps) =>
52+
<div>{target}{content}</div>);
4953
mockDevice.registerGpio = jest.fn(() => Promise.resolve());
5054
mockDevice.unregisterGpio = jest.fn(() => Promise.resolve());
5155
});
@@ -54,6 +58,7 @@ afterEach(() => {
5458
getDeviceSpy.mockRestore();
5559
initSaveSpy.mockRestore();
5660
fbSelectMock.mockRestore();
61+
popoverMock.mockRestore();
5762
});
5863

5964
const AVAILABLE_PIN = 18;

frontend/three_d_garden/selection/__tests__/selection_test.tsx

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -773,18 +773,25 @@ describe("selection popup controls", () => {
773773
});
774774

775775
it("renders header color and delete buttons for supported objects", () => {
776-
[pointObject(), weedObject()].forEach(object => {
777-
const p = layerProps();
778-
const wrapper = createRenderer(<ObjectPopupHeaderColor
779-
{...p}
780-
object={object} />);
781-
expect(wrapper.toJSON()).toBeTruthy();
782-
unmountRenderer(wrapper);
783-
});
784-
expect(createRenderer(<ObjectPopupHeaderColor
785-
{...layerProps()}
786-
dispatch={undefined}
787-
object={pointObject()} />).toJSON()).toBeNull();
776+
const popoverSpy = jest.spyOn(ui, "Popover")
777+
.mockImplementation(({ target, content }: ui.PopoverProps) =>
778+
<div>{target}{content}</div>);
779+
try {
780+
[pointObject(), weedObject()].forEach(object => {
781+
const p = layerProps();
782+
const wrapper = createRenderer(<ObjectPopupHeaderColor
783+
{...p}
784+
object={object} />);
785+
expect(wrapper.toJSON()).toBeTruthy();
786+
unmountRenderer(wrapper);
787+
});
788+
expect(createRenderer(<ObjectPopupHeaderColor
789+
{...layerProps()}
790+
dispatch={undefined}
791+
object={pointObject()} />).toJSON()).toBeNull();
792+
} finally {
793+
popoverSpy.mockRestore();
794+
}
788795

789796
[
790797
plantObject(),

frontend/tools/__tests__/add_tool_test.tsx

Lines changed: 11 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
let mockSave = () => Promise.resolve();
22

33
import React from "react";
4-
import { render } from "@testing-library/react";
4+
import { act, render } from "@testing-library/react";
55
import { RawAddTool as AddTool, mapStateToProps } from "../add_tool";
66
import { fakeState } from "../../__test_support__/fake_state";
77
import { SaveBtn } from "../../ui";
@@ -49,27 +49,21 @@ describe("<AddTool />", () => {
4949
});
5050

5151
it("renders watering nozzle", () => {
52-
const wrapper = createWrapper();
53-
const instance = getInstance(wrapper);
54-
actRenderer(() => {
55-
instance.setState({ toolName: "watering nozzle" });
52+
const ref = React.createRef<AddTool>();
53+
const { container } = render(<AddTool {...fakeProps()} ref={ref} />);
54+
act(() => {
55+
ref.current?.setState({ toolName: "watering nozzle" });
5656
});
57-
const labels = wrapper.root.findAllByType("label")
58-
.map(node => node.children.join("").toLowerCase());
59-
expect(labels.some(label => label.includes("flow rate"))).toBeTruthy();
60-
unmountRenderer(wrapper);
57+
expect(container.textContent?.toLowerCase()).toContain("flow rate");
6158
});
6259

6360
it("renders seeder", () => {
64-
const wrapper = createWrapper();
65-
const instance = getInstance(wrapper);
66-
actRenderer(() => {
67-
instance.setState({ toolName: "seeder" });
61+
const ref = React.createRef<AddTool>();
62+
const { container } = render(<AddTool {...fakeProps()} ref={ref} />);
63+
act(() => {
64+
ref.current?.setState({ toolName: "seeder" });
6865
});
69-
const labels = wrapper.root.findAllByType("label")
70-
.map(node => node.children.join("").toLowerCase());
71-
expect(labels.some(label => label.includes("tip z offset"))).toBeTruthy();
72-
unmountRenderer(wrapper);
66+
expect(container.textContent?.toLowerCase()).toContain("tip z offset");
7367
});
7468

7569
it("changes flow rate", () => {

frontend/tools/__tests__/tool_slot_edit_components_test.tsx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,16 @@ const createWrapper = (element: React.ReactElement) => {
4343
return wrapper;
4444
};
4545
let fbSelectSpy: jest.SpyInstance;
46+
let popoverSpy: jest.SpyInstance;
4647

4748
beforeEach(() => {
4849
jest.clearAllMocks();
4950
jest.spyOn(deviceActions, "move").mockImplementation(jest.fn());
5051
fbSelectSpy = jest.spyOn(ui, "FBSelect")
5152
.mockImplementation(((_: ui.FBSelectProps) => <div />) as never);
53+
popoverSpy = jest.spyOn(ui, "Popover")
54+
.mockImplementation(({ target }: ui.PopoverProps) =>
55+
<div>{target}</div>);
5256
});
5357

5458
afterEach(() => {
@@ -58,6 +62,7 @@ afterEach(() => {
5862
wrapper && unmountRenderer(wrapper);
5963
}
6064
fbSelectSpy.mockRestore();
65+
popoverSpy.mockRestore();
6166
});
6267

6368
describe("<GantryMountedInput />", () => {

frontend/ui/help.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import React from "react";
22
import {
3-
PopoverInteractionKind, PopoverPosition, Position,
3+
PopoverInteractionKind, Position,
44
} from "@blueprintjs/core";
55
import { t } from "../i18next_wrapper";
66
import { Markdown } from "./markdown";
@@ -9,7 +9,7 @@ import { Popover } from "./popover";
99
export interface HelpProps {
1010
text: string;
1111
onHover?: boolean;
12-
position?: PopoverPosition;
12+
position?: Position;
1313
customIcon?: string;
1414
customClass?: string;
1515
links?: React.ReactElement[];

frontend/ui/input_error.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ export interface InputErrorProps {
99
export const InputError = (props: InputErrorProps) =>
1010
props.error
1111
? <Popover
12-
minimal={true}
1312
usePortal={false}
1413
position={Position.TOP_LEFT}
1514
interactionKind={PopoverInteractionKind.HOVER}

frontend/ui/popover.tsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,18 @@
11
import React from "react";
22
import {
3-
Popover as BlueprintPopover,
3+
PopoverNext as BlueprintPopover,
44
PopoverProps as BasePopoverProps,
5+
popoverPropsToNextProps,
56
} from "@blueprintjs/core";
67

78
export interface PopoverProps extends BasePopoverProps {
89
target: React.ReactNode;
910
}
1011

1112
export const Popover = (props: PopoverProps) => {
13+
const nextProps = popoverPropsToNextProps({ ...props, minimal: true });
1214
return <span className={`bp6-popover-wrapper ${props.className}`}>
13-
<BlueprintPopover {...props} minimal={true}>
15+
<BlueprintPopover {...nextProps}>
1416
{props.target}
1517
</BlueprintPopover>
1618
</span>;

0 commit comments

Comments
 (0)