Commit Graph

2313 Commits

Author SHA1 Message Date
Sam Becker
db6694740d Show status when doing an overwrite sync 2026-02-21 18:17:24 -06:00
Sam Becker
51be78e597 Redirect to photo detail after editing 2026-02-21 18:16:17 -06:00
Sam Becker
d2cca5ec9e Offer explicit sync controls 2026-02-21 14:03:44 -06:00
Sam Becker
7b115da8d4 Improve batch edit confirmation text 2026-02-19 17:43:33 -06:00
Sam Becker
922a33354f Make commit age text responsive 2026-02-19 17:24:42 -06:00
Sam Becker
0240bd56d6 Clear batch edit state when selection stops 2026-02-19 17:21:34 -06:00
Sam Becker
2feb4cf088 Add commit age to admin insights 2026-02-19 10:27:34 -06:00
Sam Becker
c3c7d6858a Increase GitHub fetch cache 2026-02-19 10:01:09 -06:00
Sam Becker
8d8d4d7925 Bump deps 2026-02-19 09:37:19 -06:00
Sam Becker
3b099eef24 Refine image url utilities 2026-02-19 09:33:38 -06:00
Sam Becker
1994f3bfba Optimize safe url generation for og images 2026-02-18 09:23:23 -06:00
Sam Becker
af672dfcf4 Remove safe-photo-image-response checks in favor of centralized solution 2026-02-18 09:06:00 -06:00
Sam Becker
284e5fedfb Introduce next/image checks in to optimize url generation 2026-02-18 09:00:44 -06:00
Sam Becker
6ba4cfe1e3 Disable checks + base64 rendering 2026-02-18 08:30:00 -06:00
Sam Becker
6f58b08e7a Temporarily remove og image checks 2026-02-17 18:32:52 -06:00
Sam Becker
4570104dd7 Reintroduce og url check with presigned urls 2026-02-17 18:28:04 -06:00
Sam Becker
51f9d4300d Remove og compatibility check 2026-02-17 18:14:46 -06:00
Sam Becker
d11cf6f62d Use presigned urls when statically pre-rendering 2026-02-17 18:11:54 -06:00
Sam Becker
44550824e7 Centralize presigned url commands 2026-02-17 17:18:04 -06:00
Sam Becker
053faae9b6 Revert image fetch change 2026-02-16 23:31:52 -06:00
Sam Becker
7c9b99bff0 Fetch og images without CORS to fix pre-rendering bugs 2026-02-16 23:25:30 -06:00
Sam Becker
3607d51c06
Select All Photos (2 of 2) (#375)
* Enable select all toggle

* Extend category path test coverage

* Preview queries when selecting all

* Hoist select all query count to app state

* Refine select photo behavior/presentation

* Refactor batch edit actions

* Refactor limit handling in path-based photo queries

* Show all tags in admin views

* Fix select all z-order
2026-02-16 09:23:28 -06:00
Sam Becker
ed6a5e4908 Stop displaying storage error on photo create 2026-02-15 23:25:21 -06:00
Sam Becker
da9e71260d Add local type to Vietnamese 2026-02-15 19:10:46 -06:00
Jason Quach
87b181afbc
Add Vietnamese (vi-vn) localisation (#376)
* Add Vietnamese translations

* Update README with Vietnamese language

* Add missing hi-in language code to README
2026-02-15 19:09:14 -06:00
Sam Becker
a63f2c3fe3
Select All Photos (1 of 2) (#372)
* Add 'select all photos' to app state

* Create general purpose bulk photo action

* Fix infinite scroll pagination, temporarily hide "select all"

* Refine batch edit behavior

* Add admin endpoints to check storage

* Add missing storage count

* Refine missing file presentation

* Finalize storage status page

* Store image-dependent photo fields when reuploading

* Move storage checks behind flag
2026-02-12 22:28:37 -06:00
Sam Becker
b664b8b203 Refine reupload capitalization 2026-02-10 22:50:38 -06:00
Sam Becker
3e3f163aa9 Refine reupload input behavior 2026-02-10 22:46:44 -06:00
Sam Becker
351f8869a6
Replace backing storage (#374)
* Centralize random suffix generation

* Introduce ••• menu in admin photos table

* Finalize re-upload behavior

* Finalize re-upload locales

* Honor resize config when re-uploading files
2026-02-10 21:17:57 -06:00
Sam Becker
1cb3c4a22c Begin storing image width + height 2026-02-01 19:05:58 -06:00
Sam Becker
42bf07445c Add Node.js version link 2026-02-01 14:50:34 -06:00
Sam Becker
3f633787cf Refine app view switcher 2026-01-31 15:22:05 -06:00
Sam Becker
0b47d9d618 Remove leading v from Node.js debug version 2026-01-31 15:15:45 -06:00
Sam Becker
58cbe73909 Refine entity badges 2026-01-31 10:57:45 -06:00
Sam Becker
cee69cd8a6 Refine main navigation toggle 2026-01-31 10:53:20 -06:00
Sam Becker
a0a1ec03a6 Add debug link for react version 2026-01-30 22:03:27 -06:00
Sam Becker
5f20bbd0f4 Fix recent upload time calculation 2026-01-30 21:54:44 -06:00
Sam Becker
6b4c4970a3 Add react version to debugging 2026-01-30 21:13:34 -06:00
Sam Becker
c9b6c1a122 Fix Next.js icon in dark mode 2026-01-30 21:07:19 -06:00
Sam Becker
545a360068 Debug node version 2026-01-30 20:58:32 -06:00
Sam Becker
3edc64d5cf Allow AI model override 2026-01-30 20:42:47 -06:00
Sam Becker
bcb37d93e6 Loosen Redis config check 2026-01-30 20:21:37 -06:00
Sam Becker
1e823048d3 Add key to qrcode share button 2026-01-23 19:40:25 -06:00
Sam Becker
68aaf42990 Refine insight empty state 2026-01-16 18:10:56 -06:00
Sam Becker
762703c8cd Fix failing date test 2026-01-11 18:46:46 -06:00
Sam Becker
4e3fdc3c29 Fix timestamp offset parsing 2026-01-11 18:28:40 -06:00
Sam Becker
95a7cc336e Refine qr code feature 2026-01-11 14:21:46 -06:00
Carlo Bortolan
43c6bceb94
QR page sharing (#368)
* Add QR to ShareModal and update next image hostnames

* Remove unused import

* Add qrcode into socials and update i18n

* Update README to include QR code option to social sharing

* Include qrcode in AdminAppConfigurationClient
2026-01-11 11:11:27 -06:00
Sam Becker
0e97d292a1 Refine Nikon implementation 2025-12-30 15:29:27 -05:00
Sam Becker
d5deab49ed Upgrade AI api 2025-12-28 15:23:29 -05:00
Rich Manalang
ec55005df2
feat: add Nikon Z Picture Control support (#361)
* feat: add Nikon Z Picture Control support

* refactor: Consolidate Fujifilm and Nikon MakerNote parsing logic and remove unused code and comments.

* fix: decode film parameter before fetching photo data.

* fix: decode URL-encoded film parameters for improved routing

* feat: Add default set of Nikon Picture Controls for consistent labels and allow for Picture Controls not already in the database to be picked from the drop down.

* feat: Add camera make context to film components for conditional Fujifilm simulation display
2025-12-28 14:23:33 -05:00
Sam Becker
86dd2c6f19 Upgrade AI model 2025-11-19 09:34:02 -06:00
Sam Becker
1dd4475ae5 Bust cache on photo add 2025-11-19 09:23:36 -06:00
Sam Becker
ab0ddeee94 Create top-level cache module 2025-11-19 09:16:23 -06:00
Sam Becker
61fca59d87 Fix cached getPhotos request 2025-11-15 17:11:15 -06:00
Sam Becker
c5c78e527e Increase cache coverage 2025-11-15 17:03:32 -06:00
Sam Becker
7662465248 Cache album queries 2025-11-15 16:31:46 -06:00
Sam Becker
64441a12c1 Add iPhone 17 generation lens specs 2025-11-14 12:57:09 -08:00
Sam Becker
32d39f7e67 Add Next.js version to config export 2025-11-14 12:06:39 -08:00
Sam Becker
667328b166 Conditionally add build identifier to <head /> 2025-11-08 15:22:33 -06:00
Sam Becker
02f2d08e04 Use next/form component when editing photos 2025-11-06 21:47:48 -06:00
Sam Becker
450bc10c7d Fix tag picker z-index when editing photo 2025-11-02 11:37:21 -06:00
Sam Becker
c8ea51cdd1
Next.js 16 (#351)
* Upgrade to next.js 16

* Allow static generation on preview

* Add note for disabled ref rule

* Report Next.js version in App Insights

* Link Next.js version
2025-11-02 11:23:52 -06:00
Sam Becker
3f1a36354d Revert to Next.js 15 2025-10-27 10:06:14 -05:00
Sam Becker
dbf55badf6
Optimize Next.js 16 behavior (#349)
* Remove unused desktop redirect component

* Tweak useEffect/setState interactions

* Address more next.js 16 linting

* Tweak secret loading

* Finish linting setstate/useeffect interactions

* Disable ref lint warnings
2025-10-27 09:49:16 -05:00
Sam Becker
537e261570 Fix Next.js 15 compatibility 2025-10-26 11:15:33 -05:00
Sam Becker
70abf8178d Remove synchronous setstate call in hover check 2025-10-26 11:00:09 -05:00
Sam Becker
ff9fc94ce1 Memoize clear share modal props callback 2025-10-26 10:37:02 -05:00
Sam Becker
e114343d1f Remove unused pathname hook 2025-10-26 10:32:09 -05:00
Sam Becker
b9c31153f2 Remove db optimization experiment 2025-10-26 10:24:47 -05:00
Sam Becker
984039edce Make infinite scroll pagination more precise 2025-10-26 10:21:12 -05:00
Sam Becker
9570a98168 Fix infinite scroll trigger 2025-10-26 09:47:11 -05:00
Sam Becker
5591635a1e
Next.js 16 (#347)
* Upgrade to Next.js 16, resolve/suppress linting errors

* Update usage of revalidateTag()

* Rename proxy.ts export

* Refactor infinite scroll data handling
2025-10-25 21:35:30 -05:00
Sam Becker
b4b89fcd37 Truncate long map hover captions 2025-10-22 09:04:41 -05:00
Sam Becker
c2a0e1585f
Album location hovers (#345) 2025-10-21 22:46:28 -05:00
Sam Becker
a03b758e3b Suppress hover on private tag 2025-10-15 20:09:55 -05:00
Sam Becker
71c732e3ff Tweak code note 2025-10-15 20:03:24 -05:00
Sam Becker
0218c07870 Only show <PlaceInput /> when location services are enabled 2025-10-15 19:52:46 -05:00
Sam Becker
362c739b75 Fix location services config reporting 2025-10-15 19:23:18 -05:00
Sam Becker
89af70134d Minimize db connection errors on initial installation 2025-10-15 09:38:15 -05:00
Sam Becker
a00e38b395
Add Locations to Albums (#334) 2025-10-15 09:37:16 -05:00
Sam Becker
5c2dd092e4 Fix album form submission bug 2025-10-05 19:13:59 -05:00
Sam Becker
e8517c6cdd Refine lightbox styles 2025-10-05 10:56:11 -05:00
Sam Becker
a2a8538948 Prevent photo selection in lightboxes 2025-10-05 10:41:54 -05:00
Sam Becker
75c4cd58fa Hide ids when editing albums 2025-10-05 10:30:06 -05:00
Sam Becker
1a7a1c1e28 Fix photo lightbox component 2025-10-05 10:13:35 -05:00
Sam Becker
4a01ee4f9e Prevent incorrect magnifying glass animations 2025-10-04 14:55:11 -05:00
Sam Becker
3b6001602a
Mobile Sidebar (#330)
* Show top entities on mobile

* Add config

* Localize 'more'/'less' text
2025-10-02 21:46:58 -05:00
Sam Becker
64c4b21f75 Add 3-photo split layout to og images 2025-09-27 22:02:19 -05:00
Sam Becker
1d0973bfd1 Create custom layout for hovers with 3 images 2025-09-27 21:33:39 -05:00
Sam Becker
e5a0c6a326 Round UI, tweak sidebar 2025-09-27 20:41:22 -05:00
Sam Becker
9819a2b81e
AI Text Refinements (#329)
* Bump deps

* Add openai object generation with zod

* Streamline AI query instructions

* Use single AI request when editing uploads

* Clean up AI text from object requests

* Fix AI text formatting logic

* Reorganize upload network requests
2025-09-27 19:33:14 -05:00
Sam Becker
ffe7fe7b3d Refine config list display 2025-09-23 17:37:21 -05:00
Sam Becker
76639a4195 Add AI query constructor 2025-09-23 17:11:58 -05:00
Sam Becker
e9d3c19c40 Pre-populate upload form with AI data 2025-09-22 09:18:57 -05:00
Sam Becker
47fe1cf383 Add next/script customization 2025-09-21 14:30:29 -05:00
Sam Becker
8482a76dd6 Fix social network key display 2025-09-21 11:04:56 -05:00
Sam Becker
bcecebe936 Reposition tag/album edit menus 2025-09-21 10:13:40 -05:00
Sam Becker
7cad939694 Add link to footer admin email 2025-09-21 10:02:16 -05:00
Sam Becker
1a592aca26 Stop categorizing database as Vercel 2025-09-21 09:48:04 -05:00