fds-vue-core 6.2.7 → 6.2.10

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.
@@ -13215,7 +13215,7 @@ function startOfYear(date, options) {
13215
13215
  date_.setHours(0, 0, 0, 0);
13216
13216
  return date_;
13217
13217
  }
13218
- const formatDistanceLocale$1 = {
13218
+ const formatDistanceLocale = {
13219
13219
  lessThanXSeconds: {
13220
13220
  one: "less than a second",
13221
13221
  other: "less than {{count}} seconds"
@@ -13278,9 +13278,9 @@ const formatDistanceLocale$1 = {
13278
13278
  other: "almost {{count}} years"
13279
13279
  }
13280
13280
  };
13281
- const formatDistance$1 = (token, count, options) => {
13281
+ const formatDistance = (token, count, options) => {
13282
13282
  let result;
13283
- const tokenValue = formatDistanceLocale$1[token];
13283
+ const tokenValue = formatDistanceLocale[token];
13284
13284
  if (typeof tokenValue === "string") {
13285
13285
  result = tokenValue;
13286
13286
  } else if (count === 1) {
@@ -13304,39 +13304,39 @@ function buildFormatLongFn(args) {
13304
13304
  return format2;
13305
13305
  };
13306
13306
  }
13307
- const dateFormats$1 = {
13307
+ const dateFormats = {
13308
13308
  full: "EEEE, MMMM do, y",
13309
13309
  long: "MMMM do, y",
13310
13310
  medium: "MMM d, y",
13311
13311
  short: "MM/dd/yyyy"
13312
13312
  };
13313
- const timeFormats$1 = {
13313
+ const timeFormats = {
13314
13314
  full: "h:mm:ss a zzzz",
13315
13315
  long: "h:mm:ss a z",
13316
13316
  medium: "h:mm:ss a",
13317
13317
  short: "h:mm a"
13318
13318
  };
13319
- const dateTimeFormats$1 = {
13319
+ const dateTimeFormats = {
13320
13320
  full: "{{date}} 'at' {{time}}",
13321
13321
  long: "{{date}} 'at' {{time}}",
13322
13322
  medium: "{{date}}, {{time}}",
13323
13323
  short: "{{date}}, {{time}}"
13324
13324
  };
13325
- const formatLong$1 = {
13325
+ const formatLong = {
13326
13326
  date: buildFormatLongFn({
13327
- formats: dateFormats$1,
13327
+ formats: dateFormats,
13328
13328
  defaultWidth: "full"
13329
13329
  }),
13330
13330
  time: buildFormatLongFn({
13331
- formats: timeFormats$1,
13331
+ formats: timeFormats,
13332
13332
  defaultWidth: "full"
13333
13333
  }),
13334
13334
  dateTime: buildFormatLongFn({
13335
- formats: dateTimeFormats$1,
13335
+ formats: dateTimeFormats,
13336
13336
  defaultWidth: "full"
13337
13337
  })
13338
13338
  };
13339
- const formatRelativeLocale$1 = {
13339
+ const formatRelativeLocale = {
13340
13340
  lastWeek: "'last' eeee 'at' p",
13341
13341
  yesterday: "'yesterday at' p",
13342
13342
  today: "'today at' p",
@@ -13344,7 +13344,7 @@ const formatRelativeLocale$1 = {
13344
13344
  nextWeek: "eeee 'at' p",
13345
13345
  other: "P"
13346
13346
  };
13347
- const formatRelative$1 = (token, _date, _baseDate, _options) => formatRelativeLocale$1[token];
13347
+ const formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale[token];
13348
13348
  function buildLocalizeFn(args) {
13349
13349
  return (value, options) => {
13350
13350
  const context = options?.context ? String(options.context) : "standalone";
@@ -13362,17 +13362,17 @@ function buildLocalizeFn(args) {
13362
13362
  return valuesArray[index];
13363
13363
  };
13364
13364
  }
13365
- const eraValues$1 = {
13365
+ const eraValues = {
13366
13366
  narrow: ["B", "A"],
13367
13367
  abbreviated: ["BC", "AD"],
13368
13368
  wide: ["Before Christ", "Anno Domini"]
13369
13369
  };
13370
- const quarterValues$1 = {
13370
+ const quarterValues = {
13371
13371
  narrow: ["1", "2", "3", "4"],
13372
13372
  abbreviated: ["Q1", "Q2", "Q3", "Q4"],
13373
13373
  wide: ["1st quarter", "2nd quarter", "3rd quarter", "4th quarter"]
13374
13374
  };
13375
- const monthValues$1 = {
13375
+ const monthValues = {
13376
13376
  narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],
13377
13377
  abbreviated: [
13378
13378
  "Jan",
@@ -13403,7 +13403,7 @@ const monthValues$1 = {
13403
13403
  "December"
13404
13404
  ]
13405
13405
  };
13406
- const dayValues$1 = {
13406
+ const dayValues = {
13407
13407
  narrow: ["S", "M", "T", "W", "T", "F", "S"],
13408
13408
  short: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
13409
13409
  abbreviated: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
@@ -13417,7 +13417,7 @@ const dayValues$1 = {
13417
13417
  "Saturday"
13418
13418
  ]
13419
13419
  };
13420
- const dayPeriodValues$1 = {
13420
+ const dayPeriodValues = {
13421
13421
  narrow: {
13422
13422
  am: "a",
13423
13423
  pm: "p",
@@ -13449,7 +13449,7 @@ const dayPeriodValues$1 = {
13449
13449
  night: "night"
13450
13450
  }
13451
13451
  };
13452
- const formattingDayPeriodValues$1 = {
13452
+ const formattingDayPeriodValues = {
13453
13453
  narrow: {
13454
13454
  am: "a",
13455
13455
  pm: "p",
@@ -13481,7 +13481,7 @@ const formattingDayPeriodValues$1 = {
13481
13481
  night: "at night"
13482
13482
  }
13483
13483
  };
13484
- const ordinalNumber$1 = (dirtyNumber, _options) => {
13484
+ const ordinalNumber = (dirtyNumber, _options) => {
13485
13485
  const number = Number(dirtyNumber);
13486
13486
  const rem100 = number % 100;
13487
13487
  if (rem100 > 20 || rem100 < 10) {
@@ -13496,29 +13496,29 @@ const ordinalNumber$1 = (dirtyNumber, _options) => {
13496
13496
  }
13497
13497
  return number + "th";
13498
13498
  };
13499
- const localize$1 = {
13500
- ordinalNumber: ordinalNumber$1,
13499
+ const localize = {
13500
+ ordinalNumber,
13501
13501
  era: buildLocalizeFn({
13502
- values: eraValues$1,
13502
+ values: eraValues,
13503
13503
  defaultWidth: "wide"
13504
13504
  }),
13505
13505
  quarter: buildLocalizeFn({
13506
- values: quarterValues$1,
13506
+ values: quarterValues,
13507
13507
  defaultWidth: "wide",
13508
13508
  argumentCallback: (quarter) => quarter - 1
13509
13509
  }),
13510
13510
  month: buildLocalizeFn({
13511
- values: monthValues$1,
13511
+ values: monthValues,
13512
13512
  defaultWidth: "wide"
13513
13513
  }),
13514
13514
  day: buildLocalizeFn({
13515
- values: dayValues$1,
13515
+ values: dayValues,
13516
13516
  defaultWidth: "wide"
13517
13517
  }),
13518
13518
  dayPeriod: buildLocalizeFn({
13519
- values: dayPeriodValues$1,
13519
+ values: dayPeriodValues,
13520
13520
  defaultWidth: "wide",
13521
- formattingValues: formattingDayPeriodValues$1,
13521
+ formattingValues: formattingDayPeriodValues,
13522
13522
  defaultFormattingWidth: "wide"
13523
13523
  })
13524
13524
  };
@@ -13575,30 +13575,30 @@ function buildMatchPatternFn(args) {
13575
13575
  return { value, rest };
13576
13576
  };
13577
13577
  }
13578
- const matchOrdinalNumberPattern$1 = /^(\d+)(th|st|nd|rd)?/i;
13579
- const parseOrdinalNumberPattern$1 = /\d+/i;
13580
- const matchEraPatterns$1 = {
13578
+ const matchOrdinalNumberPattern = /^(\d+)(th|st|nd|rd)?/i;
13579
+ const parseOrdinalNumberPattern = /\d+/i;
13580
+ const matchEraPatterns = {
13581
13581
  narrow: /^(b|a)/i,
13582
13582
  abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,
13583
13583
  wide: /^(before christ|before common era|anno domini|common era)/i
13584
13584
  };
13585
- const parseEraPatterns$1 = {
13585
+ const parseEraPatterns = {
13586
13586
  any: [/^b/i, /^(a|c)/i]
13587
13587
  };
13588
- const matchQuarterPatterns$1 = {
13588
+ const matchQuarterPatterns = {
13589
13589
  narrow: /^[1234]/i,
13590
13590
  abbreviated: /^q[1234]/i,
13591
13591
  wide: /^[1234](th|st|nd|rd)? quarter/i
13592
13592
  };
13593
- const parseQuarterPatterns$1 = {
13593
+ const parseQuarterPatterns = {
13594
13594
  any: [/1/i, /2/i, /3/i, /4/i]
13595
13595
  };
13596
- const matchMonthPatterns$1 = {
13596
+ const matchMonthPatterns = {
13597
13597
  narrow: /^[jfmasond]/i,
13598
13598
  abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,
13599
13599
  wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i
13600
13600
  };
13601
- const parseMonthPatterns$1 = {
13601
+ const parseMonthPatterns = {
13602
13602
  narrow: [
13603
13603
  /^j/i,
13604
13604
  /^f/i,
@@ -13628,21 +13628,21 @@ const parseMonthPatterns$1 = {
13628
13628
  /^d/i
13629
13629
  ]
13630
13630
  };
13631
- const matchDayPatterns$1 = {
13631
+ const matchDayPatterns = {
13632
13632
  narrow: /^[smtwf]/i,
13633
13633
  short: /^(su|mo|tu|we|th|fr|sa)/i,
13634
13634
  abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,
13635
13635
  wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i
13636
13636
  };
13637
- const parseDayPatterns$1 = {
13637
+ const parseDayPatterns = {
13638
13638
  narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],
13639
13639
  any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]
13640
13640
  };
13641
- const matchDayPeriodPatterns$1 = {
13641
+ const matchDayPeriodPatterns = {
13642
13642
  narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,
13643
13643
  any: /^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i
13644
13644
  };
13645
- const parseDayPeriodPatterns$1 = {
13645
+ const parseDayPeriodPatterns = {
13646
13646
  any: {
13647
13647
  am: /^a/i,
13648
13648
  pm: /^p/i,
@@ -13654,51 +13654,51 @@ const parseDayPeriodPatterns$1 = {
13654
13654
  night: /night/i
13655
13655
  }
13656
13656
  };
13657
- const match$1 = {
13657
+ const match = {
13658
13658
  ordinalNumber: buildMatchPatternFn({
13659
- matchPattern: matchOrdinalNumberPattern$1,
13660
- parsePattern: parseOrdinalNumberPattern$1,
13659
+ matchPattern: matchOrdinalNumberPattern,
13660
+ parsePattern: parseOrdinalNumberPattern,
13661
13661
  valueCallback: (value) => parseInt(value, 10)
13662
13662
  }),
13663
13663
  era: buildMatchFn({
13664
- matchPatterns: matchEraPatterns$1,
13664
+ matchPatterns: matchEraPatterns,
13665
13665
  defaultMatchWidth: "wide",
13666
- parsePatterns: parseEraPatterns$1,
13666
+ parsePatterns: parseEraPatterns,
13667
13667
  defaultParseWidth: "any"
13668
13668
  }),
13669
13669
  quarter: buildMatchFn({
13670
- matchPatterns: matchQuarterPatterns$1,
13670
+ matchPatterns: matchQuarterPatterns,
13671
13671
  defaultMatchWidth: "wide",
13672
- parsePatterns: parseQuarterPatterns$1,
13672
+ parsePatterns: parseQuarterPatterns,
13673
13673
  defaultParseWidth: "any",
13674
13674
  valueCallback: (index) => index + 1
13675
13675
  }),
13676
13676
  month: buildMatchFn({
13677
- matchPatterns: matchMonthPatterns$1,
13677
+ matchPatterns: matchMonthPatterns,
13678
13678
  defaultMatchWidth: "wide",
13679
- parsePatterns: parseMonthPatterns$1,
13679
+ parsePatterns: parseMonthPatterns,
13680
13680
  defaultParseWidth: "any"
13681
13681
  }),
13682
13682
  day: buildMatchFn({
13683
- matchPatterns: matchDayPatterns$1,
13683
+ matchPatterns: matchDayPatterns,
13684
13684
  defaultMatchWidth: "wide",
13685
- parsePatterns: parseDayPatterns$1,
13685
+ parsePatterns: parseDayPatterns,
13686
13686
  defaultParseWidth: "any"
13687
13687
  }),
13688
13688
  dayPeriod: buildMatchFn({
13689
- matchPatterns: matchDayPeriodPatterns$1,
13689
+ matchPatterns: matchDayPeriodPatterns,
13690
13690
  defaultMatchWidth: "any",
13691
- parsePatterns: parseDayPeriodPatterns$1,
13691
+ parsePatterns: parseDayPeriodPatterns,
13692
13692
  defaultParseWidth: "any"
13693
13693
  })
13694
13694
  };
13695
13695
  const enUS = {
13696
13696
  code: "en-US",
13697
- formatDistance: formatDistance$1,
13698
- formatLong: formatLong$1,
13699
- formatRelative: formatRelative$1,
13700
- localize: localize$1,
13701
- match: match$1,
13697
+ formatDistance,
13698
+ formatLong,
13699
+ formatRelative,
13700
+ localize,
13701
+ match,
13702
13702
  options: {
13703
13703
  weekStartsOn: 0,
13704
13704
  firstWeekContainsDate: 1
@@ -14625,423 +14625,88 @@ function subDays(date, amount, options) {
14625
14625
  function subWeeks(date, amount, options) {
14626
14626
  return addWeeks(date, -1, options);
14627
14627
  }
14628
- const formatDistanceLocale = {
14629
- lessThanXSeconds: {
14630
- one: "mindre än en sekund",
14631
- other: "mindre än {{count}} sekunder"
14632
- },
14633
- xSeconds: {
14634
- one: "en sekund",
14635
- other: "{{count}} sekunder"
14636
- },
14637
- halfAMinute: "en halv minut",
14638
- lessThanXMinutes: {
14639
- one: "mindre än en minut",
14640
- other: "mindre än {{count}} minuter"
14641
- },
14642
- xMinutes: {
14643
- one: "en minut",
14644
- other: "{{count}} minuter"
14645
- },
14646
- aboutXHours: {
14647
- one: "ungefär en timme",
14648
- other: "ungefär {{count}} timmar"
14649
- },
14650
- xHours: {
14651
- one: "en timme",
14652
- other: "{{count}} timmar"
14653
- },
14654
- xDays: {
14655
- one: "en dag",
14656
- other: "{{count}} dagar"
14657
- },
14658
- aboutXWeeks: {
14659
- one: "ungefär en vecka",
14660
- other: "ungefär {{count}} veckor"
14661
- },
14662
- xWeeks: {
14663
- one: "en vecka",
14664
- other: "{{count}} veckor"
14665
- },
14666
- aboutXMonths: {
14667
- one: "ungefär en månad",
14668
- other: "ungefär {{count}} månader"
14669
- },
14670
- xMonths: {
14671
- one: "en månad",
14672
- other: "{{count}} månader"
14673
- },
14674
- aboutXYears: {
14675
- one: "ungefär ett år",
14676
- other: "ungefär {{count}} år"
14677
- },
14678
- xYears: {
14679
- one: "ett år",
14680
- other: "{{count}} år"
14681
- },
14682
- overXYears: {
14683
- one: "över ett år",
14684
- other: "över {{count}} år"
14685
- },
14686
- almostXYears: {
14687
- one: "nästan ett år",
14688
- other: "nästan {{count}} år"
14689
- }
14690
- };
14691
- const wordMapping = [
14692
- "noll",
14693
- "en",
14694
- "två",
14695
- "tre",
14696
- "fyra",
14697
- "fem",
14698
- "sex",
14699
- "sju",
14700
- "åtta",
14701
- "nio",
14702
- "tio",
14703
- "elva",
14704
- "tolv"
14705
- ];
14706
- const formatDistance = (token, count, options) => {
14707
- let result;
14708
- const tokenValue = formatDistanceLocale[token];
14709
- if (typeof tokenValue === "string") {
14710
- result = tokenValue;
14711
- } else if (count === 1) {
14712
- result = tokenValue.one;
14713
- } else {
14714
- result = tokenValue.other.replace(
14715
- "{{count}}",
14716
- count < 13 ? wordMapping[count] : String(count)
14717
- );
14718
- }
14719
- if (options?.addSuffix) {
14720
- if (options.comparison && options.comparison > 0) {
14721
- return "om " + result;
14722
- } else {
14723
- return result + " sedan";
14724
- }
14725
- }
14726
- return result;
14727
- };
14728
- const dateFormats = {
14729
- full: "EEEE d MMMM y",
14730
- long: "d MMMM y",
14731
- medium: "d MMM y",
14732
- short: "y-MM-dd"
14733
- };
14734
- const timeFormats = {
14735
- full: "'kl'. HH:mm:ss zzzz",
14736
- long: "HH:mm:ss z",
14737
- medium: "HH:mm:ss",
14738
- short: "HH:mm"
14739
- };
14740
- const dateTimeFormats = {
14741
- full: "{{date}} 'kl.' {{time}}",
14742
- long: "{{date}} 'kl.' {{time}}",
14743
- medium: "{{date}} {{time}}",
14744
- short: "{{date}} {{time}}"
14745
- };
14746
- const formatLong = {
14747
- date: buildFormatLongFn({
14748
- formats: dateFormats,
14749
- defaultWidth: "full"
14750
- }),
14751
- time: buildFormatLongFn({
14752
- formats: timeFormats,
14753
- defaultWidth: "full"
14754
- }),
14755
- dateTime: buildFormatLongFn({
14756
- formats: dateTimeFormats,
14757
- defaultWidth: "full"
14758
- })
14628
+ const en = {
14629
+ "FdsWeekCalendar.nextWeek": "Next week",
14630
+ "FdsWeekCalendar.previousWeek": "Previous week",
14631
+ "FdsWeekCalendar.today": "Today",
14632
+ "FdsWeekCalendar.week": "week"
14759
14633
  };
14760
- const formatRelativeLocale = {
14761
- lastWeek: "'i' EEEE's kl.' p",
14762
- yesterday: "'igår kl.' p",
14763
- today: "'idag kl.' p",
14764
- tomorrow: "'imorgon kl.' p",
14765
- nextWeek: "EEEE 'kl.' p",
14766
- other: "P"
14767
- };
14768
- const formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale[token];
14769
- const eraValues = {
14770
- narrow: ["f.Kr.", "e.Kr."],
14771
- abbreviated: ["f.Kr.", "e.Kr."],
14772
- wide: ["före Kristus", "efter Kristus"]
14773
- };
14774
- const quarterValues = {
14775
- narrow: ["1", "2", "3", "4"],
14776
- abbreviated: ["Q1", "Q2", "Q3", "Q4"],
14777
- wide: ["1:a kvartalet", "2:a kvartalet", "3:e kvartalet", "4:e kvartalet"]
14778
- };
14779
- const monthValues = {
14780
- narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],
14781
- abbreviated: [
14782
- "jan.",
14783
- "feb.",
14784
- "mars",
14785
- "apr.",
14786
- "maj",
14787
- "juni",
14788
- "juli",
14789
- "aug.",
14790
- "sep.",
14791
- "okt.",
14792
- "nov.",
14793
- "dec."
14794
- ],
14795
- wide: [
14796
- "januari",
14797
- "februari",
14798
- "mars",
14799
- "april",
14800
- "maj",
14801
- "juni",
14802
- "juli",
14803
- "augusti",
14804
- "september",
14805
- "oktober",
14806
- "november",
14807
- "december"
14808
- ]
14634
+ const sv = {
14635
+ "FdsWeekCalendar.nextWeek": "Nästa vecka",
14636
+ "FdsWeekCalendar.previousWeek": "Föregående vecka",
14637
+ "FdsWeekCalendar.today": "Idag",
14638
+ "FdsWeekCalendar.week": "vecka"
14809
14639
  };
14810
- const dayValues = {
14811
- narrow: ["S", "M", "T", "O", "T", "F", "L"],
14812
- short: ["sö", "må", "ti", "on", "to", "fr", "lö"],
14813
- abbreviated: ["sön", "mån", "tis", "ons", "tors", "fre", "lör"],
14814
- wide: ["söndag", "måndag", "tisdag", "onsdag", "torsdag", "fredag", "lördag"]
14640
+ const FDS_VUE_CORE_I18N_KEY = /* @__PURE__ */ Symbol("fds-vue-core:i18n");
14641
+ const translations = {
14642
+ en,
14643
+ sv
14815
14644
  };
14816
- const dayPeriodValues = {
14817
- narrow: {
14818
- am: "fm",
14819
- pm: "em",
14820
- midnight: "midnatt",
14821
- noon: "middag",
14822
- morning: "morg.",
14823
- afternoon: "efterm.",
14824
- evening: "kväll",
14825
- night: "natt"
14826
- },
14827
- abbreviated: {
14828
- am: "f.m.",
14829
- pm: "e.m.",
14830
- midnight: "midnatt",
14831
- noon: "middag",
14832
- morning: "morgon",
14833
- afternoon: "efterm.",
14834
- evening: "kväll",
14835
- night: "natt"
14836
- },
14837
- wide: {
14838
- am: "förmiddag",
14839
- pm: "eftermiddag",
14840
- midnight: "midnatt",
14841
- noon: "middag",
14842
- morning: "morgon",
14843
- afternoon: "eftermiddag",
14844
- evening: "kväll",
14845
- night: "natt"
14846
- }
14645
+ const useFdsI18n = () => {
14646
+ const i18n = vue.inject(FDS_VUE_CORE_I18N_KEY, void 0);
14647
+ const locale = vue.computed(() => {
14648
+ const locale2 = i18n?.global?.locale ?? i18n?.locale;
14649
+ if (typeof locale2 === "string") return locale2;
14650
+ if (locale2 && typeof locale2 === "object" && "value" in locale2 && typeof locale2.value === "string") {
14651
+ return locale2.value;
14652
+ }
14653
+ return "sv-SE";
14654
+ });
14655
+ const activeLanguage = vue.computed(() => locale.value.toLowerCase().split("-")[0]);
14656
+ const dictionary = vue.computed(() => {
14657
+ const currentDictionary = translations[activeLanguage.value];
14658
+ return currentDictionary ?? translations.sv;
14659
+ });
14660
+ const t = (key) => {
14661
+ const value = dictionary.value[key];
14662
+ return typeof value === "string" ? value : "";
14663
+ };
14664
+ return {
14665
+ i18n,
14666
+ locale,
14667
+ t
14668
+ };
14847
14669
  };
14848
- const formattingDayPeriodValues = {
14849
- narrow: {
14850
- am: "fm",
14851
- pm: "em",
14852
- midnight: "midnatt",
14853
- noon: "middag",
14854
- morning: "på morg.",
14855
- afternoon: "på efterm.",
14856
- evening: "på kvällen",
14857
- night: "på natten"
14858
- },
14859
- abbreviated: {
14860
- am: "fm",
14861
- pm: "em",
14862
- midnight: "midnatt",
14863
- noon: "middag",
14864
- morning: "på morg.",
14865
- afternoon: "på efterm.",
14866
- evening: "på kvällen",
14867
- night: "på natten"
14868
- },
14869
- wide: {
14870
- am: "fm",
14871
- pm: "em",
14872
- midnight: "midnatt",
14873
- noon: "middag",
14874
- morning: "på morgonen",
14875
- afternoon: "på eftermiddagen",
14876
- evening: "på kvällen",
14877
- night: "på natten"
14878
- }
14670
+ const capitalizeFirstLetter$1 = (value) => {
14671
+ if (!value) return value;
14672
+ return value.charAt(0).toUpperCase() + value.slice(1);
14879
14673
  };
14880
- const ordinalNumber = (dirtyNumber, _options) => {
14881
- const number = Number(dirtyNumber);
14882
- const rem100 = number % 100;
14883
- if (rem100 > 20 || rem100 < 10) {
14884
- switch (rem100 % 10) {
14885
- case 1:
14886
- case 2:
14887
- return number + ":a";
14888
- }
14674
+ const getOverlappingMonths = (week, locale = "sv-SE") => {
14675
+ const startDayMonth = startOfISOWeek(week);
14676
+ const endDayMonth = addDays(startDayMonth, 6);
14677
+ const shortMonthFormatter = new Intl.DateTimeFormat(locale, { month: "short" });
14678
+ const longMonthFormatter = new Intl.DateTimeFormat(locale, { month: "long" });
14679
+ if (!isSameMonth(startDayMonth, endDayMonth)) {
14680
+ return `${capitalizeFirstLetter$1(shortMonthFormatter.format(startDayMonth).replace(".", ""))} - ${capitalizeFirstLetter$1(
14681
+ shortMonthFormatter.format(endDayMonth).replace(".", "")
14682
+ )}`;
14889
14683
  }
14890
- return number + ":e";
14891
- };
14892
- const localize = {
14893
- ordinalNumber,
14894
- era: buildLocalizeFn({
14895
- values: eraValues,
14896
- defaultWidth: "wide"
14897
- }),
14898
- quarter: buildLocalizeFn({
14899
- values: quarterValues,
14900
- defaultWidth: "wide",
14901
- argumentCallback: (quarter) => quarter - 1
14902
- }),
14903
- month: buildLocalizeFn({
14904
- values: monthValues,
14905
- defaultWidth: "wide"
14906
- }),
14907
- day: buildLocalizeFn({
14908
- values: dayValues,
14909
- defaultWidth: "wide"
14910
- }),
14911
- dayPeriod: buildLocalizeFn({
14912
- values: dayPeriodValues,
14913
- defaultWidth: "wide",
14914
- formattingValues: formattingDayPeriodValues,
14915
- defaultFormattingWidth: "wide"
14916
- })
14917
- };
14918
- const matchOrdinalNumberPattern = /^(\d+)(:a|:e)?/i;
14919
- const parseOrdinalNumberPattern = /\d+/i;
14920
- const matchEraPatterns = {
14921
- narrow: /^(f\.? ?Kr\.?|f\.? ?v\.? ?t\.?|e\.? ?Kr\.?|v\.? ?t\.?)/i,
14922
- abbreviated: /^(f\.? ?Kr\.?|f\.? ?v\.? ?t\.?|e\.? ?Kr\.?|v\.? ?t\.?)/i,
14923
- wide: /^(före Kristus|före vår tid|efter Kristus|vår tid)/i
14924
- };
14925
- const parseEraPatterns = {
14926
- any: [/^f/i, /^[ev]/i]
14927
- };
14928
- const matchQuarterPatterns = {
14929
- narrow: /^[1234]/i,
14930
- abbreviated: /^q[1234]/i,
14931
- wide: /^[1234](:a|:e)? kvartalet/i
14932
- };
14933
- const parseQuarterPatterns = {
14934
- any: [/1/i, /2/i, /3/i, /4/i]
14684
+ return capitalizeFirstLetter$1(longMonthFormatter.format(startOfISOWeek(week)));
14935
14685
  };
14936
- const matchMonthPatterns = {
14937
- narrow: /^[jfmasond]/i,
14938
- abbreviated: /^(jan|feb|mar[s]?|apr|maj|jun[i]?|jul[i]?|aug|sep|okt|nov|dec)\.?/i,
14939
- wide: /^(januari|februari|mars|april|maj|juni|juli|augusti|september|oktober|november|december)/i
14940
- };
14941
- const parseMonthPatterns = {
14942
- narrow: [
14943
- /^j/i,
14944
- /^f/i,
14945
- /^m/i,
14946
- /^a/i,
14947
- /^m/i,
14948
- /^j/i,
14949
- /^j/i,
14950
- /^a/i,
14951
- /^s/i,
14952
- /^o/i,
14953
- /^n/i,
14954
- /^d/i
14955
- ],
14956
- any: [
14957
- /^ja/i,
14958
- /^f/i,
14959
- /^mar/i,
14960
- /^ap/i,
14961
- /^maj/i,
14962
- /^jun/i,
14963
- /^jul/i,
14964
- /^au/i,
14965
- /^s/i,
14966
- /^o/i,
14967
- /^n/i,
14968
- /^d/i
14969
- ]
14970
- };
14971
- const matchDayPatterns = {
14972
- narrow: /^[smtofl]/i,
14973
- short: /^(sö|må|ti|on|to|fr|lö)/i,
14974
- abbreviated: /^(sön|mån|tis|ons|tors|fre|lör)/i,
14975
- wide: /^(söndag|måndag|tisdag|onsdag|torsdag|fredag|lördag)/i
14976
- };
14977
- const parseDayPatterns = {
14978
- any: [/^s/i, /^m/i, /^ti/i, /^o/i, /^to/i, /^f/i, /^l/i]
14979
- };
14980
- const matchDayPeriodPatterns = {
14981
- any: /^([fe]\.?\s?m\.?|midn(att)?|midd(ag)?|(på) (morgonen|eftermiddagen|kvällen|natten))/i
14982
- };
14983
- const parseDayPeriodPatterns = {
14984
- any: {
14985
- am: /^f/i,
14986
- pm: /^e/i,
14987
- midnight: /^midn/i,
14988
- noon: /^midd/i,
14989
- morning: /morgon/i,
14990
- afternoon: /eftermiddag/i,
14991
- evening: /kväll/i,
14992
- night: /natt/i
14686
+ const getDaysInWeek = (weekStart) => {
14687
+ const startOfWeek2 = startOfISOWeek(weekStart);
14688
+ const day = subDays(startOfWeek2);
14689
+ const calendar = [];
14690
+ for (let index = 0; index < 7; index++) {
14691
+ calendar.push(addDays(day, index + 1));
14993
14692
  }
14693
+ return calendar;
14994
14694
  };
14995
- const match = {
14996
- ordinalNumber: buildMatchPatternFn({
14997
- matchPattern: matchOrdinalNumberPattern,
14998
- parsePattern: parseOrdinalNumberPattern,
14999
- valueCallback: (value) => parseInt(value, 10)
15000
- }),
15001
- era: buildMatchFn({
15002
- matchPatterns: matchEraPatterns,
15003
- defaultMatchWidth: "wide",
15004
- parsePatterns: parseEraPatterns,
15005
- defaultParseWidth: "any"
15006
- }),
15007
- quarter: buildMatchFn({
15008
- matchPatterns: matchQuarterPatterns,
15009
- defaultMatchWidth: "wide",
15010
- parsePatterns: parseQuarterPatterns,
15011
- defaultParseWidth: "any",
15012
- valueCallback: (index) => index + 1
15013
- }),
15014
- month: buildMatchFn({
15015
- matchPatterns: matchMonthPatterns,
15016
- defaultMatchWidth: "wide",
15017
- parsePatterns: parseMonthPatterns,
15018
- defaultParseWidth: "any"
15019
- }),
15020
- day: buildMatchFn({
15021
- matchPatterns: matchDayPatterns,
15022
- defaultMatchWidth: "wide",
15023
- parsePatterns: parseDayPatterns,
15024
- defaultParseWidth: "any"
15025
- }),
15026
- dayPeriod: buildMatchFn({
15027
- matchPatterns: matchDayPeriodPatterns,
15028
- defaultMatchWidth: "any",
15029
- parsePatterns: parseDayPeriodPatterns,
15030
- defaultParseWidth: "any"
15031
- })
14695
+ const getDaysOfLastWeek = (week) => getDaysInWeek(week);
14696
+ const getStartAndEndRangeFromWeek = (week) => {
14697
+ const lastDay = week.at(-1);
14698
+ const firstDay = week.at(0);
14699
+ return {
14700
+ endDate: lastDay ? format(lastDay, "yyyy-MM-dd") : void 0,
14701
+ startDate: firstDay ? format(firstDay, "yyyy-MM-dd") : void 0
14702
+ };
15032
14703
  };
15033
- const sv = {
15034
- code: "sv",
15035
- formatDistance,
15036
- formatLong,
15037
- formatRelative,
15038
- localize,
15039
- match,
15040
- options: {
15041
- weekStartsOn: 1,
15042
- firstWeekContainsDate: 4
15043
- }
14704
+ const checkIfDateIsBeforeToday = (date) => {
14705
+ const startOfDate = startOfDay(date);
14706
+ const startOfToday = startOfDay(/* @__PURE__ */ new Date());
14707
+ return isAfter(startOfToday, startOfDate);
15044
14708
  };
14709
+ const checkIfDateIsEnabled = (date, enabledDates) => enabledDates.some((enabledDate) => isSameDay(enabledDate, date));
15045
14710
  const _hoisted_1$6 = ["disabled"];
15046
14711
  const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
15047
14712
  __name: "WeekDay",
@@ -15055,6 +14720,7 @@ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
15055
14720
  setup(__props, { emit: __emit }) {
15056
14721
  const props = __props;
15057
14722
  const emit = __emit;
14723
+ const { locale, t } = useFdsI18n();
15058
14724
  const classes = vue.computed(() => [
15059
14725
  "box-border flex h-[64px] w-full max-w-[100px] flex-1 basis-0 flex-col items-center justify-center border-2 border-transparent px-1 py-1 transition-colors cursor-pointer",
15060
14726
  props.disabled ? "" : "hover:border-2 hover:border-blue-500 border-solid",
@@ -15076,7 +14742,7 @@ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
15076
14742
  emit("select-date", props.selected ? null : props.date);
15077
14743
  };
15078
14744
  const weekdayLabel = vue.computed(() => {
15079
- const value = format(props.date, "EEE", { locale: sv });
14745
+ const value = new Intl.DateTimeFormat(locale.value, { weekday: "short" }).format(props.date);
15080
14746
  return value.charAt(0).toUpperCase() + value.slice(1).replace(".", "");
15081
14747
  });
15082
14748
  return (_ctx, _cache) => {
@@ -15093,9 +14759,9 @@ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
15093
14759
  class: vue.normalizeClass(weekdayLabelClasses.value)
15094
14760
  }, [
15095
14761
  __props.isToday ? (vue.openBlock(), vue.createBlock(_sfc_main$t, { key: 0 }, {
15096
- default: vue.withCtx(() => [..._cache[0] || (_cache[0] = [
15097
- vue.createTextVNode("Idag", -1)
15098
- ])]),
14762
+ default: vue.withCtx(() => [
14763
+ vue.createTextVNode(vue.toDisplayString(vue.unref(t)("FdsWeekCalendar.today")), 1)
14764
+ ]),
15099
14765
  _: 1
15100
14766
  })) : (vue.openBlock(), vue.createBlock(_sfc_main$t, { key: 1 }, {
15101
14767
  default: vue.withCtx(() => [
@@ -15108,44 +14774,6 @@ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
15108
14774
  };
15109
14775
  }
15110
14776
  });
15111
- const capitalizeFirstLetter$1 = (value) => {
15112
- if (!value) return value;
15113
- return value.charAt(0).toUpperCase() + value.slice(1);
15114
- };
15115
- const getOverlappingMonths = (week) => {
15116
- const startDayMonth = startOfISOWeek(week);
15117
- const endDayMonth = addDays(startDayMonth, 6);
15118
- if (!isSameMonth(startDayMonth, endDayMonth)) {
15119
- return `${capitalizeFirstLetter$1(format(startDayMonth, "MMM", { locale: sv }).replace(".", ""))} - ${capitalizeFirstLetter$1(
15120
- format(endDayMonth, "MMM", { locale: sv }).replace(".", "")
15121
- )}`;
15122
- }
15123
- return capitalizeFirstLetter$1(format(startOfISOWeek(week), "MMMM", { locale: sv }));
15124
- };
15125
- const getDaysInWeek = (weekStart) => {
15126
- const startOfWeek2 = startOfISOWeek(weekStart);
15127
- const day = subDays(startOfWeek2);
15128
- const calendar = [];
15129
- for (let index = 0; index < 7; index++) {
15130
- calendar.push(addDays(day, index + 1));
15131
- }
15132
- return calendar;
15133
- };
15134
- const getDaysOfLastWeek = (week) => getDaysInWeek(week);
15135
- const getStartAndEndRangeFromWeek = (week) => {
15136
- const lastDay = week.at(-1);
15137
- const firstDay = week.at(0);
15138
- return {
15139
- endDate: lastDay ? format(lastDay, "yyyy-MM-dd") : void 0,
15140
- startDate: firstDay ? format(firstDay, "yyyy-MM-dd") : void 0
15141
- };
15142
- };
15143
- const checkIfDateIsBeforeToday = (date) => {
15144
- const startOfDate = startOfDay(date);
15145
- const startOfToday = startOfDay(/* @__PURE__ */ new Date());
15146
- return isAfter(startOfToday, startOfDate);
15147
- };
15148
- const checkIfDateIsEnabled = (date, enabledDates) => enabledDates.some((enabledDate) => isSameDay(enabledDate, date));
15149
14777
  const _hoisted_1$5 = { class: "mb-6" };
15150
14778
  const _hoisted_2$4 = { class: "max-w-[487px]" };
15151
14779
  const _hoisted_3$4 = { class: "mb-3 flex w-full flex-row items-center" };
@@ -15166,6 +14794,7 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
15166
14794
  disableNextWeek: { type: Boolean, default: false },
15167
14795
  enableHorizontalAnimation: { type: Boolean, default: true },
15168
14796
  minWeek: { default: void 0 },
14797
+ goToWeek: {},
15169
14798
  maxDate: { default: void 0 },
15170
14799
  previewOtherDays: { type: Boolean, default: false },
15171
14800
  selected: { default: null },
@@ -15179,13 +14808,16 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
15179
14808
  setup(__props, { emit: __emit }) {
15180
14809
  const props = __props;
15181
14810
  const emit = __emit;
14811
+ const { locale, t } = useFdsI18n();
15182
14812
  const currentWeek = vue.ref(props.minWeek ?? startOfISOWeek(/* @__PURE__ */ new Date()));
15183
14813
  const selectedDay = vue.ref(props.selected ?? null);
15184
14814
  const slideDirection = vue.ref("left");
15185
14815
  const weekToRender = vue.computed(() => getDaysInWeek(currentWeek.value));
15186
14816
  const visibleWeekDays = vue.computed(() => weekToRender.value.filter((day) => getISODay(day) <= 5));
15187
14817
  const lastWeek = vue.computed(() => getDaysOfLastWeek(subWeeks(currentWeek.value)));
15188
- const weekText = vue.computed(() => `${getOverlappingMonths(currentWeek.value)} (vecka ${getISOWeek(currentWeek.value)})`);
14818
+ const weekText = vue.computed(
14819
+ () => `${getOverlappingMonths(currentWeek.value, locale.value)} (${t("FdsWeekCalendar.week")} ${getISOWeek(currentWeek.value)})`
14820
+ );
15189
14821
  const lastDayOfPreviousWeek = vue.computed(() => lastWeek.value[lastWeek.value.length - 1]);
15190
14822
  const disableLastWeekInteraction = vue.computed(
15191
14823
  () => !!props.disablePreviousWeek || !!lastDayOfPreviousWeek.value && checkIfDateIsBeforeToday(lastDayOfPreviousWeek.value) || !!props.minWeek && isBefore(subWeeks(currentWeek.value), startOfISOWeek(props.minWeek))
@@ -15245,6 +14877,17 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
15245
14877
  emit("select-date", newSelected ?? null);
15246
14878
  }
15247
14879
  );
14880
+ vue.watch(
14881
+ () => props.goToWeek?.getTime(),
14882
+ (newTimestamp) => {
14883
+ if (!newTimestamp) return;
14884
+ const normalizedWeek = startOfISOWeek(new Date(newTimestamp));
14885
+ if (isSameWeek(normalizedWeek, currentWeek.value, { weekStartsOn: 1 })) return;
14886
+ slideDirection.value = normalizedWeek.getTime() > currentWeek.value.getTime() ? "left" : "right";
14887
+ onHandleSetCurrentWeek(normalizedWeek);
14888
+ },
14889
+ { immediate: true }
14890
+ );
15248
14891
  const onHandleSelectedDay = (weekDay) => {
15249
14892
  selectedDay.value = weekDay;
15250
14893
  emit("select-date", weekDay);
@@ -15255,17 +14898,22 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
15255
14898
  }
15256
14899
  currentWeek.value = week;
15257
14900
  };
14901
+ const navigateToWeek = (week) => {
14902
+ const normalizedWeek = startOfISOWeek(week);
14903
+ if (isSameWeek(normalizedWeek, currentWeek.value, { weekStartsOn: 1 })) return;
14904
+ const isForward = normalizedWeek.getTime() > currentWeek.value.getTime();
14905
+ if (isForward && disableNextWeekInteraction.value) return;
14906
+ if (!isForward && disableLastWeekInteraction.value) return;
14907
+ slideDirection.value = isForward ? "left" : "right";
14908
+ onHandleSetCurrentWeek(normalizedWeek);
14909
+ };
15258
14910
  const incrementWeek = () => {
15259
- if (disableNextWeekInteraction.value) return;
15260
- slideDirection.value = "left";
15261
14911
  emit("increment-week");
15262
- onHandleSetCurrentWeek(addWeeks(currentWeek.value, 1));
14912
+ navigateToWeek(addWeeks(currentWeek.value, 1));
15263
14913
  };
15264
14914
  const decrementWeek = () => {
15265
- if (disableLastWeekInteraction.value) return;
15266
- slideDirection.value = "right";
15267
14915
  emit("decrement-week");
15268
- onHandleSetCurrentWeek(subWeeks(currentWeek.value));
14916
+ navigateToWeek(subWeeks(currentWeek.value));
15269
14917
  };
15270
14918
  const isWeekDayDisabled = (weekDay) => checkIfDateIsBeforeToday(weekDay) || !checkIfDateIsEnabled(weekDay, props.enabledDates);
15271
14919
  const isTodayDate = (weekDay) => isSameDay(weekDay, /* @__PURE__ */ new Date());
@@ -15278,15 +14926,15 @@ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
15278
14926
  vue.createVNode(_sfc_main$I, {
15279
14927
  icon: "arrowLeft",
15280
14928
  disabled: disableLastWeekInteraction.value,
15281
- "aria-label": "Previous week",
14929
+ "aria-label": vue.unref(t)("FdsWeekCalendar.previousWeek"),
15282
14930
  onClick: decrementWeek
15283
- }, null, 8, ["disabled"]),
14931
+ }, null, 8, ["disabled", "aria-label"]),
15284
14932
  vue.createVNode(_sfc_main$I, {
15285
14933
  icon: "arrowRight",
15286
14934
  disabled: disableNextWeekInteraction.value,
15287
- "aria-label": "Next week",
14935
+ "aria-label": vue.unref(t)("FdsWeekCalendar.nextWeek"),
15288
14936
  onClick: incrementWeek
15289
- }, null, 8, ["disabled"])
14937
+ }, null, 8, ["disabled", "aria-label"])
15290
14938
  ])
15291
14939
  ]),
15292
14940
  vue.createElementVNode("div", _hoisted_6$2, [
@@ -16685,7 +16333,10 @@ const logoFeelgoodColored = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.or
16685
16333
  const logoFeelgoodLight = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='240'%20height='83'%20xmlns:v='https://vecta.io/nano'%3e%3cpath%20fill='%23fff'%20d='M39.389%2011.947L36.139%2026h.001%208.038v3H35.55l-2.575%2012.093c-.813%203.982-1.716%207.964-2.711%2011.857-1.625%206.336-5.781%2017.378-9.576%2022.628C16.804%2081.009%2013.641%2083%206.866%2083%203.433%2083%200%2080.375%200%2076.845c0-2.353%201.806-4.344%204.246-4.344%202.078%200%204.246%201.266%204.246%203.62%200%201.086-.361%201.72-.723%202.172s-.722.724-.722%201.267c0%201.177%201.535%201.177%202.348%201.177%202.982%200%205.692-2.263%207.77-9.052%201.445-4.706%202.259-9.684%203.162-14.481L25.948%2029h-8.421l-.001-3h9.258s-.076.268%200%200c2.628-9.359%206.73-20.689%2016.038-24.824C44.268.543%2045.984%200%2048.514%200%2052.85%200%2058%202.262%2058%207.241c0%203.077-1.897%204.706-4.879%204.706-2.62%200-3.975-1.629-4.246-4.163-.18-1.448.813-2.897%201.626-3.62%201.988-1.72-1.626-1.902-2.529-1.902-4.427%200-7.318%204.254-8.583%209.685zm9.227%2028.868h8.559v-4.608c0-5.186-2.222-5.432-4.279-5.432-2.881%200-4.28%201.727-4.28%205.679v4.361zm17.53%201.976h-17.53v7.571c0%205.926%202.222%208.807%205.926%208.807%204.938%200%208.888-2.634%209.958-8.231h1.975c-1.317%206.337-5.843%2010.452-12.427%2010.452-9.547%200-14.978-7.242-14.978-16.295%200-8.148%205.596-16.049%2014.319-16.049%207.654%200%2012.757%206.584%2012.757%2013.745zm12.403-1.976h8.559v-4.608c0-5.186-2.222-5.432-4.279-5.432-2.881%200-4.28%201.727-4.28%205.679v4.361zm17.53%201.976h-17.53v7.571c0%205.926%202.222%208.807%205.926%208.807%204.938%200%208.888-2.634%209.958-8.231h1.975c-1.317%206.337-5.843%2010.452-12.427%2010.452-9.547%200-14.979-7.242-14.979-16.295%200-8.148%205.597-16.049%2014.32-16.049%207.654%200%2012.757%206.584%2012.757%2013.745zM101.159%209h-3.457V7h12.181v52h3.456v2H98v-2h3.159V9zm25.733%2041.691h-2.469c-4.115%200-5.679%201.646-5.679%203.539%200%201.482.905%202.716%204.773%202.716%203.21%200%206.42-.082%209.547-.164%206.749-.165%209.959%203.209%209.959%208.394%200%206.584-4.527%2014.156-15.308%2014.156-10.287%200-12.098-5.761-12.098-7.655%200-3.867%201.811-5.348%206.007-7.653-4.032-1.152-6.089-3.703-6.089-7.983%200-3.704%203.456-6.172%206.584-6.749v-.164c-3.869-1.4-6.502-5.103-6.502-9.547%200-2.716%202.387-10.535%2012.344-10.535%202.799%200%205.515%201.071%207.82%202.634.822-1.728%202.632-3.704%204.69-3.704%201.811%200%203.374.905%203.374%202.881%200%201.563-.987%202.469-2.551%202.469-1.316%200-2.221-.493-2.798-1.728a5.2%205.2%200%200%200-1.81%201.152c2.14%201.81%203.127%204.526%203.127%207.325%200%204.937-2.881%2010.616-12.921%2010.616zm-3.292-9.958c0%206.502.823%208.23%204.279%208.23%203.21%200%203.704-1.399%203.704-10.699%200-6.749-1.07-7.489-3.622-7.489-3.949%200-4.361%201.893-4.361%209.958zm10.369%2023.62h-11.11c-.988%201.729-1.564%202.634-1.564%204.774%200%205.267%203.128%207.9%208.231%207.9%205.513%200%2010.863-3.868%2010.863-8.888%200-2.386-.658-3.786-6.42-3.786zm19.418-26.912v14.814c0%205.349%201.234%207.572%204.773%207.572%203.951%200%204.774-2.223%204.774-7.49V37.441c0-6.09-2.305-6.831-4.774-6.831s-4.773.741-4.773%206.831zm4.773%2023.949c-9.628%200-14.237-8.065-14.237-16.131%200-8.147%204.609-16.213%2014.237-16.213s14.239%208.066%2014.239%2016.213c0%208.066-4.61%2016.131-14.239%2016.131zm27.217-23.949v14.814c0%205.349%201.234%207.572%204.773%207.572%203.951%200%204.774-2.223%204.774-7.49V37.441c0-6.09-2.305-6.831-4.774-6.831s-4.773.741-4.773%206.831zm4.773%2023.949c-9.628%200-14.238-8.065-14.238-16.131%200-8.147%204.61-16.213%2014.238-16.213s14.239%208.066%2014.239%2016.213c0%208.066-4.61%2016.131-14.239%2016.131zm37.505-12.592v-5.103c0-5.678-1.234-12.674-7.078-12.674-3.539%200-3.621%205.349-3.621%208.724v12.839c0%202.963.247%206.83%203.786%206.83%203.292%200%206.831-2.88%206.913-10.616zM236.379%2059H240v2h-12.263v-4.301h-.164c-1.317%202.881-4.444%204.692-7.819%204.692-8.806%200-12.098-8.23-12.098-15.802%200-10.287%204.855-16.542%2012.427-16.542%203.292%200%206.009%202.222%207.407%204.773h.165V8.883h-3.95V7h12.674v52z'/%3e%3c/svg%3e";
16686
16334
  const bankid = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='85'%20height='80'%20fill='%23193e4f'%20xmlns:v='https://vecta.io/nano'%3e%3cpath%20d='M26.693%2041.74l3.534-22.276h-3.775c-1.767%200-4.043-.991-4.712-2.811-.214-.616-.723-2.731%202.195-4.793%201.044-.723%201.714-1.526%201.847-2.142.134-.643-.027-1.205-.482-1.633-.643-.616-1.901-.964-3.507-.964-2.704%200-4.605%201.553-4.792%202.677-.134.83.509%201.499%201.071%201.928%201.687%201.258%202.088%203.079%201.044%204.793-1.071%201.767-3.4%202.918-5.89%202.945H9.371L3.4%2057.51h20.83l2.463-15.77zM2.276%2065.221h8.541c3.641%200%204.525%201.847%204.257%203.534-.214%201.366-1.151%202.383-2.758%203.052%202.035.776%202.838%201.981%202.544%203.882-.375%202.383-2.436%204.15-5.141%204.15H0l2.276-14.618zm5.649%206.051c1.66%200%202.436-.884%202.597-1.928.161-1.124-.348-1.901-2.008-1.901H7.042l-.589%203.829h1.473zm-.91%206.292c1.714%200%202.704-.696%202.945-2.115.187-1.232-.509-1.954-2.169-1.954h-1.66l-.643%204.096h1.526v-.027zm19.812%202.383c-2.222.161-3.293-.08-3.829-1.044-1.178.723-2.49%201.098-3.882%201.098-2.517%200-3.4-1.312-3.159-2.758.107-.696.509-1.365%201.151-1.928%201.392-1.205%204.819-1.365%206.158-2.276.107-1.017-.294-1.392-1.553-1.392-1.473%200-2.704.482-4.819%201.928l.509-3.32c1.821-1.312%203.588-1.928%205.623-1.928%202.597%200%204.9%201.071%204.471%203.909l-.509%203.213c-.187%201.124-.134%201.473%201.125%201.499l-1.285%202.999zm-3.855-5.06c-1.178.75-3.373.616-3.615%202.169-.107.723.348%201.258%201.071%201.258.696%200%201.553-.294%202.249-.776-.054-.268-.027-.535.053-1.044l.241-1.606zm8.005-6.373h4.445l-.241%201.472c1.419-1.205%202.49-1.66%203.882-1.66%202.49%200%203.641%201.526%203.24%204.016l-1.151%207.47h-4.444l.964-6.185c.187-1.124-.161-1.66-1.017-1.66-.696%200-1.339.375-1.955%201.205l-1.017%206.613h-4.444l1.74-11.272zm14.806-3.293h4.445l-1.125%207.175%204.257-3.882h5.489l-5.462%204.819%204.391%206.479h-5.596l-3.373-5.248h-.054l-.803%205.221h-4.444l2.276-14.565zm15.716%200h5.114l-2.249%2014.592H59.25l2.249-14.592zm7.604%200h7.309c5.649%200%207.282%204.096%206.747%207.497-.509%203.32-3.133%207.095-8.086%207.095h-8.246l2.276-14.592zm4.739%2011.111c2.49%200%203.855-1.232%204.257-3.829.294-1.928-.295-3.829-3.052-3.829h-1.365l-1.178%207.657h1.339zM54.699%200H33.414l-2.838%2018.019h3.614c1.981%200%203.855-.91%204.659-2.222.268-.428.375-.803.375-1.151%200-.75-.509-1.312-1.017-1.687-1.392-1.044-1.687-2.142-1.687-2.918%200-.161%200-.295.027-.428.294-1.901%202.865-3.963%206.265-3.963%202.035%200%203.588.482%204.525%201.365.83.776%201.151%201.874.91%203.025-.294%201.365-1.66%202.49-2.436%203.052-2.062%201.446-1.794%202.704-1.66%203.079.428%201.124%202.062%201.847%203.32%201.847h5.515v.027c7.497.054%2011.513%203.507%2010.254%2011.54-1.178%207.47-6.908%2010.683-13.735%2010.736l-2.704%2017.242h3.989c16.841%200%2030.602-10.817%2033.307-27.898C87.443%208.461%2073.976%200%2054.699%200z'/%3e%3c/svg%3e";
16687
16335
  const FdsVueCorePlugin = {
16688
- install(app) {
16336
+ install(app, options) {
16337
+ if (options?.i18n) {
16338
+ app.provide(FDS_VUE_CORE_I18N_KEY, options.i18n);
16339
+ }
16689
16340
  app.component("FdsTreeView", _sfc_main$f);
16690
16341
  app.component("FdsButtonPrimary", _sfc_main$x);
16691
16342
  app.component("FdsButtonSecondary", _sfc_main$w);
@@ -16729,6 +16380,7 @@ const FdsVueCorePlugin = {
16729
16380
  app.component("FdsListHeading", _sfc_main);
16730
16381
  }
16731
16382
  };
16383
+ exports.FDS_VUE_CORE_I18N_KEY = FDS_VUE_CORE_I18N_KEY;
16732
16384
  exports.FdsBlockAlert = _sfc_main$H;
16733
16385
  exports.FdsBlockContent = _sfc_main$G;
16734
16386
  exports.FdsBlockExpander = _sfc_main$E;