Initial commit: ASPEKTER — визуальный конструктор email-рассылок

- z51-pug-builder: Svelte 5 SPA, визуальный редактор Pug-писем
- email-gen: Node.js рендерер Pug→HTML через email-templates + Juice
- email-gen-api: HTTP сервер рендеринга (порт 8787)
- coin-scout: сервис подбора монет из фидов
- Docker Compose для dev/prod
- Nginx конфиг с SSL для app.aspekter.ru
This commit is contained in:
2026-04-13 11:36:39 +05:00
commit 718821fdd6
282 changed files with 64697 additions and 0 deletions

View File

@@ -0,0 +1,182 @@
{
"id": "42fbad55-6161-4b14-b5bb-eb2c656430bb",
"name": "17-02-2026 123",
"title": "123",
"date": "2026-02-17",
"createdAt": "2026-02-17T19:40:21.113Z",
"updatedAt": "2026-02-19T10:10:31.347Z",
"blocks": [
{
"name": "Баннер с заголовком и текстом 290 Синий фон",
"content": "tr \n td \n +defaultTable(\"100%\").background__blue\n tr \n td.paddingWrapperRight \n +defaultTable(\"100%\", \"left\") \n tr \n td(align=\"left\")\n +backgroundImageBlock(\"https://574922.selcdn.ru/email.static/reaspekt/2026_newsletters/19_02_2026/1.png\", 290, 300, \"#130F33\", \"center\", \"top\", \"cover\")\n +tdFixed(25)\n td(valign=\"middle\")\n +defaultTable(false, \"left\")\n tr \n td \n span.textVerdana.header__h1.color__white SEO в геосервисах\n +spacerLine(20)\n tr \n td \n span.textVerdana.text__normal.color__white Почему поиск уходит на карты и как адаптироваться бизнесу?",
"collapsed": true,
"schema": [
{
"type": "mixin-href",
"label": "Картинка",
"lineIndex": 8,
"argIndex": 0
},
{
"type": "text",
"label": "Текст",
"lineIndex": 14
},
{
"type": "text",
"label": "Текст",
"lineIndex": 18
}
],
"addSpacing": true
},
{
"name": "Анонс Фото справа Фон Белый",
"content": "tr \n td.background__white.padding-wrapper \n +defaultTable(\"560\")\n\n tr \n td(valign=\"top\" width=\"270\")\n +defaultTable(\"100%\")\n //- Заголовок\n tr \n td\n span.textVerdana.color__blue.header__h1 Андрей Кавелидзе, SEO-специалист Реаспекта<br>в&nbsp;новой статье:\n +spacerLine(24)\n \n tr \n td \n span.textVerdana.color__blue.text__normal &laquo;В&nbsp;сегменте локальных услуг<br>путь клиента все чаще<br>начинается и&nbsp;заканчивается<br>внутри приложений карт,<br>минуя классический веб-<br>серфинг. Поисковые системы<br>адаптируют выдачу под этот<br>тренд: по&nbsp;локальным запросам<br>(например, &bdquo;шиномонтаж&ldquo; или<br>&bdquo;где поесть&ldquo;) пользователю<br>сначала демонстрируется блок<br>карт, и&nbsp;лишь затем&nbsp;&mdash;<br>органическая выдача сайтов.<br>Поэтому присутствие <br>в&nbsp;геосервисах становится<br>полноценным каналом<br>лидогенерации&raquo;.\n +spacerLine(10)\n +tdFixed(20)\n td(width=\"270\")\n +defaultTable(\"100%\")\n tr \n td(valign=\"top\" width=\"270\")\n +backgroundImageBlock(\"https://574922.selcdn.ru/email.static/reaspekt/2026_newsletters/19_02_2026/8.png\", 270, 470, \"#130F33\", \"center\", \"top\")\n \n +spacerLine(40, 3)",
"collapsed": true,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 10
},
{
"type": "text",
"label": "Текст",
"lineIndex": 15
},
{
"type": "mixin-href",
"label": "Картинка",
"lineIndex": 22,
"argIndex": 0
}
],
"addSpacing": false
},
{
"name": "Текст 100% Ширины + Картинка Синий фон",
"content": "\ntr\n td.padding-wrapper.background__blue\n +defaultTable('560')\n +spacerLine(40)\n tr \n td \n span.textVerdana.text__normal.color__white SEO в&nbsp;геосервисах&nbsp;&mdash; это системная работа по&nbsp;выводу карточки бизнеса в&nbsp;топ выдачи Яндекс Карт и&nbsp;2ГИС по&nbsp;целевым запросам:\n +spacerLine(20)\n tr \n td \n +backgroundImageBlock(\"https://574922.selcdn.ru/email.static/reaspekt/2026_newsletters/19_02_2026/2.png\", 560, 266, \"#ffffff\", \"left\", \"top\")\n \n +spacerLine(40)",
"collapsed": true,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 7
},
{
"type": "mixin-href",
"label": "Картинка",
"lineIndex": 11,
"argIndex": 0
}
],
"addSpacing": false
},
{
"name": "Текст 100% Ширины + Картинка Зеленый фон",
"content": "\ntr\n td.padding-wrapper.background__green\n +defaultTable('560')\n +spacerLine(40)\n tr \n td \n span.textVerdana.header__h1.color__blue Для кого актуально продвижение на&nbsp;картах?\n +spacerLine(20)\n tr \n td \n +backgroundImageBlock(\"https://574922.selcdn.ru/email.static/reaspekt/2026_newsletters/19_02_2026/3.png\", 560, 266, \"#ffffff\", \"left\", \"top\")\n +spacerLine(20)\n tr \n td \n span.textVerdana.text__normal.color__blue Кому не&nbsp;пойдёт: B2B со&nbsp;сложным циклом сделки, полностью удаленные услуги или уникальные ниши, где клиент готов ехать на&nbsp;другой конец города (или страны) ради конкретного решения.\n\n\n +spacerLine(40)",
"collapsed": true,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 7
},
{
"type": "mixin-href",
"label": "Картинка",
"lineIndex": 11,
"argIndex": 0
},
{
"type": "text",
"label": "Текст",
"lineIndex": 15
}
],
"addSpacing": false
},
{
"name": "Список с цифрами Синий фон",
"content": "\ntr \n td.padding-wrapper.background__blue\n +defaultTable('560')\n +spacerLine(40)\n tr \n td \n span.textVerdana.header__h1.color__white Логика ранжирования в геосервисах\n +spacerLine(24)\n tr \n td \n span.textVerdana.text__normal.color__white Задача систем ранжирования в&nbsp;Яндекс Картах или 2ГИС&nbsp;&mdash;<br>показать пользователю не&nbsp;ближайший, а&nbsp;наилучший вариант<br>решения его проблемы.<br>Если рядом находятся две кофейни,алгоритм отдаст приоритет<br>той, которая выглядит более релевантной и&nbsp;надежной с&nbsp;точки<br>зрения данных:\n +spacerLine(24)\n tr \n td \n +defaultTable(\"100%\", \"left\")\n tr \n td(valign=\"top\" align=\"left\")\n +defaultTable(\"40\").background__green\n tr \n td(height=\"40\" valign=\"middle\" align=\"center\")\n span.textVerdana.color__white.text__normal 1\n +tdFixed(10)\n td \n +defaultTable(\"100%\")\n tr \n td \n span.textVerdana.text__normal.color__white.bold Доступность\n +spacerLine(10)\n tr \n td \n span.textVerdana.text__normal.color__white У кого подробнее описано меню \n +spacerLine(20, 3)\n tr \n td(valign=\"top\" align=\"left\")\n +defaultTable(\"40\").background__green\n tr \n td(height=\"40\" valign=\"middle\" align=\"center\")\n span.textVerdana.color__white.text__normal 2\n +tdFixed(10)\n td \n +defaultTable(\"100%\")\n tr \n td \n span.textVerdana.text__normal.color__white.bold Удобство\n +spacerLine(10)\n tr \n td \n span.textVerdana.text__normal.color__white Кому чаще звонят и строят маршруты \n +spacerLine(20, 3)\n tr \n td(valign=\"top\" align=\"left\")\n +defaultTable(\"40\").background__green\n tr \n td(height=\"40\" valign=\"middle\" align=\"center\")\n span.textVerdana.color__white.text__normal 3\n +tdFixed(10)\n td \n +defaultTable(\"100%\")\n tr \n td \n span.textVerdana.text__normal.color__white.bold Удобство\n +spacerLine(10)\n tr \n td \n span.textVerdana.text__normal.color__white Кому чаще звонят и строят маршруты \n +spacerLine(40)",
"collapsed": true,
"schema": [],
"addSpacing": false
},
{
"name": "Текст 100% Ширины Белый фон",
"content": "tr \n td.padding-wrapper.background__white\n +defaultTable('560')\n +spacerLine(40)\n \n tr \n td \n span.textVerdana.text__normal.color__blue Именно поэтому компания, находящаяся в&nbsp;500&nbsp;метрах, может<br>занимать первую строчку выдачи, вытесняя конкурента,<br>расположенного в&nbsp;соседнем доме. Чтобы выиграть в&nbsp;этой<br>конкурентной борьбе, необходимо привести карточку<br>в&nbsp;соответствие с&nbsp;требованиями алгоритмов.\n\n +spacerLine(40)",
"collapsed": false,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 7
}
],
"addSpacing": false
},
{
"name": "Текст 100% Ширины Синий фон",
"content": "tr \n td.padding-wrapper.background__blue\n +defaultTable('560')\n +spacerLine(40)\n\n tr \n td \n span.textVerdana.text__normal.color__white Выигрывает ли ваша карточка в конкуренции за выдачу?<br>Чек-лист для самостоятельного SEO-аудита доступен в статье<br>на сайте.\n +spacerLine(20)\n tr \n td \n +buttonRounded(\"Перейти на страницу статьи\", \"https://www.reaspekt.ru/blog/seo-v-geoservisakh-pochemu-poisk-ukhodit-na-karty-i-kak-biznesu-adaptirovatsya-k-novym-patternam-pov/\", 560, 60, \"#130F33\", 16, \"#AAC8C8\", 0, \"\").textVerdana\n +spacerLine(40)",
"collapsed": false,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 7
},
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 11,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 11,
"argIndex": 1
}
],
"addSpacing": false
},
{
"name": "Баннер узкий высокий с заголовком и текстом Белый",
"content": "tr \n td \n +defaultTable(\"100%\").background__white\n tr \n td.paddingWrapperRight \n +defaultTable(\"100%\", \"left\") \n tr \n td(align=\"left\" width=\"200\")\n +backgroundImageBlock(\"https://574922.selcdn.ru/email.static/reaspekt/2026_newsletters/19_02_2026/7.png\", 200, 300, \"#130F33\", \"center\", \"top\", \"cover\")\n +tdFixed(25)\n td(valign=\"middle\")\n +defaultTable(false, \"left\")\n \n tr \n td \n span.textVerdana.header__h1.color__blue Какие инструменты могут<br>сделать продвижение вашего<br>бизнеса более эффективным?\n +spacerLine(20)\n tr \n td \n span.textVerdana.text__normal.color__blue Давайте обсудим!\n +spacerLine(20)\n tr \n td \n +buttonRounded(\"Получить бесплатную консультацию\", \"https://www.reaspekt.ru/contacts/\", 345, 60, \"#130F33\", 16, \"#AAC8C8\", 0, \"\").textVerdana",
"collapsed": false,
"schema": [
{
"type": "mixin-href",
"label": "Картинка",
"lineIndex": 8,
"argIndex": 0
},
{
"type": "text",
"label": "Текст",
"lineIndex": 15
},
{
"type": "text",
"label": "Текст",
"lineIndex": 19
},
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 23,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 23,
"argIndex": 1
}
],
"addSpacing": false
}
]
}

