timepiece/node_modules/date-fns/locale/sl/_lib/formatDistance.mjs

341 lines
7.9 KiB
JavaScript

function isPluralType(val) {
return val.one !== undefined;
}
const formatDistanceLocale = {
lessThanXSeconds: {
present: {
one: "manj kot {{count}} sekunda",
two: "manj kot {{count}} sekundi",
few: "manj kot {{count}} sekunde",
other: "manj kot {{count}} sekund",
},
past: {
one: "manj kot {{count}} sekundo",
two: "manj kot {{count}} sekundama",
few: "manj kot {{count}} sekundami",
other: "manj kot {{count}} sekundami",
},
future: {
one: "manj kot {{count}} sekundo",
two: "manj kot {{count}} sekundi",
few: "manj kot {{count}} sekunde",
other: "manj kot {{count}} sekund",
},
},
xSeconds: {
present: {
one: "{{count}} sekunda",
two: "{{count}} sekundi",
few: "{{count}} sekunde",
other: "{{count}} sekund",
},
past: {
one: "{{count}} sekundo",
two: "{{count}} sekundama",
few: "{{count}} sekundami",
other: "{{count}} sekundami",
},
future: {
one: "{{count}} sekundo",
two: "{{count}} sekundi",
few: "{{count}} sekunde",
other: "{{count}} sekund",
},
},
halfAMinute: "pol minute",
lessThanXMinutes: {
present: {
one: "manj kot {{count}} minuta",
two: "manj kot {{count}} minuti",
few: "manj kot {{count}} minute",
other: "manj kot {{count}} minut",
},
past: {
one: "manj kot {{count}} minuto",
two: "manj kot {{count}} minutama",
few: "manj kot {{count}} minutami",
other: "manj kot {{count}} minutami",
},
future: {
one: "manj kot {{count}} minuto",
two: "manj kot {{count}} minuti",
few: "manj kot {{count}} minute",
other: "manj kot {{count}} minut",
},
},
xMinutes: {
present: {
one: "{{count}} minuta",
two: "{{count}} minuti",
few: "{{count}} minute",
other: "{{count}} minut",
},
past: {
one: "{{count}} minuto",
two: "{{count}} minutama",
few: "{{count}} minutami",
other: "{{count}} minutami",
},
future: {
one: "{{count}} minuto",
two: "{{count}} minuti",
few: "{{count}} minute",
other: "{{count}} minut",
},
},
aboutXHours: {
present: {
one: "približno {{count}} ura",
two: "približno {{count}} uri",
few: "približno {{count}} ure",
other: "približno {{count}} ur",
},
past: {
one: "približno {{count}} uro",
two: "približno {{count}} urama",
few: "približno {{count}} urami",
other: "približno {{count}} urami",
},
future: {
one: "približno {{count}} uro",
two: "približno {{count}} uri",
few: "približno {{count}} ure",
other: "približno {{count}} ur",
},
},
xHours: {
present: {
one: "{{count}} ura",
two: "{{count}} uri",
few: "{{count}} ure",
other: "{{count}} ur",
},
past: {
one: "{{count}} uro",
two: "{{count}} urama",
few: "{{count}} urami",
other: "{{count}} urami",
},
future: {
one: "{{count}} uro",
two: "{{count}} uri",
few: "{{count}} ure",
other: "{{count}} ur",
},
},
xDays: {
present: {
one: "{{count}} dan",
two: "{{count}} dni",
few: "{{count}} dni",
other: "{{count}} dni",
},
past: {
one: "{{count}} dnem",
two: "{{count}} dnevoma",
few: "{{count}} dnevi",
other: "{{count}} dnevi",
},
future: {
one: "{{count}} dan",
two: "{{count}} dni",
few: "{{count}} dni",
other: "{{count}} dni",
},
},
// no tenses for weeks?
aboutXWeeks: {
one: "približno {{count}} teden",
two: "približno {{count}} tedna",
few: "približno {{count}} tedne",
other: "približno {{count}} tednov",
},
// no tenses for weeks?
xWeeks: {
one: "{{count}} teden",
two: "{{count}} tedna",
few: "{{count}} tedne",
other: "{{count}} tednov",
},
aboutXMonths: {
present: {
one: "približno {{count}} mesec",
two: "približno {{count}} meseca",
few: "približno {{count}} mesece",
other: "približno {{count}} mesecev",
},
past: {
one: "približno {{count}} mesecem",
two: "približno {{count}} mesecema",
few: "približno {{count}} meseci",
other: "približno {{count}} meseci",
},
future: {
one: "približno {{count}} mesec",
two: "približno {{count}} meseca",
few: "približno {{count}} mesece",
other: "približno {{count}} mesecev",
},
},
xMonths: {
present: {
one: "{{count}} mesec",
two: "{{count}} meseca",
few: "{{count}} meseci",
other: "{{count}} mesecev",
},
past: {
one: "{{count}} mesecem",
two: "{{count}} mesecema",
few: "{{count}} meseci",
other: "{{count}} meseci",
},
future: {
one: "{{count}} mesec",
two: "{{count}} meseca",
few: "{{count}} mesece",
other: "{{count}} mesecev",
},
},
aboutXYears: {
present: {
one: "približno {{count}} leto",
two: "približno {{count}} leti",
few: "približno {{count}} leta",
other: "približno {{count}} let",
},
past: {
one: "približno {{count}} letom",
two: "približno {{count}} letoma",
few: "približno {{count}} leti",
other: "približno {{count}} leti",
},
future: {
one: "približno {{count}} leto",
two: "približno {{count}} leti",
few: "približno {{count}} leta",
other: "približno {{count}} let",
},
},
xYears: {
present: {
one: "{{count}} leto",
two: "{{count}} leti",
few: "{{count}} leta",
other: "{{count}} let",
},
past: {
one: "{{count}} letom",
two: "{{count}} letoma",
few: "{{count}} leti",
other: "{{count}} leti",
},
future: {
one: "{{count}} leto",
two: "{{count}} leti",
few: "{{count}} leta",
other: "{{count}} let",
},
},
overXYears: {
present: {
one: "več kot {{count}} leto",
two: "več kot {{count}} leti",
few: "več kot {{count}} leta",
other: "več kot {{count}} let",
},
past: {
one: "več kot {{count}} letom",
two: "več kot {{count}} letoma",
few: "več kot {{count}} leti",
other: "več kot {{count}} leti",
},
future: {
one: "več kot {{count}} leto",
two: "več kot {{count}} leti",
few: "več kot {{count}} leta",
other: "več kot {{count}} let",
},
},
almostXYears: {
present: {
one: "skoraj {{count}} leto",
two: "skoraj {{count}} leti",
few: "skoraj {{count}} leta",
other: "skoraj {{count}} let",
},
past: {
one: "skoraj {{count}} letom",
two: "skoraj {{count}} letoma",
few: "skoraj {{count}} leti",
other: "skoraj {{count}} leti",
},
future: {
one: "skoraj {{count}} leto",
two: "skoraj {{count}} leti",
few: "skoraj {{count}} leta",
other: "skoraj {{count}} let",
},
},
};
function getFormFromCount(count) {
switch (count % 100) {
case 1:
return "one";
case 2:
return "two";
case 3:
case 4:
return "few";
default:
return "other";
}
}
export const formatDistance = (token, count, options) => {
let result = "";
let tense = "present";
if (options?.addSuffix) {
if (options.comparison && options.comparison > 0) {
tense = "future";
result = "čez ";
} else {
tense = "past";
result = "pred ";
}
}
const tokenValue = formatDistanceLocale[token];
if (typeof tokenValue === "string") {
result += tokenValue;
} else {
const form = getFormFromCount(count);
if (isPluralType(tokenValue)) {
result += tokenValue[form].replace("{{count}}", String(count));
} else {
result += tokenValue[tense][form].replace("{{count}}", String(count));
}
}
return result;
};