@@ -13,26 +13,33 @@ import {
13
13
AfterViewChecked ,
14
14
AfterViewInit ,
15
15
ViewChild ,
16
- AfterContentInit ,
17
16
OnInit ,
18
17
SimpleChange
19
18
} from "@angular/core" ;
20
19
import rangePlugin from "flatpickr/dist/plugins/rangePlugin" ;
21
20
import flatpickr from "flatpickr" ;
22
21
import { NG_VALUE_ACCESSOR } from "@angular/forms" ;
23
22
import { carbonFlatpickrMonthSelectPlugin } from "./carbon-flatpickr-month-select" ;
24
- import languages from "flatpickr/dist/l10n/index" ;
23
+ import * as languages from "flatpickr/dist/l10n/index" ;
25
24
import { DatePickerInput } from "carbon-components-angular/datepicker-input" ;
26
25
import { I18n } from "carbon-components-angular/i18n" ;
27
26
28
- // Due to type error, we have to use square brackets property accessor
29
- ( languages . default [ "en" ] . weekdays . shorthand as string [ ] )
30
- = languages . default [ "en" ] . weekdays . longhand . map ( day => {
31
- if ( day === "Thursday" ) {
32
- return "Th" ;
33
- }
34
- return day . charAt ( 0 ) ;
35
- } ) ;
27
+ /**
28
+ * Due to type error, we have to use square brackets property accessor
29
+ * There is a webpack issue when attempting to access exported languages from flatpickr l10n Angular 14+ apps
30
+ * languages.default[locale] fails in app consuming CCA library but passes in test
31
+ * languages.default.default[locale] fails in test but works in app consuming CCA library.
32
+ *
33
+ * To please both scenarios, we are adding a condition to prevent tests from failing
34
+ */
35
+ if ( languages . default ?. default [ "en" ] ?. weekdays ) {
36
+ ( languages . default . default [ "en" ] . weekdays . shorthand as string [ ] ) = languages . default . default [ "en" ] . weekdays . longhand . map ( day => {
37
+ if ( day === "Thursday" ) {
38
+ return "Th" ;
39
+ }
40
+ return day . charAt ( 0 ) ;
41
+ } ) ;
42
+ }
36
43
37
44
/**
38
45
* [See demo](../../?path=/story/components-date-picker--single)
@@ -221,7 +228,7 @@ export class DatePicker implements
221
228
mode : this . range ? "range" : "single" ,
222
229
plugins,
223
230
dateFormat : this . dateFormat ,
224
- locale : languages . default [ this . language ]
231
+ locale : languages . default ?. default [ this . language ] || languages . default [ this . language ]
225
232
} ) ;
226
233
}
227
234
0 commit comments