@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
@@ -2,12 +2,13 @@ import * as i1 from '@angular/cdk/a11y';
2
2
  import { A11yModule } from '@angular/cdk/a11y';
3
3
  import { DOCUMENT, CommonModule } from '@angular/common';
4
4
  import * as i0 from '@angular/core';
5
- import { EventEmitter, Component, ChangeDetectionStrategy, Inject, HostBinding, Output, Input, HostListener, Directive, ViewEncapsulation, InjectionToken, inject, ElementRef, SkipSelf, Optional, ContentChildren, NgModule, signal } from '@angular/core';
5
+ import { EventEmitter, Component, ChangeDetectionStrategy, Inject, HostBinding, Output, Input, HostListener, Directive, ViewEncapsulation, inject, ElementRef, SkipSelf, Optional, ContentChildren, NgModule, signal } from '@angular/core';
6
6
  import { fromEvent, BehaviorSubject } from 'rxjs';
7
7
  import { filter } from 'rxjs/operators';
8
8
  import * as i2 from '@daffodil/design';
9
- import { daffFocusableElementsSelector } from '@daffodil/design';
9
+ import { daffFocusableElementsSelector, DaffOpenableDirective } from '@daffodil/design';
10
10
  import { trigger, state, style, transition, animate } from '@angular/animations';
11
+ import { createSingleInjectionToken } from '@daffodil/core';
11
12
 
12
13
  /**
13
14
  * Determine whether or animation states are going to an open state from a non-open state.
@@ -122,7 +123,7 @@ class DaffSidebarComponent {
122
123
  */
123
124
  get transformSidebar() {
124
125
  return {
125
- value: getAnimationState$1(this.open, this.mode),
126
+ value: getAnimationState$1(this.openDirective.open, this.mode),
126
127
  params: { width: getSidebarAnimationWidth(this.side, this.width) },
127
128
  };
128
129
  }
