summaryrefslogtreecommitdiff
path: root/date-fns/src/locale/nb/_lib
diff options
context:
space:
mode:
Diffstat (limited to 'date-fns/src/locale/nb/_lib')
-rw-r--r--date-fns/src/locale/nb/_lib/formatDistance/index.js127
-rw-r--r--date-fns/src/locale/nb/_lib/formatLong/index.js41
-rw-r--r--date-fns/src/locale/nb/_lib/formatRelative/index.js12
-rw-r--r--date-fns/src/locale/nb/_lib/localize/index.js124
-rw-r--r--date-fns/src/locale/nb/_lib/match/index.js136
5 files changed, 440 insertions, 0 deletions
diff --git a/date-fns/src/locale/nb/_lib/formatDistance/index.js b/date-fns/src/locale/nb/_lib/formatDistance/index.js
new file mode 100644
index 0000000..79ef4f9
--- /dev/null
+++ b/date-fns/src/locale/nb/_lib/formatDistance/index.js
@@ -0,0 +1,127 @@
+var formatDistanceLocale = {
+ lessThanXSeconds: {
+ singular: 'mindre enn ett sekund',
+ plural: 'mindre enn {{count}} sekunder'
+ },
+
+ xSeconds: {
+ singular: 'ett sekund',
+ plural: '{{count}} sekunder'
+ },
+
+ halfAMinute: 'et halvt minutt',
+
+ lessThanXMinutes: {
+ singular: 'mindre enn ett minutt',
+ plural: 'mindre enn {{count}} minutter'
+ },
+
+ xMinutes: {
+ singular: 'ett minutt',
+ plural: '{{count}} minutter'
+ },
+
+ aboutXHours: {
+ singular: 'omtrent en time',
+ plural: 'omtrent {{count}} timer'
+ },
+
+ xHours: {
+ singular: 'en time',
+ plural: '{{count}} timer'
+ },
+
+ xDays: {
+ singular: 'en dag',
+ plural: '{{count}} dager'
+ },
+
+ aboutXWeeks: {
+ singular: 'omtrent en uke',
+ plural: 'omtrent {{count}} uker'
+ },
+
+ xWeeks: {
+ singular: 'en uke',
+ plural: '{{count}} uker'
+ },
+
+ aboutXMonths: {
+ singular: 'omtrent en måned',
+ plural: 'omtrent {{count}} måneder'
+ },
+
+ xMonths: {
+ singular: 'en måned',
+ plural: '{{count}} måneder'
+ },
+
+ aboutXYears: {
+ singular: 'omtrent ett år',
+ plural: 'omtrent {{count}} år'
+ },
+
+ xYears: {
+ singular: 'ett år',
+ plural: '{{count}} år'
+ },
+
+ overXYears: {
+ singular: 'over ett år',
+ plural: 'over {{count}} år'
+ },
+
+ almostXYears: {
+ singular: 'nesten ett år',
+ plural: 'nesten {{count}} år'
+ }
+}
+
+var wordMapping = [
+ 'null',
+ 'en',
+ 'to',
+ 'tre',
+ 'fire',
+ 'fem',
+ 'seks',
+ 'sju',
+ 'åtte',
+ 'ni',
+ 'ti',
+ 'elleve',
+ 'tolv'
+]
+
+export default function formatDistance(token, count, options) {
+ options = options || {
+ onlyNumeric: false
+ }
+
+ var translation = formatDistanceLocale[token]
+ var result
+ if (typeof translation === 'string') {
+ result = translation
+ } else if (count === 0 || count > 1) {
+ if (options.onlyNumeric) {
+ result = translation.plural.replace('{{count}}', count)
+ } else {
+ result = translation.plural.replace(
+ '{{count}}',
+ count < 13 ? wordMapping[count] : count
+ )
+ }
+ } else {
+ result = translation.singular
+ }
+
+ if (options.addSuffix) {
+ if (options.comparison > 0) {
+ return 'om ' + result
+ } else {
+ return result + ' siden'
+ }
+ }
+
+ return result
+}
diff --git a/date-fns/src/locale/nb/_lib/formatLong/index.js b/date-fns/src/locale/nb/_lib/formatLong/index.js
new file mode 100644
index 0000000..067f59e
--- /dev/null
+++ b/date-fns/src/locale/nb/_lib/formatLong/index.js
@@ -0,0 +1,41 @@
+import buildFormatLongFn from '../../../_lib/buildFormatLongFn/index'
+
+var dateFormats = {
+ full: 'EEEE d. MMMM y',
+ long: 'd. MMMM y',
+ medium: 'd. MMM y',
+ short: 'dd.MM.y'
+}
+
+var timeFormats = {
+ full: "'kl'. HH:mm:ss zzzz",
+ long: 'HH:mm:ss z',
+ medium: 'HH:mm:ss',
+ short: 'HH:mm'
+}
+
+var dateTimeFormats = {
+ full: "{{date}} 'kl.' {{time}}",
+ long: "{{date}} 'kl.' {{time}}",
+ medium: '{{date}} {{time}}',
+ short: '{{date}} {{time}}'
+}
+
+var formatLong = {
+ date: buildFormatLongFn({
+ formats: dateFormats,
+ defaultWidth: 'full'
+ }),
+
+ time: buildFormatLongFn({
+ formats: timeFormats,
+ defaultWidth: 'full'
+ }),
+
+ dateTime: buildFormatLongFn({
+ formats: dateTimeFormats,
+ defaultWidth: 'full'
+ })
+}
+
+export default formatLong
diff --git a/date-fns/src/locale/nb/_lib/formatRelative/index.js b/date-fns/src/locale/nb/_lib/formatRelative/index.js
new file mode 100644
index 0000000..3884132
--- /dev/null
+++ b/date-fns/src/locale/nb/_lib/formatRelative/index.js
@@ -0,0 +1,12 @@
+var formatRelativeLocale = {
+ lastWeek: "'forrige' eeee 'kl.' p",
+ yesterday: "'i går kl.' p",
+ today: "'i dag kl.' p",
+ tomorrow: "'i morgen kl.' p",
+ nextWeek: "EEEE 'kl.' p",
+ other: 'P'
+}
+
+export default function formatRelative(token, _date, _baseDate, _options) {
+ return formatRelativeLocale[token]
+}
diff --git a/date-fns/src/locale/nb/_lib/localize/index.js b/date-fns/src/locale/nb/_lib/localize/index.js
new file mode 100644
index 0000000..075f868
--- /dev/null
+++ b/date-fns/src/locale/nb/_lib/localize/index.js
@@ -0,0 +1,124 @@
+import buildLocalizeFn from '../../../_lib/buildLocalizeFn/index'
+
+var eraValues = {
+ narrow: ['f.Kr.', 'e.Kr.'],
+ abbreviated: ['f.Kr.', 'e.Kr.'],
+ wide: ['før Kristus', 'etter Kristus']
+}
+
+var quarterValues = {
+ narrow: ['1', '2', '3', '4'],
+ abbreviated: ['Q1', 'Q2', 'Q3', 'Q4'],
+ wide: ['1. kvartal', '2. kvartal', '3. kvartal', '4. kvartal']
+}
+
+var monthValues = {
+ narrow: ['J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D'],
+ abbreviated: [
+ 'jan.',
+ 'feb.',
+ 'mars',
+ 'apr.',
+ 'mai',
+ 'juni',
+ 'juli',
+ 'aug.',
+ 'sep.',
+ 'okt.',
+ 'nov.',
+ 'des.'
+ ],
+ wide: [
+ 'januar',
+ 'februar',
+ 'mars',
+ 'april',
+ 'mai',
+ 'juni',
+ 'juli',
+ 'august',
+ 'september',
+ 'oktober',
+ 'november',
+ 'desember'
+ ]
+}
+
+var dayValues = {
+ narrow: ['S', 'M', 'T', 'O', 'T', 'F', 'L'],
+ short: ['sø', 'ma', 'ti', 'on', 'to', 'fr', 'lø'],
+ abbreviated: ['søn', 'man', 'tir', 'ons', 'tor', 'fre', 'lør'],
+ wide: ['søndag', 'mandag', 'tirsdag', 'onsdag', 'torsdag', 'fredag', 'lørdag']
+}
+
+var dayPeriodValues = {
+ narrow: {
+ am: 'a',
+ pm: 'p',
+ midnight: 'midnatt',
+ noon: 'middag',
+ morning: 'på morg.',
+ afternoon: 'på etterm.',
+ evening: 'på kvelden',
+ night: 'på natten'
+ },
+ abbreviated: {
+ am: 'a.m.',
+ pm: 'p.m.',
+ midnight: 'midnatt',
+ noon: 'middag',
+ morning: 'på morg.',
+ afternoon: 'på etterm.',
+ evening: 'på kvelden',
+ night: 'på natten'
+ },
+ wide: {
+ am: 'a.m.',
+ pm: 'p.m.',
+ midnight: 'midnatt',
+ noon: 'middag',
+ morning: 'på morgenen',
+ afternoon: 'på ettermiddagen',
+ evening: 'på kvelden',
+ night: 'på natten'
+ }
+}
+
+function ordinalNumber(dirtyNumber) {
+ var number = Number(dirtyNumber)
+ return number + '.'
+}
+
+var localize = {
+ ordinalNumber: ordinalNumber,
+
+ era: buildLocalizeFn({
+ values: eraValues,
+ defaultWidth: 'wide'
+ }),
+
+ quarter: buildLocalizeFn({
+ values: quarterValues,
+ defaultWidth: 'wide',
+ argumentCallback: function(quarter) {
+ return Number(quarter) - 1
+ }
+ }),
+
+ month: buildLocalizeFn({
+ values: monthValues,
+ defaultWidth: 'wide'
+ }),
+
+ day: buildLocalizeFn({
+ values: dayValues,
+ defaultWidth: 'wide'
+ }),
+
+ dayPeriod: buildLocalizeFn({
+ values: dayPeriodValues,
+ defaultWidth: 'wide'
+ })
+}
+
+export default localize
diff --git a/date-fns/src/locale/nb/_lib/match/index.js b/date-fns/src/locale/nb/_lib/match/index.js
new file mode 100644
index 0000000..d0c00da
--- /dev/null
+++ b/date-fns/src/locale/nb/_lib/match/index.js
@@ -0,0 +1,136 @@
+import buildMatchPatternFn from '../../../_lib/buildMatchPatternFn/index'
+import buildMatchFn from '../../../_lib/buildMatchFn/index'
+
+var matchOrdinalNumberPattern = /^(\d+)\.?/i
+var parseOrdinalNumberPattern = /\d+/i
+
+var matchEraPatterns = {
+ narrow: /^(f\.? ?Kr\.?|fvt\.?|e\.? ?Kr\.?|evt\.?)/i,
+ abbreviated: /^(f\.? ?Kr\.?|fvt\.?|e\.? ?Kr\.?|evt\.?)/i,
+ wide: /^(før Kristus|før vår tid|etter Kristus|vår tid)/i
+}
+var parseEraPatterns = {
+ any: [/^f/i, /^e/i]
+}
+
+var matchQuarterPatterns = {
+ narrow: /^[1234]/i,
+ abbreviated: /^q[1234]/i,
+ wide: /^[1234](\.)? kvartal/i
+}
+var parseQuarterPatterns = {
+ any: [/1/i, /2/i, /3/i, /4/i]
+}
+
+var matchMonthPatterns = {
+ narrow: /^[jfmasond]/i,
+ abbreviated: /^(jan|feb|mars?|apr|mai|juni?|juli?|aug|sep|okt|nov|des)\.?/i,
+ wide: /^(januar|februar|mars|april|mai|juni|juli|august|september|oktober|november|desember)/i
+}
+var parseMonthPatterns = {
+ narrow: [
+ /^j/i,
+ /^f/i,
+ /^m/i,
+ /^a/i,
+ /^m/i,
+ /^j/i,
+ /^j/i,
+ /^a/i,
+ /^s/i,
+ /^o/i,
+ /^n/i,
+ /^d/i
+ ],
+ any: [
+ /^ja/i,
+ /^f/i,
+ /^mar/i,
+ /^ap/i,
+ /^mai/i,
+ /^jun/i,
+ /^jul/i,
+ /^aug/i,
+ /^s/i,
+ /^o/i,
+ /^n/i,
+ /^d/i
+ ]
+}
+
+var matchDayPatterns = {
+ narrow: /^[smtofl]/i,
+ short: /^(sø|ma|ti|on|to|fr|lø)/i,
+ abbreviated: /^(søn|man|tir|ons|tor|fre|lør)/i,
+ wide: /^(søndag|mandag|tirsdag|onsdag|torsdag|fredag|lørdag)/i
+}
+var parseDayPatterns = {
+ any: [/^s/i, /^m/i, /^ti/i, /^o/i, /^to/i, /^f/i, /^l/i]
+}
+
+var matchDayPeriodPatterns = {
+ narrow: /^(midnatt|middag|(på) (morgenen|ettermiddagen|kvelden|natten)|[ap])/i,
+ any: /^([ap]\.?\s?m\.?|midnatt|middag|(på) (morgenen|ettermiddagen|kvelden|natten))/i
+}
+var parseDayPeriodPatterns = {
+ any: {
+ am: /^a(\.?\s?m\.?)?$/i,
+ pm: /^p(\.?\s?m\.?)?$/i,
+ midnight: /^midn/i,
+ noon: /^midd/i,
+ morning: /morgen/i,
+ afternoon: /ettermiddag/i,
+ evening: /kveld/i,
+ night: /natt/i
+ }
+}
+
+var match = {
+ ordinalNumber: buildMatchPatternFn({
+ matchPattern: matchOrdinalNumberPattern,
+ parsePattern: parseOrdinalNumberPattern,
+ valueCallback: function(value) {
+ return parseInt(value, 10)
+ }
+ }),
+
+ era: buildMatchFn({
+ matchPatterns: matchEraPatterns,
+ defaultMatchWidth: 'wide',
+ parsePatterns: parseEraPatterns,
+ defaultParseWidth: 'any'
+ }),
+
+ quarter: buildMatchFn({
+ matchPatterns: matchQuarterPatterns,
+ defaultMatchWidth: 'wide',
+ parsePatterns: parseQuarterPatterns,
+ defaultParseWidth: 'any',
+ valueCallback: function(index) {
+ return index + 1
+ }
+ }),
+
+ month: buildMatchFn({
+ matchPatterns: matchMonthPatterns,
+ defaultMatchWidth: 'wide',
+ parsePatterns: parseMonthPatterns,
+ defaultParseWidth: 'any'
+ }),
+
+ day: buildMatchFn({
+ matchPatterns: matchDayPatterns,
+ defaultMatchWidth: 'wide',
+ parsePatterns: parseDayPatterns,
+ defaultParseWidth: 'any'
+ }),
+
+ dayPeriod: buildMatchFn({
+ matchPatterns: matchDayPeriodPatterns,
+ defaultMatchWidth: 'any',
+ parsePatterns: parseDayPeriodPatterns,
+ defaultParseWidth: 'any'
+ })
+}
+
+export default match