carbon-components-angular 5.21.0 → 5.22.0

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.
Files changed (73) hide show
  1. package/datepicker/datepicker.component.d.ts +4 -39
  2. package/docs/documentation/components/DatePicker.html +108 -103
  3. package/docs/documentation/components/SideNav.html +59 -15
  4. package/docs/documentation/components/SideNavItem.html +123 -44
  5. package/docs/documentation/components/SideNavMenu.html +67 -25
  6. package/docs/documentation/coverage.html +10 -10
  7. package/docs/documentation/js/menu-wc.js +3 -3
  8. package/docs/documentation/js/menu-wc_es5.js +1 -1
  9. package/docs/documentation/js/search/search_index.js +2 -2
  10. package/docs/documentation/modules/SideNavModule.html +2 -1
  11. package/docs/documentation/modules/ThemeModule/dependencies.svg +15 -15
  12. package/docs/documentation/modules/ThemeModule.html +15 -15
  13. package/docs/documentation/modules/TilesModule/dependencies.svg +99 -99
  14. package/docs/documentation/modules/TilesModule.html +99 -99
  15. package/docs/documentation/modules/TimePickerModule/dependencies.svg +4 -4
  16. package/docs/documentation/modules/TimePickerModule.html +4 -4
  17. package/docs/documentation/modules/TimePickerSelectModule/dependencies.svg +45 -49
  18. package/docs/documentation/modules/TimePickerSelectModule.html +45 -49
  19. package/docs/documentation/modules/ToggleModule/dependencies.svg +26 -26
  20. package/docs/documentation/modules/ToggleModule.html +26 -26
  21. package/docs/documentation/modules/TooltipModule/dependencies.svg +29 -29
  22. package/docs/documentation/modules/TooltipModule.html +29 -29
  23. package/docs/documentation/modules/TreeviewModule/dependencies.svg +36 -36
  24. package/docs/documentation/modules/TreeviewModule.html +36 -36
  25. package/docs/documentation.json +225 -132
  26. package/docs/storybook/{1325.5502bfb0.iframe.bundle.js → 1325.3c39c950.iframe.bundle.js} +1 -1
  27. package/docs/storybook/3348.4c108918.iframe.bundle.js +1 -0
  28. package/docs/storybook/{checkbox-checkbox-stories.ea872c08.iframe.bundle.js → checkbox-checkbox-stories.3aeae19d.iframe.bundle.js} +1 -1
  29. package/docs/storybook/{content-switcher-content-switcher-stories.2f8cdd41.iframe.bundle.js → content-switcher-content-switcher-stories.8f3aa078.iframe.bundle.js} +1 -1
  30. package/docs/storybook/{grid-css-grid-stories.f5c396e2.iframe.bundle.js → grid-css-grid-stories.c703f9de.iframe.bundle.js} +1 -1
  31. package/docs/storybook/{grid-grid-stories.0b935617.iframe.bundle.js → grid-grid-stories.f7a88c02.iframe.bundle.js} +1 -1
  32. package/docs/storybook/iframe.html +2 -2
  33. package/docs/storybook/index.json +1 -1
  34. package/docs/storybook/{layer-layer-stories.8fdeec80.iframe.bundle.js → layer-layer-stories.9fc41371.iframe.bundle.js} +1 -1
  35. package/docs/storybook/{layout-stack-stories.e9f0fa18.iframe.bundle.js → layout-stack-stories.799a681c.iframe.bundle.js} +1 -1
  36. package/docs/storybook/{link-link-stories.23f8a587.iframe.bundle.js → link-link-stories.9e3dd976.iframe.bundle.js} +1 -1
  37. package/docs/storybook/{list-list-stories.79350958.iframe.bundle.js → list-list-stories.e906cf67.iframe.bundle.js} +1 -1
  38. package/docs/storybook/{loading-loading-stories.9594d513.iframe.bundle.js → loading-loading-stories.261bc118.iframe.bundle.js} +1 -1
  39. package/docs/storybook/main.d4ed0d37.iframe.bundle.js +1 -0
  40. package/docs/storybook/{popover-popover-stories.e8d6e7c9.iframe.bundle.js → popover-popover-stories.cc1684df.iframe.bundle.js} +1 -1
  41. package/docs/storybook/project.json +1 -1
  42. package/docs/storybook/{runtime~main.386e82b8.iframe.bundle.js → runtime~main.2883decf.iframe.bundle.js} +1 -1
  43. package/docs/storybook/{skeleton-skeleton-stories.48ffb189.iframe.bundle.js → skeleton-skeleton-stories.77f9485f.iframe.bundle.js} +1 -1
  44. package/docs/storybook/{slider-slider-stories.f608c3ca.iframe.bundle.js → slider-slider-stories.0a70e102.iframe.bundle.js} +1 -1
  45. package/docs/storybook/stories.json +1 -1
  46. package/docs/storybook/tabs-tabs-stories.183f4129.iframe.bundle.js +1 -0
  47. package/docs/storybook/{theme-theme-stories.781e4fdc.iframe.bundle.js → theme-theme-stories.66e1727e.iframe.bundle.js} +1 -1
  48. package/docs/storybook/{toggle-toggle-stories.7b2e3bc9.iframe.bundle.js → toggle-toggle-stories.def6c644.iframe.bundle.js} +1 -1
  49. package/docs/storybook/toggletip-toggletip-stories.22e37008.iframe.bundle.js +1 -0
  50. package/docs/storybook/{tooltip-definition-tooptip-stories.57864d79.iframe.bundle.js → tooltip-definition-tooptip-stories.2e1a211c.iframe.bundle.js} +1 -1
  51. package/docs/storybook/{tooltip-tooltip-stories.b15c3310.iframe.bundle.js → tooltip-tooltip-stories.6a4a1383.iframe.bundle.js} +1 -1
  52. package/docs/storybook/ui-shell-ui-shell-stories.a1fb87a2.iframe.bundle.js +1 -0
  53. package/esm2020/datepicker/datepicker.component.mjs +1 -1
  54. package/esm2020/ui-shell/sidenav/sidenav-item.component.mjs +55 -19
  55. package/esm2020/ui-shell/sidenav/sidenav-menu.component.mjs +11 -3
  56. package/esm2020/ui-shell/sidenav/sidenav.component.mjs +13 -3
  57. package/esm2020/ui-shell/sidenav/sidenav.module.mjs +5 -4
  58. package/fesm2015/carbon-components-angular-datepicker.mjs.map +1 -1
  59. package/fesm2015/carbon-components-angular-ui-shell.mjs +79 -25
  60. package/fesm2015/carbon-components-angular-ui-shell.mjs.map +1 -1
  61. package/fesm2020/carbon-components-angular-datepicker.mjs.map +1 -1
  62. package/fesm2020/carbon-components-angular-ui-shell.mjs +79 -25
  63. package/fesm2020/carbon-components-angular-ui-shell.mjs.map +1 -1
  64. package/package.json +1 -1
  65. package/ui-shell/sidenav/sidenav-item.component.d.ts +8 -4
  66. package/ui-shell/sidenav/sidenav-menu.component.d.ts +6 -2
  67. package/ui-shell/sidenav/sidenav.component.d.ts +5 -1
  68. package/ui-shell/sidenav/sidenav.module.d.ts +2 -1
  69. package/docs/storybook/3348.35ca85d6.iframe.bundle.js +0 -1
  70. package/docs/storybook/main.11f564c6.iframe.bundle.js +0 -1
  71. package/docs/storybook/tabs-tabs-stories.db9e209e.iframe.bundle.js +0 -1
  72. package/docs/storybook/toggletip-toggletip-stories.1da8eaf1.iframe.bundle.js +0 -1
  73. package/docs/storybook/ui-shell-ui-shell-stories.70551d65.iframe.bundle.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"carbon-components-angular-ui-shell.mjs","sources":["../../src/ui-shell/header/header.component.ts","../../src/ui-shell/header/header-item.component.ts","../../src/ui-shell/header/header-menu.component.ts","../../src/ui-shell/header/header-navigation.component.ts","../../src/ui-shell/header/header-global.component.ts","../../src/ui-shell/header/header-action.component.ts","../../src/ui-shell/header/hamburger.component.ts","../../src/ui-shell/header/header.module.ts","../../src/ui-shell/sidenav/sidenav-item.component.ts","../../src/ui-shell/sidenav/sidenav-menu.component.ts","../../src/ui-shell/sidenav/sidenav.component.ts","../../src/ui-shell/sidenav/sidenav.module.ts","../../src/ui-shell/panel/panel.component.ts","../../src/ui-shell/panel/switcher-list.component.ts","../../src/ui-shell/panel/switcher-list-item.component.ts","../../src/ui-shell/panel/panel.module.ts","../../src/ui-shell/ui-shell.module.ts","../../src/ui-shell/carbon-components-angular-ui-shell.ts"],"sourcesContent":["import {\n\tComponent,\n\tInput,\n\tOptional,\n\tOutput,\n\tEventEmitter,\n\tTemplateRef\n} from \"@angular/core\";\nimport { DomSanitizer } from \"@angular/platform-browser\";\nimport { Router } from \"@angular/router\";\nimport { I18n } from \"carbon-components-angular/i18n\";\n\n/**\n * A fixed header and navigation.\n * Header may contain a Hamburger menu to toggle the side navigation, navigation actions,\n * and global actions (generally in the form of `Panel`s).\n *\n * [See demo](../../?path=/story/components-ui-shell--header)\n */\n@Component({\n\tselector: \"cds-header, ibm-header\",\n\ttemplate: `\n\t\t<header\n\t\t\tclass=\"cds--header\"\n\t\t\t[attr.aria-label]=\"brand + ' ' + name\">\n\t\t\t<a\n\t\t\t\t*ngIf=\"skipTo\"\n\t\t\t\tclass=\"cds--skip-to-content\"\n\t\t\t\t[href]=\"skipTo\"\n\t\t\t\ttabindex=\"0\">\n\t\t\t\t{{ i18n.get(\"UI_SHELL.SKIP_TO\") | async }}\n\t\t\t</a>\n\t\t\t<ng-content select=\"cds-hamburger,ibm-hamburger\"></ng-content>\n\t\t\t<ng-template\n\t\t\t\t*ngIf=\"isTemplate(brand)\"\n\t\t\t\t[ngTemplateOutlet]=\"brand\">\n\t\t\t</ng-template>\n\t\t\t<ng-container *ngIf=\"!isTemplate(brand)\" [ngSwitch]=\"useRouter\">\n\t\t\t\t<a\n\t\t\t\t\t*ngSwitchCase=\"false\"\n\t\t\t\t\tclass=\"cds--header__name\"\n\t\t\t\t\t[href]=\"href\"\n\t\t\t\t\t(click)=\"navigate($event)\">\n\t\t\t\t\t<span class=\"cds--header__name--prefix\">{{brand}}&nbsp;</span>\n\t\t\t\t\t{{name}}\n\t\t\t\t</a>\n\t\t\t\t<a\n\t\t\t\t\t*ngSwitchCase=\"true\"\n\t\t\t\t\tclass=\"cds--header__name\"\n\t\t\t\t\t[routerLink]=\"route\">\n\t\t\t\t\t<span class=\"cds--header__name--prefix\">{{brand}}&nbsp;</span>\n\t\t\t\t\t{{name}}\n\t\t\t\t</a>\n\t\t\t</ng-container>\n\t\t\t<ng-content></ng-content>\n\t\t</header>\n\t`\n})\nexport class Header {\n\t/**\n\t * ID in the main body content to jump to. Used by keyboard and screen reader users to skip the header content.\n\t */\n\t@Input() skipTo: string;\n\t/**\n\t * Label that shows to the right of the `brand` text. Generally a product name.\n\t */\n\t@Input() name: string;\n\t/**\n\t * Top level branding. Defaults to \"IBM\"\n\t */\n\t@Input() brand: string | TemplateRef<any> = \"IBM\";\n\t/**\n\t * Optional link for the header\n\t */\n\t@Input() set href(v: string) {\n\t\tthis._href = v;\n\t}\n\n\tget href() {\n\t\treturn this.domSanitizer.bypassSecurityTrustUrl(this._href) as string;\n\t}\n\n\t/**\n\t * Array of commands to send to the router when the link is activated\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() route: any[];\n\n\t/**\n\t * Router options. Used in conjunction with `route`\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() routeExtras: any;\n\n\t/**\n\t * Use the routerLink attribute on <a> tag for navigation instead of using event handlers\n\t */\n\t@Input() useRouter = false;\n\n\t/**\n\t * Emits the navigation status promise when the link is activated\n\t */\n\t@Output() navigation = new EventEmitter<Promise<boolean>>();\n\n\tprotected _href = \"#\";\n\n\tconstructor(\n\t\tpublic i18n: I18n,\n\t\tprotected domSanitizer: DomSanitizer,\n\t\t@Optional() protected router: Router) { }\n\n\tpublic isTemplate(value) {\n\t\treturn value instanceof TemplateRef;\n\t}\n\n\tnavigate(event) {\n\t\tif (this.router && this.route) {\n\t\t\tevent.preventDefault();\n\t\t\tconst status = this.router.navigate(this.route, this.routeExtras);\n\t\t\tthis.navigation.emit(status);\n\t\t} else if (this._href === \"#\") {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n}\n","import {\n\tComponent,\n\tInput,\n\tOptional,\n\tEventEmitter,\n\tOutput,\n\tHostBinding\n} from \"@angular/core\";\nimport { DomSanitizer } from \"@angular/platform-browser\";\nimport { Router } from \"@angular/router\";\n\n/**\n * Individual item in the header. May be used a direct child of `HeaderNavigation` or `HeaderMenu`\n */\n@Component({\n\tselector: \"cds-header-item, ibm-header-item\",\n\ttemplate: `\n\t\t<ng-container [ngSwitch]=\"useRouter\">\n\t\t\t<ng-template #content><ng-content></ng-content></ng-template>\n\t\t\t<a\n\t\t\t\t*ngSwitchCase=\"false\"\n\t\t\t\tclass=\"cds--header__menu-item\"\n\t\t\t\ttabindex=\"0\"\n\t\t\t\t[ngClass]=\"{'cds--header__menu-item--current' : isCurrentPage}\"\n\t\t\t\t[href]=\"href\"\n\t\t\t\t(click)=\"navigate($event)\">\n\t\t\t\t<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n\t\t\t</a>\n\t\t\t<a\n\t\t\t\t*ngSwitchCase=\"true\"\n\t\t\t\tclass=\"cds--header__menu-item\"\n\t\t\t\t[routerLinkActive]=\"['cds--header__menu-item--current']\"\n\t\t\t\ttabindex=\"0\"\n\t\t\t\t[ngClass]=\"{'cds--header__menu-item--current' : isCurrentPage}\"\n\t\t\t\t[routerLink]=\"route\"\n\t\t\t\t[routerLinkActive]=\"activeLinkClass\">\n\t\t\t\t<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n\t\t\t</a>\n\t\t</ng-container>\n\t`,\n\tstyles: [`\n\t\t:host {\n\t\t\tdisplay: list-item;\n\t\t}\n\t`]\n})\nexport class HeaderItem {\n\t@HostBinding(\"attr.role\") role = \"listitem\";\n\t@Input() set href(v: string) {\n\t\t// Needed when component is created dynamically with a model.\n\t\tif (v === undefined) {\n\t\t\treturn;\n\t\t}\n\t\tthis._href = v;\n\t}\n\n\tget href() {\n\t\treturn this.domSanitizer.bypassSecurityTrustUrl(this._href) as string;\n\t}\n\n\t/**\n\t * Use the routerLink attribute on <a> tag for navigation instead of using event handlers\n\t */\n\t@Input() useRouter = false;\n\n\t/**\n\t * String or array of string class names to apply when active\n\t */\n\t@Input() activeLinkClass: string | string[];\n\n\t/**\n\t * Applies selected styles to the item if a user sets this to true.\n\t */\n\t@Input() isCurrentPage: boolean;\n\n\t/**\n\t * Array of commands to send to the router when the link is activated\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() route: any[];\n\n\t/**\n\t * Router options. Used in conjunction with `route`\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() routeExtras: any;\n\n\t/**\n\t * Emits the navigation status promise when the link is activated\n\t */\n\t@Output() navigation = new EventEmitter<Promise<boolean>>();\n\n\tprotected _href = \"#\";\n\n\tconstructor(protected domSanitizer: DomSanitizer, @Optional() protected router: Router) { }\n\n\tnavigate(event) {\n\t\tif (this.router && this.route) {\n\t\t\tevent.preventDefault();\n\t\t\tconst status = this.router.navigate(this.route, this.routeExtras);\n\t\t\tthis.navigation.emit(status);\n\t\t} else if (this._href === \"#\") {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n}\n","import {\n\tComponent,\n\tInput,\n\tHostListener,\n\tElementRef,\n\tTemplateRef,\n\tHostBinding\n} from \"@angular/core\";\nimport { DomSanitizer } from \"@angular/platform-browser\";\nimport { HeaderItemInterface } from \"./header-navigation-items.interface\";\n\n/**\n * Dropdown menu container for navigation items.\n */\n@Component({\n\tselector: \"cds-header-menu, ibm-header-menu\",\n\ttemplate: `\n\t\t<a\n\t\t\tclass=\"cds--header__menu-item cds--header__menu-title\"\n\t\t\t[href]=\"href\"\n\t\t\ttabindex=\"0\"\n\t\t\taria-haspopup=\"menu\"\n\t\t\t[attr.aria-expanded]=\"expanded\"\n\t\t\t(click)=\"navigate($event)\">\n\t\t\t{{title}}\n\t\t\t<ng-template *ngIf=\"icon; else defaultIcon\" [ngTemplateOutlet]=\"icon\"></ng-template>\n\t\t\t<ng-template #defaultIcon>\n\t\t\t\t<svg class=\"cds--header__menu-arrow\" width=\"12\" height=\"7\" aria-hidden=\"true\">\n\t\t\t\t\t<path d=\"M6.002 5.55L11.27 0l.726.685L6.003 7 0 .685.726 0z\" />\n\t\t\t\t</svg>\n\t\t\t</ng-template>\n\t\t</a>\n\t\t<div class=\"cds--header__menu\" [attr.aria-label]=\"title\">\n\t\t\t<ng-content></ng-content>\n\t\t\t<ng-container *ngFor=\"let headerItem of headerItems\">\n\t\t\t\t<cds-header-item\n\t\t\t\t\t[href]=\"headerItem.href\"\n\t\t\t\t\t[route]=\"headerItem.route\"\n\t\t\t\t\t[routeExtras]=\"headerItem.routeExtras\">\n\t\t\t\t\t{{ headerItem.content }}\n\t\t\t\t</cds-header-item>\n\t\t\t</ng-container>\n\t\t</div>\n\t`,\n\tstyles: [`\n\t\t:host {\n\t\t\tdisplay: list-item;\n\t\t}\n\t`]\n})\nexport class HeaderMenu {\n\t@HostBinding(\"class.cds--header__submenu\") subMenu = true;\n\t@HostBinding(\"attr.role\") role = \"listitem\";\n\n\t@Input() title: string;\n\t@Input() set href(v: string) {\n\t\t// Needed when component is created dynamically with a model.\n\t\tif (v === undefined) {\n\t\t\treturn;\n\t\t}\n\t\tthis._href = v;\n\t}\n\n\tget href() {\n\t\treturn this.domSanitizer.bypassSecurityTrustUrl(this._href) as string;\n\t}\n\t@Input() trigger: \"click\" | \"mouseover\" = \"click\";\n\n\t/**\n\t * Used to create header items through a model.\n\t */\n\t@Input() headerItems: HeaderItemInterface[];\n\n\t/**\n\t * Optional icon\n\t */\n\t@Input() icon: TemplateRef<any>;\n\n\tpublic expanded = false;\n\n\tprotected _href = \"#\";\n\n\tconstructor(protected domSanitizer: DomSanitizer, protected elementRef: ElementRef) { }\n\n\t@HostListener(\"click\")\n\tonClick() {\n\t\tif (this.trigger === \"click\") {\n\t\t\tthis.expanded = !this.expanded;\n\t\t}\n\t}\n\n\t@HostListener(\"mouseover\")\n\tonMouseOver() {\n\t\tif (this.trigger === \"mouseover\") {\n\t\t\tthis.expanded = true;\n\t\t}\n\t}\n\n\t@HostListener(\"mouseout\")\n\tonMouseOut() {\n\t\tif (this.trigger === \"mouseover\") {\n\t\t\tthis.expanded = false;\n\t\t}\n\t}\n\n\t@HostListener(\"focusout\", [\"$event\"])\n\tonFocusOut(event) {\n\t\tif (!this.elementRef.nativeElement.contains(event.relatedTarget)) {\n\t\t\tthis.expanded = false;\n\t\t}\n\t}\n\n\tnavigate(event) {\n\t\tif (this._href === \"#\") {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n}\n","import {\n\tComponent,\n\tHostBinding,\n\tInput\n} from \"@angular/core\";\nimport { NavigationItem } from \"./header-navigation-items.interface\";\n/**\n * Container for header navigation items\n */\n@Component({\n\tselector: \"cds-header-navigation, ibm-header-navigation\",\n\ttemplate: `\n\t\t<nav class=\"cds--header__nav\" [attr.aria-label]=\"ariaLabel\">\n\t\t\t<div class=\"cds--header__menu-bar\" role=\"list\">\n\t\t\t\t<ng-content></ng-content>\n\t\t\t\t<ng-container *ngFor=\"let navigationItem of navigationItems\">\n\t\t\t\t\t<cds-header-item\n\t\t\t\t\t\t*ngIf=\"navigationItem.type === 'item'\"\n\t\t\t\t\t\t[href]=\"navigationItem.href\"\n\t\t\t\t\t\t[route]=\"navigationItem.route\"\n\t\t\t\t\t\t[routeExtras]=\"navigationItem.routeExtras\"\n\t\t\t\t\t\t[isCurrentPage]=\"!!navigationItem.isCurrentPage\">\n\t\t\t\t\t\t{{ navigationItem.content }}\n\t\t\t\t\t</cds-header-item>\n\t\t\t\t\t<cds-header-menu\n\t\t\t\t\t\t*ngIf=\"navigationItem.type === 'menu'\"\n\t\t\t\t\t\t[href]=\"navigationItem.href\"\n\t\t\t\t\t\t[title]=\"navigationItem.title\"\n\t\t\t\t\t\t[trigger]=\"navigationItem.trigger ? navigationItem.trigger : 'click'\"\n\t\t\t\t\t\t[headerItems]=\"navigationItem.menuItems\">\n\t\t\t\t\t</cds-header-menu>\n\t\t\t\t</ng-container>\n\t\t\t</div>\n\t\t</nav>\n\t`\n})\nexport class HeaderNavigation {\n\t@HostBinding(\"style.height.%\") height = 100;\n\n\t@Input() ariaLabel: string;\n\n\t/**\n\t * Creates the header navigation items and menu items through a list of navigation item objects.\n\t * In order for the navigation items to move to the side navigation when window size is less than 1056px,\n\t * navigation items need to be passed into both cds-header-navigation and cds-sidenav.\n\t */\n\t@Input() navigationItems: NavigationItem[];\n}\n","import { Component, HostBinding } from \"@angular/core\";\n\n/**\n * Container for `HeaderAction`s.\n */\n@Component({\n\tselector: \"cds-header-global, ibm-header-global\",\n\ttemplate: `\n\t\t<ng-content></ng-content>\n\t`\n})\nexport class HeaderGlobal {\n\t@HostBinding(\"class.cds--header__global\") hostClass = true;\n}\n","import {\n\tComponent,\n\tInput,\n\tOutput,\n\tEventEmitter,\n\tTemplateRef\n} from \"@angular/core\";\nimport { BaseIconButton } from \"carbon-components-angular/button\";\n\n/**\n * Contained by `HeaderGlobal`. Generally used to trigger `Panel`s\n */\n@Component({\n\tselector: \"cds-header-action, ibm-header-action\",\n\ttemplate: `\n\t\t<cds-icon-button\n\t\t\t[buttonNgClass]=\"{\n\t\t\t\t'cds--header__action': true,\n\t\t\t\t'cds--header__action--active': active\n\t\t\t}\"\n\t\t\t(click)=\"onClick()\"\n\t\t\t[align]=\"align\"\n\t\t\t[caret]=\"caret\"\n\t\t\t[dropShadow]=\"dropShadow\"\n\t\t\t[highContrast]=\"highContrast\"\n\t\t\t[isOpen]=\"isOpen\"\n\t\t\t[enterDelayMs]=\"enterDelayMs\"\n\t\t\t[leaveDelayMs]=\"leaveDelayMs\"\n\t\t\t[description]=\"description\"\n\t\t\t[buttonAttributes]=\"{\n\t\t\t\t'aria-label': ariaLabel\n\t\t\t}\">\n\t\t\t<ng-content></ng-content>\n\t\t</cds-icon-button>\n\t`\n})\nexport class HeaderAction extends BaseIconButton {\n\t/**\n\t * Tooltip content to show on mouseenter\n\t */\n\t@Input() description: string | TemplateRef<any>;\n\t/**\n\t * Sets the aria label on the nav element.\n\t */\n\t@Input() ariaLabel: string;\n\t/**\n\t * Toggles the active state. May be used to toggle a `Panel`s active state.\n\t */\n\t@Input() active = false;\n\t/**\n\t * \"Change\" emitter to allow double binding to the `active` Input.\n\t */\n\t@Output() activeChange = new EventEmitter<boolean>();\n\t/**\n\t * Emits when the action has been clicked.\n\t */\n\t@Output() selected = new EventEmitter<boolean>();\n\n\tonClick() {\n\t\tthis.active = !this.active;\n\t\tthis.selected.emit(this.active);\n\t\tthis.activeChange.emit(this.active);\n\t}\n}\n","import {\n\tComponent,\n\tOutput,\n\tEventEmitter,\n\tInput\n} from \"@angular/core\";\nimport { I18n } from \"carbon-components-angular/i18n\";\n\n/**\n * A toggle for the side navigation\n */\n@Component({\n\tselector: \"cds-hamburger, ibm-hamburger\",\n\ttemplate: `\n\t\t<button\n\t\t\ttype=\"button\"\n\t\t\t(click)=\"doClick()\"\n\t\t\t[ngClass]=\"{'cds--header__action--active': active}\"\n\t\t\tclass=\"cds--header__menu-trigger cds--header__action cds--header__menu-toggle\"\n\t\t\t[attr.aria-label]=\"active ? activeTitle : inactiveTitle\"\n\t\t\t[attr.title]=\"active ? activeTitle : inactiveTitle\">\n\t\t\t<svg *ngIf=\"!active\" cdsIcon=\"menu\" size=\"20\"></svg>\n\t\t\t<svg *ngIf=\"active\" cdsIcon=\"close\" size=\"20\"></svg>\n\t\t</button>\n\t`\n})\nexport class Hamburger {\n\t/**\n\t * Controls the active/selected state for the `Hamburger` menu.\n\t */\n\t@Input() active = false;\n\n\t/**\n\t * Set the title text when the hamburger is active\n\t */\n\t@Input() activeTitle = this.i18n.get().UI_SHELL.HEADER.CLOSE_MENU;\n\n\t/**\n\t * Set the title text when the hamburger is inactive\n\t */\n\t@Input() inactiveTitle = this.i18n.get().UI_SHELL.HEADER.OPEN_MENU;\n\n\t/**\n\t * `EventEmitter` to notify parent components of menu click events.\n\t */\n\t@Output() selected: EventEmitter<Object> = new EventEmitter<Object>();\n\n\tconstructor(public i18n: I18n) {}\n\n\t/**\n\t * Emit the Hamburger click event upwards.\n\t */\n\tpublic doClick() {\n\t\tthis.selected.emit(this.active);\n\t}\n}\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { ButtonModule } from \"carbon-components-angular/button\";\nimport { I18nModule } from \"carbon-components-angular/i18n\";\nimport { IconModule } from \"carbon-components-angular/icon\";\n\nimport { Header } from \"./header.component\";\nimport { HeaderItem } from \"./header-item.component\";\nimport { HeaderMenu } from \"./header-menu.component\";\nimport { HeaderNavigation } from \"./header-navigation.component\";\nimport { HeaderGlobal } from \"./header-global.component\";\nimport { HeaderAction } from \"./header-action.component\";\n\nimport { Hamburger } from \"./hamburger.component\";\nimport { RouterModule } from \"@angular/router\";\n\nexport { HeaderItemInterface, NavigationItem } from \"./header-navigation-items.interface\";\n\nexport {\n\tHeader,\n\tHeaderItem,\n\tHeaderMenu,\n\tHeaderNavigation,\n\tHeaderGlobal,\n\tHeaderAction,\n\tHamburger\n};\n\n@NgModule({\n\tdeclarations: [\n\t\tHeader,\n\t\tHeaderItem,\n\t\tHeaderMenu,\n\t\tHeaderNavigation,\n\t\tHeaderGlobal,\n\t\tHeaderAction,\n\t\tHamburger\n\t],\n\timports: [\n\t\tCommonModule,\n\t\tButtonModule,\n\t\tI18nModule,\n\t\tIconModule,\n\t\tRouterModule\n\t],\n\texports: [\n\t\tHeader,\n\t\tHeaderItem,\n\t\tHeaderMenu,\n\t\tHeaderNavigation,\n\t\tHeaderGlobal,\n\t\tHeaderAction,\n\t\tHamburger\n\t]\n})\nexport class HeaderModule { }\n","import {\n\tComponent,\n\tInput,\n\tOptional,\n\tOutput,\n\tEventEmitter,\n\tOnChanges,\n\tHostBinding\n} from \"@angular/core\";\nimport { DomSanitizer } from \"@angular/platform-browser\";\nimport { Router } from \"@angular/router\";\n\n/**\n * `SideNavItem` can either be a child of `SideNav` or `SideNavMenu`\n */\n@Component({\n\tselector: \"cds-sidenav-item, ibm-sidenav-item\",\n\ttemplate: `\n\t\t<a\n\t\t\tclass=\"cds--side-nav__link\"\n\t\t\t[ngClass]=\"{\n\t\t\t\t'cds--side-nav__item--active': active\n\t\t\t}\"\n\t\t\t[href]=\"href\"\n\t\t\t[attr.aria-current]=\"(active ? 'page' : null)\"\n\t\t\t[attr.title]=\"title ? title : null\"\n\t\t\t(click)=\"navigate($event)\">\n\t\t\t<div *ngIf=\"!isSubMenu\" class=\"cds--side-nav__icon\">\n\t\t\t\t<ng-content select=\"svg, [icon]\"></ng-content>\n\t\t\t</div>\n\t\t\t<span class=\"cds--side-nav__link-text\">\n\t\t\t\t<ng-content></ng-content>\n\t\t\t</span>\n\t\t</a>\n\t`,\n\tstyles: [`\n\t\t:host {\n\t\t\tdisplay: list-item;\n\t\t}\n\t`]\n})\nexport class SideNavItem implements OnChanges {\n\t/**\n\t * Link for the item. NOTE: *do not* pass unsafe or untrusted values, this has the potential to open you up to XSS attacks\n\t */\n\t@Input() set href(v: string) {\n\t\t// Needed when component is created dynamically with a model.\n\t\tif (v === undefined) {\n\t\t\treturn;\n\t\t}\n\t\tthis._href = v;\n\t}\n\n\tget href() {\n\t\treturn this.domSanitizer.bypassSecurityTrustUrl(this._href) as string;\n\t}\n\n\t@HostBinding(\"class.cds--side-nav__item\") get sideNav() {\n\t\treturn !this.isSubMenu;\n\t}\n\n\t@HostBinding(\"class.cds--side-nav__menu-item\") get menuItem() {\n\t\treturn this.isSubMenu;\n\t}\n\n\t/**\n\t * Toggles the active (current page) state for the link.\n\t */\n\t@Input() active = false;\n\n\t/**\n\t * Array of commands to send to the router when the link is activated\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() route: any[];\n\n\t@Input() isSubMenu = false;\n\n\t/**\n\t * Router options. Used in conjunction with `route`\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() routeExtras: any;\n\n\t/**\n\t * Title attribute of the anchor element.\n\t */\n\t@Input() title: string;\n\n\t/**\n\t * Emits the navigation status promise when the link is activated\n\t */\n\t@Output() navigation = new EventEmitter<Promise<boolean>>();\n\n\t/**\n\t * Emits when `active` input is changed. This is mainly used to indicate to any parent menu items that a\n\t * child sidenav item is active or not active.\n\t */\n\t@Output() selected = new EventEmitter<boolean>();\n\n\t@HostBinding(\"attr.role\") role = \"listitem\";\n\n\tprotected _href = \"#\";\n\n\tconstructor(protected domSanitizer: DomSanitizer, @Optional() protected router: Router) {}\n\n\tngOnChanges(changes) {\n\t\tif (changes.active) {\n\t\t\tthis.selected.emit(this.active);\n\t\t}\n\t}\n\n\tnavigate(event) {\n\t\tif (this.router && this.route) {\n\t\t\tevent.preventDefault();\n\t\t\tconst status = this.router.navigate(this.route, this.routeExtras);\n\t\t\tthis.navigation.emit(status);\n\t\t} else if (this._href === \"#\") {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n}\n","import {\n\tAfterContentInit,\n\tComponent,\n\tContentChildren,\n\tInput,\n\tQueryList,\n\tOnDestroy,\n\tHostBinding\n} from \"@angular/core\";\nimport { SideNavItem } from \"./sidenav-item.component\";\nimport { Subscription } from \"rxjs\";\nimport { SideNavItemInterface } from \"./sidenav-item.interface\";\n\n/**\n * `SideNavMenu` provides a method to group `SideNavItem`s under a common heading.\n */\n@Component({\n\tselector: \"cds-sidenav-menu, ibm-sidenav-menu\",\n\ttemplate: `\n\t\t<button\n\t\t\t(click)=\"toggle()\"\n\t\t\tclass=\"cds--side-nav__submenu\"\n\t\t\taria-haspopup=\"true\"\n\t\t\t[attr.aria-expanded]=\"expanded\"\n\t\t\ttype=\"button\">\n\t\t\t<div class=\"cds--side-nav__icon\">\n\t\t\t\t<ng-content select=\"svg, [icon]\"></ng-content>\n\t\t\t</div>\n\t\t\t<span class=\"cds--side-nav__submenu-title\">{{title}}</span>\n\t\t\t<div class=\"cds--side-nav__icon cds--side-nav__icon--small cds--side-nav__submenu-chevron\">\n\t\t\t\t<svg\n\t\t\t\t\tfocusable=\"false\"\n\t\t\t\t\tpreserveAspectRatio=\"xMidYMid meet\"\n\t\t\t\t\tstyle=\"will-change: transform;\"\n\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\twidth=\"20\"\n\t\t\t\t\theight=\"20\"\n\t\t\t\t\tviewBox=\"0 0 32 32\"\n\t\t\t\t\taria-hidden=\"true\">\n\t\t\t\t\t<path d=\"M16 22L6 12l1.4-1.4 8.6 8.6 8.6-8.6L26 12z\"></path>\n\t\t\t\t</svg>\n\t\t\t</div>\n\t\t</button>\n\t\t<div class=\"cds--side-nav__menu\" role=\"list\">\n\t\t\t<ng-content></ng-content>\n\t\t\t<ng-container *ngFor=\"let menuItem of menuItems\">\n\t\t\t\t<cds-sidenav-item\n\t\t\t\t\t[href]=\"menuItem.href\"\n\t\t\t\t\t[route]=\"menuItem.route\"\n\t\t\t\t\t[routeExtras]=\"menuItem.routeExtras\"\n\t\t\t\t\t[isSubMenu]=\"true\">\n\t\t\t\t\t{{ menuItem.content }}\n\t\t\t\t</cds-sidenav-item>\n\t\t\t</ng-container>\n\t\t</div>\n\t`\n})\nexport class SideNavMenu implements AfterContentInit, OnDestroy {\n\t@HostBinding(\"class.cds--side-nav__item\") navItem = true;\n\t@HostBinding(\"class.cds--side-nav__item--icon\") navItemIcon = true;\n\t@HostBinding(\"class.cds--side-nav__item--active\") get navItemActive() {\n\t\treturn this.hasActiveChild;\n\t}\n\t@HostBinding(\"attr.role\") role = \"listitem\";\n\n\t/**\n\t * Heading for the gorup\n\t */\n\t@Input() title: string;\n\t/**\n\t * Controls the visibility of the child `SideNavItem`s\n\t */\n\t@Input() expanded = false;\n\t/**\n\t * Controls the active status indicator on the menu if there is an active\n\t * child sidenav item.\n\t */\n\t@Input() hasActiveChild = false;\n\n\t@Input() menuItems: SideNavItemInterface[];\n\n\t@ContentChildren(SideNavItem) sidenavItems: QueryList<SideNavItem>;\n\n\tprotected activeItemsSubscription = new Subscription();\n\n\tngAfterContentInit() {\n\t\tsetTimeout(() => {\n\t\t\tthis.sidenavItems.forEach(item => {\n\t\t\t\titem.isSubMenu = true;\n\t\t\t\tthis.findActiveChildren();\n\t\t\t\tconst activeItemSubscription = item.selected.subscribe(() => {\n\t\t\t\t\tthis.findActiveChildren();\n\t\t\t\t});\n\t\t\t\tthis.activeItemsSubscription.add(activeItemSubscription);\n\t\t\t});\n\n\t\t\tthis.sidenavItems.changes.subscribe(() => {\n\t\t\t\tthis.sidenavItems.forEach(item => {\n\t\t\t\t\titem.isSubMenu = true;\n\t\t\t\t\tthis.findActiveChildren();\n\t\t\t\t\tconst activeItemSubscription = item.selected.subscribe(() => {\n\t\t\t\t\t\tthis.findActiveChildren();\n\t\t\t\t\t});\n\t\t\t\t\tthis.activeItemsSubscription.add(activeItemSubscription);\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\tngOnDestroy() {\n\t\tthis.activeItemsSubscription.unsubscribe();\n\t}\n\n\ttoggle() {\n\t\tthis.expanded = !this.expanded;\n\t}\n\n\tprotected findActiveChildren() {\n\t\tthis.hasActiveChild = this.sidenavItems.some(item => item.active);\n\t}\n}\n","import {\n\tComponent,\n\tHostBinding,\n\tInput,\n\tViewEncapsulation\n} from \"@angular/core\";\nimport { I18n } from \"carbon-components-angular/i18n\";\nimport { NavigationItem } from \"../header/header-navigation-items.interface\";\n\n/**\n * `Sidenav` is a fixed left navigation that may contain `SideNavItem`s or `SideNavMenu`s\n *\n * [See demo](../../?path=/story/components-ui-shell--side-navigation)\n */\n@Component({\n\tselector: \"cds-sidenav, ibm-sidenav\",\n\ttemplate: `\n\t\t<nav class=\"cds--side-nav__items\" [attr.aria-label]=\"ariaLabel\">\n\t\t\t<ng-content select=\"cds-sidenav-header,ibm-sidenav-header\"></ng-content>\n\t\t\t<div role=\"list\">\n\t\t\t\t<div class=\"cds--side-nav__header-navigation cds--side-nav__header-divider\">\n\t\t\t\t\t<ng-container *ngFor=\"let navigationItem of navigationItems\">\n\t\t\t\t\t\t<cds-sidenav-item\n\t\t\t\t\t\t\t*ngIf=\"navigationItem.type === 'item'\"\n\t\t\t\t\t\t\t[href]=\"navigationItem.href\"\n\t\t\t\t\t\t\t[route]=\"navigationItem.route\"\n\t\t\t\t\t\t\t[routeExtras]=\"navigationItem.routeExtras\"\n\t\t\t\t\t\t\t[title]=\"navigationItem.title\">\n\t\t\t\t\t\t\t{{ navigationItem.content }}\n\t\t\t\t\t\t</cds-sidenav-item>\n\t\t\t\t\t\t<cds-sidenav-menu\n\t\t\t\t\t\t\t*ngIf=\"navigationItem.type === 'menu'\"\n\t\t\t\t\t\t\t[title]=\"navigationItem.title\"\n\t\t\t\t\t\t\t[menuItems]=\"navigationItem.menuItems\">\n\t\t\t\t\t\t</cds-sidenav-menu>\n\t\t\t\t\t</ng-container>\n\t\t\t\t</div>\n\t\t\t\t<ng-content></ng-content>\n\t\t\t</div>\n\t\t\t<footer class=\"cds--side-nav__footer\">\n\t\t\t\t<button\n\t\t\t\t\t*ngIf=\"allowExpansion\"\n\t\t\t\t\tclass=\"cds--side-nav__toggle\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t[title]=\"(expanded ? i18n.get('UI_SHELL.SIDE_NAV.TOGGLE_CLOSE') : i18n.get('UI_SHELL.SIDE_NAV.TOGGLE_OPEN')) | async\"\n\t\t\t\t\t(click)=\"toggle()\">\n\t\t\t\t\t<div class=\"cds--side-nav__icon\">\n\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\t*ngIf=\"expanded\"\n\t\t\t\t\t\t\tfocusable=\"false\"\n\t\t\t\t\t\t\tpreserveAspectRatio=\"xMidYMid meet\"\n\t\t\t\t\t\t\tstyle=\"will-change: transform;\"\n\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\t\twidth=\"20\"\n\t\t\t\t\t\t\theight=\"20\"\n\t\t\t\t\t\t\tviewBox=\"0 0 32 32\"\n\t\t\t\t\t\t\taria-hidden=\"true\">\n\t\t\t\t\t\t\t<path d=\"M24 9.4L22.6 8 16 14.6 9.4 8 8 9.4l6.6 6.6L8 22.6 9.4 24l6.6-6.6 6.6 6.6 1.4-1.4-6.6-6.6L24 9.4z\"></path>\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\t*ngIf=\"!expanded\"\n\t\t\t\t\t\t\tfocusable=\"false\"\n\t\t\t\t\t\t\tpreserveAspectRatio=\"xMidYMid meet\"\n\t\t\t\t\t\t\tstyle=\"will-change: transform;\"\n\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\t\twidth=\"20\"\n\t\t\t\t\t\t\theight=\"20\"\n\t\t\t\t\t\t\tviewBox=\"0 0 32 32\"\n\t\t\t\t\t\t\taria-hidden=\"true\">\n\t\t\t\t\t\t\t<path d=\"M22 16L12 26l-1.4-1.4 8.6-8.6-8.6-8.6L12 6z\"></path>\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t</div>\n\t\t\t\t\t<span class=\"cds--assistive-text\">\n\t\t\t\t\t\t{{(expanded ? i18n.get('UI_SHELL.SIDE_NAV.TOGGLE_CLOSE') : i18n.get('UI_SHELL.SIDE_NAV.TOGGLE_OPEN')) | async}}\n\t\t\t\t\t</span>\n\t\t\t\t</button>\n\t\t\t</footer>\n\t\t</nav>\n\t`,\n\tencapsulation: ViewEncapsulation.None\n})\nexport class SideNav {\n\t@HostBinding(\"class.cds--side-nav\") hostClass = true;\n\t@Input() ariaLabel = \"Side navigation\";\n\t/**\n\t * Controls the expanded (`true`) or collapsed (`false`) state when on a small screen.\n\t */\n\t@HostBinding(\"class.cds--side-nav--expanded\") @Input() expanded = true;\n\t/**\n\t * Controls the hidden (`true`) or visible (`false`) state\n\t */\n\t@HostBinding(\"class.cds--side-nav--hidden\") @Input() hidden = false;\n\t@HostBinding(\"class.cds--side-nav--rail\") @Input() rail = false;\n\t@HostBinding(\"class.cds--side-nav__navigation\") ux = true;\n\t@Input() allowExpansion = false;\n\n\t/**\n\t * NavigationItems from the header navigation component which are displayed on the sidenav when the window\n\t * innerWidth is small enough. Sidenav items and menus are created using the model used to create header\n\t * navigation items.\n\t */\n\t@Input() navigationItems: NavigationItem[];\n\n\tconstructor(public i18n: I18n) { }\n\n\ttoggle() {\n\t\tthis.expanded = !this.expanded;\n\t}\n}\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { I18nModule } from \"carbon-components-angular/i18n\";\n\nimport { SideNav } from \"./sidenav.component\";\nimport { SideNavItem } from \"./sidenav-item.component\";\nimport { SideNavMenu } from \"./sidenav-menu.component\";\n\nexport { SideNavItemInterface } from \"./sidenav-item.interface\";\n\nexport {\n\tSideNav,\n\tSideNavItem,\n\tSideNavMenu\n};\n\n@NgModule({\n\tdeclarations: [\n\t\tSideNav,\n\t\tSideNavItem,\n\t\tSideNavMenu\n\t],\n\timports: [CommonModule, I18nModule],\n\texports: [\n\t\tSideNav,\n\t\tSideNavItem,\n\t\tSideNavMenu\n\t]\n})\nexport class SideNavModule { }\n","import { Component, Input } from \"@angular/core\";\n\n/**\n * `Panel` is a component that can be used to display content on the right side of the screen.\n * `Panel`s are generally activated by and linked to a `HeaderAction` component.\n */\n@Component({\n\tselector: \"cds-panel, ibm-panel\",\n\ttemplate: `\n\t\t<div\n\t\t\tclass=\"cds--header-panel\"\n\t\t\t[attr.aria-label]=\"ariaLabel\"\n\t\t\t[ngClass]=\"{\n\t\t\t\t'cds--header-panel--expanded': expanded\n\t\t\t}\">\n\t\t\t<ng-content></ng-content>\n\t\t</div>\n\t`\n})\nexport class Panel {\n\t/**\n\t * Controls the visibility of the panel\n\t */\n\t@Input() expanded = false;\n\n\t@Input() ariaLabel;\n}\n","import { Component, HostBinding } from \"@angular/core\";\n\n/**\n * Container for switcher items.\n *\n * ```html\n * <cds-switcher-list>\n * \t<cds-switcher-list-item>one</cds-switcher-list-item>\n * \t<cds-switcher-list-item [active]=\"true\">two</cds-switcher-list-item>\n * \t<cds-switcher-list-item>three</cds-switcher-list-item>\n * </cds-switcher-list>\n * ```\n */\n@Component({\n\tselector: \"cds-switcher-list, ibm-switcher-list\",\n\ttemplate: `\n\t\t\t<ng-content></ng-content>\n\t`,\n\tstyles: [`\n\t\t:host {\n\t\t\tdisplay: block;\n\t\t}\n\t`]\n})\nexport class SwitcherList {\n\t@HostBinding(\"class.cds--switcher\") switcher = true;\n\t@HostBinding(\"attr.role\") role = \"list\";\n}\n","import {\n\tComponent,\n\tInput,\n\tOutput,\n\tEventEmitter,\n\tOptional,\n\tHostBinding\n} from \"@angular/core\";\nimport { DomSanitizer, SafeUrl } from \"@angular/platform-browser\";\nimport { Router } from \"@angular/router\";\n\n/**\n * Represents an item in a switcher list.\n */\n@Component({\n\tselector: \"cds-switcher-list-item, ibm-switcher-list-item\",\n\ttemplate: `\n\t\t<a\n\t\t\tclass=\"cds--switcher__item-link\"\n\t\t\t[ngClass]=\"{\n\t\t\t\t'cds--switcher__item-link--selected': active\n\t\t\t}\"\n\t\t\t[href]=\"href\"\n\t\t\t[target]=\"target\"\n\t\t\t(click)=\"navigate($event)\">\n\t\t\t<ng-content></ng-content>\n\t\t</a>\n\t`\n})\nexport class SwitcherListItem {\n\t/**\n\t * Enables the \"active\" state for an item. Commonly used to indicate the current page or selection.\n\t */\n\t@Input() active = false;\n\n\t/**\n\t * Array of commands to send to the router when the link is activated\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() route: any[];\n\n\t/**\n\t * Router options. Used in conjunction with `route`\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() routeExtras: any;\n\n\t/**\n\t * Optional link for the underlying anchor.\n\t */\n\t@Input() set href(value: string) {\n\t\tthis._href = value;\n\t}\n\n\t/**\n\t * Emits the navigation status promise when the link is activated\n\t */\n\t@Output() navigation = new EventEmitter<Promise<boolean>>();\n\n\tget href() {\n\t\treturn this.domSanitizer.bypassSecurityTrustUrl(this._href) as string;\n\t}\n\n\t/**\n\t * Optional target for the underlying anchor.\n\t */\n\t@Input() set target(value: string) {\n\t\tthis._target = value;\n\t}\n\n\tget target() {\n\t\treturn this._target;\n\t}\n\n\t@HostBinding(\"class.cds--switcher__item\") itemClass = true;\n\n\t@HostBinding(\"attr.role\") itemRole = \"listitem\";\n\n\tprotected _href = \"#\";\n\tprotected _target = \"\";\n\n\tconstructor(protected domSanitizer: DomSanitizer, @Optional() protected router: Router) { }\n\n\tnavigate(event) {\n\t\tif (this.router && this.route) {\n\t\t\tevent.preventDefault();\n\t\t\tconst status = this.router.navigate(this.route, this.routeExtras);\n\t\t\tthis.navigation.emit(status);\n\t\t} else if (this._href === \"#\") {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n}\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { I18nModule } from \"carbon-components-angular/i18n\";\n\nimport { Panel } from \"./panel.component\";\nimport { SwitcherList } from \"./switcher-list.component\";\nimport { SwitcherListItem } from \"./switcher-list-item.component\";\n\nexport {\n\tPanel,\n\tSwitcherList,\n\tSwitcherListItem\n};\n\n@NgModule({\n\tdeclarations: [\n\t\tPanel,\n\t\tSwitcherList,\n\t\tSwitcherListItem\n\t],\n\timports: [CommonModule, I18nModule],\n\texports: [\n\t\tPanel,\n\t\tSwitcherList,\n\t\tSwitcherListItem\n\t]\n})\nexport class PanelModule { }\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { I18nModule } from \"carbon-components-angular/i18n\";\n\nimport { HeaderModule } from \"./header/header.module\";\nimport { SideNavModule } from \"./sidenav/sidenav.module\";\nimport { PanelModule } from \"./panel/panel.module\";\n\n@NgModule({\n\timports: [\n\t\tCommonModule,\n\t\tI18nModule,\n\t\tHeaderModule,\n\t\tSideNavModule,\n\t\tPanelModule\n\t],\n\texports: [\n\t\tHeaderModule,\n\t\tSideNavModule,\n\t\tPanelModule\n\t]\n})\nexport class UIShellModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i3","i4","i1","i3.HeaderItem","i2.HeaderItem","i3.HeaderMenu","i2.SideNavItem","i3.SideNavItem","i4.SideNavMenu"],"mappings":"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"}
