tedo-publisher 1.3.294 → 1.3.295

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,193 @@
1
+ export declare const dataStructure: {
2
+ акцииНаКосметику: {
3
+ title: string;
4
+ description: string;
5
+ slug: string;
6
+ children: {
7
+ скидкиНаКремы: {
8
+ title: string;
9
+ description: string;
10
+ slug: string;
11
+ children: null;
12
+ };
13
+ скидкиНаПомады: {
14
+ title: string;
15
+ description: string;
16
+ slug: string;
17
+ children: null;
18
+ };
19
+ скидкиНаПарфюмерию: {
20
+ title: string;
21
+ description: string;
22
+ slug: string;
23
+ children: null;
24
+ };
25
+ скидкиНаУходЗаКожей: {
26
+ title: string;
27
+ description: string;
28
+ slug: string;
29
+ children: null;
30
+ };
31
+ другие: {
32
+ title: string;
33
+ description: string;
34
+ slug: string;
35
+ children: null;
36
+ };
37
+ };
38
+ };
39
+ лучшиеПредложения: {
40
+ title: string;
41
+ description: string;
42
+ slug: string;
43
+ children: {
44
+ топБренды: {
45
+ title: string;
46
+ description: string;
47
+ slug: string;
48
+ children: null;
49
+ };
50
+ популярныеТовары: {
51
+ title: string;
52
+ description: string;
53
+ slug: string;
54
+ children: null;
55
+ };
56
+ рекомендуемыеАкции: {
57
+ title: string;
58
+ description: string;
59
+ slug: string;
60
+ children: null;
61
+ };
62
+ специальныеПромокоды: {
63
+ title: string;
64
+ description: string;
65
+ slug: string;
66
+ children: null;
67
+ };
68
+ другие: {
69
+ title: string;
70
+ description: string;
71
+ slug: string;
72
+ children: null;
73
+ };
74
+ };
75
+ };
76
+ обзорыКосметики: {
77
+ title: string;
78
+ description: string;
79
+ slug: string;
80
+ children: {
81
+ новинкиНаРынке: {
82
+ title: string;
83
+ description: string;
84
+ slug: string;
85
+ children: null;
86
+ };
87
+ сравнениеПродуктов: {
88
+ title: string;
89
+ description: string;
90
+ slug: string;
91
+ children: null;
92
+ };
93
+ тестированиеПродуктов: {
94
+ title: string;
95
+ description: string;
96
+ slug: string;
97
+ children: null;
98
+ };
99
+ другие: {
100
+ title: string;
101
+ description: string;
102
+ slug: string;
103
+ children: null;
104
+ };
105
+ };
106
+ };
107
+ советыПоВыбору: {
108
+ title: string;
109
+ description: string;
110
+ slug: string;
111
+ children: {
112
+ какВыбратьКосметику: {
113
+ title: string;
114
+ description: string;
115
+ slug: string;
116
+ children: null;
117
+ };
118
+ советыПоУходуЗаКожей: {
119
+ title: string;
120
+ description: string;
121
+ slug: string;
122
+ children: null;
123
+ };
124
+ рекомендацииПоИспользованию: {
125
+ title: string;
126
+ description: string;
127
+ slug: string;
128
+ children: null;
129
+ };
130
+ помощьПриАллергии: {
131
+ title: string;
132
+ description: string;
133
+ slug: string;
134
+ children: null;
135
+ };
136
+ другие: {
137
+ title: string;
138
+ description: string;
139
+ slug: string;
140
+ children: null;
141
+ };
142
+ };
143
+ };
144
+ акцииДляПрофессионалов: {
145
+ title: string;
146
+ description: string;
147
+ slug: string;
148
+ children: {
149
+ предложенияДляСалонов: {
150
+ title: string;
151
+ description: string;
152
+ slug: string;
153
+ children: null;
154
+ };
155
+ скидкиДляВизажистов: {
156
+ title: string;
157
+ description: string;
158
+ slug: string;
159
+ children: null;
160
+ };
161
+ профессиональнаяКосметика: {
162
+ title: string;
163
+ description: string;
164
+ slug: string;
165
+ children: null;
166
+ };
167
+ обучениеИМастерКлассы: {
168
+ title: string;
169
+ description: string;
170
+ slug: string;
171
+ children: null;
172
+ };
173
+ другие: {
174
+ title: string;
175
+ description: string;
176
+ slug: string;
177
+ children: null;
178
+ };
179
+ };
180
+ };
181
+ };
182
+ export declare const authors: Record<string, string>;
183
+ export declare const authorsNames: string[];
184
+ export declare const DEFAULT_DESCRIPTION_EMOJIS = "\uD83D\uDC84\uD83D\uDC8B\uD83D\uDECD\uFE0F\u2728";
185
+ export declare const categories: ("акцииНаКосметику" | "лучшиеПредложения" | "обзорыКосметики" | "советыПоВыбору" | "акцииДляПрофессионалов")[];
186
+ export declare const subcategories: string[];
187
+ export declare const subsubcategories: string[];
188
+ export type Category = keyof typeof dataStructure;
189
+ export type CategoryNode = (typeof dataStructure)[Category];
190
+ export type SubcategoryKeyByCategory<T extends Category> = (typeof dataStructure)[T]['children'];
191
+ export declare const startDate = "2024-09-24T00:00:00Z";
192
+ export declare const devBucketName = "idn-skidkosmo-dev";
193
+ export declare const prodBucketName = "idn-skidkosmo";
@@ -0,0 +1 @@
1
+ "use strict";var e=require("./seo.js");const i={"акцииНаКосметику":{title:"Акции на косметику: лучшие скидки и предложения 🌸",description:"Ищете косметические скидки? У нас собраны направления акций на косметику. Узнайте о лучших предложениях и скидках на любимые бренды! 💄",slug:"discounts-on-cosmetics",children:{"скидкиНаКремы":{title:"Скидки на кремы: ухаживайте за кожей выгодно! 🌿",description:"Ищите, где купить кремы со скидками? У нас собраны лучшие предложения на увлажняющие, питательные и антивозрастные кремы! 🧴",slug:"discounts-on-creams",children:null},"скидкиНаПомады":{title:"Скидки на помады: создайте идеальный образ 💋",description:"Покупайте помады со скидками! У нас самые выгодные предложения на цветные и уходовые помады от ведущих брендов. 👄",slug:"discounts-on-lipsticks",children:null},"скидкиНаПарфюмерию":{title:"Скидки на парфюмерию: найдите свой идеальный аромат 🌷",description:"Ищете скидки на парфюмерию? Узнайте о лучших акциях на знаменитые ароматы: от цветочных до восточных. 🌼",slug:"discounts-on-perfume",children:null},"скидкиНаУходЗаКожей":{title:"Скидки на уход за кожей: заботьтесь о себе выгодно! 💖",description:"У нас собраны лучшие акции и скидки на средства по уходу за кожей: очищение, тонизирование, увлажнение и питание. 🧖‍♀️",slug:"discounts-on-skin-care",children:null},"другие":{title:"Другие акции на косметику: не упустите выгодные предложения 🌟",description:"Ищете дополнительные скидки на косметику? Мы собрали для вас разнообразные акции, чтобы вы могли сэкономить! 🌈",slug:"other-discounts",children:null}}},"лучшиеПредложения":{title:"Лучшие предложения по акциям на косметику 🌟",description:"Узнайте о лучших предложениях и скидках на косметику. Здесь вы найдёте все актуальные акции от топовых брендов! 💄",slug:"best-offers",children:{"топБренды":{title:"Топовые бренды косметики 🌸",description:"Посмотрите лучшие предложения от самых популярных косметических брендов. Скидки, акции и новинки ждут вас! 🛍️",slug:"top-brands",children:null},"популярныеТовары":{title:"Популярные товары косметики 🧴",description:"Найдите самые востребованные косметические товары со скидками и акциями. Будьте в тренде с нашими предложениями! ✨",slug:"popular-products",children:null},"рекомендуемыеАкции":{title:"Рекомендуемые акции на косметику 🎉",description:"Не пропустите самые выгодные акции на косметику. Мы собрали для вас только лучшие предложения! 💖",slug:"recommended-promotions",children:null},"специальныеПромокоды":{title:"Специальные промокоды на косметику 🔖",description:"Используйте наши специальный промокоды для получения скидок на косметику. Экономьте с умом! 💰",slug:"special-promocodes",children:null},"другие":{title:"Другие предложения на косметику 🌈",description:"Исследуйте другие выгодные предложения и акции на косметические продукты. Не упустите шанс сэкономить! 🏷️",slug:"other-offers",children:null}}},"обзорыКосметики":{title:"Обзоры косметики: актуальные новинки и предложения 💄",description:"На нашем портале вы найдете детальные обзоры косметических новинок, советы по выбору товаров и выгодные предложения. 🌟",slug:"cosmetics-reviews",children:{"новинкиНаРынке":{title:"Новинки на рынке косметики 2023: что выбрать? 💅",description:"Узнайте о самых свежих новинках на рынке косметики в 2023 году. Мы расскажем о лучших продуктах и их характеристиках. ✨",slug:"new-products",children:null},"сравнениеПродуктов":{title:"Сравнение косметических продуктов: что выбрать? 🧐",description:"Изучите результаты сравнительных тестов косметических продуктов и выберите лучшее для себя. Наша цель - помочь в выборе! 💖",slug:"product-comparison",children:null},"тестированиеПродуктов":{title:"Тестирование продуктов косметики: объективные результаты 🔍",description:"Мы проводим независимые тестирования косметических продуктов и делимся полученными результатами. Вам будет удобно выбрать! 🌈",slug:"product-testing",children:null},"другие":{title:"Другие обзоры косметики: полезные советы и рекомендации 🌟",description:"Откройте для себя множество других обзоров и рекомендаций в мире косметики. Мы делаем покупки проще и приятнее! 💕",slug:"other-reviews",children:null}}},"советыПоВыбору":{title:"Советы по выбору косметики: как выбрать лучшее? 💄",description:"Узнайте, как правильно выбрать косметику и какие факторы учитывать при покупке. Сделайте ваш выбор проще с нашими рекомендациями! 🌟",slug:"soveti-po-vibory-kosmetiki",children:{"какВыбратьКосметику":{title:"Как выбрать косметику: советы и рекомендации 🌸",description:"Ищете идеальную косметику? Узнайте, как выбрать правильные средства для вашей кожи с нашими проверенными советами! 🌼",slug:"how-to-choose-cosmetics",children:null},"советыПоУходуЗаКожей":{title:"Советы по уходу за кожей: получите идеальный уход! 🌿",description:"Научитесь ухаживать за своей кожей правильно! Советы по выбору средств и уходу за кожей для всех типов. 🌺",slug:"skin-care-tips",children:null},"рекомендацииПоИспользованию":{title:"Рекомендации по использованию косметики: советы для вас 💅",description:"Правильное использование косметики - залог успеха! Ознакомьтесь с нашими советами для оптимального результата. ✨",slug:"usage-recommendations",children:null},"помощьПриАллергии":{title:"Помощь при аллергии на косметику: что делать? 🚑",description:"Столкнулись с аллергией на косметику? Узнайте, как выбрать гипоаллергенные продукты и избежать проблем. 🌱",slug:"allergy-help",children:null},"другие":{title:"Другие советы по выбору косметики: важно знать! 🔍",description:"Ищите дополнительные советы по выбору косметики? Здесь вы найдете полезные рекомендации, которые помогут вам! 💖",slug:"other-tips",children:null}}},"акцииДляПрофессионалов":{title:"Выгодные предложения для профессионалов в сфере косметики 💄",description:"Откройте для себя лучшие предложения и скидки на профессиональную косметику. Найдите идеальные акции для своего салона или бизнеса! 🎉",slug:"vygodnye-predlozheniya-dlya-professionalov",children:{"предложенияДляСалонов":{title:"Промо-акции и предложения для салонов 🌟",description:"Лучшие предложения для косметических салонов. Узнайте о скидках на профессиональную косметику и увеличьте прибыль вашего бизнеса! 💰",slug:"promoktsii-dlya-salonov",children:null},"скидкиДляВизажистов":{title:"Скидки на косметику для визажистов 🎨",description:"Эксклюзивные скидки на косметику для визажистов! Подберите лучшие продукты по привлекательным ценам и сохраняйте стиль вашего творчества! 🖌️",slug:"skidki-dlya-vizazhistrov",children:null},"профессиональнаяКосметика":{title:"Профессиональная косметика по акции 🛍️",description:"Огромный выбор профессиональной косметики со скидками. Найдите свое идеальное средство для макияжа по выгодной цене! 🌈",slug:"professionalnaya-kosmetika",children:null},"обучениеИМастерКлассы":{title:"Обучение и мастер-классы для профессионалов 📚",description:"Запишитесь на обучение и мастер-классы по косметике. Узнайте о высококачественных акциях и развивайте свои навыки! 🧑‍🎓",slug:"obuchenie-i-master-klassy",children:null},"другие":{title:"Другие выгодные акции на косметику 🔍",description:"Исследуйте другие выгодные предложения и акции на косметику. Здесь каждый найдет что-то интересное для себя. 🎁",slug:"drugie-aktsii",children:null}}}},l=e.AUTHORS_INFO.reduce(((e,i)=>Object.assign(Object.assign({},e),{[i.name]:[i.description]})),{}),t=e.AUTHORS_INFO.map((e=>e.name)),s="💄💋🛍️✨",n=Object.keys(i),r=[],o=[];for(const e of n){const l=i[e];if(null==l?void 0:l.children){r.push(...Object.keys(l.children));for(const e of r){const i=l.children[e];(null==i?void 0:i.children)&&o.push(...Object.keys(i.children))}}}const c="2024-09-24T00:00:00Z",d="skidkosmo",u=`idn-${d}-dev`,p=`idn-${d}`;exports.DEFAULT_DESCRIPTION_EMOJIS=s,exports.authors=l,exports.authorsNames=t,exports.categories=n,exports.dataStructure=i,exports.devBucketName=u,exports.prodBucketName=p,exports.startDate=c,exports.subcategories=r,exports.subsubcategories=o;
@@ -0,0 +1,28 @@
1
+ export declare enum FiltersNames {
2
+ ProductType = "\u0422\u0438\u043F \u043F\u0440\u043E\u0434\u0443\u043A\u0446\u0438\u0438",
3
+ Brands = "\u0411\u0440\u0435\u043D\u0434\u044B",
4
+ DiscountLevel = "\u0421\u0442\u0435\u043F\u0435\u043D\u044C \u0441\u043A\u0438\u0434\u043A\u0438",
5
+ CustomerCategory = "\u041A\u0430\u0442\u0435\u0433\u043E\u0440\u0438\u044F \u043F\u043E\u043A\u0443\u043F\u0430\u0442\u0435\u043B\u044F",
6
+ PromotionType = "\u0422\u0438\u043F \u0430\u043A\u0446\u0438\u0438"
7
+ }
8
+ type ProductTypeValues = 'Декоративная косметика' | 'Уход за кожей' | 'Уход за волосами' | 'Парфюмерия';
9
+ type BrandsValues = "L'Oreal" | 'Maybelline' | 'Revlon' | "Burt's Bees";
10
+ type DiscountLevelValues = 'До 20%' | '20% - 50%' | '50% - 70%' | 'Более 70%';
11
+ type CustomerCategoryValues = 'Денежные экономии' | 'Профессионалы' | 'Студенты' | 'Любители бьюти';
12
+ type PromotionTypeValues = 'Распродажа' | 'Купоны' | 'Комплексные предложения' | 'Подарочные наборы';
13
+ export type ArticleFilters = {
14
+ [FiltersNames.ProductType]: ProductTypeValues[];
15
+ [FiltersNames.Brands]: BrandsValues[];
16
+ [FiltersNames.DiscountLevel]: DiscountLevelValues[];
17
+ [FiltersNames.CustomerCategory]: CustomerCategoryValues[];
18
+ [FiltersNames.PromotionType]: PromotionTypeValues[];
19
+ };
20
+ export declare const productTypeValues: ProductTypeValues[];
21
+ export declare const brandsValues: BrandsValues[];
22
+ export declare const discountLevelValues: DiscountLevelValues[];
23
+ export declare const customerCategoryValues: CustomerCategoryValues[];
24
+ export declare const promotionTypeValues: PromotionTypeValues[];
25
+ export declare const initialFilters: ArticleFilters;
26
+ export declare const fullFilters: ArticleFilters;
27
+ export declare const getFiltersTypesJSON: () => string;
28
+ export {};
@@ -0,0 +1 @@
1
+ "use strict";var e;exports.FiltersNames=void 0,(e=exports.FiltersNames||(exports.FiltersNames={})).ProductType="Тип продукции",e.Brands="Бренды",e.DiscountLevel="Степень скидки",e.CustomerCategory="Категория покупателя",e.PromotionType="Тип акции";const s=["Декоративная косметика","Уход за кожей","Уход за волосами","Парфюмерия"],t=["L'Oreal","Maybelline","Revlon","Burt's Bees"],r=["До 20%","20% - 50%","50% - 70%","Более 70%"],o=["Денежные экономии","Профессионалы","Студенты","Любители бьюти"],l=["Распродажа","Купоны","Комплексные предложения","Подарочные наборы"],i={[exports.FiltersNames.ProductType]:[],[exports.FiltersNames.Brands]:[],[exports.FiltersNames.DiscountLevel]:[],[exports.FiltersNames.CustomerCategory]:[],[exports.FiltersNames.PromotionType]:[]},p={[exports.FiltersNames.ProductType]:s,[exports.FiltersNames.Brands]:t,[exports.FiltersNames.DiscountLevel]:r,[exports.FiltersNames.CustomerCategory]:o,[exports.FiltersNames.PromotionType]:l},a=()=>JSON.stringify(p,null,2);exports.brandsValues=t,exports.customerCategoryValues=o,exports.discountLevelValues=r,exports.fullFilters=p,exports.getFiltersTypesJSON=a,exports.initialFilters=i,exports.productTypeValues=s,exports.promotionTypeValues=l;
@@ -0,0 +1,3 @@
1
+ import { GetDefaultImagesFrontmatter } from 'src/common/types';
2
+ export declare const getDefaultImagesFrontmatter: GetDefaultImagesFrontmatter;
3
+ export declare const prohibitedWordsInAltTitle: RegExp;
@@ -0,0 +1 @@
1
+ "use strict";const e=(e,n)=>{const t=n(e),i=undefined,a=undefined,l=undefined,o=undefined;return[{alt:`${e} Introduction`,filename:`${t}-introduction.png`,title:`${e} Introduction`},{alt:`Magnificent ${e}`,filename:`Magnificent-${t}.png`,title:`Magnificent ${e}`},{alt:`Notable ${e}`,filename:`${t}-notable.png`,title:`Notable ${e}`},{alt:`${e} Summary`,filename:`${t}-summary.png`,title:`${e} Summary`}]},n=/\b(?:hands|men|women|human|people|chief|family|mixing|serving|tasting|rolling)\b/i;exports.getDefaultImagesFrontmatter=e,exports.prohibitedWordsInAltTitle=n;
@@ -0,0 +1,15 @@
1
+ export * from './data';
2
+ export * from './filters';
3
+ export * from './helpers';
4
+ export * from './prompts/images';
5
+ export * from './seo';
6
+ import './styles/colors.css';
7
+ import './styles/fonts.css';
8
+ import './styles/global.css';
9
+ import './styles/sizing.css';
10
+ import './styles/vars.css';
11
+ import './styles/theme.css';
12
+ import * as gpt35Articles from './prompts/gpt35turbo/articles';
13
+ import * as gpt4oMiniArticles from './prompts/gpt4oMini/articles';
14
+ export { gpt35Articles, gpt4oMiniArticles };
15
+ export * from './prompts/data';
@@ -0,0 +1 @@
1
+ "use strict";var e=require("./data.js"),t=require("./filters.js"),r=require("./helpers.js"),s=require("./prompts/images.js"),o=require("./seo.js"),a=require("./prompts/gpt35turbo/articles.js"),p=require("./prompts/gpt4oMini/articles.js"),i=require("./prompts/data.js");exports.DEFAULT_DESCRIPTION_EMOJIS=e.DEFAULT_DESCRIPTION_EMOJIS,exports.authors=e.authors,exports.authorsNames=e.authorsNames,exports.categories=e.categories,exports.dataStructure=e.dataStructure,exports.devBucketName=e.devBucketName,exports.prodBucketName=e.prodBucketName,exports.startDate=e.startDate,exports.subcategories=e.subcategories,exports.subsubcategories=e.subsubcategories,Object.defineProperty(exports,"FiltersNames",{enumerable:!0,get:function(){return t.FiltersNames}}),exports.brandsValues=t.brandsValues,exports.customerCategoryValues=t.customerCategoryValues,exports.discountLevelValues=t.discountLevelValues,exports.fullFilters=t.fullFilters,exports.getFiltersTypesJSON=t.getFiltersTypesJSON,exports.initialFilters=t.initialFilters,exports.productTypeValues=t.productTypeValues,exports.promotionTypeValues=t.promotionTypeValues,exports.getDefaultImagesFrontmatter=r.getDefaultImagesFrontmatter,exports.prohibitedWordsInAltTitle=r.prohibitedWordsInAltTitle,exports.getOpenAiBasedImagePrompt=s.getOpenAiBasedImagePrompt,exports.getOpenAiBasedImagePromptDalle2=s.getOpenAiBasedImagePromptDalle2,exports.getStableDiffusionImagePrompt=s.getStableDiffusionImagePrompt,exports.AUTHORS_INFO=o.AUTHORS_INFO,exports.AUTHORS_META=o.AUTHORS_META,exports.PAGES_SEO=o.PAGES_SEO,Object.defineProperty(exports,"PageNames",{enumerable:!0,get:function(){return o.PageNames}}),exports.gpt35Articles=a,exports.gpt4oMiniArticles=p,exports.END_STEP=i.END_STEP,exports.FILTERS_INFO=i.FILTERS_INFO,exports.IMAGES_PROHIBITED_WORDS=i.IMAGES_PROHIBITED_WORDS,exports.START_STEP=i.START_STEP,exports.TARGET_AUDIENCE=i.TARGET_AUDIENCE,exports.ZERO_SECTION=i.ZERO_SECTION,exports.portalInfo=i.portalInfo;
@@ -0,0 +1,7 @@
1
+ export declare const portalInfo = "The article is written for the web portal.I will give you important information regarding the web portal:\n - Brief description: SkidKosmo - \u0432\u0430\u0448 \u043F\u043E\u0440\u0442\u0430\u043B \u0434\u043B\u044F \u043F\u043E\u0438\u0441\u043A\u0430 \u0432\u044B\u0433\u043E\u0434\u043D\u044B\u0445 \u0430\u043A\u0446\u0438\u0439 \u043D\u0430 \u043A\u043E\u0441\u043C\u0435\u0442\u0438\u043A\u0443. \u0423\u0437\u043D\u0430\u0439\u0442\u0435 \u043E \u043B\u0443\u0447\u0448\u0438\u0445 \u043F\u0440\u0435\u0434\u043B\u043E\u0436\u0435\u043D\u0438\u044F\u0445 \u0438 \u0441\u043A\u0438\u0434\u043A\u0430\u0445 \u043D\u0430 \u043B\u044E\u0431\u0438\u043C\u044B\u0435 \u043A\u043E\u0441\u043C\u0435\u0442\u0438\u0447\u0435\u0441\u043A\u0438\u0435 \u0431\u0440\u0435\u043D\u0434\u044B.\n - Detailed description: SkidKosmo - \u044D\u0442\u043E \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0439 \u043F\u043E\u0440\u0442\u0430\u043B, \u043F\u043E\u043B\u043D\u043E\u0441\u0442\u044C\u044E \u043F\u043E\u0441\u0432\u044F\u0449\u0435\u043D\u043D\u044B\u0439 \u0430\u043A\u0446\u0438\u044F\u043C \u0438 \u0441\u043A\u0438\u0434\u043A\u0430\u043C \u0432 \u043C\u0438\u0440\u0435 \u043A\u043E\u0441\u043C\u0435\u0442\u0438\u043A\u0438. \u0417\u0434\u0435\u0441\u044C \u0432\u044B \u043D\u0430\u0439\u0434\u0435\u0442\u0435 \u0430\u043A\u0442\u0443\u0430\u043B\u044C\u043D\u044B\u0435 \u043F\u0440\u0435\u0434\u043B\u043E\u0436\u0435\u043D\u0438\u044F \u043E\u0442 \u0432\u0435\u0434\u0443\u0449\u0438\u0445 \u0431\u0440\u0435\u043D\u0434\u043E\u0432, \u0434\u0435\u0442\u0430\u043B\u044C\u043D\u044B\u0435 \u043E\u0431\u0437\u043E\u0440\u044B \u0438 \u0440\u0435\u043A\u043E\u043C\u0435\u043D\u0434\u0430\u0446\u0438\u0438 \u043F\u043E \u0432\u044B\u0431\u043E\u0440\u0443 \u043A\u043E\u0441\u043C\u0435\u0442\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432. \u041F\u043E\u0440\u0442\u0430\u043B \u043F\u0440\u0435\u0434\u043B\u0430\u0433\u0430\u0435\u0442 \u0443\u0434\u043E\u0431\u043D\u044B\u0439 \u0438\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043B\u044F \u0431\u044B\u0441\u0442\u0440\u043E\u0433\u043E \u043F\u043E\u0438\u0441\u043A\u0430 \u0430\u043A\u0446\u0438\u0439, \u0430 \u0442\u0430\u043A\u0436\u0435 \u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E\u0441\u0442\u044C \u043F\u043E\u0434\u043F\u0438\u0441\u0430\u0442\u044C\u0441\u044F \u043D\u0430 \u0440\u0430\u0441\u0441\u044B\u043B\u043A\u0443, \u0447\u0442\u043E\u0431\u044B \u043D\u0435 \u043F\u0440\u043E\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u0441\u0430\u043C\u044B\u0435 \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u043D\u044B\u0435 \u043F\u0440\u0435\u0434\u043B\u043E\u0436\u0435\u043D\u0438\u044F. \u041C\u044B \u0441\u0442\u0440\u0435\u043C\u0438\u043C\u0441\u044F \u043F\u043E\u043C\u043E\u0447\u044C \u043D\u0430\u0448\u0438\u043C \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F\u043C \u0441\u044D\u043A\u043E\u043D\u043E\u043C\u0438\u0442\u044C \u043D\u0430 \u043F\u043E\u043A\u0443\u043F\u043A\u0430\u0445, \u043F\u0440\u0435\u0434\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u044F \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E \u043E \u043B\u0443\u0447\u0448\u0438\u0445 \u0446\u0435\u043D\u0430\u0445 \u0438 \u0430\u043A\u0446\u0438\u044F\u0445 \u0432 \u0440\u0435\u0436\u0438\u043C\u0435 \u0440\u0435\u0430\u043B\u044C\u043D\u043E\u0433\u043E \u0432\u0440\u0435\u043C\u0435\u043D\u0438.\n - Target audience: \u0426\u0435\u043B\u0435\u0432\u0430\u044F \u0430\u0443\u0434\u0438\u0442\u043E\u0440\u0438\u044F \u043F\u043E\u0440\u0442\u0430\u043B\u0430 SkidKosmo \u0432\u043A\u043B\u044E\u0447\u0430\u0435\u0442 \u0436\u0435\u043D\u0449\u0438\u043D \u0438 \u043C\u0443\u0436\u0447\u0438\u043D \u0432\u0441\u0435\u0445 \u0432\u043E\u0437\u0440\u0430\u0441\u0442\u043E\u0432, \u0437\u0430\u0438\u043D\u0442\u0435\u0440\u0435\u0441\u043E\u0432\u0430\u043D\u043D\u044B\u0445 \u0432 \u043A\u043E\u0441\u043C\u0435\u0442\u0438\u043A\u0435, \u0430 \u0442\u0430\u043A\u0436\u0435 \u043F\u0440\u043E\u0444\u0435\u0441\u0441\u0438\u043E\u043D\u0430\u043B\u043E\u0432 \u0438 \u043B\u044E\u0431\u0438\u0442\u0435\u043B\u0435\u0439 \u0431\u044C\u044E\u0442\u0438-\u0438\u043D\u0434\u0443\u0441\u0442\u0440\u0438\u0438, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u0445\u043E\u0442\u044F\u0442 \u0441\u043B\u0435\u0434\u0438\u0442\u044C \u0437\u0430 \u0430\u043A\u0446\u0438\u044F\u043C\u0438 \u0438 \u043D\u0430\u0445\u043E\u0434\u0438\u0442\u044C \u0432\u044B\u0433\u043E\u0434\u043D\u044B\u0435 \u043F\u0440\u0435\u0434\u043B\u043E\u0436\u0435\u043D\u0438\u044F. \u042D\u0442\u043E \u0442\u0430\u043A\u0436\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u043F\u043E\u043B\u0435\u0437\u043D\u043E \u0434\u043B\u044F \u0441\u0442\u0443\u0434\u0435\u043D\u0442\u043E\u0432 \u0438 \u0440\u0430\u0431\u043E\u0442\u0430\u044E\u0449\u0438\u0445 \u043B\u044E\u0434\u0435\u0439, \u0438\u0449\u0443\u0449\u0438\u0445 \u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E\u0441\u0442\u044C \u0441\u044D\u043A\u043E\u043D\u043E\u043C\u0438\u0442\u044C \u043D\u0430 \u043A\u043E\u0441\u043C\u0435\u0442\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u043F\u043E\u043A\u0443\u043F\u043A\u0430\u0445.\n";
2
+ export declare const ZERO_SECTION = "This is important to include the following headers to the section, ONLY if they are applicable to the title, abstract and description of the article:\n## \u041F\u043E\u043F\u0443\u043B\u044F\u0440\u043D\u044B\u0435 \u0430\u043A\u0446\u0438\u0438 \u0438 \u043F\u0440\u0435\u0434\u043B\u043E\u0436\u0435\u043D\u0438\u044F\n - \u041E\u0431\u0437\u043E\u0440 \u0442\u0435\u043A\u0443\u0449\u0438\u0445 \u0441\u043A\u0438\u0434\u043E\u043A \u043D\u0430 \u043A\u043E\u0441\u043C\u0435\u0442\u0438\u0447\u0435\u0441\u043A\u0438\u0435 \u0431\u0440\u0435\u043D\u0434\u044B\n - \u0421\u0435\u0437\u043E\u043D\u043D\u044B\u0435 \u0440\u0430\u0441\u043F\u0440\u043E\u0434\u0430\u0436\u0438 \u0438 \u0441\u043F\u0435\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0435 \u043F\u0440\u0435\u0434\u043B\u043E\u0436\u0435\u043D\u0438\u044F\n\n## \u0420\u0435\u043A\u043E\u043C\u0435\u043D\u0434\u0430\u0446\u0438\u0438 \u043F\u043E \u0432\u044B\u0431\u043E\u0440\u0443 \u043A\u043E\u0441\u043C\u0435\u0442\u0438\u043A\u0438\n - \u041A\u0430\u043A \u0432\u044B\u0431\u0440\u0430\u0442\u044C \u043A\u043E\u0441\u043C\u0435\u0442\u0438\u0447\u0435\u0441\u043A\u0438\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u043F\u043E \u0442\u0438\u043F\u0443 \u043A\u043E\u0436\u0438\n - \u0421\u043E\u0432\u0435\u0442\u044B \u043F\u043E \u0432\u044B\u0431\u043E\u0440\u0443 \u043A\u043E\u0441\u043C\u0435\u0442\u0438\u043A\u0438 \u0434\u043B\u044F \u0440\u0430\u0437\u043D\u044B\u0445 \u0432\u043E\u0437\u0440\u0430\u0441\u0442\u043D\u044B\u0445 \u0433\u0440\u0443\u043F\u043F\n \nYou can change the headers and topics to make them more coherent with the description of the article.\nStart text with first Heading H2 - \u041F\u043E\u043F\u0443\u043B\u044F\u0440\u043D\u044B\u0435 \u0430\u043A\u0446\u0438\u0438 \u0438 \u043F\u0440\u0435\u0434\u043B\u043E\u0436\u0435\u043D\u0438\u044F, IF it's applicable to the theme of the article.\n";
3
+ export declare const START_STEP = "highlighting the key points that will be discussed and the relevance of the topic";
4
+ export declare const END_STEP = "synthesizing the information presented throughout";
5
+ export declare const TARGET_AUDIENCE = "\u0436\u0435\u043D\u0449\u0438\u043D\u044B \u0438 \u043C\u0443\u0436\u0447\u0438\u043D\u044B \u0432\u0441\u0435\u0445 \u0432\u043E\u0437\u0440\u0430\u0441\u0442\u043E\u0432";
6
+ export declare const IMAGES_PROHIBITED_WORDS = "any numbers, image, slug, step, seo, hand / hands, men, women, human, people, chief, preparing, process, cooking, mixing, serving, tasting, rolling";
7
+ export declare const FILTERS_INFO: string;
@@ -0,0 +1 @@
1
+ "use strict";var e;const t="The article is written for the web portal.I will give you important information regarding the web portal:\n - Brief description: SkidKosmo - ваш портал для поиска выгодных акций на косметику. Узнайте о лучших предложениях и скидках на любимые косметические бренды.\n - Detailed description: SkidKosmo - это информационный портал, полностью посвященный акциям и скидкам в мире косметики. Здесь вы найдете актуальные предложения от ведущих брендов, детальные обзоры и рекомендации по выбору косметических средств. Портал предлагает удобный интерфейс для быстрого поиска акций, а также возможность подписаться на рассылку, чтобы не пропустить самые интересные предложения. Мы стремимся помочь нашим пользователям сэкономить на покупках, предоставляя информацию о лучших ценах и акциях в режиме реального времени.\n - Target audience: Целевая аудитория портала SkidKosmo включает женщин и мужчин всех возрастов, заинтересованных в косметике, а также профессионалов и любителей бьюти-индустрии, которые хотят следить за акциями и находить выгодные предложения. Это также может быть полезно для студентов и работающих людей, ищущих возможность сэкономить на косметических покупках.\n",i="This is important to include the following headers to the section, ONLY if they are applicable to the title, abstract and description of the article:\n## Популярные акции и предложения\n - Обзор текущих скидок на косметические бренды\n - Сезонные распродажи и специальные предложения\n\n## Рекомендации по выбору косметики\n - Как выбрать косметические средства по типу кожи\n - Советы по выбору косметики для разных возрастных групп\n \nYou can change the headers and topics to make them more coherent with the description of the article.\nStart text with first Heading H2 - Популярные акции и предложения, IF it's applicable to the theme of the article.\n",n="highlighting the key points that will be discussed and the relevance of the topic",o="synthesizing the information presented throughout",r="женщины и мужчины всех возрастов",a="any numbers, image, slug, step, seo, hand / hands, men, women, human, people, chief, preparing, process, cooking, mixing, serving, tasting, rolling",s=`That is TREMENDOUS important - if category doesn't match - return empty array for that category - []. For example if you don't find any match for $FILTERNAME, return for that category\n$FILTERNAME: []\nResponse in valid json, adhering strictly to json interface below, include every field present in it, but include values in array only suitable for article, all array values are optional!\n${require("../filters.js").getFiltersTypesJSON()}`;exports.END_STEP=o,exports.FILTERS_INFO=s,exports.IMAGES_PROHIBITED_WORDS=a,exports.START_STEP=n,exports.TARGET_AUDIENCE=r,exports.ZERO_SECTION=i,exports.portalInfo=t;
@@ -0,0 +1,6 @@
1
+ import { GetOutlinePrompt, GetEntitiesPrompt, GetFiltersPrompt, GetImagesMetaPrompt, GetSectionPrompt } from 'src/common/types';
2
+ export declare const getBasePrompt: GetOutlinePrompt;
3
+ export declare const getSectionPrompt: GetSectionPrompt;
4
+ export declare const getImagesMetaPrompt: GetImagesMetaPrompt;
5
+ export declare const getFiltersPrompt: GetFiltersPrompt;
6
+ export declare const getEntitiesPrompt: GetEntitiesPrompt;
@@ -0,0 +1 @@
1
+ "use strict";var t=require("../data.js"),e=require("../../../common/prompts/gpt35turbo/articles.js"),o=require("../../../common/data.js"),r=require("../../data.js");const m=(o,r=e.DEFAULT_HEADINGS_NUM,m)=>e.getOutlineCommonPrompt({keyword:o,headingsNum:r,additionalInfo:t.portalInfo,locale:m}),s=o=>e.getSectionCommonPrompt(o,{zeroSectionPrompt:t.ZERO_SECTION,startStep:t.START_STEP,endStep:t.END_STEP,targetAudience:t.TARGET_AUDIENCE}),a=o=>e.getImagesMetaCommonPrompt(o,t.IMAGES_PROHIBITED_WORDS),p=o=>e.getFiltersCommonPrompt(o,t.FILTERS_INFO),i=t=>e.getEntitiesCommonPrompt(t,o.getCategoriesTypesJSON(r.dataStructure));exports.getBasePrompt=m,exports.getEntitiesPrompt=i,exports.getFiltersPrompt=p,exports.getImagesMetaPrompt=a,exports.getSectionPrompt=s;
@@ -0,0 +1,6 @@
1
+ import { GetOutlinePrompt, GetEntitiesPrompt, GetFiltersPrompt, GetImagesMetaPrompt, GetSectionPrompt } from 'src/common/types';
2
+ export declare const getBasePrompt: GetOutlinePrompt;
3
+ export declare const getSectionPrompt: GetSectionPrompt;
4
+ export declare const getImagesMetaPrompt: GetImagesMetaPrompt;
5
+ export declare const getFiltersPrompt: GetFiltersPrompt;
6
+ export declare const getEntitiesPrompt: GetEntitiesPrompt;
@@ -0,0 +1 @@
1
+ "use strict";var t=require("../data.js"),e=require("../../../common/prompts/gpt4oMini/articles.js"),o=require("../../../common/data.js"),r=require("../../data.js");const m=(o,r=e.DEFAULT_HEADINGS_NUM,m)=>e.getOutlineCommonPrompt({keyword:o,headingsNum:r,additionalInfo:t.portalInfo,locale:m}),s=o=>e.getSectionCommonPrompt(o,{zeroSectionPrompt:t.ZERO_SECTION,startStep:t.START_STEP,endStep:t.END_STEP,targetAudience:t.TARGET_AUDIENCE}),a=o=>e.getImagesMetaCommonPrompt(o,t.IMAGES_PROHIBITED_WORDS),i=o=>e.getFiltersCommonPrompt(o,t.FILTERS_INFO),p=t=>e.getEntitiesCommonPrompt(t,o.getCategoriesTypesJSON(r.dataStructure));exports.getBasePrompt=m,exports.getEntitiesPrompt=p,exports.getFiltersPrompt=i,exports.getImagesMetaPrompt=a,exports.getSectionPrompt=s;
@@ -0,0 +1,4 @@
1
+ import { GetOpenAiBasedImagePrompt, GetStableDiffusionImagePrompt } from 'src/common/types';
2
+ export declare const getStableDiffusionImagePrompt: GetStableDiffusionImagePrompt;
3
+ export declare const getOpenAiBasedImagePrompt: GetOpenAiBasedImagePrompt;
4
+ export declare const getOpenAiBasedImagePromptDalle2: GetOpenAiBasedImagePrompt;
@@ -0,0 +1 @@
1
+ "use strict";var e=require("../../common/prompts/images.js");const a=({title:a,alt:o,articleTitle:t})=>({prompt:`Real life photo of a ${a}, ${o}, for an article ${t} from professional cosmetics photograph for cosmetics magazine, cosmetics photography, photorealistic, ultra realistic, highly detailed, commercial photography, sharp focus, depth of field, dof, film, bokeh, 85mm, f1.8, portrait, photo realistic, hyperrealistic, high dynamic range, masterpiece, best quality, (8k, RAW photo:1.2), vivid colour`,negativePrompt:e.SD_NEGATIVE_PROMPT,options:{cfg_scale:2}}),o=({title:e,alt:a,articleTitle:o})=>`I NEED a hyper-real illustration of a ${e} at food style photography, ${a}, for an article ${o} for a glossy recipe magazine, photorealistic, ultra realistic, maximum detail, highly detailed, food style, food style photography, professional food photography, commercial photography, foreground focus, recipes.com, delish.com, epicurious, instagram, 4K, 8K, volumetric light, octane render, uplight, no blur, depth of field, dof, bokeh, foreground focus. Please exclude any: Photocamera, videocamera, Spotlight, soffit, ramp, scanners, strobe, soffit truss, film props, radio, cooking timer, watches, clocks, men, woman, people, hand, nands, leg, legs, font, username, error, words, letters, digits, autograph, trademark, name, easy-negative, cartoon, worst quality, low quality, blind, bad eyes, ugly eyes, dead eyes, greyscale, monochrome, vignette, text, title, logo, signature ,watermark, extra limbs, extra fingers, mutated hands, bad anatomy, censored, rabs, muscular, rib, blurry, blur, grainy, teeth, low resolution, lowres, low details, oversaturated, undersaturated, overexposed, underexposed, grayscale, bw, bad photo, bad photography, bad art, morbid, ugly, asymmetrical, mutated malformed, mutilated, poorly lit, bad shadow, draft, cropped, out of frame, cut off, jpeg artefacts, out of focus, glitch, duplicate, airbrushed,, anime, semi-realistic, cgi, render, 3D, blender, digital art, manga, amateur, 3D, 3D Game, 3D Game Scene, 3D Character, bad hands, , bad body, bad face, bad teeth, bad arms, bad legs, deformities, drawing, deformed iris, deformed pupils, deformed, painting, crayon, sketch, graphite, impressionist, noisy, poorly drawn hands, poorly drawn face, poorly drawn eyes, mutation, bad proportions, cloned face, disfigured, gross proportions, malformed limbs, malformed limbs, missing arms, missing legs, extra arms, extra legs, fused fingers, too many fingers, long neck, incoherent from this hyper-real illustration of a ${e}`,t=({title:e})=>`\n\tPhotorealistic highly detailed image of ingredients for ${e}, arranged professionally as if for a food photography shoot. image should showcase maximum detail realism, with a focus on foreground, emulating the style of a high-definition, 8k resolution professional food photograph. lighting should be volumetric and uplit, with a depth of field and bokeh effect, avoiding any blur for clarity. overall aesthetic should be reminiscent of the Kodak Portrait 800 style.\n\tNegative Prompt:\n\teasy-negative, cartoon, worst quality, low quality, text, title, logo, signature ,watermark, extra limbs, extra fingers, mutated hands, bad anatomy, blurry, blur, grainy, teeth, low resolution, low details, oversaturated, undersaturated, overexposed, underexposed, grayscale, bad shadow, draft, cropped, out of frame, cut off, jpeg artefacts, out of focus, glitch, airbrushed, anime, semi-realistic, cgi, render, 3D, blender, manga, amateur, 3D, 3D Game, drawing, sketch\n`;exports.getOpenAiBasedImagePrompt=o,exports.getOpenAiBasedImagePromptDalle2=t,exports.getStableDiffusionImagePrompt=a;
@@ -0,0 +1,23 @@
1
+ export interface PageSeoData {
2
+ title: string;
3
+ description: string;
4
+ }
5
+ export declare enum PageNames {
6
+ Authors = "authors",
7
+ Home = "home",
8
+ NotFound = "not-found",
9
+ AboutUs = "about-us",
10
+ PrivacyPolicy = "privacy-policy",
11
+ Terms = "terms",
12
+ Sitemap = "sitemap"
13
+ }
14
+ export type PagesSeo = Record<PageNames, PageSeoData>;
15
+ export interface AuthorInfo {
16
+ name: string;
17
+ description: string;
18
+ meta_title: string;
19
+ meta_description: string;
20
+ }
21
+ export declare const PAGES_SEO: PagesSeo;
22
+ export declare const AUTHORS_INFO: AuthorInfo[];
23
+ export declare const AUTHORS_META: Record<string, PageSeoData>;
@@ -0,0 +1 @@
1
+ "use strict";var i;exports.PageNames=void 0,(i=exports.PageNames||(exports.PageNames={})).Authors="authors",i.Home="home",i.NotFound="not-found",i.AboutUs="about-us",i.PrivacyPolicy="privacy-policy",i.Terms="terms",i.Sitemap="sitemap";const e={[exports.PageNames.Authors]:{title:"Авторы | SkidKosmo - Узнай больше о нашей команде",description:"Познакомьтесь с нашей командой профессионалов в мире косметики! 🌟 Мы делимся своим опытом и знаниями с вами."},[exports.PageNames.Home]:{title:"Главная | SkidKosmo - Акции на косметику",description:"Заходите в мир акций на косметику с SkidKosmo! 💄 Узнайте о лучших скидках и новинках в мире бьюти."},[exports.PageNames.NotFound]:{title:"Страница не найдена | SkidKosmo",description:"К сожалению, запрашиваемая страница не найдена. Пожалуйста, проверьте ссылку или вернитесь на главную. 🚫"},[exports.PageNames.AboutUs]:{title:"О нас | SkidKosmo - Наша история",description:"Узнайте о SkidKosmo, нашем подходе к косметике и почему мы лучшие в акциях! 🌟"},[exports.PageNames.PrivacyPolicy]:{title:"Политика конфиденциальности | SkidKosmo",description:"Защита вашей информации для нас на первом месте. 🌐 Узнайте больше о нашей политике конфиденциальности."},[exports.PageNames.Terms]:{title:"Условия использования | SkidKosmo",description:"Перед использованием сайта, пожалуйста, ознакомьтесь с нашими условиями. 📜"},[exports.PageNames.Sitemap]:{title:"Карта сайта | SkidKosmo",description:"Найдите нужную информацию быстро и легко с помощью нашей карты сайта. 🗺️"}},t=[{name:"Анастасия Смирнова",description:"Анастасия - эксперт в области косметологии с более чем 10-летним опытом работы. Она активно публикует статьи о последних трендах в косметике и продажах. Работает консультантом для разных брендов, включая известные марки в России.",meta_title:"Анастасия Смирнова - Эксперт в области косметологии | SkidKosmo",meta_description:"Узнайте больше об Анастасии Смирновой, эксперте по косметике, с 10-летним опытом работы и консультантом для известных брендов. Читайте ее статьи на SkidKosmo."},{name:"Дмитрий Кузнецов",description:"Дмитрий - дерматолог и автор популярных блогов о косметических средствах. Его статьи полны полезных советов по использованию косметики для разных типов кожи.",meta_title:"Дмитрий Кузнецов - Дерматолог и автор статей | SkidKosmo",meta_description:"Читать статьи Дмитрия Кузнецова, дерматолога и эксперта по косметике, с практическими советами по уходу за кожей на SkidKosmo."},{name:"Екатерина Волкова",description:"Екатерина - косметолог и визажист с 8-летним опытом. Она специализируется на макияже для улучшения внешнего вида и уверенности в себе.",meta_title:"Екатерина Волкова - Косметолог и визажист | SkidKosmo",meta_description:"Изучите статьи Екатерины Волковой, косметолога и визажиста, где она делится секретами красоты и ухода за кожей на SkidKosmo."},{name:"Сергей Петров",description:"Сергей - маркетолог по косметическим продуктам с опытом более 15 лет. Он консультирует крупные косметические компании о лучших способах продвижения своей продукции.",meta_title:"Сергей Петров - Маркетолог по косметике | SkidKosmo",meta_description:"Читать статьи Сергея Петрова, эксперта по маркетингу в косметической индустрии, о продажах и стратегиях на SkidKosmo."},{name:"Мария Васильева",description:"Мария - автор и журналист, специализирующийся на обзорах косметических продуктов. Её статьи часто публикуются в косметических глянцах.",meta_title:"Мария Васильева - Журналист и автор | SkidKosmo",meta_description:"Откройте для себя мир косметики с Марией Васильевой, автором обзоров и советов по выбору косметических средств на SkidKosmo."},{name:"Игорь Назаров",description:"Игорь - специалист по ароматерапии и разработчик натуральной косметики. Он пишет о пользе органических ингредиентов в косметических средствах.",meta_title:"Игорь Назаров - Специалист по ароматерапии | SkidKosmo",meta_description:"Изучите статьи Игоря Назарова о натуральной косметике и органических ингредиентах в уходе за собой на SkidKosmo."},{name:"Ольга Соколова",description:"Ольга - косметолог и блогер с passion к уходу за кожей. Она делится своими открытиями и рецензиями на средства по уходу.",meta_title:"Ольга Соколова - Косметолог и блогер | SkidKosmo",meta_description:"Следите за статьями Ольги Соколовой, косметолога и блогера, о новинках и лучших средствах для ухода за кожей на SkidKosmo."},{name:"Александр Тихонов",description:"Александр - эксперт по биокосметике и научный исследователь. Он делится результатами исследований об инновационных составах в косметике.",meta_title:"Александр Тихонов - Эксперт по биокосметике | SkidKosmo",meta_description:"Откройте для себя научные основы косметики с Александром Тихоновым, экспертом по биокосметике, на SkidKosmo."},{name:"Наталья Федорова",description:"Наталья - специалист по травам и фитокосметике. Она активно работает над созданием собственных линий на основе природных ингредиентов.",meta_title:"Наталья Федорова - Специалист по фитокосметике | SkidKosmo",meta_description:"Читайте статьи Натальи Федоровой, специалиста по фитокосметике, о натуральных компонентах и их пользе для красоты на SkidKosmo."},{name:"Кирилл Лебедев",description:"Кирилл - профессиональный стилист и консультант, который помогает находить идеальные продукты для каждого типа кожи. Он пишет о последних трендах в мире косметики.",meta_title:"Кирилл Лебедев - Стилист и консультант | SkidKosmo",meta_description:"Следите за статьями Кирилла Лебедева, стилиста и эксперта по косметике, с практическими рекомендациями на SkidKosmo."},{name:"Анна Смирнова",description:"Анна — опытный косметолог с более чем 10-летним стажем работы в индустрии красоты. Она специальизируется на уходе за кожей и имеет множество сертификатов. Анна делится своими знаниями о косметических процедурах и продуктах, которые помогают поддерживать здоровье кожи.",meta_title:"Анна Смирнова - Косметолог и эксперты по уходу за кожей | SkidKosmo",meta_description:"Читать статьи Анны Смирновой — опытного косметолога о косметике и уходе за кожей на портале SkidKosmo."},{name:"Дмитрий Ковалев",description:"Дмитрий — маркетолог в области красоты и ухода за собой. Его опыт работы с крупными косметическими брендами позволяет ему анализировать и рекомендовать лучшие предложения на рынке. Он делится своим опытом и находками в сфере косметики на портале SkidKosmo.",meta_title:"Дмитрий Ковалев - Эксперт в косметическом маркетинге | SkidKosmo",meta_description:"Читайте статьи Дмитрия Ковалева, эксперта в маркетинге косметики, о лучших продуктах и акциях на SkidKosmo."},{name:"Елена Петрова",description:"Елена — блогер и визажист с многолетним опытом работы в области макияжа. Она делится своими советами по применению косметических продуктов и созданию идеального образа. Елена активно ведет соцсети, где делится своим творчеством.",meta_title:"Елена Петрова - Визажист и блогер по макияжу | SkidKosmo",meta_description:"Подписывайтесь на статьи Елены Петровой, визажиста, о макияже и косметических акциях на SkidKosmo."},{name:"Светлана Васильева",description:"Светлана — дерматолог со специализацией в косметической дерматологии. Она имеет более 15 лет опыта в лечении проблем кожи и применения инновационных косметических средств. Светлана делится полезными советами о здоровье кожи.",meta_title:"Светлана Васильева - Дерматолог и эксперт по уходу за кожей | SkidKosmo",meta_description:"Читайте статьи Светланы Васильевой о здоровье кожи и косметике на портале SkidKosmo."},{name:"Иван Никифоров",description:"Иван — видео блогер и создатель контента, который занимается обзорами косметики и новинок в мире красоты. Его видео и статьи помогают потребителям лучше ориентироваться среди множества продуктов.",meta_title:"Иван Никифоров - Блогер и обозреватель косметики | SkidKosmo",meta_description:"Смотрите статьи Ивана Никифорова о косметике и акциях на SkidKosmo."},{name:"Ольга Смирнова",description:"Ольга — профессиональный стилист и консультант по имиджу. Она помогает людям находить свой стиль благодаря правильному выбору косметических средств и техники макияжа.",meta_title:"Ольга Смирнова - Стилист и эксперт по имиджу | SkidKosmo",meta_description:"Читайте статьи Ольги Смирновой о стиле и косметике на портале SkidKosmo."},{name:"Анатолий Федоров",description:"Анатолий — фитотерапевт, который имеет опыт в создании натуральной косметики. Он делится рецептами и советами, как правильно использовать травы в уходе за кожей.",meta_title:"Анатолий Федоров - Фитотерапевт и создатель натуральной косметики | SkidKosmo",meta_description:"Читайте статьи Анатолия Федорова о натуральных средствах по уходу за кожей на SkidKosmo."},{name:"Мария Лебедева",description:"Мария — эксперт по ароматерапии и органической косметике. Она обучает людей правильному использованию эфирных масел и натуральных компонентов в ежедневном уходе.",meta_title:"Мария Лебедева - Эксперт по ароматерапии и органической косметике | SkidKosmo",meta_description:"Откройте полезные советы Марии Лебедевой об использовании органических средств на SkidKosmo."},{name:"Кирилл Андреев",description:"Кирилл — редактор и автор статей о мужской косметике. Он делится полезной информацией о витаминах, средствах по уходу и секретах стильных мужчин.",meta_title:"Кирилл Андреев - Эксперт по мужской косметике | SkidKosmo",meta_description:"Читайте статьи Кирилла Андреева о мужской косметике и уходе на портале SkidKosmo."},{name:"Татьяна Орлова",description:"Татьяна — медицинский работник и специалист по безопасности косметических средств. Она анализирует ингредиенты и предупреждает о возможных аллергических реакциях.",meta_title:"Татьяна Орлова - Специалист по безопасности косметики | SkidKosmo",meta_description:"Читайте статьи Татьяны Орловой о безопасности косметических средств и акциях на SkidKosmo."},{name:"Анна Сергеевна Кузнецова",description:"Анна - опытный косметолог и автор статей о тенденциях в мире косметики. С более чем 10-летним стажем работы в индустрии красоты, она делится своими знаниями о заботе о коже и правильном выборе косметических средств.",meta_title:"Анна Сергеевна Кузнецова - Эксперт по косметике | SkidKosmo",meta_description:"Чтите статьи Анны Сергеевны Кузнецовой, эксперта в области косметологии, чтобы узнать о последних акциях и продуктах в мире красоты."},{name:"Игорь Владимирович Смирнов",description:"Игорь - популярный блогер и автор статей на тему косметики и личной гигиены. Его подход основан на научных исследованиях, что делает его советы особенно актуальными для широкой аудитории.",meta_title:"Игорь Владимирович Смирнов - Блогер о косметике | SkidKosmo",meta_description:"Узнайте самые свежие советы и рекомендации по уходу за кожей и волосами от Игоря Смирнова на нашем портале."},{name:"Мария Александровна Романова",description:"Мария - сертифицированный визажист и косметолог с более чем 15-летним опытом работы в индустрии. Она делится секретами красоты и раскрывает тонкости технологий модного макияжа.",meta_title:"Мария Александровна Романова - Визажист и косметолог | SkidKosmo",meta_description:"Следите за новыми приспособлениями и промоакциями в мире макияжа с Марией Александровной Романовой на SkidKosmo."},{name:"Светлана Борисовна Петрова",description:"Светлана - эксперт по натуральной косметике, которая проводит мастер-классы и семинары. Она активно занимается популяризацией органической косметики и предлагает своим читателям проверенные рецепты.",meta_title:"Светлана Борисовна Петрова - Эксперт по натуральной косметике | SkidKosmo",meta_description:"Познакомьтесь с миром натуральной косметики вместе со Светланой Борисовной Петровой и откройте для себя удивительные скидки на экологические продукты."},{name:"Дмитрий Николаевич Соловьев",description:"Дмитрий - исследователь косметической промышленности и писатель. Он анализирует бренды и их продукцию, предлагая своим читателям объективные обзоры и эксклюзивные предложения.",meta_title:"Дмитрий Николаевич Соловьев - Исследователь косметической индустрии | SkidKosmo",meta_description:"Читайте авторские статьи Дмитрия Соловьева о лучших брендах в мире косметики и специальных акциях на нашем портале."},{name:"Екатерина Павловна Левина",description:"Екатерина - профессиональный стилист и автор, которая делится своим опытом в мире стиля и красоты. Она рассказывает о современных трендах и акциях в сфере косметики.",meta_title:"Екатерина Павловна Левина - Стилист и автор | SkidKosmo",meta_description:"Следите за модными тенденциями и акциями в косметике вместе с Екатериной Павловной Левиной и открывайте для себя новые горизонты красоты."},{name:"Олег Викторович Федоров",description:"Олег - врач-дерматолог и эксперт по уходу за кожей. В своих статьях он делится важными знаниями о здоровье кожи и отвечает на популярные вопросы читателей.",meta_title:"Олег Викторович Федоров - Дерматолог и эксперт по уходу за кожей | SkidKosmo",meta_description:"Читайте статьи Олега Федорова, чтобы узнать о здоровье вашей кожи и доступных акциях на лучшие косметические продукты."},{name:"Наталья Сергеевна Христова",description:"Наталья - флорист и специалист по уборке, использующая косметику для создания уникального эффекта в своих проектах. Она связывает мир природы и красоты, создавая изысканные композиции.",meta_title:"Наталья Сергеевна Христова - Флорист и специалист по красоте | SkidKosmo",meta_description:"Научитесь искусству сочетания косметики и природы с помощью Натальи Христовой на SkidKosmo."},{name:"Виктория Степановна Всеволожская",description:"Виктория - косметолог и автор блога о женской красоте. Она охватывает разнообразные темы, от ухода за кожей до модных трендов в косметике.",meta_title:"Виктория Степановна Всеволожская - Косметолог и блогер | SkidKosmo",meta_description:"Следите за новыми публикациями Виктории Всеволожской и узнайте о эксклюзивных скидках на косметику просто сейчас."},{name:"Руслан Михайлович Громов",description:"Руслан - фотограф и визажист, который акцентирует внимание на важности правильного выбора косметики для каждого типа кожи. Его страсть - передача красоты через фото и визуальные образы.",meta_title:"Руслан Михайлович Громов - Визажист и фотограф | SkidKosmo",meta_description:"Чтите о профессиональных советах по выбору косметики для вашего стиля от Руслана Громова на SkidKosmo."},{name:"Екатерина Смирнова",description:"Екатерина - опытный косметолог с более чем 10-летним стажем в индустрии красоты. Она специализируется на уходе за кожей и макияже, а также проводит обучающие семинары для начинающих профессионалов.",meta_title:"Екатерина Смирнова - Эксперт в области косметики | SkidKosmo",meta_description:"Читать статьи Екатерины Смирновой о современных тенденциях в косметологии и советы по выбору средств на SkidKosmo."},{name:"Олег Павлов",description:"Олег - маркетолог и эксперт по продажам в фитокосметике. Более 5 лет работает в индустрии, пишя о последних трендах и акциях на рынке косметических товаров.",meta_title:"Олег Павлов - Специалист по косметическим продажам | SkidKosmo",meta_description:"Узнайте о лучших акциях и особенностях косметики из статей Олега Павлова на SkidKosmo."},{name:"Анна Кузнецова",description:"Анна - бьюти-блогер и автор с опытом более 7 лет. Она делится своими отзывами и рекомендациями по различным косметическим продуктам и акциям.",meta_title:"Анна Кузнецова - Бьюти-блогер | SkidKosmo",meta_description:"Читайте полезные советы от Анны Кузнецовой о косметике и лучших скидках на SkidKosmo."},{name:"Владимир Иванов",description:"Владимир - профессиональный визажист с 8-летним опытом в индустрии красоты. Его статьи помогут девушкам выбрать идеальные продукты для макияжа.",meta_title:"Владимир Иванов - Визажист | SkidKosmo",meta_description:"Искусные советы и рекомендации по макияжу от Владимира Иванова на SkidKosmo."},{name:"Светлана Полякова",description:"Светлана - эксперт в области натуральной косметики и автор нескольких книг на эту тему. Она анализирует и сравнивает продукты в своих статьях.",meta_title:"Светлана Полякова - Эксперт по натуральной косметике | SkidKosmo",meta_description:"Читайте статьи Светланы Поляковой о натуральной косметике и выгодных предложениях на SkidKosmo."},{name:"Алексей Станиславов",description:"Алексей - предприниматель и блогер, который делится опытом ведения бизнеса в индустрии красоты и акциями в косметических магазинах.",meta_title:"Алексей Станиславов - Предприниматель в косметической индустрии | SkidKosmo",meta_description:"Следите за бизнес-советами и акциями от Алексея Станиславова на SkidKosmo."},{name:"Татьяна Громова",description:"Татьяна - стилист и специалист по трендам в моде и красоте. Она делится своими идеями по выбору косметики для различных мероприятий.",meta_title:"Татьяна Громова - Стилист и консультант по красоте | SkidKosmo",meta_description:"Идеи и рекомендации по макияжу от Татьяны Громовой на SkidKosmo."},{name:"Дмитрий Васильев",description:"Дмитрий - химик и эксперт по созданию косметических формул. Он делится знаниями о составе косметики и ее влияние на кожу.",meta_title:"Дмитрий Васильев - Эксперт по косметическим формулам | SkidKosmo",meta_description:"Узнайте о составе косметики и лучшие рекомендации от Дмитрия Васильева на SkidKosmo."},{name:"Елена Капустина",description:"Елена - физиолог и косметолог, автор оригинальных методов ухода за кожей. Ее статьи предлагают уникальные подходы к выбору средств и акций.",meta_title:"Елена Капустина - Физиолог и косметолог | SkidKosmo",meta_description:"Новые подходы к уходу за кожей от Елены Капустиной на SkidKosmo."},{name:"Иван Петров",description:"Иван Петров - профессиональный маркетолог, специализирующийся на продажах косметики. Он делится своим опытом в развитии брендов и привлечении клиентов.",meta_title:"Иван Петров - маркетолог в мире косметики",meta_description:"Получите инсайты от Ивана Петрова о продажах косметики и лучших акциях от SkidKosmo. Узнайте, как качественно повысить свои продажи."},{name:"Екатерина Сидорова",description:"Екатерина Сидорова - визажист и специалист по цветотипам. Её статьи помогут вам определиться с выбором косметики по вашему типу кожи.",meta_title:"Екатерина Сидорова - визажист и эксперт по цветам",meta_description:"Откройте для себя советы Екатерины Сидоровой по выбору косметики. Учитесь выбирать лучшее с акциями от SkidKosmo."},{name:"Александр Иванов",description:"Александр Иванов - профессиональный парфюмер и бьюти-блогер. В своих статьях он обсуждает актуальные тренды мира ароматов и их сочетания с косметикой.",meta_title:"Александр Иванов - парфюмер и бьюти-блогер",meta_description:"Узнайте о трендах в мире парфюмерии от Александра Иванова и акции на косметику от SkidKosmo. Найдите идеальный аромат."},{name:"Дмитрий Ковалёв",description:"Дмитрий Ковалёв - эксперт по мужской косметике. Он фокусируется на тенденциях и акциях в области ухода за мужской кожей и стилем.",meta_title:"Дмитрий Ковалёв - эксперт по мужской косметике",meta_description:"Читать статьи Дмитрия Ковалёва об уходе за мужской кожей и лучших акциях на косметику от SkidKosmo. Ваш гид в мире мужской косметики."},{name:"Светлана Романова",description:"Светлана Романова - редактор и автор статей о натуральной косметике. Она освещает преимущества органических ингредиентов и экологически чистых продуктов.",meta_title:"Светлана Романова - специалист по натуральной косметике",meta_description:"Читать статьи Светланы Романовой о натуральных консервантах и акциях на натуральную косметику от SkidKosmo. Заботьтесь о себе с экологией."},{name:"Евгений Смирнов",description:"Евгений Смирнов - исследователь в области косметических технологий. Он анализирует последние достижения в индустрии и делится новыми открытиями.",meta_title:"Евгений Смирнов - исследователь в области косметических технологий",meta_description:"Узнайте о последних новинках в косметологии от Евгения Смирнова и акциях от SkidKosmo. Оставайтесь в курсе будущего красоты!"},{name:"Анна Сергеева",description:"Анна Сергеева - ведущая специалистка в области ухода за волосами. Её статьи помогут вам добиться идеального блеска и здоровья ваших локонов.",meta_title:"Анна Сергеева - эксперт по уходу за волосами",meta_description:"Читать советы Анны Сергеевой по уходу за волосами и лучшие акции на косметику для волос от SkidKosmo. Подарите своим волосам заботу!"},{name:"Игорь Петров",description:"Игорь — известный российский бьюти-блогер и пресс-секретарь косметической компании. Специализируется на анализе трендов в области косметики и ухода за телом.",meta_title:"Игорь Петров - Бьюти-блогер и эксперт по трендам",meta_description:"Читать статьи Игоря Петрова о трендах в косметике. Его опыт и рекомендации помогут вам лучше ориентироваться в мире бьюти."},{name:"Елена Васильева",description:"Елена — профессиональный маркетолог, работающий в индустрии красоты. Она делится своими знаниями о продажах и эффективных стратегиях маркетинга косметики.",meta_title:"Елена Васильева - Маркетолог в сфере красоты",meta_description:"Получите советы и стратегии от Елены Васильевой для успешных продаж косметики на SkidKosmo."},{name:"Алексей Новиков",description:"Алексей — дерматолог с большим опытом, который освещает темы здоровья кожи и безопасного использования косметических средств в своих статьях.",meta_title:"Алексей Новиков - Дерматолог и эксперт по коже",meta_description:"Узнайте об опыте Алексея Новикова и о том, как выбрать безопасную косметику для вашей кожи на SkidKosmo."},{name:"Мария Федорова",description:"Мария — косметолог и визажист, работающая в индустрии более 8 лет. Пишет о новинках в мире косметики и проводит обучающие мастер-классы.",meta_title:"Мария Федорова - Косметолог и визажист",meta_description:"Читайте статьи Марии Федоровой о новинках в мире косметики и её советы по применению продуктов на SkidKosmo."},{name:"Светлана Алексеева",description:"Светлана — филолог и специалист по контенту, которая пишет об эффективном использовании косметических товаров и их влиянии на имидж.",meta_title:"Светлана Алексеева - Специалист по контенту в области косметики",meta_description:"Узнайте больше о Светлане Алексеевой и её подходе к написанию статьей о косметике на SkidKosmo."},{name:"Константин Громов",description:"Константин — профессиональный продуктоориентированный менеджер с опытом в разработке и продаже косметических брендов. Делится аналитикой и прогнозами рынка.",meta_title:"Константин Громов - Эксперт по продуктам в косметике",meta_description:"Читать статьи Константина Громова о рынке косметики и его прогнозах по продажам на SkidKosmo."},{name:"Ольга Сергеева",description:"Ольга — бьюти-редактор и журналист с опытом более 15 лет. Пишет о косметике, проводит интервью с экспертами и освещает события индустрии.",meta_title:"Ольга Сергеева - Бьюти-редактор и журналист",meta_description:"Читайте материалы Ольги Сергеевой о мире косметики и её мнении о лучших продуктах на SkidKosmo."},{name:"Дмитрий Романов",description:"Дмитрий — стилист и имиджмейкер, который делится секретами выбора и использования косметических средств для создания образа.",meta_title:"Дмитрий Романов - Стилист и имиджмейкер",meta_description:"Узнайте о лучших советах Дмитрия Романова по выбору косметики для создания идеального образа на SkidKosmo."},{name:"Наталья Кузнецова",description:"Наталья — культуролог и эксперт по бьюти-продуктам, ведёт авторский блог о косметических новинках и их влиянии на общество.",meta_title:"Наталья Кузнецова - Эксперт по бьюти-продуктам",meta_description:"Читайте статьи Натальи Кузнецовой о влиянии косметики на общество и новинках в бьюти-индустрии на SkidKosmo."}],o=t.reduce(((i,e)=>Object.assign(Object.assign({},i),{[e.name]:{title:e.meta_title,description:e.meta_description}})),{});exports.AUTHORS_INFO=t,exports.AUTHORS_META=o,exports.PAGES_SEO=e;
@@ -0,0 +1 @@
1
+ :root{--gray-4-a:rgba(0,0,0,0.45);--text-secondary:rgba(0,0,0,0.65);--text-primary:rgba(0,0,0,0.88);--border-color-border-secondary:#F0F0F0;--background-color-bg-base:#FFF;}
@@ -0,0 +1 @@
1
+ :root{--font-size-xx-small:0.625rem;--font-size-x-small:0.75rem;--font-size-small:0.875rem;--font-size-medium:1rem;--font-size-large:1.25rem;--font-size-x-large:1.5rem;--font-size-xx-large:2rem;--h1-font-size:38px;--h1-line-height:46px;--h2-font-size:30px;--h2-line-height:38px;--h3-font-size:24px;--h3-line-height:32px;--h4-font-size:20px;--h4-line-height:28px;--h5-font-size:16px;--h5-line-height:24px;}
@@ -0,0 +1 @@
1
+ html,body,#root {height:100%;width:100%;}body {display:flex;flex-direction:column;align-items:center;margin:0;padding:0;background-color:var(--background-color-bg-base);}#___gatsby {width:100%;}.ant-app {height:100%;}.ant-dropdown-menu,.ant-select-dropdown,.ant-select-selector,.ant-popover-inner {border-radius:8px!important;}
@@ -0,0 +1 @@
1
+ :root{--gap-lg:24px;--gap-md:16px;--gap-sm:12px;--gap-xs:8px;--gap-xss:4px;--padding-lg:24px;--padding-md:16px;--padding-sm:12px;--padding-xs:8px;--padding-xss:4px;--margin-hg:36px;--margin-lg:24px;--margin-md:16px;--margin-sm:12px;--margin-xs:8px;--margin-xss:4px;}
@@ -0,0 +1 @@
1
+ :root {--theme-color-9:#8b1f36;--theme-color-8:#9a2e44;--theme-color-7:#b03d58;--theme-color-6:#c15368;--theme-color-5:#d2718c;--theme-color-3:#e8a1b8;--theme-color-2:#f5d3e4;--color-bg-layout:#faf3f3;--color-bg-hover:#f2c6d5;--article-border-radius:25px;--btn-border-radius:5px;--category-border-radius:30px;}
@@ -0,0 +1 @@
1
+ @import "sizing.css";@import "colors.css";@import "fonts.css";@import "theme.css";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tedo-publisher",
3
- "version": "1.3.294",
3
+ "version": "1.3.295",
4
4
  "description": "Package for config files and reusable code/components between projects",
5
5
  "main": "dist/index.js",
6
6
  "files": [