@daffodil/design 0.84.0 → 0.86.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 (210) hide show
  1. package/accordion/src/accordion-theme.scss +11 -13
  2. package/article/src/article-theme.scss +36 -38
  3. package/atoms/form/error-message/error-message.component.d.ts +6 -0
  4. package/atoms/form/form-field/form-field/form-field.component.d.ts +104 -13
  5. package/atoms/form/form-field/form-field-control.d.ts +3 -0
  6. package/atoms/form/form-field/form-field.d.ts +2 -1
  7. package/atoms/form/form-field/label/label.directive.d.ts +5 -0
  8. package/atoms/form/form-field/public_api.d.ts +1 -0
  9. package/atoms/form/form-label/form-label.directive.d.ts +3 -0
  10. package/atoms/form/hint/hint.component.d.ts +5 -1
  11. package/breadcrumb/src/breadcrumb-theme.scss +9 -11
  12. package/button/README.md +3 -3
  13. package/button/button/button-base.directive.d.ts +1 -2
  14. package/button/button/raised/raised.component.d.ts +1 -1
  15. package/button/src/button/basic/button-theme.scss +80 -82
  16. package/button/src/button/button-base.scss +0 -18
  17. package/button/src/button/flat/flat-theme.scss +28 -30
  18. package/button/src/button/icon/icon-theme.scss +74 -76
  19. package/button/src/button/raised/raised-theme.scss +28 -30
  20. package/button/src/button/stroked/stroked-theme.scss +31 -33
  21. package/button/src/button/underline/underline-theme.scss +30 -32
  22. package/callout/src/callout-theme.scss +21 -23
  23. package/card/src/card/raised/raised-theme.scss +9 -11
  24. package/card/src/card/stroked/stroked-theme.scss +32 -34
  25. package/card/src/card-base-theme.scss +42 -44
  26. package/core/colorable/colorable.d.ts +2 -2
  27. package/core/compactable/compactable.directive.d.ts +3 -0
  28. package/core/openable/openable.directive.d.ts +1 -1
  29. package/core/selectable/selectable.directive.d.ts +3 -1
  30. package/core/sizable/sizable.directive.d.ts +2 -2
  31. package/core/skeletonable/public_api.d.ts +0 -1
  32. package/core/skeletonable/skeletonable.directive.d.ts +3 -0
  33. package/core/text-alignable/text-alignable.directive.d.ts +9 -5
  34. package/fesm2022/daffodil-design-accordion-examples.mjs +10 -10
  35. package/fesm2022/daffodil-design-accordion-examples.mjs.map +1 -1
  36. package/fesm2022/daffodil-design-accordion.mjs +15 -15
  37. package/fesm2022/daffodil-design-accordion.mjs.map +1 -1
  38. package/fesm2022/daffodil-design-article-examples.mjs +31 -31
  39. package/fesm2022/daffodil-design-article-examples.mjs.map +1 -1
  40. package/fesm2022/daffodil-design-article.mjs +12 -12
  41. package/fesm2022/daffodil-design-article.mjs.map +1 -1
  42. package/fesm2022/daffodil-design-breadcrumb-examples.mjs +7 -7
  43. package/fesm2022/daffodil-design-breadcrumb-examples.mjs.map +1 -1
  44. package/fesm2022/daffodil-design-breadcrumb.mjs +12 -12
  45. package/fesm2022/daffodil-design-breadcrumb.mjs.map +1 -1
  46. package/fesm2022/daffodil-design-button-examples.mjs +34 -34
  47. package/fesm2022/daffodil-design-button-examples.mjs.map +1 -1
  48. package/fesm2022/daffodil-design-button.mjs +37 -61
  49. package/fesm2022/daffodil-design-button.mjs.map +1 -1
  50. package/fesm2022/daffodil-design-callout-examples.mjs +13 -13
  51. package/fesm2022/daffodil-design-callout-examples.mjs.map +1 -1
  52. package/fesm2022/daffodil-design-callout.mjs +23 -23
  53. package/fesm2022/daffodil-design-callout.mjs.map +1 -1
  54. package/fesm2022/daffodil-design-card-examples.mjs +19 -19
  55. package/fesm2022/daffodil-design-card-examples.mjs.map +1 -1
  56. package/fesm2022/daffodil-design-card.mjs +35 -35
  57. package/fesm2022/daffodil-design-card.mjs.map +1 -1
  58. package/fesm2022/daffodil-design-checkbox-examples.mjs +7 -7
  59. package/fesm2022/daffodil-design-checkbox-examples.mjs.map +1 -1
  60. package/fesm2022/daffodil-design-container-examples.mjs +4 -4
  61. package/fesm2022/daffodil-design-container-examples.mjs.map +1 -1
  62. package/fesm2022/daffodil-design-container.mjs +8 -8
  63. package/fesm2022/daffodil-design-container.mjs.map +1 -1
  64. package/fesm2022/daffodil-design-hero-examples.mjs +13 -13
  65. package/fesm2022/daffodil-design-hero-examples.mjs.map +1 -1
  66. package/fesm2022/daffodil-design-hero.mjs +23 -23
  67. package/fesm2022/daffodil-design-hero.mjs.map +1 -1
  68. package/fesm2022/daffodil-design-image-examples.mjs +10 -10
  69. package/fesm2022/daffodil-design-image-examples.mjs.map +1 -1
  70. package/fesm2022/daffodil-design-image.mjs +9 -9
  71. package/fesm2022/daffodil-design-image.mjs.map +1 -1
  72. package/fesm2022/daffodil-design-input-examples.mjs +42 -21
  73. package/fesm2022/daffodil-design-input-examples.mjs.map +1 -1
  74. package/fesm2022/daffodil-design-input.mjs +139 -0
  75. package/fesm2022/daffodil-design-input.mjs.map +1 -0
  76. package/fesm2022/daffodil-design-link-set.mjs +17 -17
  77. package/fesm2022/daffodil-design-link-set.mjs.map +1 -1
  78. package/fesm2022/daffodil-design-list-examples.mjs +13 -13
  79. package/fesm2022/daffodil-design-list-examples.mjs.map +1 -1
  80. package/fesm2022/daffodil-design-list.mjs +12 -12
  81. package/fesm2022/daffodil-design-list.mjs.map +1 -1
  82. package/fesm2022/daffodil-design-loading-icon-examples.mjs +4 -4
  83. package/fesm2022/daffodil-design-loading-icon-examples.mjs.map +1 -1
  84. package/fesm2022/daffodil-design-loading-icon.mjs +8 -8
  85. package/fesm2022/daffodil-design-loading-icon.mjs.map +1 -1
  86. package/fesm2022/daffodil-design-media-gallery-examples.mjs +16 -16
  87. package/fesm2022/daffodil-design-media-gallery-examples.mjs.map +1 -1
  88. package/fesm2022/daffodil-design-media-gallery.mjs +14 -21
  89. package/fesm2022/daffodil-design-media-gallery.mjs.map +1 -1
  90. package/fesm2022/daffodil-design-menu-examples.mjs +7 -7
  91. package/fesm2022/daffodil-design-menu-examples.mjs.map +1 -1
  92. package/fesm2022/daffodil-design-menu.mjs +17 -17
  93. package/fesm2022/daffodil-design-menu.mjs.map +1 -1
  94. package/fesm2022/daffodil-design-modal-examples.mjs +7 -7
  95. package/fesm2022/daffodil-design-modal-examples.mjs.map +1 -1
  96. package/fesm2022/daffodil-design-modal.mjs +28 -28
  97. package/fesm2022/daffodil-design-modal.mjs.map +1 -1
  98. package/fesm2022/daffodil-design-navbar-examples.mjs +13 -13
  99. package/fesm2022/daffodil-design-navbar-examples.mjs.map +1 -1
  100. package/fesm2022/daffodil-design-navbar.mjs +8 -8
  101. package/fesm2022/daffodil-design-navbar.mjs.map +1 -1
  102. package/fesm2022/daffodil-design-notification-examples.mjs +16 -16
  103. package/fesm2022/daffodil-design-notification-examples.mjs.map +1 -1
  104. package/fesm2022/daffodil-design-notification.mjs +20 -20
  105. package/fesm2022/daffodil-design-notification.mjs.map +1 -1
  106. package/fesm2022/daffodil-design-paginator-examples.mjs +7 -7
  107. package/fesm2022/daffodil-design-paginator-examples.mjs.map +1 -1
  108. package/fesm2022/daffodil-design-paginator.mjs +8 -8
  109. package/fesm2022/daffodil-design-paginator.mjs.map +1 -1
  110. package/fesm2022/daffodil-design-progress-bar-examples.mjs +10 -10
  111. package/fesm2022/daffodil-design-progress-bar-examples.mjs.map +1 -1
  112. package/fesm2022/daffodil-design-progress-bar.mjs +12 -12
  113. package/fesm2022/daffodil-design-progress-bar.mjs.map +1 -1
  114. package/fesm2022/daffodil-design-quantity-field-examples.mjs +19 -18
  115. package/fesm2022/daffodil-design-quantity-field-examples.mjs.map +1 -1
  116. package/fesm2022/daffodil-design-quantity-field.mjs +355 -0
  117. package/fesm2022/daffodil-design-quantity-field.mjs.map +1 -0
  118. package/fesm2022/daffodil-design-radio-examples.mjs +4 -4
  119. package/fesm2022/daffodil-design-radio-examples.mjs.map +1 -1
  120. package/fesm2022/daffodil-design-sidebar-examples.mjs +13 -13
  121. package/fesm2022/daffodil-design-sidebar-examples.mjs.map +1 -1
  122. package/fesm2022/daffodil-design-sidebar.mjs +27 -27
  123. package/fesm2022/daffodil-design-sidebar.mjs.map +1 -1
  124. package/fesm2022/daffodil-design-switch-examples.mjs +16 -16
  125. package/fesm2022/daffodil-design-switch-examples.mjs.map +1 -1
  126. package/fesm2022/daffodil-design-switch.mjs +4 -4
  127. package/fesm2022/daffodil-design-switch.mjs.map +1 -1
  128. package/fesm2022/daffodil-design-tabs-examples.mjs +16 -16
  129. package/fesm2022/daffodil-design-tabs-examples.mjs.map +1 -1
  130. package/fesm2022/daffodil-design-tabs.mjs +16 -16
  131. package/fesm2022/daffodil-design-tabs.mjs.map +1 -1
  132. package/fesm2022/daffodil-design-text-snippet-examples.mjs +4 -4
  133. package/fesm2022/daffodil-design-text-snippet-examples.mjs.map +1 -1
  134. package/fesm2022/daffodil-design-text-snippet.mjs +4 -4
  135. package/fesm2022/daffodil-design-text-snippet.mjs.map +1 -1
  136. package/fesm2022/daffodil-design-toast-examples.mjs +13 -72
  137. package/fesm2022/daffodil-design-toast-examples.mjs.map +1 -1
  138. package/fesm2022/daffodil-design-toast.mjs +73 -61
  139. package/fesm2022/daffodil-design-toast.mjs.map +1 -1
  140. package/fesm2022/daffodil-design-tree-examples.mjs +7 -7
  141. package/fesm2022/daffodil-design-tree-examples.mjs.map +1 -1
  142. package/fesm2022/daffodil-design-tree.mjs +11 -11
  143. package/fesm2022/daffodil-design-tree.mjs.map +1 -1
  144. package/fesm2022/daffodil-design-youtube-player.mjs +7 -7
  145. package/fesm2022/daffodil-design-youtube-player.mjs.map +1 -1
  146. package/fesm2022/daffodil-design.mjs +477 -711
  147. package/fesm2022/daffodil-design.mjs.map +1 -1
  148. package/hero/src/hero-theme.scss +21 -23
  149. package/input/README.md +66 -0
  150. package/input/examples/input-hint-and-error/input-hint-and-error.component.d.ts +9 -0
  151. package/input/index.d.ts +1 -0
  152. package/{atoms/form/input → input}/input.component.d.ts +21 -5
  153. package/list/src/list-theme.scss +9 -11
  154. package/loading-icon/src/loading-icon-theme.scss +20 -22
  155. package/media-gallery/media-gallery/media-gallery.component.d.ts +0 -4
  156. package/media-gallery/src/media-gallery-theme.scss +10 -12
  157. package/menu/helpers/create-overlay.d.ts +1 -1
  158. package/menu/src/menu-theme.scss +10 -11
  159. package/modal/src/modal-theme.scss +2 -2
  160. package/navbar/src/navbar-theme.scss +18 -20
  161. package/notification/src/notification-theme.scss +44 -46
  162. package/package.json +1 -1
  163. package/paginator/src/paginator-theme.scss +9 -11
  164. package/progress-bar/src/progress-bar-theme.scss +18 -20
  165. package/public_api.d.ts +0 -2
  166. package/quantity-field/README.md +63 -0
  167. package/quantity-field/index.d.ts +1 -0
  168. package/quantity-field/public_api.d.ts +2 -0
  169. package/{atoms/form/quantity-field → quantity-field}/quantity-field.component.d.ts +3 -3
  170. package/quantity-field/quantity-field.module.d.ts +11 -0
  171. package/{atoms/form/quantity-field → quantity-field}/quantity-input/quantity-input.component.d.ts +2 -2
  172. package/{atoms/form/quantity-field → quantity-field}/quantity-select/quantity-select.component.d.ts +2 -2
  173. package/scss/state/skeleton/_mixins.scss +12 -10
  174. package/scss/theme.scss +0 -2
  175. package/scss/theming/_configure-theme.scss +16 -16
  176. package/scss/theming/_get-base-color.scss +19 -0
  177. package/scss/theming/_get-palette.scss +27 -0
  178. package/scss/theming/_get-theme-mode.scss +9 -0
  179. package/scss/theming/_index.scss +3 -0
  180. package/scss/theming/_light-dark.scss +4 -4
  181. package/scss/theming/_theme-css-variables.scss +20 -20
  182. package/scss/theming/contrast/luminance/luminance.scss +3 -3
  183. package/sidebar/src/sidebar-theme.scss +4 -5
  184. package/src/atoms/form/error-message/error-message-theme.scss +3 -4
  185. package/src/atoms/form/form-field/form-field/form-field-theme.scss +47 -31
  186. package/src/atoms/form/hint/hint-theme.scss +13 -8
  187. package/src/atoms/form/native-select/native-select-theme.scss +5 -7
  188. package/switch/src/switch-theme.scss +13 -15
  189. package/tabs/src/tabs-theme.scss +13 -15
  190. package/toast/README.md +21 -1
  191. package/toast/examples/public_api.d.ts +1 -2
  192. package/toast/helpers/toast-position.d.ts +8 -0
  193. package/toast/interfaces/toast-options.d.ts +19 -0
  194. package/toast/interfaces/toast.d.ts +1 -1
  195. package/toast/public_api.d.ts +2 -2
  196. package/toast/service/position-strategy.d.ts +1 -1
  197. package/toast/service/position.service.d.ts +1 -1
  198. package/toast/service/toast.service.d.ts +1 -1
  199. package/toast/src/toast-theme.scss +36 -38
  200. package/toast/toast/toast-provider.d.ts +16 -4
  201. package/toast/toast/toast-template.component.d.ts +1 -1
  202. package/tree/src/tree-theme.scss +20 -22
  203. package/atoms/form/quantity-field/public_api.d.ts +0 -4
  204. package/atoms/form/quantity-field/quantity-field.module.d.ts +0 -13
  205. package/core/skeletonable/skeletonable.d.ts +0 -6
  206. package/src/atoms/form/input/input-theme.scss +0 -12
  207. package/toast/examples/toast-positions/toast-positions.component.d.ts +0 -20
  208. package/toast/options/daff-toast-options.d.ts +0 -14
  209. /package/{atoms/form/input → input}/input.module.d.ts +0 -0
  210. /package/{atoms/form/input → input}/public_api.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-design-sidebar-examples.mjs","sources":["../../../libs/design/sidebar/examples/src/basic-sidebar/basic-sidebar.component.ts","../../../libs/design/sidebar/examples/src/basic-sidebar/basic-sidebar.component.html","../../../libs/design/sidebar/examples/src/over-and-under-sidebars/over-and-under-sidebars.component.ts","../../../libs/design/sidebar/examples/src/over-and-under-sidebars/over-and-under-sidebars.component.html","../../../libs/design/sidebar/examples/src/side-fixed-sidebar/side-fixed-sidebar.component.ts","../../../libs/design/sidebar/examples/src/side-fixed-sidebar/side-fixed-sidebar.component.html","../../../libs/design/sidebar/examples/src/sidebar-with-sticky-content/sidebar-with-sticky-content.component.ts","../../../libs/design/sidebar/examples/src/sidebar-with-sticky-content/sidebar-with-sticky-content.component.html","../../../libs/design/sidebar/examples/src/public_api.ts","../../../libs/design/sidebar/examples/src/daffodil-design-sidebar-examples.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DAFF_SIDEBAR_COMPONENTS } from '@daffodil/design/sidebar';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'basic-sidebar',\n templateUrl: './basic-sidebar.component.html',\n styleUrls: ['./basic-sidebar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n DAFF_SIDEBAR_COMPONENTS,\n ],\n})\nexport class BasicSidebarComponent {}\n","<daff-sidebar-viewport>\n <daff-sidebar class=\"basic-sidebar\">\n <daff-sidebar-header>\n Sidebar Title\n </daff-sidebar-header>\n Sidebar content\n </daff-sidebar>\n <div class=\"basic-sidebar__content\">\n Page content\n </div>\n</daff-sidebar-viewport>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport {\n FormControl,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faTimes } from '@fortawesome/free-solid-svg-icons';\n\nimport {\n DaffButtonComponent,\n DaffIconButtonComponent,\n} from '@daffodil/design/button';\nimport { DAFF_SIDEBAR_COMPONENTS } from '@daffodil/design/sidebar';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'over-and-under-sidebars',\n templateUrl: './over-and-under-sidebars.component.html',\n styleUrls: ['over-and-under-sidebars.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n DAFF_SIDEBAR_COMPONENTS,\n FaIconComponent,\n ReactiveFormsModule,\n DaffButtonComponent,\n DaffIconButtonComponent,\n ],\n})\nexport class OverandUnderSidebarsComponent {\n faTimes = faTimes;\n\n open = false;\n\n sideControl: FormControl = new FormControl('left');\n modeControl: FormControl = new FormControl('over');\n\n openSidebar() {\n this.open = !this.open;\n }\n\n closeSidebar() {\n this.open = false;\n }\n}\n","<daff-sidebar-viewport (backdropClicked)=\"closeSidebar()\">\n <daff-sidebar class=\"over-sidebar\" [mode]=\"modeControl.value\" [side]=\"sideControl.value\" [open]=\"open\" (escapePressed)=\"closeSidebar()\">\n <daff-sidebar-header [dismissible]=\"true\" (closeSidebar)=\"closeSidebar()\">\n <div daffSidebarHeaderTitle>Title</div>\n </daff-sidebar-header>\n <div class=\"over-and-under-sidebars__sidebar-content\">\n Sidebar content\n </div>\n <daff-sidebar-footer>\n <div class=\"over-and-under-sidebars__footer\">\n Sidebar footer\n </div>\n </daff-sidebar-footer>\n </daff-sidebar>\n <div class=\"over-and-under-sidebars__body-content\">\n <div class=\"over-and-under-sidebars__options-container\">\n <div class=\"over-and-under-sidebars__option-text\">Side:</div>\n <select [formControl]=\"sideControl\">\n <option value=\"left\">Left</option>\n <option value=\"right\">Right</option>\n </select>\n </div>\n \n <div class=\"over-and-under-sidebars__options-container\">\n <div class=\"over-and-under-sidebars__option-text\">Mode:</div>\n <select [formControl]=\"modeControl\">\n <option value=\"over\">Over</option>\n <option value=\"under\">Under</option>\n </select>\n </div>\n\n <button daff-button (click)=\"openSidebar()\">\n Open\n </button>\n </div>\n</daff-sidebar-viewport>\n","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DAFF_NAVBAR_COMPONENTS } from '@daffodil/design/navbar';\nimport { DAFF_SIDEBAR_COMPONENTS } from '@daffodil/design/sidebar';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'side-fixed-sidebar',\n templateUrl: './side-fixed-sidebar.component.html',\n styleUrls: ['side-fixed-sidebar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [DAFF_SIDEBAR_COMPONENTS, DAFF_NAVBAR_COMPONENTS],\n})\nexport class SideFixedSidebarComponent {}\n","<daff-sidebar-viewport navPlacement=\"beside\">\n <daff-sidebar mode=\"side-fixed\" [open]=\"true\" class=\"side-fixed-sidebar\">\n Fixed sidebar content\n </daff-sidebar>\n <nav daff-sidebar-viewport-nav daff-navbar>Navbar</nav>\n <div class=\"content\">\n Page content\n </div>\n</daff-sidebar-viewport>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DAFF_SIDEBAR_COMPONENTS } from '@daffodil/design/sidebar';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'sidebar-with-sticky-content',\n templateUrl: './sidebar-with-sticky-content.component.html',\n styleUrls: ['sidebar-with-sticky-content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n DAFF_SIDEBAR_COMPONENTS,\n ],\n})\nexport class SidebarWithStickyContentComponent {}\n","<daff-sidebar-viewport>\n <daff-sidebar mode=\"side-fixed\" [open]=\"true\" class=\"sidebar-with-sticky-content\">\n Fixed sidebar content\n </daff-sidebar>\n <div class=\"content\">\n <div class=\"sticky\">\n <div>Sticky content</div>\n </div>\n <div class=\"inner-content\">Inner content</div>\n </div>\n</daff-sidebar-viewport>","import { BasicSidebarComponent } from './basic-sidebar/basic-sidebar.component';\nimport { OverandUnderSidebarsComponent } from './over-and-under-sidebars/over-and-under-sidebars.component';\nimport { SideFixedSidebarComponent } from './side-fixed-sidebar/side-fixed-sidebar.component';\nimport { SidebarWithStickyContentComponent } from './sidebar-with-sticky-content/sidebar-with-sticky-content.component';\n\nexport const SIDEBAR_EXAMPLES = [\n BasicSidebarComponent,\n OverandUnderSidebarsComponent,\n SideFixedSidebarComponent,\n SidebarWithStickyContentComponent,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2"],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-design-sidebar-examples.mjs","sources":["../../../libs/design/sidebar/examples/src/basic-sidebar/basic-sidebar.component.ts","../../../libs/design/sidebar/examples/src/basic-sidebar/basic-sidebar.component.html","../../../libs/design/sidebar/examples/src/over-and-under-sidebars/over-and-under-sidebars.component.ts","../../../libs/design/sidebar/examples/src/over-and-under-sidebars/over-and-under-sidebars.component.html","../../../libs/design/sidebar/examples/src/side-fixed-sidebar/side-fixed-sidebar.component.ts","../../../libs/design/sidebar/examples/src/side-fixed-sidebar/side-fixed-sidebar.component.html","../../../libs/design/sidebar/examples/src/sidebar-with-sticky-content/sidebar-with-sticky-content.component.ts","../../../libs/design/sidebar/examples/src/sidebar-with-sticky-content/sidebar-with-sticky-content.component.html","../../../libs/design/sidebar/examples/src/public_api.ts","../../../libs/design/sidebar/examples/src/daffodil-design-sidebar-examples.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DAFF_SIDEBAR_COMPONENTS } from '@daffodil/design/sidebar';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'basic-sidebar',\n templateUrl: './basic-sidebar.component.html',\n styleUrls: ['./basic-sidebar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n DAFF_SIDEBAR_COMPONENTS,\n ],\n})\nexport class BasicSidebarComponent {}\n","<daff-sidebar-viewport>\n <daff-sidebar class=\"basic-sidebar\">\n <daff-sidebar-header>\n Sidebar Title\n </daff-sidebar-header>\n Sidebar content\n </daff-sidebar>\n <div class=\"basic-sidebar__content\">\n Page content\n </div>\n</daff-sidebar-viewport>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport {\n FormControl,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faTimes } from '@fortawesome/free-solid-svg-icons';\n\nimport {\n DaffButtonComponent,\n DaffIconButtonComponent,\n} from '@daffodil/design/button';\nimport { DAFF_SIDEBAR_COMPONENTS } from '@daffodil/design/sidebar';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'over-and-under-sidebars',\n templateUrl: './over-and-under-sidebars.component.html',\n styleUrls: ['over-and-under-sidebars.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n DAFF_SIDEBAR_COMPONENTS,\n FaIconComponent,\n ReactiveFormsModule,\n DaffButtonComponent,\n DaffIconButtonComponent,\n ],\n})\nexport class OverandUnderSidebarsComponent {\n faTimes = faTimes;\n\n open = false;\n\n sideControl: FormControl = new FormControl('left');\n modeControl: FormControl = new FormControl('over');\n\n openSidebar() {\n this.open = !this.open;\n }\n\n closeSidebar() {\n this.open = false;\n }\n}\n","<daff-sidebar-viewport (backdropClicked)=\"closeSidebar()\">\n <daff-sidebar class=\"over-sidebar\" [mode]=\"modeControl.value\" [side]=\"sideControl.value\" [open]=\"open\" (escapePressed)=\"closeSidebar()\">\n <daff-sidebar-header [dismissible]=\"true\" (closeSidebar)=\"closeSidebar()\">\n <div daffSidebarHeaderTitle>Title</div>\n </daff-sidebar-header>\n <div class=\"over-and-under-sidebars__sidebar-content\">\n Sidebar content\n </div>\n <daff-sidebar-footer>\n <div class=\"over-and-under-sidebars__footer\">\n Sidebar footer\n </div>\n </daff-sidebar-footer>\n </daff-sidebar>\n <div class=\"over-and-under-sidebars__body-content\">\n <div class=\"over-and-under-sidebars__options-container\">\n <div class=\"over-and-under-sidebars__option-text\">Side:</div>\n <select [formControl]=\"sideControl\">\n <option value=\"left\">Left</option>\n <option value=\"right\">Right</option>\n </select>\n </div>\n \n <div class=\"over-and-under-sidebars__options-container\">\n <div class=\"over-and-under-sidebars__option-text\">Mode:</div>\n <select [formControl]=\"modeControl\">\n <option value=\"over\">Over</option>\n <option value=\"under\">Under</option>\n </select>\n </div>\n\n <button daff-button (click)=\"openSidebar()\">\n Open\n </button>\n </div>\n</daff-sidebar-viewport>\n","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DAFF_NAVBAR_COMPONENTS } from '@daffodil/design/navbar';\nimport { DAFF_SIDEBAR_COMPONENTS } from '@daffodil/design/sidebar';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'side-fixed-sidebar',\n templateUrl: './side-fixed-sidebar.component.html',\n styleUrls: ['side-fixed-sidebar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [DAFF_SIDEBAR_COMPONENTS, DAFF_NAVBAR_COMPONENTS],\n})\nexport class SideFixedSidebarComponent {}\n","<daff-sidebar-viewport navPlacement=\"beside\">\n <daff-sidebar mode=\"side-fixed\" [open]=\"true\" class=\"side-fixed-sidebar\">\n Fixed sidebar content\n </daff-sidebar>\n <nav daff-sidebar-viewport-nav daff-navbar>Navbar</nav>\n <div class=\"content\">\n Page content\n </div>\n</daff-sidebar-viewport>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DAFF_SIDEBAR_COMPONENTS } from '@daffodil/design/sidebar';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'sidebar-with-sticky-content',\n templateUrl: './sidebar-with-sticky-content.component.html',\n styleUrls: ['sidebar-with-sticky-content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n DAFF_SIDEBAR_COMPONENTS,\n ],\n})\nexport class SidebarWithStickyContentComponent {}\n","<daff-sidebar-viewport>\n <daff-sidebar mode=\"side-fixed\" [open]=\"true\" class=\"sidebar-with-sticky-content\">\n Fixed sidebar content\n </daff-sidebar>\n <div class=\"content\">\n <div class=\"sticky\">\n <div>Sticky content</div>\n </div>\n <div class=\"inner-content\">Inner content</div>\n </div>\n</daff-sidebar-viewport>","import { BasicSidebarComponent } from './basic-sidebar/basic-sidebar.component';\nimport { OverandUnderSidebarsComponent } from './over-and-under-sidebars/over-and-under-sidebars.component';\nimport { SideFixedSidebarComponent } from './side-fixed-sidebar/side-fixed-sidebar.component';\nimport { SidebarWithStickyContentComponent } from './sidebar-with-sticky-content/sidebar-with-sticky-content.component';\n\nexport const SIDEBAR_EXAMPLES = [\n BasicSidebarComponent,\n OverandUnderSidebarsComponent,\n SideFixedSidebarComponent,\n SidebarWithStickyContentComponent,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2"],"mappings":"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"}
