Commit Graph
3440 Commits
Author SHA1 Message Date
juhanikatandGitHub dd4d1fed2f remove cache flags from lint commands (#1236) 2026-08-17 12:25:22 +03:00
juhanikatandGitHub 7143da32c1 change import statement to import type (#1227) 2026-08-04 15:45:25 +03:00
juhanikatandGitHub e9fa3e3b31 Improve loading times by splitting pages.tsx into smaller files and improving the locality map (#1224)
* split pages.tsx into multiple files, and update ui e2e test since occurrence rename

* reduce size of countryBoundingBoxes and countryPolygons

* update files again, and update countryExport script

* update files again, add more simplified geojson files, and update countryExport with Copilot
2026-08-04 13:51:13 +03:00
fa6dc11fee Update backend services, user right tests and user right documentation (#1217)
* update some backend tests slightly, and update user right docs

* improve locality updating tests

* refactor species merge tests, and add more user rights tests to merging

* fix locality user right issue with users being able to bypass project membership requirements by adding new projects when updating a project, and add tests

* fix small, copilot suggested issues

* change bigint value back to number, and fix hanging test

* add error content checks and  get request test for regions

* add error content checks and reorder tests in time bound/time unit

* add person get tests, update delete tests, and update user right docs

* update museum tests

* update testing docs

* add tests for all user groups in project delete tests

* add more user right tests to project/ and projects/

* Fix pid test

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Rename project get test describe block

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-07-20 15:01:14 +03:00
juhanikatandGitHub 4dff86367b Fix navigation inside tabs with a tableview replacing all query param… (#1218)
* fix navigation inside tabs with a tableview replacing all query params in url

* fix copilot suggested issues relating to encoding urls
2026-07-12 13:44:50 +03:00
juhanikatandGitHub 9b98a91ee4 fix menuitems not showing in table export menus, and give them keys (#1214) 2026-06-30 13:30:15 +03:00
juhanikatandGitHub 8f97de1019 Remove species test from root directory, and update the corresponding… (#1180)
* Remove species test from root directory, and update the corresponding test in api-tests

* fix permission test

* update species tests
2026-06-29 13:56:06 +03:00
juhanikatandGitHub 17eb6dda0a Change renderExtraExportMenuItems to an array of ReactNodes (#1205)
* Change renderExtraExportMenuItems from a ReactNode to an array of ReactNodes

* update typing and extramenuitem rendering

* remove useless import
2026-06-29 12:53:00 +03:00
f2aa36c13f Fix tables showing incorrect amount of pages, and some other table issues (#1198)
* fix pagination showing incorrect page amount when filtera are applied

* fix issue with occurences table resetting to first page, and make page numbers accurate in all tables

* fix error in occurences table menu bar

* remove pagination from TableView useEffect dependencies to break rerender loop

* update server side pagination useEffect with CoPilot

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* remove useless else-clause from useEffect

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-29 12:16:04 +03:00
Kari LintulaaksoandGitHub 1fd19ba6cc Merge pull request #1200 from nowcommunity/metadata-darwincore-export
[codex] Update Darwin Core export metadata
1.4.0
2026-06-15 16:28:36 +03:00
karilint bae0593b5a Page filtered occurrence key export lookup 2026-06-15 16:06:22 +03:00
karilint 2b970e920b Narrow Darwin Core export validation catches 2026-06-15 15:54:44 +03:00
karilint d57a8b3a6b Skip filtered lookup for empty occurrence exports 2026-06-15 15:25:24 +03:00
karilint bf464fe579 Address filtered export review comments 2026-06-15 15:11:49 +03:00
karilint 0c4e44f947 Address follow-up Darwin Core review comments 2026-06-15 14:33:45 +03:00
karilint bbc11e44b9 Address Darwin Core export review comments 2026-06-15 14:09:24 +03:00
Kari LintulaaksoandGitHub 53ac4192ff Merge branch 'main' into metadata-darwincore-export 2026-06-11 18:25:48 +03:00
karilint 7c4199d819 Fix Darwin Core export filename tests 2026-06-11 17:54:50 +03:00
karilint 24d4248272 Update Darwin Core export metadata 2026-06-11 17:13:29 +03:00
Kari LintulaaksoandGitHub 771e3724a0 Merge pull request #1179 from nowcommunity/remove-vscode-folder-from-repo
Remove vscode folder from repo
2026-06-11 11:38:02 +03:00
Kari LintulaaksoandGitHub 07848bd7f9 Merge branch 'main' into remove-vscode-folder-from-repo 2026-06-11 11:19:09 +03:00
Kari LintulaaksoandGitHub b23f08a743 Merge pull request #1197 from nowcommunity/codex/1193-leaflet-markercluster-sourcemap
[codex] Remove missing markercluster sourcemap reference
2026-06-11 11:09:44 +03:00
juhanikat e100e41fd3 update gitignore 2026-06-09 13:36:28 +03:00
juhanikat 98801a6730 Revert "remove phpmyadmin service from docker compose files, since they cause issues"
This reverts commit 8b8f985642540d783b31b20ea747e7e7a93d3b9e.
2026-06-09 13:36:28 +03:00
juhanikat 9bb51872fc Remove vscode settings from repo 2026-06-09 13:36:28 +03:00
juhanikat 5f92b6008f remove phpmyadmin service from docker compose files, since they cause issues 2026-06-09 13:36:28 +03:00
karilint 3c9fe6f753 Remove missing markercluster sourcemap reference 2026-06-04 17:45:58 +03:00
Kari LintulaaksoandGitHub d6ebb0fcc7 Merge pull request #1196 from nowcommunity/codex/730-admin-password-management
[codex] Fix generated password validation
2026-06-04 17:27:37 +03:00
karilint 5376e3a3ea Fix generated password validation 2026-06-04 16:00:26 +03:00
Kari LintulaaksoandGitHub 1fed41da80 Merge pull request #1195 from nowcommunity/codex/1192-occurrence-row-history
[codex] Add occurrence row history
2026-06-04 15:54:09 +03:00
karilint 4394250980 Add occurrence row history 2026-06-04 15:20:34 +03:00
Kari LintulaaksoandGitHub 214ead702b Merge pull request #1194 from nowcommunity/codex/1191-entry-history-locality-relations
[codex] Add locality relation entry history
2026-06-03 17:47:49 +03:00
karilint 146aeeb5d7 Add locality relation entry history 2026-06-03 17:26:55 +03:00
Kari LintulaaksoandGitHub 69387fad37 Merge pull request #1190 from nowcommunity/codex/1183-single-field-update-log-ui
Add field update history popover
2026-06-03 15:06:26 +03:00
karilint a1c105bb50 Fix taxonomy tab context mock 2026-06-03 15:02:28 +03:00
karilint 5a167a408c Address field update history review 2026-06-03 14:26:19 +03:00
karilint 3a6e14d3a4 Add field update history popover 2026-05-29 18:02:10 +03:00
Kari LintulaaksoandGitHub f819ce6909 Merge pull request #1188 from nowcommunity/codex/1056-web-freezing-locality-map
fix: Lazy load country polygons to prevent UI freeze (#1056)
2026-05-29 16:20:11 +03:00
Kari LintulaaksoandGitHub edcd66a4f1 Merge branch 'main' into codex/1056-web-freezing-locality-map 2026-05-29 16:05:11 +03:00
Kari LintulaaksoandGitHub 5ba23e1ecd Merge pull request #1187 from nowcommunity/codex/1184-time-unit-error
fix: Fix invalid blocker state transition in UnsavedChangesProvider (#1184)
2026-05-29 16:02:38 +03:00
Kari LintulaaksoandGitHub 8233244ea4 Merge branch 'main' into codex/1184-time-unit-error 2026-05-29 15:47:53 +03:00
Kari LintulaaksoandGitHub 820b768fd3 Merge pull request #1186 from nowcommunity/codex/1185-error-boundary
feat: Add ErrorBoundary and RouterError for better error UX (#1185)
2026-05-29 15:47:02 +03:00
karilint 88bed7adca fix: Hide router error details in production 2026-05-29 15:22:58 +03:00
copilot-swe-agent[bot]andGitHub 5450e511bb fix: avoid duplicate country border layers 2026-05-29 12:00:42 +00:00
karilint 7e732d9faa Remove redundant blocker state guard 2026-05-29 14:55:42 +03:00
copilot-swe-agent[bot]andGitHub 694181623b fix: avoid map reinit during lazy country border loading 2026-05-29 11:55:00 +00:00
karilint 8eb60884ed fix: Lazy load country polygons to prevent UI freeze (#1056)
Fix #1056: Web freezing when loading locality map.

The countryPolygons.ts file is 4.4MB and was being imported synchronously,
causing the main thread to block and the UI to freeze.

Solution:
- Dynamically import countryPolygons using async import()
- Only load the data after the map component mounts
- Add loading state for country borders

This prevents the large module from blocking the main thread during
initial page load.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-29 14:10:44 +03:00
karilint 1d454e7d3e fix: Hide error details from production users in ErrorBoundary
Security fix for PR #1186: ErrorBoundary was leaking internal implementation
details (stack traces, error messages) to end users in production.

- Gate error details section to development mode only using import.meta.env.DEV
- In production, only show generic error message and reload button
- Prevents information disclosure while maintaining debugging capability in dev

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-29 13:59:13 +03:00
karilint 4ae003a540 fix: Fix invalid blocker state transition in UnsavedChangesProvider
Fix #1184: Time Unit error caused by invalid blocker state transition.

The error 'Invalid blocker state transition: unblocked -> proceeding' occurred
when calling blocker.proceed() in UnsavedChangesProvider.

Root cause: setDirty(false) was called before blocker.proceed?.(), which
triggered a re-render that could change the blocker state before proceed was
called. This caused React Router's internal state machine to receive a proceed
call when the blocker was no longer in the 'blocked' state.

Fix:
- Call blocker.proceed?.() before setDirty(false) in handleConfirm
- Add additional state check in isSamePathNavigation useEffect to ensure
  blocker is still 'blocked' before calling proceed()

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-29 11:35:54 +03:00
karilint 62c79a500d feat: Add ErrorBoundary and RouterError for better error UX
Implement #1185: Provide ErrorBoundary and errorElement to catch and display
application errors gracefully.

- Add ErrorBoundary component to catch React component render errors
- Add RouterError component to catch React Router v6 data router errors
- Wrap RouterProvider with ErrorBoundary in main.tsx
- Add errorElement to root route in router

This provides a better user experience when the application encounters errors,
showing a user-friendly error page with options to reload or go back instead
of the default React error screen.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-29 11:15:27 +03:00