@jjlmoya/utils-diy 1.20.0 → 1.22.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/index.ts +14 -14
- package/src/entries.ts +4 -1
- package/src/tests/locale_completeness.test.ts +2 -2
- package/src/tests/tool_validation.test.ts +2 -2
- package/src/tool/drywallCalculator/bibliography.astro +7 -0
- package/src/tool/drywallCalculator/bibliography.ts +16 -0
- package/src/tool/drywallCalculator/component.astro +324 -0
- package/src/tool/drywallCalculator/drywall-calculator.css +426 -0
- package/src/tool/drywallCalculator/entry.ts +24 -0
- package/src/tool/drywallCalculator/i18n/de.ts +169 -0
- package/src/tool/drywallCalculator/i18n/en.ts +169 -0
- package/src/tool/drywallCalculator/i18n/es.ts +169 -0
- package/src/tool/drywallCalculator/i18n/fr.ts +169 -0
- package/src/tool/drywallCalculator/i18n/id.ts +169 -0
- package/src/tool/drywallCalculator/i18n/it.ts +169 -0
- package/src/tool/drywallCalculator/i18n/ja.ts +169 -0
- package/src/tool/drywallCalculator/i18n/ko.ts +169 -0
- package/src/tool/drywallCalculator/i18n/nl.ts +169 -0
- package/src/tool/drywallCalculator/i18n/pl.ts +169 -0
- package/src/tool/drywallCalculator/i18n/pt.ts +169 -0
- package/src/tool/drywallCalculator/i18n/ru.ts +169 -0
- package/src/tool/drywallCalculator/i18n/sv.ts +169 -0
- package/src/tool/drywallCalculator/i18n/tr.ts +169 -0
- package/src/tool/drywallCalculator/i18n/zh.ts +169 -0
- package/src/tool/drywallCalculator/index.ts +10 -0
- package/src/tool/drywallCalculator/logic.test.ts +39 -0
- package/src/tool/drywallCalculator/logic.ts +33 -0
- package/src/tool/drywallCalculator/seo.astro +14 -0
- package/src/tool/drywallCalculator/ui.ts +52 -0
- package/src/tools.ts +2 -1
|
@@ -0,0 +1,426 @@
|
|
|
1
|
+
.dw-root {
|
|
2
|
+
width: 100%;
|
|
3
|
+
max-width: 1100px;
|
|
4
|
+
margin: 0 auto;
|
|
5
|
+
color: #0f172a;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.theme-dark .dw-root {
|
|
9
|
+
color: #f8fafc;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/* Single Compact Card Shell */
|
|
13
|
+
.dw-card-shell {
|
|
14
|
+
background: #fff;
|
|
15
|
+
border: 1px solid #e2e8f0;
|
|
16
|
+
border-radius: 1rem;
|
|
17
|
+
padding: 1.5rem;
|
|
18
|
+
display: flex;
|
|
19
|
+
flex-direction: column;
|
|
20
|
+
gap: 1.5rem;
|
|
21
|
+
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.theme-dark .dw-card-shell {
|
|
25
|
+
background: #1e293b;
|
|
26
|
+
border-color: #334155;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.dw-top-bar {
|
|
30
|
+
display: flex;
|
|
31
|
+
align-items: center;
|
|
32
|
+
justify-content: space-between;
|
|
33
|
+
border-bottom: 1px solid #e2e8f0;
|
|
34
|
+
padding-bottom: 1rem;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.theme-dark .dw-top-bar {
|
|
38
|
+
border-bottom-color: #334155;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.dw-header-title {
|
|
42
|
+
font-size: 0.8125rem;
|
|
43
|
+
font-weight: 700;
|
|
44
|
+
text-transform: uppercase;
|
|
45
|
+
letter-spacing: 0.05em;
|
|
46
|
+
color: #d97706;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.theme-dark .dw-header-title {
|
|
50
|
+
color: #f59e0b;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/* Two Section Layout Inside Single Card */
|
|
54
|
+
.dw-card-content {
|
|
55
|
+
display: grid;
|
|
56
|
+
grid-template-columns: 340px 1fr;
|
|
57
|
+
gap: 1.5rem;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
@media (max-width: 860px) {
|
|
61
|
+
.dw-card-content {
|
|
62
|
+
grid-template-columns: 1fr;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.dw-form-column {
|
|
67
|
+
display: flex;
|
|
68
|
+
flex-direction: column;
|
|
69
|
+
gap: 1rem;
|
|
70
|
+
padding-right: 1.25rem;
|
|
71
|
+
border-right: 1px solid #e2e8f0;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.theme-dark .dw-form-column {
|
|
75
|
+
border-right-color: #334155;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
@media (max-width: 860px) {
|
|
79
|
+
.dw-form-column {
|
|
80
|
+
padding-right: 0;
|
|
81
|
+
border-right: none;
|
|
82
|
+
padding-bottom: 1.25rem;
|
|
83
|
+
border-bottom: 1px solid #e2e8f0;
|
|
84
|
+
}
|
|
85
|
+
.theme-dark .dw-form-column {
|
|
86
|
+
border-bottom-color: #334155;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.dw-field {
|
|
91
|
+
display: flex;
|
|
92
|
+
flex-direction: column;
|
|
93
|
+
gap: 0.35rem;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.dw-label {
|
|
97
|
+
font-size: 0.75rem;
|
|
98
|
+
font-weight: 600;
|
|
99
|
+
color: #0f172a;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.theme-dark .dw-label {
|
|
103
|
+
color: #f8fafc;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.dw-input-wrap {
|
|
107
|
+
display: flex;
|
|
108
|
+
align-items: center;
|
|
109
|
+
border: 1px solid #cbd5e1;
|
|
110
|
+
border-radius: 0.5rem;
|
|
111
|
+
overflow: hidden;
|
|
112
|
+
background: #fff;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.theme-dark .dw-input-wrap {
|
|
116
|
+
border-color: #475569;
|
|
117
|
+
background: #0f172a;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
.dw-input-wrap input {
|
|
121
|
+
width: 100%;
|
|
122
|
+
padding: 0.5rem 0.75rem;
|
|
123
|
+
border: none;
|
|
124
|
+
background: transparent;
|
|
125
|
+
color: #0f172a;
|
|
126
|
+
font-size: 0.9rem;
|
|
127
|
+
font-weight: 700;
|
|
128
|
+
outline: none;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
.theme-dark .dw-input-wrap input {
|
|
132
|
+
color: #f8fafc;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.dw-unit-badge {
|
|
136
|
+
padding: 0.5rem 0.75rem;
|
|
137
|
+
background: #f1f5f9;
|
|
138
|
+
color: #64748b;
|
|
139
|
+
font-weight: 700;
|
|
140
|
+
font-size: 0.75rem;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
.theme-dark .dw-unit-badge {
|
|
144
|
+
background: #334155;
|
|
145
|
+
color: #94a3b8;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
.dw-segmented-control {
|
|
149
|
+
display: grid;
|
|
150
|
+
grid-template-columns: repeat(2, 1fr);
|
|
151
|
+
gap: 0.25rem;
|
|
152
|
+
background: #f1f5f9;
|
|
153
|
+
padding: 0.25rem;
|
|
154
|
+
border-radius: 0.5rem;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
.theme-dark .dw-segmented-control {
|
|
158
|
+
background: #0f172a;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
.dw-segmented-control.dw-grid-4 {
|
|
162
|
+
grid-template-columns: repeat(2, 1fr);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.dw-chip-btn {
|
|
166
|
+
padding: 0.4rem 0.5rem;
|
|
167
|
+
border: 1px solid transparent;
|
|
168
|
+
border-radius: 0.35rem;
|
|
169
|
+
background: transparent;
|
|
170
|
+
color: #64748b;
|
|
171
|
+
font-size: 0.75rem;
|
|
172
|
+
font-weight: 600;
|
|
173
|
+
cursor: pointer;
|
|
174
|
+
transition: all 0.15s ease;
|
|
175
|
+
text-align: center;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
.theme-dark .dw-chip-btn {
|
|
179
|
+
color: #94a3b8;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
.dw-chip-btn.dw-active {
|
|
183
|
+
background: #fff;
|
|
184
|
+
border-color: #d97706;
|
|
185
|
+
color: #d97706;
|
|
186
|
+
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
.theme-dark .dw-chip-btn.dw-active {
|
|
190
|
+
background: #1e293b;
|
|
191
|
+
border-color: #f59e0b;
|
|
192
|
+
color: #f59e0b;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
.dw-view-column {
|
|
196
|
+
display: flex;
|
|
197
|
+
flex-direction: column;
|
|
198
|
+
gap: 1.25rem;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
/* CAD Technical Elevation Viewport */
|
|
202
|
+
.dw-cad-viewport {
|
|
203
|
+
background: #f8fafc;
|
|
204
|
+
border-radius: 0.75rem;
|
|
205
|
+
border: 1px solid #cbd5e1;
|
|
206
|
+
padding: 1rem;
|
|
207
|
+
display: flex;
|
|
208
|
+
flex-direction: column;
|
|
209
|
+
gap: 0.75rem;
|
|
210
|
+
position: relative;
|
|
211
|
+
overflow: hidden;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
.theme-dark .dw-cad-viewport {
|
|
215
|
+
background: #0f172a;
|
|
216
|
+
border-color: #334155;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
.dw-cad-header {
|
|
220
|
+
display: flex;
|
|
221
|
+
align-items: center;
|
|
222
|
+
justify-content: space-between;
|
|
223
|
+
z-index: 2;
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
.dw-cad-title {
|
|
227
|
+
font-size: 0.75rem;
|
|
228
|
+
font-weight: 700;
|
|
229
|
+
text-transform: uppercase;
|
|
230
|
+
letter-spacing: 0.05em;
|
|
231
|
+
color: #64748b;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
.theme-dark .dw-cad-title {
|
|
235
|
+
color: #38bdf8;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
.dw-cad-canvas {
|
|
239
|
+
width: 100%;
|
|
240
|
+
height: 200px;
|
|
241
|
+
position: relative;
|
|
242
|
+
border: 1px solid #cbd5e1;
|
|
243
|
+
background: #fff;
|
|
244
|
+
z-index: 2;
|
|
245
|
+
display: flex;
|
|
246
|
+
align-items: flex-end;
|
|
247
|
+
padding: 10px;
|
|
248
|
+
box-sizing: border-box;
|
|
249
|
+
border-radius: 0.5rem;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
.theme-dark .dw-cad-canvas {
|
|
253
|
+
border-color: rgba(56, 189, 248, 0.2);
|
|
254
|
+
background: rgba(15, 23, 42, 0.8);
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
.dw-cad-frame {
|
|
258
|
+
width: 100%;
|
|
259
|
+
height: 100%;
|
|
260
|
+
position: relative;
|
|
261
|
+
border-top: 6px solid #64748b;
|
|
262
|
+
border-bottom: 6px solid #64748b;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
.theme-dark .dw-cad-frame {
|
|
266
|
+
border-top-color: #94a3b8;
|
|
267
|
+
border-bottom-color: #94a3b8;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
.dw-cad-studs-layer {
|
|
271
|
+
position: absolute;
|
|
272
|
+
inset: 0;
|
|
273
|
+
display: flex;
|
|
274
|
+
justify-content: space-between;
|
|
275
|
+
padding: 0 2px;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
.dw-cad-stud-element {
|
|
279
|
+
width: 4px;
|
|
280
|
+
height: 100%;
|
|
281
|
+
background: #94a3b8;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
.theme-dark .dw-cad-stud-element {
|
|
285
|
+
background: #38bdf8;
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
.dw-cad-boards-overlay {
|
|
289
|
+
position: absolute;
|
|
290
|
+
inset: 4px;
|
|
291
|
+
display: grid;
|
|
292
|
+
grid-template-columns: repeat(3, 1fr);
|
|
293
|
+
grid-template-rows: 1fr 1fr;
|
|
294
|
+
gap: 4px;
|
|
295
|
+
opacity: 0.9;
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
.dw-cad-board-panel {
|
|
299
|
+
border: 1px dashed #d97706;
|
|
300
|
+
background: #fef3c7;
|
|
301
|
+
border-radius: 2px;
|
|
302
|
+
display: flex;
|
|
303
|
+
align-items: center;
|
|
304
|
+
justify-content: center;
|
|
305
|
+
font-size: 0.7rem;
|
|
306
|
+
font-weight: 800;
|
|
307
|
+
color: #78350f;
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
.theme-dark .dw-cad-board-panel {
|
|
311
|
+
border-color: #f59e0b;
|
|
312
|
+
color: #0f172a;
|
|
313
|
+
text-shadow: 0 0 2px rgba(255, 255, 255, 0.5);
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
.dw-cad-dimension-tag {
|
|
317
|
+
position: absolute;
|
|
318
|
+
bottom: 8px;
|
|
319
|
+
right: 12px;
|
|
320
|
+
font-size: 0.75rem;
|
|
321
|
+
font-weight: 700;
|
|
322
|
+
color: #64748b;
|
|
323
|
+
background: #fff;
|
|
324
|
+
padding: 3px 8px;
|
|
325
|
+
border-radius: 4px;
|
|
326
|
+
border: 1px solid #cbd5e1;
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
.theme-dark .dw-cad-dimension-tag {
|
|
330
|
+
color: #38bdf8;
|
|
331
|
+
background: #0f172a;
|
|
332
|
+
border-color: #334155;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
.dw-summary-strip {
|
|
336
|
+
display: grid;
|
|
337
|
+
grid-template-columns: 1fr 1fr;
|
|
338
|
+
gap: 1rem;
|
|
339
|
+
padding: 0.75rem 1rem;
|
|
340
|
+
background: #f8fafc;
|
|
341
|
+
border: 1px solid #e2e8f0;
|
|
342
|
+
border-radius: 0.5rem;
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
.theme-dark .dw-summary-strip {
|
|
346
|
+
background: #0f172a;
|
|
347
|
+
border-color: #334155;
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
.dw-summary-box {
|
|
351
|
+
display: flex;
|
|
352
|
+
align-items: center;
|
|
353
|
+
justify-content: space-between;
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
.dw-summary-box .lbl {
|
|
357
|
+
font-size: 0.75rem;
|
|
358
|
+
font-weight: 600;
|
|
359
|
+
color: #64748b;
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
.theme-dark .dw-summary-box .lbl {
|
|
363
|
+
color: #94a3b8;
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
.dw-summary-box .val {
|
|
367
|
+
font-size: 1.1rem;
|
|
368
|
+
font-weight: 800;
|
|
369
|
+
color: #d97706;
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
.theme-dark .dw-summary-box .val {
|
|
373
|
+
color: #f59e0b;
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
/* Material Output Grid */
|
|
377
|
+
.dw-material-dashboard {
|
|
378
|
+
display: grid;
|
|
379
|
+
grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
|
|
380
|
+
gap: 0.65rem;
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
.dw-mat-card {
|
|
384
|
+
background: #f8fafc;
|
|
385
|
+
border: 1px solid #e2e8f0;
|
|
386
|
+
border-radius: 0.5rem;
|
|
387
|
+
padding: 0.65rem;
|
|
388
|
+
display: flex;
|
|
389
|
+
flex-direction: column;
|
|
390
|
+
gap: 0.2rem;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
.theme-dark .dw-mat-card {
|
|
394
|
+
background: #0f172a;
|
|
395
|
+
border-color: #334155;
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
.dw-mat-num {
|
|
399
|
+
font-size: 1.4rem;
|
|
400
|
+
font-weight: 800;
|
|
401
|
+
color: #d97706;
|
|
402
|
+
line-height: 1;
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
.theme-dark .dw-mat-num {
|
|
406
|
+
color: #f59e0b;
|
|
407
|
+
}
|
|
408
|
+
|
|
409
|
+
.dw-mat-title {
|
|
410
|
+
font-size: 0.75rem;
|
|
411
|
+
font-weight: 700;
|
|
412
|
+
color: #0f172a;
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
.theme-dark .dw-mat-title {
|
|
416
|
+
color: #f8fafc;
|
|
417
|
+
}
|
|
418
|
+
|
|
419
|
+
.dw-mat-sub {
|
|
420
|
+
font-size: 0.65rem;
|
|
421
|
+
color: #64748b;
|
|
422
|
+
}
|
|
423
|
+
|
|
424
|
+
.theme-dark .dw-mat-sub {
|
|
425
|
+
color: #94a3b8;
|
|
426
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { DiyToolEntry } from '../../types';
|
|
2
|
+
import type { DrywallCalculatorUI } from './ui';
|
|
3
|
+
|
|
4
|
+
export const drywallCalculatorEntry: DiyToolEntry<DrywallCalculatorUI> = {
|
|
5
|
+
id: 'drywall-calculator',
|
|
6
|
+
icons: { bg: 'mdi:wall', fg: 'mdi:tape-measure' },
|
|
7
|
+
i18n: {
|
|
8
|
+
de: () => import('./i18n/de').then((m) => m.content),
|
|
9
|
+
en: () => import('./i18n/en').then((m) => m.content),
|
|
10
|
+
es: () => import('./i18n/es').then((m) => m.content),
|
|
11
|
+
fr: () => import('./i18n/fr').then((m) => m.content),
|
|
12
|
+
id: () => import('./i18n/id').then((m) => m.content),
|
|
13
|
+
it: () => import('./i18n/it').then((m) => m.content),
|
|
14
|
+
ja: () => import('./i18n/ja').then((m) => m.content),
|
|
15
|
+
ko: () => import('./i18n/ko').then((m) => m.content),
|
|
16
|
+
nl: () => import('./i18n/nl').then((m) => m.content),
|
|
17
|
+
pl: () => import('./i18n/pl').then((m) => m.content),
|
|
18
|
+
pt: () => import('./i18n/pt').then((m) => m.content),
|
|
19
|
+
ru: () => import('./i18n/ru').then((m) => m.content),
|
|
20
|
+
sv: () => import('./i18n/sv').then((m) => m.content),
|
|
21
|
+
tr: () => import('./i18n/tr').then((m) => m.content),
|
|
22
|
+
zh: () => import('./i18n/zh').then((m) => m.content),
|
|
23
|
+
},
|
|
24
|
+
};
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { DrywallCalculatorUI } from '../ui';
|
|
4
|
+
import { drywallCalculatorBibliography } from '../bibliography';
|
|
5
|
+
|
|
6
|
+
const slug = 'trockenbau-rechner';
|
|
7
|
+
const title = 'Trockenbau Rechner: Gipsplatten, Ständer und Profile';
|
|
8
|
+
const description = 'Professioneller Trockenbau-Materialrechner für Trennwände und Vorsatzschalen. Berechnen Sie exakt Gipsplatten, CW-Ständer, UW-Profile, Schrauben, Fugenband und Spachtelmasse.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Wie berechne ich die Anzahl der benötigten Gipsplatten?',
|
|
13
|
+
answer: 'Berechnen Sie die Wandfläche durch Multiplikation von Wandlänge und Deckenhöhe. Bei beidseitiger Beplankung multiplizieren Sie die Fläche mit 2, bei doppelter beidseitiger Beplankung mit 4. Teilen Sie die Gesamtbeplankungsfläche durch die Nutzfläche einer Platte (2,4 m² bei 120x200 cm) und schlagen Sie 10% Verschnitt hinzu.',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
question: 'Wann wähle ich 40 cm oder 60 cm Ständerabstand?',
|
|
17
|
+
answer: 'Der Standard-Achsabstand von 60 cm eignet sich für gewöhnliche Trennwände bis 3,0 m Höhe. Ein 40 cm Achsabstand ist zwingend erforderlich bei Fliesenbelag, Feuchträumen (Bad, Küche), hoher mechanischer Beanspruchung oder Wandhöhen über 3,0 Meter.',
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
question: 'Welche Gipsplatte eignet sich für welchen Raum?',
|
|
21
|
+
answer: 'Standard Weiß (Typ A) für Wohn- und Schlafräume; Imprägniert Grün (Typ H1) für Bad und Küche; Feuerschutz Rosa (Typ F) für Kamine und Heizräume; Schallschutz Blau (Typ A) mit hoher Rohdichte für effektive Schalldämmung.',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
question: 'Wie viele Schrauben werden pro Gipsplatte benötigt?',
|
|
25
|
+
answer: 'Rechnen Sie mit ca. 30 Schnellbauschrauben (3,5x25 mm) pro 120x200 cm Platte bei einlagiger Beplankung. Schraubenabstand 25 cm an den Rändern und 30 cm auf den mittleren Ständern.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Warum ist ein Dichtungsband unter den Boden- und Deckenprofilen nötig?',
|
|
29
|
+
answer: 'Das selbstklebende PE-Dichtungsband entkoppelt das Metallprofil von Boden und Decke. Es verhindert Trittschallübertragung und sorgt für luftdichte Anschlüsse.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{ name: 'Wandmaße eingeben', text: 'Geben Sie Gesamtlänge und Höhe der Trennwand in Metern ein.' },
|
|
35
|
+
{ name: 'Ständerabstand & Beplankung wählen', text: 'Wählen Sie 40 cm oder 60 cm Abstand, einfache oder doppelte Beplankung sowie einseitig oder beidseitig.' },
|
|
36
|
+
{ name: 'Materialliste & CAD-Skizze prüfen', text: 'Überprüfen Sie Stückzahlen für Profile, Schrauben, Fugenband, Spachtelmasse und die visuelle Ansicht.' },
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
40
|
+
'@context': 'https://schema.org',
|
|
41
|
+
'@type': 'FAQPage',
|
|
42
|
+
mainEntity: faqData.map((item) => ({
|
|
43
|
+
'@type': 'Question',
|
|
44
|
+
name: item.question,
|
|
45
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
46
|
+
})),
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
50
|
+
'@context': 'https://schema.org',
|
|
51
|
+
'@type': 'HowTo',
|
|
52
|
+
name: title,
|
|
53
|
+
description,
|
|
54
|
+
step: howToData.map((step, i) => ({
|
|
55
|
+
'@type': 'HowToStep',
|
|
56
|
+
position: i + 1,
|
|
57
|
+
name: step.name,
|
|
58
|
+
text: step.text,
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'SoftwareApplication',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
applicationCategory: 'UtilityApplication',
|
|
68
|
+
operatingSystem: 'All',
|
|
69
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
70
|
+
inLanguage: 'de',
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
export const content: ToolLocaleContent<DrywallCalculatorUI> = {
|
|
74
|
+
slug,
|
|
75
|
+
title,
|
|
76
|
+
description,
|
|
77
|
+
faqTitle: 'Häufig gestellte Fragen',
|
|
78
|
+
faq: faqData,
|
|
79
|
+
bibliography: drywallCalculatorBibliography,
|
|
80
|
+
howTo: howToData,
|
|
81
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
82
|
+
seo: [
|
|
83
|
+
{
|
|
84
|
+
type: 'title',
|
|
85
|
+
text: 'Technische Bemessung von Trockenbauwänden und Metallprofilen',
|
|
86
|
+
level: 2,
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'paragraph',
|
|
90
|
+
html: 'Die Erstellung leichter Trennwände aus Gipsplatten erfordert eine exakte Berechnung der verzinkten Stahlprofile (CW-Ständer und UW-Riegelschienen) sowie des Plattenlayouts. Nach DIN EN 520 verhindert eine präzise Profilauslegung Wanddurchbiegung und Rissbildung an den Fugen.',
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
type: 'title',
|
|
94
|
+
text: 'Profilabstand: Regeln für 40 cm und 60 cm Achsmaß',
|
|
95
|
+
level: 3,
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
type: 'paragraph',
|
|
99
|
+
html: 'Der Ständerabstand bestimmt die statische Belastbarkeit der Wand. Der Standard-Achsabstand von <strong>60 cm</strong> passt ideal zu 120 cm breiten Gipsplatten. Ein <strong>40 cm Achsabstand</strong> ist erforderlich bei Keramikfliesenbelag, Wandhöhen über 3,00 Meter sowie erhöhten Schallschutzanforderungen.',
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
type: 'card',
|
|
103
|
+
icon: 'mdi:shield-check-outline',
|
|
104
|
+
title: 'Plattenversatz und Verschraubungsmuster',
|
|
105
|
+
html: '<p>Vermeiden Sie Kreuzfugen unbedingt. Versetzen Sie die Plattenstöße um mindestens 40 cm. Verschrauben Sie die Platten mit Schnellbauschrauben 3,5x25 mm im Abstand von <strong>25 cm an den Rändern</strong> und <strong>30 cm auf Zwischenprofilen</strong>.</p>',
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
type: 'title',
|
|
109
|
+
text: 'Verschnittreserve und Fugenverspachtelung',
|
|
110
|
+
level: 3,
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
type: 'paragraph',
|
|
114
|
+
html: 'Planen Sie stets <strong>10% Verschnittreserve</strong> für Profile und Platten ein. Für die Fugenverspachtelung werden ca. 0,8 kg Spachtelmasse pro Quadratmeter Plattenfläche zusammen mit Fugendeckstreifen benötigt.',
|
|
115
|
+
},
|
|
116
|
+
],
|
|
117
|
+
ui: {
|
|
118
|
+
unitSystemLabel: 'Maßsystem',
|
|
119
|
+
unitMetric: 'Metrisch (m, cm, kg)',
|
|
120
|
+
unitImperial: 'Imperial (ft, in, lb)',
|
|
121
|
+
|
|
122
|
+
paramLengthLabel: 'Wandlänge',
|
|
123
|
+
paramHeightLabel: 'Wandhöhe',
|
|
124
|
+
paramSpacingLabel: 'Ständerabstand',
|
|
125
|
+
paramSpacing40Metric: '40 cm (Hohe Last)',
|
|
126
|
+
paramSpacing60Metric: '60 cm (Standard)',
|
|
127
|
+
paramSpacing40Imperial: '16 in (Hohe Last)',
|
|
128
|
+
paramSpacing60Imperial: '24 in (Standard)',
|
|
129
|
+
paramLayersLabel: 'Beplankung',
|
|
130
|
+
paramSingleLayer: 'Einfach beplankt',
|
|
131
|
+
paramDoubleLayer: 'Doppelt beplankt',
|
|
132
|
+
paramSidesLabel: 'Wandseiten',
|
|
133
|
+
paramDoubleSided: 'Beidseitig (Trennwand)',
|
|
134
|
+
paramSingleSided: 'Einseitig (Vorsatzschale)',
|
|
135
|
+
paramBoardTypeLabel: 'Gipsplattentyp',
|
|
136
|
+
boardTypeStandard: 'Standard (Typ A)',
|
|
137
|
+
boardTypeMoisture: 'Imprägniert (Typ H1)',
|
|
138
|
+
boardTypeFire: 'Feuerschutz (Typ F)',
|
|
139
|
+
boardTypeAcoustic: 'Schallschutz (Typ A)',
|
|
140
|
+
paramWasteLabel: 'Verschnittzuschlag',
|
|
141
|
+
|
|
142
|
+
summaryWallArea: 'Nettowandfläche',
|
|
143
|
+
summaryBoardArea: 'Gesamtplattenfläche',
|
|
144
|
+
|
|
145
|
+
resBoardsLabel: 'Gipsplatten',
|
|
146
|
+
resBoardsUnit: 'Stück',
|
|
147
|
+
resStudsLabel: 'CW-Ständerprofile',
|
|
148
|
+
resStudsUnit: 'Stück',
|
|
149
|
+
resTracksLabel: 'UW-Wandprofile',
|
|
150
|
+
resTracksUnit: 'Stangen',
|
|
151
|
+
resDrywallScrewsLabel: 'Schnellbauschrauben',
|
|
152
|
+
resDrywallScrewsUnit: 'Stück',
|
|
153
|
+
resFramingScrewsLabel: 'Profilschrauben',
|
|
154
|
+
resFramingScrewsUnit: 'Stück',
|
|
155
|
+
resJointTapeLabel: 'Fugenband',
|
|
156
|
+
resJointTapeUnit: 'Länge',
|
|
157
|
+
resJointCompoundLabel: 'Spachtelmasse',
|
|
158
|
+
resJointCompoundUnit: 'Gewicht',
|
|
159
|
+
resAcousticBandLabel: 'Trennwandband',
|
|
160
|
+
resAcousticBandUnit: 'Länge',
|
|
161
|
+
|
|
162
|
+
diagramWallTitle: 'CAD-Wandansicht',
|
|
163
|
+
diagramStudLegend: 'CW-Ständer',
|
|
164
|
+
diagramTrackLegend: 'UW-Profile',
|
|
165
|
+
diagramBoardLegend: 'Plattenversatz',
|
|
166
|
+
diagramModeStructure: 'Ständerwerk',
|
|
167
|
+
diagramModeBoard: 'Beplankung',
|
|
168
|
+
},
|
|
169
|
+
};
|