@@ -2,12 +2,12 @@ import * as i1 from '@angular/cdk/a11y';
2
2
  import { A11yModule } from '@angular/cdk/a11y';
3
3
  import { DOCUMENT, NgIf, CommonModule } from '@angular/common';
4
4
  import * as i0 from '@angular/core';
5
- import { EventEmitter, Component, ChangeDetectionStrategy, Inject, HostBinding, Output, Input, HostListener, Directive, ViewEncapsulation, inject, ElementRef, SkipSelf, Optional, ContentChildren, NgModule, signal } from '@angular/core';
5
+ import { EventEmitter, HostListener, Input, Output, HostBinding, Inject, ChangeDetectionStrategy, Component, Directive, ViewEncapsulation, inject, ElementRef, ContentChildren, SkipSelf, Optional, NgModule, signal } from '@angular/core';
6
6
  import { fromEvent, BehaviorSubject } from 'rxjs';
7
7
  import { filter } from 'rxjs/operators';
8
8
  import * as i2 from '@daffodil/design';
9
9
  import { daffFocusableElementsSelector, DaffOpenableDirective } from '@daffodil/design';
10
- import { trigger, state, style, transition, animate } from '@angular/animations';
10
+ import { trigger, state, transition, style, animate } from '@angular/animations';
11
11
  import { FaIconComponent } from '@fortawesome/angular-fontawesome';
12
12
  import { faTimes } from '@fortawesome/free-solid-svg-icons';
13
13
  import { createSingleInjectionToken } from '@daffodil/core';