1
+ {"version":3,"file":"carbon-components-angular-ui-shell.mjs","sources":["../../src/ui-shell/header/header.component.ts","../../src/ui-shell/header/header-item.component.ts","../../src/ui-shell/header/header-menu.component.ts","../../src/ui-shell/header/header-navigation.component.ts","../../src/ui-shell/header/header-global.component.ts","../../src/ui-shell/header/header-action.component.ts","../../src/ui-shell/header/hamburger.component.ts","../../src/ui-shell/header/header.module.ts","../../src/ui-shell/sidenav/sidenav-item.component.ts","../../src/ui-shell/sidenav/sidenav-menu.component.ts","../../src/ui-shell/sidenav/sidenav.component.ts","../../src/ui-shell/sidenav/sidenav.module.ts","../../src/ui-shell/panel/panel.component.ts","../../src/ui-shell/panel/switcher-list.component.ts","../../src/ui-shell/panel/switcher-list-item.component.ts","../../src/ui-shell/panel/panel.module.ts","../../src/ui-shell/ui-shell.module.ts","../../src/ui-shell/carbon-components-angular-ui-shell.ts"],"sourcesContent":["import {\n\tComponent,\n\tInput,\n\tOptional,\n\tOutput,\n\tEventEmitter,\n\tTemplateRef\n} from \"@angular/core\";\nimport { DomSanitizer } from \"@angular/platform-browser\";\nimport { Router } from \"@angular/router\";\nimport { I18n } from \"carbon-components-angular/i18n\";\n\n/**\n * A fixed header and navigation.\n * Header may contain a Hamburger menu to toggle the side navigation, navigation actions,\n * and global actions (generally in the form of `Panel`s).\n *\n * [See demo](../../?path=/story/components-ui-shell--header)\n */\n@Component({\n\tselector: \"cds-header, ibm-header\",\n\ttemplate: `\n\t\t<header\n\t\t\tclass=\"cds--header\"\n\t\t\t[attr.aria-label]=\"brand + ' ' + name\">\n\t\t\t<a\n\t\t\t\t*ngIf=\"skipTo\"\n\t\t\t\tclass=\"cds--skip-to-content\"\n\t\t\t\t[href]=\"skipTo\"\n\t\t\t\ttabindex=\"0\">\n\t\t\t\t{{ i18n.get(\"UI_SHELL.SKIP_TO\") | async }}\n\t\t\t</a>\n\t\t\t<ng-content select=\"cds-hamburger,ibm-hamburger\"></ng-content>\n\t\t\t<ng-template\n\t\t\t\t*ngIf=\"isTemplate(brand)\"\n\t\t\t\t[ngTemplateOutlet]=\"brand\">\n\t\t\t</ng-template>\n\t\t\t<ng-container *ngIf=\"!isTemplate(brand)\" [ngSwitch]=\"useRouter\">\n\t\t\t\t<a\n\t\t\t\t\t*ngSwitchCase=\"false\"\n\t\t\t\t\tclass=\"cds--header__name\"\n\t\t\t\t\t[href]=\"href\"\n\t\t\t\t\t(click)=\"navigate($event)\">\n\t\t\t\t\t<span class=\"cds--header__name--prefix\">{{brand}}&nbsp;</span>\n\t\t\t\t\t{{name}}\n\t\t\t\t</a>\n\t\t\t\t<a\n\t\t\t\t\t*ngSwitchCase=\"true\"\n\t\t\t\t\tclass=\"cds--header__name\"\n\t\t\t\t\t[routerLink]=\"route\">\n\t\t\t\t\t<span class=\"cds--header__name--prefix\">{{brand}}&nbsp;</span>\n\t\t\t\t\t{{name}}\n\t\t\t\t</a>\n\t\t\t</ng-container>\n\t\t\t<ng-content></ng-content>\n\t\t</header>\n\t`\n})\nexport class Header {\n\t/**\n\t * ID in the main body content to jump to. Used by keyboard and screen reader users to skip the header content.\n\t */\n\t@Input() skipTo: string;\n\t/**\n\t * Label that shows to the right of the `brand` text. Generally a product name.\n\t */\n\t@Input() name: string;\n\t/**\n\t * Top level branding. Defaults to \"IBM\"\n\t */\n\t@Input() brand: string | TemplateRef<any> = \"IBM\";\n\t/**\n\t * Optional link for the header\n\t */\n\t@Input() set href(v: string) {\n\t\tthis._href = v;\n\t}\n\n\tget href() {\n\t\treturn this.domSanitizer.bypassSecurityTrustUrl(this._href) as string;\n\t}\n\n\t/**\n\t * Array of commands to send to the router when the link is activated\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() route: any[];\n\n\t/**\n\t * Router options. Used in conjunction with `route`\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() routeExtras: any;\n\n\t/**\n\t * Use the routerLink attribute on <a> tag for navigation instead of using event handlers\n\t */\n\t@Input() useRouter = false;\n\n\t/**\n\t * Emits the navigation status promise when the link is activated\n\t */\n\t@Output() navigation = new EventEmitter<Promise<boolean>>();\n\n\tprotected _href = \"#\";\n\n\tconstructor(\n\t\tpublic i18n: I18n,\n\t\tprotected domSanitizer: DomSanitizer,\n\t\t@Optional() protected router: Router) { }\n\n\tpublic isTemplate(value) {\n\t\treturn value instanceof TemplateRef;\n\t}\n\n\tnavigate(event) {\n\t\tif (this.router && this.route) {\n\t\t\tevent.preventDefault();\n\t\t\tconst status = this.router.navigate(this.route, this.routeExtras);\n\t\t\tthis.navigation.emit(status);\n\t\t} else if (this._href === \"#\") {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n}\n","import {\n\tComponent,\n\tInput,\n\tOptional,\n\tEventEmitter,\n\tOutput,\n\tHostBinding\n} from \"@angular/core\";\nimport { DomSanitizer } from \"@angular/platform-browser\";\nimport { Router } from \"@angular/router\";\n\n/**\n * Individual item in the header. May be used a direct child of `HeaderNavigation` or `HeaderMenu`\n */\n@Component({\n\tselector: \"cds-header-item, ibm-header-item\",\n\ttemplate: `\n\t\t<ng-container [ngSwitch]=\"useRouter\">\n\t\t\t<ng-template #content><ng-content></ng-content></ng-template>\n\t\t\t<a\n\t\t\t\t*ngSwitchCase=\"false\"\n\t\t\t\tclass=\"cds--header__menu-item\"\n\t\t\t\ttabindex=\"0\"\n\t\t\t\t[ngClass]=\"{'cds--header__menu-item--current' : isCurrentPage}\"\n\t\t\t\t[href]=\"href\"\n\t\t\t\t(click)=\"navigate($event)\">\n\t\t\t\t<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n\t\t\t</a>\n\t\t\t<a\n\t\t\t\t*ngSwitchCase=\"true\"\n\t\t\t\tclass=\"cds--header__menu-item\"\n\t\t\t\t[routerLinkActive]=\"['cds--header__menu-item--current']\"\n\t\t\t\ttabindex=\"0\"\n\t\t\t\t[ngClass]=\"{'cds--header__menu-item--current' : isCurrentPage}\"\n\t\t\t\t[routerLink]=\"route\"\n\t\t\t\t[routerLinkActive]=\"activeLinkClass\">\n\t\t\t\t<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n\t\t\t</a>\n\t\t</ng-container>\n\t`,\n\tstyles: [`\n\t\t:host {\n\t\t\tdisplay: list-item;\n\t\t}\n\t`]\n})\nexport class HeaderItem {\n\t@HostBinding(\"attr.role\") role = \"listitem\";\n\t@Input() set href(v: string) {\n\t\t// Needed when component is created dynamically with a model.\n\t\tif (v === undefined) {\n\t\t\treturn;\n\t\t}\n\t\tthis._href = v;\n\t}\n\n\tget href() {\n\t\treturn this.domSanitizer.bypassSecurityTrustUrl(this._href) as string;\n\t}\n\n\t/**\n\t * Use the routerLink attribute on <a> tag for navigation instead of using event handlers\n\t */\n\t@Input() useRouter = false;\n\n\t/**\n\t * String or array of string class names to apply when active\n\t */\n\t@Input() activeLinkClass: string | string[];\n\n\t/**\n\t * Applies selected styles to the item if a user sets this to true.\n\t */\n\t@Input() isCurrentPage: boolean;\n\n\t/**\n\t * Array of commands to send to the router when the link is activated\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() route: any[];\n\n\t/**\n\t * Router options. Used in conjunction with `route`\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() routeExtras: any;\n\n\t/**\n\t * Emits the navigation status promise when the link is activated\n\t */\n\t@Output() navigation = new EventEmitter<Promise<boolean>>();\n\n\tprotected _href = \"#\";\n\n\tconstructor(protected domSanitizer: DomSanitizer, @Optional() protected router: Router) { }\n\n\tnavigate(event) {\n\t\tif (this.router && this.route) {\n\t\t\tevent.preventDefault();\n\t\t\tconst status = this.router.navigate(this.route, this.routeExtras);\n\t\t\tthis.navigation.emit(status);\n\t\t} else if (this._href === \"#\") {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n}\n","import {\n\tComponent,\n\tInput,\n\tHostListener,\n\tElementRef,\n\tTemplateRef,\n\tHostBinding\n} from \"@angular/core\";\nimport { DomSanitizer } from \"@angular/platform-browser\";\nimport { HeaderItemInterface } from \"./header-navigation-items.interface\";\n\n/**\n * Dropdown menu container for navigation items.\n */\n@Component({\n\tselector: \"cds-header-menu, ibm-header-menu\",\n\ttemplate: `\n\t\t<a\n\t\t\tclass=\"cds--header__menu-item cds--header__menu-title\"\n\t\t\t[href]=\"href\"\n\t\t\ttabindex=\"0\"\n\t\t\taria-haspopup=\"menu\"\n\t\t\t[attr.aria-expanded]=\"expanded\"\n\t\t\t(click)=\"navigate($event)\">\n\t\t\t{{title}}\n\t\t\t<ng-template *ngIf=\"icon; else defaultIcon\" [ngTemplateOutlet]=\"icon\"></ng-template>\n\t\t\t<ng-template #defaultIcon>\n\t\t\t\t<svg class=\"cds--header__menu-arrow\" width=\"12\" height=\"7\" aria-hidden=\"true\">\n\t\t\t\t\t<path d=\"M6.002 5.55L11.27 0l.726.685L6.003 7 0 .685.726 0z\" />\n\t\t\t\t</svg>\n\t\t\t</ng-template>\n\t\t</a>\n\t\t<div class=\"cds--header__menu\" [attr.aria-label]=\"title\">\n\t\t\t<ng-content></ng-content>\n\t\t\t<ng-container *ngFor=\"let headerItem of headerItems\">\n\t\t\t\t<cds-header-item\n\t\t\t\t\t[href]=\"headerItem.href\"\n\t\t\t\t\t[route]=\"headerItem.route\"\n\t\t\t\t\t[routeExtras]=\"headerItem.routeExtras\">\n\t\t\t\t\t{{ headerItem.content }}\n\t\t\t\t</cds-header-item>\n\t\t\t</ng-container>\n\t\t</div>\n\t`,\n\tstyles: [`\n\t\t:host {\n\t\t\tdisplay: list-item;\n\t\t}\n\t`]\n})\nexport class HeaderMenu {\n\t@HostBinding(\"class.cds--header__submenu\") subMenu = true;\n\t@HostBinding(\"attr.role\") role = \"listitem\";\n\n\t@Input() title: string;\n\t@Input() set href(v: string) {\n\t\t// Needed when component is created dynamically with a model.\n\t\tif (v === undefined) {\n\t\t\treturn;\n\t\t}\n\t\tthis._href = v;\n\t}\n\n\tget href() {\n\t\treturn this.domSanitizer.bypassSecurityTrustUrl(this._href) as string;\n\t}\n\t@Input() trigger: \"click\" | \"mouseover\" = \"click\";\n\n\t/**\n\t * Used to create header items through a model.\n\t */\n\t@Input() headerItems: HeaderItemInterface[];\n\n\t/**\n\t * Optional icon\n\t */\n\t@Input() icon: TemplateRef<any>;\n\n\tpublic expanded = false;\n\n\tprotected _href = \"#\";\n\n\tconstructor(protected domSanitizer: DomSanitizer, protected elementRef: ElementRef) { }\n\n\t@HostListener(\"click\")\n\tonClick() {\n\t\tif (this.trigger === \"click\") {\n\t\t\tthis.expanded = !this.expanded;\n\t\t}\n\t}\n\n\t@HostListener(\"mouseover\")\n\tonMouseOver() {\n\t\tif (this.trigger === \"mouseover\") {\n\t\t\tthis.expanded = true;\n\t\t}\n\t}\n\n\t@HostListener(\"mouseout\")\n\tonMouseOut() {\n\t\tif (this.trigger === \"mouseover\") {\n\t\t\tthis.expanded = false;\n\t\t}\n\t}\n\n\t@HostListener(\"focusout\", [\"$event\"])\n\tonFocusOut(event) {\n\t\tif (!this.elementRef.nativeElement.contains(event.relatedTarget)) {\n\t\t\tthis.expanded = false;\n\t\t}\n\t}\n\n\tnavigate(event) {\n\t\tif (this._href === \"#\") {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n}\n","import {\n\tComponent,\n\tHostBinding,\n\tInput\n} from \"@angular/core\";\nimport { NavigationItem } from \"./header-navigation-items.interface\";\n/**\n * Container for header navigation items\n */\n@Component({\n\tselector: \"cds-header-navigation, ibm-header-navigation\",\n\ttemplate: `\n\t\t<nav class=\"cds--header__nav\" [attr.aria-label]=\"ariaLabel\">\n\t\t\t<div class=\"cds--header__menu-bar\" role=\"list\">\n\t\t\t\t<ng-content></ng-content>\n\t\t\t\t<ng-container *ngFor=\"let navigationItem of navigationItems\">\n\t\t\t\t\t<cds-header-item\n\t\t\t\t\t\t*ngIf=\"navigationItem.type === 'item'\"\n\t\t\t\t\t\t[href]=\"navigationItem.href\"\n\t\t\t\t\t\t[route]=\"navigationItem.route\"\n\t\t\t\t\t\t[routeExtras]=\"navigationItem.routeExtras\"\n\t\t\t\t\t\t[isCurrentPage]=\"!!navigationItem.isCurrentPage\">\n\t\t\t\t\t\t{{ navigationItem.content }}\n\t\t\t\t\t</cds-header-item>\n\t\t\t\t\t<cds-header-menu\n\t\t\t\t\t\t*ngIf=\"navigationItem.type === 'menu'\"\n\t\t\t\t\t\t[href]=\"navigationItem.href\"\n\t\t\t\t\t\t[title]=\"navigationItem.title\"\n\t\t\t\t\t\t[trigger]=\"navigationItem.trigger ? navigationItem.trigger : 'click'\"\n\t\t\t\t\t\t[headerItems]=\"navigationItem.menuItems\">\n\t\t\t\t\t</cds-header-menu>\n\t\t\t\t</ng-container>\n\t\t\t</div>\n\t\t</nav>\n\t`\n})\nexport class HeaderNavigation {\n\t@HostBinding(\"style.height.%\") height = 100;\n\n\t@Input() ariaLabel: string;\n\n\t/**\n\t * Creates the header navigation items and menu items through a list of navigation item objects.\n\t * In order for the navigation items to move to the side navigation when window size is less than 1056px,\n\t * navigation items need to be passed into both cds-header-navigation and cds-sidenav.\n\t */\n\t@Input() navigationItems: NavigationItem[];\n}\n","import { Component, HostBinding } from \"@angular/core\";\n\n/**\n * Container for `HeaderAction`s.\n */\n@Component({\n\tselector: \"cds-header-global, ibm-header-global\",\n\ttemplate: `\n\t\t<ng-content></ng-content>\n\t`\n})\nexport class HeaderGlobal {\n\t@HostBinding(\"class.cds--header__global\") hostClass = true;\n}\n","import {\n\tComponent,\n\tInput,\n\tOutput,\n\tEventEmitter,\n\tTemplateRef\n} from \"@angular/core\";\nimport { BaseIconButton } from \"carbon-components-angular/button\";\n\n/**\n * Contained by `HeaderGlobal`. Generally used to trigger `Panel`s\n */\n@Component({\n\tselector: \"cds-header-action, ibm-header-action\",\n\ttemplate: `\n\t\t<cds-icon-button\n\t\t\t[buttonNgClass]=\"{\n\t\t\t\t'cds--header__action': true,\n\t\t\t\t'cds--header__action--active': active\n\t\t\t}\"\n\t\t\t(click)=\"onClick()\"\n\t\t\t[align]=\"align\"\n\t\t\t[caret]=\"caret\"\n\t\t\t[dropShadow]=\"dropShadow\"\n\t\t\t[highContrast]=\"highContrast\"\n\t\t\t[isOpen]=\"isOpen\"\n\t\t\t[enterDelayMs]=\"enterDelayMs\"\n\t\t\t[leaveDelayMs]=\"leaveDelayMs\"\n\t\t\t[description]=\"description\"\n\t\t\t[buttonAttributes]=\"{\n\t\t\t\t'aria-label': ariaLabel\n\t\t\t}\">\n\t\t\t<ng-content></ng-content>\n\t\t</cds-icon-button>\n\t`\n})\nexport class HeaderAction extends BaseIconButton {\n\t/**\n\t * Tooltip content to show on mouseenter\n\t */\n\t@Input() description: string | TemplateRef<any>;\n\t/**\n\t * Sets the aria label on the nav element.\n\t */\n\t@Input() ariaLabel: string;\n\t/**\n\t * Toggles the active state. May be used to toggle a `Panel`s active state.\n\t */\n\t@Input() active = false;\n\t/**\n\t * \"Change\" emitter to allow double binding to the `active` Input.\n\t */\n\t@Output() activeChange = new EventEmitter<boolean>();\n\t/**\n\t * Emits when the action has been clicked.\n\t */\n\t@Output() selected = new EventEmitter<boolean>();\n\n\tonClick() {\n\t\tthis.active = !this.active;\n\t\tthis.selected.emit(this.active);\n\t\tthis.activeChange.emit(this.active);\n\t}\n}\n","import {\n\tComponent,\n\tOutput,\n\tEventEmitter,\n\tInput\n} from \"@angular/core\";\nimport { I18n } from \"carbon-components-angular/i18n\";\n\n/**\n * A toggle for the side navigation\n */\n@Component({\n\tselector: \"cds-hamburger, ibm-hamburger\",\n\ttemplate: `\n\t\t<button\n\t\t\ttype=\"button\"\n\t\t\t(click)=\"doClick()\"\n\t\t\t[ngClass]=\"{'cds--header__action--active': active}\"\n\t\t\tclass=\"cds--header__menu-trigger cds--header__action cds--header__menu-toggle\"\n\t\t\t[attr.aria-label]=\"active ? activeTitle : inactiveTitle\"\n\t\t\t[attr.title]=\"active ? activeTitle : inactiveTitle\">\n\t\t\t<svg *ngIf=\"!active\" cdsIcon=\"menu\" size=\"20\"></svg>\n\t\t\t<svg *ngIf=\"active\" cdsIcon=\"close\" size=\"20\"></svg>\n\t\t</button>\n\t`\n})\nexport class Hamburger {\n\t/**\n\t * Controls the active/selected state for the `Hamburger` menu.\n\t */\n\t@Input() active = false;\n\n\t/**\n\t * Set the title text when the hamburger is active\n\t */\n\t@Input() activeTitle = this.i18n.get().UI_SHELL.HEADER.CLOSE_MENU;\n\n\t/**\n\t * Set the title text when the hamburger is inactive\n\t */\n\t@Input() inactiveTitle = this.i18n.get().UI_SHELL.HEADER.OPEN_MENU;\n\n\t/**\n\t * `EventEmitter` to notify parent components of menu click events.\n\t */\n\t@Output() selected: EventEmitter<Object> = new EventEmitter<Object>();\n\n\tconstructor(public i18n: I18n) {}\n\n\t/**\n\t * Emit the Hamburger click event upwards.\n\t */\n\tpublic doClick() {\n\t\tthis.selected.emit(this.active);\n\t}\n}\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { ButtonModule } from \"carbon-components-angular/button\";\nimport { I18nModule } from \"carbon-components-angular/i18n\";\nimport { IconModule } from \"carbon-components-angular/icon\";\n\nimport { Header } from \"./header.component\";\nimport { HeaderItem } from \"./header-item.component\";\nimport { HeaderMenu } from \"./header-menu.component\";\nimport { HeaderNavigation } from \"./header-navigation.component\";\nimport { HeaderGlobal } from \"./header-global.component\";\nimport { HeaderAction } from \"./header-action.component\";\n\nimport { Hamburger } from \"./hamburger.component\";\nimport { RouterModule } from \"@angular/router\";\n\nexport { HeaderItemInterface, NavigationItem } from \"./header-navigation-items.interface\";\n\nexport {\n\tHeader,\n\tHeaderItem,\n\tHeaderMenu,\n\tHeaderNavigation,\n\tHeaderGlobal,\n\tHeaderAction,\n\tHamburger\n};\n\n@NgModule({\n\tdeclarations: [\n\t\tHeader,\n\t\tHeaderItem,\n\t\tHeaderMenu,\n\t\tHeaderNavigation,\n\t\tHeaderGlobal,\n\t\tHeaderAction,\n\t\tHamburger\n\t],\n\timports: [\n\t\tCommonModule,\n\t\tButtonModule,\n\t\tI18nModule,\n\t\tIconModule,\n\t\tRouterModule\n\t],\n\texports: [\n\t\tHeader,\n\t\tHeaderItem,\n\t\tHeaderMenu,\n\t\tHeaderNavigation,\n\t\tHeaderGlobal,\n\t\tHeaderAction,\n\t\tHamburger\n\t]\n})\nexport class HeaderModule { }\n","import {\n\tComponent,\n\tInput,\n\tOptional,\n\tOutput,\n\tEventEmitter,\n\tOnChanges,\n\tHostBinding,\n\tSimpleChanges\n} from \"@angular/core\";\nimport { DomSanitizer } from \"@angular/platform-browser\";\nimport { Router } from \"@angular/router\";\n\n/**\n * `SideNavItem` can either be a child of `SideNav` or `SideNavMenu`\n */\n@Component({\n\tselector: \"cds-sidenav-item, ibm-sidenav-item\",\n\ttemplate: `\n\t\t<a *ngIf=\"!useRouter; else sidenavItemRouterTpl\"\n\t\t class=\"cds--side-nav__link\"\n\t\t [ngClass]=\"{\n\t\t\t\t'cds--side-nav__item--active': active\n\t\t\t}\"\n\t\t [href]=\"href\"\n\t\t [attr.aria-current]=\"(active ? 'page' : null)\"\n\t\t [attr.title]=\"title ? title : null\"\n\t\t (click)=\"navigate($event)\">\n\t\t\t<ng-template [ngTemplateOutlet]=\"sidenavItemContentTpl\"></ng-template>\n\t\t</a>\n\n\t\t<ng-template #sidenavItemRouterTpl>\n\t\t\t<a\n\t\t\t\t[routerLink]=\"route\"\n\t\t\t\trouterLinkActive=\"cds--side-nav__item--active\"\n\t\t\t\tariaCurrentWhenActive=\"page\"\n\t\t\t\t[attr.title]=\"title ? title : null\"\n\t\t\t\tclass=\"cds--side-nav__link\">\n\t\t\t\t<ng-template [ngTemplateOutlet]=\"sidenavItemContentTpl\"></ng-template>\n\t\t\t</a>\n\t\t</ng-template>\n\n\t\t<ng-template #sidenavItemContentTpl>\n\t\t\t<div *ngIf=\"!isSubMenu\" class=\"cds--side-nav__icon\">\n\t\t\t\t<ng-content select=\"svg, [icon]\"></ng-content>\n\t\t\t</div>\n\t\t\t<span class=\"cds--side-nav__link-text\">\n\t\t\t\t<ng-content></ng-content>\n\t\t\t</span>\n\t\t</ng-template>\n\t`,\n\tstyles: [`\n\t\t:host {\n\t\t\tdisplay: list-item;\n\t\t}\n\t`]\n})\nexport class SideNavItem implements OnChanges {\n\t/**\n\t * Link for the item. NOTE: *do not* pass unsafe or untrusted values, this has the potential to open you up to XSS attacks\n\t */\n\t@Input() set href(v: string) {\n\t\t// Needed when component is created dynamically with a model.\n\t\tif (v === undefined) {\n\t\t\treturn;\n\t\t}\n\t\tthis._href = v;\n\t}\n\n\tget href() {\n\t\treturn this.domSanitizer.bypassSecurityTrustUrl(this._href) as string;\n\t}\n\n\t/**\n\t * Use the routerLink attribute on <a> tag for navigation instead of using event handlers\n\t */\n\t@Input() useRouter = true;\n\n\t@HostBinding(\"class.cds--side-nav__item\") get sideNav() {\n\t\treturn !this.isSubMenu;\n\t}\n\n\t@HostBinding(\"class.cds--side-nav__menu-item\") get menuItem() {\n\t\treturn this.isSubMenu;\n\t}\n\n\t/**\n\t * Toggles the active (current page) state for the link.\n\t */\n\t@Input() active = false;\n\n\t/**\n\t * Array of commands to send to the router when the link is activated\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() route: any[];\n\n\t@Input() isSubMenu = false;\n\n\t/**\n\t * Router options. Used in conjunction with `route`\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() routeExtras: any;\n\n\t/**\n\t * Title attribute of the anchor element.\n\t */\n\t@Input() title: string;\n\n\t/**\n\t * Emits the navigation status promise when the link is activated\n\t */\n\t@Output() navigation = new EventEmitter<Promise<boolean>>();\n\n\t/**\n\t * Emits when `active` input is changed. This is mainly used to indicate to any parent menu items that a\n\t * child sidenav item is active or not active.\n\t */\n\t@Output() selected = new EventEmitter<boolean>();\n\n\t@HostBinding(\"attr.role\") role = \"listitem\";\n\n\tprotected _href = \"#\";\n\n\tconstructor(protected domSanitizer: DomSanitizer, @Optional() protected router: Router) {}\n\n\tngOnChanges(changes: SimpleChanges) {\n\t\tif (changes.active) {\n\t\t\tthis.selected.emit(this.active);\n\t\t}\n\t}\n\n\tnavigate(event: MouseEvent) {\n\t\tif (this.router && this.route) {\n\t\t\tevent.preventDefault();\n\t\t\tconst status = this.router.navigate(this.route, this.routeExtras);\n\t\t\tthis.navigation.emit(status);\n\t\t} else if (this._href === \"#\") {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n}\n","import {\n\tAfterContentInit,\n\tComponent,\n\tContentChildren,\n\tInput,\n\tQueryList,\n\tOnDestroy,\n\tHostBinding\n} from \"@angular/core\";\nimport { SideNavItem } from \"./sidenav-item.component\";\nimport { Subscription } from \"rxjs\";\nimport { SideNavItemInterface } from \"./sidenav-item.interface\";\n\n/**\n * `SideNavMenu` provides a method to group `SideNavItem`s under a common heading.\n */\n@Component({\n\tselector: \"cds-sidenav-menu, ibm-sidenav-menu\",\n\ttemplate: `\n\t\t<button\n\t\t\t(click)=\"toggle()\"\n\t\t\tclass=\"cds--side-nav__submenu\"\n\t\t\taria-haspopup=\"true\"\n\t\t\t[attr.aria-expanded]=\"expanded\"\n\t\t\ttype=\"button\">\n\t\t\t<div class=\"cds--side-nav__icon\">\n\t\t\t\t<ng-content select=\"svg, [icon]\"></ng-content>\n\t\t\t</div>\n\t\t\t<span class=\"cds--side-nav__submenu-title\">{{title}}</span>\n\t\t\t<div class=\"cds--side-nav__icon cds--side-nav__icon--small cds--side-nav__submenu-chevron\">\n\t\t\t\t<svg\n\t\t\t\t\tfocusable=\"false\"\n\t\t\t\t\tpreserveAspectRatio=\"xMidYMid meet\"\n\t\t\t\t\tstyle=\"will-change: transform;\"\n\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\twidth=\"20\"\n\t\t\t\t\theight=\"20\"\n\t\t\t\t\tviewBox=\"0 0 32 32\"\n\t\t\t\t\taria-hidden=\"true\">\n\t\t\t\t\t<path d=\"M16 22L6 12l1.4-1.4 8.6 8.6 8.6-8.6L26 12z\"></path>\n\t\t\t\t</svg>\n\t\t\t</div>\n\t\t</button>\n\t\t<div class=\"cds--side-nav__menu\" role=\"list\">\n\t\t\t<ng-content></ng-content>\n\t\t\t<ng-container *ngFor=\"let menuItem of menuItems\">\n\t\t\t\t<cds-sidenav-item\n\t\t\t\t\t[href]=\"menuItem.href\"\n\t\t\t\t\t[route]=\"menuItem.route\"\n\t\t\t\t\t[routeExtras]=\"menuItem.routeExtras\"\n\t\t\t\t\t[useRouter]=\"useRouter\"\n\t\t\t\t\t[isSubMenu]=\"true\">\n\t\t\t\t\t{{ menuItem.content }}\n\t\t\t\t</cds-sidenav-item>\n\t\t\t</ng-container>\n\t\t</div>\n\t`\n})\nexport class SideNavMenu implements AfterContentInit, OnDestroy {\n\t@HostBinding(\"class.cds--side-nav__item\") navItem = true;\n\t@HostBinding(\"class.cds--side-nav__item--icon\") navItemIcon = true;\n\t@HostBinding(\"class.cds--side-nav__item--active\") get navItemActive() {\n\t\treturn this.hasActiveChild;\n\t}\n\t@HostBinding(\"attr.role\") role = \"listitem\";\n\n\t/**\n\t * Use the routerLink attribute on <a> tag for navigation instead of using event handlers\n\t */\n\t@Input() useRouter = false;\n\n\t/**\n\t * Heading for the group\n\t */\n\t@Input() title: string;\n\t/**\n\t * Controls the visibility of the child `SideNavItem`s\n\t */\n\t@Input() expanded = false;\n\t/**\n\t * Controls the active status indicator on the menu if there is an active\n\t * child sidenav item.\n\t */\n\t@Input() hasActiveChild = false;\n\n\t@Input() menuItems: SideNavItemInterface[];\n\n\t@ContentChildren(SideNavItem) sidenavItems: QueryList<SideNavItem>;\n\n\tprotected activeItemsSubscription = new Subscription();\n\n\tngAfterContentInit() {\n\t\tsetTimeout(() => {\n\t\t\tthis.sidenavItems.forEach(item => {\n\t\t\t\titem.isSubMenu = true;\n\t\t\t\tthis.findActiveChildren();\n\t\t\t\tconst activeItemSubscription = item.selected.subscribe(() => {\n\t\t\t\t\tthis.findActiveChildren();\n\t\t\t\t});\n\t\t\t\tthis.activeItemsSubscription.add(activeItemSubscription);\n\t\t\t});\n\n\t\t\tthis.sidenavItems.changes.subscribe(() => {\n\t\t\t\tthis.sidenavItems.forEach(item => {\n\t\t\t\t\titem.isSubMenu = true;\n\t\t\t\t\tthis.findActiveChildren();\n\t\t\t\t\tconst activeItemSubscription = item.selected.subscribe(() => {\n\t\t\t\t\t\tthis.findActiveChildren();\n\t\t\t\t\t});\n\t\t\t\t\tthis.activeItemsSubscription.add(activeItemSubscription);\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\tngOnDestroy() {\n\t\tthis.activeItemsSubscription.unsubscribe();\n\t}\n\n\ttoggle() {\n\t\tthis.expanded = !this.expanded;\n\t}\n\n\tprotected findActiveChildren() {\n\t\tthis.hasActiveChild = this.sidenavItems.some(item => item.active);\n\t}\n}\n","import {\n\tComponent,\n\tHostBinding,\n\tInput,\n\tViewEncapsulation\n} from \"@angular/core\";\nimport { I18n } from \"carbon-components-angular/i18n\";\nimport { NavigationItem } from \"../header/header-navigation-items.interface\";\n\n/**\n * `Sidenav` is a fixed left navigation that may contain `SideNavItem`s or `SideNavMenu`s\n *\n * [See demo](../../?path=/story/components-ui-shell--side-navigation)\n */\n@Component({\n\tselector: \"cds-sidenav, ibm-sidenav\",\n\ttemplate: `\n\t\t<nav class=\"cds--side-nav__items\" [attr.aria-label]=\"ariaLabel\">\n\t\t\t<ng-content select=\"cds-sidenav-header,ibm-sidenav-header\"></ng-content>\n\t\t\t<div role=\"list\">\n\t\t\t\t<div class=\"cds--side-nav__header-navigation cds--side-nav__header-divider\">\n\t\t\t\t\t<ng-container *ngFor=\"let navigationItem of navigationItems\">\n\t\t\t\t\t\t<cds-sidenav-item\n\t\t\t\t\t\t\t*ngIf=\"navigationItem.type === 'item'\"\n\t\t\t\t\t\t\t[href]=\"navigationItem.href\"\n\t\t\t\t\t\t\t[route]=\"navigationItem.route\"\n\t\t\t\t\t\t\t[routeExtras]=\"navigationItem.routeExtras\"\n\t\t\t\t\t\t\t[useRouter]=\"useRouter\"\n\t\t\t\t\t\t\t[title]=\"navigationItem.title\">\n\t\t\t\t\t\t\t{{ navigationItem.content }}\n\t\t\t\t\t\t</cds-sidenav-item>\n\t\t\t\t\t\t<cds-sidenav-menu\n\t\t\t\t\t\t\t*ngIf=\"navigationItem.type === 'menu'\"\n\t\t\t\t\t\t\t[title]=\"navigationItem.title\"\n\t\t\t\t\t\t\t[useRouter]=\"useRouter\"\n\t\t\t\t\t\t\t[menuItems]=\"navigationItem.menuItems\">\n\t\t\t\t\t\t</cds-sidenav-menu>\n\t\t\t\t\t</ng-container>\n\t\t\t\t</div>\n\t\t\t\t<ng-content></ng-content>\n\t\t\t</div>\n\t\t\t<footer class=\"cds--side-nav__footer\">\n\t\t\t\t<button\n\t\t\t\t\t*ngIf=\"allowExpansion\"\n\t\t\t\t\tclass=\"cds--side-nav__toggle\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t[title]=\"(expanded ? i18n.get('UI_SHELL.SIDE_NAV.TOGGLE_CLOSE') : i18n.get('UI_SHELL.SIDE_NAV.TOGGLE_OPEN')) | async\"\n\t\t\t\t\t(click)=\"toggle()\">\n\t\t\t\t\t<div class=\"cds--side-nav__icon\">\n\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\t*ngIf=\"expanded\"\n\t\t\t\t\t\t\tfocusable=\"false\"\n\t\t\t\t\t\t\tpreserveAspectRatio=\"xMidYMid meet\"\n\t\t\t\t\t\t\tstyle=\"will-change: transform;\"\n\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\t\twidth=\"20\"\n\t\t\t\t\t\t\theight=\"20\"\n\t\t\t\t\t\t\tviewBox=\"0 0 32 32\"\n\t\t\t\t\t\t\taria-hidden=\"true\">\n\t\t\t\t\t\t\t<path d=\"M24 9.4L22.6 8 16 14.6 9.4 8 8 9.4l6.6 6.6L8 22.6 9.4 24l6.6-6.6 6.6 6.6 1.4-1.4-6.6-6.6L24 9.4z\"></path>\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\t*ngIf=\"!expanded\"\n\t\t\t\t\t\t\tfocusable=\"false\"\n\t\t\t\t\t\t\tpreserveAspectRatio=\"xMidYMid meet\"\n\t\t\t\t\t\t\tstyle=\"will-change: transform;\"\n\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\t\twidth=\"20\"\n\t\t\t\t\t\t\theight=\"20\"\n\t\t\t\t\t\t\tviewBox=\"0 0 32 32\"\n\t\t\t\t\t\t\taria-hidden=\"true\">\n\t\t\t\t\t\t\t<path d=\"M22 16L12 26l-1.4-1.4 8.6-8.6-8.6-8.6L12 6z\"></path>\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t</div>\n\t\t\t\t\t<span class=\"cds--assistive-text\">\n\t\t\t\t\t\t{{(expanded ? i18n.get('UI_SHELL.SIDE_NAV.TOGGLE_CLOSE') : i18n.get('UI_SHELL.SIDE_NAV.TOGGLE_OPEN')) | async}}\n\t\t\t\t\t</span>\n\t\t\t\t</button>\n\t\t\t</footer>\n\t\t</nav>\n\t`,\n\tencapsulation: ViewEncapsulation.None\n})\nexport class SideNav {\n\t@HostBinding(\"class.cds--side-nav\") hostClass = true;\n\t@Input() ariaLabel = \"Side navigation\";\n\t/**\n\t * Controls the expanded (`true`) or collapsed (`false`) state when on a small screen.\n\t */\n\t@HostBinding(\"class.cds--side-nav--expanded\") @Input() expanded = true;\n\t/**\n\t * Controls the hidden (`true`) or visible (`false`) state\n\t */\n\t@HostBinding(\"class.cds--side-nav--hidden\") @Input() hidden = false;\n\t@HostBinding(\"class.cds--side-nav--rail\") @Input() rail = false;\n\t@HostBinding(\"class.cds--side-nav__navigation\") ux = true;\n\t@Input() allowExpansion = false;\n\n\t/**\n\t * NavigationItems from the header navigation component which are displayed on the sidenav when the window\n\t * innerWidth is small enough. Sidenav items and menus are created using the model used to create header\n\t * navigation items.\n\t */\n\t@Input() navigationItems: NavigationItem[];\n\n\t/**\n\t * Use the routerLink attribute on <a> tag for navigation instead of using event handlers\n\t */\n\t@Input() useRouter = false;\n\n\tconstructor(public i18n: I18n) { }\n\n\ttoggle() {\n\t\tthis.expanded = !this.expanded;\n\t}\n}\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { RouterModule } from \"@angular/router\";\n\nimport { I18nModule } from \"carbon-components-angular/i18n\";\n\nimport { SideNav } from \"./sidenav.component\";\nimport { SideNavItem } from \"./sidenav-item.component\";\nimport { SideNavMenu } from \"./sidenav-menu.component\";\n\nexport { SideNavItemInterface } from \"./sidenav-item.interface\";\n\nexport {\n\tSideNav,\n\tSideNavItem,\n\tSideNavMenu\n};\n\n@NgModule({\n\tdeclarations: [\n\t\tSideNav,\n\t\tSideNavItem,\n\t\tSideNavMenu\n\t],\n\timports: [CommonModule, I18nModule, RouterModule],\n\texports: [\n\t\tSideNav,\n\t\tSideNavItem,\n\t\tSideNavMenu\n\t]\n})\nexport class SideNavModule { }\n","import { Component, Input } from \"@angular/core\";\n\n/**\n * `Panel` is a component that can be used to display content on the right side of the screen.\n * `Panel`s are generally activated by and linked to a `HeaderAction` component.\n */\n@Component({\n\tselector: \"cds-panel, ibm-panel\",\n\ttemplate: `\n\t\t<div\n\t\t\tclass=\"cds--header-panel\"\n\t\t\t[attr.aria-label]=\"ariaLabel\"\n\t\t\t[ngClass]=\"{\n\t\t\t\t'cds--header-panel--expanded': expanded\n\t\t\t}\">\n\t\t\t<ng-content></ng-content>\n\t\t</div>\n\t`\n})\nexport class Panel {\n\t/**\n\t * Controls the visibility of the panel\n\t */\n\t@Input() expanded = false;\n\n\t@Input() ariaLabel;\n}\n","import { Component, HostBinding } from \"@angular/core\";\n\n/**\n * Container for switcher items.\n *\n * ```html\n * <cds-switcher-list>\n * \t<cds-switcher-list-item>one</cds-switcher-list-item>\n * \t<cds-switcher-list-item [active]=\"true\">two</cds-switcher-list-item>\n * \t<cds-switcher-list-item>three</cds-switcher-list-item>\n * </cds-switcher-list>\n * ```\n */\n@Component({\n\tselector: \"cds-switcher-list, ibm-switcher-list\",\n\ttemplate: `\n\t\t\t<ng-content></ng-content>\n\t`,\n\tstyles: [`\n\t\t:host {\n\t\t\tdisplay: block;\n\t\t}\n\t`]\n})\nexport class SwitcherList {\n\t@HostBinding(\"class.cds--switcher\") switcher = true;\n\t@HostBinding(\"attr.role\") role = \"list\";\n}\n","import {\n\tComponent,\n\tInput,\n\tOutput,\n\tEventEmitter,\n\tOptional,\n\tHostBinding\n} from \"@angular/core\";\nimport { DomSanitizer, SafeUrl } from \"@angular/platform-browser\";\nimport { Router } from \"@angular/router\";\n\n/**\n * Represents an item in a switcher list.\n */\n@Component({\n\tselector: \"cds-switcher-list-item, ibm-switcher-list-item\",\n\ttemplate: `\n\t\t<a\n\t\t\tclass=\"cds--switcher__item-link\"\n\t\t\t[ngClass]=\"{\n\t\t\t\t'cds--switcher__item-link--selected': active\n\t\t\t}\"\n\t\t\t[href]=\"href\"\n\t\t\t[target]=\"target\"\n\t\t\t(click)=\"navigate($event)\">\n\t\t\t<ng-content></ng-content>\n\t\t</a>\n\t`\n})\nexport class SwitcherListItem {\n\t/**\n\t * Enables the \"active\" state for an item. Commonly used to indicate the current page or selection.\n\t */\n\t@Input() active = false;\n\n\t/**\n\t * Array of commands to send to the router when the link is activated\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() route: any[];\n\n\t/**\n\t * Router options. Used in conjunction with `route`\n\t * See: https://angular.io/api/router/Router#navigate\n\t */\n\t@Input() routeExtras: any;\n\n\t/**\n\t * Optional link for the underlying anchor.\n\t */\n\t@Input() set href(value: string) {\n\t\tthis._href = value;\n\t}\n\n\t/**\n\t * Emits the navigation status promise when the link is activated\n\t */\n\t@Output() navigation = new EventEmitter<Promise<boolean>>();\n\n\tget href() {\n\t\treturn this.domSanitizer.bypassSecurityTrustUrl(this._href) as string;\n\t}\n\n\t/**\n\t * Optional target for the underlying anchor.\n\t */\n\t@Input() set target(value: string) {\n\t\tthis._target = value;\n\t}\n\n\tget target() {\n\t\treturn this._target;\n\t}\n\n\t@HostBinding(\"class.cds--switcher__item\") itemClass = true;\n\n\t@HostBinding(\"attr.role\") itemRole = \"listitem\";\n\n\tprotected _href = \"#\";\n\tprotected _target = \"\";\n\n\tconstructor(protected domSanitizer: DomSanitizer, @Optional() protected router: Router) { }\n\n\tnavigate(event) {\n\t\tif (this.router && this.route) {\n\t\t\tevent.preventDefault();\n\t\t\tconst status = this.router.navigate(this.route, this.routeExtras);\n\t\t\tthis.navigation.emit(status);\n\t\t} else if (this._href === \"#\") {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n}\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { I18nModule } from \"carbon-components-angular/i18n\";\n\nimport { Panel } from \"./panel.component\";\nimport { SwitcherList } from \"./switcher-list.component\";\nimport { SwitcherListItem } from \"./switcher-list-item.component\";\n\nexport {\n\tPanel,\n\tSwitcherList,\n\tSwitcherListItem\n};\n\n@NgModule({\n\tdeclarations: [\n\t\tPanel,\n\t\tSwitcherList,\n\t\tSwitcherListItem\n\t],\n\timports: [CommonModule, I18nModule],\n\texports: [\n\t\tPanel,\n\t\tSwitcherList,\n\t\tSwitcherListItem\n\t]\n})\nexport class PanelModule { }\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { I18nModule } from \"carbon-components-angular/i18n\";\n\nimport { HeaderModule } from \"./header/header.module\";\nimport { SideNavModule } from \"./sidenav/sidenav.module\";\nimport { PanelModule } from \"./panel/panel.module\";\n\n@NgModule({\n\timports: [\n\t\tCommonModule,\n\t\tI18nModule,\n\t\tHeaderModule,\n\t\tSideNavModule,\n\t\tPanelModule\n\t],\n\texports: [\n\t\tHeaderModule,\n\t\tSideNavModule,\n\t\tPanelModule\n\t]\n})\nexport class UIShellModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i3","i4","i1","i3.HeaderItem","i2.HeaderItem","i3.HeaderMenu","i2.SideNavItem","i3.SideNavItem","i4.SideNavMenu"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"carbon-components-angular-datepicker.mjs","sources":["../../src/datepicker/carbon-flatpickr-month-select.ts","../../src/datepicker/datepicker.component.ts","../../src/datepicker/datepicker.module.ts","../../src/datepicker/carbon-components-angular-datepicker.ts"],"sourcesContent":["/**\n * This is from carbon-components.\n * We need it to format the month select according to specs.\n * Carbon currently doesn't expose this as a seperate package,\n * and we don't import the carbon-components js (on purpose)\n * so some copy pasta is required\n *\n * ref: https://github.com/carbon-design-system/carbon/blob/\n * \tf06f38f0c2ef624e409a3d5711e897a79f4c88fc/packages/components/src/components/date-picker/date-picker.js#L52-L123\n */\n\nconst monthToStr = (monthNumber, shorthand, locale) =>\n\tlocale.months[shorthand ? \"shorthand\" : \"longhand\"][monthNumber];\n\nconst config = {\n\tselectorInit: \"[data-date-picker]\",\n\tselectorDatePickerInput: \"[data-date-picker-input]\",\n\tselectorDatePickerInputFrom: \"[data-date-picker-input-from]\",\n\tselectorDatePickerInputTo: \"[data-date-picker-input-to]\",\n\tselectorDatePickerIcon: \"[data-date-picker-icon]\",\n\tselectorFlatpickrMonthYearContainer: \".flatpickr-current-month\",\n\tselectorFlatpickrYearContainer: \".numInputWrapper\",\n\tselectorFlatpickrCurrentMonth: \".cur-month\",\n\tclassCalendarContainer: `cds--date-picker__calendar`,\n\tclassMonth: `cds--date-picker__month`,\n\tclassWeekdays: `cds--date-picker__weekdays`,\n\tclassDays: `cds--date-picker__days`,\n\tclassWeekday: `cds--date-picker__weekday`,\n\tclassDay: `cds--date-picker__day`,\n\tclassFocused: `cds--focused`,\n\tclassVisuallyHidden: `cds--visually-hidden`,\n\tclassFlatpickrCurrentMonth: \"cur-month\",\n\tattribType: \"data-date-picker-type\",\n\tdateFormat: \"m/d/Y\",\n\tshorthand: false\n};\n\nexport const carbonFlatpickrMonthSelectPlugin = fp => {\n\tconst setupElements = () => {\n\t\tif (!fp.monthElements || !fp.yearElements) {\n\t\t\treturn;\n\t\t}\n\t\tfp.monthElements.forEach(elem => {\n\t\t\tif (!elem.parentNode) { return; }\n\t\t\telem.parentNode.removeChild(elem);\n\t\t});\n\t\tfp.monthElements.splice(\n\t\t\t0,\n\t\t\tfp.monthElements.length,\n\t\t\t...fp.monthElements.map(() => {\n\t\t\t\t// eslint-disable-next-line no-underscore-dangle\n\t\t\t\tconst monthElement = fp._createElement(\n\t\t\t\t\t\"span\",\n\t\t\t\t\tconfig.classFlatpickrCurrentMonth\n\t\t\t\t);\n\t\t\t\tmonthElement.textContent = monthToStr(\n\t\t\t\t\tfp.currentMonth,\n\t\t\t\t\tconfig.shorthand === true,\n\t\t\t\t\tfp.l10n\n\t\t\t\t);\n\t\t\t\tfp.yearElements[0]\n\t\t\t\t\t.closest(config.selectorFlatpickrMonthYearContainer)\n\t\t\t\t\t.insertBefore(\n\t\t\t\t\t\tmonthElement,\n\t\t\t\t\t\tfp.yearElements[0].closest(config.selectorFlatpickrYearContainer)\n\t\t\t\t\t);\n\t\t\t\treturn monthElement;\n\t\t\t})\n\t\t);\n\t};\n\tconst updateCurrentMonth = () => {\n\t\tif (!fp.yearElements) {\n\t\t\treturn;\n\t\t}\n\t\tconst monthStr = monthToStr(\n\t\t\tfp.currentMonth,\n\t\t\tconfig.shorthand === true,\n\t\t\tfp.l10n\n\t\t);\n\t\tfp.yearElements.forEach(elem => {\n\t\t\tconst currentMonthContainer = elem.closest(\n\t\t\t\tconfig.selectorFlatpickrMonthYearContainer\n\t\t\t);\n\t\t\tArray.prototype.forEach.call(\n\t\t\t\tcurrentMonthContainer.querySelectorAll(\".cur-month\"),\n\t\t\t\tmonthElement => {\n\t\t\t\t\tmonthElement.textContent = monthStr;\n\t\t\t\t}\n\t\t\t);\n\t\t});\n\t};\n\n\tconst register = () => {\n\t\tfp.loadedPlugins.push(\"carbonFlatpickrMonthSelectPlugin\");\n\t};\n\n\treturn {\n\t\tonMonthChange: updateCurrentMonth,\n\t\tonValueUpdate: updateCurrentMonth,\n\t\tonOpen: updateCurrentMonth,\n\t\tonReady: [setupElements, updateCurrentMonth, register]\n\t};\n};\n","import {\n\tComponent,\n\tInput,\n\tOutput,\n\tEventEmitter,\n\tViewEncapsulation,\n\tElementRef,\n\tOnDestroy,\n\tHostListener,\n\tTemplateRef,\n\tOnChanges,\n\tSimpleChanges,\n\tAfterViewChecked,\n\tAfterViewInit,\n\tViewChild,\n\tOnInit,\n\tSimpleChange\n} from \"@angular/core\";\nimport rangePlugin from \"flatpickr/dist/plugins/rangePlugin\";\nimport flatpickr from \"flatpickr\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\nimport { carbonFlatpickrMonthSelectPlugin } from \"./carbon-flatpickr-month-select\";\nimport * as languages from \"flatpickr/dist/l10n/index\";\nimport { DatePickerInput } from \"carbon-components-angular/datepicker-input\";\nimport { I18n } from \"carbon-components-angular/i18n\";\n\n/**\n * Due to type error, we have to use square brackets property accessor\n * There is a webpack issue when attempting to access exported languages from flatpickr l10n Angular 14+ apps\n * languages.default[locale] fails in app consuming CCA library but passes in test\n * languages.default.default[locale] fails in test but works in app consuming CCA library.\n *\n * To please both scenarios, we are adding a condition to prevent tests from failing\n */\nif (languages.default?.default[\"en\"]?.weekdays) {\n\t(languages.default.default[\"en\"].weekdays.shorthand as string[]) = languages.default.default[\"en\"].weekdays.longhand.map(day => {\n\t\tif (day === \"Thursday\") {\n\t\t\treturn \"Th\";\n\t\t}\n\t\treturn day.charAt(0);\n\t});\n}\n\n/**\n * Get started with importing the module:\n *\n * ```typescript\n * import { DatePickerModule } from 'carbon-components-angular';\n * ```\n *\n * [See demo](../../?path=/story/components-date-picker--single)\n */\n@Component({\n\tselector: \"cds-date-picker, ibm-date-picker\",\n\ttemplate: `\n\t<div class=\"cds--form-item\">\n\t\t<div\n\t\t\tclass=\"cds--date-picker\"\n\t\t\t[ngClass]=\"{\n\t\t\t\t'cds--date-picker--range' : range,\n\t\t\t\t'cds--date-picker--single' : !range,\n\t\t\t\t'cds--date-picker--light' : theme === 'light',\n\t\t\t\t'cds--skeleton' : skeleton\n\t\t\t}\">\n\t\t\t<div class=\"cds--date-picker-container\">\n\t\t\t\t<cds-date-picker-input\n\t\t\t\t\t#input\n\t\t\t\t\t[label]=\"label\"\n\t\t\t\t\t[placeholder]=\"placeholder\"\n\t\t\t\t\t[pattern]=\"inputPattern\"\n\t\t\t\t\t[id]=\"id + '-input'\"\n\t\t\t\t\t[size]=\"size\"\n\t\t\t\t\t[type]=\"(range ? 'range' : 'single')\"\n\t\t\t\t\t[hasIcon]=\"(range ? false : true)\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t[invalid]=\"invalid\"\n\t\t\t\t\t[invalidText]=\"invalidText\"\n\t\t\t\t\t[warn]=\"warn\"\n\t\t\t\t\t[warnText]=\"warnText\"\n\t\t\t\t\t[skeleton]=\"skeleton\"\n\t\t\t\t\t[helperText]=\"helperText\"\n\t\t\t\t\t(valueChange)=\"onValueChange($event)\"\n\t\t\t\t\t(click)=\"openCalendar(input)\">\n\t\t\t\t</cds-date-picker-input>\n\t\t\t</div>\n\n\t\t\t<div *ngIf=\"range\" class=\"cds--date-picker-container\">\n\t\t\t\t<cds-date-picker-input\n\t\t\t\t\t#rangeInput\n\t\t\t\t\t[label]=\"rangeLabel\"\n\t\t\t\t\t[placeholder]=\"placeholder\"\n\t\t\t\t\t[pattern]=\"inputPattern\"\n\t\t\t\t\t[id]=\"id + '-rangeInput'\"\n\t\t\t\t\t[size]=\"size\"\n\t\t\t\t\t[type]=\"(range ? 'range' : 'single')\"\n\t\t\t\t\t[hasIcon]=\"(range ? true : null)\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t[invalid]=\"rangeInvalid\"\n\t\t\t\t\t[invalidText]=\"rangeInvalidText\"\n\t\t\t\t\t[warn]=\"rangeWarn\"\n\t\t\t\t\t[warnText]=\"rangeWarnText\"\n\t\t\t\t\t[skeleton]=\"skeleton\"\n\t\t\t\t\t[helperText]=\"rangeHelperText\"\n\t\t\t\t\t(valueChange)=\"onRangeValueChange($event)\"\n\t\t\t\t\t(click)=\"openCalendar(rangeInput)\">\n\t\t\t\t</cds-date-picker-input>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\t`,\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: DatePicker,\n\t\t\tmulti: true\n\t\t}\n\t],\n\tencapsulation: ViewEncapsulation.None\n})\nexport class DatePicker implements\n\tOnInit,\n\tOnDestroy,\n\tOnChanges,\n\tAfterViewChecked,\n\tAfterViewInit {\n\tprivate static datePickerCount = 0;\n\n\t/**\n\t * Select calendar range mode\n\t */\n\t@Input() range = false;\n\n\t/**\n\t * Format of date\n\t *\n\t * For reference: https://flatpickr.js.org/formatting/\n\t */\n\t@Input() dateFormat = \"m/d/Y\";\n\n\t/**\n\t * Language of the flatpickr calendar.\n\t *\n\t * For reference of the possible locales:\n\t * https://github.com/flatpickr/flatpickr/blob/master/src/l10n/index.ts\n\t */\n\t@Input() language = \"en\";\n\n\t@Input() label: string | TemplateRef<any>;\n\t@Input() helperText: string | TemplateRef<any>;\n\t@Input() rangeHelperText: string | TemplateRef<any>;\n\t@Input() rangeLabel: string;\n\n\t@Input() placeholder = \"mm/dd/yyyy\";\n\n\t/**\n\t * Aria label added to datepicker's calendar container.\n\t */\n\t@Input() ariaLabel = \"calendar container\";\n\n\t/**\n\t * The pattern for the underlying input element\n\t */\n\t@Input() inputPattern = \"^\\\\d{1,2}/\\\\d{1,2}/\\\\d{4}$\";\n\n\t@Input() id = `datepicker-${DatePicker.datePickerCount++}`;\n\n\t@Input() set value(v: (Date | string)[]) {\n\t\tif (!v) {\n\t\t\tv = [];\n\t\t}\n\t\tthis._value = v;\n\t}\n\n\tget value() {\n\t\treturn this._value;\n\t}\n\n\t/**\n\t * @deprecated since v5 - Use `cdsLayer` directive instead\n\t * Set to `\"light\"` to apply the light style\n\t */\n\t@Input() theme: \"light\" | \"dark\" = \"dark\";\n\n\t@Input() disabled = false;\n\t/**\n\t * Set to `true` to display the invalid state.\n\t */\n\t@Input() invalid = false;\n\t/**\n\t * Value displayed if datepicker is in an invalid state.\n\t */\n\t@Input() invalidText: string | TemplateRef<any>;\n\t/**\n\t * Set to `true` to show a warning (contents set by warningText)\n\t */\n\t@Input() warn = false;\n\t/**\n\t * Sets the warning text\n\t */\n\t@Input() warnText: string | TemplateRef<any>;\n\n\t@Input() size: \"sm\" | \"md\" | \"lg\" = \"md\";\n\t/**\n\t * Set to `true` to display the invalid state for the second datepicker input.\n\t */\n\t@Input() rangeInvalid = false;\n\t/**\n\t * Value displayed if the second datepicker input is in an invalid state.\n\t */\n\t@Input() rangeInvalidText: string | TemplateRef<any>;\n\t/**\n\t * Set to `true` to show a warning in the second datepicker input (contents set by rangeWarningText)\n\t */\n\t@Input() rangeWarn = false;\n\t/**\n\t * Sets the warning text for the second datepicker input\n\t */\n\t@Input() rangeWarnText: string | TemplateRef<any>;\n\n\t@Input() skeleton = false;\n\n\t@Input() plugins = [];\n\n\t@Input()\n\tset flatpickrOptions(options) {\n\t\tthis._flatpickrOptions = Object.assign({}, this._flatpickrOptions, options);\n\t}\n\tget flatpickrOptions() {\n\t\tconst plugins = [...this.plugins, carbonFlatpickrMonthSelectPlugin];\n\t\tif (this.range) {\n\t\t\tplugins.push(rangePlugin({ input: `#${this.id}-rangeInput`, position: \"left\" }));\n\t\t}\n\t\treturn Object.assign({}, this._flatpickrOptions, this.flatpickrBaseOptions, {\n\t\t\tmode: this.range ? \"range\" : \"single\",\n\t\t\tplugins,\n\t\t\tdateFormat: this.dateFormat,\n\t\t\tlocale: languages.default?.default[this.language] || languages.default[this.language]\n\t\t});\n\t}\n\n\t@ViewChild(\"input\", { static: true }) input: DatePickerInput;\n\t@ViewChild(\"rangeInput\") rangeInput: DatePickerInput;\n\n\t@Output() valueChange: EventEmitter<any> = new EventEmitter();\n\n\t/**\n\t * We are overriding onClose event even if users pass it via flatpickr options\n\t * Emits an event when date picker closes\n\t */\n\t@Output() onClose: EventEmitter<any> = new EventEmitter();\n\n\tprotected _value = [];\n\n\tprotected _flatpickrOptions = {\n\t\tallowInput: true\n\t};\n\n\tprotected flatpickrBaseOptions = {\n\t\tmode: \"single\",\n\t\tdateFormat: \"m/d/Y\",\n\t\tplugins: this.plugins,\n\t\tonOpen: () => {\n\t\t\tthis.updateClassNames();\n\t\t\tthis.updateAttributes();\n\t\t\tthis.updateCalendarListeners();\n\t\t},\n\t\tonClose: (date) => {\n\t\t\t// This makes sure that the `flatpickrInstance selectedDates` are in sync with the values of\n\t\t\t// the inputs when the calendar closes.\n\t\t\tif (this.range && this.flatpickrInstance) {\n\t\t\t\tif (this.flatpickrInstance.selectedDates.length !== 2) {\n\t\t\t\t\t// we could `this.flatpickrInstance.clear()` but it insists on opening the second picker\n\t\t\t\t\t// in some cases, so instead we do this\n\t\t\t\t\tthis.setDateValues([]);\n\t\t\t\t\tthis.doSelect([]);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst inputValue = this.input.input.nativeElement.value;\n\t\t\t\tconst rangeInputValue = this.rangeInput.input.nativeElement.value;\n\t\t\t\tif (inputValue || rangeInputValue) {\n\t\t\t\t\tconst parseDate = (date: string) => this.flatpickrInstance.parseDate(date, this.dateFormat);\n\t\t\t\t\tthis.setDateValues([parseDate(inputValue), parseDate(rangeInputValue)]);\n\t\t\t\t\tthis.doSelect(this.flatpickrInstance.selectedDates);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.onClose.emit(date);\n\t\t},\n\t\tonDayCreate: (_dObj, _dStr, _fp, dayElem) => {\n\t\t\tdayElem.classList.add(\"cds--date-picker__day\");\n\t\t},\n\t\tnextArrow: this.rightArrowHTML(),\n\t\tprevArrow: this.leftArrowHTML(),\n\t\tvalue: this.value\n\t};\n\n\tprotected flatpickrInstance = null;\n\n\tconstructor(\n\t\tprotected elementRef: ElementRef,\n\t\tprotected i18n: I18n\n\t) { }\n\n\tngOnInit() {\n\t\t// if i18n is set to anything other than en we'll want to change the language\n\t\t// otherwise we'll just use the local setting\n\t\tif (this.i18n.getLocale() !== \"en\") {\n\t\t\tthis.i18n.getLocaleObservable().subscribe(locale => {\n\t\t\t\tthis.language = locale;\n\t\t\t\tthis.resetFlatpickrInstance();\n\t\t\t});\n\t\t}\n\t}\n\n\tngOnChanges(changes: SimpleChanges) {\n\t\t// Reset the flatpickr instance on input changes that affect flatpickr.\n\t\tconst flatpickrChangeKeys = [\n\t\t\t\"range\",\n\t\t\t\"dateFormat\",\n\t\t\t\"language\",\n\t\t\t\"id\",\n\t\t\t\"value\",\n\t\t\t\"plugins\",\n\t\t\t\"flatpickrOptions\"\n\t\t];\n\t\tconst changeKeys = Object.keys(changes);\n\t\tif (changeKeys.some(key => flatpickrChangeKeys.includes(key))) {\n\t\t\tthis.resetFlatpickrInstance(changes.value);\n\t\t}\n\t}\n\n\tngAfterViewInit() {\n\t\tsetTimeout(() => {\n\t\t\tthis.addInputListeners();\n\t\t}, 0);\n\t}\n\n\t// because the actual view may be delayed in loading (think projection into a tab pane)\n\t// and because we rely on a library that operates outside the Angular view of the world\n\t// we need to keep trying to load the library, until the relevant DOM is actually live\n\tngAfterViewChecked() {\n\t\tif (!this.isFlatpickrLoaded()) {\n\t\t\t// @ts-ignore ts is unhappy with the below call to `flatpickr`\n\t\t\tthis.flatpickrInstance = flatpickr(`#${this.id}-input`, this.flatpickrOptions);\n\t\t\t// if (and only if) the initialization succeeded, we can set the date values\n\t\t\tif (this.isFlatpickrLoaded()) {\n\t\t\t\tif (this.value.length > 0) {\n\t\t\t\t\tthis.setDateValues(this.value);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t@HostListener(\"focusin\")\n\tonFocus() {\n\t\t// Updates the month manually when calendar mode is range because month\n\t\t// will not update properly without manually updating them on focus.\n\t\tif (this.range) {\n\t\t\tif (this.rangeInput.input.nativeElement === document.activeElement && this.flatpickrInstance.selectedDates[1]) {\n\t\t\t\tconst currentMonth = this.flatpickrInstance.selectedDates[1].getMonth();\n\t\t\t\tthis.flatpickrInstance.changeMonth(currentMonth, false);\n\t\t\t} else if (this.input.input.nativeElement === document.activeElement && this.flatpickrInstance.selectedDates[0]) {\n\t\t\t\tconst currentMonth = this.flatpickrInstance.selectedDates[0].getMonth();\n\t\t\t\tthis.flatpickrInstance.changeMonth(currentMonth, false);\n\t\t\t}\n\t\t}\n\t}\n\n\t@HostListener(\"focusout\")\n\tonFocusOut() {\n\t\tthis.onTouched();\n\t}\n\n\t/**\n\t * Writes a value from the model to the component. Expects the value to be `null` or `(Date | string)[]`\n\t * @param value value received from the model\n\t */\n\twriteValue(value: (Date | string)[]) {\n\t\tthis.value = value;\n\t\tsetTimeout(() => {\n\t\t\tif (this.isFlatpickrLoaded() && this.flatpickrInstance.config) {\n\t\t\t\tthis.setDateValues(this.value);\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * `ControlValueAccessor` method to programmatically disable the DatePicker.\n\t *\n\t * ex: `this.formGroup.get(\"myDatePicker\").disable();`\n\t *\n\t * @param isDisabled `true` to disable the DatePicker\n\t */\n\tsetDisabledState(isDisabled: boolean) {\n\t\tthis.disabled = isDisabled;\n\t}\n\n\tregisterOnChange(fn: any) {\n\t\tthis.propagateChange = fn;\n\t}\n\n\tregisterOnTouched(fn: any) {\n\t\tthis.onTouched = fn;\n\t}\n\n\tonTouched: () => any = () => { };\n\n\tpropagateChange = (_: any) => { };\n\n\t/**\n\t * Cleans up our flatpickr instance\n\t */\n\tngOnDestroy() {\n\t\tif (!this.isFlatpickrLoaded()) { return; }\n\t\tthis.flatpickrInstance.destroy();\n\t}\n\n\t/**\n\t * Handles the `valueChange` event from the primary/single input\n\t */\n\tonValueChange(event: string) {\n\t\tif (this.isFlatpickrLoaded()) {\n\t\t\tconst date = this.flatpickrInstance.parseDate(event, this.dateFormat);\n\t\t\tif (this.range) {\n\t\t\t\tthis.setDateValues([date, this.flatpickrInstance.selectedDates[1]]);\n\t\t\t} else {\n\t\t\t\tthis.setDateValues([date]);\n\t\t\t}\n\t\t\tthis.doSelect(this.flatpickrInstance.selectedDates);\n\t\t}\n\t}\n\n\t/**\n\t * Handles the `valueChange` event from the range input\n\t */\n\tonRangeValueChange(event: string) {\n\t\tif (this.isFlatpickrLoaded() && this.flatpickrInstance.isOpen) {\n\t\t\tconst date = this.flatpickrInstance.parseDate(event, this.dateFormat);\n\t\t\tthis.setDateValues([this.flatpickrInstance.selectedDates[0], date]);\n\t\t\tthis.doSelect(this.flatpickrInstance.selectedDates);\n\t\t}\n\t}\n\n\t/**\n\t * Handles opening the calendar \"properly\" when the calendar icon is clicked.\n\t */\n\topenCalendar(datepickerInput: DatePickerInput) {\n\t\tif (this.range) {\n\t\t\tdatepickerInput.input.nativeElement.click();\n\n\t\t\t// If the first input's calendar icon is clicked when calendar is in range mode, then\n\t\t\t// the month and year needs to be manually changed to the current selected month and\n\t\t\t// year otherwise the calendar view will not be updated upon opening.\n\t\t\tif (datepickerInput === this.input && this.flatpickrInstance.selectedDates[0]) {\n\t\t\t\tconst currentMonth = this.flatpickrInstance.selectedDates[0].getMonth();\n\n\t\t\t\tthis.flatpickrInstance.currentYear = this.flatpickrInstance.selectedDates[0].getFullYear();\n\t\t\t\tthis.flatpickrInstance.changeMonth(currentMonth, false);\n\t\t\t}\n\t\t} else {\n\t\t\t// Single-mode flatpickr handles mousedown but not click, so nativeElement.click() won't\n\t\t\t// work when the calendar icon is clicked. In this case we simply use flatpickr.open().\n\t\t\tthis.flatpickrInstance.open();\n\t\t}\n\t}\n\n\tprotected updateCalendarListeners() {\n\t\tconst calendarContainer = document.querySelectorAll(\".flatpickr-calendar\");\n\t\tArray.from(calendarContainer).forEach(calendar => {\n\t\t\tcalendar.removeEventListener(\"click\", this.preventCalendarClose);\n\t\t\tcalendar.addEventListener(\"click\", this.preventCalendarClose);\n\t\t});\n\t}\n\n\t/**\n\t * Handles the initialization of event listeners for the datepicker input and range input fields.\n\t */\n\tprotected addInputListeners() {\n\t\tif (!this.isFlatpickrLoaded()) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Allows focus transition from the datepicker input or range input field to\n\t\t// flatpickr calendar using a keyboard.\n\t\tconst addFocusCalendarListener = (element: HTMLInputElement) => {\n\t\t\telement.addEventListener(\"keydown\", (event: KeyboardEvent) => {\n\t\t\t\tif (event.key === \"Escape\") {\n\t\t\t\t\tthis.flatpickrInstance.close();\n\t\t\t\t}\n\t\t\t\tif (event.key === \"ArrowDown\") {\n\t\t\t\t\tif (!this.flatpickrInstance.isOpen) {\n\t\t\t\t\t\tthis.flatpickrInstance.open();\n\t\t\t\t\t}\n\n\t\t\t\t\tconst calendarContainer = this.flatpickrInstance.calendarContainer;\n\t\t\t\t\tconst dayElement = calendarContainer && calendarContainer.querySelector(\".flatpickr-day[tabindex]\");\n\n\t\t\t\t\tif (dayElement) {\n\t\t\t\t\t\tdayElement.focus();\n\n\t\t\t\t\t\t// If the user manually inputs a value into the date field and presses arrow down,\n\t\t\t\t\t\t// datepicker input onchange will be triggered when focus is removed from it and\n\t\t\t\t\t\t// `flatpickrInstance.setDate` and `flatpickrInstance.changeMonth` will be invoked\n\t\t\t\t\t\t// which will automatically change focus to the beginning of the document.\n\t\t\t\t\t\tif (document.activeElement !== dayElement && this.flatpickrInstance.selectedDateElem) {\n\t\t\t\t\t\t\tthis.flatpickrInstance.selectedDateElem.focus();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\n\t\tif (this.input && this.input.input) {\n\t\t\taddFocusCalendarListener(this.input.input.nativeElement);\n\t\t}\n\n\t\tif (this.rangeInput && this.rangeInput.input) {\n\t\t\taddFocusCalendarListener(this.rangeInput.input.nativeElement);\n\t\t}\n\t}\n\n\t/**\n\t * Resets the flatpickr instance while keeping the date values (or updating them if newDates is provided)\n\t *\n\t * Used to pick up input changes or locale changes.\n\t *\n\t * @param newDates An optional SimpleChange of date values\n\t */\n\tprotected resetFlatpickrInstance(newDates?: SimpleChange) {\n\t\tif (this.isFlatpickrLoaded()) {\n\t\t\tlet dates = this.flatpickrInstance.selectedDates;\n\t\t\tif (newDates && this.didDateValueChange(newDates.currentValue, newDates.previousValue)) {\n\t\t\t\tdates = newDates.currentValue;\n\t\t\t}\n\t\t\t// only reset the flatpickr instance on Input changes\n\t\t\t// @ts-ignore ts is unhappy with the below call to `flatpickr`\n\t\t\tthis.flatpickrInstance = flatpickr(`#${this.id}-input`, this.flatpickrOptions);\n\t\t\tthis.setDateValues(dates);\n\t\t}\n\t}\n\n\t/**\n\t * Carbon uses a number of specific classnames for parts of the flatpickr - this idempotent method applies them if needed.\n\t */\n\tprotected updateClassNames() {\n\t\tif (!this.elementRef) { return; }\n\t\t// get all the possible flatpickrs in the document - we need to add classes to (potentially) all of them\n\t\tconst calendarContainer = document.querySelectorAll(\".flatpickr-calendar\");\n\t\tconst monthContainer = document.querySelectorAll(\".flatpickr-month\");\n\t\tconst weekdaysContainer = document.querySelectorAll(\".flatpickr-weekdays\");\n\t\tconst weekdayContainer = document.querySelectorAll(\".flatpickr-weekday\");\n\t\tconst daysContainer = document.querySelectorAll(\".flatpickr-days\");\n\t\tconst dayContainer = document.querySelectorAll(\".flatpickr-day\");\n\n\t\t// add classes to lists of elements\n\t\tconst addClassIfNotExists = (classname: string, elementList: NodeListOf<Element>) => {\n\t\t\tArray.from(elementList).forEach(element => {\n\t\t\t\tif (!element.classList.contains(classname)) {\n\t\t\t\t\telement.classList.add(classname);\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\n\t\t// add classes (but only if they don't exist, small perf win)\n\t\taddClassIfNotExists(\"cds--date-picker__calendar\", calendarContainer);\n\t\taddClassIfNotExists(\"cds--date-picker__month\", monthContainer);\n\t\taddClassIfNotExists(\"cds--date-picker__weekdays\", weekdaysContainer);\n\t\taddClassIfNotExists(\"cds--date-picker__days\", daysContainer);\n\n\t\t// add weekday classes and format the text\n\t\tArray.from(weekdayContainer).forEach(element => {\n\t\t\telement.innerHTML = element.innerHTML.replace(/\\s+/g, \"\");\n\t\t\telement.classList.add(\"cds--date-picker__weekday\");\n\t\t});\n\n\t\t// add day classes and special case the \"today\" element based on `this.value`\n\t\tArray.from(dayContainer).forEach(element => {\n\t\t\telement.classList.add(\"cds--date-picker__day\");\n\t\t\tif (!this.value) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (element.classList.contains(\"today\") && this.value.length > 0) {\n\t\t\t\telement.classList.add(\"no-border\");\n\t\t\t} else if (element.classList.contains(\"today\") && this.value.length === 0) {\n\t\t\t\telement.classList.remove(\"no-border\");\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected updateAttributes() {\n\t\tconst calendarContainer = document.querySelectorAll(\".flatpickr-calendar\");\n\t\tArray.from(calendarContainer).forEach(calendar => {\n\t\t\tcalendar.setAttribute(\"role\", \"region\");\n\t\t\tcalendar.setAttribute(\"aria-label\", this.ariaLabel);\n\t\t});\n\t}\n\n\t/**\n\t * Applies the given date value array to both the flatpickr instance and the `input`(s)\n\t * @param dates the date values to apply\n\t */\n\tprotected setDateValues(dates: (Date | string)[]) {\n\t\tif (this.isFlatpickrLoaded()) {\n\t\t\tconst singleInput = this.elementRef.nativeElement.querySelector(`#${this.id}-input`);\n\t\t\tconst rangeInput = this.elementRef.nativeElement.querySelector(`#${this.id}-rangeInput`);\n\n\t\t\t// `flatpickrInstance.setDate` removes the focus on the selected date element and will\n\t\t\t// automatically change focus to the beginning of the document. If a selected date is\n\t\t\t// focused before `flatpickrInstance.setDate` is invoked then it should remain focused.\n\t\t\tlet shouldRefocusDateElement = this.flatpickrInstance.selectedDateElem === document.activeElement;\n\n\t\t\t// set the date on the instance\n\t\t\tthis.flatpickrInstance.setDate(dates);\n\n\t\t\tif (shouldRefocusDateElement) {\n\t\t\t\tthis.flatpickrInstance.selectedDateElem.focus();\n\t\t\t}\n\n\t\t\t// we can either set a date value or an empty string, so we start with an empty string\n\t\t\tlet singleDate = \"\";\n\t\t\t// if date is a string, parse and format\n\t\t\tif (typeof this.flatpickrInstance.selectedDates[0] === \"string\") {\n\t\t\t\tsingleDate = this.flatpickrInstance.parseDate(this.flatpickrInstance.selectedDates[0], this.dateFormat);\n\t\t\t\tsingleDate = this.flatpickrInstance.formatDate(singleDate, this.dateFormat);\n\t\t\t// if date is not a string we can assume it's a Date and we should format\n\t\t\t} else if (!!this.flatpickrInstance.selectedDates[0]) {\n\t\t\t\tsingleDate = this.flatpickrInstance.formatDate(this.flatpickrInstance.selectedDates[0], this.dateFormat);\n\t\t\t}\n\n\t\t\tif (rangeInput) {\n\t\t\t\t// we can either set a date value or an empty string, so we start with an empty string\n\t\t\t\tlet rangeDate = \"\";\n\t\t\t\t// if date is a string, parse and format\n\t\t\t\tif (typeof this.flatpickrInstance.selectedDates[1] === \"string\") {\n\t\t\t\t\trangeDate = this.flatpickrInstance.parseDate(this.flatpickrInstance.selectedDates[1].toString(), this.dateFormat);\n\t\t\t\t\trangeDate = this.flatpickrInstance.formatDate(rangeDate, this.dateFormat);\n\t\t\t\t// if date is not a string we can assume it's a Date and we should format\n\t\t\t\t} else if (!!this.flatpickrInstance.selectedDates[1]) {\n\t\t\t\t\trangeDate = this.flatpickrInstance.formatDate(this.flatpickrInstance.selectedDates[1], this.dateFormat);\n\t\t\t\t}\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t// apply the values\n\t\t\t\t\trangeInput.value = rangeDate;\n\t\t\t\t\tsingleInput.value = singleDate;\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected preventCalendarClose = event => event.stopPropagation();\n\n\tprotected doSelect(selectedValue: (Date | string)[]) {\n\t\t// In range mode, if a date is selected from the first calendar that is from the previous month,\n\t\t// the month will not be updated on the calendar until the calendar is re-opened.\n\t\t// This will make sure the calendar is updated with the correct month.\n\t\tif (this.range && this.flatpickrInstance.selectedDates[0]) {\n\t\t\tconst currentMonth = this.flatpickrInstance.selectedDates[0].getMonth();\n\n\t\t\t// `flatpickrInstance.changeMonth` removes the focus on the selected date element and will\n\t\t\t// automatically change focus to the beginning of the document. If a selected date is\n\t\t\t// focused before `flatpickrInstance.changeMonth` is invoked then it should remain focused.\n\t\t\tlet shouldRefocusDateElement = this.flatpickrInstance.selectedDateElem === document.activeElement;\n\n\t\t\tthis.flatpickrInstance.changeMonth(currentMonth, false);\n\n\t\t\tif (shouldRefocusDateElement) {\n\t\t\t\tthis.flatpickrInstance.selectedDateElem.focus();\n\t\t\t}\n\n\t\t}\n\t\tthis.valueChange.emit(selectedValue);\n\t\tthis.propagateChange(selectedValue);\n\t}\n\n\tprotected didDateValueChange(currentValue, previousValue) {\n\t\treturn currentValue[0] !== previousValue[0] || currentValue[1] !== previousValue[1];\n\t}\n\n\t/**\n\t * More advanced checking of the loaded state of flatpickr\n\t */\n\tprotected isFlatpickrLoaded() {\n\t\t// cast the instance to a boolean, and some method that has to exist for the library to be loaded in this case `setDate`\n\t\treturn !!this.flatpickrInstance && !!this.flatpickrInstance.setDate;\n\t}\n\n\t/**\n\t * Right arrow HTML passed to flatpickr\n\t */\n\tprotected rightArrowHTML() {\n\t\treturn `\n\t\t\t<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\n\t\t\t\t<polygon points=\"11,8 6,13 5.3,12.3 9.6,8 5.3,3.7 6,3 \"/>\n\t\t\t\t<rect width=\"16\" height=\"16\" style=\"fill:none\" />\n\t\t\t</svg>`;\n\t}\n\n\t/**\n\t * Left arrow HTML passed to flatpickr\n\t */\n\tprotected leftArrowHTML() {\n\t\treturn `\n\t\t\t<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\n\t\t\t\t<polygon points=\"5,8 10,3 10.7,3.7 6.4,8 10.7,12.3 10,13 \"/>\n\t\t\t\t<rect width=\"16\" height=\"16\" style=\"fill:none\" />\n\t\t\t</svg>`;\n\t}\n}\n","import { DatePickerInputModule } from \"carbon-components-angular/datepicker-input\";\nimport { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { DatePicker } from \"./datepicker.component\";\nimport { UtilsModule } from \"carbon-components-angular/utils\";\nimport { I18nModule } from \"carbon-components-angular/i18n\";\n\n@NgModule({\n\tdeclarations: [\n\t\tDatePicker\n\t],\n\texports: [\n\t\tDatePicker,\n\t\tDatePickerInputModule\n\t],\n\timports: [\n\t\tCommonModule,\n\t\tDatePickerInputModule,\n\t\tUtilsModule,\n\t\tI18nModule\n\t]\n})\nexport class DatePickerModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"carbon-components-angular-datepicker.mjs","sources":["../../src/datepicker/carbon-flatpickr-month-select.ts","../../src/datepicker/datepicker.component.ts","../../src/datepicker/datepicker.module.ts","../../src/datepicker/carbon-components-angular-datepicker.ts"],"sourcesContent":["/**\n * This is from carbon-components.\n * We need it to format the month select according to specs.\n * Carbon currently doesn't expose this as a seperate package,\n * and we don't import the carbon-components js (on purpose)\n * so some copy pasta is required\n *\n * ref: https://github.com/carbon-design-system/carbon/blob/\n * \tf06f38f0c2ef624e409a3d5711e897a79f4c88fc/packages/components/src/components/date-picker/date-picker.js#L52-L123\n */\n\nconst monthToStr = (monthNumber, shorthand, locale) =>\n\tlocale.months[shorthand ? \"shorthand\" : \"longhand\"][monthNumber];\n\nconst config = {\n\tselectorInit: \"[data-date-picker]\",\n\tselectorDatePickerInput: \"[data-date-picker-input]\",\n\tselectorDatePickerInputFrom: \"[data-date-picker-input-from]\",\n\tselectorDatePickerInputTo: \"[data-date-picker-input-to]\",\n\tselectorDatePickerIcon: \"[data-date-picker-icon]\",\n\tselectorFlatpickrMonthYearContainer: \".flatpickr-current-month\",\n\tselectorFlatpickrYearContainer: \".numInputWrapper\",\n\tselectorFlatpickrCurrentMonth: \".cur-month\",\n\tclassCalendarContainer: `cds--date-picker__calendar`,\n\tclassMonth: `cds--date-picker__month`,\n\tclassWeekdays: `cds--date-picker__weekdays`,\n\tclassDays: `cds--date-picker__days`,\n\tclassWeekday: `cds--date-picker__weekday`,\n\tclassDay: `cds--date-picker__day`,\n\tclassFocused: `cds--focused`,\n\tclassVisuallyHidden: `cds--visually-hidden`,\n\tclassFlatpickrCurrentMonth: \"cur-month\",\n\tattribType: \"data-date-picker-type\",\n\tdateFormat: \"m/d/Y\",\n\tshorthand: false\n};\n\nexport const carbonFlatpickrMonthSelectPlugin = fp => {\n\tconst setupElements = () => {\n\t\tif (!fp.monthElements || !fp.yearElements) {\n\t\t\treturn;\n\t\t}\n\t\tfp.monthElements.forEach(elem => {\n\t\t\tif (!elem.parentNode) { return; }\n\t\t\telem.parentNode.removeChild(elem);\n\t\t});\n\t\tfp.monthElements.splice(\n\t\t\t0,\n\t\t\tfp.monthElements.length,\n\t\t\t...fp.monthElements.map(() => {\n\t\t\t\t// eslint-disable-next-line no-underscore-dangle\n\t\t\t\tconst monthElement = fp._createElement(\n\t\t\t\t\t\"span\",\n\t\t\t\t\tconfig.classFlatpickrCurrentMonth\n\t\t\t\t);\n\t\t\t\tmonthElement.textContent = monthToStr(\n\t\t\t\t\tfp.currentMonth,\n\t\t\t\t\tconfig.shorthand === true,\n\t\t\t\t\tfp.l10n\n\t\t\t\t);\n\t\t\t\tfp.yearElements[0]\n\t\t\t\t\t.closest(config.selectorFlatpickrMonthYearContainer)\n\t\t\t\t\t.insertBefore(\n\t\t\t\t\t\tmonthElement,\n\t\t\t\t\t\tfp.yearElements[0].closest(config.selectorFlatpickrYearContainer)\n\t\t\t\t\t);\n\t\t\t\treturn monthElement;\n\t\t\t})\n\t\t);\n\t};\n\tconst updateCurrentMonth = () => {\n\t\tif (!fp.yearElements) {\n\t\t\treturn;\n\t\t}\n\t\tconst monthStr = monthToStr(\n\t\t\tfp.currentMonth,\n\t\t\tconfig.shorthand === true,\n\t\t\tfp.l10n\n\t\t);\n\t\tfp.yearElements.forEach(elem => {\n\t\t\tconst currentMonthContainer = elem.closest(\n\t\t\t\tconfig.selectorFlatpickrMonthYearContainer\n\t\t\t);\n\t\t\tArray.prototype.forEach.call(\n\t\t\t\tcurrentMonthContainer.querySelectorAll(\".cur-month\"),\n\t\t\t\tmonthElement => {\n\t\t\t\t\tmonthElement.textContent = monthStr;\n\t\t\t\t}\n\t\t\t);\n\t\t});\n\t};\n\n\tconst register = () => {\n\t\tfp.loadedPlugins.push(\"carbonFlatpickrMonthSelectPlugin\");\n\t};\n\n\treturn {\n\t\tonMonthChange: updateCurrentMonth,\n\t\tonValueUpdate: updateCurrentMonth,\n\t\tonOpen: updateCurrentMonth,\n\t\tonReady: [setupElements, updateCurrentMonth, register]\n\t};\n};\n","import {\n\tComponent,\n\tInput,\n\tOutput,\n\tEventEmitter,\n\tViewEncapsulation,\n\tElementRef,\n\tOnDestroy,\n\tHostListener,\n\tTemplateRef,\n\tOnChanges,\n\tSimpleChanges,\n\tAfterViewChecked,\n\tAfterViewInit,\n\tViewChild,\n\tOnInit,\n\tSimpleChange\n} from \"@angular/core\";\nimport rangePlugin from \"flatpickr/dist/plugins/rangePlugin\";\nimport flatpickr from \"flatpickr\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\nimport { carbonFlatpickrMonthSelectPlugin } from \"./carbon-flatpickr-month-select\";\nimport * as languages from \"flatpickr/dist/l10n/index\";\nimport { Options } from \"flatpickr/dist/types/options\";\nimport { DatePickerInput } from \"carbon-components-angular/datepicker-input\";\nimport { I18n } from \"carbon-components-angular/i18n\";\n\n/**\n * Due to type error, we have to use square brackets property accessor\n * There is a webpack issue when attempting to access exported languages from flatpickr l10n Angular 14+ apps\n * languages.default[locale] fails in app consuming CCA library but passes in test\n * languages.default.default[locale] fails in test but works in app consuming CCA library.\n *\n * To please both scenarios, we are adding a condition to prevent tests from failing\n */\nif (languages.default?.default[\"en\"]?.weekdays) {\n\t(languages.default.default[\"en\"].weekdays.shorthand as string[]) = languages.default.default[\"en\"].weekdays.longhand.map(day => {\n\t\tif (day === \"Thursday\") {\n\t\t\treturn \"Th\";\n\t\t}\n\t\treturn day.charAt(0);\n\t});\n}\n\n/**\n * Get started with importing the module:\n *\n * ```typescript\n * import { DatePickerModule } from 'carbon-components-angular';\n * ```\n *\n * [See demo](../../?path=/story/components-date-picker--single)\n */\n@Component({\n\tselector: \"cds-date-picker, ibm-date-picker\",\n\ttemplate: `\n\t<div class=\"cds--form-item\">\n\t\t<div\n\t\t\tclass=\"cds--date-picker\"\n\t\t\t[ngClass]=\"{\n\t\t\t\t'cds--date-picker--range' : range,\n\t\t\t\t'cds--date-picker--single' : !range,\n\t\t\t\t'cds--date-picker--light' : theme === 'light',\n\t\t\t\t'cds--skeleton' : skeleton\n\t\t\t}\">\n\t\t\t<div class=\"cds--date-picker-container\">\n\t\t\t\t<cds-date-picker-input\n\t\t\t\t\t#input\n\t\t\t\t\t[label]=\"label\"\n\t\t\t\t\t[placeholder]=\"placeholder\"\n\t\t\t\t\t[pattern]=\"inputPattern\"\n\t\t\t\t\t[id]=\"id + '-input'\"\n\t\t\t\t\t[size]=\"size\"\n\t\t\t\t\t[type]=\"(range ? 'range' : 'single')\"\n\t\t\t\t\t[hasIcon]=\"(range ? false : true)\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t[invalid]=\"invalid\"\n\t\t\t\t\t[invalidText]=\"invalidText\"\n\t\t\t\t\t[warn]=\"warn\"\n\t\t\t\t\t[warnText]=\"warnText\"\n\t\t\t\t\t[skeleton]=\"skeleton\"\n\t\t\t\t\t[helperText]=\"helperText\"\n\t\t\t\t\t(valueChange)=\"onValueChange($event)\"\n\t\t\t\t\t(click)=\"openCalendar(input)\">\n\t\t\t\t</cds-date-picker-input>\n\t\t\t</div>\n\n\t\t\t<div *ngIf=\"range\" class=\"cds--date-picker-container\">\n\t\t\t\t<cds-date-picker-input\n\t\t\t\t\t#rangeInput\n\t\t\t\t\t[label]=\"rangeLabel\"\n\t\t\t\t\t[placeholder]=\"placeholder\"\n\t\t\t\t\t[pattern]=\"inputPattern\"\n\t\t\t\t\t[id]=\"id + '-rangeInput'\"\n\t\t\t\t\t[size]=\"size\"\n\t\t\t\t\t[type]=\"(range ? 'range' : 'single')\"\n\t\t\t\t\t[hasIcon]=\"(range ? true : null)\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t[invalid]=\"rangeInvalid\"\n\t\t\t\t\t[invalidText]=\"rangeInvalidText\"\n\t\t\t\t\t[warn]=\"rangeWarn\"\n\t\t\t\t\t[warnText]=\"rangeWarnText\"\n\t\t\t\t\t[skeleton]=\"skeleton\"\n\t\t\t\t\t[helperText]=\"rangeHelperText\"\n\t\t\t\t\t(valueChange)=\"onRangeValueChange($event)\"\n\t\t\t\t\t(click)=\"openCalendar(rangeInput)\">\n\t\t\t\t</cds-date-picker-input>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\t`,\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: DatePicker,\n\t\t\tmulti: true\n\t\t}\n\t],\n\tencapsulation: ViewEncapsulation.None\n})\nexport class DatePicker implements\n\tOnInit,\n\tOnDestroy,\n\tOnChanges,\n\tAfterViewChecked,\n\tAfterViewInit {\n\tprivate static datePickerCount = 0;\n\n\t/**\n\t * Select calendar range mode\n\t */\n\t@Input() range = false;\n\n\t/**\n\t * Format of date\n\t *\n\t * For reference: https://flatpickr.js.org/formatting/\n\t */\n\t@Input() dateFormat = \"m/d/Y\";\n\n\t/**\n\t * Language of the flatpickr calendar.\n\t *\n\t * For reference of the possible locales:\n\t * https://github.com/flatpickr/flatpickr/blob/master/src/l10n/index.ts\n\t */\n\t@Input() language = \"en\";\n\n\t@Input() label: string | TemplateRef<any>;\n\t@Input() helperText: string | TemplateRef<any>;\n\t@Input() rangeHelperText: string | TemplateRef<any>;\n\t@Input() rangeLabel: string;\n\n\t@Input() placeholder = \"mm/dd/yyyy\";\n\n\t/**\n\t * Aria label added to datepicker's calendar container.\n\t */\n\t@Input() ariaLabel = \"calendar container\";\n\n\t/**\n\t * The pattern for the underlying input element\n\t */\n\t@Input() inputPattern = \"^\\\\d{1,2}/\\\\d{1,2}/\\\\d{4}$\";\n\n\t@Input() id = `datepicker-${DatePicker.datePickerCount++}`;\n\n\t@Input() set value(v: (Date | string)[]) {\n\t\tif (!v) {\n\t\t\tv = [];\n\t\t}\n\t\tthis._value = v;\n\t}\n\n\tget value() {\n\t\treturn this._value;\n\t}\n\n\t/**\n\t * @deprecated since v5 - Use `cdsLayer` directive instead\n\t * Set to `\"light\"` to apply the light style\n\t */\n\t@Input() theme: \"light\" | \"dark\" = \"dark\";\n\n\t@Input() disabled = false;\n\t/**\n\t * Set to `true` to display the invalid state.\n\t */\n\t@Input() invalid = false;\n\t/**\n\t * Value displayed if datepicker is in an invalid state.\n\t */\n\t@Input() invalidText: string | TemplateRef<any>;\n\t/**\n\t * Set to `true` to show a warning (contents set by warningText)\n\t */\n\t@Input() warn = false;\n\t/**\n\t * Sets the warning text\n\t */\n\t@Input() warnText: string | TemplateRef<any>;\n\n\t@Input() size: \"sm\" | \"md\" | \"lg\" = \"md\";\n\t/**\n\t * Set to `true` to display the invalid state for the second datepicker input.\n\t */\n\t@Input() rangeInvalid = false;\n\t/**\n\t * Value displayed if the second datepicker input is in an invalid state.\n\t */\n\t@Input() rangeInvalidText: string | TemplateRef<any>;\n\t/**\n\t * Set to `true` to show a warning in the second datepicker input (contents set by rangeWarningText)\n\t */\n\t@Input() rangeWarn = false;\n\t/**\n\t * Sets the warning text for the second datepicker input\n\t */\n\t@Input() rangeWarnText: string | TemplateRef<any>;\n\n\t@Input() skeleton = false;\n\n\t@Input() plugins = [];\n\n\t@Input()\n\tset flatpickrOptions(options: Partial<Options>) {\n\t\tthis._flatpickrOptions = Object.assign({}, this._flatpickrOptions, options);\n\t}\n\tget flatpickrOptions(): Partial<Options> {\n\t\tconst plugins = [...this.plugins, carbonFlatpickrMonthSelectPlugin];\n\t\tif (this.range) {\n\t\t\tplugins.push(rangePlugin({ input: `#${this.id}-rangeInput`, position: \"left\" }));\n\t\t}\n\t\treturn Object.assign({}, this._flatpickrOptions, this.flatpickrBaseOptions, {\n\t\t\tmode: this.range ? \"range\" : \"single\",\n\t\t\tplugins,\n\t\t\tdateFormat: this.dateFormat,\n\t\t\tlocale: languages.default?.default[this.language] || languages.default[this.language]\n\t\t});\n\t}\n\n\t@ViewChild(\"input\", { static: true }) input: DatePickerInput;\n\t@ViewChild(\"rangeInput\") rangeInput: DatePickerInput;\n\n\t@Output() valueChange: EventEmitter<any> = new EventEmitter();\n\n\t/**\n\t * We are overriding onClose event even if users pass it via flatpickr options\n\t * Emits an event when date picker closes\n\t */\n\t@Output() onClose: EventEmitter<any> = new EventEmitter();\n\n\tprotected _value = [];\n\n\tprotected _flatpickrOptions: Partial<Options> = {\n\t\tallowInput: true\n\t};\n\n\tprotected flatpickrBaseOptions = {\n\t\tmode: \"single\",\n\t\tdateFormat: \"m/d/Y\",\n\t\tplugins: this.plugins,\n\t\tonOpen: () => {\n\t\t\tthis.updateClassNames();\n\t\t\tthis.updateAttributes();\n\t\t\tthis.updateCalendarListeners();\n\t\t},\n\t\tonClose: (date) => {\n\t\t\t// This makes sure that the `flatpickrInstance selectedDates` are in sync with the values of\n\t\t\t// the inputs when the calendar closes.\n\t\t\tif (this.range && this.flatpickrInstance) {\n\t\t\t\tif (this.flatpickrInstance.selectedDates.length !== 2) {\n\t\t\t\t\t// we could `this.flatpickrInstance.clear()` but it insists on opening the second picker\n\t\t\t\t\t// in some cases, so instead we do this\n\t\t\t\t\tthis.setDateValues([]);\n\t\t\t\t\tthis.doSelect([]);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst inputValue = this.input.input.nativeElement.value;\n\t\t\t\tconst rangeInputValue = this.rangeInput.input.nativeElement.value;\n\t\t\t\tif (inputValue || rangeInputValue) {\n\t\t\t\t\tconst parseDate = (date: string) => this.flatpickrInstance.parseDate(date, this.dateFormat);\n\t\t\t\t\tthis.setDateValues([parseDate(inputValue), parseDate(rangeInputValue)]);\n\t\t\t\t\tthis.doSelect(this.flatpickrInstance.selectedDates);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.onClose.emit(date);\n\t\t},\n\t\tonDayCreate: (_dObj, _dStr, _fp, dayElem) => {\n\t\t\tdayElem.classList.add(\"cds--date-picker__day\");\n\t\t},\n\t\tnextArrow: this.rightArrowHTML(),\n\t\tprevArrow: this.leftArrowHTML(),\n\t\tvalue: this.value\n\t};\n\n\tprotected flatpickrInstance = null;\n\n\tconstructor(\n\t\tprotected elementRef: ElementRef,\n\t\tprotected i18n: I18n\n\t) { }\n\n\tngOnInit() {\n\t\t// if i18n is set to anything other than en we'll want to change the language\n\t\t// otherwise we'll just use the local setting\n\t\tif (this.i18n.getLocale() !== \"en\") {\n\t\t\tthis.i18n.getLocaleObservable().subscribe(locale => {\n\t\t\t\tthis.language = locale;\n\t\t\t\tthis.resetFlatpickrInstance();\n\t\t\t});\n\t\t}\n\t}\n\n\tngOnChanges(changes: SimpleChanges) {\n\t\t// Reset the flatpickr instance on input changes that affect flatpickr.\n\t\tconst flatpickrChangeKeys = [\n\t\t\t\"range\",\n\t\t\t\"dateFormat\",\n\t\t\t\"language\",\n\t\t\t\"id\",\n\t\t\t\"value\",\n\t\t\t\"plugins\",\n\t\t\t\"flatpickrOptions\"\n\t\t];\n\t\tconst changeKeys = Object.keys(changes);\n\t\tif (changeKeys.some(key => flatpickrChangeKeys.includes(key))) {\n\t\t\tthis.resetFlatpickrInstance(changes.value);\n\t\t}\n\t}\n\n\tngAfterViewInit() {\n\t\tsetTimeout(() => {\n\t\t\tthis.addInputListeners();\n\t\t}, 0);\n\t}\n\n\t// because the actual view may be delayed in loading (think projection into a tab pane)\n\t// and because we rely on a library that operates outside the Angular view of the world\n\t// we need to keep trying to load the library, until the relevant DOM is actually live\n\tngAfterViewChecked() {\n\t\tif (!this.isFlatpickrLoaded()) {\n\t\t\t// @ts-ignore ts is unhappy with the below call to `flatpickr`\n\t\t\tthis.flatpickrInstance = flatpickr(`#${this.id}-input`, this.flatpickrOptions);\n\t\t\t// if (and only if) the initialization succeeded, we can set the date values\n\t\t\tif (this.isFlatpickrLoaded()) {\n\t\t\t\tif (this.value.length > 0) {\n\t\t\t\t\tthis.setDateValues(this.value);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t@HostListener(\"focusin\")\n\tonFocus() {\n\t\t// Updates the month manually when calendar mode is range because month\n\t\t// will not update properly without manually updating them on focus.\n\t\tif (this.range) {\n\t\t\tif (this.rangeInput.input.nativeElement === document.activeElement && this.flatpickrInstance.selectedDates[1]) {\n\t\t\t\tconst currentMonth = this.flatpickrInstance.selectedDates[1].getMonth();\n\t\t\t\tthis.flatpickrInstance.changeMonth(currentMonth, false);\n\t\t\t} else if (this.input.input.nativeElement === document.activeElement && this.flatpickrInstance.selectedDates[0]) {\n\t\t\t\tconst currentMonth = this.flatpickrInstance.selectedDates[0].getMonth();\n\t\t\t\tthis.flatpickrInstance.changeMonth(currentMonth, false);\n\t\t\t}\n\t\t}\n\t}\n\n\t@HostListener(\"focusout\")\n\tonFocusOut() {\n\t\tthis.onTouched();\n\t}\n\n\t/**\n\t * Writes a value from the model to the component. Expects the value to be `null` or `(Date | string)[]`\n\t * @param value value received from the model\n\t */\n\twriteValue(value: (Date | string)[]) {\n\t\tthis.value = value;\n\t\tsetTimeout(() => {\n\t\t\tif (this.isFlatpickrLoaded() && this.flatpickrInstance.config) {\n\t\t\t\tthis.setDateValues(this.value);\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * `ControlValueAccessor` method to programmatically disable the DatePicker.\n\t *\n\t * ex: `this.formGroup.get(\"myDatePicker\").disable();`\n\t *\n\t * @param isDisabled `true` to disable the DatePicker\n\t */\n\tsetDisabledState(isDisabled: boolean) {\n\t\tthis.disabled = isDisabled;\n\t}\n\n\tregisterOnChange(fn: any) {\n\t\tthis.propagateChange = fn;\n\t}\n\n\tregisterOnTouched(fn: any) {\n\t\tthis.onTouched = fn;\n\t}\n\n\tonTouched: () => any = () => { };\n\n\tpropagateChange = (_: any) => { };\n\n\t/**\n\t * Cleans up our flatpickr instance\n\t */\n\tngOnDestroy() {\n\t\tif (!this.isFlatpickrLoaded()) { return; }\n\t\tthis.flatpickrInstance.destroy();\n\t}\n\n\t/**\n\t * Handles the `valueChange` event from the primary/single input\n\t */\n\tonValueChange(event: string) {\n\t\tif (this.isFlatpickrLoaded()) {\n\t\t\tconst date = this.flatpickrInstance.parseDate(event, this.dateFormat);\n\t\t\tif (this.range) {\n\t\t\t\tthis.setDateValues([date, this.flatpickrInstance.selectedDates[1]]);\n\t\t\t} else {\n\t\t\t\tthis.setDateValues([date]);\n\t\t\t}\n\t\t\tthis.doSelect(this.flatpickrInstance.selectedDates);\n\t\t}\n\t}\n\n\t/**\n\t * Handles the `valueChange` event from the range input\n\t */\n\tonRangeValueChange(event: string) {\n\t\tif (this.isFlatpickrLoaded() && this.flatpickrInstance.isOpen) {\n\t\t\tconst date = this.flatpickrInstance.parseDate(event, this.dateFormat);\n\t\t\tthis.setDateValues([this.flatpickrInstance.selectedDates[0], date]);\n\t\t\tthis.doSelect(this.flatpickrInstance.selectedDates);\n\t\t}\n\t}\n\n\t/**\n\t * Handles opening the calendar \"properly\" when the calendar icon is clicked.\n\t */\n\topenCalendar(datepickerInput: DatePickerInput) {\n\t\tif (this.range) {\n\t\t\tdatepickerInput.input.nativeElement.click();\n\n\t\t\t// If the first input's calendar icon is clicked when calendar is in range mode, then\n\t\t\t// the month and year needs to be manually changed to the current selected month and\n\t\t\t// year otherwise the calendar view will not be updated upon opening.\n\t\t\tif (datepickerInput === this.input && this.flatpickrInstance.selectedDates[0]) {\n\t\t\t\tconst currentMonth = this.flatpickrInstance.selectedDates[0].getMonth();\n\n\t\t\t\tthis.flatpickrInstance.currentYear = this.flatpickrInstance.selectedDates[0].getFullYear();\n\t\t\t\tthis.flatpickrInstance.changeMonth(currentMonth, false);\n\t\t\t}\n\t\t} else {\n\t\t\t// Single-mode flatpickr handles mousedown but not click, so nativeElement.click() won't\n\t\t\t// work when the calendar icon is clicked. In this case we simply use flatpickr.open().\n\t\t\tthis.flatpickrInstance.open();\n\t\t}\n\t}\n\n\tprotected updateCalendarListeners() {\n\t\tconst calendarContainer = document.querySelectorAll(\".flatpickr-calendar\");\n\t\tArray.from(calendarContainer).forEach(calendar => {\n\t\t\tcalendar.removeEventListener(\"click\", this.preventCalendarClose);\n\t\t\tcalendar.addEventListener(\"click\", this.preventCalendarClose);\n\t\t});\n\t}\n\n\t/**\n\t * Handles the initialization of event listeners for the datepicker input and range input fields.\n\t */\n\tprotected addInputListeners() {\n\t\tif (!this.isFlatpickrLoaded()) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Allows focus transition from the datepicker input or range input field to\n\t\t// flatpickr calendar using a keyboard.\n\t\tconst addFocusCalendarListener = (element: HTMLInputElement) => {\n\t\t\telement.addEventListener(\"keydown\", (event: KeyboardEvent) => {\n\t\t\t\tif (event.key === \"Escape\") {\n\t\t\t\t\tthis.flatpickrInstance.close();\n\t\t\t\t}\n\t\t\t\tif (event.key === \"ArrowDown\") {\n\t\t\t\t\tif (!this.flatpickrInstance.isOpen) {\n\t\t\t\t\t\tthis.flatpickrInstance.open();\n\t\t\t\t\t}\n\n\t\t\t\t\tconst calendarContainer = this.flatpickrInstance.calendarContainer;\n\t\t\t\t\tconst dayElement = calendarContainer && calendarContainer.querySelector(\".flatpickr-day[tabindex]\");\n\n\t\t\t\t\tif (dayElement) {\n\t\t\t\t\t\tdayElement.focus();\n\n\t\t\t\t\t\t// If the user manually inputs a value into the date field and presses arrow down,\n\t\t\t\t\t\t// datepicker input onchange will be triggered when focus is removed from it and\n\t\t\t\t\t\t// `flatpickrInstance.setDate` and `flatpickrInstance.changeMonth` will be invoked\n\t\t\t\t\t\t// which will automatically change focus to the beginning of the document.\n\t\t\t\t\t\tif (document.activeElement !== dayElement && this.flatpickrInstance.selectedDateElem) {\n\t\t\t\t\t\t\tthis.flatpickrInstance.selectedDateElem.focus();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\n\t\tif (this.input && this.input.input) {\n\t\t\taddFocusCalendarListener(this.input.input.nativeElement);\n\t\t}\n\n\t\tif (this.rangeInput && this.rangeInput.input) {\n\t\t\taddFocusCalendarListener(this.rangeInput.input.nativeElement);\n\t\t}\n\t}\n\n\t/**\n\t * Resets the flatpickr instance while keeping the date values (or updating them if newDates is provided)\n\t *\n\t * Used to pick up input changes or locale changes.\n\t *\n\t * @param newDates An optional SimpleChange of date values\n\t */\n\tprotected resetFlatpickrInstance(newDates?: SimpleChange) {\n\t\tif (this.isFlatpickrLoaded()) {\n\t\t\tlet dates = this.flatpickrInstance.selectedDates;\n\t\t\tif (newDates && this.didDateValueChange(newDates.currentValue, newDates.previousValue)) {\n\t\t\t\tdates = newDates.currentValue;\n\t\t\t}\n\t\t\t// only reset the flatpickr instance on Input changes\n\t\t\t// @ts-ignore ts is unhappy with the below call to `flatpickr`\n\t\t\tthis.flatpickrInstance = flatpickr(`#${this.id}-input`, this.flatpickrOptions);\n\t\t\tthis.setDateValues(dates);\n\t\t}\n\t}\n\n\t/**\n\t * Carbon uses a number of specific classnames for parts of the flatpickr - this idempotent method applies them if needed.\n\t */\n\tprotected updateClassNames() {\n\t\tif (!this.elementRef) { return; }\n\t\t// get all the possible flatpickrs in the document - we need to add classes to (potentially) all of them\n\t\tconst calendarContainer = document.querySelectorAll(\".flatpickr-calendar\");\n\t\tconst monthContainer = document.querySelectorAll(\".flatpickr-month\");\n\t\tconst weekdaysContainer = document.querySelectorAll(\".flatpickr-weekdays\");\n\t\tconst weekdayContainer = document.querySelectorAll(\".flatpickr-weekday\");\n\t\tconst daysContainer = document.querySelectorAll(\".flatpickr-days\");\n\t\tconst dayContainer = document.querySelectorAll(\".flatpickr-day\");\n\n\t\t// add classes to lists of elements\n\t\tconst addClassIfNotExists = (classname: string, elementList: NodeListOf<Element>) => {\n\t\t\tArray.from(elementList).forEach(element => {\n\t\t\t\tif (!element.classList.contains(classname)) {\n\t\t\t\t\telement.classList.add(classname);\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\n\t\t// add classes (but only if they don't exist, small perf win)\n\t\taddClassIfNotExists(\"cds--date-picker__calendar\", calendarContainer);\n\t\taddClassIfNotExists(\"cds--date-picker__month\", monthContainer);\n\t\taddClassIfNotExists(\"cds--date-picker__weekdays\", weekdaysContainer);\n\t\taddClassIfNotExists(\"cds--date-picker__days\", daysContainer);\n\n\t\t// add weekday classes and format the text\n\t\tArray.from(weekdayContainer).forEach(element => {\n\t\t\telement.innerHTML = element.innerHTML.replace(/\\s+/g, \"\");\n\t\t\telement.classList.add(\"cds--date-picker__weekday\");\n\t\t});\n\n\t\t// add day classes and special case the \"today\" element based on `this.value`\n\t\tArray.from(dayContainer).forEach(element => {\n\t\t\telement.classList.add(\"cds--date-picker__day\");\n\t\t\tif (!this.value) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (element.classList.contains(\"today\") && this.value.length > 0) {\n\t\t\t\telement.classList.add(\"no-border\");\n\t\t\t} else if (element.classList.contains(\"today\") && this.value.length === 0) {\n\t\t\t\telement.classList.remove(\"no-border\");\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected updateAttributes() {\n\t\tconst calendarContainer = document.querySelectorAll(\".flatpickr-calendar\");\n\t\tArray.from(calendarContainer).forEach(calendar => {\n\t\t\tcalendar.setAttribute(\"role\", \"region\");\n\t\t\tcalendar.setAttribute(\"aria-label\", this.ariaLabel);\n\t\t});\n\t}\n\n\t/**\n\t * Applies the given date value array to both the flatpickr instance and the `input`(s)\n\t * @param dates the date values to apply\n\t */\n\tprotected setDateValues(dates: (Date | string)[]) {\n\t\tif (this.isFlatpickrLoaded()) {\n\t\t\tconst singleInput = this.elementRef.nativeElement.querySelector(`#${this.id}-input`);\n\t\t\tconst rangeInput = this.elementRef.nativeElement.querySelector(`#${this.id}-rangeInput`);\n\n\t\t\t// `flatpickrInstance.setDate` removes the focus on the selected date element and will\n\t\t\t// automatically change focus to the beginning of the document. If a selected date is\n\t\t\t// focused before `flatpickrInstance.setDate` is invoked then it should remain focused.\n\t\t\tlet shouldRefocusDateElement = this.flatpickrInstance.selectedDateElem === document.activeElement;\n\n\t\t\t// set the date on the instance\n\t\t\tthis.flatpickrInstance.setDate(dates);\n\n\t\t\tif (shouldRefocusDateElement) {\n\t\t\t\tthis.flatpickrInstance.selectedDateElem.focus();\n\t\t\t}\n\n\t\t\t// we can either set a date value or an empty string, so we start with an empty string\n\t\t\tlet singleDate = \"\";\n\t\t\t// if date is a string, parse and format\n\t\t\tif (typeof this.flatpickrInstance.selectedDates[0] === \"string\") {\n\t\t\t\tsingleDate = this.flatpickrInstance.parseDate(this.flatpickrInstance.selectedDates[0], this.dateFormat);\n\t\t\t\tsingleDate = this.flatpickrInstance.formatDate(singleDate, this.dateFormat);\n\t\t\t// if date is not a string we can assume it's a Date and we should format\n\t\t\t} else if (!!this.flatpickrInstance.selectedDates[0]) {\n\t\t\t\tsingleDate = this.flatpickrInstance.formatDate(this.flatpickrInstance.selectedDates[0], this.dateFormat);\n\t\t\t}\n\n\t\t\tif (rangeInput) {\n\t\t\t\t// we can either set a date value or an empty string, so we start with an empty string\n\t\t\t\tlet rangeDate = \"\";\n\t\t\t\t// if date is a string, parse and format\n\t\t\t\tif (typeof this.flatpickrInstance.selectedDates[1] === \"string\") {\n\t\t\t\t\trangeDate = this.flatpickrInstance.parseDate(this.flatpickrInstance.selectedDates[1].toString(), this.dateFormat);\n\t\t\t\t\trangeDate = this.flatpickrInstance.formatDate(rangeDate, this.dateFormat);\n\t\t\t\t// if date is not a string we can assume it's a Date and we should format\n\t\t\t\t} else if (!!this.flatpickrInstance.selectedDates[1]) {\n\t\t\t\t\trangeDate = this.flatpickrInstance.formatDate(this.flatpickrInstance.selectedDates[1], this.dateFormat);\n\t\t\t\t}\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t// apply the values\n\t\t\t\t\trangeInput.value = rangeDate;\n\t\t\t\t\tsingleInput.value = singleDate;\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected preventCalendarClose = event => event.stopPropagation();\n\n\tprotected doSelect(selectedValue: (Date | string)[]) {\n\t\t// In range mode, if a date is selected from the first calendar that is from the previous month,\n\t\t// the month will not be updated on the calendar until the calendar is re-opened.\n\t\t// This will make sure the calendar is updated with the correct month.\n\t\tif (this.range && this.flatpickrInstance.selectedDates[0]) {\n\t\t\tconst currentMonth = this.flatpickrInstance.selectedDates[0].getMonth();\n\n\t\t\t// `flatpickrInstance.changeMonth` removes the focus on the selected date element and will\n\t\t\t// automatically change focus to the beginning of the document. If a selected date is\n\t\t\t// focused before `flatpickrInstance.changeMonth` is invoked then it should remain focused.\n\t\t\tlet shouldRefocusDateElement = this.flatpickrInstance.selectedDateElem === document.activeElement;\n\n\t\t\tthis.flatpickrInstance.changeMonth(currentMonth, false);\n\n\t\t\tif (shouldRefocusDateElement) {\n\t\t\t\tthis.flatpickrInstance.selectedDateElem.focus();\n\t\t\t}\n\n\t\t}\n\t\tthis.valueChange.emit(selectedValue);\n\t\tthis.propagateChange(selectedValue);\n\t}\n\n\tprotected didDateValueChange(currentValue, previousValue) {\n\t\treturn currentValue[0] !== previousValue[0] || currentValue[1] !== previousValue[1];\n\t}\n\n\t/**\n\t * More advanced checking of the loaded state of flatpickr\n\t */\n\tprotected isFlatpickrLoaded() {\n\t\t// cast the instance to a boolean, and some method that has to exist for the library to be loaded in this case `setDate`\n\t\treturn !!this.flatpickrInstance && !!this.flatpickrInstance.setDate;\n\t}\n\n\t/**\n\t * Right arrow HTML passed to flatpickr\n\t */\n\tprotected rightArrowHTML() {\n\t\treturn `\n\t\t\t<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\n\t\t\t\t<polygon points=\"11,8 6,13 5.3,12.3 9.6,8 5.3,3.7 6,3 \"/>\n\t\t\t\t<rect width=\"16\" height=\"16\" style=\"fill:none\" />\n\t\t\t</svg>`;\n\t}\n\n\t/**\n\t * Left arrow HTML passed to flatpickr\n\t */\n\tprotected leftArrowHTML() {\n\t\treturn `\n\t\t\t<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\">\n\t\t\t\t<polygon points=\"5,8 10,3 10.7,3.7 6.4,8 10.7,12.3 10,13 \"/>\n\t\t\t\t<rect width=\"16\" height=\"16\" style=\"fill:none\" />\n\t\t\t</svg>`;\n\t}\n}\n","import { DatePickerInputModule } from \"carbon-components-angular/datepicker-input\";\nimport { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { DatePicker } from \"./datepicker.component\";\nimport { UtilsModule } from \"carbon-components-angular/utils\";\nimport { I18nModule } from \"carbon-components-angular/i18n\";\n\n@NgModule({\n\tdeclarations: [\n\t\tDatePicker\n\t],\n\texports: [\n\t\tDatePicker,\n\t\tDatePickerInputModule\n\t],\n\timports: [\n\t\tCommonModule,\n\t\tDatePickerInputModule,\n\t\tUtilsModule,\n\t\tI18nModule\n\t]\n})\nexport class DatePickerModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}