@@ -132,11 +133,15 @@ class DaffSidebarComponent {
132
133
  get width() {
133
134
  return this._elementRef.nativeElement.offsetWidth;
134
135
  }
135
- constructor(_elementRef, _ngZone, _focusTrapFactory, _focusStack, _doc) {
136
+ get open() {
137
+ return this.openDirective.open;
138
+ }
139
+ constructor(_elementRef, _ngZone, _focusTrapFactory, _focusStack, openDirective, _doc) {
136
140
  this._elementRef = _elementRef;
137
141
  this._ngZone = _ngZone;
138
142
  this._focusTrapFactory = _focusTrapFactory;
139
143
  this._focusStack = _focusStack;
144
+ this.openDirective = openDirective;
140
145
  this._doc = _doc;
141
146
  /**
142
147
  * Event fired when `ESC` key is pressed when the sidebar has focus
@@ -150,10 +155,6 @@ class DaffSidebarComponent {
150
155
  * The mode of the sidebar.
151
156
  */
152
157
  this.mode = 'side';
153
- /**
154
- * Whether or not the sidebar is open.
155
- */
156
- this.open = false;
157
158
  /**
158
159
  * Listen to `keydown` events outside the zone so that change detection is not run every
159
160
  * time a key is pressed. Instead we re-enter the zone only if the `ESC` key is pressed.
@@ -208,17 +209,39 @@ class DaffSidebarComponent {
208
209
  this._elementRef.nativeElement.style.visibility = 'hidden';
209
210
  }
210
211
  }
211
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.ConfigurableFocusTrapFactory }, { token: i2.DaffFocusStackService }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
212
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarComponent, selector: "daff-sidebar", inputs: { side: "side", mode: "mode", open: "open" }, outputs: { escapePressed: "escapePressed" }, host: { listeners: { "@transformSidebar.start": "onAnimationStart($event)", "@transformSidebar.done": "onAnimationComplete($event)" }, properties: { "class": "this.classes", "@transformSidebar": "this.transformSidebar" } }, ngImport: i0, template: "<ng-content select=\"daff-sidebar-header\"></ng-content>\n<div class=\"daff-sidebar__body\">\n\t<ng-content></ng-content>\n</div>\n<ng-content select=\"daff-sidebar-footer\"></ng-content>", styles: [":host{display:flex;flex-direction:column;width:240px;flex-shrink:0;overflow-y:auto}:host.side-fixed{position:fixed;bottom:0;z-index:5;top:var(--daff-sidebar-side-fixed-top-shift);height:calc(100dvh - var(--daff-sidebar-side-fixed-top-shift))}:host.side-fixed.left{left:0}:host.side-fixed.right{right:0}:host.over,:host.under{position:fixed;top:0;bottom:0}:host.over.left,:host.under.left{left:0}:host.over.right,:host.under.right{right:0}:host.over{z-index:7}:host.under{z-index:2}:host-context(daff-sidebar-viewport daff-sidebar-viewport).side-fixed{position:sticky}:host-context(.daff-sidebar-viewport.beside).side-fixed{top:0;height:100%}.daff-sidebar__body{flex-grow:1;height:100%;overflow-y:auto}\n"], animations: [
212
+ /**
213
+ * Reveal the contents of the sidebar
214
+ */
215
+ reveal() {
216
+ this.openDirective.reveal();
217
+ }
218
+ /**
219
+ * Hide the contents of the sidebar
220
+ */
221
+ hide() {
222
+ this.openDirective.hide();
223
+ }
224
+ /**
225
+ * Toggle the visibility of the sidebar
226
+ */
227
+ toggle() {
228
+ this.openDirective.toggle();
229
+ }
230
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.ConfigurableFocusTrapFactory }, { token: i2.DaffFocusStackService }, { token: i2.DaffOpenableDirective }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
231
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarComponent, isStandalone: true, selector: "daff-sidebar", inputs: { side: "side", mode: "mode" }, outputs: { escapePressed: "escapePressed" }, host: { listeners: { "@transformSidebar.start": "onAnimationStart($event)", "@transformSidebar.done": "onAnimationComplete($event)" }, properties: { "class": "this.classes", "@transformSidebar": "this.transformSidebar" } }, hostDirectives: [{ directive: i2.DaffOpenableDirective, inputs: ["open", "open"], outputs: ["toggled", "toggled"] }], ngImport: i0, template: "<ng-content select=\"daff-sidebar-header\"></ng-content>\n<div class=\"daff-sidebar__body\">\n\t<ng-content></ng-content>\n</div>\n<ng-content select=\"daff-sidebar-footer\"></ng-content>", styles: [":host{display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;width:240px}:host.left{width:var(--daff-sidebar-left-width, 240px)}:host.right{width:var(--daff-sidebar-right-width, 240px)}:host.side-fixed{visibility:hidden;position:fixed;bottom:0;z-index:5;top:var(--daff-sidebar-side-fixed-top-shift);height:calc(100dvh - var(--daff-sidebar-side-fixed-top-shift))}:host.side-fixed.left{left:0}:host.side-fixed.right{right:0}@media (min-width: 1024px){:host.side-fixed{visibility:visible}}:host.over,:host.under{position:fixed;top:0;bottom:0}:host.over.left,:host.under.left{left:0}:host.over.right,:host.under.right{right:0}:host.over{z-index:7}:host.under{z-index:2}:host-context(daff-sidebar-viewport daff-sidebar-viewport).side-fixed{position:sticky}:host-context(.daff-sidebar-viewport.beside).side-fixed{top:0;height:100%}.daff-sidebar__body{flex-grow:1;height:100%;overflow-y:auto}\n"], animations: [
213
232
  daffSidebarAnimations.transformSidebar,
214
233
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
215
234
  }
216
235
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarComponent, decorators: [{
217
236
  type: Component,
218
- args: [{ selector: 'daff-sidebar', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
237
+ args: [{ selector: 'daff-sidebar', changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [{
238
+ directive: DaffOpenableDirective,
239
+ inputs: ['open'],
240
+ outputs: ['toggled'],
241
+ }], animations: [
219
242
  daffSidebarAnimations.transformSidebar,
220
- ], template: "<ng-content select=\"daff-sidebar-header\"></ng-content>\n<div class=\"daff-sidebar__body\">\n\t<ng-content></ng-content>\n</div>\n<ng-content select=\"daff-sidebar-footer\"></ng-content>", styles: [":host{display:flex;flex-direction:column;width:240px;flex-shrink:0;overflow-y:auto}:host.side-fixed{position:fixed;bottom:0;z-index:5;top:var(--daff-sidebar-side-fixed-top-shift);height:calc(100dvh - var(--daff-sidebar-side-fixed-top-shift))}:host.side-fixed.left{left:0}:host.side-fixed.right{right:0}:host.over,:host.under{position:fixed;top:0;bottom:0}:host.over.left,:host.under.left{left:0}:host.over.right,:host.under.right{right:0}:host.over{z-index:7}:host.under{z-index:2}:host-context(daff-sidebar-viewport daff-sidebar-viewport).side-fixed{position:sticky}:host-context(.daff-sidebar-viewport.beside).side-fixed{top:0;height:100%}.daff-sidebar__body{flex-grow:1;height:100%;overflow-y:auto}\n"] }]
221
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.ConfigurableFocusTrapFactory }, { type: i2.DaffFocusStackService }, { type: undefined, decorators: [{
243
+ ], standalone: true, template: "<ng-content select=\"daff-sidebar-header\"></ng-content>\n<div class=\"daff-sidebar__body\">\n\t<ng-content></ng-content>\n</div>\n<ng-content select=\"daff-sidebar-footer\"></ng-content>", styles: [":host{display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;width:240px}:host.left{width:var(--daff-sidebar-left-width, 240px)}:host.right{width:var(--daff-sidebar-right-width, 240px)}:host.side-fixed{visibility:hidden;position:fixed;bottom:0;z-index:5;top:var(--daff-sidebar-side-fixed-top-shift);height:calc(100dvh - var(--daff-sidebar-side-fixed-top-shift))}:host.side-fixed.left{left:0}:host.side-fixed.right{right:0}@media (min-width: 1024px){:host.side-fixed{visibility:visible}}:host.over,:host.under{position:fixed;top:0;bottom:0}:host.over.left,:host.under.left{left:0}:host.over.right,:host.under.right{right:0}:host.over{z-index:7}:host.under{z-index:2}:host-context(daff-sidebar-viewport daff-sidebar-viewport).side-fixed{position:sticky}:host-context(.daff-sidebar-viewport.beside).side-fixed{top:0;height:100%}.daff-sidebar__body{flex-grow:1;height:100%;overflow-y:auto}\n"] }]
244
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.ConfigurableFocusTrapFactory }, { type: i2.DaffFocusStackService }, { type: i2.DaffOpenableDirective }, { type: undefined, decorators: [{
222
245
  type: Inject,
223
246
  args: [DOCUMENT]
224
247
  }] }], propDecorators: { classes: [{
@@ -233,8 +256,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
233
256
  type: Input
234
257
  }], mode: [{
235
258
  type: Input
236
- }], open: [{
237
- type: Input
238
259
  }], onAnimationStart: [{
239
260
  type: HostListener,
240
261
  args: ['@transformSidebar.start', ['$event']]
@@ -248,11 +269,11 @@ class DaffSidebarFooterComponent {
248
269
  this.class = true;
249
270
  }
250
271
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
251
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarFooterComponent, selector: "daff-sidebar-footer", host: { properties: { "class.daff-sidebar-footer": "this.class" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;width:100%;flex-grow:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
272
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarFooterComponent, isStandalone: true, selector: "daff-sidebar-footer", host: { properties: { "class.daff-sidebar-footer": "this.class" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;width:100%;flex-grow:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
252
273
  }
253
274
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarFooterComponent, decorators: [{
254
275
  type: Component,
255
- args: [{ selector: 'daff-sidebar-footer', template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;width:100%;flex-grow:0}\n"] }]
276
+ args: [{ selector: 'daff-sidebar-footer', template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, styles: [":host{display:block;width:100%;flex-grow:0}\n"] }]
256
277
  }], propDecorators: { class: [{
257
278
  type: HostBinding,
258
279
  args: ['class.daff-sidebar-footer']
@@ -266,12 +287,13 @@ class DaffSidebarHeaderActionDirective {
266
287
  this.class = true;
267
288
  }
268
289
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarHeaderActionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
269
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarHeaderActionDirective, selector: "[daffSidebarHeaderAction]", host: { properties: { "class.daff-sidebar-header__action": "this.class" } }, ngImport: i0 }); }
290
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarHeaderActionDirective, isStandalone: true, selector: "[daffSidebarHeaderAction]", host: { properties: { "class.daff-sidebar-header__action": "this.class" } }, ngImport: i0 }); }
270
291
  }
271
292
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarHeaderActionDirective, decorators: [{
272
293
  type: Directive,
273
294
  args: [{
274
295
  selector: '[daffSidebarHeaderAction]',
296
+ standalone: true,
275
297
  }]
276
298
  }], propDecorators: { class: [{
277
299
  type: HostBinding,
@@ -286,12 +308,13 @@ class DaffSidebarHeaderTitleDirective {
286
308
  this.class = true;
287
309
  }
288
310
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarHeaderTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
289
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarHeaderTitleDirective, selector: "[daffSidebarHeaderTitle]", host: { properties: { "class.daff-sidebar-header__title": "this.class" } }, ngImport: i0 }); }
311
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarHeaderTitleDirective, isStandalone: true, selector: "[daffSidebarHeaderTitle]", host: { properties: { "class.daff-sidebar-header__title": "this.class" } }, ngImport: i0 }); }
290
312
  }
291
313
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarHeaderTitleDirective, decorators: [{
292
314
  type: Directive,
293
315
  args: [{
294
316
  selector: '[daffSidebarHeaderTitle]',
317
+ standalone: true,
295
318
  }]
296
319
  }], propDecorators: { class: [{
297
320
  type: HostBinding,
@@ -303,11 +326,11 @@ class DaffSidebarHeaderComponent {
303
326
  this.class = true;
304
327
  }
305
328
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
306
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarHeaderComponent, selector: "daff-sidebar-header", host: { properties: { "class.daff-sidebar-header": "this.class" } }, ngImport: i0, template: "<ng-content select=\"[daffSidebarHeaderAction]\"></ng-content>\n<ng-content select=\"[daffSidebarHeaderTitle]\"></ng-content>\n<ng-content></ng-content>", styles: [".daff-sidebar-header{display:flex;align-items:center;position:relative;width:100%}.daff-sidebar-header__action{position:absolute}.daff-sidebar-header__title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1rem;font-weight:500}.daff-sidebar-header__action+.daff-sidebar-header__title{margin:0 0 0 29px}.daff-sidebar .daff-sidebar-header{padding:16px}.daff-sidebar .daff-sidebar-header__action{position:absolute;left:0;right:initial;top:0}.daff-sidebar.right .daff-sidebar-header__action{left:initial;right:0}.daff-sidebar.right .daff-sidebar-header__title{margin:0 29px 0 0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
329
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarHeaderComponent, isStandalone: true, selector: "daff-sidebar-header", host: { properties: { "class.daff-sidebar-header": "this.class" } }, ngImport: i0, template: "<ng-content select=\"[daffSidebarHeaderAction]\"></ng-content>\n<ng-content select=\"[daffSidebarHeaderTitle]\"></ng-content>\n<ng-content></ng-content>", styles: [".daff-sidebar-header{display:flex;align-items:center;position:relative;width:100%}.daff-sidebar-header__action{position:absolute}.daff-sidebar-header__title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1rem;font-weight:500}.daff-sidebar-header__action+.daff-sidebar-header__title{margin:0 0 0 29px}.daff-sidebar .daff-sidebar-header{padding:16px}.daff-sidebar .daff-sidebar-header__action{position:absolute;left:0;right:initial;top:0}.daff-sidebar.right .daff-sidebar-header__action{left:initial;right:0}.daff-sidebar.right .daff-sidebar-header__title{margin:0 29px 0 0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
307
330
  }
308
331
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarHeaderComponent, decorators: [{
309
332
  type: Component,
310
- args: [{ selector: 'daff-sidebar-header', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content select=\"[daffSidebarHeaderAction]\"></ng-content>\n<ng-content select=\"[daffSidebarHeaderTitle]\"></ng-content>\n<ng-content></ng-content>", styles: [".daff-sidebar-header{display:flex;align-items:center;position:relative;width:100%}.daff-sidebar-header__action{position:absolute}.daff-sidebar-header__title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1rem;font-weight:500}.daff-sidebar-header__action+.daff-sidebar-header__title{margin:0 0 0 29px}.daff-sidebar .daff-sidebar-header{padding:16px}.daff-sidebar .daff-sidebar-header__action{position:absolute;left:0;right:initial;top:0}.daff-sidebar.right .daff-sidebar-header__action{left:initial;right:0}.daff-sidebar.right .daff-sidebar-header__title{margin:0 29px 0 0}\n"] }]
333
+ args: [{ selector: 'daff-sidebar-header', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<ng-content select=\"[daffSidebarHeaderAction]\"></ng-content>\n<ng-content select=\"[daffSidebarHeaderTitle]\"></ng-content>\n<ng-content></ng-content>", styles: [".daff-sidebar-header{display:flex;align-items:center;position:relative;width:100%}.daff-sidebar-header__action{position:absolute}.daff-sidebar-header__title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1rem;font-weight:500}.daff-sidebar-header__action+.daff-sidebar-header__title{margin:0 0 0 29px}.daff-sidebar .daff-sidebar-header{padding:16px}.daff-sidebar .daff-sidebar-header__action{position:absolute;left:0;right:initial;top:0}.daff-sidebar.right .daff-sidebar-header__action{left:initial;right:0}.daff-sidebar.right .daff-sidebar-header__title{margin:0 29px 0 0}\n"] }]
311
334
  }], propDecorators: { class: [{
312
335
  type: HostBinding,
313
336
  args: ['class.daff-sidebar-header']
@@ -339,12 +362,17 @@ var DaffNavPlacementEnum;
339
362
  DaffNavPlacementEnum["BESIDE"] = "beside";
340
363
  })(DaffNavPlacementEnum || (DaffNavPlacementEnum = {}));
341
364
 
365
+ const {
342
366
  /**
343
367
  * An injection token that can be used within a sidebar to determine
344
368
  * what to do enabling and disabling scrolling. By default, the body
345
369
  * is the element where scrolling is controlled.
346
370
  */
347
- const DAFF_SIDEBAR_SCROLL_TOKEN = new InjectionToken('DAFF_SIDEBAR_SCROLL_TOKEN', {
371
+ token: DAFF_SIDEBAR_SCROLL_TOKEN,
372
+ /**
373
+ * Provider function for {@link DAFF_SIDEBAR_SCROLL_TOKEN}.
374
+ */
375
+ provider: provideDaffSidebarScrollToken, } = createSingleInjectionToken('DAFF_SIDEBAR_SCROLL_TOKEN', {
348
376
  providedIn: 'root',
349
377
  factory: () => {
350
378
  const document = inject(DOCUMENT);
@@ -382,21 +410,21 @@ const daffSidebarViewportScrollFactory = () => {
382
410
  const sidebarViewportBackdropInteractable = (sidebars) => sidebars.reduce((acc, sidebar) => ((sidebar.mode === 'over' || sidebar.mode === 'under') && sidebar.open) || acc, false);
383
411
 
384
412
  /**
385
- * Given a list of sidebars, compute the associated content shift.
413
+ * Given a list of sidebars, compute the whether or not the content is padded.
386
414
  */
387
- const sidebarViewportContentPadding = (sidebars, side) => sidebars.reduce((acc, sidebar) => {
415
+ const isSidebarViewportContentPadded = (sidebars, side) => sidebars.reduce((acc, sidebar) => {
388
416
  if (!(sidebar.mode === "side-fixed" /* DaffSidebarModeEnum.SideFixed */ && sidebar.open)) {
389
- return acc;
417
+ return acc || false;
390
418
  }
391
419
  if (sidebar.side === side) {
392
- return sidebar.width;
420
+ return true;
393
421
  }
394
422
  else {
395
423
  // This component is "stateless", its possible to have two open "under" sidebars.
396
424
  // As such, we defer to "left" being open by default.
397
425
  return acc;
398
426
  }
399
- }, 0);
427
+ }, false);
400
428
 
401
429
  const isViewportContentShifted = (mode, open) => (mode === 'under' && open);
402
430
  /**
@@ -486,7 +514,7 @@ class DaffSidebarViewportBackdropComponent {
486
514
  this.backdropClicked.emit();
487
515
  }
488
516
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarViewportBackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
489
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarViewportBackdropComponent, selector: "daff-sidebar-viewport-backdrop", inputs: { transparent: "transparent", interactable: "interactable", fullscreen: "fullscreen" }, outputs: { backdropClicked: "backdropClicked" }, host: { listeners: { "@fadeBackdrop.done": "animationDone($event)", "@fadeBackdrop.start": "animationStart($event)", "click": "onBackdropClicked()" }, properties: { "class.interactable": "this.interactableClass", "class.transparent": "this.transparent", "class.fullscreen": "this.fullscreen", "@fadeBackdrop": "this.fadeBackdropTrigger" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;background:#0000004d;-webkit-tap-highlight-color:rgba(0,0,0,0);position:absolute;pointer-events:auto;height:100%;width:100%;visibility:hidden;z-index:6}:host.interactable{visibility:visible;pointer-events:all;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host.transparent{background:none}:host:focus,:host:active,:host:visited{outline:0}:host.fullscreen{position:absolute}\n"], animations: [
517
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarViewportBackdropComponent, isStandalone: true, selector: "daff-sidebar-viewport-backdrop", inputs: { transparent: "transparent", interactable: "interactable", fullscreen: "fullscreen" }, outputs: { backdropClicked: "backdropClicked" }, host: { listeners: { "@fadeBackdrop.done": "animationDone($event)", "@fadeBackdrop.start": "animationStart($event)", "click": "onBackdropClicked()" }, properties: { "class.interactable": "this.interactableClass", "class.transparent": "this.transparent", "class.fullscreen": "this.fullscreen", "@fadeBackdrop": "this.fadeBackdropTrigger" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [":host{display:block;background:#0000004d;-webkit-tap-highlight-color:rgba(0,0,0,0);position:absolute;pointer-events:auto;height:100%;width:100%;visibility:hidden;z-index:6}:host.interactable{visibility:visible;pointer-events:all;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host.transparent{background:none}:host:focus,:host:active,:host:visited{outline:0}:host.fullscreen{position:absolute}\n"], animations: [
490
518
  daffSidebarViewportBackdropAnimations.fadeBackdrop,
491
519
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
492
520
  }
@@ -494,7 +522,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
494
522
  type: Component,
495
523
  args: [{ selector: 'daff-sidebar-viewport-backdrop', template: '<ng-content></ng-content>', animations: [
496
524
  daffSidebarViewportBackdropAnimations.fadeBackdrop,
497
- ], changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;background:#0000004d;-webkit-tap-highlight-color:rgba(0,0,0,0);position:absolute;pointer-events:auto;height:100%;width:100%;visibility:hidden;z-index:6}:host.interactable{visibility:visible;pointer-events:all;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host.transparent{background:none}:host:focus,:host:active,:host:visited{outline:0}:host.fullscreen{position:absolute}\n"] }]
525
+ ], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, styles: [":host{display:block;background:#0000004d;-webkit-tap-highlight-color:rgba(0,0,0,0);position:absolute;pointer-events:auto;height:100%;width:100%;visibility:hidden;z-index:6}:host.interactable{visibility:visible;pointer-events:all;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host.transparent{background:none}:host:focus,:host:active,:host:visited{outline:0}:host.fullscreen{position:absolute}\n"] }]
498
526
  }], propDecorators: { interactableClass: [{
499
527
  type: HostBinding,
500
528
  args: ['class.interactable']
@@ -550,6 +578,8 @@ class DaffSidebarViewportComponent {
550
578
  return {
551
579
  'daff-sidebar-viewport': true,
552
580
  [this.navPlacement]: true,
581
+ 'pad-left': this._isPaddedLeft,
582
+ 'pad-right': this._isPaddedRight,
553
583
  };
554
584
  }
555
585
  ;
@@ -583,22 +613,8 @@ class DaffSidebarViewportComponent {
583
613
  * right when there are child sidebars.
584
614
  */
585
615
  this._shift = '0px';
586
- /**
587
- * The left padding on the content when left side-fixed sidebars are open.
588
- */
589
- this._contentPadLeft = 0;
590
- /**
591
- * The left padding on the nav when left side-fixed sidebars are open.
592
- */
593
- this._navPadLeft = 0;
594
- /**
595
- * The right padding on the content when right side-fixed sidebars are open.
596
- */
597
- this._contentPadRight = 0;
598
- /**
599
- * The right padding on the content when right side-fixed sidebars are open.
600
- */
601
- this._navPadRight = 0;
616
+ this._isPaddedLeft = false;
617
+ this._isPaddedRight = false;
602
618
  /**
603
619
  * Whether or not the backdrop is interactable
604
620
  */
@@ -642,20 +658,8 @@ class DaffSidebarViewportComponent {
642
658
  }
643
659
  }
644
660
  ;
645
- const nextLeftPadding = sidebarViewportContentPadding(this.sidebars, 'left');
646
- if (this._contentPadLeft !== nextLeftPadding) {
647
- this._contentPadLeft = nextLeftPadding;
648
- this._navPadLeft = this.isNavOnSide ? this._contentPadLeft : null;
649
- this.updateAnimationState();
650
- this.cdRef.markForCheck();
651
- }
652
- const nextRightPadding = sidebarViewportContentPadding(this.sidebars, 'right');
653
- if (this._contentPadRight !== nextRightPadding) {
654
- this._contentPadRight = nextRightPadding;
655
- this._navPadRight = this.isNavOnSide ? this._contentPadRight : null;
656
- this.updateAnimationState();
657
- this.cdRef.markForCheck();
658
- }
661
+ this._isPaddedLeft = isSidebarViewportContentPadded(this.sidebars, 'left');
662
+ this._isPaddedRight = isSidebarViewportContentPadded(this.sidebars, 'right');
659
663
  }
660
664
  ngOnDestroy() {
661
665
  if (!this.parentViewport && !hasParentViewport(this._elementRef.nativeElement)) {
@@ -685,9 +689,12 @@ class DaffSidebarViewportComponent {
685
689
  this.backdropClicked.emit();
686
690
  }
687
691
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarViewportComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: DAFF_SIDEBAR_SCROLL_TOKEN, skipSelf: true }, { token: DaffSidebarViewportComponent, optional: true, skipSelf: true }, { token: DAFF_SIDEBAR_SCROLL_TOKEN }], target: i0.ɵɵFactoryTarget.Component }); }
688
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarViewportComponent, selector: "daff-sidebar-viewport", inputs: { navPlacement: "navPlacement" }, outputs: { backdropClicked: "backdropClicked" }, host: { properties: { "class.daff-sidebar-viewport": "this.hostClass", "class": "this.classes" } }, providers: [
689
- { provide: DAFF_SIDEBAR_SCROLL_TOKEN, useFactory: daffSidebarViewportScrollFactory },
690
- ], queries: [{ propertyName: "sidebars", predicate: DaffSidebarComponent }], ngImport: i0, template: "<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", styles: [":host{display:flex;min-height:100dvh;position:relative;width:100%;z-index:1}.daff-sidebar-viewport__content{flex:0 1 auto;width:100%;z-index:3;min-height:100%}.daff-sidebar-viewport__nav{position:fixed;top:0;width:100%;z-index:4}.daff-sidebar-viewport__nav:empty{display:none}.daff-sidebar-viewport__nav:not(:empty)+.daff-sidebar-viewport__content{margin-top:var(--daff-sidebar-side-fixed-top-shift)}:host-context(daff-sidebar-viewport daff-sidebar-viewport){transform:translate(0);min-height:auto}:host-context(daff-sidebar-viewport daff-sidebar-viewport) .daff-sidebar-viewport__inner{padding-left:0!important;padding-right:0!important}\n"], dependencies: [{ kind: "component", type: DaffSidebarViewportBackdropComponent, selector: "daff-sidebar-viewport-backdrop", inputs: ["transparent", "interactable", "fullscreen"], outputs: ["backdropClicked"] }], animations: [
692
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffSidebarViewportComponent, isStandalone: true, selector: "daff-sidebar-viewport", inputs: { navPlacement: "navPlacement" }, outputs: { backdropClicked: "backdropClicked" }, host: { properties: { "class.daff-sidebar-viewport": "this.hostClass", "class": "this.classes" } }, providers: [
693
+ {
694
+ provide: DAFF_SIDEBAR_SCROLL_TOKEN,
695
+ useFactory: daffSidebarViewportScrollFactory,
696
+ },
697
+ ], queries: [{ propertyName: "sidebars", predicate: DaffSidebarComponent }], ngImport: i0, template: "<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", styles: [":host{display:flex;min-height:100dvh;position:relative;width:100%;z-index:1}:host.pad-left .daff-sidebar-viewport__inner{padding-left:0}@media (min-width: 1024px){:host.pad-left .daff-sidebar-viewport__inner{padding-left:var(--daff-sidebar-left-width, 240px)}}:host.pad-left.beside .daff-sidebar-viewport__nav{padding-left:0}@media (min-width: 1024px){:host.pad-left.beside .daff-sidebar-viewport__nav{padding-left:var(--daff-sidebar-left-width, 240px)}}:host.pad-right .daff-sidebar-viewport__inner{padding-right:0}@media (min-width: 1024px){:host.pad-right .daff-sidebar-viewport__inner{padding-right:var(--daff-sidebar-right-width, 240px)}}:host.pad-right.beside .daff-sidebar-viewport__nav{padding-right:0}@media (min-width: 1024px){:host.pad-right.beside .daff-sidebar-viewport__nav{padding-right:var(--daff-sidebar-right-width, 240px)}}.daff-sidebar-viewport__content{flex:0 1 auto;width:100%;z-index:3;min-height:100%}.daff-sidebar-viewport__nav{position:fixed;top:0;width:100%;z-index:4}.daff-sidebar-viewport__nav:empty{display:none}.daff-sidebar-viewport__nav:not(:empty)~.daff-sidebar-viewport__content{margin-top:var(--daff-sidebar-side-fixed-top-shift)}:host-context(daff-sidebar-viewport daff-sidebar-viewport){transform:translate(0);min-height:auto}:host-context(daff-sidebar-viewport daff-sidebar-viewport) .daff-sidebar-viewport__inner{padding-left:0!important;padding-right:0!important}\n"], dependencies: [{ kind: "component", type: DaffSidebarViewportBackdropComponent, selector: "daff-sidebar-viewport-backdrop", inputs: ["transparent", "interactable", "fullscreen"], outputs: ["backdropClicked"] }], animations: [
691
698
  daffSidebarAnimations.transformContent,
692
699
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
693
700
  }
@@ -696,8 +703,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
696
703
  args: [{ selector: 'daff-sidebar-viewport', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
697
704
  daffSidebarAnimations.transformContent,
698
705
  ], providers: [
699
- { provide: DAFF_SIDEBAR_SCROLL_TOKEN, useFactory: daffSidebarViewportScrollFactory },
700
- ], template: "<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", styles: [":host{display:flex;min-height:100dvh;position:relative;width:100%;z-index:1}.daff-sidebar-viewport__content{flex:0 1 auto;width:100%;z-index:3;min-height:100%}.daff-sidebar-viewport__nav{position:fixed;top:0;width:100%;z-index:4}.daff-sidebar-viewport__nav:empty{display:none}.daff-sidebar-viewport__nav:not(:empty)+.daff-sidebar-viewport__content{margin-top:var(--daff-sidebar-side-fixed-top-shift)}:host-context(daff-sidebar-viewport daff-sidebar-viewport){transform:translate(0);min-height:auto}:host-context(daff-sidebar-viewport daff-sidebar-viewport) .daff-sidebar-viewport__inner{padding-left:0!important;padding-right:0!important}\n"] }]
706
+ {
707
+ provide: DAFF_SIDEBAR_SCROLL_TOKEN,
708
+ useFactory: daffSidebarViewportScrollFactory,
709
+ },
710
+ ], standalone: true, imports: [
711
+ DaffSidebarViewportBackdropComponent,
712
+ ], template: "<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", styles: [":host{display:flex;min-height:100dvh;position:relative;width:100%;z-index:1}:host.pad-left .daff-sidebar-viewport__inner{padding-left:0}@media (min-width: 1024px){:host.pad-left .daff-sidebar-viewport__inner{padding-left:var(--daff-sidebar-left-width, 240px)}}:host.pad-left.beside .daff-sidebar-viewport__nav{padding-left:0}@media (min-width: 1024px){:host.pad-left.beside .daff-sidebar-viewport__nav{padding-left:var(--daff-sidebar-left-width, 240px)}}:host.pad-right .daff-sidebar-viewport__inner{padding-right:0}@media (min-width: 1024px){:host.pad-right .daff-sidebar-viewport__inner{padding-right:var(--daff-sidebar-right-width, 240px)}}:host.pad-right.beside .daff-sidebar-viewport__nav{padding-right:0}@media (min-width: 1024px){:host.pad-right.beside .daff-sidebar-viewport__nav{padding-right:var(--daff-sidebar-right-width, 240px)}}.daff-sidebar-viewport__content{flex:0 1 auto;width:100%;z-index:3;min-height:100%}.daff-sidebar-viewport__nav{position:fixed;top:0;width:100%;z-index:4}.daff-sidebar-viewport__nav:empty{display:none}.daff-sidebar-viewport__nav:not(:empty)~.daff-sidebar-viewport__content{margin-top:var(--daff-sidebar-side-fixed-top-shift)}:host-context(daff-sidebar-viewport daff-sidebar-viewport){transform:translate(0);min-height:auto}:host-context(daff-sidebar-viewport daff-sidebar-viewport) .daff-sidebar-viewport__inner{padding-left:0!important;padding-right:0!important}\n"] }]
701
713
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: undefined, decorators: [{
702
714
  type: Inject,
703
715
  args: [DAFF_SIDEBAR_SCROLL_TOKEN]
@@ -728,16 +740,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
728
740
  type: Output
729
741
  }] } });
730
742
 
743
+ /**
744
+ * @deprecated in favor of {@link DAFF_SIDEBAR_COMPONENTS} Deprecated in version 0.78.0. Will be removed in version 0.81.0.
745
+ */
731
746
  class DaffSidebarModule {
732
747
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
733
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarModule, declarations: [DaffSidebarComponent,
748
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: DaffSidebarModule, imports: [CommonModule,
749
+ A11yModule,
750
+ DaffSidebarComponent,
734
751
  DaffSidebarViewportComponent,
735
752
  DaffSidebarHeaderComponent,
736
753
  DaffSidebarFooterComponent,
737
754
  DaffSidebarHeaderTitleDirective,
738
755
  DaffSidebarHeaderActionDirective,
739
- DaffSidebarViewportBackdropComponent], imports: [CommonModule,
740
- A11yModule], exports: [DaffSidebarComponent,
756
+ DaffSidebarViewportBackdropComponent], exports: [DaffSidebarComponent,
741
757
  DaffSidebarViewportComponent,
742
758
  DaffSidebarHeaderComponent,
743
759
  DaffSidebarFooterComponent,
@@ -753,8 +769,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
753
769
  imports: [
754
770
  CommonModule,
755
771
  A11yModule,
756
- ],
757
- declarations: [
758
772
  DaffSidebarComponent,
759
773
  DaffSidebarViewportComponent,
760
774
  DaffSidebarHeaderComponent,
@@ -827,9 +841,19 @@ const FLOATING_MODES = [
827
841
  */
828
842
  const daffSidebarIsFloatingMode = (mode) => FLOATING_MODES.includes(mode);
829
843
 
844
+ const DAFF_SIDEBAR_COMPONENTS = [
845
+ DaffSidebarComponent,
846
+ DaffSidebarViewportComponent,
847
+ DaffSidebarHeaderComponent,
848
+ DaffSidebarFooterComponent,
849
+ DaffSidebarHeaderTitleDirective,
850
+ DaffSidebarHeaderActionDirective,
851
+ DaffSidebarViewportBackdropComponent,
852
+ ];
853
+
830
854
  /**
831
855
  * Generated bundle index. Do not edit.
832
856
  */
833
857
 
834
- export { DaffSidebarComponent, DaffSidebarFooterComponent, DaffSidebarHeaderActionDirective, DaffSidebarHeaderComponent, DaffSidebarHeaderTitleDirective, DaffSidebarModule, DaffSidebarService, DaffSidebarViewportBackdropComponent, DaffSidebarViewportComponent, daffSidebarIsDockedMode, daffSidebarIsFloatingMode };
858
+ export { DAFF_SIDEBAR_COMPONENTS, DaffSidebarComponent, DaffSidebarFooterComponent, DaffSidebarHeaderActionDirective, DaffSidebarHeaderComponent, DaffSidebarHeaderTitleDirective, DaffSidebarModule, DaffSidebarService, DaffSidebarViewportBackdropComponent, DaffSidebarViewportComponent, daffSidebarIsDockedMode, daffSidebarIsFloatingMode };
835
859
  //# sourceMappingURL=daffodil-design-sidebar.mjs.map