@jjlmoya/utils-diy 1.28.0 → 1.30.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 +2 -2
- package/src/category/i18n/de.ts +12 -12
- package/src/category/i18n/en.ts +110 -110
- package/src/category/i18n/es.ts +110 -110
- package/src/category/i18n/fr.ts +101 -101
- package/src/category/i18n/id.ts +12 -12
- package/src/category/i18n/it.ts +12 -12
- package/src/category/i18n/ja.ts +12 -12
- package/src/category/i18n/ko.ts +12 -12
- package/src/category/i18n/nl.ts +12 -12
- package/src/category/i18n/pl.ts +12 -12
- package/src/category/i18n/pt.ts +12 -12
- package/src/category/i18n/ru.ts +12 -12
- package/src/category/i18n/sv.ts +12 -12
- package/src/category/i18n/tr.ts +12 -12
- package/src/category/i18n/zh.ts +12 -12
- package/src/category/index.ts +36 -36
- package/src/category/seo.astro +1 -1
- package/src/components/PreviewNavSidebar.astro +1 -1
- package/src/components/PreviewToolbar.astro +1 -1
- package/src/data.ts +1 -1
- package/src/entries.ts +37 -37
- package/src/env.d.ts +1 -1
- package/src/index.ts +50 -50
- package/src/layouts/PreviewLayout.astro +1 -1
- package/src/pages/index.astro +1 -1
- package/src/tests/category_seo_quality.test.ts +74 -0
- package/src/tests/faq_count.test.ts +1 -1
- package/src/tests/mocks/astro_mock.js +1 -1
- package/src/tests/no_h1_in_components.test.ts +1 -1
- package/src/tests/seo_length.test.ts +1 -1
- package/src/tests/seo_parity.test.ts +2 -2
- package/src/tests/seo_translation_completeness.test.ts +18 -12
- package/src/tests/tool_validation.test.ts +15 -15
- package/src/tool/balusterCalculator/bibliography.ts +16 -16
- package/src/tool/balusterCalculator/i18n/de.ts +251 -251
- package/src/tool/balusterCalculator/i18n/en.ts +251 -251
- package/src/tool/balusterCalculator/i18n/es.ts +251 -251
- package/src/tool/balusterCalculator/i18n/fr.ts +251 -251
- package/src/tool/balusterCalculator/i18n/id.ts +251 -251
- package/src/tool/balusterCalculator/i18n/it.ts +251 -251
- package/src/tool/balusterCalculator/i18n/ja.ts +251 -251
- package/src/tool/balusterCalculator/i18n/ko.ts +251 -251
- package/src/tool/balusterCalculator/i18n/nl.ts +251 -251
- package/src/tool/balusterCalculator/i18n/pl.ts +251 -251
- package/src/tool/balusterCalculator/i18n/pt.ts +251 -251
- package/src/tool/balusterCalculator/i18n/ru.ts +251 -251
- package/src/tool/balusterCalculator/i18n/sv.ts +251 -251
- package/src/tool/balusterCalculator/i18n/tr.ts +251 -251
- package/src/tool/balusterCalculator/i18n/zh.ts +251 -251
- package/src/tool/balusterCalculator/seo.astro +15 -15
- package/src/tool/clayCalculator/bibliography.ts +12 -12
- package/src/tool/clayCalculator/i18n/de.ts +174 -174
- package/src/tool/clayCalculator/i18n/en.ts +174 -174
- package/src/tool/clayCalculator/i18n/es.ts +174 -174
- package/src/tool/clayCalculator/i18n/fr.ts +174 -174
- package/src/tool/clayCalculator/i18n/id.ts +174 -174
- package/src/tool/clayCalculator/i18n/it.ts +174 -174
- package/src/tool/clayCalculator/i18n/ja.ts +173 -173
- package/src/tool/clayCalculator/i18n/ko.ts +174 -174
- package/src/tool/clayCalculator/i18n/nl.ts +174 -174
- package/src/tool/clayCalculator/i18n/pl.ts +174 -174
- package/src/tool/clayCalculator/i18n/pt.ts +174 -174
- package/src/tool/clayCalculator/i18n/ru.ts +174 -174
- package/src/tool/clayCalculator/i18n/sv.ts +174 -174
- package/src/tool/clayCalculator/i18n/tr.ts +174 -174
- package/src/tool/clayCalculator/i18n/zh.ts +174 -174
- package/src/tool/clayCalculator/seo.astro +15 -15
- package/src/tool/concreteCalculator/bibliography.ts +7 -7
- package/src/tool/concreteCalculator/i18n/de.ts +188 -188
- package/src/tool/concreteCalculator/i18n/en.ts +188 -188
- package/src/tool/concreteCalculator/i18n/es.ts +188 -188
- package/src/tool/concreteCalculator/i18n/fr.ts +188 -188
- package/src/tool/concreteCalculator/i18n/id.ts +188 -188
- package/src/tool/concreteCalculator/i18n/it.ts +188 -188
- package/src/tool/concreteCalculator/i18n/ja.ts +188 -188
- package/src/tool/concreteCalculator/i18n/ko.ts +188 -188
- package/src/tool/concreteCalculator/i18n/nl.ts +188 -188
- package/src/tool/concreteCalculator/i18n/pl.ts +188 -188
- package/src/tool/concreteCalculator/i18n/pt.ts +188 -188
- package/src/tool/concreteCalculator/i18n/ru.ts +188 -188
- package/src/tool/concreteCalculator/i18n/sv.ts +188 -188
- package/src/tool/concreteCalculator/i18n/tr.ts +188 -188
- package/src/tool/concreteCalculator/i18n/zh.ts +188 -188
- package/src/tool/concreteCalculator/seo.astro +15 -15
- package/src/tool/cutOptimizer/bibliography.ts +12 -12
- package/src/tool/cutOptimizer/i18n/de.ts +169 -169
- package/src/tool/cutOptimizer/i18n/en.ts +169 -169
- package/src/tool/cutOptimizer/i18n/es.ts +169 -169
- package/src/tool/cutOptimizer/i18n/fr.ts +169 -169
- package/src/tool/cutOptimizer/i18n/id.ts +169 -169
- package/src/tool/cutOptimizer/i18n/it.ts +169 -169
- package/src/tool/cutOptimizer/i18n/ja.ts +169 -169
- package/src/tool/cutOptimizer/i18n/ko.ts +169 -169
- package/src/tool/cutOptimizer/i18n/nl.ts +169 -169
- package/src/tool/cutOptimizer/i18n/pl.ts +169 -169
- package/src/tool/cutOptimizer/i18n/pt.ts +169 -169
- package/src/tool/cutOptimizer/i18n/ru.ts +169 -169
- package/src/tool/cutOptimizer/i18n/sv.ts +169 -169
- package/src/tool/cutOptimizer/i18n/tr.ts +169 -169
- package/src/tool/cutOptimizer/i18n/zh.ts +169 -169
- package/src/tool/cutOptimizer/seo.astro +15 -15
- package/src/tool/drillCalculator/bibliography.ts +12 -12
- package/src/tool/drillCalculator/i18n/de.ts +134 -134
- package/src/tool/drillCalculator/i18n/en.ts +134 -134
- package/src/tool/drillCalculator/i18n/es.ts +134 -134
- package/src/tool/drillCalculator/i18n/fr.ts +134 -134
- package/src/tool/drillCalculator/i18n/id.ts +134 -134
- package/src/tool/drillCalculator/i18n/it.ts +134 -134
- package/src/tool/drillCalculator/i18n/ja.ts +134 -134
- package/src/tool/drillCalculator/i18n/ko.ts +134 -134
- package/src/tool/drillCalculator/i18n/nl.ts +134 -134
- package/src/tool/drillCalculator/i18n/pl.ts +134 -134
- package/src/tool/drillCalculator/i18n/pt.ts +134 -134
- package/src/tool/drillCalculator/i18n/ru.ts +134 -134
- package/src/tool/drillCalculator/i18n/sv.ts +134 -134
- package/src/tool/drillCalculator/i18n/tr.ts +134 -134
- package/src/tool/drillCalculator/i18n/zh.ts +134 -134
- package/src/tool/drillCalculator/seo.astro +15 -15
- package/src/tool/drillSharpener/bibliography.ts +16 -16
- package/src/tool/drillSharpener/i18n/de.ts +117 -117
- package/src/tool/drillSharpener/i18n/en.ts +117 -117
- package/src/tool/drillSharpener/i18n/es.ts +117 -117
- package/src/tool/drillSharpener/i18n/fr.ts +117 -117
- package/src/tool/drillSharpener/i18n/id.ts +117 -117
- package/src/tool/drillSharpener/i18n/it.ts +117 -117
- package/src/tool/drillSharpener/i18n/ja.ts +117 -117
- package/src/tool/drillSharpener/i18n/ko.ts +117 -117
- package/src/tool/drillSharpener/i18n/nl.ts +117 -117
- package/src/tool/drillSharpener/i18n/pl.ts +117 -117
- package/src/tool/drillSharpener/i18n/pt.ts +117 -117
- package/src/tool/drillSharpener/i18n/ru.ts +117 -117
- package/src/tool/drillSharpener/i18n/sv.ts +117 -117
- package/src/tool/drillSharpener/i18n/tr.ts +117 -117
- package/src/tool/drillSharpener/i18n/zh.ts +117 -117
- package/src/tool/drillSharpener/seo.astro +15 -15
- package/src/tool/epoxyCalculator/bibliography.ts +20 -20
- package/src/tool/epoxyCalculator/i18n/de.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/en.ts +178 -178
- package/src/tool/epoxyCalculator/i18n/es.ts +178 -178
- package/src/tool/epoxyCalculator/i18n/fr.ts +178 -178
- package/src/tool/epoxyCalculator/i18n/id.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/it.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/ja.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/ko.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/nl.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/pl.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/pt.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/ru.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/sv.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/tr.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/zh.ts +116 -116
- package/src/tool/epoxyCalculator/seo.astro +15 -15
- package/src/tool/furnitureFit/bibliography.ts +12 -12
- package/src/tool/furnitureFit/i18n/de.ts +111 -111
- package/src/tool/furnitureFit/i18n/en.ts +149 -149
- package/src/tool/furnitureFit/i18n/es.ts +149 -149
- package/src/tool/furnitureFit/i18n/fr.ts +149 -149
- package/src/tool/furnitureFit/i18n/id.ts +111 -111
- package/src/tool/furnitureFit/i18n/it.ts +111 -111
- package/src/tool/furnitureFit/i18n/ja.ts +111 -111
- package/src/tool/furnitureFit/i18n/ko.ts +111 -111
- package/src/tool/furnitureFit/i18n/nl.ts +111 -111
- package/src/tool/furnitureFit/i18n/pl.ts +111 -111
- package/src/tool/furnitureFit/i18n/pt.ts +111 -111
- package/src/tool/furnitureFit/i18n/ru.ts +111 -111
- package/src/tool/furnitureFit/i18n/sv.ts +111 -111
- package/src/tool/furnitureFit/i18n/tr.ts +111 -111
- package/src/tool/furnitureFit/i18n/zh.ts +111 -111
- package/src/tool/furnitureFit/seo.astro +15 -15
- package/src/tool/mortarCalculator/bibliography.ts +20 -20
- package/src/tool/mortarCalculator/i18n/de.ts +130 -130
- package/src/tool/mortarCalculator/i18n/en.ts +202 -202
- package/src/tool/mortarCalculator/i18n/es.ts +179 -179
- package/src/tool/mortarCalculator/i18n/fr.ts +203 -203
- package/src/tool/mortarCalculator/i18n/id.ts +130 -130
- package/src/tool/mortarCalculator/i18n/it.ts +130 -130
- package/src/tool/mortarCalculator/i18n/ja.ts +130 -130
- package/src/tool/mortarCalculator/i18n/ko.ts +130 -130
- package/src/tool/mortarCalculator/i18n/nl.ts +130 -130
- package/src/tool/mortarCalculator/i18n/pl.ts +130 -130
- package/src/tool/mortarCalculator/i18n/pt.ts +130 -130
- package/src/tool/mortarCalculator/i18n/ru.ts +130 -130
- package/src/tool/mortarCalculator/i18n/sv.ts +130 -130
- package/src/tool/mortarCalculator/i18n/tr.ts +130 -130
- package/src/tool/mortarCalculator/i18n/zh.ts +130 -130
- package/src/tool/mortarCalculator/seo.astro +15 -15
- package/src/tool/passepartoutCalculator/bibliography.ts +16 -16
- package/src/tool/passepartoutCalculator/i18n/de.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/en.ts +165 -165
- package/src/tool/passepartoutCalculator/i18n/es.ts +165 -165
- package/src/tool/passepartoutCalculator/i18n/fr.ts +165 -165
- package/src/tool/passepartoutCalculator/i18n/id.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/it.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/ja.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/ko.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/nl.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/pl.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/pt.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/ru.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/sv.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/tr.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/zh.ts +108 -108
- package/src/tool/passepartoutCalculator/seo.astro +15 -15
- package/src/tool/pythagoreanRightAngleCalculator/bibliography.ts +12 -12
- package/src/tool/pythagoreanRightAngleCalculator/i18n/de.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/en.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/es.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/fr.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/id.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/it.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/ja.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/ko.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/nl.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/pl.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/pt.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/ru.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/sv.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/tr.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/zh.ts +129 -129
- package/src/tool/stairCalculator/bibliography.ts +16 -16
- package/src/tool/stairCalculator/i18n/de.ts +143 -143
- package/src/tool/stairCalculator/i18n/en.ts +145 -145
- package/src/tool/stairCalculator/i18n/es.ts +145 -145
- package/src/tool/stairCalculator/i18n/fr.ts +145 -145
- package/src/tool/stairCalculator/i18n/id.ts +143 -143
- package/src/tool/stairCalculator/i18n/it.ts +143 -143
- package/src/tool/stairCalculator/i18n/ja.ts +143 -143
- package/src/tool/stairCalculator/i18n/ko.ts +143 -143
- package/src/tool/stairCalculator/i18n/nl.ts +143 -143
- package/src/tool/stairCalculator/i18n/pl.ts +143 -143
- package/src/tool/stairCalculator/i18n/pt.ts +143 -143
- package/src/tool/stairCalculator/i18n/ru.ts +143 -143
- package/src/tool/stairCalculator/i18n/sv.ts +143 -143
- package/src/tool/stairCalculator/i18n/tr.ts +143 -143
- package/src/tool/stairCalculator/i18n/zh.ts +143 -143
- package/src/tool/stairCalculator/seo.astro +15 -15
- package/src/tool/thermalExpansionCalculator/bibliography.ts +16 -16
- package/src/tool/thermalExpansionCalculator/i18n/de.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/en.ts +170 -170
- package/src/tool/thermalExpansionCalculator/i18n/es.ts +170 -170
- package/src/tool/thermalExpansionCalculator/i18n/fr.ts +170 -170
- package/src/tool/thermalExpansionCalculator/i18n/id.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/it.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/ja.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/ko.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/nl.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/pl.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/pt.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/ru.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/sv.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/tr.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/zh.ts +132 -132
- package/src/tool/thermalExpansionCalculator/seo.astro +15 -15
- package/src/tool/twoStrokeMixtureCalculator/bibliography.ts +12 -12
- package/src/tool/twoStrokeMixtureCalculator/i18n/de.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/en.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/es.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/fr.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/id.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/it.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/ja.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/ko.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/nl.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/pl.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/pt.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/ru.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/sv.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/tr.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/zh.ts +194 -194
- package/src/tool/voltageDropCalculator/bibliography.ts +16 -16
- package/src/tool/voltageDropCalculator/i18n/de.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/en.ts +151 -151
- package/src/tool/voltageDropCalculator/i18n/es.ts +151 -151
- package/src/tool/voltageDropCalculator/i18n/fr.ts +145 -145
- package/src/tool/voltageDropCalculator/i18n/id.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/it.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/ja.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/ko.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/nl.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/pl.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/pt.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/ru.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/sv.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/tr.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/zh.ts +113 -113
- package/src/tool/voltageDropCalculator/seo.astro +15 -15
- package/src/tool/workshopFractionConverter/bibliography.ts +12 -12
- package/src/tool/workshopFractionConverter/i18n/de.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/en.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/es.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/fr.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/id.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/it.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/ja.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/ko.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/nl.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/pl.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/pt.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/ru.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/sv.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/tr.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/zh.ts +147 -147
- package/src/tools.ts +20 -20
|
@@ -1,149 +1,149 @@
|
|
|
1
|
-
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
-
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
-
import type { FurnitureFitUI } from '../ui';
|
|
4
|
-
import { bibliography } from '../bibliography';
|
|
5
|
-
|
|
6
|
-
const slug = 'calculadora-espacio-muebles';
|
|
7
|
-
const title = 'Calculadora de Espacio para Mudanzas y Muebles';
|
|
8
|
-
const description =
|
|
9
|
-
'Comprueba si tu sofá, armario o mesa cabe en el ascensor o por la puerta. Usa el teorema de Pitágoras 3D para calcular inclinaciones y evitar desastres en tu mudanza.';
|
|
10
|
-
|
|
11
|
-
const faqData = [
|
|
12
|
-
{
|
|
13
|
-
question: '¿Por qué un sofá puede no caber aunque sea más pequeño que la puerta?',
|
|
14
|
-
answer:
|
|
15
|
-
'Debido al ángulo de giro. Si el pasillo es estrecho, el sofá debe entrar de lado o inclinado. El factor limitante no es solo el ancho de la puerta, sino el radio de giro disponible en el recibidor.',
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
question: '¿Qué es la diagonal de un mueble y por qué importa?',
|
|
19
|
-
answer:
|
|
20
|
-
'Es la distancia más larga entre dos esquinas opuestas. Es vital para saber si un mueble alto puede ser levantado en una habitación con techo bajo después de haber sido montado en el suelo.',
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
question: '¿Cómo medir un ascensor correctamente?',
|
|
24
|
-
answer:
|
|
25
|
-
'No midas solo el suelo. Mide el ancho de la puerta abierta, la profundidad libre y la altura total. La diagonal desde la base de la puerta hasta la esquina superior trasera es el dato más importante.',
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
question: '¿Qué piezas se deben desmontar primero?',
|
|
29
|
-
answer:
|
|
30
|
-
'Patas de sofás, tiradores de armarios y puertas de neveras suelen ganar entre 5 y 10 cm críticos que marcan la diferencia entre que un mueble quepa o se quede en la calle.',
|
|
31
|
-
},
|
|
32
|
-
];
|
|
33
|
-
|
|
34
|
-
const howToData = [
|
|
35
|
-
{
|
|
36
|
-
name: 'Medir el mueble (Largo, Ancho, Alto)',
|
|
37
|
-
text: 'Toma las medidas máximas del objeto, incluyendo cualquier saliente como reposabrazos o tiradores.',
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
name: 'Medir los pasos críticos',
|
|
41
|
-
text: 'Mide el hueco libre de la puerta (de marco a marco), el interior del ascensor y el ancho de los pasillos.',
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
name: 'Introducir datos en el simulador',
|
|
45
|
-
text: 'Escribe las dimensiones en la herramienta para ver si el volumen del mueble es compatible con el espacio de paso.',
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
name: 'Calcular inclinaciones',
|
|
49
|
-
text: 'Si el mueble es muy alto, usa la diagonal calculada para verificar si podrás girarlo en el descanso de la escalera o dentro del ascensor.',
|
|
50
|
-
},
|
|
51
|
-
];
|
|
52
|
-
|
|
53
|
-
const faqSchema: WithContext<FAQPage> = {
|
|
54
|
-
'@context': 'https://schema.org',
|
|
55
|
-
'@type': 'FAQPage',
|
|
56
|
-
mainEntity: faqData.map((item) => ({
|
|
57
|
-
'@type': 'Question',
|
|
58
|
-
name: item.question,
|
|
59
|
-
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
60
|
-
})),
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
const howToSchema: WithContext<HowToThing> = {
|
|
64
|
-
'@context': 'https://schema.org',
|
|
65
|
-
'@type': 'HowTo',
|
|
66
|
-
name: title,
|
|
67
|
-
description,
|
|
68
|
-
step: howToData.map((step, i) => ({
|
|
69
|
-
'@type': 'HowToStep',
|
|
70
|
-
position: i + 1,
|
|
71
|
-
name: step.name,
|
|
72
|
-
text: step.text,
|
|
73
|
-
})),
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
const appSchema: WithContext<SoftwareApplication> = {
|
|
77
|
-
'@context': 'https://schema.org',
|
|
78
|
-
'@type': 'SoftwareApplication',
|
|
79
|
-
name: title,
|
|
80
|
-
description,
|
|
81
|
-
applicationCategory: 'UtilityApplication',
|
|
82
|
-
operatingSystem: 'All',
|
|
83
|
-
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
84
|
-
inLanguage: 'es',
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
export const content: ToolLocaleContent<FurnitureFitUI> = {
|
|
88
|
-
slug,
|
|
89
|
-
title,
|
|
90
|
-
description,
|
|
91
|
-
faqTitle: 'Preguntas Frecuentes',
|
|
92
|
-
faq: faqData,
|
|
93
|
-
bibliography,
|
|
94
|
-
howTo: howToData,
|
|
95
|
-
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
|
-
seo: [
|
|
97
|
-
{ type: 'title', text: 'La Ciencia de las Mudanzas y el Teorema de Pitágoras', level: 2 },
|
|
98
|
-
{
|
|
99
|
-
type: 'paragraph',
|
|
100
|
-
html: 'Las mudanzas no son solo una prueba de fuerza física; son un complejo puzzle geométrico. El espacio aparente de una habitación o un ascensor engaña al ojo humano, especialmente cuando ignoramos la tercera dimensión. La matemática puede ahorrarte cientos de euros en devoluciones y transportes fallidos.',
|
|
101
|
-
},
|
|
102
|
-
{ type: 'title', text: 'El Truco de la Diagonal 3D', level: 3 },
|
|
103
|
-
{
|
|
104
|
-
type: 'card',
|
|
105
|
-
icon: 'mdi:math-log',
|
|
106
|
-
title: 'Regla de Oro',
|
|
107
|
-
html: '<p>Nunca midas solo el mueble. Mide siempre los <strong>puntos críticos de acceso</strong>: el ancho del marco de la puerta (restando el grosor de la propia puerta si no abre 180°), el punto más bajo del techo en el rellano y la profundidad real del ascensor con las puertas cerradas. La fórmula <code>d = √(w² + h² + z²)</code> te revela si cabe inclinado.</p>',
|
|
108
|
-
},
|
|
109
|
-
{ type: 'title', text: 'El Problema del Sofá en el Pasillo', level: 3 },
|
|
110
|
-
{
|
|
111
|
-
type: 'card',
|
|
112
|
-
icon: 'mdi:sofa',
|
|
113
|
-
title: 'Margen de Maniobra',
|
|
114
|
-
html: '<p>Un error común es asumir que si el mueble mide 80cm y el hueco 80cm, pasará. No es así. Las manos de los transportistas, la elasticidad del tejido y las imperfecciones de las paredes requieren un margen mínimo de <strong>2 a 5 cm</strong>. Sin este margen, el mueble se rayará o quedará encajado por presión.</p>',
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
type: 'card',
|
|
118
|
-
icon: 'mdi:tools',
|
|
119
|
-
title: 'Desmontar es Ganar',
|
|
120
|
-
html: '<p>Antes de rendirte porque el mueble no cabe, verifica las patas. Muchas veces, quitar las patas de un sofá reduce su altura crítica en 10 a 15cm, lo que marca la diferencia entre entrar triunfalmente o quedarse en el portal. Las puertas de nevera y los tiradores de armario también suman centímetros críticos.</p>',
|
|
121
|
-
},
|
|
122
|
-
{ type: 'title', text: 'Los 3 Errores que Arruinan una Mudanza', level: 3 },
|
|
123
|
-
{
|
|
124
|
-
type: 'paragraph',
|
|
125
|
-
html: 'Incluso con medidas correctas, estos factores invisibles suelen causar desastres: <strong>La Lámpara del Techo</strong> - olvidada durante el giro diagonal, puede ser golpeada y destruida. <strong>El Radio de Giro del Mueble</strong> - un mueble rígido no se dobla; si el pasillo es estrecho y el mueble largo, aunque quepa de ancho, no podrá realizar el giro de esquina. <strong>El Embalaje</strong> - el papel burbuja y el cartón protector pueden añadir de 1 a 3 cm a cada lado.',
|
|
126
|
-
},
|
|
127
|
-
],
|
|
128
|
-
ui: {
|
|
129
|
-
conTitle: 'Dimensiones del Espacio',
|
|
130
|
-
conHint: 'Ej: Ascensor estándar, marco de puerta o furgoneta.',
|
|
131
|
-
objTitle: 'Dimensiones del Mueble',
|
|
132
|
-
labelWidth: 'Ancho (cm)',
|
|
133
|
-
labelHeight: 'Alto (cm)',
|
|
134
|
-
labelDepth: 'Fondo (cm)',
|
|
135
|
-
labelLength: 'Largo (cm)',
|
|
136
|
-
labelMargin: 'Margen de Error (cm)',
|
|
137
|
-
vizLabel: 'Vista Espacial Simplificada',
|
|
138
|
-
verdictDefault: '¿Cabe?',
|
|
139
|
-
verdictHint: 'Introduce las medidas para comprobar la compatibilidad espacial.',
|
|
140
|
-
verdictYes: '¡SÍ, CABE!',
|
|
141
|
-
verdictNo: 'NO CABE',
|
|
142
|
-
fitDirect: 'El mueble cabe perfectamente de forma directa.',
|
|
143
|
-
fitDiagonal3d: 'Cabe inclinado diagonalmente (Pitágoras 3D).',
|
|
144
|
-
fitDiagonalPlane: 'Cabe inclinado en uno de los planos laterales.',
|
|
145
|
-
fitNope: 'El mueble es demasiado grande incluso para entrar en diagonal.',
|
|
146
|
-
diagLabel: 'Diagonal Máxima (Pitágoras 3D):',
|
|
147
|
-
objLabel: 'Mueble',
|
|
148
|
-
},
|
|
149
|
-
};
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { FurnitureFitUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
5
|
+
|
|
6
|
+
const slug = 'calculadora-espacio-muebles';
|
|
7
|
+
const title = 'Calculadora de Espacio para Mudanzas y Muebles';
|
|
8
|
+
const description =
|
|
9
|
+
'Comprueba si tu sofá, armario o mesa cabe en el ascensor o por la puerta. Usa el teorema de Pitágoras 3D para calcular inclinaciones y evitar desastres en tu mudanza.';
|
|
10
|
+
|
|
11
|
+
const faqData = [
|
|
12
|
+
{
|
|
13
|
+
question: '¿Por qué un sofá puede no caber aunque sea más pequeño que la puerta?',
|
|
14
|
+
answer:
|
|
15
|
+
'Debido al ángulo de giro. Si el pasillo es estrecho, el sofá debe entrar de lado o inclinado. El factor limitante no es solo el ancho de la puerta, sino el radio de giro disponible en el recibidor.',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
question: '¿Qué es la diagonal de un mueble y por qué importa?',
|
|
19
|
+
answer:
|
|
20
|
+
'Es la distancia más larga entre dos esquinas opuestas. Es vital para saber si un mueble alto puede ser levantado en una habitación con techo bajo después de haber sido montado en el suelo.',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
question: '¿Cómo medir un ascensor correctamente?',
|
|
24
|
+
answer:
|
|
25
|
+
'No midas solo el suelo. Mide el ancho de la puerta abierta, la profundidad libre y la altura total. La diagonal desde la base de la puerta hasta la esquina superior trasera es el dato más importante.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: '¿Qué piezas se deben desmontar primero?',
|
|
29
|
+
answer:
|
|
30
|
+
'Patas de sofás, tiradores de armarios y puertas de neveras suelen ganar entre 5 y 10 cm críticos que marcan la diferencia entre que un mueble quepa o se quede en la calle.',
|
|
31
|
+
},
|
|
32
|
+
];
|
|
33
|
+
|
|
34
|
+
const howToData = [
|
|
35
|
+
{
|
|
36
|
+
name: 'Medir el mueble (Largo, Ancho, Alto)',
|
|
37
|
+
text: 'Toma las medidas máximas del objeto, incluyendo cualquier saliente como reposabrazos o tiradores.',
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
name: 'Medir los pasos críticos',
|
|
41
|
+
text: 'Mide el hueco libre de la puerta (de marco a marco), el interior del ascensor y el ancho de los pasillos.',
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
name: 'Introducir datos en el simulador',
|
|
45
|
+
text: 'Escribe las dimensiones en la herramienta para ver si el volumen del mueble es compatible con el espacio de paso.',
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: 'Calcular inclinaciones',
|
|
49
|
+
text: 'Si el mueble es muy alto, usa la diagonal calculada para verificar si podrás girarlo en el descanso de la escalera o dentro del ascensor.',
|
|
50
|
+
},
|
|
51
|
+
];
|
|
52
|
+
|
|
53
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
54
|
+
'@context': 'https://schema.org',
|
|
55
|
+
'@type': 'FAQPage',
|
|
56
|
+
mainEntity: faqData.map((item) => ({
|
|
57
|
+
'@type': 'Question',
|
|
58
|
+
name: item.question,
|
|
59
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
60
|
+
})),
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
64
|
+
'@context': 'https://schema.org',
|
|
65
|
+
'@type': 'HowTo',
|
|
66
|
+
name: title,
|
|
67
|
+
description,
|
|
68
|
+
step: howToData.map((step, i) => ({
|
|
69
|
+
'@type': 'HowToStep',
|
|
70
|
+
position: i + 1,
|
|
71
|
+
name: step.name,
|
|
72
|
+
text: step.text,
|
|
73
|
+
})),
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
77
|
+
'@context': 'https://schema.org',
|
|
78
|
+
'@type': 'SoftwareApplication',
|
|
79
|
+
name: title,
|
|
80
|
+
description,
|
|
81
|
+
applicationCategory: 'UtilityApplication',
|
|
82
|
+
operatingSystem: 'All',
|
|
83
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
84
|
+
inLanguage: 'es',
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
export const content: ToolLocaleContent<FurnitureFitUI> = {
|
|
88
|
+
slug,
|
|
89
|
+
title,
|
|
90
|
+
description,
|
|
91
|
+
faqTitle: 'Preguntas Frecuentes',
|
|
92
|
+
faq: faqData,
|
|
93
|
+
bibliography,
|
|
94
|
+
howTo: howToData,
|
|
95
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
|
+
seo: [
|
|
97
|
+
{ type: 'title', text: 'La Ciencia de las Mudanzas y el Teorema de Pitágoras', level: 2 },
|
|
98
|
+
{
|
|
99
|
+
type: 'paragraph',
|
|
100
|
+
html: 'Las mudanzas no son solo una prueba de fuerza física; son un complejo puzzle geométrico. El espacio aparente de una habitación o un ascensor engaña al ojo humano, especialmente cuando ignoramos la tercera dimensión. La matemática puede ahorrarte cientos de euros en devoluciones y transportes fallidos.',
|
|
101
|
+
},
|
|
102
|
+
{ type: 'title', text: 'El Truco de la Diagonal 3D', level: 3 },
|
|
103
|
+
{
|
|
104
|
+
type: 'card',
|
|
105
|
+
icon: 'mdi:math-log',
|
|
106
|
+
title: 'Regla de Oro',
|
|
107
|
+
html: '<p>Nunca midas solo el mueble. Mide siempre los <strong>puntos críticos de acceso</strong>: el ancho del marco de la puerta (restando el grosor de la propia puerta si no abre 180°), el punto más bajo del techo en el rellano y la profundidad real del ascensor con las puertas cerradas. La fórmula <code>d = √(w² + h² + z²)</code> te revela si cabe inclinado.</p>',
|
|
108
|
+
},
|
|
109
|
+
{ type: 'title', text: 'El Problema del Sofá en el Pasillo', level: 3 },
|
|
110
|
+
{
|
|
111
|
+
type: 'card',
|
|
112
|
+
icon: 'mdi:sofa',
|
|
113
|
+
title: 'Margen de Maniobra',
|
|
114
|
+
html: '<p>Un error común es asumir que si el mueble mide 80cm y el hueco 80cm, pasará. No es así. Las manos de los transportistas, la elasticidad del tejido y las imperfecciones de las paredes requieren un margen mínimo de <strong>2 a 5 cm</strong>. Sin este margen, el mueble se rayará o quedará encajado por presión.</p>',
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
type: 'card',
|
|
118
|
+
icon: 'mdi:tools',
|
|
119
|
+
title: 'Desmontar es Ganar',
|
|
120
|
+
html: '<p>Antes de rendirte porque el mueble no cabe, verifica las patas. Muchas veces, quitar las patas de un sofá reduce su altura crítica en 10 a 15cm, lo que marca la diferencia entre entrar triunfalmente o quedarse en el portal. Las puertas de nevera y los tiradores de armario también suman centímetros críticos.</p>',
|
|
121
|
+
},
|
|
122
|
+
{ type: 'title', text: 'Los 3 Errores que Arruinan una Mudanza', level: 3 },
|
|
123
|
+
{
|
|
124
|
+
type: 'paragraph',
|
|
125
|
+
html: 'Incluso con medidas correctas, estos factores invisibles suelen causar desastres: <strong>La Lámpara del Techo</strong> - olvidada durante el giro diagonal, puede ser golpeada y destruida. <strong>El Radio de Giro del Mueble</strong> - un mueble rígido no se dobla; si el pasillo es estrecho y el mueble largo, aunque quepa de ancho, no podrá realizar el giro de esquina. <strong>El Embalaje</strong> - el papel burbuja y el cartón protector pueden añadir de 1 a 3 cm a cada lado.',
|
|
126
|
+
},
|
|
127
|
+
],
|
|
128
|
+
ui: {
|
|
129
|
+
conTitle: 'Dimensiones del Espacio',
|
|
130
|
+
conHint: 'Ej: Ascensor estándar, marco de puerta o furgoneta.',
|
|
131
|
+
objTitle: 'Dimensiones del Mueble',
|
|
132
|
+
labelWidth: 'Ancho (cm)',
|
|
133
|
+
labelHeight: 'Alto (cm)',
|
|
134
|
+
labelDepth: 'Fondo (cm)',
|
|
135
|
+
labelLength: 'Largo (cm)',
|
|
136
|
+
labelMargin: 'Margen de Error (cm)',
|
|
137
|
+
vizLabel: 'Vista Espacial Simplificada',
|
|
138
|
+
verdictDefault: '¿Cabe?',
|
|
139
|
+
verdictHint: 'Introduce las medidas para comprobar la compatibilidad espacial.',
|
|
140
|
+
verdictYes: '¡SÍ, CABE!',
|
|
141
|
+
verdictNo: 'NO CABE',
|
|
142
|
+
fitDirect: 'El mueble cabe perfectamente de forma directa.',
|
|
143
|
+
fitDiagonal3d: 'Cabe inclinado diagonalmente (Pitágoras 3D).',
|
|
144
|
+
fitDiagonalPlane: 'Cabe inclinado en uno de los planos laterales.',
|
|
145
|
+
fitNope: 'El mueble es demasiado grande incluso para entrar en diagonal.',
|
|
146
|
+
diagLabel: 'Diagonal Máxima (Pitágoras 3D):',
|
|
147
|
+
objLabel: 'Mueble',
|
|
148
|
+
},
|
|
149
|
+
};
|
|
@@ -1,149 +1,149 @@
|
|
|
1
|
-
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
-
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
-
import type { FurnitureFitUI } from '../ui';
|
|
4
|
-
import { bibliography } from '../bibliography';
|
|
5
|
-
|
|
6
|
-
const slug = 'calculateur-encombrement-meubles';
|
|
7
|
-
const title = 'Calculateur de Place pour Meubles et Déménagement';
|
|
8
|
-
const description =
|
|
9
|
-
'Vérifiez si votre canapé, armoire ou table passe dans l\'ascenseur ou par la porte. Utilisez le théorème de Pythagore 3D pour calculer les inclinaisons et éviter les catastrophes de déménagement.';
|
|
10
|
-
|
|
11
|
-
const faqData = [
|
|
12
|
-
{
|
|
13
|
-
question: 'Pourquoi un canapé peut ne pas passer même s\'il est plus petit que la porte?',
|
|
14
|
-
answer:
|
|
15
|
-
'À cause de l\'angle de rotation. Si le couloir est étroit, le canapé doit entrer de côté ou incliné. Le facteur limitant n\'est pas seulement la largeur de la porte, mais le rayon de giration disponible dans l\'entrée.',
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
question: 'Qu\'est-ce que la diagonale d\'un meuble et pourquoi est-elle importante?',
|
|
19
|
-
answer:
|
|
20
|
-
'C\'est la plus grande distance entre deux coins opposés. Elle est essentielle pour savoir si un meuble haut peut être redressé dans une pièce à plafond bas après avoir été assemblé au sol.',
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
question: 'Comment mesurer un ascenseur correctement?',
|
|
24
|
-
answer:
|
|
25
|
-
'Ne mesurez pas seulement le sol. Mesurez la largeur de la porte ouverte, la profondeur libre et la hauteur totale. La diagonale depuis la base de la porte jusqu\'au coin supérieur arrière est la donnée la plus importante.',
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
question: 'Quelles pièces démonter en premier?',
|
|
29
|
-
answer:
|
|
30
|
-
'Les pieds de canapés, poignées d\'armoires et portes de réfrigérateurs permettent souvent de gagner 5 à 10 cm critiques qui font la différence entre un meuble qui passe ou qui reste dans la rue.',
|
|
31
|
-
},
|
|
32
|
-
];
|
|
33
|
-
|
|
34
|
-
const howToData = [
|
|
35
|
-
{
|
|
36
|
-
name: 'Mesurer le meuble (Longueur, Largeur, Hauteur)',
|
|
37
|
-
text: 'Prenez les dimensions maximales de l\'objet, y compris les saillies comme les accoudoirs ou les poignées.',
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
name: 'Mesurer les passages critiques',
|
|
41
|
-
text: 'Mesurez le dégagement de la porte (de cadre à cadre), l\'intérieur de l\'ascenseur et la largeur des couloirs.',
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
name: 'Saisir les données dans le simulateur',
|
|
45
|
-
text: 'Entrez les dimensions dans l\'outil pour vérifier si le volume du meuble est compatible avec l\'espace de passage.',
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
name: 'Calculer les inclinaisons',
|
|
49
|
-
text: 'Si le meuble est très haut, utilisez la diagonale calculée pour vérifier si vous pouvez le faire pivoter sur le palier ou dans l\'ascenseur.',
|
|
50
|
-
},
|
|
51
|
-
];
|
|
52
|
-
|
|
53
|
-
const faqSchema: WithContext<FAQPage> = {
|
|
54
|
-
'@context': 'https://schema.org',
|
|
55
|
-
'@type': 'FAQPage',
|
|
56
|
-
mainEntity: faqData.map((item) => ({
|
|
57
|
-
'@type': 'Question',
|
|
58
|
-
name: item.question,
|
|
59
|
-
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
60
|
-
})),
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
const howToSchema: WithContext<HowToThing> = {
|
|
64
|
-
'@context': 'https://schema.org',
|
|
65
|
-
'@type': 'HowTo',
|
|
66
|
-
name: title,
|
|
67
|
-
description,
|
|
68
|
-
step: howToData.map((step, i) => ({
|
|
69
|
-
'@type': 'HowToStep',
|
|
70
|
-
position: i + 1,
|
|
71
|
-
name: step.name,
|
|
72
|
-
text: step.text,
|
|
73
|
-
})),
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
const appSchema: WithContext<SoftwareApplication> = {
|
|
77
|
-
'@context': 'https://schema.org',
|
|
78
|
-
'@type': 'SoftwareApplication',
|
|
79
|
-
name: title,
|
|
80
|
-
description,
|
|
81
|
-
applicationCategory: 'UtilityApplication',
|
|
82
|
-
operatingSystem: 'All',
|
|
83
|
-
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
84
|
-
inLanguage: 'fr',
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
export const content: ToolLocaleContent<FurnitureFitUI> = {
|
|
88
|
-
slug,
|
|
89
|
-
title,
|
|
90
|
-
description,
|
|
91
|
-
faqTitle: 'Questions Fréquentes',
|
|
92
|
-
faq: faqData,
|
|
93
|
-
bibliography,
|
|
94
|
-
howTo: howToData,
|
|
95
|
-
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
|
-
seo: [
|
|
97
|
-
{ type: 'title', text: 'La Science du Déménagement et le Théorème de Pythagore', level: 2 },
|
|
98
|
-
{
|
|
99
|
-
type: 'paragraph',
|
|
100
|
-
html: 'Un déménagement n\'est pas seulement une épreuve physique - c\'est un puzzle géométrique complexe. L\'espace apparent d\'une pièce ou d\'un ascenseur trompe l\'œil humain, surtout lorsqu\'on ignore la troisième dimension. Les mathématiques peuvent vous faire économiser des centaines d\'euros en retours et transports ratés.',
|
|
101
|
-
},
|
|
102
|
-
{ type: 'title', text: 'L\'Astuce de la Diagonale 3D', level: 3 },
|
|
103
|
-
{
|
|
104
|
-
type: 'card',
|
|
105
|
-
icon: 'mdi:math-log',
|
|
106
|
-
title: 'La Règle d\'Or de la Mesure',
|
|
107
|
-
html: '<p>Ne mesurez jamais seulement le meuble. Mesurez toujours les <strong>points d\'accès critiques</strong>: la largeur nette du cadre de porte (soustrayez l\'épaisseur de la porte si elle n\'ouvre pas à 180°), le point le plus bas du plafond sur le palier et la profondeur réelle de l\'ascenseur portes fermées. La formule <code>d = √(l² + h² + p²)</code> révèle si le meuble passe incliné.</p>',
|
|
108
|
-
},
|
|
109
|
-
{ type: 'title', text: 'Le Problème du Canapé dans le Couloir', level: 3 },
|
|
110
|
-
{
|
|
111
|
-
type: 'card',
|
|
112
|
-
icon: 'mdi:sofa',
|
|
113
|
-
title: 'La Marge de Manœuvre',
|
|
114
|
-
html: '<p>Une erreur courante est de supposer que si le meuble fait 80cm et l\'ouverture 80cm, il passera. Non. Les mains des déménageurs, l\'élasticité du tissu et les imperfections des murs nécessitent une marge minimale de <strong>2 à 5 cm</strong>. Sans cette marge, le meuble sera rayé ou coincé par pression.</p>',
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
type: 'card',
|
|
118
|
-
icon: 'mdi:tools',
|
|
119
|
-
title: 'Démonter pour Gagner',
|
|
120
|
-
html: '<p>Avant d\'abandonner parce que le meuble ne passe pas, vérifiez les pieds. Retirer les pieds d\'un canapé réduit souvent sa hauteur critique de 10 à 15cm, la différence entre entrer triomphalement ou rester dans le hall. Les portes de réfrigérateur et les poignées d\'armoire ajoutent aussi des centimètres critiques.</p>',
|
|
121
|
-
},
|
|
122
|
-
{ type: 'title', text: '3 Erreurs Fatales lors d\'un Déménagement', level: 3 },
|
|
123
|
-
{
|
|
124
|
-
type: 'paragraph',
|
|
125
|
-
html: 'Même avec des mesures correctes, ces facteurs invisibles provoquent des catastrophes: <strong>Le Luminaire au Plafond</strong> - oublié pendant l\'inclinaison diagonale, il peut être heurté et brisé. <strong>Le Rayon de Giration du Meuble</strong> - un meuble rigide ne se plie pas; même s\'il passe en largeur dans un couloir étroit, il ne pourra pas effectuer le virage. <strong>L\'Emballage</strong> - le papier bulle et le carton de protection peuvent ajouter 1 à 3 cm de chaque côté.',
|
|
126
|
-
},
|
|
127
|
-
],
|
|
128
|
-
ui: {
|
|
129
|
-
conTitle: 'Dimensions de l\'Espace',
|
|
130
|
-
conHint: 'Ex: Ascenseur standard, encadrement de porte ou fourgonnette.',
|
|
131
|
-
objTitle: 'Dimensions du Meuble',
|
|
132
|
-
labelWidth: 'Largeur (cm)',
|
|
133
|
-
labelHeight: 'Hauteur (cm)',
|
|
134
|
-
labelDepth: 'Profondeur (cm)',
|
|
135
|
-
labelLength: 'Longueur (cm)',
|
|
136
|
-
labelMargin: 'Marge d\'Erreur (cm)',
|
|
137
|
-
vizLabel: 'Vue Spatiale Simplifiée',
|
|
138
|
-
verdictDefault: 'Ça rentre?',
|
|
139
|
-
verdictHint: 'Entrez les mesures pour vérifier la compatibilité spatiale.',
|
|
140
|
-
verdictYes: 'OUI, ÇA RENTRE!',
|
|
141
|
-
verdictNo: 'ÇA NE RENTRE PAS',
|
|
142
|
-
fitDirect: 'Le meuble rentre parfaitement de façon directe.',
|
|
143
|
-
fitDiagonal3d: 'Rentre incliné en diagonale (Pythagore 3D).',
|
|
144
|
-
fitDiagonalPlane: 'Rentre incliné dans l\'un des plans latéraux.',
|
|
145
|
-
fitNope: 'Le meuble est trop grand même incliné en diagonale.',
|
|
146
|
-
diagLabel: 'Diagonale Maximale (Pythagore 3D):',
|
|
147
|
-
objLabel: 'Meuble',
|
|
148
|
-
},
|
|
149
|
-
};
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { FurnitureFitUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
5
|
+
|
|
6
|
+
const slug = 'calculateur-encombrement-meubles';
|
|
7
|
+
const title = 'Calculateur de Place pour Meubles et Déménagement';
|
|
8
|
+
const description =
|
|
9
|
+
'Vérifiez si votre canapé, armoire ou table passe dans l\'ascenseur ou par la porte. Utilisez le théorème de Pythagore 3D pour calculer les inclinaisons et éviter les catastrophes de déménagement.';
|
|
10
|
+
|
|
11
|
+
const faqData = [
|
|
12
|
+
{
|
|
13
|
+
question: 'Pourquoi un canapé peut ne pas passer même s\'il est plus petit que la porte?',
|
|
14
|
+
answer:
|
|
15
|
+
'À cause de l\'angle de rotation. Si le couloir est étroit, le canapé doit entrer de côté ou incliné. Le facteur limitant n\'est pas seulement la largeur de la porte, mais le rayon de giration disponible dans l\'entrée.',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
question: 'Qu\'est-ce que la diagonale d\'un meuble et pourquoi est-elle importante?',
|
|
19
|
+
answer:
|
|
20
|
+
'C\'est la plus grande distance entre deux coins opposés. Elle est essentielle pour savoir si un meuble haut peut être redressé dans une pièce à plafond bas après avoir été assemblé au sol.',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
question: 'Comment mesurer un ascenseur correctement?',
|
|
24
|
+
answer:
|
|
25
|
+
'Ne mesurez pas seulement le sol. Mesurez la largeur de la porte ouverte, la profondeur libre et la hauteur totale. La diagonale depuis la base de la porte jusqu\'au coin supérieur arrière est la donnée la plus importante.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Quelles pièces démonter en premier?',
|
|
29
|
+
answer:
|
|
30
|
+
'Les pieds de canapés, poignées d\'armoires et portes de réfrigérateurs permettent souvent de gagner 5 à 10 cm critiques qui font la différence entre un meuble qui passe ou qui reste dans la rue.',
|
|
31
|
+
},
|
|
32
|
+
];
|
|
33
|
+
|
|
34
|
+
const howToData = [
|
|
35
|
+
{
|
|
36
|
+
name: 'Mesurer le meuble (Longueur, Largeur, Hauteur)',
|
|
37
|
+
text: 'Prenez les dimensions maximales de l\'objet, y compris les saillies comme les accoudoirs ou les poignées.',
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
name: 'Mesurer les passages critiques',
|
|
41
|
+
text: 'Mesurez le dégagement de la porte (de cadre à cadre), l\'intérieur de l\'ascenseur et la largeur des couloirs.',
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
name: 'Saisir les données dans le simulateur',
|
|
45
|
+
text: 'Entrez les dimensions dans l\'outil pour vérifier si le volume du meuble est compatible avec l\'espace de passage.',
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: 'Calculer les inclinaisons',
|
|
49
|
+
text: 'Si le meuble est très haut, utilisez la diagonale calculée pour vérifier si vous pouvez le faire pivoter sur le palier ou dans l\'ascenseur.',
|
|
50
|
+
},
|
|
51
|
+
];
|
|
52
|
+
|
|
53
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
54
|
+
'@context': 'https://schema.org',
|
|
55
|
+
'@type': 'FAQPage',
|
|
56
|
+
mainEntity: faqData.map((item) => ({
|
|
57
|
+
'@type': 'Question',
|
|
58
|
+
name: item.question,
|
|
59
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
60
|
+
})),
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
64
|
+
'@context': 'https://schema.org',
|
|
65
|
+
'@type': 'HowTo',
|
|
66
|
+
name: title,
|
|
67
|
+
description,
|
|
68
|
+
step: howToData.map((step, i) => ({
|
|
69
|
+
'@type': 'HowToStep',
|
|
70
|
+
position: i + 1,
|
|
71
|
+
name: step.name,
|
|
72
|
+
text: step.text,
|
|
73
|
+
})),
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
77
|
+
'@context': 'https://schema.org',
|
|
78
|
+
'@type': 'SoftwareApplication',
|
|
79
|
+
name: title,
|
|
80
|
+
description,
|
|
81
|
+
applicationCategory: 'UtilityApplication',
|
|
82
|
+
operatingSystem: 'All',
|
|
83
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
84
|
+
inLanguage: 'fr',
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
export const content: ToolLocaleContent<FurnitureFitUI> = {
|
|
88
|
+
slug,
|
|
89
|
+
title,
|
|
90
|
+
description,
|
|
91
|
+
faqTitle: 'Questions Fréquentes',
|
|
92
|
+
faq: faqData,
|
|
93
|
+
bibliography,
|
|
94
|
+
howTo: howToData,
|
|
95
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
|
+
seo: [
|
|
97
|
+
{ type: 'title', text: 'La Science du Déménagement et le Théorème de Pythagore', level: 2 },
|
|
98
|
+
{
|
|
99
|
+
type: 'paragraph',
|
|
100
|
+
html: 'Un déménagement n\'est pas seulement une épreuve physique - c\'est un puzzle géométrique complexe. L\'espace apparent d\'une pièce ou d\'un ascenseur trompe l\'œil humain, surtout lorsqu\'on ignore la troisième dimension. Les mathématiques peuvent vous faire économiser des centaines d\'euros en retours et transports ratés.',
|
|
101
|
+
},
|
|
102
|
+
{ type: 'title', text: 'L\'Astuce de la Diagonale 3D', level: 3 },
|
|
103
|
+
{
|
|
104
|
+
type: 'card',
|
|
105
|
+
icon: 'mdi:math-log',
|
|
106
|
+
title: 'La Règle d\'Or de la Mesure',
|
|
107
|
+
html: '<p>Ne mesurez jamais seulement le meuble. Mesurez toujours les <strong>points d\'accès critiques</strong>: la largeur nette du cadre de porte (soustrayez l\'épaisseur de la porte si elle n\'ouvre pas à 180°), le point le plus bas du plafond sur le palier et la profondeur réelle de l\'ascenseur portes fermées. La formule <code>d = √(l² + h² + p²)</code> révèle si le meuble passe incliné.</p>',
|
|
108
|
+
},
|
|
109
|
+
{ type: 'title', text: 'Le Problème du Canapé dans le Couloir', level: 3 },
|
|
110
|
+
{
|
|
111
|
+
type: 'card',
|
|
112
|
+
icon: 'mdi:sofa',
|
|
113
|
+
title: 'La Marge de Manœuvre',
|
|
114
|
+
html: '<p>Une erreur courante est de supposer que si le meuble fait 80cm et l\'ouverture 80cm, il passera. Non. Les mains des déménageurs, l\'élasticité du tissu et les imperfections des murs nécessitent une marge minimale de <strong>2 à 5 cm</strong>. Sans cette marge, le meuble sera rayé ou coincé par pression.</p>',
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
type: 'card',
|
|
118
|
+
icon: 'mdi:tools',
|
|
119
|
+
title: 'Démonter pour Gagner',
|
|
120
|
+
html: '<p>Avant d\'abandonner parce que le meuble ne passe pas, vérifiez les pieds. Retirer les pieds d\'un canapé réduit souvent sa hauteur critique de 10 à 15cm, la différence entre entrer triomphalement ou rester dans le hall. Les portes de réfrigérateur et les poignées d\'armoire ajoutent aussi des centimètres critiques.</p>',
|
|
121
|
+
},
|
|
122
|
+
{ type: 'title', text: '3 Erreurs Fatales lors d\'un Déménagement', level: 3 },
|
|
123
|
+
{
|
|
124
|
+
type: 'paragraph',
|
|
125
|
+
html: 'Même avec des mesures correctes, ces facteurs invisibles provoquent des catastrophes: <strong>Le Luminaire au Plafond</strong> - oublié pendant l\'inclinaison diagonale, il peut être heurté et brisé. <strong>Le Rayon de Giration du Meuble</strong> - un meuble rigide ne se plie pas; même s\'il passe en largeur dans un couloir étroit, il ne pourra pas effectuer le virage. <strong>L\'Emballage</strong> - le papier bulle et le carton de protection peuvent ajouter 1 à 3 cm de chaque côté.',
|
|
126
|
+
},
|
|
127
|
+
],
|
|
128
|
+
ui: {
|
|
129
|
+
conTitle: 'Dimensions de l\'Espace',
|
|
130
|
+
conHint: 'Ex: Ascenseur standard, encadrement de porte ou fourgonnette.',
|
|
131
|
+
objTitle: 'Dimensions du Meuble',
|
|
132
|
+
labelWidth: 'Largeur (cm)',
|
|
133
|
+
labelHeight: 'Hauteur (cm)',
|
|
134
|
+
labelDepth: 'Profondeur (cm)',
|
|
135
|
+
labelLength: 'Longueur (cm)',
|
|
136
|
+
labelMargin: 'Marge d\'Erreur (cm)',
|
|
137
|
+
vizLabel: 'Vue Spatiale Simplifiée',
|
|
138
|
+
verdictDefault: 'Ça rentre?',
|
|
139
|
+
verdictHint: 'Entrez les mesures pour vérifier la compatibilité spatiale.',
|
|
140
|
+
verdictYes: 'OUI, ÇA RENTRE!',
|
|
141
|
+
verdictNo: 'ÇA NE RENTRE PAS',
|
|
142
|
+
fitDirect: 'Le meuble rentre parfaitement de façon directe.',
|
|
143
|
+
fitDiagonal3d: 'Rentre incliné en diagonale (Pythagore 3D).',
|
|
144
|
+
fitDiagonalPlane: 'Rentre incliné dans l\'un des plans latéraux.',
|
|
145
|
+
fitNope: 'Le meuble est trop grand même incliné en diagonale.',
|
|
146
|
+
diagLabel: 'Diagonale Maximale (Pythagore 3D):',
|
|
147
|
+
objLabel: 'Meuble',
|
|
148
|
+
},
|
|
149
|
+
};
|