@@ -249,12 +249,12 @@ class DaffSidebarComponent {
249
249
  toggle() {
250
250
  this.openDirective.toggle();
251
251
  }
252
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.ConfigurableFocusTrapFactory }, { token: i2.DaffFocusStackService }, { token: i2.DaffOpenableDirective }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
253
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: DaffSidebarComponent, isStandalone: true, selector: "daff-sidebar", inputs: { side: "side", mode: "mode" }, outputs: { escapePressed: "escapePressed" }, host: { listeners: { "@transformSidebar.start": "onAnimationStart($event)", "@transformSidebar.done": "onAnimationComplete($event)" }, properties: { "class": "this.classes", "@transformSidebar": "this.transformSidebar" } }, hostDirectives: [{ directive: i2.DaffOpenableDirective, inputs: ["open", "open"], outputs: ["toggled", "toggled"] }], ngImport: i0, template: "<ng-content select=\"daff-sidebar-header\"></ng-content>\n<div class=\"daff-sidebar__body\">\n\t<ng-content></ng-content>\n</div>\n<ng-content select=\"daff-sidebar-footer\"></ng-content>", styles: [":host{display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;width:15rem}:host.left{width:var(--daff-sidebar-left-width, 15rem)}:host.right{width:var(--daff-sidebar-right-width, 15rem)}:host.side-fixed{visibility:hidden;position:fixed;bottom:0;z-index:5;top:var(--daff-sidebar-side-fixed-top-shift);height:calc(100dvh - var(--daff-sidebar-side-fixed-top-shift))}:host.side-fixed.left{left:0}:host.side-fixed.right{right:0}@media (min-width: 1024px){:host.side-fixed{visibility:visible}}:host.over,:host.under{position:fixed;top:0;bottom:0}:host.over.left,:host.under.left{left:0}:host.over.right,:host.under.right{right:0}:host.over{z-index:7}:host.under{z-index:2}:host-context(daff-sidebar-viewport daff-sidebar-viewport).side-fixed{position:sticky}:host-context(.daff-sidebar-viewport.beside).side-fixed{top:0;height:100%}.daff-sidebar__body{flex-grow:1;height:100%;overflow-y:auto}\n"], animations: [
252
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.ConfigurableFocusTrapFactory }, { token: i2.DaffFocusStackService }, { token: i2.DaffOpenableDirective }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
253
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: DaffSidebarComponent, isStandalone: true, selector: "daff-sidebar", inputs: { side: "side", mode: "mode" }, outputs: { escapePressed: "escapePressed" }, host: { listeners: { "@transformSidebar.start": "onAnimationStart($event)", "@transformSidebar.done": "onAnimationComplete($event)" }, properties: { "class": "this.classes", "@transformSidebar": "this.transformSidebar" } }, hostDirectives: [{ directive: i2.DaffOpenableDirective, inputs: ["open", "open"], outputs: ["toggled", "toggled"] }], ngImport: i0, template: "<ng-content select=\"daff-sidebar-header\"></ng-content>\n<div class=\"daff-sidebar__body\">\n\t<ng-content></ng-content>\n</div>\n<ng-content select=\"daff-sidebar-footer\"></ng-content>", styles: [":host{display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;width:15rem}:host.left{width:var(--daff-sidebar-left-width, 15rem)}:host.right{width:var(--daff-sidebar-right-width, 15rem)}:host.side-fixed{visibility:hidden;position:fixed;bottom:0;z-index:5;top:var(--daff-sidebar-side-fixed-top-shift);height:calc(100dvh - var(--daff-sidebar-side-fixed-top-shift))}:host.side-fixed.left{left:0}:host.side-fixed.right{right:0}@media (min-width: 1024px){:host.side-fixed{visibility:visible}}:host.over,:host.under{position:fixed;top:0;bottom:0}:host.over.left,:host.under.left{left:0}:host.over.right,:host.under.right{right:0}:host.over{z-index:7}:host.under{z-index:2}:host-context(daff-sidebar-viewport daff-sidebar-viewport).side-fixed{position:sticky}:host-context(.daff-sidebar-viewport.beside).side-fixed{top:0;height:100%}.daff-sidebar__body{flex-grow:1;height:100%;overflow-y:auto}\n"], animations: [
254
254
  daffSidebarAnimations.transformSidebar,
255
255
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
256
256
  }
257
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarComponent, decorators: [{
257
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarComponent, decorators: [{
258
258
  type: Component,
259
259
  args: [{ selector: 'daff-sidebar', changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [{
260
260
  directive: DaffOpenableDirective,
@@ -301,10 +301,10 @@ class DaffSidebarFooterComponent {
301
301
  */
302
302
  this.class = true;
303
303
  }
304
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
305
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: DaffSidebarFooterComponent, isStandalone: true, selector: "daff-sidebar-footer", host: { properties: { "class.daff-sidebar-footer": "this.class" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;width:100%;flex-grow:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
304
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
305
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: DaffSidebarFooterComponent, isStandalone: true, selector: "daff-sidebar-footer", host: { properties: { "class.daff-sidebar-footer": "this.class" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;width:100%;flex-grow:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
306
306
  }
307
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarFooterComponent, decorators: [{
307
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarFooterComponent, decorators: [{
308
308
  type: Component,
309
309
  args: [{ selector: 'daff-sidebar-footer', template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;width:100%;flex-grow:0}\n"] }]
310
310
  }], propDecorators: { class: [{
@@ -319,10 +319,10 @@ class DaffSidebarHeaderActionDirective {
319
319
  */
320
320
  this.class = true;
321
321
  }
322
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarHeaderActionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
323
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.5", type: DaffSidebarHeaderActionDirective, isStandalone: true, selector: "[daffSidebarHeaderAction]", host: { properties: { "class.daff-sidebar-header__action": "this.class" } }, ngImport: i0 }); }
322
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarHeaderActionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
323
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.11", type: DaffSidebarHeaderActionDirective, isStandalone: true, selector: "[daffSidebarHeaderAction]", host: { properties: { "class.daff-sidebar-header__action": "this.class" } }, ngImport: i0 }); }
324
324
  }
325
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarHeaderActionDirective, decorators: [{
325
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarHeaderActionDirective, decorators: [{
326
326
  type: Directive,
327
327
  args: [{
328
328
  selector: '[daffSidebarHeaderAction]',
@@ -348,10 +348,10 @@ class DaffSidebarHeaderTitleDirective {
348
348
  */
349
349
  this.class = true;
350
350
  }
351
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarHeaderTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
352
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.5", type: DaffSidebarHeaderTitleDirective, isStandalone: true, selector: "[daffSidebarHeaderTitle]", host: { properties: { "class.daff-sidebar-header__title": "this.class" } }, ngImport: i0 }); }
351
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarHeaderTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
352
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.11", type: DaffSidebarHeaderTitleDirective, isStandalone: true, selector: "[daffSidebarHeaderTitle]", host: { properties: { "class.daff-sidebar-header__title": "this.class" } }, ngImport: i0 }); }
353
353
  }
354
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarHeaderTitleDirective, decorators: [{
354
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarHeaderTitleDirective, decorators: [{
355
355
  type: Directive,
356
356
  args: [{
357
357
  selector: '[daffSidebarHeaderTitle]',
@@ -393,10 +393,10 @@ class DaffSidebarHeaderComponent {
393
393
  onCloseSidebar(event) {
394
394
  this.closeSidebar.emit();
395
395
  }
396
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
397
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: DaffSidebarHeaderComponent, isStandalone: true, selector: "daff-sidebar-header", inputs: { dismissible: "dismissible" }, outputs: { closeSidebar: "closeSidebar" }, host: { properties: { "class.daff-sidebar-header": "this.class", "class.dismissible": "this.dismissible" } }, ngImport: i0, template: "<button class=\"daff-sidebar-header__close-icon\" aria-label=\"Close Sidebar\" *ngIf=\"dismissible\" (click)=\"onCloseSidebar($event)\">\n <fa-icon [icon]=\"faTimes\" [fixedWidth]=\"true\" size=\"lg\"></fa-icon>\n</button>\n<div class=\"daff-sidebar-header__content\">\n <ng-content></ng-content>\n</div>", styles: [".daff-sidebar-header{display:flex;align-items:center;position:relative;padding:0 1rem;min-height:3rem;max-height:3rem;width:100%}.daff-sidebar-header__close-icon{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;appearance:none;background:none;border:none;color:currentColor;height:3rem;margin:0;min-height:3rem;min-width:3rem;padding:0;width:3rem;left:initial;right:0;top:0}.daff-sidebar-header__title,.daff-sidebar-header__content{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1rem;font-weight:500}.daff-sidebar-header__close-icon+.daff-sidebar-header__content{margin:0 1.75rem 0 0}.daff-sidebar.right .daff-sidebar-header__close-icon{left:0;right:initial}.daff-sidebar.right .daff-sidebar-header__close-icon+.daff-sidebar-header__title,.daff-sidebar.right .daff-sidebar-header__close-icon+.daff-sidebar-header__content{margin:0 0 0 1.75rem}\n"], dependencies: [{ kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
396
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
397
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: DaffSidebarHeaderComponent, isStandalone: true, selector: "daff-sidebar-header", inputs: { dismissible: "dismissible" }, outputs: { closeSidebar: "closeSidebar" }, host: { properties: { "class.daff-sidebar-header": "this.class", "class.dismissible": "this.dismissible" } }, ngImport: i0, template: "<button class=\"daff-sidebar-header__close-icon\" aria-label=\"Close Sidebar\" *ngIf=\"dismissible\" (click)=\"onCloseSidebar($event)\">\n <fa-icon [icon]=\"faTimes\" [fixedWidth]=\"true\" size=\"lg\"></fa-icon>\n</button>\n<div class=\"daff-sidebar-header__content\">\n <ng-content></ng-content>\n</div>", styles: [".daff-sidebar-header{display:flex;align-items:center;position:relative;padding:0 1rem;min-height:3rem;max-height:3rem;width:100%}.daff-sidebar-header__close-icon{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;appearance:none;background:none;border:none;color:currentColor;height:3rem;margin:0;min-height:3rem;min-width:3rem;padding:0;width:3rem;left:initial;right:0;top:0}.daff-sidebar-header__title,.daff-sidebar-header__content{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1rem;font-weight:500}.daff-sidebar-header__close-icon+.daff-sidebar-header__content{margin:0 1.75rem 0 0}.daff-sidebar.right .daff-sidebar-header__close-icon{left:0;right:initial}.daff-sidebar.right .daff-sidebar-header__close-icon+.daff-sidebar-header__title,.daff-sidebar.right .daff-sidebar-header__close-icon+.daff-sidebar-header__content{margin:0 0 0 1.75rem}\n"], dependencies: [{ kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
398
398
  }
399
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarHeaderComponent, decorators: [{
399
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarHeaderComponent, decorators: [{
400
400
  type: Component,
401
401
  args: [{ selector: 'daff-sidebar-header', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
402
402
  FaIconComponent,
@@ -608,12 +608,12 @@ class DaffSidebarViewportBackdropComponent {
608
608
  onBackdropClicked() {
609
609
  this.backdropClicked.emit();
610
610
  }
611
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarViewportBackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
612
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: DaffSidebarViewportBackdropComponent, isStandalone: true, selector: "daff-sidebar-viewport-backdrop", inputs: { transparent: "transparent", interactable: "interactable", fullscreen: "fullscreen" }, outputs: { backdropClicked: "backdropClicked" }, host: { listeners: { "@fadeBackdrop.done": "animationDone($event)", "@fadeBackdrop.start": "animationStart($event)", "click": "onBackdropClicked()" }, properties: { "class.interactable": "this.interactableClass", "class.transparent": "this.transparent", "class.fullscreen": "this.fullscreen", "@fadeBackdrop": "this.fadeBackdropTrigger" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;background:#0000004d;-webkit-tap-highlight-color:rgba(0,0,0,0);position:absolute;pointer-events:auto;height:100%;width:100%;visibility:hidden;z-index:6}:host.interactable{visibility:visible;pointer-events:all;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host.transparent{background:none}:host:focus,:host:active,:host:visited{outline:0}:host.fullscreen{position:absolute}\n"], animations: [
611
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarViewportBackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
612
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: DaffSidebarViewportBackdropComponent, isStandalone: true, selector: "daff-sidebar-viewport-backdrop", inputs: { transparent: "transparent", interactable: "interactable", fullscreen: "fullscreen" }, outputs: { backdropClicked: "backdropClicked" }, host: { listeners: { "@fadeBackdrop.done": "animationDone($event)", "@fadeBackdrop.start": "animationStart($event)", "click": "onBackdropClicked()" }, properties: { "class.interactable": "this.interactableClass", "class.transparent": "this.transparent", "class.fullscreen": "this.fullscreen", "@fadeBackdrop": "this.fadeBackdropTrigger" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;background:#0000004d;-webkit-tap-highlight-color:rgba(0,0,0,0);position:absolute;pointer-events:auto;height:100%;width:100%;visibility:hidden;z-index:6}:host.interactable{visibility:visible;pointer-events:all;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host.transparent{background:none}:host:focus,:host:active,:host:visited{outline:0}:host.fullscreen{position:absolute}\n"], animations: [
613
613
  daffSidebarViewportBackdropAnimations.fadeBackdrop,
614
614
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
615
615
  }
616
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarViewportBackdropComponent, decorators: [{
616
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarViewportBackdropComponent, decorators: [{
617
617
  type: Component,
618
618
  args: [{ selector: 'daff-sidebar-viewport-backdrop', template: '<ng-content></ng-content>', animations: [
619
619
  daffSidebarViewportBackdropAnimations.fadeBackdrop,
@@ -806,8 +806,8 @@ class DaffSidebarViewportComponent {
806
806
  _backdropClicked() {
807
807
  this.backdropClicked.emit();
808
808
  }
809
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarViewportComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: DAFF_SIDEBAR_SCROLL_TOKEN, skipSelf: true }, { token: DaffSidebarViewportComponent, optional: true, skipSelf: true }, { token: DAFF_SIDEBAR_SCROLL_TOKEN }], target: i0.ɵɵFactoryTarget.Component }); }
810
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: DaffSidebarViewportComponent, isStandalone: true, selector: "daff-sidebar-viewport", inputs: { navPlacement: "navPlacement" }, outputs: { backdropClicked: "backdropClicked" }, host: { properties: { "class.daff-sidebar-viewport": "this.hostClass", "class": "this.classes" } }, providers: [
809
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarViewportComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: DAFF_SIDEBAR_SCROLL_TOKEN, skipSelf: true }, { token: DaffSidebarViewportComponent, optional: true, skipSelf: true }, { token: DAFF_SIDEBAR_SCROLL_TOKEN }], target: i0.ɵɵFactoryTarget.Component }); }
810
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: DaffSidebarViewportComponent, isStandalone: true, selector: "daff-sidebar-viewport", inputs: { navPlacement: "navPlacement" }, outputs: { backdropClicked: "backdropClicked" }, host: { properties: { "class.daff-sidebar-viewport": "this.hostClass", "class": "this.classes" } }, providers: [
811
811
  {
812
812
  provide: DAFF_SIDEBAR_SCROLL_TOKEN,
813
813
  useFactory: daffSidebarViewportScrollFactory,
@@ -816,7 +816,7 @@ class DaffSidebarViewportComponent {
816
816
  daffSidebarAnimations.transformContent,
817
817
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
818
818
  }
819
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarViewportComponent, decorators: [{
819
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarViewportComponent, decorators: [{
820
820
  type: Component,
821
821
  args: [{ selector: 'daff-sidebar-viewport', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
822
822
  daffSidebarAnimations.transformContent,
@@ -862,8 +862,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
862
862
  * @deprecated in favor of {@link DAFF_SIDEBAR_COMPONENTS}. Deprecated in version 0.78.0. Will be removed in version 1.0.0.
863
863
  */
864
864
  class DaffSidebarModule {
865
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
866
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarModule, imports: [CommonModule,
865
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
866
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarModule, imports: [CommonModule,
867
867
  A11yModule,
868
868
  DaffSidebarComponent,
869
869
  DaffSidebarViewportComponent,
@@ -876,11 +876,11 @@ class DaffSidebarModule {
876
876
  DaffSidebarFooterComponent,
877
877
  DaffSidebarHeaderTitleDirective,
878
878
  DaffSidebarHeaderActionDirective] }); }
879
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarModule, imports: [CommonModule,
879
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarModule, imports: [CommonModule,
880
880
  A11yModule,
881
881
  DaffSidebarHeaderComponent] }); }
882
882
  }
883
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: DaffSidebarModule, decorators: [{
883
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSidebarModule, decorators: [{
884
884
  type: NgModule,
885
885
  args: [{
886
886
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-design-sidebar.mjs","sources":["../../../libs/design/sidebar/src/sidebar/is-opening.ts","../../../libs/design/sidebar/src/animation/sidebar-animation.ts","../../../libs/design/sidebar/src/animation/sidebar-animation-state.ts","../../../libs/design/sidebar/src/animation/sidebar-animation-width.ts","../../../libs/design/sidebar/src/sidebar/sidebar.component.ts","../../../libs/design/sidebar/src/sidebar/sidebar.component.html","../../../libs/design/sidebar/src/sidebar-footer/sidebar-footer.component.ts","../../../libs/design/sidebar/src/sidebar-header/sidebar-header-action/sidebar-header-action.directive.ts","../../../libs/design/sidebar/src/sidebar-header/sidebar-header-title/sidebar-header-title.directive.ts","../../../libs/design/sidebar/src/sidebar-header/sidebar-header.component.ts","../../../libs/design/sidebar/src/sidebar-header/sidebar-header.component.html","../../../libs/design/sidebar/src/sidebar-viewport/helper/has-parent-viewport.ts","../../../libs/design/sidebar/src/sidebar-viewport/nav-placement.ts","../../../libs/design/sidebar/src/sidebar-viewport/scroll-token/scroll.token.ts","../../../libs/design/sidebar/src/sidebar-viewport/utils/backdrop-interactable.ts","../../../libs/design/sidebar/src/sidebar-viewport/utils/content-pad.ts","../../../libs/design/sidebar/src/sidebar-viewport/utils/content-shift.ts","../../../libs/design/sidebar/src/animation/sidebar-viewport-animation-state.ts","../../../libs/design/sidebar/src/sidebar-viewport-backdrop/animation/backdrop-animation.ts","../../../libs/design/sidebar/src/sidebar-viewport-backdrop/animation/backdrop-animation-state.ts","../../../libs/design/sidebar/src/sidebar-viewport-backdrop/sidebar-viewport-backdrop.component.ts","../../../libs/design/sidebar/src/sidebar-viewport/sidebar-viewport.component.ts","../../../libs/design/sidebar/src/sidebar-viewport/sidebar-viewport.component.html","../../../libs/design/sidebar/src/sidebar.module.ts","../../../libs/design/sidebar/src/service/sidebar.service.ts","../../../libs/design/sidebar/src/helper/is-docked-mode.ts","../../../libs/design/sidebar/src/helper/is-floating-mode.ts","../../../libs/design/sidebar/src/sidebar.ts","../../../libs/design/sidebar/src/daffodil-design-sidebar.ts"],"sourcesContent":["import { DaffSidebarAnimationState } from '../animation/sidebar-animation-state';\n\n/**\n * Determine whether or animation states are going to an open state from a non-open state.\n */\nexport const isOpening = (fromState: DaffSidebarAnimationState, toState: DaffSidebarAnimationState): boolean => {\n if(fromState === 'under-open' && toState === 'open' || fromState === 'open' && toState === 'under-open') {\n return false;\n }\n\n if(toState === 'under-open' || toState === 'open') {\n return true;\n }\n return false;\n};\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nconst duration = '200ms';\nconst sidebarAnimateInTransition = 'cubic-bezier(0.0, 0.0, 0.2, 1)';\nconst sidebarAnimateOutTransition = 'cubic-bezier(0.4, 0.0, 1, 1)';\n\nexport const daffSidebarAnimations: {\n readonly transformSidebar: AnimationTriggerMetadata;\n readonly transformContent: AnimationTriggerMetadata;\n readonly backdropTrigger: AnimationTriggerMetadata;\n} = {\n transformSidebar: trigger('transformSidebar', [\n // We remove the `transform` here completely, rather than setting it to zero, because\n // 3d transforms causes text to appear blurry on IE and Edge.\n state('open', style({\n transform: 'none',\n })),\n state('closed', style({\n transform: 'translateX({{width}})',\n }), { params: { width: '-240px' }}),\n transition('open => closed', animate(duration + ' ' + sidebarAnimateOutTransition)),\n transition('closed => open', animate(duration + ' ' + sidebarAnimateInTransition)),\n ]),\n transformContent: trigger('transformContent', [\n // We remove the `transform` here completely, rather than setting it to zero, because\n // 3d transforms causes text to appear blurry on IE and Edge.\n state('closed', style({\n transform: 'none',\n })),\n state('open', style({\n transform: 'translateX({{shift}})',\n }), { params: { shift: '-240px' }}),\n transition('open => closed', animate(duration + ' ' + sidebarAnimateInTransition)),\n transition('closed => open', animate(duration + ' ' + sidebarAnimateOutTransition)),\n ]),\n backdropTrigger: trigger('backdropTrigger', [\n state('open', style({\n opacity: 1,\n })),\n state('closed', style({\n opacity: 0,\n })),\n transition('open => closed', animate(duration + ' ' + sidebarAnimateOutTransition)),\n transition('closed => open', animate(duration + ' ' + sidebarAnimateInTransition)),\n ]),\n};\n\nexport enum DaffSidebarAnimationStates {\n OPEN = 'open',\n CLOSED = 'closed',\n UNDEROPEN = 'under-open',\n UNDERCLOSED = 'under-closed',\n SIDEFIXEDOPEN = 'side-fixed-open',\n SIDEFIXEDCLOSED = 'side-fixed-closed',\n NONE = 'none'\n}\n","import { DaffSidebarMode } from '../helper/sidebar-mode';\n\nexport type DaffSidebarAnimationState =\n'open' | 'closed' | 'under-open' | 'under-closed' | 'side-fixed-open' | 'side-fixed-closed' | 'none';\n\nexport const getAnimationState = (open: boolean, mode: DaffSidebarMode): DaffSidebarAnimationState => {\n if(mode === 'side') {\n return 'none';\n }\n\n if(mode === 'side-fixed' && open) {\n return 'side-fixed-open';\n }\n\n if(mode === 'side-fixed' && !open) {\n return 'side-fixed-closed';\n }\n\n if(open && mode === 'under') {\n return 'under-open';\n }\n\n if(!open && mode === 'under') {\n return 'under-closed';\n }\n\n if(open) {\n return 'open';\n } else {\n return 'closed';\n }\n};\n","import { DaffSidebarSide } from '../helper/sidebar-side';\n\nexport const getSidebarAnimationWidth =\n (side: DaffSidebarSide, width: number): string => side === 'left' ? -1 * width + 'px' : width + 'px';\n","import { AnimationEvent } from '@angular/animations';\nimport {\n ConfigurableFocusTrap,\n ConfigurableFocusTrapFactory,\n} from '@angular/cdk/a11y';\nimport { DOCUMENT } from '@angular/common';\nimport {\n Component,\n NgZone,\n ElementRef,\n Output,\n EventEmitter,\n HostBinding,\n ChangeDetectionStrategy,\n Input,\n HostListener,\n Inject,\n} from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport {\n daffFocusableElementsSelector,\n DaffFocusStackService,\n DaffOpenable,\n DaffOpenableDirective,\n} from '@daffodil/design';\n\nimport { isOpening } from './is-opening';\nimport { daffSidebarAnimations } from '../animation/sidebar-animation';\nimport {\n DaffSidebarAnimationState,\n getAnimationState,\n} from '../animation/sidebar-animation-state';\nimport { getSidebarAnimationWidth } from '../animation/sidebar-animation-width';\nimport { DaffSidebarMode } from '../helper/sidebar-mode';\nimport { DaffSidebarSide } from '../helper/sidebar-side';\n\n/**\n * DaffSidebarComponent is heavily based upon the work done by the `@angular/components`\n * team on `mat-drawer` and `mat-sidenav`. It's intended to be a simplified version\n * (with a different design) of `mat-drawer`.\n *\n * ```html\n * <daff-sidebar></daff-sidebar>\n * ```\n */\n@Component({\n selector: 'daff-sidebar',\n templateUrl: './sidebar.component.html',\n styleUrls: ['./sidebar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [{\n directive: DaffOpenableDirective,\n inputs: ['open'],\n outputs: ['toggled'],\n }],\n animations: [\n daffSidebarAnimations.transformSidebar,\n ],\n})\nexport class DaffSidebarComponent implements DaffOpenable {\n /**\n * @docs-private\n *\n * The CSS classes set.\n */\n @HostBinding('class') get classes() {\n return {\n 'daff-sidebar': true,\n [this.side]: true,\n [this.mode]: true,\n };\n };\n\n /**\n * @docs-private\n *\n * The animation state of the sidebar.\n */\n @HostBinding('@transformSidebar') get transformSidebar() {\n return {\n value: getAnimationState(this.openDirective.open, this.mode),\n params: { width: getSidebarAnimationWidth(this.side, this.width) },\n };\n }\n\n /**\n * Event fired when `ESC` key is pressed when the sidebar has focus.\n */\n @Output() escapePressed: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * What side of the viewport to show the sidebar on.\n */\n @Input() side: DaffSidebarSide = 'left';\n\n /**\n * The mode of the sidebar.\n */\n @Input() mode: DaffSidebarMode = 'side';\n\n /**\n * @docs-private\n *\n * The width of the sidebar.\n */\n get width() {\n return this._elementRef.nativeElement.offsetWidth;\n }\n\n /**\n * @docs-private\n */\n get open() {\n return this.openDirective.open;\n }\n\n constructor(\n private _elementRef: ElementRef<HTMLElement>,\n private _ngZone: NgZone,\n private _focusTrapFactory: ConfigurableFocusTrapFactory,\n private _focusStack: DaffFocusStackService,\n private openDirective: DaffOpenableDirective,\n @Inject(DOCUMENT) private _doc: any,\n ) {\n /**\n * Listen to `keydown` events outside the zone so that change detection is not run every\n * time a key is pressed. Instead we re-enter the zone only if the `ESC` key is pressed.\n *\n */\n this._ngZone.runOutsideAngular(() => {\n fromEvent<KeyboardEvent>(this._elementRef.nativeElement, 'keydown').pipe(\n filter(event => event.key === 'Escape'),\n ).subscribe(event => this._ngZone.run(() => {\n this.escapePressed.emit();\n event.stopPropagation();\n }));\n });\n }\n\n private _focusTrap: ConfigurableFocusTrap;\n\n /**\n * @docs-private\n *\n * Animation event that can be used to hook into when the transformSidebar\n * animation begins. This is used in sidebar to determine when to show the\n * visibility of the sidebar so that the animation does not jump as the element is shown.\n */\n @HostListener('@transformSidebar.start', ['$event']) onAnimationStart(e: AnimationEvent) {\n if (e.toState === 'open' || e.toState === 'under-open' || e.toState === 'side-fixed-open') {\n this._elementRef.nativeElement.style.visibility = 'visible';\n }\n }\n\n /**\n * @docs-private\n *\n * Animation event that can be used to hook into when the\n * transformSidebar animation is complete.\n */\n @HostListener('@transformSidebar.done', ['$event']) onAnimationComplete(e: AnimationEvent) {\n if(isOpening(<DaffSidebarAnimationState>e.fromState, <DaffSidebarAnimationState>e.toState)) {\n this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);\n\n const focusableChild = (<HTMLElement>this._elementRef.nativeElement.querySelector(daffFocusableElementsSelector));\n\n this._focusStack.push(this._doc.activeElement);\n\n if(focusableChild) {\n focusableChild.focus();\n } else {\n this._elementRef.nativeElement.tabIndex = 0;\n (<HTMLElement>this._elementRef.nativeElement).focus();\n }\n } else {\n if(this._focusTrap) {\n this._focusTrap.destroy();\n this._focusTrap = undefined;\n this._focusStack.pop();\n }\n }\n\n /**\n * @docs-private\n *\n * This is used in sidebar to determine when to hide the visibility\n * of the sidebar so that the animation does not jump as the element is hidden.\n */\n if (e.toState === 'closed' || e.toState === 'under-closed' || e.toState === 'side-fixed-closed') {\n this._elementRef.nativeElement.style.visibility = 'hidden';\n } else {\n this._elementRef.nativeElement.style.visibility = null;\n }\n }\n\n /**\n * Reveal the contents of the sidebar.\n */\n reveal() {\n this.openDirective.reveal();\n }\n\n /**\n * Hide the contents of the sidebar.\n */\n hide() {\n this.openDirective.hide();\n }\n\n /**\n * Toggle the visibility of the sidebar.\n */\n toggle() {\n this.openDirective.toggle();\n }\n}\n","<ng-content select=\"daff-sidebar-header\"></ng-content>\n<div class=\"daff-sidebar__body\">\n\t<ng-content></ng-content>\n</div>\n<ng-content select=\"daff-sidebar-footer\"></ng-content>","import {\n Component,\n HostBinding,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n/**\n * Sidebar footer is a child component of the sidebar that is used to display a\n * footer container, positioned at the bottom of a sidebar.\n *\n * ```html\n * <daff-sidebar-footer></daff-sidebar-footer>\n * ```\n */\n@Component({\n selector: 'daff-sidebar-footer',\n template: '<ng-content></ng-content>',\n styleUrls: ['./sidebar-footer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffSidebarFooterComponent {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-sidebar-footer') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffSidebarHeaderAction]',\n standalone: true,\n})\nexport class DaffSidebarHeaderActionDirective {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-sidebar-header__action') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n/**\n * Sidebar header title is a child directive of `DaffSidebarHeaderComponent`\n * that can be used to provide a title for the sidebar.\n *\n * ```html\n * <div daffSidebarHeaderTitle>Title</div>\n * ```\n */\n@Directive({\n selector: '[daffSidebarHeaderTitle]',\n})\nexport class DaffSidebarHeaderTitleDirective {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-sidebar-header__title') class = true;\n}\n","import { NgIf } from '@angular/common';\nimport {\n Component,\n HostBinding,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n Input,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faTimes } from '@fortawesome/free-solid-svg-icons';\n\n/**\n * Sidebar header is a child component of the sidebar that is used to display a header container,\n * positioned at the top of a sidebar. It includes an optional title (`[daffSidebarHeaderTitle]`)\n * slot and a slot to render any custom content.\n *\n * ```html\n * <daff-sidebar-header></daff-sidebar-header>\n * ```\n */\n@Component({\n selector: 'daff-sidebar-header',\n templateUrl: './sidebar-header.component.html',\n styleUrls: ['./sidebar-header.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FaIconComponent,\n NgIf,\n ],\n})\nexport class DaffSidebarHeaderComponent {\n /**\n * @docs-private\n */\n faTimes = faTimes;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-sidebar-header') class = true;\n\n /** Whether or not a sidebar header should display the close icon. */\n @Input() @HostBinding('class.dismissible') dismissible = false;\n\n /**\n * Output event triggered when the close icon is clicked.\n */\n @Output() closeSidebar: EventEmitter<void> = new EventEmitter();\n\n /**\n * @docs-private\n */\n onCloseSidebar(event: Event) {\n this.closeSidebar.emit();\n }\n}\n","<button class=\"daff-sidebar-header__close-icon\" aria-label=\"Close Sidebar\" *ngIf=\"dismissible\" (click)=\"onCloseSidebar($event)\">\n <fa-icon [icon]=\"faTimes\" [fixedWidth]=\"true\" size=\"lg\"></fa-icon>\n</button>\n<div class=\"daff-sidebar-header__content\">\n <ng-content></ng-content>\n</div>","/**\n * Fallback function for determining whether or not a viewport has a parent viewport.\n * This is really only used in the Daffodil docs when the injector heirarchy\n * doesn't act as anticipated as a result of custom elements.\n */\nexport const hasParentViewport = (element: HTMLElement) => {\n let currentElement = element.parentElement;\n\n while (currentElement !== null) {\n if (currentElement.tagName === 'DAFF-SIDEBAR-VIEWPORT') {\n return true;\n }\n currentElement = currentElement.parentElement;\n }\n\n return false;\n};\n","/**\n * The placement of the nav in relation to the sidebar.\n * See {@link DaffNavPlacementEnum }\n */\nexport type DaffNavPlacement = 'above' | 'beside';\n\n/**\n * The placement of the nav in relation to the sidebar.\n * See {@link DaffNavPlacement }\n */\nexport enum DaffNavPlacementEnum {\n ABOVE = 'above',\n BESIDE = 'beside',\n}\n","import { DOCUMENT } from '@angular/common';\nimport {\n ElementRef,\n inject,\n} from '@angular/core';\n\nimport { createSingleInjectionToken } from '@daffodil/core';\n\n/**\n * An interface that enables a user to enable or disable scrolling on sidebars.\n *\n * See {@link DAFF_SIDEBAR_SCROLL_TOKEN}\n */\nexport interface DaffSidebarScroll {\n enable(): void;\n disable(): void;\n}\n\nexport const {\n /**\n * An injection token that can be used within a sidebar to determine\n * what to do enabling and disabling scrolling. By default, the body\n * is the element where scrolling is controlled.\n */\n token: DAFF_SIDEBAR_SCROLL_TOKEN,\n /**\n * Provider function for {@link DAFF_SIDEBAR_SCROLL_TOKEN}.\n */\n provider: provideDaffSidebarScrollToken,\n} = createSingleInjectionToken<DaffSidebarScroll>(\n 'DAFF_SIDEBAR_SCROLL_TOKEN',\n {\n providedIn: 'root',\n factory: () => {\n const document = inject(DOCUMENT);\n return {\n enable: () => {\n document.body.style.overflow = null;\n },\n disable: () => {\n document.body.style.overflow = 'hidden';\n },\n };\n },\n },\n);\n\n\n/**\n * A factory function that return a DaffSidebarScroll\n * for the current sidebar viewport.\n *\n * See the providers of {@link DaffSidebarViewportComponent}\n */\nexport const daffSidebarViewportScrollFactory = (): DaffSidebarScroll => {\n const element = inject(ElementRef).nativeElement;\n return {\n enable: () => {\n element.style.overflow = null;\n },\n disable: () => {\n element.style.overflow = 'hidden';\n },\n };\n};\n","import { QueryList } from '@angular/core';\n\nimport { DaffSidebarComponent } from '../../sidebar/sidebar.component';\n\n/**\n * Determines, given a list of sidebars, whether or not the backdrop is interactable (typically clickable).\n */\nexport const sidebarViewportBackdropInteractable = (sidebars: QueryList<DaffSidebarComponent>): boolean => sidebars.reduce(\n (acc: boolean, sidebar) => ((sidebar.mode === 'over' || sidebar.mode === 'under') && sidebar.open) || acc,\n false);\n","import { QueryList } from '@angular/core';\n\nimport { DaffSidebarModeEnum } from '../../helper/sidebar-mode';\nimport { DaffSidebarSide } from '../../helper/sidebar-side';\nimport { DaffSidebarComponent } from '../../sidebar/sidebar.component';\n\n/**\n * Given a list of sidebars, compute the whether or not the content is padded.\n */\nexport const isSidebarViewportContentPadded = (sidebars: QueryList<DaffSidebarComponent>, side: DaffSidebarSide): boolean =>\n sidebars.reduce((acc: boolean, sidebar) => {\n if(!(sidebar.mode === DaffSidebarModeEnum.SideFixed && sidebar.open)) {\n return acc || false;\n }\n\n if(sidebar.side === side){\n return true;\n } else {\n // This component is \"stateless\", its possible to have two open \"under\" sidebars.\n // As such, we defer to \"left\" being open by default.\n return acc;\n }\n }, false);\n\n","import { QueryList } from '@angular/core';\n\nimport { DaffSidebarMode } from '../../helper/sidebar-mode';\nimport { DaffSidebarComponent } from '../../sidebar/sidebar.component';\n\nexport const isViewportContentShifted = (mode: DaffSidebarMode, open: boolean): boolean => (mode === 'under' && open);\n\n/**\n * Given a list of sidebars, compute the associated content shift.\n */\nexport const sidebarViewportContentShift = (sidebars: QueryList<DaffSidebarComponent>): number =>\n sidebars.reduce((acc: number, sidebar) => {\n if(!isViewportContentShifted(sidebar.mode, sidebar.open)) {\n return acc;\n }\n\n if(sidebar.side === 'left'){\n return sidebar.width;\n } else if (sidebar.side === 'right' && acc === 0) {\n return -1 * sidebar.width;\n } else {\n // This component is \"stateless\", its possible to have two open \"under\" sidebars.\n // As such, we defer to \"left\" being open by default.\n return acc;\n }\n }, 0);\n\n\n","import { AnimationStateWithParams } from '@daffodil/design';\n\nimport { DaffSidebarAnimationStates } from './sidebar-animation';\n\nexport type DaffSidebarViewportAnimationState = DaffSidebarAnimationStates.OPEN | DaffSidebarAnimationStates.CLOSED;\n\n\nexport interface DaffSidebarAnimationStateParams {\n shift: string;\n};\n\nexport type DaffSidebarViewportAnimationStateWithParams = AnimationStateWithParams<DaffSidebarViewportAnimationState, DaffSidebarAnimationStateParams>;\n\n\nexport const getSidebarViewportAnimationState = (open: boolean): DaffSidebarViewportAnimationState =>\n open ? DaffSidebarAnimationStates.OPEN : DaffSidebarAnimationStates.CLOSED;\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nconst animationDuration = '350ms';\nconst backdropTransitionOut = 'cubic-bezier(0.4, 0.0, 1, 1)';\nconst backdropTransitionIn = 'cubic-bezier(0.0, 0.0, 0.2, 1)';\n\nexport const daffSidebarViewportBackdropAnimations: {\n readonly fadeBackdrop: AnimationTriggerMetadata;\n} = {\n fadeBackdrop: trigger('fadeBackdrop', [\n state('interactable', style({ opacity: 1 })),\n state('non-interactable', style({ opacity: 0 })),\n transition('interactable => non-interactable', animate(animationDuration + ' ' + backdropTransitionOut)),\n transition('non-interactable => interactable', animate(animationDuration + ' ' + backdropTransitionIn)),\n transition(':enter', [\n style({ opacity: 0 }),\n animate(animationDuration + ' ' + backdropTransitionIn, style({ opacity: 1 })),\n ]),\n transition(':leave', [\n animate(animationDuration + ' ' + backdropTransitionOut, style({ opacity: 0 })),\n ]),\n ]),\n};\n","export type DaffSidebarViewportBackdropAnimationState = 'interactable' | 'non-interactable';\nexport const getAnimationState = (interactable: boolean): DaffSidebarViewportBackdropAnimationState=> interactable ? 'interactable' : 'non-interactable';\n","import { AnimationEvent } from '@angular/animations';\nimport {\n Component,\n Output,\n EventEmitter,\n Input,\n ChangeDetectionStrategy,\n HostListener,\n HostBinding,\n OnInit,\n} from '@angular/core';\n\nimport { daffSidebarViewportBackdropAnimations } from './animation/backdrop-animation';\nimport { getAnimationState } from './animation/backdrop-animation-state';\n\n@Component({\n selector: 'daff-sidebar-viewport-backdrop',\n template: '<ng-content></ng-content>',\n styleUrls: ['./sidebar-viewport-backdrop.component.scss'],\n animations: [\n daffSidebarViewportBackdropAnimations.fadeBackdrop,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffSidebarViewportBackdropComponent implements OnInit {\n\n /**\n * @docs-private\n */\n @HostBinding('class.interactable') interactableClass = true;\n\n /**\n * Determines whether or not the backdrop is transparent.\n */\n @Input() @HostBinding('class.transparent') transparent = false;\n\n /**\n * Determines whether or not the backdrop is interactable.\n */\n @Input() interactable = true;\n\n /**\n * Boolean property that determines whether or not the\n * backdrop should fill up its containing window.\n */\n @Input() @HostBinding('class.fullscreen') fullscreen = false;\n\n /**\n * Output event triggered when the backdrop is clicked.\n */\n @Output() backdropClicked: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * @docs-private\n */\n ngOnInit(): void {\n this.interactableClass = this.interactable;\n }\n\n /**\n * @docs-private\n *\n * Animation hook for that controls the backdrops\n * entrance and fade animations.\n */\n @HostBinding('@fadeBackdrop') get fadeBackdropTrigger() {\n return getAnimationState(this.interactable);\n }\n\n /**\n * @docs-private\n */\n @HostListener('@fadeBackdrop.done', ['$event'])\n animationDone(e: AnimationEvent) {\n this.interactableClass = !(e.toState === ':leave' || e.toState === 'non-interactable');\n }\n\n /**\n * @docs-private\n */\n @HostListener('@fadeBackdrop.start', ['$event'])\n animationStart(e: AnimationEvent) {\n if(e.toState === ':enter' || e.toState === 'interactable'){\n this.interactableClass = true;\n }\n }\n\n /**\n * @docs-private\n */\n @HostListener('click')\n onBackdropClicked(): void {\n this.backdropClicked.emit();\n }\n}\n","import { AnimationEvent } from '@angular/animations';\nimport {\n Component,\n Output,\n EventEmitter,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n ContentChildren,\n QueryList,\n AfterContentChecked,\n ElementRef,\n Input,\n HostBinding,\n Inject,\n SkipSelf,\n Optional,\n OnDestroy,\n} from '@angular/core';\n\nimport { hasParentViewport } from './helper/has-parent-viewport';\nimport {\n DaffNavPlacement,\n DaffNavPlacementEnum,\n} from './nav-placement';\nimport {\n DAFF_SIDEBAR_SCROLL_TOKEN,\n DaffSidebarScroll,\n daffSidebarViewportScrollFactory,\n} from './scroll-token/scroll.token';\nimport { sidebarViewportBackdropInteractable } from './utils/backdrop-interactable';\nimport { isSidebarViewportContentPadded } from './utils/content-pad';\nimport {\n isViewportContentShifted,\n sidebarViewportContentShift,\n} from './utils/content-shift';\nimport {\n DaffSidebarAnimationStates,\n daffSidebarAnimations,\n} from '../animation/sidebar-animation';\nimport {\n DaffSidebarViewportAnimationStateWithParams,\n getSidebarViewportAnimationState,\n} from '../animation/sidebar-viewport-animation-state';\nimport { DaffSidebarComponent } from '../sidebar/sidebar.component';\nimport { DaffSidebarViewportBackdropComponent } from '../sidebar-viewport-backdrop/sidebar-viewport-backdrop.component';\n\n/**\n * DaffSidebarViewportComponent serves as the container for managing sidebars across an entire application.\n * Because it's a functional component, it supports multiple simultaneously open sidebar and is designed to\n * handle these scenarios gracefully.\n *\n * > However, there is one key contraint: only one sidebar per **mode** is allowed\n * on each **side** (e.g., left or right) at any given time.\n *\n * If this constraint is violated, the component will throw an exception to prevent unintended behavior.\n *\n * ```html\n * <daff-sidebar-viewport>\n * <daff-sidebar></daff-sidebar>\n * <div>Site content</div>\n * </daff-sidebar-viewport>\n * ```\n */\n@Component({\n selector: 'daff-sidebar-viewport',\n templateUrl: './sidebar-viewport.component.html',\n styleUrls: ['./sidebar-viewport.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n daffSidebarAnimations.transformContent,\n ],\n providers: [\n {\n provide: DAFF_SIDEBAR_SCROLL_TOKEN,\n useFactory: daffSidebarViewportScrollFactory,\n },\n ],\n imports: [\n DaffSidebarViewportBackdropComponent,\n ],\n})\nexport class DaffSidebarViewportComponent implements AfterContentChecked, OnDestroy {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-sidebar-viewport') hostClass = true;\n\n /**\n * @docs-private\n */\n @HostBinding('class') get classes() {\n return {\n 'daff-sidebar-viewport': true,\n [this.navPlacement]: true,\n 'pad-left': this._isPaddedLeft,\n 'pad-right': this._isPaddedRight,\n };\n };\n\n /**\n * @docs-private\n */\n get isNavOnSide() {\n return this.navPlacement === DaffNavPlacementEnum.BESIDE;\n }\n\n /**\n * @docs-private\n */\n onContentAnimationStart(e: AnimationEvent) {\n if(e.toState === 'open') {\n this._elementRef.nativeElement.style.overflow = 'clip';\n }\n }\n\n /**\n * @docs-private\n */\n onContentAnimationDone(e: AnimationEvent) {\n if(e.toState === 'closed') {\n this._elementRef.nativeElement.style.overflow = null;\n }\n }\n\n /**\n * The placement of the nav in relation to the sidebar. Note that this is really only available when there is a `side-fixed` sidebar.\n */\n @Input() navPlacement: DaffNavPlacement = DaffNavPlacementEnum.ABOVE;\n\n constructor(\n private cdRef: ChangeDetectorRef,\n private _elementRef: ElementRef<HTMLElement>,\n @Inject(DAFF_SIDEBAR_SCROLL_TOKEN) @SkipSelf() private bodyScroll: DaffSidebarScroll,\n @Inject(DaffSidebarViewportComponent) @SkipSelf() @Optional() private parentViewport,\n @Inject(DAFF_SIDEBAR_SCROLL_TOKEN) private scroll: DaffSidebarScroll,\n ) { }\n\n /**\n * The list of sidebars in the viewport.\n *\n * @docs-private\n */\n @ContentChildren(DaffSidebarComponent, { descendants: false }) private sidebars: QueryList<DaffSidebarComponent>;\n\n /**\n * The number of pixels that the main content of the page should be shifted to\n * right when there are child sidebars.\n */\n private _shift = '0px';\n\n private _isPaddedLeft = false;\n\n private _isPaddedRight = false;\n\n /**\n * @docs-private\n *\n * Whether or not the backdrop is interactable\n */\n _backdropInteractable = false;\n\n /**\n * @docs-private\n *\n * The animation state\n */\n _animationState: DaffSidebarViewportAnimationStateWithParams = { value: DaffSidebarAnimationStates.CLOSED, params: { shift: '0px' }};\n\n /**\n * Event fired when the backdrop is clicked. This is often used to close the sidebar.\n */\n @Output() backdropClicked: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * @docs-private\n */\n ngAfterContentChecked() {\n const nextShift = sidebarViewportContentShift(this.sidebars) + 'px';\n if (this._shift !== nextShift) {\n this._shift = nextShift;\n\n this.updateAnimationState();\n this.cdRef.markForCheck();\n }\n const nextBackdropInteractable = sidebarViewportBackdropInteractable(this.sidebars);\n if (this._backdropInteractable !== nextBackdropInteractable) {\n this._backdropInteractable = nextBackdropInteractable;\n this.updateAnimationState();\n this.cdRef.markForCheck();\n if(nextBackdropInteractable) {\n if(!this.parentViewport && !hasParentViewport(this._elementRef.nativeElement)) {\n this.bodyScroll.disable();\n } else {\n this.scroll.disable();\n }\n } else { //if we are hiding the sidebars\n if(!this.parentViewport && !hasParentViewport(this._elementRef.nativeElement)) {\n this.bodyScroll.enable();\n } else {\n this.scroll.enable();\n }\n }\n };\n\n this._isPaddedLeft = isSidebarViewportContentPadded(this.sidebars, 'left');\n this._isPaddedRight = isSidebarViewportContentPadded(this.sidebars, 'right');\n }\n\n /**\n * @docs-private\n */\n ngOnDestroy() {\n if(!this.parentViewport && !hasParentViewport(this._elementRef.nativeElement)) {\n this.bodyScroll.enable();\n } else {\n this.scroll.enable();\n }\n }\n\n /**\n * @docs-private\n *\n * Updates the animation state of the viewport depending upon the state\n * of all sidebars within the viewport.\n */\n private updateAnimationState() {\n this._animationState = {\n value: getSidebarViewportAnimationState(\n this.sidebars.reduce((acc: boolean, sidebar) => acc || isViewportContentShifted(sidebar.mode, sidebar.open), false),\n ),\n params: { shift: this._shift },\n };\n }\n\n /**\n * @docs-private\n *\n * Called when the backdrop of the viewport is clicked upon.\n */\n _backdropClicked(): void {\n this.backdropClicked.emit();\n }\n}\n","<daff-sidebar-viewport-backdrop\n [@transformContent]=\"_animationState\"\n [interactable]=\"_backdropInteractable\"\n (backdropClicked)=\"_backdropClicked()\">\n</daff-sidebar-viewport-backdrop>\n\n<div class=\"daff-sidebar-viewport__nav\"\n [@transformContent]=\"_animationState\">\n <ng-content select=\"[daff-sidebar-viewport-nav]\"></ng-content>\n</div>\n\n<ng-content select=\"daff-sidebar:not([side=right])\"></ng-content>\n\n<div class=\"daff-sidebar-viewport__content\"\n [@transformContent]=\"_animationState\"\n (@transformContent.start)=\"onContentAnimationStart($event)\"\n (@transformContent.done)=\"onContentAnimationDone($event)\">\n <div class=\"daff-sidebar-viewport__inner\">\n <ng-content></ng-content>\n <div class=\"daff-sidebar-viewport__footer\">\n <ng-content select=\"[daff-sidebar-viewport-footer]\"></ng-content>\n </div>\n </div>\n</div>\n\n<ng-content select=\"daff-sidebar[side=right]\"></ng-content>\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffSidebarComponent } from './sidebar/sidebar.component';\nimport { DaffSidebarFooterComponent } from './sidebar-footer/sidebar-footer.component';\nimport { DaffSidebarHeaderActionDirective } from './sidebar-header/sidebar-header-action/sidebar-header-action.directive';\nimport { DaffSidebarHeaderTitleDirective } from './sidebar-header/sidebar-header-title/sidebar-header-title.directive';\nimport { DaffSidebarHeaderComponent } from './sidebar-header/sidebar-header.component';\nimport { DaffSidebarViewportComponent } from './sidebar-viewport/sidebar-viewport.component';\n\n/**\n * @deprecated in favor of {@link DAFF_SIDEBAR_COMPONENTS}. Deprecated in version 0.78.0. Will be removed in version 1.0.0.\n */\n@NgModule({\n imports: [\n CommonModule,\n A11yModule,\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n DaffSidebarHeaderComponent,\n DaffSidebarFooterComponent,\n DaffSidebarHeaderTitleDirective,\n DaffSidebarHeaderActionDirective,\n ],\n exports: [\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n DaffSidebarHeaderComponent,\n DaffSidebarFooterComponent,\n DaffSidebarHeaderTitleDirective,\n DaffSidebarHeaderActionDirective,\n ],\n})\nexport class DaffSidebarModule { }\n","import {\n Signal,\n signal,\n} from '@angular/core';\nimport {\n BehaviorSubject,\n Observable,\n} from 'rxjs';\n\nimport { DaffSidebarRegistration } from './registration.type';\n\n/**\n * A service that stores the open state and ID of the currently opened sidebar.\n *\n * A default sidebar ID can be passed to the constructor that will be the initial value of `$id`.\n */\nexport abstract class DaffSidebarService {\n protected _id$: BehaviorSubject<DaffSidebarRegistration['id']>;\n protected _open = signal(false);\n\n readonly id$: Observable<DaffSidebarRegistration['id']>;\n\n get isOpen(): Signal<boolean> {\n return this._open.asReadonly();\n }\n\n constructor(\n defaultId: DaffSidebarRegistration['id'] = null,\n ) {\n this._id$ = new BehaviorSubject<DaffSidebarRegistration['id']>(defaultId);\n\n this.id$ = this._id$.asObservable();\n }\n\n /**\n * Opens the specified sidebar.\n *\n * @param id The optional sidebar ID. If omitted the most recently passed opened sidebar ID will persist (or the default if none was passed).\n */\n open(id?: DaffSidebarRegistration['id']) {\n if (id) {\n this._id$.next(id);\n }\n this._open.set(true);\n };\n\n /**\n * Closes the sidebar. Does not clear the ID.\n */\n close() {\n this._open.set(false);\n }\n}\n","import { DaffSidebarModeEnum } from './sidebar-mode';\n\nconst DOCKED_MODES = [\n DaffSidebarModeEnum.Side,\n DaffSidebarModeEnum.SideFixed,\n];\n\n/**\n * Returns whether the passed mode is a docked mode, i.e. side or side-fixed.\n */\nexport const daffSidebarIsDockedMode = (mode: DaffSidebarModeEnum): boolean => DOCKED_MODES.includes(mode);\n","import { DaffSidebarModeEnum } from './sidebar-mode';\n\nconst FLOATING_MODES = [\n DaffSidebarModeEnum.Under,\n DaffSidebarModeEnum.Over,\n];\n\n/**\n * Returns whether the passed mode is a floating mode, i.e. under or over.\n */\nexport const daffSidebarIsFloatingMode = (mode: DaffSidebarModeEnum): boolean => FLOATING_MODES.includes(mode);\n","import { DaffSidebarComponent } from './sidebar/sidebar.component';\nimport { DaffSidebarFooterComponent } from './sidebar-footer/sidebar-footer.component';\nimport { DaffSidebarHeaderActionDirective } from './sidebar-header/sidebar-header-action/sidebar-header-action.directive';\nimport { DaffSidebarHeaderTitleDirective } from './sidebar-header/sidebar-header-title/sidebar-header-title.directive';\nimport { DaffSidebarHeaderComponent } from './sidebar-header/sidebar-header.component';\nimport { DaffSidebarViewportComponent } from './sidebar-viewport/sidebar-viewport.component';\n\n/**\n * @docs-private\n */\nexport const DAFF_SIDEBAR_COMPONENTS = <const> [\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n DaffSidebarHeaderComponent,\n DaffSidebarFooterComponent,\n DaffSidebarHeaderTitleDirective,\n DaffSidebarHeaderActionDirective,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["getAnimationState"],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-design-sidebar.mjs","sources":["../../../libs/design/sidebar/src/sidebar/is-opening.ts","../../../libs/design/sidebar/src/animation/sidebar-animation.ts","../../../libs/design/sidebar/src/animation/sidebar-animation-state.ts","../../../libs/design/sidebar/src/animation/sidebar-animation-width.ts","../../../libs/design/sidebar/src/sidebar/sidebar.component.ts","../../../libs/design/sidebar/src/sidebar/sidebar.component.html","../../../libs/design/sidebar/src/sidebar-footer/sidebar-footer.component.ts","../../../libs/design/sidebar/src/sidebar-header/sidebar-header-action/sidebar-header-action.directive.ts","../../../libs/design/sidebar/src/sidebar-header/sidebar-header-title/sidebar-header-title.directive.ts","../../../libs/design/sidebar/src/sidebar-header/sidebar-header.component.ts","../../../libs/design/sidebar/src/sidebar-header/sidebar-header.component.html","../../../libs/design/sidebar/src/sidebar-viewport/helper/has-parent-viewport.ts","../../../libs/design/sidebar/src/sidebar-viewport/nav-placement.ts","../../../libs/design/sidebar/src/sidebar-viewport/scroll-token/scroll.token.ts","../../../libs/design/sidebar/src/sidebar-viewport/utils/backdrop-interactable.ts","../../../libs/design/sidebar/src/sidebar-viewport/utils/content-pad.ts","../../../libs/design/sidebar/src/sidebar-viewport/utils/content-shift.ts","../../../libs/design/sidebar/src/animation/sidebar-viewport-animation-state.ts","../../../libs/design/sidebar/src/sidebar-viewport-backdrop/animation/backdrop-animation.ts","../../../libs/design/sidebar/src/sidebar-viewport-backdrop/animation/backdrop-animation-state.ts","../../../libs/design/sidebar/src/sidebar-viewport-backdrop/sidebar-viewport-backdrop.component.ts","../../../libs/design/sidebar/src/sidebar-viewport/sidebar-viewport.component.ts","../../../libs/design/sidebar/src/sidebar-viewport/sidebar-viewport.component.html","../../../libs/design/sidebar/src/sidebar.module.ts","../../../libs/design/sidebar/src/service/sidebar.service.ts","../../../libs/design/sidebar/src/helper/is-docked-mode.ts","../../../libs/design/sidebar/src/helper/is-floating-mode.ts","../../../libs/design/sidebar/src/sidebar.ts","../../../libs/design/sidebar/src/daffodil-design-sidebar.ts"],"sourcesContent":["import { DaffSidebarAnimationState } from '../animation/sidebar-animation-state';\n\n/**\n * Determine whether or animation states are going to an open state from a non-open state.\n */\nexport const isOpening = (fromState: DaffSidebarAnimationState, toState: DaffSidebarAnimationState): boolean => {\n if(fromState === 'under-open' && toState === 'open' || fromState === 'open' && toState === 'under-open') {\n return false;\n }\n\n if(toState === 'under-open' || toState === 'open') {\n return true;\n }\n return false;\n};\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nconst duration = '200ms';\nconst sidebarAnimateInTransition = 'cubic-bezier(0.0, 0.0, 0.2, 1)';\nconst sidebarAnimateOutTransition = 'cubic-bezier(0.4, 0.0, 1, 1)';\n\nexport const daffSidebarAnimations: {\n readonly transformSidebar: AnimationTriggerMetadata;\n readonly transformContent: AnimationTriggerMetadata;\n readonly backdropTrigger: AnimationTriggerMetadata;\n} = {\n transformSidebar: trigger('transformSidebar', [\n // We remove the `transform` here completely, rather than setting it to zero, because\n // 3d transforms causes text to appear blurry on IE and Edge.\n state('open', style({\n transform: 'none',\n })),\n state('closed', style({\n transform: 'translateX({{width}})',\n }), { params: { width: '-240px' }}),\n transition('open => closed', animate(duration + ' ' + sidebarAnimateOutTransition)),\n transition('closed => open', animate(duration + ' ' + sidebarAnimateInTransition)),\n ]),\n transformContent: trigger('transformContent', [\n // We remove the `transform` here completely, rather than setting it to zero, because\n // 3d transforms causes text to appear blurry on IE and Edge.\n state('closed', style({\n transform: 'none',\n })),\n state('open', style({\n transform: 'translateX({{shift}})',\n }), { params: { shift: '-240px' }}),\n transition('open => closed', animate(duration + ' ' + sidebarAnimateInTransition)),\n transition('closed => open', animate(duration + ' ' + sidebarAnimateOutTransition)),\n ]),\n backdropTrigger: trigger('backdropTrigger', [\n state('open', style({\n opacity: 1,\n })),\n state('closed', style({\n opacity: 0,\n })),\n transition('open => closed', animate(duration + ' ' + sidebarAnimateOutTransition)),\n transition('closed => open', animate(duration + ' ' + sidebarAnimateInTransition)),\n ]),\n};\n\nexport enum DaffSidebarAnimationStates {\n OPEN = 'open',\n CLOSED = 'closed',\n UNDEROPEN = 'under-open',\n UNDERCLOSED = 'under-closed',\n SIDEFIXEDOPEN = 'side-fixed-open',\n SIDEFIXEDCLOSED = 'side-fixed-closed',\n NONE = 'none'\n}\n","import { DaffSidebarMode } from '../helper/sidebar-mode';\n\nexport type DaffSidebarAnimationState =\n'open' | 'closed' | 'under-open' | 'under-closed' | 'side-fixed-open' | 'side-fixed-closed' | 'none';\n\nexport const getAnimationState = (open: boolean, mode: DaffSidebarMode): DaffSidebarAnimationState => {\n if(mode === 'side') {\n return 'none';\n }\n\n if(mode === 'side-fixed' && open) {\n return 'side-fixed-open';\n }\n\n if(mode === 'side-fixed' && !open) {\n return 'side-fixed-closed';\n }\n\n if(open && mode === 'under') {\n return 'under-open';\n }\n\n if(!open && mode === 'under') {\n return 'under-closed';\n }\n\n if(open) {\n return 'open';\n } else {\n return 'closed';\n }\n};\n","import { DaffSidebarSide } from '../helper/sidebar-side';\n\nexport const getSidebarAnimationWidth =\n (side: DaffSidebarSide, width: number): string => side === 'left' ? -1 * width + 'px' : width + 'px';\n","import { AnimationEvent } from '@angular/animations';\nimport {\n ConfigurableFocusTrap,\n ConfigurableFocusTrapFactory,\n} from '@angular/cdk/a11y';\nimport { DOCUMENT } from '@angular/common';\nimport {\n Component,\n NgZone,\n ElementRef,\n Output,\n EventEmitter,\n HostBinding,\n ChangeDetectionStrategy,\n Input,\n HostListener,\n Inject,\n} from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport {\n daffFocusableElementsSelector,\n DaffFocusStackService,\n DaffOpenable,\n DaffOpenableDirective,\n} from '@daffodil/design';\n\nimport { isOpening } from './is-opening';\nimport { daffSidebarAnimations } from '../animation/sidebar-animation';\nimport {\n DaffSidebarAnimationState,\n getAnimationState,\n} from '../animation/sidebar-animation-state';\nimport { getSidebarAnimationWidth } from '../animation/sidebar-animation-width';\nimport { DaffSidebarMode } from '../helper/sidebar-mode';\nimport { DaffSidebarSide } from '../helper/sidebar-side';\n\n/**\n * DaffSidebarComponent is heavily based upon the work done by the `@angular/components`\n * team on `mat-drawer` and `mat-sidenav`. It's intended to be a simplified version\n * (with a different design) of `mat-drawer`.\n *\n * ```html\n * <daff-sidebar></daff-sidebar>\n * ```\n */\n@Component({\n selector: 'daff-sidebar',\n templateUrl: './sidebar.component.html',\n styleUrls: ['./sidebar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [{\n directive: DaffOpenableDirective,\n inputs: ['open'],\n outputs: ['toggled'],\n }],\n animations: [\n daffSidebarAnimations.transformSidebar,\n ],\n})\nexport class DaffSidebarComponent implements DaffOpenable {\n /**\n * @docs-private\n *\n * The CSS classes set.\n */\n @HostBinding('class') get classes() {\n return {\n 'daff-sidebar': true,\n [this.side]: true,\n [this.mode]: true,\n };\n };\n\n /**\n * @docs-private\n *\n * The animation state of the sidebar.\n */\n @HostBinding('@transformSidebar') get transformSidebar() {\n return {\n value: getAnimationState(this.openDirective.open, this.mode),\n params: { width: getSidebarAnimationWidth(this.side, this.width) },\n };\n }\n\n /**\n * Event fired when `ESC` key is pressed when the sidebar has focus.\n */\n @Output() escapePressed: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * What side of the viewport to show the sidebar on.\n */\n @Input() side: DaffSidebarSide = 'left';\n\n /**\n * The mode of the sidebar.\n */\n @Input() mode: DaffSidebarMode = 'side';\n\n /**\n * @docs-private\n *\n * The width of the sidebar.\n */\n get width() {\n return this._elementRef.nativeElement.offsetWidth;\n }\n\n /**\n * @docs-private\n */\n get open() {\n return this.openDirective.open;\n }\n\n constructor(\n private _elementRef: ElementRef<HTMLElement>,\n private _ngZone: NgZone,\n private _focusTrapFactory: ConfigurableFocusTrapFactory,\n private _focusStack: DaffFocusStackService,\n private openDirective: DaffOpenableDirective,\n @Inject(DOCUMENT) private _doc: any,\n ) {\n /**\n * Listen to `keydown` events outside the zone so that change detection is not run every\n * time a key is pressed. Instead we re-enter the zone only if the `ESC` key is pressed.\n *\n */\n this._ngZone.runOutsideAngular(() => {\n fromEvent<KeyboardEvent>(this._elementRef.nativeElement, 'keydown').pipe(\n filter(event => event.key === 'Escape'),\n ).subscribe(event => this._ngZone.run(() => {\n this.escapePressed.emit();\n event.stopPropagation();\n }));\n });\n }\n\n private _focusTrap: ConfigurableFocusTrap;\n\n /**\n * @docs-private\n *\n * Animation event that can be used to hook into when the transformSidebar\n * animation begins. This is used in sidebar to determine when to show the\n * visibility of the sidebar so that the animation does not jump as the element is shown.\n */\n @HostListener('@transformSidebar.start', ['$event']) onAnimationStart(e: AnimationEvent) {\n if (e.toState === 'open' || e.toState === 'under-open' || e.toState === 'side-fixed-open') {\n this._elementRef.nativeElement.style.visibility = 'visible';\n }\n }\n\n /**\n * @docs-private\n *\n * Animation event that can be used to hook into when the\n * transformSidebar animation is complete.\n */\n @HostListener('@transformSidebar.done', ['$event']) onAnimationComplete(e: AnimationEvent) {\n if(isOpening(<DaffSidebarAnimationState>e.fromState, <DaffSidebarAnimationState>e.toState)) {\n this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);\n\n const focusableChild = (<HTMLElement>this._elementRef.nativeElement.querySelector(daffFocusableElementsSelector));\n\n this._focusStack.push(this._doc.activeElement);\n\n if(focusableChild) {\n focusableChild.focus();\n } else {\n this._elementRef.nativeElement.tabIndex = 0;\n (<HTMLElement>this._elementRef.nativeElement).focus();\n }\n } else {\n if(this._focusTrap) {\n this._focusTrap.destroy();\n this._focusTrap = undefined;\n this._focusStack.pop();\n }\n }\n\n /**\n * @docs-private\n *\n * This is used in sidebar to determine when to hide the visibility\n * of the sidebar so that the animation does not jump as the element is hidden.\n */\n if (e.toState === 'closed' || e.toState === 'under-closed' || e.toState === 'side-fixed-closed') {\n this._elementRef.nativeElement.style.visibility = 'hidden';\n } else {\n this._elementRef.nativeElement.style.visibility = null;\n }\n }\n\n /**\n * Reveal the contents of the sidebar.\n */\n reveal() {\n this.openDirective.reveal();\n }\n\n /**\n * Hide the contents of the sidebar.\n */\n hide() {\n this.openDirective.hide();\n }\n\n /**\n * Toggle the visibility of the sidebar.\n */\n toggle() {\n this.openDirective.toggle();\n }\n}\n","<ng-content select=\"daff-sidebar-header\"></ng-content>\n<div class=\"daff-sidebar__body\">\n\t<ng-content></ng-content>\n</div>\n<ng-content select=\"daff-sidebar-footer\"></ng-content>","import {\n Component,\n HostBinding,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n/**\n * Sidebar footer is a child component of the sidebar that is used to display a\n * footer container, positioned at the bottom of a sidebar.\n *\n * ```html\n * <daff-sidebar-footer></daff-sidebar-footer>\n * ```\n */\n@Component({\n selector: 'daff-sidebar-footer',\n template: '<ng-content></ng-content>',\n styleUrls: ['./sidebar-footer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffSidebarFooterComponent {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-sidebar-footer') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffSidebarHeaderAction]',\n standalone: true,\n})\nexport class DaffSidebarHeaderActionDirective {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-sidebar-header__action') class = true;\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n/**\n * Sidebar header title is a child directive of `DaffSidebarHeaderComponent`\n * that can be used to provide a title for the sidebar.\n *\n * ```html\n * <div daffSidebarHeaderTitle>Title</div>\n * ```\n */\n@Directive({\n selector: '[daffSidebarHeaderTitle]',\n})\nexport class DaffSidebarHeaderTitleDirective {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-sidebar-header__title') class = true;\n}\n","import { NgIf } from '@angular/common';\nimport {\n Component,\n HostBinding,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n Input,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faTimes } from '@fortawesome/free-solid-svg-icons';\n\n/**\n * Sidebar header is a child component of the sidebar that is used to display a header container,\n * positioned at the top of a sidebar. It includes an optional title (`[daffSidebarHeaderTitle]`)\n * slot and a slot to render any custom content.\n *\n * ```html\n * <daff-sidebar-header></daff-sidebar-header>\n * ```\n */\n@Component({\n selector: 'daff-sidebar-header',\n templateUrl: './sidebar-header.component.html',\n styleUrls: ['./sidebar-header.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FaIconComponent,\n NgIf,\n ],\n})\nexport class DaffSidebarHeaderComponent {\n /**\n * @docs-private\n */\n faTimes = faTimes;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-sidebar-header') class = true;\n\n /** Whether or not a sidebar header should display the close icon. */\n @Input() @HostBinding('class.dismissible') dismissible = false;\n\n /**\n * Output event triggered when the close icon is clicked.\n */\n @Output() closeSidebar: EventEmitter<void> = new EventEmitter();\n\n /**\n * @docs-private\n */\n onCloseSidebar(event: Event) {\n this.closeSidebar.emit();\n }\n}\n","<button class=\"daff-sidebar-header__close-icon\" aria-label=\"Close Sidebar\" *ngIf=\"dismissible\" (click)=\"onCloseSidebar($event)\">\n <fa-icon [icon]=\"faTimes\" [fixedWidth]=\"true\" size=\"lg\"></fa-icon>\n</button>\n<div class=\"daff-sidebar-header__content\">\n <ng-content></ng-content>\n</div>","/**\n * Fallback function for determining whether or not a viewport has a parent viewport.\n * This is really only used in the Daffodil docs when the injector heirarchy\n * doesn't act as anticipated as a result of custom elements.\n */\nexport const hasParentViewport = (element: HTMLElement) => {\n let currentElement = element.parentElement;\n\n while (currentElement !== null) {\n if (currentElement.tagName === 'DAFF-SIDEBAR-VIEWPORT') {\n return true;\n }\n currentElement = currentElement.parentElement;\n }\n\n return false;\n};\n","/**\n * The placement of the nav in relation to the sidebar.\n * See {@link DaffNavPlacementEnum }\n */\nexport type DaffNavPlacement = 'above' | 'beside';\n\n/**\n * The placement of the nav in relation to the sidebar.\n * See {@link DaffNavPlacement }\n */\nexport enum DaffNavPlacementEnum {\n ABOVE = 'above',\n BESIDE = 'beside',\n}\n","import { DOCUMENT } from '@angular/common';\nimport {\n ElementRef,\n inject,\n} from '@angular/core';\n\nimport { createSingleInjectionToken } from '@daffodil/core';\n\n/**\n * An interface that enables a user to enable or disable scrolling on sidebars.\n *\n * See {@link DAFF_SIDEBAR_SCROLL_TOKEN}\n */\nexport interface DaffSidebarScroll {\n enable(): void;\n disable(): void;\n}\n\nexport const {\n /**\n * An injection token that can be used within a sidebar to determine\n * what to do enabling and disabling scrolling. By default, the body\n * is the element where scrolling is controlled.\n */\n token: DAFF_SIDEBAR_SCROLL_TOKEN,\n /**\n * Provider function for {@link DAFF_SIDEBAR_SCROLL_TOKEN}.\n */\n provider: provideDaffSidebarScrollToken,\n} = createSingleInjectionToken<DaffSidebarScroll>(\n 'DAFF_SIDEBAR_SCROLL_TOKEN',\n {\n providedIn: 'root',\n factory: () => {\n const document = inject(DOCUMENT);\n return {\n enable: () => {\n document.body.style.overflow = null;\n },\n disable: () => {\n document.body.style.overflow = 'hidden';\n },\n };\n },\n },\n);\n\n\n/**\n * A factory function that return a DaffSidebarScroll\n * for the current sidebar viewport.\n *\n * See the providers of {@link DaffSidebarViewportComponent}\n */\nexport const daffSidebarViewportScrollFactory = (): DaffSidebarScroll => {\n const element = inject(ElementRef).nativeElement;\n return {\n enable: () => {\n element.style.overflow = null;\n },\n disable: () => {\n element.style.overflow = 'hidden';\n },\n };\n};\n","import { QueryList } from '@angular/core';\n\nimport { DaffSidebarComponent } from '../../sidebar/sidebar.component';\n\n/**\n * Determines, given a list of sidebars, whether or not the backdrop is interactable (typically clickable).\n */\nexport const sidebarViewportBackdropInteractable = (sidebars: QueryList<DaffSidebarComponent>): boolean => sidebars.reduce(\n (acc: boolean, sidebar) => ((sidebar.mode === 'over' || sidebar.mode === 'under') && sidebar.open) || acc,\n false);\n","import { QueryList } from '@angular/core';\n\nimport { DaffSidebarModeEnum } from '../../helper/sidebar-mode';\nimport { DaffSidebarSide } from '../../helper/sidebar-side';\nimport { DaffSidebarComponent } from '../../sidebar/sidebar.component';\n\n/**\n * Given a list of sidebars, compute the whether or not the content is padded.\n */\nexport const isSidebarViewportContentPadded = (sidebars: QueryList<DaffSidebarComponent>, side: DaffSidebarSide): boolean =>\n sidebars.reduce((acc: boolean, sidebar) => {\n if(!(sidebar.mode === DaffSidebarModeEnum.SideFixed && sidebar.open)) {\n return acc || false;\n }\n\n if(sidebar.side === side){\n return true;\n } else {\n // This component is \"stateless\", its possible to have two open \"under\" sidebars.\n // As such, we defer to \"left\" being open by default.\n return acc;\n }\n }, false);\n\n","import { QueryList } from '@angular/core';\n\nimport { DaffSidebarMode } from '../../helper/sidebar-mode';\nimport { DaffSidebarComponent } from '../../sidebar/sidebar.component';\n\nexport const isViewportContentShifted = (mode: DaffSidebarMode, open: boolean): boolean => (mode === 'under' && open);\n\n/**\n * Given a list of sidebars, compute the associated content shift.\n */\nexport const sidebarViewportContentShift = (sidebars: QueryList<DaffSidebarComponent>): number =>\n sidebars.reduce((acc: number, sidebar) => {\n if(!isViewportContentShifted(sidebar.mode, sidebar.open)) {\n return acc;\n }\n\n if(sidebar.side === 'left'){\n return sidebar.width;\n } else if (sidebar.side === 'right' && acc === 0) {\n return -1 * sidebar.width;\n } else {\n // This component is \"stateless\", its possible to have two open \"under\" sidebars.\n // As such, we defer to \"left\" being open by default.\n return acc;\n }\n }, 0);\n\n\n","import { AnimationStateWithParams } from '@daffodil/design';\n\nimport { DaffSidebarAnimationStates } from './sidebar-animation';\n\nexport type DaffSidebarViewportAnimationState = DaffSidebarAnimationStates.OPEN | DaffSidebarAnimationStates.CLOSED;\n\n\nexport interface DaffSidebarAnimationStateParams {\n shift: string;\n};\n\nexport type DaffSidebarViewportAnimationStateWithParams = AnimationStateWithParams<DaffSidebarViewportAnimationState, DaffSidebarAnimationStateParams>;\n\n\nexport const getSidebarViewportAnimationState = (open: boolean): DaffSidebarViewportAnimationState =>\n open ? DaffSidebarAnimationStates.OPEN : DaffSidebarAnimationStates.CLOSED;\n","import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nconst animationDuration = '350ms';\nconst backdropTransitionOut = 'cubic-bezier(0.4, 0.0, 1, 1)';\nconst backdropTransitionIn = 'cubic-bezier(0.0, 0.0, 0.2, 1)';\n\nexport const daffSidebarViewportBackdropAnimations: {\n readonly fadeBackdrop: AnimationTriggerMetadata;\n} = {\n fadeBackdrop: trigger('fadeBackdrop', [\n state('interactable', style({ opacity: 1 })),\n state('non-interactable', style({ opacity: 0 })),\n transition('interactable => non-interactable', animate(animationDuration + ' ' + backdropTransitionOut)),\n transition('non-interactable => interactable', animate(animationDuration + ' ' + backdropTransitionIn)),\n transition(':enter', [\n style({ opacity: 0 }),\n animate(animationDuration + ' ' + backdropTransitionIn, style({ opacity: 1 })),\n ]),\n transition(':leave', [\n animate(animationDuration + ' ' + backdropTransitionOut, style({ opacity: 0 })),\n ]),\n ]),\n};\n","export type DaffSidebarViewportBackdropAnimationState = 'interactable' | 'non-interactable';\nexport const getAnimationState = (interactable: boolean): DaffSidebarViewportBackdropAnimationState=> interactable ? 'interactable' : 'non-interactable';\n","import { AnimationEvent } from '@angular/animations';\nimport {\n Component,\n Output,\n EventEmitter,\n Input,\n ChangeDetectionStrategy,\n HostListener,\n HostBinding,\n OnInit,\n} from '@angular/core';\n\nimport { daffSidebarViewportBackdropAnimations } from './animation/backdrop-animation';\nimport { getAnimationState } from './animation/backdrop-animation-state';\n\n@Component({\n selector: 'daff-sidebar-viewport-backdrop',\n template: '<ng-content></ng-content>',\n styleUrls: ['./sidebar-viewport-backdrop.component.scss'],\n animations: [\n daffSidebarViewportBackdropAnimations.fadeBackdrop,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffSidebarViewportBackdropComponent implements OnInit {\n\n /**\n * @docs-private\n */\n @HostBinding('class.interactable') interactableClass = true;\n\n /**\n * Determines whether or not the backdrop is transparent.\n */\n @Input() @HostBinding('class.transparent') transparent = false;\n\n /**\n * Determines whether or not the backdrop is interactable.\n */\n @Input() interactable = true;\n\n /**\n * Boolean property that determines whether or not the\n * backdrop should fill up its containing window.\n */\n @Input() @HostBinding('class.fullscreen') fullscreen = false;\n\n /**\n * Output event triggered when the backdrop is clicked.\n */\n @Output() backdropClicked: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * @docs-private\n */\n ngOnInit(): void {\n this.interactableClass = this.interactable;\n }\n\n /**\n * @docs-private\n *\n * Animation hook for that controls the backdrops\n * entrance and fade animations.\n */\n @HostBinding('@fadeBackdrop') get fadeBackdropTrigger() {\n return getAnimationState(this.interactable);\n }\n\n /**\n * @docs-private\n */\n @HostListener('@fadeBackdrop.done', ['$event'])\n animationDone(e: AnimationEvent) {\n this.interactableClass = !(e.toState === ':leave' || e.toState === 'non-interactable');\n }\n\n /**\n * @docs-private\n */\n @HostListener('@fadeBackdrop.start', ['$event'])\n animationStart(e: AnimationEvent) {\n if(e.toState === ':enter' || e.toState === 'interactable'){\n this.interactableClass = true;\n }\n }\n\n /**\n * @docs-private\n */\n @HostListener('click')\n onBackdropClicked(): void {\n this.backdropClicked.emit();\n }\n}\n","import { AnimationEvent } from '@angular/animations';\nimport {\n Component,\n Output,\n EventEmitter,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n ContentChildren,\n QueryList,\n AfterContentChecked,\n ElementRef,\n Input,\n HostBinding,\n Inject,\n SkipSelf,\n Optional,\n OnDestroy,\n} from '@angular/core';\n\nimport { hasParentViewport } from './helper/has-parent-viewport';\nimport {\n DaffNavPlacement,\n DaffNavPlacementEnum,\n} from './nav-placement';\nimport {\n DAFF_SIDEBAR_SCROLL_TOKEN,\n DaffSidebarScroll,\n daffSidebarViewportScrollFactory,\n} from './scroll-token/scroll.token';\nimport { sidebarViewportBackdropInteractable } from './utils/backdrop-interactable';\nimport { isSidebarViewportContentPadded } from './utils/content-pad';\nimport {\n isViewportContentShifted,\n sidebarViewportContentShift,\n} from './utils/content-shift';\nimport {\n DaffSidebarAnimationStates,\n daffSidebarAnimations,\n} from '../animation/sidebar-animation';\nimport {\n DaffSidebarViewportAnimationStateWithParams,\n getSidebarViewportAnimationState,\n} from '../animation/sidebar-viewport-animation-state';\nimport { DaffSidebarComponent } from '../sidebar/sidebar.component';\nimport { DaffSidebarViewportBackdropComponent } from '../sidebar-viewport-backdrop/sidebar-viewport-backdrop.component';\n\n/**\n * DaffSidebarViewportComponent serves as the container for managing sidebars across an entire application.\n * Because it's a functional component, it supports multiple simultaneously open sidebar and is designed to\n * handle these scenarios gracefully.\n *\n * > However, there is one key contraint: only one sidebar per **mode** is allowed\n * on each **side** (e.g., left or right) at any given time.\n *\n * If this constraint is violated, the component will throw an exception to prevent unintended behavior.\n *\n * ```html\n * <daff-sidebar-viewport>\n * <daff-sidebar></daff-sidebar>\n * <div>Site content</div>\n * </daff-sidebar-viewport>\n * ```\n */\n@Component({\n selector: 'daff-sidebar-viewport',\n templateUrl: './sidebar-viewport.component.html',\n styleUrls: ['./sidebar-viewport.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n daffSidebarAnimations.transformContent,\n ],\n providers: [\n {\n provide: DAFF_SIDEBAR_SCROLL_TOKEN,\n useFactory: daffSidebarViewportScrollFactory,\n },\n ],\n imports: [\n DaffSidebarViewportBackdropComponent,\n ],\n})\nexport class DaffSidebarViewportComponent implements AfterContentChecked, OnDestroy {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-sidebar-viewport') hostClass = true;\n\n /**\n * @docs-private\n */\n @HostBinding('class') get classes() {\n return {\n 'daff-sidebar-viewport': true,\n [this.navPlacement]: true,\n 'pad-left': this._isPaddedLeft,\n 'pad-right': this._isPaddedRight,\n };\n };\n\n /**\n * @docs-private\n */\n get isNavOnSide() {\n return this.navPlacement === DaffNavPlacementEnum.BESIDE;\n }\n\n /**\n * @docs-private\n */\n onContentAnimationStart(e: AnimationEvent) {\n if(e.toState === 'open') {\n this._elementRef.nativeElement.style.overflow = 'clip';\n }\n }\n\n /**\n * @docs-private\n */\n onContentAnimationDone(e: AnimationEvent) {\n if(e.toState === 'closed') {\n this._elementRef.nativeElement.style.overflow = null;\n }\n }\n\n /**\n * The placement of the nav in relation to the sidebar. Note that this is really only available when there is a `side-fixed` sidebar.\n */\n @Input() navPlacement: DaffNavPlacement = DaffNavPlacementEnum.ABOVE;\n\n constructor(\n private cdRef: ChangeDetectorRef,\n private _elementRef: ElementRef<HTMLElement>,\n @Inject(DAFF_SIDEBAR_SCROLL_TOKEN) @SkipSelf() private bodyScroll: DaffSidebarScroll,\n @Inject(DaffSidebarViewportComponent) @SkipSelf() @Optional() private parentViewport,\n @Inject(DAFF_SIDEBAR_SCROLL_TOKEN) private scroll: DaffSidebarScroll,\n ) { }\n\n /**\n * The list of sidebars in the viewport.\n *\n * @docs-private\n */\n @ContentChildren(DaffSidebarComponent, { descendants: false }) private sidebars: QueryList<DaffSidebarComponent>;\n\n /**\n * The number of pixels that the main content of the page should be shifted to\n * right when there are child sidebars.\n */\n private _shift = '0px';\n\n private _isPaddedLeft = false;\n\n private _isPaddedRight = false;\n\n /**\n * @docs-private\n *\n * Whether or not the backdrop is interactable\n */\n _backdropInteractable = false;\n\n /**\n * @docs-private\n *\n * The animation state\n */\n _animationState: DaffSidebarViewportAnimationStateWithParams = { value: DaffSidebarAnimationStates.CLOSED, params: { shift: '0px' }};\n\n /**\n * Event fired when the backdrop is clicked. This is often used to close the sidebar.\n */\n @Output() backdropClicked: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * @docs-private\n */\n ngAfterContentChecked() {\n const nextShift = sidebarViewportContentShift(this.sidebars) + 'px';\n if (this._shift !== nextShift) {\n this._shift = nextShift;\n\n this.updateAnimationState();\n this.cdRef.markForCheck();\n }\n const nextBackdropInteractable = sidebarViewportBackdropInteractable(this.sidebars);\n if (this._backdropInteractable !== nextBackdropInteractable) {\n this._backdropInteractable = nextBackdropInteractable;\n this.updateAnimationState();\n this.cdRef.markForCheck();\n if(nextBackdropInteractable) {\n if(!this.parentViewport && !hasParentViewport(this._elementRef.nativeElement)) {\n this.bodyScroll.disable();\n } else {\n this.scroll.disable();\n }\n } else { //if we are hiding the sidebars\n if(!this.parentViewport && !hasParentViewport(this._elementRef.nativeElement)) {\n this.bodyScroll.enable();\n } else {\n this.scroll.enable();\n }\n }\n };\n\n this._isPaddedLeft = isSidebarViewportContentPadded(this.sidebars, 'left');\n this._isPaddedRight = isSidebarViewportContentPadded(this.sidebars, 'right');\n }\n\n /**\n * @docs-private\n */\n ngOnDestroy() {\n if(!this.parentViewport && !hasParentViewport(this._elementRef.nativeElement)) {\n this.bodyScroll.enable();\n } else {\n this.scroll.enable();\n }\n }\n\n /**\n * @docs-private\n *\n * Updates the animation state of the viewport depending upon the state\n * of all sidebars within the viewport.\n */\n private updateAnimationState() {\n this._animationState = {\n value: getSidebarViewportAnimationState(\n this.sidebars.reduce((acc: boolean, sidebar) => acc || isViewportContentShifted(sidebar.mode, sidebar.open), false),\n ),\n params: { shift: this._shift },\n };\n }\n\n /**\n * @docs-private\n *\n * Called when the backdrop of the viewport is clicked upon.\n */\n _backdropClicked(): void {\n this.backdropClicked.emit();\n }\n}\n","<daff-sidebar-viewport-backdrop\n [@transformContent]=\"_animationState\"\n [interactable]=\"_backdropInteractable\"\n (backdropClicked)=\"_backdropClicked()\">\n</daff-sidebar-viewport-backdrop>\n\n<div class=\"daff-sidebar-viewport__nav\"\n [@transformContent]=\"_animationState\">\n <ng-content select=\"[daff-sidebar-viewport-nav]\"></ng-content>\n</div>\n\n<ng-content select=\"daff-sidebar:not([side=right])\"></ng-content>\n\n<div class=\"daff-sidebar-viewport__content\"\n [@transformContent]=\"_animationState\"\n (@transformContent.start)=\"onContentAnimationStart($event)\"\n (@transformContent.done)=\"onContentAnimationDone($event)\">\n <div class=\"daff-sidebar-viewport__inner\">\n <ng-content></ng-content>\n <div class=\"daff-sidebar-viewport__footer\">\n <ng-content select=\"[daff-sidebar-viewport-footer]\"></ng-content>\n </div>\n </div>\n</div>\n\n<ng-content select=\"daff-sidebar[side=right]\"></ng-content>\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffSidebarComponent } from './sidebar/sidebar.component';\nimport { DaffSidebarFooterComponent } from './sidebar-footer/sidebar-footer.component';\nimport { DaffSidebarHeaderActionDirective } from './sidebar-header/sidebar-header-action/sidebar-header-action.directive';\nimport { DaffSidebarHeaderTitleDirective } from './sidebar-header/sidebar-header-title/sidebar-header-title.directive';\nimport { DaffSidebarHeaderComponent } from './sidebar-header/sidebar-header.component';\nimport { DaffSidebarViewportComponent } from './sidebar-viewport/sidebar-viewport.component';\n\n/**\n * @deprecated in favor of {@link DAFF_SIDEBAR_COMPONENTS}. Deprecated in version 0.78.0. Will be removed in version 1.0.0.\n */\n@NgModule({\n imports: [\n CommonModule,\n A11yModule,\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n DaffSidebarHeaderComponent,\n DaffSidebarFooterComponent,\n DaffSidebarHeaderTitleDirective,\n DaffSidebarHeaderActionDirective,\n ],\n exports: [\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n DaffSidebarHeaderComponent,\n DaffSidebarFooterComponent,\n DaffSidebarHeaderTitleDirective,\n DaffSidebarHeaderActionDirective,\n ],\n})\nexport class DaffSidebarModule { }\n","import {\n Signal,\n signal,\n} from '@angular/core';\nimport {\n BehaviorSubject,\n Observable,\n} from 'rxjs';\n\nimport { DaffSidebarRegistration } from './registration.type';\n\n/**\n * A service that stores the open state and ID of the currently opened sidebar.\n *\n * A default sidebar ID can be passed to the constructor that will be the initial value of `$id`.\n */\nexport abstract class DaffSidebarService {\n protected _id$: BehaviorSubject<DaffSidebarRegistration['id']>;\n protected _open = signal(false);\n\n readonly id$: Observable<DaffSidebarRegistration['id']>;\n\n get isOpen(): Signal<boolean> {\n return this._open.asReadonly();\n }\n\n constructor(\n defaultId: DaffSidebarRegistration['id'] = null,\n ) {\n this._id$ = new BehaviorSubject<DaffSidebarRegistration['id']>(defaultId);\n\n this.id$ = this._id$.asObservable();\n }\n\n /**\n * Opens the specified sidebar.\n *\n * @param id The optional sidebar ID. If omitted the most recently passed opened sidebar ID will persist (or the default if none was passed).\n */\n open(id?: DaffSidebarRegistration['id']) {\n if (id) {\n this._id$.next(id);\n }\n this._open.set(true);\n };\n\n /**\n * Closes the sidebar. Does not clear the ID.\n */\n close() {\n this._open.set(false);\n }\n}\n","import { DaffSidebarModeEnum } from './sidebar-mode';\n\nconst DOCKED_MODES = [\n DaffSidebarModeEnum.Side,\n DaffSidebarModeEnum.SideFixed,\n];\n\n/**\n * Returns whether the passed mode is a docked mode, i.e. side or side-fixed.\n */\nexport const daffSidebarIsDockedMode = (mode: DaffSidebarModeEnum): boolean => DOCKED_MODES.includes(mode);\n","import { DaffSidebarModeEnum } from './sidebar-mode';\n\nconst FLOATING_MODES = [\n DaffSidebarModeEnum.Under,\n DaffSidebarModeEnum.Over,\n];\n\n/**\n * Returns whether the passed mode is a floating mode, i.e. under or over.\n */\nexport const daffSidebarIsFloatingMode = (mode: DaffSidebarModeEnum): boolean => FLOATING_MODES.includes(mode);\n","import { DaffSidebarComponent } from './sidebar/sidebar.component';\nimport { DaffSidebarFooterComponent } from './sidebar-footer/sidebar-footer.component';\nimport { DaffSidebarHeaderActionDirective } from './sidebar-header/sidebar-header-action/sidebar-header-action.directive';\nimport { DaffSidebarHeaderTitleDirective } from './sidebar-header/sidebar-header-title/sidebar-header-title.directive';\nimport { DaffSidebarHeaderComponent } from './sidebar-header/sidebar-header.component';\nimport { DaffSidebarViewportComponent } from './sidebar-viewport/sidebar-viewport.component';\n\n/**\n * @docs-private\n */\nexport const DAFF_SIDEBAR_COMPONENTS = <const> [\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n DaffSidebarHeaderComponent,\n DaffSidebarFooterComponent,\n DaffSidebarHeaderTitleDirective,\n DaffSidebarHeaderActionDirective,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["getAnimationState"],"mappings":"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"}