Skip to content

Commit c188e40

Browse files
committed
deps: update vulnerable packages
- Fixes dependabot alert findings: 212, 201, 198, 193, 187, 186, 185, 184, 183, 182, 180, 179, 178, 166 and 164 - Moved unnecessary packages from dependencies to devDependencies Refs: KEH-281
1 parent 3f128bb commit c188e40

24 files changed

Lines changed: 2994 additions & 4125 deletions

File tree

CHANGELOG.md

Lines changed: 13 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4,60 +4,52 @@
44

55
## [4.2.3](https://github.com/City-of-Helsinki/kukkuu-admin/compare/kukkuu-admin-v4.2.2...kukkuu-admin-v4.2.3) (2026-03-23)
66

7-
87
### Dependencies
98

10-
* Bump eslint plugins Refs: RATY-299 ([9697b05](https://github.com/City-of-Helsinki/kukkuu-admin/commit/9697b05e8dcb7f9af6298879b8e15eff4002914a))
11-
* Bump flatted from 3.4.1 to 3.4.2 ([96eb4ef](https://github.com/City-of-Helsinki/kukkuu-admin/commit/96eb4ef95a7d3b35e4e91108cfba1f2b2cd1a6bf))
9+
- Bump eslint plugins Refs: RATY-299 ([9697b05](https://github.com/City-of-Helsinki/kukkuu-admin/commit/9697b05e8dcb7f9af6298879b8e15eff4002914a))
10+
- Bump flatted from 3.4.1 to 3.4.2 ([96eb4ef](https://github.com/City-of-Helsinki/kukkuu-admin/commit/96eb4ef95a7d3b35e4e91108cfba1f2b2cd1a6bf))
1211

1312
## [4.2.2](https://github.com/City-of-Helsinki/kukkuu-admin/compare/kukkuu-admin-v4.2.1...kukkuu-admin-v4.2.2) (2026-03-16)
1413

15-
1614
### Dependencies
1715

18-
* Bump axios from 1.12.0 to 1.13.5 ([6c28da1](https://github.com/City-of-Helsinki/kukkuu-admin/commit/6c28da1ca38f0313fed6a9cfbfe2a1206ccb93fe))
19-
* Bump flatted from 3.3.2 to 3.4.1 ([8baed2b](https://github.com/City-of-Helsinki/kukkuu-admin/commit/8baed2bd38b6993979f26833be508a72e88807b6))
16+
- Bump axios from 1.12.0 to 1.13.5 ([6c28da1](https://github.com/City-of-Helsinki/kukkuu-admin/commit/6c28da1ca38f0313fed6a9cfbfe2a1206ccb93fe))
17+
- Bump flatted from 3.3.2 to 3.4.1 ([8baed2b](https://github.com/City-of-Helsinki/kukkuu-admin/commit/8baed2bd38b6993979f26833be508a72e88807b6))
2018

2119
## [4.2.1](https://github.com/City-of-Helsinki/kukkuu-admin/compare/kukkuu-admin-v4.2.0...kukkuu-admin-v4.2.1) (2026-01-27)
2220

23-
2421
### Dependencies
2522

26-
* Bump lodash from 4.17.21 to 4.17.23 ([f7c24a4](https://github.com/City-of-Helsinki/kukkuu-admin/commit/f7c24a4561c61b6ca305ee238c655ef1b34a77d2))
23+
- Bump lodash from 4.17.21 to 4.17.23 ([f7c24a4](https://github.com/City-of-Helsinki/kukkuu-admin/commit/f7c24a4561c61b6ca305ee238c655ef1b34a77d2))
2724

2825
## [4.2.0](https://github.com/City-of-Helsinki/kukkuu-admin/compare/kukkuu-admin-v4.1.1...kukkuu-admin-v4.2.0) (2026-01-09)
2926

30-
3127
### Features
3228

33-
* Yarn install hardening RATY-280 ([b522a60](https://github.com/City-of-Helsinki/kukkuu-admin/commit/b522a6048da5436a74c8417551561013ffe7d862))
34-
29+
- Yarn install hardening RATY-280 ([b522a60](https://github.com/City-of-Helsinki/kukkuu-admin/commit/b522a6048da5436a74c8417551561013ffe7d862))
3530

3631
### Bug Fixes
3732

38-
* Testcafe disable local network checks ([4a6ecda](https://github.com/City-of-Helsinki/kukkuu-admin/commit/4a6ecda479b9e33588899c217e774a4e88d29280))
33+
- Testcafe disable local network checks ([4a6ecda](https://github.com/City-of-Helsinki/kukkuu-admin/commit/4a6ecda479b9e33588899c217e774a4e88d29280))
3934

4035
## [4.1.1](https://github.com/City-of-Helsinki/kukkuu-admin/compare/kukkuu-admin-v4.1.0...kukkuu-admin-v4.1.1) (2025-12-09)
4136

42-
4337
### Dependencies
4438

45-
* Bump jws from 3.2.2 to 3.2.3 ([91e29a6](https://github.com/City-of-Helsinki/kukkuu-admin/commit/91e29a637458f939097c63bba2f07d4fa1a1e86b))
46-
* Upgrade jsonwebtoken to 9.0.3 ([19e6f18](https://github.com/City-of-Helsinki/kukkuu-admin/commit/19e6f186030b6c7055b61d87adaeaa09126160db))
39+
- Bump jws from 3.2.2 to 3.2.3 ([91e29a6](https://github.com/City-of-Helsinki/kukkuu-admin/commit/91e29a637458f939097c63bba2f07d4fa1a1e86b))
40+
- Upgrade jsonwebtoken to 9.0.3 ([19e6f18](https://github.com/City-of-Helsinki/kukkuu-admin/commit/19e6f186030b6c7055b61d87adaeaa09126160db))
4741

4842
## [4.1.0](https://github.com/City-of-Helsinki/kukkuu-admin/compare/kukkuu-admin-v4.0.6...kukkuu-admin-v4.1.0) (2025-11-26)
4943

50-
5144
### Features
5245

53-
* Add csp report-uri Ref: KK-1477 ([7dc2e0b](https://github.com/City-of-Helsinki/kukkuu-admin/commit/7dc2e0bc056efd1f232344dcb546813fa842b232))
54-
* Enable cloud Sentry Ref: KK-1477 ([4f4482f](https://github.com/City-of-Helsinki/kukkuu-admin/commit/4f4482ff7811f09038e2a1bc522dfaba5fb8adab))
55-
* Generate sourcemaps Ref: KK-1477 ([4f4482f](https://github.com/City-of-Helsinki/kukkuu-admin/commit/4f4482ff7811f09038e2a1bc522dfaba5fb8adab))
56-
46+
- Add csp report-uri Ref: KK-1477 ([7dc2e0b](https://github.com/City-of-Helsinki/kukkuu-admin/commit/7dc2e0bc056efd1f232344dcb546813fa842b232))
47+
- Enable cloud Sentry Ref: KK-1477 ([4f4482f](https://github.com/City-of-Helsinki/kukkuu-admin/commit/4f4482ff7811f09038e2a1bc522dfaba5fb8adab))
48+
- Generate sourcemaps Ref: KK-1477 ([4f4482f](https://github.com/City-of-Helsinki/kukkuu-admin/commit/4f4482ff7811f09038e2a1bc522dfaba5fb8adab))
5749

5850
### Bug Fixes
5951

60-
* Use correct release variable Ref: KK-1477 ([c881109](https://github.com/City-of-Helsinki/kukkuu-admin/commit/c881109058ac9c9232aa5929494803b70a797e74))
52+
- Use correct release variable Ref: KK-1477 ([c881109](https://github.com/City-of-Helsinki/kukkuu-admin/commit/c881109058ac9c9232aa5929494803b70a797e74))
6153

6254
## [4.0.6](https://github.com/City-of-Helsinki/kukkuu-admin/compare/kukkuu-admin-v4.0.5...kukkuu-admin-v4.0.6) (2025-10-24)
6355

LICENSE.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
2+
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
3+
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
4+
15
MIT License
26

37
Copyright (c) 2024 City of Helsinki

README.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,6 @@ If you're using a local Kukkuu API backend (`VITE_API_URI=http://localhost:8081/
188188
1. **Start the backend:** Ensure your local Kukkuu API backend is running.
189189

190190
2. **Access the Django admin interface:**
191-
192191
- Open the Django admin interface: http://localhost:8081/admin/
193192
- Log in with the default credentials: username `admin`, password `admin`. If you don't have an admin user yet, you can create one with `python manage.py createsuperuser`.
194193

@@ -203,12 +202,10 @@ You should now be able to log in to Kukkuu-admin with that user.
203202
If you're using the test environment's backend (`VITE_API_URI=https://kukkuu.api.test.hel.ninja/graphql`), you'll need to grant superuser privileges to your user account. Here's how:
204203

205204
1. **Obtain Django admin credentials:**
206-
207205
- Contact the administrator of the test environment's backend to get the credentials to its Django admin **or**
208206
- If you have access to the [backend pod in OpenShift](https://console-openshift-console.apps.arodevtest.hel.fi/k8s/ns/hki-kuva-kukkuu-test/pods?name=kukkuu-api&orderBy=desc&sortBy=Status&rowFilter-pod-status=Running), you can create a superuser by running `python manage.py createsuperuser` in the pod's terminal.
209207

210208
2. **Access the Django admin interface:**
211-
212209
- Open the Django admin interface for the test environment's backend at https://kukkuu.api.test.hel.ninja/admin
213210
- Log in using the credentials from step 1.
214211

package.json

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646
"@mui/lab": "^5.0.0-alpha.146",
4747
"@mui/material": "^5.14.11",
4848
"@mui/styles": "^5.14.11",
49+
"@nabla/vite-plugin-eslint": "^3.0.1",
4950
"@sentry/browser": "^10.25.0",
5051
"@testing-library/jest-dom": "^6.1.3",
5152
"@testing-library/react": "^14.0.0",
@@ -62,7 +63,7 @@
6263
"@types/react-router-dom": "^5.3.3",
6364
"@typescript-eslint/eslint-plugin": "^8.57.1",
6465
"@typescript-eslint/parser": "^8.57.1",
65-
"@vitejs/plugin-react": "^4.3.4",
66+
"@vitejs/plugin-react": "^5.1.0",
6667
"@vitest/coverage-v8": "^3.0.7",
6768
"@vitest/eslint-plugin": "^1.6.13",
6869
"apollo-upload-client": "^17.0.0",
@@ -99,9 +100,8 @@
99100
"react-dom": "^18.2.0",
100101
"react-idle-timer": "^5.7.2",
101102
"typescript": "<5.4.0",
102-
"vite": "^6.4.2",
103-
"vite-plugin-eslint": "^1.8.1",
104-
"vite-tsconfig-paths": "^5.1.4",
103+
"vite": "^7.0.0",
104+
"vite-tsconfig-paths": "^6.1.1",
105105
"vitest": "^3.0.7",
106106
"vitest-localstorage-mock": "^0.1.2",
107107
"vitest-sonar-reporter": "^2.0.0",
@@ -111,10 +111,10 @@
111111
"@commitlint/cli": "^19.6.1",
112112
"@commitlint/config-conventional": "^19.6.0",
113113
"@ffmpeg-installer/ffmpeg": "^1.1.0",
114-
"@graphql-codegen/add": "^5.0.0",
115-
"@graphql-codegen/cli": "^5.0.0",
116-
"@graphql-codegen/typescript": "^4.0.1",
117-
"@graphql-codegen/typescript-operations": "^4.0.1",
114+
"@graphql-codegen/add": "^6.0.0",
115+
"@graphql-codegen/cli": "^6.2.1",
116+
"@graphql-codegen/typescript": "^5.0.9",
117+
"@graphql-codegen/typescript-operations": "^5.0.9",
118118
"@graphql-codegen/typescript-react-apollo": "^4.1.0",
119119
"@testing-library/testcafe": "^5.0.0",
120120
"doctoc": "^2.2.1",
@@ -124,5 +124,10 @@
124124
"lint-staged": "^15.4.3",
125125
"testcafe": "^3.7.1",
126126
"testcafe-reporter-html": "^1.4.6"
127+
},
128+
"resolutions": {
129+
"@types/minimatch": "^5.1.2",
130+
"lodash": "^4.18.1",
131+
"underscore": "^1.13.8"
127132
}
128133
}

src/assets/styles/index.css

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
body {
22
margin: 0;
3-
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto',
4-
'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',
5-
'Helvetica Neue', sans-serif;
3+
font-family:
4+
-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu',
5+
'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
66
-webkit-font-smoothing: antialiased;
77
-moz-osx-font-smoothing: grayscale;
88
}
99

1010
code {
11-
font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
12-
monospace;
11+
font-family:
12+
source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace;
1313
}

src/common/components/languageTab/__tests__/LanguageTabs.test.jsx

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,23 @@ describe('LanguageTabs', () => {
3636
});
3737

3838
it('renders correctly', () => {
39-
const { container } = render(<LanguageTabs />);
40-
expect(container).toMatchSnapshot();
39+
render(<LanguageTabs />);
40+
expect(screen.getByRole('tablist')).toBeInTheDocument();
41+
42+
const selectedTab = screen.getByRole('tab', {
43+
name: 'languages.en',
44+
selected: true,
45+
});
46+
expect(selectedTab).toHaveAttribute('aria-selected', 'true');
4147
});
4248

4349
it('renders the correct number of tabs', () => {
4450
render(<LanguageTabs />);
4551
const tabs = screen.getAllByRole('tab');
4652
expect(tabs.length).toBe(mockLanguages.length);
53+
expect(mockTranslate).toHaveBeenCalledWith('languages.en');
54+
expect(mockTranslate).toHaveBeenCalledWith('languages.fi');
55+
expect(mockTranslate).toHaveBeenCalledWith('languages.sv');
4756
});
4857

4958
it('calls selectLanguage when a tab is clicked', () => {

src/common/components/languageTab/__tests__/__snapshots__/LanguageTabs.test.jsx.snap

Lines changed: 0 additions & 60 deletions
This file was deleted.

src/domain/application/__tests__/App.test.tsx

Lines changed: 28 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { MessageChannel } from 'worker_threads';
22

33
import React from 'react';
4-
import { render, cleanup } from '@testing-library/react';
4+
import { render, cleanup, screen } from '@testing-library/react';
55

66
import App, { getReactAdminResources } from '../App';
77
import dataProvider from '../../../api/dataProvider';
@@ -60,19 +60,28 @@ test('renders without crashing', () => {
6060
},
6161
});
6262

63-
const { container } = render(<App />);
64-
expect(container).toMatchSnapshot();
63+
render(<App />);
64+
expect(screen.getByText(/kulttuurin kummilapset admin/i)).toBeInTheDocument();
6565
});
6666

6767
describe('getReactAdminResources', () => {
6868
const allResourceNames = [
69+
'events-and-event-groups',
70+
'events',
71+
'venues',
72+
'children',
73+
'occurrences',
74+
'messages',
75+
'event-groups',
76+
];
77+
78+
const resourceNamesWithoutChildren = [
6979
'events-and-event-groups',
7080
'events',
7181
'venues',
7282
'occurrences',
7383
'messages',
7484
'event-groups',
75-
'children',
7685
];
7786

7887
const adminPermissionsBase: Permissions = {
@@ -104,16 +113,27 @@ describe('getReactAdminResources', () => {
104113
});
105114

106115
expect(resources.length).toBe(allResourceNames.length);
107-
expect(resources.map((r) => r.name).includes('children')).toBe(true);
108-
expect(resources).toMatchSnapshot();
116+
expect(resources.map((r) => r.name)).toEqual(allResourceNames);
117+
118+
const eventResource = resources.find((r) => r.name === 'events');
119+
expect(eventResource).toBeDefined();
120+
expect(eventResource?.create).toBeDefined();
121+
expect(eventResource?.edit).toBeDefined();
122+
expect(eventResource?.show).toBeDefined();
123+
124+
const childrenResource = resources.find((r) => r.name === 'children');
125+
expect(childrenResource).toBeDefined();
126+
expect(childrenResource?.list).toBeDefined();
127+
expect(childrenResource?.show).toBeDefined();
109128
});
110129

111130
it('should hide the children resource when user does not have canViewFamiliesWithinProject permission', () => {
112131
const resources = getReactAdminResources(project.id, {
113132
...adminPermissionsBase,
114133
canViewFamiliesWithinProject: (projectId?: string) => false,
115134
});
116-
expect(resources.length).toBe(allResourceNames.length - 1);
117-
expect(resources.map((r) => r.name).includes('children')).toBe(false);
135+
expect(resources.length).toBe(resourceNamesWithoutChildren.length);
136+
expect(resources.map((r) => r.name)).toEqual(resourceNamesWithoutChildren);
137+
expect(resources.find((r) => r.name === 'children')).toBeUndefined();
118138
});
119139
});

0 commit comments

Comments
 (0)