extract site_name and site_description from theme settings into standalone settings

site_name and site_description are shop identity, not theme concerns.
They now live in the Settings table as first-class settings with their
own assigns (@site_name, @site_description) piped through hooks and
plugs. The setup wizard writes site_name on account creation, and the
theme editor reads/writes via Settings.put_setting. Removed the
"configure your shop" checklist item since currency/country aren't
built yet. Also adds shop name field to setup wizard step 1.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
jamey
2026-03-03 14:52:31 +00:00
parent 8ea77e5992
commit 5b41f3fedf
25 changed files with 464 additions and 255 deletions

View File

@@ -1384,6 +1384,11 @@
gap: 0.25rem;
}
.setup-test-help {
margin: 0.375rem 0 0;
font-size: 0.8125rem;
}
/* Card radio group — selectable cards backed by radio inputs */
.card-radio-fieldset {
border: none;
@@ -1528,7 +1533,15 @@
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
margin-bottom: 1rem;
padding: 0;
border: none;
background: none;
cursor: pointer;
font: inherit;
color: inherit;
text-align: left;
}
.admin-checklist-title {
@@ -1570,17 +1583,48 @@
.admin-checklist-item {
display: flex;
align-items: center;
align-items: flex-start;
gap: 0.75rem;
padding: 0.5rem 0;
}
.admin-checklist-content {
flex: 1;
min-width: 0;
}
.admin-checklist-row {
display: flex;
align-items: center;
gap: 0.75rem;
}
.admin-checklist-hint {
margin: 0.25rem 0 0;
font-size: 0.75rem;
color: var(--admin-text-muted);
line-height: 1.4;
}
.admin-checklist-optional {
display: inline-block;
margin-left: 0.375rem;
padding: 0.0625rem 0.375rem;
font-size: 0.6875rem;
font-weight: 500;
border-radius: 9999px;
background: var(--t-surface-sunken, #e5e5e5);
color: var(--admin-text-muted);
vertical-align: middle;
}
.admin-checklist-check {
display: flex;
align-items: center;
justify-content: center;
width: 1.25rem;
height: 1.25rem;
margin-top: 0.125rem;
border-radius: 50%;
flex-shrink: 0;
border: 1.5px solid var(--t-border-default, #d4d4d4);
@@ -1594,7 +1638,6 @@
}
.admin-checklist-label {
flex: 1;
font-size: 0.875rem;
}
@@ -1606,13 +1649,9 @@
flex-shrink: 0;
}
.admin-checklist-footer {
display: flex;
align-items: center;
justify-content: space-between;
margin-top: 1rem;
padding-top: 0.75rem;
border-top: 1px solid var(--t-surface-sunken, #e5e5e5);
/* When collapsed, the header has no bottom margin */
.admin-checklist-header:only-child {
margin-bottom: 0;
}
/* ── Page editor ── */