View File

@@ -0,0 +1,243 @@
{
"id": "59692149-e1f7-4b4a-af3e-18def514d2d9",
"name": "09-02-2026 тест",
"title": "тест",
"date": "2026-02-09",
"createdAt": "2026-02-09T09:11:11.385Z",
"updatedAt": "2026-02-17T16:13:41.305Z",
"blocks": [
{
"name": "Баннер с заголовком справа 290 Синий фон",
"content": "tr \n td \n +defaultTable(\"100%\").background__blue\n tr \n td.paddingWrapperRight \n +defaultTable(\"100%\", \"left\") \n tr \n td(align=\"left\")\n +backgroundImageBlock(\"https://574922.selcdn.ru/email.static/reaspekt/2024_newsletters/2024_10_24/top-image.jpg\", 290, 300, \"#130F33\", \"center\", \"top\", \"cover\")\n +tdFixed(25)\n td(valign=\"top\")\n +defaultTable(false, \"left\")\n +spacerLine(40)\n tr \n td \n span.textVerdana.header__main.color__white &laquo;HOTTEST BRANDS&raquo;",
"collapsed": false,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 15
}
],
"addSpacing": false
},
{
"name": "Текст 100% Ширины Белый фон",
"content": "tr \n td.padding-wrapper.background__white\n +defaultTable('560')\n +spacerLine(40)\n tr \n td \n span.textVerdana.header__h1.color__blue \n +spacerLine(20)\n tr \n td \n span.textVerdana.text__normal.color__blue При масштабировании бизнеса владельцы могут столкнуться с&nbsp;парадоксом: денег на&nbsp;рекламу тратится больше, а&nbsp;прибыль 
на&nbsp;каждый вложенный рубль падает. 
Это индикатор того, что в&nbsp;маркетинговой системе возникли барьеры, которые сдерживают эффективное развитие бизнеса.\n +spacerLine(20)\n tr \n td \n +buttonRounded(\"Ниже мы разберем три уровня, где чаще всего теряются деньги.\", \"\", 560, 60, \"#ffffff\", 16, \"#130F33\", 0, \"\").textVerdana\n +spacerLine(40)",
"collapsed": false,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 6
},
{
"type": "text",
"label": "Текст",
"lineIndex": 10
},
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 14,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 14,
"argIndex": 1
}
],
"addSpacing": true
},
{
"name": "Баннер с заголовком и текстом 290 Синий фон",
"content": "tr \n td \n +defaultTable(\"100%\").background__blue\n tr \n td.paddingWrapperRight \n +defaultTable(\"100%\", \"left\") \n tr \n td(align=\"left\")\n +backgroundImageBlock(\"https://574922.selcdn.ru/email.static/reaspekt/2024_newsletters/2024_10_24/top-image.jpg\", 290, 300, \"#130F33\", \"center\", \"top\", \"cover\")\n +tdFixed(25)\n td(valign=\"top\")\n +defaultTable(false, \"left\")\n +spacerLine(40)\n tr \n td \n span.textVerdana.header__h1.color__white Уровень 1. Данные\n +spacerLine(20)\n tr \n td \n span.textVerdana.text__normal.color__white Когда CRM и&nbsp;рекламные кабинеты разрознены, алгоритмы обучаются на&nbsp;кликах, а&nbsp;не&nbsp;на&nbsp;реальных выкупленных заказах.\nна кликах, а не на реальных выкупленных заказах.",
"collapsed": false,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 15
},
{
"type": "text",
"label": "Текст",
"lineIndex": 19
}
],
"addSpacing": true
},
{
"name": "Текст 100% Ширины Зеленый фон",
"content": "tr \n td.padding-wrapper.background__green\n +defaultTable('560')\n +spacerLine(40)\n tr \n td \n span.textVerdana.header__h1.color__blue \n +spacerLine(20)\n tr \n td \n span.textVerdana.text__normal.color__blue Это искажает реальную картину эффективности каналов, особенно в&nbsp;нишах с&nbsp;длительным циклом принятия решения. Оценка маркетинга исключительно по&nbsp;последнему клику может привести к&nbsp;ошибочному отключению тех кампаний, которые на&nbsp;самом деле сформировали первичный интерес и&nbsp;познакомили клиента с&nbsp;брендом. Без понимания всей цепочки касаний бизнес теряет возможность управлять спросом на&nbsp;ранних этапах\n +spacerLine(20)\n tr \n td \n +buttonRounded(\"#ТЕКСТ#\", \"#ССЫЛКА#\", 560, 60, \"#ffffff\", 16, \"#130F33\", 0, \"\").textVerdana\n +spacerLine(40)",
"collapsed": false,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 6
},
{
"type": "text",
"label": "Текст",
"lineIndex": 10
},
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 14,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 14,
"argIndex": 1
}
],
"addSpacing": true
},
{
"name": "Текст 100% Ширины Белый фон",
"content": "tr \n td.padding-wrapper.background__white\n +defaultTable('560')\n +spacerLine(40)\n tr \n td \n span.textVerdana.header__h1.color__blue Уровень 2. Операционные настройки\n +spacerLine(20)\n tr \n td \n span.textVerdana.text__normal.color__blue Автотаргетинг без жесткого контроля и&nbsp;показы в&nbsp;регионах с&nbsp;дорогой логистикой незаметно увеличивают стоимость привлечения клиента. Без регулярного мониторинга поисковых запросов бюджет расходуется на&nbsp;информационный трафик, лишь создает видимость активности.\n +spacerLine(20)\n tr \n td \n +buttonRounded(\"#ТЕКСТ#\", \"#ССЫЛКА#\", 560, 60, \"#ffffff\", 16, \"#130F33\", 0, \"\").textVerdana\n +spacerLine(40)",
"collapsed": false,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 6
},
{
"type": "text",
"label": "Текст",
"lineIndex": 10
},
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 14,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 14,
"argIndex": 1
}
],
"addSpacing": true
},
{
"name": "текст и 2 картинки Синий фон",
"content": "\ntr \n td.background__blue.padding-wrapper\n +defaultTable(\"560\")\n +spacerLine(40)\n tr \n td \n span.textVerdana.color__white.header__h1 Уровень&nbsp;3. Экономика продукта\n +spacerLine(20)\n tr \n td \n span.textVerdana.color__white.text__normal Продвижение всех товаров с&nbsp;одинаковыми ставками снижает маржинальность. Кампании должны учитывать доходность каждой категории.\nСистемный аудит этих уровней и точная настройка аналитики позволили нашему клиенту Damixa увеличить продажи в 3 раза, сохранив при этом целевые показатели рентабельности.\nСистемный аудит этих уровней и точная настройка аналитики позволили нашему клиенту Damixa увеличить продажи в 3 раза, сохранив при этом целевые показатели рентабельности.\nСистемный аудит этих уровней и точная настройка аналитики позволили нашему клиенту Damixa увеличить продажи в 3 раза, сохранив при этом целевые показатели рентабельности.\n +spacerLine(20)\n tr \n td \n +defaultTable(\"100%\")\n tr \n td \n +backgroundImageBlock(\"https://574922.selcdn.ru/email.static/reaspekt/2024_newsletters/2024_09_29/tools-1.jpg\", 270, 272, \"#ffffff\", \"center\", \"top\", \"contain\")\n +tdFixed(20)\n td\n +backgroundImageBlock(\"https://574922.selcdn.ru/email.static/reaspekt/2024_newsletters/2024_09_29/tools-2.jpg\", 270, 272, \"#ffffff\", \"center\", \"top\", \"contain\")\n +spacerLine(\"Узнать больше про кейс Damixa\")\n tr \n td \n +buttonRounded(\"#ТЕКСТ#\", \"#ССЫЛКА#\", 560, 60, \"#130F33\", 16, \"#AAC8C8\", 0, \"\", \"https://574922.selcdn.ru/email.static/reaspekt/2024_newsletters/2024_09_29/icon-watch-blue.png\", 20, 17, 1, \"right\").textVerdana\n +spacerLine(40)",
"collapsed": false,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 7
},
{
"type": "text",
"label": "Текст",
"lineIndex": 11
},
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 25,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 25,
"argIndex": 1
}
],
"addSpacing": true
},
{
"name": "Баннер узкий высокий с заголовком и текстом Синий",
"content": "tr \n td \n +defaultTable(\"100%\").background__blue\n tr \n td.paddingWrapperRight \n +defaultTable(\"100%\", \"left\") \n tr \n td(align=\"left\" width=\"200\")\n +backgroundImageBlock(\"https://574922.selcdn.ru/email.static/reaspekt/master-tamplate/banners/banner-200-300.jpg\", 200, 300, \"#130F33\", \"center\", \"top\", \"cover\")\n +tdFixed(25)\n td(valign=\"top\")\n +defaultTable(false, \"left\")\n +spacerLine(40)\n tr \n td \n span.textVerdana.header__h1.color__white Делимся алгоритмом поиска точек неэффективности вашего бюджета и&nbsp;методикой сегментации ассортимента в&nbsp;полной версии новой статьи в&nbsp;нашем блоге на&nbsp;сайте.\n +spacerLine(20)\n tr \n td \n span.textVerdana.text__normal.color__white Автотаргетинг без жесткого контроля и&nbsp;показы в&nbsp;регионах с&nbsp;дорогой логистикой незаметно увеличивают стоимость привлечения клиента. Без регулярного мониторинга поисковых запросов бюджет расходуется на&nbsp;информационный трафик, лишь создает видимость активности.\nи методикой сегментации ассортимента в полной версии новой статьи в нашем блоге на сайте.\nи методикой сегментации ассортимента в полной версии новой статьи в нашем блоге на сайте.\n +spacerLine(20)\n tr \n td \n +buttonRounded(\"#ТЕКСТ#\", \"#ССЫЛКА#\", 345, 60, \"#130F33\", 16, \"#AAC8C8\", 0, \"\").textVerdana",
"collapsed": false,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 15
},
{
"type": "text",
"label": "Текст",
"lineIndex": 19
},
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 23,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 23,
"argIndex": 1
}
],
"addSpacing": true
},
{
"name": "Текст 50% Ширины + Картинка Белый фон",
"content": "\ntr \n td.padding-wrapper.background__white\n +defaultTable('560')\n +spacerLine(40, 3)\n tr \n td(valign=\"top\") \n +defaultTable(\"270\")\n tr \n td \n +backgroundImageBlock(\"https://574922.selcdn.ru/email.static/reaspekt/master-tamplate/banners/image.jpg\", 270, 270, \"#ffffff\", \"left\", \"top\")\n +spacerLine(20)\n tr \n td \n span.textVerdana.header__h2.color__blue Кейс по SEO\n +spacerLine(20)\n tr \n td \n span.textVerdana.text__normal.color__blue Вывели сайт в&nbsp;узкой нише 
в&nbsp;топ-3&nbsp;с 16&nbsp;до&nbsp;135 запросов\n +spacerLine(20)\n tr \n td \n +buttonRounded(\"Читать\", \"https://www.reaspekt.ru/cases/samolet-v-kazani-kak-my-sozdali-kontent-dlya-proekta-kotorogo-eshche-net/\", 270, 60, \"#ffffff\", 16, \"#130F33\", 0, \"\").textVerdana\n +tdFixed(20)\n td(valign=\"top\") \n +defaultTable(\"270\")\n tr \n td \n +backgroundImageBlock(\"https://574922.selcdn.ru/email.static/reaspekt/master-tamplate/banners/image.jpg\", 270, 270, \"#ffffff\", \"left\", \"top\")\n +spacerLine(20)\n\n tr \n td \n span.textVerdana.header__h2.color__blue Кейс о креативе\n +spacerLine(20)\n tr \n td \n span.textVerdana.text__normal.color__blue Как мы&nbsp;создали контент для проекта, которого еще нет\n +spacerLine(20)\n tr \n td \n +buttonRounded(\"Смотреть\", \"https://www.reaspekt.ru/cases/numizmat-ru-magazin-gde-moneta-znachit-bolshe/\", 270, 60, \"#ffffff\", 16, \"#130F33\", 0, \"\").textVerdana\n +spacerLine(40, 3)",
"collapsed": false,
"schema": [
{
"type": "text",
"label": "Текст",
"lineIndex": 14
},
{
"type": "text",
"label": "Текст",
"lineIndex": 18
},
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 22,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 22,
"argIndex": 1
},
{
"type": "text",
"label": "Текст",
"lineIndex": 33
},
{
"type": "text",
"label": "Текст",
"lineIndex": 37
},
{
"type": "mixin-text",
"label": "Текст кнопки",
"lineIndex": 41,
"argIndex": 0
},
{
"type": "mixin-href",
"label": "Ссылка кнопки",
"lineIndex": 41,
"argIndex": 1
}
],
"addSpacing": true
}
]
}

View File

@@ -0,0 +1,9 @@
{
"id": "a50ad17f-13dd-41d0-b591-70caaef5c765",
"name": "12-02-2026 1",
"title": "1",
"date": "2026-02-12",
"createdAt": "2026-02-11T15:59:00.256Z",
"updatedAt": "2026-02-11T15:59:10.122Z",
"blocks": []
}