@jjlmoya/utils-diy 1.1.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 +60 -0
- package/src/category/i18n/en.ts +110 -0
- package/src/category/i18n/es.ts +110 -0
- package/src/category/i18n/fr.ts +101 -0
- package/src/category/index.ts +25 -0
- package/src/category/seo.astro +15 -0
- package/src/components/PreviewNavSidebar.astro +116 -0
- package/src/components/PreviewToolbar.astro +143 -0
- package/src/data.ts +11 -0
- package/src/env.d.ts +5 -0
- package/src/index.ts +57 -0
- package/src/layouts/PreviewLayout.astro +117 -0
- package/src/pages/[locale]/[slug].astro +146 -0
- package/src/pages/[locale].astro +251 -0
- package/src/pages/index.astro +4 -0
- package/src/tests/faq_count.test.ts +19 -0
- package/src/tests/locale_completeness.test.ts +42 -0
- package/src/tests/mocks/astro_mock.js +2 -0
- package/src/tests/no_h1_in_components.test.ts +48 -0
- package/src/tests/schemas_fulfillment.test.ts +23 -0
- package/src/tests/seo_length.test.ts +22 -0
- package/src/tests/title_quality.test.ts +55 -0
- package/src/tests/tool_validation.test.ts +17 -0
- package/src/tool/balusterCalculator/bibliography.astro +14 -0
- package/src/tool/balusterCalculator/component.astro +605 -0
- package/src/tool/balusterCalculator/i18n/en.ts +264 -0
- package/src/tool/balusterCalculator/i18n/es.ts +264 -0
- package/src/tool/balusterCalculator/i18n/fr.ts +264 -0
- package/src/tool/balusterCalculator/index.ts +33 -0
- package/src/tool/balusterCalculator/seo.astro +15 -0
- package/src/tool/balusterCalculator/ui.ts +15 -0
- package/src/tool/clayCalculator/bibliography.astro +14 -0
- package/src/tool/clayCalculator/component.astro +731 -0
- package/src/tool/clayCalculator/i18n/en.ts +183 -0
- package/src/tool/clayCalculator/i18n/es.ts +183 -0
- package/src/tool/clayCalculator/i18n/fr.ts +183 -0
- package/src/tool/clayCalculator/index.ts +33 -0
- package/src/tool/clayCalculator/seo.astro +15 -0
- package/src/tool/clayCalculator/ui.ts +19 -0
- package/src/tool/concreteCalculator/bibliography.astro +13 -0
- package/src/tool/concreteCalculator/component.astro +1089 -0
- package/src/tool/concreteCalculator/i18n/en.ts +201 -0
- package/src/tool/concreteCalculator/i18n/es.ts +201 -0
- package/src/tool/concreteCalculator/i18n/fr.ts +201 -0
- package/src/tool/concreteCalculator/index.ts +28 -0
- package/src/tool/concreteCalculator/seo.astro +14 -0
- package/src/tool/concreteCalculator/ui.ts +35 -0
- package/src/tool/cutOptimizer/bibliography.astro +13 -0
- package/src/tool/cutOptimizer/component.astro +825 -0
- package/src/tool/cutOptimizer/i18n/en.ts +178 -0
- package/src/tool/cutOptimizer/i18n/es.ts +178 -0
- package/src/tool/cutOptimizer/i18n/fr.ts +178 -0
- package/src/tool/cutOptimizer/index.ts +28 -0
- package/src/tool/cutOptimizer/optimizer.ts +199 -0
- package/src/tool/cutOptimizer/seo.astro +14 -0
- package/src/tool/cutOptimizer/ui.ts +25 -0
- package/src/tool/drillCalculator/bibliography.astro +13 -0
- package/src/tool/drillCalculator/component.astro +1210 -0
- package/src/tool/drillCalculator/engine.ts +63 -0
- package/src/tool/drillCalculator/i18n/en.ts +137 -0
- package/src/tool/drillCalculator/i18n/es.ts +137 -0
- package/src/tool/drillCalculator/i18n/fr.ts +137 -0
- package/src/tool/drillCalculator/index.ts +28 -0
- package/src/tool/drillCalculator/seo.astro +14 -0
- package/src/tool/drillCalculator/ui.ts +41 -0
- package/src/tool/drillSharpener/bibliography.astro +13 -0
- package/src/tool/drillSharpener/component.astro +712 -0
- package/src/tool/drillSharpener/engine.ts +42 -0
- package/src/tool/drillSharpener/i18n/en.ts +121 -0
- package/src/tool/drillSharpener/i18n/es.ts +121 -0
- package/src/tool/drillSharpener/i18n/fr.ts +121 -0
- package/src/tool/drillSharpener/index.ts +31 -0
- package/src/tool/drillSharpener/seo.astro +14 -0
- package/src/tool/drillSharpener/ui.ts +53 -0
- package/src/tool/epoxyCalculator/bibliography.astro +14 -0
- package/src/tool/epoxyCalculator/component.astro +888 -0
- package/src/tool/epoxyCalculator/i18n/en.ts +195 -0
- package/src/tool/epoxyCalculator/i18n/es.ts +195 -0
- package/src/tool/epoxyCalculator/i18n/fr.ts +195 -0
- package/src/tool/epoxyCalculator/index.ts +33 -0
- package/src/tool/epoxyCalculator/seo.astro +15 -0
- package/src/tool/epoxyCalculator/ui.ts +22 -0
- package/src/tool/furnitureFit/bibliography.astro +13 -0
- package/src/tool/furnitureFit/component.astro +552 -0
- package/src/tool/furnitureFit/engine.ts +51 -0
- package/src/tool/furnitureFit/i18n/en.ts +152 -0
- package/src/tool/furnitureFit/i18n/es.ts +152 -0
- package/src/tool/furnitureFit/i18n/fr.ts +152 -0
- package/src/tool/furnitureFit/index.ts +28 -0
- package/src/tool/furnitureFit/seo.astro +14 -0
- package/src/tool/furnitureFit/ui.ts +21 -0
- package/src/tool/mortarCalculator/bibliography.astro +13 -0
- package/src/tool/mortarCalculator/component.astro +1139 -0
- package/src/tool/mortarCalculator/i18n/en.ts +219 -0
- package/src/tool/mortarCalculator/i18n/es.ts +205 -0
- package/src/tool/mortarCalculator/i18n/fr.ts +220 -0
- package/src/tool/mortarCalculator/index.ts +24 -0
- package/src/tool/mortarCalculator/seo.astro +14 -0
- package/src/tool/mortarCalculator/ui.ts +37 -0
- package/src/tool/passepartoutCalculator/bibliography.astro +13 -0
- package/src/tool/passepartoutCalculator/component.astro +741 -0
- package/src/tool/passepartoutCalculator/i18n/en.ts +178 -0
- package/src/tool/passepartoutCalculator/i18n/es.ts +178 -0
- package/src/tool/passepartoutCalculator/i18n/fr.ts +178 -0
- package/src/tool/passepartoutCalculator/index.ts +28 -0
- package/src/tool/passepartoutCalculator/seo.astro +14 -0
- package/src/tool/passepartoutCalculator/ui.ts +17 -0
- package/src/tool/stairCalculator/bibliography.astro +52 -0
- package/src/tool/stairCalculator/component.astro +766 -0
- package/src/tool/stairCalculator/engine.ts +128 -0
- package/src/tool/stairCalculator/i18n/en.ts +149 -0
- package/src/tool/stairCalculator/i18n/es.ts +149 -0
- package/src/tool/stairCalculator/i18n/fr.ts +149 -0
- package/src/tool/stairCalculator/index.ts +31 -0
- package/src/tool/stairCalculator/seo.astro +211 -0
- package/src/tool/stairCalculator/ui.ts +109 -0
- package/src/tool/thermalExpansionCalculator/bibliography.astro +13 -0
- package/src/tool/thermalExpansionCalculator/component.astro +771 -0
- package/src/tool/thermalExpansionCalculator/engine.ts +23 -0
- package/src/tool/thermalExpansionCalculator/i18n/en.ts +174 -0
- package/src/tool/thermalExpansionCalculator/i18n/es.ts +174 -0
- package/src/tool/thermalExpansionCalculator/i18n/fr.ts +174 -0
- package/src/tool/thermalExpansionCalculator/index.ts +28 -0
- package/src/tool/thermalExpansionCalculator/seo.astro +14 -0
- package/src/tool/thermalExpansionCalculator/ui.ts +41 -0
- package/src/tool/voltageDropCalculator/bibliography.astro +13 -0
- package/src/tool/voltageDropCalculator/component.astro +1022 -0
- package/src/tool/voltageDropCalculator/i18n/en.ts +155 -0
- package/src/tool/voltageDropCalculator/i18n/es.ts +155 -0
- package/src/tool/voltageDropCalculator/i18n/fr.ts +148 -0
- package/src/tool/voltageDropCalculator/index.ts +28 -0
- package/src/tool/voltageDropCalculator/seo.astro +14 -0
- package/src/tool/voltageDropCalculator/ui.ts +22 -0
- package/src/tools.ts +16 -0
- package/src/types.ts +72 -0
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
---
|
|
2
|
+
---
|
|
3
|
+
|
|
4
|
+
<article class="sc-seo-article">
|
|
5
|
+
<h2>Calculadora de Escaleras: Diseño y Ejecución en Obra</h2>
|
|
6
|
+
|
|
7
|
+
<p>
|
|
8
|
+
Diseñar una escalera no es solo una cuestión estética; es un desafío de ingeniería y ergonomía. Nuestra herramienta avanzada permite calcular desde la <strong>geometría básica</strong> hasta la <strong>cubicación de hormigón</strong>, integrando factores críticos de obra como el espesor de la losa y los materiales de acabado.
|
|
9
|
+
</p>
|
|
10
|
+
|
|
11
|
+
<div class="sc-seo-summary">
|
|
12
|
+
<h3>Capacidades de la Herramienta</h3>
|
|
13
|
+
<ul>
|
|
14
|
+
<li>Relación de <strong>Blondel (2CH + H)</strong> optimizada.</li>
|
|
15
|
+
<li>Cálculo de <strong>volumen de hormigón</strong> real (peldaños + losa).</li>
|
|
16
|
+
<li>Compensación por <strong>espesor de acabado</strong> (mármol, madera).</li>
|
|
17
|
+
<li>Guía de <strong>replanteo acumulado</strong> para evitar errores métricos.</li>
|
|
18
|
+
</ul>
|
|
19
|
+
</div>
|
|
20
|
+
|
|
21
|
+
<h3>Fundamentos Técnicos: La Ley de Blondel</h3>
|
|
22
|
+
|
|
23
|
+
<p>
|
|
24
|
+
La comodidad de una escalera depende de la longitud del paso humano. El estándar internacional establece que la suma de dos contrahuellas y una huella debe estar en el rango de <strong>62 a 64 cm</strong>.
|
|
25
|
+
</p>
|
|
26
|
+
|
|
27
|
+
<div class="sc-seo-tip">
|
|
28
|
+
<h4>Optimización de Peldaños</h4>
|
|
29
|
+
<p>
|
|
30
|
+
Una contrahuella de <strong>18 cm</strong> es el estándar de confort en viviendas. Si tienes dudas sobre cuántos peldaños usar, nuestra calculadora incluye un botón de optimización automática que ajusta el número de niveles para acercarse a esta medida ideal.
|
|
31
|
+
</p>
|
|
32
|
+
</div>
|
|
33
|
+
|
|
34
|
+
<h3>Control de Estructura y Materiales</h3>
|
|
35
|
+
|
|
36
|
+
<p>
|
|
37
|
+
Para una ejecución profesional, es vital considerar la <strong>losa de hormigón</strong> (el plano inclinado que sostiene los escalones). Ignorar este volumen resultaría en un pedido de hormigón insuficiente.
|
|
38
|
+
</p>
|
|
39
|
+
|
|
40
|
+
<div class="sc-seo-stats">
|
|
41
|
+
<div class="sc-stat">
|
|
42
|
+
<span class="sc-stat-label">Losa Estándar</span>
|
|
43
|
+
<span class="sc-stat-value">15</span>
|
|
44
|
+
<span class="sc-stat-unit">cm</span>
|
|
45
|
+
</div>
|
|
46
|
+
<div class="sc-stat">
|
|
47
|
+
<span class="sc-stat-label">CH Vivienda</span>
|
|
48
|
+
<span class="sc-stat-value">17.5</span>
|
|
49
|
+
<span class="sc-stat-unit">cm</span>
|
|
50
|
+
</div>
|
|
51
|
+
<div class="sc-stat">
|
|
52
|
+
<span class="sc-stat-label">Ángulo Ideal</span>
|
|
53
|
+
<span class="sc-stat-value">32</span>
|
|
54
|
+
<span class="sc-stat-unit">º</span>
|
|
55
|
+
</div>
|
|
56
|
+
</div>
|
|
57
|
+
|
|
58
|
+
<h3>Replanteo y Trazado: El Error Acumulado</h3>
|
|
59
|
+
|
|
60
|
+
<p>
|
|
61
|
+
En la construcción de escaleras, el mayor enemigo es el error milimétrico. Si mides cada escalón por separado, la suma de pequeños errores puede dejar el último peldaño con una altura peligrosa (el famoso 'escalón cojo').
|
|
62
|
+
</p>
|
|
63
|
+
|
|
64
|
+
<table class="sc-seo-table">
|
|
65
|
+
<thead>
|
|
66
|
+
<tr>
|
|
67
|
+
<th>Método</th>
|
|
68
|
+
<th>Precisión</th>
|
|
69
|
+
<th>Resultado en Obra</th>
|
|
70
|
+
</tr>
|
|
71
|
+
</thead>
|
|
72
|
+
<tbody>
|
|
73
|
+
<tr>
|
|
74
|
+
<td>Medición Individual</td>
|
|
75
|
+
<td>Baja</td>
|
|
76
|
+
<td>Riesgo de tropiezos por desigualdad.</td>
|
|
77
|
+
</tr>
|
|
78
|
+
<tr>
|
|
79
|
+
<td><strong>Trazado Acumulado</strong></td>
|
|
80
|
+
<td><strong>Alta</strong></td>
|
|
81
|
+
<td><strong>Peldaños idénticos y seguros.</strong></td>
|
|
82
|
+
</tr>
|
|
83
|
+
</tbody>
|
|
84
|
+
</table>
|
|
85
|
+
|
|
86
|
+
<h3>Previsión de Acabados Finales</h3>
|
|
87
|
+
|
|
88
|
+
<p>
|
|
89
|
+
¿Vas a instalar peldaños de granito de 3 cm? Este dato es fundamental. Si no se prevé, el primer peldaño quedará 3 cm más alto y el último 3 cm más bajo respecto al suelo terminado. Nuestra calculadora ajusta estos niveles para que, tras la colocación del material, la escalera sea perfecta de principio a fin.
|
|
90
|
+
</p>
|
|
91
|
+
|
|
92
|
+
<pre class="sc-seo-code"><code>
|
|
93
|
+
# Ejemplo de Cálculo Total
|
|
94
|
+
Desnivel: 300 cm
|
|
95
|
+
Peldaños: 17 (CH = 17.6 cm)
|
|
96
|
+
Espesor Rampa: 15 cm
|
|
97
|
+
# Vol. Hormigón = Vol. Triángulos + Vol. Rampa
|
|
98
|
+
</code></pre>
|
|
99
|
+
</article>
|
|
100
|
+
|
|
101
|
+
<style>
|
|
102
|
+
.sc-seo-article {
|
|
103
|
+
max-width: 900px;
|
|
104
|
+
margin: 2rem auto;
|
|
105
|
+
padding: 0 1.5rem;
|
|
106
|
+
color: #1e293b;
|
|
107
|
+
line-height: 1.6;
|
|
108
|
+
}
|
|
109
|
+
.sc-seo-article h2 {
|
|
110
|
+
font-size: 1.875rem;
|
|
111
|
+
font-weight: 800;
|
|
112
|
+
margin: 1.5rem 0 1rem;
|
|
113
|
+
color: #0f172a;
|
|
114
|
+
}
|
|
115
|
+
.sc-seo-article h3 {
|
|
116
|
+
font-size: 1.25rem;
|
|
117
|
+
font-weight: 700;
|
|
118
|
+
margin: 1.5rem 0 0.75rem;
|
|
119
|
+
color: #1e293b;
|
|
120
|
+
}
|
|
121
|
+
.sc-seo-article h4 {
|
|
122
|
+
font-size: 1rem;
|
|
123
|
+
font-weight: 700;
|
|
124
|
+
margin: 0.75rem 0 0.5rem;
|
|
125
|
+
}
|
|
126
|
+
.sc-seo-article p {
|
|
127
|
+
margin-bottom: 1rem;
|
|
128
|
+
}
|
|
129
|
+
.sc-seo-summary {
|
|
130
|
+
background: #f0f9ff;
|
|
131
|
+
border-left: 4px solid #4f46e5;
|
|
132
|
+
padding: 1.25rem;
|
|
133
|
+
border-radius: 0.5rem;
|
|
134
|
+
margin: 1.25rem 0;
|
|
135
|
+
}
|
|
136
|
+
.sc-seo-summary ul {
|
|
137
|
+
margin: 0.75rem 0 0;
|
|
138
|
+
padding-left: 1.5rem;
|
|
139
|
+
}
|
|
140
|
+
.sc-seo-summary li {
|
|
141
|
+
margin-bottom: 0.5rem;
|
|
142
|
+
}
|
|
143
|
+
.sc-seo-tip {
|
|
144
|
+
background: #fef9c3;
|
|
145
|
+
border-left: 4px solid #f59e0b;
|
|
146
|
+
padding: 1.25rem;
|
|
147
|
+
border-radius: 0.5rem;
|
|
148
|
+
margin: 1.25rem 0;
|
|
149
|
+
}
|
|
150
|
+
.sc-seo-tip p {
|
|
151
|
+
margin: 0;
|
|
152
|
+
}
|
|
153
|
+
.sc-seo-stats {
|
|
154
|
+
display: grid;
|
|
155
|
+
grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
|
|
156
|
+
gap: 1rem;
|
|
157
|
+
margin: 1.25rem 0;
|
|
158
|
+
}
|
|
159
|
+
.sc-stat {
|
|
160
|
+
background: #fff;
|
|
161
|
+
border: 1px solid #e2e8f0;
|
|
162
|
+
border-radius: 0.75rem;
|
|
163
|
+
padding: 1rem;
|
|
164
|
+
text-align: center;
|
|
165
|
+
}
|
|
166
|
+
.sc-stat-label {
|
|
167
|
+
display: block;
|
|
168
|
+
font-size: 0.8rem;
|
|
169
|
+
color: #64748b;
|
|
170
|
+
margin-bottom: 0.5rem;
|
|
171
|
+
font-weight: 600;
|
|
172
|
+
}
|
|
173
|
+
.sc-stat-value {
|
|
174
|
+
display: block;
|
|
175
|
+
font-size: 1.875rem;
|
|
176
|
+
font-weight: 800;
|
|
177
|
+
color: #4f46e5;
|
|
178
|
+
}
|
|
179
|
+
.sc-stat-unit {
|
|
180
|
+
display: block;
|
|
181
|
+
font-size: 0.75rem;
|
|
182
|
+
color: #64748b;
|
|
183
|
+
margin-top: 0.25rem;
|
|
184
|
+
}
|
|
185
|
+
.sc-seo-table {
|
|
186
|
+
width: 100%;
|
|
187
|
+
border-collapse: collapse;
|
|
188
|
+
margin: 1.25rem 0;
|
|
189
|
+
border: 1px solid #e2e8f0;
|
|
190
|
+
}
|
|
191
|
+
.sc-seo-table th {
|
|
192
|
+
background: #f1f5f9;
|
|
193
|
+
padding: 0.75rem;
|
|
194
|
+
text-align: left;
|
|
195
|
+
font-weight: 700;
|
|
196
|
+
border-bottom: 2px solid #e2e8f0;
|
|
197
|
+
}
|
|
198
|
+
.sc-seo-table td {
|
|
199
|
+
padding: 0.75rem;
|
|
200
|
+
border-bottom: 1px solid #e2e8f0;
|
|
201
|
+
}
|
|
202
|
+
.sc-seo-code {
|
|
203
|
+
background: #1e293b;
|
|
204
|
+
color: #e2e8f0;
|
|
205
|
+
padding: 1.25rem;
|
|
206
|
+
border-radius: 0.75rem;
|
|
207
|
+
overflow-x: auto;
|
|
208
|
+
margin: 1.25rem 0;
|
|
209
|
+
font-size: 0.9rem;
|
|
210
|
+
}
|
|
211
|
+
</style>
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
export interface StairCalculatorUI {
|
|
2
|
+
labelGeometry: string;
|
|
3
|
+
labelTotalHeight: string;
|
|
4
|
+
labelAvailableLength: string;
|
|
5
|
+
labelAvailableLengthHint: string;
|
|
6
|
+
labelNumSteps: string;
|
|
7
|
+
labelOptimize: string;
|
|
8
|
+
labelWork: string;
|
|
9
|
+
labelSlabThickness: string;
|
|
10
|
+
labelFinishThickness: string;
|
|
11
|
+
labelCeilingHeight: string;
|
|
12
|
+
labelStairWidth: string;
|
|
13
|
+
labelConcreteStrength: string;
|
|
14
|
+
optionH150: string;
|
|
15
|
+
optionH200: string;
|
|
16
|
+
optionH250: string;
|
|
17
|
+
labelRiser: string;
|
|
18
|
+
labelTread: string;
|
|
19
|
+
labelSlope: string;
|
|
20
|
+
labelRealAdvance: string;
|
|
21
|
+
labelLayoutTable: string;
|
|
22
|
+
colStep: string;
|
|
23
|
+
colConcreteHeight: string;
|
|
24
|
+
colFinishedHeight: string;
|
|
25
|
+
colAdvance: string;
|
|
26
|
+
adjustedNote: string;
|
|
27
|
+
labelMaterials: string;
|
|
28
|
+
labelTotalConcrete: string;
|
|
29
|
+
labelCement: string;
|
|
30
|
+
labelSand: string;
|
|
31
|
+
unitM3: string;
|
|
32
|
+
unitBags: string;
|
|
33
|
+
unitLiters: string;
|
|
34
|
+
btnShare: string;
|
|
35
|
+
btnPrint: string;
|
|
36
|
+
statusOptimalComfort: string;
|
|
37
|
+
statusMarginLimit: string;
|
|
38
|
+
statusCriticalDesign: string;
|
|
39
|
+
statusRiserError: string;
|
|
40
|
+
msgInvalidValues: string;
|
|
41
|
+
msgInsufficientSpace: string;
|
|
42
|
+
msgDangerousTread: string;
|
|
43
|
+
msgBlondelValue: string;
|
|
44
|
+
msgOptimalStep: string;
|
|
45
|
+
msgLowCeiling: string;
|
|
46
|
+
msgCalculating: string;
|
|
47
|
+
msgEnterMeasurements: string;
|
|
48
|
+
shareTitle: string;
|
|
49
|
+
shareMessage: string;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export const stairCalculatorUI: StairCalculatorUI = {
|
|
53
|
+
labelGeometry: 'Geometría y Hueco',
|
|
54
|
+
labelTotalHeight: 'Desnivel Total (H)',
|
|
55
|
+
labelAvailableLength: 'Longitud Disponible (L)',
|
|
56
|
+
labelAvailableLengthHint: 'Usa 0 para cálculo libre.',
|
|
57
|
+
labelNumSteps: 'Nº Peldaños',
|
|
58
|
+
labelOptimize: 'Optimizar (18cm)',
|
|
59
|
+
|
|
60
|
+
labelWork: 'Obra e Instalación',
|
|
61
|
+
labelSlabThickness: 'Losa (e)',
|
|
62
|
+
labelFinishThickness: 'Acabado',
|
|
63
|
+
labelCeilingHeight: 'Altura Techo (Opción)',
|
|
64
|
+
labelStairWidth: 'Ancho Escalera',
|
|
65
|
+
labelConcreteStrength: 'Resistencia Hormigón',
|
|
66
|
+
optionH150: 'H-150 (Limpieza)',
|
|
67
|
+
optionH200: 'H-200 (Vivienda)',
|
|
68
|
+
optionH250: 'H-250 (Estructural)',
|
|
69
|
+
|
|
70
|
+
labelRiser: 'Contrahuella',
|
|
71
|
+
labelTread: 'Huella',
|
|
72
|
+
labelSlope: 'Pendiente',
|
|
73
|
+
labelRealAdvance: 'Avance Real',
|
|
74
|
+
|
|
75
|
+
labelLayoutTable: 'Replanteo y Ejecución',
|
|
76
|
+
colStep: 'Peldaño',
|
|
77
|
+
colConcreteHeight: 'H. Hormigón',
|
|
78
|
+
colFinishedHeight: 'H. Terminada',
|
|
79
|
+
colAdvance: 'Avance',
|
|
80
|
+
adjustedNote: 'Ajustado',
|
|
81
|
+
|
|
82
|
+
labelMaterials: 'Cubicación y Pedido',
|
|
83
|
+
labelTotalConcrete: 'Hormigón Total:',
|
|
84
|
+
labelCement: 'Cemento (sacos/25kg):',
|
|
85
|
+
labelSand: 'Arena necesaria:',
|
|
86
|
+
unitM3: 'm³',
|
|
87
|
+
unitBags: 'sacos',
|
|
88
|
+
unitLiters: 'L',
|
|
89
|
+
|
|
90
|
+
btnShare: 'Compartir',
|
|
91
|
+
btnPrint: 'Imprimir PDF',
|
|
92
|
+
|
|
93
|
+
statusOptimalComfort: 'Confort Óptimo',
|
|
94
|
+
statusMarginLimit: 'Margen Límite',
|
|
95
|
+
statusCriticalDesign: 'Diseño Crítico',
|
|
96
|
+
statusRiserError: 'Error de Huella',
|
|
97
|
+
|
|
98
|
+
msgInvalidValues: 'Valores inválidos',
|
|
99
|
+
msgInsufficientSpace: 'ESPACIO INSUFICIENTE',
|
|
100
|
+
msgDangerousTread: 'La huella de {val}cm es peligrosa.',
|
|
101
|
+
msgBlondelValue: 'Blondel: {val}cm.',
|
|
102
|
+
msgOptimalStep: 'Paso cómodo: {val}cm.',
|
|
103
|
+
msgLowCeiling: 'CABECEO BAJO (<2m)',
|
|
104
|
+
msgCalculating: 'Calculando...',
|
|
105
|
+
msgEnterMeasurements: 'Ingresa medidas',
|
|
106
|
+
|
|
107
|
+
shareTitle: 'Resumen Obra',
|
|
108
|
+
shareMessage: 'Escalera: H={h}cm, N={n}, CH={ch}cm, Vol={vol}m3'
|
|
109
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
import { Bibliography as SharedBibliography } from '@jjlmoya/utils-shared';
|
|
3
|
+
import { thermalExpansionCalculator } from './index';
|
|
4
|
+
import type { KnownLocale } from '../../types';
|
|
5
|
+
|
|
6
|
+
interface Props {
|
|
7
|
+
locale?: KnownLocale;
|
|
8
|
+
}
|
|
9
|
+
const { locale = 'es' } = Astro.props;
|
|
10
|
+
const content = await thermalExpansionCalculator.i18n[locale]?.();
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
{content && <SharedBibliography links={content.bibliography} />}
|