Commit Graph

59 Commits

Author SHA1 Message Date
Sam Becker
e9d3c19c40 Pre-populate upload form with AI data 2025-09-22 09:18:57 -05:00
Sam Becker
ee9f3f4dc2
Album upgrades (#326)
* Add tag-to-album upgrade, introduce tag/album ••• menus

* Refine entity ••• menus

* Add album tagging to "Select ..." mode

* Finalize batch select/upload add album

* Refine final tag/album interactions

* Refine upgradeTagToAlbum capitalization

* Fix batch album upload, z-index issues

* Refine readonly styles
2025-09-18 22:41:12 -05:00
Sam Becker
1e66815a3d
Albums (#315)
* Make /db top-level module

* Create Album type

* Pin pnpm version

* Generalize query modules

* Finalize album postgres data type

* Remove temp albums prop

* Create basic album primitives

* Fix temporary album bugs

* Add albums to sidebar

* Disambiguate string date utilities

* Localize album language

* Add album join option to core photo queries

* Tweak album icon placement

* Add album photo detail page

* Refine Album data model

* Display album subhead when available

* Generate album og images

* Finalize album share modal

* Add albums to sitemap

* Statically pre-render albums

* Display tags on albums

* Add albums to cmd-k menu

* Handle album tag overflow

* Stop truncating album subheads

* Create core admin album views

* Make albums editable

* Create/edit albums on photo save, add delete album
2025-09-16 21:47:22 -05:00
Sam Becker
b8c01492b8
Store optimized assets for all photos (#304)
* Begin storing optimized photo files

* Increase optimized image size to 1080

* Refactor photo/storage modules

* Refine storage file naming api

* Simplify photo storage api

* Finalize photo storage api

* Start storing/serving optimized photos

* Finalize optimized photo asset generation

* Temporarily allow static optimization on PREVIEW branches

* Restore static optimization as production-only

* Remove og image inline-flex class

* Tweak convert upload signature

* Refactor optimized file storage

* Display optimized files when they exist in photo form

* Create small disclosure component

* Report photo storage files more accurately

* Sort optimized files

* Generate optimized storage files when updating/syncing photos

* Include source bucket when copying files with MinIO

* Make deleting files more resilient
2025-09-06 23:20:20 -05:00
Sam Becker
59f5c74269
Chromatic sorting (#284)
* Test color palette extraction

* Fix import

* Add hex <> oklch conversions

* Add 'hue' storage to photos

* Consolidate color modules

* Add chromatic config, track missing color data

* Bump deps

* Fix lens text test

* Finalize color storage

* Refactor color imports

* Hide form color data when disabled

* Store all average oklch color components

* Finalize color-config language

* Optimize photo syncing for color data

* Only update color data when syncing if possible

* Build out all color sorts

* Debug image colors

* Improve color debugging

* Improve color logging

* Simplify color sorting

* Bump deps

* Fix color sync logic

* Switch to sort params: ascending, descending

* Fix commandk sort menu

* Update tr-tr sorting language

* Add color capture to all photo extractions

* Add color visualization to photo form

* Standardize photo update language

* Create global debug color update function

* Improve color data capture logging

* Update maximum function duration for admin photos

* Add note to remove maxDuration

* Use AI to generate sorting color

* Conditionally use AI to analyze colors

* Manage AI color analysis batched requests

* Fix color reporting in admin photo table

* Only update color where AI fields are missing

* Temporarily upgrade admin/photos timeout

* Fix pro-based max duration

* Standardize color sorting foundations

* Update color sorting language

* Refactor color calculations

* Restore max duration time

* Update color-based sort menu labels

* Finalize color documentation

* Clean up color test actions

* Round color sort values before submitting to db

* Consolidate color server actions
2025-08-03 19:31:02 -05:00
Sam Becker
646f32e642
Rich sort controls (#283)
* Generalize app switcher menus

* Organize sort module

* Build configuration for nav sort control

* Refine sort menu styles

* Upgrade next.js

* Reset custom sort when clicking grid/full a second time

* Light up sort button when overridden
2025-07-15 22:43:36 -05:00
Sam Becker
aefda2db19 Add section menu to admin app config 2025-07-13 18:38:33 -05:00
Sam Becker
5987ab9bdb Restore FieldsetWithStatus location 2025-07-10 17:12:41 -05:00
Sam Becker
d2ba985328 Temporarily move FieldsetWithStatus due to case insensitivity bug 2025-07-10 17:04:42 -05:00
Sam Becker
217baba066 Revert FieldSetWithStatus case change on imports 2025-07-10 10:01:49 -05:00
Sam Becker
c9484a5658 Revert FieldSetWithStatus case change 2025-07-10 10:00:18 -05:00
Sam Becker
9cea328386
Combine visibility setting into single dropdown (#281) 2025-07-10 09:58:27 -05:00
Sam Becker
b7cb6715b7
Speed up category hovers (#279)
* Extract out ShareHover components
* Refactor hover/category state
* Rename photo query options types
* Restore category count slice of app state
* Streamline entity hover headers
* Standardize swr keys
* Suppress hover counts to years
* Refine entity hover design
* Make image hovers opt out
2025-07-04 12:19:45 -05:00
Sam Becker
144e68b965 Improve add/edit upload functionality 2025-06-18 18:35:10 -05:00
Sam Becker
61f358b73b Rename photo 'sync' to 'updates' 2025-04-20 22:41:35 -05:00
Sam Becker
6910ccbbcd Remove last 'outdated' references 2025-04-20 17:06:39 -05:00
Sam Becker
f22d5f85a8 Consolidate outdated/needs AI text sync statuses 2025-04-19 15:00:24 -05:00
Sam Becker
00932b6687 Rename 'outdated' to 'sync,' change path 2025-04-19 11:23:32 -05:00
Sam Becker
dfbe3151ca Show recipe data when viewing film set 2025-04-16 09:24:53 -05:00
Sam Becker
4eacce7456 Cache photo meta queries 2025-04-06 15:00:24 -05:00
Sam Becker
99dde505b3 Standardize recipe props 2025-04-01 21:15:55 -05:00
Sam Becker
f9db50e41a Generalize film type and labeling strategy 2025-04-01 21:08:36 -05:00
Sam Becker
c94e641627 Optimize photo edit network request 2025-03-31 00:27:54 -05:00
Sam Becker
5f992788f2 Switch film chooser to tag input 2025-03-31 00:25:25 -05:00
Sam Becker
0dfc12d06e Standardize film types/arguments 2025-03-30 00:51:14 -05:00
Sam Becker
763428547c Rename core film simulation pages 2025-03-29 22:40:44 -05:00
Sam Becker
a16f992d1a Rename/refine <SiteGrid /> 2025-03-20 17:56:04 -05:00
Sam Becker
a6228ce888 Don't show hidden tags in admin views 2025-03-15 13:03:45 -05:00
Sam Becker
0f0d9a32e3 Add hidden, favorite options to bulk uploads 2025-03-15 00:20:36 -05:00
Sam Becker
1ff7404f6e Make upload list friendlier 2025-03-14 22:10:26 -05:00
Sam Becker
ee050b550e Refine recipe scanning ux 2025-03-13 21:55:27 -05:00
Sam Becker
ba18289e0e Finalize admin recipe management 2025-03-12 21:08:56 -05:00
Sam Becker
3684c57dee Refine admin recipe detail page 2025-03-12 20:15:14 -05:00
Sam Becker
769d6b64bb Create admin recipe detail page 2025-03-12 18:11:16 -05:00
Sam Becker
2c35587f5d Create /admin/recipes page 2025-03-12 18:04:27 -05:00
Sam Becker
3d57de3997 Add recipes to core admin surfaces 2025-03-12 17:43:17 -05:00
Sam Becker
21ed815cba Add guidance around sync buttons 2025-03-07 08:39:40 -08:00
Sam Becker
2520170639 Find recipe titles on upload 2025-03-06 22:37:48 -08:00
Sam Becker
b114bca43e Create recipe auto-chooser in photo form 2025-03-05 22:00:42 -08:00
Sam Becker
1d20cb58b2 Refactor recipe schema and pages 2025-03-03 19:43:08 -06:00
Sam Becker
2b93dd750f Add core recipe page components 2025-03-02 21:41:58 -06:00
Sam Becker
90d26a1fd1 Redirect from /admin/uploads when there are no uploads 2025-02-28 20:56:49 -06:00
Sam Becker
1a273625a9 Finalize base multi-origin upload approach 2025-02-27 22:05:45 -06:00
Sam Becker
d2494e66d5 Refactor admin subnav 2025-02-25 23:31:19 -06:00
Sam Becker
bd7cf64f2a Refactor admin sub-nav 2025-02-25 20:58:01 -06:00
Sam Becker
5f463377c0 Fix recipe demo page 2025-02-24 18:40:07 -06:00
Sam Becker
613aa17849 Refine recipe overlay demo 2025-02-24 18:24:56 -06:00
Sam Becker
541c09c551 Allow editing recipe data, protect manually configured fuji fields 2025-02-24 17:28:37 -06:00
Sam Becker
ee6aed896c Flag photos without recipes as 'outdated' 2025-02-23 23:41:05 -06:00
Sam Becker
7eef970965 Finalize frost colors 2025-02-22 14:45:33 -06:00