@jjlmoya/utils-social 1.13.0 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/pages/[locale]/[slug].astro +28 -12
- package/src/tests/locale_completeness.test.ts +4 -14
- package/src/tests/shared-test-helpers.ts +56 -0
- package/src/tests/tool_exports.test.ts +34 -0
- package/src/tool/redditFormatter/bibliography.astro +2 -10
- package/src/tool/redditFormatter/bibliography.ts +12 -0
- package/src/tool/redditFormatter/i18n/de.ts +3 -13
- package/src/tool/redditFormatter/i18n/en.ts +3 -13
- package/src/tool/redditFormatter/i18n/es.ts +3 -13
- package/src/tool/redditFormatter/i18n/fr.ts +3 -13
- package/src/tool/redditFormatter/i18n/id.ts +3 -13
- package/src/tool/redditFormatter/i18n/it.ts +3 -13
- package/src/tool/redditFormatter/i18n/ja.ts +3 -13
- package/src/tool/redditFormatter/i18n/ko.ts +3 -13
- package/src/tool/redditFormatter/i18n/nl.ts +3 -13
- package/src/tool/redditFormatter/i18n/pl.ts +3 -13
- package/src/tool/redditFormatter/i18n/pt.ts +3 -13
- package/src/tool/redditFormatter/i18n/ru.ts +3 -13
- package/src/tool/redditFormatter/i18n/sv.ts +3 -13
- package/src/tool/redditFormatter/i18n/tr.ts +3 -13
- package/src/tool/redditFormatter/i18n/zh.ts +3 -13
- package/src/tool/redditFormatter/seo.astro +2 -1
- package/src/tool/safeZones/bibliography.astro +2 -10
- package/src/tool/safeZones/bibliography.ts +20 -0
- package/src/tool/safeZones/i18n/de.ts +3 -21
- package/src/tool/safeZones/i18n/en.ts +3 -21
- package/src/tool/safeZones/i18n/es.ts +3 -21
- package/src/tool/safeZones/i18n/fr.ts +3 -21
- package/src/tool/safeZones/i18n/id.ts +3 -21
- package/src/tool/safeZones/i18n/it.ts +3 -21
- package/src/tool/safeZones/i18n/ja.ts +3 -21
- package/src/tool/safeZones/i18n/ko.ts +3 -21
- package/src/tool/safeZones/i18n/nl.ts +3 -21
- package/src/tool/safeZones/i18n/pl.ts +3 -21
- package/src/tool/safeZones/i18n/pt.ts +3 -21
- package/src/tool/safeZones/i18n/ru.ts +3 -21
- package/src/tool/safeZones/i18n/sv.ts +3 -21
- package/src/tool/safeZones/i18n/tr.ts +3 -21
- package/src/tool/safeZones/i18n/zh.ts +3 -21
- package/src/tool/safeZones/seo.astro +2 -1
- package/src/tool/socialImageResizer/bibliography.astro +2 -10
- package/src/tool/socialImageResizer/bibliography.ts +12 -0
- package/src/tool/socialImageResizer/i18n/de.ts +3 -13
- package/src/tool/socialImageResizer/i18n/en.ts +3 -13
- package/src/tool/socialImageResizer/i18n/es.ts +3 -13
- package/src/tool/socialImageResizer/i18n/fr.ts +3 -13
- package/src/tool/socialImageResizer/i18n/id.ts +3 -13
- package/src/tool/socialImageResizer/i18n/it.ts +3 -13
- package/src/tool/socialImageResizer/i18n/ja.ts +3 -13
- package/src/tool/socialImageResizer/i18n/ko.ts +3 -13
- package/src/tool/socialImageResizer/i18n/nl.ts +3 -13
- package/src/tool/socialImageResizer/i18n/pl.ts +3 -13
- package/src/tool/socialImageResizer/i18n/pt.ts +3 -13
- package/src/tool/socialImageResizer/i18n/ru.ts +3 -13
- package/src/tool/socialImageResizer/i18n/sv.ts +3 -13
- package/src/tool/socialImageResizer/i18n/tr.ts +3 -13
- package/src/tool/socialImageResizer/i18n/zh.ts +3 -13
- package/src/tool/socialImageResizer/seo.astro +2 -1
- package/src/tool/socialValueCalculator/bibliography.astro +2 -10
- package/src/tool/socialValueCalculator/bibliography.ts +16 -0
- package/src/tool/socialValueCalculator/i18n/de.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/en.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/es.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/fr.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/id.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/it.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/ja.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/ko.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/nl.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/pl.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/pt.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/ru.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/sv.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/tr.ts +3 -17
- package/src/tool/socialValueCalculator/i18n/zh.ts +3 -17
- package/src/tool/socialValueCalculator/seo.astro +2 -1
- package/src/tool/tinderPhotoOptimizer/bibliography.astro +2 -10
- package/src/tool/tinderPhotoOptimizer/bibliography.ts +12 -0
- package/src/tool/tinderPhotoOptimizer/i18n/de.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/en.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/es.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/fr.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/id.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/it.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/ja.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/ko.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/nl.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/pl.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/pt.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/ru.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/sv.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/tr.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/i18n/zh.ts +3 -13
- package/src/tool/tinderPhotoOptimizer/seo.astro +2 -1
- package/src/tool/youtubeThumbnail/bibliography.astro +2 -10
- package/src/tool/youtubeThumbnail/bibliography.ts +16 -0
- package/src/tool/youtubeThumbnail/i18n/de.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/en.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/es.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/fr.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/id.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/it.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/ja.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/ko.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/nl.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/pl.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/pt.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/ru.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/sv.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/tr.ts +3 -17
- package/src/tool/youtubeThumbnail/i18n/zh.ts +3 -17
- package/src/tool/youtubeThumbnail/seo.astro +2 -1
- package/src/tool/youtubeThumbnailPreviewer/bibliography.astro +2 -10
- package/src/tool/youtubeThumbnailPreviewer/bibliography.ts +16 -0
- package/src/tool/youtubeThumbnailPreviewer/i18n/de.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/en.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/es.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/fr.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/id.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/it.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/ja.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/ko.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/nl.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/pl.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/pt.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/ru.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/sv.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/tr.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/i18n/zh.ts +3 -17
- package/src/tool/youtubeThumbnailPreviewer/seo.astro +2 -1
- package/src/types.ts +0 -2
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: 'Referencias',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/es/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: Social Media Image Sizes Guide 2026',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: 'Références',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/fr/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: Social Media Image Sizes Guide 2026',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: 'Referensi',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: Panduan Ukuran Gambar Media Sosial 2026',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: 'Riferimenti',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: Social Media Image Sizes Guide 2026',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: '参考文献',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: 2026年ソーシャルメディア画像サイズガイド',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: '참고 자료',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: 2026년 소셜 미디어 이미지 크기 가이드',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: 'Referenties',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: Social Media Image Sizes Guide 2026',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: 'Źródła',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: Przewodnik po rozmiarach zdjęć w social media 2026',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: 'Referências',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: Guia de Tamanhos de Imagem para Redes Sociais 2026',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: 'Источники',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: руководство по размерам изображений для соцсетей 2026',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: 'Referenser',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: Guide för bildstorlekar på sociala medier 2026',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: 'Referanslar',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: Sosyal Medya Resim Boyutları Kılavuzu 2026',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialImageResizerUI } from '../ui';
|
|
@@ -78,19 +79,8 @@ export const content: ToolLocaleContent<SocialImageResizerUI> = {
|
|
|
78
79
|
slug,
|
|
79
80
|
title,
|
|
80
81
|
description,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
bibliographyTitle: '参考资料',
|
|
84
|
-
bibliography: [
|
|
85
|
-
{
|
|
86
|
-
name: 'MDN Web Docs: Canvas API',
|
|
87
|
-
url: 'https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API',
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
name: 'Sprout Social: 2026 社交媒体图像尺寸指南',
|
|
91
|
-
url: 'https://sproutsocial.com/insights/social-media-image-sizes-guide/',
|
|
92
|
-
},
|
|
93
|
-
],
|
|
82
|
+
faq: faqData,
|
|
83
|
+
bibliography,
|
|
94
84
|
howTo: howToData,
|
|
95
85
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
86
|
seo: [
|
|
@@ -11,4 +11,5 @@ const { locale = 'es' } = Astro.props;
|
|
|
11
11
|
const content = await socialImageResizer.i18n[locale]?.();
|
|
12
12
|
if (!content) return null;
|
|
13
13
|
---
|
|
14
|
-
|
|
14
|
+
|
|
15
|
+
{content.seo?.length > 0 && <SEORenderer content={{ locale, sections: content.seo }} />}
|
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
import { Bibliography as SharedBibliography } from '@jjlmoya/utils-shared';
|
|
3
|
-
import {
|
|
4
|
-
import type { KnownLocale } from '../../types';
|
|
5
|
-
|
|
6
|
-
interface Props {
|
|
7
|
-
locale?: KnownLocale;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
const { locale = 'es' } = Astro.props;
|
|
11
|
-
const content = await socialValueCalculator.i18n[locale]?.();
|
|
3
|
+
import { bibliography } from './bibliography';
|
|
12
4
|
---
|
|
13
5
|
|
|
14
|
-
|
|
6
|
+
<SharedBibliography links={bibliography} />
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { BibliographyEntry } from '../../types';
|
|
2
|
+
|
|
3
|
+
export const bibliography: BibliographyEntry[] = [
|
|
4
|
+
{
|
|
5
|
+
name: 'Influencer Marketing Hub: Influencer Rates 2026',
|
|
6
|
+
url: 'https://influencermarketinghub.com/influencer-rates/',
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
name: 'HypeAuditor: TikTok & Instagram Engagement Report',
|
|
10
|
+
url: 'https://hypeauditor.com/free-tools/tiktok-engagement-calculator/',
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
name: 'Social Blade: Social Media Statistics',
|
|
14
|
+
url: 'https://socialblade.com/',
|
|
15
|
+
},
|
|
16
|
+
];
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialValueCalculatorUI } from '../ui';
|
|
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SocialValueCalculatorUI> = {
|
|
|
87
88
|
slug,
|
|
88
89
|
title,
|
|
89
90
|
description,
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
bibliographyTitle: 'Quellen & Marktstudien',
|
|
93
|
-
bibliography: [
|
|
94
|
-
{
|
|
95
|
-
name: 'Influencer Marketing Hub: Influencer Rates 2026',
|
|
96
|
-
url: 'https://influencermarketinghub.com/influencer-rates/',
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
name: 'HypeAuditor: TikTok & Instagram Engagement Report',
|
|
100
|
-
url: 'https://hypeauditor.com/free-tools/tiktok-engagement-calculator/',
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
name: 'Social Blade: Social Media Statistiken',
|
|
104
|
-
url: 'https://socialblade.com/',
|
|
105
|
-
},
|
|
106
|
-
],
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliography,
|
|
107
93
|
howTo: howToData,
|
|
108
94
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
109
95
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialValueCalculatorUI } from '../ui';
|
|
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SocialValueCalculatorUI> = {
|
|
|
87
88
|
slug,
|
|
88
89
|
title,
|
|
89
90
|
description,
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
bibliographyTitle: 'Sources & Market Studies',
|
|
93
|
-
bibliography: [
|
|
94
|
-
{
|
|
95
|
-
name: 'Influencer Marketing Hub: Influencer Rates 2026',
|
|
96
|
-
url: 'https://influencermarketinghub.com/influencer-rates/',
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
name: 'HypeAuditor: TikTok & Instagram Engagement Report',
|
|
100
|
-
url: 'https://hypeauditor.com/free-tools/tiktok-engagement-calculator/',
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
name: 'Social Blade: Social Media Statistics',
|
|
104
|
-
url: 'https://socialblade.com/',
|
|
105
|
-
},
|
|
106
|
-
],
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliography,
|
|
107
93
|
howTo: howToData,
|
|
108
94
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
109
95
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialValueCalculatorUI } from '../ui';
|
|
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SocialValueCalculatorUI> = {
|
|
|
87
88
|
slug,
|
|
88
89
|
title,
|
|
89
90
|
description,
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
bibliographyTitle: 'Fuentes y Estudios de Mercado',
|
|
93
|
-
bibliography: [
|
|
94
|
-
{
|
|
95
|
-
name: 'Influencer Marketing Hub: Influencer Rates 2026',
|
|
96
|
-
url: 'https://influencermarketinghub.com/influencer-rates/',
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
name: 'HypeAuditor: Reporte de Engagement en TikTok e Instagram',
|
|
100
|
-
url: 'https://hypeauditor.com/es/free-tools/tiktok-engagement-calculator/',
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
name: 'Social Blade: Estadísticas de Redes Sociales',
|
|
104
|
-
url: 'https://socialblade.com/',
|
|
105
|
-
},
|
|
106
|
-
],
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliography,
|
|
107
93
|
howTo: howToData,
|
|
108
94
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
109
95
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialValueCalculatorUI } from '../ui';
|
|
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SocialValueCalculatorUI> = {
|
|
|
87
88
|
slug,
|
|
88
89
|
title,
|
|
89
90
|
description,
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
bibliographyTitle: 'Sources et Études de Marché',
|
|
93
|
-
bibliography: [
|
|
94
|
-
{
|
|
95
|
-
name: 'Influencer Marketing Hub: Influencer Rates 2026',
|
|
96
|
-
url: 'https://influencermarketinghub.com/influencer-rates/',
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
name: "HypeAuditor: Rapport d'engagement TikTok & Instagram",
|
|
100
|
-
url: 'https://hypeauditor.com/free-tools/tiktok-engagement-calculator/',
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
name: 'Social Blade: Statistiques des réseaux sociaux',
|
|
104
|
-
url: 'https://socialblade.com/',
|
|
105
|
-
},
|
|
106
|
-
],
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliography,
|
|
107
93
|
howTo: howToData,
|
|
108
94
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
109
95
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialValueCalculatorUI } from '../ui';
|
|
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SocialValueCalculatorUI> = {
|
|
|
87
88
|
slug,
|
|
88
89
|
title,
|
|
89
90
|
description,
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
bibliographyTitle: 'Sumber & Studi Pasar',
|
|
93
|
-
bibliography: [
|
|
94
|
-
{
|
|
95
|
-
name: 'Influencer Marketing Hub: Influencer Rates 2026',
|
|
96
|
-
url: 'https://influencermarketinghub.com/influencer-rates/',
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
name: 'HypeAuditor: Laporan Keterlibatan TikTok & Instagram',
|
|
100
|
-
url: 'https://hypeauditor.com/free-tools/tiktok-engagement-calculator/',
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
name: 'Social Blade: Statistik Media Sosial',
|
|
104
|
-
url: 'https://socialblade.com/',
|
|
105
|
-
},
|
|
106
|
-
],
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliography,
|
|
107
93
|
howTo: howToData,
|
|
108
94
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
109
95
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialValueCalculatorUI } from '../ui';
|
|
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SocialValueCalculatorUI> = {
|
|
|
87
88
|
slug,
|
|
88
89
|
title,
|
|
89
90
|
description,
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
bibliographyTitle: 'Fonti e Studi di Mercato',
|
|
93
|
-
bibliography: [
|
|
94
|
-
{
|
|
95
|
-
name: 'Influencer Marketing Hub: Influencer Rates 2026',
|
|
96
|
-
url: 'https://influencermarketinghub.com/influencer-rates/',
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
name: 'HypeAuditor: Rapporto Engagement TikTok e Instagram',
|
|
100
|
-
url: 'https://hypeauditor.com/free-tools/tiktok-engagement-calculator/',
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
name: 'Social Blade: Statistiche Social Media',
|
|
104
|
-
url: 'https://socialblade.com/',
|
|
105
|
-
},
|
|
106
|
-
],
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliography,
|
|
107
93
|
howTo: howToData,
|
|
108
94
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
109
95
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialValueCalculatorUI } from '../ui';
|
|
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SocialValueCalculatorUI> = {
|
|
|
87
88
|
slug,
|
|
88
89
|
title,
|
|
89
90
|
description,
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
bibliographyTitle: '出典&市場調査',
|
|
93
|
-
bibliography: [
|
|
94
|
-
{
|
|
95
|
-
name: 'Influencer Marketing Hub: 2026年インフルエンサー料金',
|
|
96
|
-
url: 'https://influencermarketinghub.com/influencer-rates/',
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
name: 'HypeAuditor: TikTok&Instagram エンゲージメントレポート',
|
|
100
|
-
url: 'https://hypeauditor.com/free-tools/tiktok-engagement-calculator/',
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
name: 'Social Blade: ソーシャルメディア統計',
|
|
104
|
-
url: 'https://socialblade.com/',
|
|
105
|
-
},
|
|
106
|
-
],
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliography,
|
|
107
93
|
howTo: howToData,
|
|
108
94
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
109
95
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SocialValueCalculatorUI } from '../ui';
|
|
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SocialValueCalculatorUI> = {
|
|
|
87
88
|
slug,
|
|
88
89
|
title,
|
|
89
90
|
description,
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
bibliographyTitle: '출처 및 시장 조사',
|
|
93
|
-
bibliography: [
|
|
94
|
-
{
|
|
95
|
-
name: 'Influencer Marketing Hub: 2026년 인플루언서 단가',
|
|
96
|
-
url: 'https://influencermarketinghub.com/influencer-rates/',
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
name: 'HypeAuditor: 틱톡 및 인스타그램 참여도 리포트',
|
|
100
|
-
url: 'https://hypeauditor.com/free-tools/tiktok-engagement-calculator/',
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
name: 'Social Blade: 소셜 미디어 통계',
|
|
104
|
-
url: 'https://socialblade.com/',
|
|
105
|
-
},
|
|
106
|
-
],
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliography,
|
|
107
93
|
howTo: howToData,
|
|
108
94
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
109
95
|
seo: [
|