Rocky_Mountain_Vending/.pnpm-store/v10/files/b6/ec94415379969fa7eac148fa419d1822bbe280acc588172c9b1873fff6eec110896a6ff2ca54d15a689104542564d23091a219aa7bbadbb6b449eb7da2f08e
DMleadgen 46d973904b
Initial commit: Rocky Mountain Vending website
Next.js website for Rocky Mountain Vending company featuring:
- Product catalog with Stripe integration
- Service areas and parts pages
- Admin dashboard with Clerk authentication
- SEO optimized pages with JSON-LD structured data

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 16:22:15 -07:00

227 lines
5.4 KiB
Text
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { buildLocalizeFn } from "../../_lib/buildLocalizeFn.js";
const numberValues = {
locale: {
1: "१",
2: "२",
3: "३",
4: "४",
5: "५",
6: "६",
7: "७",
8: "८",
9: "९",
0: "",
},
number: {
"१": "1",
"२": "2",
"३": "3",
"४": "4",
"५": "5",
"६": "6",
"७": "7",
"८": "8",
"९": "9",
"": "0",
},
};
// CLDR #1585 - #1592
const eraValues = {
narrow: ["ईसा-पूर्व", "ईस्वी"],
abbreviated: ["ईसा-पूर्व", "ईस्वी"],
wide: ["ईसा-पूर्व", "ईसवी सन"],
};
// CLDR #1593 - #1616
const quarterValues = {
narrow: ["1", "2", "3", "4"],
abbreviated: ["ति1", "ति2", "ति3", "ति4"],
wide: ["पहली तिमाही", "दूसरी तिमाही", "तीसरी तिमाही", "चौथी तिमाही"],
};
// Note: in English, the names of days of the week and months are capitalized.
// If you are making a new locale based on this one, check if the same is true for the language you're working on.
// Generally, formatted dates should look like they are in the middle of a sentence,
// e.g. in Spanish language the weekdays and months should be in the lowercase.
// https://www.unicode.org/cldr/charts/32/summary/hi.html
// CLDR #1617 - #1688
const monthValues = {
narrow: [
"ज",
"फ़",
"मा",
"अ",
"मई",
"जू",
"जु",
"अग",
"सि",
"अक्टू",
"न",
"दि",
],
abbreviated: [
"जन",
"फ़र",
"मार्च",
"अप्रैल",
"मई",
"जून",
"जुल",
"अग",
"सित",
"अक्टू",
"नव",
"दिस",
],
wide: [
"जनवरी",
"फ़रवरी",
"मार्च",
"अप्रैल",
"मई",
"जून",
"जुलाई",
"अगस्त",
"सितंबर",
"अक्टूबर",
"नवंबर",
"दिसंबर",
],
};
// CLDR #1689 - #1744
const dayValues = {
narrow: ["र", "सो", "मं", "बु", "गु", "शु", "श"],
short: ["र", "सो", "मं", "बु", "गु", "शु", "श"],
abbreviated: ["रवि", "सोम", "मंगल", "बुध", "गुरु", "शुक्र", "शनि"],
wide: [
"रविवार",
"सोमवार",
"मंगलवार",
"बुधवार",
"गुरुवार",
"शुक्रवार",
"शनिवार",
],
};
const dayPeriodValues = {
narrow: {
am: "पूर्वाह्न",
pm: "अपराह्न",
midnight: "मध्यरात्रि",
noon: "दोपहर",
morning: "सुबह",
afternoon: "दोपहर",
evening: "शाम",
night: "रात",
},
abbreviated: {
am: "पूर्वाह्न",
pm: "अपराह्न",
midnight: "मध्यरात्रि",
noon: "दोपहर",
morning: "सुबह",
afternoon: "दोपहर",
evening: "शाम",
night: "रात",
},
wide: {
am: "पूर्वाह्न",
pm: "अपराह्न",
midnight: "मध्यरात्रि",
noon: "दोपहर",
morning: "सुबह",
afternoon: "दोपहर",
evening: "शाम",
night: "रात",
},
};
const formattingDayPeriodValues = {
narrow: {
am: "पूर्वाह्न",
pm: "अपराह्न",
midnight: "मध्यरात्रि",
noon: "दोपहर",
morning: "सुबह",
afternoon: "दोपहर",
evening: "शाम",
night: "रात",
},
abbreviated: {
am: "पूर्वाह्न",
pm: "अपराह्न",
midnight: "मध्यरात्रि",
noon: "दोपहर",
morning: "सुबह",
afternoon: "दोपहर",
evening: "शाम",
night: "रात",
},
wide: {
am: "पूर्वाह्न",
pm: "अपराह्न",
midnight: "मध्यरात्रि",
noon: "दोपहर",
morning: "सुबह",
afternoon: "दोपहर",
evening: "शाम",
night: "रात",
},
};
const ordinalNumber = (dirtyNumber, _options) => {
const number = Number(dirtyNumber);
return numberToLocale(number);
};
export function localeToNumber(locale) {
const enNumber = locale.toString().replace(/[१२३४५६७८९०]/g, function (match) {
return numberValues.number[match];
});
return Number(enNumber);
}
export function numberToLocale(enNumber) {
return enNumber.toString().replace(/\d/g, function (match) {
return numberValues.locale[match];
});
}
export const localize = {
ordinalNumber,
era: buildLocalizeFn({
values: eraValues,
defaultWidth: "wide",
}),
quarter: buildLocalizeFn({
values: quarterValues,
defaultWidth: "wide",
argumentCallback: (quarter) => quarter - 1,
}),
month: buildLocalizeFn({
values: monthValues,
defaultWidth: "wide",
}),
day: buildLocalizeFn({
values: dayValues,
defaultWidth: "wide",
}),
dayPeriod: buildLocalizeFn({
values: dayPeriodValues,
defaultWidth: "wide",
formattingValues: formattingDayPeriodValues,
defaultFormattingWidth: "wide",
}),
};