@jjlmoya/utils-cooking 1.9.0 → 1.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/tool/banana-ripeness/component.astro +590 -2
- package/src/tool/banana-ripeness/i18n/fr.ts +86 -86
- package/src/tool/brine/component.astro +20 -22
- package/src/tool/cookware-guide/component.astro +478 -1
- package/src/tool/cookware-guide/i18n/fr.ts +109 -110
- package/src/tool/ingredient-rescaler/component.astro +298 -1
- package/src/tool/kitchen-timer/component.astro +27 -9
- package/src/tool/kitchen-timer/i18n/en.ts +6 -7
- package/src/tool/kitchen-timer/i18n/es.ts +7 -8
- package/src/tool/kitchen-timer/i18n/fr.ts +76 -77
- package/src/tool/kitchen-timer/init.ts +23 -6
- package/src/tool/kitchen-timer/lib/KitchenTimer.ts +20 -8
- package/src/tool/meringue-peak/component.astro +301 -2
- package/src/tool/mold-scaler/component.astro +367 -1
- package/src/tool/roux-guide/component.astro +480 -1
- package/src/tool/roux-guide/i18n/en.ts +18 -1
- package/src/tool/roux-guide/i18n/es.ts +20 -3
- package/src/tool/roux-guide/i18n/fr.ts +18 -1
- package/src/tool/roux-guide/init.ts +55 -52
- package/src/tool/banana-ripeness/BananaCare.css +0 -587
- package/src/tool/cookware-guide/CookwareGuide.css +0 -487
- package/src/tool/ingredient-rescaler/IngredientRescaler.css +0 -308
- package/src/tool/meringue-peak/MeringueCalculator.css +0 -298
- package/src/tool/mold-scaler/MoldScaler.css +0 -406
- package/src/tool/roux-guide/RouxGuide.css +0 -483
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
---
|
|
2
2
|
import { Icon } from 'astro-icon/components';
|
|
3
|
-
import './RouxGuide.css';
|
|
4
3
|
|
|
5
4
|
interface Props {
|
|
6
5
|
ui: Record<string, string>;
|
|
@@ -185,10 +184,490 @@ const { ui } = Astro.props;
|
|
|
185
184
|
}
|
|
186
185
|
</script>
|
|
187
186
|
|
|
187
|
+
<style is:global>
|
|
188
|
+
:root {
|
|
189
|
+
--rg-primary: hsl(38deg, 92%, 50%);
|
|
190
|
+
--rg-primary-light: hsl(38deg, 92%, 90%);
|
|
191
|
+
--rg-secondary: hsl(25deg, 95%, 53%);
|
|
192
|
+
--rg-bg-card: hsl(0deg, 0%, 100%);
|
|
193
|
+
--rg-bg-app: hsl(210deg, 20%, 98%);
|
|
194
|
+
--rg-border: hsl(210deg, 20%, 90%);
|
|
195
|
+
--rg-text-main: hsl(210deg, 30%, 20%);
|
|
196
|
+
--rg-text-muted: hsl(210deg, 15%, 50%);
|
|
197
|
+
--rg-shadow-lg: 0 10px 15px -3px rgb(0, 0, 0, 0.1);
|
|
198
|
+
--rg-radius: 1rem;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.theme-dark {
|
|
202
|
+
--rg-bg-card: hsl(220deg, 25%, 12%);
|
|
203
|
+
--rg-bg-app: hsl(220deg, 30%, 7%);
|
|
204
|
+
--rg-border: hsl(220deg, 20%, 20%);
|
|
205
|
+
--rg-text-main: hsl(210deg, 20%, 95%);
|
|
206
|
+
--rg-text-muted: hsl(210deg, 15%, 70%);
|
|
207
|
+
--rg-primary-light: hsl(38deg, 92%, 12%);
|
|
208
|
+
}
|
|
209
|
+
</style>
|
|
210
|
+
|
|
188
211
|
<style>
|
|
189
212
|
input[type='number']::-webkit-outer-spin-button,
|
|
190
213
|
input[type='number']::-webkit-inner-spin-button {
|
|
191
214
|
-webkit-appearance: none;
|
|
192
215
|
margin: 0;
|
|
193
216
|
}
|
|
217
|
+
|
|
218
|
+
.rg-container {
|
|
219
|
+
width: 100%;
|
|
220
|
+
max-width: 100%;
|
|
221
|
+
padding: 1rem;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
.rg-card {
|
|
225
|
+
background: var(--rg-bg-card);
|
|
226
|
+
border: 1px solid var(--rg-border);
|
|
227
|
+
border-radius: var(--rg-radius);
|
|
228
|
+
box-shadow: var(--rg-shadow-lg);
|
|
229
|
+
overflow: hidden;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
.rg-progress-wrapper {
|
|
233
|
+
height: 0.375rem;
|
|
234
|
+
width: 100%;
|
|
235
|
+
background: var(--rg-bg-app);
|
|
236
|
+
position: relative;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
.rg-progress-bar {
|
|
240
|
+
height: 100%;
|
|
241
|
+
background: linear-gradient(to right, var(--rg-primary), var(--rg-secondary));
|
|
242
|
+
transition: width 0.3s ease;
|
|
243
|
+
width: 50%;
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
.rg-content {
|
|
247
|
+
padding: 2rem;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
@media (max-width: 1024px) {
|
|
251
|
+
.rg-content {
|
|
252
|
+
padding: 1.5rem;
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
@media (max-width: 640px) {
|
|
257
|
+
.rg-content {
|
|
258
|
+
padding: 1rem;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
.rg-grid {
|
|
263
|
+
display: grid;
|
|
264
|
+
grid-template-columns: 1fr;
|
|
265
|
+
gap: 3rem;
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
@media (min-width: 1024px) {
|
|
269
|
+
.rg-grid {
|
|
270
|
+
grid-template-columns: 1fr 1fr;
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
.rg-controls {
|
|
275
|
+
display: flex;
|
|
276
|
+
flex-direction: column;
|
|
277
|
+
gap: 2.5rem;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
.rg-control-group {
|
|
281
|
+
display: flex;
|
|
282
|
+
flex-direction: column;
|
|
283
|
+
gap: 1rem;
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
.rg-label {
|
|
287
|
+
font-size: 0.75rem;
|
|
288
|
+
font-weight: 700;
|
|
289
|
+
color: var(--rg-text-muted);
|
|
290
|
+
text-transform: uppercase;
|
|
291
|
+
letter-spacing: 0.05em;
|
|
292
|
+
display: flex;
|
|
293
|
+
align-items: center;
|
|
294
|
+
gap: 0.75rem;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
.rg-step {
|
|
298
|
+
width: 1.5rem;
|
|
299
|
+
height: 1.5rem;
|
|
300
|
+
border-radius: 50%;
|
|
301
|
+
background: hsl(38deg, 92%, 90%);
|
|
302
|
+
color: var(--rg-primary);
|
|
303
|
+
display: flex;
|
|
304
|
+
align-items: center;
|
|
305
|
+
justify-content: center;
|
|
306
|
+
font-weight: 700;
|
|
307
|
+
font-size: 0.75rem;
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
:global(.theme-dark) .rg-step {
|
|
311
|
+
background: hsl(38deg, 92%, 12%);
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
.rg-volume-wrapper {
|
|
315
|
+
display: flex;
|
|
316
|
+
flex-direction: column;
|
|
317
|
+
gap: 1rem;
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
@media (min-width: 640px) {
|
|
321
|
+
.rg-volume-wrapper {
|
|
322
|
+
flex-direction: row;
|
|
323
|
+
gap: 1rem;
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
.rg-input-group {
|
|
328
|
+
position: relative;
|
|
329
|
+
flex: 1;
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
.rg-input {
|
|
333
|
+
width: 100%;
|
|
334
|
+
padding: 1rem 2rem 1rem 1rem;
|
|
335
|
+
border: 2px solid var(--rg-border);
|
|
336
|
+
border-radius: 0.75rem;
|
|
337
|
+
background: var(--rg-bg-app);
|
|
338
|
+
color: var(--rg-text-main);
|
|
339
|
+
font-weight: 600;
|
|
340
|
+
font-size: 1.875rem;
|
|
341
|
+
text-align: center;
|
|
342
|
+
transition: all 0.3s ease;
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
.rg-input:focus {
|
|
346
|
+
outline: none;
|
|
347
|
+
border-color: var(--rg-primary);
|
|
348
|
+
box-shadow: 0 0 0 3px hsl(38deg, 92%, 50%, 0.1);
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
.rg-unit {
|
|
352
|
+
position: absolute;
|
|
353
|
+
right: 1rem;
|
|
354
|
+
top: 50%;
|
|
355
|
+
transform: translateY(-50%);
|
|
356
|
+
color: var(--rg-text-muted);
|
|
357
|
+
font-weight: 600;
|
|
358
|
+
font-size: 0.875rem;
|
|
359
|
+
text-transform: uppercase;
|
|
360
|
+
letter-spacing: 0.05em;
|
|
361
|
+
pointer-events: none;
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
.rg-liquid-buttons {
|
|
365
|
+
display: grid;
|
|
366
|
+
grid-template-columns: repeat(4, 1fr);
|
|
367
|
+
gap: 0.5rem;
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
@media (max-width: 640px) {
|
|
371
|
+
.rg-liquid-buttons {
|
|
372
|
+
grid-template-columns: repeat(2, 1fr);
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
.rg-liquid-btn {
|
|
377
|
+
display: flex;
|
|
378
|
+
align-items: center;
|
|
379
|
+
justify-content: center;
|
|
380
|
+
padding: 0.75rem;
|
|
381
|
+
border: 2px solid var(--rg-border);
|
|
382
|
+
border-radius: 0.75rem;
|
|
383
|
+
background: var(--rg-bg-card);
|
|
384
|
+
color: var(--rg-text-muted);
|
|
385
|
+
cursor: pointer;
|
|
386
|
+
transition: all 0.3s ease;
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
.rg-liquid-btn:hover {
|
|
390
|
+
border-color: var(--rg-primary);
|
|
391
|
+
color: var(--rg-primary);
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
.rg-liquid-btn.active {
|
|
395
|
+
background: var(--rg-bg-app);
|
|
396
|
+
border-color: var(--rg-primary);
|
|
397
|
+
color: var(--rg-primary);
|
|
398
|
+
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
.rg-btn-icon {
|
|
402
|
+
width: 1.5rem;
|
|
403
|
+
height: 1.5rem;
|
|
404
|
+
}
|
|
405
|
+
|
|
406
|
+
.rg-texture-grid {
|
|
407
|
+
display: grid;
|
|
408
|
+
grid-template-columns: repeat(2, 1fr);
|
|
409
|
+
gap: 0.75rem;
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
@media (min-width: 640px) {
|
|
413
|
+
.rg-texture-grid {
|
|
414
|
+
grid-template-columns: repeat(4, 1fr);
|
|
415
|
+
}
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
.rg-texture-btn {
|
|
419
|
+
display: flex;
|
|
420
|
+
flex-direction: column;
|
|
421
|
+
align-items: center;
|
|
422
|
+
gap: 0.75rem;
|
|
423
|
+
padding: 1rem 0.75rem;
|
|
424
|
+
border: 2px solid var(--rg-border);
|
|
425
|
+
border-radius: 0.75rem;
|
|
426
|
+
background: var(--rg-bg-card);
|
|
427
|
+
color: var(--rg-text-muted);
|
|
428
|
+
cursor: pointer;
|
|
429
|
+
transition: all 0.3s ease;
|
|
430
|
+
text-align: center;
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
.rg-texture-btn:hover {
|
|
434
|
+
border-color: var(--rg-primary);
|
|
435
|
+
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
.rg-texture-btn.active {
|
|
439
|
+
background: var(--rg-primary-light);
|
|
440
|
+
border-color: var(--rg-primary);
|
|
441
|
+
color: var(--rg-primary);
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
.rg-texture-visual {
|
|
445
|
+
width: 1.5rem;
|
|
446
|
+
height: 1.5rem;
|
|
447
|
+
border: 1px solid currentcolor;
|
|
448
|
+
border-radius: 0.25rem;
|
|
449
|
+
overflow: hidden;
|
|
450
|
+
display: flex;
|
|
451
|
+
align-items: flex-end;
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
.rg-texture-bar {
|
|
455
|
+
width: 100%;
|
|
456
|
+
background: currentcolor;
|
|
457
|
+
transition: height 0.3s ease;
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
.rg-texture-btn[data-level="1"] .rg-texture-bar {
|
|
461
|
+
height: 25%;
|
|
462
|
+
}
|
|
463
|
+
|
|
464
|
+
.rg-texture-btn[data-level="2"] .rg-texture-bar {
|
|
465
|
+
height: 50%;
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
.rg-texture-btn[data-level="3"] .rg-texture-bar {
|
|
469
|
+
height: 75%;
|
|
470
|
+
}
|
|
471
|
+
|
|
472
|
+
.rg-texture-btn[data-level="4"] .rg-texture-bar {
|
|
473
|
+
height: 100%;
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
.rg-texture-label {
|
|
477
|
+
font-size: 0.75rem;
|
|
478
|
+
font-weight: 600;
|
|
479
|
+
line-height: 1.2;
|
|
480
|
+
}
|
|
481
|
+
|
|
482
|
+
.rg-results {
|
|
483
|
+
display: flex;
|
|
484
|
+
flex-direction: column;
|
|
485
|
+
gap: 1.5rem;
|
|
486
|
+
}
|
|
487
|
+
|
|
488
|
+
.rg-result-hero {
|
|
489
|
+
background: linear-gradient(135deg, var(--rg-primary), var(--rg-secondary));
|
|
490
|
+
border-radius: var(--rg-radius);
|
|
491
|
+
padding: 2rem;
|
|
492
|
+
color: var(--rg-bg-card);
|
|
493
|
+
box-shadow: var(--rg-shadow-lg);
|
|
494
|
+
position: relative;
|
|
495
|
+
overflow: hidden;
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
.rg-result-hero::before {
|
|
499
|
+
content: '';
|
|
500
|
+
position: absolute;
|
|
501
|
+
top: -50%;
|
|
502
|
+
left: -50%;
|
|
503
|
+
width: 200%;
|
|
504
|
+
height: 200%;
|
|
505
|
+
background: radial-gradient(circle, hsla(0deg, 0%, 100%, 0.1), transparent 60%);
|
|
506
|
+
pointer-events: none;
|
|
507
|
+
}
|
|
508
|
+
|
|
509
|
+
.rg-result-header {
|
|
510
|
+
display: flex;
|
|
511
|
+
justify-content: space-between;
|
|
512
|
+
align-items: center;
|
|
513
|
+
margin-bottom: 1.5rem;
|
|
514
|
+
position: relative;
|
|
515
|
+
z-index: 1;
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
.rg-result-label {
|
|
519
|
+
font-size: 0.75rem;
|
|
520
|
+
font-weight: 700;
|
|
521
|
+
text-transform: uppercase;
|
|
522
|
+
letter-spacing: 0.1em;
|
|
523
|
+
opacity: 0.8;
|
|
524
|
+
}
|
|
525
|
+
|
|
526
|
+
.rg-roux-type {
|
|
527
|
+
font-size: 0.75rem;
|
|
528
|
+
font-weight: 600;
|
|
529
|
+
background: hsla(0deg, 0%, 0%, 0.2);
|
|
530
|
+
padding: 0.5rem 1rem;
|
|
531
|
+
border-radius: 0.5rem;
|
|
532
|
+
text-transform: capitalize;
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
.rg-result-amounts {
|
|
536
|
+
display: flex;
|
|
537
|
+
align-items: center;
|
|
538
|
+
justify-content: space-around;
|
|
539
|
+
margin-bottom: 1.5rem;
|
|
540
|
+
position: relative;
|
|
541
|
+
z-index: 1;
|
|
542
|
+
text-align: center;
|
|
543
|
+
}
|
|
544
|
+
|
|
545
|
+
.rg-amount {
|
|
546
|
+
flex: 1;
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
.rg-amount-value {
|
|
550
|
+
font-size: 2.5rem;
|
|
551
|
+
font-weight: 800;
|
|
552
|
+
margin-bottom: 0.5rem;
|
|
553
|
+
line-height: 1;
|
|
554
|
+
}
|
|
555
|
+
|
|
556
|
+
.rg-amount-unit {
|
|
557
|
+
font-size: 0.75rem;
|
|
558
|
+
font-weight: 600;
|
|
559
|
+
text-transform: uppercase;
|
|
560
|
+
opacity: 0.8;
|
|
561
|
+
}
|
|
562
|
+
|
|
563
|
+
.rg-amount-plus {
|
|
564
|
+
font-size: 1.5rem;
|
|
565
|
+
opacity: 0.3;
|
|
566
|
+
margin: 0 1rem;
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
.rg-instructions-box {
|
|
570
|
+
background: hsla(0deg, 0%, 0%, 0.2);
|
|
571
|
+
border-radius: 0.75rem;
|
|
572
|
+
border: 1px solid hsla(0deg, 0%, 100%, 0.1);
|
|
573
|
+
padding: 1rem;
|
|
574
|
+
position: relative;
|
|
575
|
+
z-index: 1;
|
|
576
|
+
backdrop-filter: blur(4px);
|
|
577
|
+
}
|
|
578
|
+
|
|
579
|
+
.rg-instructions-header {
|
|
580
|
+
display: flex;
|
|
581
|
+
align-items: center;
|
|
582
|
+
gap: 0.5rem;
|
|
583
|
+
margin-bottom: 0.75rem;
|
|
584
|
+
color: hsl(38deg, 92%, 90%);
|
|
585
|
+
}
|
|
586
|
+
|
|
587
|
+
.rg-instructions-icon {
|
|
588
|
+
width: 1rem;
|
|
589
|
+
height: 1rem;
|
|
590
|
+
}
|
|
591
|
+
|
|
592
|
+
.rg-instructions-title {
|
|
593
|
+
font-size: 0.75rem;
|
|
594
|
+
font-weight: 700;
|
|
595
|
+
text-transform: uppercase;
|
|
596
|
+
letter-spacing: 0.1em;
|
|
597
|
+
}
|
|
598
|
+
|
|
599
|
+
.rg-instructions-text {
|
|
600
|
+
font-size: 0.875rem;
|
|
601
|
+
font-weight: 500;
|
|
602
|
+
line-height: 1.5;
|
|
603
|
+
color: hsl(38deg, 92%, 95%);
|
|
604
|
+
margin: 0;
|
|
605
|
+
}
|
|
606
|
+
|
|
607
|
+
.rg-sauce-info {
|
|
608
|
+
background: var(--rg-bg-app);
|
|
609
|
+
border: 1px solid var(--rg-border);
|
|
610
|
+
border-radius: var(--rg-radius);
|
|
611
|
+
padding: 1.5rem;
|
|
612
|
+
display: flex;
|
|
613
|
+
flex-direction: column;
|
|
614
|
+
gap: 1rem;
|
|
615
|
+
}
|
|
616
|
+
|
|
617
|
+
.rg-sauce-header {
|
|
618
|
+
display: flex;
|
|
619
|
+
align-items: center;
|
|
620
|
+
gap: 1rem;
|
|
621
|
+
margin-bottom: 0.5rem;
|
|
622
|
+
}
|
|
623
|
+
|
|
624
|
+
.rg-sauce-icon {
|
|
625
|
+
width: 2.5rem;
|
|
626
|
+
height: 2.5rem;
|
|
627
|
+
border-radius: 0.5rem;
|
|
628
|
+
background: hsl(38deg, 92%, 90%);
|
|
629
|
+
color: var(--rg-primary);
|
|
630
|
+
display: flex;
|
|
631
|
+
align-items: center;
|
|
632
|
+
justify-content: center;
|
|
633
|
+
flex-shrink: 0;
|
|
634
|
+
}
|
|
635
|
+
|
|
636
|
+
:global(.theme-dark) .rg-sauce-icon {
|
|
637
|
+
background: hsl(38deg, 92%, 12%);
|
|
638
|
+
}
|
|
639
|
+
|
|
640
|
+
.rg-icon-lg {
|
|
641
|
+
width: 1.25rem;
|
|
642
|
+
height: 1.25rem;
|
|
643
|
+
}
|
|
644
|
+
|
|
645
|
+
.rg-sauce-name {
|
|
646
|
+
font-size: 1rem;
|
|
647
|
+
font-weight: 700;
|
|
648
|
+
color: var(--rg-text-main);
|
|
649
|
+
flex: 1;
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
.rg-sauce-ratio {
|
|
653
|
+
font-size: 0.75rem;
|
|
654
|
+
font-weight: 700;
|
|
655
|
+
color: var(--rg-text-muted);
|
|
656
|
+
text-transform: uppercase;
|
|
657
|
+
letter-spacing: 0.05em;
|
|
658
|
+
white-space: nowrap;
|
|
659
|
+
}
|
|
660
|
+
|
|
661
|
+
.rg-sauce-tip {
|
|
662
|
+
font-size: 0.875rem;
|
|
663
|
+
font-weight: 500;
|
|
664
|
+
line-height: 1.6;
|
|
665
|
+
color: var(--rg-text-muted);
|
|
666
|
+
font-style: italic;
|
|
667
|
+
background: var(--rg-bg-card);
|
|
668
|
+
padding: 1rem;
|
|
669
|
+
border-radius: 0.75rem;
|
|
670
|
+
border: 1px solid var(--rg-border);
|
|
671
|
+
margin: 0;
|
|
672
|
+
}
|
|
194
673
|
</style>
|
|
@@ -105,6 +105,23 @@ export const content: ToolLocaleContent = {
|
|
|
105
105
|
blond: "Blond",
|
|
106
106
|
brown: "Brown",
|
|
107
107
|
beurreManied: "Beurre Manié (For final adjustments)",
|
|
108
|
+
recipeBechamel: "Béchamel",
|
|
109
|
+
recipeVeloute: "Velouté",
|
|
110
|
+
recipeEspagnole: "Espagnole",
|
|
111
|
+
recipeTomato: "Tomato Sauce",
|
|
112
|
+
tipBechamel: "Use cold milk. Add it gradually at first or all at once if you whisk vigorously.",
|
|
113
|
+
tipVeloute: "Use light poultry or fish stock. Let the roux smell like biscuits before adding the liquid.",
|
|
114
|
+
tipEspagnole: "For powerful dark sauces. The roux should be chocolate-colored but not burnt.",
|
|
115
|
+
tipTomato: "The roux will help give body and smoothness to the tomato's final texture.",
|
|
116
|
+
rouxWhiteLabel: "White Roux",
|
|
117
|
+
rouxBlondLabel: "Blond Roux",
|
|
118
|
+
rouxBrownLabel: "Brown Roux",
|
|
119
|
+
descWhite: "Cook only until it loses the raw flour smell. No color.",
|
|
120
|
+
descBlond: "Look for a toasted butter color and nutty aroma.",
|
|
121
|
+
descBrown: "Very low heat. Chocolate color. Note: requires +10% weight.",
|
|
122
|
+
timeWhite: "2-3 min",
|
|
123
|
+
timeBlond: "5-8 min",
|
|
124
|
+
timeBrown: "15-20 min",
|
|
108
125
|
},
|
|
109
126
|
faqTitle: "Frequently Asked Questions",
|
|
110
127
|
faq: [
|
|
@@ -304,5 +321,5 @@ export const content: ToolLocaleContent = {
|
|
|
304
321
|
html: "Our roux ratio calculator ensures your sauces always have the perfect technical consistency for every dish.",
|
|
305
322
|
},
|
|
306
323
|
],
|
|
307
|
-
schemas: [faqSchema, howToSchema, appSchema],
|
|
324
|
+
schemas: [faqSchema as any, howToSchema as any, appSchema as any],
|
|
308
325
|
};
|
|
@@ -227,7 +227,7 @@ export const content: ToolLocaleContent = {
|
|
|
227
227
|
type: 'diagnostic',
|
|
228
228
|
variant: 'warning',
|
|
229
229
|
title: '¿Salsa con Grumaje o Sabor a Harina?',
|
|
230
|
-
html: 'Si la salsa tiene grumos, probablemente añadiste líquido caliente a un roux caliente. Aplica el choque térmico (
|
|
230
|
+
html: 'Si la salsa tiene grumos, probablemente añadiste líquido caliente a un roux caliente. Aplica el choque térmico (liquide frío sobre roux caliente). Si sabe a harina, aumenta el tiempo de cocción inicial antes de añadir el líquido para gelatinizar el almidón correctamente.',
|
|
231
231
|
},
|
|
232
232
|
{
|
|
233
233
|
type: 'title',
|
|
@@ -284,13 +284,30 @@ export const content: ToolLocaleContent = {
|
|
|
284
284
|
butter: 'Mantequilla',
|
|
285
285
|
flour: 'Harina',
|
|
286
286
|
instructions: 'Instrucciones',
|
|
287
|
-
sauceName: 'Tipo de
|
|
287
|
+
sauceName: 'Tipo de Sauce',
|
|
288
288
|
ratio: 'Ratio',
|
|
289
289
|
chefTip: 'Tip del Chef',
|
|
290
290
|
white: 'Blanco',
|
|
291
291
|
blond: 'Rubio',
|
|
292
292
|
brown: 'Oscuro',
|
|
293
293
|
beurreManied: 'Beurre Manié (Si necesitas ajustar al final)',
|
|
294
|
+
recipeBechamel: "Bechamel",
|
|
295
|
+
recipeVeloute: "Velouté",
|
|
296
|
+
recipeEspagnole: "Española",
|
|
297
|
+
recipeTomato: "Salsa de Tomate",
|
|
298
|
+
tipBechamel: "Usa leche fría. Añádela gradualmente al principio o de golpe si bates fuerte.",
|
|
299
|
+
tipVeloute: "Usa fondo de ave o pescado. Deja que el roux huela a galleta antes de ligar.",
|
|
300
|
+
tipEspagnole: "Para salsas oscuras potentes. El roux debe estar color chocolate, pero sin quemarse.",
|
|
301
|
+
tipTomato: "El roux ayudará a dar cuerpo y suavidad a la textura final del tomate.",
|
|
302
|
+
rouxWhiteLabel: "Roux Blanco",
|
|
303
|
+
rouxBlondLabel: "Roux Rubio",
|
|
304
|
+
rouxBrownLabel: "Roux Oscuro",
|
|
305
|
+
descWhite: "Cocina solo hasta perder el olor a harina cruda. Sin color.",
|
|
306
|
+
descBlond: "Busca un color de mantequilla tostada y un aroma a nueces.",
|
|
307
|
+
descBrown: "Fuego muy suave. Color chocolate. Nota: requiere un 10% más de peso.",
|
|
308
|
+
timeWhite: "2-3 min",
|
|
309
|
+
timeBlond: "5-8 min",
|
|
310
|
+
timeBrown: "15-20 min",
|
|
294
311
|
},
|
|
295
|
-
schemas: [faqSchema, howToSchema, appSchema],
|
|
312
|
+
schemas: [faqSchema as any, howToSchema as any, appSchema as any],
|
|
296
313
|
};
|
|
@@ -101,6 +101,23 @@ export const content: ToolLocaleContent = {
|
|
|
101
101
|
blond: "Blond",
|
|
102
102
|
brown: "Brun",
|
|
103
103
|
beurreManied: "Beurre Manié (Pour ajuster à la fin)",
|
|
104
|
+
recipeBechamel: "Béchamel",
|
|
105
|
+
recipeVeloute: "Velouté",
|
|
106
|
+
recipeEspagnole: "Espagnole",
|
|
107
|
+
recipeTomato: "Sauce Tomate",
|
|
108
|
+
tipBechamel: "Utilisez du lait froid. Ajoutez-le progressivement au début ou d'un coup si vous fouettez vigoureusement.",
|
|
109
|
+
tipVeloute: "Utilisez un fond blanc. Le roux doit sentir le biscuit avant de lier au liquide.",
|
|
110
|
+
tipEspagnole: "Idéal pour les sauces brunes puissantes. Le roux doit être couleur chocolat, sans brûler.",
|
|
111
|
+
tipTomato: "Le roux aidera à donner du corps et de l'onctuosité à la texture finale de la tomate.",
|
|
112
|
+
rouxWhiteLabel: "Roux Blanc",
|
|
113
|
+
rouxBlondLabel: "Roux Blond",
|
|
114
|
+
rouxBrownLabel: "Roux Brun",
|
|
115
|
+
descWhite: "Cuire juste assez pour faire perdre l'odeur de farine crue. Sans coloration.",
|
|
116
|
+
descBlond: "Recherchez une couleur beurre noisette et un léger arôme de noix.",
|
|
117
|
+
descBrown: "Feu très doux. Couleur chocolate. Note : nécessite +10% de poids.",
|
|
118
|
+
timeWhite: "2-3 min",
|
|
119
|
+
timeBlond: "5-8 min",
|
|
120
|
+
timeBrown: "15-20 min",
|
|
104
121
|
},
|
|
105
122
|
faqTitle: "Questions Fréquentes sur le Roux",
|
|
106
123
|
faq: [
|
|
@@ -292,5 +309,5 @@ export const content: ToolLocaleContent = {
|
|
|
292
309
|
html: "Notre calculateur de roux garantit une consistance technique parfaite pour toutes vos créations culinaires.",
|
|
293
310
|
},
|
|
294
311
|
],
|
|
295
|
-
schemas: [faqSchema, howToSchema, appSchema],
|
|
312
|
+
schemas: [faqSchema as any, howToSchema as any, appSchema as any],
|
|
296
313
|
};
|