release: v0.19.0
Release v0.19.0. See the `## [0.19.0] — 2026-09-29` section of [CHANGELOG.md](https://github.com/ralksta/immich-folio/blob/dev/CHANGELOG.md) for the full list. Highlights: client proofing links (#683), custom content pages (#738), asset picker search (#740), concurrent-edit detection (#742), env-locked settings (#739), an accessibility baseline (#741), three security fixes with advisories (#737, #755, #759), and a pre-release quality pass (#780–#797). --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: ralksta <ralksta@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Claude Opus 5 <noreply@anthropic.com> Co-authored-by: Ralf <rohlenbo79@gmail.com> Co-authored-by: Paul Thies <110185070+ImScheinox@users.noreply.github.com> Co-authored-by: lancetm714 <108419425+lancetm714@users.noreply.github.com> Co-authored-by: Lance Martin <lancetaylor95@gmail.com>
This commit is contained in:
@@ -3,10 +3,12 @@
|
||||
import * as Icons from '../Icons';
|
||||
import ToggleCard from '../fields/ToggleCard';
|
||||
import PrivacyEditor from '../PrivacyEditor';
|
||||
import EnvLockNote from '../fields/EnvLockNote';
|
||||
import { CONTACT_RETENTION_DEFAULT, CONTACT_RETENTION_MAX, isHttpUrl } from '@/lib/config/schema';
|
||||
import type { SectionProps } from './types';
|
||||
|
||||
export default function LegalSection({ settings, update }: SectionProps) {
|
||||
export default function LegalSection({ settings, update, envLocks }: SectionProps) {
|
||||
const notifyLock = envLocks?.['contact.notifyUrl'];
|
||||
// The Impressum drops a non-http(s) contact URL with a warning in the server
|
||||
// log, where nobody looks; say it here instead.
|
||||
const contactUrl = settings.legal?.contactUrl?.trim();
|
||||
@@ -206,16 +208,19 @@ export default function LegalSection({ settings, update }: SectionProps) {
|
||||
value={settings.contact?.notifyUrl || ''}
|
||||
onChange={(e) => update('contact.notifyUrl', e.target.value)}
|
||||
placeholder="https://ntfy.sh/your-secret-topic"
|
||||
aria-invalid={notifyUrlInvalid || undefined}
|
||||
aria-describedby="contact-notify-url-hint"
|
||||
aria-invalid={(!notifyLock && notifyUrlInvalid) || undefined}
|
||||
aria-describedby={notifyLock ? 'contact-notify-url-lock' : 'contact-notify-url-hint'}
|
||||
disabled={!!notifyLock}
|
||||
/>
|
||||
{notifyLock && <EnvLockNote id="contact-notify-url-lock" variable={notifyLock} />}
|
||||
<p
|
||||
id="contact-notify-url-hint"
|
||||
className={`admin-field-hint${notifyUrlInvalid ? ' admin-field-hint--error' : ''}`}
|
||||
>
|
||||
{notifyUrlInvalid
|
||||
? 'Must start with https:// or http://.'
|
||||
: 'Gets a fixed "new message" push, with nothing about the sender. Pick a topic name nobody can guess. CONTACT_NOTIFY_URL overrides this.'}
|
||||
: 'Gets a fixed "new message" push, with nothing about the sender. Pick a topic name nobody can guess.' +
|
||||
(notifyLock ? '' : ' CONTACT_NOTIFY_URL overrides this.')}
|
||||
</p>
|
||||
</div>
|
||||
<div className="admin-field">
|
||||
|
||||
Reference in New Issue
Block a user