@daffodil/design 0.77.0 → 0.79.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 (573) hide show
  1. package/accordion/README.md +40 -2
  2. package/accordion/accordion/accordion/accordion.component.d.ts +1 -1
  3. package/accordion/accordion/accordion-item/accordion-item.component.d.ts +19 -8
  4. package/accordion/accordion/accordion-item-title/accordion-item-title.directive.d.ts +1 -1
  5. package/accordion/accordion.d.ts +4 -0
  6. package/accordion/accordion.module.d.ts +6 -7
  7. package/accordion/examples/basic-accordion/basic-accordion.component.d.ts +1 -1
  8. package/accordion/examples/public_api.d.ts +0 -1
  9. package/accordion/public_api.d.ts +1 -0
  10. package/article/README.md +42 -1
  11. package/article/article/article.component.d.ts +1 -1
  12. package/article/article-meta/article-meta.directive.d.ts +1 -1
  13. package/article/article.d.ts +3 -0
  14. package/article/article.module.d.ts +5 -4
  15. package/article/public_api.d.ts +2 -1
  16. package/atoms/form/form-field/form-field/form-field.component.d.ts +1 -1
  17. package/button/README.md +42 -1
  18. package/button/button/basic/button.component.d.ts +28 -0
  19. package/button/button/button-base.directive.d.ts +51 -0
  20. package/button/button/flat/flat.component.d.ts +28 -0
  21. package/button/button/icon/icon.component.d.ts +24 -0
  22. package/button/button/raised/raised.component.d.ts +28 -0
  23. package/button/button/stroked/stroked.component.d.ts +28 -0
  24. package/button/button/underline/underline.component.d.ts +28 -0
  25. package/button/button.d.ts +8 -0
  26. package/button/button.module.d.ts +10 -5
  27. package/button/public_api.d.ts +7 -1
  28. package/button/src/button/basic/button-theme.scss +145 -0
  29. package/button/src/button/button-base.scss +79 -0
  30. package/button/src/button/flat/flat-theme.scss +143 -0
  31. package/button/src/button/icon/icon-theme.scss +141 -0
  32. package/button/src/button/raised/raised-theme.scss +120 -0
  33. package/button/src/button/stroked/stroked-theme.scss +158 -0
  34. package/button/src/button/underline/underline-theme.scss +93 -0
  35. package/callout/README.md +42 -0
  36. package/callout/callout/callout.component.d.ts +1 -1
  37. package/callout/callout-body/callout-body.directive.d.ts +1 -1
  38. package/callout/callout-icon/callout-icon.directive.d.ts +1 -1
  39. package/callout/callout-subtitle/callout-subtitle.directive.d.ts +1 -1
  40. package/callout/callout-tagline/callout-tagline.directive.d.ts +1 -1
  41. package/callout/callout-title/callout-title.directive.d.ts +1 -1
  42. package/callout/callout.d.ts +7 -0
  43. package/callout/callout.module.d.ts +9 -8
  44. package/callout/public_api.d.ts +1 -0
  45. package/card/README.md +41 -0
  46. package/card/card/card.component.d.ts +1 -1
  47. package/card/card-actions/card-actions.directive.d.ts +1 -1
  48. package/card/card-content/card-content.directive.d.ts +1 -1
  49. package/card/card-icon/card-icon.directive.d.ts +1 -1
  50. package/card/card-image/card-image.directive.d.ts +1 -1
  51. package/card/card-tagline/card-tagline.directive.d.ts +1 -1
  52. package/card/card-title/card-title.directive.d.ts +1 -1
  53. package/card/card.d.ts +8 -0
  54. package/card/card.module.d.ts +12 -9
  55. package/card/public_api.d.ts +1 -0
  56. package/container/README.md +42 -1
  57. package/container/container/container.component.d.ts +1 -1
  58. package/container/container.d.ts +2 -0
  59. package/container/container.module.d.ts +6 -3
  60. package/container/public_api.d.ts +1 -0
  61. package/core/openable/openable.d.ts +13 -0
  62. package/core/openable/openable.directive.d.ts +81 -0
  63. package/core/openable/public_api.d.ts +2 -0
  64. package/core/openable/utils/state-error.d.ts +1 -0
  65. package/core/public_api.d.ts +1 -0
  66. package/core/statusable/statusable.d.ts +5 -3
  67. package/core/statusable/statusable.directive.d.ts +6 -4
  68. package/esm2022/accordion/accordion/accordion/accordion.component.mjs +3 -3
  69. package/esm2022/accordion/accordion/accordion-item/accordion-item.component.mjs +38 -22
  70. package/esm2022/accordion/accordion/accordion-item-title/accordion-item-title.directive.mjs +3 -2
  71. package/esm2022/accordion/accordion/animation/accordion-animation.mjs +1 -4
  72. package/esm2022/accordion/accordion.mjs +9 -0
  73. package/esm2022/accordion/accordion.module.mjs +6 -14
  74. package/esm2022/accordion/examples/basic-accordion/basic-accordion.component.mjs +6 -3
  75. package/esm2022/accordion/examples/public_api.mjs +1 -2
  76. package/esm2022/accordion/public_api.mjs +2 -1
  77. package/esm2022/article/article/article.component.mjs +3 -3
  78. package/esm2022/article/article-meta/article-meta.directive.mjs +3 -2
  79. package/esm2022/article/article.mjs +7 -0
  80. package/esm2022/article/article.module.mjs +5 -5
  81. package/esm2022/article/examples/article-blockquote/article-blockquote.component.mjs +6 -4
  82. package/esm2022/article/examples/article-code-block/article-code-block.component.mjs +6 -4
  83. package/esm2022/article/examples/article-code-inline/article-code-inline.component.mjs +6 -4
  84. package/esm2022/article/examples/article-headings/article-headings.component.mjs +7 -3
  85. package/esm2022/article/examples/article-hr/article-hr.component.mjs +6 -4
  86. package/esm2022/article/examples/article-link/article-link.component.mjs +6 -4
  87. package/esm2022/article/examples/article-meta/article-meta.component.mjs +6 -4
  88. package/esm2022/article/examples/article-ol/article-ol.component.mjs +6 -4
  89. package/esm2022/article/examples/article-table/article-table.component.mjs +6 -4
  90. package/esm2022/article/examples/article-ul/article-ul.component.mjs +6 -4
  91. package/esm2022/article/public_api.mjs +3 -2
  92. package/esm2022/atoms/form/form-field/form-field/form-field.component.mjs +2 -2
  93. package/esm2022/button/button/basic/button.component.mjs +48 -0
  94. package/esm2022/button/button/button-base.directive.mjs +105 -0
  95. package/esm2022/button/button/flat/flat.component.mjs +48 -0
  96. package/esm2022/button/button/icon/icon.component.mjs +44 -0
  97. package/esm2022/button/button/raised/raised.component.mjs +48 -0
  98. package/esm2022/button/button/stroked/stroked.component.mjs +48 -0
  99. package/esm2022/button/button/underline/underline.component.mjs +48 -0
  100. package/esm2022/button/button.mjs +17 -0
  101. package/esm2022/button/button.module.mjs +36 -12
  102. package/esm2022/button/examples/basic-button/basic-button.component.mjs +4 -8
  103. package/esm2022/button/examples/flat-button/flat-button.component.mjs +4 -8
  104. package/esm2022/button/examples/icon-button/icon-button.component.mjs +7 -5
  105. package/esm2022/button/examples/raised-button/raised-button.component.mjs +4 -8
  106. package/esm2022/button/examples/sizeable-button/sizeable-button.component.mjs +8 -4
  107. package/esm2022/button/examples/statusable-button/statusable-button.component.mjs +8 -4
  108. package/esm2022/button/examples/stroked-button/stroked-button.component.mjs +4 -8
  109. package/esm2022/button/examples/underline-button/underline-button.component.mjs +4 -8
  110. package/esm2022/button/public_api.mjs +8 -2
  111. package/esm2022/callout/callout/callout.component.mjs +4 -4
  112. package/esm2022/callout/callout-body/callout-body.directive.mjs +3 -2
  113. package/esm2022/callout/callout-icon/callout-icon.directive.mjs +3 -2
  114. package/esm2022/callout/callout-subtitle/callout-subtitle.directive.mjs +3 -2
  115. package/esm2022/callout/callout-tagline/callout-tagline.directive.mjs +3 -2
  116. package/esm2022/callout/callout-title/callout-title.directive.mjs +3 -2
  117. package/esm2022/callout/callout.mjs +15 -0
  118. package/esm2022/callout/callout.module.mjs +5 -5
  119. package/esm2022/callout/examples/callout-text-alignment/callout-text-alignment.component.mjs +9 -10
  120. package/esm2022/callout/examples/callout-theming/callout-theming.component.mjs +7 -8
  121. package/esm2022/callout/examples/callout-with-grid/callout-with-grid.component.mjs +9 -9
  122. package/esm2022/callout/examples/compact-callout/compact-callout.component.mjs +8 -9
  123. package/esm2022/callout/public_api.mjs +2 -1
  124. package/esm2022/card/card/card.component.mjs +3 -3
  125. package/esm2022/card/card-actions/card-actions.directive.mjs +3 -2
  126. package/esm2022/card/card-content/card-content.directive.mjs +3 -2
  127. package/esm2022/card/card-icon/card-icon.directive.mjs +3 -2
  128. package/esm2022/card/card-image/card-image.directive.mjs +3 -2
  129. package/esm2022/card/card-tagline/card-tagline.directive.mjs +3 -2
  130. package/esm2022/card/card-title/card-title.directive.mjs +3 -2
  131. package/esm2022/card/card.mjs +17 -0
  132. package/esm2022/card/card.module.mjs +7 -5
  133. package/esm2022/card/examples/basic-card/basic-card.component.mjs +8 -9
  134. package/esm2022/card/examples/card-orientation/card-orientation.component.mjs +9 -10
  135. package/esm2022/card/examples/card-theming/card-theming.component.mjs +4 -4
  136. package/esm2022/card/examples/linkable-card/linkable-card.component.mjs +6 -6
  137. package/esm2022/card/examples/raised-card/raised-card.component.mjs +6 -6
  138. package/esm2022/card/examples/stroked-card/stroked-card.component.mjs +6 -6
  139. package/esm2022/card/public_api.mjs +2 -1
  140. package/esm2022/checkbox/examples/basic-checkbox/basic-checkbox.component.mjs +4 -5
  141. package/esm2022/checkbox/examples/checkbox-set/checkbox-set.component.mjs +4 -5
  142. package/esm2022/container/container/container.component.mjs +3 -3
  143. package/esm2022/container/container.mjs +5 -0
  144. package/esm2022/container/container.module.mjs +6 -4
  145. package/esm2022/container/examples/container-sizes/container-sizes.component.mjs +4 -4
  146. package/esm2022/container/public_api.mjs +2 -1
  147. package/esm2022/core/openable/openable.directive.mjs +122 -0
  148. package/esm2022/core/openable/openable.mjs +2 -0
  149. package/esm2022/core/openable/public_api.mjs +2 -0
  150. package/esm2022/core/openable/utils/state-error.mjs +2 -0
  151. package/esm2022/core/public_api.mjs +2 -1
  152. package/esm2022/core/statusable/statusable.directive.mjs +7 -5
  153. package/esm2022/core/statusable/statusable.mjs +3 -2
  154. package/esm2022/hero/examples/compact-hero/compact-hero.component.mjs +6 -7
  155. package/esm2022/hero/examples/hero-text-alignment/hero-text-alignment.component.mjs +9 -10
  156. package/esm2022/hero/examples/hero-theming/hero-theming.component.mjs +7 -8
  157. package/esm2022/hero/examples/hero-with-grid/hero-with-grid.component.mjs +8 -9
  158. package/esm2022/hero/hero/hero.component.mjs +4 -7
  159. package/esm2022/hero/hero-body/hero-body.directive.mjs +3 -2
  160. package/esm2022/hero/hero-icon/hero-icon.directive.mjs +3 -2
  161. package/esm2022/hero/hero-subtitle/hero-subtitle.directive.mjs +3 -2
  162. package/esm2022/hero/hero-tagline/hero-tagline.directive.mjs +3 -2
  163. package/esm2022/hero/hero-title/hero-title.directive.mjs +3 -2
  164. package/esm2022/hero/hero.mjs +15 -0
  165. package/esm2022/hero/hero.module.mjs +7 -5
  166. package/esm2022/hero/public_api.mjs +2 -1
  167. package/esm2022/image/examples/basic-image/basic-image.component.mjs +6 -4
  168. package/esm2022/image/examples/load-image/load-image.component.mjs +7 -4
  169. package/esm2022/image/examples/skeleton-image/skeleton-image.component.mjs +6 -4
  170. package/esm2022/image/image/image.component.mjs +3 -3
  171. package/esm2022/image/image.mjs +5 -0
  172. package/esm2022/image/image.module.mjs +7 -5
  173. package/esm2022/image/public_api.mjs +2 -1
  174. package/esm2022/link-set/link-set/link-set.component.mjs +3 -3
  175. package/esm2022/link-set/link-set-heading/link-set-heading.directive.mjs +3 -2
  176. package/esm2022/link-set/link-set-item/link-set-item.component.mjs +3 -2
  177. package/esm2022/link-set/link-set-subheading/link-set-subheading.directive.mjs +3 -2
  178. package/esm2022/link-set/link-set.mjs +11 -0
  179. package/esm2022/link-set/link-set.module.mjs +8 -6
  180. package/esm2022/link-set/public_api.mjs +2 -1
  181. package/esm2022/list/examples/basic-list/basic-list.component.mjs +7 -4
  182. package/esm2022/list/examples/icon-list/icon-list.component.mjs +4 -6
  183. package/esm2022/list/examples/multiline-list/multiline-list.component.mjs +7 -4
  184. package/esm2022/list/examples/nav-list/nav-list.component.mjs +4 -6
  185. package/esm2022/list/list/list.component.mjs +3 -3
  186. package/esm2022/list/list-item/list-item.component.mjs +8 -5
  187. package/esm2022/list/list.mjs +9 -0
  188. package/esm2022/list/list.module.mjs +8 -8
  189. package/esm2022/list/public_api.mjs +2 -1
  190. package/esm2022/loading-icon/examples/examples.mjs +1 -3
  191. package/esm2022/loading-icon/examples/loading-icon-color/loading-icon-color.component.mjs +4 -4
  192. package/esm2022/loading-icon/loading-icon/loading-icon.component.mjs +5 -20
  193. package/esm2022/loading-icon/loading-icon.mjs +5 -0
  194. package/esm2022/loading-icon/loading-icon.module.mjs +6 -4
  195. package/esm2022/loading-icon/public_api.mjs +2 -1
  196. package/esm2022/media-gallery/examples/basic-media-gallery/basic-media-gallery.component.mjs +8 -5
  197. package/esm2022/media-gallery/examples/mismatched-sizes-media-gallery/mismatched-sizes-media-gallery.component.mjs +8 -5
  198. package/esm2022/media-gallery/examples/skeleton-media-gallery/skeleton-media-gallery.component.mjs +8 -5
  199. package/esm2022/media-gallery/helpers/media-gallery-token.mjs +7 -3
  200. package/esm2022/media-gallery/media-gallery/media-gallery.component.mjs +9 -5
  201. package/esm2022/media-gallery/media-gallery.mjs +9 -0
  202. package/esm2022/media-gallery/media-gallery.module.mjs +11 -9
  203. package/esm2022/media-gallery/media-renderer/media-renderer.component.mjs +3 -2
  204. package/esm2022/media-gallery/public_api.mjs +2 -1
  205. package/esm2022/media-gallery/thumbnail/thumbnail-compat.token.mjs +8 -3
  206. package/esm2022/media-gallery/thumbnail/thumbnail.directive.mjs +3 -2
  207. package/esm2022/menu/examples/basic-menu/basic-menu.component.mjs +8 -6
  208. package/esm2022/menu/examples/basic-menu/menu-content/menu-content.component.mjs +6 -3
  209. package/esm2022/menu/menu/menu.component.mjs +6 -3
  210. package/esm2022/menu/menu-activator/menu-activator.component.mjs +3 -2
  211. package/esm2022/menu/menu-item/menu-item.component.mjs +8 -5
  212. package/esm2022/menu/menu.module.mjs +8 -7
  213. package/esm2022/menu/services/menu.service.mjs +8 -7
  214. package/esm2022/modal/examples/basic-modal/basic-modal.component.mjs +12 -6
  215. package/esm2022/modal/examples/basic-modal/modal-content.component.mjs +8 -6
  216. package/esm2022/modal/modal/modal.component.mjs +47 -21
  217. package/esm2022/modal/modal-actions/modal-actions.component.mjs +3 -2
  218. package/esm2022/modal/modal-close/modal-close.directive.mjs +3 -2
  219. package/esm2022/modal/modal-content/modal-content.component.mjs +3 -2
  220. package/esm2022/modal/modal-header/modal-header.component.mjs +12 -7
  221. package/esm2022/modal/modal-title/modal-title.directive.mjs +3 -2
  222. package/esm2022/modal/modal.mjs +13 -0
  223. package/esm2022/modal/modal.module.mjs +17 -11
  224. package/esm2022/modal/public_api.mjs +2 -1
  225. package/esm2022/modal/service/modal.service.mjs +7 -5
  226. package/esm2022/navbar/examples/basic-navbar/basic-navbar.component.mjs +8 -6
  227. package/esm2022/navbar/examples/contained-navbar/contained-navbar.component.mjs +8 -9
  228. package/esm2022/navbar/examples/navbar-theming/navbar-theming.component.mjs +7 -8
  229. package/esm2022/navbar/examples/raised-navbar/raised-navbar.component.mjs +8 -6
  230. package/esm2022/navbar/navbar/navbar.component.mjs +3 -6
  231. package/esm2022/navbar/navbar.mjs +5 -0
  232. package/esm2022/navbar/navbar.module.mjs +10 -4
  233. package/esm2022/navbar/public_api.mjs +2 -1
  234. package/esm2022/notification/examples/default-notification/default-notification.component.mjs +4 -6
  235. package/esm2022/notification/examples/dismissible-notification/dismissible-notification.component.mjs +4 -4
  236. package/esm2022/notification/examples/notification-orientations/notification-orientations.component.mjs +4 -6
  237. package/esm2022/notification/examples/notification-status/notification-status.component.mjs +5 -7
  238. package/esm2022/notification/examples/notification-with-actions/notification-with-actions.component.mjs +6 -7
  239. package/esm2022/notification/notification/notification.component.mjs +12 -8
  240. package/esm2022/notification/notification-actions/notification-actions.directive.mjs +3 -2
  241. package/esm2022/notification/notification-message/notification-message.directive.mjs +3 -2
  242. package/esm2022/notification/notification-subtitle/notification-subtitle.directive.mjs +3 -2
  243. package/esm2022/notification/notification-title/notification-title.directive.mjs +3 -2
  244. package/esm2022/notification/notification.mjs +15 -0
  245. package/esm2022/notification/notification.module.mjs +11 -8
  246. package/esm2022/notification/public_api.mjs +2 -1
  247. package/esm2022/paginator/examples/basic-paginator/basic-paginator.component.mjs +4 -4
  248. package/esm2022/paginator/examples/link-paginator/link-paginator.component.mjs +4 -4
  249. package/esm2022/paginator/paginator/paginator.component.mjs +12 -9
  250. package/esm2022/paginator/paginator.mjs +5 -0
  251. package/esm2022/paginator/paginator.module.mjs +9 -6
  252. package/esm2022/paginator/public_api.mjs +2 -1
  253. package/esm2022/progress-bar/examples/progress-bar-default/progress-bar-default.component.mjs +6 -4
  254. package/esm2022/progress-bar/examples/progress-bar-indeterminate/progress-bar-indeterminate.component.mjs +6 -4
  255. package/esm2022/progress-bar/examples/progress-bar-themes/progress-bar-themes.component.mjs +7 -4
  256. package/esm2022/progress-bar/progress-bar-label/progress-bar-label.directive.mjs +20 -0
  257. package/esm2022/progress-bar/progress-bar.component.mjs +5 -3
  258. package/esm2022/progress-bar/progress-bar.mjs +7 -0
  259. package/esm2022/progress-bar/progress-bar.module.mjs +11 -4
  260. package/esm2022/progress-bar/public_api.mjs +3 -1
  261. package/esm2022/sidebar/examples/basic-sidebar/basic-sidebar.component.mjs +6 -4
  262. package/esm2022/sidebar/examples/over-and-under-sidebars/over-and-under-sidebars.component.mjs +8 -8
  263. package/esm2022/sidebar/examples/side-fixed-sidebar/side-fixed-sidebar.component.mjs +5 -5
  264. package/esm2022/sidebar/examples/sidebar-with-sticky-content/sidebar-with-sticky-content.component.mjs +6 -4
  265. package/esm2022/sidebar/public_api.mjs +2 -1
  266. package/esm2022/sidebar/sidebar/sidebar.component.mjs +35 -15
  267. package/esm2022/sidebar/sidebar-footer/sidebar-footer.component.mjs +3 -3
  268. package/esm2022/sidebar/sidebar-header/sidebar-header-action/sidebar-header-action.directive.mjs +3 -2
  269. package/esm2022/sidebar/sidebar-header/sidebar-header-title/sidebar-header-title.directive.mjs +3 -2
  270. package/esm2022/sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
  271. package/esm2022/sidebar/sidebar-viewport/scroll-token/scroll.token.mjs +9 -3
  272. package/esm2022/sidebar/sidebar-viewport/sidebar-viewport.component.mjs +22 -38
  273. package/esm2022/sidebar/sidebar-viewport/utils/content-pad.mjs +6 -6
  274. package/esm2022/sidebar/sidebar-viewport-backdrop/sidebar-viewport-backdrop.component.mjs +3 -3
  275. package/esm2022/sidebar/sidebar.mjs +17 -0
  276. package/esm2022/sidebar/sidebar.module.mjs +8 -6
  277. package/esm2022/tabs/daffodil-design-tabs.mjs +5 -0
  278. package/esm2022/tabs/examples/basic-tabs/basic-tabs.component.mjs +22 -0
  279. package/esm2022/tabs/examples/custom-select-tabs/custom-select-tabs.component.mjs +34 -0
  280. package/esm2022/tabs/examples/daffodil-design-tabs-examples.mjs +5 -0
  281. package/esm2022/tabs/examples/disabled-tabs/disabled-tabs.component.mjs +22 -0
  282. package/esm2022/tabs/examples/index.mjs +2 -0
  283. package/esm2022/tabs/examples/initially-select-tab/initially-select-tab.component.mjs +22 -0
  284. package/esm2022/tabs/examples/public_api.mjs +11 -0
  285. package/esm2022/tabs/index.mjs +2 -0
  286. package/esm2022/tabs/public_api.mjs +6 -0
  287. package/esm2022/tabs/tabs/tab/tab.component.mjs +86 -0
  288. package/esm2022/tabs/tabs/tab-activator/tab-activator.component.mjs +83 -0
  289. package/esm2022/tabs/tabs/tab-label/tab-label.component.mjs +33 -0
  290. package/esm2022/tabs/tabs/tab-panel/tab-panel.component.mjs +68 -0
  291. package/esm2022/tabs/tabs/tabs.component.mjs +161 -0
  292. package/esm2022/tabs/tabs.mjs +13 -0
  293. package/esm2022/text-snippet/daffodil-design-text-snippet.mjs +5 -0
  294. package/esm2022/text-snippet/examples/basic-text-snippet/basic-text-snippet.component.mjs +14 -0
  295. package/esm2022/text-snippet/examples/daffodil-design-text-snippet-examples.mjs +5 -0
  296. package/esm2022/text-snippet/examples/index.mjs +2 -0
  297. package/esm2022/text-snippet/examples/public_api.mjs +5 -0
  298. package/esm2022/text-snippet/index.mjs +2 -0
  299. package/esm2022/text-snippet/public_api.mjs +2 -0
  300. package/esm2022/text-snippet/text-snippet.component.mjs +46 -0
  301. package/esm2022/toast/examples/default-toast/default-toast.component.mjs +6 -5
  302. package/esm2022/toast/examples/toast-positions/toast-positions.component.mjs +7 -5
  303. package/esm2022/toast/examples/toast-status/toast-status.component.mjs +11 -8
  304. package/esm2022/toast/examples/toast-with-custom-duration/toast-with-custom-duration.component.mjs +6 -5
  305. package/esm2022/toast/options/daff-toast-options.mjs +7 -7
  306. package/esm2022/toast/public_api.mjs +2 -1
  307. package/esm2022/toast/service/toast.service.mjs +9 -10
  308. package/esm2022/toast/toast/toast-provider.mjs +7 -0
  309. package/esm2022/toast/toast/toast-template.component.mjs +30 -12
  310. package/esm2022/toast/toast/toast.component.mjs +6 -9
  311. package/esm2022/toast/toast-actions/toast-actions.directive.mjs +3 -2
  312. package/esm2022/toast/toast-message/toast-message.directive.mjs +3 -2
  313. package/esm2022/toast/toast-title/toast-title.directive.mjs +3 -2
  314. package/esm2022/toast/toast.module.mjs +10 -11
  315. package/esm2022/tree/examples/basic-tree/basic-tree.component.mjs +7 -4
  316. package/esm2022/tree/public_api.mjs +2 -2
  317. package/esm2022/tree/tree/tree.component.mjs +8 -5
  318. package/esm2022/tree/tree-item/tree-item.directive.mjs +3 -2
  319. package/esm2022/tree/tree.mjs +7 -0
  320. package/esm2022/tree/tree.module.mjs +9 -7
  321. package/fesm2022/daffodil-design-accordion-examples.mjs +7 -26
  322. package/fesm2022/daffodil-design-accordion-examples.mjs.map +1 -1
  323. package/fesm2022/daffodil-design-accordion.mjs +52 -41
  324. package/fesm2022/daffodil-design-accordion.mjs.map +1 -1
  325. package/fesm2022/daffodil-design-article-examples.mjs +41 -21
  326. package/fesm2022/daffodil-design-article-examples.mjs.map +1 -1
  327. package/fesm2022/daffodil-design-article.mjs +15 -9
  328. package/fesm2022/daffodil-design-article.mjs.map +1 -1
  329. package/fesm2022/daffodil-design-button-examples.mjs +27 -24
  330. package/fesm2022/daffodil-design-button-examples.mjs.map +1 -1
  331. package/fesm2022/daffodil-design-button.mjs +312 -135
  332. package/fesm2022/daffodil-design-button.mjs.map +1 -1
  333. package/fesm2022/daffodil-design-callout-examples.mjs +21 -21
  334. package/fesm2022/daffodil-design-callout-examples.mjs.map +1 -1
  335. package/fesm2022/daffodil-design-callout.mjs +27 -13
  336. package/fesm2022/daffodil-design-callout.mjs.map +1 -1
  337. package/fesm2022/daffodil-design-card-examples.mjs +23 -24
  338. package/fesm2022/daffodil-design-card-examples.mjs.map +1 -1
  339. package/fesm2022/daffodil-design-card.mjs +31 -13
  340. package/fesm2022/daffodil-design-card.mjs.map +1 -1
  341. package/fesm2022/daffodil-design-checkbox-examples.mjs +5 -6
  342. package/fesm2022/daffodil-design-checkbox-examples.mjs.map +1 -1
  343. package/fesm2022/daffodil-design-container-examples.mjs +3 -3
  344. package/fesm2022/daffodil-design-container-examples.mjs.map +1 -1
  345. package/fesm2022/daffodil-design-container.mjs +12 -6
  346. package/fesm2022/daffodil-design-container.mjs.map +1 -1
  347. package/fesm2022/daffodil-design-hero-examples.mjs +19 -20
  348. package/fesm2022/daffodil-design-hero-examples.mjs.map +1 -1
  349. package/fesm2022/daffodil-design-hero.mjs +29 -16
  350. package/fesm2022/daffodil-design-hero.mjs.map +1 -1
  351. package/fesm2022/daffodil-design-image-examples.mjs +14 -7
  352. package/fesm2022/daffodil-design-image-examples.mjs.map +1 -1
  353. package/fesm2022/daffodil-design-image.mjs +13 -7
  354. package/fesm2022/daffodil-design-image.mjs.map +1 -1
  355. package/fesm2022/daffodil-design-link-set.mjs +23 -11
  356. package/fesm2022/daffodil-design-link-set.mjs.map +1 -1
  357. package/fesm2022/daffodil-design-list-examples.mjs +14 -13
  358. package/fesm2022/daffodil-design-list-examples.mjs.map +1 -1
  359. package/fesm2022/daffodil-design-list.mjs +22 -14
  360. package/fesm2022/daffodil-design-list.mjs.map +1 -1
  361. package/fesm2022/daffodil-design-loading-icon-examples.mjs +3 -13
  362. package/fesm2022/daffodil-design-loading-icon-examples.mjs.map +1 -1
  363. package/fesm2022/daffodil-design-loading-icon.mjs +14 -23
  364. package/fesm2022/daffodil-design-loading-icon.mjs.map +1 -1
  365. package/fesm2022/daffodil-design-media-gallery-examples.mjs +17 -8
  366. package/fesm2022/daffodil-design-media-gallery-examples.mjs.map +1 -1
  367. package/fesm2022/daffodil-design-media-gallery.mjs +82 -59
  368. package/fesm2022/daffodil-design-media-gallery.mjs.map +1 -1
  369. package/fesm2022/daffodil-design-menu-examples.mjs +11 -6
  370. package/fesm2022/daffodil-design-menu-examples.mjs.map +1 -1
  371. package/fesm2022/daffodil-design-menu.mjs +55 -48
  372. package/fesm2022/daffodil-design-menu.mjs.map +1 -1
  373. package/fesm2022/daffodil-design-modal-examples.mjs +16 -7
  374. package/fesm2022/daffodil-design-modal-examples.mjs.map +1 -1
  375. package/fesm2022/daffodil-design-modal.mjs +95 -49
  376. package/fesm2022/daffodil-design-modal.mjs.map +1 -1
  377. package/fesm2022/daffodil-design-navbar-examples.mjs +22 -17
  378. package/fesm2022/daffodil-design-navbar-examples.mjs.map +1 -1
  379. package/fesm2022/daffodil-design-navbar.mjs +16 -9
  380. package/fesm2022/daffodil-design-navbar.mjs.map +1 -1
  381. package/fesm2022/daffodil-design-notification-examples.mjs +14 -18
  382. package/fesm2022/daffodil-design-notification-examples.mjs.map +1 -1
  383. package/fesm2022/daffodil-design-notification.mjs +39 -21
  384. package/fesm2022/daffodil-design-notification.mjs.map +1 -1
  385. package/fesm2022/daffodil-design-paginator-examples.mjs +5 -5
  386. package/fesm2022/daffodil-design-paginator-examples.mjs.map +1 -1
  387. package/fesm2022/daffodil-design-paginator.mjs +23 -16
  388. package/fesm2022/daffodil-design-paginator.mjs.map +1 -1
  389. package/fesm2022/daffodil-design-progress-bar-examples.mjs +14 -7
  390. package/fesm2022/daffodil-design-progress-bar-examples.mjs.map +1 -1
  391. package/fesm2022/daffodil-design-progress-bar.mjs +38 -8
  392. package/fesm2022/daffodil-design-progress-bar.mjs.map +1 -1
  393. package/fesm2022/daffodil-design-sidebar-examples.mjs +18 -14
  394. package/fesm2022/daffodil-design-sidebar-examples.mjs.map +1 -1
  395. package/fesm2022/daffodil-design-sidebar.mjs +94 -70
  396. package/fesm2022/daffodil-design-sidebar.mjs.map +1 -1
  397. package/fesm2022/daffodil-design-tabs-examples.mjs +93 -0
  398. package/fesm2022/daffodil-design-tabs-examples.mjs.map +1 -0
  399. package/fesm2022/daffodil-design-tabs.mjs +431 -0
  400. package/fesm2022/daffodil-design-tabs.mjs.map +1 -0
  401. package/fesm2022/daffodil-design-text-snippet-examples.mjs +25 -0
  402. package/fesm2022/daffodil-design-text-snippet-examples.mjs.map +1 -0
  403. package/fesm2022/daffodil-design-text-snippet.mjs +53 -0
  404. package/fesm2022/daffodil-design-text-snippet.mjs.map +1 -0
  405. package/fesm2022/daffodil-design-toast-examples.mjs +23 -13
  406. package/fesm2022/daffodil-design-toast-examples.mjs.map +1 -1
  407. package/fesm2022/daffodil-design-toast.mjs +152 -132
  408. package/fesm2022/daffodil-design-toast.mjs.map +1 -1
  409. package/fesm2022/daffodil-design-tree-examples.mjs +6 -3
  410. package/fesm2022/daffodil-design-tree-examples.mjs.map +1 -1
  411. package/fesm2022/daffodil-design-tree.mjs +23 -35
  412. package/fesm2022/daffodil-design-tree.mjs.map +1 -1
  413. package/fesm2022/daffodil-design.mjs +132 -8
  414. package/fesm2022/daffodil-design.mjs.map +1 -1
  415. package/hero/README.md +41 -0
  416. package/hero/hero/hero.component.d.ts +1 -4
  417. package/hero/hero-body/hero-body.directive.d.ts +1 -1
  418. package/hero/hero-icon/hero-icon.directive.d.ts +1 -1
  419. package/hero/hero-subtitle/hero-subtitle.directive.d.ts +1 -1
  420. package/hero/hero-tagline/hero-tagline.directive.d.ts +1 -1
  421. package/hero/hero-title/hero-title.directive.d.ts +1 -1
  422. package/hero/hero.d.ts +7 -0
  423. package/hero/hero.module.d.ts +11 -8
  424. package/hero/public_api.d.ts +1 -0
  425. package/image/README.md +47 -8
  426. package/image/image/image.component.d.ts +1 -1
  427. package/image/image.d.ts +2 -0
  428. package/image/image.module.d.ts +6 -3
  429. package/image/public_api.d.ts +1 -0
  430. package/link-set/README.md +43 -2
  431. package/link-set/link-set/link-set.component.d.ts +1 -1
  432. package/link-set/link-set-heading/link-set-heading.directive.d.ts +1 -1
  433. package/link-set/link-set-item/link-set-item.component.d.ts +1 -1
  434. package/link-set/link-set-subheading/link-set-subheading.directive.d.ts +1 -1
  435. package/link-set/link-set.d.ts +5 -0
  436. package/link-set/link-set.module.d.ts +9 -6
  437. package/link-set/public_api.d.ts +1 -0
  438. package/list/README.md +42 -1
  439. package/list/list/list.component.d.ts +1 -1
  440. package/list/list-item/list-item.component.d.ts +1 -1
  441. package/list/list.d.ts +4 -0
  442. package/list/list.module.d.ts +7 -4
  443. package/list/public_api.d.ts +1 -0
  444. package/loading-icon/README.md +39 -3
  445. package/loading-icon/examples/examples.d.ts +2 -2
  446. package/loading-icon/loading-icon/loading-icon.component.d.ts +1 -9
  447. package/loading-icon/loading-icon.d.ts +2 -0
  448. package/loading-icon/loading-icon.module.d.ts +6 -3
  449. package/loading-icon/public_api.d.ts +1 -0
  450. package/media-gallery/README.md +45 -1
  451. package/media-gallery/helpers/media-gallery-token.d.ts +1 -2
  452. package/media-gallery/media-gallery/media-gallery.component.d.ts +1 -1
  453. package/media-gallery/media-gallery.d.ts +4 -0
  454. package/media-gallery/media-gallery.module.d.ts +8 -5
  455. package/media-gallery/media-renderer/media-renderer.component.d.ts +1 -1
  456. package/media-gallery/public_api.d.ts +1 -0
  457. package/media-gallery/thumbnail/thumbnail-compat.token.d.ts +1 -5
  458. package/media-gallery/thumbnail/thumbnail.directive.d.ts +1 -1
  459. package/menu/README.md +23 -0
  460. package/menu/menu/menu.component.d.ts +1 -1
  461. package/menu/menu-activator/menu-activator.component.d.ts +1 -1
  462. package/menu/menu-item/menu-item.component.d.ts +1 -1
  463. package/menu/menu.module.d.ts +6 -6
  464. package/menu/services/menu.service.d.ts +3 -2
  465. package/modal/README.md +41 -0
  466. package/modal/modal/modal.component.d.ts +20 -8
  467. package/modal/modal-actions/modal-actions.component.d.ts +1 -1
  468. package/modal/modal-close/modal-close.directive.d.ts +1 -1
  469. package/modal/modal-content/modal-content.component.d.ts +1 -1
  470. package/modal/modal-header/modal-header.component.d.ts +1 -1
  471. package/modal/modal-title/modal-title.directive.d.ts +1 -1
  472. package/modal/modal.d.ts +6 -0
  473. package/modal/modal.module.d.ts +15 -12
  474. package/modal/public_api.d.ts +1 -0
  475. package/navbar/README.md +41 -0
  476. package/navbar/navbar/navbar.component.d.ts +1 -4
  477. package/navbar/navbar.d.ts +2 -0
  478. package/navbar/navbar.module.d.ts +6 -2
  479. package/navbar/public_api.d.ts +1 -0
  480. package/notification/README.md +43 -2
  481. package/notification/notification/notification.component.d.ts +2 -2
  482. package/notification/notification-actions/notification-actions.directive.d.ts +1 -1
  483. package/notification/notification-message/notification-message.directive.d.ts +1 -1
  484. package/notification/notification-subtitle/notification-subtitle.directive.d.ts +1 -1
  485. package/notification/notification-title/notification-title.directive.d.ts +1 -1
  486. package/notification/notification.d.ts +7 -0
  487. package/notification/notification.module.d.ts +12 -9
  488. package/notification/public_api.d.ts +1 -0
  489. package/notification/src/notification-theme.scss +17 -13
  490. package/package.json +1 -1
  491. package/paginator/README.md +45 -4
  492. package/paginator/paginator/paginator.component.d.ts +1 -4
  493. package/paginator/paginator.d.ts +2 -0
  494. package/paginator/paginator.module.d.ts +8 -5
  495. package/paginator/public_api.d.ts +1 -0
  496. package/progress-bar/README.md +41 -0
  497. package/progress-bar/progress-bar-label/progress-bar-label.directive.d.ts +6 -0
  498. package/progress-bar/progress-bar.component.d.ts +1 -1
  499. package/progress-bar/progress-bar.d.ts +3 -0
  500. package/progress-bar/progress-bar.module.d.ts +7 -3
  501. package/progress-bar/public_api.d.ts +2 -0
  502. package/scss/theme.scss +13 -1
  503. package/scss/theming/_configure-theme.scss +60 -2
  504. package/scss/theming/_theme-css-variables.scss +1 -1
  505. package/sidebar/README.md +78 -20
  506. package/sidebar/public_api.d.ts +1 -0
  507. package/sidebar/sidebar/sidebar.component.d.ts +19 -8
  508. package/sidebar/sidebar-footer/sidebar-footer.component.d.ts +1 -1
  509. package/sidebar/sidebar-header/sidebar-header-action/sidebar-header-action.directive.d.ts +1 -1
  510. package/sidebar/sidebar-header/sidebar-header-title/sidebar-header-title.directive.d.ts +1 -1
  511. package/sidebar/sidebar-header/sidebar-header.component.d.ts +1 -1
  512. package/sidebar/sidebar-viewport/scroll-token/scroll.token.d.ts +1 -7
  513. package/sidebar/sidebar-viewport/sidebar-viewport.component.d.ts +5 -17
  514. package/sidebar/sidebar-viewport/utils/content-pad.d.ts +2 -2
  515. package/sidebar/sidebar-viewport-backdrop/sidebar-viewport-backdrop.component.d.ts +1 -1
  516. package/sidebar/sidebar.d.ts +8 -0
  517. package/sidebar/sidebar.module.d.ts +13 -10
  518. package/tabs/README.md +19 -0
  519. package/tabs/examples/basic-tabs/basic-tabs.component.d.ts +6 -0
  520. package/tabs/examples/custom-select-tabs/custom-select-tabs.component.d.ts +11 -0
  521. package/tabs/examples/disabled-tabs/disabled-tabs.component.d.ts +6 -0
  522. package/tabs/examples/index.d.ts +1 -0
  523. package/tabs/examples/initially-select-tab/initially-select-tab.component.d.ts +6 -0
  524. package/tabs/examples/public_api.d.ts +2 -0
  525. package/tabs/index.d.ts +1 -0
  526. package/tabs/public_api.d.ts +5 -0
  527. package/tabs/src/tabs-theme.scss +22 -0
  528. package/tabs/tabs/tab/tab.component.d.ts +57 -0
  529. package/tabs/tabs/tab-activator/tab-activator.component.d.ts +37 -0
  530. package/tabs/tabs/tab-label/tab-label.component.d.ts +19 -0
  531. package/tabs/tabs/tab-panel/tab-panel.component.d.ts +38 -0
  532. package/tabs/tabs/tabs.component.d.ts +104 -0
  533. package/tabs/tabs.d.ts +6 -0
  534. package/text-snippet/README.md +2 -0
  535. package/text-snippet/examples/basic-text-snippet/basic-text-snippet.component.d.ts +5 -0
  536. package/text-snippet/examples/index.d.ts +1 -0
  537. package/text-snippet/examples/public_api.d.ts +2 -0
  538. package/text-snippet/index.d.ts +1 -0
  539. package/text-snippet/public_api.d.ts +1 -0
  540. package/text-snippet/text-snippet.component.d.ts +19 -0
  541. package/toast/README.md +109 -34
  542. package/toast/options/daff-toast-options.d.ts +1 -3
  543. package/toast/public_api.d.ts +1 -0
  544. package/toast/service/toast.service.d.ts +4 -3
  545. package/toast/src/toast-theme.scss +14 -10
  546. package/toast/toast/toast-provider.d.ts +2 -0
  547. package/toast/toast/toast-template.component.d.ts +1 -1
  548. package/toast/toast/toast.component.d.ts +1 -3
  549. package/toast/toast-actions/toast-actions.directive.d.ts +1 -1
  550. package/toast/toast-message/toast-message.directive.d.ts +1 -1
  551. package/toast/toast-title/toast-title.directive.d.ts +1 -1
  552. package/toast/toast.module.d.ts +14 -12
  553. package/tree/README.md +41 -0
  554. package/tree/public_api.d.ts +1 -2
  555. package/tree/tree/tree.component.d.ts +1 -1
  556. package/tree/tree-item/tree-item.directive.d.ts +1 -1
  557. package/tree/tree.d.ts +3 -0
  558. package/tree/tree.module.d.ts +7 -4
  559. package/accordion/examples/accordion-examples.module.d.ts +0 -9
  560. package/button/button/button.component.d.ts +0 -80
  561. package/button/src/button-theme-variants/button.scss +0 -26
  562. package/button/src/button-theme-variants/flat.scss +0 -25
  563. package/button/src/button-theme-variants/icon.scss +0 -21
  564. package/button/src/button-theme-variants/raised.scss +0 -36
  565. package/button/src/button-theme-variants/stroked.scss +0 -28
  566. package/button/src/button-theme-variants/underline.scss +0 -9
  567. package/button/src/button-theme.scss +0 -574
  568. package/esm2022/accordion/examples/accordion-examples.module.mjs +0 -26
  569. package/esm2022/button/button/button.component.mjs +0 -207
  570. package/esm2022/loading-icon/examples/loading-icon-diameter/loading-icon-diameter.component.mjs +0 -13
  571. package/esm2022/tree/utils/transform-in-place.mjs +0 -23
  572. package/loading-icon/examples/loading-icon-diameter/loading-icon-diameter.component.d.ts +0 -5
  573. package/tree/utils/transform-in-place.d.ts +0 -15
