Storefront modal + email templating: theme extension, redesign, editable receipt

Storefront (theme app extension recesso-storefront):
- App block + app embed che linkano a /apps/recesso; modal via iframe con
  fallback progressive-enhancement; apertura immediata, dimensione fissa
- Redesign form: pattern modal moderno (header/footer fissi, corpo scorrevole),
  modalita' embed, popover info "i", testo ridotto, de-AI, trattini al posto degli em-dash

Ricevuta email:
- Dati per-shop dinamici da Shopify (nome, url, link stato ordine) via getShopInfo + statusPageUrl
- Template editabili VINCOLATI (oggetto/introduzione/nota) con segnaposto; layout
  fisso e conforme (dichiarazione, timestamp, avviso art. 54-bis)
- Pagina admin (Polaris) con anteprima live + ripristina default
- Campi email in Settings (Prisma) + migrazioni

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Mv83a29B4eFv5ixoj6PoE1
This commit is contained in:
2026-07-07 12:17:07 +02:00
parent 8ca4de6c0b
commit d140d90629
18 changed files with 1002 additions and 178 deletions

View File

@@ -0,0 +1,3 @@
-- AlterTable
ALTER TABLE "Settings" ADD COLUMN "emailCustomMessage" TEXT,
ADD COLUMN "emailSenderName" TEXT;

View File

@@ -0,0 +1,2 @@
-- AlterTable
ALTER TABLE "Settings" ADD COLUMN "emailLogoUrl" TEXT;

View File

@@ -0,0 +1,8 @@
/*
Warnings:
- You are about to drop the column `emailLogoUrl` on the `Settings` table. All the data in the column will be lost.
*/
-- AlterTable
ALTER TABLE "Settings" DROP COLUMN "emailLogoUrl";

View File

@@ -0,0 +1,12 @@
/*
Warnings:
- You are about to drop the column `emailCustomMessage` on the `Settings` table. All the data in the column will be lost.
- You are about to drop the column `emailSenderName` on the `Settings` table. All the data in the column will be lost.
*/
-- AlterTable
ALTER TABLE "Settings" DROP COLUMN "emailCustomMessage",
DROP COLUMN "emailSenderName",
ADD COLUMN "emailBodyTemplate" TEXT,
ADD COLUMN "emailSubjectTemplate" TEXT;

View File

@@ -0,0 +1,13 @@
/*
Warnings:
- You are about to drop the column `emailBodyTemplate` on the `Settings` table. All the data in the column will be lost.
- You are about to drop the column `emailSubjectTemplate` on the `Settings` table. All the data in the column will be lost.
*/
-- AlterTable
ALTER TABLE "Settings" DROP COLUMN "emailBodyTemplate",
DROP COLUMN "emailSubjectTemplate",
ADD COLUMN "emailIntro" TEXT,
ADD COLUMN "emailNote" TEXT,
ADD COLUMN "emailSubject" TEXT;

View File

@@ -49,6 +49,9 @@ model Settings {
returnAddress String?
defaultWindowDays Int @default(14)
withdrawalInfoText String?
emailSubject String?
emailIntro String?
emailNote String?
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt