fermmap-shared 0.6.0 → 0.8.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/dist/main.cjs +145 -84
- package/dist/main.cjs.map +1 -1
- package/dist/main.css +46 -30
- package/dist/main.css.map +1 -1
- package/dist/module.css +46 -30
- package/dist/module.css.map +1 -1
- package/dist/module.mjs +146 -85
- package/dist/module.mjs.map +1 -1
- package/dist/types.d.ts +124 -114
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -2
package/dist/main.cjs
CHANGED
|
@@ -2,10 +2,10 @@ require("./main.css");
|
|
|
2
2
|
var $fs04y$reactjsxruntime = require("react/jsx-runtime");
|
|
3
3
|
var $fs04y$reactariacomponents = require("react-aria-components");
|
|
4
4
|
var $fs04y$react = require("react");
|
|
5
|
+
var $fs04y$reactintl = require("react-intl");
|
|
5
6
|
var $fs04y$reactspectrums2iconsSearch = require("@react-spectrum/s2/icons/Search");
|
|
6
7
|
var $fs04y$reactspectrums2iconsCheckmarkCircle = require("@react-spectrum/s2/icons/CheckmarkCircle");
|
|
7
8
|
var $fs04y$reactspectrums2iconsCloseCircle = require("@react-spectrum/s2/icons/CloseCircle");
|
|
8
|
-
var $fs04y$reactintl = require("react-intl");
|
|
9
9
|
var $fs04y$reactspectrums2iconsChevronDown = require("@react-spectrum/s2/icons/ChevronDown");
|
|
10
10
|
var $fs04y$reactspectrums2iconsChevronRight = require("@react-spectrum/s2/icons/ChevronRight");
|
|
11
11
|
var $fs04y$reactspectrums2iconsClose = require("@react-spectrum/s2/icons/Close");
|
|
@@ -161,7 +161,7 @@ const $e6839169613154d7$var$buttonStyles = function anonymous(props) {
|
|
|
161
161
|
rules += ' plc12';
|
|
162
162
|
} else {
|
|
163
163
|
if (props.variant === "navigation") rules += ' pMbOPsb12';
|
|
164
|
-
else if (props.variant === "danger") rules += '
|
|
164
|
+
else if (props.variant === "danger") rules += ' pLYrGTd12';
|
|
165
165
|
else if (props.variant === "secondary") rules += ' pMbOPsb12';
|
|
166
166
|
rules += ' plb12';
|
|
167
167
|
}
|
|
@@ -326,13 +326,80 @@ function $6ab530226d5e3153$export$2c73285ae9390cec({ label: label, type: type =
|
|
|
326
326
|
|
|
327
327
|
|
|
328
328
|
|
|
329
|
-
|
|
329
|
+
|
|
330
|
+
|
|
331
|
+
const $25d82f0a3d474ebc$var$I18nContext = /*#__PURE__*/ (0, $fs04y$react.createContext)(undefined);
|
|
332
|
+
function $25d82f0a3d474ebc$export$a54013f0d02a8f82({ children: children, messages: messages }) {
|
|
333
|
+
// For MVP, we'll start with just English
|
|
334
|
+
// Future: Add locale state management and persistence
|
|
335
|
+
const locale = 'en';
|
|
336
|
+
const setLocale = (newLocale)=>{
|
|
337
|
+
// Future: Implement locale switching with localStorage
|
|
338
|
+
console.log('Locale switching to:', newLocale);
|
|
339
|
+
};
|
|
340
|
+
// Defensive check: ensure messages are loaded
|
|
341
|
+
const currentMessages = messages?.[locale] || {};
|
|
342
|
+
if (!messages || Object.keys(currentMessages).length === 0) console.warn('I18nProvider: No messages loaded for locale:', locale);
|
|
343
|
+
return (0, $fs04y$reactjsxruntime.jsx)($25d82f0a3d474ebc$var$I18nContext.Provider, {
|
|
344
|
+
value: {
|
|
345
|
+
locale: locale,
|
|
346
|
+
setLocale: setLocale
|
|
347
|
+
},
|
|
348
|
+
children: (0, $fs04y$reactjsxruntime.jsx)((0, $fs04y$reactintl.IntlProvider), {
|
|
349
|
+
messages: currentMessages,
|
|
350
|
+
locale: locale,
|
|
351
|
+
defaultLocale: "en",
|
|
352
|
+
children: children
|
|
353
|
+
})
|
|
354
|
+
});
|
|
355
|
+
}
|
|
356
|
+
function $25d82f0a3d474ebc$export$3f3caade1c12f8c9() {
|
|
357
|
+
const context = (0, $fs04y$react.useContext)($25d82f0a3d474ebc$var$I18nContext);
|
|
358
|
+
if (context === undefined) throw new Error('useI18n must be used within an I18nProvider');
|
|
359
|
+
return context;
|
|
360
|
+
}
|
|
361
|
+
function $25d82f0a3d474ebc$export$5aebe9a147f4d146() {
|
|
362
|
+
return (0, $fs04y$reactintl.useIntl)();
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
|
|
366
|
+
|
|
367
|
+
/**
|
|
368
|
+
* Helper to translate default i18n keys or return custom labels as-is
|
|
369
|
+
*/ const $09cc2cf19505fddf$var$useTranslateLabel = ()=>{
|
|
370
|
+
const intl = (0, $25d82f0a3d474ebc$export$5aebe9a147f4d146)();
|
|
371
|
+
return (label)=>{
|
|
372
|
+
// If it's one of our default i18n keys, translate it
|
|
373
|
+
if (label === 'admin.common.ok' || label === 'admin.common.cancel') return intl.formatMessage({
|
|
374
|
+
id: label
|
|
375
|
+
});
|
|
376
|
+
// Otherwise return as-is (already translated by caller)
|
|
377
|
+
return label;
|
|
378
|
+
};
|
|
379
|
+
};
|
|
380
|
+
const $09cc2cf19505fddf$var$overlayStyles = function anonymous(props) {
|
|
381
|
+
let rules = " ";
|
|
382
|
+
rules += ' _Pb12';
|
|
383
|
+
rules += ' Wr12';
|
|
384
|
+
rules += ' _lr12';
|
|
385
|
+
rules += ' _Ar12';
|
|
386
|
+
rules += ' _zr12';
|
|
387
|
+
rules += ' g812';
|
|
388
|
+
rules += ' sd12';
|
|
389
|
+
rules += ' eb12';
|
|
390
|
+
rules += ' _Ca12';
|
|
391
|
+
rules += ' _Bb12';
|
|
392
|
+
if (props.isFromPopover) rules += ' _99NTVsc12';
|
|
393
|
+
return rules;
|
|
394
|
+
};
|
|
330
395
|
const $09cc2cf19505fddf$var$modalStyles = " gqlRAZb12 oe12 ne12 ke12 je12 _nLeasBb12 Th12 Qh12 Sh12 Rh12 Z9ar6Zb12 ZnA12 ZoQAax0d12 LQAax0d12 _ZBuPDyb12";
|
|
331
396
|
const $09cc2cf19505fddf$var$headingStyles = " uk12 uch12 udi12 uea12 ugb12 uhd12 uje12 u2NhKxcl12 uic12 -_6BNtrc-lcY1Ce12 vx12 we12 xe12 _xa12 wX0cczbd12 xX0cczbd12 _xX0cczba12 wezxGHbd12 xezxGHbd12 _xezxGHba12 wfe12 xfe12 _xfa12 wfX0cczbd12 xfX0cczbd12 _xfX0cczba12 wfezxGHbd12 xfezxGHbd12 _xfezxGHba12 _Fd12 _FezxGHba12 _FnuYUweb12 po12 Jy12 Gx12 Iy12 Hy12";
|
|
332
397
|
const $09cc2cf19505fddf$var$messageStyles = " uk12 uch12 udi12 uea12 ugb12 uhd12 uje12 u2NhKxcl12 uic12 -_6BNtrc-d12 vx12 wb12 xb12 _xa12 _Fb12 _FnuYUwec12 pMbOPsb12 Jy12 GA12 Iy12 Hy12";
|
|
333
398
|
const $09cc2cf19505fddf$var$buttonGroupStyles = " sd12 Ug12 qg12 _Cb12";
|
|
334
|
-
function $09cc2cf19505fddf$export$de466dd8317b0b75({ isOpen: isOpen, onClose: onClose, title: title, message: message, variant: variant = 'info', confirmLabel: confirmLabel = '
|
|
399
|
+
function $09cc2cf19505fddf$export$de466dd8317b0b75({ isFromPopover: isFromPopover = false, isOpen: isOpen, onClose: onClose, title: title, message: message, variant: variant = 'info', confirmLabel: confirmLabel = 'admin.common.ok', cancelLabel: cancelLabel = 'admin.common.cancel', onConfirm: onConfirm, showCancel: showCancel = true, children: children }) {
|
|
335
400
|
const [isProcessing, setIsProcessing] = (0, $fs04y$react.useState)(false);
|
|
401
|
+
const translateLabel = $09cc2cf19505fddf$var$useTranslateLabel();
|
|
402
|
+
const intl = (0, $25d82f0a3d474ebc$export$5aebe9a147f4d146)();
|
|
336
403
|
const handleConfirm = async ()=>{
|
|
337
404
|
setIsProcessing(true);
|
|
338
405
|
try {
|
|
@@ -347,7 +414,9 @@ function $09cc2cf19505fddf$export$de466dd8317b0b75({ isOpen: isOpen, onClose: on
|
|
|
347
414
|
return (0, $fs04y$reactjsxruntime.jsx)((0, $fs04y$reactariacomponents.ModalOverlay), {
|
|
348
415
|
isOpen: isOpen,
|
|
349
416
|
onOpenChange: (open)=>!open && onClose(),
|
|
350
|
-
className: $09cc2cf19505fddf$var$overlayStyles
|
|
417
|
+
className: $09cc2cf19505fddf$var$overlayStyles({
|
|
418
|
+
isFromPopover: isFromPopover
|
|
419
|
+
}),
|
|
351
420
|
children: (0, $fs04y$reactjsxruntime.jsx)((0, $fs04y$reactariacomponents.Modal), {
|
|
352
421
|
className: $09cc2cf19505fddf$var$modalStyles,
|
|
353
422
|
children: (0, $fs04y$reactjsxruntime.jsx)((0, $fs04y$reactariacomponents.Dialog), {
|
|
@@ -374,14 +443,16 @@ function $09cc2cf19505fddf$export$de466dd8317b0b75({ isOpen: isOpen, onClose: on
|
|
|
374
443
|
size: "M",
|
|
375
444
|
onPress: close,
|
|
376
445
|
isDisabled: isProcessing,
|
|
377
|
-
children: cancelLabel
|
|
446
|
+
children: translateLabel(cancelLabel)
|
|
378
447
|
}),
|
|
379
448
|
(0, $fs04y$reactjsxruntime.jsx)((0, $e6839169613154d7$export$353f5b6fc5456de1), {
|
|
380
449
|
variant: buttonVariant,
|
|
381
450
|
size: "M",
|
|
382
451
|
onPress: handleConfirm,
|
|
383
452
|
isDisabled: isProcessing,
|
|
384
|
-
children: isProcessing ?
|
|
453
|
+
children: isProcessing ? intl.formatMessage({
|
|
454
|
+
id: 'admin.common.processing'
|
|
455
|
+
}) : translateLabel(confirmLabel)
|
|
385
456
|
})
|
|
386
457
|
]
|
|
387
458
|
})
|
|
@@ -391,10 +462,12 @@ function $09cc2cf19505fddf$export$de466dd8317b0b75({ isOpen: isOpen, onClose: on
|
|
|
391
462
|
})
|
|
392
463
|
});
|
|
393
464
|
}
|
|
394
|
-
function $09cc2cf19505fddf$export$a551a871839880f9({ isOpen: isOpen, onClose: onClose, title: title, message: message, inputLabel: inputLabel, inputPlaceholder: inputPlaceholder = '', confirmLabel: confirmLabel = '
|
|
465
|
+
function $09cc2cf19505fddf$export$a551a871839880f9({ isOpen: isOpen, onClose: onClose, title: title, message: message, inputLabel: inputLabel, inputPlaceholder: inputPlaceholder = '', confirmLabel: confirmLabel = 'admin.common.ok', cancelLabel: cancelLabel = 'admin.common.cancel', onConfirm: onConfirm, validator: validator }) {
|
|
395
466
|
const [value, setValue] = (0, $fs04y$react.useState)('');
|
|
396
467
|
const [error, setError] = (0, $fs04y$react.useState)(null);
|
|
397
468
|
const [isProcessing, setIsProcessing] = (0, $fs04y$react.useState)(false);
|
|
469
|
+
const translateLabel = $09cc2cf19505fddf$var$useTranslateLabel();
|
|
470
|
+
const intl = (0, $25d82f0a3d474ebc$export$5aebe9a147f4d146)();
|
|
398
471
|
const handleConfirm = async ()=>{
|
|
399
472
|
// Validate
|
|
400
473
|
if (validator) {
|
|
@@ -463,14 +536,16 @@ function $09cc2cf19505fddf$export$a551a871839880f9({ isOpen: isOpen, onClose: on
|
|
|
463
536
|
close();
|
|
464
537
|
},
|
|
465
538
|
isDisabled: isProcessing,
|
|
466
|
-
children: cancelLabel
|
|
539
|
+
children: translateLabel(cancelLabel)
|
|
467
540
|
}),
|
|
468
541
|
(0, $fs04y$reactjsxruntime.jsx)((0, $e6839169613154d7$export$353f5b6fc5456de1), {
|
|
469
542
|
variant: "primary",
|
|
470
543
|
size: "M",
|
|
471
544
|
onPress: handleConfirm,
|
|
472
545
|
isDisabled: isProcessing,
|
|
473
|
-
children: isProcessing ?
|
|
546
|
+
children: isProcessing ? intl.formatMessage({
|
|
547
|
+
id: 'admin.common.processing'
|
|
548
|
+
}) : translateLabel(confirmLabel)
|
|
474
549
|
})
|
|
475
550
|
]
|
|
476
551
|
})
|
|
@@ -1253,43 +1328,6 @@ function $5f63bea78c5270d1$export$37acb3580601e69a({ variant: variant, children:
|
|
|
1253
1328
|
|
|
1254
1329
|
|
|
1255
1330
|
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
const $25d82f0a3d474ebc$var$I18nContext = /*#__PURE__*/ (0, $fs04y$react.createContext)(undefined);
|
|
1259
|
-
function $25d82f0a3d474ebc$export$a54013f0d02a8f82({ children: children, messages: messages }) {
|
|
1260
|
-
// For MVP, we'll start with just English
|
|
1261
|
-
// Future: Add locale state management and persistence
|
|
1262
|
-
const locale = 'en';
|
|
1263
|
-
const setLocale = (newLocale)=>{
|
|
1264
|
-
// Future: Implement locale switching with localStorage
|
|
1265
|
-
console.log('Locale switching to:', newLocale);
|
|
1266
|
-
};
|
|
1267
|
-
// Defensive check: ensure messages are loaded
|
|
1268
|
-
const currentMessages = messages?.[locale] || {};
|
|
1269
|
-
if (!messages || Object.keys(currentMessages).length === 0) console.warn('I18nProvider: No messages loaded for locale:', locale);
|
|
1270
|
-
return (0, $fs04y$reactjsxruntime.jsx)($25d82f0a3d474ebc$var$I18nContext.Provider, {
|
|
1271
|
-
value: {
|
|
1272
|
-
locale: locale,
|
|
1273
|
-
setLocale: setLocale
|
|
1274
|
-
},
|
|
1275
|
-
children: (0, $fs04y$reactjsxruntime.jsx)((0, $fs04y$reactintl.IntlProvider), {
|
|
1276
|
-
messages: currentMessages,
|
|
1277
|
-
locale: locale,
|
|
1278
|
-
defaultLocale: "en",
|
|
1279
|
-
children: children
|
|
1280
|
-
})
|
|
1281
|
-
});
|
|
1282
|
-
}
|
|
1283
|
-
function $25d82f0a3d474ebc$export$3f3caade1c12f8c9() {
|
|
1284
|
-
const context = (0, $fs04y$react.useContext)($25d82f0a3d474ebc$var$I18nContext);
|
|
1285
|
-
if (context === undefined) throw new Error('useI18n must be used within an I18nProvider');
|
|
1286
|
-
return context;
|
|
1287
|
-
}
|
|
1288
|
-
function $25d82f0a3d474ebc$export$5aebe9a147f4d146() {
|
|
1289
|
-
return (0, $fs04y$reactintl.useIntl)();
|
|
1290
|
-
}
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
1331
|
const $5a568b5eb65bfe76$var$closeButtonStyles = function anonymous(props) {
|
|
1294
1332
|
let rules = " ";
|
|
1295
1333
|
if (props.isFocusVisible) rules += ' _Lf12';
|
|
@@ -1626,7 +1664,7 @@ function $3764d8bc3c612a35$export$944aceb4f8c89f10({ items: items, ...props }) {
|
|
|
1626
1664
|
children: (0, $fs04y$reactjsxruntime.jsx)($3764d8bc3c612a35$var$DisclosureContents, {
|
|
1627
1665
|
...item
|
|
1628
1666
|
}, `${item.id}-contents`)
|
|
1629
|
-
}))
|
|
1667
|
+
}, item.id))
|
|
1630
1668
|
});
|
|
1631
1669
|
}
|
|
1632
1670
|
const $3764d8bc3c612a35$var$DisclosureContents = (item)=>{
|
|
@@ -1689,13 +1727,13 @@ const $3764d8bc3c612a35$var$DisclosureContents = (item)=>{
|
|
|
1689
1727
|
marker: 'var(--ginger-600)',
|
|
1690
1728
|
badge: 'ginger'
|
|
1691
1729
|
},
|
|
1692
|
-
|
|
1730
|
+
protein: {
|
|
1693
1731
|
marker: 'var(--berry-500)',
|
|
1694
1732
|
badge: 'berry'
|
|
1695
1733
|
},
|
|
1696
|
-
|
|
1697
|
-
marker: 'var(--
|
|
1698
|
-
badge: '
|
|
1734
|
+
fruit: {
|
|
1735
|
+
marker: 'var(--peach-500)',
|
|
1736
|
+
badge: 'peach'
|
|
1699
1737
|
},
|
|
1700
1738
|
condiment: {
|
|
1701
1739
|
marker: 'var(--plum-500)',
|
|
@@ -1959,12 +1997,17 @@ const $e0bb5e496bf3f32a$var$linkStyles = function anonymous(props) {
|
|
|
1959
1997
|
if (props.isPressed) rules += ' ppxXPsb12';
|
|
1960
1998
|
else if (props.isHovered) rules += ' ppxXPsb12';
|
|
1961
1999
|
else rules += ' pMbOPsb12';
|
|
2000
|
+
if (props.isQuiet) rules += ' _Xa12';
|
|
2001
|
+
else {
|
|
2002
|
+
rules += ' _Xb12';
|
|
2003
|
+
rules += ' __Va12';
|
|
2004
|
+
}
|
|
1962
2005
|
rules += ' ry12';
|
|
1963
2006
|
if (props.isHovered) rules += ' g912';
|
|
1964
2007
|
else rules += ' g912';
|
|
1965
2008
|
return rules;
|
|
1966
2009
|
};
|
|
1967
|
-
function $e0bb5e496bf3f32a$export$a6c7ac8248d6e38a({ children: children, href: href, isExternal: isExternal, className: className, ...props }) {
|
|
2010
|
+
function $e0bb5e496bf3f32a$export$a6c7ac8248d6e38a({ children: children, href: href, isExternal: isExternal, isQuiet: isQuiet = false, className: className, ...props }) {
|
|
1968
2011
|
// Automatically detect external links if not specified
|
|
1969
2012
|
const isExternalLink = isExternal ?? (href?.toString().startsWith('http://') || href?.toString().startsWith('https://'));
|
|
1970
2013
|
const externalProps = isExternalLink ? {
|
|
@@ -1975,7 +2018,9 @@ function $e0bb5e496bf3f32a$export$a6c7ac8248d6e38a({ children: children, href: h
|
|
|
1975
2018
|
...props,
|
|
1976
2019
|
...externalProps,
|
|
1977
2020
|
href: href,
|
|
1978
|
-
className: className || $e0bb5e496bf3f32a$var$linkStyles
|
|
2021
|
+
className: className || $e0bb5e496bf3f32a$var$linkStyles({
|
|
2022
|
+
isQuiet: isQuiet
|
|
2023
|
+
}),
|
|
1979
2024
|
children: children
|
|
1980
2025
|
});
|
|
1981
2026
|
}
|
|
@@ -3059,14 +3104,15 @@ function $e17150d3e28b39fb$export$64133607978931b({ sourceCategory: sourceCatego
|
|
|
3059
3104
|
|
|
3060
3105
|
|
|
3061
3106
|
|
|
3062
|
-
const $22c620249a5b4412$var$cardStyles = " gqlRAZb12 oe12 ne12 ke12 je12 Th12 Qh12 Sh12 Rh12 _kb12 hb12 mb12 lb12 _jf12 i05TOsb12 sd12 _ta12
|
|
3107
|
+
const $22c620249a5b4412$var$cardStyles = " gqlRAZb12 oe12 ne12 ke12 je12 Th12 Qh12 Sh12 Rh12 _kb12 hb12 mb12 lb12 _jf12 i05TOsb12 sd12 _ta12 Ul12 ql12 eb12 _Wa12";
|
|
3063
3108
|
const $22c620249a5b4412$var$cardTitleStyles = " uk12 uch12 udi12 uea12 ugb12 uhd12 uje12 u2NhKxcl12 uic12 -_6BNtrc-e12 vx12 wd12 xd12 _xa12 wX0cczbc12 xX0cczbc12 _xX0cczba12 wfd12 xfd12 _xfa12 wfX0cczbc12 xfX0cczbc12 _xfX0cczba12 _Fd12 _FezxGHba12 _FnuYUweb12 pMbOPsb12 Jy12 Gy12 Iy12 Hy12";
|
|
3064
3109
|
const $22c620249a5b4412$var$cardValueStyles = " uk12 uch12 udi12 uea12 ugb12 uhd12 uje12 u2NhKxcl12 uic12 -_6BNtrc-snabcc12 vx12 we12 xe12 _xa12 wX0cczbd12 xX0cczbd12 _xX0cczba12 wezxGHbd12 xezxGHbd12 _xezxGHba12 wfe12 xfe12 _xfa12 wfX0cczbd12 xfX0cczbd12 _xfX0cczba12 wfezxGHbd12 xfezxGHbd12 _xfezxGHba12 _Fd12 _FezxGHba12 _FnuYUweb12 pMbOPsb12";
|
|
3065
3110
|
const $22c620249a5b4412$var$cardDescStyles = " uk12 uch12 udi12 uea12 ugb12 uhd12 uje12 u2NhKxcl12 uic12 -_6BNtrc-d12 vx12 wb12 xb12 _xa12 _Fb12 _FnuYUwec12 pMbOPsb12 Jy12 Gy12 Iy12 Hy12";
|
|
3066
|
-
const $22c620249a5b4412$var$listPreviewStyles = " uk12 uch12 udi12 uea12 ugb12 uhd12 uje12 u2NhKxcl12 uic12 -_6BNtrc-c12 vx12 wb12 xb12 _xa12 _Fb12 _FnuYUwec12 pMbOPsb12
|
|
3111
|
+
const $22c620249a5b4412$var$listPreviewStyles = " sd12 _tc12 Ul12 ql12 eb12 uk12 uch12 udi12 uea12 ugb12 uhd12 uje12 u2NhKxcl12 uic12 -_6BNtrc-c12 vx12 wb12 xb12 _xa12 _Fb12 _FnuYUwec12 pMbOPsb12 Jy12 Gy12 Iy12 Hy12";
|
|
3067
3112
|
const $22c620249a5b4412$var$listBoxStyles = " Tp12 Qp12 Sp12 Rp12";
|
|
3068
|
-
const $22c620249a5b4412$var$listBoxItemStyles = " uk12 uch12 udi12 uea12 ugb12 uhd12 uje12 u2NhKxcl12 uic12 -_6BNtrc-d12 vx12 wb12 xb12 _xa12 _Fb12 _FnuYUwec12 pMbOPsb12 St12 Rt12 Tp12 Qp12 oa12 na12 ka12 ja12 g912";
|
|
3069
|
-
|
|
3113
|
+
const $22c620249a5b4412$var$listBoxItemStyles = " uk12 uch12 udi12 uea12 ugb12 uhd12 uje12 u2NhKxcl12 uic12 -_6BNtrc-d12 vx12 wb12 xb12 _xa12 _Fb12 _FnuYUwec12 pMbOPsb12 St12 Rt12 Tp12 Qp12 oa12 na12 ka12 ja12 g912 sd12 eb12 _Ce12 Ue12 qe12";
|
|
3114
|
+
const $22c620249a5b4412$var$actionsContainerStyles = " sd12 Ue12 qe12 _Ca12";
|
|
3115
|
+
function $22c620249a5b4412$export$b5cddb1a6bf990a0({ title: title, value: value, description: description, list: list, listTitle: listTitle, actions: actions, listItemActions: listItemActions }) {
|
|
3070
3116
|
const intl = (0, $25d82f0a3d474ebc$export$5aebe9a147f4d146)();
|
|
3071
3117
|
return (0, $fs04y$reactjsxruntime.jsxs)("div", {
|
|
3072
3118
|
className: $22c620249a5b4412$var$cardStyles,
|
|
@@ -3083,28 +3129,39 @@ function $22c620249a5b4412$export$b5cddb1a6bf990a0({ title: title, value: value,
|
|
|
3083
3129
|
className: $22c620249a5b4412$var$cardDescStyles,
|
|
3084
3130
|
children: description
|
|
3085
3131
|
}),
|
|
3086
|
-
list && list.length > 0 && (0, $fs04y$reactjsxruntime.
|
|
3132
|
+
list && list.length > 0 && (0, $fs04y$reactjsxruntime.jsxs)("div", {
|
|
3087
3133
|
className: $22c620249a5b4412$var$listPreviewStyles,
|
|
3088
|
-
children:
|
|
3089
|
-
|
|
3090
|
-
|
|
3091
|
-
|
|
3092
|
-
|
|
3093
|
-
|
|
3094
|
-
|
|
3095
|
-
|
|
3096
|
-
|
|
3097
|
-
|
|
3098
|
-
|
|
3099
|
-
|
|
3100
|
-
|
|
3101
|
-
|
|
3102
|
-
|
|
3103
|
-
|
|
3134
|
+
children: [
|
|
3135
|
+
(0, $fs04y$reactjsxruntime.jsxs)((0, $fs04y$reactariacomponents.DialogTrigger), {
|
|
3136
|
+
children: [
|
|
3137
|
+
(0, $fs04y$reactjsxruntime.jsx)((0, $e6839169613154d7$export$353f5b6fc5456de1), {
|
|
3138
|
+
variant: "navigation",
|
|
3139
|
+
children: intl.formatMessage({
|
|
3140
|
+
id: 'statCard.viewAll'
|
|
3141
|
+
})
|
|
3142
|
+
}),
|
|
3143
|
+
(0, $fs04y$reactjsxruntime.jsx)((0, $d1460dbc559e1751$export$5b6b19405a83ff9d), {
|
|
3144
|
+
title: listTitle || title,
|
|
3145
|
+
children: (0, $fs04y$reactjsxruntime.jsx)((0, $fs04y$reactariacomponents.ListBox), {
|
|
3146
|
+
className: $22c620249a5b4412$var$listBoxStyles,
|
|
3147
|
+
children: list.map((item)=>(0, $fs04y$reactjsxruntime.jsxs)((0, $fs04y$reactariacomponents.ListBoxItem), {
|
|
3148
|
+
className: $22c620249a5b4412$var$listBoxItemStyles,
|
|
3149
|
+
children: [
|
|
3150
|
+
(0, $fs04y$reactjsxruntime.jsx)("span", {
|
|
3151
|
+
children: item.name
|
|
3152
|
+
}),
|
|
3153
|
+
listItemActions?.(item)
|
|
3154
|
+
]
|
|
3155
|
+
}, item.id))
|
|
3156
|
+
})
|
|
3104
3157
|
})
|
|
3105
|
-
|
|
3106
|
-
|
|
3107
|
-
|
|
3158
|
+
]
|
|
3159
|
+
}),
|
|
3160
|
+
actions && (0, $fs04y$reactjsxruntime.jsx)("div", {
|
|
3161
|
+
className: $22c620249a5b4412$var$actionsContainerStyles,
|
|
3162
|
+
children: actions
|
|
3163
|
+
})
|
|
3164
|
+
]
|
|
3108
3165
|
})
|
|
3109
3166
|
]
|
|
3110
3167
|
});
|
|
@@ -3865,7 +3922,7 @@ function $8f5795e91d23efab$export$973ca22476b0e05f() {
|
|
|
3865
3922
|
|
|
3866
3923
|
// Export all locale message files for i18n
|
|
3867
3924
|
var $c6f2b9804e791467$exports = {};
|
|
3868
|
-
$c6f2b9804e791467$exports = JSON.parse("{\"app.title\":\"
|
|
3925
|
+
$c6f2b9804e791467$exports = JSON.parse("{\"app.title\":\"World Ferments\",\"app.subtitle\":\"Explore Fermented Foods Around the World\",\"home.hello\":\"Hello World!\",\"home.description\":\"Next.js is running successfully with React Aria Components and React Spectrum S2. The foundation is set!\",\"home.checkHealth\":\"Check API Health\",\"home.healthChecking\":\"Checking health...\",\"home.healthClickPrompt\":\"Click the button to check API health\",\"health.status\":\"Status\",\"health.database\":\"Database\",\"health.time\":\"Time\",\"health.error\":\"Error\",\"health.siteUrls\":\"Site URLs\",\"health.apiEndpoints\":\"API Endpoints\",\"theme.toggle.label\":\"Dark Mode\",\"theme.toggle.ariaLabel\":\"Toggle dark mode\",\"features.map\":\"Coming soon: Interactive map with fermented foods\",\"features.browse\":\"Browse by region, category, and culture\",\"ferments.subtitle\":\"Explore and discover fermented foods from around the world\",\"ferments.loading\":\"Loading...\",\"ferments.count\":\"{count, plural, =0 {No ferments found} one {# ferment found} other {# ferments found}}\",\"ferments.filter.category\":\"Category\",\"ferments.filter.country\":\"Country\",\"ferments.filter.allCategories\":\"All Categories\",\"ferments.filter.allCountries\":\"All Countries\",\"ferments.filter.all\":\"All\",\"ferments.filter.alphabetLabel\":\"Filter by first letter\",\"ferments.filter.clear\":\"Clear Filters\",\"ferments.filter.loading\":\"Loading filters...\",\"ferments.filter.category.ariaLabel\":\"Filter by category\",\"ferments.filter.country.ariaLabel\":\"Filter by country\",\"ferments.search.placeholder\":\"Search ferments...\",\"ferments.search.label\":\"Search\",\"ferments.search.ariaLabel\":\"Search ferments by name or description\",\"ferments.search.clear\":\"Clear\",\"ferment.detail.backToBrowse\":\"Back to Browse\",\"ferment.detail.loading\":\"Loading ferment details...\",\"ferment.detail.notFound\":\"Ferment not found\",\"ferment.detail.error\":\"Failed to load ferment details\",\"ferment.detail.country\":\"Country\",\"ferment.detail.region\":\"Region\",\"ferment.detail.category\":\"Category\",\"ferment.detail.ingredients\":\"Ingredients\",\"ferment.detail.learnMore\":\"Learn More\",\"ferment.detail.viewSource\":\"View Source\",\"ferment.detail.location\":\"Location\",\"ferment.detail.coordinates\":\"Coordinates\",\"ferment.detail.relatedFerments\":\"Related Ferments\",\"ferment.detail.close\":\"Close\",\"map.loading\":\"Loading map...\",\"map.error.title\":\"Map Error\",\"map.error.load\":\"Failed to load ferments for map\",\"map.error.noToken\":\"Mapbox token not configured. Please set NEXT_PUBLIC_MAPBOX_TOKEN in your environment.\",\"map.error.init\":\"Failed to initialize map\",\"map.ariaLabel\":\"Interactive map showing fermented foods around the world\",\"map.marker.label\":\"{name} from {country}\",\"map.popup.viewDetails\":\"View details\",\"nav.map\":\"Map\",\"nav.list\":\"List\",\"nav.viewToggle.ariaLabel\":\"Switch between map and list views\",\"nav.about\":\"About\",\"common.back\":\"Back\",\"common.loading\":\"Loading...\",\"common.saving\":\"Saving...\",\"filterTabs.ariaLabel\":\"Filter options\",\"statCard.viewAll\":\"View all\",\"ferments.category.all\":\"All Categories\",\"ferments.category.vegetable\":\"Vegetable\",\"ferments.category.dairy\":\"Dairy\",\"ferments.category.grain\":\"Grain\",\"ferments.category.legume\":\"Legume\",\"ferments.category.beverage\":\"Beverage\",\"ferments.category.condiment\":\"Condiment\",\"ferments.category.protein\":\"Protein\",\"ferments.category.fruit\":\"Fruit\",\"ferments.category.other\":\"Other\",\"sources.content_type.about\":\"About\",\"sources.content_type.history\":\"History\",\"sources.content_type.recipes\":\"Recipes\",\"sources.content_type.tools\":\"Tools & Equipment\",\"sources.content_type.starters\":\"Starters & Cultures\",\"sources.content_type.culture\":\"Cultural Context\",\"sources.content_type.scientific\":\"Scientific Research\",\"sources.content_type.commercial\":\"Commercial Products\",\"sources.content_type.course\":\"Courses & Tutorials\",\"sources.content_type.general\":\"General Information\"}");
|
|
3869
3926
|
|
|
3870
3927
|
|
|
3871
3928
|
const $c5d9f7a2bd6c13d4$export$d0451c6199f2a163 = {
|
|
@@ -3887,10 +3944,11 @@ $parcel$export($c5b52867831f5132$exports, "filtersToQueryParams", () => $c5b5286
|
|
|
3887
3944
|
*/ const $c5b52867831f5132$export$42d0f19526e5d9da = {
|
|
3888
3945
|
searchQuery: '',
|
|
3889
3946
|
category: null,
|
|
3890
|
-
country: null
|
|
3947
|
+
country: null,
|
|
3948
|
+
letterFilter: null
|
|
3891
3949
|
};
|
|
3892
3950
|
function $c5b52867831f5132$export$a15c90bdf31a4ff3(filters) {
|
|
3893
|
-
return filters.searchQuery.trim() !== '' || filters.category !== null || filters.country !== null;
|
|
3951
|
+
return filters.searchQuery.trim() !== '' || filters.category !== null || filters.country !== null || filters.letterFilter !== null && filters.letterFilter !== 'all';
|
|
3894
3952
|
}
|
|
3895
3953
|
function $c5b52867831f5132$export$d0e6b6bfede2a57() {
|
|
3896
3954
|
return {
|
|
@@ -3907,6 +3965,7 @@ function $c5b52867831f5132$export$5d7f9913734d3d5f(filters) {
|
|
|
3907
3965
|
const params = {};
|
|
3908
3966
|
if (filters.category) params.category = filters.category;
|
|
3909
3967
|
if (filters.country) params.country = filters.country;
|
|
3968
|
+
if (filters.letterFilter && filters.letterFilter !== 'all') params.letter = filters.letterFilter;
|
|
3910
3969
|
return params;
|
|
3911
3970
|
}
|
|
3912
3971
|
|
|
@@ -3956,14 +4015,16 @@ const $53c8911eec26a318$export$457d6d213bf79459 = ()=>({
|
|
|
3956
4015
|
|
|
3957
4016
|
/**
|
|
3958
4017
|
* Ferment category values
|
|
4018
|
+
* Sorted alphabetically with 'other' last
|
|
3959
4019
|
*/ const $dfdc7d5751a79ddf$export$90169ffd4a6ec1f5 = [
|
|
3960
|
-
'
|
|
4020
|
+
'beverage',
|
|
4021
|
+
'condiment',
|
|
3961
4022
|
'dairy',
|
|
4023
|
+
'fruit',
|
|
3962
4024
|
'grain',
|
|
3963
4025
|
'legume',
|
|
3964
|
-
'beverage',
|
|
3965
|
-
'condiment',
|
|
3966
4026
|
'protein',
|
|
4027
|
+
'vegetable',
|
|
3967
4028
|
'other'
|
|
3968
4029
|
];
|
|
3969
4030
|
const $dfdc7d5751a79ddf$export$2002190b63448c99 = [
|