@@ -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/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} 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`. `daff-sidebar` is intended to be\n * a simplified version (with a different design) of `mat-drawer`.\n */\n@Component({\n selector: 'daff-sidebar',\n templateUrl: './sidebar.component.html',\n styleUrls: ['./sidebar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n daffSidebarAnimations.transformSidebar,\n ],\n})\nexport class DaffSidebarComponent {\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 * The animation state of the sidebar.\n */\n @HostBinding('@transformSidebar') get transformSidebar() {\n return {\n value: getAnimationState(this.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 * Whether or not the sidebar is open.\n */\n @Input() open = false;\n\n /**\n * The width of the sidebar.\n */\n get width() {\n return this._elementRef.nativeElement.offsetWidth;\n }\n\n constructor(\n private _elementRef: ElementRef<HTMLElement>,\n private _ngZone: NgZone,\n private _focusTrapFactory: ConfigurableFocusTrapFactory,\n private _focusStack: DaffFocusStackService,\n @Inject(DOCUMENT) private _doc: any,\n ) {\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 * 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 * 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 * 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 }\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@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 @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})\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@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 {\n Component,\n HostBinding,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n} from '@angular/core';\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\n})\nexport class DaffSidebarHeaderComponent {\n @HostBinding('class.daff-sidebar-header') class = true;\n}\n","<ng-content select=\"[daffSidebarHeaderAction]\"></ng-content>\n<ng-content select=\"[daffSidebarHeaderTitle]\"></ng-content>\n<ng-content></ng-content>","/**\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 InjectionToken,\n inject,\n} from '@angular/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\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 */\nexport const DAFF_SIDEBAR_SCROLL_TOKEN = new InjectionToken<DaffSidebarScroll>('DAFF_SIDEBAR_SCROLL_TOKEN', {\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 * 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 associated content shift.\n */\nexport const sidebarViewportContentPadding = (sidebars: QueryList<DaffSidebarComponent>, side: DaffSidebarSide): number =>\n sidebars.reduce((acc: number, sidebar) => {\n if(!(sidebar.mode === DaffSidebarModeEnum.SideFixed && sidebar.open)) {\n return acc;\n }\n\n if(sidebar.side === side){\n return 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","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 @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 ngOnInit(): void {\n this.interactableClass = this.interactable;\n }\n\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 @HostListener('@fadeBackdrop.done', ['$event'])\n animationDone(e: AnimationEvent) {\n this.interactableClass = !(e.toState === ':leave' || e.toState === 'non-interactable');\n }\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 @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 { sidebarViewportContentPadding } 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 { DaffSidebarMode } from '../helper/sidebar-mode';\nimport { DaffSidebarComponent } from '../sidebar/sidebar.component';\n\n/**\n * The DaffSidebarViewport is the \"holder\" of sidebars throughout an entire application.\n * It's generally only used once, like\n *\n * ```html\n * <daff-sidebar-viewport>\n * <daff-sidebar></daff-sidebar>\n * <p>Some Content</p>\n * </daff-sidebar-viewport>\n * ```\n *\n * Importantly, its possible for there to be multiple sidebars of many modes\n * at the same time. @see {@link DaffSidebarMode }\n *\n * Since this is a functional component, it's possible to have multiple \"open\" sidebars\n * at the same time. As a result, this component attempts to gracefully handle these situations.\n * However, importantly, there can only be one sidebar of each mode, on each side, at any given time.\n * If this is violated, this component will throw an exception.\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 { provide: DAFF_SIDEBAR_SCROLL_TOKEN, useFactory: daffSidebarViewportScrollFactory },\n ],\n})\nexport class DaffSidebarViewportComponent implements AfterContentChecked, OnDestroy {\n @HostBinding('class.daff-sidebar-viewport') hostClass = true;\n\n @HostBinding('class') get classes() {\n return {\n 'daff-sidebar-viewport': true,\n [this.navPlacement]: true,\n };\n };\n\n get isNavOnSide() {\n return this.navPlacement === DaffNavPlacementEnum.BESIDE;\n }\n\n onContentAnimationStart(e: AnimationEvent) {\n if(e.toState === 'open') {\n this._elementRef.nativeElement.style.overflow = 'hidden';\n }\n }\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. The default is set to `top`.\n * 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 /**\n * The left padding on the content when left side-fixed sidebars are open.\n */\n public _contentPadLeft = 0;\n\n /**\n * The left padding on the nav when left side-fixed sidebars are open.\n */\n public _navPadLeft = 0;\n\n /**\n * The right padding on the content when right side-fixed sidebars are open.\n */\n public _contentPadRight = 0;\n\n /**\n * The right padding on the content when right side-fixed sidebars are open.\n */\n public _navPadRight = 0;\n\n /**\n * Whether or not the backdrop is interactable\n */\n _backdropInteractable = false;\n\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 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\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 const nextLeftPadding = sidebarViewportContentPadding(this.sidebars, 'left');\n if(this._contentPadLeft !== nextLeftPadding) {\n this._contentPadLeft = nextLeftPadding;\n this._navPadLeft = this.isNavOnSide ? this._contentPadLeft : null;\n this.updateAnimationState();\n this.cdRef.markForCheck();\n }\n\n const nextRightPadding = sidebarViewportContentPadding(this.sidebars, 'right');\n if(this._contentPadRight !== nextRightPadding) {\n this._contentPadRight = nextRightPadding;\n this._navPadRight = this.isNavOnSide ? this._contentPadRight : null;\n this.updateAnimationState();\n this.cdRef.markForCheck();\n }\n }\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 * The called when the backdrop of the viewport is clicked upon.\n */\n _backdropClicked(): void {\n this.backdropClicked.emit();\n }\n}\n","<ng-content select=\"daff-sidebar:not([side=right])\"></ng-content>\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 [style.padding-left.px]=\"_navPadLeft\"\n [style.padding-right.px]=\"_navPadRight\">\n <ng-content select=\"[daff-sidebar-viewport-nav]\"></ng-content>\n</div>\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 [style.padding-left.px]=\"_contentPadLeft\"\n [style.padding-right.px]=\"_contentPadRight\">\n <ng-content></ng-content>\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';\nimport { DaffSidebarViewportBackdropComponent } from './sidebar-viewport-backdrop/sidebar-viewport-backdrop.component';\n\n@NgModule({\n imports: [\n CommonModule,\n A11yModule,\n ],\n declarations: [\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n DaffSidebarHeaderComponent,\n DaffSidebarFooterComponent,\n DaffSidebarHeaderTitleDirective,\n DaffSidebarHeaderActionDirective,\n DaffSidebarViewportBackdropComponent,\n ],\n exports: [\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n DaffSidebarHeaderComponent,\n DaffSidebarFooterComponent,\n DaffSidebarHeaderTitleDirective,\n DaffSidebarHeaderActionDirective,\n DaffSidebarViewportBackdropComponent,\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","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["getAnimationState","i1.DaffSidebarViewportBackdropComponent"],"mappings":";;;;;;;;;;;AAEA;;AAEG;AACI,MAAM,SAAS,GAAG,CAAC,SAAoC,EAAE,OAAkC,KAAa;AAC7G,IAAA,IAAG,SAAS,KAAK,YAAY,IAAI,OAAO,KAAK,MAAM,IAAI,SAAS,KAAK,MAAM,IAAI,OAAO,KAAK,YAAY,EAAE;AACvG,QAAA,OAAO,KAAK,CAAC;KACd;IAED,IAAG,OAAO,KAAK,YAAY,IAAI,OAAO,KAAK,MAAM,EAAE;AACjD,QAAA,OAAO,IAAI,CAAC;KACb;AACD,IAAA,OAAO,KAAK,CAAC;AACf,CAAC;;ACLD,MAAM,QAAQ,GAAG,OAAO,CAAC;AACzB,MAAM,0BAA0B,GAAG,gCAAgC,CAAC;AACpE,MAAM,2BAA2B,GAAG,8BAA8B,CAAC;AAE5D,MAAM,qBAAqB,GAI9B;AACF,IAAA,gBAAgB,EAAE,OAAO,CAAC,kBAAkB,EAAE;;;AAG5C,QAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC;AAClB,YAAA,SAAS,EAAE,MAAM;AAClB,SAAA,CAAC,CAAC;AACH,QAAA,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC;AACpB,YAAA,SAAS,EAAE,uBAAuB;SACnC,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAC,CAAC;QACnC,UAAU,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,GAAG,GAAG,GAAG,2BAA2B,CAAC,CAAC;QACnF,UAAU,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,GAAG,GAAG,GAAG,0BAA0B,CAAC,CAAC;KACnF,CAAC;AACF,IAAA,gBAAgB,EAAE,OAAO,CAAC,kBAAkB,EAAE;;;AAG5C,QAAA,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC;AACpB,YAAA,SAAS,EAAE,MAAM;AAClB,SAAA,CAAC,CAAC;AACH,QAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC;AAClB,YAAA,SAAS,EAAE,uBAAuB;SACnC,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAC,CAAC;QACnC,UAAU,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,GAAG,GAAG,GAAG,0BAA0B,CAAC,CAAC;QAClF,UAAU,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,GAAG,GAAG,GAAG,2BAA2B,CAAC,CAAC;KACpF,CAAC;AACF,IAAA,eAAe,EAAE,OAAO,CAAC,iBAAiB,EAAE;AAC1C,QAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC;AAClB,YAAA,OAAO,EAAE,CAAC;AACX,SAAA,CAAC,CAAC;AACH,QAAA,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC;AACpB,YAAA,OAAO,EAAE,CAAC;AACX,SAAA,CAAC,CAAC;QACH,UAAU,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,GAAG,GAAG,GAAG,2BAA2B,CAAC,CAAC;QACnF,UAAU,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,GAAG,GAAG,GAAG,0BAA0B,CAAC,CAAC;KACnF,CAAC;CACH,CAAC;AAEF,IAAY,0BAQX,CAAA;AARD,CAAA,UAAY,0BAA0B,EAAA;AACpC,IAAA,0BAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACb,IAAA,0BAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,0BAAA,CAAA,WAAA,CAAA,GAAA,YAAwB,CAAA;AACxB,IAAA,0BAAA,CAAA,aAAA,CAAA,GAAA,cAA4B,CAAA;AAC5B,IAAA,0BAAA,CAAA,eAAA,CAAA,GAAA,iBAAiC,CAAA;AACjC,IAAA,0BAAA,CAAA,iBAAA,CAAA,GAAA,mBAAqC,CAAA;AACrC,IAAA,0BAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACf,CAAC,EARW,0BAA0B,KAA1B,0BAA0B,GAQrC,EAAA,CAAA,CAAA;;ACzDM,MAAMA,mBAAiB,GAAG,CAAC,IAAa,EAAE,IAAqB,KAA+B;AACnG,IAAA,IAAG,IAAI,KAAK,MAAM,EAAE;AAClB,QAAA,OAAO,MAAM,CAAC;KACf;AAED,IAAA,IAAG,IAAI,KAAK,YAAY,IAAI,IAAI,EAAE;AAChC,QAAA,OAAO,iBAAiB,CAAC;KAC1B;AAED,IAAA,IAAG,IAAI,KAAK,YAAY,IAAI,CAAC,IAAI,EAAE;AACjC,QAAA,OAAO,mBAAmB,CAAC;KAC5B;AAED,IAAA,IAAG,IAAI,IAAI,IAAI,KAAK,OAAO,EAAE;AAC3B,QAAA,OAAO,YAAY,CAAC;KACrB;AAED,IAAA,IAAG,CAAC,IAAI,IAAI,IAAI,KAAK,OAAO,EAAE;AAC5B,QAAA,OAAO,cAAc,CAAC;KACvB;IAED,IAAG,IAAI,EAAE;AACP,QAAA,OAAO,MAAM,CAAC;KACf;SAAM;AACL,QAAA,OAAO,QAAQ,CAAC;KACjB;AACH,CAAC;;AC7BM,MAAM,wBAAwB,GACnC,CAAC,IAAqB,EAAE,KAAa,KAAa,IAAI,KAAK,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI;;ACiCtG;;;;AAIG;MAUU,oBAAoB,CAAA;AAC/B;;;;AAIG;AACH,IAAA,IAA0B,OAAO,GAAA;QAC/B,OAAO;AACL,YAAA,cAAc,EAAE,IAAI;AACpB,YAAA,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI;AACjB,YAAA,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI;SAClB,CAAC;KACH;;AAED;;AAEG;AACH,IAAA,IAAsC,gBAAgB,GAAA;QACpD,OAAO;YACL,KAAK,EAAEA,mBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;AAC9C,YAAA,MAAM,EAAE,EAAE,KAAK,EAAE,wBAAwB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;SACnE,CAAC;KACH;AAsBD;;AAEG;AACH,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,CAAC;KACnD;IAED,WACU,CAAA,WAAoC,EACpC,OAAe,EACf,iBAA+C,EAC/C,WAAkC,EAChB,IAAS,EAAA;QAJ3B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAyB;QACpC,IAAO,CAAA,OAAA,GAAP,OAAO,CAAQ;QACf,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAA8B;QAC/C,IAAW,CAAA,WAAA,GAAX,WAAW,CAAuB;QAChB,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAK;AAhCrC;;AAEG;AACO,QAAA,IAAA,CAAA,aAAa,GAAuB,IAAI,YAAY,EAAQ,CAAC;AAEvE;;AAEG;QACM,IAAI,CAAA,IAAA,GAAoB,MAAM,CAAC;AAExC;;AAEG;QACM,IAAI,CAAA,IAAA,GAAoB,MAAM,CAAC;AAExC;;AAEG;QACM,IAAI,CAAA,IAAA,GAAG,KAAK,CAAC;AAiBpB;;;;AAIG;AACH,QAAA,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,MAAK;AAClC,YAAA,SAAS,CAAgB,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,IAAI,CACtE,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CACxC,CAAC,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAK;AACzC,gBAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;gBAC1B,KAAK,CAAC,eAAe,EAAE,CAAC;aACzB,CAAC,CAAC,CAAC;AACN,SAAC,CAAC,CAAC;KACJ;AAID;;;;AAIG;AACkD,IAAA,gBAAgB,CAAC,CAAiB,EAAA;AACrF,QAAA,IAAI,CAAC,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,CAAC,OAAO,KAAK,YAAY,IAAI,CAAC,CAAC,OAAO,KAAK,iBAAiB,EAAE;YACzF,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC;SAC7D;KACF;AAED;;;AAGG;AACiD,IAAA,mBAAmB,CAAC,CAAiB,EAAA;QACvF,IAAG,SAAS,CAA4B,CAAC,CAAC,SAAS,EAA6B,CAAC,CAAC,OAAO,CAAC,EAAE;AAC1F,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;AAEhF,YAAA,MAAM,cAAc,GAAiB,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC,6BAA6B,CAAE,CAAC;YAElH,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAE/C,IAAG,cAAc,EAAE;gBACjB,cAAc,CAAC,KAAK,EAAE,CAAC;aACxB;iBAAM;gBACL,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,GAAG,CAAC,CAAC;AAC9B,gBAAA,IAAI,CAAC,WAAW,CAAC,aAAc,CAAC,KAAK,EAAE,CAAC;aACvD;SACF;aAAM;AACL,YAAA,IAAG,IAAI,CAAC,UAAU,EAAE;AAClB,gBAAA,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;AAC1B,gBAAA,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;AAC5B,gBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;aACxB;SACF;AAED;;;AAGG;AACH,QAAA,IAAI,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,KAAK,cAAc,IAAI,CAAC,CAAC,OAAO,KAAK,mBAAmB,EAAE;YAC/F,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;SAC5D;KACF;AAxHU,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,mJAwDrB,QAAQ,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;qHAxDP,oBAAoB,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,yBAAA,EAAA,0BAAA,EAAA,wBAAA,EAAA,6BAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,uBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EClDjC,6LAIsD,ED0CxC,MAAA,EAAA,CAAA,isBAAA,CAAA,EAAA,UAAA,EAAA;AACV,YAAA,qBAAqB,CAAC,gBAAgB;AACvC,SAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAEU,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAThC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,EAGP,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACnC,UAAA,EAAA;AACV,wBAAA,qBAAqB,CAAC,gBAAgB;AACvC,qBAAA,EAAA,QAAA,EAAA,6LAAA,EAAA,MAAA,EAAA,CAAA,isBAAA,CAAA,EAAA,CAAA;;0BA0DE,MAAM;2BAAC,QAAQ,CAAA;yCAlDQ,OAAO,EAAA,CAAA;sBAAhC,WAAW;uBAAC,OAAO,CAAA;gBAWkB,gBAAgB,EAAA,CAAA;sBAArD,WAAW;uBAAC,mBAAmB,CAAA;gBAUtB,aAAa,EAAA,CAAA;sBAAtB,MAAM;gBAKE,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAKG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAKG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAuC+C,gBAAgB,EAAA,CAAA;sBAApE,YAAY;uBAAC,yBAAyB,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAUC,mBAAmB,EAAA,CAAA;sBAAtE,YAAY;uBAAC,wBAAwB,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MEjIvC,0BAA0B,CAAA;AANvC,IAAA,WAAA,GAAA;QAO4C,IAAK,CAAA,KAAA,GAAG,IAAI,CAAC;AACxD,KAAA;iIAFY,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA1B,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,gIAJ3B,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,+CAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAI1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBANtC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAqB,EACrB,QAAA,EAAA,2BAA2B,EAEpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,MAAA,EAAA,CAAA,+CAAA,CAAA,EAAA,CAAA;8BAGL,KAAK,EAAA,CAAA;sBAA9C,WAAW;uBAAC,2BAA2B,CAAA;;;MCL7B,gCAAgC,CAAA;AAH7C,IAAA,WAAA,GAAA;AAIE;;AAEG;QAC+C,IAAK,CAAA,KAAA,GAAG,IAAI,CAAC;AAChE,KAAA;iIALY,gCAAgC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;qHAAhC,gCAAgC,EAAA,QAAA,EAAA,2BAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mCAAA,EAAA,YAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAhC,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAH5C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,2BAA2B;AACtC,iBAAA,CAAA;8BAKmD,KAAK,EAAA,CAAA;sBAAtD,WAAW;uBAAC,mCAAmC,CAAA;;;MCJrC,+BAA+B,CAAA;AAH5C,IAAA,WAAA,GAAA;AAIE;;AAEG;QAC8C,IAAK,CAAA,KAAA,GAAG,IAAI,CAAC;AAC/D,KAAA;iIALY,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;qHAA/B,+BAA+B,EAAA,QAAA,EAAA,0BAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kCAAA,EAAA,YAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAA/B,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAH3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,0BAA0B;AACrC,iBAAA,CAAA;8BAKkD,KAAK,EAAA,CAAA;sBAArD,WAAW;uBAAC,kCAAkC,CAAA;;;MCGpC,0BAA0B,CAAA;AARvC,IAAA,WAAA,GAAA;QAS4C,IAAK,CAAA,KAAA,GAAG,IAAI,CAAC;AACxD,KAAA;iIAFY,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA1B,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,gICfvC,0JAEyB,EAAA,MAAA,EAAA,CAAA,onBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDaZ,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBARtC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAqB,iBAGhB,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,0JAAA,EAAA,MAAA,EAAA,CAAA,onBAAA,CAAA,EAAA,CAAA;8BAIL,KAAK,EAAA,CAAA;sBAA9C,WAAW;uBAAC,2BAA2B,CAAA;;;AEhB1C;;;;AAIG;AACI,MAAM,iBAAiB,GAAG,CAAC,OAAoB,KAAI;AACxD,IAAA,IAAI,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;AAE3C,IAAA,OAAO,cAAc,KAAK,IAAI,EAAE;AAC9B,QAAA,IAAI,cAAc,CAAC,OAAO,KAAK,uBAAuB,EAAE;AACtD,YAAA,OAAO,IAAI,CAAC;SACb;AACD,QAAA,cAAc,GAAG,cAAc,CAAC,aAAa,CAAC;KAC/C;AAED,IAAA,OAAO,KAAK,CAAC;AACf,CAAC;;ACVD;;;AAGG;AACH,IAAY,oBAGX,CAAA;AAHD,CAAA,UAAY,oBAAoB,EAAA;AAC9B,IAAA,oBAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACf,IAAA,oBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACnB,CAAC,EAHW,oBAAoB,KAApB,oBAAoB,GAG/B,EAAA,CAAA,CAAA;;ACID;;;;AAIG;AACI,MAAM,yBAAyB,GAAG,IAAI,cAAc,CAAoB,2BAA2B,EAAE;AAC1G,IAAA,UAAU,EAAE,MAAM;IAClB,OAAO,EAAE,MAAK;AACZ,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,OAAO;YACL,MAAM,EAAE,MAAK;gBACX,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;aACrC;YACD,OAAO,EAAE,MAAK;gBACZ,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;aACzC;SACF,CAAC;KACH;AACF,CAAA,CAAC,CAAC;AAGH;;;;;AAKG;AACI,MAAM,gCAAgC,GAAG,MAAwB;IACtE,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC;IACjD,OAAO;QACL,MAAM,EAAE,MAAK;AACX,YAAA,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;SAC/B;QACD,OAAO,EAAE,MAAK;AACZ,YAAA,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;SACnC;KACF,CAAC;AACJ,CAAC;;AClDD;;AAEG;AACI,MAAM,mCAAmC,GAAG,CAAC,QAAyC,KAAc,QAAQ,CAAC,MAAM,CACxH,CAAC,GAAY,EAAE,OAAO,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,KAAK,OAAO,CAAC,IAAI,KAAK,GAAG,EACzG,KAAK,CAAC;;ACHR;;AAEG;AACI,MAAM,6BAA6B,GAAG,CAAC,QAAyC,EAAE,IAAqB,KAC5G,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,OAAO,KAAI;AACvC,IAAA,IAAG,EAAE,OAAO,CAAC,IAAI,KAAA,YAAA,wCAAsC,OAAO,CAAC,IAAI,CAAC,EAAE;AACpE,QAAA,OAAO,GAAG,CAAC;KACZ;AAED,IAAA,IAAG,OAAO,CAAC,IAAI,KAAK,IAAI,EAAC;QACvB,OAAO,OAAO,CAAC,KAAK,CAAC;KACtB;SAAM;;;AAGL,QAAA,OAAO,GAAG,CAAC;KACZ;AACH,CAAC,EAAE,CAAC,CAAC;;ACjBA,MAAM,wBAAwB,GAAG,CAAC,IAAqB,EAAE,IAAa,MAAe,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC;AAEtH;;AAEG;AACI,MAAM,2BAA2B,GAAG,CAAC,QAAyC,KACnF,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,OAAO,KAAI;AACvC,IAAA,IAAG,CAAC,wBAAwB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE;AACxD,QAAA,OAAO,GAAG,CAAC;KACZ;AAED,IAAA,IAAG,OAAO,CAAC,IAAI,KAAK,MAAM,EAAC;QACzB,OAAO,OAAO,CAAC,KAAK,CAAC;KACtB;SAAM,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,IAAI,GAAG,KAAK,CAAC,EAAE;AAChD,QAAA,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;KAC3B;SAAM;;;AAGL,QAAA,OAAO,GAAG,CAAC;KACZ;AACH,CAAC,EAAE,CAAC,CAAC;;AChBN,CAAC;AAKK,MAAM,gCAAgC,GAAG,CAAC,IAAa,KAC5D,IAAI,GAAG,0BAA0B,CAAC,IAAI,GAAG,0BAA0B,CAAC,MAAM;;ACN5E,MAAM,iBAAiB,GAAG,OAAO,CAAC;AAClC,MAAM,qBAAqB,GAAG,8BAA8B,CAAC;AAC7D,MAAM,oBAAoB,GAAG,gCAAgC,CAAC;AAEvD,MAAM,qCAAqC,GAE9C;AACF,IAAA,YAAY,EAAE,OAAO,CAAC,cAAc,EAAE;QACpC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5C,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAChD,UAAU,CAAC,kCAAkC,EAAE,OAAO,CAAC,iBAAiB,GAAG,GAAG,GAAG,qBAAqB,CAAC,CAAC;QACxG,UAAU,CAAC,kCAAkC,EAAE,OAAO,CAAC,iBAAiB,GAAG,GAAG,GAAG,oBAAoB,CAAC,CAAC;QACvG,UAAU,CAAC,QAAQ,EAAE;AACnB,YAAA,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AACrB,YAAA,OAAO,CAAC,iBAAiB,GAAG,GAAG,GAAG,oBAAoB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;SAC/E,CAAC;QACF,UAAU,CAAC,QAAQ,EAAE;AACnB,YAAA,OAAO,CAAC,iBAAiB,GAAG,GAAG,GAAG,qBAAqB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;SAChF,CAAC;KACH,CAAC;CACH;;AC5BM,MAAM,iBAAiB,GAAG,CAAC,YAAqB,KAA+C,YAAY,GAAG,cAAc,GAAG,kBAAkB;;MCuB3I,oCAAoC,CAAA;AATjD,IAAA,WAAA,GAAA;QAWqC,IAAiB,CAAA,iBAAA,GAAG,IAAI,CAAC;AAE5D;;AAEG;QACwC,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;AAE/D;;AAEG;QACM,IAAY,CAAA,YAAA,GAAG,IAAI,CAAC;AAE7B;;;AAGG;QACuC,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;AAE7D;;AAEG;AACO,QAAA,IAAA,CAAA,eAAe,GAAuB,IAAI,YAAY,EAAQ,CAAC;AA8B1E,KAAA;IA5BC,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC;KAC5C;AAED;;;AAGG;AACH,IAAA,IAAkC,mBAAmB,GAAA;AACnD,QAAA,OAAO,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAC7C;AAGD,IAAA,aAAa,CAAC,CAAiB,EAAA;AAC7B,QAAA,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,KAAK,kBAAkB,CAAC,CAAC;KACxF;AAGD,IAAA,cAAc,CAAC,CAAiB,EAAA;AAC9B,QAAA,IAAG,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,KAAK,cAAc,EAAC;AACxD,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;SAC/B;KACF;IAGD,iBAAiB,GAAA;AACf,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;KAC7B;iIApDU,oCAAoC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;qHAApC,oCAAoC,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,OAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,oBAAA,EAAA,uBAAA,EAAA,qBAAA,EAAA,wBAAA,EAAA,OAAA,EAAA,qBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,oBAAA,EAAA,wBAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAPrC,2BAA2B,EAEzB,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,mcAAA,CAAA,EAAA,UAAA,EAAA;AACV,YAAA,qCAAqC,CAAC,YAAY;AACnD,SAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAGU,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBAThD,SAAS;+BACE,gCAAgC,EAAA,QAAA,EAChC,2BAA2B,EAEzB,UAAA,EAAA;AACV,wBAAA,qCAAqC,CAAC,YAAY;qBACnD,EACgB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,MAAA,EAAA,CAAA,mcAAA,CAAA,EAAA,CAAA;8BAIZ,iBAAiB,EAAA,CAAA;sBAAnD,WAAW;uBAAC,oBAAoB,CAAA;gBAKU,WAAW,EAAA,CAAA;sBAArD,KAAK;;sBAAI,WAAW;uBAAC,mBAAmB,CAAA;gBAKhC,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAMoC,UAAU,EAAA,CAAA;sBAAnD,KAAK;;sBAAI,WAAW;uBAAC,kBAAkB,CAAA;gBAK9B,eAAe,EAAA,CAAA;sBAAxB,MAAM;gBAU2B,mBAAmB,EAAA,CAAA;sBAApD,WAAW;uBAAC,eAAe,CAAA;gBAK5B,aAAa,EAAA,CAAA;sBADZ,YAAY;uBAAC,oBAAoB,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAM9C,cAAc,EAAA,CAAA;sBADb,YAAY;uBAAC,qBAAqB,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAQ/C,iBAAiB,EAAA,CAAA;sBADhB,YAAY;uBAAC,OAAO,CAAA;;;AC3BvB;;;;;;;;;;;;;;;;;;AAkBG;MAaU,4BAA4B,CAAA;AAGvC,IAAA,IAA0B,OAAO,GAAA;QAC/B,OAAO;AACL,YAAA,uBAAuB,EAAE,IAAI;AAC7B,YAAA,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI;SAC1B,CAAC;KACH;;AAED,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,YAAY,KAAK,oBAAoB,CAAC,MAAM,CAAC;KAC1D;AAED,IAAA,uBAAuB,CAAC,CAAiB,EAAA;AACvC,QAAA,IAAG,CAAC,CAAC,OAAO,KAAK,MAAM,EAAE;YACvB,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;SAC1D;KACF;AAED,IAAA,sBAAsB,CAAC,CAAiB,EAAA;AACtC,QAAA,IAAG,CAAC,CAAC,OAAO,KAAK,QAAQ,EAAE;YACzB,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;SACtD;KACF;IAQD,WACU,CAAA,KAAwB,EACxB,WAAoC,EACW,UAA6B,EACd,cAAc,EACzC,MAAyB,EAAA;QAJ5D,IAAK,CAAA,KAAA,GAAL,KAAK,CAAmB;QACxB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAyB;QACW,IAAU,CAAA,UAAA,GAAV,UAAU,CAAmB;QACd,IAAc,CAAA,cAAA,GAAd,cAAc,CAAA;QACzC,IAAM,CAAA,MAAA,GAAN,MAAM,CAAmB;QApC1B,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC;AAyB7D;;;AAGG;AACM,QAAA,IAAA,CAAA,YAAY,GAAqB,oBAAoB,CAAC,KAAK,CAAC;AAiBrE;;;AAGG;QACK,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;AAEvB;;AAEG;QACI,IAAe,CAAA,eAAA,GAAG,CAAC,CAAC;AAE3B;;AAEG;QACI,IAAW,CAAA,WAAA,GAAG,CAAC,CAAC;AAEvB;;AAEG;QACI,IAAgB,CAAA,gBAAA,GAAG,CAAC,CAAC;AAE5B;;AAEG;QACI,IAAY,CAAA,YAAA,GAAG,CAAC,CAAC;AAExB;;AAEG;QACH,IAAqB,CAAA,qBAAA,GAAG,KAAK,CAAC;AAE9B;;AAEG;AACH,QAAA,IAAA,CAAA,eAAe,GAAgD,EAAE,KAAK,EAAE,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAC,CAAC;AAErI;;AAEG;AACO,QAAA,IAAA,CAAA,eAAe,GAAuB,IAAI,YAAY,EAAQ,CAAC;KAhDpE;IAkDL,qBAAqB,GAAA;QACnB,MAAM,SAAS,GAAG,2BAA2B,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;AACpE,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;AAC7B,YAAA,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YAExB,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAC5B,YAAA,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;SAC3B;QAED,MAAM,wBAAwB,GAAG,mCAAmC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACpF,QAAA,IAAI,IAAI,CAAC,qBAAqB,KAAK,wBAAwB,EAAE;AAC3D,YAAA,IAAI,CAAC,qBAAqB,GAAG,wBAAwB,CAAC;YACtD,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAC5B,YAAA,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YAC1B,IAAG,wBAAwB,EAAE;AAC3B,gBAAA,IAAG,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE;AAC7E,oBAAA,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;iBAC3B;qBAAM;AACL,oBAAA,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;iBACvB;aACF;AAAM,iBAAA;AACL,gBAAA,IAAG,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE;AAC7E,oBAAA,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;iBAC1B;qBAAM;AACL,oBAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;iBACtB;aACF;SACF;QAAA,CAAC;QAEF,MAAM,eAAe,GAAG,6BAA6B,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAC7E,QAAA,IAAG,IAAI,CAAC,eAAe,KAAK,eAAe,EAAE;AAC3C,YAAA,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;AACvC,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAClE,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAC5B,YAAA,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;SAC3B;QAED,MAAM,gBAAgB,GAAG,6BAA6B,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC/E,QAAA,IAAG,IAAI,CAAC,gBAAgB,KAAK,gBAAgB,EAAE;AAC7C,YAAA,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;AACzC,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YACpE,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAC5B,YAAA,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;SAC3B;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAG,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE;AAC7E,YAAA,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;SAC1B;aAAM;AACL,YAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;SACtB;KACF;AAED;;;;;AAKG;IACK,oBAAoB,GAAA;QAC1B,IAAI,CAAC,eAAe,GAAG;AACrB,YAAA,KAAK,EAAE,gCAAgC,CACrC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAY,EAAE,OAAO,KAAK,GAAG,IAAI,wBAAwB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CACpH;AACD,YAAA,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;SAC/B,CAAC;KACH;AAED;;;AAGG;IACH,gBAAgB,GAAA;AACd,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;KAC7B;AAnKU,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,EAmC7B,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,yBAAyB,EACzB,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,4BAA4B,6CAC5B,yBAAyB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AArCxB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,EAJ5B,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,OAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,6BAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,cAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA,EAAE,OAAO,EAAE,yBAAyB,EAAE,UAAU,EAAE,gCAAgC,EAAE;SACrF,EA+CgB,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,SAAA,EAAA,oBAAoB,EC1HvC,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,q/BA2BA,ED2Cc,MAAA,EAAA,CAAA,koBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,oCAAA,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,cAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA;AACV,YAAA,qBAAqB,CAAC,gBAAgB;AACvC,SAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAKU,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAZxC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,EAGhB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACnC,UAAA,EAAA;AACV,wBAAA,qBAAqB,CAAC,gBAAgB;qBACvC,EACU,SAAA,EAAA;AACT,wBAAA,EAAE,OAAO,EAAE,yBAAyB,EAAE,UAAU,EAAE,gCAAgC,EAAE;AACrF,qBAAA,EAAA,QAAA,EAAA,q/BAAA,EAAA,MAAA,EAAA,CAAA,koBAAA,CAAA,EAAA,CAAA;;0BAqCE,MAAM;2BAAC,yBAAyB,CAAA;;0BAAG,QAAQ;;0BAC3C,MAAM;2BAAC,4BAA4B,CAAA;;0BAAG,QAAQ;;0BAAI,QAAQ;;0BAC1D,MAAM;2BAAC,yBAAyB,CAAA;yCApCS,SAAS,EAAA,CAAA;sBAApD,WAAW;uBAAC,6BAA6B,CAAA;gBAEhB,OAAO,EAAA,CAAA;sBAAhC,WAAW;uBAAC,OAAO,CAAA;gBA2BX,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAeiE,QAAQ,EAAA,CAAA;sBAA9E,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,oBAAoB,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAA;gBAyCnD,eAAe,EAAA,CAAA;sBAAxB,MAAM;;;ME/HI,iBAAiB,CAAA;iIAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAjB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,iBAlB1B,oBAAoB;YACpB,4BAA4B;YAC5B,0BAA0B;YAC1B,0BAA0B;YAC1B,+BAA+B;YAC/B,gCAAgC;AAChC,YAAA,oCAAoC,aAVpC,YAAY;AACZ,YAAA,UAAU,aAYV,oBAAoB;YACpB,4BAA4B;YAC5B,0BAA0B;YAC1B,0BAA0B;YAC1B,+BAA+B;YAC/B,gCAAgC;YAChC,oCAAoC,CAAA,EAAA,CAAA,CAAA,EAAA;AAG3B,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,YAtB1B,YAAY;YACZ,UAAU,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAqBD,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAxB7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,UAAU;AACX,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACZ,oBAAoB;wBACpB,4BAA4B;wBAC5B,0BAA0B;wBAC1B,0BAA0B;wBAC1B,+BAA+B;wBAC/B,gCAAgC;wBAChC,oCAAoC;AACrC,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,oBAAoB;wBACpB,4BAA4B;wBAC5B,0BAA0B;wBAC1B,0BAA0B;wBAC1B,+BAA+B;wBAC/B,gCAAgC;wBAChC,oCAAoC;AACrC,qBAAA;AACF,iBAAA,CAAA;;;ACxBD;;;;AAIG;MACmB,kBAAkB,CAAA;AAMtC,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;KAChC;AAED,IAAA,WAAA,CACE,YAA2C,IAAI,EAAA;AATvC,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAW9B,IAAI,CAAC,IAAI,GAAG,IAAI,eAAe,CAAgC,SAAS,CAAC,CAAC;QAE1E,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;KACrC;AAED;;;;AAIG;AACH,IAAA,IAAI,CAAC,EAAkC,EAAA;QACrC,IAAI,EAAE,EAAE;AACN,YAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACpB;AACD,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;KACtB;;AAED;;AAEG;IACH,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;KACvB;AACF;;AClDD,MAAM,YAAY,GAAG;;;CAGpB,CAAC;AAEF;;AAEG;AACI,MAAM,uBAAuB,GAAG,CAAC,IAAyB,KAAc,YAAY,CAAC,QAAQ,CAAC,IAAI;;ACRzG,MAAM,cAAc,GAAG;;;CAGtB,CAAC;AAEF;;AAEG;AACI,MAAM,yBAAyB,GAAG,CAAC,IAAyB,KAAc,cAAc,CAAC,QAAQ,CAAC,IAAI;;ACV7G;;AAEG;;;;"}
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`. `daff-sidebar` is intended to be\n * a simplified version (with a different design) of `mat-drawer`.\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 standalone: true,\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 * 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 * The width of the sidebar.\n */\n get width() {\n return this._elementRef.nativeElement.offsetWidth;\n }\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 * 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 * 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 * 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 }\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@Component({\n selector: 'daff-sidebar-footer',\n template: '<ng-content></ng-content>',\n styleUrls: ['./sidebar-footer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n})\nexport class DaffSidebarFooterComponent {\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@Directive({\n selector: '[daffSidebarHeaderTitle]',\n standalone: true,\n})\nexport class DaffSidebarHeaderTitleDirective {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-sidebar-header__title') class = true;\n}\n","import {\n Component,\n HostBinding,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n} from '@angular/core';\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 standalone: true,\n\n})\nexport class DaffSidebarHeaderComponent {\n @HostBinding('class.daff-sidebar-header') class = true;\n}\n","<ng-content select=\"[daffSidebarHeaderAction]\"></ng-content>\n<ng-content select=\"[daffSidebarHeaderTitle]\"></ng-content>\n<ng-content></ng-content>","/**\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 standalone: true,\n})\nexport class DaffSidebarViewportBackdropComponent implements OnInit {\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 ngOnInit(): void {\n this.interactableClass = this.interactable;\n }\n\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 @HostListener('@fadeBackdrop.done', ['$event'])\n animationDone(e: AnimationEvent) {\n this.interactableClass = !(e.toState === ':leave' || e.toState === 'non-interactable');\n }\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 @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 { DaffSidebarMode } from '../helper/sidebar-mode';\nimport { DaffSidebarComponent } from '../sidebar/sidebar.component';\nimport { DaffSidebarViewportBackdropComponent } from '../sidebar-viewport-backdrop/sidebar-viewport-backdrop.component';\n\n/**\n * The DaffSidebarViewport is the \"holder\" of sidebars throughout an entire application.\n * It's generally only used once, like\n *\n * ```html\n * <daff-sidebar-viewport>\n * <daff-sidebar></daff-sidebar>\n * <p>Some Content</p>\n * </daff-sidebar-viewport>\n * ```\n *\n * Importantly, its possible for there to be multiple sidebars of many modes\n * at the same time. @see {@link DaffSidebarMode }\n *\n * Since this is a functional component, it's possible to have multiple \"open\" sidebars\n * at the same time. As a result, this component attempts to gracefully handle these situations.\n * However, importantly, there can only be one sidebar of each mode, on each side, at any given time.\n * If this is violated, this component will throw an exception.\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 standalone: true,\n imports: [\n DaffSidebarViewportBackdropComponent,\n ],\n})\nexport class DaffSidebarViewportComponent implements AfterContentChecked, OnDestroy {\n @HostBinding('class.daff-sidebar-viewport') hostClass = true;\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 get isNavOnSide() {\n return this.navPlacement === DaffNavPlacementEnum.BESIDE;\n }\n\n onContentAnimationStart(e: AnimationEvent) {\n if(e.toState === 'open') {\n this._elementRef.nativeElement.style.overflow = 'hidden';\n }\n }\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. The default is set to `top`.\n * 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 * Whether or not the backdrop is interactable\n */\n _backdropInteractable = false;\n\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 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 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 * The 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>\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';\nimport { DaffSidebarViewportBackdropComponent } from './sidebar-viewport-backdrop/sidebar-viewport-backdrop.component';\n\n/**\n * @deprecated in favor of {@link DAFF_SIDEBAR_COMPONENTS} Deprecated in version 0.78.0. Will be removed in version 0.81.0.\n */\n@NgModule({\n imports: [\n CommonModule,\n A11yModule,\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n DaffSidebarHeaderComponent,\n DaffSidebarFooterComponent,\n DaffSidebarHeaderTitleDirective,\n DaffSidebarHeaderActionDirective,\n DaffSidebarViewportBackdropComponent,\n ],\n exports: [\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n DaffSidebarHeaderComponent,\n DaffSidebarFooterComponent,\n DaffSidebarHeaderTitleDirective,\n DaffSidebarHeaderActionDirective,\n DaffSidebarViewportBackdropComponent,\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';\nimport { DaffSidebarViewportBackdropComponent } from './sidebar-viewport-backdrop/sidebar-viewport-backdrop.component';\n\nexport const DAFF_SIDEBAR_COMPONENTS = <const> [\n DaffSidebarComponent,\n DaffSidebarViewportComponent,\n DaffSidebarHeaderComponent,\n DaffSidebarFooterComponent,\n DaffSidebarHeaderTitleDirective,\n DaffSidebarHeaderActionDirective,\n DaffSidebarViewportBackdropComponent,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["getAnimationState"],"mappings":"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"}
@@ -0,0 +1,93 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, ChangeDetectionStrategy, ViewChild } from '@angular/core';
3
+ import { FaIconComponent } from '@fortawesome/angular-fontawesome';
4
+ import { faInfoCircle } from '@fortawesome/free-solid-svg-icons';
5
+ import * as i1 from '@daffodil/design/tabs';
6
+ import { DAFF_TABS_COMPONENTS, DaffTabsComponent } from '@daffodil/design/tabs';
7
+ import * as i2 from '@daffodil/design';
8
+ import { DaffButtonComponent } from '@daffodil/design/button';
9
+
10
+ class BasicTabsComponent {
11
+ constructor() {
12
+ this.faInfoCircle = faInfoCircle;
13
+ }
14
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: BasicTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: BasicTabsComponent, isStandalone: true, selector: "basic-tabs", ngImport: i0, template: "<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n</daff-tabs>", dependencies: [{ kind: "component", type: i1.DaffTabsComponent, selector: "daff-tabs", inputs: ["initiallySelected", "aria-label"], outputs: ["tabChange"] }, { kind: "component", type: i1.DaffTabLabelComponent, selector: "daff-tab-label" }, { kind: "component", type: i1.DaffTabPanelComponent, selector: "daff-tab-panel" }, { kind: "ngmodule", type: i2.DaffPrefixSuffixModule }, { kind: "directive", type: i2.DaffPrefixDirective, selector: "[daffPrefix]" }, { kind: "directive", type: i2.DaffSuffixDirective, selector: "[daffSuffix]" }, { kind: "component", type: i1.DaffTabComponent, selector: "daff-tab", inputs: ["disabled", "id"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
16
+ }
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: BasicTabsComponent, decorators: [{
18
+ type: Component,
19
+ args: [{ selector: 'basic-tabs', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
20
+ DAFF_TABS_COMPONENTS,
21
+ FaIconComponent,
22
+ ], template: "<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n</daff-tabs>" }]
23
+ }] });
24
+
25
+ class CustomSelectTabsComponent {
26
+ constructor() {
27
+ this.faInfoCircle = faInfoCircle;
28
+ this.selectedTab = 'tab-3';
29
+ }
30
+ selectTabThree() {
31
+ this._tab.select('tab-3');
32
+ }
33
+ selectTabFive() {
34
+ this._tab.select('tab-5');
35
+ }
36
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: CustomSelectTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
37
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: CustomSelectTabsComponent, isStandalone: true, selector: "custom-select-tabs", viewQueries: [{ propertyName: "_tab", first: true, predicate: DaffTabsComponent, descendants: true }], ngImport: i0, template: "<div class=\"custom-select-tabs__buttons\">\n\t<button daff-button size=\"sm\" (click)=\"selectTabThree()\">\n\t\tSelect Tab 3\n\t</button>\n\t\n\t<button daff-button size=\"sm\" (click)=\"selectTabFive()\">\n\t\tSelect Tab 5\n\t</button>\n</div>\n\n<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-3\">\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-5\">\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>", styles: [".custom-select-tabs__buttons{display:flex;gap:8px;margin:0 0 16px}\n"], dependencies: [{ kind: "component", type: i1.DaffTabsComponent, selector: "daff-tabs", inputs: ["initiallySelected", "aria-label"], outputs: ["tabChange"] }, { kind: "component", type: i1.DaffTabLabelComponent, selector: "daff-tab-label" }, { kind: "component", type: i1.DaffTabPanelComponent, selector: "daff-tab-panel" }, { kind: "ngmodule", type: i2.DaffPrefixSuffixModule }, { kind: "directive", type: i2.DaffPrefixDirective, selector: "[daffPrefix]" }, { kind: "directive", type: i2.DaffSuffixDirective, selector: "[daffSuffix]" }, { kind: "component", type: i1.DaffTabComponent, selector: "daff-tab", inputs: ["disabled", "id"] }, { kind: "component", type: DaffButtonComponent, selector: "button[daff-button],a[daff-button]" }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
38
+ }
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: CustomSelectTabsComponent, decorators: [{
40
+ type: Component,
41
+ args: [{ selector: 'custom-select-tabs', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
42
+ DAFF_TABS_COMPONENTS,
43
+ DaffButtonComponent,
44
+ FaIconComponent,
45
+ ], template: "<div class=\"custom-select-tabs__buttons\">\n\t<button daff-button size=\"sm\" (click)=\"selectTabThree()\">\n\t\tSelect Tab 3\n\t</button>\n\t\n\t<button daff-button size=\"sm\" (click)=\"selectTabFive()\">\n\t\tSelect Tab 5\n\t</button>\n</div>\n\n<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-3\">\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-5\">\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>", styles: [".custom-select-tabs__buttons{display:flex;gap:8px;margin:0 0 16px}\n"] }]
46
+ }], propDecorators: { _tab: [{
47
+ type: ViewChild,
48
+ args: [DaffTabsComponent]
49
+ }] } });
50
+
51
+ class DisabledTabsComponent {
52
+ constructor() {
53
+ this.faInfoCircle = faInfoCircle;
54
+ }
55
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DisabledTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
56
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DisabledTabsComponent, isStandalone: true, selector: "disabled-tabs", ngImport: i0, template: "<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab [disabled]=\"true\">\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>", dependencies: [{ kind: "component", type: i1.DaffTabsComponent, selector: "daff-tabs", inputs: ["initiallySelected", "aria-label"], outputs: ["tabChange"] }, { kind: "component", type: i1.DaffTabLabelComponent, selector: "daff-tab-label" }, { kind: "component", type: i1.DaffTabPanelComponent, selector: "daff-tab-panel" }, { kind: "ngmodule", type: i2.DaffPrefixSuffixModule }, { kind: "directive", type: i2.DaffPrefixDirective, selector: "[daffPrefix]" }, { kind: "directive", type: i2.DaffSuffixDirective, selector: "[daffSuffix]" }, { kind: "component", type: i1.DaffTabComponent, selector: "daff-tab", inputs: ["disabled", "id"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
57
+ }
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DisabledTabsComponent, decorators: [{
59
+ type: Component,
60
+ args: [{ selector: 'disabled-tabs', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
61
+ DAFF_TABS_COMPONENTS,
62
+ FaIconComponent,
63
+ ], template: "<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab [disabled]=\"true\">\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>" }]
64
+ }] });
65
+
66
+ class InitiallySelectTabComponent {
67
+ constructor() {
68
+ this.faInfoCircle = faInfoCircle;
69
+ }
70
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: InitiallySelectTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
71
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: InitiallySelectTabComponent, isStandalone: true, selector: "initially-select-tab", ngImport: i0, template: "<daff-tabs aria-label=\"List of tabs\" [initiallySelected]=\"'tab-4'\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-4\">\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>", dependencies: [{ kind: "component", type: i1.DaffTabsComponent, selector: "daff-tabs", inputs: ["initiallySelected", "aria-label"], outputs: ["tabChange"] }, { kind: "component", type: i1.DaffTabLabelComponent, selector: "daff-tab-label" }, { kind: "component", type: i1.DaffTabPanelComponent, selector: "daff-tab-panel" }, { kind: "ngmodule", type: i2.DaffPrefixSuffixModule }, { kind: "directive", type: i2.DaffPrefixDirective, selector: "[daffPrefix]" }, { kind: "directive", type: i2.DaffSuffixDirective, selector: "[daffSuffix]" }, { kind: "component", type: i1.DaffTabComponent, selector: "daff-tab", inputs: ["disabled", "id"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
72
+ }
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: InitiallySelectTabComponent, decorators: [{
74
+ type: Component,
75
+ args: [{ selector: 'initially-select-tab', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
76
+ DAFF_TABS_COMPONENTS,
77
+ FaIconComponent,
78
+ ], template: "<daff-tabs aria-label=\"List of tabs\" [initiallySelected]=\"'tab-4'\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-4\">\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>" }]
79
+ }] });
80
+
81
+ const TABS_EXAMPLES = [
82
+ BasicTabsComponent,
83
+ DisabledTabsComponent,
84
+ InitiallySelectTabComponent,
85
+ CustomSelectTabsComponent,
86
+ ];
87
+
88
+ /**
89
+ * Generated bundle index. Do not edit.
90
+ */
91
+
92
+ export { TABS_EXAMPLES };
93
+ //# sourceMappingURL=daffodil-design-tabs-examples.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daffodil-design-tabs-examples.mjs","sources":["../../../libs/design/tabs/examples/src/basic-tabs/basic-tabs.component.ts","../../../libs/design/tabs/examples/src/basic-tabs/basic-tabs.component.html","../../../libs/design/tabs/examples/src/custom-select-tabs/custom-select-tabs.component.ts","../../../libs/design/tabs/examples/src/custom-select-tabs/custom-select-tabs.component.html","../../../libs/design/tabs/examples/src/disabled-tabs/disabled-tabs.component.ts","../../../libs/design/tabs/examples/src/disabled-tabs/disabled-tabs.component.html","../../../libs/design/tabs/examples/src/initially-select-tab/initially-select-tab.component.ts","../../../libs/design/tabs/examples/src/initially-select-tab/initially-select-tab.component.html","../../../libs/design/tabs/examples/src/public_api.ts","../../../libs/design/tabs/examples/src/daffodil-design-tabs-examples.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faInfoCircle } from '@fortawesome/free-solid-svg-icons';\n\nimport { DAFF_TABS_COMPONENTS } from '@daffodil/design/tabs';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'basic-tabs',\n templateUrl: './basic-tabs.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n DAFF_TABS_COMPONENTS,\n FaIconComponent,\n ],\n})\nexport class BasicTabsComponent {\n faInfoCircle = faInfoCircle;\n}\n","<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n</daff-tabs>","import {\n ChangeDetectionStrategy,\n Component,\n ViewChild,\n} from '@angular/core';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faInfoCircle } from '@fortawesome/free-solid-svg-icons';\n\nimport { DaffButtonComponent } from '@daffodil/design/button';\nimport {\n DAFF_TABS_COMPONENTS,\n DaffTabsComponent,\n} from '@daffodil/design/tabs';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'custom-select-tabs',\n templateUrl: './custom-select-tabs.component.html',\n styleUrl: './custom-select-tabs.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n DAFF_TABS_COMPONENTS,\n DaffButtonComponent,\n FaIconComponent,\n ],\n})\nexport class CustomSelectTabsComponent {\n faInfoCircle = faInfoCircle;\n\n selectedTab = 'tab-3';\n\n @ViewChild(DaffTabsComponent) _tab: DaffTabsComponent;\n\n selectTabThree() {\n this._tab.select('tab-3');\n }\n\n selectTabFive() {\n this._tab.select('tab-5');\n }\n}\n","<div class=\"custom-select-tabs__buttons\">\n\t<button daff-button size=\"sm\" (click)=\"selectTabThree()\">\n\t\tSelect Tab 3\n\t</button>\n\t\n\t<button daff-button size=\"sm\" (click)=\"selectTabFive()\">\n\t\tSelect Tab 5\n\t</button>\n</div>\n\n<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-3\">\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-5\">\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faInfoCircle } from '@fortawesome/free-solid-svg-icons';\n\nimport { DAFF_TABS_COMPONENTS } from '@daffodil/design/tabs';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'disabled-tabs',\n templateUrl: './disabled-tabs.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n DAFF_TABS_COMPONENTS,\n FaIconComponent,\n ],\n})\nexport class DisabledTabsComponent {\n faInfoCircle = faInfoCircle;\n}\n","<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab [disabled]=\"true\">\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faInfoCircle } from '@fortawesome/free-solid-svg-icons';\n\nimport { DAFF_TABS_COMPONENTS } from '@daffodil/design/tabs';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'initially-select-tab',\n templateUrl: './initially-select-tab.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n DAFF_TABS_COMPONENTS,\n FaIconComponent,\n ],\n})\nexport class InitiallySelectTabComponent {\n faInfoCircle = faInfoCircle;\n}\n","<daff-tabs aria-label=\"List of tabs\" [initiallySelected]=\"'tab-4'\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-4\">\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>","import { BasicTabsComponent } from './basic-tabs/basic-tabs.component';\nimport { CustomSelectTabsComponent } from './custom-select-tabs/custom-select-tabs.component';\nimport { DisabledTabsComponent } from './disabled-tabs/disabled-tabs.component';\nimport { InitiallySelectTabComponent } from './initially-select-tab/initially-select-tab.component';\n\nexport const TABS_EXAMPLES = [\n BasicTabsComponent,\n DisabledTabsComponent,\n InitiallySelectTabComponent,\n CustomSelectTabsComponent,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}